/* ============================================================
   The League Between — shared stylesheet
   Fonts self-hosted (latin subset). Page layout stays inline
   (pixel-perfect from design source); this file holds the base,
   hover states (that must beat inline styles via !important),
   responsive nav, and JS-driven component states.
   ============================================================ */

/* ---- Self-hosted fonts (latin) ---- */
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/barlow-condensed-600.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/barlow-condensed-700.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/source-sans-3-400.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/source-sans-3-600.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/source-sans-3-700.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---- Base ---- */
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:'Source Sans 3',sans-serif;background:oklch(0.98 0.01 85);color:oklch(0.28 0.04 315);-webkit-font-smoothing:antialiased}
a{color:oklch(0.33 0.09 315)}
a:hover{color:oklch(0.54 0.15 33)}
img{max-width:100%}
:focus-visible{outline:3px solid oklch(0.63 0.17 33);outline-offset:2px;border-radius:4px}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:-999px;top:0;z-index:100;background:oklch(0.63 0.17 33);color:#fff;padding:10px 16px;border-radius:0 0 8px 0;text-decoration:none;font-weight:700}
.skip-link:focus{left:0}

/* ---- Hover utilities (must override inline base styles) ---- */
.h-coral:hover{background:oklch(0.53 0.15 33)!important;color:#fff!important}
.h-plum:hover{background:oklch(0.24 0.06 315)!important;color:#fff!important}
.h-gold:hover{background:#fff!important;color:oklch(0.24 0.06 315)!important}
.h-outline:hover{border-color:oklch(0.33 0.09 315)!important}
.h-outline-light:hover{border-color:#fff!important;color:#fff!important}
.h-nav:hover{color:oklch(0.63 0.17 33)!important}
.h-foot:hover{color:#fff!important}
.h-foot-alert:hover{color:oklch(0.85 0.12 90)!important}
.h-division:hover{border-color:oklch(0.63 0.17 33)!important}

/* ---- Responsive navigation (replaces JS width detection) ---- */
.nav-desktop{display:flex;align-items:center;gap:18px;flex:1;justify-content:center;flex-wrap:nowrap}
.nav-actions{display:flex;align-items:center;gap:10px;flex:none}
.nav-mobile{display:none;align-items:center;gap:10px;flex:1;justify-content:flex-end}
.nav-mobile-panel{display:none;border-top:1px solid oklch(0.9 0.015 315);padding:14px 20px 20px;background:oklch(0.98 0.01 85)}
.nav-mobile-panel.open{display:grid;gap:4px}
@media(max-width:1120px){
  .nav-desktop,.nav-actions{display:none}
  .nav-mobile{display:flex}
}

/* ---- FAQ accordion (JS-driven) ---- */
.faq-answer{display:none}
.faq-item.open .faq-answer{display:block}

/* ---- Find a Team filter ---- */
.team-card.hidden{display:none}

/* ---- Reduced motion ---- */
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
