/* =========================================================
   Estilo visual "Brisa" — claro, animado e intuitivo
   ---------------------------------------------------------
   Solo se carga cuando Autolote → Ajustes → Estilo visual
   está en "Claro y animado — Brisa". Todo va acotado a
   [data-alw-theme="brisa"], así que no afecta a otros estilos.

   Los colores salen de las variables del estilo (fondo,
   superficie, texto, acento y acento secundario), por lo que
   "Personalizar colores" en Ajustes sigue funcionando.
   ========================================================= */

/* ---------- Animaciones ---------- */
@keyframes brisa-rise {
	from { opacity: 0; transform: translateY(30px) scale(0.965); }
	to   { opacity: 1; transform: none; }
}
@keyframes brisa-rise-wide {
	from { opacity: 0; transform: translateY(22px) scale(0.985); }
	to   { opacity: 1; transform: none; }
}
@keyframes brisa-soft-in {
	from { opacity: 0; transform: translateY(14px); }
	to   { opacity: 1; transform: none; }
}
@keyframes brisa-failsafe { to { opacity: 1; } }
@keyframes brisa-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes brisa-pop {
	0%   { transform: scale(1); }
	35%  { transform: scale(1.4); }
	70%  { transform: scale(0.9); }
	100% { transform: scale(1); }
}
@keyframes brisa-ring {
	from { transform: scale(0.6); opacity: 0.75; }
	to   { transform: scale(2.1); opacity: 0; }
}
@keyframes brisa-dot {
	0%   { box-shadow: 0 0 0 0 color-mix(in srgb, currentColor 45%, transparent); }
	70%, 100% { box-shadow: 0 0 0 9px transparent; }
}
@keyframes brisa-glow {
	from { transform: translate3d(-3%, -2%, 0) rotate(0deg); }
	to   { transform: translate3d(3%, 3%, 0) rotate(7deg); }
}
@keyframes brisa-load {
	from { background-position: -60% 0; }
	to   { background-position: 160% 0; }
}
@keyframes brisa-unfold {
	from { opacity: 0; transform: translateY(-10px); }
	to   { opacity: 1; transform: none; }
}
@keyframes brisa-attention {
	0%, 100% { transform: scale(1); }
	50%      { transform: scale(1.07); }
}
@keyframes brisa-sheen {
	0%, 62% { transform: translateX(-130%) skewX(-18deg); }
	100%    { transform: translateX(330%) skewX(-18deg); }
}
@keyframes brisa-lb-img {
	from { opacity: 0; transform: scale(0.94) translateY(10px); }
	to   { opacity: 1; transform: none; }
}
@keyframes brisa-check {
	0%   { transform: scale(0) rotate(-25deg); }
	60%  { transform: scale(1.18) rotate(5deg); }
	100% { transform: scale(1) rotate(0); }
}
@keyframes brisa-tick {
	0%   { transform: rotate(45deg) scale(0); }
	70%  { transform: rotate(45deg) scale(1.25); }
	100% { transform: rotate(45deg) scale(1); }
}
@keyframes brisa-shake {
	0%, 100% { transform: translateX(0); }
	20%, 60% { transform: translateX(-6px); }
	40%, 80% { transform: translateX(6px); }
}
@keyframes brisa-spotlight {
	0%   { box-shadow: 0 0 0 0 color-mix(in srgb, var(--alw-accent) 45%, transparent); }
	100% { box-shadow: 0 0 0 26px color-mix(in srgb, var(--alw-accent) 0%, transparent); }
}

/* ---------- Base y variables propias ---------- */
[data-alw-theme="brisa"] {
	--brisa-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--brisa-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
	--brisa-line: color-mix(in srgb, var(--alw-accent) 15%, transparent);
	--brisa-line-strong: color-mix(in srgb, var(--alw-accent) 30%, transparent);
	--brisa-tint: color-mix(in srgb, var(--alw-accent) 8%, var(--alw-surface));
	--brisa-tint-strong: color-mix(in srgb, var(--alw-accent) 15%, var(--alw-surface));
	--brisa-shadow-sm: 0 1px 2px color-mix(in srgb, var(--alw-accent) 10%, transparent), 0 8px 18px -12px color-mix(in srgb, var(--alw-accent) 36%, transparent);
	--brisa-shadow: 0 1px 2px color-mix(in srgb, var(--alw-accent) 12%, transparent), 0 16px 34px -20px color-mix(in srgb, var(--alw-accent) 42%, transparent);
	--brisa-shadow-lift: 0 2px 4px color-mix(in srgb, var(--alw-accent) 10%, transparent), 0 30px 50px -24px color-mix(in srgb, var(--alw-accent) 58%, transparent);
	--brisa-ok: #0F6B3F;
	--brisa-ok-bg: #DDF5E8;
	--brisa-danger: #C81E45;
	--brisa-danger-bg: #FFEBEF;
	--brisa-wa: #25D366;
	--brisa-wa-ink: #073B27;

	/* Iconos (máscaras SVG): se pintan con el color de acento */
	--brisa-i-cal: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='3'/%3E%3Cpath d='M8 3v4M16 3v4M3.5 10.5h17'/%3E%3C/svg%3E");
	--brisa-i-km: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.6 16.5a9 9 0 1 1 16.8 0'/%3E%3Cpath d='M12 14.2l3.4-4.6'/%3E%3Ccircle cx='12' cy='14.6' r='1.1'/%3E%3C/svg%3E");
	--brisa-i-trans: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='6' cy='6' r='1.7'/%3E%3Ccircle cx='12' cy='6' r='1.7'/%3E%3Ccircle cx='18' cy='6' r='1.7'/%3E%3Ccircle cx='6' cy='18' r='1.7'/%3E%3Ccircle cx='12' cy='18' r='1.7'/%3E%3Ccircle cx='18' cy='18' r='1.7'/%3E%3Cpath d='M6 7.7v8.6M12 7.7v8.6M18 7.7v8.6M6 12h12'/%3E%3C/svg%3E");
	--brisa-i-comb: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 20.5V5.5a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v15'/%3E%3Cpath d='M3 20.5h13.5'/%3E%3Cpath d='M7.5 7.5h4.5'/%3E%3Cpath d='M14.5 9.5h2.2a1.8 1.8 0 0 1 1.8 1.8v5a1.5 1.5 0 0 0 3 0V8.5l-2.6-2.6'/%3E%3C/svg%3E");
	--brisa-i-color: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.2s6.2 6.2 6.2 10.6a6.2 6.2 0 0 1-12.4 0C5.8 9.4 12 3.2 12 3.2z'/%3E%3C/svg%3E");
	--brisa-i-puertas: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.5 20.5V5a1.8 1.8 0 0 1 1.8-1.8h7.4A1.8 1.8 0 0 1 17.5 5v15.5'/%3E%3Cpath d='M3.5 20.5h17'/%3E%3Cpath d='M14 12.5h.01'/%3E%3C/svg%3E");
	--brisa-i-cond: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7.2 2.8v5.6c0 4.4-3 8.1-7.2 9.8-4.2-1.7-7.2-5.4-7.2-9.8V5.8z'/%3E%3Cpath d='m8.8 12 2.3 2.3 4.2-4.6'/%3E%3C/svg%3E");
	--brisa-i-heart: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20.5s-7.5-4.6-9.2-9.3C1.8 8 3.6 4.8 6.9 4.8c2 0 3.4 1.1 5.1 3 1.7-1.9 3.1-3 5.1-3 3.3 0 5.1 3.2 4.1 6.4-1.7 4.7-9.2 9.3-9.2 9.3z'/%3E%3C/svg%3E");
	--brisa-i-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='6.5'/%3E%3Cpath d='m20 20-4.2-4.2M8.6 11h4.8'/%3E%3C/svg%3E");
	--brisa-i-chat: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L4 20.5l1.5-4.7A8 8 0 1 1 21 12z'/%3E%3C/svg%3E");

	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}
[data-alw-theme="brisa"] *,
[data-alw-theme="brisa"] *::before,
[data-alw-theme="brisa"] *::after { box-sizing: border-box; }

[data-alw-theme="brisa"] h1,
[data-alw-theme="brisa"] h2,
[data-alw-theme="brisa"] h3 { font-weight: 800; letter-spacing: -0.02em; color: var(--alw-text); }

[data-alw-theme="brisa"] :is(a, button, .alw-gallery-item):focus-visible {
	outline: 3px solid color-mix(in srgb, var(--alw-accent) 55%, transparent);
	outline-offset: 3px;
}

/* ---------- Paneles: catálogo, ficha y favoritos ---------- */
.alw-catalog[data-alw-theme="brisa"],
.alw-single-product[data-alw-theme="brisa"],
.alw-wishlist-wrap[data-alw-theme="brisa"] {
	position: relative;
	isolation: isolate;
	padding: 36px 32px 64px;
	border-radius: 32px;
	border: 1px solid var(--brisa-line);
}
.alw-contact-form-wrap[data-alw-theme="brisa"] { background: transparent; }
.alw-catalog[data-alw-theme="brisa"] { margin-top: 12px; margin-bottom: 12px; }

/* Resplandor ambiental muy lento detrás del contenido */
@supports (overflow: clip) {
	.alw-catalog[data-alw-theme="brisa"],
	.alw-single-product[data-alw-theme="brisa"],
	.alw-wishlist-wrap[data-alw-theme="brisa"] { overflow: clip; }

	.alw-catalog[data-alw-theme="brisa"]::before,
	.alw-single-product[data-alw-theme="brisa"]::before,
	.alw-wishlist-wrap[data-alw-theme="brisa"]::before {
		content: "";
		position: absolute;
		inset: -25%;
		z-index: -1;
		pointer-events: none;
		background:
			radial-gradient(36% 32% at 84% 16%, color-mix(in srgb, var(--alw-accent-2) 16%, #ffffff), transparent 70%),
			radial-gradient(40% 36% at 12% 88%, color-mix(in srgb, var(--alw-accent) 16%, transparent), transparent 70%);
		animation: brisa-glow 32s ease-in-out infinite alternate;
	}
}

.alw-catalog[data-alw-theme="brisa"] .alw-catalog-title {
	font-size: clamp(28px, 3.6vw, 40px);
	line-height: 1.1;
	margin: 0 0 24px;
}

/* ---------- Barra superior: búsqueda + vista ---------- */
.alw-catalog[data-alw-theme="brisa"] .alw-catalog-toolbar { gap: 14px; margin-bottom: 28px; }
.alw-catalog[data-alw-theme="brisa"] .alw-search {
	max-width: 420px;
	transition: max-width 0.5s var(--brisa-ease);
}
.alw-catalog[data-alw-theme="brisa"] .alw-search:focus-within { max-width: 540px; }
.alw-catalog[data-alw-theme="brisa"] .alw-search-icon {
	left: 19px; width: 19px; height: 19px;
	color: var(--alw-accent);
	transition: transform 0.4s var(--brisa-spring);
}
.alw-catalog[data-alw-theme="brisa"] .alw-search:focus-within .alw-search-icon { transform: translateY(-50%) scale(1.18) rotate(-10deg); }
.alw-catalog[data-alw-theme="brisa"] .alw-search-input {
	height: 52px;
	padding: 0 18px 0 50px;
	border-radius: 999px;
	border: 1.5px solid var(--brisa-line);
	background: var(--alw-surface);
	font-size: 15px;
	font-weight: 600;
	box-shadow: var(--brisa-shadow-sm);
	transition: border-color 0.25s ease, box-shadow 0.35s var(--brisa-ease), transform 0.35s var(--brisa-ease);
}
.alw-catalog[data-alw-theme="brisa"] .alw-search-input:hover { border-color: var(--brisa-line-strong); }
.alw-catalog[data-alw-theme="brisa"] .alw-search-input:focus {
	border-color: var(--alw-accent);
	box-shadow: 0 0 0 5px color-mix(in srgb, var(--alw-accent) 16%, transparent), var(--brisa-shadow-sm);
}
.alw-catalog[data-alw-theme="brisa"] .alw-search-input::placeholder { color: var(--alw-text-2); font-weight: 500; }
/* La "x" para limpiar (Chrome, Edge y Safari) */
.alw-catalog[data-alw-theme="brisa"] .alw-search-input::-webkit-search-cancel-button {
	-webkit-appearance: none;
	appearance: none;
	width: 20px; height: 20px; margin-left: 8px;
	cursor: pointer;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2355747E' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center / contain no-repeat;
	opacity: 0.75;
	transition: opacity 0.2s ease, transform 0.3s var(--brisa-spring);
}
.alw-catalog[data-alw-theme="brisa"] .alw-search-input::-webkit-search-cancel-button:hover { opacity: 1; transform: scale(1.15) rotate(90deg); }

/* Selector de vista: la "pastilla" activa se desliza de un botón al otro */
.alw-catalog[data-alw-theme="brisa"] .alw-view-toggle {
	position: relative;
	gap: 0;
	padding: 4px;
	border-radius: 999px;
	border: 1.5px solid var(--brisa-line);
	background: var(--alw-surface);
	box-shadow: var(--brisa-shadow-sm);
}
.alw-catalog[data-alw-theme="brisa"] .alw-view-toggle .alw-view-btn {
	position: relative; z-index: 1;
	width: 44px; height: 44px;
	border-radius: 999px;
	color: var(--alw-text-2);
	transition: color 0.3s ease, background 0.3s ease, transform 0.3s var(--brisa-spring);
}
.alw-catalog[data-alw-theme="brisa"] .alw-view-toggle .alw-view-btn svg { width: 20px; height: 20px; transition: transform 0.4s var(--brisa-spring); }
.alw-catalog[data-alw-theme="brisa"] .alw-view-toggle .alw-view-btn:hover { background: var(--brisa-tint); color: var(--alw-accent); }
.alw-catalog[data-alw-theme="brisa"] .alw-view-toggle .alw-view-btn:active svg { transform: scale(0.85); }
.alw-catalog[data-alw-theme="brisa"] .alw-view-toggle .alw-view-btn.is-active,
.alw-catalog[data-alw-theme="brisa"] .alw-view-toggle .alw-view-btn.is-active:hover {
	background: var(--alw-accent);
	color: #fff;
	box-shadow: 0 8px 16px -8px color-mix(in srgb, var(--alw-accent) 70%, transparent);
}
@supports selector(:has(*)) {
	.alw-catalog[data-alw-theme="brisa"] .alw-view-toggle::before {
		content: "";
		position: absolute; top: 4px; left: 4px;
		width: 44px; height: 44px;
		border-radius: 999px;
		background: var(--alw-accent);
		box-shadow: 0 8px 16px -8px color-mix(in srgb, var(--alw-accent) 70%, transparent);
		transition: transform 0.55s var(--brisa-spring);
	}
	.alw-catalog[data-alw-theme="brisa"] .alw-view-toggle:has(.alw-view-btn[data-view="list"].is-active)::before { transform: translateX(44px); }
	.alw-catalog[data-alw-theme="brisa"] .alw-view-toggle .alw-view-btn.is-active,
	.alw-catalog[data-alw-theme="brisa"] .alw-view-toggle .alw-view-btn.is-active:hover { background: transparent; box-shadow: none; }
}

/* ---------- Panel de filtros ---------- */
.alw-catalog[data-alw-theme="brisa"] .alw-filters {
	flex-basis: 272px; width: 272px;
	border-radius: 28px;
	border: 1px solid var(--brisa-line);
	background: var(--alw-surface);
	box-shadow: var(--brisa-shadow);
}
.alw-catalog[data-alw-theme="brisa"] .alw-filters-head { padding: 22px 24px 16px; }
.alw-catalog[data-alw-theme="brisa"] .alw-filters-toggle {
	font-size: 19px; font-weight: 800; letter-spacing: -0.02em; color: var(--alw-text);
}
.alw-catalog[data-alw-theme="brisa"] .alw-filters-toggle:hover { color: var(--alw-text); }
.alw-catalog[data-alw-theme="brisa"] .alw-filters-count {
	min-width: 24px; height: 24px; line-height: 24px;
	font-size: 12.5px; font-weight: 800;
	background: var(--alw-accent); color: #fff;
	animation: brisa-pop 0.5s var(--brisa-spring);
}
.alw-catalog[data-alw-theme="brisa"] .alw-filters-count[hidden] { display: none; }
.alw-catalog[data-alw-theme="brisa"] .alw-clear-filters {
	padding: 6px 12px; border-radius: 999px;
	font-size: 13px; font-weight: 700; text-decoration: none;
	color: var(--alw-accent);
	transition: background 0.25s ease, color 0.25s ease, transform 0.3s var(--brisa-spring);
}
.alw-catalog[data-alw-theme="brisa"] .alw-clear-filters:hover { background: var(--brisa-tint-strong); color: var(--alw-accent); transform: scale(1.05); }
.alw-catalog[data-alw-theme="brisa"] .alw-filters-body {
	padding: 20px 24px 26px; gap: 22px;
	border-top: 1px solid var(--brisa-line);
}
.alw-catalog[data-alw-theme="brisa"] .alw-filter-group h4 { font-size: 14px; font-weight: 800; margin-bottom: 10px; }
.alw-catalog[data-alw-theme="brisa"] .alw-filter-hint { font-weight: 700; color: var(--alw-accent); }

.alw-catalog[data-alw-theme="brisa"] .alw-select::after {
	right: 18px; width: 8px; height: 8px;
	border-color: var(--alw-accent);
	transition: transform 0.35s var(--brisa-spring);
}
.alw-catalog[data-alw-theme="brisa"] .alw-select:focus-within::after { transform: translateY(-30%) rotate(225deg); }
.alw-catalog[data-alw-theme="brisa"] .alw-filters select,
.alw-catalog[data-alw-theme="brisa"] .alw-filters input[type="number"] {
	height: 48px;
	padding: 0 16px;
	border-radius: 16px;
	border: 1.5px solid transparent;
	background: var(--brisa-tint);
	font-size: 14.5px; font-weight: 600;
	transition: border-color 0.25s ease, background 0.25s ease, box-shadow 0.35s var(--brisa-ease);
}
.alw-catalog[data-alw-theme="brisa"] .alw-filters select { padding-right: 42px; }
.alw-catalog[data-alw-theme="brisa"] .alw-filters select:hover,
.alw-catalog[data-alw-theme="brisa"] .alw-filters input[type="number"]:hover { border-color: var(--brisa-line-strong); background: var(--brisa-tint-strong); }
.alw-catalog[data-alw-theme="brisa"] .alw-filters select:focus,
.alw-catalog[data-alw-theme="brisa"] .alw-filters input[type="number"]:focus {
	border-color: var(--alw-accent);
	background: var(--alw-surface);
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--alw-accent) 16%, transparent);
}
.alw-catalog[data-alw-theme="brisa"] .alw-filters input[type="number"]::placeholder { font-weight: 500; }
.alw-catalog[data-alw-theme="brisa"] .alw-price-sep { background: var(--brisa-line-strong); height: 2px; border-radius: 2px; }

.alw-catalog[data-alw-theme="brisa"] .alw-filter-group-switch { border-top: 1px solid var(--brisa-line); padding-top: 22px; }
.alw-catalog[data-alw-theme="brisa"] .alw-switch { font-size: 14.5px; font-weight: 700; }
.alw-catalog[data-alw-theme="brisa"] .alw-switch-track {
	width: 50px; height: 28px;
	background: color-mix(in srgb, var(--alw-text-2) 32%, var(--alw-surface));
	transition: background 0.3s ease;
}
.alw-catalog[data-alw-theme="brisa"] .alw-switch-track::after {
	top: 4px; left: 4px; width: 20px; height: 20px;
	background: #fff;
	transition: transform 0.45s var(--brisa-spring);
}
.alw-catalog[data-alw-theme="brisa"] .alw-switch input:checked + .alw-switch-track::after { transform: translateX(22px); }
.alw-catalog[data-alw-theme="brisa"] .alw-switch:hover .alw-switch-track { background: color-mix(in srgb, var(--alw-text-2) 44%, var(--alw-surface)); }
.alw-catalog[data-alw-theme="brisa"] .alw-switch input:checked + .alw-switch-track,
.alw-catalog[data-alw-theme="brisa"] .alw-switch:hover input:checked + .alw-switch-track { background: var(--alw-accent); }

/* ---------- Cuadrícula y estado de carga ---------- */
[data-alw-theme="brisa"] .alw-products-grid:not(.alw-view-list) {
	grid-template-columns: repeat(auto-fill, minmax(236px, 1fr));
	gap: 26px;
}
[data-alw-theme="brisa"] .alw-products-grid.alw-view-list { gap: 28px; }
[data-alw-theme="brisa"] .alw-products-grid { transition: opacity 0.3s ease, filter 0.3s ease; }

.alw-catalog[data-alw-theme="brisa"] .alw-products-wrap { position: relative; }
.alw-catalog[data-alw-theme="brisa"] .alw-products-wrap::before {
	content: "";
	position: absolute; left: 0; right: 0; top: -14px;
	height: 4px; border-radius: 4px;
	background-color: var(--brisa-line);
	background-image: linear-gradient(90deg, transparent, var(--alw-accent), var(--alw-accent-2), transparent);
	background-repeat: no-repeat;
	background-size: 34% 100%;
	opacity: 0;
	transition: opacity 0.25s ease;
	pointer-events: none;
}
.alw-catalog[data-alw-theme="brisa"].is-loading .alw-products-wrap::before { opacity: 1; animation: brisa-load 1.1s ease-in-out infinite; }
.alw-catalog[data-alw-theme="brisa"].is-loading .alw-products-grid { opacity: 0.45; filter: saturate(0.85); pointer-events: none; }

/* Sin resultados */
[data-alw-theme="brisa"] .alw-no-results {
	padding: 60px 24px;
	border-radius: 28px;
	border: 2px dashed var(--brisa-line-strong);
	background: var(--alw-surface);
	color: var(--alw-text);
	font-size: 17px; font-weight: 700;
	animation: brisa-soft-in 0.6s var(--brisa-ease) both;
}
[data-alw-theme="brisa"] .alw-no-results::before {
	content: "";
	display: block; width: 60px; height: 60px; margin: 0 auto 16px;
	background: var(--alw-accent);
	-webkit-mask: var(--brisa-i-search) center / contain no-repeat;
	mask: var(--brisa-i-search) center / contain no-repeat;
}

/* ---------- Tarjeta de vehículo ---------- */
[data-alw-theme="brisa"] .alw-product-card {
	padding: 10px;
	border-radius: 28px;
	border: 1px solid var(--brisa-line);
	background: var(--alw-surface);
	box-shadow: var(--brisa-shadow);
	transition: transform 0.55s var(--brisa-ease), box-shadow 0.55s var(--brisa-ease), border-color 0.3s ease;
}
[data-alw-theme="brisa"] .alw-product-card:hover {
	transform: translateY(-9px);
	border-color: var(--brisa-line-strong);
	box-shadow: var(--brisa-shadow-lift);
}
[data-alw-theme="brisa"] .alw-product-card-media { border-radius: 20px; background: var(--brisa-tint-strong); }
[data-alw-theme="brisa"] .alw-product-image,
[data-alw-theme="brisa"] .alw-no-image { transition: transform 1.2s var(--brisa-ease); }
[data-alw-theme="brisa"] .alw-product-card:hover .alw-product-image { transform: scale(1.08); }
[data-alw-theme="brisa"] .alw-no-image { background: linear-gradient(135deg, var(--brisa-tint-strong), var(--brisa-tint)); }

/* Destello de luz que cruza la foto al pasar el cursor */
[data-alw-theme="brisa"] .alw-product-card-media::after {
	content: "";
	position: absolute; top: 0; bottom: 0; left: 0; width: 36%;
	background: linear-gradient(100deg, transparent, rgba(255, 255, 255, 0.6), transparent);
	transform: translateX(-140%) skewX(-18deg);
	pointer-events: none;
}
[data-alw-theme="brisa"] .alw-product-card:hover .alw-product-card-media::after {
	transform: translateX(340%) skewX(-18deg);
	transition: transform 1s var(--brisa-ease);
}

/* Insignias */
[data-alw-theme="brisa"] .alw-badges { top: 14px; left: 14px; gap: 6px; }
[data-alw-theme="brisa"] .alw-badge {
	display: inline-flex; align-items: center; gap: 7px;
	padding: 6px 12px 6px 10px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.94);
	color: var(--alw-text);
	font-size: 12px; font-weight: 800; letter-spacing: 0; text-transform: none; line-height: 1.2;
	box-shadow: 0 6px 14px -8px rgba(23, 60, 68, 0.5);
	-webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
}
[data-alw-theme="brisa"] .alw-badge::before {
	content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--alw-accent); flex-shrink: 0;
}
[data-alw-theme="brisa"] .alw-badge-oferta { background: var(--alw-accent-2); color: #fff; animation: brisa-attention 2.8s ease-in-out infinite; transform-origin: left center; }
[data-alw-theme="brisa"] .alw-badge-oferta::before { background: #fff; }
[data-alw-theme="brisa"] .alw-badge-ultima { background: var(--brisa-danger); color: #fff; animation: brisa-attention 2.8s ease-in-out 0.6s infinite; transform-origin: left center; }
[data-alw-theme="brisa"] .alw-badge-ultima::before { background: #fff; }
[data-alw-theme="brisa"] .alw-badge-top::before,
[data-alw-theme="brisa"] .alw-badge-nuevo_ingreso::before { background: var(--alw-accent-2); }
[data-alw-theme="brisa"] .alw-badge-top,
[data-alw-theme="brisa"] .alw-badge-nuevo_ingreso { background: rgba(255, 255, 255, 0.94); color: var(--alw-text); }
[data-alw-theme="brisa"] .alw-badge-reservado { background: #FFF3C4; color: #7A5200; }
[data-alw-theme="brisa"] .alw-badge-reservado::before { background: #C98A00; }
[data-alw-theme="brisa"] .alw-badge-vendido { background: #E3E8EA; color: #4B5B61; }
[data-alw-theme="brisa"] .alw-badge-vendido::before { background: #8A9CA3; }
[data-alw-theme="brisa"] .alw-badge-low-stock { bottom: 14px; left: 14px; }

/* Vehículo vendido: se ve, pero atenuado */
[data-alw-theme="brisa"] .alw-product-card.is-vendido .alw-product-image { filter: grayscale(0.75) brightness(1.03); }
[data-alw-theme="brisa"] .alw-product-card.is-vendido .alw-price { color: var(--alw-text-2); text-decoration: line-through; text-decoration-thickness: 2px; }

/* Corazón de favoritos */
[data-alw-theme="brisa"] .alw-product-card .alw-wishlist-btn {
	top: 14px; right: 14px; width: 44px; height: 44px;
	background: rgba(255, 255, 255, 0.94);
	color: var(--alw-text-2);
	font-size: 22px;
	box-shadow: 0 8px 18px -8px rgba(23, 60, 68, 0.55);
	-webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
	transition: transform 0.4s var(--brisa-spring), color 0.2s ease, background 0.2s ease;
}
[data-alw-theme="brisa"] .alw-product-card .alw-wishlist-btn:hover { background: #fff; color: var(--brisa-danger); transform: scale(1.14); }
[data-alw-theme="brisa"] .alw-product-card .alw-wishlist-btn:active { transform: scale(0.9); }
[data-alw-theme="brisa"] .alw-wishlist-btn.is-in-wishlist,
[data-alw-theme="brisa"] .alw-product-card .alw-wishlist-btn.is-in-wishlist:hover { color: var(--brisa-danger); }
[data-alw-theme="brisa"] .alw-product-card .alw-wishlist-btn.is-pending { transform: scale(0.88); }
[data-alw-theme="brisa"] .alw-product-card .alw-wishlist-btn.is-pop { animation: brisa-pop 0.6s var(--brisa-ease); }
[data-alw-theme="brisa"] .alw-product-card .alw-wishlist-btn.is-pop::after {
	content: "";
	position: absolute; inset: 0; border-radius: 50%;
	border: 2px solid var(--brisa-danger);
	pointer-events: none;
	animation: brisa-ring 0.7s ease-out both;
}

/* Cuerpo de la tarjeta */
[data-alw-theme="brisa"] .alw-product-card-body { padding: 18px 10px 10px; gap: 10px; }
[data-alw-theme="brisa"] .alw-product-title {
	font-size: 18px; font-weight: 800; line-height: 1.22; letter-spacing: -0.02em;
	color: var(--alw-text);
	text-decoration: none;
	transition: color 0.25s ease;
}
[data-alw-theme="brisa"] .alw-product-title:hover { color: var(--alw-accent); text-decoration: none; }

/* Datos rápidos con icono */
[data-alw-theme="brisa"] .alw-vehicle-meta { gap: 6px; }
[data-alw-theme="brisa"] .alw-vehicle-meta span {
	display: inline-flex; align-items: center; gap: 6px;
	padding: 6px 11px 6px 9px;
	border-radius: 999px;
	background: var(--brisa-tint);
	color: var(--alw-text);
	font-size: 12.5px; font-weight: 700; line-height: 1.2;
}
[data-alw-theme="brisa"] .alw-vehicle-meta span:not(:last-child)::after { content: none; }
[data-alw-theme="brisa"] .alw-vehicle-meta span::before {
	display: none;
	content: ""; width: 15px; height: 15px; flex-shrink: 0;
	background: var(--alw-accent);
	-webkit-mask: var(--brisa-ico) center / contain no-repeat;
	mask: var(--brisa-ico) center / contain no-repeat;
}
[data-alw-theme="brisa"] .alw-meta-anio { --brisa-ico: var(--brisa-i-cal); }
[data-alw-theme="brisa"] .alw-meta-km { --brisa-ico: var(--brisa-i-km); }
[data-alw-theme="brisa"] .alw-meta-trans { --brisa-ico: var(--brisa-i-trans); }
[data-alw-theme="brisa"] .alw-vehicle-meta .alw-meta-anio::before,
[data-alw-theme="brisa"] .alw-vehicle-meta .alw-meta-km::before,
[data-alw-theme="brisa"] .alw-vehicle-meta .alw-meta-trans::before { display: block; }

[data-alw-theme="brisa"] .alw-rating-summary { color: var(--alw-text-2); font-weight: 600; }

/* Precio y botón */
[data-alw-theme="brisa"] .alw-price-row { align-items: baseline; flex-wrap: wrap; gap: 0 10px; }
[data-alw-theme="brisa"] .alw-price { white-space: nowrap; }
[data-alw-theme="brisa"] .alw-product-card-body > .alw-price-row {
	padding-top: 14px;
	border-top: 2px dashed var(--brisa-line);
}
/* En la cuadrícula, precio y botón quedan siempre pegados al fondo: las líneas se alinean entre tarjetas. */
[data-alw-theme="brisa"] .alw-products-grid:not(.alw-view-list) .alw-product-card-body > .alw-price-row { margin-top: auto; }
[data-alw-theme="brisa"] .alw-products-grid:not(.alw-view-list) .alw-product-card-body > .alw-btn { margin-top: 4px; }
[data-alw-theme="brisa"] .alw-price {
	font-family: var(--alw-font-display);
	font-size: 23px; font-weight: 800; letter-spacing: -0.03em; line-height: 1.1;
	color: var(--alw-accent);
}
[data-alw-theme="brisa"] .alw-price-regular { font-size: 14px; font-weight: 600; }

[data-alw-theme="brisa"] .alw-btn {
	position: relative; overflow: hidden;
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	padding: 14px 22px;
	border-radius: 18px;
	background: var(--alw-accent); color: #fff;
	font-size: 15px; font-weight: 800; letter-spacing: 0;
	box-shadow: 0 12px 22px -12px color-mix(in srgb, var(--alw-accent) 80%, transparent);
	transition: transform 0.4s var(--brisa-spring), box-shadow 0.4s var(--brisa-ease), background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}
[data-alw-theme="brisa"] .alw-btn:hover { opacity: 1; transform: translateY(-2px); box-shadow: 0 18px 28px -14px color-mix(in srgb, var(--alw-accent) 85%, transparent); }
[data-alw-theme="brisa"] .alw-btn:active { transform: scale(0.97); }
[data-alw-theme="brisa"] .alw-product-card .alw-btn::after {
	content: "";
	width: 8px; height: 8px; margin-left: 2px;
	border-right: 2.5px solid currentColor; border-top: 2.5px solid currentColor;
	transform: rotate(45deg);
	transition: transform 0.4s var(--brisa-spring);
}
[data-alw-theme="brisa"] .alw-product-card .alw-btn:hover::after { transform: translateX(5px) rotate(45deg); }
[data-alw-theme="brisa"] .alw-btn-outline {
	background: var(--alw-surface); color: var(--alw-accent);
	border: 1.5px solid var(--brisa-line-strong);
	box-shadow: var(--brisa-shadow-sm);
}
[data-alw-theme="brisa"] .alw-btn-outline:hover { background: var(--brisa-tint); border-color: var(--alw-accent); color: var(--alw-accent); }

/* ---------- Vista "grande" (segundo botón) ---------- */
[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-product-card { padding: 12px; }
[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-product-card-media { border-radius: 22px; }
[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-product-card-body { padding: 24px 16px 14px; column-gap: 28px; }
[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-product-title { font-size: 28px; letter-spacing: -0.03em; }
[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-product-card-body > .alw-price-row { margin-top: 0; padding-top: 0; border-top: 0; }
[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-price { font-size: 32px; }
[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-vehicle-meta { margin-top: 14px; gap: 8px; }
[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-vehicle-meta span {
	padding: 8px 14px 8px 11px; font-size: 14px; font-weight: 700; color: var(--alw-text);
	background: var(--brisa-tint);
}
[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-vehicle-meta span::before { width: 17px; height: 17px; }
[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-btn { padding: 15px 34px; font-size: 16px; }
[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-badge { font-size: 13px; padding: 7px 14px 7px 11px; }

/* ---------- Paginación ---------- */
[data-alw-theme="brisa"] .alw-pagination { gap: 8px; margin: 34px 0 8px; }
[data-alw-theme="brisa"] .alw-page-btn {
	min-width: 46px; height: 46px; padding: 0 14px;
	border-radius: 999px;
	border: 1.5px solid var(--brisa-line);
	background: var(--alw-surface); color: var(--alw-text);
	font-size: 15px; font-weight: 800;
	box-shadow: var(--brisa-shadow-sm);
	transition: transform 0.35s var(--brisa-spring), background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}
[data-alw-theme="brisa"] .alw-page-btn:hover:not(:disabled) { background: var(--brisa-tint-strong); border-color: var(--brisa-line-strong); transform: translateY(-3px); }
[data-alw-theme="brisa"] .alw-page-btn:active:not(:disabled) { transform: scale(0.92); }
[data-alw-theme="brisa"] .alw-page-btn.is-active,
[data-alw-theme="brisa"] .alw-page-btn.is-active:hover { background: var(--alw-accent); border-color: var(--alw-accent); color: #fff; transform: none; }

/* ---------- Ficha del vehículo ---------- */
.alw-single-product[data-alw-theme="brisa"] { padding-top: 32px; }
[data-alw-theme="brisa"] .alw-breadcrumbs {
	display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px 8px;
	margin-bottom: 28px; padding: 9px 18px;
	border-radius: 999px;
	border: 1px solid var(--brisa-line);
	background: var(--alw-surface);
	box-shadow: var(--brisa-shadow-sm);
	font-size: 13.5px; font-weight: 600; color: var(--alw-text-2);
}
[data-alw-theme="brisa"] .alw-breadcrumbs a { color: var(--alw-accent); font-weight: 800; transition: color 0.2s ease; }
[data-alw-theme="brisa"] .alw-breadcrumbs a:hover { color: var(--alw-text); text-decoration: none; }
[data-alw-theme="brisa"] .alw-breadcrumbs span { color: var(--alw-text); }

[data-alw-theme="brisa"] .alw-single-grid { gap: 40px; align-items: start; margin-bottom: 56px; }

/* Galería */
[data-alw-theme="brisa"] .alw-gallery { gap: 12px; animation: brisa-soft-in 0.8s var(--brisa-ease) both; }
[data-alw-theme="brisa"] .alw-gallery-item {
	border: 0; border-radius: 18px;
	background: var(--brisa-tint-strong);
	box-shadow: var(--brisa-shadow-sm);
	transition: transform 0.45s var(--brisa-spring), box-shadow 0.35s ease;
}
[data-alw-theme="brisa"] .alw-gallery-item img { transition: transform 1.2s var(--brisa-ease); }
[data-alw-theme="brisa"] .alw-gallery-item:hover img { transform: scale(1.07); }
[data-alw-theme="brisa"] .alw-gallery-item:not(:first-child):hover { transform: translateY(-5px); box-shadow: var(--brisa-shadow); }
[data-alw-theme="brisa"] .alw-gallery-item.is-active { box-shadow: 0 0 0 3px var(--alw-surface), 0 0 0 6px var(--alw-accent); }
[data-alw-theme="brisa"] .alw-gallery-item:first-child { position: relative; border-radius: 28px; box-shadow: var(--brisa-shadow); cursor: zoom-in; }
[data-alw-theme="brisa"] .alw-gallery-item:first-child.is-active { box-shadow: var(--brisa-shadow); }
[data-alw-theme="brisa"] .alw-gallery-item:first-child::after {
	content: "";
	position: absolute; right: 16px; bottom: 16px;
	width: 46px; height: 46px; border-radius: 50%;
	background: rgba(255, 255, 255, 0.95) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231F3A44' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='6.5'/%3E%3Cpath d='m20 20-4.2-4.2M11 8v6M8 11h6'/%3E%3C/svg%3E") center / 22px no-repeat;
	box-shadow: 0 8px 18px -8px rgba(23, 60, 68, 0.55);
	transition: transform 0.45s var(--brisa-spring);
}
[data-alw-theme="brisa"] .alw-gallery-item:first-child:hover::after { transform: scale(1.15); }
[data-alw-theme="brisa"] .alw-gallery-empty { border-radius: 28px; background: var(--brisa-tint-strong); font-weight: 700; }
[data-alw-theme="brisa"] .alw-video-wrap { border-radius: 24px; box-shadow: var(--brisa-shadow); }
[data-alw-theme="brisa"] .alw-vehicle-video { margin-top: 16px; }

/* Columna de información */
[data-alw-theme="brisa"] .alw-single-info {
	position: sticky; top: 24px;
	padding: 34px;
	border-radius: 32px;
	border: 1px solid var(--brisa-line);
	background: var(--alw-surface);
	box-shadow: var(--brisa-shadow);
	animation: brisa-soft-in 0.8s var(--brisa-ease) 0.12s both;
}
[data-alw-theme="brisa"] .alw-single-title {
	margin: 0 0 4px;
	font-size: clamp(30px, 3.4vw, 42px); line-height: 1.05; letter-spacing: -0.035em;
}
[data-alw-theme="brisa"] .alw-single-brand {
	order: -1; align-self: flex-start;
	margin: 0 0 14px; padding: 6px 14px;
	border-radius: 999px;
	background: var(--brisa-tint-strong); color: var(--alw-accent);
	font-size: 13px; font-weight: 800; letter-spacing: 0; text-transform: none;
}
[data-alw-theme="brisa"] .alw-price-row-single { margin: 18px 0 16px; font-size: 24px; }
[data-alw-theme="brisa"] .alw-price-row-single .alw-price-regular { font-size: 19px; }
[data-alw-theme="brisa"] .alw-price-row-single .alw-price { font-size: clamp(32px, 4.4vw, 52px); letter-spacing: -0.04em; line-height: 1; }

/* Disponibilidad */
[data-alw-theme="brisa"] .alw-stock-info span,
[data-alw-theme="brisa"] p.alw-stock-agotado {
	display: inline-flex; align-items: center; gap: 9px;
	padding: 8px 16px; border-radius: 999px;
	font-size: 14px; font-weight: 800;
}
[data-alw-theme="brisa"] .alw-stock-ok { color: var(--brisa-ok); background: var(--brisa-ok-bg); }
[data-alw-theme="brisa"] .alw-stock-ok::before {
	content: ""; width: 9px; height: 9px; border-radius: 50%; background: currentColor;
	animation: brisa-dot 2.2s ease-out infinite;
}
[data-alw-theme="brisa"] .alw-stock-bajo-pedido,
[data-alw-theme="brisa"] .alw-stock-low { color: #7A5200; background: #FFF3C4; }
[data-alw-theme="brisa"] .alw-stock-agotado { color: #B42318; background: #FEECEB; }
[data-alw-theme="brisa"] p.alw-stock-agotado { margin: 0 0 16px; }

/* Botón principal: lleva directo al formulario */
[data-alw-theme="brisa"] .alw-cta-consulta { margin: 10px 0 24px; }
[data-alw-theme="brisa"] .alw-cta-note { margin: 10px 0 0; text-align: center; font-size: 13.5px; font-weight: 600; color: var(--alw-text-2); }
[data-alw-theme="brisa"] .alw-cta-icon { width: 22px; height: 22px; flex-shrink: 0; }

[data-alw-theme="brisa"] .alw-btn-whatsapp,
[data-alw-theme="brisa"] .alw-jump-consulta,
[data-alw-theme="brisa"] .alw-checkout-form .alw-btn-large {
	position: relative; overflow: hidden;
	display: flex; align-items: center; justify-content: center; gap: 10px;
	padding: 17px 24px;
	border: 0; border-radius: 20px;
	background: var(--brisa-wa); color: var(--brisa-wa-ink);
	font-size: 17px; font-weight: 800;
	box-shadow: 0 16px 28px -14px rgba(18, 140, 74, 0.75);
	margin: 0;
	transition: transform 0.4s var(--brisa-spring), box-shadow 0.4s var(--brisa-ease), background 0.25s ease;
}
[data-alw-theme="brisa"] .alw-btn-whatsapp:hover,
[data-alw-theme="brisa"] .alw-jump-consulta:hover,
[data-alw-theme="brisa"] .alw-checkout-form .alw-btn-large:hover {
	background: #2EE070; color: var(--brisa-wa-ink); opacity: 1;
	transform: translateY(-3px) scale(1.01);
	box-shadow: 0 22px 34px -14px rgba(18, 140, 74, 0.8);
}
[data-alw-theme="brisa"] .alw-btn-whatsapp:active,
[data-alw-theme="brisa"] .alw-jump-consulta:active,
[data-alw-theme="brisa"] .alw-checkout-form .alw-btn-large:active { transform: scale(0.97); }
/* Brillo que cruza el botón de vez en cuando */
[data-alw-theme="brisa"] .alw-jump-consulta::before,
[data-alw-theme="brisa"] .alw-checkout-form .alw-btn-large::before {
	content: "";
	position: absolute; top: 0; bottom: 0; left: 0; width: 34%;
	background: linear-gradient(100deg, transparent, rgba(255, 255, 255, 0.65), transparent);
	transform: translateX(-130%) skewX(-18deg);
	animation: brisa-sheen 5.5s ease-in-out 1.6s infinite;
	pointer-events: none;
}
[data-alw-theme="brisa"] .alw-btn-whatsapp { margin: 22px 0; }

/* Datos rápidos en "fichas" con icono */
[data-alw-theme="brisa"] .alw-vehicle-specs-quick { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 6px 0 20px; }
[data-alw-theme="brisa"] .alw-vehicle-specs-quick li {
	position: relative;
	display: flex; flex-direction: column; gap: 2px;
	padding: 13px 14px 13px 52px;
	border-radius: 18px;
	background: var(--brisa-tint);
	color: var(--alw-text);
	font-size: 15.5px; font-weight: 800; line-height: 1.25;
	transition: transform 0.4s var(--brisa-spring), background 0.25s ease;
}
[data-alw-theme="brisa"] .alw-vehicle-specs-quick li:hover { transform: translateY(-3px); background: var(--brisa-tint-strong); }
[data-alw-theme="brisa"] .alw-vehicle-specs-quick li::before {
	content: "";
	position: absolute; left: 15px; top: 50%;
	width: 24px; height: 24px; margin-top: -12px;
	background: var(--alw-accent);
	-webkit-mask: var(--brisa-ico) center / contain no-repeat;
	mask: var(--brisa-ico) center / contain no-repeat;
	transition: transform 0.45s var(--brisa-spring);
}
[data-alw-theme="brisa"] .alw-vehicle-specs-quick li:hover::before { transform: scale(1.18) rotate(-6deg); }
[data-alw-theme="brisa"] .alw-vehicle-specs-quick strong { display: block; margin: 0; font-size: 12.5px; font-weight: 700; color: var(--alw-text-2); }
[data-alw-theme="brisa"] .alw-spec-anio { --brisa-ico: var(--brisa-i-cal); }
[data-alw-theme="brisa"] .alw-spec-km { --brisa-ico: var(--brisa-i-km); }
[data-alw-theme="brisa"] .alw-spec-trans { --brisa-ico: var(--brisa-i-trans); }
[data-alw-theme="brisa"] .alw-spec-comb { --brisa-ico: var(--brisa-i-comb); }
[data-alw-theme="brisa"] .alw-spec-color { --brisa-ico: var(--brisa-i-color); }
[data-alw-theme="brisa"] .alw-spec-puertas { --brisa-ico: var(--brisa-i-puertas); }
[data-alw-theme="brisa"] .alw-spec-cond { --brisa-ico: var(--brisa-i-cond); }

/* Favoritos (botón de la ficha) y ubicación */
[data-alw-theme="brisa"] .alw-wishlist-btn-inline {
	padding: 14px; border-radius: 18px;
	border: 1.5px solid var(--brisa-line-strong);
	background: transparent; color: var(--alw-text);
	font-size: 15px; font-weight: 800;
	transition: transform 0.4s var(--brisa-spring), background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}
[data-alw-theme="brisa"] .alw-wishlist-btn-inline:hover { background: var(--brisa-danger-bg); border-color: var(--brisa-danger); color: var(--brisa-danger); transform: translateY(-2px); }
[data-alw-theme="brisa"] .alw-wishlist-btn-inline:active { transform: scale(0.97); }
[data-alw-theme="brisa"] .alw-wishlist-btn-inline.is-in-wishlist { background: var(--brisa-danger-bg); border-color: var(--brisa-danger); color: var(--brisa-danger); }
[data-alw-theme="brisa"] .alw-wishlist-btn-inline.is-pop { animation: brisa-pop 0.55s var(--brisa-ease); }
[data-alw-theme="brisa"] .alw-vehicle-location {
	margin-top: 16px; padding: 13px 16px;
	border-radius: 16px; background: var(--brisa-tint);
	font-size: 14.5px; font-weight: 700; color: var(--alw-text);
}

/* Descripción, especificaciones y relacionados */
[data-alw-theme="brisa"] .alw-single-tabs { border-top: 0; padding-top: 8px; margin-bottom: 48px; }
[data-alw-theme="brisa"] .alw-single-tabs h2,
[data-alw-theme="brisa"] .alw-related-products h2 { font-size: clamp(24px, 2.6vw, 30px); margin-bottom: 18px; }
[data-alw-theme="brisa"] .alw-single-tabs h2:not(:first-child) { margin-top: 48px; }
[data-alw-theme="brisa"] #alw-consulta { scroll-margin-top: 90px; }
[data-alw-theme="brisa"] .alw-description { font-size: 16.5px; line-height: 1.8; }
[data-alw-theme="brisa"] .alw-specs-table {
	border-collapse: separate; border-spacing: 0;
	border-radius: 24px; overflow: hidden;
	border: 1px solid var(--brisa-line);
	background: var(--alw-surface);
	box-shadow: var(--brisa-shadow-sm);
}
[data-alw-theme="brisa"] .alw-specs-table tr:nth-child(odd) { background: var(--brisa-tint); }
[data-alw-theme="brisa"] .alw-specs-table th,
[data-alw-theme="brisa"] .alw-specs-table td { padding: 14px 20px; font-size: 15px; }
[data-alw-theme="brisa"] .alw-specs-table th { color: var(--alw-text-2); font-weight: 700; }
[data-alw-theme="brisa"] .alw-specs-table td { font-weight: 800; color: var(--alw-text); }
[data-alw-theme="brisa"] .alw-related-products { margin-top: 56px; }

/* ---------- Formulario de consulta ---------- */
.alw-contact-form-wrap[data-alw-theme="brisa"] { max-width: 720px; }
/* Dentro de la ficha el formulario se alinea con los títulos; suelto, queda centrado. */
.alw-single-tabs .alw-contact-form-wrap[data-alw-theme="brisa"] { margin-left: 0; margin-right: auto; }
[data-alw-theme="brisa"] .alw-checkout-form {
	gap: 28px; padding: 32px;
	border-radius: 30px;
	border: 1px solid var(--brisa-line);
	background: var(--alw-surface);
	box-shadow: var(--brisa-shadow);
}
[data-alw-theme="brisa"] .alw-checkout-form.is-spotlight { animation: brisa-spotlight 1.3s ease-out 1; }
[data-alw-theme="brisa"] .alw-form-vehicle-ref {
	margin: 0; padding: 14px 18px;
	border-radius: 16px; background: var(--brisa-tint);
	font-size: 15px; color: var(--alw-text);
}
[data-alw-theme="brisa"] .alw-form-section + .alw-form-section { padding-top: 26px; border-top: 2px dashed var(--brisa-line); }
[data-alw-theme="brisa"] .alw-form-section-title {
	margin: 0 0 12px;
	font-size: 18px; font-weight: 800; letter-spacing: -0.02em; text-transform: none; color: var(--alw-text);
}
[data-alw-theme="brisa"] .alw-checkout-form label { font-size: 14px; font-weight: 700; }
[data-alw-theme="brisa"] .alw-required { color: var(--alw-accent-2); }
[data-alw-theme="brisa"] .alw-checkout-form input:not([type="radio"]):not([type="checkbox"]),
[data-alw-theme="brisa"] .alw-checkout-form textarea {
	border-radius: 16px;
	border: 1.5px solid transparent;
	background: var(--brisa-tint);
	font-size: 15.5px; font-weight: 600;
	transition: border-color 0.25s ease, background 0.25s ease, box-shadow 0.35s var(--brisa-ease);
}
[data-alw-theme="brisa"] .alw-checkout-form input:not([type="radio"]):not([type="checkbox"]) { height: 52px; padding: 0 16px; }
[data-alw-theme="brisa"] .alw-checkout-form textarea { padding: 14px 16px; min-height: 110px; }
[data-alw-theme="brisa"] .alw-checkout-form input:not([type="radio"]):not([type="checkbox"]):hover,
[data-alw-theme="brisa"] .alw-checkout-form textarea:hover { border-color: var(--brisa-line-strong); background: var(--brisa-tint-strong); }
[data-alw-theme="brisa"] .alw-checkout-form input:not([type="radio"]):not([type="checkbox"]):focus,
[data-alw-theme="brisa"] .alw-checkout-form textarea:focus {
	border-color: var(--alw-accent);
	background: var(--alw-surface);
	box-shadow: 0 0 0 5px color-mix(in srgb, var(--alw-accent) 16%, transparent);
}
[data-alw-theme="brisa"] .alw-checkout-form input::placeholder,
[data-alw-theme="brisa"] .alw-checkout-form textarea::placeholder { color: var(--alw-text-2); font-weight: 500; }
@supports selector(:user-invalid) {
	[data-alw-theme="brisa"] .alw-checkout-form input:user-invalid,
	[data-alw-theme="brisa"] .alw-checkout-form textarea:user-invalid { border-color: var(--brisa-danger); background: var(--brisa-danger-bg); }
}

/* Opciones de contacto */
[data-alw-theme="brisa"] .alw-delivery-options { gap: 12px; }
[data-alw-theme="brisa"] .alw-delivery-option {
	position: relative;
	padding: 14px 18px 14px 14px;
	border-radius: 22px;
	border: 1.5px solid var(--brisa-line);
	background: var(--alw-surface);
	transition: transform 0.4s var(--brisa-spring), border-color 0.25s ease, background 0.25s ease, box-shadow 0.35s var(--brisa-ease);
}
[data-alw-theme="brisa"] .alw-delivery-option:hover { transform: translateY(-2px); border-color: var(--brisa-line-strong); box-shadow: var(--brisa-shadow-sm); }
[data-alw-theme="brisa"] .alw-delivery-option:focus-within { box-shadow: 0 0 0 4px color-mix(in srgb, var(--alw-accent) 22%, transparent); }
[data-alw-theme="brisa"] .alw-delivery-icon {
	display: grid; place-items: center;
	width: 50px; height: 50px; border-radius: 16px;
	background: var(--brisa-tint);
	font-size: 24px;
	transition: transform 0.5s var(--brisa-spring), background 0.25s ease;
}
[data-alw-theme="brisa"] .alw-delivery-text { gap: 3px; }
[data-alw-theme="brisa"] .alw-delivery-text strong { font-size: 15.5px; font-weight: 800; }
[data-alw-theme="brisa"] .alw-delivery-text small { font-size: 13px; font-weight: 500; line-height: 1.35; }
[data-alw-theme="brisa"] .alw-delivery-radio {
	width: 24px; height: 24px;
	border: 2px solid var(--brisa-line-strong);
	transition: border-color 0.25s ease, background 0.25s ease, transform 0.4s var(--brisa-spring);
}
[data-alw-theme="brisa"] .alw-delivery-option.is-selected {
	border-color: var(--alw-accent);
	background: color-mix(in srgb, var(--alw-accent) 6%, var(--alw-surface));
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--alw-accent) 12%, transparent);
}
[data-alw-theme="brisa"] .alw-delivery-option.is-selected .alw-delivery-icon { background: var(--brisa-tint-strong); transform: scale(1.08) rotate(-5deg); }
[data-alw-theme="brisa"] .alw-delivery-option.is-selected .alw-delivery-radio { border-color: var(--alw-accent); background: var(--alw-accent); transform: scale(1.08); }
[data-alw-theme="brisa"] .alw-delivery-option.is-selected .alw-delivery-radio::after {
	inset: auto; left: 7px; top: 2.5px;
	width: 6px; height: 12px;
	border: solid #fff; border-width: 0 2.5px 2.5px 0;
	border-radius: 0; background: transparent;
	transform: rotate(45deg);
	animation: brisa-tick 0.45s var(--brisa-spring) both;
}

/* Avisos */
[data-alw-theme="brisa"] .alw-checkout-note {
	padding: 14px 16px; border: 0; border-radius: 16px;
	background: var(--brisa-tint); color: var(--alw-text-2);
	font-size: 13.5px; font-weight: 500; line-height: 1.5;
}
[data-alw-theme="brisa"] .alw-checkout-error {
	padding: 14px 18px; border-radius: 16px;
	background: var(--brisa-danger-bg); color: #A3163A;
	font-size: 15px; font-weight: 700;
	animation: brisa-shake 0.5s ease 0.1s 1;
}

/* Consulta enviada */
[data-alw-theme="brisa"] .alw-order-success {
	max-width: 520px; padding: 48px 34px;
	border-radius: 34px;
	border: 1px solid var(--brisa-line);
	background: var(--alw-surface);
	box-shadow: var(--brisa-shadow);
	animation: brisa-rise 0.8s var(--brisa-ease) both;
}
[data-alw-theme="brisa"] .alw-order-success h3 { font-size: 28px; }
[data-alw-theme="brisa"] .alw-order-success p { color: var(--alw-text-2); font-weight: 500; }
[data-alw-theme="brisa"] .alw-success-icon {
	position: relative;
	width: 78px; height: 78px; margin-bottom: 22px;
	background: var(--brisa-wa); color: var(--brisa-wa-ink);
	font-size: 38px;
	animation: brisa-check 0.8s var(--brisa-spring) 0.2s both;
}
[data-alw-theme="brisa"] .alw-success-icon::before {
	content: ""; position: absolute; inset: 0; border-radius: 50%;
	border: 3px solid var(--brisa-wa);
	animation: brisa-ring 1.6s ease-out 0.5s 2 both;
}

/* ---------- Favoritos ---------- */
.alw-wishlist-wrap[data-alw-theme="brisa"] > p {
	max-width: 420px; padding: 56px 28px;
	border-radius: 30px;
	border: 2px dashed var(--brisa-line-strong);
	background: var(--alw-surface);
	color: var(--alw-text); font-size: 17px; font-weight: 700;
	animation: brisa-soft-in 0.6s var(--brisa-ease) both;
}
.alw-wishlist-wrap[data-alw-theme="brisa"] > p::before {
	content: "";
	display: block; width: 56px; height: 56px; margin: 0 auto 16px;
	background: var(--brisa-danger);
	-webkit-mask: var(--brisa-i-heart) center / contain no-repeat;
	mask: var(--brisa-i-heart) center / contain no-repeat;
}

/* ---------- Visor de fotos (lightbox) ---------- */
.alw-lightbox-overlay[data-alw-theme="brisa"] {
	background: color-mix(in srgb, var(--alw-bg) 84%, transparent);
	-webkit-backdrop-filter: blur(18px) saturate(1.25);
	backdrop-filter: blur(18px) saturate(1.25);
	animation: brisa-fade 0.35s ease both;
}
.alw-lightbox-overlay[data-alw-theme="brisa"].is-nav { animation: none; }
.alw-lightbox-overlay[data-alw-theme="brisa"] img {
	max-width: min(92vw, 1240px); max-height: 82vh;
	border-radius: 26px;
	box-shadow: 0 40px 90px -30px color-mix(in srgb, var(--alw-accent) 60%, transparent), 0 0 0 8px rgba(255, 255, 255, 0.7);
	animation: brisa-lb-img 0.5s var(--brisa-ease) both;
}
.alw-lightbox-overlay[data-alw-theme="brisa"] .alw-lightbox-close,
.alw-lightbox-overlay[data-alw-theme="brisa"] .alw-lightbox-prev,
.alw-lightbox-overlay[data-alw-theme="brisa"] .alw-lightbox-next {
	display: flex; align-items: center; justify-content: center;
	width: 52px; height: 52px; padding: 0;
	border-radius: 50%;
	background: #fff; color: var(--alw-text);
	box-shadow: 0 12px 26px -10px color-mix(in srgb, var(--alw-accent) 60%, transparent);
	transition: transform 0.4s var(--brisa-spring), background 0.25s ease, color 0.25s ease;
}
.alw-lightbox-overlay[data-alw-theme="brisa"] .alw-lightbox-close { top: 22px; right: 26px; font-size: 30px; line-height: 1; }
.alw-lightbox-overlay[data-alw-theme="brisa"] .alw-lightbox-close:hover { transform: rotate(90deg) scale(1.08); background: var(--alw-accent); color: #fff; }
.alw-lightbox-overlay[data-alw-theme="brisa"] .alw-lightbox-prev { left: 22px; z-index: 2; }
.alw-lightbox-overlay[data-alw-theme="brisa"] .alw-lightbox-next { right: 22px; }
.alw-lightbox-overlay[data-alw-theme="brisa"] .alw-lightbox-prev:hover,
.alw-lightbox-overlay[data-alw-theme="brisa"] .alw-lightbox-next:hover { background: var(--alw-accent); color: #fff; }
.alw-lightbox-overlay[data-alw-theme="brisa"] .alw-lightbox-prev:hover { transform: translateY(-50%) translateX(-4px) scale(1.06); }
.alw-lightbox-overlay[data-alw-theme="brisa"] .alw-lightbox-next:hover { transform: translateY(-50%) translateX(4px) scale(1.06); }
.alw-lightbox-overlay[data-alw-theme="brisa"] .alw-lightbox-counter {
	bottom: 26px; padding: 8px 18px;
	background: #fff; color: var(--alw-text);
	font-size: 14px; font-weight: 800;
	box-shadow: 0 12px 26px -10px color-mix(in srgb, var(--alw-accent) 60%, transparent);
}

/* ---------- Aparición de las tarjetas ---------- */
/* La señal .alw-motion la pone un script mínimo en el <head> solo si el navegador puede animar
   (IntersectionObserver) y la persona no pidió "reducir movimiento". */
.alw-motion [data-alw-theme="brisa"] .alw-product-card:not(.is-in) {
	opacity: 0;
	/* Red de seguridad: si por algún motivo el JS no llega a revelar la tarjeta, se muestra igual. */
	animation: brisa-failsafe 0.01s linear 7s forwards;
}
.alw-motion [data-alw-theme="brisa"] .alw-product-card.is-in {
	animation: brisa-rise 0.8s var(--brisa-ease) var(--brisa-delay, 0ms) backwards;
}
.alw-motion [data-alw-theme="brisa"] .alw-view-list .alw-product-card.is-in { animation-name: brisa-rise-wide; }

/* ---------- Tablet y móvil ---------- */
@media (max-width: 900px) {
	.alw-catalog[data-alw-theme="brisa"] .alw-filters { flex: none; width: 100%; }
	.alw-catalog[data-alw-theme="brisa"] .alw-filters-head { padding: 0; }
	.alw-catalog[data-alw-theme="brisa"] .alw-filters-toggle { padding: 18px 24px; }
	.alw-catalog[data-alw-theme="brisa"] .alw-clear-filters { margin-right: 14px; }
	.alw-catalog[data-alw-theme="brisa"] .alw-filters-chevron { color: var(--alw-accent); width: 20px; height: 20px; transition: transform 0.4s var(--brisa-spring); }
	.alw-catalog[data-alw-theme="brisa"] .alw-filters.is-open .alw-filters-body { animation: brisa-unfold 0.45s var(--brisa-ease) both; }
	[data-alw-theme="brisa"] .alw-single-info { position: static; padding: 26px; }
	[data-alw-theme="brisa"] .alw-single-grid { gap: 28px; }
}
@media (max-width: 640px) {
	.alw-catalog[data-alw-theme="brisa"],
	.alw-single-product[data-alw-theme="brisa"],
	.alw-wishlist-wrap[data-alw-theme="brisa"] { padding: 22px 14px 44px; border-radius: 26px; }
	[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-product-card-body { padding: 18px 8px 8px; }
	[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-product-title { font-size: 21px; }
	[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-price { font-size: 26px; }
	[data-alw-theme="brisa"] .alw-products-grid.alw-view-list .alw-btn { padding: 15px 20px; }
	[data-alw-theme="brisa"] .alw-checkout-form { padding: 22px 16px; border-radius: 26px; }
	[data-alw-theme="brisa"] .alw-single-info { padding: 22px 18px; border-radius: 26px; }
}
@media (max-width: 520px) {
	[data-alw-theme="brisa"] .alw-products-grid:not(.alw-view-list) { grid-template-columns: 1fr 1fr; gap: 12px; }
	[data-alw-theme="brisa"] .alw-product-card { padding: 7px; border-radius: 22px; }
	[data-alw-theme="brisa"] .alw-product-card-media { border-radius: 16px; }
	[data-alw-theme="brisa"] .alw-product-card-body { padding: 12px 6px 6px; gap: 8px; }
	[data-alw-theme="brisa"] .alw-product-title { font-size: 15.5px; }
	[data-alw-theme="brisa"] .alw-products-grid:not(.alw-view-list) .alw-price { font-size: 17px; white-space: normal; }
	[data-alw-theme="brisa"] .alw-products-grid:not(.alw-view-list) .alw-price-regular { font-size: 12.5px; }
	[data-alw-theme="brisa"] .alw-products-grid:not(.alw-view-list) .alw-btn { padding: 12px 8px; gap: 6px; font-size: 14px; border-radius: 15px; white-space: nowrap; }
	[data-alw-theme="brisa"] .alw-products-grid:not(.alw-view-list) .alw-vehicle-meta { gap: 4px; }
	[data-alw-theme="brisa"] .alw-products-grid:not(.alw-view-list) .alw-vehicle-meta span { padding: 4px 8px 4px 6px; font-size: 11.5px; gap: 5px; }
	[data-alw-theme="brisa"] .alw-products-grid:not(.alw-view-list) .alw-vehicle-meta span::before { width: 12px; height: 12px; }
	[data-alw-theme="brisa"] .alw-badges { max-width: calc(100% - 58px); align-items: flex-start; }
	[data-alw-theme="brisa"] .alw-badge { padding: 4px 9px; font-size: 10.5px; line-height: 1.15; border-radius: 12px; white-space: normal; }
	[data-alw-theme="brisa"] .alw-badge::before { display: none; }
	[data-alw-theme="brisa"] .alw-cta-consulta .alw-btn,
	[data-alw-theme="brisa"] .alw-checkout-form .alw-btn-large { padding: 16px 14px; font-size: 16px; gap: 8px; }
	[data-alw-theme="brisa"] .alw-product-card .alw-wishlist-btn { top: 10px; right: 10px; width: 38px; height: 38px; font-size: 19px; }
	[data-alw-theme="brisa"] .alw-badges { top: 10px; left: 10px; }
	.alw-catalog[data-alw-theme="brisa"] .alw-search-input { height: 50px; }
	[data-alw-theme="brisa"] .alw-vehicle-specs-quick { grid-template-columns: 1fr; }
	[data-alw-theme="brisa"] .alw-delivery-icon { width: 44px; height: 44px; font-size: 21px; }
}

/* ---------- Respeta "reducir movimiento" ---------- */
@media (prefers-reduced-motion: reduce) {
	[data-alw-theme="brisa"],
	[data-alw-theme="brisa"]::before,
	[data-alw-theme="brisa"] *,
	[data-alw-theme="brisa"] *::before,
	[data-alw-theme="brisa"] *::after,
	.alw-lightbox-overlay[data-alw-theme="brisa"],
	.alw-lightbox-overlay[data-alw-theme="brisa"] * {
		animation: none !important;
		transition-duration: 0.01ms !important;
	}
	.alw-motion [data-alw-theme="brisa"] .alw-product-card:not(.is-in) { opacity: 1 !important; }
}
@media print {
	.alw-motion [data-alw-theme="brisa"] .alw-product-card:not(.is-in) { opacity: 1 !important; animation: none !important; }
}
