﻿/* Homepage polish for the Codex.mofutbol build. */.mf-brand-strip {
 min-height: 44px;
}.mf-brand-strip-links a {
 white-space: nowrap;
}.mf-bracket-grid {
 display: grid;
 grid-template-columns: repeat(5, minmax(220px, 1fr));
 gap: 1rem;
 overflow-x: auto;
 padding-bottom:.5rem;
}.mf-stat-grid {
 display: grid;
 grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
 gap:.75rem;
 margin-bottom: 1rem;
}.mf-stat-card {
 border: 1px solid var(--border);
 background: var(--surface);
 border-radius: var(--r-md);
 padding: 1rem;
}.mf-stat-card strong {
 display: block;
 font-family: var(--f-display);
 font-size: 1.7rem;
 color: var(--brand-yellow);
 line-height: 1;
}.mf-stat-card span,.mf-fixture-card span,.mf-fixture-card small {
 font-family: var(--f-mono);
 font-size:.62rem;
 color: var(--muted);
 text-transform: uppercase;
 letter-spacing:.08em;
}.mf-filter-row,.mf-chip-row,.mf-control-panel {
 display: flex;
 flex-wrap: wrap;
 gap:.5rem;
 margin: 1rem 0;
}.mf-filter,.mf-chip-row span,.mf-chip-row a {
 border: 1px solid var(--border-s);
 background: var(--surface);
 color: var(--accent);
 border-radius: var(--r-full);
 padding:.45rem .8rem;
 font-family: var(--f-mono);
 font-size:.62rem;
 text-transform: uppercase;
 letter-spacing:.08em;
 text-decoration: none;
}.mf-filter {
 cursor: pointer;
}.mf-filter.active,.mf-bracket-match.selected {
 background: var(--accent);
 border-color: var(--accent);
 color: #090d09;
}.mf-fixture-grid {
 display: grid;
 grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
 gap:.75rem;
 margin-top:.8rem;
}.mf-fixture-card {
 border: 1px solid var(--border);
 border-radius: var(--r-md);
 background: var(--surface-2);
 padding:.9rem;
 display: grid;
 gap:.35rem;
}.mf-fixture-card strong {
 color: var(--text);
 font-family: var(--f-heading);
}.mf-fixture-card--logo {
 align-content: start;
}.mf-matchup {
 display: grid;
 grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
 align-items: center;
 gap:.6rem;
}.mf-matchup strong {
 color: var(--brand-yellow);
 font-family: var(--f-mono);
 font-size:.62rem;
}.mf-inline-select {
 min-height: 38px;
 border: 1px solid var(--border);
 border-radius: var(--r-md);
 background: var(--surface);
 color: var(--text);
 padding:.55rem .7rem;
 font: inherit;
}.mf-competition-grid {
 align-items: start;
}.mf-standings-table th,.mf-standings-table td {
 white-space: nowrap;
}.usoc-hero-panel {
 display: grid;
 grid-template-columns: minmax(0, 1.5fr) minmax(280px,.8fr);
 gap: 1rem;
 align-items: stretch;
 margin-bottom: 1rem;
}.usoc-hero-panel > div,.usoc-next,.usoc-path-step,.usoc-placeholder,.usoc-match-card {
 border: 1px solid var(--border);
 background: var(--surface);
 border-radius: var(--r-md);
 padding: 1rem;
}.usoc-hero-panel h2 {
 margin:.25rem 0.5rem;
 font-family: var(--f-display);
 color: var(--text);
}.usoc-hero-panel p {
 max-width: 72ch;
 color: var(--muted);
 margin: 0;
}.usoc-next {
 display: grid;
 gap:.35rem;
 border-color: rgba(200,242,48,.35);
 background: linear-gradient(135deg, rgba(200,242,48,.12), var(--surface));
}.usoc-next span,.usoc-match-card span,.usoc-path-step span,.usoc-placeholder small {
 font-family: var(--f-mono);
 font-size:.62rem;
 color: var(--muted);
 text-transform: uppercase;
 letter-spacing:.08em;
}.usoc-next strong {
 color: var(--brand-yellow);
 font-family: var(--f-heading);
}.usoc-path {
 display: grid;
 grid-template-columns: repeat(5, minmax(190px, 1fr));
 gap: 1rem;
 overflow-x: auto;
 padding-bottom:.5rem;
}.usoc-path-step {
 position: relative;
 min-height: 170px;
 display: grid;
 gap:.45rem;
 align-content: start;
}.usoc-path-step.is-won {
 border-color: rgba(200,242,48,.45);
}.usoc-path-step.is-next {
 border-color: rgba(255,255,255,.35);
 background: var(--surface-2);
}.usoc-path-step strong {
 color: var(--text);
 font-family: var(--f-heading);
}.usoc-path-step small,.usoc-path-step p,.usoc-match-card small {
 color: var(--muted);
 font-size:.78rem;
 line-height: 1.45;
}.usoc-path-step i {
 position: absolute;
 right: -1rem;
 top: 50%;
 width: 1rem;
 height: 1px;
 background: var(--border-s);
}.usoc-bracket {
 display: grid;
 grid-template-columns: minmax(320px, 1.35fr) repeat(3, minmax(220px, 1fr));
 gap: 1rem;
 overflow-x: auto;
 padding-bottom:.5rem;
}.usoc-bracket-round {
 display: grid;
 gap:.75rem;
 align-content: start;
}.usoc-bracket-round h3 {
 margin: 0;
 font-family: var(--f-mono);
 font-size:.72rem;
 text-transform: uppercase;
 letter-spacing:.12em;
 color: var(--brand-yellow);
}.usoc-match-card {
 display: grid;
 gap:.55rem;
}.usoc-match-card.is-stl {
 border-color: rgba(200,242,48,.55);
 box-shadow: inset 4px 0 0 var(--brand-yellow);
}.usoc-match-teams {
 display: grid;
 gap:.35rem;
}.usoc-match-teams > div {
 display: flex;
 align-items: center;
 gap:.5rem;
}.usoc-match-teams b {
 font-family: var(--f-mono);
 font-size:.6rem;
 color: var(--muted);
 margin-left: 2.3rem;
}.usoc-match-teams em {
 display: inline-flex;
 width: max-content;
 margin-left: 2.3rem;
 border: 1px solid rgba(200,242,48,.25);
 border-radius: 999px;
 color: var(--brand-yellow);
 font-family: var(--f-heading);
 font-style: normal;
 padding: .15rem .55rem;
}.usoc-match-teams .is-winner strong {
 color: var(--brand-yellow);
}.usoc-team-logo,.usoc-team-badge {
 width: 28px;
 height: 28px;
 border-radius: 50%;
 background: #fff;
 object-fit: contain;
 padding: 2px;
 flex: 0 0 auto;
}.usoc-team-badge {
 display: inline-grid;
 place-items: center;
 background: linear-gradient(135deg, var(--brand-yellow), var(--accent));
 color: #090d09;
 font-family: var(--f-mono);
 font-size:.58rem;
 font-weight: 800;
}.usoc-placeholder {
 min-height: 78px;
 display: grid;
 gap:.25rem;
 align-content: center;
 border-style: dashed;
 color: var(--muted);
}.usoc-mini-head {
 margin-top: 1.5rem;
}.usoc-visual-strip {
 display: grid;
 grid-template-columns: minmax(260px,.9fr) minmax(260px, 1.1fr);
 gap: 1rem;
 margin-bottom: 1rem;
}.usoc-logo-card,.usoc-flag-card {
 min-height: 118px;
 border: 1px solid var(--border);
 border-radius: var(--r-md);
 background: var(--surface);
 padding: 1rem;
 display: grid;
 align-content: center;
 gap:.75rem;
 overflow: hidden;
}.usoc-logo-card img {
 width: min(270px, 100%);
 max-height: 70px;
 object-fit: contain;
 filter: invert(1);
}.usoc-logo-card span,.usoc-flag-card strong {
 font-family: var(--f-mono);
 font-size:.66rem;
 color: var(--muted);
 text-transform: uppercase;
 letter-spacing:.1em;
}.usoc-flag-card {
 position: relative;
 isolation: isolate;
}.usoc-flag-card img {
 position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 object-fit: cover;
 opacity:.25;
 z-index: -1;
}.usoc-flag-card strong {
 color: var(--text);
 font-size:.9rem;
}.usoc-image-grid {
 display: grid;
 grid-template-columns: repeat(2, minmax(260px, 1fr));
 gap: 1rem;
 margin-bottom: 1rem;
}.usoc-image-card {
 position: relative;
 min-height: 220px;
 margin: 0;
 border: 1px solid var(--border);
 border-radius: var(--r-md);
 overflow: hidden;
 background: var(--surface);
}.usoc-image-card img {
 width: 100%;
 height: 100%;
 min-height: 220px;
 object-fit: cover;
 display: block;
}.usoc-image-card figcaption {
 position: absolute;
 left: 0;
 right: 0;
 bottom: 0;
 padding: 1rem;
 background: linear-gradient(0deg, rgba(0,0,0,.82), transparent);
 display: grid;
 gap:.25rem;
}.usoc-image-card figcaption span {
 font-family: var(--f-mono);
 font-size:.62rem;
 color: var(--brand-yellow);
 text-transform: uppercase;
 letter-spacing:.1em;
}.usoc-image-card figcaption strong {
 color: #fff;
 font-family: var(--f-heading);
}.usoc-player-grid {
 display: grid;
 grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
 gap: 1rem;
}.usoc-player-card {
 border: 1px solid var(--border);
 border-radius: var(--r-md);
 background: var(--surface);
 padding: 1rem;
 display: grid;
 gap:.55rem;
 align-content: start;
}.usoc-player-top {
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap:.75rem;
}.usoc-player-top img {
 width: 42px;
 height: 42px;
 object-fit: contain;
 border-radius: 50%;
 background: #fff;
 padding: 3px;
}.usoc-player-top span {
 font-family: var(--f-mono);
 font-size:.58rem;
 color: var(--brand-yellow);
 text-transform: uppercase;
 letter-spacing:.1em;
}.usoc-player-card h3 {
 margin:.2rem 0 0;
 color: var(--text);
 font-family: var(--f-heading);
}.usoc-player-card > strong {
 color: var(--muted);
 font-family: var(--f-mono);
 font-size:.66rem;
 text-transform: uppercase;
 letter-spacing:.08em;
}.usoc-player-card p {
 margin: 0;
 color: var(--muted);
 font-size:.82rem;
 line-height: 1.5;
}.mf-control-panel input,.mf-control-panel select {
 min-height: 42px;
 border: 1px solid var(--border);
 border-radius: var(--r-md);
 background: var(--surface);
 color: var(--text);
 padding:.65rem .8rem;
 font: inherit;
}.mf-control-panel input {
 flex: 1 1 260px;
}.mf-team-card {
 position: relative;
 overflow: hidden;
}.mf-logo {
 width: 34px;
 height: 34px;
 border-radius: 50%;
 vertical-align: middle;
}.mf-logo-sm {
 width: 24px;
 height: 24px;
 border-radius: 50%;
 vertical-align: middle;
}.mf-logo-token {
 position: relative;
 display: inline-grid;
 place-items: center;
 flex: 0 0 auto;
 overflow: hidden;
 background: linear-gradient(135deg, var(--brand-yellow), var(--accent));
 border: 1px solid rgba(255,255,255,.22);
 box-shadow: inset 0 0 0 1px rgba(9,13,9,.18);
}.mf-logo-token img {
 position: absolute;
 inset: 2px;
 width: calc(100% - 4px);
 height: calc(100% - 4px);
 object-fit: contain;
 border-radius: inherit;
 background: rgba(255,255,255,.96);
 z-index: 2;
}.mf-logo-fallback {
 font-family: var(--f-mono);
 font-size:.58rem;
 font-weight: 700;
 line-height: 1;
 color: #090d09;
 z-index: 1;
}.mf-logo.mf-logo-fallback {
 font-size:.68rem;
}.mf-team-cell {
 display: flex;
 align-items: center;
 gap:.55rem;
 min-width: 180px;
}.mf-logo-pair {
 display: flex;
 align-items: center;
 gap:.35rem;
}.mf-club-grid {
 display: grid;
 grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
 gap: 1rem;
}.mf-club-card {
 display: grid;
 gap:.75rem;
 align-content: start;
 text-align: left;
}.mf-club-card img {
 width: 78px;
 height: 78px;
 border-radius: 18px;
 object-fit: contain;
 background: #fff;
 padding:.45rem;
 border: 1px solid var(--border);
}.mf-bracket-match {
 display: grid;
 gap:.35rem;
 margin-top:.8rem;
 padding:.8rem;
 border: 1px solid var(--border);
 border-radius: var(--r-md);
 background: var(--surface-2);
 color: var(--text);
 text-align: left;
 cursor: pointer;
}.mf-bracket-slot,.mf-bracket-match small {
 font-family: var(--f-mono);
 font-size:.62rem;
 color: var(--muted);
}.mf-page-visual {
 width: min(1180px, calc(100% - 2rem));
 margin: 1.25rem auto;
 display: grid;
 grid-template-columns: 150px minmax(0, 1fr) minmax(280px,.8fr);
 gap: 1rem;
 align-items: stretch;
}.mf-page-visual-logo,.mf-page-visual-copy,.mf-page-visual-image {
 border: 1px solid var(--border);
 border-radius: var(--r-md);
 background: var(--surface);
 overflow: hidden;
}.mf-page-visual-logo {
 display: grid;
 place-items: center;
 gap:.75rem;
 padding: 1rem;
 text-align: center;
}.mf-page-visual-logo img {
 max-width: 92px;
 max-height: 92px;
 object-fit: contain;
 border-radius: 18px;
 background: rgba(255,255,255,.96);
 padding:.5rem;
}.mf-page-visual-logo span,.mf-page-visual-image figcaption span,.mf-page-visual-chips span,.mf-page-visual-image figcaption span + span {
 font-family: var(--f-mono);
 font-size:.6rem;
 color: var(--muted);
 text-transform: uppercase;
 letter-spacing:.08em;
}.mf-page-visual-copy {
 padding: 1.2rem;
 display: grid;
 align-content: center;
 gap:.6rem;
}.mf-page-visual-copy h2 {
 margin: 0;
 color: var(--text);
 font-family: var(--f-display);
 font-size: clamp(1.35rem, 2.4vw, 2.1rem);
 line-height: 1.05;
}.mf-page-visual-copy p {
 margin: 0;
 color: var(--muted);
 max-width: 72ch;
 line-height: 1.55;
}.mf-page-visual-chips {
 display: flex;
 flex-wrap: wrap;
 gap:.45rem;
}.mf-page-visual-chips span {
 border: 1px solid var(--border-s);
 border-radius: var(--r-full);
 padding:.38rem .65rem;
 color: var(--accent);
 background: rgba(255,255,255,.03);
}.mf-page-visual-image {
 position: relative;
 min-height: 190px;
 margin: 0;
}.mf-page-visual-image img {
 width: 100%;
 height: 100%;
 min-height: 190px;
 object-fit: cover;
 display: block;
}.mf-page-visual-image figcaption {
 position: absolute;
 inset: auto 0 0;
 padding: 1rem;
 display: flex;
 flex-wrap: wrap;
 gap:.35rem;
 background: linear-gradient(0deg, rgba(0,0,0,.82), transparent);
}.mf-page-visual-image figcaption span:first-child {
 width: 100%;
 color: var(--brand-yellow);
}.mf-page-visual-image figcaption span:not(:first-child) {
 border: 1px solid rgba(255,255,255,.22);
 border-radius: var(--r-full);
 color: #fff;
 padding:.25rem .5rem;
 background: rgba(0,0,0,.35);
}.mf-unified-hero {
 position: relative;
 isolation: isolate;
 min-height: clamp(360px, 48vh, 560px);
 display: flex;
 align-items: center;
 padding: clamp(2.75rem, 5vw, 5rem) 0 clamp(2.25rem, 4vw, 4rem) !important;
 border-bottom: 1px solid var(--border);
 background-size: cover !important;
 background-position: center !important;
 overflow: hidden;
}.mf-unified-hero::after {
 content: '';
 position: absolute;
 inset: 0;
 z-index: -1;
 background:
 linear-gradient(90deg, rgba(6,10,6,.94) 0%, rgba(6,10,6,.82) 44%, rgba(6,10,6,.44) 100%),
 radial-gradient(circle at 18% 28%, rgba(200,242,48,.12), transparent 34%);
 pointer-events: none;
}.mf-unified-hero-container {
 width: min(1180px, calc(100% - 2rem));
}.mf-unified-hero-grid {
 display: grid;
 grid-template-columns: minmax(220px,.72fr) minmax(0, 1.5fr);
 gap: clamp(1.2rem, 3vw, 2.5rem);
 align-items: center;
}.mf-unified-hero-title {
 max-width: 820px;
 margin:.45rem 0.75rem !important;
 font-size: clamp(2rem, 5vw, 4.6rem) !important;
 line-height:.96 !important;
 letter-spacing: 0 !important;
}.mf-unified-hero-copy {
 max-width: 72ch !important;
 font-size: clamp(.92rem, 1.25vw, 1.08rem) !important;
 line-height: 1.65 !important;
}.mf-unified-hero-actions {
 display: flex;
 flex-wrap: wrap;
 gap:.75rem;
 margin-top: 1.1rem !important;
}.mf-unified-hero-badge {
 max-width: 260px;
}.mf-unified-hero.stl-city-crest,.mf-unified-hero.lc-icon,.mf-unified-hero.nav-logo-img {
 box-shadow: 0 20px 70px rgba(0,0,0,.35);
}.mf-unified-hero.stl-eyebrow,.mf-unified-hero.section-label {
 color: var(--brand-yellow);
}.mf-unified-hero.stl-season-record,.mf-unified-hero.us-summary-strip {
 backdrop-filter: blur(8px);
}.article-card-grid {
 display: grid;
 grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
 gap: 1rem;
}.article-card {
 display: grid;
 border: 1px solid var(--border);
 border-radius: var(--r-md);
 background: var(--surface);
 overflow: hidden;
}.article-card img {
 width: 100%;
 height: 180px;
 object-fit: cover;
 background: var(--surface-2);
}.article-card > div {
 padding: 1rem;
 display: grid;
 gap:.45rem;
}.article-card span,.article-card small {
 font-family: var(--f-mono);
 font-size:.62rem;
 color: var(--muted);
 text-transform: uppercase;
 letter-spacing:.08em;
}.article-card h3 {
 margin: 0;
 color: var(--text);
 font-family: var(--f-heading);
}.article-card p {
 margin: 0;
 color: var(--muted);
 line-height: 1.5;
}.article-card--full {
 grid-column: span 1;
}.article-body {
 display: grid;
 gap:.75rem;
 margin-top:.5rem;
 padding-top:.75rem;
 border-top: 1px solid var(--border);
}.article-body p {
 color: var(--text);
 line-height: 1.65;
}.article-card small a {
 color: var(--brand-yellow);
 text-decoration: none;
}.portal-form {
 display: grid;
 gap:.75rem;
}.portal-form input,.portal-form textarea {
 width: 100%;
 border: 1px solid var(--border);
 border-radius: var(--r-md);
 background: var(--surface-2);
 color: var(--text);
 padding:.75rem .85rem;
 font: inherit;
}.portal-form textarea {
 min-height: 180px;
 resize: vertical;
}.portal-check {
 color: var(--muted);
 font-family: var(--f-mono);
 font-size:.72rem;
}

@media(max-width:768px) {.mf-brand-strip {
 gap:.65rem !important;
 padding:.55rem 1rem !important;
 }.mf-brand-strip > div[style*="width:1px"] {
 display: none !important;
 }.mf-brand-strip-links {
 width: 100%;
 margin-left: 0 !important;
 gap:.5rem !important;
 }.mf-brand-strip-links a {
 font-size:.6rem !important;
 }.mf-home-hero {
 padding-bottom: 0 !important;
 }.mf-home-hero-inner {
 padding-bottom: 1.25rem !important;
 }.mf-hero-ticker {
 position: static !important;
 margin-top:.5rem;
 }.mf-podcast-grid,.mf-explore-secondary {
 grid-template-columns: 1fr !important;
 gap: 1rem !important;
 }.mf-bracket-grid {
 grid-template-columns: 1fr;
 overflow-x: visible;
 }.usoc-visual-strip,.usoc-image-grid,.usoc-hero-panel,.mf-page-visual {
 grid-template-columns: 1fr;
 }.mf-page-visual {
 width: min(100% - 1rem, 1180px);
 }.mf-unified-hero {
 min-height: auto;
 padding: 2.25rem 0 2rem !important;
 }.mf-unified-hero-grid {
 grid-template-columns: 1fr;
 }.mf-unified-hero-badge {
 max-width: none;
 }
}

@media(max-width:520px) {.mf-brand-strip {
 display: none !important;
 }.mf-hero-ticker {
 display: none !important;
 }.mf-home-hero .stl-city-badge {
 display: none;
 }.mf-home-hero .hero-ctas .stl-btn {
 width: 100%;
 justify-content: center;
 }.mf-home-hero .stl-pill {
 font-size:.58rem;
 }.stat-band-inner {
 grid-template-columns: repeat(2, minmax(0, 1fr));
 }
}
