/* AW&L accessibility layer — WCAG 2.2 AA fixes shared by every page.
   Loaded after each page's own styles. Audit: October 2026. */

/* Skip link: hidden until a keyboard user tabs to it */
.skip-link{position:absolute;left:8px;top:-80px;z-index:10000;background:#fff;color:#1A1E38;
  padding:10px 16px;border-radius:8px;font:600 .9rem/1.2 Inter,system-ui,sans-serif;text-decoration:none;
  box-shadow:0 2px 10px rgba(0,0,0,.3)}
.skip-link:focus{top:8px}

/* Text for screen readers only */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Visible keyboard focus: amber ring + dark halo, readable on navy, green and cream */
:focus-visible{outline:3px solid #F5B400!important;outline-offset:2px!important;box-shadow:0 0 0 5px #1A1E38}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:1px!important}
main:focus,main:focus-visible{outline:none!important;box-shadow:none}

/* In-page links land below the sticky header (height set by a11y.js) */
html{scroll-padding-top:var(--a11y-sticky,0px)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Phones: header scrolls away instead of covering a third of the screen */
@media (max-width:767px){body>header{position:static!important}}

/* Language switcher buttons */
.langbar button,.langs button{font:inherit;line-height:1.2;border:0;background:none;cursor:pointer;
  min-height:24px;min-width:24px;display:inline-flex;align-items:center;justify-content:center}

/* Buttons that look like links */
.linkbtn{background:none!important;border:0!important;padding:0!important;margin:0!important;width:auto!important;
  font:inherit!important;color:var(--indigo,#2F3492)!important;text-decoration:underline;cursor:pointer;min-height:24px;vertical-align:middle}

/* Minimum 24px targets for small standalone links */
.back,.client-back{display:inline-flex;align-items:center;min-height:24px}
