/* VANL media-kit refinement. Mobile panoramas preserve access to full artwork. */
.intro-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end}.intro-model .eyebrow{color:#344035}.intro-model h2{font-family:Arial,Helvetica,sans-serif;font-size:clamp(44px,6.5vw,96px);line-height:.94;letter-spacing:-.075em;margin:26px 0 0}.intro-model h2 span{display:inline-block;margin-top:.12em;padding:.06em .12em .12em;background:#141915;color:var(--acid);-webkit-text-stroke:0;box-decoration-break:clone;-webkit-box-decoration-break:clone}.intro-model .intro-explanation p{font-size:18px;line-height:1.55;margin:0;max-width:490px}.intro-explanation>a{display:inline-flex;gap:30px;align-items:center;border-bottom:1px solid #111411;padding:16px 0 8px;margin-top:14px;font:12px monospace;text-transform:uppercase}.intro-model a:focus-visible{outline-color:#111411}.intro-flow{display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;background:#141915;color:var(--paper);padding:35px 32px;gap:50px}.intro-step{position:relative;min-width:0}.intro-step-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.intro-step-top>span{font:10px monospace;letter-spacing:.12em;color:var(--acid)}.intro-step svg{width:80px;height:80px;fill:none;stroke:var(--paper);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.intro-step h3{font-size:24px;letter-spacing:-.045em;margin:22px 0 12px}.intro-model .intro-step p{font-size:15px;line-height:1.5;color:#b3beb0;margin:0;max-width:290px}.intro-flow-arrow{position:absolute;right:-33px;top:100px;font-size:27px;color:var(--acid)}.intro-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:28px}.intro-model .intro-bottom p{margin:0;font-size:15px;line-height:1.6;max-width:700px}.intro-bottom>span{font:10px/1.7 monospace;letter-spacing:.1em;color:#53634f;text-align:right}
@media(max-width:900px){.intro-heading{grid-template-columns:1fr;gap:32px}.intro-model .intro-explanation p{max-width:700px}.intro-flow{gap:30px;padding:28px 22px}.intro-flow-arrow{right:-24px}.intro-step h3{font-size:21px}.intro-step-top{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.intro-model h2{font-size:clamp(40px,10vw,60px)}.intro-flow{grid-template-columns:1fr;gap:32px;margin-top:35px;padding:24px}.intro-step-top{flex-direction:row;align-items:center}.intro-step svg{width:70px;height:70px}.intro-step h3{margin-top:5px;font-size:25px}.intro-step:not(:last-child){border-bottom:1px solid var(--line);padding-bottom:30px}.intro-flow-arrow{right:0;top:auto;bottom:10px;transform:rotate(90deg);font-size:23px}.intro-bottom{align-items:flex-start;flex-direction:column;gap:16px}.intro-bottom>span{text-align:left}.intro-model .intro-explanation p{font-size:17px}}
.footer{flex-wrap:wrap}.legal-links{flex-basis:100%;display:flex;flex-wrap:wrap;gap:14px 26px;padding-top:18px;margin-top:14px;border-top:1px solid var(--line)}.legal-links a{color:var(--paper);padding:8px 0;text-decoration:underline;text-underline-offset:4px}.legal-links a:hover{color:var(--acid)}
a:focus-visible,button:focus-visible{outline:3px solid var(--acid);outline-offset:5px}
.skip-link{position:absolute;z-index:20;left:20px;top:-100px;background:var(--acid);color:var(--ink);padding:14px}.skip-link:focus{top:12px}
.hero{min-height:0;display:block;background:radial-gradient(ellipse at 70% 15%,rgba(114,125,102,.18),transparent 44%),#101211}
.hero-inner{padding:145px 0 44px}.hero:after{display:none}.hero h1{max-width:1200px}.hero-scene{margin-top:44px!important}.hero-bottom{margin-top:30px}.network{min-height:0}.hero:before{pointer-events:none}.hero-scene figcaption{max-width:none}.hero .scene figcaption span{max-width:800px;font-size:14px;line-height:1.5}
.scene{margin:60px 0 0}.scene picture{display:block;background:var(--ink);border:1px solid var(--line)}.scene img{display:block;width:100%;height:auto;object-fit:contain;max-width:100%}.scene figcaption{padding:20px 0 0;font:12px/1.65 monospace;letter-spacing:.06em;color:var(--acid)}.scene figcaption span{display:block;margin-top:6px;font:14px/1.5 Arial,Helvetica,sans-serif;letter-spacing:0;color:var(--mute);max-width:800px}.mobile .scene figcaption{color:#111411}.mobile .scene figcaption span{color:#344035}
.agent-layout{display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:center}.agent-scene{grid-column:1/-1;margin-top:0}.pov .box{max-width:600px}.agent-notes{border-top:1px solid var(--line);padding-top:25px}.agent-notes p{font-size:clamp(25px,3vw,42px);line-height:1.4;letter-spacing:-.04em}.agent-notes small{font-size:14px;line-height:1.5;color:var(--mute);display:block;max-width:380px}
.wave{margin-top:60px;border-top:1px solid var(--line);padding-top:22px}.wave-tools{display:flex;gap:18px;justify-content:space-between;align-items:center;font:11px/1.6 monospace;letter-spacing:.07em;color:var(--acid)}.wave-tools>div{display:flex;gap:10px}.wave-tools button{font:11px monospace;padding:11px 18px;min-height:44px;border:1px solid var(--line);color:var(--paper);background:transparent;cursor:pointer}.wave-tools button:hover{border-color:var(--acid)}.wave-tools button:disabled{cursor:default;opacity:.55}
.wave-steps{list-style:none;counter-reset:phase;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:25px 0}.wave-steps li{counter-increment:phase;border-top:1px solid var(--line);padding-top:12px;color:var(--mute);font:12px/1.55 monospace;transition:color .3s,border-color .3s}.wave-steps li:before{content:'0' counter(phase) ' / ';display:block;margin-bottom:5px}.wave-steps li.active{color:var(--acid);border-color:var(--acid)}
.os-scene{margin-top:0}.map-stage{position:relative}.route-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.wave-metrics{display:grid;grid-template-columns:repeat(6,1fr);margin:30px 0 0;border-block:1px solid var(--line)}.wave-metrics>div{padding:19px 14px;border-right:1px solid var(--line)}.wave-metrics>div:first-child{padding-left:0}.wave-metrics>div:last-child{border-right:0}.wave-metrics dt{font:10px/1.5 monospace;text-transform:uppercase;letter-spacing:.07em}.wave-metrics dd{margin:10px 0 0;font:12px/1.6 monospace;color:var(--mute)}.wave-metrics strong{font-size:29px;color:var(--paper);display:block}.systems .wave-note{font-size:12px;margin:15px 0 25px}.console-title{font:11px/1.6 monospace;color:var(--acid);letter-spacing:.08em}
.vehicle-studies{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:60px}.vehicle-study{margin:0}.vehicle-study h3{font-size:25px;letter-spacing:-.04em;margin:0 0 18px}.cells .vehicle-context{font:12px/1.65 monospace;max-width:850px;margin-top:30px}.reveal-in{animation:entrance .7s ease-out both}@keyframes entrance{from{opacity:.65;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(max-width:700px){.vehicle-studies{grid-template-columns:1fr;gap:38px;margin-top:35px}.vehicle-studies .scene{margin:0}}
@media(max-width:1000px){.wave-metrics{grid-template-columns:repeat(3,1fr)}.wave-metrics>div{border-bottom:1px solid var(--line)}.wave-metrics>div:nth-child(3n){border-right:0}.wave-metrics>div:nth-child(4){padding-left:0}.agent-layout{gap:40px}.network-head{gap:30px}}
@media(max-width:700px){nav{height:auto;min-height:110px;padding:16px 0}nav .wrap{flex-wrap:wrap;gap:14px}.navlinks{display:flex;order:3;width:100%;justify-content:space-between;gap:10px;font-size:10px}.navcta{font-size:9px;padding:9px}.hero{min-height:0}.hero-inner{padding:155px 0 32px}.hero h1{font-size:clamp(35px,8.5vw,59px);line-height:.95;letter-spacing:-.06em}.hero p{font-size:16px}.hero-bottom{margin-top:24px;gap:20px}.coord{font-size:9px}.scene{margin-top:32px}.scene figcaption{font-size:11px}.scene figcaption span{font-size:14px}.hero-scene{margin-top:30px!important}.agent-layout{grid-template-columns:1fr;gap:35px}.pov{padding:75px 0}.wave-tools{align-items:flex-start;flex-direction:column}.wave-steps{grid-template-columns:1fr 1fr;gap:15px}.wave-metrics{grid-template-columns:1fr 1fr}.wave-metrics>div:nth-child(3n){border-right:1px solid var(--line)}.wave-metrics>div:nth-child(2n){border-right:0}.wave-metrics>div{padding:16px!important}.wave-metrics strong{font-size:28px}.systems,.cells,.mobile,.partners,.intro{padding:75px 0}.scale{padding-top:90px}.network{padding:65px 0}.network-head p{max-width:100%;font-size:16px}.evo b{font-size:18px}.footer{flex-wrap:wrap}.partner{grid-template-columns:32px 1fr 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.cell:hover{transform:none}.reveal-in{opacity:1;transform:none}}
.panorama-hint{display:none}.panorama-viewport:focus-visible{outline:2px solid var(--acid);outline-offset:4px}
@media(max-width:700px){
 .panorama-viewport{overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-color:var(--acid) #202620;scrollbar-width:thin}
 .panorama-viewport picture{width:max-content;max-width:none}
 .panorama-viewport picture img{width:auto;height:340px;max-width:none;object-fit:contain}
 .hero-scene .panorama-viewport picture img{height:360px}
 .os-scene .map-stage{width:800px;max-width:none}
 .os-scene .panorama-viewport picture{width:100%}
 .os-scene .panorama-viewport picture img{width:100%;height:auto}
 .panorama-hint{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:14px 0;font:10px/1.6 monospace;letter-spacing:.04em;color:var(--acid)}
 .panorama-hint a{text-decoration:underline;text-underline-offset:4px;min-height:44px;display:inline-flex;align-items:center}
}
/* Reference-directed mobile crops: keep the operating subject in view. */
@media(max-width:700px){
 .hero-scene .panorama-viewport{height:calc((100vw - 32px) / .95)}
 .network .panorama-viewport{height:calc((100vw - 32px) / 1.007)}
 .hero-scene .panorama-viewport picture,.network .panorama-viewport picture{height:100%;width:max-content;max-width:none}
 .hero-scene .panorama-viewport picture img,.network .panorama-viewport picture img{width:auto;height:100%;max-width:none;object-fit:contain;transform:none}
 .agent-scene picture,.mobile .scene picture{position:relative;overflow:hidden;width:100%;max-width:100%}
 .agent-scene picture{aspect-ratio:1.54}
 .agent-scene picture img{width:100%;height:100%;object-fit:cover;object-position:75% 50%;transform:scale(1.08)}
 .mobile .scene picture{aspect-ratio:1.78}
 .mobile .scene picture img{width:100%;height:100%;object-fit:cover;object-position:58% 50%}
}
