/* V10 shell only. Each audience owns the composition of its pages. */
.site-header { background:rgba(255,255,255,.96); border-bottom:1px solid #dce5eb; }
.site-header .header-row { min-height:84px; gap:26px; }
.site-header .brand { width:218px; }
.site-header .desktop-nav { gap:25px; }
.site-header .nav-link { font-size:14px; font-weight:500; letter-spacing:-.012em; }
.site-header .header-contact { font-size:14px; font-weight:500; }
.site-header .header-controls { gap:18px; }
.site-header .motion-toggle { width:auto; min-width:44px; height:44px; gap:8px; padding-inline:4px; }
.site-header .motion-label { font-size:11px; letter-spacing:.01em; font-weight:500; white-space:nowrap; }
.mobile-menu-label { font-size:11px; font-weight:600; letter-spacing:.07em; text-transform:uppercase; color:var(--blue); margin-bottom:10px; }
.site-footer { position:relative; background:linear-gradient(#fff,#f5f8fa 160px); border-top:0; }
.site-footer .footer-main { padding-top:48px; padding-bottom:34px; column-gap:5%; }
.site-footer .footer-identity>a { display:block; max-width:255px; }
.site-footer .footer-identity p { font-size:14px; line-height:1.65; max-width:30ch; }
.site-footer .footer-column h2 { font-size:11px; font-weight:600; line-height:1.5; letter-spacing:.065em; text-transform:uppercase; color:var(--blue); margin-bottom:17px; }
.site-footer .footer-column>a { font-size:14px; line-height:1.5; min-height:40px; }
.site-footer .footer-column a:hover { color:var(--blue); }
.site-footer .footer-contact address { font-size:13px; line-height:1.7; }
.site-footer .footer-legal { padding-block:25px; border-top:1px solid #dce5eb; }
.site-footer .footer-legal p { font-size:12px; line-height:1.8; color:#45576b; max-width:145ch; }
.site-footer .footer-bottom { font-size:12px; padding-block:20px 25px; }
.site-footer .footer-bottom>div { gap:24px; }
@media(max-width:1200px) and (min-width:1001px) {
 .site-header .brand { width:190px; }
 .site-header .header-row { gap:18px; }
 .site-header .desktop-nav { gap:19px; }
 .site-header .header-controls { gap:12px; }
 .site-header .motion-label { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
}
@media(max-width:1000px) {
 .site-header .header-row { min-height:76px; }
 .site-header .header-controls { gap:12px; margin-left:auto; }
 .site-header .motion-label { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
 .site-footer .footer-main { gap:32px 9%; }
}
@media(max-width:760px) {
 .site-header .header-row { min-height:72px; gap:12px; }
 .site-header .brand { width:min(202px,45vw); }
 .site-header .header-controls { gap:8px; }
 .site-header .motion-toggle { min-width:40px; padding-inline:0; }
 .site-header .menu-toggle { font-size:13px; gap:7px; padding:0; }
 .site-footer .footer-main { padding-top:35px; padding-bottom:25px; }
 .site-footer .footer-identity>a { max-width:235px; }
 .site-footer .footer-column h2 { margin-bottom:11px; }
 .site-footer .footer-column>a { min-height:44px; }
 .site-footer .footer-legal p { font-size:12px; line-height:1.8; }
 .site-footer .footer-bottom { gap:15px; }
 .site-footer .footer-bottom>div { gap:15px 22px; }
}
.section-nav a[aria-current=location],.t10-platform-index a[aria-current=location],.t10-cost-index a[aria-current=location],.t10-account-index a[aria-current=location]{color:var(--blue);text-decoration:underline;text-underline-offset:6px}.t10-chapter.is-reading:before{background:var(--blue)}.t10-chapter.is-reading .t10-chapter-index{color:var(--blue)}
/* Existing-client access is audience-specific and remains a direct, conventional destination. */
.header-login{display:inline-flex;align-items:center;gap:8px;font-size:12px;min-height:44px;white-space:nowrap;color:#244d65}.header-login .arrow{width:14px;height:14px}.header-controls{gap:17px}.header-contact{white-space:nowrap}
@media(max-width:1100px){.header-login{display:none}}
@media(min-width:1101px) and (max-width:1280px){.header-controls{gap:12px}.desktop-nav{gap:18px}.header-contact{font-size:12px}.motion-toggle{width:36px}.motion-toggle .motion-label{display:none}.brand{max-width:218px}}
.t11-focus{scroll-margin-top:84px}@media(max-width:760px){.t11-focus{scroll-margin-top:72px}}
