:root{--nav-height:68px}
body section[id]{scroll-margin-top:calc(var(--nav-height) + 16px)}
body.has-subnav section[id]{scroll-margin-top:calc(var(--nav-height) + 74px)}
.subnav{top:var(--nav-height)}
.nav ul.open{top:var(--nav-height)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.skip-link{position:fixed;top:8px;left:12px;z-index:100;padding:10px 18px;border-radius:8px;background:var(--ink);color:#fff;transform:translateY(-160%)}
.skip-link:focus{transform:translateY(0)}
#main-content:focus{outline:none}
.subnav a:focus-visible{outline-offset:-3px}
#request-status:empty,#request-context:empty{display:none}
#request-preview{min-height:240px;resize:vertical}
textarea{resize:vertical}
article{overflow-wrap:anywhere}
.clink button{flex-shrink:0}
@media(max-width:560px){:root{--nav-height:60px}.nav .wrap>a:first-child{min-width:0}.nav img{max-width:100%;height:auto;max-height:24px}.subnav a{min-height:40px;display:inline-flex;align-items:center}.contact .wrap{gap:28px}}
@media(max-width:560px){.hero.sub{padding-block:48px 36px}.hero.sub .lead{font-size:18px;margin-bottom:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*{animation:none!important;transition:none!important}}
