/* Shared WEB sculpture, with Visual AI-specific travel and scroll composition. */
.va-hero-title{position:relative}.journey-origin{position:absolute;left:58%;top:28px;width:180px;height:180px;pointer-events:none}.journey-dock{display:none}.story-steps,.story-nav{display:none}.va-journey{position:fixed;top:0;left:0;width:360px;height:360px;transform-origin:0 0;z-index:19;pointer-events:none;opacity:0;will-change:transform}.va-journey canvas{display:block;width:360px;height:360px;pointer-events:none}.va-journey .w2-sculpture-pause,.va-journey .w2-sculpture-hint{display:none}.motion-control{position:fixed;right:12px;bottom:16px;z-index:21;border:1px solid #bfc6b9;background:#f6f5f1ed;border-radius:22px;font-size:10px;padding:11px 15px;color:#374437;backdrop-filter:blur(10px)}.motion-control[hidden]{display:none}.motion-progress{position:fixed;right:0;top:0;width:3px;height:100vh;z-index:21;transform-origin:top;background:var(--blue);pointer-events:none}.motion-enabled .cast-grid figure{transition:box-shadow .28s;position:relative;z-index:0}.motion-enabled .cast-grid figure:hover{z-index:2;box-shadow:0 20px 35px #1a282222}.motion-enabled .va-hero-film>img{transform:scale(1.045) translate(var(--image-x,0px),var(--image-y,0px))}.motion-enabled .va-hero-film .play-circle{transform:translate(calc(-50% + var(--cursor-x,0px)),calc(-50% + var(--cursor-y,0px)));transition:transform .18s ease-out}.motion-enabled .reel-screen{transform:perspective(900px) rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg));transition:transform .25s}.motion-enabled [data-reveal]{opacity:.12;transform:translateY(25px);transition:opacity .7s,transform .7s}.motion-enabled [data-reveal].in-view{opacity:1;transform:translateY(0)}
@media(min-width:1001px){
.motion-enabled.has-sculpture .journey-dock{display:flex;justify-content:space-between;align-items:center;min-height:186px;margin-top:36px;border-top:1px solid #bbc4b657;padding:0 32px;position:relative;gap:30px}.journey-dock>div:first-child{position:relative;z-index:1}.journey-dock span{font-size:9px;color:var(--blue);letter-spacing:1.3px}.journey-dock p{margin-top:14px;font-size:22px;letter-spacing:-.5px}.journey-port{flex:0 0 170px;height:170px;position:relative}.journey-port:before,.journey-port:after{content:'';position:absolute;inset:16px;border:1px solid #2346e844;border-radius:50%;transform:rotateX(55deg) rotate(-20deg)}.journey-port:after{inset:0;border-style:dashed;transform:rotateY(58deg) rotate(25deg)}.journey-dock.is-docked .journey-port:before{border-color:var(--blue)}.finish .journey-dock span{color:#c9de93}.finish .journey-port:before,.finish .journey-port:after{border-color:#b7c79977}
.motion-enabled .story-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:48px;align-items:start;margin-top:40px}.motion-enabled .story-steps{display:block;list-style:none;margin:0;padding:0}.motion-enabled .story-steps li{min-height:56vh;display:flex;flex-direction:column;justify-content:center;opacity:.25;transition:opacity .3s;scroll-margin-top:120px}.motion-enabled .story-steps li.is-active{opacity:1}.story-steps li>span{font-size:10px;letter-spacing:1.5px;color:var(--blue)}.story-steps h3{font-size:clamp(25px,2.7vw,40px);line-height:1.3;margin:24px 0 18px}.story-steps p{color:var(--muted);font-size:14px}.motion-enabled .story-screen{position:sticky;top:calc(88px + (100vh - 88px - min(50vw,620px)) / 2);align-self:start;padding:28px 0}.motion-enabled .story-screen .sketch-grid{display:grid;grid-template-columns:1fr;gap:0;perspective:1200px}.motion-enabled .story-screen figure{grid-area:1/1;opacity:0;visibility:hidden;transform:translateY(35px) rotate(-2deg) scale(.95);transition:opacity .5s,transform .7s cubic-bezier(.2,.7,.2,1),visibility .5s}.motion-enabled .story-screen figure.is-active{opacity:1;visibility:visible;transform:translateY(0) rotate(0deg) scale(1);z-index:1}.motion-enabled .story-screen img{box-shadow:0 25px 45px #39301f13}.motion-enabled .story-screen figcaption{font-size:14px;min-height:38px}.motion-enabled .story-nav{display:flex;gap:10px;margin-top:30px}.story-nav button{border:1px solid #c9cabc;background:none;padding:12px 17px;font-size:11px;transition:background .2s,color .2s}.story-nav button[aria-pressed=true]{color:white;background:var(--blue);border-color:var(--blue)}.motion-enabled .sketches{padding-bottom:45px}.motion-enabled .sketches .journey-dock{margin-bottom:5px}
}
@media(max-width:1200px){.journey-origin{left:55%;width:120px;height:120px;top:50px}}
@media(max-width:1000px){.va-journey,.journey-origin,.motion-control,.motion-progress{display:none}.motion-enabled [data-reveal]{opacity:1;transform:none}.sketch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.sketch-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.va-journey,.journey-origin,.journey-dock,.motion-control,.motion-progress{display:none!important}[data-reveal]{opacity:1!important;transform:none!important}.cast-grid figure,.reel-screen,.va-hero-film>img{transform:none!important}}

/* The six sketches tell the website's discovery-to-inquiry story. */
.story-steps p{max-width:385px;line-height:1.9;text-wrap:pretty}.sketch-grid figcaption{align-items:flex-start}.sketch-grid figcaption>span{flex-shrink:0;line-height:1.7}.sketch-grid figcaption strong{font-size:15px;font-weight:600;line-height:1.7;display:block}.sketch-grid figcaption p{font-size:13px;line-height:1.85;color:var(--muted);margin-top:10px}.story-outro{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:30px}.story-outro .sketch-note{margin:0}.story-outro .arrow-link{white-space:nowrap;font-size:12px}
@media(min-width:1001px){.motion-enabled .story-screen figcaption p{display:none}.motion-enabled .story-screen figcaption strong{font-size:13px}.motion-enabled .story-screen figcaption{min-height:40px}.story-steps h3{font-size:clamp(25px,2.5vw,37px)}}
@media(max-width:760px){.sketch-grid figcaption{display:block}.sketch-grid figcaption>span{display:block;margin-bottom:8px}.sketch-grid figcaption strong{font-size:17px}.sketch-grid figcaption p{font-size:13px}.story-outro{display:block}.story-outro .arrow-link{margin-top:24px;white-space:normal}}
/* The core has a readable rail and takes an active role in each stage. */
.core-badge{position:fixed;width:120px;z-index:21;display:flex;flex-direction:column;align-items:center;gap:7px;color:#66759a;font-size:9px;letter-spacing:1px;pointer-events:none}.core-badge[hidden]{display:none}.core-count{font-variant-numeric:tabular-nums}.core-remaining{font-size:8px;letter-spacing:0;color:#818997}.core-pause{pointer-events:auto;width:37px;height:37px;border:1px solid #c7cfdf;border-radius:50%;background:#f7f8fce8;color:#3656cb;display:grid;place-items:center;font-size:14px;margin-top:5px}.core-badge.is-working:before{content:'CORE IN ACTION';font-size:7px;color:var(--blue);letter-spacing:.8px}.story-core-slot,.story-core-signature{display:none}
@media(min-width:1001px){
.motion-enabled.has-sculpture .journey-dock{min-height:310px;padding:15px 28px;overflow:hidden;background:radial-gradient(ellipse at 80% 50%,#2346e80b,transparent 65%)}.motion-enabled.has-sculpture #storyboard .journey-dock,.motion-enabled.has-sculpture main>.wrap .journey-dock{flex-direction:row-reverse;background:radial-gradient(ellipse at 20% 50%,#2346e80b,transparent 65%)}.journey-dock>div:first-child{max-width:55%}.journey-port{flex-basis:260px;height:260px;z-index:1}.journey-port:before{inset:14px;transform:rotateX(55deg) rotate(var(--core-turn,0deg));border-width:2px}.journey-port:after{inset:0;transform:rotateY(58deg) rotate(calc(25deg - var(--core-turn,0deg)))}.journey-dock:after{content:'';position:absolute;height:2px;left:8%;right:8%;top:50%;background:linear-gradient(90deg,transparent,#2346e855,transparent);transform:scaleX(var(--core-reach,0));transform-origin:center;pointer-events:none}.journey-dock.is-docked p{color:var(--blue);transition:color .3s}.finish .journey-dock.is-docked p{color:#c9de93}.journey-dock>div:first-child{padding-block:20px;padding-inline:26px;margin-inline:-26px;background:var(--paper)}.asset-section .journey-dock>div:first-child{background:#e9ece3}.finish .journey-dock>div:first-child{background:#202922}.cast-board,.after-frame{transition:box-shadow .6s}.motion-enabled .core-connected{box-shadow:0 0 0 2px #2346e848,0 15px 60px #2346e81c}.motion-enabled .story-screen{top:110px;padding-top:138px;padding-bottom:8px}.motion-enabled .story-screen .sketch-grid img{max-height:calc(100vh - 365px);object-fit:contain;background:#f3eddf}.motion-enabled.has-sculpture .story-core-slot{display:block;position:absolute;top:0;right:0;width:156px;height:132px}.motion-enabled.has-sculpture .story-core-signature{display:flex;position:absolute;top:48px;left:0;right:175px;align-items:center;gap:20px;border-bottom:1px solid #b9c7e0;padding-bottom:17px;opacity:.4;transition:opacity .3s}.story-core-signature>span{font-size:8px;letter-spacing:1.5px}.story-core-signature>b{font-size:12px;font-weight:400;color:var(--blue);letter-spacing:1px}.motion-enabled .core-creating .story-core-signature{opacity:1}.motion-enabled .core-creating .sketch-grid{box-shadow:0 -2px 0 #2346e850}.motion-enabled .va-hero h1{font-size:clamp(60px,6.2vw,96px)}.motion-enabled .va-hero-title{gap:28px}
}
@media(min-width:1001px) and (max-width:1200px){.motion-enabled .va-hero h1{font-size:62px}.journey-origin{left:52%;top:40px;width:95px;height:95px}.journey-dock p{font-size:19px}.motion-enabled .story-layout{gap:24px;grid-template-columns:.85fr 1.15fr}.story-core-signature{gap:10px}.motion-enabled .story-steps h3{font-size:27px}}
@media(max-width:1000px){.core-badge,.story-core-signature,.story-core-slot{display:none!important}}
@media(prefers-reduced-motion:reduce){.core-badge,.story-core-signature,.story-core-slot{display:none!important}}
.fill-story{--fill-one:1;--fill-two:1;--fill-progress:1;padding-top:50px;padding-bottom:50px}.fill-stage{background:#2346e8;color:white;padding:45px 48px;min-height:610px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.fill-top{display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:1.6px}.fill-stage h2{font-size:clamp(44px,6.7vw,100px);line-height:1.35;margin:60px 0 25px;letter-spacing:-.07em}.fill-line{display:block;position:relative;width:fit-content;white-space:nowrap}.fill-line>span:first-child{color:transparent;-webkit-text-stroke:1px #e7edff85}.fill-line>span:last-child{position:absolute;inset:0;color:#f5f7e9;clip-path:inset(0 calc((1 - var(--fill-one))*100%) 0 0)}.fill-line:nth-child(2)>span:last-child{color:#d4f0a2;clip-path:inset(0 calc((1 - var(--fill-two))*100%) 0 0)}.fill-bridge{display:flex;align-items:center;gap:20px;font-size:9px;letter-spacing:1.5px;margin-bottom:35px}.fill-bridge i{height:1px;flex:1;background:#f7ffe544;position:relative}.fill-bridge i:after{content:'';position:absolute;inset:0;background:#dcf8b1;transform:scaleX(var(--fill-progress));transform-origin:left}.fill-bridge b{font-size:38px;font-weight:400;transform:rotate(calc(var(--fill-progress)*45deg))}.fill-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:25px}.fill-bottom p{font-size:17px;line-height:1.8}.fill-bottom>span{font-size:8px;letter-spacing:1px}.motion-enabled .fill-story{min-height:170vh}.motion-enabled .fill-stage{position:sticky;top:110px;min-height:min(75vh,760px)}.core-count,.core-remaining{background:#f6f5f1e8;padding:2px 6px;border-radius:6px}
@media(max-width:1000px){.motion-enabled .fill-story{min-height:140vh}.motion-enabled .fill-stage{top:88px;min-height:650px}.fill-stage{padding:35px 28px}.fill-stage h2{font-size:7.7vw}.fill-bottom>span{display:none}}
@media(max-width:760px){.fill-story{padding-top:30px;padding-bottom:30px}.fill-stage{padding:26px 20px;min-height:500px}.motion-enabled .fill-stage{top:85px;min-height:520px}.fill-stage h2{font-size:clamp(27px,7.4vw,50px);margin:60px 0 30px;line-height:1.65}.fill-top{font-size:7px;letter-spacing:.7px}.fill-top>span:last-child{display:none}.fill-bottom p{font-size:13px}.fill-bridge{font-size:7px;gap:10px}.fill-bridge b{font-size:28px}}
@media(prefers-reduced-motion:reduce){.fill-story{min-height:0!important}.fill-stage{position:static!important}.fill-line>span:last-child{clip-path:none!important}}

.core-count{font-size:10px}.core-remaining{font-size:10px;letter-spacing:0}

/* Shared header/footer furniture: keep the page controls clear of the site's back-to-top button,
   and let the shared reading-progress line be the only one. */
.motion-progress{display:none!important}
.motion-control{bottom:78px}
@media(max-width:1000px){.motion-control{bottom:16px}}

/* The core rail only needs a reserved gutter while it would actually reach the content box. */
@media(min-width:1001px) and (max-width:1575px){.motion-enabled .wrap{padding-right:144px}}
/* Tall windows: centre the sticky storyboard and lettering stage instead of pinning them near the header. */
@media(min-width:1001px){.motion-enabled .story-screen{top:var(--va-story-top,110px)}.motion-enabled .fill-stage{top:var(--va-fill-top,110px)}}

/* The page reserves a right gutter for the 3D core, so the shared GNB follows the same content box
   instead of running wider than the body. Scoped to this page; the site default stays 1328px. */
@media(min-width:1001px){.vai2-page .site-header .container{width:min(100% - 128px,var(--max-width,1328px))}.vai2-page .global-footer{padding-inline:64px}}
@media(min-width:1001px) and (max-width:1575px){.motion-enabled .vai2-page .site-header .container{width:auto;margin-inline:64px 144px}}
