/* The homepage uses the approved reference sheet's visual system. */
:root{--home-scroll:0;--arrival:0}
main{display:block;background:transparent}
.story{position:relative;z-index:3;font-family:Jost,Arial,sans-serif;color:#1c1b29}
.journey-opening{position:relative;isolation:isolate}
.journey-opening>.hero{position:sticky;top:0;height:100svh;opacity:calc(1 - var(--arrival)*.94);transform:translate3d(0,calc(var(--arrival)*-30px),0);transform-origin:center top}
.journey-arrival{padding-top:120px;background:linear-gradient(180deg,rgba(245,243,238,0),rgba(245,243,238,.94) 290px,rgba(245,243,238,.30) 85%,transparent)}
.story .demand{padding-top:0;border:0}
.story .section-heading{margin-bottom:52px}
.story .eyebrow{display:block;color:#076b68;font-weight:650;letter-spacing:.14em}
.story .inverse .eyebrow{color:#0fdbd5}
.story .section-heading h2{max-width:900px}
.story .split-heading{grid-template-columns:1.14fr .86fr;gap:70px}
.story .foundation{border-top:0}
.story .foundation-grid{gap:22px}
.story .editorial-card.card-large{background:linear-gradient(145deg,rgba(255,255,255,.64),rgba(205,239,230,.21))}
.story .editorial-card h3{margin-top:24px}
.story .editorial-card.card-large h3{max-width:440px;font-size:clamp(2rem,3vw,3rem)}
.story .editorial-card p{margin-block:24px}
.story .constellation .spotlight-card{transition:transform .75s cubic-bezier(.16,1,.3,1),box-shadow .75s}
.story .spotlight-card:hover{transform:translateY(-5px)}
.story .service-index{padding-top:40px}
.story .industry-orbit a{font-family:Jost,sans-serif;font-weight:450;font-size:clamp(1.4rem,2.5vw,2rem)}
.story .closing .button-light{color:#1c1b29}
.story .closing h2{font-size:clamp(2.2rem,4.1vw,4.2rem)}
.story .closing .eyebrow{color:#c5f5ec}
.story .faq-section{padding-block:100px 120px}
.story .faq-list{width:100%;max-width:900px;margin-inline:auto}
.story .faq-list details{padding:0 22px;border-bottom:1px solid rgba(28,27,41,.14)}
.story .faq-list summary{padding:25px 36px 25px 0;font-size:1.22rem;font-weight:500;cursor:pointer;list-style:none;position:relative}
.story .faq-list summary::-webkit-details-marker{display:none}
.story .faq-list summary:after{content:'+';position:absolute;right:0;color:#0d8a87}
.story .faq-list details[open] summary:after{content:'−'}
.story .faq-list p{margin:0 0 26px;max-width:720px;line-height:1.75;color:#5d5b64}
.story .engine-track{min-height:170svh;position:relative}
.story .engine-player{position:sticky;top:28px;display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:28px;padding:14px;border:1px solid rgba(255,255,255,.82);border-radius:28px;background:rgba(255,255,255,.42);box-shadow:inset 0 1px 0 white,0 26px 70px rgba(28,27,41,.08);backdrop-filter:blur(18px) saturate(118%)}
.story .engine-media{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:22px;background:#0b0d13;box-shadow:0 0 0 1px rgba(15,219,213,.16);align-self:center}
.story .engine-media:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(4,8,13,.8));pointer-events:none}
.story .engine-media img,.story .engine-media video{display:block;width:100%;height:100%;object-fit:cover;opacity:1}
.story .engine-media video{position:absolute;inset:0;z-index:1;opacity:0}
.story .engine-media.has-film video{opacity:1}
.story .engine-media:after{z-index:2}
.story .engine-chapter{position:absolute;z-index:3;left:24px;right:24px;bottom:48px;color:white;font-size:.86rem;line-height:1.5}
.story .engine-media>a{position:absolute;z-index:3;right:24px;bottom:20px;color:#0fdbd5;font-size:.72rem}
.story .engine-steps{display:flex;flex-direction:column;list-style:none;margin:0;padding:8px;border:1px solid rgba(255,255,255,.58);border-radius:22px;background:rgba(245,243,238,.44)}
.story .engine-steps li+li{border-top:1px solid rgba(28,27,41,.12)}
.story .engine-steps button{display:grid;grid-template-columns:42px 1fr;align-items:center;width:100%;min-height:59px;padding:0 16px;border:0;border-radius:14px;background:transparent;color:#1c1b29;text-align:left;cursor:pointer;transition:background .4s,transform .6s cubic-bezier(.16,1,.3,1)}
.story .engine-steps button:hover,.story .engine-steps button:focus-visible,.story .engine-steps button.is-active{background:rgba(255,255,255,.68);color:#076b68}
.story .engine-steps button:hover{transform:translateX(3px)}
.story .engine-steps b{font-size:.75rem;color:#a43b00;font-weight:600}
.story .engine-steps span{font-size:1.05rem;font-weight:500}
.story .button-label{position:relative;z-index:1}
.story [data-home-reveal]{opacity:1;transform:none}
.home-enhanced .story [data-home-reveal]:not(.is-visible){opacity:0;transform:translateY(22px)}
.home-enhanced .story [data-home-reveal]{transition:opacity 1.1s cubic-bezier(.16,1,.3,1),transform 1.35s cubic-bezier(.16,1,.3,1)}
.preview-effects-off .story [data-home-reveal]{opacity:1!important;transform:none!important;transition:none}
.mega-footer{z-index:3}
@media(max-width:980px){.story .split-heading{grid-template-columns:1fr;gap:22px}.story .engine-player{grid-template-columns:1fr;gap:14px}.story .engine-steps{display:grid;grid-template-columns:repeat(4,1fr)}.story .engine-steps button{min-height:46px;padding:0 8px;grid-template-columns:26px 1fr}.story .engine-steps span{font-size:.9rem}.story .engine-steps li+li{border:0}.hero .nav-links>a:not(.nav-cta){display:none}}
@media(max-width:640px){.journey-opening>.hero{position:relative;height:auto;min-height:100svh;transform:none;opacity:1}.journey-arrival{padding-top:70px}.story .engine-player{padding:8px;top:16px;border-radius:22px}.story .engine-steps{grid-template-columns:repeat(2,1fr)}.story .engine-media{border-radius:16px}.story .engine-chapter{left:14px;right:14px;bottom:44px;font-size:.7rem}.story .engine-media>a{left:14px;right:auto;bottom:15px;font-size:.65rem}.story .engine-track{min-height:150svh}.story .section-heading h2{font-size:clamp(1.8rem,8.5vw,2.8rem);line-height:1.15}.story .faq-section{padding-block:70px 84px}.story .faq-list{margin-left:0}.story .faq-list details{padding-inline:0}.story .closing h2{font-size:clamp(1.8rem,8.5vw,2.8rem)}.story .editorial-card.card-large{min-height:360px}.story .link-stack{flex-wrap:wrap;gap:16px}}
@media(prefers-reduced-motion:reduce){.journey-opening>.hero{position:relative;opacity:1;transform:none}.story .engine-track{min-height:0}.story .engine-player{position:relative;top:auto}.home-enhanced .story [data-home-reveal]{opacity:1!important;transform:none!important;transition:none}}
.story{--scroll:var(--home-scroll)}
::selection{background:rgba(13,138,135,.22);color:#1c1b29}
html{scrollbar-color:rgba(13,138,135,.45) #f5f3ee}
.preview-effects-off .journey-opening>.hero{opacity:1;transform:none}
/* Full-viewport Demand Engine chapter, continuous with the planet hero. */
.journey-arrival{padding-top:0;background:transparent}
.story .demand{padding:0;max-width:none;width:100%;margin:0}
.story .engine-track{min-height:300svh}
.story .engine-player{display:block;top:0;height:100svh;padding:0;gap:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;overflow:hidden}
.story .engine-media{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none;background:#f5f3ee}
.story .engine-media img,.story .engine-media video{object-fit:cover}
.story .engine-media:after{inset:0;background:linear-gradient(180deg,rgba(245,243,238,.32),transparent 40%,transparent 65%,rgba(18,32,37,.56));z-index:2}
.story .engine-intro{position:absolute;z-index:4;top:7vh;left:max(32px,calc((100vw - 1180px)/2));max-width:640px;margin:0;opacity:var(--engine-intro-opacity,1);transform:translateY(calc(var(--engine-progress,0)*-70px))}
.story .engine-intro:before{content:'';position:absolute;inset:-8vh -100px -70px -140px;z-index:-1;background:radial-gradient(ellipse at 35% 40%,rgba(245,243,238,.94),rgba(245,243,238,.76) 42%,transparent 72%);pointer-events:none}
.story .engine-intro h2{font-size:clamp(2.2rem,4.1vw,4.2rem)}
.story .engine-intro p{max-width:580px}.story .engine-intro:focus-within{opacity:1}
.story .engine-steps{position:absolute;z-index:5;left:50%;bottom:max(26px,env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;flex-direction:row;gap:4px;width:min(940px,calc(100% - 48px));padding:8px;border-radius:22px;border:1px solid rgba(255,255,255,.65);background:rgba(250,252,248,.63);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 14px 50px rgba(18,39,43,.1);backdrop-filter:blur(24px) saturate(130%)}
.story .engine-steps li{flex:1;min-width:0}.story .engine-steps li+li{border:0}
.story .engine-steps button{min-height:54px;padding:8px;display:flex;flex-direction:column;justify-content:center;gap:7px;text-align:center}
.story .engine-steps b{font-size:.65rem}.story .engine-steps span{font-size:.92rem}
.story .engine-chapter{left:max(32px,calc((100vw - 1180px)/2));bottom:130px;right:32px;font-size:.95rem;max-width:650px}
@media(max-width:640px){.story .engine-track{min-height:260svh}.story .engine-player{top:0;border-radius:0;padding:0}.story .engine-intro{left:24px;right:24px;top:8vh;max-width:none}.story .engine-intro h2{font-size:clamp(1.8rem,8.5vw,2.8rem)}.story .engine-intro p{font-size:.94rem;line-height:1.6}.story .engine-steps{width:calc(100% - 28px);gap:2px;padding:5px;bottom:20px;border-radius:18px}.story .engine-steps button{min-height:49px;padding:3px;gap:6px}.story .engine-steps span{font-size:.62rem}.story .engine-steps b{font-size:.6rem}.story .engine-chapter{left:24px;right:24px;bottom:103px;font-size:.8rem}.story .engine-media img,.story .engine-media video{object-position:51% center}.story .engine-intro:before{inset:-10vh -80px -70px}}
@media(prefers-reduced-motion:reduce){.story .engine-track{min-height:100svh}.story .engine-player{position:relative;height:100svh}.story .engine-intro{transform:none}}
/* Polished smoked glass in the deep-space chapter. */
.story .deep-space{isolation:isolate;background:#10262d}
.story .deep-space:before{content:'';position:absolute;inset:-18%;z-index:0;background:linear-gradient(105deg,rgba(7,19,30,.79),rgba(7,38,43,.64)),url('../preview/assets/planet-atmosphere.webp') center/cover no-repeat;transform:translateY(var(--scene-drift,0%));pointer-events:none}
.story .deep-space>.shell{position:relative;z-index:1}
.story .deep-space .stars{z-index:0;opacity:.07}
.story .spotlight-card{border:1px solid rgba(215,255,247,.26);background:linear-gradient(140deg,rgba(206,249,242,.15),rgba(43,96,101,.10) 35%,rgba(6,22,32,.28) 80%);box-shadow:inset 0 1px 0 rgba(240,255,250,.38),inset 0 -1px 0 rgba(4,20,28,.45),0 22px 60px rgba(1,13,24,.16);backdrop-filter:blur(24px) saturate(145%);color:#f6fbf7}
.story .spotlight-card:before{opacity:.58;background:linear-gradient(122deg,transparent 8%,rgba(239,255,253,.11) 27%,transparent 42%),radial-gradient(370px circle at var(--mx) var(--my),rgba(156,247,231,.15),transparent 72%)}
.story .spotlight-card:hover:before,.story .spotlight-card:focus-visible:before{opacity:1}
.story .spotlight-card p{color:#c4d6d4}
.story .inverse>p,.story .platform-ribbon p{color:#c4d6d4}
.story .service-index a{color:#d4e3df}
.site-nav .nav-cta{font-size:12px}.review-control{font-size:11px}.review-control .control-label{font-size:11px}.pipeline-head small{font-size:10px}.pipeline-job .job-status{font-size:9px}
.story .proof-grid b,.hero .eyebrow-static,.hero .concept-tag{color:#076b68}
.story .process{padding-block:100px 120px}
.story .process-steps{list-style:none;padding:0;margin:0;border-top:1px solid rgba(28,27,41,.13)}
.story .process-steps li{display:grid;grid-template-columns:58px minmax(220px,.8fr) minmax(320px,1.2fr);gap:32px;padding:36px 0;border-bottom:1px solid rgba(28,27,41,.13)}
.story .process-steps span{font-size:.78rem;color:#a43b00;line-height:1.8}
.story .process-steps h3{font:500 clamp(1.45rem,2.3vw,2rem)/1.18 Jost,sans-serif;letter-spacing:-.02em}
.story .process-steps p{margin:0;color:#56545e;font-size:1.02rem;line-height:1.75;max-width:65ch}
@media(max-width:760px){.story .process{padding-block:80px}.story .process-steps li{grid-template-columns:32px 1fr;gap:16px;padding:28px 0}.story .process-steps p{grid-column:2}}
/* Clear crystal surfaces: refracted color, bevel highlights and pointer light. */
.story .editorial-card,.story .editorial-card.card-large,.story .proof-grid>a{--glass-x:24%;--glass-y:0%;position:relative;isolation:isolate;overflow:hidden;border:1px solid rgba(255,255,255,.90);background:linear-gradient(140deg,rgba(255,255,255,.48),rgba(234,255,248,.10) 28%,rgba(190,235,227,.18) 62%,rgba(255,255,255,.24));backdrop-filter:blur(16px) saturate(170%) contrast(108%);-webkit-backdrop-filter:blur(16px) saturate(170%) contrast(108%);box-shadow:inset 0 2px 2px rgba(255,255,255,.98),inset 1px 0 2px rgba(255,255,255,.7),inset 0 -2px 3px rgba(198,239,228,.6),0 26px 65px rgba(24,69,71,.11)}
.story .editorial-card:before,.story .proof-grid>a:before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(500px circle at var(--glass-x) var(--glass-y),rgba(255,255,255,.64),transparent 65%),linear-gradient(118deg,transparent 8%,rgba(255,255,255,.38) 22%,rgba(255,255,255,.07) 36%,transparent 49%);opacity:.8;transition:opacity .3s}
.story .editorial-card:after,.story .proof-grid>a:after{content:'';position:absolute;inset:0;z-index:2;border:2px solid transparent;border-radius:inherit;pointer-events:none;background:linear-gradient(125deg,rgba(255,255,255,.97),rgba(255,255,255,.18) 27%,rgba(85,223,209,.38) 48%,rgba(255,255,255,.18) 63%,rgba(255,255,255,.85)) border-box;mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);mask-composite:exclude}
.story .editorial-card>*,.story .proof-grid>a>*{position:relative;z-index:1}
.story .editorial-card:hover:before,.story .proof-grid>a:hover:before{opacity:1}
.story .editorial-card:hover,.story .proof-grid>a:hover{box-shadow:inset 0 2px 2px white,inset 0 -2px 3px rgba(206,255,242,.7),0 30px 75px rgba(24,69,71,.14)}
.story .editorial-card p{color:#424a50}
.preview-effects-off .journey-opening>.hero{position:relative}
.preview-effects-off .story .engine-track,.story .engine-track.is-static{min-height:100svh}
.preview-effects-off .story .engine-player,.story .engine-track.is-static .engine-player{position:relative}
@media(max-width:360px){.story .engine-steps{display:grid;grid-template-columns:repeat(4,1fr)}.story .engine-steps span{font-size:.69rem}.story .engine-steps button{min-height:45px}.story .engine-chapter{bottom:158px}}
/* One atmosphere continues through the section boundary. */
.story .deep-space{background:transparent;border-radius:0;box-shadow:none;overflow:visible;padding-block:170px}
.story .deep-space:before{display:none}
.story .deep-space .stars{display:none}
.story .foundation{padding-bottom:190px}
.story .industries{padding-top:180px}
@media(max-width:760px){.story .deep-space{padding-block:130px}.story .foundation{padding-bottom:150px}.story .industries{padding-top:135px}}
@media(prefers-reduced-motion:reduce){.story .deep-space{background:#10262d}}
