/* Shared semantic roles. Existing brand, Poppins headings and Geist UI are preserved. */
:root{--teal:var(--ocean);--mist:var(--frost);--text-hint:var(--graphite);--control-border:var(--graphite);--focus-dark:var(--navy);--focus-light:var(--white);--nav-height:80px;--motion-nav:220ms;--ease-nav:cubic-bezier(.22,1,.36,1);--target-height:44px}
/* Two-tone focus remains visible on light and dark panels. */
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--focus-dark);outline-offset:3px;box-shadow:0 0 0 3px var(--focus-light)}
.v2-footer a:focus-visible,.v2-workflow a:focus-visible{outline-color:var(--ice);box-shadow:0 0 0 3px var(--navy)}
input::placeholder,textarea::placeholder{color:var(--text-hint);opacity:1}
input,select,textarea{border-color:var(--control-border)}
.navlinks>a,.language-switch>a,.filters button{min-height:var(--target-height);display:inline-flex;align-items:center}
.menubtn{min-height:var(--target-height)}
.navlinks>a[aria-current=page]{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.skip{z-index:1100;top:0;transform:translateY(-160%);max-width:calc(100vw - 40px)}.skip:focus{top:10px;transform:none}
main:focus{outline:none}
.button:after{content:'↗' / ''}
@media(min-width:801px){
 body>header.nav{position:sticky;top:0;z-index:1000;width:100%;height:var(--nav-height);background:var(--white);transform:translateY(0);transition:transform var(--motion-nav) var(--ease-nav),box-shadow var(--motion-nav) ease}
 body>header.nav.nav-scrolled{box-shadow:0 1px 0 var(--cloud)}
 body>header.nav.nav-away{transform:translateY(calc(-100% - 2px));box-shadow:none;pointer-events:none}
 body>header.nav:focus-within{transform:none;pointer-events:auto;transition:none}
 html{scroll-padding-top:calc(var(--nav-height) + 24px)}
 .legal-toc{top:calc(var(--nav-height) + 24px)}
 .v2-workflow .workflow-intro{top:calc(var(--nav-height) + 24px)}
}
@media(max-width:800px){.navlinks{top:100%;max-height:calc(100dvh - 76px);overflow-y:auto}.navlinks.open{display:flex}.navlinks a{display:flex}}
@media(prefers-reduced-motion:reduce){body>header.nav{transition:none}}
@media print{body>header.nav{display:none}.legal-toc{position:static}}
