/* Phase 4: shared navigation, keyboard access, motion and unenhanced document. */
.sx-main { display: block; }
.sx-skip { position: fixed; top: 8px; left: 12px; z-index: 110; padding: 12px 18px; background: #EEF1F2; color: #11151A; font: 500 16px Archivo, sans-serif; transform: translateY(-180%); }
.sx-skip:focus { transform: none; outline: 2px solid #12455C; outline-offset: 2px; }
[data-sx-root] :is(a,button,input,textarea,summary):focus-visible { outline: 2px solid currentColor !important; outline-offset: 4px !important; }
[data-sx-root] :is(h1,h2,h3,[tabindex="-1"]) { scroll-margin-top: 88px; }
[data-sx-root] .site-menu-close { min-width: 44px; min-height: 44px; flex: none; }
[data-sx-root] .site-menu-overlay { max-height: 100dvh; }
.sx-fallback-nav { display: none; }
x-dc sc-if { display: none !important; }
x-dc .site-menu-trigger, x-dc .site-header > div { visibility: hidden; }
x-dc .sx-fallback-nav { display: block; position: relative; margin-top: 68px; padding: 18px 22px; background: #080A0F; color: #EEF1F2; }
.sx-fallback-nav summary { cursor: pointer; min-height: 44px; font-family: 'Martian Mono',monospace; }
.sx-fallback-nav nav { display: grid; gap: 4px; }
.sx-fallback-nav a { padding: 12px 0; display: block; }
x-dc [data-sx-root] *, x-dc [data-sx-root] *::before, x-dc [data-sx-root] *::after { animation: none !important; transition: none !important; }
@media (max-width:900px) {
  [data-sx-root] .site-menu-body { display:block !important; }
  [data-sx-root] .site-menu-link { grid-template-columns: 30px minmax(0,1fr) !important; gap: 8px 14px !important; min-height:44px; }
  [data-sx-root] .site-menu-link > .site-menu-here { display:inline-flex !important; grid-column:2; font-size:12px; line-height:1.4; }
  [data-sx-root] .site-menu-early { border-left:0 !important; border-top:1px solid rgba(238,241,242,.18); }
}
@media (max-width:600px) {
  [data-sx-root] .site-menu-overlay-header { display:grid !important; grid-template-columns:minmax(0,1fr) auto !important; gap:12px !important; height:auto !important; padding:12px 18px !important; align-items:start; }
  [data-sx-root] .site-menu-brand { display:flex !important; flex-direction:column; align-items:flex-start !important; gap:8px !important; min-width:0; }
  [data-sx-root] .site-menu-current-page { min-width:0; white-space:normal; overflow-wrap:anywhere; line-height:1.35; }
  [data-sx-root] .site-menu-close { justify-self:end; }
  [data-sx-root] .site-menu-footer { height:auto !important; min-height:52px; flex-wrap:wrap; padding-top:12px !important; padding-bottom:12px !important; gap:8px 16px !important; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto !important; }
  [data-sx-root] *, [data-sx-root] *::before, [data-sx-root] *::after { animation:none !important; animation-timeline:auto !important; transition:none !important; }
  [data-sx-root] .sx-mark { transform:none !important; }
}

/* Form buttons can invert the surrounding surface; a two-colour focus ring stays visible on both. */
[data-sx-root] form button:focus-visible { outline-color:#11151A!important;box-shadow:0 0 0 2px #11151A,0 0 0 4px #E9EEF6!important; }

/* Local readiness repairs: no new motion or site-wide composition changes. */
.sx-inactive-fields { display:contents; border:0; margin:0; padding:0; min-width:0; }
.sx-form-status { margin:0; font:inherit; font-size:16px; line-height:1.5; max-width:48ch; }
[data-sx-inactive] :disabled { cursor:not-allowed!important; opacity:1; }
.sx-honeypot[hidden] { display:none!important; }
.sx-context-link { color:inherit; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:.2em; }
x-dc [data-sx-root] :is(h1,h2,h3,h4,p,a) { opacity:1!important; }

/* Launch regression: preserve complete headings when users enlarge text. */
[data-sx-root] :is(h1,h2,h3) { overflow-wrap:anywhere; }
@media (max-width:600px) {
  [data-sx-root] .sx-home-headline { max-inline-size:100% !important; }
}
@media (min-width:601px) {
  [data-sx-root] h4 { overflow-wrap:anywhere; }
}
