/* Native access, usable focus and a complete motion-free reading alternative. */
html{scroll-padding-top:110px}
:focus-visible{outline:3px solid #bdd2ff!important;outline-offset:5px!important}
.skip{z-index:200;color:#fff;min-height:44px;background:#2935b7}
.skip-story{left:190px}
.reading-toggle{flex-shrink:0;min-height:44px;padding:9px 14px;margin-left:auto;margin-right:22px;border:1px solid #859ccf;border-radius:24px;background:#0b1430;color:#f3f5ff;font-size:13px}
.header nav{margin-left:0}.header nav a{display:inline-flex;align-items:center;min-height:44px}
.nav-contact,.motion-toggle,.button{min-height:44px}
.film-chapters{right:8px;top:30%;gap:0}
.film-chapters button{width:44px;height:44px}
.film-chapters button:after{left:19px;top:19px;width:6px;height:6px;background:#9aadd5}
.film-chapters button:hover:before,.film-chapters button:focus-visible:before{content:attr(aria-label);position:absolute;right:48px;top:9px;background:#091329;color:#fff;padding:5px 10px;font-size:12px;white-space:nowrap}
.film-hint,.motion-toggle,.scene-caption{font-size:12px;color:#c5cfea}
.film-disclaimer{font-size:10px;color:#b4c2e2;bottom:50px}
.discipline,.email,.footer p,.footer>span,.footer>a,.section-heading h2 span,.company-grid h2 span{color:#aebcdb}
.discipline,.email,.footer p,.footer>span,.footer>a{font-size:12px}
.email,.footer>a{padding-block:12px;overflow-wrap:anywhere}
.accessibility-info{position:relative;z-index:1;background:#030610;padding-top:64px;padding-bottom:64px;scroll-margin-top:90px}
.accessibility-info h2{font-size:32px;margin-bottom:24px}.accessibility-info p{max-width:78ch;color:#bdc9e1;font-size:16px;margin-top:16px}.accessibility-info a{text-decoration:underline;overflow-wrap:anywhere}
.reading-mode .world,.reading-mode .film-controls,.reading-mode .order-book,.reading-mode .broker-ledger,.reading-mode .model-explainer,.reading-mode .portfolio-view,.reading-mode .decision-annotations,.reading-mode .scene-caption{display:none!important}
.reading-mode .film{height:auto!important;padding:120px 7% 40px}
.reading-mode .film-stage{position:static;height:auto;overflow:visible}
.reading-mode .film-copy{position:static;pointer-events:auto}
.reading-mode .film-chapter{position:static!important;opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important;text-align:left!important;max-width:850px;margin:0 auto;padding:48px 0;border-bottom:1px solid #34415c}
.reading-mode .film-chapter h1,.reading-mode .film-chapter h2{font-size:clamp(32px,5vw,64px)!important;line-height:1.15;text-shadow:none}
.reading-mode .film-chapter>p:not(.eyebrow){font-size:18px!important;max-width:65ch!important;margin:24px 0 0!important;color:#c5d0e7}
.reading-mode .film-chapter .eyebrow{font-size:12px!important}
.reading-mode .research,.reading-mode .company,.reading-mode .contact{min-height:0;padding-block:70px}
.reading-mode .research .section-heading,.reading-mode .research-grid article,.reading-mode .company-grid,.reading-mode .company>.eyebrow,.reading-mode .contact>*{opacity:1!important;transform:none!important}
.reading-mode .header{background:#030610}
@media(max-width:1000px){.header nav{gap:14px;margin-right:18px}.reading-toggle{margin-right:14px}}
@media(max-width:700px){.cinematic .header{height:auto;min-height:84px;flex-wrap:wrap;gap:8px;padding:12px 5%;background:#030610ed}.cinematic .header .brand img{width:115px}.reading-toggle{font-size:12px;margin:0 0 0 auto;padding:8px 10px}.nav-contact{padding:8px 10px;gap:6px;font-size:11px}.film-chapters{right:0;top:35%}.film-chapters button{width:28px;height:36px}.film-chapters button:after{left:11px;top:15px}.film-disclaimer{white-space:normal;width:80%;text-align:center;font-size:10px;bottom:48px}.film-hint{max-width:55%;font-size:10px}.motion-toggle{font-size:11px}.footer{gap:18px}.reading-mode .film{padding-top:140px}.reading-mode .film-chapter>p:not(.eyebrow){font-size:16px!important}.accessibility-info{padding-block:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
@media(max-height:500px){.film-chapters{top:90px;flex-direction:row;right:8px}.film-chapters button{width:32px;height:32px}.film-chapters button:after{left:13px;top:13px}}

html:has(.reading-mode){scroll-behavior:auto!important}

/* Side-mounted native accessibility dialog. No external widget or tracking code. */
:root{--reading-scale:1}
.accessibility-launcher{position:fixed;left:max(16px,env(safe-area-inset-left));bottom:max(104px,calc(env(safe-area-inset-bottom) + 88px));z-index:90;width:54px;height:54px;border:2px solid #fff;border-radius:50%;background:#3345d8;color:#fff;box-shadow:0 4px 24px #0008;display:grid;place-items:center}
.accessibility-launcher svg{width:30px;height:30px}.accessibility-launcher span{position:absolute;left:64px;white-space:nowrap;background:#101934;color:white;font-size:13px;padding:8px 12px;border-radius:6px;visibility:hidden}.accessibility-launcher:hover span,.accessibility-launcher:focus-visible span{visibility:visible}
.accessibility-dialog{position:fixed;inset:auto auto max(100px,env(safe-area-inset-bottom)) 18px;margin:0;width:min(360px,calc(100vw - 36px));max-height:calc(100dvh - 124px);overflow:auto;padding:22px;border:1px solid #7f97cb;border-radius:16px;background:#0b1329;color:#eef3ff;font-family:var(--font);box-shadow:0 20px 80px #0008;z-index:100}.accessibility-dialog::backdrop{background:#0007}.accessibility-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.accessibility-dialog h2{font-size:24px;letter-spacing:-.025em}.accessibility-dialog button,.accessibility-dialog select{min-height:44px;color:#eef3ff;background:#18233f;border:1px solid #7184ad;border-radius:8px;font:14px var(--font);padding:10px}.accessibility-dialog-head button{font-size:26px;width:44px;padding:0}.accessibility-intro{font-size:14px;color:#c4cfe6;margin:12px 0 18px;line-height:1.5}.accessibility-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.accessibility-options button[aria-pressed="true"]{background:#354ac4;border:2px solid #c7d6ff}.accessibility-options button[aria-pressed="true"]::before{content:'✓ ';}.accessibility-options button:disabled{opacity:.7;cursor:default}.accessibility-dialog label{display:block;font-size:14px;margin:20px 0 8px}.accessibility-dialog label span{font-size:12px;color:#bcc9e4}.accessibility-dialog select{width:100%}#accessibility-reset{width:100%;margin-top:16px}.accessibility-dialog a{display:block;font-size:14px;color:#c6d8ff;text-decoration:underline;margin-top:14px;padding:10px 0;line-height:1.5}.accessibility-storage{font-size:12px;color:#adbedc;margin-top:6px}
.high-contrast{background:#000;color:#fff}.high-contrast .world{opacity:.12}.high-contrast main,.high-contrast .header,.high-contrast .footer,.high-contrast .accessibility-info{background:#000!important}.high-contrast main :is(h1,h2,h3,p,span,strong,small,th,td),.high-contrast .header a,.high-contrast .footer :is(p,span,a){color:#fff!important;text-shadow:none!important}.high-contrast .film-chapter>p{background:#000}.highlight-links main a,.highlight-links .header a,.highlight-links .footer a{text-decoration:underline!important;text-decoration-thickness:2px;text-underline-offset:5px;outline:1px solid #b9d0ff;outline-offset:3px}
.reading-mode .film-chapter h1,.reading-mode .film-chapter h2{font-size:clamp(32px,calc(5vw * var(--reading-scale)),calc(64px * var(--reading-scale)))!important;overflow-wrap:anywhere}.reading-mode .film-chapter>p:not(.eyebrow){font-size:calc(18px * var(--reading-scale))!important}.reading-mode :is(.research,.company,.contact,.accessibility-info) p{font-size:calc(16px * var(--reading-scale))!important}.reading-mode .research-grid h3{font-size:calc(24px * var(--reading-scale))}.reading-mode :is(.company,.research,.contact) h2{font-size:clamp(32px,calc(5vw * var(--reading-scale)),calc(64px * var(--reading-scale)))!important;overflow-wrap:anywhere}.reading-mode .email{font-size:calc(14px * var(--reading-scale))}.header nav{margin-left:auto}
@media(max-width:700px){.accessibility-launcher{width:48px;height:48px;left:12px;bottom:110px}.accessibility-dialog{left:12px;width:calc(100vw - 24px);bottom:18px;max-height:calc(100dvh - 36px);padding:18px}.reading-mode .film-chapter>p:not(.eyebrow){font-size:calc(16px * var(--reading-scale))!important}}
