/* Screen-sized chapters, without intercepting wheel or touch gestures. */
html{scroll-snap-type:y mandatory;scroll-padding-top:0}
main>.chapter{min-height:100svh;scroll-snap-align:start;scroll-snap-stop:always;scroll-margin-top:0;position:relative}
main>.section.chapter{padding:64px 7%;display:flex;flex-direction:column;justify-content:center}
.statement{display:none}
.chapter .section-heading{margin-bottom:28px}
.chapter h2{font-size:clamp(34px,3.6vw,54px)}
.expertise.chapter .service-accordion{min-height:410px;height:clamp(410px,57vh,570px);flex-shrink:0}
.expertise.chapter .image-service:not(.active) .service-trigger{min-height:100%}
.service-detail.chapter{margin:0;background:var(--paper,#fdfcf9)}
.service-detail .detail-heading h2{font-size:clamp(32px,3vw,46px);margin:0}
.service-detail .support-intro{margin:20px 0;max-width:800px}
.service-detail .support-intro>p:last-child{font-size:16px;line-height:1.6;margin-bottom:0}
.service-detail .service-grid{display:block;position:relative;min-height:360px}
.service-detail .service-grid details{width:46%;border-top:1px solid var(--line)}
.service-detail .service-grid summary{min-height:57px;padding:16px 0;font-size:15px}
.service-detail .service-body{position:absolute;left:51%;right:0;top:0;padding:24px 28px;background:rgba(31,42,68,.035);border:1px solid var(--line);border-radius:16px;min-height:320px}
.service-detail .service-body p{padding:0;margin:0 0 18px;font-size:15px;line-height:1.7}
.service-detail .service-body .service-deliverable{margin:16px 0 0!important}
.service-detail .service-grid:has(details[open]) .hover-hint{display:none}
.hover-hint{position:absolute;left:51%;right:0;top:0;min-height:320px;display:grid;place-content:center;padding:35px;border:1px solid var(--line);border-radius:16px;color:var(--muted);font-size:18px;text-align:center}
.hover-hint small{font-size:13px;display:block;margin-top:12px}
.support-close{margin-top:12px;padding-top:14px}.support-close p{margin:0}
.journey.chapter .stage-visual{min-height:410px;height:clamp(410px,57vh,570px)}
.systems.chapter{display:grid;grid-template-columns:1fr 1fr;align-content:center;gap:24px 7%}
.systems.chapter .fan-deck{height:300px}.systems.chapter .fan-card{height:270px}.systems.chapter .fan-title{margin-top:24px}
.about.chapter,.contact.chapter{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-content:center;gap:8%}
.contact.chapter{padding-top:45px;padding-bottom:45px}.contact label{margin-bottom:13px}.contact textarea{min-height:80px}.contact .form-note{margin:12px 0}.contact .glass-calendar{margin:10px 0 15px;padding:16px}.calendar-heading{margin:10px 0}.calendar-heading h3{font-size:22px}.calendar-disclosure>summary{cursor:pointer;padding:12px 0;color:#e3e4e8;font-size:13px}.calendar-disclosure>summary::marker{color:#e3a38d}
.chapter-nav{position:fixed;z-index:20;right:12px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:8px;padding:9px 6px;border-radius:30px;background:#1f2a44e8;border:1px solid #ffffff44;box-shadow:0 6px 22px #0002}
.chapter-nav a{width:24px;height:24px;display:grid;place-items:center;color:#fff;position:relative;border-radius:50%}.chapter-nav a::before{content:'';width:5px;height:5px;border:1px solid #fff9;border-radius:50%}.chapter-nav a[aria-current=true]::before{background:#efaa90;border-color:#efaa90;width:8px;height:8px}.chapter-nav span{position:absolute;right:34px;padding:7px 12px;background:#1f2a44;border-radius:5px;font-size:12px;white-space:nowrap;opacity:0;pointer-events:none}.chapter-nav a:hover span,.chapter-nav a:focus-visible span{opacity:1}
.night .service-detail.chapter{background:#17243a}.night .service-body{background:#ffffff07}.night .service-detail details{border-color:#ffffff25}
@media(max-width:900px),(max-height:650px){html{scroll-snap-type:none}.chapter-nav{display:none}main>.section.chapter{padding:55px 6%}.service-detail .service-grid{min-height:0}.service-detail .service-grid details{width:100%}.service-detail .service-body{position:static;min-height:0;margin-bottom:18px;padding:20px}.hover-hint{display:none}.service-detail .service-grid summary{min-height:65px}.service-detail .support-intro{margin:24px 0}.about.chapter,.contact.chapter{gap:30px}.systems.chapter{gap:30px}.support-close{gap:18px}}
@media(max-width:720px){main>.chapter{min-height:100svh}.expertise.chapter .service-accordion{height:auto;min-height:0}.expertise.chapter .image-service.active{min-height:480px}.expertise.chapter .image-service:not(.active){min-height:115px}.expertise.chapter .image-service:not(.active) .service-trigger{min-height:115px}.systems.chapter,.about.chapter,.contact.chapter{display:flex;flex-direction:column;align-items:stretch}.journey.chapter .stage-visual{height:auto;min-height:500px}.cinematic-hero{padding-bottom:150px}.hero-bottom{flex-wrap:wrap}.hero-film-controls{margin-left:auto}.hero-bottom>.video-toggle{position:static}.hero-film-controls .video-toggle{position:static}.hero-bottom .scroll-cue{display:none}.contact.chapter .contact h2{font-size:48px}.service-detail .detail-heading{gap:22px}.systems.chapter .fan-card{height:260px}.chapter .section-heading{margin-bottom:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-snap-type:none;scroll-behavior:auto}}
@media(min-width:901px) and (min-height:651px){
main>.section.chapter{padding-top:38px;padding-bottom:38px}
main>.systems.chapter,main>.about.chapter,main>.contact.chapter{display:grid}
main>.systems.chapter{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
main>.contact.chapter{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.service-detail .service-grid{min-height:306px}.service-detail .service-grid summary{height:50px;min-height:50px;padding:10px 0}.service-detail .service-body,.hover-hint{min-height:306px}.service-detail .detail-heading{padding-bottom:14px}.support-inner{min-width:0}.service-detail .support-intro{margin:16px 0}.service-detail .support-close{padding-top:12px}.service-detail .support-close p{max-width:520px}
}
@media(min-width:901px) and (min-height:651px){main>.systems.chapter{gap:18px 7%}.systems.chapter .fan-deck{height:280px}.cinematic-hero.chapter{min-height:100svh;border-bottom:0}}
@media(min-width:721px){.systems.chapter .fan-left,.systems.chapter .fan-deck:has(.fan-centre:hover) .fan-left{transform:translateX(-210px) translateY(-38px) rotate(-21deg) scale(.8)}.systems.chapter .fan-right,.systems.chapter .fan-deck:has(.fan-centre:hover) .fan-right{transform:translateX(210px) translateY(-38px) rotate(21deg) scale(.8)}}
@media(max-width:720px){.systems.chapter .fan-left,.systems.chapter .fan-deck:has(.fan-centre:hover) .fan-left{transform:translateX(-85px) translateY(-25px) rotate(-18deg) scale(.8)}.systems.chapter .fan-right,.systems.chapter .fan-deck:has(.fan-centre:hover) .fan-right{transform:translateX(85px) translateY(-25px) rotate(18deg) scale(.8)}}

.brand img{filter:none;mix-blend-mode:normal;background:transparent;width:112px;height:auto}
@media(max-width:720px){.brand img{width:88px}}
.about.chapter .lead{font-size:20px;line-height:1.5}.about.chapter p{line-height:1.65}
