/* landing.css · Diseño definitivo v78.
   Analogía: manual visual de la landing. No modifica reservas ni el back office.
   Ubicación: front/static/css/landing.css.
   Reglas consolidadas por selector y contexto responsive; prioridades conservadas
   solo donde el prototipo cruza reglas de distinta especificidad. */

/* Base · temas, barra, inicio, momentos, panel y reserva */
/* 1 · Tokens y temas */
:root{--error:#b91c1c;--espectro:linear-gradient(90deg,#e74e0f,#f6a500,#ffcb00,#51ad32,#5bc4f1,#0075be,#b255da);--noche:#ffffff;--noche-2:#f7f8fc;--vidrio:#ffffff;--borde:#e3e6ef;--tinta:#14171f;--texto:#4a5263;--apagado:#6b7385;--palabra:#1C4787;--acento-t:#0076BE;--barra-bg:rgba(255,255,255,.82);--hover:rgba(0,118,190,.08);--sec-bg:#ffffff;--pastilla-bg:#F3F1FA;--pista:#e8ebf3;--linea-g:#c6d0e4;--punto:#e3e8f2;--nodo-fondo:#ffffff;--riel:#e3e8f2;--sombra-tarjeta:0 1px 2px rgba(20,23,31,.04),0 16px 40px -18px rgba(28,71,135,.25);--sombra-marco:0 50px 100px -40px rgba(28,71,135,.45),0 0 0 1px rgba(28,71,135,.08);--form-bg:#ffffff;--input-bg:#f7f8fb;--puntos:rgba(28,71,135,.05);--glow-hero:radial-gradient(closest-side,rgba(0,118,190,.12),rgba(178,85,218,.08) 55%,transparent);--horiz-sombra:0 -1px 0 rgba(0,118,190,.14),0 -30px 80px rgba(0,118,190,.07),0 -80px 160px rgba(178,85,218,.06);--cta-fondo:radial-gradient(800px 400px at 0% 0%,rgba(0,118,190,.10),transparent 60%),radial-gradient(700px 400px at 100% 100%,rgba(178,85,218,.12),transparent 60%),#F3F1FA;--cta-medio-fondo:linear-gradient(120deg,#EEF4F8,#F3F1FA);--cta-medio-borde:#dfe3f0;--seccion-alt:#F7F6FC;--logo-claro:block;--logo-oscuro:none;--azul:#0076BE;--azul-claro:#3aa0f0;--azul-hondo:#1C4787;--violeta:#B255DA;--cian:#22c7e6;--app:#0b1424;--app-2:#111c30;--app-3:#16233b;--app-linea:#1f2b44;--app-texto:#d7dcea;--app-apagado:#7d8aa5;--verde:#3fbf7a;--ambar:#e9a645;--gris:#8a95ab;--lila:#8f6fe0;--salmon:#ec7b6a;--sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"JetBrains Mono",ui-monospace,Consolas,monospace;--salida:cubic-bezier(.23,1,.32,1);--gutter:16px;--t-display:clamp(36px,4.6vw,56px);--t-titulo:clamp(28px,3.2vw,40px);--t-sub:clamp(21px,1.9vw,26px);--t-dest:17px;--t-texto:15px;--t-chico:13px;--t-etq:12px}
:root[data-theme="dark"]{--noche:#050a14;--noche-2:#08101f;--vidrio:rgba(17,28,48,.55);--borde:rgba(120,150,210,.16);--tinta:#f1f4fb;--texto:#b9c2d6;--apagado:#7f8aa3;--palabra:#ffffff;--acento-t:#22c7e6;--barra-bg:rgba(8,16,31,.6);--hover:rgba(255,255,255,.06);--sec-bg:rgba(255,255,255,.04);--pastilla-bg:rgba(255,255,255,.03);--pista:#152036;--linea-g:#2a3d63;--punto:#1d2a45;--nodo-fondo:#0b1424;--riel:rgba(120,150,210,.15);--sombra-tarjeta:none;--sombra-marco:0 70px 140px -50px rgba(0,0,0,.95),0 0 120px -30px rgba(58,160,240,.55);--form-bg:rgba(255,255,255,.03);--input-bg:rgba(5,10,20,.6);--puntos:rgba(255,255,255,.035);--glow-hero:radial-gradient(closest-side,rgba(0,118,190,.35),rgba(178,85,218,.12) 55%,transparent);--horiz-sombra:0 -2px 0 rgba(140,190,255,.55),0 -30px 80px rgba(58,160,240,.45),0 -80px 160px rgba(178,85,218,.25);--cta-fondo:radial-gradient(800px 400px at 0% 0%,rgba(28,71,135,.55),transparent 60%),radial-gradient(700px 400px at 100% 100%,rgba(178,85,218,.25),transparent 60%),#070e1c;--cta-medio-fondo:linear-gradient(120deg,rgba(28,71,135,.55),rgba(17,28,48,.55) 55%,rgba(178,85,218,.22));--cta-medio-borde:rgba(120,160,240,.28);--seccion-alt:transparent;--logo-claro:none;--logo-oscuro:block}
*{box-sizing:border-box;margin:0}
html{background:var(--noche);scroll-padding-top:80px;color-scheme:light dark;overflow-x:clip}
body{background:var(--noche);color:var(--texto);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;font-family:var(--sans);font-size:var(--t-texto);line-height:1.75;font-weight:400;overflow-x:clip}
h1{color:var(--tinta);letter-spacing:-.025em;line-height:1.08}
h2{color:var(--tinta);letter-spacing:-.025em;line-height:1.08}
h3{color:var(--tinta);letter-spacing:-.025em;line-height:1.08}
a{color:inherit}
img{max-width:100%;display:block}
.envoltura{max-width:1200px;margin:0 auto;padding:0 var(--gutter)}
:focus-visible{outline:2px solid var(--cian);outline-offset:3px;border-radius:6px}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.35;background-image:radial-gradient(var(--puntos) 1px,transparent 1px);background-size:3px 3px}
main{position:relative;z-index:1}
header{position:relative;z-index:1}
footer{position:relative;z-index:1}
.marca-palabra{position:relative;background:linear-gradient(90deg,#1C4787,#B255DA);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;white-space:normal}
.marca-palabra::after{position:absolute;left:0;right:0;bottom:-.02em;height:.1em;border-radius:99px;background:linear-gradient(90deg,var(--azul-claro),var(--violeta));transform-origin:left;transform:scaleX(var(--trazo,1));transition:transform 900ms var(--salida) 300ms;box-shadow:0 0 24px rgba(178,85,218,.5);content:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;text-decoration:none;cursor:pointer;transition:transform 160ms var(--salida),background-color 200ms,border-color 200ms,box-shadow 300ms;border-radius:999px!important;padding:14px 26px;font:500 var(--t-texto)/1 var(--sans)!important;letter-spacing:0}
.btn:active{transform:scale(.97)}
.btn-primario{position:relative;isolation:isolate;overflow:visible;background:linear-gradient(100deg,#0076BE 0%,#1a8fe0 35%,#5b6fe0 70%,#8a5bd8 100%)!important;background-size:100% 100%;background-position:0% 0!important;color:#fff;border:0!important;box-shadow:none!important;animation:none!important;transition:filter 250ms,transform 150ms!important}
.btn-secundario{border-color:var(--borde);color:var(--tinta);-webkit-backdrop-filter:none!important;backdrop-filter:none;border-radius:999px!important;background:transparent!important;border:1px solid var(--borde)!important;box-shadow:none}
.btn-chico{padding:10px 18px!important;font-size:14px!important;font:500 var(--t-chico)/1 var(--sans)!important}
.btn svg{width:16px;height:16px;transition:transform 200ms var(--salida)}
.franja{position:fixed;top:0;left:0;right:0;z-index:60;height:3px}
.franja i{display:block;height:100%;transform-origin:left;transform:scaleX(var(--progreso,0));background:linear-gradient(90deg,#E74E0F,#F6A500,#FFCB00,#51AD32,#5BC4F1,#0075BE,#B255DA)}
/* 2 · Barra de navegación */
.barra{position:fixed;left:50%;transform:translateX(-50%);z-index:50;border-color:color-mix(in srgb,var(--borde) 70%,transparent);top:0;width:100%;border-radius:0!important;background:transparent!important;border:0!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none;transition:background-color 400ms,box-shadow 400ms,-webkit-backdrop-filter 400ms,backdrop-filter 400ms,top 450ms var(--salida),opacity 300ms!important}
.barra.pegada{top:0;width:100%;border-radius:0;border-width:0 0 1px;background:color-mix(in srgb,var(--noche) 55%,transparent)!important;-webkit-backdrop-filter:blur(24px) saturate(160%)!important;backdrop-filter:blur(24px) saturate(160%)!important;box-shadow:0 1px 0 color-mix(in srgb,var(--tinta) 9%,transparent),0 8px 30px -18px rgba(0,0,0,.35)!important}
.barra.pegada .barra-int{max-width:1200px;margin:0 auto;padding:0 var(--gutter);height:60px}
.barra-int{display:flex;align-items:center;gap:16px;height:58px;padding:0 8px 0 20px;transition:padding 400ms var(--salida)}
.btn-texto{background:transparent;border-color:transparent;color:var(--tinta);padding:10px 14px;font:600 12.5px var(--sans)!important;font-family:var(--sans)!important;font-size:var(--t-etq)!important;letter-spacing:.12em!important;text-transform:uppercase!important;line-height:1.4!important;font-weight:400!important}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none}
.logo img{height:26px;width:auto}
.logo-osc{display:var(--logo-oscuro)}
.logo-cla{display:var(--logo-claro)}
.logo span{color:var(--apagado);border-left:1px solid var(--borde);padding-left:10px;white-space:nowrap;font:500 var(--t-chico)/1 var(--sans)!important}
.secciones{display:none;gap:2px;margin-left:auto;position:relative}
.secciones a{text-decoration:none;padding:8px 14px;border-radius:999px;transition:color 200ms,background-color 200ms;position:relative;z-index:1;display:inline-flex;align-items:center;gap:6px;color:var(--apagado);font:600 12.5px var(--sans)!important;font-family:var(--sans);font-size:var(--t-etq);letter-spacing:.12em;text-transform:uppercase;line-height:1.4;font-weight:400}
.secciones a[aria-current="true"]{background:none;color:var(--tinta);font-weight:500!important}
.secciones a:hover{background:none;color:var(--tinta)}
.acciones-barra{display:flex;gap:6px;margin-left:auto;align-items:center}
.tema{width:40px;height:40px;border-radius:50%;color:var(--tinta);display:grid;place-items:center;cursor:pointer;transition:transform 160ms var(--salida),border-color 200ms;border:0!important;background:transparent!important;box-shadow:none}
.tema:active{transform:scale(.94)}
.tema svg{width:18px;height:18px;grid-area:1/1;transition:opacity 300ms,transform 400ms var(--salida)}
.tema .luna{opacity:0;transform:rotate(-60deg) scale(.6)}
:root[data-theme="dark"] .tema .sol{opacity:0;transform:rotate(60deg) scale(.6)}
:root[data-theme="dark"] .tema .luna{opacity:1;transform:none}
.acciones-barra .btn-primario{display:none}
/* 3 · Inicio y escena 3D */
.hero{padding:150px 0 0;text-align:center;background:radial-gradient(38% 45% at 12% 28%,rgba(231,78,15,.07),transparent 70%),radial-gradient(34% 42% at 88% 22%,rgba(178,85,218,.10),transparent 70%),radial-gradient(40% 46% at 78% 78%,rgba(91,196,241,.09),transparent 70%),radial-gradient(36% 44% at 22% 80%,rgba(81,173,50,.06),transparent 70%),radial-gradient(30% 36% at 50% 8%,rgba(255,203,0,.06),transparent 70%);-webkit-mask-image:none;mask-image:none;position:relative;background-image:none!important;isolation:isolate;overflow:visible!important;padding-bottom:24px;overflow-x:clip}
#escena3d{position:absolute;inset:0 0 auto 0;height:900px;width:100%;pointer-events:none}
.hero::before{content:"";position:absolute;left:50%;top:-260px;width:1100px;height:700px;transform:translateX(-50%);background:var(--glow-hero);filter:blur(10px);pointer-events:none}
.hero-txt{position:relative}
.pastilla{display:inline-flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;border-radius:999px;border:1px solid var(--borde);background:var(--pastilla-bg);color:var(--texto);backdrop-filter:blur(8px);font-size:var(--t-chico);line-height:1.5}
.pastilla b{font:700 11px var(--sans);color:#062033;background:var(--cian);padding:3px 9px;border-radius:999px;font-size:var(--t-etq);font-weight:500}
.hero h1{max-width:15ch;margin:24px auto 0;font-weight:700;font-size:clamp(38px,5.8vw,74px)!important;line-height:1.05;font:700 var(--t-display)/1.08 var(--sans)!important;letter-spacing:-.025em}
.hero .bajada{font-size:clamp(17px,1.6vw,20px);margin:24px auto 34px;color:var(--texto);max-width:52ch;margin-left:auto;margin-right:auto;line-height:1.65;font:400 var(--t-dest)/1.65 var(--sans)!important}
.cta-fila{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.respaldo{margin-top:26px;color:var(--apagado);display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:center;font-size:var(--t-chico)!important;line-height:1.5!important}
.respaldo b{color:var(--tinta);font-weight:700!important}
.respaldo span+span::before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--apagado);margin-right:16px;vertical-align:middle}
.palabras .p{display:inline-block;opacity:0;filter:blur(10px);transform:translateY(18px);transition:opacity 700ms var(--salida),filter 700ms var(--salida),transform 800ms var(--salida);transition-delay:calc(var(--i) * 60ms)}
.palabras.on .p{opacity:1;filter:none;transform:none}
.entra{opacity:0;transform:translateY(16px);transition:opacity 700ms var(--salida),transform 800ms var(--salida)}
.entra.on{opacity:1;transform:none}
.horizonte{position:relative;height:220px;margin-top:40px;pointer-events:none}
.horizonte::before{content:"";position:absolute;left:50%;top:60px;width:min(1600px,180vw);aspect-ratio:1;transform:translateX(-50%);border-radius:50%;background:var(--noche);box-shadow:var(--horiz-sombra)}
/* 4 · Panel y zoom */
.tour{position:relative;height:calc(7 * 50vh + 100vh);margin-top:-170px;text-align:left}
.tour-fijo{position:sticky;top:0;height:100vh;display:grid;align-content:center;justify-items:center;gap:16px;padding:84px var(--gutter) 20px;perspective:1600px}
.tour-cab{text-align:center;opacity:var(--cab,0);transform:translateY(calc((1 - var(--cab,0)) * 12px));order:0;display:none!important}
.tour-cab small{font:600 13px var(--mono);display:inline-block;background:linear-gradient(90deg,#0076BE,#B255DA);-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent;margin-bottom:6px!important;font-family:var(--sans)!important;font-size:var(--t-etq)!important;letter-spacing:.12em!important;text-transform:uppercase!important;line-height:1.4!important;font-weight:500!important}
.tour-cab h2{font-size:clamp(22px,2.6vw,34px);margin-top:4px;margin-bottom:0;font-weight:700!important;font:700 var(--t-titulo)/1.15 var(--sans)!important;letter-spacing:-.02em!important}
.tour-escena{position:relative;width:min(1400px,100%,calc((100vh - 330px) * 1.99));order:1}
.marco-tour{width:100%;aspect-ratio:1880/945;transform-origin:center top;transform:rotateX(var(--rx,0deg)) scale(var(--sc,1));position:relative;border-radius:18px!important;padding:0!important;overflow:hidden;background:#0b1424!important;border:1px solid color-mix(in srgb,var(--tinta) 14%,transparent)!important;box-shadow:0 30px 70px -40px rgba(0,0,0,.7);animation:none!important}
.vista{position:relative;width:100%;height:100%;border-radius:15px;overflow:hidden;background:#0b1424}
.zoom{position:absolute;left:var(--tx,0%);top:var(--ty,0%);width:calc(var(--s,1) * 100%);height:calc(var(--s,1) * 100%);transition:left 1100ms var(--salida),top 1100ms var(--salida),width 1100ms var(--salida),height 1100ms var(--salida)}
.zoom img{width:100%;height:100%;display:block}
.marco-tour.quieto{transform:none}
.tour-lado{display:contents}
.nota-tour{order:2;width:min(1400px,100%);padding:4px 4px 0;margin-top:16px!important}
.foco{position:absolute;border-radius:10px;opacity:0;pointer-events:none;box-shadow:0 0 0 2px var(--cian),0 0 0 9999px rgba(4,8,16,.3);transition:left 1100ms var(--salida),top 1100ms var(--salida),width 1100ms var(--salida),height 1100ms var(--salida),opacity 500ms}
.foco.on{opacity:1}
.foco::after{content:none}
.etq-real{position:absolute;top:16px;right:16px;color:var(--app-apagado);background:rgba(5,10,20,.85);padding:5px 10px;border-radius:999px;border:1px solid var(--borde);font:500 var(--t-etq)/1 var(--sans)!important}
.nota-tour .txt{display:grid;gap:4px 40px;align-items:start;transition:opacity 350ms,transform 500ms var(--salida),filter 350ms}
.nota-tour .num{font:600 12px var(--mono);font-family:var(--sans)!important;text-transform:uppercase!important;font-size:12px!important;margin-bottom:10px;font-weight:500!important;letter-spacing:.14em!important;background:linear-gradient(90deg,#0076BE,#B255DA);-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent;display:none!important}
.nota-tour h3{font-size:clamp(20px,2vw,26px);margin:0;margin-bottom:0;font-weight:700;line-height:1.15!important;font:700 var(--t-sub)/1.25 var(--sans)!important;letter-spacing:-.015em!important}
.nota-tour p{margin-top:6px!important;max-width:34ch;font-size:var(--t-texto)!important;line-height:1.6;font-weight:400}
.nota-tour .txt.cambia{opacity:0;filter:blur(3px);transform:translateY(14px)}
.pasos-tour{display:flex;gap:6px;margin-top:16px}
.pasos-tour button{flex:1;height:4px;border:0;padding:0;border-radius:99px;background:rgba(120,150,210,.22);cursor:pointer;position:relative;overflow:hidden}
.pasos-tour button::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--azul-claro),var(--cian));transform:scaleX(0);transform-origin:left;transition:transform 500ms var(--salida)}
.pasos-tour button.hecho::after{transform:none}
.pasos-tour button.actual::after{transform:none}
.seccion{padding:120px 0}
.encabezado{max-width:760px}
.encabezado.centro{margin:0 auto;text-align:center}
.encabezado .kicker{font:600 13px var(--mono);display:inline-block;background:linear-gradient(90deg,#0076BE,#B255DA);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;margin-bottom:6px;font-family:var(--sans);font-size:var(--t-etq);letter-spacing:.12em;text-transform:uppercase;line-height:1.4;font-weight:500}
.encabezado h2{margin-top:12px;margin-bottom:0;font-weight:700;font-size:clamp(30px,3.8vw,48px)!important;font:700 var(--t-titulo)/1.15 var(--sans)!important;letter-spacing:-.02em}
.encabezado p{font-size:18px;margin-top:8px!important;line-height:1.6!important;max-width:46ch;font:400 var(--t-dest)/1.65 var(--sans)!important}
.aparece{opacity:0;transform:translateY(26px);filter:blur(6px);transition:opacity 800ms var(--salida),transform 900ms var(--salida),filter 800ms var(--salida)}
.aparece.on{opacity:1;transform:none;filter:none}
/* 5 · Antes y después */
.salto{overflow:hidden;padding:64px 0 40px!important;position:relative;isolation:isolate;padding-bottom:40px;padding-top:72px!important;overflow-x:clip}
.salto-grid{display:grid;align-items:center;gap:72px!important}
.salto-txt .kicker{font:600 13px var(--mono);display:inline-block;background:linear-gradient(90deg,#0076BE,#B255DA);-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent;margin-bottom:6px!important;font-family:var(--sans)!important;font-size:var(--t-etq)!important;letter-spacing:.12em!important;text-transform:uppercase!important;line-height:1.4!important;font-weight:500!important}
.salto-txt h2{margin-top:8px;margin-bottom:0;font-weight:700!important;font-size:clamp(28px,3.2vw,44px)!important;line-height:1.1!important;font:700 var(--t-titulo)/1.15 var(--sans)!important;letter-spacing:-.02em!important}
.salto-txt>p{font-size:16.5px;margin-top:8px!important;line-height:1.6!important;max-width:46ch;font:400 var(--t-dest)/1.65 var(--sans)!important}
.salto-txt .btn{margin-top:24px}
.salto-escena{position:relative;perspective:1600px;--t:0;cursor:default;aspect-ratio:1.55!important}
.salto-escena::before{content:"";position:absolute;inset:10% 0 0 18%;border-radius:50%;background:radial-gradient(closest-side,rgba(34,199,230,.35),rgba(178,85,218,.18) 55%,transparent);filter:blur(30px);opacity:calc(.3 + var(--t) * .7)}
.pant{position:absolute;border-radius:12px;overflow:hidden;background:#0d1626;transition:transform 450ms var(--salida),filter 450ms,box-shadow 450ms}
.pant img{display:block;width:100%;height:auto}
.pant .barra-p{display:flex;align-items:center;gap:7px;height:26px;padding:0 12px;font:600 11px var(--sans)}
.pant-vieja{left:0;top:0;width:66%;box-shadow:0 30px 60px -30px rgba(0,0,0,.8);transform:translate(calc(var(--mx,0) * -10px),calc(var(--my,0) * -8px)) scale(var(--h,1)) translate3d(calc(var(--t) * -4%),calc(var(--t) * -3%),0) rotateY(16deg) rotateZ(-3deg) scale(calc(1 - var(--t) * .06));filter:grayscale(calc(.2 + var(--t) * .5)) brightness(calc(1 - var(--t) * .25))}
.pant-vieja .barra-p{background:linear-gradient(90deg,#0a246a,#3a6ea5);color:#fff;font-family:Tahoma,Verdana,sans-serif}
.pant-vieja .barra-p em{margin-left:auto;font-style:normal;letter-spacing:3px}
.pant-nueva{right:0;bottom:4%;width:78%;z-index:2;box-shadow:0 0 0 1px rgba(140,180,255,.45),0 50px 100px -30px rgba(0,0,0,.85),0 0 80px -20px rgba(34,199,230,.55);transform:translate(calc(var(--mx,0) * 16px),calc(var(--my,0) * 12px)) scale(var(--h,1)) translate3d(calc((1 - var(--t)) * -18%),calc((1 - var(--t)) * 8%),0) rotateY(calc(-14deg + var(--t) * 6deg)) rotateX(calc(var(--t) * 2deg)) scale(calc(.86 + var(--t) * .14));opacity:calc(.25 + var(--t) * .75)}
.pant-nueva .barra-p{background:#0e1829;color:#9fb3d1;font-family:var(--mono);border-bottom:1px solid #1d2a44}
.pant-nueva .barra-p b{width:9px;height:9px;border-radius:50%}
.pant-nueva .barra-p b:nth-child(1){background:#ff5f57}
.pant-nueva .barra-p b:nth-child(2){background:#febc2e}
.pant-nueva .barra-p b:nth-child(3){background:#28c840}
.pant-nueva .barra-p span{margin-left:8px}
.sello-p{position:absolute;z-index:3;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;font:700 13px var(--sans);box-shadow:0 12px 30px -10px rgba(0,0,0,.6);transition:transform 400ms var(--salida),border-color 300ms,opacity 300ms}
.sello-p small{font:600 10px var(--mono);letter-spacing:.1em;text-transform:uppercase;opacity:.75}
.sello-a{left:4%;top:-10%;background:rgba(5,10,20,.85);color:#c9d2df;border:1px solid var(--borde)}
.sello-b{right:2%;bottom:-2%;color:#fff;background:linear-gradient(90deg,var(--azul),var(--violeta));opacity:var(--t)}
.llamada{position:absolute;z-index:4;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:12px;background:rgba(7,14,30,.92);border:1px solid rgba(34,199,230,.45);color:#fff;font:600 12.5px var(--sans);box-shadow:0 14px 34px -12px rgba(0,0,0,.7);opacity:0;transform:translateY(8px);transition:opacity 500ms var(--salida),transform 600ms var(--salida);white-space:nowrap;pointer-events:none}
.llamada::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--cian);box-shadow:0 0 0 4px rgba(34,199,230,.2);flex:none}
.llamada s{text-decoration:line-through;opacity:.55;font-weight:500}
.salto-escena.listo .llamada{opacity:1;transform:none;animation:flota 5s ease-in-out infinite}
.salto-escena.listo .llamada:nth-of-type(2){transition-delay:150ms}
.salto-escena.listo .llamada:nth-of-type(3){transition-delay:300ms}
.ll-1{right:2%;top:45%}
.ll-2{left:20%;top:76%}
.ll-3{left:16%;top:58%}
.bento{display:grid;gap:16px;margin-top:56px}
.celda-b{position:relative;border-radius:22px;padding:28px;background:var(--vidrio);border:1px solid var(--borde);box-shadow:var(--sombra-tarjeta);overflow:hidden;isolation:isolate}
.celda-b::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity 300ms;background:radial-gradient(400px circle at var(--mx,50%) var(--my,50%),rgba(58,160,240,.16),transparent 60%)}
.celda-b:hover::before{opacity:1}
.celda-b h3{font-size:19px;font-weight:700}
.celda-b .sub{font-size:14px;color:var(--apagado);margin-top:4px}
.grande{font:800 clamp(52px,6vw,76px)/1 var(--sans);letter-spacing:-.04em;color:var(--tinta);font-variant-numeric:tabular-nums}
.grande small{font-size:.45em;color:var(--cian);margin-left:2px}
.barra-seg{display:flex;gap:3px;height:14px;border-radius:99px;overflow:hidden;background:var(--pista);margin-top:20px}
.barra-seg i{flex:0 0 0;background:var(--c);transition:flex-grow 1200ms var(--salida)}
.on .barra-seg i{flex-grow:var(--n)}
.leg{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:14px;font-size:13.5px}
.leg span{display:flex;align-items:center;gap:7px}
.leg span::before{content:"";width:9px;height:9px;border-radius:3px;background:var(--c)}
.leg b{color:var(--tinta)}
.esc .leg b{color:#fff}
.anillo{width:150px;height:150px;margin:18px 0 6px}
.anillo circle{fill:none;stroke-width:12}
.anillo .fondo{stroke:var(--pista)}
.anillo .valor{stroke:url(#gr-anillo);stroke-linecap:round;stroke-dasharray:377;stroke-dashoffset:377;transform:rotate(-90deg);transform-origin:center;transition:stroke-dashoffset 1600ms var(--salida)}
.on .anillo .valor{stroke-dashoffset:calc(377 - 377 * .9225)}
.anillo text{fill:var(--tinta);font:800 28px var(--sans);text-anchor:middle}
.regla-ad{display:grid;gap:14px;margin-top:18px}
.regla-ad pre{font:12.5px/1.75 var(--mono);color:#cfd7ea;background:#0a1222;border:1px solid var(--app-linea);border-radius:14px;padding:16px;overflow:auto}
.regla-ad pre .k{color:#7aa2ff}
.regla-ad .flecha{color:var(--acento-t);display:grid;place-items:center}
.regla-ad .flecha svg{width:28px;height:28px}
.regla-ad .regla{font-size:19px;font-weight:600;color:var(--tinta);line-height:1.4;padding:16px;border-radius:14px;border:1px solid rgba(34,199,230,.35);background:rgba(34,199,230,.06)}
.mini-grafo{width:100%;height:150px;margin-top:10px}
.mini-grafo circle{fill:var(--nodo-fondo);transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform 600ms var(--salida)}
.mini-grafo line{stroke:var(--linea-g);stroke-width:1;stroke-dasharray:var(--l);stroke-dashoffset:var(--l);transition:stroke-dashoffset 1200ms var(--salida)}
.on .mini-grafo line{stroke-dashoffset:0}
.on .mini-grafo circle{transform:scale(1)}
/* 6 · Cinco momentos y sus escenas */
.scrolly{position:relative;height:calc(var(--pasos,11) * 40vh + 100vh)}
.recorrido-fijo{position:sticky;top:0;height:100vh;display:grid;gap:24px;padding:88px var(--gutter) 20px;max-width:1280px;margin:0 auto;align-items:center}
.derecha{display:grid;gap:20px;min-height:0}
.marco{width:min(100%,calc((100vh - 300px) * 1.6));aspect-ratio:16/10;display:flex;flex-direction:column;justify-self:center;transition:box-shadow 600ms var(--salida),transform 600ms var(--salida);position:relative;border-radius:18px!important;padding:0!important;overflow:hidden;background:#0b1424!important;border:1px solid color-mix(in srgb,var(--tinta) 14%,transparent)!important;box-shadow:0 30px 70px -40px rgba(0,0,0,.7);animation:none!important}
.marco-barra{display:flex;align-items:center;gap:7px;padding:9px 14px;border-bottom:1px solid var(--app-linea);font:500 12px var(--mono);color:var(--app-apagado);flex:none}
.marco-barra b{width:9px;height:9px;border-radius:50%;background:#2a3249}
.marco-barra span{margin-left:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.marco-barra .tipo{margin-left:auto;border-radius:999px;white-space:nowrap;font:500 var(--t-etq)/1 var(--sans)!important;padding:4px 10px!important}
.tipo.real{background:rgba(63,191,122,.14);color:var(--verde)}
.tipo.rep{background:rgba(143,111,224,.16);color:#b49cf2}
.lienzo-caja{position:relative;flex:1;min-height:0;overflow:hidden}
.lienzo{position:absolute;left:0;top:0;width:960px;height:490px;transform-origin:0 0;font:13px/1.45 var(--sans);color:var(--app-texto)}
.relato{position:relative;min-height:120px;max-width:min(100%,calc((100vh - 300px) * 1.6));width:100%;justify-self:center;display:grid}
.relato article{opacity:0;transform:translateY(10px);filter:blur(4px);pointer-events:none;display:grid;gap:4px;visibility:hidden;transition:opacity 400ms var(--salida),transform 500ms var(--salida),filter 400ms,visibility 0s 400ms!important;position:relative;inset:auto!important;grid-area:1/1}
.relato article.actual{opacity:1;transform:none;filter:none;visibility:visible;transition:opacity 400ms var(--salida),transform 500ms var(--salida),filter 400ms,visibility 0s!important}
.relato h3{font-size:clamp(20px,2.2vw,28px);margin-bottom:0;font-weight:700;line-height:1.15;font:700 var(--t-sub)/1.25 var(--sans)!important;letter-spacing:-.015em!important}
.relato .pregunta{font-weight:600;color:var(--tinta);margin-bottom:4px}
.relato p{font-size:var(--t-texto)!important;line-height:1.6;font-weight:400}
.relato .impacto{font-size:clamp(17px,1.7vw,21px);font-weight:700;color:var(--tinta);line-height:1.35;margin-bottom:6px}
.relato .impacto b{font-weight:800;color:var(--palabra);background:linear-gradient(90deg,var(--azul-claro),var(--violeta)) left bottom/100% 2px no-repeat;padding-bottom:2px}
.marco.clave{box-shadow:0 50px 100px -40px rgba(0,0,0,.6),0 0 0 2px rgba(58,160,240,.55),0 0 80px -10px rgba(58,160,240,.55),0 0 140px -30px rgba(178,85,218,.45)}
.marco.destello{animation:destello 900ms var(--salida)}
.esc{position:absolute;inset:0;padding:22px 34px;opacity:0;visibility:hidden;transition:opacity 350ms var(--salida),visibility 0s 350ms}
.esc.actual{opacity:1;visibility:visible;transition:opacity 350ms var(--salida)}
.esc-tit{display:none!important}
.reset *{transition:none!important}
.esc-tit small{display:block;font:600 11px var(--mono);letter-spacing:.12em;color:var(--cian)}
.esc-tit b{display:block;font-size:26px;font-weight:800;color:#fff;letter-spacing:-.02em;margin-top:2px}
.panel{background:var(--app-2);border:1px solid var(--app-linea);border-radius:12px}
.mono{font-family:var(--mono)}
.chip{display:inline-flex;align-items:center;gap:6px;font:600 11px var(--sans);padding:4px 9px;border-radius:999px;white-space:nowrap}
.chip.amb{background:rgba(233,166,69,.14);color:var(--ambar)}
.chip.ok{background:rgba(63,191,122,.14);color:var(--verde)}
.chip.cian{background:rgba(34,199,230,.14);color:var(--cian)}
.chip.rojo{background:rgba(236,123,106,.15);color:var(--salmon)}
.ap{opacity:0;transform:translateY(10px);transition:opacity 450ms var(--salida),transform 500ms var(--salida)}
.ap.on{opacity:1;transform:none}
.s1-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}
.s1-zona{height:300px;border:1.5px dashed #2a3a5c;border-radius:14px;display:grid;place-items:center;position:relative;overflow:hidden}
.s1-zona::after{content:"Soltá el XML exportado del Form";position:absolute;bottom:18px;font-size:12px;color:var(--app-apagado)}
.s1-arch{width:250px;padding:16px;border-radius:12px;background:var(--app-3);border:1px solid #2c3d63;display:flex;gap:12px;align-items:center;transform:translate(-180px,-140px) rotate(-8deg);opacity:0;transition:transform 900ms var(--salida),opacity 400ms}
.s1-arch.on{transform:none;opacity:1}
.s1-arch i{width:40px;height:48px;border-radius:6px;background:var(--cian);color:#062033;font:800 11px var(--mono);display:grid;place-items:center;font-style:normal;flex:none}
.s1-arch b{color:#fff;display:block}
.s1-arch small{font:11px var(--mono);color:var(--app-apagado)}
.s1-pasos{display:grid;gap:10px}
.s1-paso{display:flex;gap:12px;align-items:center;padding:14px 16px}
.s1-paso .ck{width:24px;height:24px;border-radius:50%;border:2px solid #2c3d63;display:grid;place-items:center;flex:none;transition:background-color 300ms,border-color 300ms}
.s1-paso .ck svg{width:14px;height:14px;stroke:#062033;stroke-width:3;fill:none;stroke-dasharray:20;stroke-dashoffset:20;transition:stroke-dashoffset 400ms 150ms}
.s1-paso.on .ck{background:var(--verde);border-color:var(--verde)}
.s1-paso.on .ck svg{stroke-dashoffset:0}
.s1-paso b{color:#fff;display:block}
.s1-paso small{color:var(--app-apagado);font-size:12px}
.s2-top{display:flex;gap:16px;margin-top:20px}
.s2-kpi{flex:1;padding:16px}
.s2-kpi small{font:600 10px var(--sans);letter-spacing:.1em;color:var(--app-apagado);text-transform:uppercase}
.s2-kpi strong{display:block;font:800 34px/1.1 var(--sans);color:#fff;font-variant-numeric:tabular-nums}
.s2-bloque{margin-top:16px;padding:18px}
.s2-bloque h4{font:700 11px var(--sans);letter-spacing:.08em;color:var(--cian);text-transform:uppercase}
.s2-bloque .barra-seg{height:12px;margin-top:10px;background:#1a2640}
.s2-bloque .leg{font-size:12px;margin-top:10px}
.grafo{position:absolute;left:34px;right:34px;top:96px;bottom:24px}
.grafo svg{width:100%;height:100%;overflow:visible;cursor:default}
.arista{stroke:#2e4166;stroke-width:1.2;fill:none;stroke-dasharray:var(--l,300);stroke-dashoffset:var(--l,300);transition:stroke-dashoffset 900ms var(--salida),opacity 300ms,stroke 300ms}
.arista.on{stroke-dashoffset:0}
.nodo{transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform 500ms var(--salida)}
.nodo.on{transform:scale(1)}
.nodo-tx{font:600 11px var(--sans);fill:#c9d2e6}
.contador-grafo{position:absolute;right:34px;top:34px;display:flex;gap:18px;font-size:12px;color:var(--app-apagado)}
.contador-grafo b{font:800 22px var(--sans);color:#fff;display:block;font-variant-numeric:tabular-nums}
.tabla-db{position:absolute;width:230px;overflow:hidden}
.tabla-db h5{font:700 12px var(--mono);color:#fff;padding:10px 12px;border-bottom:1px solid var(--app-linea);display:flex;justify-content:space-between}
.tabla-db h5 em{font-style:normal;color:var(--app-apagado);font-weight:500}
.tabla-db div{font:11.5px var(--mono);padding:5px 12px;display:flex;justify-content:space-between;color:#aab4ca;border-bottom:1px solid #18233a}
.tabla-db div u{text-decoration:none;font-size:10px;color:var(--ambar)}
.tabla-db div u.pk{color:var(--cian)}
.s6-et{position:absolute;top:116px;font:700 11px var(--sans);padding:5px 11px;border-radius:999px;background:var(--app-3);color:#fff;border:1px solid var(--app-linea)}
.s6-img{position:absolute;border-radius:10px;box-shadow:0 0 0 1px var(--app-linea),0 20px 40px -20px rgba(0,0,0,.8)}
.s6-trazas{position:absolute;inset:0;width:960px;height:560px;pointer-events:none}
.traza path{fill:none;stroke:var(--cian);stroke-width:2;stroke-dasharray:var(--l);stroke-dashoffset:var(--l);filter:drop-shadow(0 0 6px rgba(34,199,230,.8));transition:stroke-dashoffset 900ms var(--salida)}
.traza circle{fill:var(--cian);stroke:#fff;stroke-width:1.5;transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform 400ms var(--salida)}
.traza.on path{stroke-dashoffset:0}
.traza.on circle{transform:scale(1)}
.s6-cifras{position:absolute;left:34px;right:34px;bottom:22px;display:flex;gap:28px;font-size:12px;color:var(--app-apagado)}
.s6-cifras b{display:block;font:800 26px var(--sans);color:#fff;font-variant-numeric:tabular-nums}
.s7-cab{display:flex;justify-content:space-between;align-items:end;margin-top:18px}
.s7-prog{text-align:right;font-size:12px;color:var(--app-apagado)}
.s7-prog strong{font:800 22px var(--sans);color:#fff;font-variant-numeric:tabular-nums}
.s7-prog i{display:block;width:200px;height:6px;border-radius:99px;background:#1a2640;margin-top:6px;overflow:hidden}
.s7-prog i::after{content:"";display:block;height:100%;width:var(--p,0%);background:var(--verde);transition:width 500ms var(--salida)}
.s7-lista{margin-top:12px;overflow:hidden}
.s7-regla{display:grid;grid-template-columns:1.1fr 34px 1fr;gap:10px;align-items:center;padding:14px 16px;margin-top:12px;border-color:rgba(34,199,230,.35)}
.s7-regla pre{font:11.5px/1.65 var(--mono);color:#cfd7ea;margin:0}
.s7-regla .c{color:#6f7f9f}
.s7-regla .kw{color:#7aa2ff}
.s7-flecha{color:var(--cian);font:700 22px var(--sans);text-align:center}
.s7-regla small{font:600 10px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cian)}
.s7-regla p{color:#fff;font-size:15px;font-weight:600;line-height:1.4;margin:4px 0 8px}
.s7-fila{display:grid;grid-template-columns:1fr 150px 150px;gap:12px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--app-linea);transition:background-color 400ms}
.s7-fila b{color:#fff;font-size:13px}
.s7-fila small{display:block;font:11px var(--mono);color:var(--app-apagado)}
.s7-fila .estado{position:relative;height:24px}
.s7-fila .estado .chip{position:absolute;left:0;top:0;transition:opacity 300ms,transform 400ms var(--salida)}
.s7-fila .estado .ok{opacity:0;transform:translateY(8px)}
.s7-fila.cerrada{background:rgba(63,191,122,.06)}
.s7-fila.cerrada .estado .amb{opacity:0;transform:translateY(-8px)}
.s7-fila.cerrada .estado .ok{opacity:1;transform:none}
.quien{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--app-apagado);opacity:0;transition:opacity 300ms}
.quien i{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,var(--azul),var(--violeta));display:grid;place-items:center;color:#fff;font:700 10px var(--sans);font-style:normal}
.s7-fila.cerrada .quien{opacity:1}
.seq{position:absolute;left:34px;right:34px;top:100px;bottom:24px}
.seq svg{width:100%;height:100%}
.vida{stroke:#2a3a5c;stroke-dasharray:4 5}
.actor rect{fill:var(--app-3);stroke:#2c3d63}
.actor text{font:700 12px var(--sans);fill:#fff}
.msj line{stroke:var(--cian);stroke-width:1.6;stroke-dasharray:var(--l);stroke-dashoffset:var(--l);transition:stroke-dashoffset 700ms var(--salida)}
.msj polygon{fill:var(--cian);opacity:0;transition:opacity 200ms 600ms}
.msj text{font:12px var(--sans);fill:#c9d2e6;opacity:0;transition:opacity 300ms 400ms}
.msj .id{font:600 10px var(--mono);fill:var(--app-apagado)}
.msj .tag{font:700 10px var(--mono)}
.msj.on line{stroke-dashoffset:0}
.msj.on polygon{opacity:1}
.msj.on text{opacity:1}
.s9-grid{display:grid;grid-template-columns:250px 1fr;gap:16px;margin-top:18px;height:360px}
.arbol{padding:12px;font:12px/1 var(--mono)}
.arbol div{padding:6px 4px;white-space:nowrap;color:#aab4ca;display:flex;align-items:center;gap:6px}
.arbol div em{font-style:normal;color:var(--app-apagado)}
.arbol .act{background:rgba(34,199,230,.1);border-radius:6px;color:#fff}
.editor{padding:14px 16px;font:12.5px/1.75 var(--mono);color:#cfd7ea;white-space:pre;overflow:hidden}
.editor .c{color:#6f7f9f}
.editor .kw{color:#7aa2ff}
.editor .an{color:var(--ambar)}
.cursor{display:inline-block;width:7px;height:15px;background:var(--cian);vertical-align:-2px;animation:parpadeo 1s steps(1) infinite}
.s9-checks{display:flex;gap:10px;margin-top:14px}
.s9-checks .chip{opacity:.25;transition:opacity 300ms}
.s10-estado .chip{opacity:.25;transition:opacity 300ms}
.s9-checks .chip.on{opacity:1}
.s10-estado .chip.on{opacity:1}
.s10-estado{display:flex;gap:10px;margin-top:18px}
.s10-tabla{margin-top:14px;overflow:hidden}
.s10-fila{display:grid;grid-template-columns:70px 1fr 90px 90px 90px 90px;gap:10px;align-items:center;padding:11px 16px;border-bottom:1px solid var(--app-linea);font-size:12.5px}
.s10-fila.cab{font:700 10px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--app-apagado)}
.met{font:700 11px var(--mono)}
.met.get{color:var(--cian)}
.met.post{color:var(--verde)}
.met.put{color:var(--ambar)}
.met.del{color:var(--salmon)}
.s10-fila .ruta{font:12px var(--mono);color:#fff}
.celda{height:20px;position:relative}
.celda .spin{position:absolute;left:0;top:0;transition:opacity 200ms}
.celda .res{position:absolute;left:0;top:0;transition:opacity 200ms}
.spin{width:16px;height:16px;border-radius:50%;border:2px solid #2a3a5c;border-top-color:var(--cian);animation:gira 700ms linear infinite;opacity:0}
.res{opacity:0;font:700 11px var(--mono);color:var(--verde)}
.celda.corre .spin{opacity:1}
.celda.lista .res{opacity:1}
.s10-final{margin-top:16px;display:flex;align-items:center;gap:14px;padding:14px 18px;opacity:0;transform:translateY(8px);transition:opacity 400ms,transform 500ms var(--salida)}
.s10-final.on{opacity:1;transform:none}
.s10-final strong{font:800 20px var(--sans);color:var(--verde)}
.s11-tabla{margin-top:18px;overflow:hidden}
.s11-fila{display:grid;grid-template-columns:90px 1fr 130px 130px 170px;gap:12px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--app-linea);font-size:13px}
.s11-fila.cab{font:700 10px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--app-apagado)}
.s11-fila b{color:#fff;font-weight:600}
.s11-fila .ok-x{opacity:0;transform:scale(.6);transition:opacity 300ms,transform 400ms var(--salida)}
.s11-fila.on .ok-x{opacity:1;transform:none}
.s11-pie{margin-top:16px;display:flex;gap:10px}
.atajo{display:inline-flex;gap:8px;align-items:center;margin-top:14px;font:600 14px var(--sans);color:var(--acento-t);text-decoration:none}
.atajo:hover{text-decoration:underline}
.cta-flota{position:fixed;right:20px;bottom:20px;z-index:55;opacity:0;transform:translateY(16px) scale(.96);pointer-events:none;transition:opacity 300ms var(--salida),transform 400ms var(--salida)}
.cta-flota.on{opacity:1;transform:none;pointer-events:auto}
.cta-flota .btn{box-shadow:0 0 0 1px rgba(255,255,255,.15) inset,0 18px 40px -10px rgba(0,118,190,.9),0 0 0 6px color-mix(in srgb,var(--noche) 60%,transparent)}
.cta-caja{animation:none!important;padding:1px!important;border-radius:16px!important;box-shadow:none;position:relative;overflow:hidden;background:var(--borde)!important}
/* 7 · Contacto */
.cta{display:grid;gap:40px;padding:64px 24px;border-radius:15px!important;box-shadow:none;background:radial-gradient(600px 220px at 100% 0%,color-mix(in srgb,#B255DA 10%,transparent),transparent 70%),radial-gradient(600px 260px at 0% 100%,color-mix(in srgb,#0076BE 8%,transparent),transparent 70%),#F7F4FF!important}
.cta h2{margin-top:6px;font-size:clamp(28px,2.8vw,40px)!important;line-height:1.1;margin-bottom:0;font-weight:700;font:700 var(--t-titulo)/1.15 var(--sans)!important;letter-spacing:-.02em}
.cta p{font-size:18px;margin-top:16px}
.cta ul{margin-top:24px;padding:0;list-style:none;display:grid;gap:10px}
.cta li{display:flex;gap:10px;align-items:baseline}
.cta li::before{content:"✓";color:var(--verde);font-weight:700}
.form{display:grid;gap:14px;background:var(--form-bg);box-shadow:var(--sombra-tarjeta);border:1px solid var(--borde);border-radius:22px;padding:24px;backdrop-filter:blur(8px);min-width:0}
.form label{display:grid;gap:6px;color:var(--tinta);font-size:var(--t-chico);line-height:1.5;font-weight:500}
.form input{font:16px var(--sans);color:var(--tinta);background:var(--input-bg);border:1px solid var(--borde);border-radius:12px;padding:12px 14px;width:100%;transition:border-color 200ms,box-shadow 200ms;font-size:var(--t-texto);line-height:1.6;font-weight:400}
.form textarea{font:16px var(--sans);color:var(--tinta);background:var(--input-bg);border:1px solid var(--borde);border-radius:12px;padding:12px 14px;width:100%;transition:border-color 200ms,box-shadow 200ms;min-height:110px;resize:vertical;font-size:var(--t-texto);line-height:1.6;font-weight:400}
.form input:focus{outline:none;border-color:var(--cian);box-shadow:0 0 0 4px rgba(34,199,230,.15)}
.form textarea:focus{outline:none;border-color:var(--cian);box-shadow:0 0 0 4px rgba(34,199,230,.15)}
.form .fila2{display:grid;gap:14px}
.form .privacidad{font-size:13px;color:var(--apagado);font-weight:400}
.form .btn{width:100%}
.gracias{display:none;color:var(--texto);font-weight:400;font-size:16px;border-radius:22px;background:var(--form-bg);box-shadow:var(--sombra-tarjeta);border:1px solid var(--borde);text-align:left!important;padding:22px!important}
.form.enviado{display:none}
.form.enviado + .gracias{display:block}
/* 8 · Pie */
.pie{position:relative;overflow:hidden;padding:0 0 40px;border-top:0;margin-top:0;padding-bottom:22px}
.pie .envoltura{gap:24px;display:block;position:relative;z-index:1}
.pie nav{display:flex;flex-wrap:wrap;gap:6px 20px;font-size:14px}
.pie nav a{text-decoration:none;color:var(--apagado)}
.pie small{color:var(--apagado);font-size:13px}
.tour-activo .barra{top:-90px!important;opacity:0;pointer-events:none}
.salto-escena.listo .pant-vieja:hover{--h:1.08;z-index:3;filter:none!important;box-shadow:0 0 0 1px rgba(255,255,255,.25),0 40px 80px -30px rgba(0,0,0,.9)}
.salto-escena.listo .pant-nueva:hover{--h:1.04;box-shadow:0 0 0 1px rgba(91,196,241,.8),0 60px 120px -30px rgba(0,0,0,.9),0 0 120px -10px rgba(34,199,230,.7)}
.salto-escena.listo:has(.pant-vieja:hover) .sello-a{transform:translateY(-4px) scale(1.06);border-color:rgba(255,255,255,.4)}
.salto-escena.listo:has(.pant-nueva:hover) .sello-b{transform:translateY(-4px) scale(1.06)}
.salto-escena.listo:has(.pant-vieja:hover) .llamada{opacity:.15}
.salto-escena.listo .llamada.ll-2{animation-delay:-1.6s}
.salto-escena.listo .llamada.ll-3{animation-delay:-3.2s}
.indicador{position:absolute;left:0;width:0;border-radius:999px;opacity:0;pointer-events:none;background:none!important;border:0!important;height:auto;top:auto;bottom:-3px;transition:transform 400ms var(--salida),width 400ms var(--salida),opacity 300ms!important}
.indicador::after{content:"";position:absolute;margin-left:-8px;left:14px;right:14px;width:auto;margin:0!important;bottom:0;height:1.5px;border-radius:0!important;background:var(--tinta)!important;opacity:.85}
.cont{font:600 11px var(--sans);font-variant-numeric:tabular-nums;color:var(--acento-t);max-width:0;overflow:hidden;opacity:0;transition:max-width 400ms var(--salida),opacity 300ms;display:none!important}
.cont.on{max-width:40px;opacity:1}
.barra.oculta{top:-90px!important;opacity:0;pointer-events:none}
.pie::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--azul-claro),var(--violeta),transparent);opacity:.7}
.pie-cierre{display:grid;gap:24px;align-items:center;padding:64px 0 48px;border-bottom:1px solid var(--borde)}
.pie-frase{font:800 clamp(24px,2.8vw,38px)/1.15 var(--sans);letter-spacing:-.02em;color:var(--tinta);margin:0}
.pie-acciones{display:flex;flex-wrap:wrap;gap:10px}
.pie-cols{display:grid;padding-top:56px;padding:32px 0 24px!important;gap:24px}
.pie-marca p{margin:14px 0 0;color:var(--apagado);margin-top:10px;max-width:340px;font-size:var(--t-texto);line-height:1.6;font-weight:400}
.pie-stack{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.pie-stack span{font:600 12px var(--sans);border-radius:999px;border:1px solid var(--borde);color:var(--texto);padding:4px 9px;font-size:var(--t-chico);line-height:1.5;font-weight:500}
.pie .pie-col{display:grid;align-content:start;justify-content:start;gap:7px}
.pie-col b{font:600 12px var(--sans);color:var(--tinta);margin-bottom:2px;font-family:var(--sans);font-size:var(--t-etq);letter-spacing:.12em;text-transform:uppercase;line-height:1.4;font-weight:500}
.pie-col a{color:var(--apagado);text-decoration:none;width:fit-content;background:linear-gradient(90deg,var(--azul-claro),var(--violeta)) left bottom/0 1px no-repeat;transition:color 200ms,background-size 300ms var(--salida);font-size:var(--t-texto);line-height:1.6;font-weight:400}
.pie-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 20px;border-top:1px solid var(--borde);padding-top:14px}
.pie-base small{color:var(--apagado);font-size:var(--t-chico);line-height:1.5}
.pie-marca-agua{font:800 min(11vw,180px)/1.05 var(--sans);letter-spacing:-.045em;text-align:center;white-space:nowrap;margin:28px 0 -.18em;background:linear-gradient(180deg,color-mix(in srgb,var(--tinta) 16%,transparent) 20%,transparent 95%);-webkit-background-clip:text;background-clip:text;color:transparent;user-select:none;pointer-events:none}
.barra.sobre-oscuro{--barra-bg:rgba(8,16,31,.78);--tinta:#fff;--texto:#c3cde0;--apagado:#a9b4c9;--borde:rgba(255,255,255,.12);--hover:rgba(255,255,255,.08);--sec-bg:rgba(255,255,255,.05);--acento-t:#22c7e6;--logo-oscuro:block;--logo-claro:none;background:rgba(8,14,28,.6)!important}
.barra .logo span{transition:color 300ms,border-color 300ms,background-color 300ms}
.barra .secciones a{transition:color 300ms,border-color 300ms,background-color 300ms}
.barra .btn-texto{transition:color 300ms,border-color 300ms,background-color 300ms}
.barra .tema{transition:color 300ms,border-color 300ms,background-color 300ms}
.btn-primario::before{position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background:radial-gradient(120px 60px at var(--bx,50%) var(--by,50%),rgba(255,255,255,.35),transparent 70%);opacity:0;transition:opacity 300ms;animation:none!important;content:none}
.btn-primario::after{position:absolute;top:0;bottom:0;left:-60%;width:40%;z-index:-1;pointer-events:none;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);animation:none!important;content:none}
.btn-primario:active{transform:scale(.98)!important}
.hero .btn-primario{animation:respira 3.2s ease-in-out infinite}
.cta .btn-primario{animation:respira 3.2s ease-in-out infinite}
.cta-flota .btn-primario{animation:respira 3.2s ease-in-out infinite}
.btn-primario svg{transition:transform 300ms var(--salida)}
.cta .btn-primario[type="submit"]{padding-top:17px;padding-bottom:17px;padding:16px 26px!important;font-size:var(--t-texto)!important}
:root[data-theme="dark"] .barra{box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 36px -18px rgba(0,0,0,.7)}
.barra::before{position:absolute;left:24px;right:24px;bottom:-1px;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,var(--azul-claro),var(--violeta),transparent);opacity:.55;content:none}
.barra.pegada::before{left:10%;right:10%}
#contacto{position:relative;isolation:isolate;padding-top:120px!important;padding-bottom:80px}
.pie .logo img{height:22px}
.cta .siguen{list-style:none;counter-reset:p;margin:26px 0 0;padding:0;gap:16px;display:none}
.cta .siguen li{counter-increment:p;display:grid;grid-template-columns:34px 1fr;gap:4px 12px;align-items:start}
.cta .siguen li::before{content:counter(p);grid-row:1/3;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font:700 14px var(--sans);background:transparent!important;color:var(--azul)!important;border:1.5px solid color-mix(in srgb,var(--azul) 45%,transparent)}
.cta .siguen b{color:var(--tinta);font-size:16px}
.cta .siguen span{font-size:14.5px;color:var(--texto)}
.cta .sin-comp{margin-top:18px;color:var(--apagado);max-width:40ch;font-size:var(--t-chico)}
.gracias-ok{width:58px;height:58px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--verde,#2fb36b),#1a8fe0);animation:ok-pop 600ms var(--salida)}
.gracias-ok svg{width:28px;height:28px}
.gracias h3{font-weight:800;font-size:20px!important;line-height:1.25;font:700 var(--t-sub)/1.25 var(--sans)!important;letter-spacing:-.015em!important}
.gracias p{margin-top:6px;font-size:var(--t-texto)!important;line-height:1.6!important;font-weight:400!important}
.gracias .gracias-nota{font-size:12px;color:var(--apagado);margin-top:14px}
.gracias-cab{display:flex;gap:14px;align-items:flex-start}
.gracias-cab .gracias-ok{flex:none;width:44px;height:44px;margin:0}
.gracias-cab .gracias-ok svg{width:22px;height:22px}
.agenda{margin-top:16px;border-radius:14px;overflow:hidden;border:1px solid var(--borde);background:#fff;height:min(620px,70vh)}
.agenda iframe{width:100%;height:100%;border:0;display:block}
.agenda-alt{font-size:13px;color:var(--apagado);margin-top:10px;text-align:center}
.agenda-alt a{color:var(--acento-t)}
.agenda-vacia{height:100%;display:grid;place-content:center;gap:8px;text-align:center;padding:24px;color:#4b5568;background:repeating-linear-gradient(45deg,#f7f8fb 0 12px,#f1f3f8 12px 24px)}
.agenda-vacia b{color:#0b1730;font-size:16px}
.saltar-rec{position:fixed;right:24px;bottom:24px;z-index:40;display:inline-flex;align-items:center;gap:8px;padding:11px 18px;text-decoration:none;color:var(--tinta);opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity 300ms,transform 400ms var(--salida);border-radius:999px!important;background:rgba(255,255,255,.55)!important;-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%);border:1px solid rgba(28,71,135,.12)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 30px -16px rgba(28,71,135,.35);cursor:pointer;font:500 var(--t-chico)/1 var(--sans)!important}
.saltar-rec svg{width:16px;height:16px}
.saltar-rec.on{opacity:1;transform:none;pointer-events:auto}
.sello-esc{position:absolute;left:50%;bottom:22px;z-index:6;transform:translate(-50%,12px);opacity:0;white-space:nowrap;padding:12px 20px;border-radius:999px;font:600 16px var(--sans);color:#fff;background:linear-gradient(90deg,rgba(0,118,190,.95),rgba(110,90,220,.95));box-shadow:0 18px 40px -14px rgba(0,0,0,.7);transition:opacity 500ms,transform 600ms var(--salida)}
.sello-esc b{font-weight:800}
.sello-esc small{opacity:.7;font-size:12px}
.sello-esc.on{opacity:1;transform:translate(-50%,0)}
.ver-todo{background:none;border:0;padding:0;cursor:pointer;font:inherit;font-weight:600;color:var(--acento-t)}
.valor{margin:14px 0 0;display:grid;gap:14px;margin-top:16px}
.valor div{padding-left:14px;border-left:2px solid var(--borde)}
.valor dt{font:600 11.5px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--apagado)}
.valor dd{margin:3px 0 0;font-size:15.5px;line-height:1.5;color:var(--texto)}
.valor .hoy dd{color:var(--apagado)}
.valor .gana{border-left-color:var(--acento-t);font-size:18px;line-height:1.5;font-weight:600;color:var(--tinta);padding-left:14px;border-left:2px solid var(--acento-t)}
.valor .gana dt{color:var(--acento-t)}
.valor .gana dd{color:var(--tinta);font-weight:600;font-size:16.5px}
.momento-et{font:600 12.5px var(--sans);margin-bottom:10px;display:inline-block;background:linear-gradient(90deg,#0076BE,#B255DA);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-family:var(--sans);font-size:var(--t-etq);letter-spacing:.12em;text-transform:uppercase;line-height:1.4;font-weight:500}
.valor p{margin:0}
.valor .hoy{font-size:16px;line-height:1.55;color:var(--apagado);padding-left:14px;border-left:2px solid var(--borde)}
.mj{position:absolute;inset:0;padding:26px 30px;display:flex;flex-direction:column;gap:16px}
.mj-estado{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;align-self:flex-start;padding:4px;border-radius:999px;background:#0f1a2e;border:1px solid #233150;font:700 13px var(--sans)}
.mj-estado::before{content:"";position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:999px;background:#3a2530;transition:transform 600ms var(--salida),background-color 600ms}
.mj.b .mj-estado::before{transform:translateX(100%);background:linear-gradient(90deg,#0076BE,#6b5be0)}
.mj-estado span{position:relative;padding:7px 18px;text-align:center;color:#8a96ad;transition:color 400ms}
.mj:not(.b) .mj-estado .a{color:#ffb4b4}
.mj.b .mj-estado .b{color:#fff}
.mj-cuerpo{position:relative;flex:1}
.mj-a{transition:opacity 600ms var(--salida),transform 700ms var(--salida)}
.mj-b{transition:opacity 600ms var(--salida),transform 700ms var(--salida);opacity:0;transform:translateY(10px)}
.mj.b .mj-b{opacity:1;transform:none}
.mj.b .mj-a{opacity:0;transform:translateY(-8px);pointer-events:none}
.m1-grilla{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;width:560px}
.m1-grilla .t{height:84px;border-radius:10px;background:#16213a;border:1px solid #26365a;display:grid;place-items:center;font-style:normal;transition:background-color 500ms var(--d),border-color 500ms var(--d),transform 500ms var(--d)}
.m1-grilla .t span{font:700 20px var(--sans);color:#5a6a8a;transition:opacity 300ms var(--d)}
.mj.b .m1-grilla .t span{opacity:0}
.mj.b .m1-grilla .t{transform:scale(.94)}
.mj.b .m1-grilla .ok{background:#1f8f57;border-color:#2fb36b}
.mj.b .m1-grilla .pr{background:#1478b8;border-color:#22a0e6}
.mj.b .m1-grilla .rv{background:#b97a17;border-color:#e9a645}
.mj.b .m1-grilla .om{background:#4a5568;border-color:#6b7385}
.m1 .mj-a{position:absolute;left:600px;top:80px;width:290px;display:grid;gap:6px}
.m1 .mj-a b{font:800 34px var(--sans);color:#fff}
.m1 .mj-a span{font-size:17px;color:#ffb4b4}
.m1-res{position:absolute;left:600px;top:30px;width:300px;display:grid;gap:10px}
.m1-res div{display:flex;align-items:baseline;gap:10px}
.m1-res b{font:800 40px/1 var(--sans)}
.m1-res .v{color:#3fd18a}
.m1-res .a{color:#4cc3ff}
.m1-res .n{color:#f2b544}
.m1-res span{font-size:17px;color:#c3cde0}
.m1-res p{margin-top:6px;font:600 16px var(--sans);color:#fff}
.m2-a{position:absolute;inset:0;display:flex;gap:40px;align-items:center}
.m2-juan{flex:none;width:220px;display:grid;justify-items:center;gap:6px;text-align:center}
.m2-juan span{width:110px;height:110px;border-radius:50%;display:grid;place-items:center;font:800 44px var(--sans);color:#fff;background:#3a2530;border:2px solid #ff8a8a;box-shadow:0 0 40px -8px rgba(255,120,120,.6)}
.m2-juan b{font:800 22px var(--sans);color:#fff}
.m2-juan small{font-size:14px;color:#ffb4b4}
.m2-a ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.m2-a li{padding:14px 18px;border-radius:12px;background:#16213a;border:1px solid #26365a;font:600 16px var(--sans);color:#dfe6f3}
.m2-a li em{display:block;font-style:normal;font-weight:500;font-size:13.5px;color:#ff9c9c;margin-top:3px}
.m2-b{position:absolute;inset:0;display:flex;flex-direction:column}
.m2-mapa{width:100%;cursor:default;flex:1;height:auto;min-height:0}
.m2-mapa line{stroke:#3a6ec0;stroke-width:2;stroke-dasharray:400;stroke-dashoffset:400;transition:stroke-dashoffset 900ms var(--d)}
.mj.b .m2-mapa line{stroke-dashoffset:0}
.m2-mapa circle{transform-box:fill-box;transform-origin:center;transform:scale(0);transition:transform 500ms var(--d)}
.mj.b .m2-mapa circle{transform:scale(1)}
.m2-mapa .c0{fill:#22c7e6}
.m2-mapa .c1{fill:#8f6fe0}
.m2-mapa .c2{fill:#3fd18a}
.m2-mapa .c3{fill:#e9a645}
.m2-pie{display:flex;align-items:center;gap:10px;margin-top:4px}
.m2-pie b{font:800 20px var(--sans);color:#fff}
.m2-pie span{font-size:15px;color:#c3cde0;margin-right:auto;margin-left:6px}
.m2-pie i{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font:700 13px var(--sans);font-style:normal;color:#fff;background:linear-gradient(135deg,#0076BE,#6b5be0);margin-left:-8px;border:2px solid #0b1424}
.m3{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center}
.m3-codigo{margin:0;padding:18px;border-radius:12px;background:#0b1220;border:1px solid #26365a;font:500 13.5px/1.7 var(--mono);color:#7d8aa5;white-space:pre;transition:opacity 600ms,filter 600ms}
.mj.b .m3-codigo{opacity:.55;filter:none}
.m3-duda{position:absolute;left:0;bottom:0;font:700 18px var(--sans);color:#ffb4b4}
.m3-regla{padding:22px;border-radius:14px;background:#14213a;border:1px solid #2f4a7a;box-shadow:0 20px 50px -20px rgba(0,0,0,.7)}
.m3-regla small{font:700 11.5px var(--sans);color:#4cc3ff;font-family:var(--sans);font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.m3-regla p{margin:8px 0 0;font:700 22px/1.35 var(--sans);color:#fff}
.m3-chips{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}
.m3-chips span{padding:7px 12px!important;border-radius:999px!important;font:600 13px var(--sans)!important;margin:0!important}
.m3-chips .ia{background:#24304d;color:#c3cde0}
.m3-chips .ok{background:#1f8f57;color:#fff;opacity:0;transform:scale(.8);transition:opacity 400ms 900ms,transform 500ms 900ms var(--salida)}
.mj.b .m3-chips .ok{opacity:1;transform:none}
.m4-fila{position:absolute;left:0;right:0;top:40px;display:grid;grid-template-columns:1fr 60px 1fr;align-items:center;gap:10px}
.m4-card{padding:16px 18px;border-radius:12px;background:#0f1a2e;border:1px solid #26365a;display:grid;gap:6px}
.m4-card small{font:700 12px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:#8a96ad;margin-bottom:4px}
.m4-card code{font:500 14px/1.5 var(--mono);color:#c3cde0;white-space:pre}
.m4-card code.dif{background:rgba(255,90,90,.16);color:#ffb4b4;border-radius:4px}
.m4-op{font:800 44px var(--sans);text-align:center}
.m4-op.neq{color:#ff7a7a}
.m4-op.eq{color:#3fd18a}
.m4-badges{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:10px}
.m4-badges span{padding:9px 16px;border-radius:999px;font:700 15px var(--sans);color:#fff;background:#1f8f57}
.m5{display:grid;gap:8px;align-content:start}
.m5-cab{display:grid;grid-template-columns:1fr 290px 1fr;gap:12px;align-items:center}
.m5-fila{display:grid;grid-template-columns:1fr 290px 1fr;gap:12px;align-items:center}
.m5-cab b{font:700 13px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:#8a96ad}
.m5-cab b:last-child{text-align:right}
.m5-fila>span{padding:10px 14px;border-radius:10px;font:500 14px var(--mono);color:#dfe6f3}
.m5-fila .o{background:#0f1a2e;border:1px solid #26365a;grid-column:1;grid-row:1}
.m5-fila .n{background:#0f1a2e;border:1px solid #26365a;text-align:right;grid-column:3;grid-row:1}
.m5-fila i{font-style:normal;font-weight:700;color:#4cc3ff;margin-right:8px}
.m5-fila .q{grid-column:2;grid-row:1;text-align:center;font:800 18px var(--sans);color:#ffb4b4;transition:opacity 300ms var(--d)}
.m5-fila .ck{grid-column:2;grid-row:1;text-align:center;font:700 13.5px var(--sans);color:#fff;background:#1f8f57;opacity:0;transform:scale(.9);transition:opacity 400ms var(--d),transform 500ms var(--d) var(--salida)}
.mj.b .m5-fila .q{opacity:0}
.mj.b .m5-fila .ck{opacity:1;transform:none}
.m5-duda{font:700 18px var(--sans);color:#ffb4b4;text-align:center;margin-top:8px}
.m5-res{position:absolute;left:0;right:0;bottom:0;text-align:center;font:600 18px var(--sans);color:#fff;transition-delay:1800ms}
.m5-res b{font:800 26px var(--sans);color:#3fd18a}
.m5-res small{font-size:12px;color:#8a96ad;margin-left:6px}
.vista-app{display:none;position:absolute;inset:0;padding:22px 34px}
.scrolly[data-vista="app"] .vista-app{display:block}
.scrolly[data-vista="app"] .vista-mejora{display:none}
.vista-mejora{position:absolute;inset:0}
.vista-sel{display:inline-flex;margin-top:18px;padding:3px;border-radius:10px;background:rgba(255,255,255,.55)!important;-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%);border:1px solid rgba(28,71,135,.12)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 30px -16px rgba(28,71,135,.35)}
.vista-sel button{border:0;background:none;cursor:pointer;padding:8px 16px;border-radius:8px;font:600 13.5px var(--sans);color:var(--apagado);transition:background-color 200ms,color 200ms;font-family:var(--sans);line-height:1.4;text-transform:none;letter-spacing:0;font-weight:500;font-size:var(--t-chico)}
.vista-sel button[aria-pressed="true"]{background:var(--noche);color:var(--tinta);box-shadow:0 1px 3px rgba(0,0,0,.18),0 0 0 1px var(--borde)}
.btn-secundario:active{transform:scale(.98)!important}
.btn:focus-visible{outline:2px solid var(--acento-t);outline-offset:2px}
.sello-esc.kpis{left:24px;right:24px;bottom:18px;transform:translateY(14px);white-space:normal;display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:0;border-radius:14px;background:rgba(7,13,26,.94);border:1px solid #26365a;box-shadow:0 20px 50px -20px rgba(0,0,0,.8)}
.sello-esc.kpis.on{transform:none}
.kpi{padding:14px 18px;display:grid;gap:2px;border-left:1px solid #1f2c47}
.kpi:first-child{border-left:0}
.kpi b{font:800 34px/1 var(--sans);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.kpi span{font:500 13px var(--sans);color:#a9b4c9}
.kpi.v b{color:#3fd18a}
.kpi.n b{color:#f2b544}
.kpi.a b{color:#4cc3ff}
.sello-esc.kpis em{position:absolute;right:12px;top:-22px;font:500 11px var(--sans);font-style:normal;color:#8a96ad}
.m4-badges.kpis-in{left:60px;right:60px;bottom:6px;display:grid;grid-template-columns:repeat(3,1fr);border-radius:14px;background:#0a1222;border:1px solid #26365a;gap:0}
.m4-badges.kpis-in span{background:none;padding:0;border-radius:0;font:500 13px var(--sans);color:#a9b4c9}
.barra::after{content:none}
.barra .barra-int{max-width:1200px;margin:0 auto;padding:0 var(--gutter);height:68px}
:root[data-theme="dark"] .cta{background:radial-gradient(600px 220px at 100% 0%,rgba(178,85,218,.14),transparent 70%),radial-gradient(600px 260px at 0% 100%,rgba(0,118,190,.14),transparent 70%),#0b1220!important}
.salto-escena .sello-p{display:none}
.salto-escena .llamada{display:none}
.salto-leyenda{grid-column:2;display:flex;gap:24px;justify-content:center;margin:18px 0 0;font:500 13.5px var(--sans);color:var(--apagado)}
.salto-leyenda span{display:inline-flex;align-items:center;gap:8px}
.salto-leyenda i{width:10px;height:10px;border-radius:2px}
.salto-leyenda .a{background:#8f98a6}
.salto-leyenda .b{background:var(--azul)}
.m2-mapa .nodo{transform:scale(0)}
.m2-mapa .nodo.on{transform:scale(1)}
.vista-app .contador-grafo{display:none}
.vista-app .grafo{top:24px;bottom:110px}
.mj-estado button{position:relative;border:0;background:none;cursor:pointer;padding:7px 18px;text-align:center;color:#8a96ad;font:700 13px var(--sans);transition:color 400ms;font-family:var(--sans);font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.mj-estado button:focus-visible{outline:2px solid #4cc3ff;outline-offset:2px;border-radius:999px}
.mj-pista{position:absolute;left:430px;top:36px;font:500 13px var(--sans);color:#8a96ad;transition:opacity 300ms;animation:pista 2.4s ease-in-out infinite;display:none!important}
.mj.tocado .mj-pista{opacity:0;animation:none}
.mj.b .mj-pista{opacity:0;animation:none}
.mj:not(.tocado):not(.b) .mj-estado .b{border-radius:999px;animation:none!important}
.grafo-cab{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:6px}
.grafo-leyenda{display:flex;gap:14px;flex-wrap:wrap;font:500 12px var(--sans);color:#a9b4c9}
.grafo-leyenda span{display:inline-flex;align-items:center;gap:6px}
.grafo-leyenda i{width:10px;height:10px;border-radius:50%;border:2px solid;background:#111c30}
.grafo-info{margin:0;font:500 12.5px var(--sans);color:#8a96ad;text-align:right;font-size:var(--t-chico);line-height:1.5}
.grafo-info b{font-weight:700}
.pieza{cursor:pointer;outline:none}
.pieza-tx{font:600 11px var(--sans);fill:#a9b4c9;pointer-events:none;transition:opacity 300ms,fill 300ms}
.pieza .nodo{transition:transform 500ms var(--salida),stroke-width 200ms}
.pieza:hover .nodo{stroke-width:4}
.pieza:focus .nodo{stroke-width:4}
.pieza.activa .nodo{stroke-width:4}
svg.enfoque .pieza:not(.activa){opacity:.25}
svg.enfoque .arista:not(.activa){opacity:.12}
svg.enfoque .arista.activa{stroke:#4cc3ff;stroke-width:2}
.pieza.activa .pieza-tx{fill:#fff}
.vista-app .grafo svg{height:calc(100% - 26px)}
.mj-info{position:absolute;right:30px;top:30px;max-width:470px;margin:0;text-align:right;font:500 13.5px/1.4 var(--sans);color:#8a96ad}
.mj-info b{color:#fff}
.mj [data-k]{cursor:pointer;transition:opacity 250ms,filter 250ms,box-shadow 250ms,transform 250ms,background-color 250ms}
.mj.con-foco [data-k]:not(.resalta){opacity:.35}
.mj .m1-grilla .t.resalta{transform:scale(1.06);box-shadow:0 0 0 2px #fff}
.m3-codigo span{display:inline-block;border-radius:4px;padding:0 4px;margin:0 -4px}
.m3-codigo span.resalta{background:rgba(76,195,255,.18);color:#fff}
.m3-regla span.resalta{background:rgba(76,195,255,.18);color:#fff}
.mj.b.con-foco .m3-codigo{opacity:1}
.m3-regla p span{border-radius:4px;padding:0 2px}
.m4-card code.resalta{background:rgba(76,195,255,.16)}
.m4-card code.dif.resalta{background:rgba(255,90,90,.28)}
.m5-fila.resalta>span{box-shadow:0 0 0 1px #4cc3ff}
.mj-ver{position:absolute;right:30px;bottom:22px;z-index:7;display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border:0;cursor:pointer;color:#fff;transition:opacity 300ms,transform 300ms var(--salida),background-color 200ms;border-radius:999px!important;box-shadow:none;background:linear-gradient(100deg,#0076BE 0%,#1a8fe0 35%,#5b6fe0 70%,#8a5bd8 100%)!important;font:500 var(--t-chico)/1 var(--sans)!important}
.mj-ver svg{width:15px;height:15px;transition:transform 200ms}
.mj.b .mj-ver{opacity:0;transform:translateY(8px);pointer-events:none}
.relato .momento-et{display:inline-block;background:linear-gradient(90deg,#0076BE,#B255DA);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;margin-bottom:6px;font-family:var(--sans);font-size:var(--t-etq);letter-spacing:.12em;text-transform:uppercase;line-height:1.4;font-weight:500}
.contraste{display:grid;margin-top:14px;gap:10px!important;max-width:400px}
.contraste p{margin:0;display:grid;gap:10px;align-items:start;grid-template-columns:28px 1fr;border-radius:14px!important;font-weight:400;background:rgba(255,255,255,.55)!important;-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%);border:1px solid rgba(28,71,135,.12)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 30px -16px rgba(28,71,135,.35);padding:14px 18px!important;font-size:var(--t-texto);line-height:1.6}
.contraste i{display:grid;place-items:center;font-style:normal;font-weight:800;width:28px;height:28px;border-radius:8px!important;font-size:var(--t-chico)}
.contraste small{display:block;font:700 11px var(--sans);margin-bottom:2px;font-family:var(--sans);font-size:var(--t-etq);letter-spacing:.12em;text-transform:uppercase;line-height:1.4;font-weight:500}
.c-hoy{background:color-mix(in srgb,#E74E0F 6%,transparent);color:var(--apagado)!important}
.c-hoy i{background:color-mix(in srgb,var(--tinta) 7%,transparent)!important;color:var(--apagado)}
.c-hoy small{color:var(--apagado)}
.c-fa{font-weight:600;position:relative;color:var(--tinta)!important;border-color:transparent!important;background:linear-gradient(var(--noche),var(--noche)) padding-box,linear-gradient(100deg,#0076BE,#8a5bd8) border-box!important;border:1px solid transparent!important}
.c-fa i{background:color-mix(in srgb,var(--azul) 12%,transparent)!important;color:var(--azul)}
.c-fa small{background:linear-gradient(90deg,#0076BE,#8a5bd8);-webkit-background-clip:text;background-clip:text;color:transparent}
.cifra{display:flex;align-items:baseline;gap:12px;margin:18px 0 0;padding-top:16px;border-top:1px solid var(--borde)}
.cifra b{font:800 44px/1 var(--sans);letter-spacing:-.03em;color:var(--tinta)}
.cifra span{font-size:14.5px;color:var(--apagado);line-height:1.35}
.cifra em{font-style:normal;font-size:12px}
.relato .valor{display:none}
.kicker{display:inline-block;background:linear-gradient(90deg,#0076BE,#B255DA);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-family:var(--sans);font-size:var(--t-etq);letter-spacing:.12em;text-transform:uppercase;line-height:1.4;font-weight:500}
.kicker::before{content:none}
.kicker::after{content:none}
.tour-cab small::before{content:none!important}
.tour-cab small::after{content:none!important}
:root[data-theme="dark"] .marca-palabra{background-image:linear-gradient(90deg,#5b8fe8,#c27fe6)}
.c-fa span{font-weight:600}
:root[data-theme="dark"] .contraste p{--noche:#0b1220}
:root[data-theme="dark"] .c-fa{--noche:#0b1220}
.cta-caja::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;z-index:2;background:linear-gradient(90deg,#E74E0F,#F6A500,#FFCB00,#51AD32,#5BC4F1,#0075BE,#B255DA)}
.flujo-demo{list-style:none;counter-reset:f;margin:26px 0 0;padding:0;display:grid;gap:0;margin-top:18px!important}
.flujo-demo li{counter-increment:f;position:relative;display:grid;column-gap:14px;padding:0 0 18px;padding-bottom:12px!important;grid-template-columns:30px 1fr auto!important}
.flujo-demo li::before{content:counter(f);border-radius:50%;display:grid;place-items:center;font:700 14px var(--sans);color:#fff;background:linear-gradient(135deg,#0076BE,#8a5bd8);position:relative;z-index:1;width:30px!important;height:30px!important;font-size:13px!important;grid-row:1!important}
.flujo-demo li:not(:last-child)::after{content:"";position:absolute;bottom:0;width:2px;background:color-mix(in srgb,var(--azul) 22%,transparent);left:14px!important;top:30px!important}
.flujo-demo b{color:var(--tinta);font-size:15px!important;padding-top:5px!important}
.flujo-demo span{grid-column:2;font-size:14.5px;color:var(--texto);display:none}
.flujo-demo em{grid-column:3;grid-row:1;font:600 11.5px var(--sans);letter-spacing:.06em;text-transform:uppercase;font-style:normal;color:var(--acento-t);white-space:nowrap;padding-top:7px!important}
.form .paso-form{margin:4px 0 0!important;text-align:center;font-size:12.5px!important;color:var(--apagado)}
.cta>div>p:not(.sin-comp){font-size:15.5px!important;margin-top:10px!important;font:400 var(--t-dest)/1.65 var(--sans)!important}
.cta .form{padding:24px!important;gap:14px!important;background:rgba(255,255,255,.55)!important;-webkit-backdrop-filter:blur(16px) saturate(150%);backdrop-filter:blur(16px) saturate(150%);border:1px solid rgba(28,71,135,.12)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 30px -16px rgba(28,71,135,.35)}
.cta .form textarea{min-height:84px;height:84px}
.cta .form label{font-size:13px}
.cta .privacidad{margin-top:0;font-size:12px!important}
.flujo-min{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:14px}
.flujo-min li{display:flex;align-items:center;gap:12px;font:600 15.5px var(--sans);color:var(--tinta);font-size:var(--t-texto);line-height:1.6;font-weight:400}
.flujo-min li::before{content:none}
.flujo-min b{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;color:var(--azul);border:1.5px solid color-mix(in srgb,var(--azul) 40%,transparent);font-weight:600!important;font:500 var(--t-etq)/1 var(--sans)!important}
.derecha .marco{position:relative;border-radius:18px!important;padding:0!important;overflow:hidden;background:#0b1424!important;border:1px solid color-mix(in srgb,var(--tinta) 14%,transparent)!important;box-shadow:0 30px 70px -40px rgba(0,0,0,.7);animation:none!important}
.derecha .marco.clave{position:relative;border-radius:18px!important;padding:0!important;overflow:hidden;background:#0b1424!important;border:1px solid color-mix(in srgb,var(--tinta) 14%,transparent)!important;box-shadow:0 30px 70px -40px rgba(0,0,0,.7)!important;animation:none!important}
.marco-tour::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;z-index:8;pointer-events:none;background:linear-gradient(90deg,#E74E0F,#F6A500,#FFCB00,#51AD32,#5BC4F1,#0075BE,#B255DA);opacity:.85}
.derecha .marco::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;z-index:8;pointer-events:none;background:linear-gradient(90deg,#E74E0F,#F6A500,#FFCB00,#51AD32,#5BC4F1,#0075BE,#B255DA);opacity:.85}
.marco-tour .vista{border-radius:0!important}
.derecha .marco.destello{animation:none!important}
:root[data-theme="dark"] .hero{background:radial-gradient(38% 45% at 12% 28%,rgba(231,78,15,.12),transparent 70%),radial-gradient(34% 42% at 88% 22%,rgba(178,85,218,.16),transparent 70%),radial-gradient(40% 46% at 78% 78%,rgba(0,117,190,.18),transparent 70%),radial-gradient(36% 44% at 22% 80%,rgba(81,173,50,.09),transparent 70%),radial-gradient(30% 36% at 50% 8%,rgba(246,165,0,.08),transparent 70%)}
#recorrido .envoltura{padding-top:120px!important}
#recorrido .encabezado{margin-bottom:0;padding-bottom:8px}
#recorrido .encabezado p{margin-top:10px}
:root[data-theme="dark"] :is(.kicker,.tour-cab small,.momento-et,.nota-tour .num){background-image:linear-gradient(90deg,#4cb0f0,#c27fe6)}
.control{position:relative;isolation:isolate;padding-top:120px!important;overflow-x:clip}
.control .tour{margin-top:-170px}
.salto-txt .contraste{max-width:440px;margin-top:0!important}
#recorrido{position:relative;isolation:isolate;overflow-x:clip}
.salto::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(28% 30% at 14% 30%,rgba(0,118,190,.10),transparent 70%),radial-gradient(26% 28% at 86% 60%,rgba(178,85,218,.10),transparent 70%),radial-gradient(22% 24% at 60% 12%,rgba(91,196,241,.08),transparent 70%);-webkit-mask-image:linear-gradient(transparent,#000 20%,#000 80%,transparent);mask-image:linear-gradient(transparent,#000 20%,#000 80%,transparent);display:none}
#recorrido::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(28% 30% at 14% 30%,rgba(0,118,190,.10),transparent 70%),radial-gradient(26% 28% at 86% 60%,rgba(178,85,218,.10),transparent 70%),radial-gradient(22% 24% at 60% 12%,rgba(91,196,241,.08),transparent 70%);-webkit-mask-image:linear-gradient(transparent,#000 20%,#000 80%,transparent);mask-image:linear-gradient(transparent,#000 20%,#000 80%,transparent);display:none}
.control::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(28% 30% at 14% 30%,rgba(0,118,190,.10),transparent 70%),radial-gradient(26% 28% at 86% 60%,rgba(178,85,218,.10),transparent 70%),radial-gradient(22% 24% at 60% 12%,rgba(91,196,241,.08),transparent 70%);-webkit-mask-image:linear-gradient(transparent,#000 20%,#000 80%,transparent);mask-image:linear-gradient(transparent,#000 20%,#000 80%,transparent);display:none}
.contraste .c-fa{border:1px solid transparent!important;background:linear-gradient(rgba(252,251,255,.94),rgba(252,251,255,.94)) padding-box,linear-gradient(100deg,#0076BE,#8a5bd8) border-box!important}
:root[data-theme="dark"] :is(.contraste p,.cta .form,.vista-sel,.saltar-rec){background:rgba(255,255,255,.045)!important;border-color:rgba(255,255,255,.1)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 30px -16px rgba(0,0,0,.7)!important}
:root[data-theme="dark"] .contraste .c-fa{background:linear-gradient(#0f1729,#0f1729) padding-box,linear-gradient(100deg,#0076BE,#8a5bd8) border-box!important}
.control .horizonte{margin-top:8px}
:root:not([data-theme="dark"]) .control .horizonte::before{box-shadow:0 -2px 0 rgba(0,118,190,.30),0 -30px 80px rgba(0,118,190,.14),0 -80px 160px rgba(178,85,218,.12)}
.hero::after{content:"";position:absolute;left:0;right:0;top:0;bottom:-240px;z-index:-1;pointer-events:none;background:radial-gradient(38% 45% at 12% 28%,rgba(231,78,15,.07),transparent 70%),radial-gradient(34% 42% at 88% 22%,rgba(178,85,218,.10),transparent 70%),radial-gradient(40% 46% at 78% 78%,rgba(91,196,241,.09),transparent 70%),radial-gradient(36% 44% at 22% 80%,rgba(81,173,50,.06),transparent 70%),radial-gradient(30% 36% at 50% 8%,rgba(255,203,0,.06),transparent 70%);-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}
:root[data-theme="dark"] .hero::after{background:radial-gradient(38% 45% at 12% 28%,rgba(231,78,15,.12),transparent 70%),radial-gradient(34% 42% at 88% 22%,rgba(178,85,218,.16),transparent 70%),radial-gradient(40% 46% at 78% 78%,rgba(0,117,190,.18),transparent 70%),radial-gradient(36% 44% at 22% 80%,rgba(81,173,50,.09),transparent 70%),radial-gradient(30% 36% at 50% 8%,rgba(246,165,0,.08),transparent 70%)}
.contraste .c-fa span{font-weight:500!important}
.encabezado.centro p{margin-left:auto;margin-right:auto}
.cta>div>p{max-width:40ch}
.salto .horizonte{margin-top:8px}
#recorrido .horizonte{margin-top:8px}
.salto .salto-grid{position:relative;z-index:1;align-items:center;margin-top:56px}
#recorrido .scrolly{position:relative;z-index:1;margin-top:24px}
:root:not([data-theme="dark"]) :is(.salto,#recorrido,.control) .horizonte::before{box-shadow:0 -2px 0 rgba(0,118,190,.30),0 -30px 80px rgba(0,118,190,.14),0 -80px 160px rgba(178,85,218,.12)}
.salto-txt{padding-top:24px}
:root:not([data-theme="dark"]) .hero::after{background:radial-gradient(38% 45% at 12% 28%,rgba(231,78,15,.13),transparent 70%),radial-gradient(34% 42% at 88% 22%,rgba(178,85,218,.18),transparent 70%),radial-gradient(40% 46% at 78% 78%,rgba(0,117,190,.16),transparent 70%),radial-gradient(36% 44% at 22% 80%,rgba(81,173,50,.11),transparent 70%),radial-gradient(30% 36% at 50% 8%,rgba(255,203,0,.12),transparent 70%)!important}
:root:not([data-theme="dark"]) .salto{background:linear-gradient(180deg,transparent,#F7F4FF 18%,#F7F4FF 82%,transparent)}
:root:not([data-theme="dark"]) #recorrido{background:linear-gradient(180deg,transparent,#EEF4F8 12%,#F7F4FF 60%,transparent)}
:root:not([data-theme="dark"]) :is(.marco-tour,.derecha .marco){box-shadow:0 40px 90px -40px rgba(28,71,135,.55),0 0 0 1px rgba(28,71,135,.10),0 0 80px -30px rgba(178,85,218,.45)!important}
:root:not([data-theme="dark"]) .salto-escena::before{opacity:1!important;background:radial-gradient(closest-side,rgba(0,118,190,.30),rgba(178,85,218,.22) 55%,transparent)!important;animation:respira-halo 6s ease-in-out infinite}
:root:not([data-theme="dark"]) .pant-nueva{box-shadow:0 0 0 1px rgba(0,118,190,.25),0 40px 80px -30px rgba(28,71,135,.55),0 0 70px -20px rgba(91,196,241,.6)}
:root:not([data-theme="dark"]) .aparece{transform:translateY(36px) scale(.98)}
:root:not([data-theme="dark"]) .aparece.on{transform:none}
:root:not([data-theme="dark"]) .contraste p{background:rgba(255,255,255,.75)!important;box-shadow:inset 0 1px 0 #fff,0 14px 34px -18px rgba(28,71,135,.4)!important}
.seccion-fija .barra{top:-90px!important;opacity:0;pointer-events:none}
.contraste p span{font-weight:400}
.sin-comp{font-size:var(--t-chico);line-height:1.5}
.privacidad{font-size:var(--t-chico);line-height:1.5}
.respaldo *{font-size:var(--t-chico)!important;line-height:1.5!important}
.paso-form{font-size:var(--t-chico)!important;line-height:1.5!important}
.derecha .marco-barra .tipo{font:500 var(--t-etq)/1 var(--sans)!important;padding:4px 10px!important}
/* 9 · Reserva real */
.reserva-publica{position:relative;overflow:hidden;gap:14px;padding:20px;background:var(--form-bg);border:1px solid var(--borde);border-radius:18px}
.reserva-publica::before{content:"";position:absolute;inset:0 0 auto;height:2px;background:var(--espectro)}
.reserva-etiqueta{font-size:10px;font-weight:750;letter-spacing:.13em;color:var(--acento-t)}
.reserva-cabecera h3{font-size:var(--t-sub);line-height:1.2;margin:8px 0}
.reserva-cabecera>p{line-height:1.5;color:var(--texto);font-size:var(--t-chico)}
.reserva-datos{display:flex;flex-wrap:wrap;gap:7px;margin-top:4px}
.reserva-datos span{font-size:11px;padding:3px 7px;border-radius:99px;background:var(--pastilla-bg);color:var(--texto);border:1px solid var(--borde)}
.reserva-paso h4{font-size:13px;color:var(--tinta);display:flex;gap:9px;align-items:center;margin-bottom:4px}
.reserva-paso h4>span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:var(--hover);color:var(--acento-t);font-size:12px}
.reserva-ayuda{font-size:12px;color:var(--apagado);margin-bottom:12px}
.reserva-dias{grid-template-columns:repeat(5,minmax(0,1fr));display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;padding-bottom:6px;max-width:100%}
.reserva-dia{font:inherit;cursor:pointer;padding:5px 3px;border:1px solid var(--borde);border-radius:13px;color:var(--texto);display:grid;gap:0;justify-items:center;transition:background .2s,border-color .2s;flex:0 0 54px;max-width:90px;background:var(--form-bg);font-weight:500}
.reserva-dia span{font-size:11px;text-transform:uppercase;font-weight:650}
.reserva-dia strong{line-height:1.2;color:var(--tinta);font-size:21px}
.reserva-dia small{font-size:10px;line-height:1.3}
.reserva-dia:hover{border-color:var(--acento-t)}
.reserva-dia[aria-pressed="true"]{border-color:transparent;background:linear-gradient(var(--noche),var(--noche)) padding-box,linear-gradient(120deg,#0076be,#b255da) border-box;box-shadow:none}
.reserva-dia[aria-pressed="true"] strong{color:var(--acento-t)}
.reserva-horarios{grid-template-columns:repeat(3,minmax(0,1fr));border:0;padding:0;min-width:0;display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.reserva-horarios legend{font-size:12px;color:var(--apagado);margin-bottom:4px;line-height:1.3}
.reserva-publica .reserva-turno{position:relative;cursor:pointer;display:block}
.reserva-publica .reserva-turno input{position:absolute;opacity:0;width:1px;height:1px;padding:0}
.reserva-turno span{display:block;padding:11px 5px;border:1px solid var(--borde);border-radius:11px;text-align:center;background:var(--input-bg);font-size:14px}
.reserva-turno input:checked+span{background:var(--azul);color:white;border-color:var(--azul);box-shadow:0 3px 12px -5px var(--azul)}
.reserva-turno input:focus-visible+span{outline:2px solid var(--cian);outline-offset:3px}
.reserva-resumen{display:grid;gap:3px;padding:8px 12px;border:1px solid var(--borde);border-radius:14px;background:var(--hover)}
.reserva-resumen strong{color:var(--tinta);font-size:var(--t-texto);margin-top:2px;line-height:1.3}
.reserva-resumen p{color:var(--texto);font-size:var(--t-chico)}
.reserva-publica .btn-primario{animation:none!important;margin-top:0;padding:12px 16px}
.reserva-publica .btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}
.reserva-publica .btn:disabled::after{animation:none}
.reserva-destino{text-align:center;color:var(--apagado);overflow-wrap:anywhere;margin-top:-12px;font-size:var(--t-chico)}
.reserva-destino strong{font-weight:500;color:var(--texto)}
.reserva-vacio{padding:20px;border:1px dashed var(--borde);border-radius:14px;background:var(--pastilla-bg)}
.reserva-vacio strong{color:var(--tinta);font-size:16px}
.reserva-vacio p{font-size:14px;line-height:1.6;margin-top:8px}
.gracias .nueva-demo{margin-top:20px;width:100%;min-height:44px}
.contacto .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
[x-cloak]{display:none!important}
.reserva-publica .reserva-turno span{border-radius:999px;padding:8px 14px;font-size:var(--t-chico)}
.reserva-resumen small{font-size:var(--t-etq);color:var(--acento-t);text-transform:uppercase;letter-spacing:.12em;line-height:1.3}
.reserva-publica .btn{width:100%;min-height:44px}
.cta .gracias h3{font-size:var(--t-sub)}
.cta .btn-primario>span{display:inline-flex;align-items:center;gap:10px}
.cta .btn-primario svg{width:18px;height:18px;flex-shrink:0}
.cta .btn:disabled{cursor:wait;opacity:.65}
.cta-flota:not(.on){visibility:hidden}
.saltar-rec:not(.on){visibility:hidden}
.seccion-fija .cta-flota{visibility:hidden}
.esc:not(.actual){visibility:hidden}
.relato article:not(.actual){visibility:hidden}
.mj [data-k]:focus-visible{outline:2px solid var(--cian);outline-offset:3px}
.pieza:focus-visible{outline:2px solid var(--cian);outline-offset:3px}
.sin-js .aparece{opacity:1;transform:none;filter:none}
.sin-js .entra{opacity:1;transform:none;filter:none}
.sin-js .palabras{opacity:1;transform:none;filter:none}
.sin-js .relato article{visibility:visible;opacity:1;position:relative;grid-area:auto}

/* @media (prefers-color-scheme:dark) */
@media (prefers-color-scheme:dark){
:root:not([data-theme="light"]){--noche:#050a14;--noche-2:#08101f;--vidrio:rgba(17,28,48,.55);--borde:rgba(120,150,210,.16);--tinta:#f1f4fb;--texto:#b9c2d6;--apagado:#7f8aa3;--palabra:#ffffff;--acento-t:#22c7e6;--barra-bg:rgba(8,16,31,.6);--hover:rgba(255,255,255,.06);--sec-bg:rgba(255,255,255,.04);--pastilla-bg:rgba(255,255,255,.03);--pista:#152036;--linea-g:#2a3d63;--punto:#1d2a45;--nodo-fondo:#0b1424;--riel:rgba(120,150,210,.15);--sombra-tarjeta:none;--sombra-marco:0 70px 140px -50px rgba(0,0,0,.95),0 0 120px -30px rgba(58,160,240,.55);--form-bg:rgba(255,255,255,.03);--input-bg:rgba(5,10,20,.6);--puntos:rgba(255,255,255,.035);--glow-hero:radial-gradient(closest-side,rgba(0,118,190,.35),rgba(178,85,218,.12) 55%,transparent);--horiz-sombra:0 -2px 0 rgba(140,190,255,.55),0 -30px 80px rgba(58,160,240,.45),0 -80px 160px rgba(178,85,218,.25);--cta-fondo:radial-gradient(800px 400px at 0% 0%,rgba(28,71,135,.55),transparent 60%),radial-gradient(700px 400px at 100% 100%,rgba(178,85,218,.25),transparent 60%),#070e1c;--cta-medio-fondo:linear-gradient(120deg,rgba(28,71,135,.55),rgba(17,28,48,.55) 55%,rgba(178,85,218,.22));--cta-medio-borde:rgba(120,160,240,.28);--seccion-alt:transparent;--logo-claro:none;--logo-oscuro:block}
:root:not([data-theme="light"]) .tema .sol{opacity:0;transform:rotate(60deg) scale(.6)}
:root:not([data-theme="light"]) .tema .luna{opacity:1;transform:none}
:root:not([data-theme="light"]) .barra{box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 36px -18px rgba(0,0,0,.7)}
:root:not([data-theme="light"]) .cta{background:radial-gradient(600px 220px at 100% 0%,rgba(178,85,218,.14),transparent 70%),radial-gradient(600px 260px at 0% 100%,rgba(0,118,190,.14),transparent 70%),#0b1220!important}
:root:not([data-theme="light"]) .marca-palabra{background-image:linear-gradient(90deg,#5b8fe8,#c27fe6)}
:root:not([data-theme="light"]) .hero{background:radial-gradient(38% 45% at 12% 28%,rgba(231,78,15,.12),transparent 70%),radial-gradient(34% 42% at 88% 22%,rgba(178,85,218,.16),transparent 70%),radial-gradient(40% 46% at 78% 78%,rgba(0,117,190,.18),transparent 70%),radial-gradient(36% 44% at 22% 80%,rgba(81,173,50,.09),transparent 70%),radial-gradient(30% 36% at 50% 8%,rgba(246,165,0,.08),transparent 70%)}
:root:not([data-theme="light"]) :is(.kicker,.tour-cab small,.momento-et,.nota-tour .num){background-image:linear-gradient(90deg,#4cb0f0,#c27fe6)}
:root:not([data-theme="light"]) :is(.contraste p,.cta .form,.vista-sel,.saltar-rec){background:rgba(255,255,255,.045)!important;border-color:rgba(255,255,255,.1)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 30px -16px rgba(0,0,0,.7)!important}
:root:not([data-theme="light"]) .contraste .c-fa{background:linear-gradient(#0f1729,#0f1729) padding-box,linear-gradient(100deg,#0076BE,#8a5bd8) border-box!important}
:root:not([data-theme="light"]) .hero::after{background:radial-gradient(38% 45% at 12% 28%,rgba(231,78,15,.12),transparent 70%),radial-gradient(34% 42% at 88% 22%,rgba(178,85,218,.16),transparent 70%),radial-gradient(40% 46% at 78% 78%,rgba(0,117,190,.18),transparent 70%),radial-gradient(36% 44% at 22% 80%,rgba(81,173,50,.09),transparent 70%),radial-gradient(30% 36% at 50% 8%,rgba(246,165,0,.08),transparent 70%);opacity:1}
}

/* @media (min-width:720px) */
@media (min-width:720px){
:root{--gutter:32px}
}

/* @media (hover:hover) */
@media (hover:hover){
.btn-primario:hover{background-position:100% 0;background:#00639f!important;filter:brightness(1.08) saturate(1.1);box-shadow:none!important;transform:none!important}
.btn-secundario:hover{border-color:color-mix(in srgb,var(--tinta) 45%,transparent)!important;background:transparent!important}
.btn:hover svg{transform:translateX(3px)}
.btn-texto:hover{background:var(--hover)}
.pie-col a:hover{color:var(--tinta);background-size:100% 1px}
.btn-primario:hover::before{opacity:1}
.hero .btn-primario:hover{animation:none}
.cta .btn-primario:hover{animation:none}
.btn-primario:hover svg{transform:translateX(3px)}
.saltar-rec:hover{border-color:color-mix(in srgb,var(--acento-t) 50%,transparent)}
.tema:hover{background:color-mix(in srgb,var(--tinta) 7%,transparent)!important}
.mj-ver:hover{background:#00639f}
.mj-ver:hover svg{transform:translateX(3px)}
}

/* @media (max-width:520px) */
@media (max-width:520px){
.btn-texto{display:none}
.logo span{display:none}
}

/* @media (min-width:1000px) */
@media (min-width:1000px){
.secciones{display:flex}
.acciones-barra{margin-left:8px}
.acciones-barra .btn-primario{display:inline-flex}
.salto-grid{grid-template-columns:minmax(0,400px) minmax(0,1fr);gap:88px!important}
.recorrido-fijo{flex-direction:column;gap:10px;margin:0;display:grid;row-gap:18px;align-items:center;justify-content:center;max-width:none;padding:84px var(--gutter) 24px;grid-template-rows:1fr;grid-template-areas:"marco relato";grid-template-columns:auto minmax(280px,340px);column-gap:clamp(28px,3vw,52px);height:auto;top:76px;padding-top:16px;padding-bottom:16px}
.cta-flota{display:none}
.recorrido-fijo::before{content:"";position:absolute;inset:0;pointer-events:none;background:#0b1220;opacity:calc(var(--e,0) * 2000);clip-path:inset(calc((1 - var(--e,0)) * 14%) calc((1 - var(--e,0)) * 8%) calc((1 - var(--e,0)) * 4%) round calc((1 - var(--e,0)) * 40px));display:none}
.recorrido-fijo>*{position:relative}
.derecha{flex:1;min-height:0;flex-direction:column;gap:10px;padding:0 calc(var(--gutter) + (1 - var(--e,0)) * 4vw);transform:scale(calc(.9 + var(--e,0) * .1));transform-origin:center top;display:contents}
.derecha .marco{min-height:0;max-width:none;justify-self:stretch;position:relative;animation:none!important;grid-area:marco;flex:none;aspect-ratio:960/516;border-radius:20px;box-shadow:var(--sombra-marco),0 0 0 1px var(--borde);width:min(1320px,68vw,calc((100vh - 110px) * 1.86))!important}
.relato{flex:none;width:100%;grid-area:relato;align-self:center;max-width:none;margin:0;padding:0;min-height:420px}
.relato article{align-items:start;grid-template-columns:1fr!important;gap:10px!important;align-content:center}
.relato h3{color:var(--tinta);line-height:1.08;letter-spacing:-.025em!important;font-size:clamp(24px,2vw,32px)}
.relato .impacto{font-size:clamp(16px,1.4vw,20px)}
.relato p{font-size:17px!important;line-height:1.6;color:var(--texto)}
.derecha .marco-barra{position:absolute;top:10px;right:12px;z-index:5;padding:0;border:0;background:none}
.derecha .marco-barra>b{display:none}
.derecha #marco-tit{display:none}
.scrolly.lleno .relato{--tinta:#fff;--texto:#c3cde0;--apagado:#8a96ad;--palabra:#9fd8ff;--acento-t:#22c7e6;color:#c3cde0}
.derecha .marco.clave{animation:none!important;grid-area:marco;flex:none;aspect-ratio:960/516!important;border-radius:20px;box-shadow:var(--sombra-marco),0 0 0 2px color-mix(in srgb,var(--acento-t) 45%,transparent)!important;width:min(1320px,68vw,calc((100vh - 110px) * 1.86))!important}
.derecha .marco-barra .tipo{background:rgba(255,255,255,.06)!important;color:#8a96ad;border:0!important;font-weight:500}
.relato .impacto b{background:none;color:#fff;padding:0}
}

/* @media (min-width:1100px) and (min-aspect-ratio:3/2) */
@media (min-width:1100px) and (min-aspect-ratio:3/2){
.tour-fijo{justify-content:center;align-content:center;align-items:center;padding:76px var(--gutter) 16px;transition:padding 400ms var(--salida);column-gap:clamp(36px,4vw,72px);grid-template-columns:auto minmax(300px,380px);height:auto;top:64px;padding-top:24px;padding-bottom:16px}
.tour-lado{display:block;order:2}
.nota-tour{width:auto;margin-top:28px}
.tour-cab{text-align:left}
.tour-escena{transition:width 400ms var(--salida);order:1;width:min(1240px,62vw,calc((100vh - 140px) * 1.99))}
.nota-tour .txt{grid-template-columns:1fr!important;gap:6px}
.nota-tour p{font-size:17px!important;line-height:1.6;margin-top:10px}
.tour-activo .tour-fijo{padding-top:16px;padding-bottom:12px}
.tour-activo .tour-escena{width:min(1560px,calc(100vw - 2 * var(--gutter) - 300px - 48px),calc((100vh - 40px) * 1.99))}
.nota-tour .num{font:300 64px/1 var(--sans)!important;letter-spacing:-.04em;color:color-mix(in srgb,var(--acento-t) 55%,transparent);display:block;margin-bottom:6px}
.nota-tour h3{font-size:clamp(28px,2.4vw,38px)!important;line-height:1.1;letter-spacing:-.02em}
.tour-cab h2{font-size:clamp(28px,2.6vw,40px)}
}

/* @media (min-width:861px) */
@media (min-width:861px){
.nota-tour .txt{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.nota-tour .num{grid-column:1/-1}
}

/* @media (max-width:860px) */
@media (max-width:860px){
.nota-tour h3{font-size:18px}
.nota-tour p{font-size:14.5px}
.etq-real{display:none}
.tour-escena{width:100%}
}

/* @media (max-width:999px) */
@media (max-width:999px){
.salto-escena{margin:0 auto;max-width:none;width:100%;aspect-ratio:1.25!important}
.marco{width:min(100%,calc((100vh - 360px) * 1.6))}
.saltar-rec{left:50%;right:auto;bottom:16px;transform:translate(-50%,10px);white-space:nowrap}
.salto-leyenda{grid-column:1}
.seccion-fija .cta-flota{opacity:0!important;pointer-events:none!important;transform:translateY(16px)!important}
.saltar-rec.on{transform:translate(-50%,0)}
.derecha .marco{width:calc(100vw - 16px)!important;margin-left:calc(50% - 50vw + 8px)!important;border-radius:14px!important}
.derecha .marco.clave{width:calc(100vw - 16px)!important;margin-left:calc(50% - 50vw + 8px)!important;border-radius:14px!important}
.salto-grid{gap:32px!important}
.relato{min-height:0}
.cta .btn-primario[type="submit"]{font-size:var(--t-chico)!important;padding:14px 18px!important;white-space:nowrap}
.btn{white-space:nowrap}
.salto{padding-top:56px!important}
#recorrido .envoltura{padding-top:72px!important}
.control{padding-top:72px!important}
#contacto{padding-top:56px!important}
.cta{padding:28px 20px!important}
.encabezado.centro{padding:0 8px}
.recorrido-fijo{align-content:start;align-items:start;padding-top:56px;gap:16px!important;height:auto;min-height:100svh}
.derecha{gap:16px!important}
.relato .contraste p{padding:10px 14px!important}
.relato h3{font-size:21px}
.relato article{align-content:start}
}

/* @media (max-width:599px) */
@media (max-width:599px){
.llamada{font-size:10.5px;padding:6px 9px}
.sello-p{font-size:11px;padding:6px 10px}
.ll-2{left:8%}
}

/* @media (prefers-reduced-motion:reduce) */
@media (prefers-reduced-motion:reduce){
.salto-escena{--t:1!important}
.palabras .p{opacity:1;filter:none;transform:none;transition:none}
.entra{opacity:1;filter:none;transform:none;transition:none}
.aparece{opacity:1;filter:none;transform:none;transition:none}
.tarjeta-3d{transform:none}
.cta-caja{animation:none}
*{transition-delay:0s!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}
*::before{transition-delay:0s!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}
*::after{transition-delay:0s!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}
.salto-escena.listo .llamada{animation:none}
.btn-primario{animation:none!important}
.btn-primario::after{animation:none!important}
.mj-pista{animation:none!important}
.mj .mj-estado .b{animation:none!important}
.salto-escena::before{animation:none!important}
}

/* @media (min-width:900px) */
@media (min-width:900px){
.bento{grid-template-columns:repeat(3,1fr)}
.b-ancho{grid-column:span 2}
.pie .envoltura{grid-template-columns:auto 1fr auto;align-items:center}
.pie nav{justify-content:center}
.pie-cierre{grid-template-columns:1fr auto}
}

/* @media (min-width:700px) */
@media (min-width:700px){
.regla-ad{grid-template-columns:1fr auto 1fr;align-items:center}
}

/* @media (max-width:699px) */
@media (max-width:699px){
.regla-ad .flecha svg{transform:rotate(90deg)}
}

/* @media (min-width:760px) */
@media (min-width:760px){
.relato article{grid-template-columns:1fr 1.2fr;gap:28px}
.pie-cols{grid-template-columns:2fr 1fr 1fr;align-items:start}
}

/* @media (max-width:759px) */
@media (max-width:759px){
.relato .pregunta{display:none}
.relato p{font-size:14px}
}

/* @media (min-width:860px) */
@media (min-width:860px){
}

/* @media (max-width:640px) */
@media (max-width:640px){
.cta-flota{left:16px;right:16px;bottom:14px}
.cta-flota .btn{width:100%}
}

/* @media (min-width:960px) */
@media (min-width:960px){
.cta{grid-template-columns:1fr 1fr;align-items:center;padding:56px 64px!important;gap:64px!important}
.cta:has(.form.enviado){grid-template-columns:.8fr 1.2fr}
}

/* @media (min-width:640px) */
@media (min-width:640px){
.form .fila2{grid-template-columns:1fr 1fr}
}

/* @media (prefers-reduced-transparency:reduce) */
@media (prefers-reduced-transparency:reduce){
.barra{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--barra-bg)}
.contraste p{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--noche)!important}
.cta .form{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--noche)!important}
.vista-sel{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--noche)!important}
.saltar-rec{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--noche)!important}
}

/* @media (min-width:1100px) */
@media (min-width:1100px){
.nota-tour h3{font-size:clamp(24px,2vw,32px)!important}
}

/* @media (min-width:760px) and (max-width:999px) */
@media (min-width:760px) and (max-width:999px){
.derecha .marco{margin-left:auto!important;margin-right:auto;width:min(100%,calc((100svh - 300px) * 1.86))!important}
.derecha .marco.clave{margin-left:auto!important;margin-right:auto!important;width:min(100%,calc((100svh - 300px) * 1.86))!important}
.relato{max-width:100%}
.saltar-rec{left:auto;right:20px;transform:translateY(10px)}
.saltar-rec.on{transform:none!important}
.relato article{grid-template-columns:.8fr 1.6fr!important;gap:24px!important}
.relato .contraste{max-width:none;grid-template-columns:1fr 1fr;display:grid}
}

/* @media (max-width:420px) */
@media (max-width:420px){
.reserva-publica{padding:20px;gap:20px}
.reserva-dias{grid-template-columns:repeat(4,minmax(0,1fr))}
}

/* Animaciones */
@keyframes latido{0%{opacity:.9;transform:scale(1)}70%,100%{opacity:0;transform:scale(1.04)}}
@keyframes destello{0%{transform:scale(.985)}45%{transform:scale(1.01)}100%{transform:scale(1)}}
@keyframes parpadeo{50%{opacity:0}}
@keyframes gira{to{transform:rotate(360deg)}}
@keyframes gira-borde{to{--ang:360deg}}
@keyframes flota{0%,100%{translate:0 0}50%{translate:0 -6px}}
@keyframes pulso-e{0%{box-shadow:0 0 0 0 rgba(34,199,230,.5),0 0 20px 4px rgba(34,199,230,.55)}100%{box-shadow:0 0 0 12px rgba(34,199,230,0),0 0 20px 4px rgba(34,199,230,.55)}}
@keyframes destello-btn{0%,70%{left:-60%}100%{left:130%}}
@keyframes respira{0%,100%{box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 10px 30px -10px rgba(0,118,190,.85),0 0 0 0 rgba(58,160,240,.0)}50%{box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 14px 36px -10px rgba(91,111,224,.9),0 0 0 6px rgba(58,160,240,.14)}}
@keyframes ok-pop{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.08)}100%{transform:none;opacity:1}}
@keyframes pista{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}
@keyframes llama{0%,100%{box-shadow:0 0 0 0 rgba(76,195,255,0)}50%{box-shadow:0 0 0 4px rgba(76,195,255,.25)}}
@keyframes respira-halo{0%,100%{transform:scale(1);opacity:.85}50%{transform:scale(1.06);opacity:1}}
/* Formulario real: protección antispam y errores por campo. */
.campo-trampa{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.form [aria-invalid="true"]{border-color:var(--error)}
.form .aviso{padding:12px 14px;border:1px solid var(--error);border-radius:12px;color:var(--error);font-size:var(--t-chico)}
.error-campo{color:var(--error);font-size:var(--t-chico)}
.cta .reserva-publica p{font-size:var(--t-chico);margin:0}
.cta:has(.reserva-publica){padding:12px 40px !important}
.cta .gracias{display:block;padding:24px;background:var(--form-bg);border-radius:18px;border:1px solid var(--borde)}
.cta > div{min-width:0}
.reserva-paso{min-width:0}
.cta .form.reserva-publica{padding:16px !important;gap:8px !important}
.cta .reserva-publica .reserva-cabecera h3{font-size:21px;margin:4px 0;line-height:1.2}
.cta .reserva-publica .reserva-destino{font-size:11px;line-height:1.4}
.cta .reserva-publica{line-height:1.35}
.cta .reserva-publica .reserva-cabecera > p{display:none}
.reserva-cabecera .kicker{line-height:1.4}
.cta .reserva-publica .reserva-resumen p{margin:0;line-height:1.35}
.cta .reserva-publica .reserva-paso p{line-height:1.35}
