/* Shared keyboard, responsive navigation and motion preferences. */
[hidden]{display:none !important;}
:focus-visible{outline:3px solid var(--teal-deep);outline-offset:4px;}
footer :focus-visible,.badges-band :focus-visible{outline-color:#fff;}
.skip-link{position:fixed;top:8px;left:8px;z-index:1000;padding:12px 18px;background:var(--teal-deep);color:#fff;border-radius:8px;transform:translateY(-160%);}
.skip-link:focus{transform:none;}
img{height:auto;}
a[href^="mailto:"]{overflow-wrap:anywhere;}
.nav-brand img,.footer-brand img{object-fit:contain;}
section[id]{scroll-margin-top:100px;}
.menu-toggle{display:none;}
.mobile-early{display:none;}
.mode-card{font-family:inherit;text-align:left;}
@media(min-width:1181px){
  .nav-links{gap:18px;}
  .nav .wrap{gap:16px;}
  .nav-cta .btn{padding:0 16px;font-size:13px;}
  .nav-brand{flex-shrink:0;}
}
@media(max-width:1180px){
  .nav .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;min-height:72px;height:auto;padding-top:10px;padding-bottom:10px;}
  .nav-brand{min-width:0;}
  .nav-cta{grid-column:2;grid-row:1;}
  .nav-primary-cta{display:none;}
  .menu-toggle{grid-column:3;grid-row:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:44px;padding:8px;border:1px solid var(--line-strong);border-radius:10px;background:var(--card);color:var(--teal-deep);font:inherit;font-size:13px;font-weight:700;cursor:pointer;}
  .nav-links{display:none;grid-column:1 / -1;grid-row:2;flex-direction:column;gap:0;border-top:1px solid var(--line);padding-top:8px;}
  .nav.menu-open .nav-links{display:flex;}
  .nav-links a{padding:12px 8px;}
  .mobile-early{display:block;}
  /* Other pages have compact navigation rather than a menu. */
  .nav-inner{height:auto;min-height:72px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px;}
  .nav-right{flex-wrap:wrap;justify-content:flex-end;gap:10px;}
}
@media(max-width:600px){
  .nav .wrap,.nav-inner{padding-left:16px;padding-right:16px;}
  .nav-brand{gap:7px;}
  .nav-brand span{font-size:15px;white-space:nowrap;}
  .nav-toggle button{min-height:38px;padding:8px 10px;}
  .hero-stats{gap:16px;flex-wrap:wrap;}
  .hero-stats div{min-width:65px;}
  .btn{height:auto;min-height:48px;padding-top:12px;padding-bottom:12px;}
  .nav-inner .nav-right{flex:1;}
  .nav-inner .nav-back{min-height:44px;}
  .data-table{table-layout:fixed;overflow-wrap:anywhere;}
  .data-table td,.data-table th{padding:10px 8px;}
}
@media(max-width:360px){
  .nav-brand span{font-size:13px;}
  .nav .wrap{gap:6px;padding-left:12px;padding-right:12px;}
  .nav .nav-brand img{width:30px;height:30px;}
  .nav .nav-toggle button{padding:8px;}
  .menu-toggle{gap:4px;font-size:12px;}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation:none !important;transition:none !important;}
}
