/* ============================================================================
   VALIANT DESIGN v2 — capa de diseño (18/09/2026, Lead Designer directive)
   Se carga DESPUES del <style> inline de index.html: sobre-escribe presentacion, nunca datos.
   Regla: todo valor de movimiento/espaciado/superficie sale de un token de este bloque.
   Documentacion: Valiant-Vault/Cloud Code/Valiant/Design Intelligence/Decisions/Design-v2-18Sep2026.md
   ============================================================================ */

/* ---------- 1. TOKENS ------------------------------------------------------- */
:root{
  /* Motion tokens */
  --ease-out:cubic-bezier(.16,1,.3,1);          /* entradas: rapido al inicio, aterriza suave */
  --ease-io:cubic-bezier(.65,0,.35,1);          /* cambios de estado / escena */
  --ease-press:cubic-bezier(.3,0,.2,1);         /* feedback de toque */
  --dur-fast:160ms;                             /* hover, press */
  --dur-base:320ms;                             /* estados, filtros */
  --dur-slow:720ms;                             /* reveals de seccion */
  --dur-scene:1100ms;                           /* cambios de escena de producto */
  --dist-s:12px;--dist-m:28px;--dist-l:64px;    /* distancias de reveal */
  --stagger:70ms;                               /* retardo entre hermanos */
  --press:.97;                                  /* escala al presionar */
  /* Layout tokens */
  --wrap:1240px;--gutter:clamp(20px,4.4vw,56px);
  --space-section:clamp(76px,10vw,144px);
  --radius-tile:28px;                           /* cards de producto: un escalon menos que --radius-card */
  /* Escala tipografica display (Exo 2 fino = firma "Signal Deep") */
  --fs-display:clamp(44px,6.6vw,108px);
  --fs-h2:clamp(34px,4.6vw,68px);
  --fs-lead:clamp(16px,1.35vw,19px);
  /* Superficies de producto ("plate"): estudio luminoso donde vive la foto */
  --plate:linear-gradient(180deg,#F3F6FA,#E4EBF4);
  --plate-ink:#0A1120;
  --ground:rgba(0,0,0,.55);
  --hv-bg:radial-gradient(120% 90% at 78% 42%,rgba(38,92,200,.34) 0%,rgba(9,16,38,0) 58%),radial-gradient(90% 70% at 8% 100%,rgba(0,140,255,.10) 0%,transparent 60%),linear-gradient(180deg,#05060C 0%,#070B18 100%);
  --hv-ink:var(--white);--hv-ink2:var(--silver2);--hv-accent:var(--blue2);
  --hv-ghost:rgba(255,255,255,.045);
  --hv-halo-blue:rgba(58,108,255,.72);--hv-halo-orange:rgba(255,128,48,.48);
}
[data-theme="light_valiant"]{
  --plate:linear-gradient(180deg,#FFFFFF,#EAF0F8);
  --ground:rgba(10,17,32,.30);
  --hv-bg:radial-gradient(90% 80% at 76% 45%,rgba(10,111,214,.14) 0%,rgba(244,248,252,0) 62%),linear-gradient(180deg,#FFFFFF 0%,#F4F8FC 100%);
  --hv-ink:#0A1120;--hv-ink2:#57698A;--hv-accent:#0A6FD6;
  --hv-ghost:rgba(10,17,32,.045);
  --hv-halo-blue:rgba(40,110,255,.30);--hv-halo-orange:rgba(255,140,60,.32);
}
[data-theme="celeste_gradient_valiant"]{
  --plate:linear-gradient(180deg,#FFFFFF,#DCEBF8);
  --ground:rgba(11,58,99,.42);
  --hv-bg:radial-gradient(70% 60% at 74% 38%,rgba(255,255,255,.55) 0%,rgba(255,255,255,0) 60%),linear-gradient(115deg,#0B3A63 0%,#155A99 36%,#6FB8F2 70%,#CFE9FF 100%);
  --hv-ink:#F5FAFF;--hv-ink2:#CFE0F0;--hv-accent:#9FD4FF;
  --hv-ghost:rgba(255,255,255,.10);
  --hv-halo-blue:rgba(255,255,255,.55);--hv-halo-orange:rgba(255,190,120,.55);
}

/* ---------- 2. BASE: foco, toque, transicion de tema ------------------------ */
html{scroll-padding-top:64px;}
:focus-visible{outline:2px solid var(--blue2);outline-offset:3px;border-radius:6px;}
button,a,.filter-btn,.cat-tile{-webkit-tap-highlight-color:transparent;}
/* Cambio de tema: crossfade de toda la pagina (View Transitions) -- sin flash. */
::view-transition-old(root),::view-transition-new(root){animation-duration:560ms;animation-timing-function:var(--ease-io);}
/* Fallback sin View Transitions: los colores se interpolan un instante. */
html.theme-x *,html.theme-x *::before,html.theme-x *::after{transition-property:background-color,color,border-color,fill,stroke,box-shadow !important;transition-duration:520ms !important;transition-timing-function:var(--ease-io) !important;}

/* ---------- 3. REVEAL SYSTEM (reemplaza el fade+translate plano) ------------- */
.reveal{opacity:0;transform:translate3d(0,var(--dist-m),0);
  transition:opacity var(--dur-slow) var(--ease-out) calc(var(--i,0)*var(--stagger)),transform var(--dur-slow) var(--ease-out) calc(var(--i,0)*var(--stagger));}
.reveal.visible{opacity:1;transform:none;}
.section-header.reveal{transform:none;}
.section-header.reveal>*{opacity:0;transform:translate3d(0,var(--dist-s),0);transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out);}
.section-header.reveal.visible>*{opacity:1;transform:none;}
.section-header.reveal.visible>*:nth-child(2){transition-delay:calc(var(--stagger)*1);}
.section-header.reveal.visible>*:nth-child(3){transition-delay:calc(var(--stagger)*2);}
.section-header.reveal.visible>*:nth-child(4){transition-delay:calc(var(--stagger)*3);}
.section-header.reveal.visible>*:nth-child(5){transition-delay:calc(var(--stagger)*4);}
/* Cards: tras el reveal, el hover vuelve a ser rapido. */
.prod-card.reveal.visible,.cat-tile.reveal.visible{transition:transform var(--dur-base) var(--ease-out),border-color var(--dur-base),box-shadow var(--dur-base);}

/* ---------- 4. TIPOGRAFIA DE SECCION --------------------------------------- */
.section-header{margin-bottom:clamp(36px,5vw,64px);}
.section-tag{font-size:11px;letter-spacing:.32em;}
.section-title{font-family:'Exo 2',sans-serif;font-weight:200;font-size:var(--fs-h2);letter-spacing:-.025em;line-height:1.02;}
.section-title span{font-weight:600;}
[data-theme="light_valiant"] .section-title{font-weight:300;}
[data-theme="light_valiant"] .section-title span{font-weight:600;}
.section-line{display:none;}
.section-sub{font-size:var(--fs-lead);font-weight:300;line-height:1.6;max-width:560px;margin-top:16px;}

/* ---------- 5. NAV ---------------------------------------------------------- */
nav{transition:background var(--dur-base),border-color var(--dur-base),box-shadow var(--dur-base);border-bottom-color:transparent;}
nav.is-scrolled{border-bottom-color:var(--hairline);}
.nav-progress{position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,#1F7FCC,var(--blue2));transform-origin:0 50%;transform:scaleX(var(--sp,0));opacity:.9;pointer-events:none;}
.nav-links a{position:relative;padding:6px 0;}
.nav-links a::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--blue2);transform:scaleX(0);transform-origin:0 50%;transition:transform var(--dur-base) var(--ease-out);}
.nav-links a:hover::after,.nav-links a.is-current::after{transform:scaleX(1);}
.nav-links a.is-current{color:var(--white);}
.nav-cta{transition:background var(--dur-fast),color var(--dur-fast),transform var(--dur-fast) var(--ease-press);}
.nav-cta:active{transform:scale(var(--press));}
.cart-btn{transition:transform var(--dur-fast) var(--ease-press),background var(--dur-fast);}
.cart-btn:active{transform:scale(.92);}

/* ---------- 6. BOTONES (microinteracciones) -------------------------------- */
.btn-primary,.btn-secondary{transition:transform var(--dur-fast) var(--ease-press),background var(--dur-fast),color var(--dur-fast),border-color var(--dur-fast),filter var(--dur-fast);will-change:transform;}
.btn-primary:hover{transform:translateY(-1px);filter:brightness(1.06);}
.btn-secondary:hover{transform:translateY(-1px);}
.btn-primary:active,.btn-secondary:active{transform:scale(var(--press));}
.btn-arrow::after{content:'→';display:inline-block;margin-left:10px;transition:transform var(--dur-base) var(--ease-out);}
.btn-arrow:hover::after{transform:translateX(4px);}
.filter-btn{border-radius:var(--radius-pill);padding:8px 18px;transition:background var(--dur-fast),color var(--dur-fast),border-color var(--dur-fast),transform var(--dur-fast) var(--ease-press);}
.filter-btn:active{transform:scale(var(--press));}
.filter-btn.active{background:var(--blue2);border-color:var(--blue2);color:var(--accent-ink);}
.add-cart-btn,.prod-action{transition:transform var(--dur-fast) var(--ease-press),background var(--dur-fast);}
.add-cart-btn:active{transform:scale(var(--press));}

/* ---------- 7. HERO ---------------------------------------------------------- */
#hero.hv{position:relative;min-height:100vh;min-height:100svh;padding:calc(52px + clamp(28px,5vh,64px)) 0 clamp(36px,6vh,72px);display:flex;align-items:center;overflow:hidden;isolation:isolate;background:var(--hv-bg);}
.hv-ghost{position:absolute;z-index:-1;right:-2vw;top:50%;font-family:'Exo 2',sans-serif;font-weight:200;font-size:clamp(220px,38vw,640px);line-height:.8;letter-spacing:-.06em;color:var(--hv-ghost);white-space:nowrap;user-select:none;pointer-events:none;transform:translate3d(0,calc(-50% + var(--sy,0)*-90px),0);will-change:transform;}
.hv-wrap{width:100%;max-width:1360px;margin:0 auto;padding:0 var(--gutter);display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);align-items:center;gap:clamp(24px,4vw,72px);}
.hv-copy{position:relative;z-index:2;transform:translate3d(0,calc(var(--sy,0)*-46px),0);opacity:calc(1 - var(--sy,0)*.9);will-change:transform,opacity;}
.hv-eyebrow{font-family:'Rajdhani',sans-serif;font-size:11px;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--hv-accent);margin:0 0 clamp(18px,2.4vw,30px);}
.hv-title{font-family:'Exo 2',sans-serif;font-weight:200;font-size:var(--fs-display);line-height:.98;letter-spacing:-.035em;color:var(--hv-ink);margin:0;}
.hv-title .ln{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em;}
.hv-title .ln>span{display:block;transform:translate3d(0,105%,0);transition:transform 1.1s var(--ease-out);}
.hv-title .ln:nth-child(2)>span{color:var(--hv-accent);font-weight:600;transition-delay:.12s;}
.hv-ready .hv-title .ln>span{transform:none;}
.hv-sub{font-size:var(--fs-lead);font-weight:300;line-height:1.65;color:var(--hv-ink2);max-width:470px;margin:clamp(20px,2.6vw,32px) 0 0;}
.hv-sub strong{color:var(--hv-ink);font-weight:500;}
.hv-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(26px,3.4vw,40px);}
.hv-copy .btn-secondary{color:var(--hv-ink);border-color:color-mix(in srgb,var(--hv-ink) 26%,transparent);}
.hv-copy .btn-secondary:hover{border-color:var(--hv-accent);color:var(--hv-accent);}
[data-theme="celeste_gradient_valiant"] .hv-copy .btn-primary{background:#F5FAFF;color:#0B3A63;}
.hv-proof{display:flex;flex-wrap:wrap;gap:6px 0;margin:clamp(28px,4vw,48px) 0 0;padding:0;list-style:none;font-family:'Rajdhani',sans-serif;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--hv-ink2);}
.hv-proof li{padding:0 16px 0 0;margin:0 16px 0 0;border-right:1px solid color-mix(in srgb,var(--hv-ink) 20%,transparent);}
.hv-proof li:last-child{border:0;margin:0;padding:0;}
/* fase de entrada coordinada: un solo stagger, no pulsos sueltos */
.hv-eyebrow,.hv-sub,.hv-ctas,.hv-proof{opacity:0;transform:translate3d(0,var(--dist-s),0);transition:opacity 1s var(--ease-out),transform 1s var(--ease-out);}
.hv-ready .hv-eyebrow{opacity:1;transform:none;}
.hv-ready .hv-sub{opacity:1;transform:none;transition-delay:.35s;}
.hv-ready .hv-ctas{opacity:1;transform:none;transition-delay:.5s;}
.hv-ready .hv-proof{opacity:1;transform:none;transition-delay:.65s;}
/* escena de producto */
.hv-stage{position:relative;height:clamp(440px,76vh,760px);perspective:1400px;--rx:0deg;--ry:0deg;}
.hv-halo{position:absolute;left:50%;top:48%;width:120%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;opacity:0;transition:opacity var(--dur-scene) var(--ease-io);pointer-events:none;filter:blur(30px);}
.hv-halo[data-v="blue"]{background:radial-gradient(closest-side,var(--hv-halo-blue),transparent 72%),radial-gradient(closest-side at 50% 42%,rgba(120,160,255,.35),transparent 46%);}
.hv-halo[data-v="orange"]{background:radial-gradient(closest-side,var(--hv-halo-orange),transparent 72%);}
.hv-halo[data-v="p18"]{background:radial-gradient(closest-side,var(--hv-halo-blue),transparent 72%),radial-gradient(closest-side at 50% 42%,rgba(120,160,255,.35),transparent 46%);}
.hv-halo[data-v="m18"]{background:radial-gradient(closest-side,rgba(190,40,70,.5),transparent 72%);}
.hv-stage[data-active="blue"] .hv-halo[data-v="blue"],.hv-stage[data-active="orange"] .hv-halo[data-v="orange"],.hv-stage[data-active="p18"] .hv-halo[data-v="p18"],.hv-stage[data-active="m18"] .hv-halo[data-v="m18"]{opacity:1;}
.hv-phone-wrap{position:absolute;inset:0 0 68px;transform-style:preserve-3d;transform:translate3d(0,calc(var(--sy,0)*-36px),0) scale(calc(1 - var(--sy,0)*.1)) rotateX(var(--rx)) rotateY(var(--ry));will-change:transform;opacity:0;transition:opacity 1.2s .2s var(--ease-out);}
.hv-ready .hv-phone-wrap{opacity:1;}
.hv-phone{position:absolute;left:50%;top:50%;height:88%;width:auto;max-width:none;transform:translate(-50%,-50%) translate3d(9%,0,0) rotateY(38deg) scale(.92);opacity:0;transition:transform var(--dur-scene) var(--ease-out),opacity 720ms var(--ease-io);filter:drop-shadow(0 34px 36px rgba(0,0,0,.42));backface-visibility:hidden;-webkit-user-drag:none;pointer-events:none;}
[data-theme="light_valiant"] .hv-phone{filter:drop-shadow(0 30px 30px rgba(10,17,32,.28));}
.hv-phone.is-out{transform:translate(-50%,-50%) translate3d(-9%,0,0) rotateY(-38deg) scale(.92);opacity:0;}
.hv-phone.is-on{transform:translate(-50%,-50%);opacity:1;}
.hv-ground{position:absolute;left:50%;bottom:76px;width:56%;height:34px;transform:translateX(-50%);background:radial-gradient(closest-side,var(--ground),transparent);filter:blur(6px);opacity:.75;}
.hv-meta{padding-right:76px;position:absolute;left:0;right:0;bottom:0;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--hv-ink) 16%,transparent);}
.hv-name{font-family:'Rajdhani',sans-serif;font-weight:600;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--hv-ink);}
.hv-name small{display:block;font-weight:500;font-size:11px;letter-spacing:.12em;color:var(--hv-ink2);margin-top:3px;}
.hv-price{font-family:'Exo 2',sans-serif;font-weight:200;font-size:clamp(26px,2.6vw,38px);letter-spacing:-.02em;color:var(--hv-ink);white-space:nowrap;}
.hv-price small{font-size:.42em;font-weight:400;letter-spacing:.08em;color:var(--hv-ink2);margin-right:6px;text-transform:uppercase;}
.hv-swap{transition:opacity var(--dur-base) var(--ease-io),transform var(--dur-base) var(--ease-out);}
.hv-swap.is-swapping{opacity:0;transform:translate3d(0,6px,0);}
.hv-chips{position:absolute;left:0;top:0;display:flex;gap:10px;z-index:3;}
.hv-chip{display:inline-flex;align-items:center;gap:9px;min-height:40px;padding:7px 16px 7px 9px;border:1px solid color-mix(in srgb,var(--hv-ink) 22%,transparent);border-radius:var(--radius-pill);background:transparent;color:var(--hv-ink2);font-family:'Rajdhani',sans-serif;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:border-color var(--dur-fast),color var(--dur-fast),background var(--dur-fast),transform var(--dur-fast) var(--ease-press);}
.hv-chip:active{transform:scale(var(--press));}
.hv-chip .dot{width:18px;height:18px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35),0 0 0 1px rgba(0,0,0,.15);}
.hv-chip[data-v="blue"] .dot{background:linear-gradient(135deg,#7f93c6,#1c2748);}
.hv-chip[data-v="orange"] .dot{background:linear-gradient(135deg,#ffc188,#ea6a17);}
.hv-chip[data-v="p18"] .dot{background:linear-gradient(135deg,#eceef2,#9ea3ad);}
.hv-chip[data-v="m18"] .dot{background:linear-gradient(135deg,#b8465c,#5a1526);}
.hv-stock{display:inline-flex;align-items:center;gap:10px;margin:clamp(18px,2.4vw,26px) 0 0;padding:9px 16px;border:1px solid color-mix(in srgb,var(--hv-accent) 45%,transparent);border-radius:999px;background:color-mix(in srgb,var(--hv-accent) 10%,transparent);font-size:14px;color:var(--hv-ink);}
.hv-stock b{font-family:'Exo 2',sans-serif;font-size:20px;font-weight:600;margin:0 2px;}
.hv-stock.bajo{border-color:rgba(255,182,97,.55);background:rgba(255,182,97,.12);}
.hv-stock-dot{width:9px;height:9px;border-radius:50%;background:#5BE39A;flex:none;animation:i18pulse 1.8s infinite;}
.hv-stock.bajo .hv-stock-dot{background:#FFB661;}
.hv-stock[hidden]{display:none !important;}
@media (prefers-reduced-motion:reduce){.hv-stock-dot{animation:none}}
.hv-chip[aria-checked="true"]{color:var(--hv-ink);border-color:var(--hv-accent);background:color-mix(in srgb,var(--hv-accent) 14%,transparent);}
.hv-chip:hover{color:var(--hv-ink);}
.hv-cue{position:absolute;left:var(--gutter);bottom:18px;display:none;}
@media(max-width:900px){
  #hero.hv{align-items:flex-start;padding-top:calc(52px + 8px);}
  .hv-wrap{grid-template-columns:1fr;gap:0;}
  .hv-stage{order:-1;height:min(43svh,390px);margin-bottom:2px;}
  .hv-copy{text-align:left;opacity:1;transform:none;}
  .hv-title{font-size:clamp(40px,11.6vw,64px);}
  .hv-chips{top:auto;bottom:0;left:0;right:0;justify-content:center;}
  .hv-meta{display:none;}
  .hv-phone-wrap{inset:0 0 54px;}
  .hv-ground{bottom:60px;}
  .hv-ghost{top:26%;right:auto;left:-6vw;font-size:64vw;}
  .hv-proof{font-size:11px;}
  [data-theme="celeste_gradient_valiant"]{--hv-bg:linear-gradient(180deg,#B9E0FF 0%,#8CC6F4 36%,#3C8FD6 52%,#155A99 68%,#0B3A63 100%);}
}
@media(max-height:640px) and (min-width:901px){.hv-stage{height:70vh;}}

/* ---------- 8. STORY (producto hero: scroll pinned) -------------------------- */
.story{position:relative;background:var(--bg);isolation:isolate;}
.story-pin{position:relative;padding:var(--space-section) var(--gutter);}
.story-phone{display:block;margin:0 auto 32px;height:min(60vh,520px);width:auto;filter:drop-shadow(0 30px 34px rgba(0,0,0,.4));}
.story-ch{max-width:640px;margin:0 auto 48px;text-align:center;}
.story-eyebrow{font-family:'Rajdhani',sans-serif;font-size:11px;font-weight:600;letter-spacing:.32em;text-transform:uppercase;color:var(--blue2);margin:0 0 16px;}
.story-h{font-family:'Exo 2',sans-serif;font-weight:200;font-size:clamp(40px,5.6vw,88px);line-height:1;letter-spacing:-.03em;color:var(--white);margin:0;}
.story-h b{font-weight:600;color:var(--blue2);}
.story-p{font-size:var(--fs-lead);font-weight:300;line-height:1.65;color:var(--silver2);margin:20px 0 0;}
.story-price{font-family:'Exo 2',sans-serif;font-weight:200;font-size:clamp(40px,5vw,72px);letter-spacing:-.03em;color:var(--white);}
.story-price small{display:block;font-size:14px;font-weight:300;letter-spacing:0;color:var(--silver2);margin-top:6px;}
.story-cta{margin-top:26px;}
.story-dots,.story-glow,.story-ghost{display:none;}
/* modo pinned: solo si JS lo activa y no hay reduced-motion */
html.js-story .story{height:400vh;}
html.js-story .story-pin{position:sticky;top:0;height:100vh;height:100svh;padding:0;overflow:hidden;}
html.js-story .story-glow{display:block;position:absolute;left:50%;top:50%;width:88vmin;aspect-ratio:1;transform:translate(calc(-50% + var(--tx,0)*1vw),-50%);background:radial-gradient(closest-side,rgba(var(--blue-rgb),.36),transparent 72%);filter:blur(24px);pointer-events:none;opacity:calc(.35 + var(--p,0)*.65);}
html.js-story .story-ghost{display:block;position:absolute;left:50%;top:46%;transform:translate3d(-50%,-50%,0) translate3d(calc(var(--p,0)*-16vw),0,0);font-family:'Exo 2',sans-serif;font-weight:200;font-size:clamp(160px,26vw,420px);line-height:.8;letter-spacing:-.06em;white-space:nowrap;color:var(--hv-ghost);pointer-events:none;user-select:none;}
html.js-story .story-phone{position:absolute;left:50%;top:50%;margin:0;height:min(76vh,700px);transform:translate3d(-50%,-50%,0) translate3d(calc(var(--tx,0)*1vw),calc(var(--ty,0)*1vh),0) rotateY(calc(var(--ry,0)*1deg)) rotateZ(calc(var(--rz,0)*1deg)) scale(var(--sc,1));will-change:transform;backface-visibility:hidden;}
html.js-story .story-stagewrap{position:absolute;inset:0;perspective:1600px;}
html.js-story .story-ch{position:absolute;margin:0;max-width:min(520px,42vw);top:50%;text-align:left;opacity:0;transform:translate3d(0,calc(-50% + var(--dist-m)),0);transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out);pointer-events:none;}
html.js-story .story-ch.is-active{opacity:1;transform:translate3d(0,-50%,0);pointer-events:auto;}
html.js-story .story-ch[data-side="l"]{left:var(--gutter);}
html.js-story .story-ch[data-side="r"]{right:var(--gutter);}
html.js-story .story-ch[data-side="c"]{left:50%;max-width:min(900px,86vw);text-align:center;transform:translate3d(-50%,calc(-50% + var(--dist-m)),0);top:16%;}
html.js-story .story-ch[data-side="c"].is-active{transform:translate3d(-50%,-50%,0);}
html.js-story .story-ch[data-side="c"]{top:22%;}
html.js-story .story-dots{display:flex;flex-direction:column;gap:10px;position:absolute;right:calc(var(--gutter)*.5);top:50%;transform:translateY(-50%);z-index:4;}
html.js-story .story-dots i{width:3px;height:22px;border-radius:2px;background:color-mix(in srgb,var(--white) 20%,transparent);transition:background var(--dur-base),height var(--dur-base) var(--ease-out);}
html.js-story .story-dots i.on{background:var(--blue2);height:38px;}
@media(max-width:860px){
  html.js-story .story{height:380vh;}
  html.js-story .story-phone{height:min(38svh,340px);top:calc(52px + 27svh);}
  html.js-story .story-ch,html.js-story .story-ch[data-side="l"],html.js-story .story-ch[data-side="r"]{left:var(--gutter);right:var(--gutter);top:auto;bottom:calc(96px + env(safe-area-inset-bottom,0px));max-width:none;text-align:center;transform:translate3d(0,var(--dist-m),0);}
  html.js-story .story-ch.is-active,html.js-story .story-ch[data-side="l"].is-active,html.js-story .story-ch[data-side="r"].is-active{transform:none;}
  html.js-story .story-ch[data-side="c"]{top:auto;left:var(--gutter);transform:translate3d(0,var(--dist-m),0);max-width:none;}
  html.js-story .story-ch[data-side="c"].is-active{transform:none;}
  html.js-story .story-h{font-size:clamp(34px,10vw,52px);}
  html.js-story .story-dots{display:none;}
  html.js-story .story-glow{top:calc(52px + 27svh);}
  html.js-story .story-ghost{top:calc(52px + 20svh);font-size:56vw;}
}

/* ---------- 9. VITRINAS 2-4 (motor de rotacion existente) ------------------- */
.showcase-section{padding:var(--space-section) var(--gutter);}
.showcase-inner{max-width:var(--wrap);gap:clamp(32px,6vw,96px);}
.showcase-title{font-family:'Exo 2',sans-serif;font-weight:200;font-size:var(--fs-h2);letter-spacing:-.03em;line-height:1;}
.showcase-eyebrow{letter-spacing:.32em;}
.showcase-desc{font-size:var(--fs-lead);font-weight:300;max-width:460px;}
.showcase-price .price-main-usd{font-family:'Exo 2',sans-serif;font-weight:200;font-size:clamp(28px,3vw,44px);letter-spacing:-.02em;color:var(--white);}
.showcase-media{min-height:clamp(380px,46vw,620px);}
.showcase-glow{background:radial-gradient(ellipse 55% 55% at 50% 50%,rgba(var(--blue-rgb),0.26) 0%,transparent 72%);filter:blur(10px);}
.showcase-media::after{content:'';position:absolute;left:50%;bottom:6%;width:46%;height:5%;transform:translateX(-50%);background:radial-gradient(closest-side,var(--ground),transparent);filter:blur(8px);z-index:0;}
.showcase-section .btn-primary{margin-top:0;}
.showcase-section+.showcase-section{border-top:0;}

/* ---------- 10. TICKER: marquesina editorial -------------------------------- */
.ticker-wrap{background:transparent;border-block:1px solid var(--hairline);padding:16px 0;}
.ticker-item{color:var(--silver2);font-weight:600;font-size:12px;letter-spacing:.3em;}
.ticker-item::after{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--blue2);opacity:.6;margin-left:28px;vertical-align:middle;}
[data-theme="celeste_gradient_valiant"] .ticker-wrap{background:transparent;}

/* ---------- 11. TRUST: cifras editoriales, sin iconos en circulo ------------- */
#trust{border:0;background:transparent;padding:var(--space-section) var(--gutter) calc(var(--space-section)*.55);}
.trust-inner{max-width:var(--wrap);grid-template-columns:repeat(5,1fr);gap:0;}
.trust-item{padding:8px clamp(10px,2vw,28px);text-align:left;border-right:1px solid var(--hairline);}
.trust-item:first-child{padding-left:0;}
.trust-icon{display:none;}
.trust-num{font-family:'Exo 2',sans-serif;font-weight:200;font-size:clamp(34px,4.6vw,68px);letter-spacing:-.04em;color:var(--white);line-height:1;}
.trust-label{margin-top:12px;font-size:11px;letter-spacing:.26em;color:var(--silver2);font-family:'Rajdhani',sans-serif;font-weight:600;}
.trust-label a{color:var(--blue2) !important;}
@media(max-width:860px){.trust-inner{grid-template-columns:1fr 1fr;row-gap:36px;}.trust-item{border-right:0;padding:0;}.trust-item:last-child{grid-column:1/-1;}}

/* ---------- 12. DESTACADOS + PRODUCT CARDS ---------------------------------- */
#destacados,#productos{padding-inline:var(--gutter);}
#destacados{padding-block:var(--space-section);background:transparent;border:0;}
.featured-grid,.products-grid{max-width:var(--wrap);gap:clamp(14px,1.6vw,22px);}
.featured-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));}
.products-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));}
@media(min-width:1100px){
  .featured-grid{grid-template-columns:repeat(6,1fr);}
  .featured-grid>.prod-card{grid-column:span 2;}
  .featured-grid>.prod-card:nth-child(1),.featured-grid>.prod-card:nth-child(2){grid-column:span 3;}
  .featured-grid>.prod-card:nth-child(-n+2) .prod-photo-real{aspect-ratio:16/11;}
}
.prod-card{--card-pad:clamp(16px,1.5vw,22px);border-radius:var(--radius-tile);background:var(--card-bg,var(--bg2));display:flex;flex-direction:column;}
.prod-card::before{display:none;}
.prod-card:hover{transform:translateY(-4px);border-color:rgba(var(--blue2-rgb),.4);box-shadow:none;}
[data-theme="light_valiant"] .prod-card:hover,[data-theme="celeste_gradient_valiant"] .prod-card:hover{box-shadow:var(--shadow-card-hover);}
.prod-card>img.prod-photo-real,.prod-card>.prod-photo-placeholder{order:-1;}
.prod-photo-real{height:auto;aspect-ratio:1/1;object-fit:cover;filter:none;transition:transform var(--dur-slow) var(--ease-out);background:var(--plate);}
.prod-card:hover .prod-photo-real{transform:scale(1.045);}
.prod-card{overflow:hidden;}
.prod-photo-placeholder{aspect-ratio:1/1;height:auto;background:var(--plate);border-bottom:0;}
.prod-photo-placeholder .pph-icon{filter:none;opacity:.22;color:var(--plate-ink);}
.prod-photo-placeholder .pph-label{color:#57698A;}
/* cutouts: producto delante de la interfaz, no dentro de un rectangulo */
.prod-card.is-cutout .prod-photo-real{object-fit:contain;padding:9% 12% 7%;background:radial-gradient(ellipse 62% 44% at 50% 92%,rgba(var(--blue-rgb),.20),transparent 70%),radial-gradient(ellipse 70% 60% at 50% 40%,rgba(var(--blue2-rgb),.18),transparent 74%),var(--bg3);filter:drop-shadow(0 18px 18px rgba(0,0,0,.36));}
[data-theme="light_valiant"] .prod-card.is-cutout .prod-photo-real{background:radial-gradient(ellipse 60% 40% at 50% 90%,rgba(10,17,32,.12),transparent 70%),var(--plate);filter:drop-shadow(0 16px 16px rgba(10,17,32,.24));}
[data-theme="celeste_gradient_valiant"] .prod-card.is-cutout .prod-photo-real{background:radial-gradient(ellipse 60% 40% at 50% 90%,rgba(11,58,99,.18),transparent 70%),var(--plate);filter:drop-shadow(0 16px 16px rgba(11,58,99,.30));}
.prod-card.is-cutout:hover .prod-photo-real{transform:scale(1.06) translateY(-6px);}
.prod-card-header{position:absolute;top:14px;left:14px;right:14px;padding:0;z-index:2;justify-content:flex-start;pointer-events:none;}
.prod-card-header.badge-only{justify-content:flex-start;padding:0;}
.prod-card-header .prod-emoji-small{display:none;}
.prod-badge{border-radius:var(--radius-pill);padding:5px 11px;font-size:10px;letter-spacing:.16em;backdrop-filter:blur(8px);background:rgba(var(--bg-rgb),.72);}
.featured-grid .prod-card-header,.featured-grid .prod-card-header.badge-only{justify-content:flex-end;}
.featured-ribbon{top:14px;left:14px;clip-path:none;border-radius:var(--radius-pill);padding:5px 12px;box-shadow:none;background:var(--blue2);color:var(--accent-ink);}
.prod-body{padding:var(--card-pad);flex:1;display:flex;flex-direction:column;}
.prod-cat{font-size:10.5px;letter-spacing:.2em;color:var(--silver2);margin-bottom:8px;}
.prod-name{font-family:'Exo 2',sans-serif;font-weight:400;font-size:clamp(19px,1.5vw,23px);letter-spacing:-.01em;line-height:1.15;margin-bottom:10px;color:var(--white);}
.prod-desc{display:none;}
.prod-tags{flex-wrap:nowrap;overflow:hidden;gap:6px;margin-bottom:14px;-webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent);}
.prod-tag{white-space:nowrap;border-radius:var(--radius-pill);padding:3px 10px;border-color:var(--hairline);font-size:11px;}
.prod-tag:nth-child(n+4){display:none;}
.prod-trust{margin:0 0 12px;font-size:11px;flex-wrap:nowrap;overflow:hidden;}
.prod-trust span:nth-child(n+2){display:none;}
.featured-discount{margin:0 0 12px;border-radius:var(--radius-pill);padding:6px 12px;font-size:11px;align-self:flex-start;}
.prod-prices{margin-top:auto;margin-bottom:14px;}
.price-main{background:none;border:0;padding:0;align-items:baseline;gap:2px 10px;}
.price-main-usd{font-family:'Exo 2',sans-serif;font-weight:200;font-size:clamp(28px,2.3vw,36px);letter-spacing:-.03em;color:var(--white);line-height:1.05;}
.price-main-ars{font-size:12px;color:var(--silver2);margin-left:0;}
.toggle-prices{background:none;border:0;padding:8px 0 4px;color:var(--blue2);letter-spacing:.14em;}
.prod-cuotas-link{background:none;border:0;text-align:left;padding:6px 0 0;font-size:11px;letter-spacing:.12em;}
.prod-footer{border-top:1px solid var(--hairline);padding-top:14px;gap:12px;justify-content:space-between;}
.add-cart-btn{border-radius:var(--radius-pill);}
.prod-action{letter-spacing:.14em;}
/* estado de carga: la placa estudio se ve antes de que llegue la foto */
img.prod-photo-real:not([src]){opacity:0;}
@media(max-width:600px){
  .products-grid,.featured-grid{grid-template-columns:repeat(2,1fr);gap:10px;}
  .featured-grid{grid-template-columns:1fr;}
  .prod-card{--card-pad:14px;}
  .prod-name{font-size:17px;}
  .price-main-usd{font-size:26px;}
  .prod-badge{font-size:9px;padding:4px 9px;}
  .prod-card-header{top:10px;left:10px;right:10px;}
  .prod-footer{flex-wrap:wrap;}
}

/* ---------- 13. CATEGORIAS + BUSQUEDA + FILTROS ----------------------------- */
.cat-tiles-wrap{max-width:var(--wrap);}
.cat-tiles{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;}
.cat-tile{align-items:flex-start;text-align:left;padding:22px 22px 20px;gap:8px;min-height:148px;justify-content:flex-end;position:relative;overflow:hidden;transition:transform var(--dur-base) var(--ease-out),border-color var(--dur-base),background var(--dur-base);}
.cat-tile-icon{position:absolute;top:18px;right:20px;font-size:22px;opacity:.55;filter:grayscale(1);transition:opacity var(--dur-base),transform var(--dur-base) var(--ease-out);}
.cat-tile:hover{box-shadow:none;transform:translateY(-4px);}
.cat-tile:hover .cat-tile-icon{opacity:1;filter:none;transform:scale(1.12) rotate(-6deg);}
.cat-tile:active{transform:scale(var(--press));}
.cat-tile-label{font-family:'Exo 2',sans-serif;font-weight:300;font-size:21px;letter-spacing:-.01em;text-transform:none;}
.cat-tile-desc{font-size:12px;opacity:.85;}
.cat-tile::after{content:'→';position:absolute;bottom:18px;right:20px;color:var(--blue2);opacity:0;transform:translateX(-8px);transition:opacity var(--dur-base),transform var(--dur-base) var(--ease-out);}
.cat-tile:hover::after{opacity:1;transform:none;}
.search-wrap input{border-radius:var(--radius-pill);padding:14px 48px 14px 22px;background:var(--bg2);transition:border-color var(--dur-fast),box-shadow var(--dur-base);}
.search-wrap input:focus{border-color:var(--blue2);box-shadow:0 0 0 4px rgba(var(--blue2-rgb),.14);}
.cat-filter-wrap{top:52px;}
#search-empty{border:1px dashed var(--hairline);border-radius:var(--radius-card);max-width:560px;margin-inline:auto;}
.announce-bar{border-radius:var(--radius-pill);}
@media(max-width:700px){
  .cat-tiles{grid-template-columns:1fr 1fr;}
  .cat-tile{min-height:120px;padding:16px;}
  .cat-tile-label{font-size:18px;}
  .cat-tile-desc{display:none;}
}

/* ---------- 14. SECCIONES DE CONFIANZA / EDITORIAL --------------------------- */
#nosotros,#testimonios,#faq,#ubicacion,#contacto,#calculadora{padding-inline:var(--gutter);}
.why-card,.testi-card,.faq-item,.loc-card,.contact-item{transition:transform var(--dur-base) var(--ease-out),border-color var(--dur-base);}
.why-card:hover,.testi-card:hover,.loc-card:hover,.contact-item:hover{transform:translateY(-3px);}
footer .footer-copy{letter-spacing:.06em;}

/* ---------- 15. CTA STICKY MOBILE (iPhone) ---------------------------------- */
.m-cta{display:none;}
@media(max-width:760px){
  .m-cta{display:flex;gap:10px;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:990;padding:8px;border-radius:var(--radius-pill);background:rgba(var(--bg-rgb),.82);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);border:1px solid var(--hairline);transform:translate3d(0,140%,0);transition:transform var(--dur-slow) var(--ease-out);}
  .m-cta.show{transform:none;}
  .m-cta a{flex:1;text-align:center;padding:13px 10px;border-radius:var(--radius-pill);font-family:'Rajdhani',sans-serif;font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;transition:transform var(--dur-fast) var(--ease-press);}
  .m-cta a:active{transform:scale(var(--press));}
  .m-cta .a1{background:var(--cta-bg);color:var(--cta-ink);}
  .m-cta .a2{color:var(--white);border:1px solid var(--hairline);}
  .wa-float,.back-top{display:none;}
  #chatbot{bottom:calc(84px + env(safe-area-inset-bottom,0px));right:14px;transition:bottom var(--dur-slow) var(--ease-out);}
  body:not(.m-cta-on) #chatbot{bottom:calc(16px + env(safe-area-inset-bottom,0px));}
  .cart-toast{bottom:calc(84px + env(safe-area-inset-bottom,0px));}
}

/* ---------- 16. REDUCED MOTION: todo colapsa a estado final ------------------ */
@media(prefers-reduced-motion:reduce){
  .reveal,.section-header.reveal>*,.hv-title .ln>span,.hv-eyebrow,.hv-sub,.hv-ctas,.hv-proof,.hv-phone-wrap{opacity:1 !important;transform:none !important;transition:none !important;}
  .hv-phone{transition:opacity 1ms !important;transform:translate(-50%,-50%) !important;}
  .hv-copy,.hv-ghost,.hv-phone-wrap{transform:none !important;}
  .hv-ghost{transform:translate3d(0,-50%,0) !important;}
  .prod-card:hover,.cat-tile:hover,.btn-primary:hover{transform:none;}
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none !important;}
}

/* Celeste: la escena de producto cae sobre la franja pastel -> tinta oscura solo ahi */
[data-theme="celeste_gradient_valiant"] .hv-stage{--hv-ink:#0B3A63;--hv-ink2:#2E4A66;--hv-accent:#0B5FAE;}

@media(max-width:760px){body.in-story #chatbot{opacity:0;pointer-events:none;}#chatbot{transition:opacity var(--dur-base),bottom var(--dur-slow) var(--ease-out);}}

/* ---------- 17. "POR QUE VALIANT": lista editorial (sin grilla de cards con iconos) ---------- */
.why-grid,.theme-soft .why-grid{max-width:var(--wrap);grid-template-columns:repeat(3,1fr);gap:clamp(36px,5vw,72px) clamp(28px,4vw,64px);}
.why-grid .why-card,.theme-soft .why-grid .why-card{background:none;border:0;border-top:1px solid var(--hairline);border-radius:0;box-shadow:none;padding:26px 0 0;}
.why-grid .why-card:hover{transform:none;}
.why-num{font-family:'Exo 2',sans-serif;font-weight:200;font-size:clamp(40px,4vw,60px);letter-spacing:-.04em;color:var(--blue2);opacity:.9;margin-bottom:22px;}
.why-icon{display:none;}
.why-title{font-family:'Exo 2',sans-serif;font-weight:400;font-size:clamp(20px,1.7vw,25px);letter-spacing:-.01em;margin-bottom:12px;}
.why-text{font-size:15px;line-height:1.7;max-width:34ch;}
@media(max-width:900px){.why-grid,.theme-soft .why-grid{grid-template-columns:1fr;gap:28px;}.why-text{max-width:none;}}

/* ---------- 18. iPHONE 18 PRO: escena de lanzamiento (Design v2 sobre la logica de la otra sesion) ---------- */
@property --i18-halo{syntax:'<color>';inherits:true;initial-value:rgba(64,170,255,.38);}
.i18-section{padding:var(--space-section) var(--gutter);border-bottom:0;background:radial-gradient(90% 80% at 80% 50%,rgba(var(--blue-rgb),.12),transparent 62%),var(--bg);isolation:isolate;}
.i18-inner{max-width:1360px;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);gap:clamp(24px,5vw,88px);}
.i18-section .showcase-eyebrow{color:var(--blue2);}
.i18-section .showcase-title{font-size:clamp(48px,6.4vw,104px);line-height:.96;letter-spacing:-.04em;margin-bottom:clamp(20px,2.6vw,34px);}
.i18-countdown{gap:0;margin:0 0 clamp(20px,2.6vw,32px);}
.i18-cd-box{min-width:0;padding:0 clamp(14px,2vw,28px);border:0;border-radius:0;background:none;text-align:left;border-left:1px solid var(--hairline);}
.i18-cd-box:first-child{padding-left:0;border-left:0;}
.i18-cd-num{font-size:clamp(38px,4.6vw,68px);font-weight:200;letter-spacing:-.04em;}
.i18-cd-lbl{margin-top:8px;letter-spacing:.28em;font-size:10px;}
.i18-arrived{font-size:20px;letter-spacing:.24em;}
.i18-swatches{gap:8px;margin-bottom:14px;}
.i18-swatch{min-height:40px;padding:7px 16px 7px 9px;letter-spacing:.14em;transition:border-color var(--dur-fast),color var(--dur-fast),background var(--dur-fast),transform var(--dur-fast) var(--ease-press);}
.i18-swatch:active{transform:scale(var(--press));}
.i18-swatch[aria-checked="true"]{border-color:var(--blue2);background:rgba(var(--blue2-rgb),.14);}
.i18-colorname{font-size:14px;letter-spacing:.02em;margin-bottom:clamp(22px,3vw,34px);}
.i18-section .btn-primary{margin-top:0;}
.i18-note{max-width:46ch;margin-top:22px;}
/* escena: halo que cambia de color con el equipo elegido, "18" fantasma detras, sombra de apoyo */
.i18-media{--i18-halo:rgba(64,170,255,.38);min-height:clamp(440px,52vw,700px);transition:--i18-halo 900ms var(--ease-io);}
.i18-media:has(.i18-stage[data-mode="black"]){--i18-halo:rgba(110,124,170,.55);}
.i18-media:has(.i18-stage[data-mode="silver"]){--i18-halo:rgba(214,220,232,.5);}
.i18-media:has(.i18-stage[data-mode="celeste"]){--i18-halo:rgba(110,168,255,.6);}
.i18-media:has(.i18-stage[data-mode="darkcherry"]){--i18-halo:rgba(200,44,78,.5);}
.i18-media .showcase-glow{inset:-8%;background:radial-gradient(closest-side,var(--i18-halo),transparent 70%);filter:blur(26px);}
.i18-media::before{content:'18';position:absolute;left:50%;top:50%;transform:translate(-50%,-52%);font-family:'Exo 2',sans-serif;font-weight:200;font-size:clamp(220px,34vw,520px);line-height:.8;letter-spacing:-.06em;color:var(--hv-ghost);pointer-events:none;z-index:0;}
.i18-media::after{width:60%;bottom:4%;height:6%;}
.i18-stage.showcase-img{max-width:min(680px,100%);}
.i18-phone{width:46%;filter:drop-shadow(0 30px 30px rgba(0,0,0,.45));}
[data-theme="light_valiant"] .i18-phone{filter:drop-shadow(0 26px 26px rgba(10,17,32,.28));}
.i18-hint{bottom:0;letter-spacing:.3em;}
[data-theme="celeste_gradient_valiant"] .i18-section{background:radial-gradient(80% 70% at 80% 45%,rgba(255,255,255,.7),transparent 65%),transparent;}
@media(max-width:860px){
  .i18-inner{grid-template-columns:1fr;text-align:left;}
  .i18-countdown,.i18-swatches{justify-content:flex-start;}
  .i18-note,.i18-section .showcase-desc{margin-left:0;}
  .i18-media{order:-1;min-height:clamp(340px,92vw,470px);}
  .i18-phone{width:52%;}
  .i18-section{padding-block:56px 72px;}
}

/* ============================================================================
   19. ANIMACIONES DE COMPRA Y CATALOGO (18/09/2026, 2da ronda)
   ============================================================================ */
/* 19.1 Grilla: las cards que aparecen al filtrar/buscar entran en cascada */
@keyframes v2-enter{from{opacity:0;transform:translate3d(0,var(--dist-m),0) scale(.97);}to{opacity:1;transform:none;}}
.prod-card.v2-enter{animation:v2-enter var(--dur-slow) var(--ease-out) both;animation-delay:calc(var(--d,0)*45ms);}
#productsGrid.v2-swap{animation:none;}
/* 19.2 Fly-to-cart */
.v2-fly{position:fixed;z-index:10001;pointer-events:none;border-radius:20px;object-fit:cover;box-shadow:0 18px 40px rgba(0,0,0,.35);will-change:transform,opacity;}
@keyframes v2-bump{0%{transform:scale(1);}35%{transform:scale(1.45);}70%{transform:scale(.92);}100%{transform:scale(1);}}
.cart-count.bump{animation:v2-bump 560ms var(--ease-out);}
.cart-btn.ping{animation:v2-bump 480ms var(--ease-out);}
.add-cart-btn.is-added{background:var(--green) !important;color:#052E16 !important;}
/* 19.3 Drawers: resorte, fondo desenfocado, items en cascada */
#cart-drawer,#account-drawer{transition:transform 620ms cubic-bezier(.32,.72,0,1);border-radius:var(--radius-card) 0 0 var(--radius-card);overflow:hidden;}
@keyframes v2-fade{from{opacity:0;}to{opacity:1;}}
#cart-overlay.open,#account-overlay.open{animation:v2-fade var(--dur-base) var(--ease-io);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);}
@keyframes v2-item{from{opacity:0;transform:translate3d(24px,0,0);}to{opacity:1;transform:none;}}
#cart-drawer.open .cart-item{animation:v2-item 560ms var(--ease-out) both;}
#cart-drawer.open .cart-item:nth-child(1){animation-delay:120ms;}
#cart-drawer.open .cart-item:nth-child(2){animation-delay:180ms;}
#cart-drawer.open .cart-item:nth-child(3){animation-delay:240ms;}
#cart-drawer.open .cart-item:nth-child(n+4){animation-delay:300ms;}
#cart-drawer.open .cart-footer,#account-drawer.open form{animation:v2-item 600ms 260ms var(--ease-out) both;}
/* 19.4 Spotlight: luz que sigue al mouse dentro de la card (solo puntero fino) */
.prod-card::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:1;opacity:0;transition:opacity var(--dur-base);background:radial-gradient(320px circle at var(--mx,50%) var(--my,30%),rgba(var(--blue2-rgb),.13),transparent 62%);}
@media(hover:hover) and (pointer:fine){.prod-card:hover::after{opacity:1;}}
/* 19.5 Titulos: palabra por palabra */
.section-title.is-split{opacity:1 !important;transform:none !important;}
.section-title .w{display:inline-block;opacity:0;transform:translate3d(0,.55em,0);transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out);transition-delay:calc(var(--wi,0)*70ms + 80ms);}
.section-header.visible .section-title .w{opacity:1;transform:none;}
/* 19.6 Vitrinas 2-4: halo tintado por producto, palabra fantasma y texto en cascada */
.showcase-media::before{content:attr(data-ghost);position:absolute;left:50%;top:50%;transform:translate(-50%,-52%);font-family:'Exo 2',sans-serif;font-weight:200;font-size:clamp(160px,26vw,400px);line-height:.8;letter-spacing:-.06em;color:var(--hv-ghost);white-space:nowrap;pointer-events:none;z-index:0;}
#showcase-2{--sc-halo:rgba(70,120,255,.34);}
#showcase-3{--sc-halo:rgba(120,140,255,.30);}
#showcase-4{--sc-halo:rgba(255,170,90,.32);}
#showcase-2 .showcase-glow,#showcase-3 .showcase-glow,#showcase-4 .showcase-glow{background:radial-gradient(closest-side,var(--sc-halo),transparent 72%);}
.showcase-text.reveal>*{opacity:0;transform:translate3d(0,var(--dist-s),0);transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out);}
.showcase-text.reveal.visible>*{opacity:1;transform:none;}
.showcase-text.reveal.visible>*:nth-child(2){transition-delay:70ms;}
.showcase-text.reveal.visible>*:nth-child(3){transition-delay:140ms;}
.showcase-text.reveal.visible>*:nth-child(4){transition-delay:210ms;}
.showcase-text.reveal.visible>*:nth-child(5){transition-delay:280ms;}
/* 19.7 Destacados en mobile: carrusel con snap */
@media(max-width:600px){
  .featured-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-inline:calc(var(--gutter)*-1);padding-inline:var(--gutter);scrollbar-width:none;-webkit-overflow-scrolling:touch;}
  .featured-grid::-webkit-scrollbar{display:none;}
  .featured-grid>.prod-card{flex:0 0 78%;scroll-snap-align:center;}
}
/* 19.8 Selector de tema: pastilla que se desliza */
.theme-switcher{position:relative;}
.theme-switcher .ts-pill{position:absolute;top:3px;bottom:3px;left:0;border-radius:999px;background:var(--bg2);border:1px solid rgba(var(--blue-rgb),.35);transition:transform var(--dur-base) var(--ease-out),width var(--dur-base) var(--ease-out);pointer-events:none;}
.theme-switcher.has-pill button.active{background:transparent;border-color:transparent;box-shadow:none;position:relative;z-index:1;}
.theme-switcher.has-pill button{position:relative;z-index:1;}
@media(prefers-reduced-motion:reduce){
  .prod-card.v2-enter,#cart-drawer.open .cart-item,#cart-drawer.open .cart-footer,#account-drawer.open form{animation:none !important;}
  .section-title .w,.showcase-text.reveal>*{opacity:1 !important;transform:none !important;transition:none !important;}
  #cart-drawer,#account-drawer{transition-duration:1ms;}
  .cart-count.bump,.cart-btn.ping{animation:none;}
}

/* placeholder "Foto proximamente": oscuro en Dark, placa clara en Light/Celeste */
.prod-photo-placeholder{background:linear-gradient(160deg,var(--bg3),var(--bg2));}
.prod-photo-placeholder .pph-icon{color:var(--white);opacity:.3;}
.prod-photo-placeholder .pph-label{color:var(--silver2);}
[data-theme="light_valiant"] .prod-photo-placeholder,[data-theme="celeste_gradient_valiant"] .prod-photo-placeholder{background:var(--plate);}

/* Carrito: selector Dolares / Pesos */
.v2-cur{display:flex;flex-direction:column;gap:10px;}
.v2-cur-tabs{display:flex;gap:4px;padding:3px;border:1px solid var(--hairline);border-radius:var(--radius-pill);align-self:flex-start;}
.v2-cur-tabs button{border:0;background:transparent;color:var(--silver2);font-family:'Rajdhani',sans-serif;font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;padding:7px 16px;border-radius:var(--radius-pill);cursor:pointer;min-height:36px;transition:background var(--dur-fast),color var(--dur-fast);}
.v2-cur-tabs button[aria-checked="true"]{background:var(--blue2);color:var(--accent-ink);}
.v2-cur-alt{font-size:12px;color:var(--silver2);margin-top:-4px;}

/* ============================================================================
   20. AUDITORIA (impeccable audit + redesign-skill + Playwright, 18/09/2026)
   ============================================================================ */
/* 20.1 Accesibilidad: skip link */
.skip-link{position:fixed;left:-9999px;top:12px;z-index:10002;background:var(--cta-bg);color:var(--cta-ink);padding:12px 18px;border-radius:var(--radius-pill);font-family:'Rajdhani',sans-serif;font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:12px;text-decoration:none;}
.skip-link:focus{left:12px;}
/* 20.2 Contraste (Light/Celeste): el azul de acento y los verdes/dorados pasan a versiones AA como TEXTO */
.theme-soft .section-tag,.theme-soft .showcase-eyebrow,.theme-soft .story-eyebrow,.theme-soft .toggle-prices,.theme-soft .prod-cuotas-link,.theme-soft .prod-action,.theme-soft .cat-see-all,.theme-soft .crumb-link,.theme-soft .trust-label a,.theme-soft .hv-proof a{color:var(--link) !important;}
.theme-soft .price-ars,.theme-soft .price-main-ars,.theme-soft .contact-item-label,.theme-soft .social-handle,.theme-soft .footer-tagline,.theme-soft .footer-copy,.theme-soft .theme-footer-label,.theme-soft .acc-label{color:var(--silver2) !important;}
.theme-soft .featured-discount,.theme-soft .badge-sale,.theme-soft .testi-verified,.theme-soft .cuotas-badge,.theme-soft .nav-links a[href="/cuotas/"],.theme-soft .footer-inner a[href="/cuotas/"]{color:#0B6B33 !important;}
.theme-soft .badge-hot{color:#B42318;}
.theme-soft .badge-tester,.theme-soft .nav-links a[href="/ganadores/"],.theme-soft .footer-inner a[href="/ganadores/"]{color:#7A4E00 !important;}
.theme-soft .badge-new,.theme-soft .badge-preventa{color:var(--link);}
.theme-soft .acc-tab{color:var(--silver);}
.theme-soft .cart-send-btn,.cart-send-btn{color:var(--wa-ink);}
[data-theme="celeste_gradient_valiant"] .toggle-prices{color:#0B4F94 !important;}
/* 20.3 Touch targets >= 44px en pantallas tactiles */
@media(pointer:coarse){
  .nav-logo{min-height:44px;}
  .cart-btn{min-width:44px;min-height:44px;}
  .hamburger{min-width:44px;min-height:44px;align-items:center;justify-content:center;}
  .hv-chip,.i18-swatch,.filter-btn,.cat-see-all,.acc-tab,.qty-btn,.cart-item-remove,.theme-switcher button,.v2-cur-tabs button,.crumb-link,.map-link{min-height:44px;}
  .qty-btn{min-width:44px;}
  .add-cart-btn{min-height:44px;padding-inline:20px;}
  .toggle-prices,.prod-cuotas-link,.prod-action{min-height:44px;display:inline-flex;align-items:center;}
  footer a,.footer-inner a{display:inline-block;padding:12px 0;}
  .cart-send-btn,#account-drawer input,#account-drawer button[type=submit]{min-height:48px;}
  .mobile-menu a{display:block;padding:10px 0;}
}
/* 20.4 Titulos: cuando TODO el titulo es acento, va fino y claro (jerarquia por escala, no por bold+color) */
.section-title>span:only-child,.section-title>.w:only-child{font-weight:200;color:var(--white);}
.section-title{text-wrap:balance;}
[data-theme="light_valiant"] .section-title>span:only-child{font-weight:300;}
h1,h2,h3{text-wrap:balance;}
p{text-wrap:pretty;}
/* 20.5 Convertidor (rehecho) */
#calculadora{padding:var(--space-section) var(--gutter);}
.calc2{max-width:920px;margin:0 auto;}
.calc2-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);}
.calc2-col{display:flex;flex-direction:column;gap:14px;padding:clamp(24px,3.4vw,44px) clamp(0px,2vw,32px);cursor:text;}
.calc2-out{border-left:1px solid var(--hairline);padding-left:clamp(20px,4vw,56px);cursor:default;}
.calc2-lbl{font-family:'Rajdhani',sans-serif;font-weight:600;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--silver2);}
.calc2-field{display:flex;align-items:baseline;gap:12px;}
.calc2-cur{font-family:'Rajdhani',sans-serif;font-weight:600;font-size:14px;letter-spacing:.2em;color:var(--blue2);}
.calc2 input{width:100%;min-width:0;background:none;border:0;outline:0;padding:0;font-family:'Exo 2',sans-serif;font-weight:200;font-size:clamp(44px,6vw,84px);letter-spacing:-.04em;color:var(--white);line-height:1;font-variant-numeric:tabular-nums;}
.calc2 input::placeholder{color:var(--dim);opacity:.6;}
.calc2-col:focus-within .calc2-lbl{color:var(--blue2);}
.calc2-ars{font-family:'Exo 2',sans-serif;font-weight:200;font-size:clamp(40px,5.4vw,76px);letter-spacing:-.04em;line-height:1;color:var(--white);font-variant-numeric:tabular-nums;word-break:break-all;}
.calc2-foot{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;padding-top:28px;}
.calc2-presets{display:flex;flex-wrap:wrap;gap:8px;}
.calc2-presets button{border:1px solid var(--hairline);background:transparent;color:var(--silver);border-radius:var(--radius-pill);padding:9px 18px;min-height:40px;font-family:'Rajdhani',sans-serif;font-weight:600;font-size:12px;letter-spacing:.12em;cursor:pointer;transition:border-color var(--dur-fast),color var(--dur-fast),transform var(--dur-fast) var(--ease-press);}
.calc2-presets button:hover{border-color:var(--blue2);color:var(--blue2);}
.calc2-presets button:active{transform:scale(var(--press));}
.calc2-note{flex:1 1 220px;font-size:13px;color:var(--silver2);margin:0;}
.calc2-foot .btn-primary{margin-left:auto;}
@media(max-width:700px){.calc2-grid{grid-template-columns:1fr;}.calc2-out{border-left:0;border-top:1px solid var(--hairline);padding-left:0;}.calc2-foot .btn-primary{margin-left:0;width:100%;text-align:center;}}
/* 20.6 Testimonios: masonry sin tarjeta huerfana */
.testi-grid{display:block;column-count:3;column-gap:16px;max-width:var(--wrap);}
.testi-grid>.testi-card,.testi-grid>.testi-card:last-child:nth-child(3n+1){break-inside:avoid;margin:0 0 16px;max-width:none;width:auto;display:block;}
@media(max-width:900px){.testi-grid{column-count:2;}}
@media(max-width:560px){.testi-grid{column-count:1;}}
/* 20.7 FAQ, ubicacion y contacto: mismo lenguaje que el resto */
.faq-list{max-width:860px;gap:0;}
.faq-item{background:none;border:0;border-top:1px solid var(--hairline);border-radius:0;}
.faq-item:last-child{border-bottom:1px solid var(--hairline);}
.faq-item.open{border-color:var(--hairline);}
.faq-q{padding:24px 4px;min-height:44px;}
.faq-q-text{font-family:'Exo 2',sans-serif;font-weight:300;font-size:clamp(17px,1.6vw,21px);letter-spacing:-.01em;}
.faq-a-inner{border-top:0;padding:0 4px 26px;font-size:15px;max-width:64ch;}
.faq-a{transition:max-height var(--dur-slow) var(--ease-out);}
.faq-icon{font-size:22px;transition:transform var(--dur-base) var(--ease-out);}
.loc-card,.contact-item{border-radius:var(--radius-tile);}
/* 20.8 Fondo: nada de negro puro ni lineas de "HUD" sobrantes */
::selection{background:var(--blue2);color:var(--accent-ink);}

.section-title .w{font-weight:inherit;color:inherit;}
@media(pointer:coarse){footer a,.footer-inner a{padding:15px 0;}.calc2-presets button{min-height:44px;}.map-link,.loc-card a,.contact-item a{display:inline-block;padding-block:12px;}}
#acc-submit-btn{background:var(--cta-bg) !important;color:var(--cta-ink) !important;}
/* Light/Celeste: titulos finos como Dark (los temas soft fijaban peso 600-700) y FAQ sin cards */
.theme-soft .section-title{font-weight:200;letter-spacing:-.025em;}
[data-theme="light_valiant"].theme-soft .section-title,[data-theme="light_valiant"] .section-title{font-weight:300;}
.theme-soft .section-title span:not(.w){font-weight:600;}
.theme-soft .section-title>span:only-child{font-weight:200;}
[data-theme="light_valiant"] .section-title>span:only-child{font-weight:300;}
.theme-soft .faq-item{background:none;border:0;border-top:1px solid var(--hairline);border-radius:0;box-shadow:none;backdrop-filter:none;}
.theme-soft .faq-item:last-child{border-bottom:1px solid var(--hairline);}
html .section-title span.w{font-weight:inherit;color:inherit;}

/* ---------- 21. VISOR 3D (img2threejs) ---------- */
.v3d{padding:var(--space-section) var(--gutter);background:radial-gradient(70% 70% at 70% 50%,rgba(var(--blue-rgb),.10),transparent 65%),var(--bg);}
.v3d-wrap{max-width:1360px;margin:0 auto;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,5vw,88px);align-items:center;}
.v3d-copy .story-p{max-width:44ch;}
.v3d-models,.v3d-colors{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px;}
.v3d-colors{margin-top:12px;}
.v3d-models button,.v3d-colors button{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:8px 18px;border:1px solid var(--hairline);border-radius:var(--radius-pill);background:transparent;color:var(--silver2);font-family:'Rajdhani',sans-serif;font-weight:600;font-size:12px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:border-color var(--dur-fast),color var(--dur-fast),background var(--dur-fast),transform var(--dur-fast) var(--ease-press);}
.v3d-colors button{padding-left:10px;}
.v3d-models button:active,.v3d-colors button:active{transform:scale(var(--press));}
.v3d-models button[aria-checked="true"],.v3d-colors button[aria-checked="true"]{border-color:var(--blue2);color:var(--white);background:rgba(var(--blue2-rgb),.14);}
.v3d-colors .dot{width:18px;height:18px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);}
.v3d-flip{margin-top:22px;}
.v3d-copy .i18-note{margin-top:22px;}
.v3d-stage{position:relative;height:clamp(460px,64vh,760px);cursor:grab;user-select:none;-webkit-user-select:none;}
.v3d-stage:active{cursor:grabbing;}
.v3d-stage canvas{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity var(--dur-slow) var(--ease-io);touch-action:pan-y;}
.v3d-stage.is-live canvas{opacity:1;}
.v3d-fallback{position:absolute;left:50%;top:50%;height:86%;width:auto;transform:translate(-50%,-50%);filter:drop-shadow(0 30px 30px rgba(0,0,0,.4));transition:opacity var(--dur-slow) var(--ease-io);pointer-events:none;}
.v3d-stage.is-live .v3d-fallback{opacity:0;}
.v3d-ref{position:absolute;left:0;bottom:0;display:flex;align-items:flex-end;gap:10px;pointer-events:none;}
.v3d-ref img{height:92px;width:auto;border-radius:14px;border:1px solid var(--hairline);background:var(--bg3);padding:4px;}
.v3d-ref span,.v3d-hint{font-family:'Rajdhani',sans-serif;font-weight:600;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--silver2);}
.v3d-hint{position:absolute;right:0;bottom:6px;pointer-events:none;}
@media(max-width:860px){.v3d-wrap{grid-template-columns:1fr;}.v3d-stage{order:-1;height:min(62svh,520px);}.v3d-ref img{height:64px;}}

/* ---------- 19. HOME COMERCIAL (23/09/2026): variedad real del catálogo ----------
   Secciones [data-hc] llenadas por assets/v2/home-comercial.js desde public_catalog.
   Composición = varios equipos reales recortados juntos (nunca una sola card gigante). */
.hc{padding:var(--space-section) var(--gutter);position:relative;isolation:isolate;}
.hc-in{max-width:var(--wrap);margin:0 auto;}
.hc-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px 32px;margin-bottom:clamp(20px,3vw,36px);}
.hc-eyebrow{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:12.5px;letter-spacing:.28em;text-transform:uppercase;color:var(--blue2);margin:0 0 12px;}
.hc-title{font-family:'Exo 2',sans-serif;font-weight:200;font-size:var(--fs-h2);letter-spacing:-.03em;line-height:1.02;color:var(--white);margin:0;}
.hc-title b{font-weight:600;}
.hc-sub{font-size:var(--fs-lead);font-weight:400;line-height:1.6;color:var(--silver);max-width:560px;margin:14px 0 0;}
.hc-all{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-pill);padding:13px 22px;background:none;cursor:pointer;white-space:nowrap;text-decoration:none;transition:border-color var(--dur-fast),background var(--dur-fast),transform var(--dur-fast) var(--ease-press);}
.hc-all:hover{border-color:var(--blue2);background:rgba(var(--blue2-rgb),.10);}
.hc-all:active{transform:scale(var(--press));}
.hc-all span{color:var(--blue2);}
/* escena: varios equipos juntos, el del centro adelante, sombra de apoyo común */
.hc-scene{--h:clamp(190px,30vw,400px);position:relative;display:flex;justify-content:center;align-items:flex-end;height:calc(var(--h) + 40px);margin:0 auto clamp(18px,3vw,34px);max-width:980px;}
.hc-scene::after{content:'';position:absolute;left:12%;right:12%;bottom:10px;height:34px;background:radial-gradient(closest-side,var(--ground),transparent);filter:blur(10px);z-index:-1;}
.hc-scene-item{height:calc(var(--h)*(1 - var(--a,0)*.13));width:auto;max-width:34%;object-fit:contain;margin-inline:calc(var(--h)*-.035);transform:translateY(calc(var(--a,0)*-2%)) rotate(calc(var(--k,0)*2.2deg));transform-origin:50% 100%;filter:drop-shadow(0 18px 22px rgba(0,0,0,.42));transition:transform var(--dur-slow) var(--ease-out);}
.hc-scene-item[data-wide]{height:calc(var(--h)*.58);max-width:40%;}
.hc-scene:hover .hc-scene-item{transform:translateY(calc(var(--a,0)*-2% - 6px)) rotate(calc(var(--k,0)*3deg));}
[data-theme="light_valiant"] .hc-scene-item,[data-theme="celeste_gradient_valiant"] .hc-scene-item{filter:drop-shadow(0 16px 18px rgba(10,17,32,.24));}
/* chips de marca */
.hc-brandlinks{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0 0 clamp(22px,3vw,36px);}
.hc-brandlink{font-family:'Exo 2',sans-serif;font-weight:600;font-size:15px;color:var(--white);background:var(--bg2);border:1px solid var(--hairline);border-radius:var(--radius-pill);padding:10px 18px;min-height:44px;cursor:pointer;transition:border-color var(--dur-fast),transform var(--dur-fast) var(--ease-press);}
.hc-brandlink span{font-weight:400;color:var(--silver2);margin-left:4px;font-size:13px;}
.hc-brandlink:hover{border-color:var(--blue2);}
.hc-brandlink:active{transform:scale(var(--press));}
.hc-brands{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;margin:0 0 clamp(22px,3vw,34px);padding:0;font-family:'Exo 2',sans-serif;font-size:15px;color:var(--silver);}
.hc-brands span{color:var(--silver2);font-size:13px;}
/* rail de cards: scroll horizontal en mobile, grilla en desktop */
.hc-rail{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;}
.hc-rail:empty{min-height:340px;border-radius:var(--radius-tile);background:linear-gradient(90deg,var(--bg2),var(--bg3),var(--bg2));opacity:.5;}
.hc[data-hc="celulares"] .hc-rail>:nth-child(n+9),.hc[data-hc="mas"] .hc-rail>:nth-child(n+9){display:none;}
.hc[data-hc="perfumes"] .hc-rail>:nth-child(n+11){display:none;}
.hc-card{display:flex;flex-direction:column;background:var(--bg2);border:1px solid var(--hairline);border-radius:var(--radius-tile);overflow:hidden;text-decoration:none;color:inherit;transition:transform var(--dur-base) var(--ease-out),border-color var(--dur-base);}
.hc-card:hover{transform:translateY(-4px);border-color:rgba(var(--blue2-rgb),.45);}
.hc-card:active{transform:scale(var(--press));}
.hc-card-img{display:block;aspect-ratio:1/1;background:var(--bg3);overflow:hidden;}
.hc-card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--dur-slow) var(--ease-out);}
.hc-card-img.is-cut{background:radial-gradient(ellipse 60% 40% at 50% 92%,rgba(var(--blue-rgb),.20),transparent 70%),radial-gradient(ellipse 70% 60% at 50% 42%,rgba(var(--blue2-rgb),.14),transparent 74%),var(--bg3);}
.hc-card-img.is-cut img{object-fit:contain;padding:10% 12% 8%;filter:drop-shadow(0 14px 14px rgba(0,0,0,.34));}
[data-theme="light_valiant"] .hc-card-img.is-cut,[data-theme="celeste_gradient_valiant"] .hc-card-img.is-cut{background:var(--plate);}
[data-theme="light_valiant"] .hc-card-img.is-cut img,[data-theme="celeste_gradient_valiant"] .hc-card-img.is-cut img{filter:drop-shadow(0 12px 12px rgba(10,17,32,.22));}
.hc-card:hover .hc-card-img img{transform:scale(1.04);}
.hc-card-body{display:flex;flex-direction:column;gap:4px;padding:16px 18px 18px;flex:1;}
.hc-brand{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--silver2);}
.hc-name{font-family:'Exo 2',sans-serif;font-weight:600;font-size:17px;line-height:1.25;color:var(--white);}
.hc-price{display:flex;flex-direction:column;margin-top:auto;padding-top:10px;}
.hc-usd{font-family:'Exo 2',sans-serif;font-weight:400;font-size:21px;letter-spacing:-.01em;color:var(--white);}
.hc-usd small{font-size:13px;color:var(--silver2);font-weight:400;}
.hc-usd--con{font-size:16px;color:var(--silver);}
.hc-ars{font-size:13.5px;color:var(--silver2);}
.hc-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--hairline);}
.hc-state{font-size:12.5px;font-weight:600;padding:4px 10px;border-radius:var(--radius-pill);white-space:nowrap;}
.hc-state--ok{background:rgba(var(--green-rgb),.14);color:var(--green);}
.hc-state--pre{background:rgba(var(--blue2-rgb),.14);color:var(--blue2);}
.hc-state--ped{background:rgba(var(--blue2-rgb),.08);color:var(--silver);}
.hc-state--con{background:rgba(var(--amber-rgb),.14);color:var(--amber);}
.hc-go{font-size:13px;font-weight:600;color:var(--blue2);white-space:nowrap;}
/* fondos: perfumes con una franja propia para separar "otro mundo" de producto */
.hc-perfumes{background:radial-gradient(80% 60% at 50% 30%,rgba(var(--blue2-rgb),.10),transparent 70%),var(--bg2);}
.hc-perfumes .hc-card{background:var(--bg);}
.hc-perfumes .hc-scene{--h:clamp(170px,24vw,320px);}
.hc-perfumes .hc-scene-item{max-width:22%;margin-inline:calc(var(--h)*-.02);}
.hc-macbook .hc-rail{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));}
.hc-macbook .hc-card-img{aspect-ratio:16/11;}
@media(max-width:760px){
  .hc-head{grid-template-columns:1fr;}
  .hc-all{justify-self:start;}
  .hc-rail{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(200px,68%);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);margin-inline:calc(var(--gutter)*-1);padding:2px var(--gutter) 10px;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
  .hc-rail::-webkit-scrollbar{display:none;}
  .hc-rail>*{scroll-snap-align:start;}
  .hc .hc-rail>*{display:flex !important;}
  .hc-macbook .hc-rail{grid-template-columns:none;grid-auto-columns:minmax(240px,78%);}
  .hc-scene{--h:clamp(170px,50vw,260px);}
  .hc-perfumes .hc-scene{--h:clamp(140px,40vw,210px);}
  .hc-perfumes .hc-scene-item:nth-child(n+6){display:none;}
}
/* Oportunidades: el 16 Pro Max deja de ser protagonista (bloque compacto dentro del flujo iPhone) */
#showcase-2.hc-oport{padding-block:clamp(56px,7vw,96px);}
#showcase-2.hc-oport .showcase-media{min-height:clamp(260px,30vw,400px);}
#showcase-2.hc-oport .showcase-title{font-size:clamp(30px,3.4vw,50px);}
/* Categorías con foto real: 4 grandes (lo que más se vende) + fila compacta */
.cat-tiles{grid-template-columns:repeat(4,1fr);}
.cat-tile{min-height:132px;}
.cat-tile--big{min-height:210px;grid-column:span 1;}
.cat-tile-img{position:absolute;right:6%;top:10%;height:62%;width:auto;max-width:56%;object-fit:contain;filter:drop-shadow(0 12px 14px rgba(0,0,0,.4));transition:transform var(--dur-base) var(--ease-out);pointer-events:none;}
.cat-tile:not(.cat-tile--big) .cat-tile-img{height:52%;top:12%;right:5%;max-width:40%;}
.cat-tile:hover .cat-tile-img{transform:translateY(-4px) scale(1.04);}
.cat-tile-img~.cat-tile-icon{display:none;}
.cat-tile-count{font-size:13px;color:var(--silver2);}
.cat-tile{align-items:flex-start;}
.cat-tile-label{position:relative;z-index:1;font-weight:600;}
@media(max-width:900px){.cat-tiles{grid-template-columns:repeat(2,1fr);}}
@media(max-width:700px){.cat-tile--big{min-height:170px;}.cat-tile{min-height:112px;}.cat-tile:not(.cat-tile--big) .cat-tile-img{height:46%;}}

/* ---------- 20. LEGIBILIDAD (auditoría 23/09/2026) ----------
   Exo 2 se carga en 200/400/600/800: todo lo que pedía peso 300 caía al 200 (el más fino).
   Texto para LEER va en 400; el 200 queda solo para titulares grandes. Nada informativo < 12px. */
.hv-sub,.section-sub,.showcase-desc,.story-p,.why-text,.faq-q-text,.faq-a-inner,.loc-address,.htb-step p{font-weight:400;}
.faq-q-text{font-weight:600;}
.hv-eyebrow,.story-eyebrow,.showcase-eyebrow{font-size:12.5px;}
.hv-proof li{font-size:13px;}
.hv-meta small{font-size:12.5px;}
.prod-cat{font-size:12px;letter-spacing:.14em;}
.prod-tag{font-size:12px;}
.price-var,.price-ars,.toggle-prices,.prod-cuotas-link{font-size:12.5px;}
.price-main-ars{font-size:13.5px;}
.add-cart-btn,.prod-action{font-size:12.5px;}
.prod-badge,.featured-ribbon,.loc-badge{font-size:11px;}
.featured-discount,.testi-verified,.trust-label,.map-address,.map-link,.contact-item-label,.social-handle,.calc2-lbl{font-size:12.5px;}
.i18-note{font-size:12.5px;line-height:1.6;}
.ticker-item{font-size:13px;}
.cat-tile-desc{font-size:13px;}
.htb-step p{font-size:13.5px;}
@media(max-width:600px){.prod-badge{font-size:10.5px;}.prod-name{font-size:17.5px;}.price-main-ars{font-size:13px;}}
.hc-brands.hc-chips{justify-content:flex-start;gap:8px;margin:16px 0 0;}
.hc-chips li{font-family:'Exo 2',sans-serif;font-weight:600;font-size:14px;color:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-pill);padding:7px 14px;}
/* tiles: foto arriba en las grandes, a la derecha en las chicas; el texto nunca queda debajo de la foto */
.cat-tile--big{min-height:260px;}
.cat-tile--big .cat-tile-img{top:18px;left:0;right:0;margin:0 auto;height:48%;max-width:72%;}
.cat-tile:not(.cat-tile--big){padding-right:36%;}
.cat-tile:not(.cat-tile--big) .cat-tile-img{top:50%;right:6%;height:62%;max-width:30%;transform:translateY(-50%);}
.cat-tile:not(.cat-tile--big):hover .cat-tile-img{transform:translateY(calc(-50% - 4px)) scale(1.04);}
@media(max-width:700px){
  .cat-tile--big{min-height:220px;padding:14px;}
  .cat-tile--big .cat-tile-img{height:46%;top:14px;}
  .cat-tile:not(.cat-tile--big){min-height:104px;padding:14px 34% 14px 14px;}
  .cat-tile-count{font-size:12.5px;}
}
.cat-tile:not(.cat-tile--big) .cat-tile-label{font-size:19px;}
@media(max-width:700px){
  .cat-tile:not(.cat-tile--big){min-height:0;padding:62px 14px 14px;justify-content:flex-start;}
  .cat-tile:not(.cat-tile--big) .cat-tile-img{top:12px;right:auto;left:14px;height:42px;max-width:60%;transform:none;}
  .cat-tile:not(.cat-tile--big):hover .cat-tile-img{transform:translateY(-2px);}
  .cat-tile:not(.cat-tile--big) .cat-tile-label{font-size:17px;}
  .cat-tile--big{min-height:196px;}
}
@media(max-width:760px){
  .hc-scene{--h:clamp(150px,44vw,240px);max-width:100%;}
  .hc-scene-item{max-width:29%;margin-inline:calc(var(--h)*-.09);}
  .hc-scene-item[data-wide]{max-width:36%;}
  .hc-perfumes .hc-scene-item{max-width:21%;margin-inline:calc(var(--h)*-.05);}
}
.section-tag,.cuotas-badge,.i18-hint{font-size:12px;}
.prod-trust{font-size:12px;}
.story-price small,.footer-tagline,.cta-banner p{font-weight:400;}
/* Vistos recientemente: compacto, no compite con las secciones de descubrimiento */
.hc-recientes{padding-block:clamp(36px,5vw,64px) 0;}
.hc-title--sm{font-size:clamp(24px,2.6vw,34px);}
.hc-recientes .hc-rail{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));}
.hc-recientes .hc-rail>:nth-child(n+7){display:none;}
.hc-recientes .hc-name{font-size:15px;}
.hc-recientes .hc-usd{font-size:18px;}
@media(max-width:760px){.hc-recientes .hc-rail{grid-auto-columns:minmax(160px,46%);}}

/* ---------- 22. LEGIBILIDAD Y TOQUES (Bloque 4, auditoría final 24/09/2026) ----------
   Medido en la home a 375 px: textos informativos de 9–11 px (pie, badges de locales, selector de
   tema) y toques de 29–39 px (marcas de las vitrinas, "＋ Comparar", "Ver catálogo completo").
   Mínimos: 12 px para leer y 40 px de alto para tocar. */
.loc-badge,.ts-label,.footer-handle,.footer-copy,.theme-footer-label,.v3d-hint,.footer-col h4{font-size:12px;}
footer span[style*="font-size:9px"]{font-size:12px !important;}
.prod-badge,.featured-ribbon{font-size:12px;}
.cat-see-all{min-height:44px;display:inline-flex;align-items:center;justify-content:center;}
.i18-alt,.trust-label a{display:inline-flex;align-items:center;min-height:40px;}
@media(max-width:600px){.prod-badge{font-size:12px;}}
.hero-badge,.i18-cd-lbl,.section-tag{font-size:12px;}
/* contraste: "Ver ficha →" de las cards en los temas claros (2,9:1 en celeste) */
[data-theme="light_valiant"] .hc-go,[data-theme="celeste_gradient_valiant"] .hc-go{color:var(--link);}
