:root{--cyan:#00c8f2;--graphite:#12161e;--paper:#f6f8fc}html{scroll-behavior:smooth}body{background:#090f15;color:var(--paper)}.header{position:absolute;inset:0 0 auto;z-index:20;background:transparent;border:0}.header-inner{height:150px}.brand{width:225px}.header nav{gap:38px}.header nav>a{color:var(--paper);font-weight:500}.header .button-small{border:1px solid var(--cyan);background:transparent;color:var(--paper);border-radius:99px;padding:13px 24px}.cinema{position:relative;isolation:isolate;min-height:800px;height: min(920px,100svh);overflow:hidden;background:#050b10}.scene,.scene canvas,.scene-fallback,.scene-shade{position:absolute;inset:0;width:100%;height:100%}.scene canvas{display:block;opacity:0;transition:opacity .6s}.scene.is-ready canvas{opacity:1}.scene.is-ready .scene-fallback{visibility:hidden}.scene-fallback{object-fit:cover;object-position:65% center}.scene-shade{background:linear-gradient(90deg,rgba(3,8,12,.98),rgba(3,8,12,.85) 25%,rgba(3,8,12,.35) 46%,transparent 68%),linear-gradient(0deg,rgba(3,8,12,.7),transparent 25%);pointer-events:none}.cinema-content{position:relative;z-index:2;padding-top:clamp(220px,28vh,300px);pointer-events:none}.cinema-content>*{pointer-events:auto}.hero-kicker{color:#a1b1b9;letter-spacing:.22em;font-size:10px;margin:0 0 23px}.cinema h1{font-size:clamp(50px,5.1vw,84px);font-weight:650;letter-spacing:-.052em;line-height:1.04;margin:0;max-width:750px}.cinema h1 span{color:var(--cyan)}.cinema-descriptor{font-size:clamp(18px,1.75vw,27px);color:var(--paper);margin:25px 0 35px;letter-spacing:-.025em}.cinema-actions{display:flex;align-items:center;gap:27px}.cinema .button{background:var(--cyan);color:#031018;border-radius:99px;padding:19px 29px;gap:22px;font-size:17px;font-weight:650}.quiet-link{display:inline-flex;align-items:center;gap:18px;color:var(--paper);font-size:14px;text-decoration:none;padding:12px 0}.quiet-link span{color:var(--cyan);font-size:21px}.cinema-bottom{position:absolute;bottom:30px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;z-index:3}.scroll-cue{font-size:10px;letter-spacing:.18em;color:#b4c1c8;display:flex;gap:15px;align-items:center;text-decoration:none}.scroll-cue>span{font-size:24px;color:var(--cyan)}.motion-controls{display:flex;gap:24px;align-items:center}.scene-label{font-size:9px;letter-spacing:.16em;color:#9aafb9}#motion-toggle{color:#d6e8ef;background:#061019c9;border:1px solid #395261;border-radius:30px;font:inherit;font-size:12px;padding:10px 16px;display:inline-flex;gap:9px;align-items:center;min-height:42px}#motion-toggle[hidden]{display:none}#motion-toggle:hover{border-color:var(--cyan)}#motion-toggle:focus-visible,.quiet-link:focus-visible,.scroll-cue:focus-visible{outline:2px solid var(--cyan);outline-offset:6px}.cinema-approach{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;align-items:center;padding-top:76px;padding-bottom:80px}.cinema-approach .eyebrow{font-size:11px;letter-spacing:.25em;margin-bottom:20px;color:var(--cyan)}.cinema-approach h2{font-size:clamp(36px,3.4vw,54px);line-height:1.08;letter-spacing:-.045em;margin:0}.cinema-approach h2 span{color:var(--cyan)}.cinema-approach p{color:#9faeb8;font-size:17px;line-height:1.8}.cinema-approach .quiet-link{margin-top:10px}.capability-rail{background:#0d151d;border-block:1px solid #1f2c35}.section{padding-top:100px;padding-bottom:100px}dialog{border:1px solid #345064}body.modal-open .header{z-index:1}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.header nav.open{background:#0a141e}.service-featured{background:linear-gradient(110deg,#0d2029,#0c151d)}
@media(min-width:1600px){.cinema h1{font-size:84px}.cinema-content{padding-top:290px}}
@media(max-width:1000px){.header-inner{height:120px}.brand{width:190px}.header nav{gap:22px}.cinema{min-height:780px;height:95svh}.cinema h1{font-size:61px}.cinema-content{padding-top:240px}.scene-shade{background:linear-gradient(90deg,#03080cf5,#03080ce6 25%,#03080c66 60%,transparent),linear-gradient(0deg,#03080c99,transparent 30%)}.scene-label{display:none}.cinema-actions{gap:20px}.cinema-approach{gap:7%}}
@media(max-width:700px){.header-inner{height:104px}.brand{width:172px}.cinema{height:auto;min-height:920px}.cinema-content{padding-top:165px}.hero-kicker{font-size:8px;letter-spacing:.18em;margin-bottom:20px}.cinema h1{font-size:clamp(43px,9.8vw,65px);line-height:1.07;letter-spacing:-.048em;max-width:100%}.cinema-descriptor{font-size:17px;margin:21px 0 27px}.cinema-actions{gap:19px;align-items:flex-start;flex-direction:column}.cinema .button{font-size:15px;padding:16px 24px}.cinema-actions>.quiet-link{padding:0;font-size:12px}.scene{top:365px;height:550px}.scene-shade{background:linear-gradient(180deg,#050b10 0%,#050b10 39%,#050b10a0 47%,transparent 65%,#050b1080 100%)}.scene-fallback{object-position:75% center}.cinema-bottom{bottom:22px;gap:12px}.scroll-cue{font-size:8px;letter-spacing:.1em;gap:8px}.scroll-cue>span{font-size:20px}#motion-toggle{font-size:11px;padding:8px 12px}.cinema-approach{grid-template-columns:1fr;gap:18px;padding-top:50px;padding-bottom:52px}.cinema-approach h2{font-size:40px}.cinema-approach p{font-size:16px}.section{padding-top:65px;padding-bottom:65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scene canvas{transition:none}}

/* Supplied clean cinematic plate: displayed whenever WebGL cannot render the live scene. */
.scene-fallback{object-position:center center}
@media(min-width:1800px){.header-inner,.cinema-content,.cinema-bottom{width:calc(100% - 12vw);max-width:none}.cinema h1{font-size:clamp(84px,5.7vw,116px);max-width:900px}.cinema-content{padding-top:clamp(250px,27vh,330px)}.cinema-descriptor{font-size:28px}}

/* Approved-direction refinements: darker theater-like contrast and a restrained cyan bloom. */
.scene-shade{background:linear-gradient(90deg,rgba(2,7,11,.99),rgba(2,7,11,.9) 25%,rgba(2,7,11,.39) 48%,transparent 70%),linear-gradient(0deg,rgba(2,7,11,.78),transparent 27%)}
.cinema:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.14;background-image:radial-gradient(#bcefff .6px,transparent .7px);background-size:5px 5px;mix-blend-mode:soft-light}
.cinema .button{box-shadow:0 0 34px #00c8f244}


/* Calibrated scene framing. Preserve height on wide displays; never crop arrow tips. */
body.admin-bar .header{top:32px}
@media(max-width:782px){body.admin-bar .header{top:46px}}
.scene{left:auto;right:0;width:auto;aspect-ratio:1672/941;height:100%;z-index:0}
.scene-shade{z-index:1}
.scene-fallback{object-position:center;transform:none;animation:none;will-change:auto}
.scene canvas{z-index:1;pointer-events:none;transition:none}
.scene.is-ready .scene-fallback{visibility:hidden}
.scene:before{content:none}
.cinema:after{opacity:.06}
.motion-paused *, .motion-paused *:before, .motion-paused *:after{animation-play-state:paused!important;transition:none!important}
.motion-reduced *, .motion-reduced *:before, .motion-reduced *:after{animation:none!important;transition:none!important}
.motion-paused{scroll-behavior:auto}
#motion-toggle:disabled{opacity:1;cursor:default;color:#b5c8d0}
.practice-tabs button{position:relative}
.practice-tabs button[aria-selected="true"]{color:#10313e;border-bottom-color:var(--cyan)}
.button:focus-visible,.round-link:focus-visible,.practice-tabs button:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}
@media(min-width:1800px){.scene{right:calc((100vw - 1800px)*.25);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 88%,transparent)}.cinema h1{font-size:clamp(84px,5.2vw,104px)}.cinema-content{padding-top:clamp(190px,20vh,250px)}}
@media(max-width:700px){.scene{top:465px;height:450px;width:100%;aspect-ratio:auto;right:0;mask-image:linear-gradient(180deg,transparent,#000 22%)}.scene-fallback{object-position:93% center}.scene-shade{background:linear-gradient(180deg,#050b10 0%,#050b10 40%,transparent 60%,#050b1080 100%)}}
