@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:500 800;font-display:swap;src:url(fonts/fdb6b064da.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:500 800;font-display:swap;src:url(fonts/40c2cb34af.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Figtree';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/467cc91576.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Figtree';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/3c512d8e38.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
/* Curseando — estilos de la landing
   Layout: portada naranja con palabra que rota + stickers flotantes, franja oscura que corre,
   grilla de cursos filtrable con paneles de color. */

:root{
  --bg:#F4F6F1; --surface:#FFFFFF; --ink:#18302B; --muted:#52645F; --line:#D9E0D8;
  --acc:#F0A031; --acc-ink:#2A1A02; --deep:#1E5A52; --chip:#E7EEE6; --hero:#FFB35C; --hero-ink:#18302B;
  --p1:#FFE3B8; --p2:#D6EDE6; --p3:#F9D6CF; --p4:#E2E0F7; --p5:#DCEBF8;
  color-scheme:light;
  --display:"Bricolage Grotesque","Trebuchet MS",system-ui,sans-serif;
  --body:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
.page{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55;overflow-x:hidden;min-height:100%}
.wrap{max-width:1120px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.page a{color:inherit}
.page :focus-visible{outline:3px solid var(--deep);outline-offset:3px;border-radius:6px}

/* ---------- encabezado ---------- */
.top{position:sticky;top:0;z-index:20;background:var(--hero);border-bottom:2px solid var(--hero-ink)}
.top .wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-block:12px}
.logo{font-family:var(--display);font-weight:800;font-size:1.35rem;letter-spacing:-.02em;color:var(--hero-ink);text-decoration:none;display:flex;align-items:center;gap:8px}
.logo b{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--hero-ink);color:var(--hero);font-size:1.15rem;transition:transform .4s cubic-bezier(.3,1.6,.5,1)}
.logo:hover b{transform:rotate(-12deg) scale(1.08)}
.ig{color:var(--hero-ink);font-weight:700;text-decoration:none;font-size:.92rem;border:2px solid var(--hero-ink);border-radius:999px;padding:6px 14px;transition:background .2s,color .2s}
.ig:hover{background:var(--hero-ink);color:var(--hero)}

/* ---------- portada ---------- */
.hero{background:var(--hero);color:var(--hero-ink);position:relative;overflow:hidden}
.hero .wrap{position:relative;padding-block:56px 72px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:24px;align-items:center}
.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin:0 0 18px;display:inline-flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--hero-ink);animation:pulse 1.8s ease-in-out infinite}
.hero h1{font-family:var(--display);font-weight:800;font-size:clamp(2.5rem,7.4vw,5.4rem);line-height:.98;letter-spacing:-.045em;margin:0 0 22px;text-wrap:balance}
.rot{display:inline-block;position:relative;height:1.1em;vertical-align:bottom;overflow:hidden;padding-bottom:.04em}
.rot span{display:block;line-height:1.08;background:var(--hero-ink);color:var(--hero);padding:0 .18em;border-radius:.16em;white-space:nowrap;animation:wordIn .55s cubic-bezier(.2,.9,.3,1.2)}
.lead{font-size:clamp(1.05rem,2.2vw,1.25rem);max-width:46ch;margin:0 0 28px;font-weight:500}
.ctas{display:flex;flex-wrap:wrap;gap:12px}
.btn{font:inherit;font-weight:700;text-decoration:none;border-radius:14px;padding:14px 22px;display:inline-flex;align-items:center;gap:10px;border:2px solid var(--hero-ink);transition:transform .2s cubic-bezier(.3,1.6,.5,1),box-shadow .2s}
.btn.solid{background:var(--hero-ink);color:var(--hero);box-shadow:5px 5px 0 rgba(0,0,0,.18)}
.btn.ghost{color:var(--hero-ink)}
.btn:hover{transform:translate(-2px,-3px)}
.btn.solid:hover{box-shadow:8px 9px 0 rgba(0,0,0,.2)}
.btn svg{transition:transform .25s}
.btn:hover svg{transform:translateY(3px)}
.hero h1,.lead,.ctas,.eyebrow{animation:rise .8s cubic-bezier(.2,.9,.3,1) both}
.lead{animation-delay:.08s}.ctas{animation-delay:.16s}

/* stickers flotantes */
.bench{position:relative;aspect-ratio:1/1;max-width:100%;min-width:0}
.stk{position:absolute;display:grid;place-items:center;border:2px solid var(--hero-ink);border-radius:22px;background:var(--bg);color:var(--ink);box-shadow:6px 6px 0 rgba(0,0,0,.16);animation:bob var(--d,7s) ease-in-out var(--dl,0s) infinite}
.stk svg{width:58%;height:58%}
.stk em{position:absolute;bottom:-14px;left:50%;transform:translateX(-50%);font-style:normal;font-size:.72rem;font-weight:700;background:var(--hero-ink);color:var(--hero);padding:3px 10px;border-radius:999px;white-space:nowrap}
.s1{width:38%;aspect-ratio:1;left:4%;top:6%;--r:-8deg;--dl:-.4s;--d:7s}
.s2{width:32%;aspect-ratio:1;right:6%;top:0;--r:7deg;--dl:-2.1s;--d:6s;background:var(--p2)}
.s3{width:34%;aspect-ratio:1;left:30%;top:40%;--r:4deg;--dl:-1.2s;--d:8s;background:var(--p3)}
.s4{width:28%;aspect-ratio:1;left:2%;bottom:6%;--r:-5deg;--dl:-3s;--d:6.5s;background:var(--p4)}
.s5{width:30%;aspect-ratio:1;right:2%;bottom:10%;--r:10deg;--dl:-.9s;--d:7.5s;background:var(--p5)}
.s6{width:24%;aspect-ratio:1;right:3%;top:33%;--r:-6deg;--dl:-1.7s;--d:5.5s;background:var(--p1)}
.spark{position:absolute;width:18px;height:18px;background:var(--hero-ink);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);animation:twinkle 2.6s ease-in-out infinite}

/* ---------- franja que corre ---------- */
.ticker{background:var(--ink);color:var(--bg);overflow:hidden;border-block:2px solid var(--ink)}
.track{display:flex;width:max-content;animation:marquee 28s linear infinite}
.track span{font-family:var(--display);font-weight:700;font-size:1.35rem;letter-spacing:-.01em;padding:14px 22px;white-space:nowrap;display:flex;align-items:center;gap:22px}
.track span::after{content:"";width:10px;height:10px;background:var(--acc);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%)}
.ticker:hover .track{animation-play-state:paused}

/* ---------- secciones ---------- */
.block{padding-block:64px 24px}
.head{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.head h2{font-family:var(--display);font-weight:800;font-size:clamp(1.9rem,4.6vw,3rem);letter-spacing:-.035em;line-height:1;margin:0;text-wrap:balance}
.head p{margin:0;color:var(--muted);max-width:40ch}

/* filtros */
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.filters button{font:inherit;font-size:.92rem;font-weight:700;border:2px solid var(--line);background:var(--chip);color:var(--ink);padding:9px 16px;border-radius:999px;cursor:pointer;transition:transform .2s cubic-bezier(.3,1.6,.5,1),background .2s,color .2s,border-color .2s}
.filters button:hover{transform:translateY(-2px);border-color:var(--ink)}
.filters button[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.filters .n{font-variant-numeric:tabular-nums;opacity:.6;margin-left:4px;font-weight:600}

/* tarjetas */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.card{background:var(--surface);border:2px solid var(--ink);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:transform .3s cubic-bezier(.3,1.4,.5,1),box-shadow .3s;animation:rise .6s cubic-bezier(.2,.9,.3,1) both;animation-delay:calc(var(--i,0) * 70ms)}
.card:hover{transform:translate(-4px,-6px) rotate(-.4deg);box-shadow:8px 10px 0 var(--ink)}
.art{height:150px;display:grid;place-items:center;position:relative;border-bottom:2px solid var(--ink)}
.art svg{width:92px;height:92px;color:var(--ink);transition:transform .5s cubic-bezier(.3,1.6,.5,1)}
.card:hover .art svg{transform:scale(1.12) rotate(-8deg)}
.tag{position:absolute;left:14px;top:14px;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;background:var(--surface);border:2px solid var(--ink);border-radius:999px;padding:4px 10px}
.rate{position:absolute;right:14px;top:14px;font-size:.8rem;font-weight:800;background:var(--ink);color:var(--bg);border-radius:999px;padding:4px 10px;font-variant-numeric:tabular-nums}
.cbody{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1}
.card h3{font-family:var(--display);font-weight:800;font-size:1.35rem;line-height:1.1;letter-spacing:-.02em;margin:0;text-wrap:balance}
.card p{margin:0;color:var(--muted);font-size:.97rem}
.card p.for{color:var(--ink)}
.for strong{font-weight:700}
.foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;border-top:2px dashed var(--line);flex-wrap:wrap}
.price{font-variant-numeric:tabular-nums;font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}
.price b{display:block;color:var(--ink);font-size:1.3rem;font-family:var(--display);letter-spacing:-.02em;text-transform:none}
.go{background:var(--acc);color:var(--acc-ink);text-decoration:none;font-weight:800;padding:11px 16px;border-radius:12px;font-size:.95rem;white-space:nowrap;border:2px solid var(--ink);display:inline-flex;align-items:center;gap:8px;transition:transform .2s cubic-bezier(.3,1.6,.5,1)}
.go svg{transition:transform .25s}
.go:hover{transform:translateY(-2px)}
.go:hover svg{transform:translateX(4px)}

/* tarjeta "¿no sabés cuál elegir?" */
.promo{background:var(--ink);color:var(--bg)}
.promo h3{color:var(--bg);font-size:1.8rem}
.card.promo p{color:var(--line)}
.promo .go{border-color:var(--acc)}
.promo .cbody{justify-content:center;gap:16px}
.tag2{align-self:flex-start;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--acc)}
.card.promo:hover{box-shadow:8px 10px 0 var(--acc)}
@media (min-width:980px){.promo{grid-column:span 2}}

/* cómo funciona */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.step{border:2px solid var(--ink);border-radius:20px;padding:24px;background:var(--surface);min-width:0}
.step .k{font-family:var(--display);font-weight:800;font-size:3.2rem;line-height:1;color:var(--acc);-webkit-text-stroke:2px var(--ink);display:block;margin-bottom:10px}
.step h3{font-family:var(--display);font-size:1.25rem;margin:0 0 6px;letter-spacing:-.02em}
.step p{margin:0;color:var(--muted);font-size:.95rem}

/* preguntas */
.qs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.q{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:16px;background:var(--chip);min-width:0}
.q i{flex:none;width:34px;height:34px;border-radius:50%;background:var(--ink);color:var(--bg);display:grid;place-items:center;font-style:normal;font-weight:800;font-family:var(--display)}
.q span{font-weight:600;padding-top:5px}

/* términos y condiciones */
.tcs{display:grid;gap:10px;max-width:820px}
.tc{border:2px solid var(--ink);border-radius:16px;background:var(--surface);transition:background .25s,box-shadow .25s}
.tc[open]{background:var(--chip)}
.tc summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;padding:14px 18px;font-weight:700;font-family:var(--display);font-size:1.1rem;letter-spacing:-.01em}
.tc summary::-webkit-details-marker{display:none}
.tc summary i{flex:none;width:30px;height:30px;border-radius:50%;background:var(--ink);color:var(--bg);display:grid;place-items:center;font-style:normal;font-size:.85rem}
.tc summary span{flex:1}
.tc summary::after{content:"+";font-size:1.5rem;line-height:1;transition:transform .3s cubic-bezier(.3,1.6,.5,1)}
.tc[open] summary::after{transform:rotate(135deg)}
.tc summary:hover{color:var(--deep)}
.tcb{padding:0 18px 16px 62px;color:var(--muted);font-size:.97rem;animation:rise .35s cubic-bezier(.2,.9,.3,1) both}
.tcb p{margin:0 0 8px}.tcb ul{margin:0 0 8px;padding-left:18px}.tcb li{margin-bottom:6px}
.tcb strong{color:var(--ink)}
.tcn{max-width:820px;font-size:.85rem;color:var(--muted);margin:18px 0 0}
.pie p a{font-weight:600}

/* pie */
.pie{margin-top:64px;border-top:2px solid var(--ink);padding-block:28px 40px;color:var(--muted);font-size:.86rem}
.pie p{margin:0 0 8px;max-width:78ch}
.pie .logo{color:var(--ink);margin-bottom:14px}
.pie .logo b{background:var(--acc);color:var(--acc-ink)}

/* ---------- animaciones ---------- */
@keyframes wordIn{from{transform:translateY(105%) rotate(4deg)}to{transform:none}}
@keyframes bob{0%,100%{transform:translate(0,0) rotate(var(--r))}25%{transform:translate(7px,-13px) rotate(calc(var(--r) * -.5))}50%{transform:translate(-5px,-7px) rotate(calc(var(--r) * .4))}75%{transform:translate(-9px,-15px) rotate(calc(var(--r) * -.8))}}
@keyframes twinkle{0%,100%{transform:scale(.6) rotate(0);opacity:.5}50%{transform:scale(1.15) rotate(45deg);opacity:1}}
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.5)}}
@keyframes marquee{to{transform:translateX(-50%)}}
@keyframes rise{from{transform:translateY(26px)}to{transform:none}}

/* ---------- extras: movimiento ---------- */
html{scroll-behavior:smooth}
.page ::selection{background:var(--acc);color:var(--acc-ink)}
.page [id]{scroll-margin-top:72px}

/* brillo que cruza el botón principal */
.btn.solid{position:relative;overflow:hidden}
.btn.solid::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.35) 50%,transparent 65%);transform:translateX(-120%);animation:shine 3.6s ease-in-out 1.2s infinite}

/* stickers: hover juguetón */
.stk{transition:box-shadow .3s,scale .35s cubic-bezier(.3,1.6,.5,1)}
.stk:hover{scale:1.12;box-shadow:10px 10px 0 rgba(0,0,0,.2)}
.stk svg{transition:transform .5s cubic-bezier(.3,1.6,.5,1)}
.stk:hover svg{transform:rotate(12deg) scale(1.1)}

/* ilustraciones de tarjetas: respiran en reposo */
.art svg{animation:breathe 4.5s ease-in-out infinite;animation-delay:calc(var(--i,0) * -.6s)}
.card:hover .art svg{animation-play-state:paused}
.art{background-size:200% 200%}
.rate{transition:transform .25s cubic-bezier(.3,1.6,.5,1)}
.card:hover .rate{transform:rotate(4deg) scale(1.08)}
.card:hover .tag{transform:rotate(-4deg)}
.tag{transition:transform .25s cubic-bezier(.3,1.6,.5,1)}
.go{transition:transform .2s cubic-bezier(.3,1.6,.5,1),box-shadow .2s}
.go:hover{box-shadow:3px 4px 0 var(--ink)}
.go:active,.btn:active,.filters button:active{transform:scale(.95)}

/* pasos y preguntas */
.step,.q{transition:transform .3s cubic-bezier(.3,1.4,.5,1),box-shadow .3s,background .3s}
.step:hover{transform:translateY(-6px) rotate(.5deg);box-shadow:6px 8px 0 var(--ink)}
.step .k{transition:transform .4s cubic-bezier(.3,1.6,.5,1)}
.step:hover .k{transform:scale(1.15) rotate(-6deg);transform-origin:left center}
.q:hover{transform:translateX(6px);background:var(--p1)}
.q i{transition:transform .35s cubic-bezier(.3,1.6,.5,1)}
.q:hover i{transform:rotate(360deg) scale(1.1)}

/* filtro activo: pop al elegirlo */
.filters button[aria-pressed="true"]{animation:pop .35s cubic-bezier(.3,1.6,.5,1)}

/* animaciones ligadas al scroll (solo navegadores que las soportan) */
@supports (animation-timeline:view()){
  .top::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:4px;background:var(--hero-ink);transform-origin:left;transform:scaleX(0);animation:progress linear both;animation-timeline:scroll(root)}
  .head,.step,.q,.pie .wrap{animation:reveal linear both;animation-timeline:view();animation-range:entry 0% entry 45%}
  .step:nth-child(2),.q:nth-child(even){animation-range:entry 8% entry 53%}
  .step:nth-child(3){animation-range:entry 16% entry 61%}
  .bench{animation:drift linear both;animation-timeline:scroll(root);animation-range:0 600px}
  .ticker .track{animation-duration:28s}
}

@keyframes shine{0%,55%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
@keyframes breathe{0%,100%{translate:0 0}50%{translate:0 -5px}}
@keyframes pop{0%{transform:scale(.88)}100%{transform:scale(1)}}
@keyframes progress{to{transform:scaleX(1)}}
@keyframes reveal{from{opacity:0;transform:translateY(34px) scale(.97)}to{opacity:1;transform:none}}
@keyframes drift{to{transform:translateY(70px)}}

/* palabra rotativa: máquina de escribir */
.rot span{animation:none;min-width:.5em}
.rot span::after{content:"";display:inline-block;width:.07em;height:.8em;margin-left:.06em;background:currentColor;vertical-align:-.05em;animation:caret 1s steps(1) infinite}
@keyframes caret{50%{opacity:0}}

/* ---------- movil: ajustes finos ---------- */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.page a,.page button{-webkit-tap-highlight-color:transparent}
.grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
.page img,.page svg{max-width:100%}
.card h3,.head h2,.hero h1{overflow-wrap:anywhere}
@media (hover:none){
  .card:hover,.step:hover,.q:hover,.stk:hover,.btn:hover,.go:hover,.filters button:hover{transform:none;box-shadow:none}
  .card:hover .art svg,.stk:hover svg{transform:none}
}
@media (max-width:820px){
  .top .wrap{padding-block:10px}
  .logo{font-size:1.2rem}
  .ig{padding:7px 12px;font-size:.85rem;min-height:36px;display:inline-flex;align-items:center}
  .hero .wrap{padding-block:32px 48px;gap:36px}
  .hero h1{font-size:clamp(2.2rem,11vw,3.4rem);line-height:1.02}
  .lead{font-size:1.05rem;margin-bottom:22px}
  .ctas{gap:10px}
  .btn{padding:14px 18px;min-height:48px;flex:1 1 auto;justify-content:center}
  .spark{display:none}
  .bench{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 14px;aspect-ratio:auto;max-width:360px;width:100%;margin:8px auto 16px;padding-bottom:10px}
  .stk{position:relative;inset:auto;width:100%;aspect-ratio:1;border-radius:18px;box-shadow:4px 4px 0 rgba(0,0,0,.16)}
  .stk em{font-size:.7rem;padding:2px 9px;bottom:-12px}
  .track span{font-size:1.1rem;padding:11px 18px}
  .block{padding-block:44px 12px}
  .head{margin-bottom:18px}
  .head h2{font-size:clamp(1.7rem,8vw,2.2rem)}
  .head p{font-size:.95rem}
  .filters{flex-wrap:nowrap;overflow-x:auto;gap:8px;margin-inline:-16px;padding:2px 16px 10px;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .filters::-webkit-scrollbar{display:none}
  .filters button{flex:none;min-height:44px;scroll-snap-align:start;white-space:nowrap}
  .grid{gap:16px}
  .art{height:132px}
  .cbody{padding:16px}
  .card h3{font-size:1.25rem}
  .foot{gap:10px}
  .go{min-height:44px}
  .promo h3{font-size:1.5rem}
  .step{padding:20px}
  .step .k{font-size:2.6rem}
  .q{padding:14px}
  .pie{margin-top:40px;padding-block:24px 32px}
}
@media (max-width:380px){
  .hero h1{font-size:2.1rem}
  .foot{flex-direction:column;align-items:stretch}
  .foot .go{justify-content:center}
  .tc summary{font-size:1rem;padding:12px 14px}
  .tcb{padding:0 14px 14px 14px}
}
@media (max-width:820px){.tcb{padding-left:18px}}

/* titular en tres lineas: la palabra animada no mueve el resto */
.hero .wrap{grid-template-columns:minmax(0,1.45fr) minmax(0,.55fr)}
.hero h1{font-size:clamp(2.3rem,5.4vw,4.4rem)}
.hero h1 .l1,.hero h1 .l3{display:block}
.hero .spark:nth-of-type(1){left:2%;top:10%}
.rot{display:block;width:fit-content;max-width:100%;height:1.12em;margin-block:.04em}

/* ---------- filtros extra ---------- */
.filters.sub{margin-top:-10px;margin-bottom:14px}
.filters .star[aria-pressed="true"]{background:var(--acc);color:var(--acc-ink);border-color:var(--ink)}
.bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.count{margin:0;font-weight:700;color:var(--muted)}
.sort{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.92rem}
.sort select{font:inherit;font-weight:600;color:var(--ink);background:var(--chip);border:2px solid var(--line);border-radius:12px;padding:8px 12px;min-height:40px;cursor:pointer}
.sort select:focus-visible{outline:3px solid var(--deep);outline-offset:2px}
.note{margin:0 0 18px;font-size:.82rem;color:var(--muted)}
.empty{padding:28px 18px;border:2px dashed var(--line);border-radius:16px;text-align:center;color:var(--muted)}
.badge{position:absolute;left:14px;bottom:12px;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:var(--acc);color:var(--acc-ink);border:2px solid var(--ink);border-radius:999px;padding:3px 10px}

/* ---------- ficha de producto ---------- */
.pdp{padding-block:28px 40px}
.crumbs{font-size:.88rem;color:var(--muted);margin-bottom:18px}
.crumbs a{text-decoration:none;border-bottom:1px solid var(--line)}
.pdp-top{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px;align-items:start}
.pdp-art{border:2px solid var(--ink);border-radius:24px;aspect-ratio:1;max-width:380px;width:100%;display:grid;place-items:center;box-shadow:6px 8px 0 var(--ink)}
.pdp-art svg{width:42%;height:42%;color:var(--ink)}
.pdp-main h1{font-family:var(--display);font-weight:800;font-size:clamp(1.9rem,4.4vw,3rem);line-height:1.05;letter-spacing:-.035em;margin:0 0 12px;text-wrap:balance}
.pdp-main .eyebrow{margin-bottom:10px;color:var(--muted)}
.pdp-main .lead{font-size:1.08rem;margin-bottom:18px;color:var(--ink)}
.facts{margin:0 0 20px;border-block:2px solid var(--ink)}
.facts>div{display:flex;gap:12px;justify-content:space-between;padding:10px 0;border-bottom:1px dashed var(--line)}
.facts>div:last-child{border-bottom:0}
.facts dt{color:var(--muted);font-weight:600}
.facts dd{margin:0;text-align:right;font-weight:700}
.buy .btn{width:100%;justify-content:center;font-size:1.1rem;padding:16px 22px;background:var(--acc);color:var(--acc-ink);border-color:var(--ink)}
.buy .micro{margin:10px 0 0;font-size:.82rem;color:var(--muted)}
.more{margin:12px 0 0}
.more .btn{width:100%;justify-content:center;border-width:2px;font-size:.98rem;padding:12px 18px;color:var(--ink);border-color:var(--ink);background:transparent}
.more .btn::after{content:"↗";font-weight:800}
.pdp-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:40px}
.pdp-cols section{border:2px solid var(--ink);border-radius:20px;padding:20px;background:var(--surface)}
.pdp-cols h2,.pdp-faq h2,.pdp-rel h2{font-family:var(--display);font-size:1.3rem;letter-spacing:-.02em;margin:0 0 10px}
.tick{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.tick li{position:relative;padding-left:26px;color:var(--ink)}
.tick li::before{content:"✓";position:absolute;left:0;top:0;font-weight:800;color:var(--deep)}
.pdp-faq{margin-top:40px;display:grid;gap:10px;max-width:820px}
.pdp-rel{margin-top:40px}
.pdp-rel ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pdp-rel li{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border:2px solid var(--line);border-radius:14px;background:var(--surface)}
.pdp-rel a{font-weight:700;text-decoration:none}
.pdp-rel li span{color:var(--muted);white-space:nowrap}
.buybar{display:none}
@media (max-width:820px){
  .pdp-top{grid-template-columns:1fr;gap:20px}
  .pdp-art{aspect-ratio:16/9;box-shadow:4px 5px 0 var(--ink)}
  .pdp-art svg{width:90px;height:90px}
  .pdp-cols{grid-template-columns:1fr}
  .facts>div{flex-direction:column;gap:2px}
  .facts dd{text-align:left}
  .buy{display:none}
  .buybar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:30;gap:12px;align-items:center;justify-content:space-between;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:var(--surface);border-top:2px solid var(--ink)}
  .buybar div{display:grid;line-height:1.1}
  .buybar b{font-family:var(--display);font-size:1.15rem}
  .buybar span{font-size:.72rem;color:var(--muted)}
  .buybar .btn{background:var(--acc);color:var(--acc-ink);border-color:var(--ink);min-height:48px;padding:12px 26px}
  .pie{margin-bottom:72px}
}

/* ---------- celular ---------- */
@media (max-width:820px){
  .hero .wrap{grid-template-columns:1fr;padding-block:40px 56px}
  .bench{max-width:300px;width:100%;margin:8px auto 0}
  .steps{grid-template-columns:1fr}
  .qs{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .ticker .track{animation:marquee 40s linear infinite!important}
  .stk{animation:bob var(--d,7s) ease-in-out var(--dl,0s) infinite!important}
}

/* build */
body{margin:0}
[hidden]{display:none!important}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--bg);padding:8px 14px;border-radius:8px;z-index:50}.skip:focus{left:8px}
.bg-p1{background:var(--p1)}.bg-p2{background:var(--p2)}.bg-p3{background:var(--p3)}.bg-p4{background:var(--p4)}.bg-p5{background:var(--p5)}
.st1{left: 6%; top: 18%}
.st2{left: 48%; top: 82%; animation-delay: -1s}
.st3{right: 4%; top: 58%; animation-delay: -1.8s}
.st4{--i: 0}
.st5{background: var(--p1)}
.st6{--i: 1}
.st7{background: var(--p3)}
.st8{--i: 2}
.st9{background: var(--p2)}
.st10{--i: 3}
.st11{background: var(--p5)}
.st12{--i: 4}
.st13{background: var(--p4)}
.st14{--i: 5}
.st15{--i: 6}
.st16{--i: 7}
.st17{--i: 8}
.st18{--i: 9}
.st19{--i: 10}
.st20{--i: 11}
.st21{--i: 12}
.st22{--i: 13}
.st23{--i: 14}
.st24{--i: 15}
.st25{--i: 16}
.st26{--i: 17}
.st27{--i: 18}
.st28{--i: 19}
.st29{--i: 20}
.st30{--i: 21}
.st31{--i: 22}
.st32{--i: 23}
.st33{--i: 24}
.st34{--i: 25}
.st35{--i: 26}
.st36{--i: 27}
.st37{--i: 28}
.st38{--i: 29}
.st39{--i: 30}
.st40{--i: 31}
.st41{--i: 32}
.st42{padding-top:48px}
