@font-face{font-family:INNunito;src:url("fonts/nunito-400.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:INNunito;src:url("fonts/nunito-600.ttf") format("truetype");font-weight:600;font-display:swap}
@font-face{font-family:INNunito;src:url("fonts/nunito-700.ttf") format("truetype");font-weight:700;font-display:swap}
@font-face{font-family:INNunito;src:url("fonts/nunito-800.ttf") format("truetype");font-weight:800;font-display:swap}
@font-face{font-family:INNunito;src:url("fonts/nunito-900.ttf") format("truetype");font-weight:900;font-display:swap}
@font-face{font-family:INMono;src:url("fonts/geist-mono-700.ttf") format("truetype");font-weight:700;font-display:swap}

:root{--font-nunito:INNunito;--font-geist-mono:INMono}

:root {
  --ink: #05070a;
  --ink-2: #0b0e13;
  --paper: #f3f2ec;
  --white: #ffffff;
  --yellow: #ffdf00;
  --yellow-soft: #f8e85b;
  --muted: #a8adb6;
  --line: rgba(255,255,255,.14);
  --dark-line: rgba(5,7,10,.16);
}

/* Menú general de WordPress: se conserva en todos los módulos. */
body.inp-experience-page.admin-bar .inp-nav{top:32px}
.inp-nav{position:fixed;z-index:1000;top:0;left:0;width:100%;height:78px;padding:0 clamp(20px,4vw,72px);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(180deg,rgba(0,0,0,.84),transparent);backdrop-filter:blur(5px)}
.inp-brand img{display:block;width:136px;height:auto}
.inp-nav nav{display:flex;align-items:center;gap:30px;font-size:14px}
.inp-nav nav>a,.inp-nav-group>button{opacity:.82;transition:.2s}
.inp-nav nav>a:hover,.inp-nav-group>button:hover{opacity:1;color:var(--yellow)}
.inp-nav-group{position:relative}
.inp-nav-group>button{border:0;background:none;color:#fff;padding:20px 0;cursor:pointer;font:inherit}
.inp-nav-group>div{display:none;position:absolute;top:52px;left:50%;transform:translateX(-50%);width:min(620px,86vw);max-height:calc(100vh - 110px);overflow:auto;grid-template-columns:1fr 1fr;gap:2px;padding:12px;background:rgba(8,8,10,.96);border:1px solid rgba(255,255,255,.14);border-radius:18px;backdrop-filter:blur(18px)}
.inp-nav-group:hover>div,.inp-nav-group:focus-within>div{display:grid}
.inp-nav-group div a{padding:10px 12px;border-radius:9px;color:#fff}
.inp-nav-group div a:hover,.inp-nav-group div a[aria-current="page"]{background:rgba(255,212,0,.1);color:var(--yellow)}
.inp-nav .inp-nav-cta{border:1px solid rgba(255,212,0,.45);border-radius:99px;padding:10px 17px;color:var(--yellow)}
.inp-menu-toggle{display:none;background:none;border:0;width:40px;height:40px;cursor:pointer}
.inp-menu-toggle span{display:block;width:25px;height:1px;background:#fff;margin:7px auto}
.inp-footer{padding:55px 6vw;border-top:1px solid rgba(255,255,255,.14);display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:35px;background:#050505;color:#777;font-size:13px}
.inp-footer img{width:120px}.inp-footer p{margin:0}.inp-footer span{font-family:INMono;font-size:10px}

@media(max-width:900px){
  body.inp-experience-page.admin-bar .inp-nav{top:46px}
  .inp-menu-toggle{display:block}
  .inp-nav nav{position:absolute;top:70px;left:15px;right:15px;padding:18px;display:none;align-items:stretch;flex-direction:column;gap:3px;background:rgba(8,8,10,.97);border:1px solid rgba(255,255,255,.14);border-radius:20px}
  .inp-nav nav.is-open{display:flex}
  .inp-nav nav>a,.inp-nav-group>button{padding:10px;text-align:left}
  .inp-nav-group>button{width:100%}
  .inp-nav-group>div{position:static;transform:none;width:auto;max-height:55vh;grid-template-columns:1fr;background:transparent;border:0;padding:0 12px}
  .inp-nav-group:hover>div,.inp-nav-group:focus-within>div{display:grid}
  .inp-footer{grid-template-columns:1fr;text-align:center;justify-items:center}
}
@media(max-width:600px){.inp-brand img{width:112px}.inp-nav{height:68px;padding:0 18px}.inp-footer{padding-bottom:90px}}

/* Auditorías y Talleres — Centro de Entrenamiento */
.training-page{--training-red:#ff3b30;--training-green:#42e88b;overflow:clip;background:#030507;color:#f7f6f1}.training-page button,.training-page input,.training-page textarea{font:inherit}.training-page .site-header{z-index:120}.training-door-journey{height:280svh;background:#020305}.training-door-sticky{position:sticky;top:0;height:100svh;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 50% 44%,rgba(255,212,0,.08),transparent 27%),linear-gradient(180deg,#080b0f,#020305)}.training-door-sticky::before{content:"";position:absolute;z-index:-4;inset:0;background:linear-gradient(90deg,transparent 0 9%,rgba(255,255,255,.035) 9.1% 9.25%,transparent 9.35% 90.6%,rgba(255,255,255,.035) 90.7% 90.85%,transparent 91%),repeating-linear-gradient(90deg,transparent 0 14.2vw,rgba(255,255,255,.026) 14.3vw 14.4vw);transform:scale(calc(1 + var(--door-progress)*.12));opacity:calc(1 - var(--door-progress)*.72)}.training-door-sticky::after{content:"";position:absolute;z-index:10;inset:0;pointer-events:none;background:radial-gradient(circle at center,transparent 27%,rgba(0,0,0,.42) 73%,#020305 112%)}.training-particles{position:absolute;z-index:-1;inset:0;opacity:calc(.65 - var(--door-progress)*.38)}.training-particles i{--size:calc(1px + (var(--p) / 12));position:absolute;left:calc(2% + var(--p)*3.05%);top:28%;width:min(var(--size),3px);height:min(var(--size),3px);border-radius:50%;background:#fff;box-shadow:0 0 9px #fff;animation:training-dust calc(5s + var(--p)*.09s) ease-in-out infinite}.training-particles i:nth-child(4n){top:13%;opacity:.45}.training-particles i:nth-child(4n + 2){top:67%;background:var(--yellow)}.training-particles i:nth-child(4n + 3){top:82%;opacity:.3}.training-floor{position:absolute;z-index:-2;left:-15%;right:-15%;bottom:-12%;height:42%;perspective:500px;transform:rotateX(60deg);transform-origin:center bottom;background:repeating-linear-gradient(90deg,transparent 0 9vw,rgba(255,212,0,.15) 9.1vw 9.2vw),repeating-linear-gradient(0deg,transparent 0 55px,rgba(255,255,255,.055) 56px 57px)}.training-floor::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 46%,rgba(255,212,0,.65) 48% 52%,transparent 54%);filter:blur(8px);opacity:.35}.training-floor i{position:absolute;left:50%;bottom:0;width:2px;height:100%;background:linear-gradient(transparent,var(--yellow));box-shadow:0 0 14px var(--yellow)}.training-floor i:first-child{left:28%}.training-floor i:last-child{left:72%}.training-hero-copy{position:absolute;z-index:15;left:clamp(24px,6vw,94px);top:50%;width:min(670px,46vw);opacity:calc(1 - var(--door-progress)*2.2);transform:translateY(calc(-50% - var(--door-progress)*45px));will-change:transform,opacity}.training-hero-copy>span,.training-section-heading>span,.scanner-head>span{display:block;margin-bottom:22px;color:var(--yellow);text-transform:uppercase;font:800 8px var(--font-geist-mono),monospace;letter-spacing:.2em}.training-hero-copy h1{margin:0;font-size:clamp(68px,7.5vw,120px);line-height:.82;letter-spacing:-.078em;text-transform:uppercase}.training-hero-copy p{max-width:600px;margin:30px 0 0;color:#aeb5bd;font-size:clamp(18px,2vw,27px);line-height:1.35;letter-spacing:-.025em}.training-hero-copy a{min-height:58px;margin-top:38px;display:inline-flex;align-items:center;gap:18px;padding:0 23px;background:var(--yellow);color:#05070a;text-transform:uppercase;font:900 8px var(--font-geist-mono),monospace;letter-spacing:.13em}.training-door{position:absolute;z-index:4;left:70%;top:50%;width:min(54vw,760px);aspect-ratio:1;transform:translate(-50%,-50%) scale(calc(1 + var(--door-progress)*2.25));opacity:calc(1 - var(--door-progress)*1.04);will-change:transform,opacity}.door-disc{position:absolute;inset:0;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:repeating-conic-gradient(from 8deg,#0a0d12 0 10deg,#191d23 10.5deg 18deg,#06080c 18.5deg 28deg);box-shadow:0 0 0 18px #07090d,0 0 0 20px rgba(255,212,0,.2),0 0 90px #000,inset 0 0 90px #000;transform:rotate(calc(var(--door-progress)*78deg))}.door-disc::before,.door-disc::after{content:"";position:absolute;inset:10%;border:1px solid rgba(255,255,255,.1);background:linear-gradient(90deg,#0a0d12,#191d23);transition:clip-path .1s;box-shadow:inset 0 0 55px #000}.door-disc::before{clip-path:polygon(0 0,calc(50% - var(--door-progress)*50%) 0,calc(50% - var(--door-progress)*50%) 100%,0 100%)}.door-disc::after{clip-path:polygon(calc(50% + var(--door-progress)*50%) 0,100% 0,100% 100%,calc(50% + var(--door-progress)*50%) 100%)}.door-disc>i{position:absolute;left:50%;top:3%;width:7px;height:7px;border-radius:50%;background:var(--yellow);box-shadow:0 0 14px var(--yellow);transform-origin:50% calc(47% / .01);transform:rotate(calc(var(--i,0)*90deg))}.door-disc>i:nth-child(2){--i:1}.door-disc>i:nth-child(3){--i:2}.door-disc>i:nth-child(4){--i:3}.door-core{position:absolute;left:50%;top:50%;width:32%;aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(255,212,0,.55);border-radius:50%;background:radial-gradient(circle,#191d21,#040609 68%);box-shadow:0 0 45px rgba(255,212,0,.13),inset 0 0 42px #000;transform:translate(-50%,-50%) rotate(calc(var(--door-progress)*-78deg))}.door-core span{color:var(--yellow);font-size:clamp(42px,6vw,80px);font-weight:950;letter-spacing:-.1em}.door-core small{position:absolute;top:67%;color:#6f7780;text-align:center;font:700 6px/1.4 var(--font-geist-mono),monospace;letter-spacing:.13em}.training-door-status{position:absolute;z-index:16;left:6vw;right:6vw;bottom:30px;display:flex;align-items:center;gap:20px;color:#737b83;font:700 7px var(--font-geist-mono),monospace;letter-spacing:.15em}.training-door-status i{height:1px;flex:1;background:linear-gradient(90deg,var(--yellow),rgba(255,255,255,.08));box-shadow:0 0 8px rgba(255,212,0,.3)}.training-door-status b{color:var(--yellow)}

.training-lab-intro{position:relative;min-height:115svh;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:5vw;overflow:hidden;padding:140px clamp(24px,6vw,95px);background:radial-gradient(circle at 27% 48%,rgba(255,212,0,.09),transparent 22%),linear-gradient(145deg,#05080c,#010203 68%)}.training-lab-intro::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,#000,transparent 88%)}.lab-holograms i{position:absolute;border:1px solid rgba(255,212,0,.12);border-radius:50%;animation:lab-orbit 16s linear infinite}.lab-holograms i:nth-child(1){left:-16vw;top:8%;width:48vw;aspect-ratio:1}.lab-holograms i:nth-child(2){left:-9vw;top:18%;width:35vw;aspect-ratio:1;animation-direction:reverse}.lab-holograms i:nth-child(3){right:4vw;top:12%;width:16vw;aspect-ratio:1}.lab-holograms i:nth-child(4){right:10vw;bottom:8%;width:8vw;aspect-ratio:1;box-shadow:0 0 50px rgba(255,212,0,.13)}.training-lian{position:relative;z-index:2;align-self:end;height:min(86svh,850px);display:flex;align-items:flex-end;justify-content:center}.training-lian::before{content:"";position:absolute;left:50%;bottom:4%;width:82%;height:18%;border-radius:50%;background:rgba(255,212,0,.16);filter:blur(36px);transform:translateX(-50%)}.training-lian img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 36px 50px #000)}.training-lian>span{position:absolute;z-index:4;left:7%;top:17%;padding:9px 12px;border:1px solid rgba(255,212,0,.35);background:rgba(2,5,8,.72);color:var(--yellow);font:750 7px var(--font-geist-mono),monospace;letter-spacing:.14em}.training-lian>i{position:absolute;z-index:3;left:50%;top:44%;width:12px;height:12px;border-radius:50%;background:var(--yellow);box-shadow:0 0 12px 4px rgba(255,212,0,.7);animation:training-heartbeat 2s ease-in-out infinite}.training-choice{position:relative;z-index:3}.training-choice>small{color:var(--yellow);font:750 7px var(--font-geist-mono),monospace;letter-spacing:.17em}.training-choice h2{max-width:740px;margin:23px 0 48px;font-size:clamp(55px,5.5vw,88px);line-height:.9;letter-spacing:-.07em}.training-choice>div{display:grid;gap:10px}.training-choice a{min-height:112px;display:grid;grid-template-columns:34px 36px 1fr auto;align-items:center;gap:20px;padding:18px 22px;border:1px solid rgba(255,255,255,.12);background:rgba(10,14,19,.66);color:#fff;backdrop-filter:blur(14px);transition:.35s}.training-choice a:hover{border-color:rgba(255,212,0,.58);transform:translateX(8px);background:rgba(255,212,0,.07)}.training-choice a>svg{color:var(--yellow);font-size:22px}.training-choice a>span,.training-choice a>small{color:#68717a;font:750 7px var(--font-geist-mono),monospace;letter-spacing:.12em}.training-choice a>strong{font-size:20px}

.training-sales,.training-service,.training-scanner{padding:150px clamp(24px,6vw,95px);position:relative}.training-sales{background:#030507;transition:background .65s}.training-sales::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 72% 27%,rgba(255,59,48,.07),transparent 30%);transition:.65s}.training-sales.is-optimized::before{background:radial-gradient(circle at 72% 27%,rgba(66,232,139,.07),transparent 30%)}.training-section-heading{position:relative;z-index:2;display:grid;grid-template-columns:.52fr 1.3fr;align-items:start;margin-bottom:85px}.training-section-heading h2{margin:0;font-size:clamp(67px,7.7vw,122px);line-height:.84;letter-spacing:-.078em}.training-section-heading>p{grid-column:2;max-width:670px;margin:28px 0 0;color:#aab1b9;font-size:20px}.sales-lab{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;border:1px solid rgba(255,255,255,.14);background:#080b0f;box-shadow:0 40px 100px #000}.sales-chat-console{min-height:610px;border-right:1px solid rgba(255,255,255,.11);padding:0 34px 35px}.sales-console-top{height:64px;margin:0 -34px 30px;padding:0 24px;display:flex;align-items:center;gap:15px;border-bottom:1px solid rgba(255,255,255,.11);color:#7d858e;font:700 7px var(--font-geist-mono),monospace;letter-spacing:.14em}.sales-console-top>i{width:7px;height:7px;border-radius:50%;background:var(--training-red);box-shadow:0 0 10px var(--training-red);transition:.45s}.is-optimized .sales-console-top>i{background:var(--training-green);box-shadow:0 0 10px var(--training-green)}.sales-console-top small{margin-left:auto}.sales-chat{min-height:410px;display:flex;flex-direction:column;padding:30px;background:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),#05070a;background-size:100% 48px}.sales-chat p{width:min(78%,470px);margin:0 0 14px;padding:16px 19px;border:1px solid rgba(255,255,255,.12);background:#11151a;font-size:15px;line-height:1.5}.sales-chat .advisor{align-self:flex-end;background:#25210a;border-color:rgba(255,212,0,.22)}.sales-chat>span{margin:auto;color:var(--training-red);font:750 7px var(--font-geist-mono),monospace;letter-spacing:.14em}.sales-chat.optimized>span{color:var(--training-green)}.sales-chat-console>button{min-height:54px;margin-top:22px;display:flex;align-items:center;justify-content:center;gap:13px;width:100%;border:0;background:var(--yellow);color:#05070a;cursor:pointer;text-transform:uppercase;font:900 7px var(--font-geist-mono),monospace;letter-spacing:.13em}.sales-analysis{display:flex;flex-direction:column;justify-content:space-between;padding:42px}.lian-analysis-mini{position:relative;height:280px;overflow:hidden;border:1px solid rgba(255,212,0,.15);background:radial-gradient(circle at 50% 58%,rgba(255,212,0,.12),transparent 30%),#040609}.lian-analysis-mini img{width:100%;height:100%;object-fit:contain;object-position:center bottom}.lian-analysis-mini>span{position:absolute;left:16px;top:16px;color:var(--yellow);font:750 6px var(--font-geist-mono),monospace;letter-spacing:.14em}.sales-errors{display:grid;gap:8px;margin-top:24px}.sales-errors p{margin:0;min-height:48px;display:flex;align-items:center;gap:15px;padding:0 16px;border:1px solid rgba(255,59,48,.18);color:#aeb4bb;background:rgba(255,59,48,.025);font-size:12px}.sales-errors svg{color:var(--training-red)}.is-optimized .sales-errors p{border-color:rgba(66,232,139,.18);background:rgba(66,232,139,.025)}.is-optimized .sales-errors svg{color:var(--training-green)}.training-sales blockquote{position:relative;z-index:2;max-width:1120px;margin:130px auto;padding:0;text-align:center;color:#9ea5ad;font-size:clamp(36px,4.2vw,64px);line-height:1.12;letter-spacing:-.052em}.training-sales blockquote strong{color:#fff}.training-curriculum{position:relative;z-index:2;display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;padding-top:80px;border-top:1px solid rgba(255,255,255,.14)}.training-curriculum>div>small{color:var(--yellow);font:750 7px var(--font-geist-mono),monospace;letter-spacing:.15em}.training-curriculum h3{margin:22px 0;font-size:clamp(45px,5vw,74px);line-height:.9;letter-spacing:-.065em}.training-curriculum>div>p{max-width:500px;color:#929aa3;line-height:1.65}.training-curriculum ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr}.training-curriculum li{min-height:94px;display:grid;grid-template-columns:30px 20px 1fr;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.1);color:#d6d9dc;font-size:14px}.training-curriculum li:nth-child(odd){padding-right:22px;border-right:1px solid rgba(255,255,255,.1)}.training-curriculum li:nth-child(even){padding-left:22px}.training-curriculum li>span{color:#59616a;font:700 7px var(--font-geist-mono),monospace}.training-curriculum li>svg{color:var(--yellow)}

.training-service{background:radial-gradient(circle at 50% 33%,rgba(255,212,0,.09),transparent 35%),linear-gradient(180deg,#0d131c,#071018 48%,#040608)}.training-section-heading.warm>span{color:#f6d65b}.service-theatre{min-height:630px;display:grid;grid-template-columns:1fr 1fr;position:relative;overflow:hidden;border:1px solid rgba(177,211,255,.15);background:linear-gradient(125deg,rgba(11,40,62,.7),rgba(4,7,10,.95));box-shadow:0 40px 100px #000}.service-theatre::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(165,205,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(165,205,255,.05) 1px,transparent 1px);background-size:60px 60px}.service-person{position:relative;z-index:2;display:grid;place-items:center;overflow:hidden;border-right:1px solid rgba(177,211,255,.12)}.service-person::before,.service-person::after{content:"";position:absolute;border:1px solid rgba(177,211,255,.25);border-radius:50%;animation:service-wave 3s ease-out infinite}.service-person::before{width:270px;height:270px}.service-person::after{width:420px;height:420px;animation-delay:-1.5s}.service-person>svg{font-size:88px;color:var(--yellow);filter:drop-shadow(0 0 25px rgba(255,212,0,.45))}.service-person>i{position:absolute;bottom:18%;width:38%;height:42%;border:1px solid rgba(177,211,255,.18);border-radius:50% 50% 0 0;background:rgba(80,155,210,.06);filter:blur(.2px)}.service-person>span{position:absolute;left:20px;top:20px;color:#8aa7be;font:700 6px var(--font-geist-mono),monospace;letter-spacing:.14em}.service-context{position:relative;z-index:2;padding:75px 55px;display:flex;flex-direction:column;justify-content:center}.service-context>small{color:var(--yellow);font:700 7px var(--font-geist-mono),monospace;letter-spacing:.14em}.service-context h3{margin:18px 0 10px;font-size:clamp(55px,6vw,86px);line-height:.9;letter-spacing:-.07em}.service-context>p{max-width:500px;color:#9db0c0;font-size:18px}.service-context>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:55px}.service-context button{min-height:42px;padding:0 14px;border:1px solid rgba(177,211,255,.15);background:rgba(255,255,255,.02);color:#8293a1;cursor:pointer;font-size:11px}.service-context button.active{border-color:var(--yellow);background:var(--yellow);color:#05070a}.service-transformation{display:grid;grid-template-columns:repeat(6,1fr);margin:110px 0 140px;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}.service-transformation>span{min-height:145px;position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:20px;border-right:1px solid rgba(255,255,255,.1);font-size:17px;font-weight:850}.service-transformation b{margin-bottom:auto;color:#66798a;font:700 7px var(--font-geist-mono),monospace}.service-transformation svg{position:absolute;right:-7px;top:50%;z-index:2;color:var(--yellow);font-size:12px}.service-curriculum{padding-top:0;border-top:0}.service-curriculum li>svg{color:#9cc8e8}

.training-scanner{isolation:isolate;overflow:hidden;background:#020405}.scanner-grid{position:absolute;z-index:-2;inset:0;background-image:linear-gradient(rgba(255,212,0,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,212,0,.04) 1px,transparent 1px);background-size:65px 65px;mask-image:radial-gradient(circle at center,#000,transparent 80%)}.training-scanner::after{content:"";position:absolute;z-index:5;left:0;right:0;top:0;height:2px;background:var(--yellow);box-shadow:0 0 25px 8px rgba(255,212,0,.24);opacity:0;pointer-events:none}.training-scanner.is-scanning::after{opacity:1;animation:scanner-sweep 1.5s ease-in-out}.scanner-head{display:grid;grid-template-columns:.52fr 1.3fr;position:relative;z-index:2;margin-bottom:75px}.scanner-head h2{margin:0;font-size:clamp(70px,8vw,124px);line-height:.84;letter-spacing:-.08em}.scanner-head p{grid-column:2;max-width:670px;margin:28px 0 0;color:#8f98a2;font-size:19px}.scanner-console{position:relative;z-index:2;min-height:710px;display:grid;grid-template-columns:.82fr 1.18fr;grid-template-rows:auto 1fr;border:1px solid rgba(255,212,0,.25);background:rgba(6,9,12,.82);box-shadow:0 45px 120px #000;backdrop-filter:blur(18px)}.scanner-search{grid-column:1/-1;min-height:92px;display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:16px;padding:16px;border-bottom:1px solid rgba(255,255,255,.12)}.scanner-search>svg{margin-left:12px;color:var(--yellow)}.scanner-search input{height:58px;border:0;background:transparent;color:#fff;outline:none;font-size:17px}.scanner-search button{height:58px;min-width:190px;border:0;background:var(--yellow);color:#05070a;cursor:pointer;text-transform:uppercase;font:900 7px var(--font-geist-mono),monospace;letter-spacing:.12em}.scanner-search button:disabled{opacity:.42;cursor:default}.scanner-radar{position:relative;display:grid;place-items:center;min-height:590px;overflow:hidden;border-right:1px solid rgba(255,255,255,.1);background:radial-gradient(circle,rgba(255,212,0,.06),transparent 50%)}.scanner-radar::before{content:"";width:min(34vw,420px);aspect-ratio:1;border:1px solid rgba(255,212,0,.35);border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 48px,rgba(255,212,0,.14) 49px 50px),conic-gradient(from 0deg,rgba(255,212,0,.25),transparent 18%,transparent);animation:radar-turn 7s linear infinite}.scanner-radar>i{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--yellow);box-shadow:0 0 12px var(--yellow)}.scanner-radar>i:first-child{left:37%;top:34%}.scanner-radar>i:nth-child(2){right:28%;bottom:31%}.scanner-radar>span{position:absolute;color:var(--yellow);font:750 7px var(--font-geist-mono),monospace;letter-spacing:.16em}.scanner-results{padding:34px 40px}.scanner-results header{height:52px;display:flex;justify-content:space-between;align-items:start;color:#818a93;font:700 6px var(--font-geist-mono),monospace;letter-spacing:.13em}.scanner-results header span{color:var(--yellow)}.scanner-results>div{display:grid;grid-template-columns:130px 1fr;align-items:center;gap:20px;min-height:50px;color:#abb2ba;font-size:12px}.scanner-results>div>i{height:6px;overflow:hidden;background:rgba(255,255,255,.08)}.scanner-results>div b{display:block;width:var(--score);height:100%;background:linear-gradient(90deg,#9a8100,var(--yellow));box-shadow:0 0 10px rgba(255,212,0,.45);transition:width 1s cubic-bezier(.2,.78,.2,1)}.audit-areas{position:relative;z-index:2;margin-top:100px}.audit-areas>small{color:#737c85;font:700 7px var(--font-geist-mono),monospace;letter-spacing:.16em}.audit-areas>div{display:grid;grid-template-columns:repeat(5,1fr);margin-top:24px;border-top:1px solid rgba(255,255,255,.1);border-left:1px solid rgba(255,255,255,.1)}.audit-areas span{min-height:85px;display:flex;align-items:center;gap:12px;padding:18px;border-right:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);font-size:13px}.audit-areas svg{color:var(--yellow)}

.training-final{position:relative;min-height:115svh;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:120px 24px;background:#000;text-align:center}.training-final::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 80%,rgba(255,255,255,.28),transparent 31%),linear-gradient(180deg,#020304,#000)}.training-final-door{position:absolute;left:50%;bottom:-12%;width:min(92vw,1120px);height:78%;overflow:hidden;border:1px solid rgba(255,255,255,.17);border-radius:52% 52% 0 0;transform:translateX(-50%);box-shadow:0 -20px 100px rgba(255,255,255,.08),inset 0 0 80px #000}.training-final-door::before{content:"";position:absolute;left:50%;bottom:0;width:56%;height:92%;background:#fff;filter:blur(1px);transform:translateX(-50%);box-shadow:0 0 110px 35px rgba(255,255,255,.42)}.training-final-door>i{position:absolute;z-index:2;top:0;bottom:0;width:1px;background:rgba(255,212,0,.28)}.training-final-door>i:first-child{left:21%;transform:rotate(19deg);transform-origin:bottom}.training-final-door>i:nth-child(2){right:21%;transform:rotate(-19deg);transform-origin:bottom}.training-final-copy{position:relative;z-index:3;padding:60px;background:rgba(0,0,0,.83);backdrop-filter:blur(14px);box-shadow:0 0 80px #000}.training-final-copy>small{color:var(--yellow);font:750 7px var(--font-geist-mono),monospace;letter-spacing:.17em}.training-final-copy h2{margin:24px 0;font-size:clamp(67px,8vw,124px);line-height:.84;letter-spacing:-.078em}.training-final-copy>p{max-width:650px;margin:0 auto;color:#a3aab2;font-size:18px}.training-final-copy>div{display:flex;justify-content:center;gap:10px;margin-top:42px}.training-final-copy button{min-height:60px;padding:0 22px;display:flex;align-items:center;gap:16px;border:1px solid rgba(255,255,255,.18);background:#080a0d;color:#fff;cursor:pointer;text-transform:uppercase;font:850 7px var(--font-geist-mono),monospace;letter-spacing:.12em}.training-final-copy button:first-child{border-color:var(--yellow);background:var(--yellow);color:#05070a}.training-final-copy button:hover{transform:translateY(-3px)}

.training-modal{position:fixed;z-index:500;inset:0;display:grid;place-items:center;padding:24px;background:rgba(0,0,0,.82);backdrop-filter:blur(16px);animation:training-modal-in .35s ease both}.training-modal-panel{width:min(1120px,96vw);max-height:92svh;display:grid;grid-template-columns:.8fr 1.2fr;overflow:auto;border:1px solid rgba(255,212,0,.3);background:#06090d;box-shadow:0 35px 130px #000}.training-modal-panel aside{position:relative;min-height:690px;display:flex;flex-direction:column;justify-content:center;padding:55px;background:radial-gradient(circle at 40% 40%,rgba(255,212,0,.12),transparent 36%),#030507}.training-modal-panel aside>small{color:var(--yellow);font:700 7px var(--font-geist-mono),monospace;letter-spacing:.15em}.training-modal-panel aside h2{margin:25px 0;font-size:clamp(48px,5vw,73px);line-height:.88;letter-spacing:-.07em}.training-modal-panel aside p{color:#8f98a2;line-height:1.7}.training-modal-panel aside>div{display:flex;align-items:center;gap:14px;margin-top:60px;color:#707983;font:700 7px/1.5 var(--font-geist-mono),monospace;letter-spacing:.13em}.training-modal-panel aside>div i{width:8px;height:8px;border-radius:50%;background:var(--yellow);box-shadow:0 0 12px var(--yellow)}.training-modal-panel form{padding:48px;display:grid;gap:18px}.training-type-switch{display:grid;grid-template-columns:1fr 1fr;margin-bottom:10px}.training-type-switch button{min-height:52px;border:1px solid rgba(255,255,255,.13);background:#080b0f;color:#7f8790;cursor:pointer}.training-type-switch button.active{border-color:var(--yellow);background:rgba(255,212,0,.08);color:var(--yellow)}.training-modal-panel label{display:grid;gap:9px;color:#7c858e;text-transform:uppercase;font:700 7px var(--font-geist-mono),monospace;letter-spacing:.13em}.training-modal-panel input,.training-modal-panel textarea{width:100%;border:1px solid rgba(255,255,255,.14);background:#020406;color:#fff;outline:none;padding:16px;text-transform:none;letter-spacing:0;font:500 14px var(--font-nunito),sans-serif}.training-modal-panel input{height:54px}.training-modal-panel input:focus,.training-modal-panel textarea:focus{border-color:var(--yellow)}.training-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.training-consent{display:flex!important;grid-template:none!important;align-items:start;gap:10px!important;text-transform:none!important;letter-spacing:0!important;line-height:1.45}.training-consent input{width:16px;height:16px;accent-color:var(--yellow)}.training-submit{min-height:58px;display:flex;align-items:center;justify-content:center;gap:14px;border:0;background:var(--yellow);color:#05070a;cursor:pointer;text-transform:uppercase;font:900 7px var(--font-geist-mono),monospace;letter-spacing:.13em}.training-modal-close{position:fixed;z-index:510;right:calc(50% - min(560px,48vw) + 16px);top:calc(4svh + 16px);width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.15);background:#05070a;color:#fff;cursor:pointer}

@keyframes training-dust{50%{transform:translateY(-22px);opacity:.2}}@keyframes lab-orbit{to{transform:rotate(360deg)}}@keyframes training-heartbeat{50%{transform:scale(1.45);opacity:.55}}@keyframes service-wave{from{transform:scale(.55);opacity:.8}to{transform:scale(1.5);opacity:0}}@keyframes radar-turn{to{transform:rotate(360deg)}}@keyframes scanner-sweep{0%{top:0}50%{top:100%}100%{top:0}}@keyframes training-modal-in{from{opacity:0}}

@media (max-width:900px){.training-lab-intro{grid-template-columns:1fr;padding-top:110px}.training-lian{height:620px}.training-choice{padding-bottom:70px}.training-section-heading,.scanner-head{grid-template-columns:1fr;gap:12px}.training-section-heading>p,.scanner-head p{grid-column:auto}.sales-lab,.service-theatre{grid-template-columns:1fr}.sales-chat-console,.service-person{border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.service-person{min-height:500px}.training-curriculum{grid-template-columns:1fr;gap:50px}.scanner-console{grid-template-columns:1fr}.scanner-radar{min-height:500px;border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.scanner-radar::before{width:min(64vw,420px)}.audit-areas>div{grid-template-columns:repeat(2,1fr)}.training-modal-panel{grid-template-columns:1fr}.training-modal-panel aside{min-height:auto}.training-modal-close{right:4vw;top:5svh}}

@media (max-width:700px){.training-door-journey{height:235svh}.training-hero-copy{left:20px;right:20px;top:18%;width:auto;transform:translateY(calc(var(--door-progress)*-35px));text-align:center}.training-hero-copy h1{font-size:clamp(54px,16vw,72px)}.training-hero-copy p{font-size:16px}.training-hero-copy a{width:100%;justify-content:center}.training-door{left:50%;top:70%;width:84vw}.training-door-status{left:20px;right:20px}.training-lab-intro{padding:95px 20px}.training-lian{height:520px}.training-lian>span{left:0;top:10%}.training-choice h2{font-size:53px}.training-choice a{grid-template-columns:26px 28px 1fr;gap:13px;padding:14px;min-height:92px}.training-choice a>small{display:none}.training-sales,.training-service,.training-scanner{padding:100px 20px}.training-section-heading{margin-bottom:55px}.training-section-heading h2,.scanner-head h2{font-size:55px}.sales-chat-console{min-height:570px;padding:0 14px 18px}.sales-console-top{margin-inline:-14px;padding:0 12px}.sales-console-top small{display:none}.sales-chat{padding:14px}.sales-chat p{width:91%;font-size:13px}.sales-analysis{padding:18px}.training-sales blockquote{margin:90px 0;font-size:38px}.training-curriculum{padding-top:55px}.training-curriculum h3{font-size:47px}.training-curriculum ul{grid-template-columns:1fr}.training-curriculum li:nth-child(n){padding:0;border-right:0}.service-theatre{min-height:auto}.service-person{min-height:390px}.service-context{padding:45px 20px}.service-context h3{font-size:56px}.service-transformation{display:flex;overflow-x:auto;margin:80px -20px 100px;padding-left:20px;scroll-snap-type:x mandatory}.service-transformation>span{flex:0 0 52vw;scroll-snap-align:start}.scanner-head{margin-bottom:50px}.scanner-search{grid-template-columns:22px 1fr}.scanner-search button{grid-column:1/-1;width:100%}.scanner-radar{min-height:390px}.scanner-results{padding:24px 14px}.scanner-results header small{display:none}.scanner-results>div{grid-template-columns:94px 1fr;gap:10px}.audit-areas>div{grid-template-columns:1fr 1fr}.audit-areas span{font-size:11px;padding:12px}.training-final{min-height:100svh;padding:90px 20px}.training-final-copy{padding:40px 18px}.training-final-copy h2{font-size:55px}.training-final-copy>div{flex-direction:column}.training-final-copy button{justify-content:center;width:100%}.training-modal{padding:0;place-items:stretch}.training-modal-panel{width:100%;max-height:100svh}.training-modal-panel aside{padding:75px 20px 35px}.training-modal-panel aside h2{font-size:48px}.training-modal-panel aside>div{margin-top:30px}.training-modal-panel form{padding:30px 20px 60px}.training-form-row{grid-template-columns:1fr}.training-modal-close{right:12px;top:12px}}

@media (prefers-reduced-motion:reduce){.training-page *{scroll-behavior:auto!important}.training-particles i,.lab-holograms i,.training-lian>i,.service-person::before,.service-person::after,.scanner-radar::before{animation:none!important}}

/* Desarrollo Web — Laboratorio de Universos Digitales */
.web-warp{height:350vh;background:#010204}.web-warp-sticky{position:sticky;top:0;height:100svh;overflow:hidden;isolation:isolate;background:#010204}.web-warp-video{position:absolute;z-index:-6;inset:-8%;width:116%;height:116%;object-fit:cover;opacity:var(--video);transform:scale(calc(1 + var(--warp)*.1));filter:brightness(.82) contrast(1.12) saturate(.82);will-change:transform,opacity}.web-warp-shade{position:absolute;z-index:-4;inset:0;background:radial-gradient(circle at 50% 50%,transparent 0 35%,rgba(0,0,0,.5) 72%,#010204 100%),linear-gradient(180deg,rgba(0,0,0,.2),transparent 50%,#010204)}.web-speed-lines{position:absolute;z-index:-2;inset:0;overflow:hidden;opacity:var(--rays);filter:blur(calc((1 - var(--warp))*.45px));will-change:opacity}.web-speed-lines::before{content:"";position:absolute;left:50%;top:50%;width:8px;aspect-ratio:1;border-radius:50%;background:#fff;box-shadow:0 0 calc(18px + var(--warp)*55px) calc(3px + var(--warp)*8px) rgba(255,255,255,.62);transform:translate(-50%,-50%) scale(calc(.35 + var(--warp)*.65));opacity:calc(var(--rays)*.76)}.web-speed-lines i{--angle:calc(var(--ray)*137.5deg);position:absolute;left:50%;top:50%;width:clamp(90px,calc(10vw + var(--ray-depth)*12vw),360px);height:calc(1px + var(--ray-depth)*1px);background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,.62) 34%,transparent 100%);transform-origin:left center;transform:rotate(var(--angle)) translateX(calc(1.5vw + var(--warp)*22vw + var(--ray-depth)*4vw)) scaleX(calc(.08 + var(--warp)*3.65));filter:drop-shadow(0 0 5px rgba(255,255,255,.9));opacity:calc(.32 + var(--ray-depth)*.68);will-change:transform}.web-speed-lines i:nth-child(4n){opacity:.32}.web-speed-lines i:nth-child(7n){background:linear-gradient(90deg,rgba(255,238,112,.95),rgba(255,223,0,.4),transparent)}.web-arrival-planet{position:absolute;z-index:-1;left:50%;top:50%;width:min(72vw,880px);height:min(86svh,920px);object-fit:contain;opacity:var(--arrival);transform:translate(-50%,-50%) scale(calc(.18 + var(--arrival)*.88));filter:drop-shadow(0 0 calc(var(--arrival)*36px) rgba(255,223,0,.24));will-change:transform,opacity}.web-warp-copy{position:absolute;z-index:5;left:50%;top:50%;width:min(1120px,88vw);text-align:center;opacity:var(--reveal);transform:translate(-50%,calc(-46% + (1 - var(--reveal))*40px));will-change:transform,opacity}.web-warp-copy>p{margin:0 0 24px;color:var(--yellow);font:800 8px var(--font-geist-mono),monospace;letter-spacing:.2em}.web-warp-copy h1{margin:0 auto;max-width:1080px;font-size:clamp(70px,8.6vw,132px);line-height:.84;letter-spacing:-.08em;text-wrap:balance;text-shadow:0 10px 45px #000}.web-warp-copy>strong{display:block;max-width:820px;margin:30px auto 0;color:#c9ced4;font-size:clamp(21px,2.35vw,34px);line-height:1.25;text-shadow:0 5px 24px #000}.web-warp-copy button{min-height:60px;margin-top:40px;display:inline-flex;align-items:center;gap:18px;padding:0 26px;border:0;background:var(--yellow);color:#05070a;cursor:pointer;text-transform:uppercase;font:900 8px var(--font-geist-mono),monospace;letter-spacing:.13em;transition:.35s}.web-warp-copy button:hover{transform:translateY(-4px);background:#fff16d}.web-warp-status{position:absolute;z-index:6;left:4vw;right:4vw;bottom:30px;display:flex;align-items:center;gap:20px;color:#7c848d;font:750 7px var(--font-geist-mono),monospace;letter-spacing:.15em}.web-warp-status>i{height:1px;flex:1;background:linear-gradient(90deg,var(--yellow),transparent);opacity:.55}
.web-tunnel{height:490vh;background:#010204}.web-tunnel-sticky{position:sticky;top:0;height:100svh;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 50% 50%,rgba(255,223,0,.045),transparent 19%),#010204}.web-tunnel-space{position:absolute;z-index:-2;inset:0;perspective:900px}.web-tunnel-core{position:absolute;left:50%;top:50%;width:3px;height:3px;border-radius:50%;background:#fff;box-shadow:0 0 28px 12px rgba(255,223,0,.42)}.web-tunnel-space>i{position:absolute;left:50%;top:50%;width:calc(6vw + var(--ring)*5.5vw);aspect-ratio:1;border:1px solid rgba(255,255,255,calc(.32 - var(--ring)*.018));border-radius:50%;transform:translate(-50%,-50%) scale(calc(.15 + var(--travel)*2.8));box-shadow:inset 0 0 26px rgba(255,223,0,.025);will-change:transform}.web-tunnel-space>i:nth-child(3n){border-color:rgba(255,223,0,.24)}.web-tunnel-space::before,.web-tunnel-space::after{content:"";position:absolute;left:50%;top:50%;width:1px;height:140%;background:linear-gradient(transparent,rgba(255,223,0,.44),transparent);transform-origin:center;transform:translate(-50%,-50%) rotate(52deg)}.web-tunnel-space::after{transform:translate(-50%,-50%) rotate(-52deg)}.web-screen-stream{position:absolute;z-index:2;top:0;bottom:0;width:31vw;opacity:calc(1 - var(--message));transition:opacity .15s}.web-screen-stream.is-left{left:2.5vw}.web-screen-stream.is-right{right:2.5vw}.web-screen-stream figure{position:absolute;top:50%;width:100%;margin:0;padding:6px;border:1px solid rgba(255,255,255,.19);background:rgba(8,11,15,.72);box-shadow:0 24px 70px #000;transform:translateY(var(--offset)) perspective(900px) rotateY(7deg) scale(calc(.82 + var(--travel)*.12));will-change:transform}.web-screen-stream.is-right figure{transform:translateY(var(--offset)) perspective(900px) rotateY(-7deg) scale(calc(.82 + var(--travel)*.12))}.web-screen-stream figure::before{content:"";position:absolute;z-index:2;inset:-1px;border:1px solid rgba(255,223,0,.12);box-shadow:0 0 25px rgba(255,223,0,.04);pointer-events:none}.web-screen-stream img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.web-matrix{position:absolute;z-index:3;inset:0;display:flex;justify-content:space-around;overflow:hidden;opacity:calc(var(--message)*.16);background:rgba(0,0,0,calc(var(--message)*.76))}.web-matrix b{width:8px;color:var(--yellow);font:600 7px/1.9 var(--font-geist-mono),monospace;word-break:break-all;writing-mode:vertical-rl;animation:web-code-fall calc(5s + var(--travel)*4s) linear infinite}.web-matrix b:nth-child(3n){animation-delay:-2.5s;opacity:.55}.web-terminal-copy{position:absolute;z-index:5;left:50%;top:50%;width:min(1050px,82vw);padding:clamp(25px,4vw,58px);border:1px solid rgba(255,223,0,calc(var(--message)*.5));background:rgba(1,3,5,calc(var(--message)*.78));box-shadow:0 0 90px rgba(0,0,0,.9);opacity:var(--message);transform:translate(-50%,-50%) scale(calc(.94 + var(--message)*.06));backdrop-filter:blur(14px)}.web-terminal-copy small{display:block;margin-bottom:25px;color:var(--yellow);font:750 7px var(--font-geist-mono),monospace;letter-spacing:.17em}.web-terminal-copy h2{min-height:2.25em;margin:0;color:#e8edf2;font:750 clamp(40px,5.5vw,86px)/.99 var(--font-geist-mono),monospace;letter-spacing:-.055em}.web-terminal-copy h2>span{display:block}.web-terminal-copy h2 i{display:inline-block;width:.055em;height:.9em;margin-left:.08em;background:var(--yellow);box-shadow:0 0 18px rgba(255,223,0,.7);animation:web-cursor .7s steps(1) infinite}.web-tunnel-status{position:absolute;z-index:7;left:4vw;right:4vw;bottom:28px;display:flex;align-items:center;gap:22px;color:#707983;font:750 7px var(--font-geist-mono),monospace;letter-spacing:.15em}.web-tunnel-status>i{height:1px;background:linear-gradient(90deg,var(--yellow),rgba(255,255,255,.12));box-shadow:0 0 9px rgba(255,223,0,.35)}
.web-page{overflow:clip;background:#020305;color:#f5f3ed}.web-page .site-header{z-index:100}.web-page p{margin-top:0}.web-stars{position:absolute;inset:0;opacity:.42;background-image:radial-gradient(circle at 12% 20%,#fff 0 1px,transparent 1.6px),radial-gradient(circle at 76% 14%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 64% 72%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 28% 83%,#fff 0 1px,transparent 1.5px);background-size:250px 250px,330px 330px,410px 410px,290px 290px;animation:web-stars-drift 28s linear infinite}.web-hero{position:relative;min-height:110svh;display:flex;align-items:center;overflow:hidden;isolation:isolate;padding:140px clamp(22px,7vw,110px) 90px;background:radial-gradient(circle at 74% 48%,rgba(255,223,0,.07),transparent 23%),linear-gradient(110deg,#070a0e,#010203 68%)}.web-hero::after{content:"";position:absolute;z-index:-1;left:0;right:0;bottom:0;height:30%;background:linear-gradient(transparent,#020305)}.web-hero-copy{position:relative;z-index:5;width:min(61vw,900px)}.web-hero-copy>p,.web-modules header>p,.web-art-copy>p,.web-reactor-sticky header>p,.web-process header>p,.web-hangar header>p,.web-hosting-copy>p,.web-final-copy>p{margin:0 0 22px;color:var(--yellow);text-transform:uppercase;font:800 8px var(--font-geist-mono),monospace;letter-spacing:.2em}.web-hero-copy h1{max-width:900px;margin:0;font-size:clamp(73px,9vw,145px);line-height:.82;letter-spacing:-.08em}.web-hero-copy>strong{max-width:690px;display:block;margin-top:28px;color:#c8ccd1;font-size:clamp(20px,2.1vw,31px);line-height:1.28;letter-spacing:-.025em}.web-hero-copy>a,.web-final-copy>a{min-height:58px;margin-top:38px;display:inline-flex;align-items:center;gap:18px;padding:0 24px;background:var(--yellow);color:#05070a;text-transform:uppercase;font:900 8px var(--font-geist-mono),monospace;letter-spacing:.13em;transition:.35s}.web-hero-copy>a:hover,.web-final-copy>a:hover{transform:translateY(-4px);background:#fff16d}.web-hero-hud{position:absolute;z-index:4;right:36px;top:110px;color:#737b84;font:750 7px var(--font-geist-mono),monospace;letter-spacing:.14em}.web-hero-hud i{width:7px;height:7px;display:inline-block;margin-left:10px;border-radius:50%;background:var(--yellow);box-shadow:0 0 12px var(--yellow);animation:web-pulse 1.8s ease-in-out infinite}
.web-planet{--planet-size:min(39vw,590px);position:absolute;z-index:2;right:3vw;top:50%;width:var(--planet-size);aspect-ratio:1;transform:translateY(-50%);border-radius:50%;background:radial-gradient(circle at 32% 27%,#1a1e24 0 3%,#080b0f 25%,#010203 71%);box-shadow:-35px 8px 75px #000,25px 0 70px rgba(255,223,0,calc(var(--built)*.19)),inset -45px -20px 75px #000;transition:box-shadow .4s}.web-planet::before{content:"";position:absolute;inset:-2%;border:1px solid rgba(255,255,255,.12);border-radius:50%;filter:blur(.2px)}.web-planet-atmosphere{position:absolute;inset:-5%;border-radius:50%;border:1px solid rgba(255,223,0,calc(.12 + var(--built)*.48));box-shadow:0 0 calc(12px + var(--built)*50px) rgba(255,223,0,calc(var(--built)*.2));opacity:calc(.3 + var(--built))}.web-planet-surface{position:absolute;inset:0;overflow:hidden;border-radius:50%;opacity:calc(.1 + var(--built)*.9);background:radial-gradient(circle at 60% 25%,rgba(255,223,0,.9) 0 1px,transparent 2px),radial-gradient(circle at 23% 58%,rgba(255,223,0,.7) 0 1px,transparent 2px),radial-gradient(circle at 70% 68%,rgba(255,223,0,.8) 0 1px,transparent 2px);background-size:28px 28px,39px 39px,51px 51px}.web-planet-surface::before{content:"";position:absolute;inset:13% 9%;border-radius:47% 53% 40% 60%;background:repeating-linear-gradient(22deg,transparent 0 18px,rgba(255,223,0,.13) 19px 20px),radial-gradient(ellipse at 30% 20%,rgba(255,255,255,.09),transparent 45%);filter:contrast(1.4)}.web-planet-surface i{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--yellow);box-shadow:0 0 12px var(--yellow);animation:web-city 2.5s ease-in-out infinite}.web-planet-surface i:nth-child(1){left:34%;top:21%}.web-planet-surface i:nth-child(2){left:61%;top:37%;animation-delay:-.5s}.web-planet-surface i:nth-child(3){left:23%;top:57%;animation-delay:-1s}.web-planet-surface i:nth-child(4){left:72%;top:64%;animation-delay:-1.5s}.web-planet-surface i:nth-child(5){left:49%;top:76%;animation-delay:-2s}.web-planet-grid{position:absolute;inset:2%;overflow:hidden;border-radius:50%;opacity:calc(.08 + var(--built)*.45);background-image:linear-gradient(rgba(255,223,0,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(255,223,0,.15) 1px,transparent 1px);background-size:36px 36px;mask-image:radial-gradient(circle,#000,transparent 73%)}.web-planet-scan{position:absolute;left:7%;right:7%;top:18%;height:2px;background:var(--yellow);box-shadow:0 0 20px var(--yellow);animation:web-scan 4s ease-in-out infinite}.web-orbit{position:absolute;inset:-14%;border:1px solid rgba(255,255,255,.12);border-radius:50%;transform:rotateX(66deg) rotateZ(12deg)}.web-orbit i{position:absolute;left:12%;top:18%;width:9px;height:9px;border-radius:50%;background:var(--yellow);box-shadow:0 0 18px var(--yellow);animation:web-satellite 7s linear infinite}.orbit-two{inset:-26%;transform:rotateX(70deg) rotateZ(-23deg);opacity:.45}.orbit-two i{animation-duration:11s;animation-direction:reverse}
.web-build{height:560vh;background:#05070a}.web-build-sticky{position:sticky;top:0;height:100svh;overflow:hidden}.web-build-copy{position:absolute;z-index:5;left:clamp(22px,5vw,80px);top:50%;width:min(30vw,430px);transform:translateY(-50%)}.web-build-copy p{margin:0 0 18px;color:var(--yellow);font:800 7px var(--font-geist-mono),monospace;letter-spacing:.17em}.web-build-copy h2{margin:0;font-size:clamp(54px,5.7vw,88px);line-height:.89;letter-spacing:-.07em}.web-build-copy span{max-width:380px;display:block;margin-top:25px;color:#969da6;font-size:17px;line-height:1.65}.web-blueprint{position:absolute;right:5vw;top:50%;width:min(59vw,980px);aspect-ratio:16/10;overflow:hidden;transform:translateY(-50%) perspective(1300px) rotateY(calc((.5 - var(--build-progress))*5deg));border:1px solid rgba(255,255,255,.18);background:#070a0e;color:#fff;box-shadow:0 35px 100px #000;transition:transform .4s}.web-blueprint::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:calc(1 - var(--build-progress));background-image:linear-gradient(rgba(255,255,255,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);background-size:42px 42px}.web-blueprint-toolbar{height:7%;display:flex;align-items:center;gap:7px;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.14);background:#0c1015}.web-blueprint-toolbar i{width:6px;height:6px;border-radius:50%;background:#555c65}.web-blueprint-toolbar span{margin-left:auto;color:#69717a;font:700 6px var(--font-geist-mono),monospace;letter-spacing:.13em}.web-blueprint-nav{height:9%;display:flex;align-items:center;gap:8%;padding:0 4%;border-bottom:1px solid rgba(255,255,255,.11)}.web-blueprint-nav b{width:12%;height:8px;background:rgba(255,223,0,calc(var(--build-progress)*.9));border:1px solid rgba(255,255,255,.35)}.web-blueprint-nav span{width:9%;height:5px;background:rgba(255,255,255,.18)}.web-blueprint-hero{height:56%;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;padding:5% 6%;background:radial-gradient(circle at 75% 50%,rgba(255,223,0,calc(var(--build-progress)*.11)),transparent 27%)}.web-blueprint-hero small{color:rgba(255,223,0,calc(.1 + var(--build-progress)));font:750 6px var(--font-geist-mono),monospace;letter-spacing:.15em}.web-blueprint-hero strong{display:block;margin-top:4%;font-size:clamp(21px,2.9vw,47px);line-height:.92;letter-spacing:-.06em}.web-blueprint-hero p{max-width:330px;margin:5% 0;color:rgba(255,255,255,calc(.25 + var(--build-progress)*.5));font-size:clamp(8px,.8vw,12px);line-height:1.6}.web-blueprint-hero button{border:1px solid rgba(255,255,255,.35);padding:9px 12px;background:rgba(255,223,0,calc(var(--build-progress)));color:var(--ink);font:800 5px var(--font-geist-mono),monospace;letter-spacing:.1em}.web-blueprint-hero .web-planet{--planet-size:min(24vw,350px);position:relative;right:auto;top:auto;transform:none}.web-blueprint-cards{height:28%;display:grid;grid-template-columns:repeat(3,1fr);gap:2%;padding:0 6% 5%}.web-blueprint-cards i{border:1px solid rgba(255,255,255,.15);background:linear-gradient(140deg,rgba(255,255,255,calc(.025 + var(--build-progress)*.07)),transparent)}.web-blueprint-lines{position:absolute;inset:7% 0 0;opacity:calc(1 - var(--build-progress));pointer-events:none}.web-blueprint-lines i{position:absolute;border:1px solid rgba(255,255,255,.48)}.web-blueprint-lines i:nth-child(1){left:5%;top:13%;width:89%;height:10%}.web-blueprint-lines i:nth-child(2){left:5%;top:27%;width:45%;height:45%}.web-blueprint-lines i:nth-child(3){right:5%;top:27%;width:41%;height:45%}.web-blueprint-lines i:nth-child(4){left:5%;bottom:5%;width:89%;height:18%}.web-build-status{position:absolute;z-index:6;left:5vw;right:5vw;bottom:35px;display:flex;align-items:center;gap:25px;color:#777f88;text-transform:uppercase;font:750 7px var(--font-geist-mono),monospace;letter-spacing:.15em}.web-build-status>i{height:1px;flex:1;background:linear-gradient(90deg,var(--yellow),rgba(255,255,255,.12));box-shadow:0 0 8px rgba(255,223,0,.45)}
.web-journey{height:430vh;background:#010204}.web-journey-sticky{position:sticky;top:0;height:100svh;overflow:hidden;perspective:900px}.web-journey header{position:absolute;z-index:8;left:clamp(22px,6vw,90px);top:12vh;max-width:660px}.web-journey header p{margin:0 0 17px;color:var(--yellow);font:800 7px var(--font-geist-mono),monospace;letter-spacing:.18em}.web-journey header h2{margin:0;font-size:clamp(47px,6vw,88px);line-height:.9;letter-spacing:-.07em}.web-journey header span{max-width:520px;display:block;margin-top:18px;color:#9098a1;line-height:1.6}.web-corridor{position:absolute;inset:0;transform:translateZ(calc(var(--journey)*310px));background:repeating-linear-gradient(90deg,transparent 0 10%,rgba(255,255,255,.035) 10.1%,transparent 10.3%),linear-gradient(90deg,#030507 0 12%,transparent 32% 68%,#030507 88%),radial-gradient(ellipse at 50% 70%,rgba(255,223,0,.08),transparent 38%)}.web-corridor::before,.web-corridor::after{content:"";position:absolute;left:13%;right:13%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);box-shadow:0 0 18px rgba(255,255,255,.08)}.web-corridor::before{top:23%}.web-corridor::after{bottom:14%}.web-corridor-core{position:absolute;left:50%;bottom:13%;width:2px;height:57%;background:linear-gradient(transparent,var(--yellow));box-shadow:0 0 13px var(--yellow)}.web-corridor article{--depth:calc((var(--station) - var(--journey)*5.5)*190px);position:absolute;z-index:3;left:50%;top:65%;width:min(46vw,650px);min-height:135px;padding:25px 30px;transform:translate(-50%,-50%) translateZ(var(--depth)) scale(calc(.25 + (var(--station) + 1)*.07));border:1px solid rgba(255,255,255,.14);background:rgba(6,9,13,.76);backdrop-filter:blur(12px);opacity:.22;transition:opacity .5s,border-color .5s,box-shadow .5s}.web-corridor article.is-active{opacity:1;border-color:rgba(255,223,0,.5);box-shadow:0 20px 70px #000,0 0 35px rgba(255,223,0,.07)}.web-corridor article small{color:var(--yellow);font:750 6px var(--font-geist-mono),monospace;letter-spacing:.15em}.web-corridor article strong{display:block;margin-top:14px;font-size:32px;letter-spacing:-.04em}.web-corridor article i{position:absolute;right:25px;top:25px;width:8px;height:8px;border-radius:50%;background:var(--yellow);box-shadow:0 0 14px var(--yellow)}.web-journey-counter{position:absolute;z-index:8;right:5vw;bottom:5vh;font:900 38px var(--font-geist-mono),monospace}.web-journey-counter span{color:#565e67;font-size:11px}
.web-modules{padding:135px clamp(22px,6vw,92px) 160px;background:radial-gradient(circle at 90% 12%,rgba(255,223,0,.08),transparent 20%),#05070a}.web-modules header{display:grid;grid-template-columns:1.2fr .8fr;gap:5vw;align-items:end;margin-bottom:85px}.web-modules header>p{grid-column:1/-1;margin-bottom:0}.web-modules header h2{max-width:850px;margin:0;font-size:clamp(56px,7vw,104px);line-height:.9;letter-spacing:-.075em}.web-modules header>span{max-width:510px;color:#9299a2;font-size:17px;line-height:1.7}.web-modules>div{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.web-module-card{position:relative;min-height:370px;padding:25px;border:1px solid rgba(255,255,255,.13);background:radial-gradient(circle at var(--mx) var(--my),rgba(255,223,0,.12),transparent 25%),linear-gradient(145deg,#0d1116,#05070a);transition:transform .18s,box-shadow .3s,border-color .3s}.web-module-card:hover{z-index:2;border-color:rgba(255,223,0,.55);box-shadow:0 35px 80px #000}.web-module-card>div{display:flex;justify-content:space-between;align-items:center}.web-module-card svg{font-size:25px;color:var(--yellow)}.web-module-card small{color:#676f78;font:750 7px var(--font-geist-mono),monospace}.web-module-card h3{margin:125px 0 16px;font-size:27px;letter-spacing:-.045em}.web-module-card p{margin:0;color:#9097a0;font-size:13px;line-height:1.65}.web-module-card>span{position:absolute;left:25px;bottom:23px;display:flex;align-items:center;gap:9px;color:#777f88;font:750 6px var(--font-geist-mono),monospace;letter-spacing:.11em}
.web-art-direction{min-height:100svh;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:7vw;padding:120px clamp(22px,6vw,92px);background:#ecebe5;color:#07090c}.web-art-screen{position:relative;aspect-ratio:1.18;overflow:hidden;padding:14px;background:#0a0c0f;box-shadow:0 35px 80px rgba(0,0,0,.24)}.web-art-images{height:64%;display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:1fr 1fr;gap:6px}.web-art-images img{width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(1.06)}.web-art-images img:first-child{grid-row:1/3}.web-art-type{height:36%;display:flex;align-items:flex-end;justify-content:space-between;padding:18px 20px;color:#fff}.web-art-type span{font-size:80px;font-weight:900;color:var(--yellow);line-height:.7}.web-art-type strong{text-align:right;font-size:26px;line-height:.85;letter-spacing:-.05em}.web-art-palette{position:absolute;left:18px;top:18px;display:flex;gap:5px}.web-art-palette i{width:28px;height:28px;border:1px solid rgba(255,255,255,.4);background:#05070a}.web-art-palette i:nth-child(2){background:var(--yellow)}.web-art-palette i:nth-child(3){background:#f4f6f8}.web-art-palette i:nth-child(4){background:#46505a}.web-art-copy h2{max-width:660px;margin:0;font-size:clamp(56px,7vw,103px);line-height:.88;letter-spacing:-.075em}.web-art-copy>strong{max-width:590px;display:block;margin-top:24px;font-size:25px;line-height:1.25}.web-art-copy ul{margin:50px 0 0;padding:0;list-style:none;border-top:1px solid rgba(0,0,0,.2)}.web-art-copy li{padding:18px 0;border-bottom:1px solid rgba(0,0,0,.2);font-weight:750}
.web-reactor-section{height:620vh;background:#020305}.web-reactor-sticky{position:sticky;top:0;height:100svh;overflow:hidden;padding:10vh clamp(22px,6vw,92px)}.web-reactor-sticky header{position:absolute;left:6vw;top:10vh;width:min(44vw,650px)}.web-reactor-sticky header h2{margin:0;font-size:clamp(48px,5.6vw,84px);line-height:.9;letter-spacing:-.07em}.web-reactor{position:absolute;left:28%;top:62%;width:min(35vw,520px);aspect-ratio:1;transform:translate(-50%,-50%) rotate(calc(var(--reactor)*70deg));border:1px solid rgba(255,255,255,.15);border-radius:50%;box-shadow:0 0 calc(20px + var(--reactor)*70px) rgba(255,223,0,calc(var(--reactor)*.15));transition:transform .4s}.web-reactor::before,.web-reactor::after,.web-reactor>i{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.12)}.web-reactor::before{inset:9%}.web-reactor::after{inset:21%;border-style:dashed;border-color:rgba(255,223,0,.45)}.web-reactor>i:nth-of-type(1){inset:31%}.web-reactor>i:nth-of-type(2){inset:4%;border-left-color:var(--yellow);border-right-color:var(--yellow)}.web-reactor>i:nth-of-type(3){inset:15%;border-top-color:var(--yellow);border-bottom-color:var(--yellow)}.web-reactor-core{position:absolute;z-index:3;inset:34%;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:radial-gradient(circle,#2a2800,#06080b 65%);box-shadow:0 0 calc(15px + var(--reactor)*45px) rgba(255,223,0,.35)}.web-reactor-core svg{color:var(--yellow)}.web-reactor-core strong{font-size:clamp(28px,3.4vw,52px);line-height:1}.web-reactor-core span{color:#9aa1a9;text-align:center;font:700 5px var(--font-geist-mono),monospace;letter-spacing:.13em}.web-system-list{position:absolute;right:6vw;top:50%;width:min(45vw,680px);transform:translateY(-50%);border-top:1px solid rgba(255,255,255,.14)}.web-system-list>div{min-height:47px;display:grid;grid-template-columns:15px 1fr auto;align-items:center;gap:13px;border-bottom:1px solid rgba(255,255,255,.12);color:#5f6871;transition:.45s}.web-system-list i{width:7px;height:7px;border-radius:50%;background:#343a41}.web-system-list span{font-weight:750}.web-system-list b{font:750 6px var(--font-geist-mono),monospace;letter-spacing:.12em}.web-system-list .is-online{color:#f4f2ec}.web-system-list .is-online i{background:var(--yellow);box-shadow:0 0 13px var(--yellow)}.web-system-list .is-online b{color:var(--yellow)}
.web-process{padding:135px clamp(22px,8vw,125px) 180px;background:#ecebe5;color:#07090c}.web-process header{display:grid;grid-template-columns:.42fr 1.58fr;gap:5vw;margin-bottom:90px}.web-process header h2{max-width:980px;margin:0;font-size:clamp(58px,7vw,106px);line-height:.9;letter-spacing:-.075em}.web-process-track{position:relative;width:min(920px,100%);margin:0 auto;padding-left:90px}.web-process-track>i{position:absolute;z-index:2;left:41px;top:0;width:2px;background:var(--yellow);box-shadow:0 0 11px rgba(255,223,0,.45);transition:height .3s}.web-process-track::before{content:"";position:absolute;left:41px;top:0;bottom:0;width:1px;background:rgba(0,0,0,.22)}.web-process-track article{position:relative;min-height:116px;display:grid;grid-template-columns:90px 1fr;align-items:center;border-bottom:1px solid rgba(0,0,0,.16);opacity:.35;transition:.5s}.web-process-track article.is-active{opacity:1}.web-process-track article>span{position:absolute;left:-53px;width:9px;height:9px;border:2px solid #ecebe5;border-radius:50%;background:#888}.web-process-track article.is-active>span{background:var(--yellow);box-shadow:0 0 12px #bda800}.web-process-track small{font:800 8px var(--font-geist-mono),monospace}.web-process-track strong{font-size:clamp(27px,3vw,42px);letter-spacing:-.045em}
.web-hangar{padding:145px clamp(22px,6vw,92px) 175px;background:radial-gradient(circle at 50% 20%,rgba(255,223,0,.07),transparent 28%),#030507}.web-hangar header{max-width:1050px;margin-bottom:110px}.web-hangar header h2{margin:0;font-size:clamp(61px,8vw,120px);line-height:.86;letter-spacing:-.08em}.web-hangar header>span{max-width:640px;display:block;margin-top:30px;color:#9299a2;font-size:17px;line-height:1.7}.web-portals{display:grid;grid-template-columns:repeat(3,1fr);gap:2vw}.web-portals article{text-align:center}.web-portals article>a{display:block}.web-portal-ring{position:relative;width:100%;aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:radial-gradient(circle,rgba(255,223,0,.055),transparent 57%);transition:.55s}.web-portal-ring>i{position:absolute;inset:5%;border:1px solid rgba(255,223,0,.45);border-radius:50%;border-left-color:transparent;animation:web-ring 11s linear infinite}.web-portal-ring>i:nth-child(2){inset:1%;border-color:rgba(255,255,255,.13);border-right-color:var(--yellow);animation-duration:17s;animation-direction:reverse}.web-live-preview{position:absolute;inset:12%;overflow:hidden;border-radius:50%;background:#090c10;box-shadow:inset 0 0 50px #000,0 0 35px rgba(255,223,0,.06);transition:.55s}.web-live-preview img{width:100%;height:100%;object-fit:cover;opacity:.66;filter:saturate(.78);transition:transform 1s,filter .55s,opacity .55s}.web-preview-interface{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:15%;background:linear-gradient(transparent,rgba(0,0,0,.72));text-align:center}.web-preview-interface small{color:var(--yellow);font:750 6px var(--font-geist-mono),monospace;letter-spacing:.14em}.web-preview-interface strong{margin-top:10px;font-size:clamp(19px,2.2vw,34px);line-height:.95;letter-spacing:-.05em}.web-preview-interface span{margin-top:9px;color:#c4c8cc;font-size:10px}.web-preview-interface b{position:absolute;bottom:12%;padding:8px 10px;border:1px solid rgba(255,255,255,.28);font:700 5px var(--font-geist-mono),monospace;letter-spacing:.11em}.web-portals article:hover .web-portal-ring{transform:translateY(-9px);border-color:rgba(255,223,0,.48);box-shadow:0 25px 75px #000}.web-portals article:hover .web-live-preview{inset:8%;box-shadow:0 0 55px rgba(255,223,0,.18)}.web-portals article:hover img{transform:scale(1.12);opacity:.86;filter:saturate(1)}.web-portals article> a>p{margin:30px 0 10px;color:var(--yellow);font:750 6px var(--font-geist-mono),monospace;letter-spacing:.14em}.web-portals h3{margin:0;font-size:26px}.web-portals article>a>span{margin-top:13px;display:inline-flex;align-items:center;gap:9px;color:#838b94;font:750 6px var(--font-geist-mono),monospace;letter-spacing:.1em}
.web-hosting{min-height:110svh;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:8vw;padding:120px clamp(22px,7vw,110px);background:#eae9e3;color:#07090c}.web-server-station{position:relative;width:min(42vw,620px);aspect-ratio:1;border:1px solid rgba(0,0,0,.16);border-radius:50%;background:radial-gradient(circle,#14181d 0 18%,#05070a 19% 51%,transparent 52%),repeating-conic-gradient(from 0deg,rgba(0,0,0,.09) 0 4deg,transparent 4deg 14deg);box-shadow:0 35px 80px rgba(0,0,0,.2);animation:web-station-float 6s ease-in-out infinite}.web-server-core{position:absolute;z-index:3;inset:35%;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:#090c10;color:#fff;text-align:center;box-shadow:0 0 50px rgba(255,223,0,.2)}.web-server-core svg{margin-bottom:12px;color:var(--yellow);font-size:30px}.web-server-core span{font:800 6px var(--font-geist-mono),monospace;letter-spacing:.14em}.web-server-station>i{--angle:calc(var(--server)*15deg);position:absolute;left:50%;top:50%;width:13px;height:31px;border:1px solid rgba(255,255,255,.24);background:#111820;box-shadow:inset 0 2px var(--yellow);transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-12.2vw);transform-origin:center}.web-hosting-copy h2{max-width:720px;margin:0;font-size:clamp(59px,7vw,105px);line-height:.88;letter-spacing:-.075em}.web-hosting-copy>span{max-width:600px;display:block;margin-top:28px;color:#555c63;font-size:17px;line-height:1.7}.web-hosting-copy>div{display:grid;grid-template-columns:1fr 1fr;margin-top:55px;border-top:1px solid rgba(0,0,0,.18)}.web-hosting-copy b{padding:18px 0;border-bottom:1px solid rgba(0,0,0,.18)}.web-hosting-copy b:nth-child(odd){border-right:1px solid rgba(0,0,0,.18)}.web-hosting-copy b:nth-child(even){padding-left:18px}
.web-final{position:relative;min-height:120svh;display:flex;align-items:center;overflow:hidden;padding:140px clamp(22px,7vw,110px);background:#010204}.web-final-space{position:absolute;inset:0}.web-final-space .web-planet{--planet-size:min(54vw,820px);right:-7vw}.web-planet.is-final{background:radial-gradient(circle at 32% 27%,#29303a,#080b0f 38%,#010203 72%)}.web-ship{position:absolute;right:50%;top:26%;width:150px;height:55px;transform:rotate(-8deg);border:1px solid rgba(255,255,255,.25);border-radius:70% 22% 55% 30%;background:linear-gradient(150deg,#4c535a,#07090c 62%);box-shadow:0 16px 30px #000}.web-ship::before{content:"";position:absolute;right:-28px;top:18px;width:40px;height:10px;background:linear-gradient(90deg,var(--yellow),transparent);filter:blur(2px)}.web-ship i{position:absolute;left:28px;top:15px;width:21px;height:15px;border-radius:50%;background:#0a0d10;border:1px solid #6a7178}.web-ship i:nth-child(2){left:55px}.web-ship span{position:absolute;left:28px;bottom:8px;color:var(--yellow);font:800 5px var(--font-geist-mono),monospace;letter-spacing:.14em}.web-final-copy{position:relative;z-index:4;width:min(59vw,880px)}.web-final-copy h2{margin:0;font-size:clamp(68px,8.5vw,132px);line-height:.84;letter-spacing:-.08em}.web-final-copy>span{max-width:690px;display:block;margin-top:30px;color:#b4bac0;font-size:18px;line-height:1.7}
@keyframes web-stars-drift{to{transform:translateY(110px)}}@keyframes web-scan{50%{transform:translateY(300px);opacity:.3}}@keyframes web-pulse{50%{opacity:.3;transform:scale(.7)}}@keyframes web-city{50%{opacity:.25}}@keyframes web-satellite{to{transform:rotate(360deg)}}@keyframes web-ring{to{transform:rotate(360deg)}}@keyframes web-station-float{50%{transform:translateY(-15px)}}

.web-live-preview img{object-fit:contain;padding:14%;background:#05070a;opacity:.88;filter:none}.web-portals article:hover img{transform:scale(1.045);opacity:1;filter:none}
@keyframes web-code-fall{from{transform:translateY(-30%)}to{transform:translateY(30%)}}@keyframes web-cursor{50%{opacity:0}}

@media(max-width:700px){
 .web-warp{height:285svh}.web-warp-video{inset:-4%;width:108%;height:108%}.web-arrival-planet{width:112vw;height:76svh}.web-warp-copy{top:52%;width:calc(100vw - 36px)}.web-warp-copy>p{font-size:6px;line-height:1.6}.web-warp-copy h1{font-size:clamp(54px,15.5vw,73px);line-height:.87}.web-warp-copy>strong{max-width:92%;margin-top:20px;font-size:17px}.web-warp-copy button{width:100%;justify-content:center;margin-top:28px}.web-warp-status{left:18px;right:18px;bottom:17px}.web-speed-lines i{width:calc(25vw + var(--ray-depth)*22vw)}
 .web-tunnel{height:390svh}.web-screen-stream{width:34vw}.web-screen-stream.is-left{left:2vw}.web-screen-stream.is-right{right:2vw}.web-screen-stream figure{padding:3px}.web-screen-stream img{aspect-ratio:4/5}.web-terminal-copy{width:calc(100vw - 28px);padding:26px 20px}.web-terminal-copy small{font-size:5.5px;line-height:1.6}.web-terminal-copy h2{font-size:clamp(31px,9vw,44px);line-height:1.05;letter-spacing:-.06em}.web-tunnel-status{left:18px;right:18px;bottom:17px}.web-matrix b:nth-child(even){display:none}
 .web-hero{min-height:100svh;align-items:flex-end;padding:130px 20px 72px}.web-hero-copy{width:100%}.web-hero-copy h1{font-size:clamp(60px,17vw,79px)}.web-hero-copy>strong{max-width:85%;font-size:18px}.web-hero-copy>a,.web-final-copy>a{width:100%;justify-content:center}.web-hero>.web-planet{--planet-size:78vw;right:-32vw;top:28%;opacity:.58}.web-hero-hud{display:none}
 .web-build{height:420svh}.web-build-copy{left:20px;right:20px;top:95px;width:auto;transform:none}.web-build-copy h2{font-size:46px}.web-build-copy span{margin-top:14px;font-size:13px}.web-blueprint{left:20px;right:20px;top:42%;width:auto;aspect-ratio:1/1.12;transform:none}.web-blueprint-hero{height:60%;grid-template-columns:1fr;padding:7%}.web-blueprint-hero strong{font-size:27px}.web-blueprint-hero p{max-width:58%;font-size:8px}.web-blueprint-hero .web-planet{--planet-size:46vw;position:absolute;right:-4%;top:34%}.web-blueprint-cards{height:24%;padding:0 5% 5%}.web-build-status{left:20px;right:20px;bottom:22px}
 .web-journey{height:330svh}.web-journey header{left:20px;right:20px;top:95px}.web-journey header h2{font-size:47px}.web-journey header span{max-width:88%;font-size:13px}.web-corridor article{width:82vw;min-height:105px;padding:19px;top:69%}.web-corridor article strong{font-size:26px}.web-journey-counter{right:20px;bottom:22px}
 .web-modules{padding:100px 20px 120px}.web-modules header{grid-template-columns:1fr;gap:20px;margin-bottom:55px}.web-modules header h2{font-size:58px}.web-modules header>span{font-size:14px}.web-modules>div{display:flex;overflow-x:auto;margin-right:-20px;padding:0 20px 28px 0;scroll-snap-type:x mandatory}.web-module-card{flex:0 0 79vw;min-height:350px;scroll-snap-align:start}.web-module-card h3{margin-top:105px}
 .web-art-direction{grid-template-columns:1fr;gap:58px;padding:100px 20px}.web-art-screen{order:2}.web-art-copy h2{font-size:58px}.web-art-copy>strong{font-size:19px}.web-art-copy ul{margin-top:35px}.web-art-type span{font-size:57px}.web-art-type strong{font-size:20px}
 .web-reactor-section{height:440svh}.web-reactor-sticky{padding:90px 20px 25px}.web-reactor-sticky header{left:20px;right:20px;top:85px;width:auto}.web-reactor-sticky header h2{font-size:43px}.web-reactor{left:50%;top:45%;width:67vw}.web-system-list{left:20px;right:20px;top:auto;bottom:18px;width:auto;transform:none}.web-system-list>div{min-height:34px;font-size:11px}.web-system-list>div:nth-child(-n+3){display:none}.web-system-list b{font-size:5px}
 .web-process{padding:100px 20px 120px}.web-process header{grid-template-columns:1fr;gap:20px;margin-bottom:60px}.web-process header h2{font-size:57px}.web-process-track{padding-left:52px}.web-process-track::before,.web-process-track>i{left:18px}.web-process-track article{min-height:88px;grid-template-columns:48px 1fr}.web-process-track article>span{left:-38px}.web-process-track strong{font-size:26px}
 .web-hangar{padding:100px 20px 120px}.web-hangar header{margin-bottom:65px}.web-hangar header h2{font-size:61px}.web-hangar header>span{font-size:14px}.web-portals{display:flex;overflow-x:auto;margin-right:-20px;padding:0 20px 30px 0;scroll-snap-type:x mandatory}.web-portals article{flex:0 0 84vw;scroll-snap-align:center}.web-preview-interface strong{font-size:27px}
 .web-hosting{min-height:unset;grid-template-columns:1fr;gap:65px;padding:100px 20px}.web-server-station{width:84vw;margin:0 auto}.web-server-station>i{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-24vw)}.web-hosting-copy h2{font-size:58px}.web-hosting-copy>span{font-size:14px}.web-hosting-copy>div{grid-template-columns:1fr}.web-hosting-copy b,.web-hosting-copy b:nth-child(odd),.web-hosting-copy b:nth-child(even){padding:16px 0;border-right:0}
 .web-final{min-height:980px;align-items:flex-end;padding:110px 20px 80px}.web-final-space .web-planet{--planet-size:90vw;right:-28vw;top:30%}.web-ship{right:48%;top:22%;transform:scale(.72) rotate(-8deg)}.web-final-copy{width:100%}.web-final-copy h2{font-size:61px}.web-final-copy>span{font-size:15px}
}
@media(prefers-reduced-motion:reduce){.web-stars,.web-planet-scan,.web-orbit i,.web-portal-ring>i,.web-server-station,.web-matrix b,.web-terminal-copy h2 i{animation:none}.web-warp-video{display:none}.web-speed-lines{display:none}.web-blueprint,.web-corridor,.web-reactor{transition:none}}

/* Diagnóstico fotográfico */
.photo-plan-button { min-height: 60px; display: inline-flex; align-items: center; gap: 14px; padding: 0 25px; border: 0; background: var(--yellow); color: #05070a; cursor: pointer; text-transform: uppercase; font: 900 8px var(--font-geist-mono),monospace; letter-spacing: .13em; transition: transform .3s,background .3s; }
.photo-plan-button:hover { transform: translateY(-4px); background: #fff16d; }
.photo-brief-modal { position: fixed; z-index: 1200; inset: 0; overflow: auto; padding: 5vh 4vw; background: rgba(1,2,4,.92); backdrop-filter: blur(24px); animation: photo-brief-in .35s ease both; }
@keyframes photo-brief-in { from { opacity: 0; } }
.photo-brief-close { position: fixed; z-index: 2; right: 22px; top: 22px; width: 48px; height: 48px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; background: rgba(6,8,11,.8); color: #fff; cursor: pointer; }
.photo-brief-shell { width: min(1180px,100%); min-height: 760px; margin: 0 auto; display: grid; grid-template-columns: .72fr 1.28fr; background: #eeece5; color: #07090c; box-shadow: 0 30px 100px #000; }
.photo-brief-shell > aside { position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: center; padding: 70px 55px; background: radial-gradient(circle at 22% 30%,rgba(255,223,0,.13),transparent 32%),#07090c; color: #fff; }
.photo-brief-shell > aside::before { content: ""; position: absolute; inset: 0; opacity: .22; background-image: linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px); background-size: 52px 52px; mask-image: linear-gradient(#000,transparent); }
.photo-brief-shell > aside > * { position: relative; }
.photo-brief-shell > aside p { margin: 0 0 24px; color: var(--yellow); font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .19em; }
.photo-brief-shell > aside h2 { margin: 0 0 28px; font-size: clamp(48px,5vw,74px); line-height: .92; letter-spacing: -.065em; }
.photo-brief-shell > aside > span { color: #9da3ab; line-height: 1.7; }
.photo-brief-shell > aside > div { margin-top: 80px; color: #777f87; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.photo-brief-shell > aside i { width: 7px; height: 7px; display: inline-block; margin-right: 9px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 12px var(--yellow); }
.photo-brief-form { padding: 58px clamp(26px,5vw,75px) 70px; }
.photo-brief-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 16px; }
.photo-brief-grid .wide { grid-column: 1/-1; }
.photo-brief-grid.compact { margin-top: 22px; }
.photo-brief-form label,.photo-notes { display: flex; flex-direction: column; gap: 9px; color: #444a50; font-size: 12px; font-weight: 800; }
.photo-brief-form input,.photo-brief-form textarea { width: 100%; border: 1px solid rgba(5,7,10,.18); border-radius: 0; padding: 13px 14px; outline: none; background: rgba(255,255,255,.58); color: #05070a; font: 600 14px var(--font-nunito),sans-serif; transition: border-color .25s,box-shadow .25s; }
.photo-brief-form input:focus,.photo-brief-form textarea:focus { border-color: #9e8b00; box-shadow: 0 0 0 3px rgba(255,223,0,.15); }
.photo-brief-form textarea { resize: vertical; }
.photo-brief-form fieldset { margin: 32px 0 0; padding: 0; border: 0; }
.photo-brief-form legend { margin-bottom: 14px; color: #777d83; text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.photo-type-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; }
.photo-type-grid label { position: relative; min-height: 105px; }
.photo-type-grid input,.photo-event-grid input { position: absolute; opacity: 0; pointer-events: none; }
.photo-type-grid span { height: 100%; display: flex; flex-direction: column; justify-content: center; padding: 18px; border: 1px solid rgba(5,7,10,.17); background: rgba(255,255,255,.34); color: #757b80; font-size: 11px; line-height: 1.45; cursor: pointer; transition: .25s; }
.photo-type-grid strong { margin-bottom: 6px; color: #080a0d; font-size: 17px; }
.photo-type-grid input:checked + span { border-color: #8e7d00; background: var(--yellow); color: #383600; box-shadow: 0 12px 30px rgba(142,125,0,.18); }
.photo-route-fields { padding-top: 28px !important; border-top: 1px solid rgba(5,7,10,.15) !important; animation: photo-route-in .4s cubic-bezier(.2,.78,.2,1) both; }
@keyframes photo-route-in { from { opacity: 0; transform: translateY(12px); } }
.photo-event-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 8px; }
.photo-event-grid label { position: relative; }
.photo-event-grid span { min-height: 58px; display: grid; place-items: center; padding: 8px; border: 1px solid rgba(5,7,10,.17); color: #555b61; text-align: center; cursor: pointer; font-size: 11px; }
.photo-event-grid input:checked + span { border-color: #8e7d00; background: var(--yellow); color: #05070a; font-weight: 900; }
.photo-notes { margin-top: 24px; }
.photo-consent { margin-top: 26px; display: grid !important; grid-template-columns: 18px 1fr; align-items: start; gap: 11px !important; font-weight: 600 !important; line-height: 1.5; }
.photo-consent input { width: 17px; height: 17px; padding: 0; accent-color: #9e8b00; }
.photo-consent a { text-decoration: underline; }
.photo-brief-error { margin: 14px 0 0; color: #a02626; font-weight: 800; }
.photo-brief-submit,.photo-brief-success button { width: 100%; min-height: 58px; margin-top: 26px; display: flex; align-items: center; justify-content: space-between; padding: 0 20px; border: 0; background: #080a0d; color: #fff; cursor: pointer; text-transform: uppercase; font: 900 8px var(--font-geist-mono),monospace; letter-spacing: .12em; }
.photo-brief-submit:disabled { opacity: .58; cursor: wait; }
.photo-brief-success { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 70px; }
.photo-brief-success > svg { width: 46px; height: 46px; padding: 14px; box-sizing: content-box; border-radius: 50%; background: var(--yellow); }
.photo-brief-success p { margin: 34px 0 15px; color: #817200; font: 850 8px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.photo-brief-success h3 { margin: 0 0 20px; font-size: 56px; letter-spacing: -.055em; }
.photo-brief-success span { max-width: 500px; color: #656a70; line-height: 1.7; }

/* Diseño e Ilustración — laboratorio creativo */
.design-page { overflow: clip; background: #030507; color: #f5f3ed; }
.design-page .site-header { z-index: 90; }
.design-hero { position: relative; min-height: 108svh; display: flex; align-items: center; overflow: hidden; isolation: isolate; padding: 130px clamp(22px,7vw,110px) 90px; background: radial-gradient(circle at 72% 47%,rgba(255,223,0,.12),transparent 22%),linear-gradient(120deg,#0c1015,#020305 69%); }
.design-hero-grid,.design-grid { position: absolute; z-index: -2; inset: 0; opacity: .22; background-image: linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px); background-size: 72px 72px; mask-image: radial-gradient(circle at 70% 50%,#000,transparent 69%); }
.design-hero-copy { position: relative; z-index: 3; width: min(57vw,820px); }
.design-hero-copy > p,.design-formats header > p,.design-manifesto > p,.design-ai-copy > p,.design-cta > p { margin: 0 0 24px; color: var(--yellow); text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .2em; }
.design-hero-copy h1 { margin: 0; max-width: 930px; font-size: clamp(72px,8.7vw,140px); line-height: .82; letter-spacing: -.078em; }
.design-hero-copy > span { max-width: 610px; display: block; margin-top: 32px; color: #a4aab2; font-size: clamp(17px,1.55vw,22px); line-height: 1.65; }
.design-hero-copy > a,.design-cta > a { min-height: 58px; margin-top: 35px; display: inline-flex; align-items: center; gap: 17px; padding: 0 23px; background: var(--yellow); color: #05070a; text-transform: uppercase; font: 900 8px var(--font-geist-mono),monospace; letter-spacing: .13em; transition: transform .3s,background .3s; }
.design-hero-copy > a:hover,.design-cta > a:hover { transform: translateY(-4px); background: #fff16d; }
.design-hero-pen { position: absolute; right: 6vw; top: 50%; width: min(35vw,500px); aspect-ratio: 1; transform: translateY(-50%); display: grid; place-items: center; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; box-shadow: 0 0 0 7vw rgba(255,255,255,.015),0 0 90px rgba(0,0,0,.8); }
.design-hero-pen > img { width: 78%; height: 88%; object-fit: contain; mix-blend-mode: screen; filter: drop-shadow(0 26px 32px #000); transform: rotate(-9deg); animation: design-pen-float 5s ease-in-out infinite; }
.design-hero-pen > i { position: absolute; width: 60%; height: 2px; background: linear-gradient(90deg,transparent,var(--yellow),transparent); transform: rotate(-23deg) translateY(63px); box-shadow: 0 0 18px var(--yellow); animation: design-trace 2.7s ease-in-out infinite alternate; }
.design-hero-pen > i:nth-of-type(2) { width: 38%; transform: rotate(17deg) translate(-20px,75px); opacity: .5; animation-delay: -.8s; }
.design-hero-pen span { position: absolute; right: 7%; bottom: 15%; color: #777e87; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.design-hero-status { position: absolute; right: 34px; top: 110px; color: #737b84; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.design-hero-status i { width: 7px; height: 7px; display: inline-block; margin-right: 9px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 12px var(--yellow); }
@keyframes design-pen-float { 50% { transform: rotate(-6deg) translateY(-15px); } }
@keyframes design-trace { to { opacity: .2; transform: rotate(-23deg) translate(22px,63px) scaleX(.75); } }

.design-sequence { position: relative; height: 510vh; background: #05070a; }
.design-sequence-sticky { position: sticky; top: 0; height: 100svh; overflow: hidden; isolation: isolate; }
.design-sequence-copy { position: absolute; z-index: 3; left: clamp(22px,5vw,80px); top: 50%; width: min(31vw,460px); transform: translateY(-50%); }
.design-sequence-copy p { margin: 0 0 20px; color: var(--yellow); font: 800 7px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.design-sequence-copy h2 { margin: 0; font-size: clamp(55px,6vw,92px); line-height: .87; letter-spacing: -.07em; }
.design-sequence-copy > span { display: block; margin-top: 27px; color: #9aa1a9; line-height: 1.65; }
.design-artboard { position: absolute; z-index: 2; left: 43%; top: 13%; width: min(51vw,730px); aspect-ratio: 4/5; overflow: hidden; border: 1px solid rgba(255,255,255,.16); background: #e9e7df; color: #0a0c0f; box-shadow: 0 40px 100px rgba(0,0,0,.65),0 0 50px rgba(255,223,0,.05); transition: background .6s,color .6s; }
.artboard-ui { position: absolute; z-index: 5; left: 0; right: 0; top: 0; height: 42px; display: flex; gap: 7px; align-items: center; padding: 0 14px; border-bottom: 1px solid rgba(0,0,0,.15); }
.artboard-ui i { width: 6px; height: 6px; border-radius: 50%; background: #8f9295; }
.lian-process-visual { position: absolute; inset: 42px 0 0; overflow: hidden; background: #05070a; }
.lian-process-visual::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),radial-gradient(circle at 62% 44%,transparent 12%,rgba(0,0,0,.43) 74%); background-size: 45px 45px,45px 45px,100% 100%; }
.lian-process-visual img { width: 100%; height: 100%; object-fit: cover; object-position: 54% 50%; transition: filter .55s,transform .7s,opacity .5s; animation: lian-stage-in .7s cubic-bezier(.2,.78,.2,1) both; }
@keyframes lian-stage-in { from { opacity: .15; transform: scale(1.055); filter: blur(8px); } }
.lian-construction-lines { position: absolute; z-index: 2; inset: 9% 7%; border: 1px dashed rgba(255,223,0,.34); opacity: 0; transition: opacity .45s; }
.lian-construction-lines i { position: absolute; background: rgba(255,223,0,.44); }
.lian-construction-lines i:nth-child(1) { left: 50%; top: 0; bottom: 0; width: 1px; }
.lian-construction-lines i:nth-child(2) { left: 0; right: 0; top: 50%; height: 1px; }
.lian-construction-lines i:nth-child(3) { left: 50%; top: 50%; width: 34%; height: 34%; border: 1px solid rgba(255,223,0,.45); border-radius: 50%; background: transparent; transform: translate(-50%,-50%); }
.stage-0 .lian-process-visual img { opacity: .84; object-fit: contain; }
.stage-1 .lian-process-visual img { object-fit: contain; }
.stage-1 .lian-construction-lines,.stage-2 .lian-construction-lines { opacity: 1; }
.stage-2 .lian-process-visual img { object-fit: contain; filter: contrast(1.08) saturate(.8); }
.stage-3 .lian-process-visual img { filter: saturate(1.2) contrast(1.04); }
.stage-4 .lian-process-visual img { object-fit: contain; transform: scale(1.03); filter: saturate(1.1) contrast(1.05) drop-shadow(0 24px 22px rgba(0,0,0,.42)); }
.stage-5 .lian-process-visual img { object-fit: contain; object-position: 72% 50%; transform: scale(1.08); filter: saturate(1.18) contrast(1.08) drop-shadow(0 24px 22px rgba(0,0,0,.42)); }
.lian-stage-badge { position: absolute; z-index: 7; right: 18px; top: 58px; padding: 9px 11px; border: 1px solid rgba(255,223,0,.4); background: rgba(3,5,8,.72); color: var(--yellow); backdrop-filter: blur(10px); text-transform: uppercase; font: 800 7px var(--font-geist-mono),monospace; letter-spacing: .13em; }
.artboard-sketch { position: absolute; inset: 17% 12% 13%; opacity: 1; transition: opacity .45s; }
.artboard-sketch i { position: absolute; left: 6%; right: 8%; height: 2px; background: #34393e; transform-origin: left; animation: sketch-line .8s ease both; }
.artboard-sketch i:nth-child(1) { top: 8%; width: 72%; transform: rotate(5deg); }.artboard-sketch i:nth-child(2) { top: 27%; width: 48%; transform: rotate(-3deg); }.artboard-sketch i:nth-child(3) { left: 52%; top: 43%; height: 38%; width: 33%; border: 2px solid #34393e; background: transparent; transform: rotate(3deg); }.artboard-sketch i:nth-child(4) { top: 79%; width: 35%; transform: rotate(2deg); }
@keyframes sketch-line { from { opacity: 0; scale: 0 1; } }
.artboard-photo { position: absolute; left: 47%; top: 18%; width: 43%; height: 48%; overflow: hidden; background: linear-gradient(145deg,#151922,#050608); opacity: 0; transform: scale(.9); transition: .55s; }
.artboard-photo::before { content: ""; position: absolute; width: 170%; height: 55%; left: -25%; bottom: -5%; background: var(--yellow); transform: rotate(-14deg); }
.artboard-photo span { position: absolute; z-index: 2; left: 50%; top: 50%; transform: translate(-50%,-50%); color: #fff; font-size: clamp(70px,9vw,140px); font-weight: 950; letter-spacing: -.12em; }
.artboard-copy { position: absolute; z-index: 6; left: 7%; right: 8%; top: 14%; opacity: 0; transform: translateY(12px); transition: .5s; color: #fff; text-shadow: 0 3px 30px #000; }
.artboard-copy small { display: block; margin-bottom: 24px; font: 850 7px var(--font-geist-mono),monospace; letter-spacing: .17em; }
.artboard-copy strong { display: block; max-width: 58%; font-size: clamp(48px,5.6vw,84px); line-height: .82; letter-spacing: -.07em; }
.artboard-copy p { max-width: 42%; margin-top: 28px; color: #d4d6d8; line-height: 1.45; font-size: 12px; }
.artboard-cta { position: absolute; left: 9%; bottom: 9%; min-height: 42px; display: flex; align-items: center; padding: 0 16px; background: #080a0d; color: #fff; opacity: 0; font: 850 7px var(--font-geist-mono),monospace; letter-spacing: .14em; transition: .45s; }
.digital-pen { position: absolute; z-index: 8; right: 5%; bottom: 6%; width: 140px; height: 140px; display: grid; place-items: center; transition: transform .65s cubic-bezier(.2,.78,.2,1); }
.digital-pen img { width: 118px; height: 118px; object-fit: contain; mix-blend-mode: screen; transform: rotate(-18deg); filter: drop-shadow(0 18px 18px rgba(0,0,0,.45)); }
.digital-pen i { position: absolute; width: 90px; height: 2px; background: var(--yellow); transform: translate(-45px,-30px) rotate(-23deg); box-shadow: 0 0 15px var(--yellow); }
.stage-1 .artboard-sketch i { border-style: dashed; background: transparent; outline: 1px dashed #555; }.stage-1 .artboard-sketch i:nth-child(1),.stage-1 .artboard-sketch i:nth-child(2),.stage-1 .artboard-sketch i:nth-child(4) { height: 70px; }
.stage-2 .artboard-sketch i { border: 0; outline: 0; height: 14px; border-radius: 99px; background: #11151a; }.stage-2 .artboard-sketch i:nth-child(3) { height: 38%; border-radius: 0; }
.stage-3 { background: var(--yellow); }.stage-3 .artboard-sketch i { background: #080a0d; }.stage-3 .artboard-sketch i:nth-child(3) { border-color: #080a0d; }
.stage-4 .artboard-sketch,.stage-5 .artboard-sketch { opacity: 0; }.stage-4 .artboard-photo,.stage-5 .artboard-photo { opacity: 1; transform: none; }.stage-4 .artboard-copy,.stage-5 .artboard-copy { opacity: 1; transform: none; }
.stage-5 .artboard-cta { z-index: 7; opacity: 1; }.stage-5 { background: #05070a; box-shadow: 0 40px 100px rgba(0,0,0,.65),0 0 90px rgba(255,223,0,.2); }
.stage-0 .digital-pen { transform: translate(-310px,-290px); }.stage-1 .digital-pen { transform: translate(-260px,-80px); }.stage-2 .digital-pen { transform: translate(-40px,-320px); }.stage-3 .digital-pen { transform: translate(-250px,-220px); }.stage-4 .digital-pen { transform: translate(-60px,-90px); }.stage-5 .digital-pen { transform: translate(35px,35px); }
.design-stage-nav { position: absolute; z-index: 4; left: clamp(22px,5vw,80px); bottom: 58px; display: grid; grid-template-columns: repeat(3,auto); gap: 10px 24px; }
.design-stage-nav span { display: flex; align-items: center; gap: 8px; color: #59616a; text-transform: uppercase; font: 750 6px var(--font-geist-mono),monospace; letter-spacing: .12em; transition: color .35s; }
.design-stage-nav i { width: 5px; height: 5px; border-radius: 50%; background: #424950; }
.design-stage-nav span.active { color: #fff; }.design-stage-nav span.active i { background: var(--yellow); box-shadow: 0 0 8px var(--yellow); }
.design-progress { position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: rgba(255,255,255,.09); }.design-progress i { display: block; height: 100%; background: var(--yellow); box-shadow: 0 0 14px var(--yellow); }

.design-formats { padding: 140px clamp(22px,6vw,92px) 160px; background: radial-gradient(circle at 50% 38%,rgba(255,223,0,.07),transparent 30%),#020305; }
.design-formats header { display: grid; grid-template-columns: .45fr 1.15fr .7fr; gap: 4vw; align-items: end; margin-bottom: 90px; }
.design-formats header > p { align-self: start; }
.design-formats header h2 { margin: 0; font-size: clamp(66px,7vw,112px); line-height: .86; letter-spacing: -.075em; }
.design-formats header > span { color: #959ca5; line-height: 1.7; }
.design-formats > div { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; perspective: 1000px; }
.design-format-card { position: relative; min-height: 430px; overflow: hidden; padding: 18px; border: 1px solid rgba(255,255,255,.13); background: linear-gradient(155deg,rgba(21,25,31,.9),rgba(5,7,10,.95)); transition: transform .25s ease-out,border-color .3s; transform-style: preserve-3d; animation: format-float 5s ease-in-out calc(var(--card-index) * -.42s) infinite; }
.design-format-card::before { content: ""; position: absolute; inset: 0; opacity: 0; pointer-events: none; background: radial-gradient(circle at var(--shine-x) var(--shine-y),rgba(255,223,0,.18),transparent 34%); transition: opacity .25s; }.design-format-card:hover::before { opacity: 1; }.design-format-card:hover { border-color: rgba(255,223,0,.55); }
@keyframes format-float { 50% { translate: 0 -6px; } }
.format-preview { position: relative; height: 205px; overflow: hidden; margin-bottom: 23px; background: #05070a; color: #fff; isolation: isolate; }
.format-preview::before { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg,rgba(0,0,0,.84),transparent 64%),linear-gradient(0deg,rgba(0,0,0,.72),transparent 58%); }
.format-preview::after { content: ""; position: absolute; z-index: 2; width: 72%; height: 46%; right: -28%; bottom: -21%; border: 1px solid rgba(255,223,0,.72); border-radius: 50%; box-shadow: 0 0 34px rgba(255,223,0,.14); transform: rotate(-17deg); }
.format-preview img { width: 100%; height: 100%; object-fit: cover; object-position: 60% 49%; transform: scale(1.04); transition: transform .7s cubic-bezier(.2,.78,.2,1),filter .5s; }
.design-format-card:hover .format-preview img { transform: scale(1.1); filter: saturate(1.18); }
.format-preview > div { position: absolute; z-index: 3; left: 14px; top: 15px; width: 62%; }
.format-preview > div small { display: block; color: var(--yellow); font: 800 5px var(--font-geist-mono),monospace; letter-spacing: .13em; }
.format-preview > div strong { display: block; margin-top: 16px; font-size: 19px; line-height: .92; letter-spacing: -.045em; }
.format-preview > div span { display: block; margin-top: 9px; color: #adb3ba; text-transform: uppercase; font: 750 5px var(--font-geist-mono),monospace; letter-spacing: .12em; }
.format-preview > i { position: absolute; z-index: 3; background: var(--yellow); }
.format-preview > i:nth-of-type(1) { left: 14px; bottom: 14px; width: 34px; height: 3px; }
.format-preview > i:nth-of-type(2) { left: 52px; bottom: 14px; width: 8px; height: 3px; opacity: .45; }
.format-2 img { object-position: 72% 45%; transform: scale(1.22); }.format-2::before { background: linear-gradient(90deg,#05070a 0 41%,transparent 68%); }
.format-3 { margin-inline: 22%; height: 205px; }.format-3 img { object-position: 57% 42%; }.format-3 > div { width: 78%; }
.format-4 { background: var(--yellow); }.format-4::before { background: linear-gradient(130deg,rgba(5,7,10,.96) 0 52%,rgba(5,7,10,.15) 53%); }.format-4 img { object-position: 74% 48%; }
.format-5 img { object-position: 68% 28%; transform: scale(1.2); }.format-5::before { background: linear-gradient(0deg,rgba(5,7,10,.95),transparent 70%); }
.format-5 > div { top: auto; bottom: 16px; width: 72%; }
.format-6 { height: 160px; margin-block: 22px; }.format-6 img { object-position: 71% 46%; }.format-6 > div strong { font-size: 21px; }
.format-7 { height: 125px; margin-block: 40px; }.format-7 img { object-position: 75% 45%; }.format-7 > div { top: 11px; }.format-7 > div strong { margin-top: 10px; font-size: 17px; }
.format-8 { background-image: linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px); background-size: 20px 20px; }.format-8 img { object-position: 67% 48%; filter: contrast(1.08); }
.design-format-card > svg { width: 20px; height: 20px; color: var(--yellow); }.design-format-card > small { position: absolute; right: 18px; top: 247px; color: #66707a; font: 750 6px var(--font-geist-mono),monospace; letter-spacing: .13em; }
.design-format-card h3 { margin: 18px 0 10px; font-size: 23px; letter-spacing: -.035em; }.design-format-card p { margin: 0; color: #7f8790; font-size: 12px; line-height: 1.55; }
.design-manifesto { padding: 150px clamp(22px,7vw,110px); background: var(--yellow); color: #05070a; }
.design-manifesto > p { color: #5d5500; }.design-manifesto h2 { max-width: 1150px; margin: 0; font-size: clamp(65px,8vw,125px); line-height: .87; letter-spacing: -.078em; }
.design-manifesto > div { margin-top: 90px; display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid rgba(0,0,0,.22); border-bottom: 1px solid rgba(0,0,0,.22); }
.design-manifesto span { min-height: 150px; display: flex; align-items: flex-end; padding: 22px; border-right: 1px solid rgba(0,0,0,.22); font-size: 18px; font-weight: 850; }.design-manifesto span:last-child { border: 0; }
.design-ai { position: relative; overflow: hidden; padding: 150px clamp(22px,7vw,110px) 170px; background: #05070a; }
.design-ai-orbit { position: absolute; right: -10vw; top: -15vw; width: 55vw; aspect-ratio: 1; border: 1px solid rgba(255,223,0,.1); border-radius: 50%; }.design-ai-orbit i { position: absolute; inset: 17%; border: inherit; border-radius: inherit; }.design-ai-orbit i:nth-child(2) { inset: 33%; }.design-ai-orbit i:nth-child(3) { inset: 48%; background: var(--yellow); box-shadow: 0 0 60px rgba(255,223,0,.5); }
.design-ai-copy { position: relative; max-width: 900px; }.design-ai-copy h2 { margin: 0; font-size: clamp(65px,8vw,120px); line-height: .86; letter-spacing: -.078em; }.design-ai-copy > span { max-width: 670px; display: block; margin-top: 28px; color: #979ea7; font-size: 18px; line-height: 1.7; }
.design-ai form { position: relative; max-width: 1000px; margin-top: 80px; padding: 28px; border: 1px solid rgba(255,223,0,.32); background: rgba(9,12,16,.82); backdrop-filter: blur(16px); }
.design-ai form label { display: block; margin-bottom: 13px; color: #707881; text-transform: uppercase; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.design-ai form > div { display: grid; grid-template-columns: 1fr auto; gap: 10px; }.design-ai input { min-height: 60px; border: 1px solid rgba(255,255,255,.16); padding: 0 18px; background: #040609; color: #fff; outline: none; font-size: 15px; }.design-ai input:focus { border-color: var(--yellow); }
.design-ai form button { min-width: 205px; display: flex; align-items: center; justify-content: center; gap: 13px; border: 0; padding: 0 20px; background: var(--yellow); color: #05070a; cursor: pointer; text-transform: uppercase; font: 900 7px var(--font-geist-mono),monospace; letter-spacing: .12em; }.design-ai form button:disabled { opacity: .52; cursor: default; }
.design-concepts { position: relative; display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; margin-top: 55px; transition: filter .35s,opacity .35s; }.design-concepts.is-generating { filter: blur(10px); opacity: .25; }
.design-concepts article { min-height: 360px; display: flex; flex-direction: column; justify-content: space-between; padding: 25px; border: 1px solid rgba(255,255,255,.14); animation: concept-in .7s cubic-bezier(.2,.78,.2,1) both; }.design-concepts article small { font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .13em; }.design-concepts article span { max-width: 90%; display: block; font-size: 14px; line-height: 1.4; }.design-concepts article strong { display: block; margin-top: 15px; font-size: 36px; line-height: .95; letter-spacing: -.05em; }.design-concepts article p { margin: 0; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .12em; }
.concept-1 { background: #efede6; color: #080a0d; }.concept-2 { background: var(--yellow); color: #080a0d; transform: translateY(22px); }.concept-3 { background: linear-gradient(145deg,#161b22,#07090c); color: #fff; }.concept-3 strong { color: var(--yellow); }
@keyframes concept-in { from { opacity: 0; transform: translateY(25px); } }
.design-cta { min-height: 86svh; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 120px clamp(22px,8vw,125px); background: radial-gradient(circle at 78% 47%,rgba(255,223,0,.12),transparent 23%),#020305; }.design-cta h2 { max-width: 1050px; margin: 0; font-size: clamp(67px,8vw,125px); line-height: .86; letter-spacing: -.078em; }.design-cta > span { max-width: 680px; margin-top: 28px; color: #969da6; font-size: 18px; line-height: 1.7; }

@media (max-width: 700px) {
  .photo-plan-button { width: 100%; justify-content: center; }
  .photo-brief-modal { padding: 0; }
  .photo-brief-close { right: 12px; top: 12px; }
  .photo-brief-shell { min-height: 100svh; grid-template-columns: 1fr; }
  .photo-brief-shell > aside { min-height: 440px; padding: 80px 20px 55px; }
  .photo-brief-shell > aside h2 { font-size: 51px; }
  .photo-brief-shell > aside > div { margin-top: 50px; }
  .photo-brief-form { padding: 42px 20px 70px; }
  .photo-brief-grid,.photo-type-grid { grid-template-columns: 1fr; }
  .photo-brief-grid .wide { grid-column: auto; }
  .photo-type-grid label { min-height: 86px; }
  .photo-event-grid { grid-template-columns: repeat(2,1fr); }
  .photo-brief-success { min-height: 620px; padding: 35px 20px; }
  .photo-brief-success h3 { font-size: 48px; }

  .design-hero { min-height: 100svh; align-items: flex-end; padding: 130px 20px 75px; }
  .design-hero-copy { width: 100%; }
  .design-hero-copy h1 { font-size: clamp(59px,17vw,75px); }
  .design-hero-copy > span { max-width: 92%; font-size: 15px; }
  .design-hero-copy > a { width: 100%; justify-content: center; }
  .design-hero-pen { width: 78vw; right: -25vw; top: 28%; opacity: .42; }
  .design-hero-status { display: none; }
  .design-sequence { height: 390svh; }
  .design-sequence-copy { left: 20px; right: 20px; top: 100px; width: auto; transform: none; }
  .design-sequence-copy h2 { font-size: 47px; }
  .design-sequence-copy > span { max-width: 85%; margin-top: 15px; font-size: 13px; }
  .design-artboard { left: 20px; top: 34%; width: calc(100% - 40px); height: 52%; aspect-ratio: auto; }
  .artboard-copy strong { font-size: 45px; }.artboard-copy p { max-width: 43%; font-size: 9px; }.artboard-photo span { font-size: 76px; }
  .digital-pen { width: 90px; height: 90px; }.digital-pen img { width: 78px; height: 78px; }.digital-pen i { width: 55px; }
  .stage-0 .digital-pen { transform: translate(-165px,-120px); }.stage-1 .digital-pen { transform: translate(-140px,-30px); }.stage-2 .digital-pen { transform: translate(-25px,-135px); }.stage-3 .digital-pen { transform: translate(-145px,-95px); }.stage-4 .digital-pen { transform: translate(-35px,-35px); }.stage-5 .digital-pen { transform: translate(18px,18px); }
  .design-stage-nav { left: 20px; right: 20px; bottom: 34px; grid-template-columns: repeat(3,1fr); gap: 8px; }.design-stage-nav span { font-size: 5px; }
  .design-formats { padding: 95px 20px 110px; }.design-formats header { grid-template-columns: 1fr; gap: 20px; margin-bottom: 55px; }.design-formats header h2 { font-size: 58px; }.design-formats header > span { font-size: 14px; }
  .design-formats > div { display: flex; overflow-x: auto; margin-right: -20px; padding: 0 20px 30px 0; scroll-snap-type: x mandatory; }.design-format-card { flex: 0 0 78vw; min-height: 410px; scroll-snap-align: start; animation: none; }.format-preview { height: 200px; }
  .design-manifesto { padding: 100px 20px; }.design-manifesto h2 { font-size: 59px; }.design-manifesto > div { margin-top: 60px; grid-template-columns: 1fr 1fr; }.design-manifesto span { min-height: 120px; border-bottom: 1px solid rgba(0,0,0,.22); font-size: 14px; }.design-manifesto span:nth-child(2) { border-right: 0; }
  .design-ai { padding: 100px 20px 120px; }.design-ai-copy h2 { font-size: 59px; }.design-ai-copy > span { font-size: 15px; }.design-ai form { margin-top: 55px; padding: 16px; }.design-ai form > div { grid-template-columns: 1fr; }.design-ai form button { min-height: 54px; }.design-concepts { display: flex; overflow-x: auto; margin-right: -20px; padding: 0 20px 25px 0; scroll-snap-type: x mandatory; }.design-concepts article { flex: 0 0 80vw; min-height: 330px; scroll-snap-align: start; }.concept-2 { transform: none; }
  .design-cta { min-height: 760px; padding: 100px 20px; }.design-cta h2 { font-size: 59px; }.design-cta > span { font-size: 15px; }.design-cta > a { width: 100%; justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
  .design-hero-pen > img,.design-hero-pen > i,.design-format-card { animation: none; }
  .design-artboard,.digital-pen { transition-duration: .01ms; }
}

/* Diseño e Ilustración — recorrido compacto y portafolio real */
.design-sequence { height: 330vh; }
.design-artboard { left: 42%; top: 50%; width: min(54vw,860px); aspect-ratio: 16/10; transform: translateY(-50%); background: #f4f3ef; }
.lian-process-visual { background: #f7f7f4; }
.lian-process-visual::after { opacity: .35; background: linear-gradient(90deg,rgba(5,7,10,.045) 1px,transparent 1px),linear-gradient(rgba(5,7,10,.045) 1px,transparent 1px),radial-gradient(circle at 55% 48%,transparent 34%,rgba(255,255,255,.55) 96%); background-size: 44px 44px,44px 44px,100% 100%; }
.lian-process-visual img,.stage-0 .lian-process-visual img,.stage-1 .lian-process-visual img,.stage-2 .lian-process-visual img,.stage-3 .lian-process-visual img,.stage-4 .lian-process-visual img { object-fit: contain; object-position: center; transform: none; filter: none; }
.stage-3 { background: #f4f3ef; }
.stage-4 { background: #f4f3ef; box-shadow: 0 40px 100px rgba(0,0,0,.65),0 0 70px rgba(255,223,0,.13); }
.stage-3 .lian-construction-lines,.stage-4 .lian-construction-lines { opacity: 0; }
.digital-pen { right: 1%; bottom: 0; width: 112px; height: 112px; opacity: .78; }
.digital-pen img { width: 94px; height: 94px; }
.stage-0 .digital-pen { transform: translate(-470px,-225px); }
.stage-1 .digital-pen { transform: translate(-330px,-70px); }
.stage-2 .digital-pen { transform: translate(-90px,-210px); }
.stage-3 .digital-pen { transform: translate(-245px,-145px); }
.stage-4 .digital-pen { transform: translate(10px,10px); opacity: .15; }
.design-stage-nav { grid-template-columns: repeat(5,auto); }
.design-stage-nav span { opacity: .55; }
.design-stage-nav span.active { opacity: 1; }

.design-formats { padding-bottom: 110px; }
.design-formats > .design-showcases { display: block; perspective: none; }
.design-showcase { min-height: 650px; display: grid; grid-template-columns: minmax(270px,.72fr) minmax(0,1.28fr); gap: clamp(30px,6vw,95px); align-items: center; padding: 72px 0; border-top: 1px solid rgba(255,255,255,.13); }
.design-showcase:last-child { border-bottom: 1px solid rgba(255,255,255,.13); }
.design-showcase:nth-child(even) .design-showcase-copy { order: 2; }
.design-showcase-copy > p { margin: 0 0 22px; color: var(--yellow); text-transform: uppercase; font: 800 7px var(--font-geist-mono),monospace; letter-spacing: .18em; }
.design-showcase-copy h3 { max-width: 520px; margin: 0; font-size: clamp(47px,5vw,78px); line-height: .9; letter-spacing: -.065em; }
.design-showcase-copy > span { max-width: 510px; display: block; margin-top: 25px; color: #9299a2; font-size: 15px; line-height: 1.7; }
.design-showcase-controls { display: flex; align-items: center; gap: 16px; margin-top: 38px; }
.design-showcase-controls button { width: 43px; height: 43px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; background: rgba(255,255,255,.035); color: #fff; cursor: pointer; transition: color .25s,border-color .25s,transform .25s; }
.design-showcase-controls button:hover:not(:disabled) { color: var(--yellow); border-color: var(--yellow); transform: translateY(-2px); }
.design-showcase-controls button:disabled { opacity: .25; cursor: default; }
.design-showcase-controls button svg { width: 12px; }
.design-showcase-controls strong { display: flex; align-items: center; gap: 9px; color: #767e87; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .12em; }
.design-showcase-controls strong i { width: 34px; height: 1px; background: rgba(255,255,255,.22); }
.design-showcase-stage { position: relative; width: min(100%,780px); min-height: 530px; display: grid; place-items: center; overflow: hidden; border: 1px solid rgba(255,255,255,.11); background: radial-gradient(circle at 50% 44%,rgba(255,223,0,.1),transparent 32%),linear-gradient(145deg,#0b0f14,#020305); box-shadow: 0 35px 90px rgba(0,0,0,.55); touch-action: pan-y; }
.design-showcase-orbit { position: absolute; width: 72%; aspect-ratio: 1; border: 1px solid rgba(255,223,0,.14); border-radius: 50%; transform: rotateX(69deg) rotateZ(-12deg); box-shadow: 0 0 40px rgba(255,223,0,.035); animation: design-showcase-orbit 18s linear infinite; }
.design-showcase-orbit::before,.design-showcase-orbit::after { content:""; position:absolute; inset:13%; border:inherit; border-radius:inherit; }
.design-showcase-orbit::after { inset:29%; }
@keyframes design-showcase-orbit { to { transform: rotateX(69deg) rotateZ(348deg); } }
.design-showcase-track { position: relative; z-index: 2; width: 100%; display: flex; align-items: center; transition: transform .75s cubic-bezier(.2,.78,.2,1); }
.design-showcase-track figure { position: relative; width: 100%; flex: 0 0 100%; min-height: 510px; margin: 0; display: grid; place-items: center; padding: 34px 50px 52px; }
.design-showcase-track img { display: block; width: auto; max-width: 86%; height: auto; max-height: 420px; object-fit: contain; box-shadow: 0 28px 70px rgba(0,0,0,.62); filter: saturate(.96) contrast(1.02); transform: perspective(1100px) rotateY(-2.5deg) translateY(0); transition: transform .6s,filter .45s; }
.design-showcase:hover .design-showcase-track img { transform: perspective(1100px) rotateY(0) translateY(-5px); filter: saturate(1.04) contrast(1.02); }
.design-showcase-stage.is-feed img { max-height: 430px; }
.design-showcase-stage.is-square img { max-height: 400px; aspect-ratio: 1; }
.design-showcase-track figcaption { position: absolute; left: 25px; bottom: 19px; color: #858d96; text-transform: uppercase; font: 750 6px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.design-showcase-dots { position: absolute; z-index: 4; right: 22px; bottom: 21px; display: flex; gap: 7px; }
.design-showcase-dots button { width: 22px; height: 2px; padding: 0; border: 0; background: rgba(255,255,255,.22); cursor: pointer; transition: width .3s,background .3s; }
.design-showcase-dots button.active { width: 38px; background: var(--yellow); box-shadow: 0 0 10px rgba(255,223,0,.45); }

@media (max-width: 700px) {
  .design-sequence { height: 270svh; }
  .design-sequence-copy { top: 87px; }
  .design-sequence-copy h2 { font-size: 43px; }
  .design-sequence-copy > span { max-width: 94%; }
  .design-artboard { left: 20px; top: 35%; width: calc(100% - 40px); height: 45%; aspect-ratio: auto; transform: none; }
  .digital-pen { width: 74px; height: 74px; }
  .digital-pen img { width: 66px; height: 66px; }
  .digital-pen i { width: 48px; }
  .stage-0 .digital-pen { transform: translate(-205px,-95px); }
  .stage-1 .digital-pen { transform: translate(-150px,-30px); }
  .stage-2 .digital-pen { transform: translate(-35px,-95px); }
  .stage-3 .digital-pen { transform: translate(-115px,-65px); }
  .stage-4 .digital-pen { transform: translate(8px,8px); }
  .design-stage-nav { grid-template-columns: repeat(5,1fr); gap: 3px; bottom: 23px; }
  .design-stage-nav span { justify-content: center; gap: 4px; font-size: 4.5px; letter-spacing: .07em; }
  .design-stage-nav i { width: 4px; height: 4px; }
  .design-formats { padding-top: 92px; padding-bottom: 70px; }
  .design-showcase { min-height: 0; grid-template-columns: 1fr; gap: 34px; padding: 65px 0; }
  .design-showcase:nth-child(even) .design-showcase-copy { order: 0; }
  .design-showcase-copy h3 { font-size: 47px; }
  .design-showcase-copy > span { font-size: 13px; }
  .design-showcase-controls { margin-top: 27px; }
  .design-showcase-stage { width: 100%; min-height: 455px; }
  .design-showcase-track figure { min-height: 440px; padding: 30px 25px 53px; }
  .design-showcase-track img,.design-showcase-stage.is-feed img { max-width: 92%; max-height: 350px; }
  .design-showcase-stage.is-square img { max-height: 330px; }
  .design-showcase-track figcaption { left: 15px; bottom: 16px; }
  .design-showcase-dots { right: 15px; bottom: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  .design-showcase-orbit { animation: none; }
  .design-showcase-track { transition-duration: .01ms; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ink); }
body { margin: 0; background: var(--ink); color: var(--white); font-family: var(--font-nunito), Arial, sans-serif; -webkit-font-smoothing: antialiased; }
body.loading-site { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img, video { display: block; max-width: 100%; }
button { font: inherit; color: inherit; }
body.signature-transitioning { overflow: hidden; }

.signature-gateway { position: fixed; inset: 0; z-index: 1000; overflow: hidden; display: grid; place-items: center; background: #020305; animation: gateway-fade-in .8s cubic-bezier(.22,.75,.22,1) both; perspective: 1200px; }
.gateway-corridor { position: absolute; inset: -10%; background: radial-gradient(circle at 50% 50%,rgba(255,255,255,.035),transparent 30%),linear-gradient(90deg,#020305 0 17%,#0b0e12 17% 18%,#030507 18% 82%,#0b0e12 82% 83%,#020305 83%); transform: translateZ(0) scale(1.35); animation: corridor-travel 4.7s cubic-bezier(.16,.76,.22,1) both; }
.gateway-corridor::before,.gateway-corridor::after { content: ""; position: absolute; left: 17%; right: 17%; height: 1px; background: linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent); box-shadow: 0 0 18px rgba(255,255,255,.08); }
.gateway-corridor::before { top: 19%; }
.gateway-corridor::after { bottom: 19%; }
.gateway-corridor i { position: absolute; width: 1px; top: 19%; bottom: 19%; background: linear-gradient(transparent,rgba(255,255,255,.16),transparent); }
.gateway-corridor i:nth-child(1) { left: 27%; }.gateway-corridor i:nth-child(2) { left: 40%; }.gateway-corridor i:nth-child(3) { right: 40%; }.gateway-corridor i:nth-child(4) { right: 27%; }
.gateway-door { width: min(72vw,760px); aspect-ratio: 1; position: relative; animation: door-approach 3.1s cubic-bezier(.16,.78,.18,1) both; }
.gateway-rim { position: absolute; inset: 0; border-radius: 50%; padding: 7%; background: conic-gradient(from 25deg,#090b0e,#3e444a,#0a0c0f,#74797e,#111419,#393e43,#090b0e); box-shadow: 0 0 0 1px rgba(255,255,255,.15),0 0 100px rgba(0,0,0,.9),inset 0 0 42px #000; }
.gateway-rim::before { content: ""; position: absolute; inset: 3%; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; }
.gateway-iris { position: absolute; inset: 7%; overflow: hidden; border-radius: 50%; background: #07090c; box-shadow: inset 0 0 80px #000; animation: iris-reveal .95s cubic-bezier(.62,0,.28,1) 3.35s forwards; }
.gateway-iris span { position: absolute; inset: -10%; background: linear-gradient(145deg,#11151a,#030405 68%); transform-origin: 50% 50%; clip-path: polygon(50% 50%,100% 0,100% 52%); border-left: 1px solid rgba(255,255,255,.055); transition: transform 1s; }
.gateway-iris span:nth-child(1) { transform: rotate(0deg); }.gateway-iris span:nth-child(2) { transform: rotate(45deg); }.gateway-iris span:nth-child(3) { transform: rotate(90deg); }.gateway-iris span:nth-child(4) { transform: rotate(135deg); }.gateway-iris span:nth-child(5) { transform: rotate(180deg); }.gateway-iris span:nth-child(6) { transform: rotate(225deg); }.gateway-iris span:nth-child(7) { transform: rotate(270deg); }.gateway-iris span:nth-child(8) { transform: rotate(315deg); }
.gateway-core { position: absolute; z-index: 3; inset: 31%; display: flex; flex-direction: column; align-items: center; justify-content: center; border-radius: 50%; background: rgba(4,6,8,.94); text-align: center; animation: core-vanish .7s ease 3.25s forwards; }
.gateway-core p { margin: 14px 0 5px; color: #fff; text-transform: uppercase; font: 750 10px var(--font-geist-mono),monospace; letter-spacing: .28em; animation: access-copy 1s ease 1.45s both; }
.gateway-core strong { color: #777f88; text-transform: uppercase; font: 650 7px var(--font-geist-mono),monospace; letter-spacing: .2em; animation: access-copy 1s ease 1.65s both; }
.gateway-scan { position: absolute; width: 46%; height: 2px; top: 23%; background: var(--yellow); box-shadow: 0 0 14px rgba(255,223,0,.85); animation: access-scan 1.25s cubic-bezier(.2,.7,.3,1) .8s both; }
.gateway-progress { position: absolute; bottom: 5vh; margin: 0; color: #69717a; text-transform: uppercase; font: 650 7px var(--font-geist-mono),monospace; letter-spacing: .18em; animation: access-copy .8s ease 1s both; }
@keyframes gateway-fade-in { from { opacity: 0; } }
@keyframes corridor-travel { from { transform: scale(1.6); filter: brightness(.5); } 72% { transform: scale(1); filter: brightness(1); } 100% { transform: scale(1.02); } }
@keyframes door-approach { from { transform: translateZ(-900px) scale(.36); opacity: 0; } 20% { opacity: 1; } to { transform: translateZ(0) scale(1); } }
@keyframes access-scan { from { transform: translateY(115px); opacity: 0; } 18% { opacity: 1; } to { transform: translateY(-74px); opacity: .8; } }
@keyframes access-copy { from { opacity: 0; transform: translateY(8px); } }
@keyframes core-vanish { to { opacity: 0; transform: scale(.86); } }
@keyframes iris-reveal { to { transform: scale(2.4); opacity: 0; } }

.signature-page { background: #030405; color: #f5f3eb; }
.signature-page .site-header { z-index: 20; }
.signature-hero { position: relative; min-height: 100svh; overflow: hidden; background: #020304; }
.signature-hero video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; filter: brightness(.72) contrast(1.06); animation: signature-screen-on 1.4s cubic-bezier(.2,.78,.2,1) .3s forwards; }
.signature-hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.12) 62%,rgba(0,0,0,.34)),linear-gradient(0deg,rgba(2,3,4,.7),transparent 42%); }
.signature-hero-shade::before { content: ""; position: absolute; inset: 0; background: linear-gradient(115deg,transparent 30%,rgba(255,255,255,.065) 47%,transparent 58%); transform: translateX(-100%); animation: oled-reflection 1.4s cubic-bezier(.2,.78,.2,1) .15s forwards; }
.signature-hero-copy { position: absolute; z-index: 2; left: clamp(24px,7vw,110px); bottom: clamp(68px,11vh,125px); max-width: 760px; }
.signature-overline { margin: 0 0 18px; color: var(--yellow); text-transform: uppercase; font: 750 9px var(--font-geist-mono),monospace; letter-spacing: .28em; }
.signature-hero h1 { margin: 0; font-size: clamp(67px,10vw,150px); line-height: .76; letter-spacing: -.075em; text-transform: uppercase; font-weight: 900; }
.signature-hero-copy > p:not(.signature-overline) { margin: 28px 0 32px; font-size: clamp(17px,1.7vw,24px); color: rgba(255,255,255,.82); }
.signature-hero-copy > a,.signature-cta > a { min-height: 54px; display: inline-flex; align-items: center; gap: 18px; padding: 0 23px; background: var(--yellow); color: var(--ink); text-transform: uppercase; font: 900 9px var(--font-geist-mono),monospace; letter-spacing: .12em; transition: transform .3s cubic-bezier(.2,.8,.2,1),background .3s; }
.signature-hero-copy > a:hover,.signature-cta > a:hover { transform: translateY(-3px); background: #fff16d; }
.signature-status { position: absolute; z-index: 2; right: clamp(20px,4vw,60px); top: 115px; display: flex; align-items: center; gap: 10px; color: #8a9198; text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.signature-status i { width: 6px; height: 6px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 12px var(--yellow); }
@keyframes signature-screen-on { 0% { opacity: 0; filter: brightness(.05); } 35% { opacity: .35; filter: brightness(.18); } 100% { opacity: 1; filter: brightness(.72) contrast(1.06); } }
@keyframes oled-reflection { to { transform: translateX(100%); } }
.signature-intro { padding: 120px clamp(22px,6vw,92px) 145px; background: #05070a; }
.signature-intro-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 9vw; align-items: end; margin: 78px 0 90px; }
.signature-intro h2 { max-width: 930px; margin: 0; font-size: clamp(48px,6vw,90px); line-height: .94; letter-spacing: -.065em; }
.signature-manifesto { border-left: 1px solid rgba(255,223,0,.38); padding-left: 30px; }
.signature-manifesto p { margin: 0 0 20px; color: #a5abb3; line-height: 1.75; }
.signature-pillars { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(255,255,255,.15); border-bottom: 1px solid rgba(255,255,255,.15); }
.signature-pillars article { min-height: 310px; padding: 28px; border-right: 1px solid rgba(255,255,255,.15); }
.signature-pillars article:last-child { border-right: 0; }
.signature-pillars span { color: var(--yellow); font: 750 8px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.signature-pillars h3 { margin: 95px 0 18px; font-size: 30px; letter-spacing: -.04em; }
.signature-pillars p { margin: 0; color: #9299a2; line-height: 1.65; font-size: 13px; }
.signature-cta { min-height: 78svh; padding: 100px clamp(22px,9vw,140px); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; background: radial-gradient(circle at 75% 50%,rgba(255,223,0,.08),transparent 28%),#ecebe5; color: var(--ink); }
.signature-cta > p { margin: 0 0 25px; text-transform: uppercase; font: 800 9px var(--font-geist-mono),monospace; letter-spacing: .18em; }
.signature-cta h2 { max-width: 1050px; margin: 0 0 42px; font-size: clamp(52px,7vw,105px); line-height: .9; letter-spacing: -.07em; }

/* Signature — premium content journey */
.signature-page { overflow: clip; }
.signature-premium-hero .signature-hero-copy { max-width: 820px; }
.signature-premium-hero h1 { max-width: 800px; font-size: clamp(76px,11vw,168px); line-height: .78; text-transform: none; letter-spacing: -.075em; }
.signature-premium-hero .signature-hero-copy > p:not(.signature-overline) { max-width: 520px; margin: 28px 0 34px; font-size: clamp(18px,1.75vw,25px); }
.signature-premium-hero .signature-hero-copy > button,
.signature-definition button { min-height: 56px; display: inline-flex; align-items: center; justify-content: center; gap: 18px; border: 0; padding: 0 25px; background: var(--yellow); color: var(--ink); cursor: pointer; text-transform: uppercase; font: 900 9px var(--font-geist-mono),monospace; letter-spacing: .13em; transition: transform .35s cubic-bezier(.2,.8,.2,1),background .35s; }
.signature-premium-hero .signature-hero-copy > button:hover,
.signature-definition button:hover { transform: translateY(-3px); background: #fff16d; }
.signature-level-control { display: flex; align-items: center; gap: 20px; }
.signature-level-control button { position: relative; width: 112px; height: 112px; flex: 0 0 112px; display: grid; place-items: center; padding: 0; border: 1px solid rgba(255,255,255,.42); border-radius: 50%; background: rgba(3,5,8,.58); color: #fff; cursor: pointer; backdrop-filter: blur(14px); box-shadow: 0 0 0 0 rgba(255,223,0,.2); transition: transform .45s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .45s; }
.signature-level-control button::before { content: ""; position: absolute; inset: 9px; border: 1px solid rgba(255,255,255,.12); border-radius: inherit; }
.signature-level-control button::after { content: ""; position: absolute; top: -4px; width: 8px; height: 8px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 12px var(--yellow); }
.signature-level-control button:hover { transform: scale(1.055); border-color: var(--yellow); box-shadow: 0 0 0 12px rgba(255,223,0,.08); }
.signature-level-control button img { position: relative; z-index: 1; width: 46px; height: 46px; object-fit: contain; }
.signature-level-control > span { max-width: 170px; color: rgba(255,255,255,.72); text-transform: uppercase; font: 750 8px/1.65 var(--font-geist-mono),monospace; letter-spacing: .16em; }
.signature-story.is-locked,.signature-motion.is-locked,.signature-sectors.is-locked,.signature-capacity.is-locked { display: none; }
.signature-story,.signature-motion,.signature-sectors,.signature-capacity { animation: signature-unlock 1.05s cubic-bezier(.2,.78,.2,1) both; }
@keyframes signature-unlock { from { opacity: 0; transform: translateY(60px); } to { opacity: 1; transform: none; } }
.signature-story,.signature-benefits { padding: 125px clamp(22px,6vw,92px); background: #edece6; color: var(--ink); scroll-margin-top: 20px; }
.signature-section-head { display: grid; grid-template-columns: .45fr 1.55fr; gap: 5vw; align-items: start; margin-bottom: 85px; }
.signature-section-head > p,.signature-kicker { margin: 9px 0 0; text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .18em; }
.signature-section-head h2 { max-width: 950px; margin: 0; font-size: clamp(52px,7vw,104px); line-height: .9; letter-spacing: -.07em; }
.signature-gallery { display: grid; grid-template-columns: 1.2fr .8fr .75fr; grid-template-rows: 47vh 47vh; gap: 12px; }
.signature-gallery figure { position: relative; margin: 0; overflow: hidden; background: #111; animation: signature-image-in .9s cubic-bezier(.2,.78,.2,1) var(--reveal-delay) both; }
.signature-gallery figure:nth-child(1) { grid-row: span 2; }
.signature-gallery figure:nth-child(4) { grid-column: span 2; }
.signature-gallery img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.1s cubic-bezier(.2,.78,.2,1); }
.signature-gallery figure:hover img { transform: scale(1.035); }
.signature-gallery figcaption { position: absolute; left: 16px; bottom: 14px; padding: 7px 9px; background: rgba(0,0,0,.62); color: #fff; backdrop-filter: blur(10px); text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .14em; }
@keyframes signature-image-in { from { opacity: 0; transform: translateY(35px); clip-path: inset(100% 0 0); } to { opacity: 1; transform: none; clip-path: inset(0); } }
.signature-definition { display: grid; grid-template-columns: 1.1fr .9fr; gap: 9vw; padding: 150px 0 40px; }
.signature-definition h2 { max-width: 790px; margin: 20px 0 0; font-size: clamp(50px,5.8vw,88px); line-height: .94; letter-spacing: -.065em; }
.signature-definition > div:last-child { padding-top: 45px; }
.signature-definition > div:last-child p { margin: 0 0 22px; color: #50545a; font-size: clamp(17px,1.55vw,22px); line-height: 1.65; }
.signature-definition button { margin-top: 22px; background: var(--ink); color: #fff; }
.signature-definition button:hover { background: #171b20; color: var(--yellow); }
.signature-motion { padding: 125px clamp(22px,6vw,92px) 155px; background: #050608; color: #f7f5ef; scroll-margin-top: 20px; }
.signature-reels { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; }
.signature-reels article { position: relative; aspect-ratio: 9/16; overflow: hidden; background: #0e1013; }
.signature-reels video { width: 100%; height: 100%; object-fit: cover; }
.signature-reels article > div { pointer-events: none; position: absolute; inset: auto 0 0; padding: 60px 17px 18px; background: linear-gradient(transparent,rgba(0,0,0,.8)); display: flex; justify-content: space-between; align-items: flex-end; }
.signature-reels span { text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.signature-reels strong { color: var(--yellow); font-size: 18px; letter-spacing: -.03em; }
.signature-motion-next { min-height: 56px; margin: 55px auto 0; display: flex; align-items: center; justify-content: center; gap: 16px; padding: 0 24px; border: 1px solid rgba(255,255,255,.22); background: transparent; color: #fff; cursor: pointer; text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .14em; transition: color .3s,border-color .3s,transform .3s; }
.signature-motion-next:hover { color: var(--yellow); border-color: var(--yellow); transform: translateY(-3px); }
.signature-sectors { padding: 125px clamp(22px,6vw,92px) 150px; background: var(--yellow); color: var(--ink); }
.signature-section-head.dark { margin-bottom: 65px; }
.signature-sector-tabs { display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid rgba(0,0,0,.2); }
.signature-sector-tabs button { min-height: 155px; display: flex; align-items: center; justify-content: center; gap: 16px; border: 0; border-right: 1px solid rgba(0,0,0,.2); background: transparent; color: var(--ink); cursor: pointer; font: 800 clamp(16px,2vw,28px) var(--font-geist-sans),sans-serif; transition: background .35s,color .35s; }
.signature-sector-tabs button:last-child { border-right: 0; }
.signature-sector-tabs button svg { width: 23px; height: 23px; }
.signature-sector-tabs button.active { background: var(--ink); color: #fff; }
.signature-sector-panel { display: grid; grid-template-columns: 1fr 1fr; gap: 9vw; min-height: 480px; padding: 75px 0 10px; animation: signature-panel-in .55s cubic-bezier(.2,.78,.2,1) both; }
@keyframes signature-panel-in { from { opacity: .3; transform: translateY(12px); } }
.signature-sector-promise > p { margin: 0 0 20px; text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.signature-sector-promise h3 { max-width: 720px; margin: 0 0 28px; font-size: clamp(48px,5vw,78px); line-height: .92; letter-spacing: -.06em; }
.signature-sector-promise span { display: block; max-width: 650px; font-size: 17px; line-height: 1.65; }
.signature-sector-panel ul { margin: 8px 0 0; padding: 0; list-style: none; }
.signature-sector-panel li { display: grid; grid-template-columns: 24px 1fr; gap: 16px; align-items: start; padding: 24px 0; border-top: 1px solid rgba(0,0,0,.2); font-size: 16px; line-height: 1.45; }
.signature-sector-panel li svg { margin-top: 3px; }
.signature-sector-prompt { margin: 58px 0 0; text-align: center; text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.signature-sector-reveal { scroll-margin-top: 25px; animation: signature-panel-in .7s cubic-bezier(.2,.78,.2,1) both; }
.signature-specialized-benefits { padding-top: 115px; }
.signature-benefit-table { display: grid; grid-template-columns: repeat(2,1fr); border-top: 1px solid rgba(0,0,0,.18); }
.signature-benefit-table article { position: relative; min-height: 245px; display: grid; grid-template-columns: 55px .7fr 1fr; gap: 22px; align-items: start; padding: 36px 60px 36px 0; border-bottom: 1px solid rgba(0,0,0,.18); }
.signature-benefit-table article:nth-child(odd) { border-right: 1px solid rgba(0,0,0,.18); }
.signature-benefit-table article:nth-child(even) { padding-left: 45px; }
.signature-benefit-table article > span { color: #777; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .12em; }
.signature-benefit-table h3 { margin: -7px 0 0; font-size: clamp(24px,2.5vw,38px); letter-spacing: -.045em; }
.signature-benefit-table p { margin: 0; color: #555b61; line-height: 1.65; }
.signature-benefit-table article > svg { position: absolute; right: 22px; bottom: 25px; width: 26px; height: 26px; color: #7e7e77; }
.signature-capacity { min-height: 100svh; display: grid; grid-template-columns: .75fr 1.25fr; gap: 8vw; align-items: center; padding: 125px clamp(22px,6vw,92px); background: radial-gradient(circle at 74% 30%,rgba(255,223,0,.1),transparent 28%),#08090b; color: #f6f4ee; }
.signature-capacity-copy > p { margin: 0; color: var(--yellow); text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.signature-capacity-copy h2 { max-width: 580px; margin: 22px 0 28px; font-size: clamp(50px,5.4vw,82px); line-height: .93; letter-spacing: -.065em; }
.signature-capacity-copy > span { display: block; max-width: 580px; color: #9ca2aa; font-size: 17px; line-height: 1.7; }
.signature-brand-orbit { display: grid; grid-template-columns: repeat(3,1fr); gap: 34px 20px; }
.signature-brand-orbit > * { min-width: 0; display: flex; flex-direction: column; align-items: center; color: inherit; text-align: center; }
.signature-brand-orbit > * > span { width: min(13vw,150px); height: min(13vw,150px); min-width: 112px; min-height: 112px; display: grid; place-items: center; overflow: hidden; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; background: #101317; transition: transform .35s,border-color .35s; }
.signature-brand-orbit a:hover > span { transform: translateY(-5px); border-color: var(--yellow); }
.signature-brand-orbit img { width: 72%; height: 72%; object-fit: contain; }
.signature-brand-orbit a:nth-child(2) img { width: 42%; height: 42%; }
.signature-brand-orbit strong { margin-top: 14px; font-size: 12px; line-height: 1.3; }
.signature-brand-orbit small { margin-top: 5px; color: #767d86; text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .12em; }
.signature-open-orbit > span { border-style: dashed; background: transparent; color: #646b74; font: 750 11px var(--font-geist-mono),monospace; letter-spacing: .12em; }
.signature-open-orbit strong { color: #a6abb2; }
.signature-capacity-meter { margin-top: 54px; }
.signature-capacity-meter > div { height: 5px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.13); }
.signature-capacity-meter > div span { display: block; width: 33.333%; height: 100%; background: var(--yellow); box-shadow: 0 0 14px rgba(255,223,0,.6); animation: signature-capacity-fill 1.1s cubic-bezier(.2,.78,.2,1) both; }
@keyframes signature-capacity-fill { from { width: 0; } }
.signature-capacity-meter p { margin: 12px 0 0; display: flex; justify-content: space-between; color: #7e858e; text-transform: uppercase; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .12em; }
.signature-capacity-meter p strong { color: #f1efe9; }
.signature-capacity-cta { min-height: 58px; margin-top: 42px; display: flex; align-items: center; justify-content: center; gap: 15px; background: var(--yellow); color: var(--ink); text-transform: uppercase; font: 900 9px var(--font-geist-mono),monospace; letter-spacing: .13em; transition: transform .35s,background .35s; }
.signature-capacity-cta:hover { transform: translateY(-3px); background: #fff16d; }

@media (max-width: 700px) {
  .gateway-door { width: 116vw; }
  .gateway-progress { width: 80%; text-align: center; line-height: 1.6; }
  .gateway-core p { font-size: 8px; letter-spacing: .2em; }
  .gateway-core strong { font-size: 6px; }
  .signature-hero video { object-position: 58% center; }
  .signature-hero-shade { background: linear-gradient(0deg,rgba(0,0,0,.88),transparent 72%),linear-gradient(90deg,rgba(0,0,0,.35),transparent); }
  .signature-hero-copy { left: 20px; right: 20px; bottom: 85px; }
  .signature-hero h1 { font-size: 58px; line-height: .82; }
  .signature-hero-copy > p:not(.signature-overline) { font-size: 15px; margin: 20px 0 26px; }
  .signature-status { display: none; }
  .signature-intro { padding: 88px 20px 100px; }
  .signature-intro-grid { grid-template-columns: 1fr; gap: 36px; margin: 58px 0 65px; }
  .signature-intro h2 { font-size: 45px; }
  .signature-manifesto { padding-left: 20px; }
  .signature-pillars { grid-template-columns: 1fr; }
  .signature-pillars article { min-height: 230px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.15); }
  .signature-pillars article:last-child { border-bottom: 0; }
  .signature-pillars h3 { margin-top: 62px; }
  .signature-cta { min-height: 680px; padding: 90px 20px; }
  .signature-cta h2 { font-size: 49px; }
  .signature-premium-hero .signature-hero-copy { bottom: 85px; }
  .signature-premium-hero h1 { font-size: 72px; line-height: .83; }
  .signature-premium-hero .signature-hero-copy > p:not(.signature-overline) { max-width: 92%; }
  .signature-level-control { gap: 16px; }
  .signature-level-control button { width: 88px; height: 88px; flex-basis: 88px; }
  .signature-level-control button img { width: 38px; height: 38px; }
  .signature-level-control > span { max-width: 145px; font-size: 7px; }
  .signature-section-head { grid-template-columns: 1fr; gap: 20px; margin-bottom: 48px; }
  .signature-section-head h2 { font-size: 48px; }
  .signature-story,.signature-motion,.signature-sectors { padding: 90px 20px; }
  .signature-gallery { grid-template-columns: 1fr 1fr; grid-template-rows: 46vh 32vh 36vh; }
  .signature-gallery figure:nth-child(1) { grid-row: auto; grid-column: span 2; }
  .signature-gallery figure:nth-child(4) { grid-column: auto; }
  .signature-definition { grid-template-columns: 1fr; gap: 20px; padding: 90px 0 10px; }
  .signature-definition h2 { font-size: 47px; }
  .signature-definition > div:last-child { padding-top: 25px; }
  .signature-reels { grid-template-columns: repeat(2,1fr); }
  .signature-sector-tabs { grid-template-columns: 1fr; }
  .signature-sector-tabs button { min-height: 88px; border-right: 0; border-bottom: 1px solid rgba(0,0,0,.2); }
  .signature-sector-tabs button:last-child { border-bottom: 0; }
  .signature-sector-panel { grid-template-columns: 1fr; gap: 50px; padding-top: 55px; }
  .signature-sector-promise h3 { font-size: 48px; }
  .signature-specialized-benefits { padding-top: 85px; }
  .signature-benefit-table { grid-template-columns: 1fr; }
  .signature-benefit-table article,.signature-benefit-table article:nth-child(even) { min-height: 225px; grid-template-columns: 38px 1fr; padding: 30px 40px 30px 0; border-right: 0; }
  .signature-benefit-table article:nth-child(even) { padding-left: 0; }
  .signature-benefit-table p { grid-column: 2; }
  .signature-capacity { min-height: auto; grid-template-columns: 1fr; gap: 70px; padding: 95px 20px; }
  .signature-capacity-copy h2 { font-size: 50px; }
  .signature-brand-orbit { grid-template-columns: repeat(2,1fr); gap: 34px 12px; }
  .signature-brand-orbit > * > span { width: 128px; height: 128px; min-width: 0; min-height: 0; }
  .signature-capacity-meter p { gap: 12px; }
}

.brand-cue { width: 18px; height: 18px; flex: 0 0 18px; display: inline-block; position: relative; border: 1px solid currentColor; border-radius: 50%; opacity: .72; vertical-align: middle; }

/* Módulo de Posicionamiento */
.position-page { overflow: clip; background: #030507; color: #f4f3ed; }
.position-page .site-header { z-index: 120; }
.position-door { position: fixed; z-index: 110; inset: 0; pointer-events: none; background: #020304; transition: visibility 0s 2.1s; }
.position-door.is-open { visibility: hidden; }
.door-panel { position: absolute; top: 0; bottom: 0; width: 51%; background: repeating-linear-gradient(90deg,transparent 0 88px,rgba(255,255,255,.025) 89px 90px),linear-gradient(145deg,#15191e,#05070a 62%); box-shadow: inset 0 0 0 1px rgba(255,255,255,.07),inset 0 0 80px #000; transition: transform 1.9s cubic-bezier(.76,0,.24,1) .25s; }
.door-panel::before { content: ""; position: absolute; top: 0; bottom: 0; width: 7px; background: var(--yellow); box-shadow: 0 0 25px rgba(255,223,0,.85); }
.door-left { left: 0; clip-path: polygon(0 0,100% 0,90% 50%,100% 100%,0 100%); }
.door-left::before { right: 0; }
.door-right { right: 0; clip-path: polygon(0 0,100% 0,100% 100%,0 100%,10% 50%); }
.door-right::before { left: 0; }
.position-door.is-open .door-left { transform: translateX(-105%); }
.position-door.is-open .door-right { transform: translateX(105%); }
.door-lock { position: absolute; z-index: 3; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; transition: opacity .4s ease .25s; }
.position-door.is-open .door-lock { opacity: 0; }
.door-lock i { width: 80px; height: 80px; margin-bottom: 25px; border: 1px solid rgba(255,223,0,.7); border-radius: 50%; box-shadow: 0 0 0 12px rgba(255,223,0,.04),inset 0 0 24px rgba(255,223,0,.12); animation: position-lock 1.5s linear infinite; }
.door-lock span { text-transform: uppercase; font: 900 clamp(14px,2vw,26px) var(--font-nunito),sans-serif; letter-spacing: .18em; }
.door-lock small { margin-top: 12px; color: var(--yellow); font: 750 8px var(--font-geist-mono),monospace; letter-spacing: .24em; }
@keyframes position-lock { 50% { border-color: #fff; transform: rotate(180deg) scale(.92); } to { transform: rotate(360deg); } }

.position-hero { --mouse-x: 0px; --mouse-y: 0px; position: relative; min-height: 112svh; isolation: isolate; overflow: hidden; background: radial-gradient(circle at 74% 44%,rgba(41,80,113,.3),transparent 26%),radial-gradient(circle at 18% 60%,rgba(255,223,0,.08),transparent 21%),#030609; }
.position-grid { position: absolute; z-index: -2; inset: 0; opacity: .22; background-image: linear-gradient(rgba(255,255,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.09) 1px,transparent 1px); background-size: 74px 74px; mask-image: linear-gradient(90deg,#000,transparent 72%); transform: perspective(700px) rotateX(63deg) translateY(31%) scale(1.45); transform-origin: bottom; }
.position-world { position: absolute; z-index: -1; right: -8vw; top: 21%; width: min(51vw,730px); aspect-ratio: 1; border: 1px solid rgba(102,175,230,.2); border-radius: 50%; background: radial-gradient(circle at 40% 35%,rgba(41,105,150,.22),rgba(5,13,21,.1) 47%,transparent 68%); box-shadow: inset 0 0 80px rgba(61,142,197,.08),0 0 80px rgba(0,0,0,.65); transform: translate(var(--mouse-x),var(--mouse-y)); transition: transform .35s ease-out; }
.position-world::before,.position-world::after,.position-world i { content: ""; position: absolute; inset: 15%; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; transform: rotate(22deg); }
.position-world::after { inset: 34% 7%; transform: rotate(70deg); }
.position-world i:nth-child(1) { inset: 49% -3%; border-color: rgba(255,223,0,.23); }
.position-world i:nth-child(2) { inset: 9% 43%; }
.position-world i:nth-child(3) { inset: 43%; background: var(--yellow); border: 0; box-shadow: 130px -110px 0 -5px var(--yellow),-170px 65px 0 -6px #78c7ff,90px 140px 0 -6px #78c7ff; animation: position-pulse 2.4s ease-in-out infinite; }
@keyframes position-pulse { 50% { opacity: .35; box-shadow: 130px -110px 20px -4px var(--yellow),-170px 65px 20px -5px #78c7ff,90px 140px 20px -5px #78c7ff; } }
.position-hero-copy { position: absolute; z-index: 5; left: clamp(24px,6vw,94px); top: 26%; width: min(58vw,850px); }
.position-hero-copy > p,.position-act-heading > span,.position-aeo-copy > p,.geo-copy-grid > div:first-child > p,.position-final-copy > p { margin: 0 0 20px; color: var(--yellow); text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .22em; }
.position-hero-copy h1 { margin: 0; max-width: 780px; font-size: clamp(60px,7.7vw,118px); line-height: .81; letter-spacing: -.075em; text-transform: uppercase; }
.position-hero-copy h1 span { display: block; color: transparent; -webkit-text-stroke: 1px rgba(255,255,255,.55); }
.position-hero-copy > a { min-height: 54px; margin-top: 35px; display: inline-flex; align-items: center; gap: 34px; padding: 0 24px; background: var(--yellow); color: #020304; text-transform: uppercase; font: 900 8px var(--font-geist-mono),monospace; letter-spacing: .14em; transition: transform .35s,background .35s; }
.position-hero-copy > a:hover { transform: translateY(-4px); background: #fff176; }
.mario-stage { position: absolute; z-index: 3; right: -2vw; bottom: -4px; width: min(48vw,690px); height: 96%; pointer-events: none; transform: translate(calc(var(--mouse-x) * -.35),calc(var(--mouse-y) * -.2)); transition: transform .35s ease-out; }
.mario-stage > img { position: absolute; z-index: 2; right: 0; bottom: 0; width: 100%; height: 88%; object-fit: contain; object-position: right bottom; filter: drop-shadow(-25px 25px 35px rgba(0,0,0,.72)); }
.mario-halo { position: absolute; z-index: 1; right: 5%; bottom: 8%; width: 82%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle,rgba(255,223,0,.14),rgba(62,157,226,.07) 42%,transparent 70%); filter: blur(7px); }
.mario-ident { position: absolute; z-index: 5; right: 8%; bottom: 7%; min-width: 190px; padding: 14px 16px; border-left: 2px solid var(--yellow); background: rgba(3,6,9,.78); backdrop-filter: blur(12px); }
.mario-ident small,.mario-ident span { display: block; color: #8f98a1; font: 700 6px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.mario-ident strong { display: block; margin: 4px 0; font-size: 22px; }
.mario-ident span { color: var(--yellow); }
.position-mission-copy { position: absolute; z-index: 6; left: clamp(24px,6vw,94px); bottom: 7%; width: min(42vw,590px); display: grid; grid-template-columns: 100px 1fr; gap: 20px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.14); }
.position-mission-copy span { color: #79828c; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.position-mission-copy p { margin: 0; color: #c4c8cd; font-size: 15px; line-height: 1.65; }
.position-act-nav { display: grid; grid-template-columns: repeat(3,1fr); padding: 0 clamp(24px,6vw,94px); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #070a0d; }
.position-act-nav a { min-height: 140px; display: grid; grid-template-columns: 44px 1fr; grid-template-rows: 1fr 1fr; gap: 0 18px; align-content: center; padding: 28px 35px; border-right: 1px solid var(--line); transition: background .3s; }
.position-act-nav a:last-child { border-right: 0; }
.position-act-nav a:hover { background: rgba(255,223,0,.055); }
.position-act-nav b { grid-row: 1/3; color: var(--yellow); font: 800 9px var(--font-geist-mono),monospace; }
.position-act-nav span { align-self: end; font-size: 19px; font-weight: 800; }
.position-act-nav small { align-self: start; margin-top: 7px; color: #6f7780; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .16em; }

.position-search-section { padding: 135px clamp(24px,6vw,94px) 150px; background: #eae9e3; color: #05070a; }
.position-act-heading { display: grid; grid-template-columns: .42fr 1.58fr; align-items: start; gap: 5vw; }
.position-act-heading > span { margin-top: 11px; color: #6b6e72; }
.position-act-heading h2 { max-width: 920px; margin: 0; font-size: clamp(54px,7vw,104px); line-height: .88; letter-spacing: -.072em; }
.position-search-console { max-width: 1120px; margin: 90px auto 0; overflow: hidden; border: 1px solid rgba(5,7,10,.2); background: #f9f9f6; box-shadow: 0 35px 80px rgba(0,0,0,.11); }
.position-console-bar,.ai-oracle-top { min-height: 45px; display: flex; align-items: center; gap: 11px; padding: 0 18px; border-bottom: 1px solid rgba(5,7,10,.14); color: #65696d; text-transform: uppercase; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.position-console-bar i,.ai-oracle-top i { width: 7px; height: 7px; border-radius: 50%; background: #a9acaf; }
.position-console-bar small,.ai-oracle-top small { margin-left: auto; color: #81858a; font: inherit; }
.is-ranked .position-console-bar small { color: #00875a; }
.position-search-input { display: grid; grid-template-columns: 36px 1fr auto; align-items: center; gap: 8px; margin: 34px; padding: 9px 10px 9px 18px; border: 1px solid rgba(5,7,10,.22); border-radius: 99px; background: #fff; box-shadow: 0 8px 28px rgba(0,0,0,.06); }
.position-search-input svg { color: #6e747a; }
.position-search-input input { min-width: 0; height: 42px; border: 0; outline: 0; background: transparent; color: #05070a; font: 650 16px var(--font-nunito),sans-serif; }
.position-search-input button,.position-mobile-rank { min-height: 40px; padding: 0 20px; border: 0; border-radius: 99px; background: #05070a; color: #fff; cursor: pointer; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .11em; text-transform: uppercase; }
.position-search-input button:disabled { opacity: .25; cursor: default; }
.position-search-empty { min-height: 390px; display: grid; place-items: center; align-content: center; gap: 18px; padding: 50px; text-align: center; }
.position-search-empty span { color: #c2c4c4; font-size: 96px; font-weight: 900; letter-spacing: -.08em; }
.position-search-empty p { max-width: 440px; margin: 0; color: #656a70; line-height: 1.6; }
.position-results { padding: 0 34px 34px; }
.position-drop-zone { height: 66px; margin-bottom: 8px; display: grid; place-items: center; border: 1px dashed rgba(5,7,10,.21); color: #95989a; text-transform: uppercase; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .15em; transition: background .3s,border-color .3s; }
.position-results.is-dragging .position-drop-zone { border-color: var(--yellow); background: rgba(255,223,0,.16); color: #05070a; }
.position-results article { min-height: 98px; display: grid; grid-template-columns: 34px 1fr 26px; gap: 17px; align-items: center; padding: 15px 20px; border-bottom: 1px solid rgba(5,7,10,.1); background: #fff; }
.position-results article b { color: #a7aaad; font: 750 8px var(--font-geist-mono),monospace; }
.position-results article small { color: #8b8f93; font: 750 6px var(--font-geist-mono),monospace; letter-spacing: .13em; }
.position-results article strong { display: block; margin: 4px 0; font-size: 16px; }
.position-results article p { margin: 0; color: #787d82; font-size: 11px; }
.position-results article.is-company { position: relative; z-index: 2; border: 1px solid var(--yellow); background: #fffde7; box-shadow: 0 10px 24px rgba(0,0,0,.1); cursor: grab; animation: company-found .7s cubic-bezier(.2,.8,.2,1) both; }
.position-results article.is-company small { color: #6b6000; }
@keyframes company-found { from { opacity: 0; transform: translateY(25px); } }
.position-mobile-rank { width: 100%; margin-top: 22px; border-radius: 0; display: flex; align-items: center; justify-content: center; gap: 18px; background: var(--yellow); color: #05070a; }
.position-success { position: relative; min-height: 74svh; margin: 105px calc(clamp(24px,6vw,94px) * -1) -150px; padding: 110px clamp(24px,8vw,125px); display: flex; flex-direction: column; justify-content: center; overflow: hidden; background: radial-gradient(circle at 77% 48%,rgba(255,223,0,.13),transparent 28%),#05070a; color: #fff; }
.position-success > p { margin: 0 0 25px; color: var(--yellow); text-transform: uppercase; font: 800 11px var(--font-geist-mono),monospace; letter-spacing: .2em; }
.position-success h3 { position: relative; z-index: 2; max-width: 1020px; margin: 0; font-size: clamp(48px,6.5vw,94px); line-height: .91; letter-spacing: -.064em; }
.position-signals { position: relative; z-index: 2; margin-top: 64px; display: flex; flex-wrap: wrap; gap: 12px; }
.position-signals span { min-height: 44px; display: flex; align-items: center; gap: 11px; padding: 0 16px; border: 1px solid rgba(255,255,255,.16); color: #aab0b7; text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .13em; }
.position-signals i { width: 5px; height: 5px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 10px var(--yellow); }
.position-energy-lines { position: absolute; inset: 0; background: repeating-radial-gradient(circle at 75% 50%,transparent 0 42px,rgba(255,223,0,.07) 43px 44px); animation: energy-expand 3s linear infinite; }
@keyframes energy-expand { 50% { transform: scale(1.15); opacity: .4; } }

.position-ai { padding: 145px clamp(24px,6vw,94px); background: radial-gradient(circle at 18% 38%,rgba(70,113,151,.16),transparent 26%),#04070a; color: #f3f2ed; }
.position-act-heading.light > span { color: var(--yellow); }
.position-act-heading.light { grid-template-columns: .42fr 1.2fr .38fr; }
.position-act-heading.light > p { max-width: 300px; margin: 14px 0 0; color: #9ba2aa; font-size: 17px; line-height: 1.55; }
.ai-oracle { max-width: 1180px; margin: 95px auto 0; display: grid; grid-template-columns: .44fr .56fr; overflow: hidden; border: 1px solid rgba(255,255,255,.15); background: rgba(7,12,17,.78); backdrop-filter: blur(20px); box-shadow: 0 40px 100px rgba(0,0,0,.4); }
.ai-oracle-top { grid-column: 1/3; border-color: rgba(255,255,255,.13); color: #7c8792; }
.ai-oracle-top i { background: var(--yellow); box-shadow: 0 0 11px var(--yellow); }
.ai-prompt-list { border-right: 1px solid rgba(255,255,255,.13); }
.ai-prompt-list button { width: 100%; min-height: 125px; display: grid; grid-template-columns: 36px 1fr; gap: 16px; align-items: center; padding: 24px; border: 0; border-bottom: 1px solid rgba(255,255,255,.1); background: transparent; color: #9ca4ad; text-align: left; cursor: pointer; font-size: 14px; line-height: 1.45; transition: background .3s,color .3s; }
.ai-prompt-list button:last-child { border-bottom: 0; }
.ai-prompt-list button span { color: #68727d; font: 750 7px var(--font-geist-mono),monospace; }
.ai-prompt-list button.active { background: rgba(255,223,0,.055); color: #fff; }
.ai-prompt-list button.active span { color: var(--yellow); }
.ai-answer { position: relative; min-height: 375px; padding: 62px; display: flex; flex-direction: column; justify-content: center; animation: ai-answer-in .55s cubic-bezier(.2,.8,.2,1) both; }
@keyframes ai-answer-in { from { opacity: 0; transform: translateY(14px); } }
.ai-answer > span { color: var(--yellow); font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.ai-answer > p { max-width: 620px; margin: 28px 0 36px; color: #d2d5d8; font-size: clamp(18px,2vw,28px); line-height: 1.5; }
.ai-answer > div { display: flex; gap: 8px; }
.ai-answer i { width: 38px; height: 3px; background: #1e2831; animation: ai-thinking 1.2s ease-in-out infinite alternate; }
.ai-answer i:nth-child(2) { animation-delay: .15s; }.ai-answer i:nth-child(3) { animation-delay: .3s; }.ai-answer i:nth-child(4) { animation-delay: .45s; }.ai-answer i:nth-child(5) { animation-delay: .6s; }
@keyframes ai-thinking { to { background: var(--yellow); box-shadow: 0 0 9px rgba(255,223,0,.55); } }
.position-aeo-copy { max-width: 1050px; margin: 130px 0 0 auto; padding-left: 7vw; border-left: 1px solid rgba(255,223,0,.35); }
.position-aeo-copy h3 { margin: 0 0 35px; font-size: clamp(52px,6.4vw,96px); line-height: .91; letter-spacing: -.067em; }
.position-aeo-copy > span { display: block; max-width: 780px; color: #a9b0b8; font-size: clamp(17px,1.8vw,23px); line-height: 1.7; }
.position-aeo-copy > small { display: block; margin-top: 28px; color: #626b74; text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .14em; }

.position-geo { padding: 145px clamp(24px,6vw,94px) 0; overflow: hidden; background: #eae9e3; color: #05070a; }
.geo-system { position: relative; width: min(82vw,980px); aspect-ratio: 1; margin: 60px auto -60px; }
.geo-orbit { position: absolute; left: 50%; top: 50%; border: 1px solid rgba(5,7,10,.15); border-radius: 50%; transform: translate(-50%,-50%); }
.orbit-one { width: 34%; height: 34%; }.orbit-two { width: 62%; height: 62%; border-style: dashed; animation: geo-spin 45s linear infinite; }.orbit-three { width: 88%; height: 88%; }
@keyframes geo-spin { to { transform: translate(-50%,-50%) rotate(360deg); } }
.geo-core { position: absolute; z-index: 3; left: 50%; top: 50%; width: 190px; height: 190px; display: grid; place-items: center; align-content: center; border-radius: 50%; transform: translate(-50%,-50%); background: #05070a; color: #fff; box-shadow: 0 0 0 28px rgba(255,223,0,.22),0 25px 70px rgba(0,0,0,.3); }
.geo-core span { color: var(--yellow); font-size: 42px; font-weight: 950; letter-spacing: -.05em; }
.geo-core small { margin-top: 7px; color: #858d95; text-align: center; font: 700 6px/1.5 var(--font-geist-mono),monospace; letter-spacing: .13em; }
.geo-node { position: absolute; z-index: 4; display: flex; align-items: center; gap: 10px; padding: 10px 13px; border: 1px solid rgba(5,7,10,.16); background: rgba(255,255,255,.7); backdrop-filter: blur(10px); color: #282c30; font: 750 9px var(--font-geist-mono),monospace; letter-spacing: .05em; box-shadow: 0 10px 30px rgba(0,0,0,.06); }
.geo-node i { width: 7px; height: 7px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 0 4px rgba(255,223,0,.25); }
.node-1 { left: 44%; top: 4%; }.node-2 { right: 4%; top: 24%; }.node-3 { right: 1%; top: 57%; }.node-4 { right: 20%; bottom: 6%; }.node-5 { left: 37%; bottom: 0; }.node-6 { left: 3%; bottom: 21%; }.node-7 { left: 0; top: 34%; }.node-8 { left: 20%; top: 9%; }
.geo-copy-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 10vw; align-items: start; padding: 130px 0; border-top: 1px solid rgba(5,7,10,.16); }
.geo-copy-grid h3 { max-width: 620px; margin: 0; font-size: clamp(45px,5.4vw,80px); line-height: .92; letter-spacing: -.065em; }
.geo-copy-grid > div:last-child p { max-width: 710px; margin: 0 0 25px; color: #54595e; font-size: 18px; line-height: 1.72; }
.authority-constellation { position: relative; height: 76svh; margin: 0 calc(clamp(24px,6vw,94px) * -1); overflow: hidden; background: radial-gradient(circle at 50% 50%,rgba(255,223,0,.25),transparent 12%),radial-gradient(circle at 50% 50%,#15222d,#030609 55%); }
.authority-constellation > i { position: absolute; left: 50%; top: 50%; width: var(--size); height: var(--size); border-radius: 50%; background: var(--yellow); box-shadow: 0 0 13px var(--yellow); transform: rotate(var(--angle)) translateX(var(--distance)); animation: constellation-breathe var(--duration) ease-in-out infinite alternate; }
@keyframes constellation-breathe { to { opacity: .25; transform: rotate(var(--angle)) translateX(var(--distance)) scale(.55); } }
.authority-constellation > div { position: absolute; z-index: 3; left: 50%; top: 50%; display: flex; flex-direction: column; align-items: center; transform: translate(-50%,-50%); text-align: center; }
.authority-constellation span { color: var(--yellow); font: 850 clamp(40px,7vw,100px) var(--font-nunito),sans-serif; letter-spacing: -.07em; }
.authority-constellation strong { color: #a8b0b8; text-transform: uppercase; font: 700 8px var(--font-geist-mono),monospace; letter-spacing: .18em; }

.position-final { position: relative; min-height: 110svh; display: flex; align-items: center; overflow: hidden; isolation: isolate; padding: 120px clamp(24px,6vw,94px); background: #030609; color: #f4f3ed; }
.position-final > img { position: absolute; z-index: 2; right: -3%; bottom: 0; width: min(42vw,640px); max-height: 94%; object-fit: contain; object-position: right bottom; filter: brightness(.62) contrast(1.1) drop-shadow(-25px 20px 40px #000); }
.position-final-planet { position: absolute; z-index: -1; right: -4vw; top: 10%; width: min(62vw,880px); aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle at 38% 35%,#274c65,#07111a 48%,#020304 69%); box-shadow: inset -45px -30px 80px #000,0 0 90px rgba(62,135,187,.2); }
.position-final-planet::before,.position-final-planet::after,.position-final-planet i { content: ""; position: absolute; inset: 13%; border: 1px solid rgba(255,223,0,.19); border-radius: 50%; transform: rotate(35deg); }
.position-final-planet::after { inset: 35% 4%; transform: rotate(81deg); }
.position-final-planet i:nth-child(2) { inset: 48% -5%; transform: rotate(2deg); }
.position-final-copy { position: relative; z-index: 5; width: min(63vw,980px); }
.position-final-copy h2 { margin: 0; font-size: clamp(56px,7.2vw,108px); line-height: .87; letter-spacing: -.072em; }
.position-final-copy h2 span { display: block; color: var(--yellow); }
.position-final-copy > div { margin-top: 42px; display: flex; flex-wrap: wrap; gap: 8px; }
.position-final-copy > div span { padding: 10px 13px; border: 1px solid rgba(255,255,255,.16); color: #929aa3; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .1em; text-transform: uppercase; }
.position-final-copy nav { margin-top: 50px; display: flex; flex-wrap: wrap; gap: 12px; }
.position-final-copy nav a { min-height: 56px; display: inline-flex; align-items: center; gap: 22px; padding: 0 22px; text-transform: uppercase; font: 850 8px var(--font-geist-mono),monospace; letter-spacing: .12em; transition: transform .3s,background .3s; }
.position-final-copy nav a:hover { transform: translateY(-4px); }
.position-primary-cta { background: var(--yellow); color: #05070a; }
.position-secondary-cta { border: 1px solid rgba(255,255,255,.27); color: #fff; }

@media (max-width: 700px) {
  .door-panel { width: 53%; }
  .door-lock span { max-width: 80%; font-size: 13px; line-height: 1.5; }
  .position-hero { min-height: 900px; }
  .position-grid { background-size: 48px 48px; }
  .position-world { width: 95vw; right: -40vw; top: 37%; }
  .position-hero-copy { left: 20px; right: 20px; top: 145px; width: auto; }
  .position-hero-copy > p { max-width: 270px; line-height: 1.7; }
  .position-hero-copy h1 { max-width: 370px; font-size: 50px; line-height: .84; }
  .position-hero-copy > a { min-height: 48px; margin-top: 25px; }
  .mario-stage { right: -25%; bottom: 0; width: 115vw; height: 61%; }
  .mario-stage > img { height: 100%; object-position: right bottom; }
  .mario-ident { right: 24%; bottom: 5%; min-width: 150px; }
  .position-mission-copy { left: 20px; bottom: 23px; width: 55%; grid-template-columns: 1fr; gap: 8px; padding-top: 13px; }
  .position-mission-copy p { font-size: 11px; line-height: 1.45; }
  .position-act-nav { grid-template-columns: 1fr; padding: 0 20px; }
  .position-act-nav a { min-height: 96px; padding: 20px 4px; border-right: 0; border-bottom: 1px solid var(--line); }
  .position-act-nav a:last-child { border-bottom: 0; }
  .position-search-section,.position-ai { padding: 90px 20px 100px; }
  .position-act-heading,.position-act-heading.light { grid-template-columns: 1fr; gap: 16px; }
  .position-act-heading h2 { font-size: 48px; }
  .position-act-heading.light > p { margin-top: 0; }
  .position-search-console { margin-top: 55px; }
  .position-console-bar { padding: 0 12px; font-size: 6px; letter-spacing: .1em; }
  .position-console-bar small { display: none; }
  .position-search-input { grid-template-columns: 24px 1fr; margin: 15px; padding: 8px 13px; border-radius: 16px; }
  .position-search-input button { grid-column: 1/3; width: 100%; border-radius: 9px; }
  .position-search-empty { min-height: 300px; padding: 30px; }
  .position-search-empty span { font-size: 66px; }
  .position-results { padding: 0 15px 20px; }
  .position-results article { min-height: 88px; grid-template-columns: 24px 1fr 18px; gap: 8px; padding: 12px; }
  .position-results article p { display: none; }
  .position-results article strong { font-size: 13px; }
  .position-drop-zone { height: 54px; }
  .position-success { min-height: 680px; margin: 75px -20px -100px; padding: 90px 20px; }
  .position-success h3 { font-size: 48px; }
  .position-signals { margin-top: 40px; gap: 7px; }
  .position-signals span { min-height: 38px; padding: 0 10px; font-size: 6px; }
  .ai-oracle { grid-template-columns: 1fr; margin-top: 55px; }
  .ai-oracle-top { grid-column: auto; font-size: 6px; }
  .ai-oracle-top small { display: none; }
  .ai-prompt-list { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.13); }
  .ai-prompt-list button { min-height: 80px; padding: 15px; }
  .ai-answer { min-height: 340px; padding: 30px 22px; }
  .ai-answer > p { font-size: 18px; }
  .position-aeo-copy { margin-top: 85px; padding-left: 18px; }
  .position-aeo-copy h3 { font-size: 47px; }
  .position-aeo-copy > span { font-size: 16px; }
  .position-geo { padding: 90px 20px 0; }
  .geo-system { width: 115vw; margin: 30px -17vw -10px; transform: scale(.84); }
  .geo-core { width: 120px; height: 120px; }
  .geo-core span { font-size: 30px; }
  .geo-node { max-width: 125px; padding: 8px; font-size: 6px; }
  .node-1 { left: 40%; }.node-2 { right: 1%; }.node-3 { right: -2%; }.node-4 { right: 15%; }.node-5 { left: 35%; }.node-6 { left: 0; }.node-7 { left: -2%; }.node-8 { left: 15%; }
  .geo-copy-grid { grid-template-columns: 1fr; gap: 40px; padding: 90px 0; }
  .geo-copy-grid h3 { font-size: 46px; }
  .geo-copy-grid > div:last-child p { font-size: 16px; }
  .authority-constellation { height: 640px; margin: 0 -20px; }
  .authority-constellation > i { transform: rotate(var(--angle)) translateX(var(--mobile-distance)); }
  .position-final { min-height: 900px; align-items: flex-start; padding: 100px 20px; }
  .position-final-copy { width: 100%; }
  .position-final-copy h2 { font-size: 49px; }
  .position-final-copy > div { margin-top: 28px; }
  .position-final-copy nav { margin-top: 34px; flex-direction: column; align-items: stretch; }
  .position-final-copy nav a { justify-content: space-between; }
  .position-final > img { right: -27%; width: 112vw; max-height: 49%; opacity: .76; }
  .position-final-planet { width: 125vw; right: -56vw; top: 45%; }
}

@media (prefers-reduced-motion: reduce) {
  .position-door { display: none; }
  .position-world,.mario-stage,.geo-orbit,.authority-constellation > i,.position-energy-lines { animation: none !important; transform: none; }
}

/* Fotografía — laboratorio inmersivo */
.photography-page { overflow: clip; background: #030407; color: #f5f4ee; }
.photography-page .site-header { z-index: 80; }
.photo-camera-sequence { position: relative; height: 310vh; background: #020306; }
.photo-camera-sticky { position: sticky; top: 0; height: 100svh; overflow: hidden; isolation: isolate; background: radial-gradient(circle at 70% 52%,rgba(255,223,0,.085),transparent 24%),linear-gradient(122deg,#080b10,#020306 66%); }
.photo-stars { position: absolute; z-index: -2; inset: 0; opacity: .52; background-image: radial-gradient(circle,rgba(255,255,255,.78) 0 1px,transparent 1.2px),radial-gradient(circle,rgba(255,223,0,.55) 0 1px,transparent 1.3px); background-position: 18px 22px,73px 85px; background-size: 118px 118px,173px 173px; mask-image: linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.15)); }
.photo-camera-sticky::before { content: ""; position: absolute; z-index: -1; width: min(54vw,780px); aspect-ratio: 1; right: 8vw; top: 50%; transform: translateY(-50%); border: 1px solid rgba(255,255,255,.08); border-radius: 50%; box-shadow: 0 0 0 7vw rgba(255,255,255,.018),0 0 0 14vw rgba(255,255,255,.01); }
.photo-lab-copy { position: absolute; z-index: 5; left: clamp(24px,6vw,94px); top: 50%; width: min(44vw,700px); transform: translateY(-50%); transition: opacity .18s linear; pointer-events: none; }
.photo-lab-copy > p,.gallery-topline,.photo-director-copy > p,.photo-final-copy > p { margin: 0 0 24px; color: var(--yellow); text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .2em; }
.photo-lab-copy h1 { margin: 0; font-size: clamp(69px,8.6vw,138px); line-height: .78; letter-spacing: -.078em; text-transform: uppercase; }
.photo-lab-copy h1 span { color: transparent; -webkit-text-stroke: 1px rgba(255,255,255,.52); }
.photo-lab-copy strong { display: block; max-width: 470px; margin-top: 32px; color: #a7adb5; font-size: clamp(17px,1.5vw,22px); line-height: 1.55; font-weight: 500; }
.camera-stage { position: absolute; z-index: 3; inset: 8vh 0 5vh 37vw; perspective: 1200px; }
.camera-stage canvas { position: absolute; z-index: 2; inset: 0; width: 100%; height: 100%; filter: drop-shadow(0 34px 42px rgba(0,0,0,.72)); }
.camera-fallback { position: absolute; z-index: 1; left: 50%; top: 50%; width: min(73vw,920px); max-width: none; transform: translate(-50%,-50%); opacity: .94; filter: drop-shadow(0 35px 45px rgba(0,0,0,.75)); transition: opacity .7s; animation: camera-breathe 5.4s ease-in-out infinite; }
.camera-fallback.is-hidden { opacity: 0; }
.camera-halo { position: absolute; z-index: 0; left: 54%; top: 49%; width: min(45vw,640px); aspect-ratio: 1; transform: translate(-50%,-50%); border-radius: 50%; background: radial-gradient(circle,rgba(255,226,56,.18),rgba(255,223,0,.04) 42%,transparent 72%); filter: blur(8px); animation: camera-halo 4.6s ease-in-out infinite; }
@keyframes camera-breathe { 50% { transform: translate(-50%,-52%) rotate(-1deg); } }
@keyframes camera-halo { 50% { transform: translate(-50%,-50%) scale(1.08); opacity: .72; } }
.camera-screen-message { position: absolute; z-index: 7; right: clamp(18px,7vw,110px); top: 48%; width: 220px; padding: 17px 19px; border: 1px solid rgba(255,223,0,.45); background: rgba(3,5,8,.78); backdrop-filter: blur(14px); opacity: 0; transform: translateY(12px); transition: opacity .45s,transform .45s; pointer-events: none; }
.camera-screen-message.is-visible { opacity: 1; transform: none; }
.camera-screen-message span { display: block; color: #fff; font-size: 13px; font-weight: 800; }
.camera-screen-message small { display: block; margin-top: 7px; color: var(--yellow); text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.camera-shutter { position: absolute; z-index: 9; right: clamp(26px,11vw,170px); top: 22%; display: flex; align-items: center; gap: 15px; border: 0; padding: 0; background: transparent; cursor: pointer; opacity: 0; transform: translateY(12px); pointer-events: none; transition: opacity .45s,transform .45s; }
.camera-shutter.is-visible { opacity: 1; transform: none; pointer-events: auto; }
.camera-shutter i { position: relative; width: 42px; height: 42px; display: block; border: 1px solid rgba(255,223,0,.9); border-radius: 50%; background: var(--yellow); box-shadow: 0 0 0 9px rgba(255,223,0,.08),0 0 26px rgba(255,223,0,.7); animation: shutter-pulse 1.7s ease-out infinite; }
.camera-shutter i::after { content: ""; position: absolute; width: 1px; height: 70px; left: 50%; top: 49px; background: linear-gradient(var(--yellow),transparent); }
.camera-shutter span { max-width: 108px; color: #fff; text-align: left; text-transform: uppercase; font: 800 7px/1.55 var(--font-geist-mono),monospace; letter-spacing: .15em; }
@keyframes shutter-pulse { 50% { box-shadow: 0 0 0 15px rgba(255,223,0,0),0 0 34px rgba(255,223,0,.9); } }
.camera-progress { position: absolute; z-index: 8; left: clamp(24px,6vw,94px); right: clamp(24px,6vw,94px); bottom: 34px; height: 1px; background: rgba(255,255,255,.15); }
.camera-progress > span { display: block; height: 1px; background: var(--yellow); box-shadow: 0 0 12px rgba(255,223,0,.8); transition: width .1s linear; }
.camera-progress small { position: absolute; right: 0; bottom: 14px; color: #727983; text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.photo-burst { position: absolute; z-index: 20; inset: 0; pointer-events: none; }
.photo-burst img { position: absolute; left: 61%; top: 51%; width: clamp(105px,13vw,205px); aspect-ratio: 4/5; object-fit: cover; padding: 7px 7px 25px; background: #e9e7df; opacity: 0; transform: translate(-50%,-50%) scale(.18); box-shadow: 0 24px 55px rgba(0,0,0,.48); }
.has-fired .photo-burst img { animation: photo-eject 1.2s cubic-bezier(.16,.82,.24,1) calc(var(--burst-index) * .075s) both; }
.has-fired .photo-burst img:nth-child(1) { --burst-x: -36vw; --burst-y: -25vh; --burst-r: -11deg; }
.has-fired .photo-burst img:nth-child(2) { --burst-x: -16vw; --burst-y: -34vh; --burst-r: 8deg; }
.has-fired .photo-burst img:nth-child(3) { --burst-x: 9vw; --burst-y: -29vh; --burst-r: -5deg; }
.has-fired .photo-burst img:nth-child(4) { --burst-x: 27vw; --burst-y: -13vh; --burst-r: 10deg; }
.has-fired .photo-burst img:nth-child(5) { --burst-x: -39vw; --burst-y: 20vh; --burst-r: 7deg; }
.has-fired .photo-burst img:nth-child(6) { --burst-x: -17vw; --burst-y: 30vh; --burst-r: -8deg; }
.has-fired .photo-burst img:nth-child(7) { --burst-x: 9vw; --burst-y: 27vh; --burst-r: 6deg; }
.has-fired .photo-burst img:nth-child(8) { --burst-x: 29vw; --burst-y: 17vh; --burst-r: -8deg; }
@keyframes photo-eject { 0% { opacity: 0; transform: translate(-50%,-50%) scale(.16) rotate(0); } 22% { opacity: 1; } 100% { opacity: 1; transform: translate(calc(-50% + var(--burst-x)),calc(-50% + var(--burst-y))) scale(1) rotate(var(--burst-r)); } }
.camera-flash { position: fixed; z-index: 9999; inset: 0; background: #fff; opacity: 0; pointer-events: none; transition: opacity .26s ease-out; }
.camera-flash.is-active { opacity: 1; transition-duration: .035s; }

.photo-gallery-scroll { position: relative; height: 430vh; background: #05070a; }
.photo-gallery-sticky { position: sticky; top: 0; height: 100svh; overflow: hidden; padding-top: 84px; }
.photo-gallery-scroll:not(.is-unlocked) .photo-gallery-sticky::after { content: "Presiona el obturador para revelar el portafolio"; position: absolute; z-index: 30; inset: 0; display: grid; place-items: center; padding: 20px; background: rgba(3,4,7,.82); backdrop-filter: blur(18px); color: var(--yellow); text-align: center; text-transform: uppercase; font: 800 9px var(--font-geist-mono),monospace; letter-spacing: .18em; }
.gallery-topline { height: 42px; margin: 0 clamp(22px,4vw,64px); display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid rgba(255,255,255,.15); }
.gallery-topline small { color: #717983; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .13em; }
.photo-gallery-track { width: 400vw; height: calc(100svh - 127px); display: flex; transform: translate3d(calc(var(--gallery-progress) * -300vw),0,0); will-change: transform; }
.photo-category { width: 100vw; flex: 0 0 100vw; display: grid; grid-template-columns: .72fr 1.28fr; gap: 5vw; align-items: center; padding: 35px clamp(22px,4vw,64px) 55px; }
.photo-category-copy > p { margin: 0 0 23px; color: #6e7680; font: 750 8px var(--font-geist-mono),monospace; letter-spacing: .18em; }
.photo-category-copy > span { display: inline-flex; margin-bottom: 22px; padding: 9px 12px; border: 1px solid rgba(255,223,0,.5); border-radius: 99px; color: var(--yellow); text-transform: uppercase; font: 800 7px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.photo-category-copy h2 { max-width: 560px; margin: 0 0 28px; font-size: clamp(52px,5.4vw,86px); line-height: .9; letter-spacing: -.066em; }
.photo-category-copy strong { display: block; max-width: 510px; color: #959da7; font-size: 16px; line-height: 1.7; font-weight: 500; }
.photo-category-grid { height: min(67vh,670px); display: grid; grid-template-columns: 1.15fr .85fr; grid-template-rows: 1fr 1fr; gap: 12px; }
.photo-category-grid button { position: relative; overflow: hidden; border: 0; padding: 0; background: #0b0e13; cursor: zoom-in; }
.photo-category-grid button:first-child { grid-row: span 2; }
.photo-category-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .65s cubic-bezier(.2,.8,.2,1),filter .5s; }
.photo-category-grid button:hover img { transform: scale(1.045); filter: brightness(1.08); }
.photo-category-grid svg { position: absolute; right: 16px; bottom: 16px; width: 15px; height: 15px; padding: 10px; box-sizing: content-box; border-radius: 50%; background: rgba(3,5,8,.75); color: var(--yellow); backdrop-filter: blur(8px); }
.gallery-meter { position: absolute; z-index: 5; left: clamp(22px,4vw,64px); right: clamp(22px,4vw,64px); bottom: 23px; height: 2px; background: rgba(255,255,255,.12); }
.gallery-meter span { display: block; height: 100%; background: var(--yellow); }

.photo-director { min-height: 100svh; display: grid; grid-template-columns: .9fr 1.1fr; align-items: stretch; background: #ebe9e1; color: #05070a; }
.photo-director-image { position: relative; min-height: 760px; overflow: hidden; background: #20170f; }
.photo-director-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,transparent 65%,rgba(235,233,225,.34)),linear-gradient(0deg,rgba(0,0,0,.24),transparent 35%); }
.photo-director-image img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 25%; filter: contrast(1.03) saturate(.9); }
.photo-director-copy { display: flex; flex-direction: column; justify-content: center; padding: 100px clamp(35px,8vw,130px); }
.photo-director-copy > p { color: #6e655c; }
.photo-director-copy h2 { max-width: 700px; margin: 0; font-size: clamp(58px,6vw,94px); line-height: .9; letter-spacing: -.07em; }
.photo-director-copy h3 { margin: 50px 0 8px; color: #75691c; font-size: 23px; }
.photo-director-copy span { display: block; max-width: 640px; color: #575a5d; font-size: 16px; line-height: 1.75; }

.photo-finale { position: relative; padding: 140px clamp(22px,6vw,92px) 160px; background: radial-gradient(circle at 50% 31%,rgba(255,223,0,.1),transparent 26%),#030407; }
.photo-mosaic { position: relative; width: min(92vw,1160px); height: min(72vw,790px); margin: 0 auto 150px; perspective: 1100px; }
.photo-mosaic > img { position: absolute; width: 18%; height: 29%; object-fit: cover; border: 6px solid #dedbd2; box-shadow: 0 28px 60px rgba(0,0,0,.55); }
.photo-mosaic > img:nth-child(1) { left: 3%; top: 8%; transform: rotate(-7deg) translateZ(-40px); }.photo-mosaic > img:nth-child(2) { left: 22%; top: 0; transform: rotate(4deg); }.photo-mosaic > img:nth-child(3) { right: 22%; top: 2%; transform: rotate(-3deg); }.photo-mosaic > img:nth-child(4) { right: 3%; top: 10%; transform: rotate(7deg) translateZ(-40px); }
.photo-mosaic > img:nth-child(5) { left: 0; top: 38%; transform: rotate(5deg); }.photo-mosaic > img:nth-child(6) { left: 20%; top: 44%; transform: rotate(-5deg) translateZ(-20px); }.photo-mosaic > img:nth-child(7) { right: 20%; top: 44%; transform: rotate(4deg) translateZ(-20px); }.photo-mosaic > img:nth-child(8) { right: 0; top: 38%; transform: rotate(-5deg); }
.photo-mosaic > img:nth-child(9) { left: 7%; bottom: 0; transform: rotate(-4deg); }.photo-mosaic > img:nth-child(10) { left: 27%; bottom: -5%; transform: rotate(5deg); }.photo-mosaic > img:nth-child(11) { right: 27%; bottom: -4%; transform: rotate(-5deg); }.photo-mosaic > img:nth-child(12) { right: 7%; bottom: 0; transform: rotate(4deg); }
.photo-mosaic-core { position: absolute; z-index: 5; left: 50%; top: 50%; width: 230px; height: 230px; display: grid; place-items: center; transform: translate(-50%,-50%); border: 1px solid rgba(255,223,0,.38); border-radius: 50%; background: rgba(3,5,8,.93); box-shadow: 0 0 0 28px rgba(255,223,0,.035),0 0 80px rgba(0,0,0,.8); }
.photo-mosaic-core img { width: 58%; }
.photo-final-copy { max-width: 1180px; margin: 0 auto; text-align: center; }
.photo-final-copy h2 { max-width: 1030px; margin: 0 auto 48px; font-size: clamp(62px,8vw,125px); line-height: .86; letter-spacing: -.078em; }
.photo-final-copy > div { max-width: 860px; margin: 0 auto 46px; display: grid; grid-template-columns: 1fr 1fr; gap: 50px; text-align: left; }
.photo-final-copy > div p { margin: 0; color: #969da6; font-size: 15px; line-height: 1.72; }
.photo-final-copy > a { min-height: 60px; display: inline-flex; align-items: center; gap: 14px; padding: 0 25px; background: var(--yellow); color: #05070a; text-transform: uppercase; font: 900 8px var(--font-geist-mono),monospace; letter-spacing: .13em; transition: transform .3s,background .3s; }
.photo-final-copy > a:hover { transform: translateY(-4px); background: #fff16d; }
.photo-final-copy > small { display: block; margin-top: 17px; color: #6e757e; font-size: 11px; }

.photo-lightbox { position: fixed; z-index: 999; inset: 0; display: grid; place-items: center; padding: 5vh 9vw; background: rgba(1,2,3,.95); backdrop-filter: blur(20px); animation: lightbox-in .35s ease both; }
@keyframes lightbox-in { from { opacity: 0; } }
.photo-lightbox > img { max-width: 82vw; max-height: 87vh; width: auto; height: auto; object-fit: contain; box-shadow: 0 30px 90px #000; }
.photo-lightbox button { position: absolute; width: 48px; height: 48px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.24); border-radius: 50%; background: rgba(5,7,10,.75); cursor: pointer; transition: border-color .25s,color .25s; }
.photo-lightbox button:hover { border-color: var(--yellow); color: var(--yellow); }
.lightbox-close { right: 28px; top: 28px; }.lightbox-prev { left: 28px; top: 50%; }.lightbox-next { right: 28px; top: 50%; }
.photo-lightbox > span { position: absolute; bottom: 22px; color: #868d96; font: 750 8px var(--font-geist-mono),monospace; letter-spacing: .15em; }

@media (max-width: 700px) {
  .photo-camera-sequence { height: 185svh; }
  .photo-camera-sticky::before { width: 108vw; right: -38vw; top: 46%; }
  .photo-lab-copy { left: 20px; right: 20px; top: 105px; width: auto; transform: none; }
  .photo-lab-copy > p { margin-bottom: 15px; font-size: 7px; }
  .photo-lab-copy h1 { font-size: clamp(46px,14vw,55px); line-height: .82; }
  .photo-lab-copy strong { max-width: 270px; margin-top: 16px; font-size: 14px; }
  .camera-stage { inset: 24svh -10vw 14svh -10vw; }
  .camera-fallback { width: 108vw; }
  .camera-screen-message { left: 20px; right: 20px; top: auto; bottom: 170px; width: auto; padding: 12px 14px; text-align: center; }
  .camera-screen-message span { font-size: 12px; }
  .camera-shutter { left: 20px; right: 20px; top: auto; bottom: 86px; min-height: 62px; justify-content: center; gap: 17px; padding: 10px 18px; border: 1px solid rgba(255,223,0,.38); background: rgba(3,5,8,.88); backdrop-filter: blur(15px); box-shadow: 0 14px 40px rgba(0,0,0,.42); }
  .camera-shutter i { width: 40px; height: 40px; flex: 0 0 40px; }
  .camera-shutter i::after { display: none; }
  .camera-shutter span { max-width: none; font-size: 8px; }
  .camera-progress { left: 20px; right: 20px; bottom: 31px; }
  .camera-progress small { max-width: 170px; text-align: right; line-height: 1.5; }
  .photo-burst img { left: 50%; width: 29vw; padding: 4px 4px 15px; }
  .has-fired .photo-burst img:nth-child(1) { --burst-x: -31vw; --burst-y: -25vh; }.has-fired .photo-burst img:nth-child(2) { --burst-x: 0vw; --burst-y: -32vh; }.has-fired .photo-burst img:nth-child(3) { --burst-x: 31vw; --burst-y: -24vh; }.has-fired .photo-burst img:nth-child(4) { --burst-x: -34vw; --burst-y: 0vh; }.has-fired .photo-burst img:nth-child(5) { --burst-x: 33vw; --burst-y: 2vh; }.has-fired .photo-burst img:nth-child(6) { --burst-x: -30vw; --burst-y: 27vh; }.has-fired .photo-burst img:nth-child(7) { --burst-x: 0vw; --burst-y: 31vh; }.has-fired .photo-burst img:nth-child(8) { --burst-x: 30vw; --burst-y: 26vh; }

  .photo-gallery-scroll { height: auto; }
  .photo-gallery-sticky { position: relative; height: auto; overflow: visible; padding-top: 78px; }
  .gallery-topline { height: auto; min-height: 58px; margin: 0 20px; align-items: flex-start; gap: 15px; }
  .gallery-topline small { max-width: 150px; text-align: right; line-height: 1.45; }
  .photo-gallery-track { width: 100%; height: auto; display: block; transform: none !important; }
  .photo-category { width: 100%; min-height: auto; display: block; padding: 75px 20px 38px; }
  .photo-category-copy h2 { font-size: 50px; }
  .photo-category-copy strong { font-size: 14px; }
  .photo-category-grid { height: 630px; margin-top: 42px; grid-template-columns: 1fr 1fr; grid-template-rows: 1.4fr .8fr; }
  .photo-category-grid button:first-child { grid-column: span 2; grid-row: auto; }
  .photo-category-grid button:nth-child(4) { display: none; }
  .gallery-meter { display: none; }
  .photo-gallery-scroll:not(.is-unlocked) .photo-gallery-sticky::after { position: absolute; z-index: 30; top: 0; min-height: 100svh; }

  .photo-director { min-height: auto; grid-template-columns: 1fr; }
  .photo-director-image { min-height: 620px; }
  .photo-director-image::after { background: linear-gradient(0deg,#ebe9e1,transparent 28%); }
  .photo-director-copy { padding: 65px 20px 90px; }
  .photo-director-copy h2 { font-size: 51px; }
  .photo-director-copy h3 { margin-top: 38px; }

  .photo-finale { padding: 100px 20px 115px; }
  .photo-mosaic { width: 100%; height: 125vw; margin-bottom: 110px; }
  .photo-mosaic > img { width: 29%; height: 27%; border-width: 3px; }
  .photo-mosaic > img:nth-child(n+9) { display: none; }
  .photo-mosaic > img:nth-child(1) { left: 1%; top: 3%; }.photo-mosaic > img:nth-child(2) { left: 35%; top: 0; }.photo-mosaic > img:nth-child(3) { right: 1%; top: 4%; }.photo-mosaic > img:nth-child(4) { left: 0; top: 35%; }.photo-mosaic > img:nth-child(5) { left: 35%; top: 37%; }.photo-mosaic > img:nth-child(6) { right: 0; top: 35%; }.photo-mosaic > img:nth-child(7) { left: 17%; top: 70%; }.photo-mosaic > img:nth-child(8) { right: 17%; top: 69%; }
  .photo-mosaic-core { width: 120px; height: 120px; }
  .photo-final-copy h2 { font-size: 55px; }
  .photo-final-copy > div { grid-template-columns: 1fr; gap: 20px; text-align: center; }
  .photo-final-copy > a { width: 100%; justify-content: center; }
  .photo-lightbox { padding: 70px 12px; }
  .photo-lightbox > img { max-width: 94vw; max-height: 78vh; }
  .photo-lightbox button { width: 42px; height: 42px; }
  .lightbox-close { right: 14px; top: 14px; }.lightbox-prev { left: 12px; }.lightbox-next { right: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  .camera-fallback,.camera-halo,.camera-shutter i { animation: none; }
  .photo-gallery-track { transition: none; }
}

/* Creación de Marca — identity console */
.brand-creation-page { overflow: clip; background: #05070a; color: #f6f4ee; }
.brand-console-hero { position: relative; min-height: 100svh; display: grid; grid-template-columns: 1.05fr .95fr; gap: 8vw; align-items: center; padding: 145px clamp(24px,6vw,92px) 80px; overflow: hidden; isolation: isolate; background: radial-gradient(circle at 78% 50%,rgba(255,223,0,.08),transparent 28%),linear-gradient(130deg,#080b10,#020304 66%); }
.console-grid { position: absolute; z-index: -2; inset: 0; opacity: .22; background-image: linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(90deg,#000,transparent 82%); }
.brand-console-hero::after { content: ""; position: absolute; z-index: -1; width: 52vw; height: 52vw; right: -19vw; top: 18%; border: 1px solid rgba(255,223,0,.16); border-radius: 50%; box-shadow: 0 0 0 5vw rgba(255,255,255,.018),0 0 0 10vw rgba(255,255,255,.012); }
.console-status { position: absolute; top: 112px; right: clamp(24px,6vw,92px); display: flex; align-items: center; gap: 10px; color: #727984; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.console-status i { width: 6px; height: 6px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 12px var(--yellow); }
.brand-console-copy > p:first-child { margin: 0 0 24px; color: var(--yellow); text-transform: uppercase; font: 800 9px var(--font-geist-mono),monospace; letter-spacing: .2em; }
.brand-console-copy h1 { max-width: 780px; margin: 0; font-size: clamp(62px,7.4vw,118px); line-height: .82; letter-spacing: -.075em; }
.brand-console-copy h1 span { color: #7f8690; }
.console-intro { max-width: 590px; margin: 38px 0 0; color: #9ba1aa; font-size: clamp(16px,1.4vw,20px); line-height: 1.7; }
.identity-console { position: relative; padding: clamp(24px,3vw,42px); border: 1px solid rgba(255,255,255,.18); background: rgba(8,11,15,.84); backdrop-filter: blur(22px); box-shadow: 0 35px 100px rgba(0,0,0,.5); }
.identity-console::before { content: ""; position: absolute; left: -1px; top: 52px; width: 3px; height: 110px; background: var(--yellow); box-shadow: 0 0 18px rgba(255,223,0,.65); }
.console-head { display: grid; grid-template-columns: 24px 1fr auto; align-items: center; gap: 14px; padding-bottom: 25px; margin-bottom: 18px; border-bottom: 1px solid rgba(255,255,255,.12); color: #9299a3; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.console-head svg { width: 19px; height: 19px; color: var(--yellow); }
.console-head b { color: var(--yellow); }
.identity-console label { display: block; position: relative; margin-top: 17px; }
.identity-console label > span { display: block; margin-bottom: 8px; color: #858c96; text-transform: uppercase; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.identity-console input { width: 100%; height: 52px; border: 0; border-bottom: 1px solid rgba(255,255,255,.22); border-radius: 0; outline: none; padding: 0 4px; background: transparent; color: #fff; font-size: 15px; transition: border-color .25s; }
.identity-console input:focus { border-color: var(--yellow); }
.identity-console input::placeholder { color: #555c66; }
.idea-input small { position: absolute; right: 3px; bottom: 17px; color: #747b85; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .08em; }
.idea-input small.complete { color: var(--yellow); }
.identity-console > button { width: 100%; min-height: 58px; margin-top: 28px; display: flex; align-items: center; justify-content: center; gap: 14px; border: 0; background: var(--yellow); color: var(--ink); cursor: pointer; text-transform: uppercase; font: 900 8px var(--font-geist-mono),monospace; letter-spacing: .14em; transition: transform .3s,background .3s; }
.identity-console > button:hover { transform: translateY(-3px); background: #fff16d; }
.identity-console > button:disabled { opacity: .6; cursor: wait; transform: none; }
.privacy-note { display: block; margin-top: 13px; color: #606771; font-size: 10px; line-height: 1.45; }
.console-error { margin: 14px 0 0; color: #ffb6a9; font-size: 12px; }

/* Manejo de ADS — algorithmic flight console */
.ads-page { overflow: clip; background: #05070a; color: #f6f4ee; }
.ads-hero { position: relative; min-height: 100svh; overflow: hidden; isolation: isolate; background: #030405; }
.ads-hero video,.ads-hero-shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.ads-hero video { z-index: -3; object-fit: cover; filter: saturate(.9) contrast(1.07) brightness(.65); }
.ads-hero-shade { z-index: -2; background: linear-gradient(90deg,rgba(1,2,3,.86) 0%,rgba(1,2,3,.25) 46%,rgba(1,2,3,.48) 100%),linear-gradient(0deg,#05070a 0%,transparent 34%); }
.ads-orbit-copy { position: absolute; z-index: -1; top: 24%; left: 6vw; right: 4vw; display: flex; flex-direction: column; text-transform: uppercase; font-size: clamp(90px,15vw,250px); font-weight: 950; line-height: .67; letter-spacing: -.08em; color: rgba(255,255,255,.1); white-space: nowrap; }
.ads-orbit-copy strong { margin-left: 24vw; color: rgba(255,223,0,.14); }
.ads-jefferson { position: absolute; z-index: 1; left: 50%; bottom: -3%; width: min(67vw,1030px); height: 94%; object-fit: contain; object-position: bottom center; transform: translateX(-50%); filter: drop-shadow(0 28px 50px rgba(0,0,0,.7)); }
.ads-hero-copy { position: absolute; z-index: 2; left: clamp(22px,6vw,92px); bottom: clamp(55px,8vh,95px); width: min(650px,43vw); }
.ads-hero-copy > p,.ads-proof header > p,.ads-education-copy > p,.ads-traking header > p,.ads-channels header > p,.ads-deliverables > div > p,.ads-cta > p { margin: 0 0 20px; color: var(--yellow); text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .18em; }
.ads-hero h1 { margin: 0; font-size: clamp(49px,5.7vw,92px); line-height: .87; letter-spacing: -.065em; }
.ads-hero h2 { margin: 20px 0 30px; color: #a7adb5; font-size: clamp(20px,2vw,32px); font-weight: 550; letter-spacing: -.035em; }
.ads-hero-copy a { display: inline-flex; align-items: center; gap: 14px; min-height: 54px; padding: 0 22px; background: var(--yellow); color: var(--ink); text-transform: uppercase; font: 900 8px var(--font-geist-mono),monospace; letter-spacing: .13em; transition: transform .3s,background .3s; }
.ads-hero-copy a:hover { transform: translateY(-3px); background: #fff16d; }
.ads-signal { position: absolute; z-index: 2; top: 115px; right: clamp(22px,5vw,80px); display: flex; align-items: center; gap: 10px; color: #9299a3; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.ads-signal i { width: 6px; height: 6px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 13px var(--yellow); animation: ads-pulse 1.7s ease-in-out infinite; }
@keyframes ads-pulse { 50% { opacity: .35; transform: scale(.7); } }
.ads-proof { padding: 125px clamp(22px,6vw,92px) 145px; background: #efeee8; color: var(--ink); }
.ads-proof header { display: grid; grid-template-columns: .45fr 1.55fr; gap: 5vw; margin-bottom: 75px; }
.ads-proof header h2,.ads-channels header h2 { max-width: 1020px; margin: 0; font-size: clamp(52px,7vw,102px); line-height: .9; letter-spacing: -.07em; }
.ads-stats { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(0,0,0,.18); border-bottom: 1px solid rgba(0,0,0,.18); }
.ads-stats article { min-height: 235px; padding: 36px 26px; display: flex; flex-direction: column; justify-content: flex-end; border-right: 1px solid rgba(0,0,0,.18); }
.ads-stats article:last-child { border-right: 0; }
.ads-stats strong { font-size: clamp(39px,5vw,74px); line-height: 1; letter-spacing: -.06em; }
.ads-stats span { margin-top: 15px; color: #62676d; font-size: 14px; }
.ads-evidence-grid { display: grid; grid-template-columns: 1.5fr .5fr; gap: 16px; margin-top: 70px; }
.ads-evidence-grid figure { position: relative; margin: 0; min-height: 500px; overflow: hidden; background: #fff; border: 1px solid rgba(0,0,0,.14); }
.ads-evidence-grid figure img { width: 100%; height: 100%; object-fit: contain; }
.ads-evidence-grid figcaption { position: absolute; left: 18px; bottom: 18px; display: flex; flex-direction: column; gap: 5px; padding: 14px 16px; background: rgba(4,6,8,.88); color: #fff; backdrop-filter: blur(12px); }
.ads-evidence-grid figcaption span { color: var(--yellow); text-transform: uppercase; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.ads-evidence-grid figcaption strong { font-size: 13px; }
.ads-partners { padding: 32px; display: flex; flex-direction: column; gap: 14px; background: #080a0d; }
.ads-partners > p { margin: 0 0 auto; color: #747b84; text-transform: uppercase; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.ads-partners > div { min-height: 165px; display: grid; place-items: center; padding: 22px; background: #f7f7f7; }
.ads-partners img { max-height: 110px; object-fit: contain; }
.ads-education { min-height: 85svh; display: grid; grid-template-columns: 1.1fr .9fr; gap: 8vw; align-items: center; padding: 125px clamp(22px,7vw,108px); background: radial-gradient(circle at 77% 50%,rgba(255,223,0,.12),transparent 25%),#05070a; }
.ads-education-copy h2 { max-width: 850px; margin: 0 0 32px; font-size: clamp(53px,6.4vw,96px); line-height: .9; letter-spacing: -.07em; }
.ads-education-copy > span { display: block; max-width: 720px; color: #a0a6ae; font-size: clamp(16px,1.45vw,21px); line-height: 1.7; }
.ads-radar { position: relative; aspect-ratio: 1; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.14); border-radius: 50%; background: radial-gradient(circle,rgba(255,223,0,.12),transparent 50%); }
.ads-radar::before,.ads-radar::after,.ads-radar i { content: ""; position: absolute; inset: 17%; border: 1px solid rgba(255,255,255,.11); border-radius: 50%; }
.ads-radar::after { inset: 34%; }
.ads-radar i:nth-of-type(1) { inset: 50% auto 0 50%; width: 1px; border: 0; border-radius: 0; background: linear-gradient(var(--yellow),transparent); transform-origin: top; animation: radar-sweep 4s linear infinite; }
.ads-radar > svg { width: 58px; height: 58px; color: var(--yellow); filter: drop-shadow(0 0 16px rgba(255,223,0,.55)); }
.ads-radar > span,.ads-radar > b { position: absolute; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.ads-radar > span { left: 13%; top: 27%; color: #69717b; }
.ads-radar > b { right: 9%; bottom: 25%; color: var(--yellow); }
@keyframes radar-sweep { to { transform: rotate(360deg); } }
.ads-traking { padding: 130px clamp(22px,6vw,92px) 145px; background: var(--yellow); color: var(--ink); }
.ads-traking > header { display: grid; grid-template-columns: .5fr 1.5fr; column-gap: 5vw; align-items: end; }
.ads-traking header > p { grid-row: span 3; color: var(--ink); }
.ads-traking header h2 { margin: 0; font-size: clamp(88px,15vw,230px); line-height: .72; letter-spacing: -.09em; }
.ads-traking header h2 span { font-size: .16em; vertical-align: top; letter-spacing: 0; }
.ads-traking header strong { margin-top: 28px; font-size: clamp(21px,2.3vw,34px); }
.ads-traking header > span { max-width: 760px; margin-top: 18px; color: rgba(0,0,0,.62); font-size: 17px; line-height: 1.65; }
.ads-phase-console { display: grid; grid-template-columns: .75fr 1.25fr; min-height: 540px; margin-top: 90px; border: 1px solid rgba(0,0,0,.25); background: rgba(255,255,255,.15); }
.ads-phase-console nav { display: flex; flex-direction: column; border-right: 1px solid rgba(0,0,0,.22); }
.ads-phase-console nav button { flex: 1; display: grid; grid-template-columns: 50px 1fr; align-items: center; border: 0; border-bottom: 1px solid rgba(0,0,0,.18); padding: 0 28px; background: transparent; color: #222; cursor: pointer; text-align: left; font-size: 16px; transition: background .3s,color .3s; }
.ads-phase-console nav button:last-child { border-bottom: 0; }
.ads-phase-console nav button span { font: 750 8px var(--font-geist-mono),monospace; }
.ads-phase-console nav button.active { background: var(--ink); color: #fff; }
.ads-phase-console article { position: relative; padding: clamp(38px,6vw,85px); overflow: hidden; animation: phase-in .5s cubic-bezier(.2,.78,.2,1) both; }
@keyframes phase-in { from { opacity: .2; transform: translateX(15px); } }
.ads-phase-console article > div:first-child { display: flex; justify-content: space-between; align-items: center; color: rgba(0,0,0,.55); font: 750 8px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.ads-phase-console article svg { width: 30px; height: 30px; }
.ads-phase-console article h3 { margin: 85px 0 24px; font-size: clamp(54px,7vw,100px); line-height: .85; letter-spacing: -.07em; }
.ads-phase-console article p { max-width: 610px; margin: 0; font-size: clamp(17px,1.6vw,23px); line-height: 1.6; }
.ads-phase-line { position: absolute; left: clamp(38px,6vw,85px); right: clamp(38px,6vw,85px); bottom: 55px; height: 2px; background: rgba(0,0,0,.18); }
.ads-phase-line i { display: block; width: 70%; height: 100%; background: var(--ink); animation: line-learn 1s cubic-bezier(.2,.78,.2,1) both; }
@keyframes line-learn { from { width: 0; } }
.ads-channels { padding: 130px clamp(22px,6vw,92px) 150px; background: #eeede7; color: var(--ink); }
.ads-channels header { display: grid; grid-template-columns: .45fr 1.55fr; gap: 5vw; }
.ads-channels header > p { grid-row: span 2; color: var(--ink); }
.ads-channels header > span { display: block; max-width: 800px; margin-top: 28px; color: #62676d; font-size: 18px; line-height: 1.7; }
.ads-channels > div { display: grid; grid-template-columns: repeat(3,1fr); margin-top: 85px; border-top: 1px solid rgba(0,0,0,.18); border-bottom: 1px solid rgba(0,0,0,.18); }
.ads-channels article { min-height: 390px; padding: 35px 30px; border-right: 1px solid rgba(0,0,0,.18); }
.ads-channels article:last-child { border-right: 0; }
.ads-channels article > svg { width: 35px; height: 35px; }
.ads-channels article > p { margin: 80px 0 12px; color: #747980; text-transform: uppercase; font: 750 8px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.ads-channels article h3 { margin: 0 0 18px; font-size: 33px; letter-spacing: -.05em; }
.ads-channels article > span { color: #62676d; line-height: 1.65; }
.ads-deliverables { display: grid; grid-template-columns: .85fr 1.15fr; gap: 8vw; padding: 125px clamp(22px,7vw,108px); background: #07090c; }
.ads-deliverables h2 { max-width: 650px; margin: 0; font-size: clamp(50px,5.8vw,88px); line-height: .92; letter-spacing: -.065em; }
.ads-deliverables ul { margin: 0; padding: 0; list-style: none; }
.ads-deliverables li { display: grid; grid-template-columns: 40px 1fr; gap: 20px; padding: 30px 0; border-top: 1px solid rgba(255,255,255,.14); }
.ads-deliverables li > svg { width: 24px; height: 24px; color: var(--yellow); }
.ads-deliverables li span { display: flex; flex-direction: column; gap: 8px; color: #8e959e; line-height: 1.55; }
.ads-deliverables li strong { color: #fff; font-size: 21px; }
.ads-cta { min-height: 90svh; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 120px clamp(22px,9vw,145px); background: radial-gradient(circle at 80% 40%,rgba(255,223,0,.15),transparent 28%),#eeede7; color: var(--ink); }
.ads-cta h2 { max-width: 1050px; margin: 0; font-size: clamp(55px,7.7vw,118px); line-height: .88; letter-spacing: -.075em; }
.ads-cta > span { max-width: 720px; margin: 30px 0 42px; color: #62676d; font-size: 18px; line-height: 1.7; }
.ads-cta > div { display: flex; flex-wrap: wrap; gap: 13px; }
.ads-cta a,.ads-cta > div > button { min-height: 58px; display: inline-flex; align-items: center; gap: 15px; padding: 0 24px; border: 0; background: var(--yellow); color: var(--ink); text-transform: uppercase; font: 900 8px var(--font-geist-mono),monospace; letter-spacing: .13em; transition: transform .3s; cursor: pointer; }
.ads-cta a.secondary { border: 1px solid rgba(0,0,0,.25); background: transparent; }
.ads-cta a:hover,.ads-cta > div > button:hover { transform: translateY(-3px); }
.ads-diagnosis-modal { position: fixed; inset: 0; z-index: 1200; display: grid; place-items: center; padding: 24px; background: rgba(1,3,7,.88); backdrop-filter: blur(16px); overflow: auto; }
.ads-diagnosis-close { position: fixed; z-index: 2; right: 28px; top: 24px; width: 44px; height: 44px; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; display: grid; place-items: center; background: #080b10; color: #fff; font-size: 20px; cursor: pointer; }
.ads-diagnosis-shell { width: min(1180px,100%); max-height: calc(100svh - 48px); display: grid; grid-template-columns: .42fr .58fr; background: #f2f0e9; color: #080b10; overflow: auto; box-shadow: 0 30px 120px rgba(0,0,0,.62); }
.ads-diagnosis-shell > aside { position: sticky; top: 0; min-height: 100%; padding: clamp(46px,5vw,80px) clamp(30px,4vw,58px); display: flex; flex-direction: column; background: #070a0f radial-gradient(circle at 50% 30%,rgba(255,223,0,.13),transparent 42%); color: #fff; }
.ads-diagnosis-shell > aside > p { margin: 0 0 30px; color: var(--yellow); font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .18em; }
.ads-diagnosis-shell > aside h2 { margin: 0; font-size: clamp(42px,4.6vw,70px); line-height: .93; letter-spacing: -.065em; }
.ads-diagnosis-shell > aside > span { margin-top: 32px; max-width: 390px; color: #9299a3; line-height: 1.7; }
.ads-diagnosis-shell > aside > div { margin-top: auto; padding-top: 40px; color: #7d858f; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.ads-diagnosis-shell > aside i { display: inline-block; width: 7px; height: 7px; margin-right: 8px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 16px var(--yellow); }
.ads-diagnosis-form { padding: clamp(44px,5vw,72px); }
.ads-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px 18px; }
.ads-form-grid .wide { grid-column: 1/-1; }
.ads-diagnosis-form label { display: grid; gap: 8px; color: #626871; text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .08em; }
.ads-diagnosis-form input,.ads-diagnosis-form textarea { width: 100%; border: 0; border-bottom: 1px solid rgba(5,7,10,.3); border-radius: 0; padding: 11px 2px 13px; background: transparent; color: #080b10; outline: none; font: 700 14px var(--font-nunito),sans-serif; resize: vertical; }
.ads-diagnosis-form textarea { border: 1px solid rgba(5,7,10,.25); padding: 13px; }
.ads-diagnosis-form input:focus,.ads-diagnosis-form textarea:focus { border-color: #b8a400; box-shadow: 0 2px 0 var(--yellow); }
.ads-diagnosis-form fieldset { margin: 32px 0; padding: 0; border: 0; }
.ads-diagnosis-form legend { margin-bottom: 16px; color: #626871; text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .08em; }
.ads-choice-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; }
.ads-choice-grid.two { grid-template-columns: 1fr 1fr; }
.ads-choice-grid label { cursor: pointer; }
.ads-choice-grid input { position: absolute; opacity: 0; pointer-events: none; }
.ads-choice-grid span { min-height: 76px; padding: 14px; display: flex; flex-direction: column; justify-content: center; border: 1px solid rgba(5,7,10,.23); color: #686d74; font: 700 11px var(--font-nunito),sans-serif; text-transform: none; letter-spacing: 0; transition: .2s; }
.ads-choice-grid strong { color: #080b10; font-size: 15px; }
.ads-choice-grid input:checked + span { border-color: #080b10; background: var(--yellow); color: #080b10; box-shadow: inset 0 0 0 1px #080b10; }
.ads-consent { grid-template-columns: auto 1fr; align-items: start; text-transform: none !important; font: 600 11px/1.55 var(--font-nunito),sans-serif !important; letter-spacing: 0 !important; }
.ads-consent input { width: 16px; height: 16px; margin-top: 2px; accent-color: #080b10; box-shadow: none !important; }
.ads-consent a { color: #080b10; text-decoration: underline; }
.ads-form-submit,.ads-diagnosis-success button { width: 100%; min-height: 56px; margin-top: 24px; padding: 0 20px; border: 0; display: flex; align-items: center; justify-content: space-between; background: var(--yellow); color: #080b10; font-weight: 900; cursor: pointer; }
.ads-form-submit:disabled { opacity: .6; cursor: wait; }
.ads-form-error { margin: 16px 0 0; color: #a02626; font-weight: 800; }
.ads-diagnosis-success { min-height: 620px; padding: 70px; display: flex; flex-direction: column; justify-content: center; }
.ads-diagnosis-success > svg { width: 52px; height: 52px; padding: 15px; border-radius: 50%; background: var(--yellow); }
.ads-diagnosis-success > p { margin: 30px 0 14px; color: #777d84; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.ads-diagnosis-success h3 { margin: 0; font-size: clamp(40px,5vw,70px); line-height: .95; letter-spacing: -.06em; }
.ads-diagnosis-success > span { margin-top: 22px; max-width: 520px; color: #686d74; line-height: 1.7; }

@media (max-width: 700px) {
  .ads-hero { min-height: 820px; height: 100svh; max-height: 900px; }
  .ads-orbit-copy { top: 20%; left: -1vw; right: auto; font-size: 18vw; line-height: .78; letter-spacing: -.07em; }
  .ads-orbit-copy strong { margin-left: 9vw; }
  .ads-jefferson { left: 52%; bottom: 82px; width: 175vw; max-width: none; height: auto; object-fit: initial; transform: translateX(-50%); }
  .ads-hero-shade { background: linear-gradient(0deg,rgba(2,3,5,.99) 0 24%,rgba(2,3,5,.48) 47%,rgba(2,3,5,.08) 78%),linear-gradient(90deg,rgba(0,0,0,.3),transparent); }
  .ads-hero-copy { left: 20px; right: 20px; bottom: 24px; width: auto; }
  .ads-hero-copy > p { margin-bottom: 12px; font-size: 7px; }
  .ads-hero h1 { max-width: 390px; font-size: clamp(39px,10.8vw,46px); line-height: .88; }
  .ads-hero h2 { max-width: 310px; margin: 13px 0 20px; font-size: 18px; }
  .ads-hero-copy a { min-height: 49px; padding: 0 18px; }
  .ads-signal { display: none; }
  .ads-proof,.ads-traking,.ads-channels { padding: 90px 20px; }
  .ads-proof header,.ads-channels header,.ads-traking > header { grid-template-columns: 1fr; }
  .ads-proof header h2,.ads-channels header h2 { font-size: 48px; }
  .ads-stats { grid-template-columns: 1fr; }
  .ads-stats article { min-height: 170px; border-right: 0; border-bottom: 1px solid rgba(0,0,0,.18); }
  .ads-stats article:last-child { border-bottom: 0; }
  .ads-evidence-grid { grid-template-columns: 1fr; }
  .ads-evidence-grid figure { min-height: 310px; }
  .ads-partners { min-height: 430px; }
  .ads-education { min-height: auto; grid-template-columns: 1fr; padding: 95px 20px; }
  .ads-education-copy h2 { font-size: 49px; }
  .ads-radar { width: 92vw; margin-left: -1vw; }
  .ads-traking header > p { grid-row: auto; }
  .ads-traking header h2 { font-size: 26vw; }
  .ads-phase-console { grid-template-columns: 1fr; margin-top: 60px; }
  .ads-phase-console nav { display: grid; grid-template-columns: repeat(5,1fr); border-right: 0; border-bottom: 1px solid rgba(0,0,0,.22); }
  .ads-phase-console nav button { min-height: 70px; display: grid; place-items: center; padding: 0; border-right: 1px solid rgba(0,0,0,.18); font-size: 0; }
  .ads-phase-console nav button span { font-size: 8px; }
  .ads-phase-console article { min-height: 430px; padding: 35px 25px; }
  .ads-phase-console article h3 { margin-top: 70px; font-size: 55px; }
  .ads-phase-line { left: 25px; right: 25px; bottom: 38px; }
  .ads-channels header > p { grid-row: auto; }
  .ads-channels > div { grid-template-columns: 1fr; margin-top: 60px; }
  .ads-channels article { min-height: 320px; border-right: 0; border-bottom: 1px solid rgba(0,0,0,.18); }
  .ads-channels article:last-child { border-bottom: 0; }
  .ads-channels article > p { margin-top: 55px; }
  .ads-deliverables { grid-template-columns: 1fr; padding: 90px 20px; }
  .ads-deliverables h2 { font-size: 49px; }
  .ads-cta { min-height: 780px; padding: 90px 20px; }
  .ads-cta h2 { font-size: 52px; }
  .ads-cta a { width: 100%; justify-content: center; }
}
.console-scroll { position: absolute; left: 50%; bottom: 26px; width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; color: var(--yellow); animation: console-bob 1.8s ease-in-out infinite; }
@keyframes console-bob { 50% { transform: translateY(7px); } }
.brand-journey.is-locked { display: none; }
.brand-journey.is-unlocked { animation: brand-unlock 1s cubic-bezier(.2,.78,.2,1) both; }
@keyframes brand-unlock { from { opacity: 0; transform: translateY(55px); } }
.brand-journey > header { min-height: 75svh; padding: 135px clamp(24px,8vw,125px); display: flex; flex-direction: column; justify-content: center; background: #ecebe5; color: var(--ink); }
.brand-journey > header > p,.brand-delivery p,.brand-legal p,.brand-pricing p { margin: 0 0 22px; text-transform: uppercase; font: 850 8px var(--font-geist-mono),monospace; letter-spacing: .18em; }
.brand-journey > header > p { color: #6d7177; }
.brand-journey > header h2 { max-width: 1100px; margin: 0; font-size: clamp(58px,7.8vw,118px); line-height: .88; letter-spacing: -.075em; }
.brand-journey > header > div { margin-top: 65px; display: grid; grid-template-columns: auto 150px auto 170px; gap: 18px; align-items: center; }
.brand-journey > header strong { font-size: clamp(40px,4vw,65px); letter-spacing: -.06em; }
.brand-journey > header span { color: #676c73; font-size: 13px; line-height: 1.35; }
.brand-flightpath { padding: 95px clamp(24px,7vw,108px) 125px; background: #06080b; }
.brand-flightpath article { position: relative; min-height: 78svh; display: grid; grid-template-columns: 125px minmax(0,760px) 1fr; gap: 5vw; align-items: center; border-top: 1px solid rgba(255,255,255,.13); }
.stage-orbit { position: relative; width: 96px; height: 96px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; color: var(--yellow); font: 800 10px var(--font-geist-mono),monospace; }
.stage-orbit::after { content: ""; position: absolute; inset: 11px; border: 1px solid rgba(255,255,255,.1); border-radius: inherit; }
.stage-orbit i { position: absolute; top: -4px; width: 8px; height: 8px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 13px var(--yellow); }
.stage-copy > p { margin: 0 0 17px; color: var(--yellow); text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .17em; }
.stage-copy h3 { margin: 0 0 27px; font-size: clamp(45px,5.5vw,82px); line-height: .92; letter-spacing: -.065em; }
.stage-copy > span { display: block; max-width: 700px; color: #9ca2ab; font-size: clamp(16px,1.35vw,19px); line-height: 1.75; }
.stage-copy ul { margin: 38px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.stage-copy li { padding: 16px 0; border-top: 1px solid rgba(255,255,255,.17); color: #ced1d5; font-size: 12px; line-height: 1.4; }
.stage-copy li svg { margin-right: 9px; color: var(--yellow); }
.stage-artwork { --tilt-x: 0deg; --tilt-y: 0deg; --light-x: 50%; --light-y: 35%; position: relative; justify-self: end; width: min(24vw,340px); margin: 0; isolation: isolate; perspective: 1100px; cursor: grab; touch-action: pan-y; }
.stage-artwork::before { content: ""; position: absolute; z-index: -1; inset: 12% -8% 8%; border: 1px solid rgba(255,223,0,.18); border-radius: 50%; background: radial-gradient(circle,rgba(255,223,0,.11),transparent 67%); filter: blur(.2px); }
.stage-artwork-motion { position: relative; transform-style: preserve-3d; transform: rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) scale(1); transition: transform .65s cubic-bezier(.2,.8,.2,1),filter .45s ease; will-change: transform; }
.stage-artwork:hover .stage-artwork-motion { transform: rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) scale(1.035); filter: drop-shadow(0 34px 42px rgba(255,223,0,.08)); }
.stage-artwork img { display: block; width: 100%; height: auto; max-height: 58svh; object-fit: contain; filter: drop-shadow(0 28px 40px rgba(0,0,0,.48)); transform: translateZ(28px); }
.stage-artwork-glint { position: absolute; inset: 7% 4% 10%; border-radius: 45%; pointer-events: none; opacity: 0; transform: translateZ(48px); background: radial-gradient(circle at var(--light-x) var(--light-y),rgba(255,255,255,.22),rgba(255,223,0,.07) 18%,transparent 44%); mix-blend-mode: screen; transition: opacity .35s ease; }
.stage-artwork:hover .stage-artwork-glint { opacity: 1; }
.stage-artwork figcaption { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin-top: 14px; padding-top: 12px; border-top: 1px solid rgba(255,255,255,.16); color: #7f8791; text-transform: uppercase; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .13em; }
.stage-artwork figcaption span { color: var(--yellow); }
.stage-artwork figcaption em { margin-left: auto; color: rgba(255,223,0,.62); font-style: normal; transition: color .3s ease; }
.stage-artwork:hover figcaption em { color: var(--yellow); }
.stage-link { position: absolute; width: 1px; height: calc(78svh - 96px); left: 48px; top: calc(50% + 48px); background: linear-gradient(var(--yellow),rgba(255,255,255,.1)); }
.brand-delivery { min-height: 85svh; padding: 125px clamp(24px,7vw,108px); display: grid; grid-template-columns: 1.1fr .9fr; gap: 9vw; align-items: center; background: var(--yellow); color: var(--ink); }
.brand-delivery h2 { max-width: 800px; margin: 0; font-size: clamp(52px,6.3vw,96px); line-height: .9; letter-spacing: -.07em; }
.brand-delivery ul { margin: 0; padding: 0; list-style: none; }
.brand-delivery li { display: grid; grid-template-columns: 35px 1fr; gap: 20px; padding: 27px 0; border-top: 1px solid rgba(0,0,0,.22); }
.brand-delivery li svg { width: 24px; height: 24px; }
.brand-delivery li span { color: rgba(5,7,10,.68); line-height: 1.55; }
.brand-delivery li strong { display: block; margin-bottom: 6px; color: var(--ink); font-size: 20px; }
.brand-legal { position: relative; min-height: 78svh; padding: 120px clamp(24px,8vw,125px); display: grid; grid-template-columns: 130px 1fr; gap: 6vw; align-items: center; background: #efeee8; color: var(--ink); }
.brand-legal > svg { width: 105px; height: 105px; }
.colombia-badge { position: absolute; top: 38px; right: clamp(24px,8vw,125px); padding: 9px 12px; border: 1px solid rgba(0,0,0,.22); font: 850 7px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.brand-legal h2 { max-width: 980px; margin: 0 0 30px; font-size: clamp(52px,6.6vw,100px); line-height: .9; letter-spacing: -.07em; }
.brand-legal span { display: block; max-width: 820px; color: #555b61; font-size: 18px; line-height: 1.7; }
.brand-pricing { min-height: 86svh; padding: 125px clamp(24px,9vw,140px); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; background: radial-gradient(circle at 78% 50%,rgba(255,223,0,.11),transparent 26%),#05070a; }
.brand-pricing p { color: var(--yellow); }
.brand-pricing h2 { max-width: 1050px; margin: 0 0 50px; font-size: clamp(58px,7.3vw,110px); line-height: .88; letter-spacing: -.075em; }
.brand-pricing a { min-height: 60px; display: inline-flex; align-items: center; gap: 17px; padding: 0 25px; background: var(--yellow); color: var(--ink); text-transform: uppercase; font: 900 9px var(--font-geist-mono),monospace; letter-spacing: .14em; transition: transform .3s,background .3s; }
.brand-pricing a:hover { transform: translateY(-3px); background: #fff16d; }

@media (max-width: 700px) {
  .brand-console-hero { min-height: auto; grid-template-columns: 1fr; gap: 32px; padding: 108px 18px 60px; }
  .console-status { display: none; }
  .brand-console-copy > p:first-child { margin-bottom: 17px; font-size: 7px; }
  .brand-console-copy h1 { font-size: clamp(44px,13vw,53px); line-height: .86; overflow-wrap: anywhere; }
  .console-intro { margin-top: 20px; font-size: 14px; line-height: 1.58; }
  .identity-console { padding: 20px 17px; }
  .identity-console::before { top: 45px; height: 88px; }
  .console-head { padding-bottom: 18px; margin-bottom: 12px; }
  .identity-console label { margin-top: 13px; }
  .identity-console input { height: 46px; font-size: 14px; }
  .identity-console > button { min-height: 52px; margin-top: 22px; }
  .console-scroll { display: none; }
  .brand-journey > header { min-height: auto; padding: 72px 18px; }
  .brand-journey > header h2 { font-size: clamp(43px,12vw,50px); overflow-wrap: anywhere; }
  .brand-journey > header > div { grid-template-columns: auto 1fr; gap: 7px 14px; margin-top: 34px; }
  .brand-journey > header strong { font-size: 39px; }
  .brand-flightpath { padding: 36px 18px 58px; }
  .brand-flightpath article { min-height: auto; grid-template-columns: 54px minmax(0,1fr); gap: 17px; align-items: start; padding: 50px 0; }
  .stage-orbit { width: 52px; height: 52px; }
  .stage-link { left: 26px; top: 84px; height: calc(100% - 48px); }
  .stage-copy > p { margin-bottom: 12px; font-size: 7px; }
  .stage-copy h3 { margin-bottom: 18px; font-size: clamp(34px,10vw,40px); overflow-wrap: anywhere; }
  .stage-copy > span { font-size: 14px; line-height: 1.58; }
  .stage-copy ul { grid-template-columns: 1fr; gap: 0; margin-top: 20px; }
  .stage-copy li { padding: 12px 0; }
  .stage-artwork { grid-column: 2; justify-self: start; width: min(100%,230px); margin-top: 20px; }
  .stage-artwork img { max-height: none; }
  .stage-artwork figcaption { margin-top: 9px; padding-top: 9px; }
  .stage-artwork figcaption em { display: none; }
  .stage-artwork.is-visible .stage-artwork-motion { animation: stage-mobile-orbit 1.8s cubic-bezier(.2,.75,.2,1) both; }
  .stage-artwork.is-visible .stage-artwork-glint { animation: stage-mobile-glint 1.8s ease both; }
  .brand-delivery { min-height: auto; grid-template-columns: 1fr; gap: 38px; padding: 72px 18px; }
  .brand-delivery h2 { font-size: clamp(41px,11vw,47px); overflow-wrap: anywhere; }
  .brand-delivery li { padding: 20px 0; }
  .brand-legal { min-height: auto; grid-template-columns: 1fr; gap: 28px; padding: 82px 18px 70px; }
  .brand-legal > svg { width: 58px; height: 58px; }
  .colombia-badge { top: 24px; right: 18px; }
  .brand-legal h2 { margin-bottom: 22px; font-size: clamp(40px,11vw,46px); overflow-wrap: anywhere; }
  .brand-legal span { font-size: 15px; line-height: 1.6; }
  .brand-pricing { min-height: auto; padding: 82px 18px; }
  .brand-pricing h2 { margin-bottom: 36px; font-size: clamp(43px,12vw,50px); overflow-wrap: anywhere; }
  .brand-pricing a { width: 100%; justify-content: center; }
}
@keyframes stage-mobile-orbit {
  0%,100% { transform: rotateX(0deg) rotateY(0deg) scale(1); }
  38% { transform: rotateX(-5deg) rotateY(16deg) scale(1.025); }
  70% { transform: rotateX(4deg) rotateY(-10deg) scale(1.015); }
}
@keyframes stage-mobile-glint { 0%,100% { opacity: 0; } 35%,68% { opacity: .7; } }
@media (prefers-reduced-motion: reduce) {
  .stage-artwork-motion,.stage-artwork-glint { animation: none !important; transition: none !important; transform: none !important; }
}
.brand-cue::before { content: ""; position: absolute; width: 4px; height: 4px; left: 50%; top: -2px; border-radius: 50%; background: currentColor; box-shadow: 0 0 7px currentColor; transform: translateX(-50%); }
.brand-cue::after { content: ""; position: absolute; inset: 4px; border: 1px solid currentColor; border-radius: 50%; opacity: .32; }
.brand-cue.compact { width: 14px; height: 14px; flex-basis: 14px; }
.brand-cue.compact::after { inset: 3px; }
.brand-cue.loop-cue { width: .31em; height: .31em; min-width: 17px; min-height: 17px; margin: 0 .14em; opacity: .38; }

.loader { position: fixed; inset: 0; z-index: 999; background: #05070a; overflow: hidden; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.loader.is-launching { animation: loader-out .35s ease .7s both; }
.loader-stars { position: absolute; inset: 0; opacity: .42; background-image: radial-gradient(circle at 12% 18%, #fff 0 1px, transparent 1.7px), radial-gradient(circle at 83% 27%, #fff 0 1px, transparent 1.7px), radial-gradient(circle at 68% 79%, #fff 0 1px, transparent 1.7px), radial-gradient(circle at 31% 70%, #fff 0 1px, transparent 1.7px); background-size: 240px 240px, 310px 310px, 370px 370px, 280px 280px; }
.loader-kicker { position: absolute; top: 7vh; margin: 0; text-transform: uppercase; letter-spacing: .28em; font: 700 10px var(--font-geist-mono), monospace; color: #777e89; }
.launch-stage { position: relative; width: 230px; height: 255px; display: flex; align-items: flex-end; justify-content: center; }
.loader-rocket { position: absolute; width: 112px; bottom: 68px; z-index: 4; filter: drop-shadow(0 0 12px rgba(255,223,0,.2)); animation: rocket-idle .16s linear infinite alternate; }
.is-launching .loader-rocket { animation: rocket-launch 1.04s cubic-bezier(.5,.02,.78,.4) forwards; }
.smoke { position: absolute; bottom: 35px; width: 75px; height: 75px; border-radius: 50%; background: rgba(255,255,255,.86); filter: blur(12px); transform: scale(.2); opacity: 0; animation: smoke-puff 1.15s ease-in-out infinite; }
.smoke-a { left: 49px; animation-delay: -.2s; }
.smoke-b { right: 49px; animation-delay: -.65s; }
.smoke-c { bottom: 19px; left: 76px; animation-delay: -.85s; }
.smoke-d { bottom: 15px; right: 75px; animation-delay: -.45s; }
.is-launching .smoke { animation-duration: .42s; filter: blur(18px); }
.loader-copy { position: relative; width: min(440px, calc(100vw - 48px)); text-align: center; }
.loader-copy > p { font-size: clamp(20px, 2vw, 27px); line-height: 1.25; font-weight: 800; letter-spacing: -.025em; margin: 0 0 28px; }
.progress-track { height: 2px; background: rgba(255,255,255,.14); overflow: hidden; }
.progress-track span { display: block; height: 100%; background: var(--yellow); box-shadow: 0 0 14px var(--yellow); transition: width .12s linear; }
.progress-meta { margin-top: 10px; display: flex; justify-content: space-between; text-transform: uppercase; font: 600 9px var(--font-geist-mono), monospace; letter-spacing: .13em; color: #717782; }
.progress-meta strong { color: var(--yellow); }
@keyframes rocket-idle { to { transform: translateX(2px) rotate(.5deg); } }
@keyframes smoke-puff { 0% { transform: translateY(-5px) scale(.2); opacity: .15; } 45% { opacity: .75; } 100% { transform: translateY(34px) scale(1.25); opacity: 0; } }
@keyframes rocket-launch { 0% { transform: translateY(0) scale(1); } 15% { transform: translateY(12px) scale(1); } 100% { transform: translateY(-100vh) scale(.72); } }
@keyframes loader-out { to { opacity: 0; visibility: hidden; } }

@media (pointer: fine) {
  body.brand-cursor-active,
  body.brand-cursor-active * { cursor: url("/assets/inpulso-cursor.png") 16 16, auto !important; }
}

.site-header { height: 92px; padding: 0 clamp(22px, 5vw, 78px); position: absolute; inset: 0 0 auto; z-index: 40; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.11); }
.site-header.is-solid { position: fixed; background: rgba(3,5,8,.78); backdrop-filter: blur(20px); }
.brand img { width: clamp(165px, 15vw, 226px); height: auto; }
.site-header nav { display: flex; gap: clamp(18px, 2.2vw, 38px); align-items: center; }
.site-header nav > a { position: relative; padding: 12px 0; font-size: 12px; font-weight: 800; color: rgba(255,255,255,.74); transition: color .25s ease; }
.site-header nav > a:not(.ian-activation)::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 4px; height: 2px; background: var(--yellow); transition: right .25s ease; }
.site-header nav a:hover { color: #fff; }
.site-header nav a:hover::after { right: 0; }
.nav-group { position: relative; }
.nav-group-trigger { min-height: 46px; padding: 0; border: 0; background: transparent; display: flex; align-items: center; gap: 8px; color: rgba(255,255,255,.74); font-size: 12px; font-weight: 800; cursor: pointer; }
.nav-group-trigger .brand-cue { width: 11px; height: 11px; flex-basis: 11px; opacity: .4; transition: transform .25s,color .25s; }
.nav-group:hover .nav-group-trigger,.nav-group:focus-within .nav-group-trigger { color: #fff; }
.nav-group:hover .nav-group-trigger .brand-cue,.nav-group:focus-within .nav-group-trigger .brand-cue { color: var(--yellow); transform: rotate(90deg); }
.nav-dropdown { position: absolute; top: calc(100% + 10px); left: -20px; width: 260px; padding: 12px; display: grid; background: rgba(4,7,11,.97); border: 1px solid rgba(255,223,0,.22); box-shadow: 0 24px 60px rgba(0,0,0,.48); opacity: 0; visibility: hidden; transform: translateY(10px); transition: opacity .22s,visibility .22s,transform .22s; }
.nav-group:last-of-type .nav-dropdown { width: 300px; grid-template-columns: 1fr 1fr; left: 50%; transform: translate(-50%,10px); }
.nav-group:hover .nav-dropdown,.nav-group:focus-within .nav-dropdown { opacity: 1; visibility: visible; transform: translateY(0); }
.nav-group:last-of-type:hover .nav-dropdown,.nav-group:last-of-type:focus-within .nav-dropdown { transform: translate(-50%,0); }
.nav-dropdown a { padding: 10px 9px; color: #9da5af; font-size: 10px; font-weight: 750; border-bottom: 1px solid rgba(255,255,255,.07); }
.nav-dropdown a:hover,.nav-dropdown a:focus-visible { color: var(--yellow); background: rgba(255,223,0,.05); outline: none; }
.ian-activation { min-height: 44px; padding: 0 15px !important; border: 1px solid rgba(255,223,0,.68); border-radius: 999px; display: inline-flex; align-items: center; gap: 9px; overflow: hidden; background: #05070a; color: #f7f8fa !important; box-shadow: inset 0 0 18px rgba(255,223,0,.035),0 0 18px rgba(255,223,0,.08); animation: ian-button-pulse 3.2s ease-in-out infinite; }
.ian-activation::before { content: ""; position: absolute; inset: 0; border-radius: inherit; background: linear-gradient(100deg,transparent 20%,rgba(255,223,0,.25),transparent 80%); transform: translateX(-120%); transition: transform .55s ease; }
.ian-activation:hover::before { transform: translateX(120%); }
.ian-core { width: 7px; height: 7px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 12px var(--yellow); transition: transform .25s; }
.ian-activation:hover .ian-core { transform: scale(1.55); }
.ian-mini-face { width: 0; height: 19px; border-radius: 7px; background: #f7f4e9; display: flex; align-items: center; justify-content: center; gap: 3px; opacity: 0; overflow: hidden; transition: width .28s,opacity .2s; }
.ian-mini-face i { width: 3px; height: 5px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 4px var(--yellow); }
.ian-activation:hover .ian-mini-face { width: 24px; opacity: 1; }
@keyframes ian-button-pulse { 50% { box-shadow: inset 0 0 20px rgba(255,223,0,.06),0 0 24px rgba(255,223,0,.13); } }
.contact-activation { min-height: 44px; padding: 0 17px !important; border-radius: 999px; display: inline-flex; align-items: center; gap: 9px; overflow: hidden; background: var(--yellow); color: var(--ink) !important; border: 1px solid var(--yellow); font-weight: 900 !important; transition: transform .25s,background .25s,box-shadow .25s; }
.contact-activation svg { width: 16px; height: 16px; }
.contact-activation:hover { transform: translateY(-2px); background: #fff16b; box-shadow: 0 10px 34px rgba(255,223,0,.2); }
.menu-toggle { display: none; width: 44px; height: 44px; border: 1px solid rgba(255,255,255,.28); border-radius: 50%; background: rgba(5,7,10,.3); position: relative; z-index: 2; }
.menu-toggle span { position: absolute; width: 16px; height: 1px; background: #fff; left: 13px; transition: transform .25s, top .25s; }
.menu-toggle span:first-child { top: 17px; }
.menu-toggle span:last-child { top: 25px; }
.menu-toggle.is-open span:first-child { top: 21px; transform: rotate(45deg); }
.menu-toggle.is-open span:last-child { top: 21px; transform: rotate(-45deg); }

.cinematic-hero { --gravity-x: 0; --gravity-y: 0; --cursor-x: 50%; --cursor-y: 50%; min-height: 100svh; position: relative; overflow: hidden; background: #030508; isolation: isolate; }
.hero-media { position: absolute; inset: -3%; z-index: -3; transition: transform .22s ease-out; transform: translate(calc(var(--gravity-x) * -18px), calc(var(--gravity-y) * -18px)) scale(1.075); }
.hero-media video { width: 100%; height: 100%; object-fit: cover; }
.hero-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(2,4,7,.72) 0%, rgba(2,4,7,.08) 24%, rgba(2,4,7,.04) 55%, rgba(2,4,7,.74) 100%), linear-gradient(90deg, rgba(2,4,7,.45), transparent 35%, transparent 70%, rgba(2,4,7,.28)); z-index: -2; }
.gravity-glow { position: absolute; width: 440px; height: 440px; left: calc(var(--cursor-x) - 220px); top: calc(var(--cursor-y) - 220px); background: radial-gradient(circle, rgba(255,223,0,.09), transparent 62%); pointer-events: none; transition: left .15s ease-out, top .15s ease-out; }
.gravity-curve { position: absolute; border: 1px solid rgba(255,255,255,.13); border-radius: 50%; pointer-events: none; transition: transform .3s ease-out; }
.curve-one { width: 70vw; height: 38vw; left: 15vw; top: 31%; transform: translate(calc(var(--gravity-x) * 38px), calc(var(--gravity-y) * 28px)) rotate(-7deg); }
.curve-two { width: 46vw; height: 76vw; left: 29vw; top: -12vw; border-color: rgba(255,223,0,.15); transform: translate(calc(var(--gravity-x) * -52px), calc(var(--gravity-y) * -35px)) rotate(31deg); }
.curve-three { width: 14px; height: 14px; background: var(--yellow); border: 0; box-shadow: 0 0 18px var(--yellow); left: calc(50% + var(--gravity-x) * 140px); top: 30%; }
.journey-trigger { position: absolute; bottom: 28px; left: 50%; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 8px; z-index: 5; }
.trigger-halo { width: 76px; height: 76px; border-radius: 50%; display: grid; place-items: center; background: rgba(5,7,10,.5); border: 1px solid rgba(255,223,0,.72); box-shadow: 0 0 0 9px rgba(255,223,0,.06), 0 0 38px rgba(255,223,0,.45); animation: halo 1.8s ease-in-out infinite; }
.trigger-halo img { width: 43px; height: 43px; object-fit: contain; }
.journey-trigger small { font-size: 9px; text-transform: uppercase; letter-spacing: .2em; font-weight: 900; }
.journey-trigger .scroll-track { width: 1px; height: 25px; display: block; position: relative; overflow: visible; background: linear-gradient(var(--yellow),rgba(255,223,0,0)); animation: scroll-pulse 1.7s ease-in-out infinite; }
.journey-trigger .scroll-track span { position: absolute; width: 5px; height: 5px; left: -2px; top: 0; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 9px var(--yellow); }
@keyframes halo { 50% { box-shadow: 0 0 0 17px rgba(255,223,0,0), 0 0 52px rgba(255,223,0,.65); transform: scale(1.04); } }
@keyframes scroll-pulse { 50% { opacity: .42; transform: translateY(4px); } }
.hero-coordinate { position: absolute; bottom: 37px; text-transform: uppercase; color: rgba(255,255,255,.52); font: 600 8px var(--font-geist-mono), monospace; letter-spacing: .18em; }
.coordinate-left { left: clamp(22px,5vw,78px); }
.coordinate-right { right: clamp(22px,5vw,78px); }

.welcome, .orbita-summary { background: var(--paper); color: var(--ink); padding: 110px clamp(22px, 6vw, 92px) 120px; }
.solutions, .services { padding: 110px clamp(22px, 6vw, 92px) 125px; }
.section-marker { border-top: 1px solid var(--dark-line); padding-top: 12px; display: flex; justify-content: space-between; text-transform: uppercase; font: 700 9px var(--font-geist-mono), monospace; letter-spacing: .17em; color: #757b83; }
.section-marker p { margin: 0; }
.section-marker.light { border-color: var(--line); color: #7d848e; }
.welcome-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 9vw; margin-top: 90px; align-items: start; }
.eyebrow { text-transform: uppercase; letter-spacing: .19em; font: 800 10px var(--font-geist-mono), monospace; color: #8b9000; margin: 0 0 25px; }
.welcome-title h1, .solutions-heading h2, .orbita-copy h2, .services-heading h2, .contact h2 { font-size: clamp(46px, 5.4vw, 82px); line-height: .96; letter-spacing: -.065em; margin: 0; font-weight: 900; }
.welcome-copy .lead { font-size: clamp(20px, 2vw, 28px); line-height: 1.32; letter-spacing: -.025em; font-weight: 750; color: var(--ink); }
.welcome-copy > p:not(.lead) { color: #626871; line-height: 1.75; font-size: 15px; }
.text-link { display: inline-flex; gap: 22px; align-items: center; margin-top: 28px; border-bottom: 1px solid var(--ink); padding-bottom: 6px; font-weight: 900; font-size: 12px; }
.experience-strip { margin-top: 105px; border-top: 1px solid var(--dark-line); border-bottom: 1px solid var(--dark-line); padding: 35px 0; display: grid; grid-template-columns: .48fr .92fr 1fr; gap: 6vw; align-items: center; }
.experience-strip > div:first-child { display: flex; align-items: center; gap: 18px; }
.experience-strip strong { font-size: clamp(74px, 9vw, 130px); line-height: .8; letter-spacing: -.09em; }
.experience-strip > div:first-child span { text-transform: uppercase; font: 800 9px var(--font-geist-mono), monospace; max-width: 80px; line-height: 1.5; }
.experience-strip > p { color: #5f656d; line-height: 1.65; margin: 0; }
.knowledge-cloud { display: flex; flex-wrap: wrap; gap: 7px; }
.knowledge-cloud span { padding: 8px 13px; border-radius: 999px; border: 1px solid var(--dark-line); font-size: 9px; font-weight: 900; text-transform: uppercase; }

.solutions-heading { margin: 80px 0 65px; display: grid; grid-template-columns: .75fr 1.25fr; gap: 8vw; align-items: start; }
.solutions-heading h2 { max-width: 950px; }
.solutions .eyebrow, .services .eyebrow, .contact .eyebrow { color: var(--yellow); }
.solution-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.solution-grid article { border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 30px 26px 34px; min-height: 310px; transition: background .25s ease, color .25s ease, transform .25s ease; }
.solution-grid article:hover { background: var(--yellow); color: var(--ink); transform: translateY(-6px); }
.solution-grid article > span { font: 800 9px var(--font-geist-mono), monospace; color: var(--yellow); }
.solution-grid article:hover > span { color: #625800; }
.solution-grid h3 { margin: 100px 0 14px; font-size: 22px; letter-spacing: -.03em; }
.solution-grid p { margin: 0; color: #9ca2ac; line-height: 1.65; font-size: 13px; }
.solution-grid article:hover p { color: #333820; }

.orbita-layout { display: grid; grid-template-columns: .76fr 1.24fr; gap: 7vw; align-items: center; margin-top: 80px; }
.orbita-copy > p:not(.eyebrow) { max-width: 600px; color: #626871; line-height: 1.78; margin: 28px 0 38px; }
.pill-link { min-height: 52px; padding: 0 21px; border: 1px solid rgba(5,7,10,.4); border-radius: 999px; display: inline-flex; align-items: center; gap: 34px; font-size: 12px; font-weight: 900; transition: background .25s, transform .25s; }
.pill-link:hover { background: var(--ink); color: #fff; transform: translateY(-3px); }
.orbit-visual { position: relative; width: min(660px, 50vw); height: min(660px, 50vw); min-width: 530px; min-height: 530px; margin: 0 auto; }
.orbit-ring { position: absolute; border: 1px solid rgba(5,7,10,.18); border-radius: 50%; }
.ring-outer { inset: 9%; animation: orbit-spin 36s linear infinite; }
.ring-outer::before { content: ""; position: absolute; width: 10px; height: 10px; border-radius: 50%; background: var(--yellow); top: 14%; right: 14%; box-shadow: 0 0 16px #baaa00; }
.ring-inner { inset: 23%; border-style: dashed; border-color: rgba(5,7,10,.12); animation: orbit-spin 27s linear infinite reverse; }
@keyframes orbit-spin { to { transform: rotate(360deg); } }
.orbit-energy { position: absolute; left: 50%; top: 50%; width: 0; height: 18px; border-radius: 999px; background: linear-gradient(90deg, rgba(255,223,0,.9), rgba(255,223,0,.38) 72%, var(--yellow)); box-shadow: 0 0 24px rgba(255,223,0,.7), 0 0 65px rgba(255,223,0,.28); opacity: 0; transform: translateY(-50%) rotate(-90deg); transform-origin: left center; pointer-events: none; z-index: 1; transition: width .46s cubic-bezier(.2,.86,.24,1), opacity .16s ease, transform .36s ease; }
.orbit-energy::after { content: ""; position: absolute; right: -7px; top: 50%; width: 20px; height: 20px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 0 9px rgba(255,223,0,.14), 0 0 28px var(--yellow); transform: translateY(-50%) scale(.4); transition: transform .34s ease .12s; }
.orbit-visual.has-active-stage .orbit-energy { width: 43%; opacity: 1; }
.orbit-visual.has-active-stage .orbit-energy::after { transform: translateY(-50%) scale(1); }
.active-stage-1 .orbit-energy { transform: translateY(-50%) rotate(-90deg); }
.active-stage-2 .orbit-energy { transform: translateY(-50%) rotate(-45deg); }
.active-stage-3 .orbit-energy { transform: translateY(-50%) rotate(0deg); }
.active-stage-4 .orbit-energy { transform: translateY(-50%) rotate(45deg); }
.active-stage-5 .orbit-energy { transform: translateY(-50%) rotate(90deg); }
.active-stage-6 .orbit-energy { transform: translateY(-50%) rotate(135deg); }
.active-stage-7 .orbit-energy { transform: translateY(-50%) rotate(180deg); }
.active-stage-8 .orbit-energy { transform: translateY(-50%) rotate(-135deg); }
.orbit-center { position: absolute; inset: 32%; border-radius: 50%; background: var(--yellow); display: flex; flex-direction: column; align-items: center; justify-content: center; box-shadow: 0 0 0 16px rgba(255,223,0,.15), 0 28px 55px rgba(5,7,10,.18); z-index: 2; transition: box-shadow .45s cubic-bezier(.2,.86,.24,1), transform .35s ease; }
.orbit-visual.has-active-stage .orbit-center { box-shadow: 0 0 0 112px rgba(255,223,0,.12), 0 0 85px 28px rgba(255,223,0,.22), 0 28px 55px rgba(5,7,10,.18); transform: scale(1.04); }
.orbit-center img { width: 48px; margin-bottom: 7px; }
.orbit-center span { text-transform: uppercase; font: 800 8px var(--font-geist-mono), monospace; letter-spacing: .14em; }
.orbit-center strong { font-size: 27px; letter-spacing: -.04em; }
.orbit-center small { font: 800 6px var(--font-geist-mono), monospace; letter-spacing: .1em; }
.orbit-visual ol { list-style: none; margin: 0; padding: 0; position: absolute; inset: 0; z-index: 3; }
.orbit-stage { position: absolute; width: 155px; text-align: center; }
.orbit-stage a { display: flex; flex-direction: column; gap: 4px; outline: none; }
.orbit-stage b { font: 800 8px var(--font-geist-mono), monospace; color: #8f8100; }
.orbit-stage span { background: #fff; border: 1px solid rgba(5,7,10,.15); border-radius: 999px; padding: 9px 11px; font-size: 11px; font-weight: 900; box-shadow: 0 8px 24px rgba(5,7,10,.07); display: flex; align-items: center; justify-content: center; gap: 8px; transition: background .28s ease, border-color .28s ease, box-shadow .28s ease, transform .28s ease; }
.orbit-stage .brand-cue { opacity: 0; width: 0; flex-basis: 0; border-color: transparent; transform: scale(.55); transition: opacity .25s ease,width .25s ease,flex-basis .25s ease,transform .25s ease,border-color .25s ease; }
.orbit-stage a:hover span, .orbit-stage a:focus-visible span { background: var(--yellow); border-color: var(--yellow); box-shadow: 0 0 0 8px rgba(255,223,0,.13), 0 0 38px rgba(255,223,0,.62); transform: scale(1.07); }
.orbit-stage a:hover .brand-cue, .orbit-stage a:focus-visible .brand-cue { opacity: .72; width: 14px; flex-basis: 14px; border-color: currentColor; transform: scale(1); }
.orbit-stage a:focus-visible span { outline: 2px solid var(--ink); outline-offset: 4px; }
.stage-1 { top: 0; left: 50%; transform: translateX(-50%); }
.stage-2 { top: 14%; right: 1%; }
.stage-3 { top: 46%; right: -4%; }
.stage-4 { bottom: 12%; right: 1%; }
.stage-5 { bottom: -1%; left: 50%; transform: translateX(-50%); }
.stage-6 { bottom: 12%; left: 1%; }
.stage-7 { top: 46%; left: -4%; }
.stage-8 { top: 14%; left: 1%; }

.team-command { background: #02050a; padding: 110px clamp(22px,6vw,92px) 125px; position: relative; overflow: hidden; }
.team-command-heading { display: grid; grid-template-columns: 1.4fr .6fr; gap: 8vw; margin: 80px 0 64px; align-items: end; }
.team-command-heading h2 { font-size: clamp(50px,6.2vw,96px); line-height: .92; letter-spacing: -.07em; margin: 0; max-width: 1080px; }
.team-command-heading > p { color: #929aa6; line-height: 1.72; margin: 0; max-width: 470px; }
.team-command .eyebrow { color: var(--yellow); }
.cockpit-stage { position: relative; min-height: clamp(760px,56vw,980px); overflow: hidden; background: #050912; border: 1px solid rgba(147,174,204,.24); box-shadow: 0 45px 100px rgba(0,0,0,.45); isolation: isolate; }
.cockpit-stage::before { content: ""; position: absolute; inset: 18px; border: 1px solid rgba(255,255,255,.08); z-index: 3; pointer-events: none; }
.cockpit-scene { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; z-index: -2; }
.cockpit-vignette { position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg,rgba(1,3,7,.1),transparent 48%,rgba(1,3,7,.64)),linear-gradient(90deg,rgba(1,3,7,.4),transparent 22%,transparent 78%,rgba(1,3,7,.4)); }
.console-screen { position: absolute; width: min(56%,840px); left: 50%; top: 8.5%; transform: translateX(-50%); padding: 17px; color: #eaf6ff; background: linear-gradient(145deg,rgba(3,12,21,.93),rgba(4,18,29,.86)); border: 1px solid rgba(151,218,255,.38); box-shadow: 0 0 0 8px rgba(1,5,10,.7),0 0 0 9px rgba(255,223,0,.18),0 0 55px rgba(55,179,255,.16),inset 0 0 50px rgba(21,116,168,.11); clip-path: polygon(4% 0,96% 0,100% 9%,100% 91%,96% 100%,4% 100%,0 91%,0 9%); z-index: 4; }
.console-screen::before { content: ""; position: absolute; inset: 0; opacity: .24; background: repeating-linear-gradient(180deg,transparent 0 3px,rgba(100,217,255,.08) 3px 4px); animation: screen-scan 6s linear infinite; pointer-events: none; }
.console-screen-header,.console-screen-footer { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .15em; color: #8aa7b8; }
.console-screen-header { border-bottom: 1px solid rgba(115,205,255,.24); padding: 0 4px 10px; }
.console-screen-header span { display: flex; align-items: center; gap: 7px; }
.console-screen-header i,.crew-modal-status i { width: 6px; height: 6px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 12px var(--yellow); animation: console-pulse 1.8s ease-in-out infinite; }
.console-screen-header b { color: var(--yellow); }
.crew-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(6,1fr); gap: 7px; padding: 12px 0; }
.crew-button { min-width: 0; padding: 0; border: 1px solid rgba(112,197,240,.18); background: rgba(15,38,53,.58); overflow: hidden; text-align: left; transition: .22s ease; }
.crew-button:hover,.crew-button:focus-visible { transform: translateY(-4px); background: rgba(31,65,82,.92); border-color: var(--yellow); box-shadow: 0 0 0 2px rgba(255,223,0,.14),0 12px 28px rgba(0,0,0,.38); outline: none; }
.crew-photo { display: grid; place-items: center; height: clamp(58px,5.4vw,86px); position: relative; overflow: hidden; background: linear-gradient(145deg,#172938,#08121c); }
.crew-photo img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.75) contrast(1.05); transition: .28s ease; }
.crew-button.astronaut-profile .crew-photo { background: radial-gradient(circle at 50% 28%,#274056 0,#101d29 47%,#050a10 100%); }
.crew-button.astronaut-profile .crew-photo img { object-fit: contain; object-position: center bottom !important; padding: 2px 3px 0; filter: saturate(.88) contrast(1.04) drop-shadow(0 7px 8px rgba(0,0,0,.58)); }
.crew-photo em { color: rgba(213,237,249,.7); font: 800 clamp(17px,2vw,28px) var(--font-geist-mono),monospace; font-style: normal; }
.crew-button:hover img,.crew-button:focus-visible img { transform: scale(1.09); filter: saturate(1); }
.crew-photo i { position: absolute; width: 7px; height: 7px; border: 1px solid var(--yellow); right: 5px; top: 5px; box-shadow: 0 0 8px rgba(255,223,0,.72); }
.crew-identity { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 6px; padding: 7px 6px; }
.crew-identity small { color: var(--yellow); font: 700 6px var(--font-geist-mono),monospace; }
.crew-identity strong { min-width: 0; overflow: hidden; text-overflow: ellipsis; font-size: clamp(7px,.62vw,10px); text-transform: uppercase; letter-spacing: .04em; }
.console-screen-footer { border-top: 1px solid rgba(115,205,255,.22); padding: 9px 4px 0; }
.console-screen-footer i { display: block; flex: 1; height: 1px; margin: 0 12px; background: linear-gradient(90deg,transparent,rgba(255,223,0,.7),transparent); }
@keyframes screen-scan { to { background-position: 0 24px; } }
@keyframes console-pulse { 50% { opacity: .4; transform: scale(.7); } }

.crew-modal { position: fixed; inset: 0; z-index: 1100; display: grid; place-items: center; padding: 24px; background: rgba(0,3,7,.84); backdrop-filter: blur(14px); }
.crew-modal-panel { width: min(900px,100%); min-height: 520px; display: grid; grid-template-columns: .78fr 1.22fr; position: relative; overflow: hidden; background: #070c13; border: 1px solid rgba(150,211,240,.3); box-shadow: 0 34px 120px rgba(0,0,0,.72); animation: crew-panel-in .32s cubic-bezier(.2,.86,.24,1) both; }
.crew-modal-close { position: absolute; right: 18px; top: 18px; width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; background: rgba(4,8,13,.72); font-size: 27px; z-index: 4; }
.crew-modal-close:hover,.crew-modal-close:focus-visible { background: var(--yellow); color: var(--ink); outline: none; }
.crew-modal-portrait { position: relative; display: grid; place-items: center; overflow: hidden; min-height: 520px; background: linear-gradient(145deg,#152b3c,#050b11); }
.crew-modal-portrait img { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; }
.crew-modal-portrait.is-contain { background: radial-gradient(circle at 50% 38%,#203448 0,#0b151f 48%,#04080d 100%); }
.crew-modal-portrait.is-contain img { object-fit: contain; object-position: center bottom !important; padding: 16px 8px 0; filter: drop-shadow(0 24px 28px rgba(0,0,0,.55)); }
.crew-modal-portrait em { font: 900 88px var(--font-geist-mono),monospace; font-style: normal; color: rgba(219,240,250,.68); }
.crew-modal-portrait > span { position: absolute; left: 24px; bottom: 22px; z-index: 2; color: var(--yellow); font: 700 8px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.crew-modal-copy { padding: 90px 70px 60px; display: flex; flex-direction: column; justify-content: center; }
.crew-modal-copy h3 { font-size: clamp(48px,6vw,82px); line-height: .9; letter-spacing: -.065em; margin: 0 0 22px; }
.crew-modal-copy > strong { align-self: flex-start; padding: 9px 13px; border: 1px solid rgba(255,223,0,.38); color: var(--yellow); text-transform: uppercase; font: 800 9px var(--font-geist-mono),monospace; letter-spacing: .11em; }
.crew-modal-copy > p:not(.eyebrow) { color: #a4adb7; font-size: 17px; line-height: 1.65; margin: 26px 0 50px; }
.crew-modal-status { margin-top: auto; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.12); display: flex; align-items: center; gap: 10px; color: #6f7c88; text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .13em; }
@keyframes crew-panel-in { from { opacity: 0; transform: translateY(24px) scale(.97); } }

.services-heading { display: grid; grid-template-columns: 1.4fr .6fr; gap: 8vw; margin: 80px 0 65px; align-items: end; }
.services-heading > p { color: #969da8; line-height: 1.7; margin: 0; }
.service-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.14); }
.service-card { min-height: 390px; padding: 28px; background: var(--ink); display: flex; flex-direction: column; position: relative; overflow: hidden; isolation: isolate; transition: background .3s, color .3s, transform .3s; }
.service-card:hover,.service-card:focus-visible { background: #11151b; transform: translateY(-4px); outline: none; }
.service-card.featured { background: var(--yellow); color: var(--ink); }
.service-glyph { position: absolute; z-index: -1; width: clamp(175px,20vw,285px); height: auto; right: -42px; top: -36px; color: rgba(255,255,255,.11); opacity: .42; transform: translate(12%,-10%) rotate(-8deg) scale(.82); transform-origin: center; pointer-events: none; transition: transform .52s cubic-bezier(.2,.86,.24,1), opacity .28s ease, color .28s ease, filter .28s ease; }
.service-card:hover .service-glyph,.service-card:focus-visible .service-glyph { color: var(--yellow); opacity: .82; transform: translate(-6%,8%) rotate(0) scale(1.02); filter: drop-shadow(0 0 16px rgba(255,223,0,.18)); }
.service-card.featured .service-glyph { color: rgba(5,7,10,.22); opacity: .6; }
.service-card.featured:hover,.service-card.featured:focus-visible { background: #ffe524; }
.service-card.featured:hover .service-glyph,.service-card.featured:focus-visible .service-glyph { color: rgba(5,7,10,.72); filter: none; }
.service-top { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; text-transform: uppercase; font: 800 8px var(--font-geist-mono), monospace; letter-spacing: .12em; color: #787f89; }
.featured .service-top { color: #686000; }
.service-card h3 { position: relative; z-index: 1; font-size: clamp(28px, 3vw, 42px); line-height: 1; letter-spacing: -.055em; margin: 75px 0 18px; }
.service-card p { position: relative; z-index: 1; color: #9ba2ad; font-size: 13px; line-height: 1.67; margin: 0; }
.featured p { color: #333719; }
.service-card i { position: relative; z-index: 1; margin-top: auto; padding-top: 22px; border-top: 1px solid var(--line); font-style: normal; text-transform: uppercase; font: 800 8px var(--font-geist-mono), monospace; letter-spacing: .12em; color: var(--yellow); display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.featured i { color: var(--ink); border-color: rgba(5,7,10,.2); }

.global-brands { position: relative; overflow: hidden; padding: 120px clamp(22px,6vw,92px) 150px; background: radial-gradient(circle at 50% 48%,rgba(21,91,126,.16),transparent 38%),#03070c; }
.global-brands::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .24; background-image: linear-gradient(rgba(89,193,242,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(89,193,242,.08) 1px,transparent 1px); background-size: 58px 58px; mask-image: linear-gradient(transparent 6%,#000 32%,#000 75%,transparent); }
.global-brands-heading { position: relative; z-index: 2; display: grid; grid-template-columns: 1.34fr .66fr; gap: 9vw; align-items: end; margin: 80px 0 65px; }
.global-brands-heading h2 { max-width: 920px; margin: 0; font-size: clamp(46px,5.4vw,82px); line-height: .96; letter-spacing: -.065em; font-weight: 900; }
.global-brands .eyebrow { color: var(--yellow); }
.global-brands-intro > p { margin: 0; color: #8d98a3; line-height: 1.72; }
.global-brands-intro > div { display: flex; align-items: center; gap: 18px; margin-top: 28px; padding-top: 24px; border-top: 1px solid rgba(104,210,255,.18); }
.global-brands-intro strong { font-size: 54px; line-height: .8; letter-spacing: -.07em; color: var(--yellow); }
.global-brands-intro span { max-width: 110px; color: #7f8b96; text-transform: uppercase; font: 700 8px var(--font-geist-mono),monospace; letter-spacing: .13em; line-height: 1.5; }
.brand-world-experience { position: relative; z-index: 2; }
.country-shortcuts { display: flex; gap: 7px; margin-bottom: 16px; overflow-x: auto; scrollbar-width: none; }
.country-shortcuts::-webkit-scrollbar { display: none; }
.country-shortcuts button { flex: 0 0 auto; min-height: 44px; display: flex; align-items: center; gap: 9px; padding: 0 14px; border: 1px solid rgba(104,210,255,.18); background: rgba(3,12,19,.74); color: #85939e; text-transform: uppercase; font: 750 8px var(--font-geist-mono),monospace; letter-spacing: .1em; transition: background .25s,border-color .25s,color .25s,transform .25s; }
.country-shortcuts button span { color: #68d2ff; }
.country-shortcuts button:hover,.country-shortcuts button:focus-visible,.country-shortcuts button.is-active { color: var(--ink); background: var(--yellow); border-color: var(--yellow); outline: none; transform: translateY(-2px); }
.country-shortcuts button:hover span,.country-shortcuts button:focus-visible span,.country-shortcuts button.is-active span { color: #625800; }
.brand-world-grid { display: grid; grid-template-columns: minmax(0,1.43fr) minmax(300px,.57fr); gap: 18px; }
.hologram-shell { min-height: 670px; position: relative; display: grid; place-items: center; overflow: hidden; border: 1px solid rgba(104,210,255,.18); background: radial-gradient(circle at 50% 54%,rgba(50,175,229,.12),transparent 45%),linear-gradient(160deg,rgba(5,18,29,.96),rgba(2,7,12,.98)); isolation: isolate; }
.hologram-shell::before,.hologram-shell::after { content: ""; position: absolute; border: 1px solid rgba(104,210,255,.12); border-radius: 50%; pointer-events: none; }
.hologram-shell::before { width: 78%; aspect-ratio: 1; transform: rotateX(67deg); bottom: -27%; }
.hologram-shell::after { width: 54%; aspect-ratio: 1; transform: rotateX(67deg); bottom: -13%; border-color: rgba(255,223,0,.13); }
.hologram-beam { position: absolute; z-index: -1; left: 15%; right: 15%; bottom: 55px; height: 72%; opacity: .35; background: linear-gradient(90deg,transparent,rgba(72,192,241,.11) 22%,rgba(72,192,241,.2) 50%,rgba(72,192,241,.11) 78%,transparent); clip-path: polygon(38% 100%,62% 100%,100% 0,0 0); filter: blur(8px); }
.hologram-float { width: 100%; animation: hologram-float 5.5s ease-in-out infinite; }
.hologram-plane { --map-tilt-x: 0deg; --map-tilt-y: 0deg; --map-glow-x: 50%; --map-glow-y: 50%; width: 96%; margin: 0 auto 55px; position: relative; padding: 44px 24px 34px; transform-style: preserve-3d; transform: perspective(1100px) rotateX(var(--map-tilt-x)) rotateY(var(--map-tilt-y)) rotateX(4deg); transition: transform .22s ease-out; will-change: transform; }
.hologram-plane::before { content: ""; position: absolute; inset: 7% 4%; border: 1px solid rgba(104,210,255,.16); box-shadow: inset 0 0 70px rgba(40,168,220,.06),0 0 55px rgba(40,168,220,.05); clip-path: polygon(0 0,18px 0,18px 2px,2px 2px,2px 18px,0 18px,0 0,100% 0,100% 18px,calc(100% - 2px) 18px,calc(100% - 2px) 2px,calc(100% - 18px) 2px,calc(100% - 18px) 0,100% 0,100% 100%,calc(100% - 18px) 100%,calc(100% - 18px) calc(100% - 2px),calc(100% - 2px) calc(100% - 2px),calc(100% - 2px) calc(100% - 18px),100% calc(100% - 18px),100% 100%,0 100%,0 calc(100% - 18px),2px calc(100% - 18px),2px calc(100% - 2px),18px calc(100% - 2px),18px 100%,0 100%); pointer-events: none; }
.map-pointer-glow { position: absolute; width: 260px; height: 260px; left: calc(var(--map-glow-x) - 130px); top: calc(var(--map-glow-y) - 130px); border-radius: 50%; background: radial-gradient(circle,rgba(255,223,0,.1),transparent 68%); pointer-events: none; transition: left .14s ease-out,top .14s ease-out; }
.digital-world-map { width: 100%; height: auto; overflow: visible; filter: drop-shadow(0 0 14px rgba(55,185,235,.22)); }
.world-country-layer path { fill: url(#world-dots-blue); opacity: .34; stroke: rgba(104,210,255,.08); stroke-width: .35; pointer-events: none; transition: opacity .2s ease,fill .2s ease,filter .2s ease,transform .2s ease; transform-box: fill-box; transform-origin: center; }
.world-country-layer path.has-brands { opacity: .8; pointer-events: auto; cursor: pointer; }
.world-country-layer path.has-brands:hover,.world-country-layer path.has-brands:focus-visible,.world-country-layer path.is-active { fill: url(#world-dots-yellow); opacity: 1; stroke: rgba(255,223,0,.34); filter: url(#world-yellow-glow); outline: none; transform: translateY(-1px) scale(1.018); }
.colombia-epicenter circle { fill: none; stroke: var(--yellow); transform-box: fill-box; transform-origin: center; animation: epicenter-pulse 2.4s ease-out infinite; }
.colombia-epicenter circle:first-child { fill: var(--yellow); stroke: none; filter: url(#world-yellow-glow); }
.colombia-epicenter circle:nth-child(2) { animation-delay: -.8s; }
.colombia-epicenter circle:nth-child(3) { animation-delay: -1.6s; }
.map-scan { position: absolute; z-index: 4; left: 5%; right: 5%; top: 11%; height: 1px; pointer-events: none; background: linear-gradient(90deg,transparent,rgba(115,219,255,.8),transparent); box-shadow: 0 0 14px rgba(115,219,255,.7); animation: map-scan 4.8s ease-in-out infinite; }
.map-coordinate { position: absolute; bottom: 24px; color: rgba(122,213,250,.56); text-transform: uppercase; font: 650 7px var(--font-geist-mono),monospace; letter-spacing: .13em; }
.coordinate-north { left: 7%; }
.coordinate-signal { right: 7%; }
.hologram-base { position: absolute; bottom: 32px; left: 50%; width: 42%; height: 42px; transform: translateX(-50%); border: 1px solid rgba(104,210,255,.28); border-radius: 50%; box-shadow: 0 0 0 13px rgba(104,210,255,.025),0 0 50px rgba(104,210,255,.17),inset 0 0 34px rgba(104,210,255,.12); }
.hologram-base i { position: absolute; inset: 10px 17%; border-radius: 50%; border: 1px dashed rgba(255,223,0,.36); animation: orbit-spin 12s linear infinite; }
.hologram-base span { position: absolute; width: 7px; height: 7px; border-radius: 50%; background: var(--yellow); top: 50%; left: 50%; box-shadow: 0 0 18px var(--yellow); transform: translate(-50%,-50%); }
.country-readout { min-height: 670px; padding: 24px; display: flex; flex-direction: column; border: 1px solid rgba(104,210,255,.18); background: linear-gradient(180deg,rgba(8,24,36,.94),rgba(3,9,15,.98)); box-shadow: inset 0 0 60px rgba(44,163,211,.045); }
.readout-topline { display: flex; justify-content: space-between; align-items: center; padding-bottom: 14px; border-bottom: 1px solid rgba(104,210,255,.18); color: #637683; text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.readout-topline b { color: var(--yellow); font-size: 10px; }
.readout-title { display: flex; gap: 13px; align-items: center; padding: 27px 0 8px; }
.signal-dot { width: 10px; height: 10px; flex: 0 0 auto; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 0 8px rgba(255,223,0,.07),0 0 22px rgba(255,223,0,.72); animation: console-pulse 1.7s ease-in-out infinite; }
.readout-title small { color: #647985; text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .12em; }
.readout-title h3 { margin: 5px 0 0; font-size: clamp(27px,3vw,42px); line-height: 1; letter-spacing: -.045em; }
.country-readout > p { margin: 8px 0 22px; color: #74828d; font-size: 12px; line-height: 1.6; }
.country-brand-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; max-height: 482px; overflow-y: auto; padding-right: 5px; scrollbar-color: rgba(255,223,0,.62) rgba(255,255,255,.05); scrollbar-width: thin; }
.country-brand-card { min-height: 86px; position: relative; display: grid; place-items: center; overflow: hidden; padding: 8px; background: #fff; border: 1px solid rgba(255,255,255,.14); transition: transform .22s ease,box-shadow .22s ease; }
.country-brand-card:hover { transform: translateY(-3px); box-shadow: 0 8px 28px rgba(45,184,237,.15); }
.country-brand-card img { width: 100%; height: 68px; object-fit: contain; }
.country-brand-card > span:last-child:not(.partner-wordmark) { position: absolute; right: 5px; top: 5px; padding: 3px 5px; background: var(--yellow); color: var(--ink); font: 800 5px var(--font-geist-mono),monospace; letter-spacing: .1em; }
.partner-wordmark { min-width: 95px; min-height: 44px; display: flex; align-items: center; justify-content: center; color: #111; font-family: Arial,sans-serif; font-weight: 900; }
.partner-directv { position: relative; color: #0875c9; font-size: 17px; letter-spacing: -.06em; }
.partner-directv::before { content: ""; position: absolute; width: 72px; height: 25px; left: 10px; top: 2px; border-top: 4px solid #0875c9; border-radius: 50%; transform: rotate(-8deg); }
.partner-claro { width: 66px; min-width: 66px; height: 66px; min-height: 66px; border-radius: 50%; background: #e4202c; color: #fff; font-size: 17px; letter-spacing: -.05em; }
.partner-movistar { flex-direction: column; color: #17659c; font-size: 13px; }
.partner-movistar b { color: #08a9d6; font-size: 32px; line-height: .7; font-style: italic; font-weight: 900; transform: scaleX(1.25) rotate(-7deg); }
.readout-footer { display: flex; gap: 10px; align-items: center; margin-top: auto; padding-top: 18px; color: #50616d; text-transform: uppercase; font: 700 6px var(--font-geist-mono),monospace; letter-spacing: .13em; }
.readout-footer i { flex: 1; height: 1px; background: linear-gradient(90deg,rgba(104,210,255,.08),rgba(104,210,255,.56),rgba(104,210,255,.08)); }
@keyframes hologram-float { 50% { transform: translateY(-12px); } }
@keyframes epicenter-pulse { 0% { opacity: .95; transform: scale(.25); } 85%,100% { opacity: 0; transform: scale(1.5); } }
@keyframes map-scan { 0%,100% { transform: translateY(0); opacity: 0; } 12%,88% { opacity: .7; } 50% { transform: translateY(430px); opacity: .28; } }

.contact { min-height: 760px; padding: 140px 24px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; position: relative; overflow: hidden; isolation: isolate; }
.contact-orbit { position: absolute; width: 720px; height: 720px; border-radius: 50%; border: 1px solid rgba(255,223,0,.18); box-shadow: 0 0 0 100px rgba(255,223,0,.025), 0 0 0 200px rgba(255,223,0,.012); z-index: -1; }
.contact h2 { max-width: 1050px; }
.contact > p:not(.eyebrow) { color: #9fa6af; line-height: 1.7; max-width: 620px; margin: 30px auto 36px; }
.contact-actions { display: flex; gap: 25px; align-items: center; flex-wrap: wrap; justify-content: center; }
.pill-link.yellow { background: var(--yellow); color: var(--ink); border-color: var(--yellow); }
.pill-link.yellow:hover { background: #fff16b; }
.contact-actions > a:last-child { font-size: 12px; font-weight: 800; border-bottom: 1px solid rgba(255,255,255,.45); padding-bottom: 4px; }
.contact-icon-link { display: inline-flex; align-items: center; gap: 10px; }
.contact-icon-link svg { width: 17px; height: 17px; flex: 0 0 auto; }

.site-footer { padding: 70px clamp(22px,6vw,92px) 28px; background: #020304; border-top: 1px solid var(--line); display: grid; grid-template-columns: 1.1fr .72fr .95fr auto; gap: 55px; align-items: start; }
.footer-brand img { width: 190px; }
.footer-brand p { margin: 24px 0 0; color: #898f99; font-size: 12px; line-height: 1.65; }
.footer-nav { display: grid; gap: 13px; font-size: 11px; font-weight: 800; }
.footer-nav a,.footer-legal a { transition: color .2s ease; }
.footer-nav a:hover,.footer-legal a:hover { color: var(--yellow); }
.footer-contact { display: grid; gap: 12px; color: #8e949e; font-size: 11px; }
.footer-contact > p { margin: 0 0 4px; color: var(--yellow); text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.footer-contact a,.footer-contact > span { display: flex; align-items: center; gap: 10px; }
.footer-contact svg { width: 15px; height: 15px; color: var(--yellow); flex: 0 0 auto; }
.footer-social { display: flex; gap: 9px; justify-content: flex-end; }
.footer-social a { width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; display: grid; place-items: center; color: #fff; transition: background .2s ease,color .2s ease,transform .2s ease; }
.footer-social a:hover { background: var(--yellow); color: var(--ink); transform: translateY(-3px); }
.footer-social svg { width: 17px; height: 17px; }
.footer-bottom { grid-column: 1 / -1; border-top: 1px solid var(--line); margin-top: 20px; padding-top: 22px; display: flex; justify-content: space-between; align-items: center; gap: 24px; }
.footer-bottom small { color: #686f79; font: 600 8px var(--font-geist-mono),monospace; letter-spacing: .12em; }
.footer-legal { display: flex; gap: 24px; color: #868d97; font-size: 9px; font-weight: 800; }

.subpage-header { height: 92px; padding: 0 clamp(22px, 5vw, 78px); display: flex; align-items: center; justify-content: space-between; background: var(--ink); border-bottom: 1px solid var(--line); }
.back-home { font-size: 11px; font-weight: 900; display: inline-flex; align-items: center; gap: 18px; }
.about-page .welcome { padding-top: 90px; }
.about-manifesto { background: var(--ink); color: #fff; padding: 130px clamp(22px,6vw,92px); }
.about-manifesto h2 { max-width: 1000px; font-size: clamp(50px,7vw,105px); line-height: .92; letter-spacing: -.065em; margin: 0; }
.about-manifesto > p:not(.eyebrow) { max-width: 660px; color: #a3a9b3; line-height: 1.75; margin: 32px 0 38px; }

/* Nuestra historia */
.history-page { overflow: hidden; }
.history-hero { min-height: 100svh; padding: 190px clamp(22px,8vw,125px) 90px; position: relative; display: flex; flex-direction: column; justify-content: center; isolation: isolate; background: radial-gradient(circle at 78% 36%,rgba(255,223,0,.12),transparent 26%),linear-gradient(145deg,#020304 0%,#090c12 100%); }
.history-stars { position: absolute; inset: 0; z-index: -1; opacity: .38; background-image: radial-gradient(circle at 16% 28%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 78% 22%,#fff 0 1px,transparent 1.5px),radial-gradient(circle at 62% 74%,#fff 0 1px,transparent 1.5px); background-size: 270px 270px,340px 340px,420px 420px; }
.history-hero h1 { width: min(1120px,92%); margin: 0; font-size: clamp(62px,8vw,126px); line-height: .87; letter-spacing: -.075em; }
.history-intro { width: min(590px,100%); margin: 38px 0 42px auto; color: #a3a9b3; font-size: 18px; line-height: 1.7; }
.history-scroll { align-self: flex-end; display: inline-flex; align-items: center; gap: 18px; color: var(--yellow); text-transform: uppercase; font: 800 9px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.founders-chapter { min-height: 920px; padding: 120px clamp(22px,6vw,92px); display: grid; grid-template-columns: .75fr 1.25fr; gap: 7vw; align-items: center; background: var(--paper); color: var(--ink); }
.founders-copy h2,.purpose-copy h2 { margin: 0; font-size: clamp(48px,6vw,90px); line-height: .93; letter-spacing: -.065em; }
.founders-copy > p:last-child,.purpose-copy > p { margin: 32px 0 0; color: #60666e; line-height: 1.75; max-width: 590px; }
.founder-portraits { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; align-items: end; }
.founder-portraits article { position: relative; min-height: 620px; overflow: hidden; background: #11161e; }
.founder-portraits article:first-child { transform: translateY(-55px); }
.founder-portraits img { width: 100%; height: 620px; object-fit: cover; }
.founder-portraits article:last-child img { object-position: center top; }
.founder-portraits article > div { position: absolute; inset: auto 0 0; padding: 48px 22px 21px; display: grid; gap: 4px; color: #fff; background: linear-gradient(transparent,rgba(0,0,0,.88)); }
.founder-portraits span { font-size: 19px; font-weight: 900; }
.founder-portraits small { color: var(--yellow); text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .12em; }
.history-timeline { position: relative; padding: 40px clamp(22px,6vw,92px) 80px; background: var(--ink); }
.timeline-rail { position: absolute; left: clamp(35px,7vw,108px); top: 0; bottom: 0; width: 1px; background: rgba(255,255,255,.12); }
.timeline-rail i { position: sticky; display: block; top: 20vh; width: 7px; height: 7px; margin-left: -3px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 20px var(--yellow); }
.history-chapter { min-height: 680px; position: relative; display: grid; grid-template-columns: .42fr 1fr .18fr; gap: 5vw; align-items: center; padding: 90px 0 90px clamp(58px,8vw,130px); border-bottom: 1px solid var(--line); }
.chapter-index { align-self: start; padding-top: 13px; border-top: 1px solid rgba(255,223,0,.45); display: grid; gap: 34px; }
.chapter-index span { color: #737a84; text-transform: uppercase; font: 700 8px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.chapter-index strong { color: var(--yellow); font-size: clamp(22px,3vw,43px); letter-spacing: -.05em; }
.chapter-content { max-width: 800px; }
.chapter-content h2 { margin: 0 0 32px; font-size: clamp(46px,5.5vw,84px); line-height: .94; letter-spacing: -.065em; }
.chapter-content > p { max-width: 680px; margin: 0 0 18px; color: #9ba2ac; font-size: 15px; line-height: 1.78; }
.chapter-content blockquote { margin: 45px 0 0; padding: 0 0 0 24px; border-left: 3px solid var(--yellow); color: #fff; font-size: clamp(23px,3vw,38px); line-height: 1.25; font-weight: 850; letter-spacing: -.035em; }
.chapter-content .text-link { border-color: var(--yellow); color: var(--yellow); }
.chapter-number { color: rgba(255,255,255,.035); font: 900 clamp(76px,11vw,176px)/1 var(--font-geist-mono),monospace; }
.purpose-chapter { min-height: 900px; padding: 120px clamp(22px,6vw,92px); display: grid; grid-template-columns: 1fr 1fr; gap: 8vw; align-items: center; background: var(--yellow); color: var(--ink); }
.purpose-photo { height: 720px; overflow: hidden; transform: rotate(-2deg); box-shadow: 25px 28px 0 rgba(5,7,10,.12); }
.purpose-photo img { width: 100%; height: 100%; object-fit: cover; }
.purpose-copy .eyebrow { color: #6e6500; }
.purpose-copy > p strong { color: var(--ink); }
.purpose-socials { margin-top: 44px; padding-top: 25px; border-top: 1px solid rgba(5,7,10,.24); display: grid; gap: 15px; }
.purpose-socials > div { display: flex; align-items: center; gap: 9px; }
.purpose-socials span { width: 80px; text-transform: uppercase; font: 900 8px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.purpose-socials a { width: 39px; height: 39px; border-radius: 50%; border: 1px solid rgba(5,7,10,.3); display: grid; place-items: center; transition: background .2s,color .2s,transform .2s; }
.purpose-socials a:hover { background: var(--ink); color: var(--yellow); transform: translateY(-3px); }
.history-finale { min-height: 920px; padding: 130px clamp(22px,8vw,125px); display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; background: radial-gradient(circle at 50% 50%,rgba(255,223,0,.1),transparent 34%),#030507; }
.history-finale h2 { max-width: 1260px; margin: 0; font-size: clamp(52px,7vw,108px); line-height: .92; letter-spacing: -.07em; }
.history-finale > p:not(.eyebrow) { max-width: 670px; margin: 38px auto; color: #a1a8b2; line-height: 1.75; }
.history-reveal { opacity: 0; transform: translateY(45px); transition: opacity .85s ease,transform .85s cubic-bezier(.2,.86,.24,1); }
.history-reveal.is-visible { opacity: 1; transform: translateY(0); }

.legal-page { background: var(--paper); color: var(--ink); }
.legal-hero { padding: 105px clamp(22px,12vw,210px) 85px; background: var(--ink); color: #fff; }
.legal-hero h1 { max-width: 1120px; margin: 0; font-size: clamp(54px,7.2vw,112px); line-height: .9; letter-spacing: -.07em; }
.legal-hero > p:not(.eyebrow) { max-width: 820px; margin: 36px 0 25px; color: #a2a9b3; font-size: 18px; line-height: 1.72; }
.legal-hero small { color: var(--yellow); font: 700 8px var(--font-geist-mono),monospace; letter-spacing: .12em; text-transform: uppercase; }
.legal-content { width: min(980px,calc(100% - 44px)); margin: 0 auto; padding: 90px 0 120px; }
.legal-content section { padding: 0 0 52px; margin: 0 0 52px; border-bottom: 1px solid var(--dark-line); }
.legal-content section:last-child { margin-bottom: 0; }
.legal-content h2 { margin: 0 0 24px; font-size: clamp(28px,3vw,42px); line-height: 1.05; letter-spacing: -.045em; }
.legal-content h3 { margin: 30px 0 12px; font-size: 18px; letter-spacing: -.02em; }
.legal-content p,.legal-content li { color: #555d65; font-size: 15px; line-height: 1.8; }
.legal-content p { margin: 0 0 16px; }
.legal-content ul { margin: 0; padding-left: 20px; }
.legal-content li + li { margin-top: 7px; }
.legal-content a { color: #665e00; font-weight: 900; text-decoration: underline; text-underline-offset: 4px; }

.method-hero { --orbit-scale: 1; --orbit-glow: .25; min-height: 760px; padding: 78px clamp(22px,6vw,92px) 125px; position: relative; overflow: hidden; isolation: isolate; display: flex; flex-direction: column; justify-content: space-between; }
.method-hero-orbits { position: absolute; width: min(760px,66vw); aspect-ratio: 1; right: -12vw; top: -19vw; z-index: -1; }
.method-hero-orbits span { position: absolute; border-radius: 50%; border: 1px solid rgba(255,223,0,.16); inset: 0; animation: orbit-spin 35s linear infinite; }
.method-hero-orbits span:nth-child(2) { inset: 17%; border-style: dashed; border-color: rgba(255,255,255,.12); animation-duration: 26s; animation-direction: reverse; }
.method-hero-orbits span:nth-child(3) { inset: 37%; background: var(--yellow); border: 0; animation: none; box-shadow: 0 0 120px rgba(255,223,0,var(--orbit-glow)); transform: scale(var(--orbit-scale)); transform-origin: center; will-change: transform, box-shadow; transition: transform 70ms linear, box-shadow 70ms linear; }
.method-hero-grid { display: grid; grid-template-columns: 1.25fr .55fr; gap: 9vw; align-items: end; margin-top: 150px; }
.method-hero h1 { font-size: clamp(58px,7.4vw,118px); line-height: .89; letter-spacing: -.072em; margin: 0; max-width: 1050px; }
.method-hero-copy { padding-bottom: 6px; }
.method-hero-copy > p { color: #a4aab3; line-height: 1.75; margin: 0 0 34px; }

.method-definition { background: var(--paper); color: var(--ink); padding: 110px clamp(22px,6vw,92px) 125px; }
.method-definition-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 9vw; margin: 85px 0 95px; align-items: start; }
.method-definition-grid h2 { font-size: clamp(46px,5.7vw,88px); line-height: .95; letter-spacing: -.065em; margin: 0; }
.method-definition-grid p { color: #626871; line-height: 1.78; margin: 0 0 22px; }
.method-solves { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--dark-line); border-left: 1px solid var(--dark-line); }
.method-solves article { border-right: 1px solid var(--dark-line); border-bottom: 1px solid var(--dark-line); padding: 25px; min-height: 235px; transition: background .25s, transform .25s; }
.method-solves article:hover { background: var(--yellow); transform: translateY(-5px); }
.method-solves article > span { font: 800 8px var(--font-geist-mono), monospace; color: #8b8000; }
.method-solves h3 { font-size: 28px; margin: 65px 0 10px; letter-spacing: -.04em; }
.method-solves p { color: #636870; font-size: 13px; line-height: 1.6; margin: 0; }
.method-solves article:hover p { color: #333719; }

.method-stages { padding: 110px clamp(22px,6vw,92px) 125px; }
.method-stages-intro { display: grid; grid-template-columns: .55fr 1.45fr; gap: 8vw; margin: 85px 0 70px; }
.method-stages-intro h2 { font-size: clamp(48px,6vw,90px); line-height: .94; letter-spacing: -.065em; margin: 0; max-width: 980px; }
.method-stage-list { border-top: 1px solid var(--line); }
.method-stage-card { scroll-margin-top: 28px; display: grid; grid-template-columns: .48fr 1fr .56fr; gap: clamp(28px,5vw,80px); padding: 52px 0; border-bottom: 1px solid var(--line); position: relative; transition: background .3s, padding .3s, color .3s; }
.method-stage-card::before { content: ""; position: absolute; inset: 0; background: var(--yellow); transform: scaleY(0); transform-origin: bottom; transition: transform .38s cubic-bezier(.2,.86,.24,1); z-index: 0; }
.method-stage-card:target::before, .method-stage-card:hover::before { transform: scaleY(1); }
.method-stage-card > * { position: relative; z-index: 1; }
.method-stage-card:target, .method-stage-card:hover { color: var(--ink); padding-left: 28px; padding-right: 28px; }
.method-stage-heading > span { font: 800 9px var(--font-geist-mono), monospace; color: var(--yellow); }
.method-stage-card:target .method-stage-heading > span, .method-stage-card:hover .method-stage-heading > span { color: #6e6500; }
.method-stage-heading h3 { font-size: clamp(32px,4vw,57px); line-height: 1; letter-spacing: -.055em; margin: 28px 0 0; }
.method-stage-body strong { display: block; font-size: 21px; line-height: 1.3; letter-spacing: -.025em; max-width: 660px; }
.method-stage-body > p { color: #9da4ae; line-height: 1.75; font-size: 14px; margin: 18px 0 25px; }
.method-stage-card:target .method-stage-body > p, .method-stage-card:hover .method-stage-body > p { color: #3f432c; }
.method-deliverables { display: flex; flex-wrap: wrap; gap: 7px; }
.method-deliverables span { border: 1px solid rgba(255,255,255,.2); border-radius: 999px; padding: 7px 11px; font-size: 8px; text-transform: uppercase; letter-spacing: .08em; font-weight: 900; }
.method-stage-card:target .method-deliverables span, .method-stage-card:hover .method-deliverables span { border-color: rgba(5,7,10,.28); }
.method-stage-card aside { border-left: 1px solid var(--line); padding-left: 26px; }
.method-stage-card aside small { color: var(--yellow); text-transform: uppercase; font: 800 8px var(--font-geist-mono), monospace; letter-spacing: .14em; }
.method-stage-card aside p { color: #9da4ae; line-height: 1.65; font-size: 13px; }
.method-stage-card:target aside, .method-stage-card:hover aside { border-color: rgba(5,7,10,.24); }
.method-stage-card:target aside small, .method-stage-card:hover aside small { color: #6e6500; }
.method-stage-card:target aside p, .method-stage-card:hover aside p { color: #3f432c; }

.method-loop { background: var(--yellow); color: var(--ink); padding: 120px clamp(22px,6vw,92px); text-align: center; }
.method-loop .eyebrow { color: #706700; }
.method-loop h2 { font-size: clamp(48px,7vw,108px); line-height: .92; letter-spacing: -.07em; margin: 0 auto; max-width: 1300px; }
.method-loop h2 span { opacity: .38; }
.method-loop > p:last-child { max-width: 650px; margin: 38px auto 0; color: #4a4b27; line-height: 1.7; }
.method-contact { background: var(--ink); }

@media (pointer: fine) {
  .method-page, .method-page a, .method-page button, .method-page label, .method-page select { cursor: url("/assets/inpulso-cursor.png") 16 16, pointer; }
  .lead-form input, .lead-form textarea { cursor: text; }
}

.contact-actions button { font-family: inherit; }

.lead-modal { position: fixed; inset: 0; z-index: 1000; background: rgba(1,2,4,.82); backdrop-filter: blur(12px); padding: 22px; display: grid; place-items: center; }
.lead-modal-panel { width: min(1120px,100%); max-height: calc(100svh - 44px); overflow: auto; background: var(--paper); color: var(--ink); display: grid; grid-template-columns: .48fr 1fr; position: relative; box-shadow: 0 35px 120px rgba(0,0,0,.5); }
.lead-modal-close { position: absolute; right: 18px; top: 18px; width: 42px; height: 42px; border-radius: 50%; border: 1px solid rgba(5,7,10,.25); background: var(--paper); color: var(--ink); font-size: 26px; line-height: 1; z-index: 2; }
.lead-modal-intro { background: var(--ink); color: #fff; padding: 65px 45px; min-height: 620px; }
.lead-modal-intro h2 { font-size: clamp(46px,5vw,72px); line-height: .92; letter-spacing: -.065em; margin: 0; }
.lead-modal-intro > p:last-child { color: #999fa9; line-height: 1.7; margin-top: 30px; }
.lead-form { padding: 64px 55px 45px; display: grid; grid-template-columns: 1fr 1fr; gap: 22px 18px; align-content: start; }
.lead-form label { display: grid; gap: 8px; text-transform: uppercase; font: 800 8px var(--font-geist-mono), monospace; letter-spacing: .09em; color: #646a72; }
.lead-form input, .lead-form select, .lead-form textarea { width: 100%; border: 0; border-bottom: 1px solid rgba(5,7,10,.32); border-radius: 0; background: transparent; color: var(--ink); padding: 10px 2px 12px; font: 700 14px var(--font-nunito), Arial, sans-serif; outline: none; resize: vertical; }
.lead-form input:focus, .lead-form select:focus, .lead-form textarea:focus { border-color: var(--yellow); box-shadow: 0 2px 0 var(--yellow); }
.lead-form textarea { border: 1px solid rgba(5,7,10,.28); padding: 12px; min-height: 105px; }
.field-full { grid-column: 1 / -1; }
.lead-form-submit { border-top: 1px solid rgba(5,7,10,.18); padding-top: 22px; display: flex; justify-content: space-between; gap: 25px; align-items: center; }
.lead-form-submit p { color: #777d85; font-size: 10px; line-height: 1.5; margin: 0; max-width: 260px; }
.lead-form-submit button { border: 0; border-radius: 999px; min-height: 52px; padding: 0 20px; background: var(--yellow); color: var(--ink); font-weight: 900; display: inline-flex; align-items: center; gap: 30px; }
.lead-form-submit button:hover { background: var(--ink); color: #fff; }

/* IaN Plus · Laboratorio de inteligencia artificial */
.ian-lab-page { overflow-x: clip; background: #030508; color: #f7f8fa; }
.ian-lab-page::selection { background: var(--yellow); color: #05070a; }
.ian-hero { min-height: 100svh; position: relative; isolation: isolate; overflow: hidden; display: grid; align-items: stretch; }
.ian-hero-backdrop { position: absolute; inset: 0; z-index: -3; background: linear-gradient(90deg,rgba(1,3,6,.74) 0%,rgba(1,3,6,.44) 42%,rgba(1,3,6,.08) 72%),url("/assets/ian-plus/lian-lab-hero.webp") center/cover no-repeat; }
.ian-hero::before { content: ""; position: absolute; inset: 0; z-index: -2; background: linear-gradient(180deg,rgba(1,3,6,.15),transparent 62%,#030508),repeating-linear-gradient(180deg,transparent 0 4px,rgba(255,255,255,.012) 4px 5px); pointer-events: none; }
.ian-hero::after { content: ""; position: absolute; inset: auto 0 0; height: 1px; background: linear-gradient(90deg,transparent,var(--yellow),transparent); opacity: .45; }
.ian-hero-grid { width: min(1500px,calc(100% - clamp(44px,9vw,150px))); margin: auto; padding: 148px 0 70px; display: grid; grid-template-columns: 1.02fr .98fr; gap: 2vw; align-items: center; }
.ian-hero-copy { position: relative; z-index: 4; max-width: 760px; }
.lab-eyebrow { margin: 0 0 22px; display: flex; align-items: center; gap: 10px; color: var(--yellow); text-transform: uppercase; font: 750 9px var(--font-geist-mono),monospace; letter-spacing: .18em; }
.lab-eyebrow > i { width: 7px; height: 7px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 12px var(--yellow); animation: lab-core-pulse 2.2s ease-in-out infinite; }
.ian-hero h1 { margin: 0; max-width: 830px; font-size: clamp(58px,6.1vw,104px); line-height: .88; letter-spacing: -.074em; font-weight: 900; }
.ian-hero h1 em { color: var(--yellow); font-style: normal; }
.ian-hero-copy > p:not(.lab-eyebrow) { max-width: 650px; margin: 31px 0 34px; color: #afb4bc; font-size: 16px; line-height: 1.72; }
.ian-hero-actions { display: flex; gap: 13px; flex-wrap: wrap; }
.ian-primary-button,.ian-secondary-button { min-height: 54px; padding: 0 20px; display: inline-flex; align-items: center; justify-content: center; gap: 28px; border: 1px solid var(--yellow); text-transform: uppercase; font: 900 9px var(--font-geist-mono),monospace; letter-spacing: .1em; transition: transform .25s,background .25s,color .25s,box-shadow .25s; }
.ian-primary-button { background: var(--yellow); color: #05070a; }
.ian-primary-button:hover,.ian-primary-button:focus-visible { transform: translateY(-3px); box-shadow: 0 0 32px rgba(255,223,0,.27); outline: none; }
.ian-secondary-button { color: #d2d6dc; border-color: rgba(255,255,255,.26); background: rgba(5,7,10,.28); }
.ian-secondary-button:hover { border-color: var(--yellow); color: var(--yellow); }
.ian-hero-signals { display: flex; gap: 10px 18px; flex-wrap: wrap; margin-top: 28px; color: #747c86; text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .13em; }
.ian-hero-signals span { display: flex; align-items: center; gap: 8px; }
.ian-hero-signals span::before { content: ""; width: 4px; height: 4px; background: var(--yellow); box-shadow: 0 0 8px var(--yellow); }
.lab-scroll-signal { position: absolute; left: 50%; bottom: 22px; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 8px; color: #8a9099; text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.lab-scroll-signal i { width: 1px; height: 31px; position: relative; background: linear-gradient(var(--yellow),transparent); }
.lab-scroll-signal i::after { content: ""; position: absolute; width: 5px; height: 5px; left: -2px; top: 0; border-radius: 50%; background: var(--yellow); animation: lab-scroll 1.7s ease-in-out infinite; }
.lian-visual { min-height: 660px; position: relative; display: grid; place-items: center; isolation: isolate; }
.lian-float { position: relative; z-index: 2; width: min(500px,44vw); opacity: 1; visibility: visible; transform-origin: center 65%; filter: drop-shadow(0 34px 28px rgba(0,0,0,.5)); }
.lian-character-image { width: 100%; height: auto; transform-origin: center 66%; }
.lian-eye-blink { position: absolute; inset: 0; pointer-events: none; }
.lian-eye-blink i { position: absolute; top: 27.2%; width: 5.2%; height: 4.9%; border-radius: 50%; background: #050607; transform: scaleY(0); transform-origin: center; animation: lian-blink 6.4s infinite; }
.lian-eye-blink i:first-child { left: 38.1%; }
.lian-eye-blink i:last-child { left: 55.1%; animation-delay: .025s; }
.lian-scene-faq .lian-float { animation: lian-listen 4.8s ease-in-out infinite; }
.lian-scene-final .lian-float { animation: lian-confident 5.6s ease-in-out infinite; }
.lian-scene-final .lian-eye-blink i { animation-delay: 1.8s; }
.lian-scene-final .lian-eye-blink i:last-child { animation-delay: 1.825s; }
.lian-reactor-overlay { position: absolute; width: 12%; aspect-ratio: 1; left: 49%; top: 51%; border-radius: 50%; transform: translate(-50%,-50%); box-shadow: 0 0 26px 8px rgba(255,223,0,.16); animation: lian-reactor 2.5s ease-in-out infinite; pointer-events: none; }
.lian-orbit { position: absolute; z-index: 1; left: 50%; top: 69%; border: 1px solid rgba(255,223,0,.44); border-radius: 50%; transform: translate(-50%,-50%) rotateX(72deg); box-shadow: 0 0 22px rgba(255,223,0,.08); }
.orbit-a { width: 72%; aspect-ratio: 1; animation: lian-orbit 11s linear infinite; }
.orbit-b { width: 51%; aspect-ratio: 1; border-style: dashed; animation: lian-orbit 8s linear infinite reverse; }
.lian-holograms { position: absolute; z-index: 3; right: -1%; top: 27%; display: grid; gap: 8px; opacity: 0; }
.lian-holograms span { min-width: 105px; padding: 9px 12px; color: var(--yellow); background: rgba(5,7,10,.8); border: 1px solid rgba(255,223,0,.38); opacity: .15; text-align: center; font: 750 8px var(--font-geist-mono),monospace; letter-spacing: .16em; }
.lian-status { position: absolute; left: 50%; bottom: 4%; transform: translateX(-50%); display: flex; align-items: center; gap: 8px; color: #979ea8; white-space: nowrap; text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.lian-status i { width: 5px; height: 5px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 9px var(--yellow); }
.lian-visual[data-emotion="THINKING"] .lian-orbit,.lian-visual[data-emotion="PROCESSING"] .lian-orbit { animation-duration: 4s; }
.lian-visual[data-emotion="CELEBRATING"] .lian-float { animation: lian-celebrate 1.1s ease-in-out infinite alternate; }
.lian-visual[data-emotion="HUMAN_HANDOFF"] .lian-holograms span { opacity: .72; }
.lian-visual.is-compact { min-height: 380px; }
.lian-visual.is-compact .lian-float { width: min(290px,72vw); }
.lian-visual.is-compact .lian-holograms { display: none; }
.lian-visual.is-compact .lian-status { bottom: 0; }
@keyframes lab-core-pulse { 50% { opacity: .45; transform: scale(.7); } }
@keyframes lab-scroll { 50% { top: 22px; opacity: .2; } }
@keyframes lian-orbit { to { transform: translate(-50%,-50%) rotateX(72deg) rotateZ(360deg); } }
@keyframes lian-reactor { 50% { box-shadow: 0 0 42px 14px rgba(255,223,0,.28); } }
@keyframes lian-celebrate { to { transform: translateY(-10px) rotate(1.8deg); } }
@keyframes lian-blink { 0%,44%,48%,100% { transform: scaleY(0); } 45.5%,46.5% { transform: scaleY(1); } }
@keyframes lian-listen { 0%,100% { transform: translateY(0) rotate(-1deg); } 50% { transform: translateY(-8px) rotate(1deg); } }
@keyframes lian-confident { 0%,100% { transform: translateY(0) scale(1); } 45% { transform: translateY(-6px) scale(1.018); } 62% { transform: translateY(-4px) scale(1.012); } }

.ian-section { position: relative; padding: 130px clamp(22px,6vw,92px); border-top: 1px solid rgba(255,255,255,.08); overflow: hidden; }
.ian-section::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .22; background-image: linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); background-size: 58px 58px; mask-image: linear-gradient(transparent,#000 22%,#000 78%,transparent); }
.lab-section-heading { position: relative; z-index: 2; max-width: 1100px; margin-bottom: 64px; }
.lab-section-heading.split { max-width: none; display: grid; grid-template-columns: 1.2fr .8fr; gap: 8vw; align-items: end; }
.lab-section-heading h2,.alliance-heading h2,.metrics-copy h2,.faq-intro h2,.diagnosis-hero h2 { margin: 0; font-size: clamp(48px,5.6vw,88px); line-height: .93; letter-spacing: -.067em; }
.lab-section-heading > p:not(.lab-eyebrow),.lab-section-heading.split > p,.metrics-copy > p:not(.lab-eyebrow),.faq-intro > p:not(.lab-eyebrow),.diagnosis-hero > div > p:not(.lab-eyebrow) { color: #949ca7; line-height: 1.72; max-width: 660px; margin: 26px 0 0; }
.capability-grid { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(5,1fr); border-top: 1px solid rgba(255,255,255,.12); border-left: 1px solid rgba(255,255,255,.12); }
.capability-grid article { min-height: 320px; padding: 24px; position: relative; border-right: 1px solid rgba(255,255,255,.12); border-bottom: 1px solid rgba(255,255,255,.12); background: rgba(5,8,12,.74); transition: background .28s,transform .28s; }
.capability-grid article:hover { background: rgba(255,223,0,.96); color: #05070a; transform: translateY(-5px); }
.capability-grid article > span { color: var(--yellow); font: 800 8px var(--font-geist-mono),monospace; }
.capability-grid article:hover > span { color: #605800; }
.capability-grid h3 { margin: 90px 0 15px; font-size: 20px; line-height: 1.05; letter-spacing: -.035em; }
.capability-grid p { color: #858d98; font-size: 12px; line-height: 1.62; margin: 0; }
.capability-grid article:hover p { color: #34381f; }
.capability-grid article > i { position: absolute; width: 6px; height: 6px; right: 14px; top: 14px; border: 1px solid var(--yellow); box-shadow: 0 0 8px var(--yellow); }
.training-orbit { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; }
.training-orbit::before { content: ""; position: absolute; left: 8%; right: 8%; top: 46px; height: 1px; background: linear-gradient(90deg,transparent,var(--yellow),transparent); box-shadow: 0 0 12px rgba(255,223,0,.5); }
.training-orbit article { min-height: 285px; padding: 28px; position: relative; background: linear-gradient(150deg,rgba(255,255,255,.07),rgba(255,255,255,.015)); border: 1px solid rgba(255,255,255,.12); }
.training-orbit article > span { width: 38px; height: 38px; display: grid; place-items: center; position: relative; z-index: 2; border-radius: 50%; background: #05070a; border: 1px solid var(--yellow); color: var(--yellow); font: 800 8px var(--font-geist-mono),monospace; }
.training-orbit h3 { margin: 72px 0 14px; font-size: 24px; letter-spacing: -.04em; }
.training-orbit p { color: #9299a3; font-size: 13px; line-height: 1.65; }
.lab-note { position: relative; z-index: 2; max-width: 910px; margin: 34px auto 0; padding: 18px 20px; display: flex; align-items: center; gap: 13px; border: 1px solid rgba(255,223,0,.25); background: rgba(255,223,0,.045); color: #c3c7cd; font-size: 12px; line-height: 1.6; }
.lab-note svg { color: var(--yellow); flex: 0 0 auto; }

.ian-alliance { background: radial-gradient(circle at 50% 55%,rgba(255,223,0,.07),transparent 31%),#05080c; text-align: center; }
.alliance-heading { position: relative; z-index: 2; max-width: 1100px; margin: 0 auto 70px; }
.alliance-heading .lab-eyebrow { justify-content: center; }
.alliance-system { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr .58fr 1fr; gap: 22px; align-items: center; max-width: 1280px; margin: 0 auto; }
.alliance-core { min-height: 480px; padding: 42px; display: flex; flex-direction: column; align-items: center; justify-content: center; background: rgba(6,10,15,.9); border: 1px solid rgba(255,223,0,.28); clip-path: polygon(8% 0,92% 0,100% 8%,100% 92%,92% 100%,8% 100%,0 92%,0 8%); }
.alliance-core > span { color: var(--yellow); font-size: 66px; font-weight: 900; letter-spacing: -.07em; }
.alliance-core > strong { color: #949ca6; text-transform: uppercase; font: 750 8px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.alliance-core ul { width: 100%; margin: 46px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.alliance-core li { padding: 11px; border: 1px solid rgba(255,255,255,.09); color: #aab0b8; font-size: 11px; }
.alliance-bridge { display: flex; flex-direction: column; align-items: center; gap: 17px; color: var(--yellow); text-transform: uppercase; font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.alliance-bridge i { width: 1px; height: 80px; background: linear-gradient(transparent,var(--yellow),transparent); box-shadow: 0 0 12px rgba(255,223,0,.6); }
.callbell-wordmark { display: flex; align-items: center; gap: 12px; color: #56d6b3; }
.callbell-wordmark svg { width: 43px; height: 43px; }
.callbell-wordmark span { font-size: 54px; font-weight: 900; letter-spacing: -.06em; }
.callbell-core { border-color: rgba(86,214,179,.3); }
.alliance-copy { position: relative; z-index: 2; max-width: 900px; margin: 58px auto 0; color: #a2a9b2; line-height: 1.75; }
.alliance-disclaimer { position: relative; z-index: 2; margin: 22px auto 0; color: #646c77; font: 650 7px var(--font-geist-mono),monospace; letter-spacing: .08em; }

.hybrid-chat-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.18fr .82fr; gap: 22px; }
.chat-simulator,.lead-capsule { background: rgba(7,11,16,.95); border: 1px solid rgba(255,255,255,.12); }
.chat-header { min-height: 58px; padding: 0 22px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.1); color: #868e99; text-transform: uppercase; font: 700 8px var(--font-geist-mono),monospace; letter-spacing: .12em; }
.chat-header span { display: flex; align-items: center; gap: 9px; color: #e1e3e7; }
.chat-header i { width: 6px; height: 6px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 8px var(--yellow); }
.chat-messages { min-height: 520px; padding: 32px; display: flex; flex-direction: column; gap: 14px; }
.chat-messages p { max-width: 72%; margin: 0; padding: 14px 17px; color: #c6cbd2; line-height: 1.55; font-size: 13px; }
.from-client { align-self: flex-end; background: #181d24; border-radius: 14px 14px 3px 14px; }
.from-lian { align-self: flex-start; background: rgba(255,223,0,.09); border: 1px solid rgba(255,223,0,.16); border-radius: 14px 14px 14px 3px; }
.chat-messages button { align-self: flex-start; min-height: 42px; padding: 0 14px; display: flex; align-items: center; gap: 12px; border: 1px solid var(--yellow); background: var(--yellow); color: #05070a; font-size: 11px; font-weight: 900; }
.handoff-banner { margin: 0 22px 22px; padding: 17px; display: grid; grid-template-columns: auto 1fr; gap: 3px 12px; align-items: center; border: 1px solid rgba(255,223,0,.32); background: rgba(255,223,0,.07); }
.handoff-banner svg { grid-row: 1/3; color: var(--yellow); }
.handoff-banner span { color: #7d8691; text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .13em; }
.handoff-banner strong { font-size: 13px; }
.lead-capsule { padding: 40px; }
.lead-capsule > p { color: var(--yellow); text-transform: uppercase; font: 800 9px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.lead-capsule dl { margin: 55px 0; }
.lead-capsule dl div { display: flex; justify-content: space-between; gap: 20px; padding: 17px 0; border-bottom: 1px solid rgba(255,255,255,.09); }
.lead-capsule dt { color: #727b86; font-size: 11px; }
.lead-capsule dd { margin: 0; font-size: 12px; font-weight: 900; }
.lead-capsule > small { color: #8f97a1; line-height: 1.75; }

.crm-section { background: #070a0e; }
.crm-console { position: relative; z-index: 2; min-height: 610px; display: grid; grid-template-columns: .25fr .75fr 1.25fr; border: 1px solid rgba(255,255,255,.14); background: #080c12; box-shadow: 0 40px 90px rgba(0,0,0,.45); }
.crm-sidebar { padding: 22px 13px; display: flex; flex-direction: column; gap: 8px; border-right: 1px solid rgba(255,255,255,.1); }
.crm-sidebar > span { margin: 6px 8px 20px; color: #69717b; text-transform: uppercase; font: 700 7px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.crm-sidebar i { padding: 12px 10px; display: flex; align-items: center; gap: 10px; color: #9ba3ad; font-size: 10px; font-style: normal; border: 1px solid rgba(255,255,255,.06); }
.crm-sidebar i:first-of-type { color: var(--yellow); border-color: rgba(255,223,0,.23); }
.crm-inbox { border-right: 1px solid rgba(255,255,255,.1); }
.crm-inbox > header,.crm-thread > header { min-height: 72px; padding: 0 18px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.09); }
.crm-inbox header span { padding: 5px 8px; color: #05070a; background: var(--yellow); font: 800 7px var(--font-geist-mono),monospace; }
.crm-inbox > div { min-height: 84px; padding: 14px; display: grid; grid-template-columns: auto 1fr auto; gap: 11px; align-items: center; border-bottom: 1px solid rgba(255,255,255,.07); }
.crm-inbox > div.is-active { background: rgba(255,223,0,.07); border-left: 2px solid var(--yellow); }
.crm-inbox > div > i { width: 35px; height: 35px; border-radius: 50%; display: grid; place-items: center; background: #1d232c; color: var(--yellow); font-style: normal; }
.crm-inbox > div > span { display: grid; gap: 4px; }
.crm-inbox > div strong { font-size: 10px; }
.crm-inbox > div small,.crm-inbox time { color: #6e7681; font-size: 8px; }
.crm-thread { padding-bottom: 24px; }
.crm-thread header span { display: grid; gap: 4px; }
.crm-thread header small { color: #737c87; font-size: 8px; }
.crm-thread header b { padding: 7px 9px; color: var(--yellow); border: 1px solid rgba(255,223,0,.22); font-size: 7px; text-transform: uppercase; }
.thread-card { margin: 30px; padding: 18px; border: 1px solid rgba(255,223,0,.2); background: rgba(255,223,0,.055); color: #9ba2ac; font-size: 11px; }
.crm-thread > p { max-width: 70%; margin: 120px 30px 0 auto; padding: 15px; background: #171d25; color: #c4c9d0; border-radius: 12px 12px 3px 12px; font-size: 11px; line-height: 1.55; }
.crm-thread footer { margin: 55px 30px 0; min-height: 50px; padding: 0 15px; display: flex; align-items: center; justify-content: space-between; border: 1px solid rgba(255,255,255,.13); color: #656e79; font-size: 10px; }
.crm-thread footer svg { color: var(--yellow); }

.metrics-section { display: grid; grid-template-columns: .65fr 1.35fr; gap: 7vw; align-items: center; }
.metrics-copy,.metrics-grid { position: relative; z-index: 2; }
.metrics-copy > span { display: inline-flex; margin-top: 30px; padding: 8px 10px; border: 1px solid var(--yellow); color: var(--yellow); font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.metrics-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.metrics-grid article { min-height: 210px; padding: 22px; display: flex; flex-direction: column; position: relative; background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.11); }
.metrics-grid svg { color: var(--yellow); }
.metrics-grid span { margin: 24px 0 9px; color: #747d88; font-size: 9px; }
.metrics-grid strong { font-size: 39px; letter-spacing: -.06em; }
.metrics-grid small { margin-top: auto; color: var(--yellow); }
.metrics-grid i { height: 34px; margin-top: 14px; background: linear-gradient(125deg,transparent 0 15%,rgba(255,223,0,.28) 16% 19%,transparent 20% 32%,rgba(255,223,0,.45) 33% 38%,transparent 39% 50%,rgba(255,223,0,.25) 51% 58%,transparent 59%); clip-path: polygon(0 75%,20% 65%,34% 72%,48% 29%,62% 47%,77% 19%,100% 4%,100% 100%,0 100%); }

.industry-selector { position: relative; z-index: 2; display: grid; grid-template-columns: .72fr 1.28fr; border: 1px solid rgba(255,255,255,.12); }
.industry-selector > div { display: grid; border-right: 1px solid rgba(255,255,255,.12); }
.industry-selector button { min-height: 60px; padding: 0 22px; border: 0; border-bottom: 1px solid rgba(255,255,255,.08); background: transparent; color: #89919c; text-align: left; font-weight: 800; transition: background .25s,color .25s,padding .25s; }
.industry-selector button.is-active,.industry-selector button:hover { padding-left: 30px; background: var(--yellow); color: #05070a; }
.industry-selector article { min-height: 560px; padding: 68px; display: flex; flex-direction: column; justify-content: center; background: radial-gradient(circle at 65% 50%,rgba(255,223,0,.1),transparent 40%); }
.industry-selector article > span { color: var(--yellow); font: 750 8px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.industry-selector h3 { margin: 20px 0 58px; font-size: clamp(52px,6vw,96px); line-height: .9; letter-spacing: -.07em; }
.industry-selector ul { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.industry-selector li { min-height: 48px; padding: 0 15px; display: flex; align-items: center; gap: 11px; border: 1px solid rgba(255,255,255,.1); color: #a1a8b1; font-size: 11px; }
.industry-selector li i { width: 5px; height: 5px; background: var(--yellow); box-shadow: 0 0 8px var(--yellow); }

.faq-section { display: grid; grid-template-columns: .72fr 1.28fr; gap: 7vw; align-items: start; background: #05080d; }
.faq-intro { position: sticky; top: 130px; z-index: 2; }
.faq-intro .lian-visual { margin-top: 30px; }
.faq-console { position: relative; z-index: 2; border-top: 1px solid rgba(255,255,255,.12); }
.faq-console article { border-bottom: 1px solid rgba(255,255,255,.12); }
.faq-console button { width: 100%; min-height: 82px; padding: 0 5px; display: grid; grid-template-columns: 44px 1fr 22px; gap: 18px; align-items: center; border: 0; background: transparent; text-align: left; cursor: pointer; }
.faq-console button > span { color: var(--yellow); font: 750 8px var(--font-geist-mono),monospace; }
.faq-console button strong { font-size: 16px; }
.faq-console button > i { width: 16px; height: 16px; position: relative; }
.faq-console button > i::before,.faq-console button > i::after { content: ""; position: absolute; top: 50%; left: 0; width: 100%; height: 1px; background: var(--yellow); transition: transform .25s; }
.faq-console button > i::after { transform: rotate(90deg); }
.faq-console article.is-open button > i::after { transform: rotate(0); }
.faq-console article > div { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .35s ease; }
.faq-console article > div > p { min-height: 0; overflow: hidden; margin: 0; color: #969ea8; line-height: 1.75; }
.faq-console article.is-open > div { grid-template-rows: 1fr; }
.faq-console article.is-open > div > p { padding: 0 60px 30px; }

.diagnosis-section { background: radial-gradient(circle at 80% 14%,rgba(255,223,0,.09),transparent 22%),#030508; }
.diagnosis-hero { position: relative; z-index: 2; min-height: 620px; display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 4vw; }
.diagnosis-hero > div:first-child { max-width: 830px; }
.diagnosis-hero > div > a { display: inline-flex; align-items: center; gap: 11px; margin-top: 34px; padding-bottom: 5px; border-bottom: 1px solid var(--yellow); color: var(--yellow); font-size: 12px; font-weight: 900; }
.diagnosis-form { position: relative; z-index: 2; max-width: 1180px; margin: 50px auto 0; padding: clamp(28px,5vw,72px); border: 1px solid rgba(255,255,255,.13); background: rgba(8,12,18,.93); }
.form-heading { margin-bottom: 55px; }
.form-heading > span { color: var(--yellow); font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.form-heading h3 { margin: 18px 0 8px; font-size: clamp(36px,4vw,62px); line-height: .95; letter-spacing: -.055em; }
.form-heading p { color: #7e8792; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 18px; }
.diagnosis-form label { display: grid; gap: 9px; color: #8e97a2; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.diagnosis-form label.wide,.form-grid .wide { grid-column: 1/-1; }
.diagnosis-form input,.diagnosis-form select,.diagnosis-form textarea { width: 100%; border: 1px solid rgba(255,255,255,.16); border-radius: 0; background: #080c12; color: #fff; padding: 15px; outline: none; font: 600 13px var(--font-nunito),sans-serif; resize: vertical; }
.diagnosis-form input:focus,.diagnosis-form select:focus,.diagnosis-form textarea:focus { border-color: var(--yellow); box-shadow: 0 0 0 3px rgba(255,223,0,.06); }
.diagnosis-form fieldset { margin: 38px 0; padding: 0; border: 0; }
.diagnosis-form legend { margin-bottom: 18px; color: var(--yellow); font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .15em; text-transform: uppercase; }
.diagnosis-form fieldset > div { display: flex; flex-wrap: wrap; gap: 8px; }
.diagnosis-form fieldset label { cursor: pointer; }
.diagnosis-form fieldset input { position: absolute; opacity: 0; pointer-events: none; }
.diagnosis-form fieldset span { padding: 11px 13px; border: 1px solid rgba(255,255,255,.14); color: #969ea8; text-transform: none; letter-spacing: 0; transition: background .2s,color .2s,border-color .2s; }
.diagnosis-form fieldset input:checked + span { background: var(--yellow); color: #05070a; border-color: var(--yellow); }
.diagnosis-form > .ian-primary-button { margin-top: 28px; border: 0; cursor: pointer; }
.diagnosis-form > small { display: block; margin-top: 15px; color: #626b76; line-height: 1.55; }

@media (max-width: 1000px) {
  .solution-grid { grid-template-columns: repeat(2, 1fr); }
  .service-list { grid-template-columns: repeat(2, 1fr); }
  .welcome-grid, .orbita-layout { grid-template-columns: 1fr; }
  .welcome-copy { max-width: 690px; }
  .orbit-visual { width: 640px; height: 640px; }
  .experience-strip { grid-template-columns: .6fr 1.4fr; }
  .knowledge-cloud { grid-column: 1 / -1; }
  .method-hero-grid, .method-definition-grid { grid-template-columns: 1fr; }
  .method-hero-copy { max-width: 620px; }
  .method-solves { grid-template-columns: repeat(2,1fr); }
  .method-stage-card { grid-template-columns: .46fr 1fr; }
  .method-stage-card aside { grid-column: 2; }
  .lead-modal-panel { grid-template-columns: 1fr; }
  .lead-modal-intro { min-height: auto; padding: 48px 42px; }
  .team-command-heading { grid-template-columns: 1fr; gap: 30px; }
  .console-screen { width: 68%; }
  .crew-grid { grid-template-columns: repeat(4,1fr); }
  .global-brands-heading { grid-template-columns: 1fr; gap: 35px; }
  .global-brands-intro { max-width: 650px; }
  .brand-world-grid { grid-template-columns: minmax(0,1.15fr) minmax(270px,.85fr); }
  .hologram-shell,.country-readout { min-height: 600px; }
  .ian-hero-grid { grid-template-columns: 1fr .82fr; width: calc(100% - 48px); }
  .ian-hero h1 { font-size: 68px; }
  .lian-visual { min-height: 560px; }
  .lian-float { width: min(390px,43vw); }
  .capability-grid { grid-template-columns: repeat(2,1fr); }
  .training-orbit { grid-template-columns: repeat(2,1fr); }
  .alliance-system { grid-template-columns: 1fr; max-width: 720px; }
  .alliance-bridge { flex-direction: row; justify-content: center; }
  .alliance-bridge i { width: 90px; height: 1px; }
  .metrics-section { grid-template-columns: 1fr; }
  .faq-section { grid-template-columns: 1fr; }
  .faq-intro { position: relative; top: 0; }
  .faq-intro .lian-visual { display: none; }
  .diagnosis-hero { grid-template-columns: 1fr .7fr; }
}

@media (max-width: 700px) {
  .site-header { height: 76px; padding: 0 18px; }
  .brand img { width: 158px; }
  .menu-toggle { display: block; }
  .site-header nav { position: fixed; inset: 0; padding: 96px 22px 34px; background: rgba(5,7,10,.98); flex-direction: column; justify-content: flex-start; align-items: stretch; gap: 8px; overflow-y: auto; opacity: 0; visibility: hidden; transition: opacity .25s, visibility .25s; }
  .site-header nav.is-open { opacity: 1; visibility: visible; }
  .site-header nav > a:not(.ian-activation) { min-height: 50px; display: flex; align-items: center; font-size: 25px; letter-spacing: -.04em; border-bottom: 1px solid rgba(255,255,255,.09); }
  .site-header .nav-group { border-bottom: 1px solid rgba(255,255,255,.09); }
  .site-header .nav-group-trigger { width: 100%; min-height: 50px; justify-content: space-between; font-size: 25px; letter-spacing: -.04em; }
  .site-header .nav-dropdown,.site-header .nav-group:last-of-type .nav-dropdown { position: static; width: 100%; max-height: 0; padding: 0; grid-template-columns: 1fr; overflow: hidden; border: 0; box-shadow: none; opacity: 1; visibility: visible; transform: none; transition: max-height .35s,padding .35s; }
  .site-header .nav-group:focus-within .nav-dropdown,.site-header .nav-group:hover .nav-dropdown,.site-header .nav-group:last-of-type:hover .nav-dropdown,.site-header .nav-group:last-of-type:focus-within .nav-dropdown { max-height: 640px; padding: 8px 0 14px; transform: none; }
  .site-header .nav-dropdown a { padding: 10px 12px; font-size: 12px; }
  .site-header .ian-activation { order: -1; min-height: 58px; margin-bottom: 18px; justify-content: center; background: #05070a; color: #f7f8fa !important; border-color: var(--yellow); font-size: 15px !important; }
  .site-header .ian-core { background: var(--yellow); box-shadow: 0 0 12px var(--yellow); }
  .site-header .contact-activation { order: -1; min-height: 58px; margin-bottom: 18px; justify-content: center; font-size: 15px !important; }
  .hero-media { inset: -2%; transform: scale(1.06); }
  .curve-one { width: 110vw; height: 80vw; left: -5vw; }
  .curve-two { width: 80vw; height: 140vw; left: 10vw; top: -15vw; }
  .hero-coordinate { display: none; }
  .journey-trigger { bottom: 20px; }
  .trigger-halo { width: 68px; height: 68px; }
  .loader-copy > p { font-size: 20px; }
  .launch-stage { height: 250px; }
  .loader-rocket { width: 98px; }
  .welcome, .orbita-summary, .solutions, .services, .team-command { padding: 78px 20px 86px; }
  .welcome-grid, .solutions-heading, .services-heading { margin-top: 55px; grid-template-columns: 1fr; gap: 35px; }
  .welcome-title h1, .solutions-heading h2, .orbita-copy h2, .services-heading h2, .contact h2 { font-size: 43px; }
  .welcome-copy .lead { font-size: 20px; }
  .experience-strip { margin-top: 65px; grid-template-columns: 1fr; gap: 30px; }
  .experience-strip > p { font-size: 14px; }
  .solution-grid, .service-list { grid-template-columns: 1fr; }
  .solution-grid article { min-height: 250px; }
  .solution-grid h3 { margin-top: 60px; }
  .orbit-layout { overflow: hidden; }
  .orbit-visual { width: 100%; min-width: 0; height: auto; min-height: 0; margin-top: 40px; }
  .orbit-ring, .orbit-center, .orbit-energy { display: none; }
  .orbit-visual ol { position: static; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .orbit-stage { position: static !important; transform: none !important; width: auto; text-align: left; }
  .orbit-stage span { min-height: 60px; border-radius: 6px; display: flex; align-items: center; justify-content: space-between; line-height: 1.2; }
  .orbit-stage .brand-cue { opacity: .62; width: 14px; flex-basis: 14px; border-color: currentColor; transform: none; }
  .service-card { min-height: 345px; }
  .service-card h3 { margin-top: 62px; }
  .service-glyph { width: 205px; right: -42px; top: -30px; opacity: .33; transform: translate(4%,2%) rotate(-5deg) scale(.9); }
  .global-brands { padding: 78px 20px 92px; }
  .global-brands-heading { margin: 55px 0 40px; grid-template-columns: 1fr; gap: 30px; }
  .global-brands-heading h2 { font-size: 43px; }
  .global-brands-intro > p { font-size: 14px; }
  .country-shortcuts { margin-left: -20px; margin-right: -20px; padding: 0 20px 7px; }
  .brand-world-grid { grid-template-columns: 1fr; gap: 10px; }
  .hologram-shell { min-height: 390px; margin-left: -20px; margin-right: -20px; border-left: 0; border-right: 0; }
  .hologram-plane { width: 108%; margin-bottom: 28px; padding: 25px 6px 24px; transform: perspective(900px) rotateX(var(--map-tilt-x)) rotateY(var(--map-tilt-y)) rotateX(4deg); }
  .hologram-beam { bottom: 33px; }
  .hologram-base { width: 55%; height: 30px; bottom: 17px; }
  .map-coordinate { display: none; }
  .map-scan { animation-duration: 4s; }
  .country-readout { min-height: 540px; padding: 20px; }
  .country-brand-grid { max-height: 390px; }
  .country-brand-card { min-height: 80px; }
  .country-brand-card img { height: 62px; }
  .team-command-heading { margin: 55px 0 38px; }
  .team-command-heading h2 { font-size: 46px; }
  .cockpit-stage { min-height: 890px; margin-left: -20px; margin-right: -20px; border-left: 0; border-right: 0; }
  .cockpit-scene { object-position: 50% center; }
  .console-screen { width: calc(100% - 34px); top: 24px; padding: 12px; }
  .crew-grid { grid-template-columns: repeat(3,1fr); gap: 5px; padding: 9px 0; }
  .crew-photo { height: 72px; }
  .crew-button.astronaut-profile .crew-photo img { padding: 1px 4px 0; }
  .crew-identity strong { font-size: 8px; }
  .crew-modal { padding: 0; place-items: stretch; }
  .crew-modal-panel { min-height: 100svh; width: 100%; grid-template-columns: 1fr; overflow-y: auto; }
  .crew-modal-portrait { min-height: 43svh; }
  .crew-modal-copy { min-height: 57svh; padding: 54px 24px 38px; justify-content: flex-start; }
  .crew-modal-copy h3 { font-size: 50px; max-width: calc(100% - 36px); }
  .contact { min-height: 680px; padding: 100px 20px; }
  .contact h2 { font-size: 46px; }
  .site-footer { grid-template-columns: 1fr; gap: 34px; padding: 58px 20px 25px; }
  .footer-brand img { width: 170px; }
  .footer-nav { grid-template-columns: 1fr 1fr; gap: 15px 20px; padding-top: 4px; }
  .footer-contact { gap: 14px; }
  .footer-social { justify-content: flex-start; }
  .footer-social a { width: 46px; height: 46px; }
  .footer-bottom { grid-column: auto; align-items: flex-start; flex-direction: column-reverse; margin-top: 4px; }
  .footer-legal { flex-direction: column; gap: 13px; }
  .subpage-header { height: 76px; padding: 0 18px; }
  .back-home { font-size: 9px; }
  .about-page .welcome { padding-top: 60px; }
  .about-manifesto { padding: 90px 20px; }
  .about-manifesto h2 { font-size: 46px; }
  .history-hero { min-height: 760px; padding: 140px 20px 70px; }
  .history-hero h1 { width: 100%; font-size: 55px; }
  .history-intro { margin: 30px 0 38px; font-size: 16px; }
  .history-scroll { align-self: flex-start; }
  .founders-chapter { min-height: 0; padding: 82px 20px 105px; grid-template-columns: 1fr; gap: 80px; }
  .founders-copy h2,.purpose-copy h2 { font-size: 48px; }
  .founder-portraits { gap: 8px; }
  .founder-portraits article,.founder-portraits img { min-height: 390px; height: 390px; }
  .founder-portraits article:first-child { transform: translateY(-28px); }
  .founder-portraits article > div { padding: 55px 12px 14px; }
  .founder-portraits span { font-size: 14px; }
  .timeline-rail { left: 30px; }
  .history-timeline { padding: 20px 20px 50px; }
  .history-chapter { min-height: 660px; grid-template-columns: 1fr; gap: 32px; padding: 75px 0 75px 35px; }
  .chapter-index { gap: 14px; }
  .chapter-content h2 { font-size: 43px; }
  .chapter-number { display: none; }
  .purpose-chapter { min-height: 0; padding: 85px 20px; grid-template-columns: 1fr; gap: 70px; }
  .purpose-photo { height: 540px; transform: rotate(-1deg); box-shadow: 12px 15px 0 rgba(5,7,10,.12); }
  .purpose-socials span { width: 66px; }
  .history-finale { min-height: 760px; padding: 95px 20px; }
  .history-finale h2 { font-size: 48px; }
  .legal-hero { padding: 78px 20px 65px; }
  .legal-hero h1 { font-size: 52px; }
  .legal-hero > p:not(.eyebrow) { font-size: 16px; }
  .legal-content { width: calc(100% - 40px); padding: 70px 0 88px; }
  .legal-content section { padding-bottom: 38px; margin-bottom: 38px; }
  .legal-content h2 { font-size: 31px; }
  .method-hero { min-height: 690px; padding: 60px 20px 85px; }
  .method-hero-grid { margin-top: 90px; gap: 36px; }
  .method-hero h1 { font-size: 56px; }
  .method-hero-orbits { width: 520px; right: -330px; top: 40px; }
  .method-definition, .method-stages { padding: 82px 20px 90px; }
  .method-definition-grid, .method-stages-intro { margin: 58px 0 62px; grid-template-columns: 1fr; gap: 30px; }
  .method-definition-grid h2, .method-stages-intro h2 { font-size: 45px; }
  .method-solves { grid-template-columns: 1fr; }
  .method-solves article { min-height: 190px; }
  .method-solves h3 { margin-top: 42px; }
  .method-stage-card { grid-template-columns: 1fr; gap: 30px; padding: 42px 0; }
  .method-stage-card:target, .method-stage-card:hover { padding: 42px 18px; }
  .method-stage-card aside { grid-column: auto; border-left: 0; border-top: 1px solid var(--line); padding: 24px 0 0; }
  .method-stage-heading h3 { margin-top: 14px; font-size: 39px; }
  .method-loop { padding: 90px 20px; }
  .method-loop h2 { font-size: 49px; }
  .lead-modal { padding: 0; place-items: stretch; }
  .lead-modal-panel { width: 100%; max-height: 100svh; min-height: 100svh; }
  .lead-modal-intro { padding: 66px 22px 38px; }
  .lead-modal-intro h2 { font-size: 46px; }
  .lead-form { padding: 38px 22px 45px; grid-template-columns: 1fr; }
  .field-full { grid-column: auto; }
  .lead-form-submit { align-items: stretch; flex-direction: column; }
  .lead-form-submit button { justify-content: space-between; }
  .ian-hero { min-height: 860px; }
  .ian-hero-backdrop { background-position: 61% center; opacity: .68; }
  .ian-hero-grid { width: calc(100% - 40px); padding: 112px 0 50px; grid-template-columns: 1fr; align-content: start; gap: 0; }
  .ian-hero-copy { z-index: 5; }
  .ian-hero h1 { font-size: 51px; line-height: .91; }
  .ian-hero-copy > p:not(.lab-eyebrow) { margin: 22px 0 24px; font-size: 13px; }
  .ian-hero-actions { gap: 8px; }
  .ian-primary-button,.ian-secondary-button { min-height: 48px; width: 100%; justify-content: space-between; }
  .ian-hero-signals { display: grid; grid-template-columns: 1fr 1fr; margin-top: 20px; }
  .ian-hero .lian-visual { min-height: 320px; margin-top: -8px; }
  .ian-hero .lian-float { width: 205px; }
  .ian-hero .lian-orbit { top: 71%; }
  .ian-hero .lian-status { bottom: -4px; }
  .ian-hero .lian-holograms { display: none; }
  .lab-scroll-signal { display: none; }
  .ian-section { padding: 84px 20px; }
  .lab-section-heading { margin-bottom: 42px; }
  .lab-section-heading.split { grid-template-columns: 1fr; gap: 22px; }
  .lab-section-heading h2,.alliance-heading h2,.metrics-copy h2,.faq-intro h2,.diagnosis-hero h2 { font-size: 45px; }
  .capability-grid { grid-template-columns: 1fr; }
  .capability-grid article { min-height: 235px; padding: 22px; }
  .capability-grid h3 { margin-top: 52px; }
  .training-orbit { grid-template-columns: 1fr; gap: 10px; }
  .training-orbit::before { left: 19px; right: auto; top: 30px; bottom: 30px; width: 1px; height: auto; }
  .training-orbit article { min-height: 220px; }
  .training-orbit h3 { margin-top: 45px; }
  .lab-note { align-items: flex-start; }
  .alliance-heading { margin-bottom: 42px; }
  .alliance-core { min-height: 400px; padding: 30px 22px; }
  .alliance-core > span { font-size: 54px; }
  .callbell-wordmark span { font-size: 44px; }
  .alliance-bridge { padding: 8px 0; }
  .alliance-copy { font-size: 13px; }
  .hybrid-chat-grid { grid-template-columns: 1fr; }
  .chat-messages { min-height: 490px; padding: 20px 15px; }
  .chat-messages p { max-width: 90%; }
  .lead-capsule { padding: 27px 20px; }
  .crm-console { min-height: 640px; grid-template-columns: 1fr; overflow: hidden; }
  .crm-sidebar { flex-direction: row; overflow-x: auto; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.1); }
  .crm-sidebar > span { display: none; }
  .crm-sidebar i { white-space: nowrap; }
  .crm-inbox { display: none; }
  .crm-thread { min-height: 560px; }
  .crm-thread > p { margin-top: 150px; }
  .metrics-grid { grid-template-columns: 1fr 1fr; }
  .metrics-grid article { min-height: 185px; padding: 17px; }
  .metrics-grid strong { font-size: 32px; }
  .industry-selector { grid-template-columns: 1fr; }
  .industry-selector > div { display: flex; overflow-x: auto; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.12); scrollbar-width: none; }
  .industry-selector button { flex: 0 0 auto; min-height: 48px; padding: 0 14px; font-size: 10px; }
  .industry-selector button.is-active,.industry-selector button:hover { padding-left: 14px; }
  .industry-selector article { min-height: 450px; padding: 34px 20px; }
  .industry-selector h3 { margin-bottom: 40px; font-size: 52px; }
  .industry-selector ul { grid-template-columns: 1fr; }
  .faq-console button { min-height: 76px; grid-template-columns: 30px 1fr 18px; gap: 9px; }
  .faq-console button strong { font-size: 14px; }
  .faq-console article.is-open > div > p { padding: 0 8px 26px 39px; font-size: 13px; }
  .diagnosis-hero { min-height: 730px; grid-template-columns: 1fr; }
  .diagnosis-hero .lian-visual { min-height: 330px; }
  .diagnosis-form { margin-left: -20px; margin-right: -20px; padding: 44px 20px; border-left: 0; border-right: 0; }
  .form-grid { grid-template-columns: 1fr; }
  .diagnosis-form label.wide,.form-grid .wide { grid-column: auto; }
  .diagnosis-form fieldset > div { display: grid; grid-template-columns: 1fr 1fr; }
  .diagnosis-form fieldset span { height: 100%; display: flex; align-items: center; }
  .ads-diagnosis-modal { padding: 0; place-items: stretch; }
  .ads-diagnosis-close { right: 14px; top: 14px; }
  .ads-diagnosis-shell { max-height: none; min-height: 100svh; grid-template-columns: 1fr; }
  .ads-diagnosis-shell > aside { position: relative; min-height: 360px; padding: 72px 22px 38px; }
  .ads-diagnosis-shell > aside h2 { font-size: 46px; max-width: 330px; }
  .ads-diagnosis-shell > aside > div { margin-top: 38px; }
  .ads-diagnosis-form { padding: 40px 22px 55px; }
  .ads-form-grid { grid-template-columns: 1fr; }
  .ads-form-grid .wide { grid-column: auto; }
  .ads-choice-grid,.ads-choice-grid.two { grid-template-columns: 1fr; }
  .ads-choice-grid span { min-height: 62px; }
  .ads-diagnosis-success { min-height: 60svh; padding: 48px 22px; }
}

@media (prefers-reduced-motion: reduce) {
  .history-reveal { opacity: 1; transform: none; transition: none; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Desarrollo Web — motor de scroll directo y escenas adaptativas */
.web-warp { height: 230vh; }
.web-tunnel { height: 310vh; }
.web-reactor-section { height: 390vh; }
.web-warp-sticky,.web-tunnel-sticky,.web-reactor-sticky { transform: translateZ(0); backface-visibility: hidden; }
.web-speed-lines { filter: none; contain: layout paint; }
.web-speed-lines i { filter: none; }
.web-arrival-planet { filter: drop-shadow(0 0 24px rgba(255,223,0,.22)); }
.web-screen-stream { transition: none; will-change: opacity; contain: layout paint; }
.web-screen-stream figure { box-shadow: 0 18px 48px rgba(0,0,0,.78); }
.web-terminal-copy { backdrop-filter: none; }
.web-terminal-copy h2>span { white-space: pre-line; }
.web-reactor { transition: none; will-change: transform; }
.web-page main { overflow: clip; }

/* INgenio — laboratorio en construcción */
.ingenio-page { overflow: clip; background: #020305; color: #f7f6f1; }
.ingenio-hero { position: relative; min-height: 112svh; display: flex; align-items: center; overflow: hidden; isolation: isolate; padding: 140px clamp(24px,7vw,108px) 100px; background: radial-gradient(circle at 76% 45%,rgba(255,223,0,.1),transparent 25%),linear-gradient(135deg,#070a0e,#010203 68%); }
.ingenio-grid { position: absolute; z-index: -3; inset: 0; opacity: .5; background-image: linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size: 68px 68px; mask-image: radial-gradient(circle at 70% 48%,#000,transparent 72%); }
.ingenio-orbit { position: absolute; z-index: -1; right: -6vw; top: 50%; width: min(53vw,760px); aspect-ratio: 1; border: 1px solid rgba(255,255,255,.14); border-radius: 50%; transform: translateY(-50%); box-shadow: 0 0 100px rgba(0,0,0,.8),inset 0 0 100px #000; animation: ingenio-float 7s ease-in-out infinite; }
.ingenio-orbit::before,.ingenio-orbit::after,.ingenio-orbit>i { content: ""; position: absolute; border-radius: 50%; border: 1px solid rgba(255,223,0,.16); }
.ingenio-orbit::before { inset: 12%; border-style: dashed; animation: ingenio-spin 28s linear infinite; }
.ingenio-orbit::after { inset: 28%; background: radial-gradient(circle,#343000,#080a0d 57%,#020304 74%); box-shadow: 0 0 55px rgba(255,223,0,.17),inset 0 0 45px #000; }
.ingenio-orbit>i:first-child { inset: 4%; border-left-color: var(--yellow); border-right-color: var(--yellow); animation: ingenio-spin 18s linear infinite reverse; }
.ingenio-orbit>i:nth-child(2) { inset: 21%; border-top-color: rgba(255,255,255,.42); animation: ingenio-spin 12s linear infinite; }
.ingenio-orbit>span { position: absolute; z-index: 3; left: 50%; top: 50%; color: var(--yellow); font-size: clamp(55px,7vw,100px); font-weight: 950; letter-spacing: -.12em; transform: translate(-54%,-50%); text-shadow: 0 0 35px rgba(255,223,0,.35); }
.ingenio-hero-copy { position: relative; z-index: 3; width: min(65vw,960px); }
.ingenio-hero-copy>p,.ingenio-incubator header>p,.ingenio-final>p { margin: 0 0 25px; color: var(--yellow); font: 800 8px var(--font-geist-mono),monospace; letter-spacing: .2em; }
.ingenio-status { width: max-content; display: flex; align-items: center; gap: 10px; margin-bottom: 35px; padding: 9px 12px; border: 1px solid rgba(255,223,0,.28); background: rgba(255,223,0,.06); color: #d5d8dc; font: 750 7px var(--font-geist-mono),monospace; letter-spacing: .14em; }
.ingenio-status i { width: 7px; height: 7px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 12px var(--yellow); animation: ingenio-pulse 1.7s ease-in-out infinite; }
.ingenio-hero-copy h1 { max-width: 1000px; margin: 0; font-size: clamp(66px,7.7vw,118px); line-height: .84; letter-spacing: -.078em; text-wrap: balance; }
.ingenio-hero-copy>span { max-width: 680px; display: block; margin-top: 30px; color: #a5abb3; font-size: clamp(17px,1.55vw,22px); line-height: 1.6; }
.ingenio-hero-copy>a,.ingenio-final>a { min-height: 60px; width: max-content; display: inline-flex; align-items: center; gap: 18px; margin-top: 38px; padding: 0 25px; background: var(--yellow); color: #05070a; text-transform: uppercase; font: 900 8px var(--font-geist-mono),monospace; letter-spacing: .13em; transition: transform .3s,background .3s; }
.ingenio-hero-copy>a:hover,.ingenio-final>a:hover { transform: translateY(-4px); background: #fff16d; }
.ingenio-console { position: absolute; z-index: 4; right: clamp(24px,5vw,78px); bottom: 42px; width: min(34vw,470px); padding: 18px; border: 1px solid rgba(255,255,255,.14); background: rgba(5,8,12,.74); backdrop-filter: blur(15px); box-shadow: 0 20px 60px #000; }
.ingenio-console>small { color: #737b84; font: 700 6px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.ingenio-console>div { display: grid; grid-template-columns: 90px 1fr 30px; align-items: center; gap: 12px; margin-top: 14px; color: #858d96; font: 700 6px var(--font-geist-mono),monospace; letter-spacing: .1em; }
.ingenio-console>div>i { height: 2px; background: rgba(255,255,255,.1); }
.ingenio-console>div b { display: block; height: 100%; background: var(--yellow); box-shadow: 0 0 9px rgba(255,223,0,.5); animation: ingenio-load 2s cubic-bezier(.2,.8,.2,1) both; }
.ingenio-console>div strong { color: #c3c8cd; font-size: 7px; }
.ingenio-console>p { margin: 18px 0 0; color: var(--yellow); font: 800 7px var(--font-geist-mono),monospace; letter-spacing: .15em; }
.ingenio-incubator { padding: 150px clamp(24px,7vw,108px) 170px; background: radial-gradient(circle at 50% 36%,rgba(255,223,0,.055),transparent 27%),#030507; }
.ingenio-incubator>header { display: grid; grid-template-columns: .38fr 1.15fr .55fr; gap: 4vw; align-items: end; margin-bottom: 90px; }
.ingenio-incubator header>p { align-self: start; }
.ingenio-incubator h2 { margin: 0; font-size: clamp(65px,7vw,108px); line-height: .86; letter-spacing: -.075em; }
.ingenio-incubator header>span { color: #969da6; font-size: 16px; line-height: 1.65; }
.ingenio-capsules { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; perspective: 1200px; }
.ingenio-capsules article { position: relative; min-height: 470px; overflow: hidden; display: flex; flex-direction: column; padding: 24px; border: 1px solid rgba(255,255,255,.13); background: linear-gradient(155deg,rgba(21,25,31,.88),rgba(5,7,10,.95)); box-shadow: 0 28px 60px rgba(0,0,0,.35); animation: ingenio-capsule 5.5s ease-in-out calc(var(--capsule)*-.7s) infinite; transition: border-color .3s,transform .3s; }
.ingenio-capsules article:hover { border-color: rgba(255,223,0,.5); transform: translateY(-7px); }
.ingenio-capsules article>div { display: flex; justify-content: space-between; align-items: center; color: var(--yellow); }
.ingenio-capsules article>div svg { font-size: 26px; }
.ingenio-capsules article>div small { color: #707881; font: 750 6px var(--font-geist-mono),monospace; letter-spacing: .13em; }
.ingenio-capsules article>span { width: max-content; margin-top: 110px; padding: 7px 9px; border: 1px solid rgba(255,223,0,.22); color: var(--yellow); font: 750 6px var(--font-geist-mono),monospace; letter-spacing: .12em; }
.ingenio-capsules h3 { margin: 23px 0 13px; font-size: clamp(31px,2.8vw,43px); line-height: .92; letter-spacing: -.055em; }
.ingenio-capsules p { margin: 0; color: #8c949d; font-size: 13px; line-height: 1.6; }
.ingenio-capsules article>i { position: absolute; left: 24px; right: 24px; bottom: 24px; height: 2px; background: rgba(255,255,255,.08); }
.ingenio-capsules article>i b { display: block; width: calc(18% + var(--capsule)*18%); height: 100%; background: var(--yellow); box-shadow: 0 0 10px rgba(255,223,0,.5); }
.ingenio-final { min-height: 92svh; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 130px clamp(24px,8vw,125px); background: radial-gradient(circle at 78% 50%,rgba(255,223,0,.12),transparent 22%),#010204; }
.ingenio-final h2 { max-width: 1000px; margin: 0; font-size: clamp(70px,8vw,125px); line-height: .85; letter-spacing: -.078em; }
.ingenio-final>span { max-width: 650px; margin-top: 28px; color: #9ca3ac; font-size: 18px; line-height: 1.65; }
@keyframes ingenio-spin { to { transform: rotate(360deg); } }
@keyframes ingenio-float { 50% { translate: 0 -10px; } }
@keyframes ingenio-pulse { 50% { opacity: .35; transform: scale(.65); } }
@keyframes ingenio-load { from { width: 0!important; } }
@keyframes ingenio-capsule { 50% { translate: 0 -6px; } }

@media (max-width:700px) {
  .web-warp { height: 205svh; }
  .web-tunnel { height: 270svh; }
  .web-reactor-section { height: 325svh; }
  .web-speed-lines i:nth-child(n+15) { display: none; }
  .web-screen-stream figure:nth-child(n+4) { display: none; }
  .web-tunnel-space>i:nth-of-type(n+7) { display: none; }
  .web-matrix b:nth-child(n+5) { display: none; }
  .ingenio-hero { min-height: 980px; align-items: flex-end; padding: 130px 20px 240px; }
  .ingenio-orbit { right: -45vw; top: 33%; width: 108vw; opacity: .62; }
  .ingenio-hero-copy { width: 100%; }
  .ingenio-hero-copy>p { max-width: 76%; font-size: 6px; line-height: 1.6; }
  .ingenio-status { font-size: 6px; }
  .ingenio-hero-copy h1 { font-size: clamp(56px,15.5vw,73px); line-height: .87; }
  .ingenio-hero-copy>span { font-size: 15px; }
  .ingenio-hero-copy>a,.ingenio-final>a { width: 100%; justify-content: center; }
  .ingenio-console { left: 20px; right: 20px; bottom: 32px; width: auto; }
  .ingenio-console>div { grid-template-columns: 76px 1fr 27px; }
  .ingenio-incubator { padding: 100px 20px 115px; }
  .ingenio-incubator>header { grid-template-columns: 1fr; gap: 20px; margin-bottom: 55px; }
  .ingenio-incubator h2 { font-size: 58px; }
  .ingenio-incubator header>span { font-size: 14px; }
  .ingenio-capsules { display: flex; overflow-x: auto; margin-right: -20px; padding: 0 20px 28px 0; scroll-snap-type: x mandatory; }
  .ingenio-capsules article { flex: 0 0 79vw; min-height: 430px; scroll-snap-align: start; animation: none; }
  .ingenio-final { min-height: 800px; padding: 100px 20px; }
  .ingenio-final h2 { font-size: 61px; }
  .ingenio-final>span { font-size: 15px; }
}

@media (prefers-reduced-motion:reduce) {
  .ingenio-orbit,.ingenio-orbit::before,.ingenio-orbit>i,.ingenio-status i,.ingenio-console>div b,.ingenio-capsules article { animation: none; }
}
