/* Shared legibility and navigation refinements, loaded after legacy page styles. */
:root{--muted:#4c6374}
body{font-size:17px}
h1,h2,h3{letter-spacing:-.018em}
body > header nav{letter-spacing:normal;flex-wrap:wrap}
body > header nav .nav-cta{background:#153f68;border-color:#153f68;color:#fff;font-weight:600}
body > header nav .nav-cta:hover,body > header #navigation .nav-cta:hover{background:#205d88;color:#fff}
body > header nav .active{background:transparent;border-color:transparent;text-decoration:underline;text-underline-offset:5px}
body > header nav a{font-size:16px}
body > header .logo{flex-shrink:1}
/* Compact the sticky header after scrolling; keep links and touch targets readable. */
body > header{transition:padding-block .18s ease,min-height .18s ease,box-shadow .18s ease}
body > header .logo{transition:width .18s ease,flex-basis .18s ease,max-width .18s ease}
body > header.is-compact{min-height:80px;padding-block:10px;box-shadow:0 4px 16px #153f6814}
body > header.is-compact .logo{width:260px;flex-basis:260px}
@media(max-width:620px){
  body > header.is-compact{min-height:64px;padding-block:10px}
  body > header.is-compact .logo{width:220px;flex-basis:auto}
  body > header.home-header.is-compact .logo{width:calc(100% - 108px);max-width:216px}
}
@media(prefers-reduced-motion:reduce){body > header,body > header .logo{transition:none}}
.home-page .hero h1{letter-spacing:-.025em}
.home-page .contact.contact-with-form{gap:40px}
.home-page .contact-intro>p{font-size:17px;color:#e4eef5;max-width:460px}
.form-field label{font-size:16px}
.form-consent{font-size:14px}
.contact-form .form-hint{font-size:14px;color:#e4eef5}
.contact-form .form-status{font-size:16px}
.contact-form .form-submit{font-size:16px}
.form-field textarea::placeholder{color:#526779}
.sector-section h2{font-size:clamp(30px,3.1vw,42px);letter-spacing:-.018em;max-width:680px}
.sector-section .section-top>p{font-size:17px;color:#405d73}
.sector-card h3{font-size:22px;letter-spacing:-.01em}
.sector-card p{font-size:16px;line-height:1.75;color:#405d73}
.sector-card a{font-size:16px;min-height:44px}
.sector-note{font-size:14px;color:#405d73}
.process-steps p a{text-decoration:underline;text-underline-offset:4px}
.process-panel:focus-visible{outline:3px solid #277fa8;outline-offset:6px}
.mkv-video{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);align-items:center;gap:44px}
.video-copy p{font-size:17px;line-height:1.75;color:#405d73;margin:20px 0 12px}
.video-media{min-width:0}
.video-fallback,.video-status,.video-load small{font-size:14px}
.video-sound,.video-load{font-size:16px}
.about .home-quote{width:100%;max-width:640px;text-align:left;margin:24px 0 0;padding:0 0 0 20px;border-left:3px solid #77b7d3;border-radius:0;background:transparent}
.about .home-quote blockquote{margin:0}
.about .home-quote blockquote p{font-size:17px;line-height:1.65;font-weight:400;letter-spacing:0;color:#405d73;margin:0}
.about .home-quote figcaption{font-size:14px;margin-top:8px;color:#4c6374}
body > footer.site-footer,body.download-page > footer.site-footer{font-size:14px}
.site-footer-brand address,.site-footer-group h2,.site-footer-group a,.site-footer-meta{font-size:14px}
.site-footer-meta{color:#4c6374}
.site-footer-group a{min-height:44px}
.legal-hero>p,.legal-body p,.legal-body li{font-size:17px;color:#405d73}
.legal-body h3{font-size:19px}
.breadcrumb,.legal-toc,.legal-toc strong,.legal-contact{font-size:14px}
.legal-tabs a{font-size:16px}
.draft-note{font-size:14px!important}
.eyebrow{font-size:14px}
.download-page h1{letter-spacing:-.02em}
.download-page .intro,.download-page .file p{font-size:17px;color:#405d73}
.download-page .notice{font-size:16px;color:#405d73}
.download-page .file-icon{font-size:14px}
.download-page .btn{font-size:16px;line-height:1.5;white-space:normal;min-height:48px;display:inline-flex;align-items:center}
.download-page .file h2{letter-spacing:-.015em;overflow-wrap:break-word;hyphens:auto}
.download-page .card{align-items:flex-start;flex-wrap:wrap;gap:24px}
@media(max-width:1100px){body > header{flex-wrap:wrap}.home-page .contact.contact-with-form{gap:32px}.mkv-video{gap:28px}}
@media(max-width:900px){.mkv-video{grid-template-columns:1fr;gap:24px}.video-copy{max-width:640px}}
@media(max-width:620px){body > header.home-header{flex-wrap:nowrap}.sector-card h3{font-size:20px}.sector-card{grid-template-columns:64px minmax(0,1fr);gap:14px}.sector-card img{width:64px;height:80px}.sector-section .section{padding-block:40px}.home-page .contact.contact-with-form{padding:28px 20px}.home-page .hero h1{font-size:clamp(34px,8.5vw,48px)}.video-load{font-size:16px}.video-load small{font-size:14px}.video-sound{font-size:16px}.download-page .file{flex-direction:column}.download-page .file h2{font-size:24px}.download-page .btn{margin-top:0}}
@media(max-width:380px){.sector-card{grid-template-columns:1fr}.sector-card img{width:100%;height:130px}.sector-card h3{font-size:21px}.home-page .contact.contact-with-form{padding:26px 18px}}
