.hero-photo{background-image:linear-gradient(90deg,var(--paper) 0%,rgba(245,242,234,.05) 31%,transparent 52%),linear-gradient(0deg,rgba(16,25,50,.08),transparent 40%),url('./hero-directors-v2.webp');filter:saturate(1.03) contrast(1.03)}
.ev-photo{background-image:linear-gradient(0deg,rgba(15,25,52,.26),rgba(15,25,52,.02)),url('./hero-directors-v2.webp')!important;filter:saturate(1.03) contrast(1.04)}
.future-cinema{position:relative;min-height:100svh;overflow:hidden;isolation:isolate;background:#0c1534;color:#fff}
.future-photo{position:absolute;z-index:-3;inset:0;background:linear-gradient(90deg,rgba(11,20,49,.95) 0%,rgba(11,20,49,.71) 38%,rgba(11,20,49,.06) 70%),linear-gradient(0deg,rgba(11,20,49,.84),transparent 52%),url('./hero-directors-v2.webp') center/cover no-repeat;filter:saturate(1.04) contrast(1.04)}
.future-grid{position:absolute;z-index:-2;inset:0;background:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(90deg,#000,transparent 78%)}
.future-cinema:after{content:'';position:absolute;z-index:-1;width:45vw;height:45vw;right:-8vw;top:-10vw;border:1px solid color-mix(in srgb,var(--project) 68%,transparent);border-radius:50%;box-shadow:0 0 0 6vw color-mix(in srgb,var(--project) 5%,transparent),0 0 0 12vw color-mix(in srgb,var(--project) 3%,transparent);transition:.5s}
.future-copy{position:relative;z-index:3;width:min(720px,53vw);padding:clamp(145px,18vh,215px) 0 230px 7vw}.future-copy>span{font:500 .55rem var(--mono);letter-spacing:.13em;color:var(--project);transition:.35s}.future-copy h2{margin:25px 0 26px;font:700 clamp(3.7rem,7vw,8.1rem)/.83 var(--sans);letter-spacing:-.075em}.future-copy h2 em{font-style:normal;color:var(--project);transition:.35s}.future-copy>p{max-width:590px;color:#d4dcf3;line-height:1.7}.future-copy>a{display:inline-block;margin-top:27px;padding-bottom:8px;border-bottom:1px solid var(--project);font:600 .58rem var(--mono);letter-spacing:.05em}.future-copy>a b{color:var(--project)}
.future-rail{position:absolute;z-index:4;left:7vw;right:7vw;bottom:65px;display:grid;grid-template-columns:repeat(4,1fr)}.future-line{position:absolute;left:0;right:0;top:16px;height:1px;background:rgba(255,255,255,.25)}.future-pulse{position:absolute;left:0;top:13px;width:calc(var(--node-x) - 7%);height:7px;background:linear-gradient(90deg,transparent,var(--project));filter:drop-shadow(0 0 8px var(--project));transition:.45s}.future-rail button{position:relative;padding:42px 16px 16px;border:0;background:transparent;color:#fff;text-align:left;cursor:pointer}.future-rail button:before{content:'';position:absolute;top:9px;left:16px;width:14px;height:14px;border:2px solid rgba(255,255,255,.7);border-radius:50%;background:#0c1534;transition:.3s}.future-rail button.active:before,.future-rail button:hover:before{border-color:var(--project);background:var(--project);box-shadow:0 0 0 8px color-mix(in srgb,var(--project) 16%,transparent),0 0 20px var(--project)}.future-rail button b,.future-rail button span,.future-rail button small{display:block}.future-rail button b{font:500 .46rem var(--mono);color:#9ca8c8}.future-rail button span{margin:6px 0 4px;font:600 .95rem var(--sans)}.future-rail button small{font:500 .45rem var(--mono);color:#aeb8d3}.future-note{position:absolute;right:3vw;top:50%;writing-mode:vertical-rl;font:500 .46rem var(--mono);letter-spacing:.12em;color:#aab4d0}
@media(max-width:700px){.hero-photo{background-image:linear-gradient(0deg,var(--paper) 0%,rgba(245,242,234,.42) 64%,rgba(245,242,234,.06)),url('./hero-mobile-directors-v2.webp');background-position:center}.future-cinema{min-height:1020px}.future-photo{background-image:linear-gradient(0deg,rgba(11,20,49,.99) 0%,rgba(11,20,49,.72) 57%,rgba(11,20,49,.08)),url('./hero-mobile-directors-v2.webp');background-position:center top}.future-copy{width:auto;padding:470px 22px 340px}.future-copy h2{font-size:3.25rem}.future-copy>p{font-size:.88rem}.future-rail{left:22px;right:22px;bottom:72px;grid-template-columns:1fr 1fr}.future-line,.future-pulse{display:none}.future-rail button{padding:15px 12px 15px 36px;border-top:1px solid rgba(255,255,255,.18)}.future-rail button:before{top:20px;left:8px}.future-rail button small{font-size:.4rem}.future-note{display:none}.future-cinema:after{width:90vw;height:90vw;right:-44vw;top:6vh}}
@media(prefers-reduced-motion:reduce){.future-cinema:after,.future-copy>span,.future-copy h2 em,.future-pulse,.future-rail button:before{transition:none}}

/* Dedicated imagery for the roadmap, charger route and closed service boundary. */
.future-photo{background-image:linear-gradient(90deg,rgba(11,20,49,.96) 0%,rgba(11,20,49,.72) 38%,rgba(11,20,49,.08) 70%),linear-gradient(0deg,rgba(11,20,49,.83),transparent 52%),url('./scene-roadmap-v1.webp');background-position:center}
.ev-photo{background-image:linear-gradient(0deg,rgba(15,25,52,.3),rgba(15,25,52,.02)),url('./scene-ev-route-v1.webp')!important;background-position:center!important}
.route-story{position:relative;display:grid;grid-template-columns:.72fr 1.28fr;gap:5vw;padding:clamp(100px,11vw,165px) 6vw;background:linear-gradient(140deg,#fff,var(--paper));color:var(--ink);overflow:hidden}.route-story:before{content:'03';position:absolute;left:-.04em;bottom:-.28em;font:600 clamp(16rem,30vw,34rem)/1 var(--sans);letter-spacing:-.1em;color:rgba(46,84,255,.035)}.route-story-head{position:relative;z-index:2;align-self:end;padding-bottom:38px}.route-story-head>span{font:500 .51rem var(--mono);letter-spacing:.12em;color:var(--orange)}.route-story-head h2{margin:22px 0 23px;font:700 clamp(3.7rem,6.5vw,7.2rem)/.84 var(--sans);letter-spacing:-.075em}.route-story-head h2 em{font-style:normal;color:var(--cobalt)}.route-story-head p{max-width:500px;color:#49506a;line-height:1.7}.route-story-grid{position:relative;z-index:2}.route-frame{position:relative;height:min(58vw,720px);margin:0;overflow:hidden;box-shadow:0 35px 95px rgba(16,25,50,.2)}.route-frame img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transition:transform .85s cubic-bezier(.2,.8,.2,1)}.route-frame:hover img{transform:scale(1.025)}.route-frame figcaption{position:absolute;left:24px;right:24px;bottom:24px;padding:20px 22px;background:rgba(245,242,234,.82);border:1px solid rgba(255,255,255,.55);backdrop-filter:blur(18px);color:var(--ink)}.route-frame figcaption span,.route-frame figcaption b,.route-frame figcaption small{display:block}.route-frame figcaption span{font:500 .46rem var(--mono);letter-spacing:.11em;color:var(--orange)}.route-frame figcaption b{margin:7px 0;font-size:clamp(1.05rem,1.7vw,1.45rem)}.route-frame figcaption small{font:500 .42rem var(--mono);letter-spacing:.05em;color:#616a84}
@media(max-width:700px){.future-photo{background-image:linear-gradient(0deg,rgba(11,20,49,.99) 0%,rgba(11,20,49,.72) 57%,rgba(11,20,49,.08)),url('./scene-roadmap-v1.webp');background-position:center}.ev-photo{background-image:linear-gradient(0deg,rgba(15,25,52,.32),rgba(15,25,52,.03)),url('./scene-ev-route-v1.webp')!important;background-position:58% center!important}.route-story{display:block;padding:90px 20px}.route-story-head{padding-bottom:30px}.route-story-head h2{font-size:3.3rem}.route-story-head p{font-size:.88rem}.route-frame{height:610px}.route-frame img{object-position:53% center}.route-frame figcaption{left:14px;right:14px;bottom:14px;padding:17px}}

/* A three-scene project film makes the electrification sequence tangible immediately. */
.project-film{position:relative;padding:clamp(96px,10vw,156px) 6vw clamp(110px,12vw,182px);overflow:hidden;background:#101832;color:#fff}.project-film:before{content:'SEQUENCE';position:absolute;left:-.03em;bottom:-.18em;font:700 clamp(9rem,20vw,23rem)/1 var(--sans);letter-spacing:-.09em;color:rgba(255,255,255,.025)}.project-film-head{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:7vw;align-items:end;margin-bottom:56px}.project-film-head>span{grid-column:1/-1;font:500 .52rem var(--mono);letter-spacing:.13em;color:var(--orange)}.project-film-head h2{margin:0;font:700 clamp(3.4rem,5.9vw,6.8rem)/.84 var(--sans);letter-spacing:-.075em}.project-film-head p{max-width:520px;margin:0 0 7px;color:#c8d0e5;line-height:1.72}.project-film-strip{position:relative;z-index:2;display:grid;grid-template-columns:1.18fr .92fr .78fr;gap:12px;align-items:start}.film-frame{position:relative;height:min(38vw,540px);margin:0;overflow:hidden;background:#071029;border:1px solid rgba(255,255,255,.16)}.film-frame.strategy{margin-top:54px}.film-frame.horizon{height:min(31vw,450px);margin-top:108px}.film-frame img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .85s cubic-bezier(.2,.8,.2,1),filter .5s;filter:saturate(.89) contrast(1.06)}.film-frame:hover img{transform:scale(1.027);filter:saturate(1.02) contrast(1.04)}.film-frame.parking img{object-position:center}.film-frame.strategy img{object-position:52% center}.film-frame.horizon img{object-position:center}.film-frame figcaption{position:absolute;left:14px;right:14px;bottom:14px;padding:18px 20px;background:rgba(9,16,40,.8);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(18px)}.film-frame figcaption b,.film-frame figcaption span,.film-frame figcaption small{display:block}.film-frame figcaption b{font:500 .44rem var(--mono);letter-spacing:.12em;color:var(--orange)}.film-frame figcaption span{margin:8px 0 7px;font:700 clamp(1rem,1.5vw,1.4rem) var(--sans)}.film-frame figcaption small{font:500 .41rem/1.55 var(--mono);letter-spacing:.04em;color:#bec8df}.project-film-rule{position:absolute;z-index:1;left:6vw;right:6vw;bottom:62px;display:grid;grid-template-columns:repeat(4,1fr);height:1px;background:rgba(255,255,255,.18)}.project-film-rule i{position:relative}.project-film-rule i:before{content:'';position:absolute;left:0;top:-4px;width:9px;height:9px;border-radius:50%;background:var(--orange);box-shadow:0 0 18px rgba(255,106,61,.65)}
@media(max-width:700px){.project-film{padding:86px 20px 100px}.project-film:before,.project-film-rule{display:none}.project-film-head{display:block;margin-bottom:34px}.project-film-head>span{display:block;margin-bottom:19px}.project-film-head h2{font-size:3.05rem}.project-film-head p{margin-top:22px;font-size:.88rem}.project-film-strip{display:flex;gap:11px;overflow-x:auto;padding-bottom:18px;scroll-snap-type:x mandatory;scrollbar-width:none}.project-film-strip::-webkit-scrollbar{display:none}.film-frame,.film-frame.strategy,.film-frame.horizon{flex:0 0 82vw;height:510px;margin:0;scroll-snap-align:center}.film-frame.strategy,.film-frame.horizon{flex-basis:75vw}.film-frame figcaption{left:9px;right:9px;bottom:9px;padding:15px}}
