/* v2 — brighter, sculptural story world */
:root{--ink:#202535;--ink2:#30394f;--paper:#fafafa;--muted:#667087;--violet:#7370c7;--blue:#579dc9;--line:rgba(45,57,84,.18)}
html{background:#e7edf6}body{background:linear-gradient(145deg,#eef2f8 0%,#f8f7f4 43%,#e1eaf5 100%);color:var(--ink)}
.grain{opacity:.022;mix-blend-mode:multiply}
header{background:linear-gradient(rgba(247,249,252,.92),rgba(247,249,252,.3),transparent);backdrop-filter:blur(8px)}
.brand{color:#262d3d;font-weight:700}.nav{color:#4e5b70}.nav a:hover,.nav a:focus{color:#161b28}.nav-cta{border-color:#59678055;background:#ffffff80;color:#27324b}
.hero{min-height:100svh;padding-bottom:6vh;background:#e8eff7}.hero:before{background:linear-gradient(90deg,rgba(248,250,252,.94) 0%,rgba(248,250,252,.66) 34%,rgba(248,250,252,.10) 72%),linear-gradient(0deg,rgba(236,242,249,.85) 0%,transparent 38%)}
.hero-bg{background-image:url('journey-desktop.webp');background-position:center;filter:saturate(.9) contrast(.96) brightness(1.04);animation:breathe-light 16s ease-in-out infinite alternate}
.eyebrow{color:#6265ab;font-weight:700}.hero h1,.display{color:#242c3d}.hero h1 em{color:#5b6aaf}.lead{color:#4e5b6e}.button{background:#2d3a59;color:#fff;border-color:#2d3a59;box-shadow:0 10px 25px #3e537528}.button:hover{box-shadow:0 16px 38px #526a9b45}.button.secondary{color:#2d3a59;border-color:#2d3a5955}.scroll-note{color:#657189}
.story{height:430vh;background:#e7eef7}.stage{background:#dfe9f4;perspective:1800px}.stage-image{width:400%;max-width:none;object-fit:cover;object-position:left center;filter:saturate(.9) contrast(.94) brightness(1.06);transform-origin:center center}
.stage-vignette{background:linear-gradient(90deg,rgba(237,243,250,.78) 0%,rgba(237,243,250,.12) 33%,rgba(237,243,250,.08) 72%,rgba(237,243,250,.63) 100%),linear-gradient(0deg,rgba(236,242,249,.38),transparent 55%)}
.scene-copy{left:clamp(1.25rem,6vw,7rem);padding:1.35rem 1.45rem 1.5rem;border:1px solid rgba(255,255,255,.7);border-radius:1.2rem;background:rgba(250,252,255,.73);box-shadow:0 15px 50px rgba(71,90,124,.13);backdrop-filter:blur(12px);max-width:min(520px,72vw)}
.scene-copy h2{color:#232b3d}.scene-copy p{color:#455269}.scene-no{color:#5e5ead;font-weight:750}.cn{color:#5d6091}.progress i{background:#50617c33}.progress i.on{background:#465477;box-shadow:0 0 14px #7d8ddeaa}
.bridge{background:radial-gradient(circle at 80% 35%,#c6d7eb 0%,transparent 38%),#f7f6f2}.bridge h2{color:#262e3e}.bridge h2 em{color:#6264ac}.bridge-copy{color:#596479}.bridge-copy strong{color:#253048}
.proof{border-color:#aebacd;margin-inline:clamp(1.25rem,4vw,4.5rem)}.proof article{border-color:#aebacd;background:rgba(255,255,255,.28)}.proof b{color:#3d4873}.proof p{color:#59657a}
.journey{background:#f7f6f2}.section-head h2{color:#253047}.section-head p{color:#5d687b}.steps{border-bottom:1px solid #b6c0d0}.step{border-color:#b6c0d0;background:#fcfcfb}.step:hover{background:linear-gradient(160deg,#dde8f7,#f8f7f4);box-shadow:0 15px 34px rgba(42,57,84,.1)}.step:before,.step .glyph{color:#6264ae}.step h3{color:#273149}.step p{color:#5c677b}
.categories{background:#dfeaf5;color:#202a3b}.categories .section-head p{color:#53657b}.category-list,.category{border-color:#8da0b555}.category:hover{color:#5359a3}.category span:first-child{color:#617490}
.faq{background:#f7f6f2}.faq h2{color:#253047}details{border-color:#b4c0d0}details p{color:#5b6678}summary{color:#273149}summary:after{color:#6064ad}
.contact{background:radial-gradient(circle at 15% 20%,#d7e5f7 0%,transparent 36%),linear-gradient(145deg,#fdfdfd,#e9eff7);border-color:#bdc8d9;box-shadow:0 20px 70px rgba(45,61,94,.11)}.contact h2{color:#273149}.contact p{color:#5b6678}.field label{color:#54627a}.field input,.field select,.field textarea{color:#263149;background:#fff;border-color:#aebad0}.field input:focus,.field select:focus,.field textarea:focus{border-color:#6874b9;box-shadow:0 0 0 3px #7b88c32b}.form-note{color:#657188}.form-status{color:#4e5aa0}
footer{color:#68758b;background:#e7edf6}footer img{filter:none;opacity:.9}
@keyframes breathe-light{to{transform:scale(1.08) translate3d(-.6%,.4%,0)}}
@media(max-width:800px){.hero{padding-bottom:4rem}.hero:before{background:linear-gradient(0deg,rgba(244,248,252,.94),rgba(244,248,252,.22) 72%,rgba(244,248,252,.25))}.hero-bg{background-position:7% center}.story{height:390vh}.stage-image{width:680%}.scene-copy{bottom:4rem;background:rgba(250,252,255,.82);max-width:90vw}.bridge,.faq,.contact{background-color:#f8f8f5}.proof article{background:transparent}.category{color:#263149}}
@media(max-width:520px){.hero h1{font-size:3.6rem}.stage-image{width:700%}.scene-copy{padding:1.1rem}.scene-copy h2{font-size:3rem}.contact{background:linear-gradient(145deg,#fff,#e9eff7)}}
@media(prefers-reduced-motion:reduce){.stage{background:#e7edf6}.stage-image{width:100%;height:100%;opacity:.18;filter:grayscale(.15) brightness(1.2)}.scene-copy{background:rgba(250,252,255,.9)}}

/* Cinematic direction: camera pacing, pale letterbox framing and controlled depth. */
.hero{isolation:isolate}.hero:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(45vw 65vh at 68% 42%,rgba(255,255,255,.11),transparent 65%),linear-gradient(118deg,transparent 45%,rgba(175,205,238,.17) 58%,transparent 73%);mix-blend-mode:screen}.hero-copy{transform:translateZ(0);animation:hero-arrive 1.35s cubic-bezier(.2,.75,.2,1) both}.hero h1{max-width:1100px;text-wrap:balance}.hero h1 em{margin-top:.08em}.hero .lead{max-width:590px}.hero .scroll-note{display:inline-flex;align-items:center;gap:.55rem}.hero .scroll-note:before{content:"";width:1.7rem;height:1px;background:currentColor;opacity:.65}
.story{height:520vh;background:#e7eef7}.stage{--cut-vw:0vw;--cut-opacity:.25;--orbit-opacity:.1;--orbit-turn:0deg;--orbit-scale:.92;--light-shift:0%;--light-x:32%;--light-y:36%;--conic-turn:0deg;isolation:isolate;background:radial-gradient(circle at 55% 42%,#f7fbff 0%,#dce9f5 62%,#ceddea 100%);overflow:hidden}.stage:before{content:"";position:absolute;inset:-18%;z-index:2;pointer-events:none;background:radial-gradient(42rem 32rem at var(--light-x) var(--light-y),rgba(255,255,255,.45),transparent 58%),conic-gradient(from var(--conic-turn) at 50% 50%,transparent 0deg,rgba(120,147,211,.10) 28deg,transparent 90deg,rgba(255,255,255,.2) 168deg,transparent 210deg);mix-blend-mode:screen;opacity:.9;transition:opacity .4s}.stage:after{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;background:linear-gradient(90deg,rgba(213,226,241,.38),transparent 15%,transparent 85%,rgba(213,226,241,.32));box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.stage-image{z-index:0;will-change:transform,filter;clip-path:inset(calc(7px + var(--cut-vw)) 0);transition:clip-path .4s cubic-bezier(.2,.75,.2,1),filter .45s ease}.stage-vignette{z-index:1;background:radial-gradient(circle at 50% 42%,transparent 13%,rgba(231,240,249,.08) 48%,rgba(214,227,242,.57) 100%),linear-gradient(90deg,rgba(237,244,252,.68) 0%,rgba(237,244,252,.08) 30%,rgba(237,244,252,.05) 70%,rgba(237,244,252,.65) 100%)}
.cinema-light{position:absolute;z-index:3;inset:-20%;pointer-events:none;background:linear-gradient(116deg,transparent 40%,rgba(255,255,255,.46) 49%,rgba(188,215,250,.18) 54%,transparent 65%);mix-blend-mode:screen;transform:translateX(var(--light-shift)) rotate(-8deg);opacity:var(--cut-opacity);transition:opacity .45s ease}.cinema-orbit{position:absolute;z-index:3;left:50%;top:50%;width:min(64vw,800px);aspect-ratio:1;pointer-events:none;transform:translate(-50%,-50%) rotate(var(--orbit-turn)) scale(var(--orbit-scale));opacity:var(--orbit-opacity);transition:opacity .35s ease}.cinema-orbit i{position:absolute;border:1px solid rgba(91,117,171,.48);border-radius:50%;inset:6%;transform:rotate(61deg) scaleY(.25)}.cinema-orbit i+ i{inset:27%;transform:rotate(-19deg) scaleY(2.85);border-color:rgba(255,255,255,.72)}
.cinema-bars{position:absolute;z-index:6;inset:0;pointer-events:none}.cinema-bars:before,.cinema-bars:after{content:"";position:absolute;left:0;right:0;height:calc(7px + var(--cut-vw));background:linear-gradient(90deg,#d5e1ef,#f4f8fc 38%,#e6eff8 72%,#ccddeb);box-shadow:0 1px 12px rgba(55,77,114,.12);transition:height .4s cubic-bezier(.2,.75,.2,1)}.cinema-bars:before{top:0}.cinema-bars:after{bottom:0}.camera-readout{position:absolute;z-index:8;right:clamp(1rem,4vw,4rem);bottom:clamp(1.2rem,4vw,3rem);display:grid;grid-template-columns:auto auto;align-items:baseline;gap:.4rem;color:#344362;text-shadow:0 1px 0 #fff;letter-spacing:.12em;font-size:.64rem;font-weight:760;opacity:.85}.camera-readout b{font-family:var(--serif);font-size:1.5rem;font-weight:400;letter-spacing:-.04em}.camera-readout i{grid-column:1/-1;width:5rem;height:1px;background:linear-gradient(90deg,#4a5b7d 25%,transparent 25%);background-size:8px 1px;opacity:.65}.progress{z-index:9}
.scene-copy{z-index:7;transform:translateY(calc(-50% + 18px)) scale(.975);filter:blur(3px);transition:opacity .72s cubic-bezier(.2,.75,.2,1),transform .9s cubic-bezier(.2,.75,.2,1),filter .6s ease,box-shadow .6s ease}.scene-copy.on{transform:translateY(-50%) scale(1);filter:blur(0);box-shadow:0 24px 70px rgba(51,72,111,.2)}.scene-copy:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.42),transparent 40%);opacity:.55}.scene-copy>*{position:relative;z-index:1}.stage[data-scene="1"] .scene-copy{left:clamp(8.5rem,17vw,18rem)}.stage[data-scene="2"] .scene-copy{left:clamp(1.25rem,6vw,7rem)}.stage[data-scene="3"] .scene-copy{left:clamp(1.25rem,6vw,7rem);background:rgba(246,251,255,.8)}.stage[data-scene="3"] .cinema-light{background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.64) 49%,rgba(131,190,234,.22) 58%,transparent 70%)}
@keyframes hero-arrive{from{opacity:0;transform:translate3d(0,2rem,0);filter:blur(8px)}to{opacity:1;transform:translateZ(0);filter:blur(0)}}
@media(max-width:800px){.story{height:430vh}.stage:after{background:linear-gradient(90deg,rgba(213,226,241,.18),transparent 15%,transparent 85%,rgba(213,226,241,.18))}.cinema-orbit{width:120vw;opacity:var(--orbit-opacity)}.camera-readout{right:1.25rem;bottom:1.6rem}.scene-copy,.scene-copy.on{transform:translateY(0) scale(1)}.scene-copy{filter:none;transition:opacity .5s ease}.stage[data-scene="1"] .scene-copy,.stage[data-scene="2"] .scene-copy,.stage[data-scene="3"] .scene-copy{left:clamp(1.25rem,6vw,7rem)}.cinema-bars:before,.cinema-bars:after{height:calc(5px + var(--cut-vw))}}
@media(prefers-reduced-motion:reduce){.hero-copy{animation:none}.stage:before,.cinema-light,.cinema-orbit,.cinema-bars,.camera-readout{display:none}.stage-image{clip-path:none}.stage:after{display:none}}
