/* A video-only title frame: no poster flash while the first decoded frame arrives. */
.hero-video-section{background:#10141d}
.hero-video-section .hero-video{opacity:0;transition:opacity 200ms var(--motion-ease-out)}
.hero-video-section .hero-video[data-frame-ready=true]{opacity:1}
.hero-video-section .hero-shade{background:linear-gradient(0deg,#0d111b66,transparent 80%),linear-gradient(90deg,#0d111b26,#0d111b12)}
.hero-copy.hero-caption{inset:0;bottom:0;left:0;right:0;max-width:none;display:flex;align-items:center;justify-content:center;padding:0 5% 2%;text-align:center;margin:0}
.hero-caption h1{font-size:clamp(66px,8.7vw,158px);font-weight:700;line-height:1.01;letter-spacing:-.065em;margin:0;text-wrap:balance;text-shadow:0 3px 35px #07101e40}
.hero-caption h1 span{color:#fcd6c3}
.hero-video-toggle{bottom:28px}
.hero-intro-lead{font-size:clamp(29px,3.1vw,46px);font-weight:650;line-height:1.17;letter-spacing:-.045em}
.hero-intro-copy>p:last-child{font-size:16px}
h2{font-weight:600}
/* One continuous canvas: transitions have their own space, never over the copy. */
main>section:not(.hero):not(.platforms)::before,.kinetic-sticky:before{content:none}
.hero-intro,.intro.section,.numbers-showcase.section,.contact.section{border-radius:0;margin-top:0}
.hero-video-section .hero-shade{background:linear-gradient(0deg,#f5f5f0 0%,#f5f5f099 3%,transparent 12%),linear-gradient(0deg,#0d111b40,transparent 80%),linear-gradient(90deg,#0d111b26,#0d111b12)}
.hero-video-toggle{bottom:70px}
.colour-bridge{height:clamp(90px,10vw,160px);margin:-1px 0;background:linear-gradient(180deg,var(--bridge-from) 0%,var(--bridge-middle) 50%,var(--bridge-to) 100%);pointer-events:none}
.bridge-paper-night{--bridge-from:#f5f5f0;--bridge-middle:#d4ad9a;--bridge-to:#331f15}
.bridge-night-blue{--bridge-from:#141722;--bridge-middle:#98502c;--bridge-to:#be4b20}
.bridge-blue-charcoal{--bridge-from:#be4b20;--bridge-middle:#7e4a30;--bridge-to:#202124}
.bridge-charcoal-night{--bridge-from:#202124;--bridge-middle:#161d30;--bridge-to:#3b1e0f;height:90px}
.bridge-blue-paper{--bridge-from:#be4b20;--bridge-middle:#fccfb8;--bridge-to:#fff}
.bridge-paper-charcoal{--bridge-from:#fff;--bridge-middle:#d0b3a4;--bridge-to:#483024}
.numbers-showcase+.bridge-night-blue{--bridge-from:#3a1e10}
.platforms{border-top:0;border-bottom:0}
.kinetic-sticky{background:linear-gradient(#331f15,#141722)}
.intro.section{background:#be4b20;padding-top:48px}
.services-story{background:#202124}
.services-intro{padding-top:55px}
.numbers-showcase.section{padding-top:55px;background:linear-gradient(#3b1e0f,#3a1e10)}
.statement{padding-top:55px;background:#be4b20}
.process.section{padding-top:55px}
.offers-section.section{background:linear-gradient(#fff,#f5f5f0 130px);padding-top:80px}
.faq.section{background:linear-gradient(#f5f5f0,#fff 130px)}
.contact.section{border:0;background:linear-gradient(#483024,#202124)}
@media(max-width:760px){.colour-bridge{height:90px}.bridge-charcoal-night{height:55px}.intro.section,.services-intro,.numbers-showcase.section,.statement,.process.section{padding-top:40px}.hero-video-toggle{bottom:60px}}

.intro:after{mask-image:linear-gradient(#000 60%,transparent);-webkit-mask-image:linear-gradient(#000 60%,transparent)}
.footer{background:linear-gradient(#202124,#18191e 120px)}
@media(max-width:760px){.hero-copy.hero-caption{inset:0;padding:0 5% 5%;text-align:center}.hero-caption h1{font-size:clamp(34px,10.4vw,74px);font-weight:700;line-height:1.08;letter-spacing:-.065em}}
@media(prefers-reduced-motion:reduce){.hero-video-section .hero-video{transition:none}}
