/* LINMEX FE$T 2026 — hoja de estilos del sitio (rediseño v2 aprobado el 27-oct-2026).
   Azul marino, naranja de campaña, dorado y Barlow. El movimiento solo usa transform, opacity y recorte. */

:root{
  --bg:#030d19; --bg2:#071b2e; --bg3:#0d2a45; --ember:#2a1308;
  --line:#ffffff24; --text:#f4f5f6; --text2:#c5d0dd;
  --orange:#ff710b; --orange2:#d4540a; --gold:#d8b879;
  --r-card:28px; --r-field:12px;
  --pad:clamp(20px,5vw,72px);
  --pop:cubic-bezier(.34,1.56,.64,1);      /* rebote corto */
  --out:cubic-bezier(.32,.72,0,1);         /* entrada suave */
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--bg);color:var(--text);font:400 19px/1.55 Barlow,Arial,sans-serif;-webkit-font-smoothing:antialiased}
@media(min-width:900px){body{font-size:21px}}
@media(min-width:1280px){body{font-size:22px}}
button,input{font-family:inherit}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
em{font-style:normal;color:var(--orange)}
h1,h2,h3,p,ul,ol{margin:0}
ul,ol{padding:0;list-style:none}
h1,h2,h3{overflow-wrap:anywhere;text-wrap:balance}
p{text-wrap:pretty}
:focus-visible{outline:2px solid var(--orange);outline-offset:4px}
.defs{position:absolute;width:0;height:0;overflow:hidden}
.wrap{max-width:1280px;margin:0 auto}
.sec{padding:clamp(80px,10vw,150px) var(--pad)}

h1{font-size:clamp(40px,5.1vw,80px);font-weight:700;line-height:.99;letter-spacing:-.035em}
h2{font-size:clamp(38px,5.8vw,84px);font-weight:700;line-height:1;letter-spacing:-.03em}
h3{font-size:clamp(30px,3.1vw,46px);font-weight:600;line-height:1.08;letter-spacing:-.02em}
.eyebrow{font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:18px 30px;border-radius:999px;background:var(--orange);color:#101110;font-size:20px;font-weight:700;line-height:1.1;white-space:nowrap;transition:background .2s}
.btn:hover{background:#ff8a3a}
.btn:active{filter:brightness(.94)}
.btn:focus-visible{outline-color:var(--text)}
.btn-lg{padding:21px 36px;font-size:22px}
.btn-sm{padding:13px 22px;font-size:17px}
.btn-block{width:100%}
.skip-link{position:fixed;left:12px;top:12px;z-index:60;padding:12px 18px;border-radius:8px;background:var(--orange);color:#101110;font-weight:700;transform:translateY(-200%)}
.skip-link:focus{transform:none}

/* Barra flotante */
.bar{position:fixed;top:14px;left:50%;z-index:40;transform:translateX(-50%);display:flex;align-items:center;gap:28px;padding:8px 8px 8px 24px;max-width:calc(100% - 24px);border:1px solid var(--line);border-radius:999px;background:#071b2ed9;backdrop-filter:blur(16px)}
.bar-brand{font-size:18px;font-weight:800;letter-spacing:.04em;white-space:nowrap}
.bar-brand b{margin-left:8px;color:var(--orange);font-weight:600}
.bar nav{display:flex;align-items:center;gap:26px;font-size:17px;font-weight:500;color:var(--text2)}
.bar nav a{padding:8px 0;white-space:nowrap}
.bar nav a:hover{color:var(--text)}
.bar .act-link{display:flex;flex-direction:column;gap:2px;padding:4px 0;line-height:1.15}
.bar .act-link span{font-size:14px;letter-spacing:.1em;color:var(--gold)}

/* ═══ SECUENCIA (hero → tarjeta → nube → frase) ═══
   Sin JS o con movimiento reducido: hero estático normal.
   Con JS: la sección es alta y el escenario queda anclado (sticky) mientras el scroll lo anima. */
.seq{position:relative}
.seq-stage{position:relative;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:end;gap:clamp(24px,4vw,64px);min-height:100svh;padding:130px var(--pad) 96px;overflow:hidden;background:var(--bg)}
.seq-glow{position:absolute;inset:0;opacity:0;pointer-events:none;background:radial-gradient(55% 50% at 50% 50%,#ff710b34,transparent 70%),radial-gradient(40% 40% at 14% 86%,#d8b87926,transparent 70%),radial-gradient(40% 40% at 86% 14%,#ff710b22,transparent 70%)}
.seq-frame{position:absolute;inset:0;overflow:hidden;transform-origin:50% 50%;will-change:transform}
.seq-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.seq-img.i0{object-position:center 76%} /* encuadre alto: casi sin cielo y el master plan completo */
.seq-shade{position:absolute;inset:0;background:linear-gradient(90deg,#030d19e6 0%,#030d19a8 40%,#030d1940 100%),linear-gradient(0deg,#030d19b3 0%,#030d1900 15%)}
.hero-copy,.hero-art{position:relative;z-index:3;will-change:transform,opacity}
.hero-copy{display:grid;justify-items:start;gap:24px;max-width:860px}
.chip{display:inline-block;padding:9px 18px;border:1px solid #ff710b88;border-radius:999px;background:#ff710b1f;color:#ffb27a;font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.chip .y{margin-left:6px;color:var(--text)}
.lede{font-size:clamp(23px,2.3vw,34px);font-weight:500;line-height:1.28}
.event{display:grid;gap:12px}
.event-label{font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.facts{display:flex;flex-wrap:wrap;gap:10px}
.facts li{padding:10px 18px;border:1px solid var(--line);border-radius:999px;background:#030d1966;font-size:19px;font-weight:600}
.facts li:first-child{border-color:#d8b87988;color:var(--gold)}
.cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:4px}
.cta-note{font-size:19px;color:var(--text2)}
.hero-art{justify-self:center;align-self:center;width:min(100%,520px)}
.hero-art img{filter:drop-shadow(0 0 40px #ff720b55);animation:float 7s ease-in-out infinite}
.scroll-cue{position:absolute;left:50%;bottom:28px;z-index:3;transform:translateX(-50%);font-size:16px;color:var(--text2);white-space:nowrap}

.say{display:none;position:absolute;z-index:2;left:50%;top:50%;width:min(92%,1040px);transform:translate(-50%,-50%);text-align:center;opacity:0;pointer-events:none;text-shadow:0 4px 30px var(--bg)}
.say-eyebrow{margin-bottom:20px;font-size:15px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.say-text{font-size:clamp(36px,6vw,88px);font-weight:700;line-height:1.04;letter-spacing:-.035em}
.say .w{opacity:.2}
.say .w.o{color:var(--orange)}

.orbs{display:none;position:absolute;inset:0;z-index:1;pointer-events:none}
.orb{position:absolute;left:50%;top:50%;width:var(--sz);height:var(--sz);margin:calc(var(--sz)/-2) 0 0 calc(var(--sz)/-2);opacity:0;will-change:transform,opacity}
.tile{--sz:clamp(70px,9vw,132px);border-radius:26%;background-color:var(--bg3);background-repeat:no-repeat;box-shadow:0 16px 44px #000b,0 0 0 2px #ffffff26}
.stk{--sz:clamp(56px,7.2vw,104px);filter:drop-shadow(0 10px 22px #000a)}
.t1{background-image:url('assets/master.webp');background-size:260%;background-position:12% 30%}
.t2{background-image:url('assets/master.webp');background-size:300%;background-position:50% 68%}
.t3{background-image:url('assets/master.webp');background-size:280%;background-position:88% 42%}
.t4{background-image:url('assets/calendar.webp');background-size:230%;background-position:50% 28%}
.t5{background-image:url('assets/calendar.webp');background-size:300%;background-position:60% 62%}
.t6{background-image:url('assets/sale.webp');background-size:240%;background-position:50% 38%}
.t7{background-image:url('assets/master.webp');background-size:320%;background-position:20% 80%}
.t8{background:#0b1f33 url('assets/logo.webp') center/74% no-repeat}

.seq-on .seq{height:660vh;height:660svh}
.seq-on .seq-stage{position:sticky;top:0;height:100vh;height:100svh;min-height:0;contain:layout paint}
.seq-on .say,.seq-on .orbs{display:block}
.seq-mark{display:none}
.seq-film{display:none}
.seq-on .seq-film{display:block;position:absolute;inset:0;z-index:2;opacity:0;visibility:hidden;pointer-events:none}
.sf{display:none;position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sf-h{display:block}
.seq-on .enf{margin-top:-60vh;margin-top:-60svh;position:relative;z-index:3;background:var(--bg);background:linear-gradient(180deg,#030d1900 0,var(--bg) 14svh)} /* "¿Qué es?" sube sobre el hero mientras el logo se desvanece */
.seq-on .enf-statement{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* ENFOQUE */
.enf{padding:clamp(80px,10vw,150px) var(--pad);border-bottom:1px solid #d8b87933}
.enf .wrap{display:grid;gap:clamp(28px,3.4vw,44px);justify-items:start}
.enf-statement{display:grid;gap:18px}
.enf-title{font-size:clamp(44px,7.4vw,112px);font-weight:800;line-height:1;letter-spacing:-.04em}
.enf-title span{color:var(--orange)}
.enf-about{display:grid;gap:20px;max-width:920px}
.lede-2{font-size:clamp(23px,2.2vw,32px);line-height:1.42;color:var(--text2)}
.lede-2 strong{color:var(--text);font-weight:600}
.show-m{display:none}
.lede-m{font-size:22px;font-weight:600;line-height:1.35;color:var(--gold)}
.tagline{max-width:30em;font-size:clamp(22px,2vw,29px);font-weight:600;line-height:1.3;color:var(--text)}
.cert{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.cert-label{padding:9px 18px;border-radius:999px;background:var(--gold);color:#101110;font-size:16px;font-weight:700;letter-spacing:.04em}
.cert ul{display:flex;flex-wrap:wrap;gap:10px}
.cert li{padding:9px 18px;border:1px solid #d8b87988;border-radius:999px;font-size:19px;font-weight:600}

/* ═══ PROGRAMA: bento con micro-escenas ═══ */
.sec-head{display:grid;gap:18px;max-width:820px}
.sec-sub{font-size:clamp(21px,2vw,28px);color:var(--text2)}
.bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:minmax(340px,auto);gap:16px;margin-top:clamp(36px,5vw,64px)}
.card{--play:paused;position:relative;isolation:isolate;display:grid;align-content:end;gap:10px;padding:clamp(26px,3vw,44px);overflow:hidden;border:1px solid var(--line);border-radius:var(--r-card);background:var(--bg2)}
.card.live{--play:running}
.card p{font-size:clamp(19px,1.5vw,23px);color:var(--text2)}
.badge{font-size:15px!important;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gold)!important}
.card .badge-orange{color:#ffb27a!important}
.tag{-webkit-mask:radial-gradient(circle 11px at calc(100% - 32px) 32px,#0000 96%,#000 100%);mask:radial-gradient(circle 11px at calc(100% - 32px) 32px,#0000 96%,#000 100%)}
.tag::after{content:"";position:absolute;top:18px;right:20px;width:24px;height:24px;border:2px solid #ffffff45;border-radius:50%}
.card-day{grid-column:1/8;grid-row:1/3}
.card-panel{grid-column:8/13;grid-row:1;background:var(--bg3)}
.card-class{grid-column:8/13;grid-row:2;border-color:#d8b87955;background:linear-gradient(160deg,var(--ember),#1b0d05)}
.card-race{grid-column:1/8;grid-row:3;min-height:clamp(300px,40svh,400px);border-color:transparent;background:linear-gradient(135deg,var(--orange),var(--orange2));color:#101110}
.card-race .badge{color:#101110!important}
.card-web{grid-column:8/13;grid-row:3;border-color:#d8b87966}
.card-day h3{font-size:clamp(30px,3.3vw,50px)}

/* escena 1 · jornada: foto con zoom lento, pin que cae y onda */
.scn-photo{position:absolute;inset:-7%;z-index:-2;background:url('assets/calendar.webp') center 30%/cover;animation:kb 18s ease-in-out infinite alternate;animation-play-state:var(--play)}
.scn-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#030d19f2 0%,#030d1990 52%,#030d1930 100%)}
.scn-pin{position:absolute;top:30px;left:30px;width:56px;height:56px;animation:pinDrop 4.8s var(--pop) infinite;animation-play-state:var(--play)}
.scn-ripple{position:absolute;top:78px;left:45px;width:26px;height:10px;border:2px solid var(--orange);border-radius:50%;animation:ripple 2.4s ease-out infinite;animation-play-state:var(--play)}

/* escena 2 · panel: plano que se dibuja, lotes que se llenan, pin que cae */
.scn-plan{position:absolute;top:22px;left:26px;width:min(300px,calc(100% - 110px));aspect-ratio:2/1;height:auto}
.roads path{stroke-dasharray:1;stroke-dashoffset:1;animation:draw 7s ease-in-out infinite;animation-delay:calc(var(--i)*.22s);animation-play-state:var(--play)}
.lots rect{fill:var(--orange);opacity:0;transform-box:fill-box;transform-origin:center;animation:lot 7s var(--pop) infinite;animation-delay:calc(var(--i)*.2s + 1.5s);animation-play-state:var(--play)}
.lots rect:nth-child(2n){fill:var(--gold)}
.plan-pin{opacity:0;transform-box:fill-box;transform-origin:50% 100%;animation:planPin 7s var(--pop) infinite;animation-delay:2.7s;animation-play-state:var(--play)}

/* escena 3 · clases: dos diapositivas que se barajan */
.scn-deck{position:absolute;top:26px;left:26px;width:210px;height:116px}
.slide{position:absolute;inset:0;display:grid;place-items:center;border-radius:18px;font-size:24px;font-weight:700;animation-duration:5.2s;animation-iteration-count:infinite;animation-timing-function:var(--out);animation-play-state:var(--play)}
.slide.s1{background:linear-gradient(135deg,var(--orange),var(--orange2));color:#101110;animation-name:deckA}
.slide.s2{border:2px solid #d8b87999;background:var(--bg3);color:var(--text);animation-name:deckB}

/* escena 4 · maratón: rayas en movimiento y corredor que llega a la meta */
.scn-stripes{position:absolute;inset:0 -60px 0 0;z-index:-1;background:repeating-linear-gradient(115deg,#ffffff26 0 16px,transparent 16px 44px);-webkit-mask:linear-gradient(180deg,#000,#0000 75%);mask:linear-gradient(180deg,#000,#0000 75%);animation:stripes 2.6s linear infinite;animation-play-state:var(--play)}
/* escena 5 · webinar: clientes y leads confluyen en el webinar */
.scn-link{position:absolute;top:26px;left:26px;width:min(340px,calc(100% - 110px));aspect-ratio:330/96;height:auto}
.pulse{stroke-dasharray:.22 1;stroke-dashoffset:.22;animation:pulse 2.6s linear infinite;animation-delay:calc(var(--i)*.7s);animation-play-state:var(--play)}
.c3{transform-box:fill-box;transform-origin:center;animation:nodePulse 2.6s var(--pop) infinite;animation-delay:1.1s;animation-play-state:var(--play)}

/* ═══ ACTIVACIÓN DE VENTAS ═══ */
.act{--play:paused;background:linear-gradient(180deg,#06182a,#030d19);border-top:1px solid var(--line)}
.act.live{--play:running}
.act-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;gap:clamp(32px,6vw,100px)}
.act-head{display:grid;gap:22px}
.act-head h2{font-size:clamp(40px,6vw,92px)}
.act-body{display:grid;justify-items:start;gap:20px}
.act-date{display:flex;flex-direction:column;font-size:15px;font-weight:700;letter-spacing:.22em;color:var(--gold)}
.act-date span{font-size:clamp(72px,9vw,132px);font-weight:600;letter-spacing:-.06em;line-height:1}
.act-copy{max-width:26em;font-size:clamp(21px,1.9vw,27px);color:var(--text2)}
.track{display:flex;width:100%;gap:6px;margin-top:22px}
.track li{display:grid;flex:1;grid-template-rows:5px auto;gap:12px}
.track li::before,.track li::after{content:"";grid-row:1;grid-column:1;height:5px;border-radius:3px}
.track li::before{background:#ffffff1f}
.track li::after{background:var(--orange);transform-origin:0 50%;animation:bar 5s var(--out) infinite;animation-delay:calc(var(--i)*.45s);animation-play-state:var(--play)}
.track span{grid-row:2;font-size:15px;font-weight:600;letter-spacing:.1em;color:var(--text2)}

/* ═══ REGISTRO ═══ */
.signup{--play:paused;position:relative;overflow:hidden;background:linear-gradient(180deg,#030d19,#06182a)}
.signup.live{--play:running}
.drift{position:absolute;width:clamp(56px,6.5vw,92px);height:clamp(56px,6.5vw,92px);opacity:.92;pointer-events:none;filter:drop-shadow(0 10px 22px #000a);animation:drift 4.8s ease-in-out infinite alternate;animation-play-state:var(--play)}
.d1{top:5%;right:6%;--r:-10deg}
.d2{top:7%;left:44%;--r:14deg;animation-duration:5.4s}
.d3{bottom:6%;left:40%;--r:0deg;animation-duration:4.2s}
.signup-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);align-items:start;gap:clamp(36px,7vw,110px)}
.signup-copy{display:grid;justify-items:start;gap:24px}
.signup-copy h2{font-size:clamp(64px,9vw,140px);font-weight:800;letter-spacing:-.045em}
.date-line{font-size:clamp(21px,1.9vw,27px);font-weight:600;line-height:1.35;color:var(--gold)}
.pill{display:inline-block;padding:9px 18px;border:1px solid #ff710b88;border-radius:999px;color:#ffb27a;font-size:15px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.pitch{max-width:15em;font-size:clamp(32px,3.3vw,50px);font-weight:600;line-height:1.06;letter-spacing:-.025em}
.pitch-copy{max-width:27em;font-size:clamp(21px,1.9vw,26px);color:var(--text2)}
.ticks{display:grid;gap:14px}
.ticks li{position:relative;padding-left:36px;font-size:clamp(20px,1.8vw,25px);font-weight:500}
.ticks li::before{content:"";position:absolute;left:0;top:.5em;width:19px;height:19px;border-radius:50%;background:var(--orange);animation:tickPop 3.6s var(--pop) infinite;animation-delay:calc(var(--i)*.35s);animation-play-state:var(--play)}
.form{display:grid;gap:20px;padding:clamp(26px,3.4vw,46px);border:1px solid #d8b87966;border-radius:var(--r-card);background:var(--bg2)}
.form h3{font-size:clamp(30px,3.2vw,46px)}
.form-tag{justify-self:start;padding:8px 18px;border-radius:999px;background:var(--orange);color:#101110;font-size:17px;font-weight:700}
.form-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}
.form-req{flex:1 1 150px;font-size:15px;line-height:1.2;color:var(--text2)} /* si no cabe junto a la pastilla se parte en 2 líneas dentro de la misma fila (no agranda el formulario) */
.form-req b{color:var(--orange);font-weight:700}
.field{display:grid;gap:8px}
.field label{font-size:19px;font-weight:600}
.field label::after{content:" *";color:var(--orange)} /* todos los campos son obligatorios; la segunda regla oculta el asterisco a los lectores de pantalla (el campo ya es required) */
.field label::after{content:" *" / "";color:var(--orange)}
.field input{width:100%;min-width:0;padding:16px 18px;border:1px solid #647184;border-radius:var(--r-field);background:var(--bg);color:var(--text);font:inherit;font-size:20px}
.field input::placeholder{color:#8fa0b5}
.field input:focus{outline:2px solid var(--orange);outline-offset:2px}
.form-status{min-height:1.4em;font-size:18px;color:var(--gold)}
.form-status:empty{display:none}

/* PREGUNTAS */
.faq{border-top:1px solid var(--line)}
.faq-wrap{display:grid;gap:clamp(24px,4svh,44px)}
.faq h2{font-size:clamp(38px,4.8vw,68px)}
details{border-bottom:1px solid var(--line)}
.faq-cat+details{border-top:1px solid var(--line)}
summary{display:flex;justify-content:space-between;gap:20px;padding:28px 0;cursor:pointer;font-size:clamp(21px,2vw,27px);font-weight:600;line-height:1.28;list-style:none}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";flex:none;color:var(--orange);font-size:32px;line-height:1}
details[open] summary::after{content:"–"}
details p{padding:0 0 28px;max-width:34em;font-size:clamp(20px,1.8vw,24px);color:var(--text2)}

/* ═══ PIE ═══ */
.foot{position:relative;overflow:hidden;padding:clamp(64px,8vw,120px) var(--pad) 32px;border-top:1px solid #d8b87944;background:linear-gradient(180deg,#030d19,#050f1d)}
.foot::before{content:"";position:absolute;left:50%;top:-22%;width:90%;height:60%;transform:translateX(-50%);background:radial-gradient(closest-side,#ff710b24,transparent);pointer-events:none}
.foot>*{position:relative}
.foot-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px;padding-bottom:clamp(36px,5vw,64px);border-bottom:1px solid var(--line)}
.foot-claim{font-size:clamp(46px,7.2vw,108px);font-weight:800;line-height:.95;letter-spacing:-.045em}
.foot-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.1fr);gap:clamp(28px,4vw,64px);padding:clamp(36px,5vw,64px) 0}
.foot-brand{display:grid;gap:14px;align-content:start}
.foot-logo{font-size:26px;font-weight:800;letter-spacing:.05em}
.foot-brand p{max-width:22em;color:var(--text2)}
.foot-small{font-size:17px}
.foot-col{display:grid;gap:2px;align-content:start}
.foot-h{margin-bottom:10px;font-size:15px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.foot-col a{padding:8px 0;font-size:19px;color:var(--text2);transition:color .2s}
.foot-col a:hover{color:var(--text)}
.social{display:flex;flex-wrap:wrap;gap:10px}
.foot-col .social a{display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid var(--line);border-radius:50%;color:var(--text);transition:background .2s,color .2s,border-color .2s}
.foot-col .social a:hover{border-color:var(--orange);background:var(--orange);color:#101110}
.social svg{width:23px;height:23px}
.foot-mark{margin:0 -1vw 18px;font-size:clamp(60px,13.5vw,260px);font-weight:800;line-height:.9;letter-spacing:-.05em;text-align:center;white-space:nowrap;color:transparent;-webkit-text-stroke:2px #ffffff1c;user-select:none}
.foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 28px;margin-top:8px;padding-top:24px;border-top:1px solid var(--line);font-size:17px;color:var(--text2)}
.foot-bottom a{padding:8px 0}
.foot-bottom a:hover{color:var(--text)}
.sticky-cta{display:none}

/* Entrada al hacer scroll */
.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--out),transform .7s var(--out)}
.js .reveal.in{opacity:1;transform:none}
.bento .card:nth-child(2){transition-delay:.08s}
.bento .card:nth-child(3){transition-delay:.16s}
.bento .card:nth-child(4){transition-delay:.08s}
.bento .card:nth-child(5){transition-delay:.16s}

/* ═══ Fotogramas clave ═══ */
@keyframes float{50%{transform:translateY(-10px)}}
@keyframes kb{from{transform:scale(1) translate(0,0)}to{transform:scale(1.13) translate(-2.5%,-2%)}}
@keyframes pinDrop{0%{opacity:0;transform:translateY(-28px) scale(.4)}12%{opacity:1;transform:none}88%{opacity:1;transform:none}96%,100%{opacity:0;transform:translateY(-10px) scale(.8)}}
@keyframes ripple{0%{opacity:.85;transform:scale(.4)}100%{opacity:0;transform:scale(2.8)}}
@keyframes draw{0%{stroke-dashoffset:1;opacity:1}28%{stroke-dashoffset:0}86%{stroke-dashoffset:0;opacity:1}96%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes lot{0%,2%{opacity:0;transform:scale(.55)}10%{opacity:.9;transform:scale(1)}86%{opacity:.85}96%,100%{opacity:0}}
@keyframes planPin{0%{opacity:0;transform:translateY(-16px) scale(.4)}8%{opacity:1;transform:none}86%{opacity:1}96%,100%{opacity:0}}
@keyframes deckA{0%,38%{transform:translate(0,0) rotate(-5deg) scale(1);z-index:2}48%{transform:translate(78px,-8px) rotate(6deg) scale(.97);z-index:2}58%,88%{transform:translate(28px,-16px) rotate(4deg) scale(.92);z-index:1}100%{transform:translate(0,0) rotate(-5deg) scale(1);z-index:2}}
@keyframes deckB{0%,38%{transform:translate(28px,-16px) rotate(4deg) scale(.92);z-index:1}48%{transform:translate(12px,-8px) rotate(1deg) scale(.95);z-index:1}58%,88%{transform:translate(0,0) rotate(-4deg) scale(1);z-index:2}100%{transform:translate(28px,-16px) rotate(4deg) scale(.92);z-index:1}}
@keyframes stripes{to{transform:translateX(-44px)}}
@keyframes run{0%{opacity:0;transform:translateX(0) scale(.5)}8%{opacity:1;transform:translateX(0) scale(1)}70%,100%{opacity:1;transform:translateX(176px) scale(1)}}
@keyframes goal{0%,62%{opacity:.4;transform:scale(.6)}72%{opacity:1;transform:scale(1.25)}82%,94%{opacity:1;transform:scale(1)}100%{opacity:.4;transform:scale(.6)}}
@keyframes pulse{from{stroke-dashoffset:.22}to{stroke-dashoffset:-1}}
@keyframes nodePulse{0%,100%{transform:scale(1)}14%{transform:scale(1.14)}28%{transform:scale(1)}}
@keyframes bar{0%{transform:scaleX(0);opacity:1}20%,84%{transform:scaleX(1);opacity:1}96%,100%{transform:scaleX(1);opacity:0}}
@keyframes tickPop{0%,6%{transform:scale(1)}12%{transform:scale(1.35)}20%,100%{transform:scale(1)}}
@keyframes drift{from{transform:translateY(0) rotate(var(--r,0deg))}to{transform:translateY(-14px) rotate(calc(var(--r,0deg) + 6deg))}}

@media(max-width:1100px){
  .foot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .foot-brand{grid-column:1/-1}
}
@media(max-width:1000px){
  .bar{gap:14px;padding:6px 6px 6px 18px}
  .bar nav{display:none}
}
@media(max-width:900px){
  .bento{grid-template-columns:minmax(0,1fr);grid-auto-rows:minmax(260px,auto)}
  .card-day,.card-panel,.card-class,.card-race,.card-web{grid-column:1/-1;grid-row:auto}
  .card-day{min-height:420px}
  .act-grid,.signup-grid,.faq-wrap{grid-template-columns:minmax(0,1fr)}
  .drift{display:none}
}
@media(max-width:760px){
  .bar{top:10px;gap:14px;padding:6px 6px 6px 18px}
  .bar nav{display:none}
  .bar-brand{font-size:16px}
  .seq-stage{grid-template-columns:minmax(0,1fr);align-items:start;align-content:end;gap:18px;padding:92px var(--pad) 50px}
  .seq-on .seq{height:580vh;height:580svh}
  .seq-on .seq-img.i0{max-width:none;-webkit-mask-image:linear-gradient(180deg,#000 84%,transparent 100%);mask-image:linear-gradient(180deg,#000 84%,transparent 100%)}
  .seq-on .seq-shade{background:linear-gradient(180deg,#030d1999 0%,#030d1900 24%)}
  .hero-art{order:-1;justify-self:start;width:min(36%,140px)}
  .hero-copy{gap:14px}
  .lede{font-size:22px}
  .hide-m{display:none}
  .show-m{display:block}
  .facts{display:block;font-size:17px;line-height:1.45}
  .facts li{display:inline;padding:0;border:0;background:none;font-size:inherit}
  .facts li:nth-child(2)::before{content:" · ";font-weight:400;color:var(--text2)}
  .seq-on .seq-mark{display:block;position:absolute;left:50%;top:50%;z-index:2;width:calc(124px*var(--ok,1));height:auto;opacity:0;pointer-events:none;filter:drop-shadow(0 0 28px #ff720b66);will-change:transform,opacity}
  .seq-on .say{top:auto;bottom:calc(96px + env(safe-area-inset-bottom))}
  .sf-h{display:none}
  .sf-v{display:block}
  .say-eyebrow{margin-bottom:12px}
  .sec,.enf{padding-block:64px}
  .btn-lg{padding:18px 26px;font-size:20px}
  .cta-row{gap:12px}
  .scroll-cue{display:none}
  .m-hide{display:none}
  .tile{--sz:calc(66px*var(--ok,1))}
  .stk{--sz:calc(54px*var(--ok,1))}
  .say-text{font-size:clamp(34px,10.4vw,48px);font-size:clamp(28px,min(10.4vw,5.3svh),48px);text-wrap:balance}
  .foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .foot-brand{grid-column:1/-1}
  .foot-top .btn{width:100%}
  .sticky-cta{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));z-index:40;display:inline-flex;transform:translate(-50%,160%);box-shadow:0 12px 32px #000a;transition:transform .3s,background .2s}
  .sticky-cta.on{transform:translate(-50%,0)}
  .foot{padding-bottom:110px}
}
@media(max-width:420px){
  .bar .btn-sm{padding:12px 18px}
  .bar .btn-sm span{display:none}
}
@media(max-width:350px){
  .bar-brand b{display:none}
}
@media(max-height:700px) and (max-width:760px){
  .hero-art{display:none}
  h1{font-size:clamp(34px,10vw,42px)}
}
/* Respaldo móvil sin la secuencia (movimiento reducido o sin JavaScript): el mismo master plan completo en una franja sobre el texto.
   No se mide nada: --band reserva el espacio según la altura de la pantalla y la foto se coloca por el centro del plan
   (47.7 % × 69.5 % de la imagen; alto/ancho 1.2495; ancho 110 %: margin-top en % es relativo al ANCHO), como hace app.js en la secuencia */
@media(max-width:760px) and (prefers-reduced-motion:reduce),(max-width:760px) and (scripting:none){
  .seq-stage{--band:clamp(220px,calc(100svh - 560px),330px);padding-top:var(--band)}
  .seq-img.i0{max-width:none;inset:auto;left:-2.47%;top:calc(31px + var(--band)/2);width:110%;height:auto;margin-top:-95.5%;-webkit-mask-image:linear-gradient(180deg,#000 84%,transparent 100%);mask-image:linear-gradient(180deg,#000 84%,transparent 100%)}
  .seq-shade{background:linear-gradient(180deg,#030d1999 0%,#030d1900 24%)}
}
@media(max-width:760px) and (max-height:700px) and (prefers-reduced-motion:reduce),(max-width:760px) and (max-height:700px) and (scripting:none){
  .seq-stage{--band:clamp(150px,calc(100svh - 410px),300px)} /* sin logo: el bloque de texto es más bajo; en pantallas muy bajas el botón sigue siendo lo primero */
}
/* ═══ ESCRITORIO: equilibrio de tamaños y secciones que caben en una vista ═══
   Los tamaños siguen al ancho Y al alto de la ventana (svh), para que en laptops de 640–780 px de alto
   no se corte nada; cada sección corta mide 100svh y sirve de punto de imán del scroll. */
@media(min-width:901px){
  html{scroll-padding-top:0}
  body{font-size:19px}
  h1{font-size:clamp(38px,min(4.7vw,9.4svh),76px)}
  h2{font-size:clamp(36px,min(5vw,8.4svh),76px)}
  h3{font-size:clamp(26px,min(2.6vw,4.8svh),40px)}
  .sec{padding-block:clamp(88px,min(8vw,12svh),130px)}
  /* hero */
  .seq-stage{padding:clamp(84px,11svh,130px) var(--pad) clamp(44px,8svh,96px)}
  .hero-copy{gap:clamp(12px,2.3svh,24px)}
  .lede{font-size:clamp(22px,min(2vw,3.7svh),30px)}
  .facts li{padding:clamp(7px,1.2svh,10px) 16px;font-size:clamp(16px,min(1.3vw,2.5svh),19px)}
  .cta-note{font-size:clamp(16px,1.3vw,19px)}
  .btn-lg{padding:clamp(15px,2.3svh,21px) 34px;font-size:clamp(19px,min(1.5vw,2.9svh),22px)}
  .say-text{font-size:clamp(36px,min(5.4vw,12svh),80px)}
  /* secciones cortas: una por pantalla, centradas, con imán de scroll suave (proximity: nunca atrapa al usuario) */
  .enf,.sec.act,.sec.comp,.sec.signup{min-height:100svh;display:grid;align-content:center;padding-block:clamp(88px,12svh,132px) clamp(22px,3.4svh,72px);scroll-snap-align:start}
  .enf .wrap,.act .wrap,.comp .wrap,.signup .wrap{width:100%}
  html{scroll-snap-type:y proximity}
  .enf .wrap{gap:clamp(18px,3svh,36px)}
  .lede-2{font-size:clamp(21px,min(1.9vw,3.4svh),28px)}
  .tagline{font-size:clamp(21px,min(1.75vw,3.1svh),26px)}
  .cert li{padding:8px 16px;font-size:clamp(16px,1.3vw,19px)}
  /* programa */
  .sec-sub{font-size:clamp(19px,min(1.7vw,3.2svh),25px)}
  .bento{grid-auto-rows:minmax(clamp(250px,36svh,340px),auto)}
  .card p{font-size:clamp(18px,1.35vw,21px)}
  .card-day h3{font-size:clamp(28px,min(3vw,5.4svh),44px)}
  /* activación */
  .act-head h2{font-size:clamp(36px,min(5.4vw,9.4svh),84px)}
  .act-body{gap:clamp(12px,2.2svh,20px)}
  .act-date span{font-size:clamp(64px,min(7.2vw,13svh),112px)}
  .act-copy{font-size:clamp(19px,min(1.6vw,3svh),24px)}
  .track{margin-top:clamp(10px,2.4svh,22px)}
  /* registro */
  .signup-grid{align-items:center;gap:clamp(28px,5vw,90px)}
  .signup-copy{gap:clamp(6px,1.4svh,20px)}
  .signup-copy h2{font-size:clamp(46px,min(7.2vw,9.6svh),112px)}
  .date-line{font-size:clamp(18px,min(1.6vw,3svh),24px)}
  .pill{padding:7px 16px}
  .pitch{font-size:clamp(25px,min(2.6vw,4.7svh),42px)}
  .pitch-copy{font-size:clamp(17px,min(1.5vw,2.9svh),22px)}
  .ticks{gap:clamp(4px,1svh,12px)}
  .ticks li{font-size:clamp(17px,min(1.5vw,2.8svh),21px)}
  .form{gap:clamp(10px,1.8svh,18px);padding:clamp(20px,3.6svh,40px) clamp(24px,3vw,40px)}
  .form h3{font-size:clamp(26px,min(2.6vw,4.8svh),38px)}
  .form-tag{padding:6px 16px;font-size:16px}
  .field{gap:6px}
  .field label{font-size:clamp(16px,min(1.3vw,2.6svh),19px)}
  .field input{padding:clamp(10px,1.8svh,16px) 16px;font-size:clamp(17px,min(1.4vw,2.8svh),20px)}
  /* preguntas y pie */
  .faq h2{font-size:clamp(34px,min(4.2vw,7.6svh),60px)}
  summary{padding:clamp(16px,3svh,26px) 0;font-size:clamp(19px,min(1.7vw,3.2svh),24px)}
  details p{font-size:clamp(18px,min(1.55vw,3svh),22px);padding-bottom:clamp(16px,3svh,26px)}
  .foot-claim{font-size:clamp(44px,6.2vw,92px)}
}
@media(min-width:1100px){
  /* el formulario completo cabe en una vista: los 4 campos en 2 columnas */
  .form{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}
  .form>*{grid-column:1/-1}
  .form>.field{grid-column:auto}
}
@media(min-width:1280px){body{font-size:20px}}

/* ═══ Ajustes del cliente (27-oct) ═══ */
.eyebrow-2{margin-top:-12px;color:#ffb27a}

/* COMPRÉNDELO: fondo de la puerta entreabierta (foto volteada para que la puerta quede entre el titular y las tarjetas);
   velo a la izquierda para el titular y tarjetas de cristal ligero */
.comp{--play:paused;position:relative;isolation:isolate;background:#030d19;border-top:1px solid var(--line)}
.comp::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#030d19cc 0%,#030d1980 30%,#030d1926 60%,#030d1900 100%),url('assets/comprendelo-puerta.webp') left center/cover no-repeat}
.comp.live{--play:running}
.comp-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(32px,6vw,100px)}
.comp-head{display:grid;gap:18px}
.comp-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.comp-list li{display:grid;align-content:space-between;gap:18px;min-height:clamp(150px,24svh,230px);padding:clamp(20px,2.2vw,32px);border:1px solid var(--line);border-radius:var(--r-card);background:#071b2ea6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.comp-list li:nth-child(2){border-color:transparent;background:linear-gradient(135deg,var(--orange),var(--orange2));color:#101110}
.comp-list li:nth-child(4){border-color:#d8b87955;background:linear-gradient(160deg,#2a1308cc,#1b0d05cc)}
.comp-ico{width:clamp(52px,5.4vw,76px);height:clamp(52px,5.4vw,76px);animation:float 6s ease-in-out infinite;animation-play-state:var(--play)}
.comp-list li:nth-child(2) .comp-ico{animation-delay:-1.5s}
.comp-list li:nth-child(3) .comp-ico{animation-delay:-3s}
.comp-list li:nth-child(4) .comp-ico{animation-delay:-4.5s}
.comp-list h3{font-size:clamp(22px,min(2vw,3.8svh),32px);line-height:1.1}
.comp-list small{display:block;margin-top:8px;font-size:.62em;font-weight:600;line-height:1.25;letter-spacing:.02em;color:var(--gold)}

/* tarjetas del día 12: la escena reserva su sitio y nunca tapa el texto */
.card-panel{padding-top:calc(min(300px,100% - 110px)/2 + 46px)}
.card-class{padding-top:176px}
.card-web{padding-top:calc(min(340px,100% - 110px)*.291 + 52px)}
.card-race{padding-top:calc(min(100% - 52px,520px)*.405 + 44px)}

/* maratón: el corredor avanza hacia el reloj, van saliendo billetes y el reloj se convierte en trofeo */
.scn-race{position:absolute;top:18px;left:26px;width:min(calc(100% - 52px),520px);height:auto;overflow:visible}
.rc-runner,.rc-clock,.rc-trophy,.bill,.spk{transform-box:view-box}
.rc-runner{transform-origin:22px 120px}
.rc-clock{transform-origin:364px 110px}
.rc-trophy{transform-origin:366px 104px}
.b1{transform-origin:83px 83px}.b2{transform-origin:143px 65px}.b3{transform-origin:203px 83px}.b4{transform-origin:263px 61px}
.k1{transform-origin:309px 53px}.k2{transform-origin:404px 40px}.k3{transform-origin:416px 104px}
.rc-runner{animation:rcRun 7s linear infinite;animation-play-state:var(--play)}
.rc-clock{animation:rcClock 7s var(--pop) infinite;animation-play-state:var(--play)}
.rc-trophy{opacity:0;animation:rcTrophy 7s var(--pop) infinite;animation-play-state:var(--play)}
.bill{opacity:0;animation:billPop 7s var(--out) infinite;animation-delay:var(--d);animation-play-state:var(--play)}
.b1{--d:.8s;--r:-12deg}.b2{--d:1.6s;--r:9deg}.b3{--d:2.4s;--r:-8deg}.b4{--d:3.2s;--r:12deg}
.spk{opacity:0;animation:spk 7s ease-out infinite;animation-play-state:var(--play)}
.k2{animation-delay:.12s}.k3{animation-delay:.24s}

/* PREGUNTAS FRECUENTES en grupos */
.faq-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(28px,5vw,72px);align-items:start}
.faq-col,.faq-group{display:grid;align-content:start}
.faq-cat{margin:clamp(14px,2.4svh,26px) 0 8px;font-size:15px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;line-height:1.3;color:var(--gold)}
.faq-group:first-child .faq-cat{margin-top:0}
details i{font-style:italic;color:var(--text)}

/* LOGO junto al formulario */
.form-col{position:relative}
.form-logo{position:absolute;z-index:2;top:clamp(-72px,-5.2vw,-40px);right:clamp(-12px,-.6vw,0px);width:clamp(104px,10.5vw,164px);height:auto;transform:rotate(7deg);filter:drop-shadow(0 8px 24px #000a);pointer-events:none}
.d1{display:none}

@keyframes rcRun{0%{transform:translateX(0) scale(.4);opacity:0}4%{opacity:1;transform:translateX(0) scale(1)}55%{transform:translateX(296px) scale(1);opacity:1}60%,100%{transform:translateX(296px) scale(.2);opacity:0}}
@keyframes rcClock{0%,56%{transform:scale(1) rotate(0);opacity:1}62%{transform:scale(.1) rotate(180deg);opacity:0}93%{transform:scale(.1) rotate(180deg);opacity:0}100%{transform:scale(1) rotate(0);opacity:1}}
@keyframes rcTrophy{0%,58%{transform:scale(.1) rotate(-20deg);opacity:0}66%{transform:scale(1.25) rotate(6deg);opacity:1}72%,92%{transform:scale(1) rotate(0);opacity:1}97%,100%{transform:scale(.6) rotate(0);opacity:0}}
@keyframes billPop{0%{transform:translateY(40px) scale(.2) rotate(0);opacity:0}6%{opacity:1;transform:translateY(-8px) scale(1.12) rotate(var(--r))}12%{transform:translateY(-14px) scale(1) rotate(var(--r))}48%{opacity:1;transform:translateY(-34px) scale(1) rotate(calc(var(--r)*1.4))}56%,100%{opacity:0;transform:translateY(-46px) scale(.9) rotate(calc(var(--r)*1.6))}}
@keyframes spk{0%,62%{opacity:0;transform:scale(.2) rotate(0)}68%{opacity:1;transform:scale(1.2) rotate(40deg)}80%{opacity:.9;transform:scale(.7) rotate(90deg)}90%,100%{opacity:0;transform:scale(.2) rotate(120deg)}}

@media(max-width:1100px){
  .form-logo{top:-30px;width:clamp(96px,10vw,112px)}
}
@media(max-width:900px){
  .comp::before{background-image:linear-gradient(180deg,#030d19b3 0%,#030d1966 55%,#030d1933 100%),url('assets/comprendelo-puerta-m.webp');background-position:center,30% center}
  .comp-grid{grid-template-columns:minmax(0,1fr)}
  .faq-groups{grid-template-columns:minmax(0,1fr);gap:clamp(18px,4svh,28px)}
  .faq-group:not(:first-child) .faq-cat{margin-top:clamp(18px,4svh,28px)}
  .form-logo{position:relative;top:auto;right:auto;display:block;width:112px;margin:0 0 -30px auto}
}
@media(max-width:520px){
  .comp-list{grid-template-columns:minmax(0,1fr)}
  .comp-list li{min-height:0;grid-template-columns:auto 1fr;align-items:center}
}

/* Índice de cada elemento en las escenas (la CSP del sitio no permite style="" en el HTML) */
.roads path,.lots rect,.pulse,.track li,.ticks li{--i:0}
.roads path:nth-child(2),.lots rect:nth-child(2),.track li:nth-child(2),.ticks li:nth-child(2),.pulse+.pulse{--i:1}
.roads path:nth-child(3),.lots rect:nth-child(3),.track li:nth-child(3){--i:2}
.roads path:nth-child(4),.lots rect:nth-child(4),.track li:nth-child(4){--i:3}
.lots rect:nth-child(5),.track li:nth-child(5){--i:4}
.lots rect:nth-child(6){--i:5}

/* Formulario real: señuelo anti-spam, errores y estados de envío */
.hp-field{position:absolute;left:-9999px;width:1px;height:0;opacity:0;pointer-events:none}
.field-error-msg{font-size:16px;line-height:1.4;color:#ffb4a2}
.field input[aria-invalid=true]{border-color:#ff8a7a}
.form-status[data-state=error]{color:#ffb4a2}
.btn-loading{display:none}
.is-loading .btn-text,.is-loading .btn-arrow{display:none}
.is-loading .btn-loading{display:inline}
.btn:disabled{cursor:progress;opacity:.75}

/* Páginas internas: gracias y aviso de privacidad */
.legal-page,.thanks{min-height:100svh;padding:90px var(--pad) 80px}
.thanks{display:grid;place-items:center;align-content:center;gap:clamp(8px,2.2svh,24px);text-align:center;padding-block:clamp(28px,4.5svh,72px)}
.thanks h1{margin:0 0 clamp(12px,2.2svh,22px);font-size:clamp(34px,min(5vw,9svh),66px)}
.thanks .eyebrow{margin-bottom:clamp(10px,1.8svh,18px)}
.thanks-film{position:relative;width:min(100%,860px,80svh);aspect-ratio:2/1}
.tv{position:absolute;inset:0;display:none;mix-blend-mode:lighten;-webkit-mask:radial-gradient(ellipse 50% 50% at 50% 50%,#000 70%,transparent 100%);mask:radial-gradient(ellipse 50% 50% at 50% 50%,#000 70%,transparent 100%)}
.tv img,.tv canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.anim .tv img{display:none}
.tv-h{display:block}
@media(max-width:760px){.thanks-film{width:100%;aspect-ratio:auto;height:min(42svh,96vw)}.tv-h{display:none}.tv-v{display:block}.tv-v img{object-position:50% 52%}}
.thanks-copy{max-width:30em;margin:0 auto clamp(18px,3.4svh,34px);font-size:clamp(20px,1.9vw,24px);line-height:1.5;color:var(--text2)}
.legal-page{max-width:880px;margin:0 auto}
.legal-back{display:inline-block;margin-bottom:36px;padding-block:8px;color:var(--gold);font-size:17px}
.legal-page h1{margin:0 0 24px;font-size:clamp(38px,5vw,60px)}
.legal-page h2{margin:40px 0 12px;font-size:clamp(24px,2.4vw,30px);font-weight:600;letter-spacing:-.02em;line-height:1.15}
.legal-page p{font-size:19px;line-height:1.65;color:var(--text2)}
.legal-page p.eyebrow{margin-bottom:22px;font-size:15px;line-height:1.5;color:var(--gold)}
.legal-page p a{color:var(--text);text-decoration:underline;text-underline-offset:3px}
.legal-page p.legal-updated{margin-top:40px;font-size:16px;color:#93a3b5}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .js .reveal{opacity:1;transform:none}
  /* sin animación las escenas quedan en su estado final, no vacías */
  .roads path{stroke-dashoffset:0}
  .lots rect{opacity:.9}
  .plan-pin{opacity:1}
  .bill{opacity:1;transform:translateY(-22px)}
  .rc-runner,.rc-clock{opacity:0}
  .rc-trophy{opacity:1;transform:none}
  .spk{opacity:1}
}
