/* Approved scroll-driven shield and continuous homepage reveal. */
.assembly-runway{position:relative;background:#0d1c28}.assembly-mark,.intro-veil,.intro-top,.assembly-message,.assembly-bottom{display:none}.home-anchor{position:absolute;bottom:100svh;left:0}html{scroll-behavior:auto}
.scene-ready .assembly-runway{height:375vh;height:375svh}.scene-ready .continuum-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;isolation:isolate;background:#0d1c28}
.scene-ready .signature-hero{height:100%;background:transparent}.scene-ready .signature-content{height:100%;min-height:0;padding-top:86px}.scene-ready .signature-copy{padding:28px 0;margin-block:auto}.scene-ready .signature-top{padding-block:20px}.scene-ready .signature-top,.scene-ready .signature-copy,.scene-ready .signature-bottom,.scene-ready .signature-caption{opacity:var(--home-opacity,0);transform:translateY(var(--home-lift,24px))}.scene-ready .signature-bottom{margin-top:0;padding-bottom:26px}.scene-ready .signature-image{opacity:var(--photo-opacity,.03);transform:scale(var(--photo-scale,1.07));transform-origin:60% 50%;will-change:transform,opacity}.scene-ready .signature-grid{opacity:calc(var(--home-opacity,0)*.35)}.scene-ready .signature-caption{position:absolute;bottom:8px;right:0;padding-bottom:0;font-size:9px}
.scene-ready .intro-veil{display:block;position:absolute;inset:0;background:radial-gradient(ellipse at 50% 47%,#142d3b,#0d1c28 65%);opacity:var(--veil-opacity,1);pointer-events:none}.scene-ready .assembly-mark{display:block;position:absolute;left:0;top:0;width:var(--mark-width,600px);height:calc(var(--mark-width,600px)*.910256);transform-origin:0 0;pointer-events:none;will-change:transform;mix-blend-mode:screen;z-index:6}.assembly-svg{display:block;width:100%;height:100%;overflow:visible}.shield-half,.inner-edge,.orbit-path,.orbit-edge{stroke-dasharray:1;stroke-dashoffset:1}.shield-half{filter:drop-shadow(0 0 5px #9ac7df33)}.core-grid{opacity:0}.true-mark{opacity:0}.vector-mark{opacity:0}.z-mark,.z-shadow{transform-origin:584px 483px;opacity:0}
.scene-ready .intro-top{display:flex;position:absolute;z-index:7;top:0;left:0;right:0;padding:30px max(26px,calc((100vw - 1320px)/2));justify-content:space-between;align-items:center;opacity:var(--intro-top-opacity,1);pointer-events:var(--intro-input,auto)}.intro-top>span{font-size:22px;letter-spacing:.13em;font-weight:800;color:#f6f4ef}.intro-top small{display:block;color:#9eaebb;font-size:7px;letter-spacing:.22em;font-weight:500;margin-top:5px}.scene-ready .assembly-message{display:block;position:absolute;left:10%;right:10%;top:73%;z-index:5;text-align:center;opacity:var(--promise-opacity,0);transform:translateY(var(--promise-lift,14px));pointer-events:none}.assembly-eyebrow{font-size:8px;letter-spacing:.2em;color:#b9a38f;margin-bottom:12px}.assembly-promise{font-size:clamp(23px,2.5vw,36px);line-height:1.25;letter-spacing:-.045em;color:#edf3f6}.assembly-promise em{font-style:normal;color:#efb38b}.scene-ready .assembly-bottom{display:flex;position:absolute;left:4%;right:4%;bottom:6%;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:.14em;color:#9caebc;opacity:var(--intro-bottom-opacity,1);pointer-events:none}.assembly-cue{display:flex;gap:12px;align-items:center;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.assembly-cue>span{font-size:18px;color:#efb38b;animation:scroll-cue-drift 1.8s ease-in-out infinite;will-change:transform}
.scene-ready .site-header{position:fixed;top:0;left:0;right:0;z-index:60;opacity:var(--nav-opacity,0);transform:translateY(var(--nav-lift,-12px));pointer-events:var(--home-input,none)}.scene-ready .site-header .brand-mark img{opacity:var(--nav-mark-opacity,0)}.scene-ready .quick-actions{opacity:var(--contact-opacity,0);pointer-events:var(--home-input,none)}.scene-ready .signature-content a,.scene-ready .signature-content button{pointer-events:var(--home-input,none)}.intro-replay{cursor:pointer}
@media(max-width:1000px){.scene-ready .signature-content{padding-top:68px}.scene-ready .signature-top{padding-block:20px}.scene-ready .signature-copy{padding:20px 0}.scene-ready .signature-copy h1{font-size:clamp(48px,7vw,78px);letter-spacing:-3px}}
@media(max-width:700px){.scene-ready .assembly-runway{height:340svh}.scene-ready .intro-top{padding:20px 22px}.intro-top>span{font-size:18px}.intro-top small{font-size:6px}.scene-ready .assembly-message{top:69%;left:6%;right:6%}.assembly-promise{font-size:26px}.assembly-eyebrow{font-size:7px}.scene-ready .assembly-bottom{bottom:7%;font-size:6px;left:6%;right:6%;gap:12px}.assembly-bottom>span:last-child{display:none}.assembly-cue{gap:10px;font-size:9px}.scene-ready .signature-content{padding-top:72px}.scene-ready .signature-top{padding-block:16px}.scene-ready .signature-copy{padding:18px 0}.scene-ready .signature-copy h1{font-size:clamp(42px,12vw,70px);letter-spacing:-2.5px}.scene-ready .signature-slogan{font-size:11px;margin-bottom:18px}.scene-ready .signature-description{font-size:13px;line-height:1.8;margin-top:20px}.scene-ready .signature-actions{margin-top:24px;gap:12px}.scene-ready .signature-bottom{padding:12px 0 90px;gap:10px}.scene-ready .signature-bottom .intro-replay{font-size:9px}.scene-ready .signature-caption{bottom:65px;font-size:7px;max-width:90%;line-height:1.3}.scene-ready .signature-image{inset:0;}.scene-ready .signature-image img{object-position:61% center}}
@media(max-height:650px){.scene-ready .signature-copy{padding:10px 0}.scene-ready .signature-top{padding-block:10px}.scene-ready .signature-copy h1{font-size:clamp(36px,7vw,60px);line-height:1.07}.scene-ready .signature-description{margin-top:12px;font-size:12px;line-height:1.65}.scene-ready .signature-slogan{margin-bottom:12px;font-size:11px}.scene-ready .signature-actions{margin-top:16px}.scene-ready .signature-bottom{padding-top:8px}.scene-ready .assembly-message{top:71%}.assembly-promise{font-size:22px}.assembly-eyebrow{margin-bottom:8px}}
@media(max-height:450px) and (min-width:701px){.scene-ready .intro-top{padding-block:12px}.scene-ready .signature-content{padding-top:65px}.scene-ready .signature-top,.scene-ready .signature-bottom,.scene-ready .signature-caption{display:none}.scene-ready .signature-copy{margin:auto 0}.scene-ready .signature-copy h1{font-size:40px}.scene-ready .signature-description{font-size:11px;line-height:1.5;margin-top:10px}.scene-ready .signature-description br{display:none}.scene-ready .signature-slogan{font-size:10px;margin-bottom:7px}.scene-ready .signature-actions{margin-top:12px;gap:20px}.scene-ready .signature-actions .btn{min-height:42px;padding:8px 14px}.scene-ready .assembly-message{top:75%}.assembly-eyebrow{display:none}.assembly-promise{font-size:20px}.assembly-promise br{display:none}.assembly-promise em:before{content:' '}.scene-ready .assembly-bottom{bottom:4%}.scene-ready .quick-actions{transform:scale(.9);transform-origin:bottom right}}
@media(prefers-reduced-motion:reduce){.scene-ready .assembly-runway{height:100svh}.scene-ready .assembly-mark{will-change:auto}.scene-ready .signature-image{will-change:auto}.assembly-cue{display:none}}

.scene-ready .continuum-stage{overflow-anchor:none}

.assembly-lead{display:none}.scene-ready .assembly-lead{display:block;position:absolute;left:8%;right:8%;top:66%;text-align:center;font-size:clamp(28px,3.3vw,44px);line-height:1.15;letter-spacing:-.04em;color:#ebf1f5;opacity:var(--lead-opacity,1);pointer-events:none}.assembly-lead em{font-style:normal;color:#efb38b}.quiet-shield{opacity:calc((1 - var(--home-opacity,0))*.09)}

.home-anchor{scroll-margin-top:-105px}@media(max-width:700px) and (max-height:650px){.scene-ready .signature-bottom>span{display:none}.scene-ready .signature-bottom{padding:6px 0 78px}.scene-ready .signature-bottom .intro-replay{min-height:32px}.scene-ready .signature-copy{padding:12px 0}}

/* Progressive enhancement and content navigation. */
.home-anchor{top:0;bottom:auto}.scene-ready .home-anchor{top:auto;bottom:100svh}.signature-copy h1:focus{outline:none}.scene-ready .assembly-mark[hidden],.scene-ready .intro-top[hidden],.scene-ready .intro-replay[hidden]{display:none}
@media print{.scene-ready .assembly-mark,.scene-ready .intro-veil,.scene-ready .intro-top,.scene-ready .assembly-message,.scene-ready .assembly-lead,.scene-ready .assembly-bottom,.scene-ready .intro-replay{display:none}.scene-ready .assembly-runway{height:auto}.scene-ready .continuum-stage{position:static;height:auto;overflow:visible}.scene-ready .signature-hero,.scene-ready .signature-content{height:auto}.scene-ready .signature-top,.scene-ready .signature-copy,.scene-ready .signature-bottom,.scene-ready .signature-caption{opacity:1;transform:none}.scene-ready .signature-content{padding-top:0}}

.scene-ready[data-motion="reduced"] .assembly-runway{height:100svh}.scene-ready[data-motion="reduced"] .assembly-cue{display:none}

/* A quiet directional hint; transform only, with no movement under reduced motion. */
@keyframes scroll-cue-drift{0%,100%{transform:translateY(-2px);opacity:.65}50%{transform:translateY(3px);opacity:1}}
.continuum-stage:focus{outline:none}
@media(prefers-reduced-motion:reduce){.assembly-cue>span{animation:none;will-change:auto}}

/* Restrained details follow the same scroll timeline as the shield. */
.scene-ready .assembly-cue{opacity:var(--cue-opacity,1)}
.scene-ready .signature-slogan{opacity:var(--slogan-reveal,0);transform:translate3d(0,var(--slogan-lift,6px),0)}
.scene-ready .signature-copy h1{opacity:var(--title-reveal,0);transform:translate3d(0,var(--title-lift,10px),0)}
.scene-ready .signature-description{opacity:var(--description-reveal,0);transform:translate3d(0,var(--description-lift,8px),0)}
.scene-ready .signature-actions{opacity:var(--actions-reveal,0);transform:translate3d(0,var(--actions-lift,6px),0)}
@media(hover:hover) and (pointer:fine){.btn:hover .arrow{transform:translate(2px,-2px)}.btn:focus-visible .arrow{transform:translate(2px,-2px)}}
.btn:active{transform:translateY(0) scale(.985)}
@media(prefers-reduced-motion:reduce){.shield-glint{display:none}.btn:active,.btn:hover .arrow,.btn:focus-visible .arrow{transform:none}}
@media print{.scene-ready .signature-slogan,.scene-ready .signature-copy h1,.scene-ready .signature-description,.scene-ready .signature-actions{opacity:1;transform:none}.shield-glint{display:none}}

/* Native-scroll handoff: the hero and following sections share one velocity ramp. */
.scene-ready .assembly-runway{margin-bottom:calc(var(--handoff-length,0px)*-.5)}
.scene-ready .continuum-stage{transform:translate3d(0,var(--stage-travel,0px),0)}
.scene-ready .homepage-flow{transform:translate3d(0,var(--flow-travel,0px),0)}
.scene-ready .home-anchor{bottom:calc(100svh + var(--handoff-length,0px))}
@media print{.scene-ready .assembly-runway{margin-bottom:0}.scene-ready .continuum-stage,.scene-ready .homepage-flow{transform:none}}
