/* Preserve the opening header composition; keep controls usable across image and paper. */
:root{scroll-padding-top:94px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header:not(.in-call){transition:background-color .18s,color .18s}
.site-header.light{background:rgba(255,255,255,.97)}
.brand{flex-shrink:0}.brand img,.footer-brand img{object-fit:contain}
.journey-controls{mix-blend-mode:normal;color:#fff;gap:0;right:max(16px,env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));background:rgba(28,28,28,.9);padding:0;border:1px solid rgba(255,255,255,.12);border-radius:999px}
.journey-controls button{min-height:44px;padding:10px 14px;border-radius:inherit;white-space:nowrap}
.journey-controls button:hover{background:rgba(255,255,255,.07)}
.journey-controls button:focus-visible{outline-offset:3px}
.journey-controls svg{width:16px;height:16px}
.chapter-dots{right:12px}.chapter-dots a{width:36px;height:36px}
.chapter-dots:not(.in-call){opacity:1}.chapter-dots a::after{opacity:.5}
html:not(.js) .site-header{background:#1c1c1c}
.site-footer{padding-bottom:82px}.site-footer a{display:inline-flex;align-items:center;min-height:44px}
.site-footer .footer-brand{padding:8px 0;margin-right:20px}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #FED545;outline-offset:5px}
.opportunity button:focus-visible,.opportunity a:focus-visible,.opportunity summary:focus-visible,.site-header.light button:focus-visible,.site-header.light a:focus-visible,.site-footer a:focus-visible,dialog button:focus-visible,dialog a:focus-visible,dialog input:focus-visible{outline-color:#2564AA}
dialog{max-height:calc(100svh - 32px);overflow:auto}
@media(max-width:700px){:root{scroll-padding-top:84px}.chapter-dots{display:none}.journey-controls{right:max(16px,env(safe-area-inset-right));padding:0}.site-footer{padding-bottom:86px}.site-footer>span{max-width:150px}.site-footer>div{gap:12px;flex-wrap:wrap}.site-footer .footer-brand{margin-right:0}.site-footer .footer-brand img{width:106px}}
@media(prefers-reduced-motion:reduce){.site-header:not(.in-call){transition:none}}

@media (max-width:360px) {
  .site-header,.site-header .header-actions { gap: 8px; }
}
