/* Generated route bundle. Run npm run build:route-assets. */
/* Source: /assets/css/tokens.css */
/*
 * Local-first type system. The compact Latin files are packaged with every
 * deployment, so production does not depend on a third-party font host.
 */
@font-face {
  font-family: "Bebas Neue";
  src: url("/assets/fonts/bebas-neue-latin-400.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: optional;
}

@font-face {
  font-family: "Montserrat";
  src: url("/assets/fonts/montserrat-latin-variable.woff2") format("woff2-variations");
  font-style: normal;
  font-weight: 400 700;
  font-display: optional;
}

@font-face {
  font-family: "Archivo Black";
  src: url("/assets/fonts/archivo-black-latin-400.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: optional;
}

@font-face {
  font-family: "Outfit";
  src: url("/assets/fonts/outfit-latin-variable.woff2") format("woff2-variations");
  font-style: normal;
  font-weight: 100 900;
  font-display: optional;
}

@font-face {
  font-family: "Archivo";
  src: url("/assets/fonts/archivo-latin-variable.woff2") format("woff2-variations");
  font-style: normal;
  font-weight: 100 900;
  font-display: optional;
}

@font-face {
  font-family: "Inter";
  src: url("/assets/fonts/inter-latin-variable.woff2") format("woff2-variations");
  font-style: normal;
  font-weight: 100 900;
  font-display: optional;
}

@font-face {
  font-family: "JetBrains Mono";
  src: url("/assets/fonts/jetbrains-mono-latin-variable.woff2") format("woff2-variations");
  font-style: normal;
  font-weight: 100 800;
  font-display: optional;
}

:root {
  /* Brand */
  --brand-red: #E8302A;
  --brand-yellow: #F5C842;
  --brand-green: #2DB84B;
  --brand-black: #0A0A0A;
  --brand-circuit: #1E9448;

  /* Core aliases */
  --color-bg: #080c08;
  --color-surface: #0f1510;
  --color-surface-2: #16201a;
  --color-surface-3: #1c2b20;
  --color-text: #f0f4f0;
  --color-muted: #7a907a;
  --color-border: rgba(245, 200, 66, 0.14);
  --color-border-strong: rgba(245, 200, 66, 0.3);
  --color-accent: #F5C842;
  --color-accent-hover: #ffd84f;
  --color-accent-dim: #c9a030;
  --color-accent-soft: rgba(245, 200, 66, 0.1);
  --color-success: #2DB84B;
  --color-danger: #ff4d4d;
  --color-overlay: rgba(8, 12, 8, 0.78);

  /* Legacy compatibility */
  --bg: var(--color-bg);
  --surface: var(--color-surface);
  --surface-2: var(--color-surface-2);
  --surface-3: var(--color-surface-3);
  --text: var(--color-text);
  --muted: var(--color-muted);
  --border: var(--color-border);
  --border-s: var(--color-border-strong);
  --accent: var(--color-accent);
  --accent-h: var(--color-accent-hover);
  --accent-dim: var(--color-accent-dim);
  --accent-bg: var(--color-accent-soft);
  --red: var(--brand-red);
  --green-b: var(--brand-green);

  /* Typography */
  --font-display: "Bebas Neue", sans-serif;
  --font-heading: "Bebas Neue", sans-serif;
  --font-body: "Montserrat", sans-serif;
  --font-ui: "Montserrat", sans-serif;
  --font-mono: "Montserrat", sans-serif;
  --f-display: var(--font-display);
  --f-heading: var(--font-heading);
  --f-body: var(--font-body);
  --f-sans: var(--font-body);
  --f-mono: var(--font-ui);

  /* Sizing */
  --radius-xs: 0.375rem;
  --radius-sm: 0.5rem;
  --radius-md: 0.875rem;
  --radius-lg: 1.25rem;
  --radius-xl: 1.75rem;
  --radius-full: 999px;
  --r-sm: var(--radius-sm);
  --r-md: var(--radius-md);
  --r-lg: var(--radius-lg);
  --r-full: var(--radius-full);

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4rem;
  --space-9: 6rem;
  --space-section: clamp(1.25rem, 2.8vw, 2.35rem);
  --space-section-tight: clamp(0.95rem, 2vw, 1.6rem);
  --space-section-mobile: clamp(0.9rem, 4.8vw, 1.35rem);
  --space-card: clamp(0.85rem, 1.4vw, 1.15rem);
  --space-card-lg: clamp(1rem, 1.8vw, 1.45rem);
  --space-hero: clamp(1.2rem, 3.2vw, 2.6rem);
  --space-gap: clamp(0.7rem, 1.5vw, 1.15rem);
  --space-gap-lg: clamp(0.95rem, 2vw, 1.5rem);

  --nav-height: 4.5rem;
  --nav-h: var(--nav-height);
  --max-content: 80rem;
  --max-copy: 42rem;
  --max-readable: 68ch;
  --max-w: var(--max-content);

  --shadow-sm: 0 2px 10px rgba(0, 0, 0, 0.32);
  --shadow-md: 0 8px 28px rgba(0, 0, 0, 0.38);
  --shadow-lg: 0 20px 60px rgba(0, 0, 0, 0.46);
  --glow: 0 0 32px rgba(245, 200, 66, 0.2);

  --transition-fast: 160ms ease;
  --transition-base: 220ms ease;
  --motion-fast: 140ms;
  --motion-base: 220ms;
  --motion-slow: 360ms;
  --motion-stagger: 42ms;
  --motion-distance: 18px;
  --motion-lift: -4px;
  --motion-press: 0.985;
  --motion-fade-start: 0.001;
  --ease-standard: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-snappy: cubic-bezier(0.2, 0.9, 0.2, 1);
  --type-eyebrow: clamp(0.58rem, 0.12vw + 0.55rem, 0.68rem);
  --type-overline: clamp(0.62rem, 0.14vw + 0.58rem, 0.72rem);
  --type-hero: clamp(2rem, 4vw, 3.25rem);
  --type-section: clamp(1.5rem, 2.5vw, 2.25rem);
  --type-card: clamp(1rem, 1.1vw, 1.2rem);
  --type-body: clamp(1rem, 0.18vw + 0.98rem, 1.0625rem);
  --type-body-compact: clamp(0.9rem, 0.08vw + 0.88rem, 0.96rem);
  --type-meta: clamp(0.8125rem, 0.08vw + 0.8rem, 0.875rem);
  --type-button: clamp(0.82rem, 0.08vw + 0.8rem, 0.9rem);
  --type-stat-number: clamp(1.2rem, 1.5vw, 1.9rem);
  --type-stat-label: clamp(0.62rem, 0.08vw + 0.6rem, 0.72rem);
}

[data-theme="light"] {
  --color-bg: #f8f5ef;
  --color-surface: #ffffff;
  --color-surface-2: #f2ede4;
  --color-surface-3: #e8e0d0;
  --color-text: #0a0c0a;
  --color-muted: #5a6a5a;
  --color-border: rgba(0, 0, 0, 0.1);
  --color-border-strong: rgba(0, 0, 0, 0.18);
  --color-accent: #c8a020;
  --color-accent-hover: #d4ac28;
  --color-accent-dim: #9f7f15;
  --color-accent-soft: rgba(200, 160, 32, 0.08);
  --color-overlay: rgba(248, 245, 239, 0.82);
}


/* Source: /assets/css/base.css */
html {
  box-sizing: border-box;
  font-size: 16px;
  scroll-behavior: smooth;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

body {
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(circle at top right, rgba(45, 184, 75, 0.08), transparent 28%),
    radial-gradient(circle at top left, rgba(245, 200, 66, 0.08), transparent 24%),
    var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-body);
  line-height: 1.58;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}

img,
picture,
svg,
video {
  display: block;
  max-width: 100%;
}

img {
  height: auto;
}

a {
  color: inherit;
  text-decoration: none;
}

button,
input,
select,
textarea {
  font: inherit;
}

button {
  border: 0;
  background: transparent;
  cursor: pointer;
}

ul[role="list"],
ol[role="list"] {
  padding: 0;
  margin: 0;
  list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-family: var(--font-heading);
  line-height: 1.08;
  color: var(--color-text);
}

h1 {
  font-family: var(--font-display);
  font-size: var(--type-hero);
  letter-spacing: -0.03em;
}

h2 {
  font-size: var(--type-section);
  letter-spacing: -0.025em;
}

h3 {
  font-size: clamp(1.15rem, 1.8vw, 1.5rem);
  letter-spacing: -0.015em;
}

p {
  margin: 0;
  color: var(--color-muted);
  max-width: min(75ch, 100%);
  font-size: var(--type-body);
  line-height: 1.68;
}

strong {
  color: var(--color-text);
}

small,
.small {
  font-size: 0.8125rem;
}

main {
  display: block;
}

main :where(p, li) {
  max-width: min(75ch, 100%);
}

:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: 3px;
}

::selection {
  background: var(--color-accent);
  color: #111;
}

.skip-link {
  position: absolute;
  left: 1rem;
  top: -3rem;
  z-index: 1000;
  padding: 0.75rem 1rem;
  border-radius: var(--radius-sm);
  background: var(--color-accent);
  color: #111;
  font-weight: 700;
  transition: top var(--transition-fast);
}

.skip-link:focus {
  top: 1rem;
}

.eyebrow,
.section-label,
.site-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--font-mono);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--color-accent);
}

.lede,
.site-lede {
  font-size: clamp(1rem, 0.3vw + 0.98rem, 1.0625rem);
  line-height: 1.7;
  color: color-mix(in srgb, var(--color-text) 78%, transparent);
}

body.site-app-ready {
  padding-top: var(--nav-height);
}

@media (max-width: 48rem) {
  body.site-app-ready {
    padding-top: calc(var(--nav-height) - 0.25rem);
  }
}


/* Source: /assets/css/layout.css */
.site-shell {
  min-height: 100vh;
  display: grid;
  grid-template-rows: auto 1fr auto;
}

.site-container,
.container {
  width: min(100% - 2rem, var(--max-content));
  margin-inline: auto;
}

.site-section {
  padding-block: var(--space-section);
}

.site-section--tight {
  padding-block: var(--space-section-tight);
}

.site-section--flush-top {
  padding-top: var(--space-4);
}

.site-section--alt {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.015), rgba(255, 255, 255, 0));
}

.site-stack {
  display: grid;
  gap: var(--space-gap-lg);
}

.site-stack--sm {
  gap: var(--space-gap);
}

.site-stack--lg {
  gap: var(--space-section);
}

.site-cluster {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-gap);
}

.site-split {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  justify-content: space-between;
  gap: var(--space-gap-lg);
}

.site-grid {
  display: grid;
  gap: var(--space-gap-lg);
}

.site-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.site-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.site-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.site-sidebar {
  display: grid;
  gap: var(--space-gap-lg);
  grid-template-columns: minmax(0, 1.45fr) minmax(18rem, 0.8fr);
  align-items: start;
}

.site-hero {
  position: relative;
  overflow: clip;
  padding-block: var(--space-hero);
}

.site-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(135deg, rgba(8, 12, 8, 0.92), rgba(8, 12, 8, 0.62)),
    radial-gradient(circle at top right, rgba(45, 184, 75, 0.12), transparent 30%);
  pointer-events: none;
}

.site-hero > * {
  position: relative;
  z-index: 1;
}

.site-hero__content {
  display: grid;
  gap: var(--space-gap-lg);
  max-width: 48rem;
}

.site-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-gap);
}

.site-rail {
  display: grid;
  gap: var(--space-gap);
}

@media (max-width: 70rem) {
  .site-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .site-sidebar {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 48rem) {
  .site-section {
    padding-block: var(--space-section-mobile);
  }

  .site-grid--2,
  .site-grid--3,
  .site-grid--4 {
    grid-template-columns: 1fr;
  }

  .site-container,
  .container {
    width: min(100% - 1.25rem, var(--max-content));
  }
}


/* Source: /assets/css/components.css */
.site-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 2.75rem;
  padding: 0.8rem 1.15rem;
  border: 1px solid transparent;
  border-radius: var(--radius-md);
  font-weight: 700;
  color: var(--color-text);
  font-size: var(--type-button);
  transition:
    transform var(--motion-fast) var(--ease-standard),
    border-color var(--motion-fast) var(--ease-standard),
    background-color var(--motion-fast) var(--ease-standard),
    box-shadow var(--motion-fast) var(--ease-standard),
    color var(--motion-fast) var(--ease-standard);
}

/* Shared conversion hierarchy: one clear next step per page. */
:root {
  --mf-conversion-primary: #d9ff36;
  --mf-conversion-ink: #07140c;
}

.mf-conversion-primary {
  background: linear-gradient(135deg, #ffe343 0%, var(--mf-conversion-primary) 66%, #56df8c 100%) !important;
  border-color: transparent !important;
  color: var(--mf-conversion-ink) !important;
  box-shadow: 0 8px 24px rgba(187, 250, 51, 0.16);
  font-weight: 800 !important;
  min-block-size: 44px;
}

.mf-conversion-secondary {
  min-block-size: 44px;
}

.mf-conversion-primary:focus-visible,
.mf-conversion-secondary:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
}

.site-button:hover {
  transform: translateY(var(--motion-lift));
}

.site-button:active {
  transform: scale(var(--motion-press));
}

.site-button--primary {
  background: var(--color-accent);
  color: #111;
}

.site-button--primary:hover {
  background: var(--color-accent-hover);
  box-shadow: var(--glow);
}

.site-button--secondary {
  background: var(--color-surface-2);
  border-color: var(--color-border);
}

.site-button--ghost {
  border-color: var(--color-border-strong);
  color: var(--color-accent);
}

.site-button--ghost:hover {
  background: var(--color-accent-soft);
  border-color: var(--color-accent);
}

.site-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.4rem 0.8rem;
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-full);
  background: rgba(255, 255, 255, 0.03);
  font-family: var(--font-mono);
  font-size: var(--type-overline);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-accent);
}

.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 90;
  min-height: var(--nav-height);
  backdrop-filter: blur(18px);
  background: color-mix(in srgb, var(--color-bg) 88%, transparent);
  border-bottom: 1px solid var(--color-border);
}

.site-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  min-height: var(--nav-height);
}

.site-brand {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  min-width: 0;
}

.site-brand__logo {
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 50%;
  object-fit: contain;
  background: rgba(255, 255, 255, 0.03);
}

.site-brand__text {
  display: grid;
  gap: 0.1rem;
  min-width: 0;
}

.site-brand__name {
  font-family: var(--font-display);
  font-size: 1.2rem;
  line-height: 1;
  color: var(--color-text);
}

.site-brand__tag {
  font-family: var(--font-mono);
  font-size: var(--type-eyebrow);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--color-accent);
}

.site-nav {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.site-nav__list {
  display: flex;
  align-items: center;
  gap: 0.2rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-nav__item {
  position: relative;
}

.site-nav__link,
.site-nav__toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  min-height: 2.6rem;
  padding: 0.7rem 0.95rem;
  border-radius: var(--radius-sm);
  color: var(--color-muted);
  font-weight: 600;
  font-size: var(--type-button);
  transition:
    background-color var(--motion-fast) var(--ease-standard),
    color var(--motion-fast) var(--ease-standard),
    transform var(--motion-fast) var(--ease-standard);
}

.site-nav__mini-logo {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  object-fit: cover;
  flex: 0 0 auto;
}

.site-nav__link:hover,
.site-nav__link[aria-current="page"],
.site-nav__toggle:hover,
.site-nav__toggle[aria-expanded="true"],
.site-nav__item.is-current > .site-nav__toggle {
  color: var(--color-text);
  background: var(--color-surface-2);
  transform: translateY(-1px);
}

.site-nav__toggle::after {
  content: "";
  width: 0.45rem;
  height: 0.45rem;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-1px);
}

.site-nav__panel {
  position: absolute;
  left: 0;
  top: calc(100% + 0.55rem);
  min-width: 13rem;
  padding: 0.45rem;
  display: grid;
  gap: 0.2rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  box-shadow: var(--shadow-md);
  opacity: 0;
  pointer-events: none;
  transform: translateY(calc(var(--motion-distance) * -0.5));
  transition:
    opacity var(--motion-fast) var(--ease-standard),
    transform var(--motion-fast) var(--ease-standard);
}

.site-nav__item.is-open > .site-nav__panel {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.site-nav__panel a {
  display: block;
  padding: 0.7rem 0.85rem;
  border-radius: var(--radius-sm);
  color: var(--color-muted);
}

.site-nav__panel a:hover,
.site-nav__panel a[aria-current="page"] {
  background: var(--color-surface-2);
  color: var(--color-text);
}

.site-header__actions {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.site-nav__menu-button,
.site-theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.85rem;
  height: 2.85rem;
  border-radius: var(--radius-sm);
  background: var(--color-surface-2);
  color: var(--color-text);
  border: 1px solid var(--color-border);
}

.site-nav__menu-button {
  display: none;
  flex-direction: column;
  gap: 0.22rem;
}

.site-nav__menu-button span {
  width: 1rem;
  height: 2px;
  background: currentColor;
  border-radius: 999px;
}

.site-drawer {
  position: fixed;
  inset: var(--nav-height) 0 0 auto;
  z-index: 1200;
  width: min(100%, 24rem);
  padding: 1rem;
  display: grid;
  align-content: start;
  gap: 0.4rem;
  background: var(--color-bg);
  border-left: 1px solid var(--color-border);
  transform: translateX(100%);
  transition: transform var(--transition-base);
  overflow-y: auto;
}

.site-drawer[hidden],
.site-backdrop[hidden],
[data-site-drawer][hidden],
[data-nav-backdrop][hidden] {
  display: none !important;
}

.site-drawer.is-open {
  transform: translateX(0);
}

.site-drawer__section {
  display: grid;
  gap: 0.3rem;
  padding-block: 0.45rem;
}

.site-drawer__title {
  padding: 0.55rem 0.75rem 0.25rem;
  font-family: var(--font-mono);
  font-size: 0.68rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--color-muted);
}

.site-drawer a {
  display: block;
  min-height: 2.9rem;
  padding: 0.95rem 0.95rem;
  border-radius: var(--radius-md);
  color: var(--color-muted);
  background: transparent;
}

.site-drawer a:hover,
.site-drawer a[aria-current="page"] {
  color: var(--color-text);
  background: var(--color-surface-2);
}

.site-backdrop {
  position: fixed;
  inset: var(--nav-height) 0 0;
  z-index: 1190;
  background: var(--color-overlay);
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--transition-fast);
}

.site-backdrop.is-open {
  opacity: 1;
  pointer-events: auto;
}

.site-footer {
  border-top: 1px solid var(--color-border);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.02), rgba(255, 255, 255, 0));
  margin-top: 0;
}

.site-footer__inner {
  padding-block: clamp(1.35rem, 2.4vw, 2.25rem) clamp(1rem, 1.8vw, 1.55rem);
  display: grid;
  grid-template-columns: minmax(17rem, 1.2fr) repeat(auto-fit, minmax(8rem, 0.8fr));
  gap: clamp(1rem, 2vw, 1.7rem);
  align-items: start;
}

.site-footer__partner-link {
  display: grid;
  grid-template-columns: 3.15rem minmax(0, 1fr);
  gap: 0.55rem;
  align-items: center;
}

.site-footer__partner-logo {
  display: block;
  width: 3.15rem;
  max-width: 3.15rem;
  height: 1.85rem;
  object-fit: contain;
  padding: 0.25rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0.45rem;
  background: rgba(6, 10, 7, 0.82);
}

.site-footer__brand {
  display: grid;
  gap: 0.85rem;
}

.site-footer__copy {
  max-width: 38ch;
  margin: 0;
  font-size: 0.84rem;
  line-height: 1.45;
}

.site-newsletter-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(16rem, 0.9fr);
  align-items: start;
  gap: 1rem;
  padding: 1.1rem;
  border: 1px solid rgba(245, 200, 66, 0.18);
  border-radius: var(--radius-lg);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0.015)),
    linear-gradient(135deg, rgba(232, 48, 42, 0.09), rgba(245, 200, 66, 0.08), rgba(45, 184, 75, 0.07));
}

.site-newsletter-shell--footer {
  margin-top: 0.4rem;
  grid-template-columns: 1fr;
}

.site-newsletter-shell__content,
.site-newsletter-shell__side {
  display: grid;
  gap: 0.75rem;
}

.site-newsletter-shell__title {
  margin: 0;
  font-size: var(--type-section);
  line-height: 1.02;
  text-wrap: balance;
}

.site-newsletter-shell__copy {
  margin: 0;
  color: var(--color-muted);
  max-width: 42ch;
  font-size: var(--type-body);
}

.site-newsletter-shell__trust {
  font-family: var(--font-mono);
  font-size: 0.7rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-muted);
}

.site-newsletter-form {
  display: grid;
  gap: 0.7rem;
}

.site-newsletter-form input[type="text"],
.site-newsletter-form input[type="email"] {
  width: 100%;
  min-height: 3rem;
  padding: 0.85rem 1rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  background: rgba(0, 0, 0, 0.24);
  color: var(--color-text);
}

.site-newsletter-form input[type="email"]::placeholder {
  color: var(--color-muted);
}

.site-newsletter-form input[type="text"]::placeholder {
  color: var(--color-muted);
}

.site-newsletter-form input[type="text"]:focus-visible,
.site-newsletter-form input[type="email"]:focus-visible {
  border-color: var(--color-accent);
  outline: 2px solid rgba(245, 200, 66, 0.2);
  outline-offset: 2px;
}

.site-newsletter-form .site-button {
  width: 100%;
}

.site-newsletter-form__status {
  margin: 0;
  font-size: var(--type-body-compact);
  line-height: 1.5;
}

.site-newsletter-form__status a {
  color: var(--color-accent);
}

.site-newsletter-form__status.is-success {
  color: var(--color-text);
}

.site-newsletter-form__status.is-error {
  color: #ffb5a7;
}

.site-newsletter-form__status.is-loading {
  color: var(--color-muted);
}

.site-newsletter-form__prefs {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: rgba(0, 0, 0, 0.14);
}

.site-newsletter-form__prefs summary {
  cursor: pointer;
  padding: 0.8rem 1rem;
  font-weight: 600;
  color: var(--color-text);
}

.site-newsletter-form__prefs-body {
  display: grid;
  gap: 0.8rem;
  padding: 0 1rem 1rem;
}

.site-newsletter-form__interests {
  margin: 0;
  padding: 0;
  border: 0;
  display: grid;
  gap: 0.6rem;
}

.site-newsletter-form__interests legend {
  padding: 0;
  font-family: var(--font-mono);
  font-size: 0.68rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-muted);
}

.site-newsletter-form__interest-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}

.site-newsletter-form__interest {
  position: relative;
}

.site-newsletter-form__interest input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.site-newsletter-form__interest span {
  display: inline-flex;
  align-items: center;
  min-height: 2.2rem;
  padding: 0.55rem 0.8rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  background: rgba(255, 255, 255, 0.03);
  font-size: 0.82rem;
  color: var(--color-muted);
  transition: border-color var(--transition-fast), background-color var(--transition-fast), color var(--transition-fast);
}

.site-newsletter-form__interest input:checked + span,
.site-newsletter-form__interest input:focus-visible + span {
  border-color: var(--color-accent);
  background: var(--color-accent-soft);
  color: var(--color-text);
}

.site-newsletter-form__helper {
  margin: 0;
  color: var(--color-muted);
  font-size: var(--type-body-compact);
  line-height: 1.45;
}

.site-newsletter-form__consent {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  color: var(--color-muted);
  font-size: var(--type-body-compact);
  line-height: 1.45;
}

.site-newsletter-form__consent input {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  margin-top: 0.05rem;
  accent-color: var(--color-accent);
}

.stl-eyebrow,
.mf-daily-kicker,
.mf-board-top,
.mf-hero-side__eyebrow,
.mf-daily-meta {
  font-size: var(--type-eyebrow) !important;
}

:where(.stl-city-hero, .stl-local-hero, .mf-world-hero, .mf-africa-hero, .mf-unified-hero, .mf-media-hero, .mf-editorial-hero, .mf-daily-hero) :where(.stl-heading, h1, .mf-unified-hero-title) {
  font-size: var(--type-hero) !important;
  line-height: 0.95 !important;
  letter-spacing: -0.03em;
  text-wrap: balance;
}

.stl-subheading,
.mf-hero-side__title,
.mf-wc-card h3,
.site-newsletter-shell__title,
.mf-front-page-grid :where(.mf-front-main h3, .mf-front-panel h3),
.mf-link-tile strong {
  font-size: var(--type-section);
  line-height: 1.04;
  text-wrap: balance;
}

.mf-link-tile strong,
.mf-front-page-grid :where(.mf-front-main h3, .mf-front-panel h3),
.mf-watch-card strong,
.mf-command-card h3,
.mf-media-card-grid h3,
.mf-wire-card strong {
  font-size: var(--type-card);
  line-height: 1.12;
}

body,
.stl-muted,
.mf-lede,
.site-newsletter-shell__copy,
.mf-hero-side__copy,
.mf-link-tile small,
.mf-front-page-grid p {
  font-size: var(--type-body);
}

small,
.mf-mini-note,
.mf-hero-list small,
.mf-wire-card small,
.mf-wire-meta {
  font-size: var(--type-meta);
}

.mo-reveal {
  opacity: var(--motion-fade-start);
  transform: translate3d(0, var(--motion-distance), 0);
  transition:
    opacity var(--motion-base) var(--ease-standard),
    transform var(--motion-base) var(--ease-standard);
  will-change: opacity, transform;
}

.mo-reveal.is-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.mo-reveal--hero {
  transform: translate3d(0, calc(var(--motion-distance) * 0.7), 0);
}

.mo-reveal--media {
  transform: translate3d(0, calc(var(--motion-distance) * 0.5), 0) scale(0.985);
}

.mo-reveal--media.is-visible {
  transform: translate3d(0, 0, 0) scale(1);
}

:where(.mf-link-tile, .mf-front-main, .mf-front-panel, .mf-watch-card, .mf-command-card, .mf-wc-card, .mf-media-feed-panel, .mf-media-feature-video, .mf-media-spotify-card, .site-newsletter-shell, .mf-lane-card, .mf-home-spotlight-card) {
  transition:
    transform var(--motion-fast) var(--ease-standard),
    border-color var(--motion-fast) var(--ease-standard),
    box-shadow var(--motion-fast) var(--ease-standard),
    background-color var(--motion-fast) var(--ease-standard);
  transform: translateZ(0);
}

:where(.mf-link-tile, .mf-front-main, .mf-front-panel, .mf-watch-card, .mf-command-card, .mf-wc-card, .mf-media-feed-panel, .mf-media-feature-video, .mf-media-spotify-card, .site-newsletter-shell, .mf-lane-card, .mf-home-spotlight-card):hover {
  transform: translate3d(0, var(--motion-lift), 0);
  border-color: var(--color-border-strong);
  box-shadow: var(--shadow-md);
}

:where(.stl-btn, .site-button, .mf-chip, .site-newsletter-form__interest span) {
  transition:
    transform var(--motion-fast) var(--ease-standard),
    background-color var(--motion-fast) var(--ease-standard),
    border-color var(--motion-fast) var(--ease-standard),
    color var(--motion-fast) var(--ease-standard),
    box-shadow var(--motion-fast) var(--ease-standard);
}

:where(.stl-btn, .site-button, .mf-chip):hover {
  transform: translate3d(0, -2px, 0);
}

:where(.stl-btn, .site-button, .mf-chip):active {
  transform: scale(var(--motion-press));
}

.mf-count-emphasis,
.mf-africa-hero-stats strong,
.mf-hero-kpis strong,
.stl-countdown-val {
  font-size: var(--type-stat-number);
  transition: transform var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);
}

.mf-africa-hero-stats span,
.mf-hero-kpis article span,
.stl-countdown-label {
  font-size: var(--type-stat-label);
}

.is-live,
.live,
.mf-live-pulse,
[data-refresh-status] .is-live {
  position: relative;
}

.is-live::after,
.live::after,
.mf-live-pulse::after,
[data-refresh-status] .is-live::after {
  content: "";
  display: inline-block;
  width: .45rem;
  height: .45rem;
  margin-left: .45rem;
  border-radius: 999px;
  background: var(--brand-red);
  box-shadow: 0 0 0 0 rgba(232, 48, 42, .42);
  animation: mfPulse 1.8s var(--ease-standard) infinite;
}

.mf-wire-module {
  display: grid;
  gap: .8rem;
}

.mf-wire-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: .8rem;
  flex-wrap: wrap;
}

.mf-wire-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: .75rem;
}

.mf-wire-card {
  display: grid;
  gap: .45rem;
  padding: .85rem;
  border: 1px solid rgba(245, 200, 66, .14);
  border-radius: var(--radius-md);
  background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
}

.mf-wire-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem .7rem;
  color: var(--color-muted);
}

.mf-wire-source {
  color: var(--color-accent);
  font-family: var(--font-mono);
  text-transform: uppercase;
  letter-spacing: .08em;
}

.mf-signal-lane {
  display: grid;
  gap: .72rem;
}

.mf-signal-lane__feature,
.mf-signal-lane__match {
  padding: .88rem 1rem;
  border: 1px solid rgba(245, 200, 66, .14);
  border-radius: var(--radius-md);
  background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
}

.mf-signal-lane__feature strong,
.mf-signal-lane__match strong {
  display: block;
  margin: .08rem 0 .3rem;
}

.mf-signal-links {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}

.mf-signal-links a {
  display: inline-flex;
  align-items: center;
  padding: .4rem .72rem;
  border-radius: var(--r-full);
  border: 1px solid rgba(200,242,48,.18);
  background: rgba(200,242,48,.05);
  color: var(--text);
  font-family: var(--f-mono);
  font-size: var(--type-meta);
  letter-spacing: .08em;
  text-transform: uppercase;
  text-decoration: none;
  transition: transform var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard);
}

.mf-signal-links a:hover,
.mf-signal-links a:focus-visible {
  transform: translate3d(0, var(--motion-lift), 0);
  border-color: rgba(200,242,48,.34);
  background: rgba(200,242,48,.1);
}

@keyframes mfPulse {
  0% { box-shadow: 0 0 0 0 rgba(232, 48, 42, .42); }
  70% { box-shadow: 0 0 0 .48rem rgba(232, 48, 42, 0); }
  100% { box-shadow: 0 0 0 0 rgba(232, 48, 42, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .mo-reveal,
  .mo-reveal--hero,
  .mo-reveal--media,
  :where(.mf-link-tile, .mf-front-main, .mf-front-panel, .mf-watch-card, .mf-command-card, .mf-wc-card, .mf-media-feed-panel, .mf-media-feature-video, .mf-media-spotify-card, .site-newsletter-shell, .mf-lane-card, .mf-home-spotlight-card, .stl-btn, .site-button, .mf-chip, .site-newsletter-form__interest span),
  .site-nav__link,
  .site-nav__toggle,
  .site-nav__panel,
  .site-drawer {
    animation: none !important;
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
}

.site-newsletter-form__success-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 0.5rem;
}

.site-newsletter-form__success-links a {
  color: var(--color-accent);
}

.site-footer__nav {
  display: grid;
  gap: 0.55rem;
}

.site-footer__nav h2,
.site-footer__nav h3 {
  font-size: 0.82rem;
  font-family: var(--font-mono);
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-muted);
  margin: 0;
}

.site-footer__nav ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.38rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-footer__nav a {
  color: var(--color-muted);
  font-size: 0.86rem;
  line-height: 1.25;
}

.site-footer__nav a:hover {
  color: var(--color-text);
}

.site-footer__bottom {
  padding-block: 0.65rem;
  border-top: 1px solid var(--color-border);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  font-family: var(--font-mono);
  font-size: 0.72rem;
  color: var(--color-muted);
}

.site-footer .site-socials {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.site-footer .site-socials a {
  width: 2.2rem;
  height: 2.2rem;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.site-footer .site-socials__label,
.site-footer .site-socials__handle {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.site-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.55rem;
  margin-bottom: var(--space-4);
  font-family: var(--font-mono);
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.site-breadcrumbs a,
.site-breadcrumbs span {
  color: var(--color-muted);
}

.site-breadcrumbs [aria-current="page"] {
  color: var(--color-accent);
}

.site-breadcrumbs__sep {
  color: var(--color-border-strong);
}

.site-status-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  margin-top: var(--space-4);
}

.site-status-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  min-height: 2.25rem;
  padding: 0.55rem 0.8rem;
  border-radius: var(--radius-full);
  border: 1px solid var(--color-border);
  background: rgba(255, 255, 255, 0.04);
  color: var(--color-muted);
  font-size: 0.75rem;
}

.site-status-pill strong {
  color: var(--color-text);
  font-family: var(--font-mono);
  font-size: 0.68rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.site-status-pill--ok strong,
.site-status-pill--live strong {
  color: var(--color-accent);
}

.site-status-pill--warn strong {
  color: var(--brand-red);
}

.site-status-note {
  display: inline-flex;
  align-items: center;
  min-height: 2rem;
  color: var(--color-muted);
  font-size: 0.82rem;
}

.site-sponsor-stack {
  display: grid;
  gap: var(--space-4);
}

.site-sponsor-stack--spacious {
  gap: var(--space-5);
}

.site-sponsor-ribbon {
  display: grid;
  gap: 0.55rem;
  padding: 1rem 1.1rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: linear-gradient(135deg, rgba(245, 200, 66, 0.09), rgba(255, 255, 255, 0.03));
  box-shadow: var(--shadow-sm);
}

.site-sponsor-ribbon__label,
.site-sponsor-card__label {
  font-family: var(--font-mono);
  font-size: 0.68rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent);
}

.site-sponsor-ribbon strong {
  font-family: var(--font-heading);
  font-size: 1.05rem;
  color: var(--color-text);
}

.site-sponsor-ribbon p {
  margin: 0;
  color: var(--color-muted);
}

.site-sponsor-ribbon a {
  color: var(--color-text);
  font-weight: 700;
}

.site-sponsor-ribbon__meta,
.site-sponsor-tag {
  font-family: var(--font-mono);
  font-size: 0.66rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.site-sponsor-ribbon__meta {
  color: var(--color-muted);
}

.site-presented-by {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  min-height: 2.1rem;
  padding: 0.45rem 0.75rem;
  border-radius: var(--radius-full);
  border: 1px solid var(--color-border);
  background: rgba(255, 255, 255, 0.04);
}

.site-presented-by span {
  font-family: var(--font-mono);
  font-size: 0.68rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent);
}

.site-presented-by strong {
  color: var(--color-text);
}

.site-presented-by--block {
  width: fit-content;
  max-width: 100%;
  min-height: auto;
  padding: 0.65rem 0.85rem;
  border-radius: var(--radius-md);
}

.site-presented-by--block strong {
  font-family: var(--font-heading);
}

.site-sponsor-card {
  display: grid;
  gap: 1rem;
  padding: 1.1rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.02));
  box-shadow: var(--shadow-sm);
}

.site-sponsor-card--compact {
  padding: 0.95rem;
}

.site-sponsor-card--spotlight {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
}

.site-sponsor-card__brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 5.6rem;
  height: 3.4rem;
  border-radius: 1rem;
  border: 1px solid var(--color-border);
  background: var(--color-surface-2);
  color: var(--color-accent);
  font-family: var(--font-display);
}

.site-sponsor-card__brand img {
  max-width: 4.6rem;
  max-height: 2.45rem;
  object-fit: contain;
}

.site-sponsor-ribbon__logo {
  display: grid;
  place-items: center;
  min-width: 7rem;
  height: 2.8rem;
  padding: 0.35rem 0.5rem;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 0.7rem;
  background: rgba(6, 10, 7, 0.78);
}

.site-sponsor-ribbon__logo img {
  display: block;
  width: auto;
  max-width: 6.2rem;
  max-height: 2rem;
  object-fit: contain;
}

.site-sponsor-card__body {
  display: grid;
  gap: 0.7rem;
}

.site-sponsor-card__body h3 {
  margin: 0;
  font-size: 1.1rem;
  color: var(--color-text);
}

.site-sponsor-card__body p {
  margin: 0;
  color: var(--color-muted);
}

.site-sponsor-wordmark {
  display: grid;
  width: 100%;
  min-height: 4.8rem;
  place-items: center;
  padding: 1rem;
  color: var(--color-text);
  font-family: var(--font-display, inherit);
  font-size: clamp(1rem, 2.4vw, 1.45rem);
  font-weight: 850;
  line-height: 1.05;
  letter-spacing: -0.02em;
  text-align: center;
}

.site-sponsor-card__body .site-sponsor-card__representative {
  color: var(--color-text);
  font-size: .85rem;
  line-height: 1.35;
}

.site-sponsor-card__representative a {
  color: var(--color-accent);
  font-weight: 800;
}

.site-sponsor-card__actions,
.site-sponsor-cta__actions,
.site-newsletter-sponsor__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}

.site-newsletter-sponsor + .site-newsletter-form {
  margin-top: 0.15rem;
}

.site-sponsor-card__meta {
  color: var(--color-muted);
  font-family: var(--font-mono);
  font-size: 0.66rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.site-sponsor-wall {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
  gap: 0.9rem;
}

.site-sponsor-wall__item {
  min-height: 5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: rgba(255, 255, 255, 0.03);
  color: var(--color-text);
  text-align: center;
}

.site-sponsor-wall__item img {
  max-width: 100%;
  max-height: 2.5rem;
  object-fit: contain;
}

.site-sponsor-break,
.site-sponsor-cta,
.site-newsletter-sponsor {
  display: grid;
  gap: 0.9rem;
  padding: 1.05rem 1.1rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.02)),
    linear-gradient(135deg, rgba(245, 200, 66, 0.06), rgba(255, 255, 255, 0.015));
  box-shadow: var(--shadow-sm);
}

.site-sponsor-break__label,
.site-sponsor-cta__label,
.site-newsletter-sponsor__label {
  color: var(--color-accent);
  font-family: var(--font-mono);
  font-size: 0.68rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.site-sponsor-break__title,
.site-sponsor-cta__title,
.site-newsletter-sponsor__title {
  margin: 0;
  color: var(--color-text);
  font-family: var(--font-heading);
  font-size: 1.08rem;
  line-height: 1.12;
}

.site-sponsor-break__copy,
.site-sponsor-cta__copy,
.site-newsletter-sponsor__copy {
  margin: 0;
  color: var(--color-muted);
  line-height: 1.65;
}

.site-sponsor-break__shell {
  display: grid;
  gap: 0.8rem;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
}

.site-sponsor-break__brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 0.9rem;
  border: 1px solid var(--color-border);
  background: var(--color-surface-2);
  color: var(--color-accent);
  font-family: var(--font-display);
  font-size: 0.95rem;
}

.site-sponsor-break__brand img {
  max-width: 2rem;
  max-height: 2rem;
  object-fit: contain;
}

.site-sponsor-break__content {
  display: grid;
  gap: 0.55rem;
}

.site-sponsor-cta {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.site-sponsor-cta__content,
.site-newsletter-sponsor__content {
  display: grid;
  gap: 0.55rem;
}

.site-newsletter-sponsor {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.site-newsletter-sponsor__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  width: fit-content;
  padding: 0.38rem 0.65rem;
  border-radius: var(--radius-full);
  border: 1px solid var(--color-border);
  background: rgba(255, 255, 255, 0.04);
  color: var(--color-text);
  font-family: var(--font-mono);
  font-size: 0.66rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.site-sponsor-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  width: fit-content;
  padding: 0.34rem 0.58rem;
  border-radius: var(--radius-full);
  border: 1px solid rgba(245, 200, 66, 0.2);
  background: rgba(245, 200, 66, 0.08);
  color: var(--color-accent);
}

.site-sponsor-tag--media {
  background: rgba(255, 255, 255, 0.04);
  color: var(--color-text);
}

.site-sponsor-label {
  color: var(--color-accent);
  font-family: var(--font-mono);
  font-size: 0.66rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.mf-partner-ribbon,
.mf-partner-strip,
.mf-partner-inline,
.mf-partner-card {
  color: var(--color-text, #f4f4f0);
}

.mf-partner-ribbon {
  display: grid;
  grid-template-columns: auto auto auto minmax(0, 1fr) auto;
  align-items: center;
  gap: .75rem 1rem;
  padding: .75rem .9rem;
  border: 1px solid rgba(245, 200, 66, .24);
  border-radius: .85rem;
  background: linear-gradient(135deg, rgba(245, 200, 66, .13), rgba(0, 148, 83, .08)), rgba(8, 16, 10, .94);
  box-shadow: 0 18px 48px rgba(0, 0, 0, .22);
}

.mf-partner-ribbon__logo,
.mf-partner-page-logo {
  display: inline-grid;
  place-items: center;
  width: min(13rem, 100%);
  min-height: 4.25rem;
  padding: 0.65rem 0.85rem;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: .9rem;
  background: rgba(5, 9, 7, .78);
}

.mf-partner-ribbon__logo {
  width: 7.5rem;
  min-height: 3.05rem;
  padding: .4rem .55rem;
}

.mf-partner-page-logo {
  margin: 1rem 0 .85rem;
}

.mf-partner-page-logo--small {
  width: 9rem;
  min-height: 3.1rem;
  margin: 0;
  padding: .45rem .6rem;
}

.mf-partner-logo,
.mf-partner-page-logo img,
.mf-partner-ribbon__logo img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

.mf-partner-ribbon__logo img {
  max-height: 2.2rem;
}

.mf-partner-page-logo img {
  max-height: 5rem;
}

.mf-partner-page-logo--small img {
  max-height: 2.5rem;
}

.mf-partner-card__mark .mf-partner-logo {
  max-height: 2.35rem;
}

.mf-partner-wordmark {
  display: block;
  color: #fff8dd;
  font-family: var(--font-display, var(--font-mono, "JetBrains Mono", monospace));
  font-size: clamp(.84rem, 1.35vw, 1.05rem);
  font-weight: 900;
  letter-spacing: .035em;
  line-height: 1.08;
  text-align: center;
  text-wrap: balance;
}

.mf-partner-ribbon span,
.mf-partner-card__label {
  color: var(--color-accent, #f5c842);
  font-family: var(--font-mono, "JetBrains Mono", monospace);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .09em;
  line-height: 1;
  text-transform: uppercase;
}

.mf-partner-ribbon strong {
  font-size: clamp(1rem, 1.8vw, 1.35rem);
  line-height: 1;
}

.mf-partner-ribbon p {
  margin: 0;
  color: rgba(244, 244, 240, .78);
}

.mf-partner-strip {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
}

.mf-partner-card {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: .85rem;
  padding: 1rem;
  border: 1px solid rgba(245, 200, 66, .18);
  border-radius: .9rem;
  background: radial-gradient(circle at 100% 0, rgba(245, 200, 66, .12), transparent 12rem), linear-gradient(180deg, rgba(11, 25, 18, .94), rgba(6, 10, 7, .98));
  box-shadow: 0 18px 46px rgba(0, 0, 0, .2);
}

.mf-partner-card--compact {
  min-height: 100%;
}

.mf-partner-card__mark {
  display: grid;
  place-items: center;
  width: 5.8rem;
  height: 3.4rem;
  padding: .45rem;
  border-radius: .75rem;
  border: 1px solid rgba(245, 200, 66, .22);
  background: rgba(6, 10, 7, .82);
  color: var(--color-accent, #f5c842);
  font: 900 1rem/1 var(--font-mono, "JetBrains Mono", monospace);
}

.mf-partner-card__body {
  display: grid;
  gap: .45rem;
  min-width: 0;
}

.mf-partner-card__body h3 {
  margin: 0;
  font-size: clamp(1.1rem, 2vw, 1.45rem);
  line-height: 1.05;
}

.mf-partner-card__body p {
  margin: 0;
  color: rgba(244, 244, 240, .78);
  line-height: 1.45;
}

.mf-partner-card__body .mf-partner-card__representative {
  color: rgba(244, 244, 240, .9);
  font-size: .88rem;
  line-height: 1.35;
}

.mf-partner-card__representative a {
  color: var(--color-accent, #f5c842);
  font-weight: 800;
}

.mf-partner-card__offer {
  color: #fff2b8;
  font: 800 .85rem/1.2 var(--font-mono, "JetBrains Mono", monospace);
  letter-spacing: .04em;
  text-transform: uppercase;
}

.mf-partner-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-top: .2rem;
}

.mf-partner-inline {
  margin: 1.4rem 0;
}

.mf-partner-disclosure,
.mf-partner-page-disclosure {
  margin: .65rem 0 0;
  color: rgba(244, 244, 240, .68);
  font-size: .78rem;
  line-height: 1.45;
}

.mf-partner-page-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
  gap: 1rem;
  align-items: start;
}

.mf-partner-page-panel {
  display: grid;
  gap: .8rem;
  padding: 1rem;
  border: 1px solid rgba(245, 200, 66, .18);
  border-radius: 1rem;
  background: linear-gradient(180deg, rgba(10, 18, 12, .92), rgba(6, 10, 7, .98));
}

.mf-partner-faq {
  display: grid;
  gap: .75rem;
}

.mf-partner-faq details {
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: .75rem;
  padding: .8rem;
  background: rgba(255, 255, 255, .03);
}

.mf-partner-faq summary {
  cursor: pointer;
  color: #fff8dd;
  font-weight: 800;
}

@media (max-width: 48rem) {
  .mf-partner-ribbon,
  .mf-partner-card,
  .mf-partner-page-grid,
  .mf-partner-strip {
    grid-template-columns: 1fr;
  }

  .mf-partner-ribbon {
    align-items: start;
  }

  .mf-partner-card__mark {
    width: 5.2rem;
    height: 3rem;
  }

  .site-header__inner {
    gap: 0.65rem;
  }

  .site-brand {
    gap: 0.6rem;
  }

  .site-brand__logo {
    width: 2.35rem;
    height: 2.35rem;
  }

  .site-brand__name {
    font-size: 1.05rem;
  }

  .site-brand__tag {
    font-size: 0.58rem;
    letter-spacing: 0.12em;
  }

  .site-header__actions {
    gap: 0.35rem;
  }

  .site-nav__menu-button,
  .site-theme-toggle {
    width: 2.7rem;
    height: 2.7rem;
  }

  .site-drawer {
    width: 100%;
    padding: 0.8rem;
    gap: 0.3rem;
  }

  .site-drawer__section {
    padding-block: 0.2rem;
  }

  .site-drawer__title {
    padding: 0.55rem 0.85rem 0.15rem;
  }

  .site-status-row {
    gap: 0.55rem;
  }

  .site-status-pill {
    min-height: 2.1rem;
    padding: 0.5rem 0.72rem;
    font-size: 0.7rem;
  }

  .site-sponsor-stack {
    gap: 0.8rem;
  }

  .site-sponsor-ribbon,
  .site-sponsor-card,
  .site-sponsor-break,
  .site-sponsor-cta,
  .site-newsletter-sponsor {
    padding: 0.9rem;
    border-radius: var(--radius-md);
  }

  .site-sponsor-ribbon strong,
  .site-sponsor-break__title,
  .site-sponsor-cta__title,
  .site-newsletter-sponsor__title,
  .site-sponsor-card__body h3 {
    font-size: 1rem;
  }

  .site-sponsor-wall {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
  }

  .site-sponsor-wall__item {
    min-height: 4.2rem;
    padding: 0.75rem;
  }
}

@media (max-width: 30rem) {
  .site-theme-toggle {
    display: none;
  }

  .site-sponsor-wall {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 48rem) {
  .site-sponsor-card--spotlight,
  .site-sponsor-break__shell,
  .site-sponsor-cta,
  .site-newsletter-sponsor {
    grid-template-columns: 1fr;
  }
}

.site-socials {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.site-socials a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  min-width: 2.3rem;
  min-height: 2.3rem;
  padding: 0.48rem 0.72rem;
  border-radius: var(--radius-sm);
  border: 1px solid var(--color-border);
  background: var(--color-surface-2);
  color: var(--color-muted);
}

.site-socials a:hover {
  color: #111;
  background: var(--color-accent);
  border-color: var(--color-accent);
}

.site-socials__short {
  font-weight: 700;
}

.site-socials__icon {
  width: 1.15rem;
  height: 1.15rem;
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  color: currentColor;
}

.site-socials__icon svg {
  width: 100%;
  height: 100%;
  display: block;
  fill: currentColor;
}

.site-socials__icon-cut {
  fill: #071007;
}

.site-socials__icon-cut-stroke,
.site-socials__icon-line {
  fill: none;
  stroke: #071007;
  stroke-width: 1.8;
  stroke-linecap: round;
}

.site-socials__icon-line {
  stroke-width: 1.35;
}

.site-socials a[data-platform*="youtube"] .site-socials__icon {
  color: #ff3b30;
}

.site-socials a[data-platform*="tiktok"] .site-socials__icon {
  color: #f4f6f8;
}

.site-socials a[data-platform*="spotify"] .site-socials__icon {
  color: #1db954;
}

.site-socials a[data-platform*="linkedin"] .site-socials__icon {
  color: #0a66c2;
}

.site-socials__label {
  font-size: 0.78rem;
}

.site-socials__handle {
  max-width: 8.5rem;
  overflow: hidden;
  color: color-mix(in srgb, var(--color-muted) 82%, transparent);
  font-size: 0.68rem;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 42rem) {
  .site-socials a {
    flex: 1 1 8.5rem;
    justify-content: flex-start;
  }
}

.site-card-grid {
  display: grid;
  gap: var(--space-5);
  grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
}

.site-card {
  height: 100%;
  display: grid;
  grid-template-rows: auto 1fr;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0.015));
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  overflow: clip;
  box-shadow: var(--shadow-sm);
  transition:
    transform var(--transition-fast),
    border-color var(--transition-fast),
    box-shadow var(--transition-fast);
}

.site-card:hover {
  transform: translateY(-3px);
  border-color: var(--color-border-strong);
  box-shadow: var(--shadow-md);
}

.site-card__media {
  aspect-ratio: 16 / 9;
  background: linear-gradient(135deg, var(--color-surface-2), var(--color-surface-3));
  overflow: hidden;
}

.site-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.site-card__body {
  display: grid;
  align-content: start;
  gap: var(--space-3);
  padding: var(--space-5);
}

.site-card__eyebrow {
  font-family: var(--font-mono);
  font-size: 0.68rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--color-accent);
}

.site-card__title {
  font-size: 1.1rem;
  line-height: 1.24;
}

.site-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  font-family: var(--font-mono);
  font-size: 0.72rem;
  color: var(--color-muted);
}

.site-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: auto;
  padding-top: var(--space-2);
}

.site-card--feature {
  grid-template-columns: minmax(14rem, 1fr) minmax(0, 1.1fr);
  grid-template-rows: 1fr;
}

.site-card--feature .site-card__media {
  height: 100%;
  min-height: 100%;
}

.site-card--compact .site-card__body {
  padding: var(--space-4);
}

.site-card--outline {
  background: transparent;
  box-shadow: none;
}

.site-stat {
  display: grid;
  gap: 0.35rem;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: rgba(255, 255, 255, 0.02);
}

.site-stat strong {
  font-family: var(--font-display);
  font-size: clamp(1.4rem, 4vw, 2rem);
  color: var(--color-accent);
}

.site-stat span {
  font-family: var(--font-mono);
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-muted);
}

@media (max-width: 70rem) {
  .site-footer__inner {
    grid-template-columns: minmax(16rem, 1.1fr) repeat(2, minmax(8rem, 0.8fr));
  }

  .site-newsletter-shell {
    grid-template-columns: 1fr;
  }

  .site-newsletter-form__success-links {
    flex-direction: column;
    gap: 0.35rem;
  }
}

@media (max-width: 62rem) {
  .site-nav {
    display: none;
  }

  .site-nav__menu-button {
    display: inline-flex;
  }

  .site-footer__inner {
    grid-template-columns: 1fr 1fr;
    padding-block: 1.25rem 1rem;
  }

  .site-card--feature {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 40rem) {
  .site-footer__inner {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .site-newsletter-shell {
    padding: 1rem;
  }

  .site-newsletter-shell__trust {
    letter-spacing: 0.1em;
  }

  .site-brand__tag {
    font-size: 0.56rem;
  }

  .site-breadcrumbs {
    gap: 0.4rem;
    font-size: 0.66rem;
  }

  .site-status-row {
    gap: 0.55rem;
  }
}


/* Source: /assets/css/utilities.css */
.u-hidden {
  display: none !important;
}

.u-visually-hidden {
  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;
}

.u-text-center {
  text-align: center;
}

.u-text-balance {
  text-wrap: balance;
}

.u-muted {
  color: var(--color-muted) !important;
}

.u-accent {
  color: var(--color-accent) !important;
}

.u-surface {
  background: var(--color-surface);
}

.u-surface-2 {
  background: var(--color-surface-2);
}

.u-border {
  border: 1px solid var(--color-border);
}

.u-radius-md {
  border-radius: var(--radius-md);
}

.u-radius-lg {
  border-radius: var(--radius-lg);
}

.u-shadow-sm {
  box-shadow: var(--shadow-sm);
}

.u-shadow-md {
  box-shadow: var(--shadow-md);
}

.u-stack-xs > * + * {
  margin-top: var(--space-2);
}

.u-stack-sm > * + * {
  margin-top: var(--space-3);
}

.u-stack-md > * + * {
  margin-top: var(--space-4);
}

.u-stack-lg > * + * {
  margin-top: var(--space-5);
}

.u-flow > * + * {
  margin-top: var(--space-4);
}

.u-cluster {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
}

.u-split {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: var(--space-4);
}

.u-grid-auto {
  display: grid;
  gap: var(--space-5);
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
}

.u-max-copy {
  max-width: var(--max-copy);
}

.u-max-readable {
  max-width: var(--max-readable);
}


/* Source: /assets/css/style.css */
/* FILE: assets/css/style.css */
/* TOKENS */
:root {
 /* MoFutbol brand palette (from logo) */
 --brand-red: #E8302A; /* M left leg Senegal red */
 --brand-yellow: #F5C842; /* M center Senegal yellow */
 --brand-green: #2DB84B; /* M right leg Senegal/Africa green */
 --brand-black: #0A0A0A; /* Shield black */
 --brand-circuit:#1E9448; /* Tech circuit green */

 /* Base surfaces pitch-dark green-blacks */
 --bg: #080c08;
 --surface: #0f1510;
 --surface-2: #16201a;
 --surface-3: #1c2b20;

 /* Accent: logo yellow-green as main CTA */
 --accent: #F5C842;
 --accent-h: #ffd84f;
 --accent-dim:#c9a030;
 --accent-bg: rgba(245,200,66,.1);

 /* Secondary accents */
 --red: #E8302A;
 --red-dim: rgba(232,48,42,.15);
 --green-b: #2DB84B;
 --green-dim: rgba(45,184,75,.15);

 --text: #f0f4f0;
 --muted: #7a907a;
 --danger: #ff4d4d;
 --border: rgba(245,200,66,.14);
 --border-s: rgba(245,200,66,.3);

 --r-sm: 6px;
 --r-md: 12px;
 --r-lg: 20px;
 --r-full: 999px;

 --f-display: var(--font-display, 'Bebas Neue', sans-serif);
 --f-heading: var(--font-display, 'Bebas Neue', sans-serif);
 --f-body: var(--font-body, 'Montserrat', sans-serif);
 --f-mono: var(--font-ui, 'Montserrat', sans-serif);

 --nav-h: 72px;
 --max-w: 1280px;

 --shadow-sm: 0 2px 8px rgba(0,0,0,.4);
 --shadow-md: 0 4px 24px rgba(0,0,0,.5);
 --shadow-lg: 0 8px 48px rgba(0,0,0,.6);
 --glow: 0 0 32px rgba(245,200,66,.25);
}

[data-theme="light"] {
 --bg: #f8f5ef;
 --surface: #ffffff;
 --surface-2: #f2ede4;
 --surface-3: #e8e0d0;
 --text: #0a0c0a;
 --muted: #5a6a5a;
 --border: rgba(0,0,0,.1);
 --border-s: rgba(0,0,0,.2);
 --accent: #c8a020;
 --accent-h: #d4ac28;
}

/* RESET */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{background:var(--bg);color:var(--text);font-family:var(--f-body);line-height:1.6;min-height:100vh;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
button{cursor:pointer;border:none;background:none;font:inherit}

::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:var(--surface)}
::-webkit-scrollbar-thumb{background:var(--accent-dim);border-radius:var(--r-full)}

/* TYPOGRAPHY */
h1,h2,h3,h4,h5{font-family:var(--f-heading);line-height:1.15;font-weight:700}
h1{font-family:var(--f-display);font-size:clamp(2rem,3.8vw,3.6rem);letter-spacing:-.02em}
h2{font-size:clamp(1.8rem,3vw,2.8rem)}
h3{font-size:clamp(1.2rem,2vw,1.6rem)}
h4{font-size:1.1rem}
p{font-size:1rem;line-height:1.75;color:var(--muted)}.eyebrow{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.section-label{font-family:var(--f-mono);font-size:.65rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);display:block;margin-bottom:.5rem}

/* LAYOUT */.container{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 1.5rem}.section{padding:2.5rem 0}.section--sm{padding:3rem 0}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}

/* NAV */
#site-nav{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--nav-h);background:rgba(9,13,9,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);display:flex;align-items:center}.nav-inner{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.nav-logo{display:flex;align-items:center;gap:.65rem;line-height:1.1;text-decoration:none;transition:opacity.2s}.nav-logo.logo-main{font-family:var(--f-display);font-size:1.35rem;color:var(--text);letter-spacing:-.01em}.nav-logo.logo-sub{font-family:var(--f-mono);font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}.nav-links{display:flex;align-items:center;gap:.25rem}.nav-links a{font-family:var(--f-heading);font-size:.9rem;font-weight:600;padding:.5rem 1rem;border-radius:var(--r-sm);color:var(--muted);transition:color.22s,background.22s,transform.22s;white-space:nowrap;position:relative}.nav-links a:hover,.nav-links a.active{color:var(--text);background:var(--surface-2)}.nav-links.nav-stl{color:var(--accent)!important}.nav-links.nav-stl:hover{background:rgba(245,200,66,.1)!important}.nav-dropdown{position:relative}.nav-dropdown>a::after{content:' ';font-size:.6rem}.nav-dropdown-menu{position:absolute;top:calc(100% +.5rem);left:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:.5rem;min-width:180px;opacity:0;pointer-events:none;transform:translateY(-6px);transition:opacity.2s,transform.2s;box-shadow:var(--shadow-md)}.nav-dropdown.open.nav-dropdown-menu{opacity:1;pointer-events:all;transform:translateY(0)}.nav-dropdown-menu a{display:block;padding:.55rem.95rem;border-radius:var(--r-sm);font-size:.86rem;font-weight:500;color:var(--muted);transition:all.18s}.nav-dropdown-menu a:hover{background:var(--surface-2);color:var(--text)}.nav-actions{display:flex;align-items:center;gap:.5rem}.btn-theme{width:36px;height:36px;border-radius:var(--r-full);background:var(--surface-2);color:var(--muted);display:flex;align-items:center;justify-content:center;transition:background.2s,color.2s;font-size:.9rem}.btn-theme:hover{background:var(--surface-3);color:var(--text)}.hamburger{display:none;flex-direction:column;gap:5px;width:36px;height:36px;justify-content:center;align-items:center;background:var(--surface-2);border-radius:var(--r-sm)}.hamburger span{width:18px;height:2px;background:var(--text);transition:transform.3s,opacity.3s;display:block}.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
#mobile-nav{position:fixed;top:var(--nav-h);left:0;right:0;bottom:0;z-index:1200;background:var(--bg);padding:1.5rem;overflow-y:auto;transform:translateX(100%);transition:transform.3s}
#mobile-nav.open{transform:translateX(0)}
#mobile-nav a{display:block;padding:.9rem 1rem;border-radius:var(--r-md);font-family:var(--f-heading);font-size:1rem;font-weight:600;color:var(--muted);border-bottom:1px solid var(--border)}
#mobile-nav a:hover,#mobile-nav a.active{color:var(--text);background:var(--surface-2)}
#mobile-nav.stl-link{color:var(--accent)}.nav-spacer{height:var(--nav-h)}

/* BUTTONS */.btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--f-heading);font-size:.9rem;font-weight:600;padding:.7rem 1.4rem;border-radius:var(--r-md);transition:all.2s;cursor:pointer;border:none}.btn-primary{background:var(--accent);color:#090d09}.btn-primary:hover{background:var(--accent-h);box-shadow:var(--glow);transform:translateY(-1px)}.btn-secondary{background:var(--surface-2);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--surface-3);border-color:var(--border-s)}.btn-ghost{color:var(--accent);border:1px solid var(--border-s)}.btn-ghost:hover{background:rgba(245,200,66,.08);border-color:var(--accent)}.btn-sm{font-size:.8rem;padding:.5rem 1rem;border-radius:var(--r-sm)}.btn-lg{font-size:1rem;padding:.9rem 2rem;border-radius:var(--r-lg)}

/* HERO */.hero{position:relative;min-height:26vh;display:flex;align-items:center;overflow:hidden}.hero-content{position:relative;z-index:2;padding:1.75rem 0 1.25rem}.hero-pills{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.pill{font-family:var(--f-mono);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;padding:.35rem.85rem;border-radius:var(--r-full);border:1px solid var(--border-s);color:var(--accent);background:rgba(245,200,66,.06)}.hero h1{margin-bottom:1.25rem;max-width:800px}.hero h1.accent{color:var(--accent)}.hero-desc{font-size:1.05rem;max-width:560px;margin-bottom:2rem;color:var(--muted)}.hero-ctas{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:3rem}.watchalong-strip{display:inline-flex;align-items:center;gap:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-full);padding:.6rem 1.2rem;font-size:.85rem}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:pulse 2s infinite;flex-shrink:0}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}.watchalong-strip strong{color:var(--text);font-family:var(--f-heading);font-weight:600}

/* SECTION HEADERS */.section-header{margin-bottom:2.5rem}.section-header h2{margin-bottom:.5rem}.section-header p{max-width:560px}.section-header-row{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:2.5rem}

/* CARDS */.story-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;transition:transform.25s,border-color.25s,box-shadow.25s}.story-card:hover{transform:translateY(-4px);border-color:var(--border-s);box-shadow:var(--shadow-md)}.story-card-thumb{width:100%;aspect-ratio:16/9;background:var(--surface-2);position:relative;overflow:hidden}.story-card-thumb img{width:100%;height:100%;object-fit:cover;transition:transform.4s}.story-card:hover.story-card-thumb img{transform:scale(1.05)}.story-card-thumb-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--surface-2),var(--surface-3));display:flex;align-items:center;justify-content:center;font-size:3rem}.play-btn{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(9,13,9,.4);opacity:0;transition:opacity.2s}.story-card:hover.play-btn{opacity:1}.play-icon{width:52px;height:52px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;color:#090d09;font-size:1.2rem}.story-card-body{padding:1.25rem}.story-card-tag{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:.5rem}.story-card-title{font-size:1rem;font-weight:700;font-family:var(--f-heading);color:var(--text);margin-bottom:.4rem;line-height:1.3}.story-card-desc{font-size:.85rem;color:var(--muted);line-height:1.5}.story-card-meta{display:flex;align-items:center;gap:.75rem;margin-top:.85rem;font-size:.78rem;color:var(--muted);font-family:var(--f-mono)}.club-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:1.25rem;transition:transform.2s,border-color.2s}.club-card:hover{transform:translateY(-2px);border-color:var(--border-s)}.club-card-header{display:flex;align-items:center;gap:.85rem;margin-bottom:.85rem}.club-badge{width:48px;height:48px;border-radius:var(--r-md);background:var(--surface-2);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.club-card-name{font-family:var(--f-heading);font-weight:700;font-size:.95rem;color:var(--text)}.club-card-level{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.club-card-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.75rem}.tag{font-size:.7rem;font-family:var(--f-mono);padding:.25rem.6rem;border-radius:var(--r-sm);background:var(--surface-2);color:var(--muted);border:1px solid var(--border)}.fixture-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem;transition:border-color.2s}.fixture-card:hover{border-color:var(--border-s)}.fixture-date{text-align:center;flex-shrink:0;background:var(--surface-2);border-radius:var(--r-sm);padding:.5rem.75rem;min-width:56px}.fixture-date.day{font-family:var(--f-display);font-size:1.4rem;color:var(--accent);line-height:1}.fixture-date.month{font-family:var(--f-mono);font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.fixture-info{flex:1}.fixture-matchup{font-family:var(--f-heading);font-weight:700;font-size:.9rem;color:var(--text);margin-bottom:.2rem}.fixture-meta{font-size:.78rem;color:var(--muted);font-family:var(--f-mono)}.fixture-badge{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;padding:.3rem.7rem;border-radius:var(--r-full);background:rgba(245,200,66,.1);color:var(--accent);border:1px solid var(--border-s);flex-shrink:0}.spotlight-card{background:linear-gradient(135deg,var(--surface),var(--surface-2));border:1px solid var(--border);border-radius:var(--r-lg);padding:2rem;position:relative;overflow:hidden}.spotlight-card::before{content:'';position:absolute;top:-40%;right:-20%;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(245,200,66,.12),transparent 70%);pointer-events:none}.spotlight-card-icon{font-size:2.5rem;margin-bottom:1rem}.spotlight-card-title{font-family:var(--f-heading);font-weight:700;font-size:1.1rem;color:var(--text);margin-bottom:.5rem}.spotlight-card p{font-size:.88rem}.community-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:1.25rem;display:flex;gap:1rem}.community-avatar{width:44px;height:44px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--accent-dim),var(--accent));display:flex;align-items:center;justify-content:center;font-family:var(--f-display);font-size:1rem;color:#090d09}.community-card-text{flex:1}.community-card-name{font-family:var(--f-heading);font-weight:600;font-size:.9rem;color:var(--text)}.community-card-msg{font-size:.83rem;color:var(--muted);margin-top:.25rem;line-height:1.5}.community-card-time{font-family:var(--f-mono);font-size:.65rem;color:var(--muted);margin-top:.5rem}.pathway-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:1.5rem;border-left:3px solid var(--accent)}.pathway-card-step{font-family:var(--f-mono);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:.5rem}.pathway-card-title{font-family:var(--f-heading);font-weight:700;font-size:1.05rem;color:var(--text);margin-bottom:.5rem}.pathway-card p{font-size:.85rem}

/* CAROUSEL */.carousel-wrap{position:relative}.carousel{display:flex;gap:1.25rem;overflow-x:auto;padding:.5rem 0 1.5rem;scroll-snap-type:x mandatory;scrollbar-width:none}.carousel::-webkit-scrollbar{display:none}.carousel>*{scroll-snap-align:start;flex-shrink:0;width:300px}.carousel-btns{display:flex;gap:.5rem}.carousel-btn{width:36px;height:36px;border-radius:50%;background:var(--surface-2);color:var(--text);display:flex;align-items:center;justify-content:center;border:1px solid var(--border);transition:all.2s;font-size:.9rem}.carousel-btn:hover{background:var(--accent);color:#090d09;border-color:var(--accent)}

/* FILTERS */.filter-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.filter-chip{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;padding:.4rem 1rem;border-radius:var(--r-full);background:var(--surface);border:1px solid var(--border);color:var(--muted);transition:all.2s;cursor:pointer}.filter-chip:hover{border-color:var(--border-s);color:var(--text)}.filter-chip.active{background:var(--accent);color:#090d09;border-color:var(--accent)}

/* SUBNAV */.sub-nav{background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:var(--nav-h);z-index:90}.sub-nav-inner{max-width:var(--max-w);margin:0 auto;padding:0 1.5rem;display:flex;gap:.25rem;overflow-x:auto;scrollbar-width:none}.sub-nav-inner::-webkit-scrollbar{display:none}.sub-nav a{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;padding:1rem.9rem;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap;transition:color.2s,border-color.2s;display:block}.sub-nav a:hover{color:var(--text)}.sub-nav a.active{color:var(--accent);border-color:var(--accent)}

/* EMBEDS */.embed-wrap{border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--border)}.embed-wrap iframe{display:block;width:100%}

/* PLATFORM LINKS */.platform-links{display:flex;flex-wrap:wrap;gap:.75rem}.platform-link{display:flex;align-items:center;gap:.6rem;padding:.7rem 1.25rem;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border);font-family:var(--f-heading);font-size:.88rem;font-weight:600;transition:all.2s;color:var(--text)}.platform-link:hover{border-color:var(--border-s);background:var(--surface-2);transform:translateY(-1px)}

/* FOOTER */
#site-footer{background:var(--surface);border-top:1px solid var(--border);padding:3.5rem 0 1.5rem;margin-top:4rem}.footer-inner{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}.footer-brand.logo-main{font-family:var(--f-display);font-size:1.3rem;color:var(--text);display:block;margin-bottom:.25rem}.footer-brand.logo-sub{font-family:var(--f-mono);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}.footer-brand p{font-size:.85rem;color:var(--muted);margin-top:.85rem;max-width:280px}.footer-social{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem}.social-icon{width:36px;height:36px;border-radius:var(--r-sm);background:var(--surface-2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--muted);transition:all.2s;font-size:.9rem}.social-icon:hover{background:var(--accent);color:#090d09;border-color:var(--accent)}.footer-col h5{font-family:var(--f-heading);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:1rem}.footer-col ul li{margin-bottom:.6rem}.footer-col ul li a{font-size:.88rem;color:var(--muted);transition:color.2s}.footer-col ul li a:hover{color:var(--text)}.footer-bottom{border-top:1px solid var(--border);padding-top:1.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;font-family:var(--f-mono);font-size:.7rem;color:var(--muted)}

/* CTA STRIP */.cta-strip{background:linear-gradient(135deg,var(--surface-2) 0%,var(--surface-3) 100%);border:1px solid var(--border);border-radius:var(--r-lg);padding:3rem 2.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:2rem;position:relative;overflow:hidden}.cta-strip::before{content:'';position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(245,200,66,.15),transparent 70%);pointer-events:none}.cta-strip h3{font-size:1.5rem;color:var(--text)}.cta-strip p{color:var(--muted);margin-top:.35rem}.cta-strip-btns{display:flex;gap:.75rem;flex-wrap:wrap}

/* TABLE */.data-table{width:100%;border-collapse:collapse;font-size:.88rem}.data-table th{font-family:var(--f-mono);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border)}.data-table td{padding:.85rem 1rem;border-bottom:1px solid var(--border);color:var(--text)}.data-table tr:hover td{background:var(--surface-2)}.data-table.rank{font-family:var(--f-mono);color:var(--muted)}.data-table.team-name{font-weight:600;font-family:var(--f-heading)}

/* PATHWAY LADDER */.pathway-ladder{display:flex;flex-direction:column;gap:0;max-width:600px;margin:0 auto}.ladder-step{display:flex;align-items:center;gap:1.5rem;padding:1.25rem 1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:0;position:relative}.ladder-step:first-child{border-radius:var(--r-md) var(--r-md) 0 0}.ladder-step:last-child{border-radius:0 0 var(--r-md) var(--r-md)}.ladder-step:not(:last-child){border-bottom:none}.ladder-step.highlight{background:rgba(245,200,66,.06);border-color:var(--border-s)}.ladder-num{width:40px;height:40px;border-radius:50%;flex-shrink:0;background:var(--surface-2);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-family:var(--f-display);font-size:.9rem;color:var(--accent)}.ladder-step.highlight.ladder-num{background:var(--accent);color:#090d09;border-color:var(--accent)}.ladder-step-title{font-family:var(--f-heading);font-weight:700;font-size:.95rem;color:var(--text)}.ladder-step-desc{font-size:.8rem;color:var(--muted);margin-top:.15rem}

/* FORM */.form-group{margin-bottom:1.25rem}.form-label{display:block;font-family:var(--f-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem}.form-control{width:100%;padding:.8rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text);font-family:var(--f-body);font-size:.9rem;transition:border-color.2s,box-shadow.2s;outline:none}.form-control:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(245,200,66,.12)}
textarea.form-control{resize:vertical;min-height:140px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}

/* SEARCH BAR */.search-bar{display:flex;align-items:center;gap:.75rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-full);padding:.6rem 1.25rem;max-width:500px}.search-bar input{flex:1;background:none;border:none;outline:none;color:var(--text);font-family:var(--f-body);font-size:.9rem}.search-bar input::placeholder{color:var(--muted)}

/* BIO */.bio-section{display:grid;grid-template-columns:1fr 2fr;gap:4rem;align-items:center}.bio-photo{aspect-ratio:1;border-radius:var(--r-lg);overflow:hidden;background:linear-gradient(135deg,var(--surface-2),var(--surface-3));display:flex;align-items:center;justify-content:center;font-size:6rem;border:1px solid var(--border)}.bio-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}.bio-stat{text-align:center;padding:1rem;background:var(--surface);border-radius:var(--r-md);border:1px solid var(--border)}.bio-stat-val{font-family:var(--f-display);font-size:1.8rem;color:var(--accent)}.bio-stat-label{font-family:var(--f-mono);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:.25rem}

/* PILLARS */.pillar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.pillar-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:2rem 1.5rem;text-align:center;transition:transform.2s,border-color.2s}.pillar-card:hover{transform:translateY(-4px);border-color:var(--border-s)}.pillar-icon{font-size:2.5rem;margin-bottom:1rem}.pillar-card h4{font-family:var(--f-heading);font-weight:700;color:var(--text);margin-bottom:.5rem}

/* MISSION */.mission-block{background:linear-gradient(135deg,rgba(245,200,66,.06),transparent);border:1px solid var(--border-s);border-radius:var(--r-lg);padding:3rem;text-align:center}.mission-block blockquote{font-family:var(--f-display);font-size:clamp(1.4rem,2.5vw,2rem);color:var(--text);line-height:1.3;margin-bottom:1rem}.mission-block blockquote.accent{color:var(--accent)}

/* ARTICLE CARD */.article-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:1.5rem;transition:transform.2s,border-color.2s}.article-card:hover{transform:translateY(-3px);border-color:var(--border-s)}.article-card-tag{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:.6rem}.article-card-title{font-family:var(--f-heading);font-weight:700;font-size:1rem;color:var(--text);line-height:1.35;margin-bottom:.5rem}.article-card-excerpt{font-size:.84rem;color:var(--muted);line-height:1.6}.article-card-meta{display:flex;align-items:center;justify-content:space-between;margin-top:1rem}.article-card-date{font-family:var(--f-mono);font-size:.68rem;color:var(--muted)}.read-more{font-family:var(--f-mono);font-size:.7rem;color:var(--accent);letter-spacing:.1em;text-transform:uppercase;display:flex;align-items:center;gap:.3rem}

/* SKELETON */.skeleton{background:linear-gradient(90deg,var(--surface) 0%,var(--surface-3) 50%,var(--surface) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--r-sm)}
@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
.mf-directory-skeleton-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.mf-directory-skeleton-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:1rem;display:grid;gap:.75rem;min-height:220px}
.mf-directory-loading{display:grid;gap:.25rem;margin:0 0 1rem}
.mf-directory-loading strong{font:700 .82rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.mf-directory-loading span{font-size:.88rem;color:var(--muted)}
.mf-skeleton-badge{width:6rem;height:1.5rem}
.mf-skeleton-title{width:75%;height:1.4rem}
.mf-skeleton-line{width:100%;height:.85rem}
.mf-skeleton-line.short{width:62%}
.featured-player-card{display:grid;gap:.75rem;background:linear-gradient(135deg,rgba(232,180,0,.18),rgba(26,26,0,.92));border:1px solid rgba(232,180,0,.35);border-radius:20px;padding:1rem 1.1rem;margin:0 0 1.25rem;box-shadow:0 18px 40px rgba(0,0,0,.2)}
.featured-player-card span:first-child{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:.3rem .7rem;border-radius:999px;background:#e8b400;color:#1a1a00;font:700 .72rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.featured-player-card span:nth-child(2){font-size:1.35rem}
.featured-player-card h3{color:var(--text);margin:0}
.featured-player-card p{margin:0}
.featured-player-card a{color:#e8b400;font-weight:700}
.mf-resource-badge{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:.3rem .65rem;border-radius:999px;color:#fff;font:700 .72rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.mf-calendar-list article{position:relative}
.mf-event-badge{display:inline-flex;align-items:center;justify-content:center;padding:.35rem .7rem;border-radius:999px;font:700 .7rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.mf-event-badge--confirmed{background:#2e7d32;color:#fff}
.mf-event-badge--awaiting{background:#f9a825;color:#000}
.mf-home-video-card{display:grid;gap:1rem;background:linear-gradient(145deg,rgba(26,26,0,.96),rgba(18,18,6,.92));border:1px solid rgba(232,180,0,.28);border-radius:20px;padding:1.2rem}
.mf-home-video-card img{width:100%;max-width:320px;border-radius:14px;border:1px solid rgba(232,180,0,.25)}
.mf-home-video-card .mf-video-label{display:inline-flex;width:max-content;padding:.32rem .7rem;border-radius:999px;background:#e8b400;color:#1a1a00;font:700 .72rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.mf-home-video-card h3{margin:0;color:var(--text)}
.mf-home-video-card p{margin:0}
.mf-filter-bar{display:flex;flex-wrap:wrap;gap:.5rem}
.mf-filter-bar .mf-chip.active,.mf-filter-bar .mf-chip.is-active{background:var(--accent);color:#090d09;border-color:var(--accent)}
.share-btn{margin-top:.75rem;display:inline-flex;align-items:center;justify-content:center;padding:.5rem .85rem;border-radius:999px;border:1px solid rgba(232,180,0,.32);background:rgba(232,180,0,.08);color:var(--text);font:600 .72rem var(--f-mono);letter-spacing:.04em}
.mf-coming-soon{display:inline-flex;width:max-content;margin-top:.65rem;padding:.3rem .65rem;border-radius:999px;background:#e8b400;color:#1a1a00;font:700 .7rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.mf-article-card--stub .mf-article-card-media img{filter:saturate(.25)}
.potw-section{padding:0 0 1.5rem}
.potw-card{display:grid;gap:.75rem;background:linear-gradient(145deg,rgba(26,26,0,.96),rgba(18,18,6,.92));border:1px solid rgba(232,180,0,.3);border-radius:20px;padding:1.15rem;max-width:420px}
.potw-card .flag{font-size:1.6rem}
.label{display:inline-flex;width:max-content;margin-bottom:.8rem;padding:.32rem .72rem;border-radius:999px;background:#e8b400;color:#1a1a00;font:700 .72rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.btn-gold{display:inline-flex;width:max-content;align-items:center;justify-content:center;padding:.65rem 1rem;border-radius:999px;background:#e8b400;color:#1a1a00;font-weight:700}
.mf-watch-party{background:#1a3a6b !important;color:#fff !important}
.mf-taste-kicker{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:.28rem .68rem;border:1px solid rgba(232,180,0,.24);border-radius:999px;background:rgba(232,180,0,.08);color:#e8b400;font:700 .66rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.mf-daily-hero{position:relative;overflow:hidden;background:
 linear-gradient(90deg, rgba(4,6,4,.92) 0%, rgba(4,6,4,.76) 38%, rgba(4,6,4,.62) 58%, rgba(4,6,4,.84) 100%),
 radial-gradient(circle at 80% 20%, rgba(232,180,0,.18), transparent 28%),
 radial-gradient(circle at 18% 30%, rgba(19,138,54,.12), transparent 24%),
 linear-gradient(140deg, rgba(9,11,4,.84) 0%, rgba(13,16,6,.72) 58%, rgba(21,22,8,.86) 100%),
 url("/assets/brand-v2/backgrounds/mf-background-16x9.webp");
 background-size: cover, auto, auto, auto, cover;
 background-position: center, center, center, center, center;
 background-repeat: no-repeat}
.mf-daily-hero::before{content:'';position:absolute;inset:0;background:
 linear-gradient(90deg, rgba(232,180,0,.12) 1px, transparent 1px),
 linear-gradient(rgba(232,180,0,.08) 1px, transparent 1px);
 background-size: 120px 120px, 120px 120px;
 mask-image: linear-gradient(to bottom, rgba(0,0,0,.3), transparent 82%);
 pointer-events:none}
.mf-daily-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.8fr);gap:1.25rem;align-items:end;padding:2.2rem 0 1.2rem}
.mf-daily-lead{display:grid;gap:1rem;max-width:760px}
.mf-daily-lead h1{max-width:11ch;font-size:clamp(2.6rem,5vw,5.6rem);letter-spacing:-.05em;line-height:.94}
.mf-daily-lead p{max-width:58ch;font-size:.96rem;color:rgba(240,244,240,.72)}
.mf-home-taste .mf-home-hero-copy{position:relative;z-index:1}
.mf-home-taste .mf-home-hero-copy::after{content:'';position:absolute;inset:-1rem -1rem -1rem -1.25rem;z-index:-1;border-radius:1.5rem;background:linear-gradient(180deg,rgba(4,6,4,.82),rgba(4,6,4,.58));box-shadow:0 20px 50px rgba(0,0,0,.18);backdrop-filter:blur(8px)}
.mf-daily-kicker{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}
.mf-daily-kicker span{display:inline-flex;padding:.34rem .72rem;border-radius:999px;background:#e8b400;color:#1a1a00;font:700 .66rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.mf-daily-kicker strong{font:600 .82rem var(--f-mono);letter-spacing:.08em;color:rgba(240,244,240,.72);text-transform:uppercase}
.mf-taste-note{display:grid;gap:.55rem;max-width:420px;padding:1rem 1.05rem;border:1px solid rgba(232,180,0,.18);border-radius:1.25rem;background:rgba(255,255,255,.03);backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.mf-taste-note p{margin:0;font-size:.82rem;line-height:1.7;color:rgba(240,244,240,.66)}
.mf-daily-board{background:rgba(8,10,4,.9);border:1px solid rgba(232,180,0,.22);border-radius:1.5rem;padding:1.1rem;box-shadow:0 24px 60px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.04);backdrop-filter:blur(12px)}
.mf-board-main{min-height:200px}
.mf-daily-tabs{display:flex;gap:.55rem;flex-wrap:wrap;padding:.35rem;border:1px solid rgba(232,180,0,.16);border-radius:999px;background:rgba(255,255,255,.03);width:max-content;max-width:100%}
.mf-daily-tabs button{padding:.72rem 1rem;border-radius:999px;color:rgba(240,244,240,.68);font:600 .74rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;transition:transform .25s ease,background .25s ease,color .25s ease}
.mf-daily-tabs button.active,.mf-daily-tabs button:hover{background:#e8b400;color:#1a1a00;transform:translateY(-1px)}
.mf-daily-tab-panel{margin-top:1rem;border:1px solid rgba(232,180,0,.14);border-radius:1.6rem;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));padding:1rem}
.mf-front-trust{display:flex;gap:.55rem;flex-wrap:wrap;margin:0 0 .35rem;color:rgba(240,244,240,.56);font:600 .68rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.mf-front-trust span{display:inline-flex;align-items:center;padding:.22rem .55rem;border-radius:999px;border:1px solid rgba(232,180,0,.16);background:rgba(255,255,255,.025)}
.mf-home-latest-desk .stl-section-header-row{margin-bottom:.9rem}
.mf-taste-watch-grid{display:grid;grid-template-areas:"lead stack note";grid-template-columns:minmax(0,1.2fr) minmax(300px,.86fr) minmax(240px,.56fr);gap:1rem;align-items:stretch}
.mf-taste-watch-lead{grid-area:lead;display:grid;grid-template-rows:minmax(300px,360px) auto;border:1px solid rgba(232,180,0,.18);border-radius:1.7rem;overflow:hidden;background:#0d1008;min-height:100%}
.mf-taste-watch-lead img{width:100%;height:100%;min-height:0;object-fit:cover;object-position:center}
.mf-taste-watch-lead div{display:grid;gap:.55rem;padding:1.1rem}
.mf-taste-watch-lead span,.mf-taste-watch-stack span{font:700 .66rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:#e8b400}
.mf-taste-watch-lead strong{font:700 clamp(1.35rem,2vw,2rem) var(--f-heading);line-height:1.02;color:var(--text)}
.mf-taste-watch-lead small{font-size:.84rem;line-height:1.7;color:rgba(240,244,240,.62)}
.mf-taste-watch-stack{grid-area:stack;display:grid;gap:1rem;grid-template-rows:repeat(3,1fr)}
.mf-taste-watch-stack a{display:grid;grid-template-columns:132px 1fr;gap:.85rem;padding:.85rem;border:1px solid rgba(232,180,0,.14);border-radius:1.25rem;background:rgba(255,255,255,.02);align-items:center;min-height:132px}
.mf-taste-watch-stack img{width:132px;height:96px;object-fit:cover;border-radius:1rem}
.mf-taste-watch-stack strong{display:block;color:var(--text);line-height:1.18}
.mf-taste-watch-note{grid-area:note;position:relative;overflow:hidden;display:grid;align-content:start;gap:1rem;padding:1.15rem;border:1px solid rgba(232,180,0,.22);background:linear-gradient(160deg,rgba(232,180,0,.14),rgba(45,184,75,.06) 48%,rgba(26,58,107,.18)),rgba(255,255,255,.018);border-radius:1.6rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.mf-taste-watch-note::after{content:'';position:absolute;right:-28px;bottom:-28px;width:116px;height:116px;border-radius:50%;border:2px solid rgba(232,180,0,.22);background:repeating-conic-gradient(from 12deg,rgba(255,255,255,.12) 0 10deg,transparent 10deg 34deg);opacity:.35;pointer-events:none}
.mf-taste-watch-note h3{max-width:16ch;font-size:1.35rem;line-height:1.05;color:var(--text)}
.mf-taste-watch-note ul{display:grid;gap:.72rem;margin:0;padding:0;list-style:none}
.mf-taste-watch-note li{display:grid;gap:.2rem;padding:.72rem;border:1px solid rgba(232,180,0,.12);border-radius:1rem;background:rgba(0,0,0,.18)}
.mf-taste-watch-note li strong{color:#e8b400;font:800 .72rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.mf-taste-watch-note li span{color:rgba(240,244,240,.7);font-size:.78rem;line-height:1.45}
.mf-taste-watch-note p{font-size:.84rem;line-height:1.7;color:rgba(240,244,240,.64)}
@media(max-width:1200px){
 .mf-taste-watch-grid{grid-template-areas:"lead stack" "note note";grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr)}
 .mf-taste-watch-note{grid-column:1/-1}
 .mf-home-taste .mf-daily-lead h1{font-size:clamp(2rem,4.1vw,3rem)}
}

body.mf-stl-directory-page .stl-directory-pagination {
  display: grid;
  grid-template-columns: minmax(7rem, auto) 1fr minmax(7rem, auto);
  align-items: center;
  gap: .75rem;
  margin-top: 1rem;
}

body.mf-stl-directory-page .stl-directory-pagination[hidden] {
  display: none;
}

body.mf-stl-directory-page .stl-directory-pagination > span {
  color: var(--muted);
  font: 700 .78rem/1.2 var(--f-mono);
  text-align: center;
}

body.mf-stl-directory-page .stl-directory-pagination button:disabled {
  cursor: not-allowed;
  opacity: .45;
}

@media (max-width: 820px) {
  body.mf-stl-directory-page .stl-directory-pagination {
    position: sticky;
    bottom: .75rem;
    z-index: 12;
    padding: .6rem;
    border: 1px solid rgba(200, 242, 48, .28);
    border-radius: 16px;
    background: rgba(2, 12, 8, .94);
    box-shadow: 0 14px 34px rgba(0, 0, 0, .42);
    backdrop-filter: blur(12px);
  }
}
.mf-growth-viz--taste{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.85rem;align-items:stretch}
.mf-growth-intro{display:grid;gap:.8rem;padding:1rem 1.1rem;border-left:2px solid rgba(232,180,0,.45)}
.mf-growth-intro h3{font-size:1.55rem;line-height:1.02;color:var(--text)}
.mf-growth-intro p{font-size:.84rem;line-height:1.7;color:rgba(240,244,240,.62)}
.mf-growth-viz--taste a{min-height:168px}
.mf-growth-card{position:relative;isolation:isolate;overflow:hidden;display:grid;align-content:end;gap:.45rem;padding:1rem;border:1px solid rgba(232,180,0,.2);border-radius:16px;background:#0a120c;color:var(--text);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.mf-growth-card::before{content:"";position:absolute;inset:0;z-index:-2;background:var(--growth-image) center/cover no-repeat;filter:saturate(1.05) contrast(1.04)}
.mf-growth-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(5,8,5,.04),rgba(5,8,5,.88) 74%),linear-gradient(135deg,var(--growth-color),transparent 62%)}
.mf-growth-card:hover{transform:translateY(-3px);border-color:rgba(232,180,0,.72);box-shadow:0 18px 45px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08)}
.mf-growth-card span{width:max-content;padding:.28rem .55rem;border-radius:999px;background:rgba(232,180,0,.94);color:#1a1a00;font:800 .62rem var(--f-mono);letter-spacing:.08em}
.mf-growth-card strong{font-size:1.1rem;line-height:1.03;text-transform:uppercase;text-shadow:0 2px 12px rgba(0,0,0,.65)}
.mf-growth-card small{max-width:22ch;color:rgba(255,255,255,.82);font-size:.76rem;line-height:1.45;text-shadow:0 1px 8px rgba(0,0,0,.65)}
.mf-growth-card--events{--growth-color:rgba(232,48,42,.54);--growth-image:url("/assets/img/heroes/shared-hero-banner.png")}
.mf-growth-card--pathway{--growth-color:rgba(232,180,0,.5);--growth-image:url("/assets/img/stl-hero/youth-soccer-field.jpg")}
.mf-growth-card--players{--growth-color:rgba(45,184,75,.5);--growth-image:url("/assets/img/heroes/shared-hero-banner.png")}
.mf-growth-card--leagues{--growth-color:rgba(26,58,107,.58);--growth-image:url("/assets/img/stl-hero/energizer-park-stl.jpg")}
.mf-growth-card--media{--growth-color:rgba(232,48,42,.46);--growth-image:url("/assets/img/homepage/fifa-world-football-week-un-hq.jpg")}
.mf-growth-card--events::after{background:linear-gradient(180deg,rgba(5,8,5,.02),rgba(5,8,5,.9) 72%),linear-gradient(135deg,rgba(232,48,42,.62),rgba(232,180,0,.22) 54%,transparent 74%)}
.mf-growth-card--pathway::after{background:linear-gradient(180deg,rgba(5,8,5,.04),rgba(5,8,5,.88) 73%),linear-gradient(135deg,rgba(232,180,0,.62),rgba(82,58,18,.16) 58%,transparent 74%)}
.mf-growth-card--players::after{background:linear-gradient(180deg,rgba(5,8,5,.05),rgba(5,8,5,.9) 74%),linear-gradient(135deg,rgba(45,184,75,.58),rgba(232,48,42,.18) 60%,transparent 78%)}
.mf-growth-card--leagues::after{background:linear-gradient(180deg,rgba(5,8,5,.02),rgba(5,8,5,.9) 72%),linear-gradient(135deg,rgba(26,58,107,.66),rgba(232,180,0,.2) 58%,transparent 78%)}
.mf-growth-card--media::after{background:linear-gradient(180deg,rgba(5,8,5,.02),rgba(5,8,5,.9) 72%),linear-gradient(135deg,rgba(232,48,42,.48),rgba(232,180,0,.2) 58%,transparent 78%)}
.potw-flag{display:inline-flex;align-items:center;gap:.55rem;width:max-content;padding:.34rem .62rem;border:1px solid rgba(232,180,0,.34);border-radius:999px;background:rgba(6,16,9,.78);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.potw-flag img{display:block;width:44px;height:30px;object-fit:cover;border-radius:5px;box-shadow:0 0 0 1px rgba(255,255,255,.18)}
.potw-flag b{color:#e8b400;font:900 .72rem var(--f-mono);letter-spacing:.12em}
.potw-club{display:inline-flex;align-items:center;gap:.55rem;width:max-content;padding:.34rem .62rem;border:1px solid rgba(232,180,0,.34);border-radius:999px;background:rgba(6,16,9,.78);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.potw-club img{display:block;width:32px;height:32px;object-fit:contain}
.potw-club b{color:#e8b400;font:900 .72rem/1.2 var(--f-mono);letter-spacing:.08em}
.mf-entertainment-grid--taste{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:1rem}
.mf-side-stack{display:grid;gap:1rem;align-content:start}
#mf-daily-picks{min-height:auto;align-self:start}
#mf-daily-picks .mf-daily-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
#mf-daily-picks .mf-daily-list a{padding:1rem;border:1px solid rgba(232,180,0,.14);border-radius:1.15rem;background:rgba(255,255,255,.02)}
.mf-poll-card,.mf-daily-card{border:1px solid rgba(232,180,0,.14);border-radius:1.5rem;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));box-shadow:0 18px 40px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.04)}
.mf-poll-options{display:grid;gap:.65rem}
.mf-poll-options button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;padding:.85rem .95rem;border:1px solid rgba(232,180,0,.14);border-radius:999px;background:rgba(255,255,255,.02);color:var(--text);transition:transform .22s ease,border-color .22s ease,background .22s ease}
.mf-poll-options button:hover,.mf-poll-options button.is-selected{border-color:rgba(232,180,0,.38);background:rgba(232,180,0,.09);transform:translateX(4px)}
.mf-poll-count{flex:0 0 auto;font:700 .64rem var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:rgba(240,244,240,.68)}
.mf-home-video-card,.potw-card{box-shadow:0 22px 50px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.05)}
.newsletter-strip{display:grid !important;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:end;border:1px solid rgba(232,180,0,.18);border-radius:1.6rem;background:linear-gradient(135deg,rgba(20,20,8,.96),rgba(13,13,5,.9)) !important;box-shadow:0 18px 50px rgba(0,0,0,.2), inset 0 1px 0 rgba(255,255,255,.04)}
.newsletter-strip ul{display:grid;gap:.35rem;margin-top:.65rem}
.mf-dossier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.mf-dossier-card{display:grid;gap:1rem;min-height:220px;padding:1.2rem;border:1px solid rgba(232,180,0,.14);background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01));position:relative;overflow:hidden}
.mf-dossier-card::before{content:'';position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,var(--brand-red),var(--brand-yellow),var(--brand-green))}
.mf-dossier-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}
.mf-dossier-flag{font-size:1.5rem;line-height:1}
.mf-dossier-card strong{font:700 clamp(2rem,4vw,3.1rem) var(--f-heading);line-height:.92;text-transform:uppercase;max-width:4ch}
.mf-dossier-code{font:700 1.25rem var(--f-mono);color:rgba(240,244,240,.8)}
.mf-dossier-card small{font:700 .66rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:#e8b400}
.mf-dossier-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:auto}
.mf-dossier-stats span{display:grid;gap:.15rem}
.mf-dossier-stats em{font-style:normal;font:600 .55rem var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:rgba(240,244,240,.48)}
.mf-dossier-stats b{font:700 2rem var(--f-heading);color:var(--text)}
.mf-editorial-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.95fr);gap:1rem}
.mf-editorial-panel{border:1px solid rgba(232,180,0,.14);background:rgba(255,255,255,.015);padding:1rem}
.mf-editorial-head{display:grid;gap:.25rem;margin-bottom:.8rem}
.mf-editorial-list,.mf-written-stack{display:grid;gap:.75rem}
.mf-episode-row{display:grid;grid-template-columns:72px 1fr;gap:.8rem;align-items:center;padding:.9rem;border-left:2px solid rgba(232,180,0,.35);background:rgba(255,255,255,.015)}
.mf-episode-row span{display:inline-flex;align-items:center;justify-content:center;min-height:48px;font:700 .72rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:#e8b400;background:rgba(232,180,0,.08)}
.mf-episode-row strong,.mf-written-stack strong{font:700 1rem/1.15 var(--f-heading);color:var(--text)}
.mf-episode-row small,.mf-written-stack small{font-size:.72rem;color:rgba(240,244,240,.58)}
.mf-episode-row--featured{grid-template-columns:180px 1fr;position:relative;padding:0;border-left:none;overflow:hidden}
.mf-episode-row--featured img{width:100%;height:100%;object-fit:cover;min-height:180px}
.mf-episode-row--featured div{display:grid;gap:.45rem;padding:1rem}
.mf-episode-row--featured p{font-size:.82rem;line-height:1.65;color:rgba(240,244,240,.62)}
.mf-episode-row--featured .mf-video-label{position:absolute;top:.8rem;left:.8rem}
.mf-written-stack a{display:grid;gap:.3rem;padding:.95rem;border-left:2px solid rgba(232,180,0,.32);background:rgba(255,255,255,.015)}
.mf-written-stack span{font:700 .6rem var(--f-mono);letter-spacing:.09em;text-transform:uppercase;color:rgba(240,244,240,.62)}
.mf-map-grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,.62fr));gap:1rem}
.mf-map-feature,.mf-map-stat{min-height:220px;padding:1.15rem;border:1px solid rgba(232,180,0,.14);background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01))}
.mf-map-feature{display:grid;align-content:start;gap:.75rem}
.mf-map-feature h3{font:700 clamp(1.7rem,2.8vw,2.5rem) var(--f-heading);line-height:.95;color:var(--text)}
.mf-map-feature p{max-width:42ch;font-size:.84rem;line-height:1.7;color:rgba(240,244,240,.62)}
.mf-map-stat{display:grid;align-content:start;gap:.45rem}
.mf-map-stat span{font:700 .56rem var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:rgba(240,244,240,.55)}
.mf-map-stat strong{font:700 clamp(3rem,7vw,4.8rem) var(--f-heading);line-height:.88;color:var(--brand-red)}
.mf-map-stat b{font:700 1.15rem var(--f-heading);color:var(--text);text-transform:uppercase}
.mf-map-stat small{font-size:.76rem;line-height:1.65;color:rgba(240,244,240,.58)}
.mf-map-stat--player strong{color:var(--brand-green);font-size:2.1rem}
.mf-map-stat--player .label{margin-bottom:.15rem}
.mf-map-stat--player .btn-gold{margin-top:auto}
.mf-brief-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.92fr);gap:.9rem;align-items:start}
.mf-newsletter-band--editorial{min-height:100%;padding:1.35rem !important;grid-template-columns:minmax(0,1fr) minmax(260px,.78fr) !important;align-items:center}
.mf-newsletter-band--editorial h3{max-width:11ch;font:700 clamp(1.45rem,3.4vw,2.4rem) var(--f-heading);line-height:.94;text-transform:uppercase}
.mf-newsletter-band--editorial p{max-width:42ch}
.mf-live-feed-panel{display:grid;gap:.8rem}
.mf-live-feed-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.mf-live-feed-grid a{display:grid;gap:.45rem;min-height:140px;padding:1rem;border-top:2px solid rgba(232,180,0,.45);border-left:1px solid rgba(232,180,0,.14);border-right:1px solid rgba(232,180,0,.14);border-bottom:1px solid rgba(232,180,0,.14);background:rgba(255,255,255,.015)}
.mf-live-feed-grid span{font:700 .62rem var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:#e8b400}
.mf-live-feed-grid strong{font:700 .98rem/1.2 var(--f-heading);color:var(--text);max-width:18ch}
.mf-live-feed-grid small{font-size:.72rem;color:rgba(240,244,240,.52)}
.mf-home-taste .stl-subheading,.mf-home-taste h1,.mf-home-taste h2,.mf-home-taste h3{text-wrap:balance;letter-spacing:-.04em}
.mf-home-taste .mf-daily-hero{padding-bottom:.15rem}
.mf-home-taste .mf-daily-grid{grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);gap:.75rem;align-items:start;padding:.35rem 0 .15rem}
.mf-home-taste .mf-daily-lead{max-width:46rem;padding:.82rem .88rem .72rem;border-left:4px solid #e8b400;background:linear-gradient(180deg,rgba(4,6,4,.86),rgba(4,6,4,.72));box-shadow:0 14px 32px rgba(0,0,0,.18)}
.mf-home-taste .mf-daily-lead h1{max-width:12ch;font-size:clamp(2.1rem,4vw,3.55rem);line-height:.94}
.mf-home-taste .mf-daily-lead p{max-width:50ch;font-size:.9rem;color:rgba(240,244,240,.72)}
.mf-home-taste .mf-daily-board{padding:.68rem .68rem .62rem;border-radius:1.25rem;background:linear-gradient(180deg,rgba(18,22,13,.96),rgba(11,14,9,.96));border:1px solid rgba(232,180,0,.14);box-shadow:0 14px 34px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.05)}
.mf-home-taste .mf-board-main{min-height:112px}
.mf-home-taste .mf-home-hero-actions > *{flex:0 0 auto}
.mf-home-taste .mf-home-hero-grid{width:min(100% - 2rem,1180px);margin-inline:auto}
.mf-home-taste .mf-board-tiles{margin-top:.7rem}
.mf-home-taste #mf-daily-worldcup{margin:.15rem 0 .65rem}
.mf-home-taste #mf-daily-worldcup .mf-wc-clock{margin:0}
.mf-home-taste .mf-daily-ticker{margin-top:0}
.mf-home-taste .mf-taste-note{display:none}
.mf-home-taste .mf-daily-card{padding:1.35rem 1.4rem;border-radius:1.85rem;background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012));box-shadow:0 24px 60px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.04)}
.mf-home-taste #mf-daily-picks{position:relative;overflow:hidden}
.mf-home-taste #mf-daily-picks::before,.mf-home-taste .mf-poll-card::before,.mf-home-taste .potw-card::before,.mf-home-taste .newsletter-strip::before{content:'';position:absolute;inset:0 auto auto 0;width:100%;height:1px;background:linear-gradient(90deg,rgba(232,48,42,.95),rgba(232,180,0,.9),rgba(45,184,75,.9));opacity:.85}
.mf-home-taste #mf-daily-picks h2{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.mf-home-taste #mpd{font:600 .72rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:rgba(240,244,240,.52)}
.mf-home-taste #mf-daily-picks .mf-daily-list{grid-template-columns:1.15fr .85fr}
.mf-home-taste #mf-daily-picks .mf-daily-list a{min-height:104px;display:grid;align-content:start;gap:.35rem;border-radius:1.2rem;background:rgba(255,255,255,.015);transition:transform .28s cubic-bezier(.16,1,.3,1),border-color .28s cubic-bezier(.16,1,.3,1),background .28s cubic-bezier(.16,1,.3,1)}
.mf-home-taste #mf-daily-picks .mf-daily-list a:hover{transform:translateY(-3px);border-color:rgba(232,180,0,.34);background:rgba(232,180,0,.05)}
.mf-home-taste .mf-entertainment-grid--taste{align-items:start}
.mf-home-taste .mf-side-stack .mf-daily-card{align-self:start}
.mf-home-taste #mf-daily-submit{display:none}
.mf-home-taste .mf-poll-options button{position:relative;overflow:hidden;border-radius:1rem;padding:1rem 1rem}
.mf-home-taste .mf-poll-options button::before{content:'';position:absolute;inset:0 auto 0 0;width:0;background:linear-gradient(90deg,rgba(232,180,0,.12),rgba(232,180,0,0));transition:width .28s cubic-bezier(.16,1,.3,1)}
.mf-home-taste .mf-poll-options button:hover::before,.mf-home-taste .mf-poll-options button.is-selected::before{width:100%}
.mf-home-taste .mf-poll-options button:hover,.mf-home-taste .mf-poll-options button.is-selected{transform:translateY(-2px);border-color:rgba(232,180,0,.38);background:rgba(255,255,255,.03)}
.mf-home-taste .potw-card{position:relative;max-width:560px;padding:1.6rem 1.6rem 1.45rem;border-radius:1.85rem;background:radial-gradient(circle at top right,rgba(232,180,0,.12),transparent 32%),linear-gradient(160deg,rgba(22,22,0,.98),rgba(11,12,7,.98))}
.mf-home-taste .potw-photo{width:88px;height:88px;border-radius:1.1rem;overflow:hidden;border:1px solid rgba(232,180,0,.24);background:rgba(255,255,255,.03);box-shadow:0 12px 24px rgba(0,0,0,.2)}
.mf-home-taste .potw-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.mf-home-taste .potw-card h3{font-size:clamp(1.7rem,4vw,2.8rem);line-height:.92;text-transform:uppercase}
.mf-home-taste .potw-card p{max-width:46ch;color:rgba(240,244,240,.72)}
.mf-home-taste .mf-episode-row--featured{grid-template-columns:minmax(220px,.9fr) minmax(0,1.1fr);min-height:220px;border:1px solid rgba(232,180,0,.14);border-radius:1.55rem;background:rgba(255,255,255,.018)}
.mf-home-taste .mf-episode-row--featured img{min-height:220px;filter:saturate(.92) contrast(1.03)}
.mf-home-taste .mf-episode-row--featured div{padding:1.25rem 1.25rem 1.15rem}
.mf-home-taste .mf-episode-row--featured strong{font-size:clamp(1.35rem,2.2vw,2.2rem);line-height:.96;text-transform:uppercase}
.mf-home-taste .mf-episode-row,.mf-home-taste .mf-written-stack a,.mf-home-taste .mf-map-feature,.mf-home-taste .mf-map-stat,.mf-home-taste .mf-dossier-card{transition:transform .28s cubic-bezier(.16,1,.3,1),border-color .28s cubic-bezier(.16,1,.3,1),background .28s cubic-bezier(.16,1,.3,1)}
.mf-home-taste .mf-episode-row:hover,.mf-home-taste .mf-written-stack a:hover,.mf-home-taste .mf-map-feature:hover,.mf-home-taste .mf-map-stat:hover,.mf-home-taste .mf-dossier-card:hover{transform:translateY(-3px);border-color:rgba(232,180,0,.32);background:rgba(255,255,255,.028)}
.mf-home-taste .newsletter-strip{position:relative;overflow:hidden;padding:1.35rem !important;border-radius:1.5rem;background:
 linear-gradient(135deg,rgba(20,20,8,.98),rgba(10,12,8,.98)) !important}
.mf-home-taste .newsletter-strip h3{max-width:11ch;font-size:clamp(1.55rem,3.2vw,2.45rem);line-height:.92;letter-spacing:-.04em}
.mf-home-taste .newsletter-strip .subscribe-input{min-height:54px;border-radius:1rem;background:rgba(255,255,255,.02);border:1px solid rgba(232,180,0,.18)}
.mf-home-taste .newsletter-strip .btn{min-height:54px;border-radius:1rem}
.mf-home-taste .mf-live-feed-grid a{min-height:156px;border-radius:1.2rem;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.012))}
.mf-home-taste .btn,.mf-home-taste .btn-gold,.mf-home-taste .stl-btn,.mf-home-taste .share-btn{transition:transform .24s cubic-bezier(.16,1,.3,1),box-shadow .24s cubic-bezier(.16,1,.3,1),background .24s cubic-bezier(.16,1,.3,1),border-color .24s cubic-bezier(.16,1,.3,1)}
.mf-home-taste .btn:hover,.mf-home-taste .btn-gold:hover,.mf-home-taste .stl-btn:hover,.mf-home-taste .share-btn:hover{transform:translateY(-2px)}
.mf-home-worldcup-wrap{margin-top:1.25rem}
.mf-home-story-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}
.mf-home-story-card{display:grid;grid-template-columns:132px minmax(0,1fr);gap:.85rem;align-items:stretch;padding:.8rem;border:1px solid rgba(232,180,0,.14);border-radius:1.1rem;background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012));min-height:100%}
.mf-home-story-card--text{grid-template-columns:1fr}
.mf-home-story-card__media{overflow:hidden;border-radius:.85rem;background:rgba(255,255,255,.03)}
.mf-home-story-card__media img{display:block;width:100%;height:100%;min-height:100px;object-fit:cover}
.mf-home-story-card__body{display:grid;align-content:start;gap:.45rem;min-width:0}
.mf-home-story-card__meta,.mf-link-tile__meta{display:flex;flex-wrap:wrap;gap:.45rem;font:600 .66rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:rgba(240,244,240,.66)}
.mf-home-story-card__topic{color:var(--accent)}
.mf-home-story-card strong,.mf-link-tile strong{display:block;color:var(--text);font:700 1rem/1.12 var(--f-heading)}
.mf-home-story-card small,.mf-link-tile small{display:block;color:rgba(240,244,240,.72);font-size:.84rem;line-height:1.45}
.mf-link-tile{display:grid;gap:.55rem;padding:1rem;border:1px solid rgba(232,180,0,.12);border-radius:1rem;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01))}
.mf-link-tile__cta{font:700 .75rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.mf-home-status-card{display:grid;gap:.6rem;padding:.88rem .92rem;border:1px solid rgba(232,180,0,.12);border-radius:1rem;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.012))}
.mf-home-status-card__meta{display:flex;align-items:center;justify-content:space-between;gap:.65rem;flex-wrap:wrap}
.mf-home-status-card__meta span{display:inline-flex;align-items:center;padding:.26rem .5rem;border-radius:999px;border:1px solid rgba(232,72,42,.26);background:rgba(232,72,42,.08);color:#ff6e59;font:700 .62rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.mf-home-status-card__meta strong{color:rgba(240,244,240,.76);font:600 .72rem/1.2 var(--f-mono);letter-spacing:.06em;text-transform:uppercase}
.mf-home-status-card p{margin:0;color:var(--text);font:700 1rem/1.16 var(--f-heading)}
.mf-home-status-card small{display:block;color:rgba(240,244,240,.68);font-size:.8rem;line-height:1.45}
.mf-home-status-card__actions{display:flex;flex-wrap:wrap;gap:.55rem;padding-top:.1rem}
.mf-story-meta{display:flex;flex-wrap:wrap;gap:.45rem}
.mf-wc-home{display:grid;gap:1rem;padding:1.15rem;border:1px solid rgba(245,200,66,.16);border-radius:1.35rem;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));box-shadow:0 20px 50px rgba(0,0,0,.2)}
.mf-wc-home__lead{display:grid;gap:1rem}
.mf-wc-home__media{overflow:hidden;border-radius:1rem;background:rgba(255,255,255,.03)}
.mf-wc-home__img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.mf-wc-home__copy{display:grid;gap:.85rem}
.mf-wc-home__topline{display:flex;justify-content:space-between;align-items:center;gap:.8rem;flex-wrap:wrap}
.mf-wc-home__copy h2{margin:0;font-size:clamp(1.45rem,3vw,2.3rem);line-height:1}
.mf-wc-home__copy p{margin:0;color:rgba(240,244,240,.78);max-width:65ch}
.mf-wc-home__local{padding:.8rem .9rem;border:1px solid rgba(245,200,66,.14);border-radius:.9rem;background:rgba(245,200,66,.04)}
.mf-wc-home__rail{display:grid;gap:1rem}
.mf-wc-home__headlines,.mf-wc-home__next{display:grid;gap:.7rem;padding:1rem;border:1px solid rgba(255,255,255,.08);border-radius:1rem;background:rgba(255,255,255,.018)}
.mf-wc-home__headline{display:grid;gap:.25rem;padding:.75rem .85rem;border:1px solid rgba(255,255,255,.06);border-radius:.85rem;background:rgba(255,255,255,.015)}
.mf-wc-home__headline strong,.mf-wc-home__next strong,.mf-wc-home__fallback strong{font-size:1rem;line-height:1.15}
.mf-wc-home__headline small,.mf-wc-home__next small,.mf-wc-home__fallback small{color:rgba(240,244,240,.68)}
.mf-wc-home__notes,.mf-wc-home__snapshot{display:grid;gap:.7rem}
.mf-wc-home__snapshot-row{display:grid;gap:.2rem;padding:.72rem .8rem;border:1px solid rgba(255,255,255,.06);border-radius:.85rem;background:rgba(255,255,255,.015)}
.mf-wc-home__snapshot-row span{color:var(--muted);font:600 .58rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase}
.mf-wc-home__snapshot-row strong{font-size:.96rem;line-height:1.12}
.mf-wc-home__snapshot-row small{color:rgba(240,244,240,.68);line-height:1.45}
.mf-wc-home__countdown{display:grid;gap:.2rem;padding-top:.3rem}
.mf-wc-home__countdown strong{font:700 1.15rem/1 var(--f-mono)}
.mf-wc-home__fallback{display:grid;gap:.35rem;padding:.75rem .85rem;border:1px dashed rgba(255,255,255,.16);border-radius:.85rem}
.mf-wc-home.is-stale{border-color:rgba(255,255,255,.12)}
@media (min-width: 900px){
 .mf-wc-home__lead{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:stretch}
 .mf-wc-home__rail{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr)}
}
@media (max-width: 900px){
 .mf-home-story-rail{grid-template-columns:1fr}
}
@media (max-width: 640px){
 .mf-home-story-card{grid-template-columns:96px minmax(0,1fr);gap:.7rem;padding:.75rem}
 .mf-home-story-card__media img{min-height:84px}
 .mf-home-story-card strong{font-size:.95rem}
 .mf-home-story-card small{font-size:.8rem}
}
.mf-home-taste .btn:active,.mf-home-taste .btn-gold:active,.mf-home-taste .stl-btn:active,.mf-home-taste .share-btn:active{transform:scale(.985)}
@media(max-width:1080px){
 .mf-daily-grid,.mf-entertainment-grid--taste,.mf-growth-viz--taste,.mf-dossier-grid,.mf-editorial-grid,.mf-map-grid,.mf-brief-grid,.mf-live-feed-grid{grid-template-columns:1fr}
 .mf-growth-intro{border-left:none;border-top:2px solid rgba(232,180,0,.45)}
 .mf-taste-watch-lead img{min-height:240px}
 .mf-episode-row--featured{grid-template-columns:1fr}
 .mf-episode-row--featured img{min-height:220px}
 .mf-home-taste #mf-daily-picks .mf-daily-list{grid-template-columns:1fr}
 .mf-home-taste .newsletter-strip h3{max-width:none}
 .mf-home-taste .mf-daily-grid{padding:.7rem 0 .35rem}
 .mf-home-taste .mf-daily-lead{max-width:none;padding:.9rem .88rem .78rem}
 .mf-home-taste .mf-daily-lead h1{max-width:14ch;font-size:clamp(2.1rem,5.8vw,3.15rem)}
 .mf-home-taste .mf-board-main{min-height:auto}
}
@media(max-width:768px){
 .mf-daily-grid{padding:.72rem 0 .45rem}
 .mf-daily-lead h1{max-width:none;font-size:clamp(1.8rem,8vw,2.55rem)}
 .mf-home-hero-actions{align-items:stretch}
 .mf-home-hero-actions > *{width:100%}
 .mf-daily-tabs{width:100%}
 .mf-daily-tabs button{flex:1 1 auto;text-align:center}
 .mf-taste-watch-grid{grid-template-columns:1fr}
 .mf-taste-watch-stack a{grid-template-columns:96px 1fr}
 #mf-daily-picks .mf-daily-list{grid-template-columns:1fr}
 .newsletter-strip{grid-template-columns:1fr !important;align-items:start}
 .mf-map-stat strong{font-size:3.25rem}
 .mf-newsletter-band--editorial h3{max-width:none}
}

/* Growth cards explicit soccer imagery override */
.mf-growth-viz--taste a.mf-growth-card{min-height:228px}
.mf-growth-viz--taste .mf-growth-card{grid-template-rows:112px 1fr;padding:0}
.mf-growth-viz--taste .mf-growth-card::before{display:none}
.mf-growth-viz--taste .mf-growth-card::after{z-index:0;background:linear-gradient(180deg,rgba(5,8,5,0) 0,rgba(5,8,5,.16) 38%,rgba(5,8,5,.94) 100%),linear-gradient(135deg,var(--growth-color),transparent 62%)}
.mf-growth-card__media{position:relative;z-index:0;overflow:hidden}
.mf-growth-card__media img{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(.92) contrast(1.04)}
.mf-growth-card__body{position:relative;z-index:1;display:grid;align-content:end;gap:.45rem;padding:1rem}
.mf-growth-card--events{--growth-color:rgba(232,48,42,.54)}
.mf-growth-card--pathway{--growth-color:rgba(232,180,0,.5)}
.mf-growth-card--players{--growth-color:rgba(45,184,75,.5)}
.mf-growth-card--leagues{--growth-color:rgba(26,58,107,.58)}
.mf-growth-card--media{--growth-color:rgba(232,48,42,.46)}
@media(max-width:768px){
 .mf-growth-viz--taste .mf-growth-card{grid-template-rows:104px 1fr}
}
@media(min-width:1536px){
 .mf-home-taste .mf-daily-grid{grid-template-columns:minmax(0,.96fr) minmax(19rem,.62fr)}
 .mf-home-taste .mf-daily-lead h1{max-width:11ch}
}
@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}

/* EMPTY STATE */.empty-state{text-align:center;padding:4rem 2rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg)}.empty-state-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-state h4{color:var(--text);margin-bottom:.5rem}

/* MEDIA QUERIES */
@media(max-width:1024px){.footer-inner{grid-template-columns:1fr 1fr}.pillar-grid{grid-template-columns:repeat(2,1fr)}.bio-section{grid-template-columns:1fr;gap:2rem}.bio-photo{max-width:280px;margin:0 auto}
}
@media(max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.nav-links,.nav-actions.btn-theme{display:none}.hamburger{display:flex}.hero{position:relative;min-height:26vh;display:flex;align-items:center;overflow:hidden}.hero-ctas{flex-direction:column;align-items:flex-start}.pillar-grid{grid-template-columns:repeat(2,1fr)}.cta-strip{text-align:center;flex-direction:column}.cta-strip-btns{justify-content:center}.footer-inner{grid-template-columns:1fr;gap:2rem}.form-grid{grid-template-columns:1fr}
}
@media(max-width:480px){.pillar-grid{grid-template-columns:1fr}
 h1{font-size:2rem}
}


/* 
 HOMEPAGE Hero split, stat band, video wall, magazine
 STL Soccer embedded section
 */
/* HERO SPLIT */.hero-split {
 min-height: 26vh;
 display: grid;
 grid-template-columns: 1fr 1fr;
 align-items: center;
 overflow: hidden;
 position: relative;
}.hero-split::after {
 content: '';
 position: absolute;
 inset: 0;
 background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23c8f230' fill-opacity='0.025'%3E%3Ccircle cx='30' cy='30' r='1'/%3E%3C/g%3E%3C/svg%3E");
 pointer-events: none;
}.hero-left {
 padding: 5rem 3rem 4rem 0;
 position: relative;
 z-index: 1;
}.hero-left.hero-pills { margin-bottom: 1.1rem; }.hero-left h1 {
 font-size: clamp(2.2rem, 3.5vw, 3.6rem);
 margin-bottom:.85rem;
 line-height: 1.1;
 max-width: 560px;
}.hero-left.hero-desc {
 font-size:.95rem;
 max-width: 440px;
 margin-bottom: 1.75rem;
 line-height: 1.7;
}.hero-ctas { display: flex; flex-wrap: wrap; gap:.6rem; margin-bottom: 2rem; }

/* Stats bar */.hero-stats {
 display: flex; gap: 2rem; margin-bottom: 1.75rem;
 padding: 1rem 1.25rem;
 background: var(--surface);
 border: 1px solid var(--border);
 border-radius: var(--r-md);
 width: fit-content;
}.hero-stat-val {
 font-family: var(--f-display);
 font-size: 1.6rem;
 color: var(--accent);
 line-height: 1;
}.hero-stat-label {
 font-family: var(--f-mono);
 font-size:.58rem;
 letter-spacing:.14em;
 text-transform: uppercase;
 color: var(--muted);
 margin-top:.2rem;
}

/* Hero right video + thumbnail carousel */.hero-right {
 position: relative;
 height: 100%;
 min-height: 88vh;
 display: flex;
 flex-direction: column;
 justify-content: center;
 gap: 1rem;
 padding: 2rem 0 2rem 1.5rem;
 z-index: 1;
}

/* Latest YouTube embed */.hero-yt-embed {
 border-radius: var(--r-lg);
 overflow: hidden;
 border: 1px solid var(--border-s);
 box-shadow: 0 8px 40px rgba(0,0,0,.6), 0 0 0 1px rgba(245,200,66,.08);
 position: relative;
 cursor: pointer;
 flex-shrink: 0;
}.hero-yt-embed img {
 width: 100%;
 aspect-ratio: 16/9;
 object-fit: cover;
 display: block;
 transition: transform.4s ease;
}.hero-yt-embed:hover img { transform: scale(1.03); }.hero-yt-overlay {
 position: absolute;
 inset: 0;
 background: linear-gradient(to top, rgba(9,13,9,.85) 0%, rgba(9,13,9,.1) 50%, transparent 100%);
 display: flex;
 flex-direction: column;
 justify-content: space-between;
 padding: 1rem;
}.hero-yt-badge {
 align-self: flex-start;
 font-family: var(--f-mono);
 font-size:.6rem;
 letter-spacing:.15em;
 text-transform: uppercase;
 background: var(--accent);
 color: #090d09;
 padding:.3rem.7rem;
 border-radius: var(--r-full);
 font-weight: 700;
}.hero-yt-bottom { display: flex; align-items: flex-end; justify-content: space-between; gap:.75rem; }.hero-yt-title {
 font-family: var(--f-heading);
 font-weight: 700;
 font-size:.9rem;
 color: #fff;
 line-height: 1.3;
 flex: 1;
}.hero-yt-play {
 width: 48px; height: 48px; border-radius: 50%;
 background: var(--accent);
 display: flex; align-items: center; justify-content: center;
 color: #090d09; font-size: 1.1rem;
 flex-shrink: 0;
 transition: transform.2s, box-shadow.2s;
}.hero-yt-embed:hover.hero-yt-play {
 transform: scale(1.1);
 box-shadow: 0 0 24px rgba(245,200,66,.4);
}

/* Thumbnail row carousel */.hero-thumb-row {
 display: flex;
 gap:.65rem;
 overflow-x: auto;
 scrollbar-width: none;
 padding-bottom:.25rem;
}.hero-thumb-row::-webkit-scrollbar { display: none; }.hero-thumb {
 flex-shrink: 0;
 width: 120px;
 border-radius: var(--r-md);
 overflow: hidden;
 border: 2px solid transparent;
 cursor: pointer;
 transition: border-color.2s, transform.2s;
 position: relative;
}.hero-thumb:hover,.hero-thumb.active {
 border-color: var(--accent);
 transform: translateY(-2px);
}.hero-thumb img {
 width: 100%;
 aspect-ratio: 16/9;
 object-fit: cover;
 display: block;
}.hero-thumb-label {
 position: absolute;
 inset: 0;
 background: rgba(9,13,9,.5);
 display: flex;
 align-items: flex-end;
 padding:.4rem.5rem;
 font-family: var(--f-mono);
 font-size:.56rem;
 color: rgba(255,255,255,.8);
 letter-spacing:.06em;
 text-transform: uppercase;
 line-height: 1.2;
 opacity: 0;
 transition: opacity.2s;
}.hero-thumb:hover.hero-thumb-label { opacity: 1; }

/* Watchalong pill */.watchalong-strip {
 background: var(--surface);
 border: 1px solid var(--border);
 border-radius: var(--r-full);
 padding:.55rem 1.1rem;
 display: inline-flex;
 align-items: center;
 gap:.75rem;
 font-size:.82rem;
 flex-wrap: wrap;
 width: fit-content;
}

/* VISUAL STAT BAND */.stat-band {
 background: var(--surface);
 border-top: 1px solid var(--border);
 border-bottom: 1px solid var(--border);
 padding: 1.25rem 0;
}.stat-band-inner {
 max-width: var(--max-w); margin: 0 auto; padding: 0 1.5rem;
 display: flex; align-items: center; justify-content: space-between;
 gap: 1rem; flex-wrap: wrap;
}.stat-band-item {
 display: flex; align-items: center; gap:.75rem;
 padding: 0 1.5rem;
 border-right: 1px solid var(--border);
 flex: 1; min-width: 140px;
}.stat-band-item:last-child { border-right: none; }.stat-band-num {
 font-family: var(--f-display);
 font-size: 1.8rem;
 color: var(--accent);
 line-height: 1;
 white-space: nowrap;
}.stat-band-text {
 font-family: var(--f-mono);
 font-size:.62rem;
 letter-spacing:.12em;
 text-transform: uppercase;
 color: var(--muted);
 line-height: 1.4;
}

/* FEATURED EPISODE (split) */.featured-ep {
 display: grid;
 grid-template-columns: 1.1fr 1fr;
 gap: 2.5rem;
 align-items: center;
 background: var(--surface);
 border: 1px solid var(--border);
 border-radius: var(--r-lg);
 overflow: hidden;
}.featured-ep-thumb {
 aspect-ratio: 16/9;
 position: relative;
 overflow: hidden;
 cursor: pointer;
}.featured-ep-thumb img {
 width: 100%; height: 100%; object-fit: cover;
 transition: transform.4s;
 display: block;
}.featured-ep-thumb:hover img { transform: scale(1.04); }.featured-ep-play {
 position: absolute; inset: 0;
 background: rgba(9,13,9,.35);
 display: flex; align-items: center; justify-content: center;
}.featured-ep-play-btn {
 width: 72px; height: 72px; border-radius: 50%;
 background: var(--accent); color: #090d09;
 display: flex; align-items: center; justify-content: center;
 font-size: 1.6rem;
 box-shadow: 0 0 40px rgba(245,200,66,.35);
 transition: transform.2s;
}.featured-ep-thumb:hover.featured-ep-play-btn { transform: scale(1.1); }.featured-ep-body { padding: 2rem 2rem 2rem 0; }.featured-ep-body.section-label { margin-bottom:.6rem; }.featured-ep-body h3 {
 font-family: var(--f-display);
 font-size: clamp(1.2rem, 2vw, 1.7rem);
 color: var(--text);
 margin-bottom:.75rem;
 line-height: 1.2;
}.featured-ep-body p { font-size:.9rem; margin-bottom: 1.5rem; }.ep-meta-row {
 display: flex; gap: 1rem; flex-wrap: wrap; margin-bottom: 1.5rem;
}.ep-meta-chip {
 font-family: var(--f-mono); font-size:.65rem;
 letter-spacing:.1em; text-transform: uppercase;
 padding:.3rem.75rem; border-radius: var(--r-full);
 background: var(--surface-2); border: 1px solid var(--border);
 color: var(--muted);
}

/* VIDEO WALL GRID */.video-wall {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 1rem;
}.video-wall-card {
 border-radius: var(--r-md);
 overflow: hidden;
 position: relative;
 cursor: pointer;
 border: 1px solid var(--border);
 transition: border-color.2s, transform.2s, box-shadow.2s;
}.video-wall-card:hover {
 border-color: var(--border-s);
 transform: translateY(-3px);
 box-shadow: 0 8px 30px rgba(0,0,0,.5), 0 0 0 1px rgba(245,200,66,.1);
}.video-wall-card img {
 width: 100%;
 aspect-ratio: 16/9;
 object-fit: cover;
 display: block;
 transition: transform.4s;
}.video-wall-card:hover img { transform: scale(1.05); }.video-wall-overlay {
 position: absolute; inset: 0;
 background: linear-gradient(to top, rgba(9,13,9,.9) 0%, rgba(9,13,9,.1) 55%, transparent 100%);
 padding:.85rem;
 display: flex; flex-direction: column; justify-content: flex-end;
}.video-wall-tag {
 font-family: var(--f-mono); font-size:.58rem;
 letter-spacing:.14em; text-transform: uppercase;
 color: var(--accent); margin-bottom:.3rem;
}.video-wall-title {
 font-family: var(--f-heading); font-weight: 700;
 font-size:.82rem; color: #fff; line-height: 1.3;
}.video-wall-duration {
 font-family: var(--f-mono); font-size:.62rem;
 color: rgba(255,255,255,.55); margin-top:.25rem;
}

/* PLATFORM ROW */.platform-row {
 display: flex; gap: 1rem; flex-wrap: wrap; align-items: center;
}.platform-badge {
 display: flex; align-items: center; gap:.5rem;
 padding:.6rem 1.1rem;
 background: var(--surface); border: 1px solid var(--border);
 border-radius: var(--r-full);
 font-family: var(--f-heading); font-size:.82rem; font-weight: 600;
 color: var(--text); transition: all.2s; white-space: nowrap;
}.platform-badge:hover {
 border-color: var(--border-s);
 background: var(--surface-2);
 transform: translateY(-1px);
}.platform-badge.dot {
 width: 7px; height: 7px; border-radius: 50%;
 background: var(--accent);
}

/* CONTENT MAGAZINE ROW */.mag-row {
 display: grid;
 grid-template-columns: 1.5fr 1fr 1fr;
 gap: 1.25rem;
}.mag-card-featured {
 background: var(--surface); border: 1px solid var(--border);
 border-radius: var(--r-lg); overflow: hidden;
 transition: border-color.2s, transform.2s;
}.mag-card-featured:hover { border-color: var(--border-s); transform: translateY(-3px); }.mag-card-featured-img {
 width: 100%; aspect-ratio: 16/9;
 background: linear-gradient(135deg, var(--surface-2), var(--surface-3));
 position: relative; overflow: hidden;
}.mag-card-featured-img img { width: 100%; height: 100%; object-fit: cover; display: block; }.mag-card-featured-body { padding: 1.25rem; }.mag-card-sm {
 background: var(--surface); border: 1px solid var(--border);
 border-radius: var(--r-lg); padding: 1.25rem;
 transition: border-color.2s, transform.2s;
 display: flex; flex-direction: column; justify-content: space-between;
}.mag-card-sm:hover { border-color: var(--border-s); transform: translateY(-3px); }.mag-card-sm-thumb {
 width: 100%; aspect-ratio: 16/9; border-radius: var(--r-sm);
 overflow: hidden; margin-bottom:.85rem; background: var(--surface-2);
}.mag-card-sm-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* RESPONSIVE */
@media (max-width: 1024px) {.hero-split { grid-template-columns: 1fr; min-height: auto; }.hero-left { padding: 4rem 0 1.5rem; }.hero-right { min-height: auto; padding: 0 0 3rem; }.featured-ep { grid-template-columns: 1fr; }.featured-ep-body { padding: 0 1.5rem 1.5rem; }.video-wall { grid-template-columns: repeat(2,1fr); }.mag-row { grid-template-columns: 1fr; }
}
@media (max-width: 768px) {.hero-split { padding: 0 1.5rem; }.hero-stats { gap: 1rem; }.stat-band-item { padding: 0.75rem; min-width: 100px; }.stat-band-num { font-size: 1.4rem; }.video-wall { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {.hero-left h1 { font-size: 2rem; }.stat-band-inner { justify-content: center; }.stat-band-item { border-right: none; border-bottom: 1px solid var(--border); padding:.5rem 1rem; }
}
/* 
 STL SOCCER SECTION All component styles
 */

/* Section scaffold */
#stl-soccer { background:var(--bg); }.stl-container { max-width:var(--max-w); margin:0 auto; padding:0 1.5rem; }.stl-section { padding:2rem 0; }.stl-section--alt { padding:2rem 0; background:var(--surface); border-top:1px solid var(--border); border-bottom:1px solid var(--border); }.stl-section-header-row { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; flex-wrap:wrap; margin-bottom:1.75rem; }

/* Typography */.stl-heading { font-family:var(--f-display); font-size:clamp(1.6rem,2.5vw,2.4rem); letter-spacing:-.02em; color:var(--text); line-height:1.1; }.stl-subheading { font-family:var(--f-heading); font-weight:700; font-size:clamp(1.05rem,1.8vw,1.4rem); color:var(--text); line-height:1.2; }.stl-eyebrow { font-family:var(--f-mono); font-size:.62rem; letter-spacing:.18em; text-transform:uppercase; color:var(--accent); }.stl-muted { color:var(--muted); font-size:.9rem; line-height:1.65; }

/* Buttons */.stl-btn { display:inline-flex; align-items:center; gap:.5rem; font-family:var(--f-heading); font-size:.88rem; font-weight:700; padding:.65rem 1.35rem; border-radius:var(--r-md); transition:all.2s; cursor:pointer; border:1px solid transparent; text-decoration:none; }.stl-btn--primary { background:var(--accent); color:#090d09; border-color:var(--accent); }.stl-btn--primary:hover { background:var(--accent-h); }.stl-btn--ghost { background:transparent; color:var(--text); border-color:var(--border-s); }.stl-btn--ghost:hover { background:var(--surface-2); border-color:var(--accent); color:var(--accent); }.stl-btn--sm { padding:.45rem.9rem; font-size:.78rem; }

/* Pills / badges */.stl-pill { font-family:var(--f-mono); font-size:.62rem; letter-spacing:.14em; text-transform:uppercase; padding:.28rem.8rem; border-radius:var(--r-full); border:1px solid var(--border-s); color:var(--accent); background:var(--accent-bg); display:inline-flex; align-items:center; gap:.35rem; }.stl-pill--win { background:rgba(40,200,80,.12); color:#4ddb80; border-color:rgba(40,200,80,.28); }.stl-pill--draw { background:rgba(200,180,40,.1); color:#f0d040; border-color:rgba(200,180,40,.28); }.stl-pill--loss { background:rgba(220,60,60,.1); color:#f07070; border-color:rgba(220,60,60,.25); }.stl-pill--solid { background:var(--accent); color:#090d09; border-color:var(--accent); font-weight:700; }

/* TICKER */.stl-match-ticker { display:flex; align-items:center; overflow:hidden; background:var(--surface); border-bottom:1px solid var(--border); height:40px; white-space:nowrap; }.stl-ticker-label { flex-shrink:0; padding:0 1rem; font-family:var(--f-mono); font-size:.58rem; letter-spacing:.18em; text-transform:uppercase; color:var(--accent); background:var(--surface-2); border-right:1px solid var(--border); height:100%; display:flex; align-items:center; }.stl-ticker-track { display:flex; align-items:center; gap:2rem; animation:ticker-scroll 40s linear infinite; will-change:transform; }.stl-ticker-track:hover { animation-play-state:paused; }.stl-ticker-item { display:inline-flex; align-items:center; gap:.6rem; flex-shrink:0; }.stl-ticker-team { font-family:var(--f-heading); font-weight:700; font-size:.78rem; color:var(--text); }.stl-ticker-score { font-family:var(--f-display); font-size:.85rem; color:var(--accent); padding:0.25rem; }.stl-ticker-meta { font-family:var(--f-mono); font-size:.68rem; color:var(--muted); }.stl-ticker-dot { width:6px; height:6px; border-radius:50%; background:var(--accent); flex-shrink:0; animation:blink 1.4s ease-in-out infinite; }
@keyframes ticker-scroll { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }
@keyframes blink { 0%,100%{opacity:1} 50%{opacity:.25} }

/* CITY SC HERO BLOCK */.stl-city-hero { background:radial-gradient(ellipse 80% 70% at 80% 40%,rgba(245,200,66,.07) 0%,transparent 60%),var(--bg); padding:2rem 0; border-bottom:1px solid var(--border); }.stl-city-layout { display:grid; grid-template-columns:auto 1fr; gap:3rem; align-items:start; }.stl-city-badge { display:flex; flex-direction:column; align-items:center; gap:1.25rem; min-width:180px; }.stl-city-crest { width:120px; height:120px; border-radius:50%; background:linear-gradient(135deg,var(--surface-2),var(--surface-3)); border:2px solid rgba(245,200,66,.3); display:flex; align-items:center; justify-content:center; font-size:4rem; box-shadow:0 0 28px rgba(245,200,66,.15); }

/* Season record */.stl-season-record { display:flex; gap:1rem; }.stl-record-item { text-align:center; background:var(--surface); border:1px solid var(--border); border-radius:var(--r-md); padding:.6rem.9rem; min-width:52px; }.stl-record-val { font-family:var(--f-display); font-size:1.9rem; color:var(--accent); line-height:1; }.stl-record-label { font-family:var(--f-mono); font-size:.58rem; letter-spacing:.15em; text-transform:uppercase; color:var(--muted); margin-top:.2rem; }

/* Match cards */.stl-matches-row { display:grid; grid-template-columns:1fr 1fr; gap:.75rem; margin-bottom:1.25rem; }.stl-match-card { background:var(--surface); border:1px solid var(--border); border-radius:var(--r-md); padding:.9rem 1rem; }.stl-match-card-label { font-family:var(--f-mono); font-size:.58rem; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); margin-bottom:.45rem; }.stl-match-teams { font-family:var(--f-heading); font-weight:700; font-size:.92rem; color:var(--text); margin-bottom:.25rem; }.stl-match-teams.vs { color:var(--muted); font-weight:400; margin:0.3rem; }.stl-match-result-score { font-family:var(--f-display); font-size:1.4rem; color:var(--accent); line-height:1; margin:.2rem 0; }.stl-match-detail { font-size:.78rem; color:var(--muted); }

/* Squad chips */.stl-squad-row { display:flex; flex-wrap:wrap; gap:.5rem; }.stl-player-chip { display:inline-flex; align-items:center; gap:.4rem; padding:.3rem.75rem; background:var(--surface); border:1px solid var(--border); border-radius:var(--r-full); font-size:.78rem; color:var(--text); }.stl-player-chip.num { font-family:var(--f-mono); font-size:.62rem; color:var(--accent); }

/* CITY2 STATS GRID */.stl-city2-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:.75rem; margin-bottom:1rem; }.stl-stat-card { background:var(--surface); border:1px solid var(--border); border-radius:var(--r-md); padding:1rem; text-align:center; transition:border-color.2s; }.stl-stat-card:hover { border-color:var(--border-s); }.stl-stat-card.stat-val { font-family:var(--f-display); font-size:1.6rem; color:var(--accent); line-height:1; margin-bottom:.3rem; }.stl-stat-card.stat-label { font-family:var(--f-mono); font-size:.6rem; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }

/* Signing card */.stl-signing-card { display:flex; align-items:flex-start; gap:1rem; background:var(--surface); border:1px solid var(--border); border-radius:var(--r-md); padding:1rem; }.stl-signing-avatar { width:44px; height:44px; border-radius:50%; background:var(--accent-bg); border:1px solid rgba(245,200,66,.2); display:flex; align-items:center; justify-content:center; font-size:1.2rem; flex-shrink:0; }.stl-signing-name { font-weight:700; color:var(--text); margin-bottom:.2rem; }.stl-signing-meta { font-family:var(--f-mono); font-size:.68rem; color:var(--muted); }

/* GRASSROOTS GRID */.stl-grassroots-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }.stl-community-card { background:var(--surface); border:1px solid var(--border); border-radius:var(--r-lg); padding:1.25rem; transition:border-color.2s, transform.2s; }.stl-community-card:hover { border-color:var(--border-s); transform:translateY(-2px); }.stl-community-card-top { display:flex; align-items:flex-start; gap:.75rem; margin-bottom:.75rem; }.stl-community-icon { font-size:1.6rem; flex-shrink:0; }.stl-community-card-title { font-weight:700; font-size:.9rem; color:var(--text); line-height:1.2; }.stl-community-card-sub { font-family:var(--f-mono); font-size:.62rem; color:var(--muted); margin-top:.15rem; }.stl-growth-pill { display:inline-flex; align-items:center; gap:.4rem; margin-top:.75rem; padding:.3rem.7rem; background:rgba(245,200,66,.08); border:1px solid rgba(245,200,66,.18); border-radius:var(--r-full); font-family:var(--f-mono); font-size:.62rem; color:var(--accent); }

/* RESPONSIVE */
@media(max-width:1024px){.stl-city-layout { grid-template-columns:1fr; gap:2rem; }.stl-city-badge { flex-direction:row; align-items:flex-start; min-width:unset; }.stl-grassroots-grid { grid-template-columns:repeat(2,1fr); }
}
@media(max-width:640px){.stl-city2-grid { grid-template-columns:repeat(2,1fr); }.stl-matches-row { grid-template-columns:1fr; }.stl-season-record { gap:.6rem; }.stl-record-val { font-size:1.5rem; }.stl-grassroots-grid { grid-template-columns:1fr 1fr; }.stl-city-badge { flex-direction:column; align-items:center; }
}
@media(max-width:400px){.stl-grassroots-grid { grid-template-columns:1fr; }
}

/* stl-city-info flex column for the City SC info side */.stl-city-info { flex:1; min-width:0; }



/* 
 PROFESSIONAL POLISH spacing, typography, card depth
 */

/* Restore readable section padding for non-hero content */.section { padding:2.25rem 0 !important; }.section--sm { padding:1.35rem 0 !important; }

/* Consistent card depth */.spotlight-card,.stl-community-card,.team-focus,.league-card,.hub-card,.pool-card {
 box-shadow: 0 2px 12px rgba(0,0,0,.35);
}

/* Better blockquote style */
blockquote p { margin:0; }

/* Tighter section header */.section-header { margin-bottom:1.75rem; }.section-header-row { margin-bottom:1.5rem; }

/* Pro nav style better weight distribution */.nav-links a {
 font-size:.82rem !important;
 letter-spacing:.01em;
}

/* CTA strip more compact */.cta-strip {
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:1.5rem;
 flex-wrap:wrap;
 background:linear-gradient(135deg, var(--surface-2), var(--surface-3));
 border:1px solid var(--border);
 border-radius:var(--r-lg);
 padding:1.5rem 2rem;
}.cta-strip h3 { font-size:1.1rem; margin-bottom:.25rem; color:var(--text); }.cta-strip p { font-size:.85rem; color:var(--muted); margin:0; }.cta-strip-btns { display:flex; gap:.65rem; flex-wrap:wrap; flex-shrink:0; }

/* About page profile sticky positioning */
@media(max-width:768px) {.grid-2 > div:first-child { position:static !important; }
}

/* embed-wrap for Spotify */.embed-wrap { border-radius:var(--r-md); overflow:hidden; }.embed-wrap iframe { display:block; }

/* platform badge */.platform-badge {
 display:flex;
 align-items:center;
 gap:.75rem;
 padding:.75rem 1rem;
 background:var(--surface);
 border:1px solid var(--border);
 border-radius:var(--r-md);
 font-size:.9rem;
 font-weight:600;
 color:var(--text);
 transition:border-color.2s, transform.2s;
}.platform-badge:hover { border-color:var(--brand-yellow); transform:translateX(3px); }.platform-badge.dot {
 width:8px; height:8px; border-radius:50%;
 background:var(--brand-yellow);
 flex-shrink:0;
 animation:blink 2s infinite;
}

/* Refined table style */
table { border-collapse:collapse; width:100%; }

/* Grid helpers */.grid-auto { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:1.25rem; }

/* Footer improvement */
#site-footer { border-top:1px solid var(--border); margin-top:0; }.footer-inner { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:2.5rem; padding:3rem 0 2rem; }.footer-bottom { padding:1.25rem 0; border-top:1px solid var(--border); display:flex; align-items:center; justify-content:space-between; font-family:var(--f-mono); font-size:.62rem; color:var(--muted); gap:1rem; flex-wrap:wrap; }.footer-brand p { font-size:.82rem; color:var(--muted); margin:.5rem 0 1rem; max-width:280px; line-height:1.7; }.footer-col h5 { font-size:.78rem; letter-spacing:.12em; text-transform:uppercase; color:var(--text); margin-bottom:.85rem; }.footer-col ul li { margin-bottom:.4rem; }.footer-col ul a { font-size:.85rem; color:var(--muted); transition:color.2s; }.footer-col ul a:hover { color:var(--brand-yellow); }.footer-social { display:flex; gap:.5rem; margin-top:.75rem; flex-wrap:wrap; }.social-icon { width:32px; height:32px; border-radius:var(--r-sm); background:var(--surface-2); border:1px solid var(--border); display:flex; align-items:center; justify-content:center; color:var(--muted); transition:all.2s; }.social-icon:hover { background:var(--brand-yellow); color:#0A0A0A; border-color:var(--brand-yellow); }

/* Section label with accent bar */.section-label::before {
 content:'';
 display:inline-block;
 width:12px;
 height:2px;
 background:var(--brand-yellow);
 vertical-align:middle;
 margin-right:.5rem;
 border-radius:1px;
}

/* Watchalong strip */.watchalong-strip {
 display:inline-flex;
 align-items:center;
 gap:.65rem;
 padding:.5rem.85rem;
 background:var(--surface);
 border:1px solid var(--border);
 border-radius:var(--r-full);
 font-size:.78rem;
 flex-wrap:wrap;
}

@media(max-width:900px) {.footer-inner { grid-template-columns:1fr 1fr; }
}
@media(max-width:480px) {.footer-inner { grid-template-columns:1fr; }.cta-strip { padding:1.25rem 1rem; }
}


/* 
 UX OVERHAUL v3 Media brand design system
 Magazine cards Live score widgets Retention UI
 Mobile-first Smooth reveals Brand consistency
 */

/* GLOBAL BODY PADDING FOR MOBILE BOTTOM NAV */
@media(max-width:768px){
 body { padding-bottom: 62px !important; }
}

/* NAV tighter, cleaner */
#site-nav {
 height: 60px;
 --nav-h: 60px;
}.nav-inner { padding: 0 1.25rem; }.nav-logo-img{width:42px;height:42px;border-radius:var(--r-sm);border:2px solid rgba(245,200,66,.3);transition:border-color.25s,transform.25s}.nav-logo.logo-main { font-size: 1rem; }.nav-links a { font-size:.8rem; padding:.4rem.7rem; }

/* HERO magazine split layout */.hero-split {
 min-height: auto !important;
 background:
 radial-gradient(ellipse 60% 80% at 100% 0%, rgba(232,48,42,.12) 0%, transparent 55%),
 radial-gradient(ellipse 50% 60% at 0% 100%, rgba(45,184,75,.1) 0%, transparent 55%),
 var(--bg);
 padding: 0;
}.hero-split.container {
 padding-top: calc(60px + 1.75rem) !important;
 padding-bottom: 2rem !important;
}

/* SOCIAL PROOF BAR */.social-proof-bar {
 background: var(--surface);
 border-top: 1px solid var(--border);
 border-bottom: 1px solid var(--border);
 height: 34px;
 overflow: hidden;
 display: flex;
 align-items: center;
}.social-proof-track {
 display: flex;
 gap: 2.5rem;
 white-space: nowrap;
 animation: ticker-scroll 40s linear infinite;
 will-change: transform;
}
@keyframes ticker-scroll {
 from { transform: translateX(0); }
 to { transform: translateX(-50%); }
}.social-proof-track:hover { animation-play-state: paused; }.sp-item {
 display: inline-flex;
 align-items: center;
 gap:.5rem;
 font-family: 'JetBrains Mono', monospace;
 font-size:.62rem;
 letter-spacing:.05em;
 color: var(--muted);
}.sp-item strong { color: var(--brand-yellow); }.sp-dot {
 width: 4px; height: 4px;
 border-radius: 50%;
 background: var(--brand-green);
 flex-shrink: 0;
}

/* STAT BAND */.stat-band {
 background: var(--surface-2);
 border-bottom: 1px solid var(--border);
}.stat-band-inner {
 display: flex;
 justify-content: center;
 flex-wrap: wrap;
 max-width: var(--max-w);
 margin: 0 auto;
 padding: 0 1.5rem;
 divide-x: 1px solid var(--border);
}.stat-band-item {
 display: flex;
 align-items: center;
 gap:.75rem;
 padding:.85rem 2rem;
 border-right: 1px solid var(--border);
 flex-shrink: 0;
}.stat-band-item:last-child { border-right: none; }.stat-band-num {
 font-family: 'Archivo Black', sans-serif;
 font-size: 1.5rem;
 color: var(--brand-yellow);
 line-height: 1;
}.stat-band-text {
 font-family: 'JetBrains Mono', monospace;
 font-size:.6rem;
 letter-spacing:.1em;
 text-transform: uppercase;
 color: var(--muted);
 line-height: 1.4;
}
@media(max-width:640px){.stat-band-item { padding:.7rem 1.25rem; }.stat-band-num { font-size: 1.2rem; }
}

/* EPISODE CARDS magazine style */.ep-card {
 background: var(--surface);
 border: 1px solid var(--border);
 border-radius: 16px;
 overflow: hidden;
 display: flex;
 flex-direction: column;
 text-decoration: none;
 position: relative;
 transition: transform.24s cubic-bezier(.34,1.4,.64,1), border-color.2s, box-shadow.2s;
}.ep-card:hover {
 transform: translateY(-6px);
 border-color: var(--border-s);
 box-shadow: 0 20px 48px rgba(0,0,0,.5);
}.ep-card-thumb {
 width: 100%;
 aspect-ratio: 16/9;
 overflow: hidden;
 position: relative;
 background: var(--surface-2);
}.ep-card-thumb img {
 width: 100%; height: 100%;
 object-fit: cover;
 display: block;
 transition: transform.4s ease;
}.ep-card:hover.ep-card-thumb img { transform: scale(1.06); }.ep-card-play {
 position: absolute; inset: 0;
 display: flex; align-items: center; justify-content: center;
 background: rgba(0,0,0,.28);
 opacity: 0; transition: opacity.2s;
}.ep-card:hover.ep-card-play { opacity: 1; }.ep-card-play-btn {
 width: 52px; height: 52px;
 background: var(--brand-yellow);
 color: #0A0A0A;
 border-radius: 50%;
 display: flex; align-items: center; justify-content: center;
 font-size: 1.2rem;
 box-shadow: 0 4px 24px rgba(245,200,66,.5);
 transform: scale(.9);
 transition: transform.2s;
}.ep-card:hover.ep-card-play-btn { transform: scale(1); }.ep-card-duration {
 position: absolute; bottom:.55rem; right:.55rem;
 background: rgba(0,0,0,.78);
 color: #fff;
 font-family: 'JetBrains Mono', monospace;
 font-size:.58rem; padding:.18rem.55rem;
 border-radius: 999px;
 backdrop-filter: blur(4px);
}.ep-card-new {
 position: absolute; top:.55rem; left:.55rem;
 background: var(--brand-red); color: #fff;
 font-family: 'JetBrains Mono', monospace;
 font-size:.55rem; letter-spacing:.14em;
 text-transform: uppercase;
 padding:.2rem.6rem; border-radius: 999px;
}.ep-card-body {
 padding: 1rem 1.1rem 1.1rem;
 flex: 1; display: flex; flex-direction: column;
}.ep-card-tag {
 font-family: 'JetBrains Mono', monospace;
 font-size:.58rem; letter-spacing:.14em;
 text-transform: uppercase; color: var(--brand-yellow);
 margin-bottom:.4rem;
}.ep-card-title {
 font-family: 'Archivo', sans-serif;
 font-weight: 700; font-size:.92rem;
 color: var(--text); line-height: 1.35;
 flex: 1; margin-bottom:.65rem;
}.ep-card-meta {
 display: flex; align-items: center;
 justify-content: space-between;
 font-family: 'JetBrains Mono', monospace;
 font-size:.6rem; color: var(--muted);
 padding-top:.65rem;
 border-top: 1px solid var(--border);
 margin-top: auto;
}

/* PLATFORM PILLS */.platform-pill {
 display: flex; align-items: center; gap:.9rem;
 padding:.9rem 1.1rem;
 background: var(--surface);
 border: 1px solid var(--border);
 border-radius: 12px;
 text-decoration: none;
 color: var(--text);
 transition: all.2s;
}.platform-pill:hover {
 background: var(--surface-2);
 border-color: var(--border-s);
 transform: translateX(5px);
}.platform-pill-icon { font-size: 1.35rem; flex-shrink: 0; }.platform-pill-name { font-weight: 700; font-size:.88rem; }.platform-pill-sub { font-family: 'JetBrains Mono', monospace; font-size:.6rem; color: var(--muted); }.platform-pill-arrow { margin-left: auto; color: var(--muted); transition: transform.2s, color.2s; }.platform-pill:hover.platform-pill-arrow { transform: translateX(4px); color: var(--brand-yellow); }

/* INTRO / EXPLORE CARDS */.intro-card {
 background: var(--surface);
 border: 1px solid var(--border);
 border-radius: 16px;
 padding: 1.6rem;
 display: flex; flex-direction: column; gap:.6rem;
 text-decoration: none;
 position: relative; overflow: hidden;
 transition: transform.24s cubic-bezier(.34,1.4,.64,1), border-color.2s, box-shadow.2s;
}.intro-card::before {
 content: '';
 position: absolute; top: 0; left: 0; right: 0; height: 3px;
 background: var(--card-accent, var(--brand-yellow));
}.intro-card::after {
 content: '';
 position: absolute; bottom: 0; right: 0;
 width: 80px; height: 80px;
 background: radial-gradient(circle at 100% 100%, rgba(245,200,66,.06), transparent 70%);
 pointer-events: none;
}.intro-card:hover {
 transform: translateY(-5px);
 border-color: var(--border-s);
 box-shadow: 0 16px 40px rgba(0,0,0,.4);
}.intro-card-icon { font-size: 1.8rem; }.intro-card-title { font-family:'Archivo',sans-serif; font-weight:700; font-size:.95rem; color:var(--text); }.intro-card-desc { font-size:.82rem; color:var(--muted); line-height:1.55; flex:1; }.intro-card-cta { font-family:'JetBrains Mono',monospace; font-size:.62rem; letter-spacing:.1em; text-transform:uppercase; color:var(--brand-yellow); margin-top:.35rem; }

/* QUICK STRIP */.quick-strip {
 display: flex; gap:.45rem;
 overflow-x: auto; scrollbar-width: none;
 padding:.2rem 0;
 -webkit-overflow-scrolling: touch;
}.quick-strip::-webkit-scrollbar { display: none; }.quick-chip {
 display: inline-flex; align-items: center; gap:.35rem;
 padding:.42rem.9rem;
 border-radius: 999px;
 background: var(--surface-2);
 border: 1px solid var(--border);
 color: var(--muted);
 font-family: 'JetBrains Mono', monospace;
 font-size:.62rem; letter-spacing:.07em;
 text-transform: uppercase; white-space: nowrap;
 text-decoration: none;
 transition: all.18s;
 flex-shrink: 0;
}.quick-chip:hover {
 background: var(--brand-yellow);
 color: #0A0A0A;
 border-color: var(--brand-yellow);
 font-weight: 700;
 transform: translateY(-1px);
}

/* WATCHALONG STRIP */.watchalong-strip {
 display: inline-flex; align-items: center; gap:.75rem;
 background: var(--surface);
 border: 1px solid var(--border);
 border-radius: 999px;
 padding:.5rem 1rem;
 font-size:.8rem;
 flex-wrap: wrap;
}.watchalong-strip strong { color: var(--text); }

/* NEWSLETTER STRIP */.newsletter-strip {
 background: linear-gradient(135deg, rgba(232,48,42,.12) 0%, rgba(245,200,66,.1) 50%, rgba(45,184,75,.1) 100%);
 border: 1px solid rgba(245,200,66,.22);
 border-radius: 20px;
 padding: 2rem 2.5rem;
 display: flex; align-items: center;
 justify-content: space-between; gap: 2rem; flex-wrap: wrap;
}.newsletter-strip h3 { font-family:'Archivo Black',sans-serif; font-size:1.15rem; color:var(--text); margin-bottom:.25rem; }.newsletter-strip p { font-size:.84rem; color:var(--muted); max-width:340px; }.subscribe-form { display:flex; gap:.5rem; flex-wrap:wrap; min-width:260px; }.subscribe-input {
 flex:1; min-width:170px;
 padding:.62rem 1rem;
 background: rgba(0,0,0,.35);
 border: 1px solid rgba(245,200,66,.28);
 border-radius: 999px;
 color: var(--text);
 font-size:.85rem;
 outline: none;
 transition: border-color.2s;
}.subscribe-input:focus { border-color: var(--brand-yellow); }.subscribe-input::placeholder { color: var(--muted); }

/* CTA STRIP */.cta-strip {
 background: linear-gradient(135deg, rgba(232,48,42,.1), rgba(245,200,66,.08), rgba(45,184,75,.08));
 border: 1px solid rgba(245,200,66,.18);
 border-radius: 16px;
 padding: 1.75rem 2.25rem;
 display: flex; align-items: center; gap: 2rem; flex-wrap: wrap; justify-content: space-between;
}.cta-strip h3 { font-family:'Archivo Black',sans-serif; font-size:1rem; color:var(--text); margin-bottom:.2rem; }.cta-strip p { font-size:.82rem; color:var(--muted); }.cta-strip-btns { display:flex; gap:.6rem; flex-wrap:wrap; }

/* LATEST BADGE */.latest-badge {
 display: inline-flex; align-items: center; gap:.35rem;
 font-family: 'JetBrains Mono', monospace;
 font-size:.58rem; letter-spacing:.14em; text-transform: uppercase;
 padding:.25rem.7rem; border-radius: 999px;
 background: var(--brand-red); color: #fff;
 animation: latestPulse 2s ease-in-out infinite;
}
@keyframes latestPulse {
 0%,100% { box-shadow: 0 0 0 0 rgba(232,48,42,.4); }
 50% { box-shadow: 0 0 0 6px rgba(232,48,42,0); }
}

/* FLAG CHIPS */.flag-chip {
 display: inline-flex; align-items: center; gap:.35rem;
 font-size:.72rem; padding:.2rem.65rem;
 border-radius: 999px;
 background: var(--surface-2); border: 1px solid var(--border);
 color: var(--muted);
}

/* SECTION HEADER ROW */.section-header-row {
 display: flex; align-items: flex-end; justify-content: space-between;
 flex-wrap: wrap; gap:.75rem; margin-bottom: 1.25rem;
}.section-label {
 font-family: 'JetBrains Mono', monospace;
 font-size:.62rem; letter-spacing:.2em;
 text-transform: uppercase; color: var(--brand-yellow);
 display: block; margin-bottom:.35rem;
}

/* EMBED WRAP */.embed-wrap {
 border-radius: 12px; overflow: hidden;
 border: 1px solid var(--border);
}.embed-wrap iframe { display: block; }

/* SECTION SPACING */.section{padding:2.5rem 0}.section--sm{ padding: 1.75rem 0; }

/* RESPONSIVE GRID FIXES */
@media(max-width:768px){.newsletter-strip { padding:1.5rem; flex-direction:column; text-align:center; }.newsletter-strip p { max-width:100%; }.cta-strip { padding:1.25rem; flex-direction:column; text-align:center; }.cta-strip-btns { justify-content:center; }.hero-split.container { grid-template-columns:1fr !important; }.stat-band-item { padding:.6rem 1rem; }
}
@media(max-width:480px){.stat-band-inner { justify-content: flex-start; overflow-x: auto; flex-wrap: nowrap; scrollbar-width: none; }.stat-band-inner::-webkit-scrollbar { display: none; }
}

/* 
 BRAND SYSTEM MoFutbol logo colors applied site-wide
 */

/* Tri-color stripe under nav */
#site-nav::after {
 content:''; display:block; height:3px;
 background:linear-gradient(90deg,
 var(--brand-red) 0%,var(--brand-red) 33.3%,
 var(--brand-yellow) 33.3%,var(--brand-yellow) 66.6%,
 var(--brand-green) 66.6%,var(--brand-green) 100%
 );
 position:absolute; bottom:-3px; left:0; right:0;
}

/* Button brand */.btn-primary { background:linear-gradient(135deg,var(--brand-yellow),#ffd84f) !important; color:#0A0A0A !important; border:none !important; font-weight:700 !important; }.btn-primary:hover { background:linear-gradient(135deg,#ffd84f,var(--brand-yellow)) !important; box-shadow:0 0 28px rgba(245,200,66,.35) !important; }.btn-ghost { color:var(--brand-yellow) !important; border-color:rgba(245,200,66,.3) !important; }.btn-ghost:hover { background:rgba(245,200,66,.1) !important; border-color:var(--brand-yellow) !important; }

/* Accent text */.accent { color:var(--brand-yellow) !important; }.section-label,.eyebrow,.stl-eyebrow { color:var(--brand-yellow) !important; }

/* Hero brand corners */
/* hero::before handled below */

/* Sub-nav active */.sub-nav a.active,.sub-nav a[aria-current="page"] { border-bottom-color:var(--brand-yellow) !important; color:var(--brand-yellow) !important; }

/* Scrollbar brand */
::-webkit-scrollbar-thumb { background:linear-gradient(var(--brand-red),var(--brand-yellow),var(--brand-green)) !important; }

/* Body pitch texture */
body {
 background-image:
 radial-gradient(circle, rgba(45,184,75,.05) 1px, transparent 1px),
 repeating-linear-gradient(-45deg,transparent,transparent 80px,rgba(45,184,75,.02) 80px,rgba(45,184,75,.02) 81px);
 background-size: 28px 28px, auto;
}

/* Spotlight card brand borders */.spotlight-card:nth-child(3n+1) { border-left:3px solid var(--brand-yellow) !important; }.spotlight-card:nth-child(3n+2) { border-left:3px solid var(--brand-green) !important; }.spotlight-card:nth-child(3n+3) { border-left:3px solid var(--brand-red) !important; }

/* STL ticker brand */.stl-ticker-label { background:linear-gradient(135deg,var(--brand-red),var(--brand-yellow)) !important; color:#0A0A0A !important; font-weight:700 !important; }

/* Footer brand stripe */
#site-footer::before { content:''; display:block; height:4px; background:linear-gradient(90deg,var(--brand-red),var(--brand-yellow),var(--brand-green)); }
#site-footer { background:var(--brand-black); border-top:none; }

/* Dropdown hover fallback with delay */.nav-dropdown:focus-within.nav-dropdown-menu {
 opacity: 1;
 pointer-events: all;
 transform: translateY(0);
}
/* 
 MOFUTBOL DESIGN OVERHAUL
 Hero 50% smaller + topic background images
 Typography scaled down 50%
 Tighter professional spacing
 Soccer pitch backgrounds with brand gradients
 "Studio" removed from display text
 */

/* TYPOGRAPHY halved from original */


/* HERO compact sizing */.hero {
 min-height: 13vh !important;
 padding: 0 !important;
}.hero-content {
 padding:.75rem 0.65rem !important;
 position: relative; z-index: 2;
}.hero-split {
 min-height: auto !important;
}.hero-split.container {
 padding-top: calc(60px +.85rem) !important;
 padding-bottom: 1rem !important;
}.hero.hero-pills { margin-bottom:.35rem !important; }.hero.hero-ctas { gap:.4rem !important; margin-bottom:.4rem !important; }.hero h1 { margin-bottom:.3rem !important; }.hero-desc {
 font-size:.78rem !important;
 margin-bottom:.6rem !important;
 max-width: 440px;
}.watchalong-strip { padding:.3rem.7rem !important; font-size:.68rem !important; }

/* Hero background overlay for image pages */.hero::before {
 content: '';
 position: absolute; inset: 0; z-index: 1;
 background: linear-gradient(
 135deg,
 rgba(8,12,8,.88) 0%,
 rgba(8,12,8,.72) 45%,
 rgba(8,12,8,.45) 75%,
 rgba(8,12,8,.18) 100%
 );
 pointer-events: none;
}
/* For pages without images, use a solid dark overlay */.hero-no-img::before {
 background: rgba(8,12,8,.7);
}

/* GLOBAL SOCCER BACKGROUND SYSTEM */

/* Base body pitch hex pattern */
body {
 background-color: var(--bg) !important;
 background-image:
 /* Pitch center circle ghost */
 radial-gradient(ellipse 60% 40% at 50% 100%, rgba(45,184,75,.04) 0%, transparent 55%),
 /* Diagonal grass stripe */
 repeating-linear-gradient(
 -60deg,
 transparent 0px, transparent 38px,
 rgba(45,184,75,.025) 38px, rgba(45,184,75,.025) 39px
 ),
 /* Subtle dot grid */
 radial-gradient(circle, rgba(245,200,66,.05) 1px, transparent 1px) !important;
 background-size: auto, auto, 24px 24px !important;
}

/* Nav background darker + cleaner */
#site-nav {
 background: rgba(5,8,5,.97) !important;
 backdrop-filter: blur(20px);
 height: 54px !important;
 --nav-h: 54px !important;
 border-bottom: 1px solid rgba(45,184,75,.12) !important;
}

/* HERO BACKGROUNDS BY PAGE TYPE */

/* STL City / MLS hero stadium atmosphere */.hero-stl,.hero-mls {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.90) 0%, rgba(6,10,6,.62) 50%, rgba(6,10,6,.38) 100%),
 url('https://images.mlssoccer.com/image/private/t_editorial_landscape_8_desktop_mobile/f_auto/mls-stl/cqzpujrmztrw82j8cqhz.jpg') !important;
 background-size: cover !important;
 background-position: center 30% !important;
}

/* STL City SC page hero */.stl-city-hero {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.88) 0%, rgba(6,10,6,.55) 55%, rgba(6,10,6,.25) 100%),
 url('https://images.mlssoccer.com/image/private/t_editorial_landscape_8_desktop_mobile/f_auto/mls-stl/km06xbgwfr77mlkcx0sv.jpg') !important;
 background-size: cover !important;
 background-position: center 35% !important;
 padding: 1rem 0 !important;
 border-bottom: 1px solid var(--border);
}
/* Compact stl-city-hero internals */.stl-city-layout { gap: 1.5rem !important; }.stl-city-badge { gap:.6rem !important; min-width: 130px !important; }.stl-city-crest { width: 80px !important; height: 80px !important; font-size: 2.4rem !important; }.stl-season-record { gap:.35rem !important; }.stl-record-val { font-size: 1.3rem !important; }.stl-record-label{ font-size:.55rem !important; }.stl-heading { font-size: clamp(1.1rem, 2.2vw, 1.9rem) !important; margin-bottom:.35rem !important; }.stl-muted { font-size:.8rem !important; margin-bottom:.5rem !important; }.stl-eyebrow { font-size:.58rem !important; margin-bottom:.3rem !important; }

/* WPSL / Women's Premier League */.hero-wpsl,.hero-women {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.90) 0%, rgba(6,10,6,.62) 50%, rgba(6,10,6,.35) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 35% !important;
}

/* Soccer hub hero global soccer, world cup scale, packed crowd */.hero-soccer {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.88) 0%, rgba(6,10,6,.60) 50%, rgba(6,10,6,.35) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 35% !important;
}

/* World Cup hero stadium bowl packed crowd */.hero-wc {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.90) 0%, rgba(6,10,6,.62) 50%, rgba(6,10,6,.38) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 40% !important;
}

/* Africa hero grassroots/street soccer with warm overlay */.hero-africa {
 background-image:
 linear-gradient(135deg, rgba(8,12,8,.85) 0%, rgba(40,20,5,.65) 40%, rgba(8,12,8,.45) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 50% !important;
}

/* Europe hero Champions League */.hero-europe {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.90) 0%, rgba(6,10,6,.62) 50%, rgba(6,10,6,.35) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 35% !important;
}

/* STL Soccer hub players in match */.hero-stl-soccer {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.88) 0%, rgba(6,10,6,.60) 50%, rgba(6,10,6,.32) 100%),
 url('https://images.mlssoccer.com/image/private/t_editorial_landscape_8_desktop_mobile/f_auto/mls-stl/qlx6ay3i7wbjytzroi9x.jpg') !important;
 background-size: cover !important;
 background-position: center 25% !important;
}

/* Midwest PL / outdoor grass pitch */.hero-mwpl {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.88) 0%, rgba(6,10,6,.60) 50%, rgba(6,10,6,.32) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 40% !important;
}

/* High school hero */.hero-hs {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.90) 0%, rgba(6,10,6,.62) 50%, rgba(6,10,6,.35) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 40% !important;
}

/* Youth soccer young players, grassroots training */.hero-youth {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.88) 0%, rgba(6,10,6,.60) 50%, rgba(6,10,6,.32) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 35% !important;
}

/* Podcast / Media soccer matchday atmosphere */.hero-podcast,.hero-media {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.90) 0%, rgba(6,10,6,.65) 50%, rgba(6,10,6,.40) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 40% !important;
}

/* About grassroots soccer / community pitch */.hero-about {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.90) 0%, rgba(6,10,6,.65) 50%, rgba(6,10,6,.38) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 30% !important;
}

/* Events stadium crowd / matchday */.hero-events {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.90) 0%, rgba(6,10,6,.65) 50%, rgba(6,10,6,.38) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 35% !important;
}

/* NWSL women's professional soccer action */.hero-nwsl {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.90) 0%, rgba(6,10,6,.62) 50%, rgba(6,10,6,.35) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 30% !important;
}

/* Ambush / Indoor soccer arena */.hero-ambush {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.92) 0%, rgba(6,10,6,.65) 55%, rgba(6,10,6,.38) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 40% !important;
}

/* Clubs / Pathways */.hero-clubs,.hero-pathways {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.88) 0%, rgba(6,10,6,.60) 50%, rgba(6,10,6,.32) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 30% !important;
}

/* Champions League / HS Champs */.hero-cl {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.90) 0%, rgba(6,10,6,.62) 50%, rgba(6,10,6,.35) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 30% !important;
}

/* USL Championship */.hero-usl {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.90) 0%, rgba(6,10,6,.62) 50%, rgba(6,10,6,.35) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 35% !important;
}

/* STL Champions League high school soccer / prep stadium */.hero-champions-league {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.90) 0%, rgba(6,10,6,.65) 50%, rgba(6,10,6,.35) 100%),
 url("/assets/img/heroes/shared-hero-banner.png") !important;
 background-size: cover !important;
 background-position: center 40% !important;
}

/* STL City 2 MLS Next Pro development */.hero-city2 {
 background-image:
 linear-gradient(135deg, rgba(6,10,6,.92) 0%, rgba(6,10,6,.65) 50%, rgba(6,10,6,.35) 100%),
 url('https://images.mlssoccer.com/image/private/t_editorial_landscape_8_desktop_mobile/f_auto/mls-stl/cqzpujrmztrw82j8cqhz.jpg') !important;
 background-size: cover !important;
 background-position: center 30% !important;
}

/* SECTION SPACING tighter professional */.section { padding: 1.75rem 0 !important; }.section--sm { padding: 1.1rem 0 !important; }.section-header { margin-bottom: 1rem !important; }.section-header-row { margin-bottom: 1rem !important; }.container { padding: 0 1.25rem !important; }

/* CARD SYSTEM tighter */.spotlight-card,.ep-card-body,.intro-card,.platform-pill,.article-card,.story-card-body {
 padding:.85rem !important;
}.ep-card-title { font-size:.82rem !important; }.ep-card-tag { font-size:.52rem !important; }.ep-card-meta { font-size:.55rem !important; }

/* STAT BAND compact */.stat-band-item { padding:.55rem 1.25rem !important; }.stat-band-num { font-size: 1.2rem !important; }.stat-band-text { font-size:.52rem !important; }

/* NAV compact */.nav-inner { padding: 0 1.25rem !important; }





/* CTA STRIP compact */.cta-strip { padding: 1.1rem 1.5rem !important; }.cta-strip h3 { font-size:.92rem !important; }.cta-strip p { font-size:.75rem !important; }

/* NEWSLETTER STRIP */.newsletter-strip { padding: 1.25rem 1.75rem !important; }.newsletter-strip h3 { font-size:.95rem !important; }

/* FOOTER */.footer-col h5 { font-size:.72rem !important; }.footer-col ul li a { font-size:.72rem !important; }.footer-brand p { font-size:.72rem !important; }.footer-bottom { font-size:.58rem !important; }

/* TABLE COMPACT */.data-table th,.data-table td,.fx-table th,.fx-table td,.pool-table th,.pool-table td,.standings-tbl th,.standings-tbl td {
 padding:.4rem.65rem !important;
 font-size:.75rem !important;
}

/* SOCIAL PROOF BAR */.social-proof-bar { height: 28px !important; }.sp-item { font-size:.55rem !important; }

/* BOTTOM NAV */.bb-item { font-size:.48rem !important; }.bb-icon { font-size: 1rem !important; }

/* BRAND GRADIENT DIVIDER */
section + section::before {
 content: '';
 display: block;
 height: 1px;
 background: linear-gradient(90deg,
 transparent 0%,
 rgba(232,48,42,.2) 20%,
 rgba(245,200,66,.3) 50%,
 rgba(45,184,75,.2) 80%,
 transparent 100%
 ) !important;
 opacity: 1 !important;
}

/* MATCH TICKER tighter */.stl-match-ticker { height: 32px !important; }.stl-ticker-item { font-size:.62rem !important; }.stl-ticker-label { font-size:.55rem !important; padding:.2rem.65rem !important; }

/* WATCHALONG STRIP */.watchalong-strip { 
 gap:.5rem !important;
 padding:.38rem.85rem !important; 
 font-size:.7rem !important; 
}

/* Responsive adjustments */
@media(max-width:768px){.hero { min-height: 22vh !important; }
}

/* ENSURE ALL INNER HEROES HAVE BACKGROUND 
 Any.hero inside Soccer/STL/MLS sub-pages that still has no
 explicit image gets a subtle pitch-pattern fallback gradient
 */.hero:not([class*="hero-stl"]):not([class*="hero-mls"]):not([class*="hero-soccer"])
 :not([class*="hero-wc"]):not([class*="hero-africa"]):not([class*="hero-europe"])
 :not([class*="hero-hs"]):not([class*="hero-youth"]):not([class*="hero-podcast"])
 :not([class*="hero-media"]):not([class*="hero-about"]):not([class*="hero-events"])
 :not([class*="hero-ambush"]):not([class*="hero-clubs"]):not([class*="hero-pathways"])
 :not([class*="hero-cl"]):not([class*="hero-nwsl"]):not([class*="hero-women"]) {
 background-image:
 url("/assets/img/stl-hero/energizer-park-stl.jpg") !important;
 background-size: cover !important;
 background-position: center 25% !important;
}

/* Hero-split (index page) background */.hero-split.hero-stl {
 background-image:
 url("/assets/img/stl-hero/youth-soccer-field.jpg") !important;
 background-size: cover !important;
 background-position: center 30% !important;
}

/* NAV HOVER ANIMATIONS */.nav-logo:hover { opacity:.88; }.nav-logo:hover.nav-logo-img {
 border-color: var(--brand-yellow);
 transform: scale(1.07) rotate(-2deg);
}.nav-logo:hover.logo-main { color: var(--brand-yellow); }

/* Nav link hover lift + underline reveal */.nav-links a::after {
 content: '';
 position: absolute;
 bottom: 4px; left: 50%; right: 50%;
 height: 2px;
 background: var(--brand-yellow);
 transition: left.22s ease, right.22s ease;
 border-radius: 2px;
}.nav-links a:hover::after,.nav-links a.active::after { left: 8px; right: 8px; }.nav-links a:hover { color: var(--text) !important; transform: translateY(-1px); }.nav-links a.active { color: var(--text) !important; }

/* STL Soccer link golden */.nav-links.nav-stl::after { background: var(--brand-yellow); }.nav-links.nav-stl:hover { color: var(--brand-yellow) !important; }

/* Dropdown arrow animated */.nav-dropdown > a::after { content: ' '; font-size:.6rem; transition: transform.2s; display: inline-block; }.nav-dropdown.open > a::after,.nav-dropdown:focus-within > a::after { transform: rotate(180deg); }

/* Dropdown menu hover */.nav-dropdown-menu a:hover {
 background: var(--surface-2);
 color: var(--brand-yellow) !important;
 padding-left: 1.2rem;
}

/* Logo image pulse animation on page load */
@keyframes logoPulse {
 0% { box-shadow: 0 0 0 0 rgba(245,200,66,.5); }
 70% { box-shadow: 0 0 0 8px rgba(245,200,66,0); }
 100% { box-shadow: 0 0 0 0 rgba(245,200,66,0); }
}.nav-logo-img { animation: logoPulse 2.5s ease 0.8s 1; }

/* Hamburger hover */.hamburger:hover { background: var(--surface-3); }.hamburger span { transition: transform.3s, opacity.3s, background.2s; }.hamburger:hover span { background: var(--brand-yellow); }

/* USL United Soccer League, club soccer atmosphere */.hero-usl {
 background-image:
 url("/assets/img/homepage/fifa-world-football-week-un-hq.jpg") !important;
 background-size: cover !important;
 background-position: center 40% !important;
}

/* HERO SIZE CLAMP overrides any inline min-height */
/* Catches pages with inline style="min-height:42vh" etc. */
section[class*="hero"],.stl-city-hero {
 min-height: 0 !important;
 max-height: none !important;
}
/* Hero content inner padding override inline padding too */.stl-city-hero.stl-container,.stl-city-hero >.stl-container {
 padding-top:.85rem !important;
 padding-bottom:.85rem !important;
}

/* ACCESSIBILITY + TEXT RENDERING */
html{
 text-rendering:optimizeLegibility;
 -webkit-font-smoothing:antialiased;
 -moz-osx-font-smoothing:grayscale;
 scroll-behavior:smooth;
}
body{
 line-height:1.6;
 overflow-wrap:break-word;
}
h1,h2,h3,h4,h5,h6{
 text-wrap:balance;
 line-height:1.12;
}
p,li,td,th,small,.stl-muted,.mf-lede,.intro-card-desc{
 text-wrap:pretty;
}
.skip-link{
 position:absolute;
 left:1rem;
 top:1rem;
 z-index:9999;
 transform:translateY(-160%);
 background:#f5c842;
 color:#071107;
 padding:.7rem 1rem;
 border-radius:.75rem;
 font:700 .78rem var(--f-mono);
 text-decoration:none;
 box-shadow:0 10px 30px rgba(0,0,0,.3);
}
.skip-link:focus{
 transform:translateY(0);
}
.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;
}
a,button,input,select,textarea,summary,[role="button"]{
 min-height:44px;
}
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible{
 outline:3px solid #f5c842;
 outline-offset:3px;
 box-shadow:0 0 0 2px rgba(7,17,7,.9);
}
.site-nav__toggle,
.site-nav__link,
.site-nav__menu-button,
.site-theme-toggle,
.site-drawer a,
.stl-btn,
.btn,
.btn-gold{
 min-height:44px;
}
.site-nav__panel a,
.site-drawer a{
 line-height:1.35;
}
.stl-eyebrow,
.mf-hub-card__meta,
.mf-media-card__meta,
.stl-record-label,
.intro-card-cta,
.stl-directory-verified{
 color:rgba(230,236,230,.82)!important;
 letter-spacing:.08em;
}
.stl-muted,
.mf-lede,
.intro-card-desc,
.site-footer__copy,
.site-footer__bottom{
 color:rgba(222,228,222,.78)!important;
}
.data-table th{
 color:#f3f6f3;
}
.data-table td{
 color:rgba(232,236,232,.9);
}
.mf-search-empty,
.mf-empty,
.empty-state{
 color:#f1f4f1;
}
.stl-directory-logo,
.mf-logo-token{
 position:relative;
 display:inline-flex;
 align-items:center;
 justify-content:center;
 overflow:hidden;
}
.stl-directory-logo img,
.mf-logo-token img{
 width:100%;
 height:100%;
 object-fit:contain;
}
.stl-directory-card p,
.yp-subtext,
.ylc-body,
.ycc-body,
.ytc-body,
.yp-tl-body{
 line-height:1.65;
}
.stl-directory-card h3,
.ycc-name,
.ylc-name,
.yp-heading{
 overflow-wrap:anywhere;
}
.stl-directory-results-bar{
 gap:.45rem;
}

body.mf-stl-directory-page #coaches-trainers .stl-container,
body.mf-stl-directory-page #stl-directory .stl-container{
 max-width:1120px;
 margin-inline:auto;
}
body.mf-stl-directory-page #coaches-trainers .stl-section-header-row,
body.mf-stl-directory-page #stl-directory .stl-section-header-row{
 align-items:center;
 text-align:center;
 justify-content:center;
}
body.mf-stl-directory-page #coaches-trainers .stl-section-header-row>div,
body.mf-stl-directory-page #stl-directory .stl-section-header-row>div{
 margin-inline:auto;
}
body.mf-stl-directory-page #stl-directory-section-copy{
 margin-inline:auto;
}
body.mf-stl-directory-page .stl-directory-app{
 display:grid;
 gap:.75rem;
 justify-items:center;
}
body.mf-stl-directory-page .stl-trainer-week,
body.mf-stl-directory-page .stl-directory-toolbar{
 width:min(100%,1060px);
 margin-inline:auto;
}
body.mf-stl-directory-page .stl-trainer-week{
 display:grid;
 grid-template-columns:minmax(0,1fr) auto;
 gap:.8rem;
 align-items:center;
 padding:.85rem;
 border:1px solid rgba(245,200,66,.26);
 border-radius:10px;
 background:
  linear-gradient(135deg,rgba(245,200,66,.12),rgba(45,184,75,.06)),
  rgba(5,17,11,.94);
 box-shadow:none;
}
body.mf-stl-directory-page .stl-trainer-week h2{
 margin:.08rem 0 .25rem;
 font-size:clamp(1.1rem,1.6vw,1.45rem);
}
body.mf-stl-directory-page .stl-trainer-week p{
 max-width:68ch;
 margin:0 0 .55rem;
 color:rgba(232,236,232,.84);
}
body.mf-stl-directory-page .stl-trainer-week__actions{
 display:grid;
 gap:.42rem;
 min-width:160px;
}
body.mf-stl-directory-page .stl-directory-toolbar{
 text-align:left;
 padding:.9rem;
 border:1px solid rgba(245,200,66,.18);
 border-radius:10px;
 background:rgba(2,14,9,.82);
 display:grid;
 grid-template-columns:minmax(190px,.42fr) minmax(0,1fr);
 gap:.9rem;
 align-items:end;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
body.mf-stl-directory-page .stl-directory-toolbar__intro h3{
 margin:.18rem 0 0;
 font-size:clamp(1rem,1.7vw,1.28rem);
 line-height:1.1;
}
body.mf-stl-directory-page .stl-directory-controls{
 display:grid;
 grid-template-columns:minmax(280px,1.4fr) minmax(150px,.7fr) minmax(150px,.7fr);
 gap:.55rem;
 align-items:end;
 max-width:none;
 margin:0;
}
body.mf-stl-directory-page .stl-directory-field{
 text-align:left;
}
body.mf-stl-directory-page .stl-directory-field input,
body.mf-stl-directory-page .stl-directory-field select{
 width:100%;
}
body.mf-stl-directory-page .stl-directory-quick-filters{
 display:flex;
 flex-wrap:wrap;
 gap:.42rem;
 justify-content:flex-start;
 margin-top:.65rem;
 grid-column:2;
}
body.mf-stl-directory-page .stl-directory-quick-filters button{
 min-height:34px;
 padding:.42rem .62rem;
 border:1px solid rgba(245,200,66,.24);
 border-radius:999px;
 background:rgba(255,255,255,.04);
 color:#f4f7ef;
 font:800 .72rem/1 var(--f-heading);
 cursor:pointer;
}
body.mf-stl-directory-page .stl-directory-quick-filters button:hover,
body.mf-stl-directory-page .stl-directory-quick-filters button:focus-visible{
 background:#f5c842;
 color:#071107;
}
body.mf-stl-directory-page .stl-directory-lanes,
body.mf-stl-directory-page .stl-directory-tabs,
body.mf-stl-directory-page .stl-directory-results-bar{
 justify-content:center;
 width:min(100%,1060px);
 margin-inline:auto;
}
body.mf-stl-directory-page .stl-directory-lanes{
 padding:.48rem;
 border:1px solid rgba(245,200,66,.12);
 border-radius:10px;
 background:rgba(255,255,255,.025);
}
body.mf-stl-directory-page .stl-directory-tabs{
 display:none!important;
}
body.mf-stl-directory-page .stl-directory-stats{
 width:min(100%,760px);
 margin-inline:auto;
}
body.mf-stl-directory-page .stl-directory-grid{
 width:min(100%,1180px);
 margin-inline:auto;
}
@media(max-width:760px){
 body.mf-stl-directory-page .stl-trainer-week,
 body.mf-stl-directory-page .stl-directory-toolbar,
 body.mf-stl-directory-page .stl-directory-controls{
  grid-template-columns:1fr;
 }
 body.mf-stl-directory-page .stl-directory-toolbar{
  text-align:center;
 }
 body.mf-stl-directory-page .stl-trainer-week__actions{
  min-width:0;
 }
 body.mf-stl-directory-page .stl-directory-quick-filters{
  grid-column:auto;
  justify-content:center;
 }
}
@media (prefers-reduced-motion: reduce){
 html{scroll-behavior:auto}
 *,
 *::before,
 *::after{
  animation:none!important;
  transition:none!important;
 }
}


/* Source: /assets/css/mf-system.css */
:root {
  --mf-accent-stl: #6ec4ff;
  --mf-accent-stl-soft: rgba(110, 196, 255, 0.18);
  --mf-accent-diaspora: #f3c44f;
  --mf-accent-diaspora-soft: rgba(243, 196, 79, 0.18);
  --mf-accent-world: #72d08f;
  --mf-accent-world-soft: rgba(114, 208, 143, 0.18);
  --mf-accent-match: #ff7b4d;
  --mf-accent-match-soft: rgba(255, 123, 77, 0.18);
  --mf-accent-partnerships: #d3d86a;
  --mf-accent-partnerships-soft: rgba(211, 216, 106, 0.18);
  --mf-accent-college: #9bc0ff;
  --mf-accent-college-soft: rgba(155, 192, 255, 0.18);
}

/* Launch compact footer pass. */
.site-footer,
[data-site-footer] footer {
  margin-top: 0 !important;
  padding: .42rem 0 .25rem !important;
}

.site-footer__inner {
  padding: .45rem 0 .25rem !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(9rem, 1fr) repeat(3, minmax(7rem, .72fr)) !important;
  gap: .45rem .85rem !important;
  align-items: start !important;
}

.site-footer__copy,
.site-footer .site-brand__tag,
.site-footer .site-socials__label,
.site-footer .site-socials__handle {
  display: none !important;
}

.site-footer__brand,
.site-footer__nav {
  gap: .2rem !important;
  margin: 0 !important;
  padding: 0 !important;
}

.site-footer .site-brand__logo {
  width: 1.7rem !important;
  height: 1.7rem !important;
}

.site-footer .site-brand__name {
  font-size: .82rem !important;
  line-height: 1 !important;
}

.site-footer .site-socials {
  margin-top: .2rem !important;
  gap: .2rem !important;
}

.site-footer .site-socials a {
  width: 1.45rem !important;
  height: 1.45rem !important;
  min-height: 0 !important;
  padding: 0 !important;
}

.site-footer__nav h2,
.site-footer__nav h3 {
  margin: 0 0 .14rem !important;
  font-size: .58rem !important;
  line-height: 1 !important;
}

.site-footer__nav ul {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: .08rem .35rem !important;
  margin: 0 !important;
  padding: 0 !important;
}

.site-footer__nav li {
  margin: 0 !important;
  line-height: 1 !important;
}

.site-footer__nav a {
  padding: 0 !important;
  font-size: .58rem !important;
  line-height: 1.08 !important;
}

.site-footer__partner-logo {
  max-width: 2.2rem !important;
  max-height: .85rem !important;
}

.site-footer__bottom {
  padding: .18rem 0 0 !important;
  margin: .18rem 0 0 !important;
  gap: .35rem !important;
  font-size: .5rem !important;
  line-height: 1.05 !important;
}

@media (max-width: 760px) {
  .site-footer__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 520px) {
  .site-footer__inner {
    grid-template-columns: 1fr !important;
  }

  .site-footer__nav {
    display: none !important;
  }
}

/* Mobile footer accessibility pass: keep the compact look without shrinking tap targets below usable size. */
@media (max-width: 760px) {
  .site-footer {
    padding: .6rem 0 .4rem !important;
  }

  .site-footer__inner {
    gap: .55rem .7rem !important;
  }

  .site-footer .site-socials {
    gap: .35rem !important;
  }

  .site-footer .site-socials a {
    width: 3.15rem !important;
    min-width: 3.15rem !important;
    height: 3.15rem !important;
    min-height: 3.15rem !important;
    border-radius: 999px !important;
  }
}

@media (min-width: 521px) and (max-width: 760px) {
  .site-footer__nav a {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 3.15rem !important;
    padding: .45rem .6rem !important;
    border-radius: .65rem !important;
  }
}

body.mf-system-page {
  --mf-page-accent: var(--accent);
  --mf-page-accent-soft: rgba(232, 180, 0, 0.14);
  --mf-page-surface: rgba(14, 19, 14, 0.9);
  --mf-page-surface-2: rgba(18, 24, 18, 0.78);
  --mf-page-border: rgba(232, 180, 0, 0.14);
}

.mf-city-radar-tools {
  padding-block: .85rem !important;
}

.mf-city-radar-toolbar {
  display: grid;
  grid-template-columns: minmax(16rem, 1fr) auto auto;
  gap: .65rem;
  align-items: center;
  padding: .75rem;
  border: 1px solid rgba(245, 200, 66, .16);
  border-radius: 1rem;
  background: rgba(7, 20, 15, .78);
}

.mf-city-radar-toolbar input {
  width: 100%;
  min-height: 2.55rem;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: .8rem;
  background: rgba(255, 255, 255, .06);
  color: #fff;
  padding: 0 .85rem;
}

.mf-city-radar-filters {
  display: flex;
  gap: .4rem;
  flex-wrap: wrap;
}

.mf-city-radar-filters button {
  border: 1px solid rgba(245, 200, 66, .18);
  border-radius: 999px;
  background: rgba(255, 255, 255, .04);
  color: rgba(255, 255, 255, .82);
  cursor: pointer;
  font: 700 .72rem/1 var(--font-body, sans-serif);
  padding: .68rem .82rem;
}

.mf-city-radar-filters button:is(:hover, :focus-visible, .is-active) {
  background: var(--accent, #f5c842);
  border-color: var(--accent, #f5c842);
  color: #07100a;
}

.mf-city-radar-count {
  color: rgba(255, 255, 255, .62);
  font-size: .82rem;
  white-space: nowrap;
}

@media (max-width: 760px) {
  .mf-city-radar-toolbar {
    grid-template-columns: 1fr;
  }
}

body.mf-system-home { --mf-page-accent: var(--accent); --mf-page-accent-soft: rgba(232, 180, 0, 0.14); }
body.mf-system-stl,
body.mf-system-school { --mf-page-accent: var(--mf-accent-stl); --mf-page-accent-soft: var(--mf-accent-stl-soft); }
body.mf-system-diaspora { --mf-page-accent: var(--mf-accent-diaspora); --mf-page-accent-soft: var(--mf-accent-diaspora-soft); }
body.mf-system-world { --mf-page-accent: var(--mf-accent-world); --mf-page-accent-soft: var(--mf-accent-world-soft); }
body.mf-system-match { --mf-page-accent: var(--mf-accent-match); --mf-page-accent-soft: var(--mf-accent-match-soft); }
body.mf-system-partnerships { --mf-page-accent: var(--mf-accent-partnerships); --mf-page-accent-soft: var(--mf-accent-partnerships-soft); }
body.mf-system-college { --mf-page-accent: var(--mf-accent-college); --mf-page-accent-soft: var(--mf-accent-college-soft); }

body.mf-system-page :where(.stl-city-hero, .stl-local-hero, .mf-unified-hero, .mf-editorial-hero, .mf-player-directory-hero, .mf-player-profile-hero) {
  position: relative;
  overflow: clip;
  border-bottom: 1px solid var(--mf-page-border);
  background-color: #071007;
}

body.mf-system-page :where(.stl-city-hero, .stl-local-hero, .mf-unified-hero, .mf-editorial-hero, .mf-player-directory-hero, .mf-player-profile-hero)::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 18% 20%, var(--mf-page-accent-soft), transparent 28%),
    radial-gradient(circle at 82% 18%, rgba(255, 255, 255, 0.05), transparent 22%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.03), transparent 45%);
  pointer-events: none;
}

body.mf-system-page :where(.stl-city-hero, .stl-local-hero, .mf-unified-hero, .mf-editorial-hero, .mf-player-directory-hero, .mf-player-profile-hero) > :where(.stl-container, .container) {
  position: relative;
  z-index: 1;
}

body.mf-system-page :where(.stl-city-layout, .mf-unified-hero-grid, .mf-player-directory-hero-grid, .mf-editorial-hero__grid) {
  gap: clamp(1.25rem, 3vw, 2.5rem);
  align-items: center;
}

body.mf-system-page :where(.mf-editorial-hero__panel, .mf-unified-hero-badge, .stl-city-badge, .mf-player-hero-crest) {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02)),
    rgba(10, 16, 10, 0.84);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22);
}

body.mf-system-page :where(.mf-unified-hero-title, .stl-heading) {
  max-width: 13ch;
  text-wrap: balance;
}

body.mf-system-page :where(.mf-unified-hero-copy, .mf-lede, .stl-muted) {
  max-width: 66ch;
}

body.mf-system-page :where(.mf-page-actions, .hero-ctas, .mf-unified-hero-actions) {
  gap: 0.7rem;
}

body.mf-system-page :where(.stl-section-header-row) {
  align-items: end;
  gap: 1rem;
}

body.mf-system-page :where(.mf-route-card, .mf-proof-card, .mf-link-tile, .mf-info-card, .mf-surface-card, .mf-hub-card, .stl-community-card) {
  border-color: rgba(255, 255, 255, 0.08);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.14);
}

body.mf-system-page :where(.mf-route-card, .mf-proof-card, .mf-link-tile, .mf-info-card, .mf-surface-card):hover {
  border-color: var(--mf-page-accent-soft);
}

body.stl-soccer-hub-page .mf-stl-hub-hero {
  background-image:
    linear-gradient(90deg, rgba(6,10,8,.9) 0%, rgba(6,10,8,.66) 50%, rgba(6,10,8,.66) 50%, rgba(6,10,8,.9) 100%),
    linear-gradient(90deg, rgba(110,196,255,.08), rgba(255,255,255,0) 46%, rgba(255,255,255,0) 54%, rgba(232,180,0,.08)),
    url("/assets/img/stl-hero/youth-soccer-field.jpg"),
    url("/assets/img/stl-hero/energizer-park-stl.jpg") !important;
  background-size: auto, auto, 50% 100%, 50% 100% !important;
  background-position: center, center, left center, right center !important;
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat !important;
}

body.stl-soccer-hub-page .mf-stl-hub-hero .stl-heading {
  max-width: 11ch !important;
  font-size: clamp(2rem, 3.1vw, 2.85rem) !important;
  line-height: .96 !important;
}

body.stl-soccer-hub-page .mf-stl-hub-hero .stl-muted {
  max-width: 48ch !important;
}

@media (max-width: 760px) {
  body.stl-soccer-hub-page .mf-stl-hub-hero {
    background-image:
      linear-gradient(180deg, rgba(6,10,8,.9) 0%, rgba(6,10,8,.72) 100%),
      url("/assets/img/stl-hero/energizer-park-stl.jpg"),
      url("/assets/img/stl-hero/youth-soccer-field.jpg") !important;
    background-size: auto, cover, cover !important;
    background-position: center, center, center !important;
  }
}

body.mf-system-page :where(.stl-eyebrow, .mf-hero-side__eyebrow, .mf-daily-kicker, [data-breadcrumbs], .hero-ctas, .stl-hero-actions, .mf-page-actions, .mf-home-hero-actions, .mf-daily-actions, .mf-home-quicklinks, .mf-chip-row, .mf-system-meta, .mf-hero-tags, .mf-hero-chip-row, .mf-unified-hero-actions, .mf-media-hero-actions, .site-status-row, .yp-stat-strip),
body.mf-system-home :where(.mf-daily-kicker, .stl-eyebrow, .mf-home-hero-actions, .mf-daily-actions, .mf-home-quicklinks) {
  justify-content: center !important;
  margin-inline: auto !important;
  text-align: center !important;
}

@media (max-width: 760px) {
  body.mf-system-page :where(.stl-city-hero, .stl-local-hero, .mf-world-hero, .mf-africa-hero, .mf-unified-hero, .mf-media-hero, .mf-editorial-hero, .hero, .page-hero, .us-hero, .league-hero, .hs-hero, .hscl-hero-bg, .yp-hero, .mf-player-directory-hero, .mf-contact-hero, .mf-simple-page-hero),
  body.mf-system-home .mf-daily-hero {
    min-height: clamp(255px, 44vh, 380px) !important;
    padding: calc(var(--nav-height, 68px) + 1rem) 1rem 1.5rem !important;
  }

  body.mf-system-page :where(.stl-city-hero, .stl-local-hero, .mf-world-hero, .mf-africa-hero, .mf-unified-hero, .mf-media-hero, .mf-editorial-hero, .hero, .page-hero, .us-hero, .league-hero, .hs-hero, .hscl-hero-bg, .yp-hero, .mf-player-directory-hero, .mf-contact-hero, .mf-simple-page-hero) :where(h1, .stl-heading, .stl-heading-xl, .mf-unified-hero-title),
  body.mf-system-home :where(.mf-home-hero-copy h1, .mf-daily-lead h1) {
    max-width: 13ch !important;
    font-size: clamp(2rem, 9vw, 2.55rem) !important;
  }
}

[data-component] {
  position: relative;
}

body.mf-system-home .mf-daily-hero {
  border-bottom: 1px solid var(--mf-page-border);
}

body.mf-system-home .mf-home-hero-grid,
body.mf-system-match .mf-unified-hero-grid {
  align-items: stretch;
}

body.mf-system-college .mf-editorial-hero,
body.mf-system-partnerships .mf-editorial-hero,
body.mf-system-match .mf-unified-hero {
  background-image: linear-gradient(135deg, rgba(6, 10, 6, 0.95), rgba(6, 10, 6, 0.72)) !important;
}

body.mf-system-world .mf-world-hero {
  background-position: center 36%;
}

body.mf-system-stl .stl-local-hero,
body.mf-system-stl .mf-directory-hero,
body.mf-system-school .mf-editorial-hero {
  background-image:
    linear-gradient(135deg, rgba(5, 10, 11, 0.94), rgba(5, 10, 11, 0.72)),
    linear-gradient(90deg, rgba(110, 196, 255, 0.07), rgba(255, 255, 255, 0.01) 46%, rgba(231, 76, 154, 0.07)) !important;
}

body.mf-system-diaspora :where(.mf-player-directory-hero, .mf-player-profile-hero) {
  background-image:
    linear-gradient(135deg, rgba(8, 8, 6, 0.95), rgba(8, 8, 6, 0.72)),
    radial-gradient(circle at 22% 18%, rgba(243, 196, 79, 0.16), transparent 30%),
    radial-gradient(circle at 80% 22%, rgba(84, 143, 71, 0.12), transparent 26%) !important;
}

body.mf-system-page .mf-system-template-list {
  display: grid;
  gap: 0.9rem;
}

@media (max-width: 900px) {
  .mf-system-rail-grid {
    grid-template-columns: 1fr;
  }

  body.mf-system-page :where(.mf-unified-hero-title, .stl-heading) {
    max-width: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .mf-system-fresh::before {
    box-shadow: none;
  }
}

/* STL directory hero cleanup */
body.mf-stl-directory-page .mf-directory-hero {
  min-height: clamp(260px, 34vh, 360px) !important;
  padding: calc(var(--nav-height, 72px) + 1rem) 1rem 1.6rem !important;
  background-image:
    linear-gradient(135deg, rgba(5, 10, 8, 0.94), rgba(5, 10, 8, 0.72)),
    linear-gradient(90deg, rgba(6, 10, 8, 0.88) 0%, rgba(6, 10, 8, 0.54) 42%, rgba(6, 10, 8, 0.84) 100%),
    url("/assets/img/heroes/shared-hero-banner.png"),
    url("/assets/img/stl-hero/youth-soccer-field.jpg") !important;
  background-size: auto, auto, 56% 100%, 44% 100% !important;
  background-position: center, center, left center, right center !important;
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat !important;
}

body.mf-stl-directory-page .mf-directory-hero > .stl-container,
body.mf-stl-directory-page .mf-directory-hero .stl-city-layout {
  width: min(100% - 2rem, 980px) !important;
  max-width: 980px !important;
  margin-inline: auto !important;
}

body.mf-stl-directory-page .mf-directory-hero .stl-city-layout {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: .85rem !important;
  justify-items: center !important;
  align-items: center !important;
  text-align: center !important;
}

body.mf-stl-directory-page .mf-directory-brand-card,
body.mf-stl-directory-page .mf-directory-hero .mf-hero-side {
  display: none !important;
}

body.mf-stl-directory-page .mf-directory-hero .stl-city-info,
body.mf-stl-directory-page .mf-directory-hero .stl-city-info .stl-muted,
body.mf-stl-directory-page .mf-directory-hero .stl-city-info .stl-heading,
body.mf-stl-directory-page .mf-directory-hero .stl-city-info .stl-eyebrow,
body.mf-stl-directory-page .mf-directory-hero .stl-city-info [data-breadcrumbs] {
  width: min(100%, 760px) !important;
  max-width: 760px !important;
  margin-inline: auto !important;
  text-align: center !important;
  justify-content: center !important;
  justify-items: center !important;
}

body.mf-stl-directory-page .mf-directory-hero .stl-heading {
  max-width: 12ch !important;
  margin: .35rem auto .55rem !important;
  font-size: clamp(2rem, 4vw, 2.9rem) !important;
  line-height: .95 !important;
}

body.mf-stl-directory-page .mf-directory-hero .stl-muted {
  max-width: 54ch !important;
  font-size: .92rem !important;
  line-height: 1.48 !important;
}

body.mf-stl-directory-page .mf-directory-hero .hero-ctas {
  justify-content: center !important;
  margin: .95rem 0 0 !important;
  gap: .55rem !important;
}

body.mf-stl-directory-page .mf-directory-hero .hero-ctas .stl-btn {
  min-height: 42px !important;
  padding: .7rem 1rem !important;
}

body.mf-stl-directory-page .mf-directory-hero-notes {
  justify-content: center !important;
  gap: .45rem !important;
  margin-top: .8rem !important;
}

body.mf-stl-directory-page .mf-directory-hero-notes span {
  min-height: 1.9rem !important;
  padding: .32rem .65rem !important;
}

@media (max-width: 760px) {
  body.mf-stl-directory-page .mf-directory-hero {
    background-image:
      linear-gradient(180deg, rgba(5, 10, 8, 0.92), rgba(5, 10, 8, 0.76)),
      url("/assets/img/stl-hero/youth-soccer-field.jpg"),
      url("/assets/img/heroes/shared-hero-banner.png") !important;
    background-size: auto, cover, cover !important;
    background-position: center, center, center !important;
  }
}

/* Match center hero cleanup */
body.mf-system-match .mf-match-hero {
  min-height: clamp(220px, 28vh, 300px) !important;
  padding: calc(var(--nav-height, 72px) + .85rem) 1rem 1.2rem !important;
  background-image:
    linear-gradient(135deg, rgba(6, 10, 8, 0.94), rgba(6, 10, 8, 0.72)),
    linear-gradient(180deg, rgba(255,255,255,.06) 0 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 0 1px, transparent 1px),
    radial-gradient(circle at 18% 22%, rgba(255, 123, 77, .16), transparent 26%),
    url("/assets/img/stl-hero/energizer-park-stl.jpg") !important;
  background-size: auto, 72px 72px, 72px 72px, auto, cover !important;
  background-position: center, center, center, center, center 38% !important;
}

body.mf-system-match .mf-match-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, transparent 14%, rgba(255,255,255,.05) 14% 16%, transparent 16% 84%, rgba(255,255,255,.05) 84% 86%, transparent 86%),
    linear-gradient(180deg, rgba(255,255,255,.06) 0 2px, transparent 2px 20%, rgba(255,255,255,.035) 20% 21%, transparent 21% 100%);
  pointer-events: none;
}

body.mf-system-match .mf-match-hero > .stl-container,
body.mf-system-match .mf-match-hero .mf-unified-hero-grid {
  width: min(100% - 2rem, 880px) !important;
  max-width: 880px !important;
}

body.mf-system-match .mf-match-hero .mf-unified-hero-badge {
  display: none !important;
}

body.mf-system-match .mf-match-hero .mf-unified-hero-grid {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: .7rem !important;
  justify-items: center !important;
}

body.mf-system-match .mf-match-hero :where(.mf-unified-hero-title, .stl-heading) {
  max-width: none !important;
  margin: .25rem auto .45rem !important;
  font-size: clamp(1.9rem, 3.8vw, 2.6rem) !important;
  line-height: .96 !important;
  white-space: nowrap !important;
}

body.mf-system-match .mf-match-hero :where(.mf-unified-hero-copy, .stl-muted) {
  max-width: 48ch !important;
  font-size: .9rem !important;
  line-height: 1.45 !important;
}

body.mf-system-match .mf-match-hero :where(.mf-unified-hero-actions, .hero-ctas) {
  gap: .5rem !important;
  margin-top: .8rem !important;
}

body.mf-system-match .mf-match-hero :where(.mf-unified-hero-actions a, .hero-ctas a, .stl-btn) {
  min-height: 40px !important;
  padding: .62rem .92rem !important;
  font-size: .78rem !important;
  border-radius: .8rem !important;
}

body.mf-system-match .mf-match-hero .mf-hero-tags,
body.mf-system-match .mf-match-hero .site-status-row,
body.mf-system-match .mf-match-hero .mf-system-meta,
body.mf-system-match .mf-match-hero [data-sponsor-zone="match-center-live"] {
  display: none !important;
}

@media (max-width: 760px) {
  body.mf-system-match .mf-match-hero {
    min-height: clamp(210px, 30vh, 270px) !important;
    padding: calc(var(--nav-height, 68px) + .75rem) 1rem 1rem !important;
    background-position: center, center, center, center, center !important;
  }
}

/* Sitewide partner-style hero shell */
body.mf-page-shell {
  --mf-shared-hero-image: url("/assets/brand-v2/backgrounds/mf-background-16x9.webp");
  --mf-shared-hero-accent: rgba(211, 216, 106, 0.18);
  --mf-shared-hero-accent-2: rgba(36, 108, 255, 0.16);
}

body.mf-theme-home,
body.mf-theme-partner {
  --mf-shared-hero-image: url("/assets/brand-v2/backgrounds/mf-background-16x9.webp");
  --mf-shared-hero-accent: rgba(211, 216, 106, 0.18);
  --mf-shared-hero-accent-2: rgba(36, 108, 255, 0.16);
}

body.mf-theme-stl,
body.mf-theme-us {
  --mf-shared-hero-image: url("/assets/img/stl-hero/energizer-park-stl.jpg");
  --mf-shared-hero-accent: rgba(110, 196, 255, 0.2);
  --mf-shared-hero-accent-2: rgba(211, 216, 106, 0.16);
}

body.mf-theme-school {
  --mf-shared-hero-image: url("/assets/img/stl-hero/energizer-park-stl.jpg");
  --mf-shared-hero-accent: rgba(155, 192, 255, 0.18);
  --mf-shared-hero-accent-2: rgba(243, 196, 79, 0.14);
}

body.mf-theme-diaspora {
  --mf-shared-hero-image: url("/assets/brand-v2/backgrounds/mf-background-16x9.webp");
  --mf-shared-hero-accent: rgba(243, 196, 79, 0.2);
  --mf-shared-hero-accent-2: rgba(66, 169, 255, 0.14);
}

body.mf-theme-world {
  --mf-shared-hero-image: url("/assets/img/world-cup-hosts/world-cup-trophy-hero.jpg");
  --mf-shared-hero-accent: rgba(114, 208, 143, 0.18);
  --mf-shared-hero-accent-2: rgba(233, 57, 83, 0.14);
}

body.mf-page-shell :where(.mf-daily-hero, .mf-editorial-hero, .mf-africa-hero, .mf-world-hero, .mf-player-directory-hero, .mf-player-profile-hero, .mf-unified-hero, .stl-city-hero, .stl-local-hero, .hero, .page-hero, .us-hero, .league-hero, .hs-hero, .hscl-hero-bg, .yp-hero, .mf-simple-page-hero):not(.mf-partner-hero):not(.mf-worldcup-hero) {
  position: relative !important;
  overflow: hidden !important;
  border-bottom: 1px solid rgba(232, 180, 0, 0.12) !important;
  background:
    linear-gradient(140deg, rgba(4, 10, 8, 0.92), rgba(4, 10, 8, 0.82)),
    var(--mf-shared-hero-image) center/cover no-repeat !important;
}

body.mf-page-shell :where(.mf-daily-hero, .mf-editorial-hero, .mf-africa-hero, .mf-world-hero, .mf-player-directory-hero, .mf-player-profile-hero, .mf-unified-hero, .stl-city-hero, .stl-local-hero, .hero, .page-hero, .us-hero, .league-hero, .hs-hero, .hscl-hero-bg, .yp-hero, .mf-simple-page-hero):not(.mf-partner-hero):not(.mf-worldcup-hero)::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 12% 18%, var(--mf-shared-hero-accent), transparent 24rem),
    radial-gradient(circle at 86% 24%, var(--mf-shared-hero-accent-2), transparent 28rem),
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
  background-size: auto, auto, 88px 88px, 88px 88px;
  pointer-events: none;
}

body.mf-page-shell :where(.mf-daily-hero, .mf-editorial-hero, .mf-africa-hero, .mf-world-hero, .mf-player-directory-hero, .mf-player-profile-hero, .mf-unified-hero, .stl-city-hero, .stl-local-hero, .hero, .page-hero, .us-hero, .league-hero, .hs-hero, .hscl-hero-bg, .yp-hero, .mf-simple-page-hero):not(.mf-partner-hero):not(.mf-worldcup-hero) > :where(.stl-container, .container) {
  position: relative;
  z-index: 1;
}

body.mf-page-shell :where(.mf-home-hero-grid, .mf-daily-grid, .mf-editorial-hero__grid, .mf-africa-hero-grid, .mf-player-directory-hero-grid, .mf-player-profile-grid, .mf-unified-hero-grid, .stl-city-layout, .stl-local-hero__grid):not(.mf-partner-hero-grid) {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(21rem, 0.95fr) !important;
  gap: 1rem !important;
  align-items: stretch !important;
  width: min(100% - 2rem, 1180px) !important;
  max-width: 1180px !important;
  margin-inline: auto !important;
}

body.mf-page-shell :where(.mf-home-hero-copy, .mf-daily-lead, .mf-partner-copy, .mf-hero-copy, .mf-africa-hero-copy, .mf-media-hero-copy, .mf-world-hero__content, .stl-city-info, .stl-local-hero__content, .hero-content, .mf-unified-hero-grid > div:first-child, .mf-editorial-hero__grid > div:last-child, .mf-player-directory-hero-grid > div:first-child, .mf-player-profile-grid > div:first-child) {
  position: relative;
  z-index: 1;
  display: grid;
  gap: .9rem;
  align-content: center;
  min-height: 100%;
  padding: 1.25rem !important;
  border-radius: 1.5rem !important;
  background: linear-gradient(180deg, rgba(4,6,4,.82), rgba(4,6,4,.58)) !important;
  box-shadow: 0 20px 50px rgba(0,0,0,.18) !important;
  backdrop-filter: blur(8px);
}

body.mf-page-shell :where(.mf-home-hero-rail, .mf-daily-board, .mf-partner-board, .mf-editorial-hero__panel, .mf-africa-hero-panel, .mf-hero-side, .mf-media-hero-screen, .bio-photo, .stl-city-badge) {
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 1.35rem !important;
  overflow: hidden !important;
  background: linear-gradient(180deg, rgba(18,22,13,.96), rgba(11,14,9,.96)) !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.2), inset 0 1px 0 rgba(255,255,255,.05) !important;
}

body.mf-page-shell :where(.mf-home-hero-copy, .mf-daily-lead, .mf-partner-copy, .mf-hero-copy, .mf-africa-hero-copy, .mf-media-hero-copy, .mf-world-hero__content, .stl-city-info, .stl-local-hero__content, .hero-content, .mf-unified-hero-grid > div:first-child, .mf-editorial-hero__grid > div:last-child, .mf-player-directory-hero-grid > div:first-child, .mf-player-profile-grid > div:first-child) :where(h1, .stl-heading, .mf-unified-hero-title) {
  max-width: 12.8ch !important;
  margin-bottom: .65rem !important;
  text-align: left !important;
}

body.mf-page-shell :where(.mf-home-hero-copy, .mf-daily-lead, .mf-partner-copy, .mf-hero-copy, .mf-africa-hero-copy, .mf-media-hero-copy, .mf-world-hero__content, .stl-city-info, .stl-local-hero__content, .hero-content, .mf-unified-hero-grid > div:first-child, .mf-editorial-hero__grid > div:last-child, .mf-player-directory-hero-grid > div:first-child, .mf-player-profile-grid > div:first-child) :where(p, .stl-muted, .mf-lede, .mf-unified-hero-copy) {
  margin: 0 !important;
  text-align: left !important;
}

body.mf-page-shell :where(.mf-daily-kicker, .stl-eyebrow, .mf-page-actions, .mf-home-hero-actions, .mf-daily-actions, .mf-home-quicklinks, .mf-chip-row, .mf-hero-tags, .mf-africa-hero-pills, .mf-unified-hero-actions, .hero-ctas) {
  justify-content: flex-start !important;
  margin-inline: 0 !important;
  text-align: left !important;
}

body.mf-page-shell :where(.mf-home-quicklinks a, .mf-chip-row span, .mf-africa-hero-pills span, .mf-hero-tags span) {
  border-color: rgba(211, 216, 106, 0.28) !important;
  background: rgba(255,255,255,.03) !important;
}

@media (max-width: 980px) {
  body.mf-page-shell :where(.mf-home-hero-grid, .mf-daily-grid, .mf-editorial-hero__grid, .mf-africa-hero-grid, .mf-player-directory-hero-grid, .mf-player-profile-grid, .mf-unified-hero-grid, .stl-city-layout, .stl-local-hero__grid):not(.mf-partner-hero-grid) {
    grid-template-columns: 1fr !important;
  }

  body.mf-page-shell :where(.mf-home-hero-copy, .mf-daily-lead, .mf-partner-copy, .mf-hero-copy, .mf-africa-hero-copy, .mf-media-hero-copy, .mf-world-hero__content, .stl-city-info, .stl-local-hero__content, .hero-content, .mf-unified-hero-grid > div:first-child, .mf-editorial-hero__grid > div:last-child, .mf-player-directory-hero-grid > div:first-child, .mf-player-profile-grid > div:first-child) :where(h1, .stl-heading, .mf-unified-hero-title),
  body.mf-page-shell :where(.mf-home-hero-copy, .mf-daily-lead, .mf-partner-copy, .mf-hero-copy, .mf-africa-hero-copy, .mf-media-hero-copy, .mf-world-hero__content, .stl-city-info, .stl-local-hero__content, .hero-content, .mf-unified-hero-grid > div:first-child, .mf-editorial-hero__grid > div:last-child, .mf-player-directory-hero-grid > div:first-child, .mf-player-profile-grid > div:first-child) :where(p, .stl-muted, .mf-lede, .mf-unified-hero-copy) {
    text-align: center !important;
    margin-inline: auto !important;
  }

  body.mf-page-shell :where(.mf-daily-kicker, .stl-eyebrow, .mf-page-actions, .mf-home-hero-actions, .mf-daily-actions, .mf-home-quicklinks, .mf-chip-row, .mf-hero-tags, .mf-africa-hero-pills, .mf-unified-hero-actions, .hero-ctas) {
    justify-content: center !important;
    text-align: center !important;
  }
}

body.mf-theme-home .mf-daily-hero .mf-daily-bg,
body.mf-theme-us .mf-daily-hero .mf-daily-bg,
body.mf-theme-partner .mf-daily-hero .mf-daily-bg,
body.mf-theme-stl .mf-daily-hero .mf-daily-bg,
body.mf-theme-school .mf-daily-hero .mf-daily-bg,
body.mf-theme-world .mf-daily-hero .mf-daily-bg,
body.mf-theme-diaspora .mf-daily-hero .mf-daily-bg {
  background:
    linear-gradient(140deg, rgba(4, 10, 8, 0.92), rgba(4, 10, 8, 0.82)),
    var(--mf-shared-hero-image) center/cover no-repeat !important;
}

body.mf-theme-diaspora .mf-africa-hero,
body.mf-theme-diaspora .mf-africa-hero--taste {
  background:
    linear-gradient(140deg, rgba(4, 10, 8, 0.92), rgba(4, 10, 8, 0.82)),
    var(--mf-shared-hero-image) center/cover no-repeat !important;
}

body.mf-page-shell .mf-daily-hero,
body.mf-page-shell .mf-daily-hero .mf-daily-bg {
  background-image:
    linear-gradient(140deg, rgba(4, 10, 8, 0.92), rgba(4, 10, 8, 0.82)),
    var(--mf-shared-hero-image) !important;
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

body.mf-page-shell .mf-africa-hero,
body.mf-page-shell .mf-africa-hero--taste,
body.mf-page-shell .mf-player-directory-hero,
body.mf-page-shell .mf-player-profile-hero {
  background-image:
    linear-gradient(140deg, rgba(4, 10, 8, 0.92), rgba(4, 10, 8, 0.82)),
    var(--mf-shared-hero-image) !important;
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

body.mf-home-taste .mf-daily-hero,
body.mf-system-home.mf-home-taste .mf-daily-hero,
body.mf-page-shell.mf-home-taste .mf-daily-hero,
body.mf-home-taste .mf-daily-hero .mf-daily-bg {
  background:
    linear-gradient(140deg, rgba(4, 10, 8, 0.92), rgba(4, 10, 8, 0.82)),
    var(--mf-shared-hero-image) center/cover no-repeat !important;
}

body.mf-page-shell:not(.mf-home-taste) :where(.stl-city-hero, .stl-local-hero, .mf-world-hero, .mf-africa-hero, .mf-unified-hero, .mf-media-hero, .mf-editorial-hero, .mf-player-directory-hero, .mf-simple-page-hero) {
  background-color: #071009;
  box-shadow: inset 0 -1px 0 rgba(200, 242, 48, 0.12);
}

body.mf-page-shell:not(.mf-home-taste) :where(.stl-city-hero, .stl-local-hero, .mf-world-hero, .mf-africa-hero, .mf-unified-hero, .mf-media-hero, .mf-editorial-hero, .mf-player-directory-hero, .mf-simple-page-hero)::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(6, 10, 7, 0.28), rgba(6, 10, 7, 0.74)),
    radial-gradient(circle at 22% 16%, rgba(245, 200, 66, 0.16), transparent 22rem),
    radial-gradient(circle at 76% 18%, rgba(115, 255, 167, 0.1), transparent 24rem);
  pointer-events: none;
}

body.mf-africa-page .mf-africa-hero,
body.mf-africa-page--taste .mf-africa-hero,
body.mf-africa-page--taste .mf-africa-hero--taste,
body.mf-africa-page .mf-player-directory-hero,
body.mf-africa-page .mf-player-profile-hero {
  background:
    linear-gradient(140deg, rgba(4, 10, 8, 0.92), rgba(4, 10, 8, 0.82)),
    var(--mf-shared-hero-image) center/cover no-repeat !important;
}

/* Desktop-first refresh: shared shell polish and homepage hierarchy */
body.mf-page-shell,
body.mf-home-taste {
  --mf-desktop-max: 1240px;
  --mf-surface-panel: linear-gradient(180deg, rgba(9, 16, 12, 0.94), rgba(5, 10, 7, 0.98));
  --mf-surface-elevated: linear-gradient(180deg, rgba(17, 27, 21, 0.96), rgba(7, 12, 9, 0.98));
}

.site-header {
  border-bottom-color: rgba(245, 200, 66, 0.14) !important;
  background:
    linear-gradient(180deg, rgba(3, 9, 6, 0.92), rgba(3, 9, 6, 0.82)) !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.24);
}

.site-header__inner {
  width: min(100% - 2rem, var(--mf-desktop-max)) !important;
  margin-inline: auto !important;
}

.site-nav {
  overflow: visible;
  mask-image: none;
  -webkit-mask-image: none;
}

.site-nav__list {
  gap: 0.35rem !important;
  padding-inline: 0 !important;
}

.site-nav__link,
.site-nav__toggle {
  min-height: 2.8rem !important;
  padding: 0.72rem 0.92rem !important;
  border: 1px solid rgba(255, 255, 255, 0.04);
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.02) !important;
  font-size: 0.82rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.03em;
}

.site-nav > .site-nav__list .site-nav__icon,
.site-nav > .site-nav__list .site-nav__mini-logo {
  display: none !important;
}

.site-nav__link:hover,
.site-nav__toggle:hover,
.site-nav__link:focus-visible,
.site-nav__toggle:focus-visible,
.site-nav__link[aria-current="page"],
.site-nav__item.is-current > .site-nav__toggle,
.site-nav__item.is-open > .site-nav__toggle {
  background:
    linear-gradient(180deg, rgba(245, 200, 66, 0.14), rgba(255, 255, 255, 0.04)),
    rgba(9, 16, 12, 0.94) !important;
  border-color: rgba(245, 200, 66, 0.24) !important;
}

.site-nav__panel {
  top: calc(100% + 0.8rem) !important;
  min-width: 23rem !important;
  padding: 0.8rem !important;
  border-radius: 1.2rem !important;
  background:
    linear-gradient(180deg, rgba(9, 16, 12, 0.98), rgba(5, 10, 7, 0.98)) !important;
  border-color: rgba(245, 200, 66, 0.16) !important;
}

.site-nav__panel a {
  display: grid !important;
  grid-template-columns: auto 1fr;
  align-items: start;
  gap: 0.7rem !important;
  border-radius: 0.95rem !important;
}

.site-header__cta,
.site-theme-toggle {
  min-height: 2.9rem !important;
  border-radius: 999px !important;
}

.site-header__cta {
  padding-inline: 1rem !important;
  border: 1px solid rgba(245, 200, 66, 0.18) !important;
  background: rgba(255, 255, 255, 0.03) !important;
}

.site-footer__inner {
  width: min(100% - 2rem, var(--mf-desktop-max)) !important;
  margin-inline: auto !important;
  grid-template-columns: minmax(20rem, 1.25fr) repeat(3, minmax(10rem, 0.8fr)) !important;
}

.site-footer__brand,
.site-footer__nav {
  padding-top: 0.25rem;
}

.site-footer__copy {
  max-width: 42ch;
  color: rgba(235, 240, 244, 0.72);
}

.site-footer__bottom {
  width: min(100% - 2rem, var(--mf-desktop-max)) !important;
  margin-inline: auto !important;
}

.subscribe-input,
.site-newsletter-form input[type="email"],
.site-newsletter-form input[type="text"] {
  min-height: 3.45rem !important;
  border-radius: 1rem !important;
  border-color: rgba(245, 200, 66, 0.16) !important;
  background: rgba(255, 255, 255, 0.03) !important;
}

.site-newsletter-form input[type="email"]:focus-visible,
.site-newsletter-form input[type="text"]:focus-visible,
.subscribe-input:focus-visible {
  outline: 2px solid rgba(245, 200, 66, 0.88);
  outline-offset: 3px;
  box-shadow: 0 0 0 4px rgba(245, 200, 66, 0.14);
}

body.mf-system-home.mf-home-taste .mf-daily-hero {
  min-height: auto !important;
  padding: calc(var(--nav-height, 72px) + 1.4rem) 0 1.35rem !important;
  background:
    linear-gradient(115deg, rgba(3, 9, 6, 0.96), rgba(3, 9, 6, 0.68)),
    var(--mf-shared-hero-image) center/cover no-repeat !important;
  box-shadow: inset 0 -1px 0 rgba(245, 200, 66, 0.08);
}

body.mf-system-home.mf-home-taste .mf-daily-hero::before {
  background:
    radial-gradient(circle at 12% 18%, rgba(245, 200, 66, 0.18), transparent 24rem),
    radial-gradient(circle at 88% 18%, rgba(45, 184, 75, 0.12), transparent 22rem),
    linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px) !important;
  background-size: auto, auto, 72px 72px, 72px 72px !important;
  opacity: 1 !important;
}

body.mf-system-home.mf-home-taste .mf-daily-hero::after {
  background: linear-gradient(180deg, rgba(2, 6, 4, 0.18), rgba(2, 6, 4, 0.36)) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.mf-system-home.mf-home-taste .mf-home-hero-grid,
body.mf-system-home.mf-home-taste .mf-daily-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.2fr) minmax(22rem, 0.8fr) !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  width: min(100% - 2rem, var(--mf-desktop-max)) !important;
  max-width: var(--mf-desktop-max) !important;
  gap: 1rem !important;
  text-align: left !important;
}

body.mf-system-home.mf-home-taste .mf-home-hero-copy,
body.mf-system-home.mf-home-taste .mf-daily-lead {
  width: auto !important;
  max-width: none !important;
  display: grid !important;
  align-content: center !important;
  justify-items: start !important;
  gap: 0.95rem !important;
  padding: clamp(1.5rem, 3vw, 2.4rem) !important;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 1.6rem !important;
  background:
    linear-gradient(180deg, rgba(5, 10, 7, 0.78), rgba(5, 10, 7, 0.48)) !important;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.34) !important;
  backdrop-filter: blur(12px);
}

body.mf-system-home.mf-home-taste .mf-home-hero-copy h1,
body.mf-system-home.mf-home-taste .mf-daily-lead h1 {
  max-width: 10.5ch !important;
  margin: 0 !important;
  font-size: clamp(3rem, 4.8vw, 4.9rem) !important;
  line-height: 0.92 !important;
  text-align: left !important;
}

body.mf-system-home.mf-home-taste .mf-home-hero-copy > p,
body.mf-system-home.mf-home-taste .mf-daily-lead > p {
  max-width: 58ch !important;
  margin: 0 !important;
  font-size: 1.02rem !important;
  line-height: 1.65 !important;
  text-align: left !important;
  -webkit-line-clamp: unset !important;
}

body.mf-system-home.mf-home-taste .mf-daily-kicker,
body.mf-system-home.mf-home-taste .mf-home-hero-actions,
body.mf-system-home.mf-home-taste .mf-home-quicklinks {
  justify-content: flex-start !important;
  margin-inline: 0 !important;
  text-align: left !important;
}

body.mf-system-home.mf-home-taste .mf-home-hero-actions .stl-btn,
body.mf-system-home.mf-home-taste .mf-daily-actions .stl-btn {
  min-height: 3rem !important;
  padding: 0.9rem 1.15rem !important;
}

body.mf-system-home.mf-home-taste .mf-home-quicklinks {
  gap: 0.55rem !important;
}

body.mf-system-home.mf-home-taste .mf-home-quicklinks a {
  min-height: 2.2rem !important;
  padding: 0.52rem 0.8rem !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.04) !important;
  color: rgba(255, 245, 207, 0.92) !important;
  font-size: 0.68rem !important;
}

body.mf-system-home.mf-home-taste .mf-home-proof {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
  margin-top: 0.2rem;
}

body.mf-system-home.mf-home-taste .mf-home-proof article {
  display: grid;
  gap: 0.35rem;
  min-height: 6.25rem;
  padding: 0.95rem 1rem;
  border: 1px solid rgba(245, 200, 66, 0.14);
  border-radius: 1.1rem;
  background: rgba(255, 255, 255, 0.03);
}

body.mf-system-home.mf-home-taste .mf-home-proof span {
  color: #f5c842;
  font: 800 0.66rem/1 var(--f-mono);
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.mf-system-home.mf-home-taste .mf-home-proof strong {
  color: #fff;
  font-size: 0.98rem;
  line-height: 1.35;
}

body.mf-system-home.mf-home-taste .mf-home-hero-rail,
body.mf-system-home.mf-home-taste .mf-daily-board {
  display: grid !important;
  align-content: start !important;
  max-width: none !important;
  border: 1px solid rgba(245, 200, 66, 0.16) !important;
  border-radius: 1.55rem !important;
  background: var(--mf-surface-panel) !important;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.34) !important;
  overflow: hidden !important;
}

body.mf-system-home.mf-home-taste .mf-home-feed-list {
  display: grid;
  gap: 0.7rem;
}

body.mf-system-home.mf-home-taste .mf-home-feed-list a {
  border-radius: 1rem !important;
  background: rgba(255, 255, 255, 0.03) !important;
}

body.mf-system-home.mf-home-taste .mf-home-worldcup-wrap,
body.mf-system-home.mf-home-taste .mf-daily-ticker {
  display: block !important;
  width: min(100% - 2rem, var(--mf-desktop-max)) !important;
  max-width: var(--mf-desktop-max) !important;
  margin: 0.9rem auto 0 !important;
}

body.mf-system-home.mf-home-taste .mf-home-worldcup-wrap {
  padding: 1rem 1.05rem;
  border: 1px solid rgba(245, 200, 66, 0.12);
  border-radius: 1.3rem;
  background: rgba(4, 8, 6, 0.7);
}

body.mf-system-home.mf-home-taste .mf-daily-ticker {
  border: 1px solid rgba(245, 200, 66, 0.12);
  border-radius: 999px;
  background: rgba(5, 10, 7, 0.84);
}

body.mf-system-home.mf-home-taste .mf-daily-section .stl-container {
  width: min(100% - 2rem, var(--mf-desktop-max));
  max-width: var(--mf-desktop-max);
}

body.mf-system-home.mf-home-taste .stl-section-header-row {
  align-items: end;
  margin-bottom: 1rem !important;
}

body.mf-system-home.mf-home-taste .stl-section-header-row > div:first-child {
  max-width: 48rem;
  display: grid;
  gap: 0.45rem;
}

body.mf-system-home.mf-home-taste .mf-section-intro {
  margin: 0;
  color: rgba(235, 240, 244, 0.68);
  font-size: 0.95rem;
  line-height: 1.55;
}

body.mf-system-home.mf-home-taste .mf-front-page-grid {
  grid-template-columns: minmax(0, 1.25fr) minmax(19rem, 0.75fr) !important;
  gap: 1rem !important;
}

body.mf-system-home.mf-home-taste .mf-front-rail {
  position: sticky;
  top: calc(var(--nav-height) + 1rem);
}

body.mf-system-home.mf-home-taste .mf-front-main,
body.mf-system-home.mf-home-taste .mf-front-panel,
body.mf-system-home.mf-home-taste .mf-weekly-spotlight,
body.mf-system-home.mf-home-taste .newsletter-strip,
body.mf-system-home.mf-home-taste .mf-home-lane-strip .stl-container,
body.mf-system-home.mf-home-taste .mf-growth-viz a {
  border-radius: 1.35rem !important;
  background: var(--mf-surface-panel) !important;
  border-color: rgba(245, 200, 66, 0.12) !important;
  box-shadow: 0 20px 46px rgba(0, 0, 0, 0.22) !important;
}

body.mf-system-home.mf-home-taste .mf-platform-route-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1rem !important;
}

body.mf-system-home.mf-home-taste .mf-weekly-pathway-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0.9rem !important;
}

body.mf-system-home.mf-home-taste .newsletter-strip {
  grid-template-columns: minmax(0, 1.15fr) minmax(21rem, 0.85fr) !important;
  align-items: center !important;
  padding: 1.5rem !important;
}

body.mf-system-home.mf-home-taste .mf-newsletter-band--editorial .subscribe-form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 0.75rem !important;
  align-items: start !important;
}

body.mf-system-home.mf-home-taste .mf-newsletter-band--editorial .site-newsletter-form__status {
  grid-column: 1 / -1;
}

@media (max-width: 1100px) {
  .site-nav {
    overflow-x: auto;
  }

  body.mf-system-home.mf-home-taste .mf-home-hero-grid,
  body.mf-system-home.mf-home-taste .mf-daily-grid,
  body.mf-system-home.mf-home-taste .mf-front-page-grid,
  body.mf-system-home.mf-home-taste .mf-platform-route-grid,
  body.mf-system-home.mf-home-taste .mf-weekly-pathway-grid,
  body.mf-system-home.mf-home-taste .newsletter-strip,
  body.mf-system-home.mf-home-taste .mf-newsletter-band--editorial .subscribe-form {
    grid-template-columns: 1fr !important;
  }

  body.mf-system-home.mf-home-taste .mf-front-rail {
    position: static;
  }

  body.mf-system-home.mf-home-taste .mf-home-proof {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .site-header__inner,
  .site-footer__inner,
  .site-footer__bottom {
    width: min(100% - 1.25rem, var(--mf-desktop-max)) !important;
  }

  body.mf-system-home.mf-home-taste .mf-home-hero-copy,
  body.mf-system-home.mf-home-taste .mf-daily-lead {
    justify-items: center !important;
    text-align: center !important;
  }

  body.mf-system-home.mf-home-taste .mf-home-hero-copy h1,
  body.mf-system-home.mf-home-taste .mf-daily-lead h1,
  body.mf-system-home.mf-home-taste .mf-home-hero-copy > p,
  body.mf-system-home.mf-home-taste .mf-daily-lead > p,
  body.mf-system-home.mf-home-taste .mf-daily-kicker,
  body.mf-system-home.mf-home-taste .mf-home-hero-actions,
  body.mf-system-home.mf-home-taste .mf-home-quicklinks {
    text-align: center !important;
    justify-content: center !important;
  }
}

/* Hub shell standardization: STL, diaspora, media, and world pages opt into one safer layer. */
body.mf-page-shell:is(.stl-soccer-hub-page, .mf-diaspora-page, .mf-media-page, .mf-wc-shell) {
  --mf-hub-max: 1220px;
}

body.mf-page-shell:is(.stl-soccer-hub-page, .mf-diaspora-page, .mf-media-page, .mf-wc-shell) .mf-hub-section-intro {
  margin: 0;
  max-width: 60ch;
  color: rgba(235, 240, 244, 0.7);
  font-size: 0.95rem;
  line-height: 1.55;
}

body.mf-page-shell:is(.stl-soccer-hub-page, .mf-diaspora-page, .mf-media-page, .mf-wc-shell) .mf-hub-proof-row {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
}

body.mf-page-shell:is(.stl-soccer-hub-page, .mf-diaspora-page, .mf-media-page, .mf-wc-shell) .mf-hub-proof-card {
  display: grid;
  gap: 0.35rem;
  min-height: 6.1rem;
  padding: 0.95rem 1rem;
  border: 1px solid rgba(245, 200, 66, 0.14);
  border-radius: 1.1rem;
  background: rgba(255, 255, 255, 0.035);
}

body.mf-page-shell:is(.stl-soccer-hub-page, .mf-diaspora-page, .mf-media-page, .mf-wc-shell) .mf-hub-proof-card span {
  color: #f5c842;
  font: 800 0.66rem/1 var(--f-mono);
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.mf-page-shell:is(.stl-soccer-hub-page, .mf-diaspora-page, .mf-media-page, .mf-wc-shell) .mf-hub-proof-card strong {
  color: #fff;
  font-size: 0.98rem;
  line-height: 1.35;
}

body.mf-page-shell:is(.stl-soccer-hub-page, .mf-diaspora-page, .mf-media-page, .mf-wc-shell) .site-header__inner,
body.mf-page-shell:is(.stl-soccer-hub-page, .mf-diaspora-page, .mf-media-page, .mf-wc-shell) .site-footer__inner,
body.mf-page-shell:is(.stl-soccer-hub-page, .mf-diaspora-page, .mf-media-page, .mf-wc-shell) .site-footer__bottom,
body.mf-page-shell:is(.stl-soccer-hub-page, .mf-diaspora-page, .mf-media-page, .mf-wc-shell) .stl-container {
  width: min(100% - 2rem, var(--mf-hub-max));
  max-width: var(--mf-hub-max);
}

body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) .mf-daily-hero {
  min-height: auto !important;
  padding: calc(var(--nav-height, 72px) + 1.35rem) 0 1.2rem !important;
  box-shadow: inset 0 -1px 0 rgba(245, 200, 66, 0.08);
}

body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) .mf-home-hero-grid,
body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) .mf-daily-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(20rem, 0.85fr) !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  width: min(100% - 2rem, var(--mf-hub-max)) !important;
  max-width: var(--mf-hub-max) !important;
  gap: 1rem !important;
  text-align: left !important;
}

body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-home-hero-copy, .mf-daily-lead) {
  width: auto !important;
  max-width: none !important;
  display: grid !important;
  justify-items: start !important;
  align-content: center !important;
  gap: 0.95rem !important;
  padding: clamp(1.45rem, 2.8vw, 2.2rem) !important;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 1.45rem !important;
  background: linear-gradient(180deg, rgba(4, 9, 7, 0.8), rgba(4, 9, 7, 0.54)) !important;
  box-shadow: 0 22px 56px rgba(0, 0, 0, 0.28) !important;
}

body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-home-hero-copy h1, .mf-daily-lead h1) {
  max-width: 10.8ch !important;
  margin: 0 !important;
  text-align: left !important;
}

body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-home-hero-copy > p, .mf-daily-lead > p) {
  margin: 0 !important;
  max-width: 58ch !important;
  text-align: left !important;
  -webkit-line-clamp: unset !important;
}

body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-daily-kicker, .mf-home-hero-actions, .mf-daily-actions, .mf-home-quicklinks) {
  justify-content: flex-start !important;
  margin-inline: 0 !important;
  text-align: left !important;
}

body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-home-hero-rail, .mf-daily-board) {
  display: grid !important;
  align-content: start !important;
  max-width: none !important;
  border: 1px solid rgba(245, 200, 66, 0.14) !important;
  border-radius: 1.45rem !important;
  background: linear-gradient(180deg, rgba(9, 16, 12, 0.94), rgba(5, 10, 7, 0.98)) !important;
  box-shadow: 0 22px 56px rgba(0, 0, 0, 0.28) !important;
}

body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-home-worldcup-wrap, .mf-daily-ticker) {
  display: block !important;
  width: min(100% - 2rem, var(--mf-hub-max)) !important;
  max-width: var(--mf-hub-max) !important;
  margin: 0.85rem auto 0 !important;
}

body.mf-diaspora-page .mf-diaspora-hero {
  position: relative;
  overflow: hidden;
  padding: calc(var(--nav-height, 72px) + 1.4rem) 0 1.5rem;
  border-bottom: 1px solid rgba(245, 200, 66, 0.12);
  background:
    linear-gradient(135deg, rgba(6, 10, 8, 0.94), rgba(6, 10, 8, 0.76)),
    url("/assets/brand-v2/backgrounds/mf-background-16x9.webp") center/cover no-repeat;
}

body.mf-diaspora-page .mf-diaspora-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 18% 20%, rgba(243, 196, 79, 0.16), transparent 22rem),
    radial-gradient(circle at 84% 20%, rgba(66, 169, 255, 0.12), transparent 24rem),
    linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px);
  background-size: auto, auto, 72px 72px, 72px 72px;
  pointer-events: none;
}

body.mf-diaspora-page .mf-diaspora-hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 1rem;
  justify-items: start;
  padding: clamp(1.55rem, 2.8vw, 2.35rem);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 1.5rem;
  background: linear-gradient(180deg, rgba(5, 10, 8, 0.8), rgba(5, 10, 8, 0.52));
  box-shadow: 0 22px 56px rgba(0, 0, 0, 0.28);
}

body.mf-diaspora-page .mf-diaspora-hero h1 {
  max-width: 10ch;
  margin: 0;
  font-size: clamp(2.8rem, 5vw, 4.2rem);
  line-height: 0.92;
}

body.mf-diaspora-page .mf-diaspora-hero p {
  max-width: 60ch;
  margin: 0;
  color: rgba(235, 240, 244, 0.76);
}

body.mf-diaspora-page .mf-diaspora-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

body.mf-diaspora-page .mf-diaspora-board .mf-diaspora-grid {
  gap: 1rem;
}

body.mf-diaspora-page .mf-diaspora-card {
  border-radius: 1.2rem;
  border-color: rgba(245, 200, 66, 0.12);
  background: linear-gradient(180deg, rgba(10, 16, 11, 0.94), rgba(6, 10, 7, 0.98));
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.2);
}

body.mf-wc-shell .mf-worldcup-hero .stl-container,
body.mf-wc-shell .mf-worldcup-hero__grid {
  width: min(100%, var(--mf-hub-max));
  max-width: var(--mf-hub-max);
}

body.mf-wc-shell .mf-worldcup-hero__copy,
body.mf-wc-shell .mf-worldcup-hero__media {
  border-radius: 1.5rem;
}

body.mf-wc-shell .mf-worldcup-hero__copy {
  padding: clamp(1.2rem, 2.1vw, 1.6rem);
}

@media (max-width: 980px) {
  body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) .mf-home-hero-grid,
  body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) .mf-daily-grid,
  body.mf-wc-shell .mf-worldcup-hero__grid {
    grid-template-columns: 1fr !important;
  }

  body.mf-page-shell:is(.stl-soccer-hub-page, .mf-diaspora-page, .mf-media-page, .mf-wc-shell) .mf-hub-proof-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-home-hero-copy, .mf-daily-lead),
  body.mf-diaspora-page .mf-diaspora-hero__inner {
    justify-items: center;
    text-align: center;
  }

  body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-home-hero-copy h1, .mf-daily-lead h1),
  body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-home-hero-copy > p, .mf-daily-lead > p),
  body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-daily-kicker, .mf-home-hero-actions, .mf-daily-actions, .mf-home-quicklinks),
  body.mf-diaspora-page .mf-diaspora-actions {
    justify-content: center !important;
    text-align: center !important;
  }
}

/* Compact frontend cleanup pass: reduce scroll, soften legacy hero bloat, and keep hub pages fast to scan. */
:root {
  --nav-height: 3.65rem;
  --nav-h: var(--nav-height);
  --mf-section-y: 1.15rem;
  --mf-card-radius: 0.5rem;
}

.site-header {
  min-height: var(--nav-height) !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18) !important;
}

.site-header__inner {
  min-height: var(--nav-height) !important;
  padding-block: 0.35rem !important;
}

.site-brand__logo {
  width: 38px !important;
  height: 38px !important;
}

.site-brand__tag {
  display: none !important;
}

.site-nav__list,
.site-header__actions {
  gap: 0.35rem !important;
}

.site-nav__link,
.site-nav__toggle,
.site-header__cta,
.site-theme-toggle {
  min-height: 2.2rem !important;
  padding: 0.42rem 0.68rem !important;
  border-radius: var(--mf-card-radius) !important;
  font-size: 0.76rem !important;
  letter-spacing: 0.01em !important;
}

body.mf-system-home.mf-home-taste .mf-daily-hero,
body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) .mf-daily-hero,
body.mf-diaspora-page .mf-diaspora-hero,
body.mf-wc-shell .mf-worldcup-hero {
  min-height: 0 !important;
  padding: calc(var(--nav-height) + 0.75rem) 0 0.85rem !important;
}

body.stl-soccer-hub-page .mf-daily-hero .mf-home-worldcup-wrap {
  display: none !important;
}

body.mf-system-home.mf-home-taste .mf-daily-hero .mf-home-worldcup-wrap {
  display: none !important;
}

body.mf-wc-shell:not(.mf-world-cup-page) .mf-worldcup-hero__route-strip,
body.mf-wc-shell:not(.mf-world-cup-page) .mf-worldcup-hero__league-grid,
body.mf-wc-shell:not(.mf-world-cup-page) .mf-worldcup-hero__ticker {
  display: none !important;
}

body.mf-system-home.mf-home-taste .mf-home-hero-card,
body.mf-system-home.mf-home-taste .mf-home-hero-copy,
body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-home-hero-copy, .mf-daily-lead),
body.mf-diaspora-page .mf-diaspora-hero__inner,
body.mf-wc-shell .mf-worldcup-hero__copy,
body.mf-wc-shell .mf-worldcup-hero__media {
  border-radius: var(--mf-card-radius) !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.22) !important;
}

body.mf-system-home.mf-home-taste .mf-home-hero-grid,
body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) .mf-home-hero-grid,
body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) .mf-daily-grid,
body.mf-wc-shell .mf-worldcup-hero__grid {
  gap: 0.9rem !important;
}

body.mf-system-home.mf-home-taste .mf-home-hero-copy,
body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-home-hero-copy, .mf-daily-lead),
body.mf-diaspora-page .mf-diaspora-hero__inner,
body.mf-wc-shell .mf-worldcup-hero__copy {
  gap: 0.75rem !important;
  padding: 1.05rem !important;
}

body.mf-system-home.mf-home-taste .mf-home-hero-copy h1,
body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-home-hero-copy h1, .mf-daily-lead h1),
body.mf-diaspora-page .mf-diaspora-hero h1,
body.mf-wc-shell .mf-worldcup-hero h1 {
  max-width: 13ch !important;
  font-size: 2.65rem !important;
  line-height: 0.96 !important;
}

body.mf-system-home.mf-home-taste .mf-home-hero-copy > p,
body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-home-hero-copy > p, .mf-daily-lead > p),
body.mf-diaspora-page .mf-diaspora-hero p,
body.mf-wc-shell .mf-worldcup-hero p {
  max-width: 58ch !important;
  font-size: 0.94rem !important;
  line-height: 1.45 !important;
}

.mf-home-proof,
.mf-hub-proof-row {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.5rem !important;
  margin-top: 0.2rem !important;
}

.mf-proof-card,
.mf-hub-proof,
.mf-hub-proof-card {
  min-height: 0 !important;
  padding: 0.6rem 0.7rem !important;
  border-radius: var(--mf-card-radius) !important;
  box-shadow: none !important;
}

.mf-proof-card strong,
.mf-hub-proof strong,
.mf-hub-proof-card strong {
  font-size: 0.9rem !important;
  line-height: 1.15 !important;
}

.mf-proof-card span,
.mf-hub-proof span,
.mf-hub-proof-card span {
  font-size: 0.72rem !important;
  line-height: 1.3 !important;
}

.mf-daily-section,
.stl-section,
.stl-section--alt,
.mf-section,
.mf-diaspora-board,
.mf-worldcup-section {
  padding-block: var(--mf-section-y) !important;
}

.stl-section-header-row,
.mf-section-head,
.mf-diaspora-section-head,
.mf-worldcup-section__head {
  gap: 0.65rem !important;
  margin-bottom: 0.75rem !important;
  align-items: end !important;
}

.stl-subheading,
.mf-section-title,
.mf-diaspora-section-head h2,
.mf-worldcup-section__head h2 {
  max-width: 18ch !important;
  margin-bottom: 0.25rem !important;
  font-size: 1.35rem !important;
  line-height: 1.12 !important;
}

.mf-section-intro,
.mf-hub-section-intro,
.mf-diaspora-section-head p,
.mf-worldcup-section__head p {
  max-width: 58ch !important;
  margin-top: 0.3rem !important;
  font-size: 0.86rem !important;
  line-height: 1.42 !important;
}

.mf-daily-tabs,
.mf-home-hero-actions,
.mf-daily-actions,
.mf-diaspora-actions,
.mf-home-quicklinks {
  gap: 0.45rem !important;
}

.mf-chip,
.stl-btn,
.btn,
.btn-gold {
  border-radius: var(--mf-card-radius) !important;
}

.mf-daily-card,
.mf-story-card,
.mf-wire-card,
.mf-weekly-spotlight,
.mf-diaspora-card,
.mf-worldcup-card,
.newsletter-strip,
.mf-newsletter-band,
.mf-video-card,
.mf-platform-card {
  border-radius: var(--mf-card-radius) !important;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.16) !important;
}

.mf-daily-card,
.mf-weekly-spotlight,
.mf-diaspora-card,
.mf-worldcup-card,
.newsletter-strip,
.mf-newsletter-band {
  padding: 0.9rem !important;
}

.mf-daily-grid,
.mf-card-grid,
.mf-story-grid,
.mf-weekly-pathway-grid,
.mf-diaspora-grid,
.mf-worldcup-grid,
.mf-platform-route-grid {
  gap: 0.75rem !important;
}

.mf-weekly-pathway__head {
  margin-bottom: 0.6rem !important;
}

.mf-weekly-player-row,
.potw-photo {
  margin-bottom: 0.55rem !important;
}

.potw-photo {
  width: 64px !important;
  height: 64px !important;
}

.mf-newsletter-band,
.newsletter-strip {
  display: grid !important;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr) !important;
  gap: 0.9rem !important;
  align-items: center !important;
}

.mf-newsletter-copy h3,
.newsletter-strip h3 {
  margin: 0 0 0.35rem !important;
  font-size: 1.2rem !important;
  line-height: 1.18 !important;
}

.mf-newsletter-copy ul {
  display: none !important;
}

.subscribe-form,
.mf-newsletter-form {
  gap: 0.45rem !important;
}

.subscribe-input,
.mf-newsletter-form input {
  min-height: 2.55rem !important;
  border-radius: var(--mf-card-radius) !important;
}

.site-footer,
[data-site-footer] footer {
  padding-block: 1.4rem !important;
}

@media (max-width: 980px) {
  :root {
    --nav-height: 3.85rem;
    --mf-section-y: 1rem;
  }

  body.mf-system-home.mf-home-taste .mf-home-hero-copy h1,
  body.mf-page-shell:is(.stl-soccer-hub-page, .mf-media-page) :where(.mf-home-hero-copy h1, .mf-daily-lead h1),
  body.mf-diaspora-page .mf-diaspora-hero h1,
  body.mf-wc-shell .mf-worldcup-hero h1 {
    font-size: 2.15rem !important;
  }

  .mf-home-proof,
  .mf-hub-proof-row,
  .mf-newsletter-band,
  .newsletter-strip {
    grid-template-columns: 1fr !important;
  }
}

/* Homepage title pass: keep hierarchy by size/color, not heavy bold weight. */
body.mf-system-home.mf-home-taste :where(
  .mf-daily-hero h1,
  .mf-hero-title-streamlined,
  .stl-section-header-row h2,
  .stl-subheading,
  .mf-wire-head .stl-subheading,
  .mf-front-main h2,
  .mf-front-main h3,
  .mf-front-panel h2,
  .mf-front-panel h3,
  .mf-daily-tab-card h2,
  .mf-weekly-spotlight h3,
  .mf-newsletter-copy h3,
  .mf-wc-clock h3,
  .mf-wc-home__headline strong,
  .mf-home-feed-list strong,
  .mf-daily-ticker__item strong,
  .mf-board-top strong,
  .mf-home-match-item strong,
  .mf-home-status-card strong,
  .mf-growth-viz strong
) {
  font-weight: 400 !important;
}

body.mf-system-home.mf-home-taste :where(
  .stl-eyebrow,
  .mf-daily-meta,
  .mf-taste-kicker,
  .mf-weekly-level
) {
  font-weight: 500 !important;
}

body.mf-page-shell main :where(
  h1,
  h2,
  h3,
  h4,
  .stl-heading,
  .stl-subheading,
  .mf-unified-hero-title,
  .mf-worldcup-hero__title,
  .mf-hero-title-streamlined,
  .mf-hero-side__title,
  .mf-match-featured-title,
  .mf-media-card__title,
  .stl-community-card-title,
  .article-card-title,
  .story-card-title,
  .stl-hub-tier-club,
  .mf-home-spotlight-card h3,
  .mf-front-main h3,
  .mf-front-panel h3,
  .mf-daily-tab-card h2,
  .mf-wire-card strong,
  .mf-signal-lane__feature strong,
  .mf-signal-lane__match strong,
  .mf-link-tile strong,
  .mf-resource-card h3,
  .resource-card h3,
  .player-card h3,
  .episode-card h3,
  .mf-news-card h3
) {
  font-weight: 400 !important;
}

body.mf-page-shell main :where(
  .stl-eyebrow,
  .mf-daily-meta,
  .mf-wire-meta,
  .mf-chip,
  .tag,
  .pill
) {
  font-weight: 500 !important;
}

body.mf-page-shell :where(
  h1,
  h2,
  h3,
  h4,
  .stl-heading,
  .stl-subheading,
  .mf-unified-hero-title,
  .mf-worldcup-hero__title,
  .mf-hero-title-streamlined,
  .mf-hero-side__title,
  .mf-match-featured-title,
  .mf-media-card__title,
  .stl-community-card-title,
  .article-card-title,
  .story-card-title,
  .stl-hub-tier-club,
  .mf-home-spotlight-card h3,
  .mf-front-main h3,
  .mf-front-panel h3,
  .mf-daily-tab-card h2,
  .mf-wire-card strong,
  .mf-signal-lane__feature strong,
  .mf-signal-lane__match strong,
  .mf-link-tile strong,
  .mf-resource-card h3,
  .resource-card h3,
  .player-card h3,
  .episode-card h3,
  .mf-news-card h3
) {
  font-weight: 400 !important;
}
/* Contributor login stays visible on tablet/laptop widths even when other
   campaign CTAs collapse into the menu. */
@media (max-width: 1180px) {
  .site-header__actions .site-header__cta--contributor {
    display: inline-flex !important;
    min-height: 2.45rem !important;
    padding-inline: .72rem !important;
  }
}

@media (max-width: 560px) {
  .site-header__actions .site-header__cta--contributor {
    min-width: 2.8rem !important;
    padding-inline: .58rem !important;
  }
}

/* Launch compact footer final cascade. */
.site-footer,
[data-site-footer] footer {
  margin-top: 0 !important;
  padding: .35rem 0 .18rem !important;
}

.site-footer__inner {
  padding: .38rem 0 .16rem !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(9rem, 1fr) repeat(4, minmax(6.5rem, .72fr)) !important;
  gap: .34rem .74rem !important;
  align-items: start !important;
}

.site-footer__copy,
.site-footer .site-brand__tag,
.site-footer .site-socials__label,
.site-footer .site-socials__handle,
.site-newsletter-shell--footer {
  display: none !important;
}

.site-footer__brand,
.site-footer__nav {
  gap: .18rem !important;
  margin: 0 !important;
  padding: 0 !important;
}

.site-footer .site-brand__logo {
  width: 1.55rem !important;
  height: 1.55rem !important;
}

.site-footer .site-brand__name {
  font-size: .78rem !important;
  line-height: 1 !important;
}

.site-footer .site-socials {
  margin-top: .16rem !important;
  gap: .18rem !important;
}

.site-footer .site-socials a {
  width: 1.34rem !important;
  height: 1.34rem !important;
  min-height: 0 !important;
  padding: 0 !important;
}

.site-footer__nav h2,
.site-footer__nav h3 {
  margin: 0 0 .1rem !important;
  font-size: .54rem !important;
  line-height: 1 !important;
}

.site-footer__nav ul {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: .06rem .3rem !important;
  margin: 0 !important;
  padding: 0 !important;
}

.site-footer__nav li {
  margin: 0 !important;
  line-height: 1 !important;
}

.site-footer__nav a {
  min-height: 0 !important;
  padding: 0 !important;
  font-size: .54rem !important;
  line-height: 1.04 !important;
}

.site-footer__partner-link {
  grid-template-columns: 1.55rem minmax(0, 1fr) !important;
  gap: .22rem !important;
}

.site-footer__partner-logo {
  width: 1.55rem !important;
  max-width: 1.55rem !important;
  max-height: .78rem !important;
  padding: .06rem !important;
}

.site-footer__bottom {
  padding: .14rem 0 0 !important;
  margin: .14rem 0 0 !important;
  gap: .28rem !important;
  font-size: .48rem !important;
  line-height: 1.02 !important;
}

@media (max-width: 760px) {
  .site-footer__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 520px) {
  .site-footer__inner {
    grid-template-columns: 1fr !important;
  }
}

/* Phase 6 foundation: private review summary and form state polish. */
.mf-review-queue__summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .65rem;
  margin: 0 0 .85rem;
}

.mf-review-queue__summary article {
  min-width: 0;
  padding: .72rem .8rem;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .045);
}

.mf-review-queue__summary span,
.mf-review-queue__summary strong {
  display: block;
}

.mf-review-queue__summary span {
  color: rgba(255, 255, 255, .68);
  font-size: .68rem;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.mf-review-queue__summary strong {
  margin-top: .2rem;
  color: #fff;
  font-size: 1.34rem;
  line-height: 1;
  font-weight: 600;
}

.mf-review-queue__privacy {
  margin: -.2rem 0 .75rem;
  color: rgba(255, 255, 255, .68);
  font-size: .86rem;
  line-height: 1.45;
}

.mf-review-queue__gates {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin: 0 0 .9rem;
  padding: 0;
  list-style: none;
}

.mf-review-queue__gates li {
  padding: .32rem .52rem;
  border: 1px solid rgba(202, 255, 90, .26);
  border-radius: 999px;
  color: rgba(255, 255, 255, .82);
  background: rgba(202, 255, 90, .06);
  font-size: .72rem;
  line-height: 1.1;
}

[data-form-status] {
  display: block;
  margin-top: .75rem;
  min-height: 1.35rem;
  color: rgba(255, 255, 255, .75);
  font-size: .9rem;
  line-height: 1.45;
}

[data-form-status][hidden] {
  display: none;
}

[data-form-status][data-tone="success"] {
  color: #cafc5a;
}

[data-form-status][data-tone="error"] {
  color: #ff9c9c;
}

[data-form-status][data-tone="loading"] {
  color: rgba(255, 255, 255, .78);
}

:where(form) :where(input, select, textarea)[aria-invalid="true"] {
  border-color: rgba(255, 92, 92, .78) !important;
  box-shadow: 0 0 0 3px rgba(255, 92, 92, .14) !important;
}

:where(form)[aria-busy="true"] :where(button, input[type="submit"]) {
  cursor: progress;
}

@media (max-width: 760px) {
  .mf-review-queue__summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


/* Source: /assets/css/ux-retention.css */
/* Safe retention layer.
   Layout, navigation, heroes, cards, and page rhythm are controlled by page CSS. */
:root {
  --mf-ux-nav-height: 50px;
  --nav-height: var(--mf-ux-nav-height);
}

html {
  scroll-padding-top: calc(var(--mf-ux-nav-height) + 0.75rem);
}

img,
iframe,
video {
  max-width: 100%;
}

details {
  border-radius: 8px;
}

summary {
  cursor: pointer;
}

.mf-score-ribbon {
  position: relative;
  z-index: 80;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: stretch;
  min-height: 42px;
  margin-top: 0;
  border-top: 1px solid rgba(245, 200, 66, 0.18);
  border-bottom: 1px solid rgba(255, 255, 255, 0.055);
  background:
    radial-gradient(circle at 12% 0%, rgba(245, 200, 66, 0.16), transparent 30%),
    linear-gradient(90deg, #040604, #08210f 34%, #091628 70%, #030503);
  color: #f7f7f7;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.38);
}

body.mf-score-ribbon-ready main > :first-child {
  padding-top: clamp(0.9rem, 2.4vw, 1.55rem) !important;
}

.mf-score-ribbon__brand,
.mf-score-ribbon__utility,
.mf-score-ribbon__card {
  text-decoration: none;
}

.mf-score-ribbon__brand {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.55rem;
  min-width: 118px;
  padding: 0.28rem 0.72rem;
  background:
    linear-gradient(115deg, #f5c842 0 42%, #070807 42% 100%);
  color: #050505;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.mf-score-ribbon__brand img {
  width: 25px;
  height: 25px;
  object-fit: contain;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.82);
}

.mf-score-ribbon__rail {
  display: flex;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x proximity;
  -webkit-overflow-scrolling: touch;
  mask-image: linear-gradient(90deg, transparent, #000 2.5rem, #000 calc(100% - 2.5rem), transparent);
}

.mf-score-ribbon__track {
  display: flex;
  min-width: max-content;
  will-change: transform;
}

.mf-score-ribbon__rail.is-marquee .mf-score-ribbon__track {
  animation: mf-score-ribbon-scroll 46s linear infinite;
}

.mf-score-ribbon__rail:hover .mf-score-ribbon__track,
.mf-score-ribbon__rail:focus-within .mf-score-ribbon__track {
  animation-play-state: paused;
}

@keyframes mf-score-ribbon-scroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.mf-score-ribbon__rail::-webkit-scrollbar {
  height: 6px;
}

.mf-score-ribbon__rail::-webkit-scrollbar-thumb {
  background: rgba(245, 200, 66, 0.5);
  border-radius: 999px;
}

.mf-score-ribbon__card {
  position: relative;
  display: grid;
  grid-template:
    "league date" auto
    "match match" 1fr
    "meta meta" auto / minmax(0, 1fr) auto;
  gap: 0.1rem 0.42rem;
  align-content: center;
  min-width: 176px;
  max-width: 218px;
  padding: 0.22rem 0.52rem;
  border-right: 1px solid rgba(0, 0, 0, 0.18);
  background:
    linear-gradient(90deg, rgba(245, 200, 66, 0.08), transparent 38%),
    linear-gradient(180deg, #101411, #090c0a);
  color: #f7f7f7;
  scroll-snap-align: start;
  transition: transform 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}

.mf-score-ribbon__card:hover,
.mf-score-ribbon__card:focus-visible {
  z-index: 1;
  transform: translateY(-1px) scale(1.01);
  background: linear-gradient(180deg, #151a15, #0b0f0c);
  box-shadow: 0 12px 22px rgba(0, 0, 0, 0.34);
}

.mf-score-ribbon__league,
.mf-score-ribbon__date,
.mf-score-ribbon__card small,
.mf-score-ribbon__utility {
  font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.mf-score-ribbon__league {
  grid-area: league;
  color: #f5c842;
  font-size: 0.55rem;
  font-weight: 900;
}

.mf-score-ribbon__date {
  grid-area: date;
  color: rgba(240, 244, 240, 0.62);
  font-size: 0.55rem;
  font-weight: 800;
}

.mf-score-ribbon__match {
  grid-area: match;
  display: flex;
  align-items: center;
  gap: 0.25rem;
  min-width: 0;
}

.mf-score-ribbon__match em {
  color: rgba(240, 244, 240, 0.62);
  font-style: normal;
  font-size: 0.58rem;
  font-weight: 900;
  text-transform: uppercase;
}

.mf-score-ribbon__match--single {
  gap: 0.5rem;
}

.mf-score-ribbon__single-title {
  overflow: hidden;
  color: #ffffff;
  font-family: "Archivo Black", "Arial Black", system-ui, sans-serif;
  font-size: 0.82rem;
  line-height: 1;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.mf-score-ribbon__team {
  display: inline-flex;
  align-items: center;
  gap: 0.28rem;
  min-width: 0;
  font-weight: 950;
  line-height: 1;
}

.mf-score-ribbon__team img,
.mf-score-ribbon__mark {
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  object-fit: contain;
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid rgba(245, 200, 66, 0.18);
}

.mf-score-ribbon__mark {
  display: inline-grid;
  place-items: center;
  font-size: 0.58rem;
}

.mf-score-ribbon__team b {
  max-width: 3.35rem;
  overflow: hidden;
  color: #ffffff;
  font-family: "Archivo Black", "Arial Black", system-ui, sans-serif;
  font-size: 0.72rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mf-score-ribbon__card small {
  grid-area: meta;
  overflow: hidden;
  color: rgba(240, 244, 240, 0.58);
  font-size: 0.49rem;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mf-score-ribbon__utility {
  display: grid;
  place-items: center;
  min-width: 76px;
  padding-inline: 0.62rem;
  background: linear-gradient(180deg, #101411, #070807);
  color: #fff;
  font-size: 0.58rem;
  font-weight: 900;
}

.mf-score-ribbon__utility:hover,
.mf-score-ribbon__utility:focus-visible {
  background: #f5c842;
  color: #050505;
}

.mf-score-ribbon__card.is-loading {
  color: #333;
}

:focus-visible {
  outline: 2px solid rgba(245, 200, 66, 0.72);
  outline-offset: 3px;
}

.mf-ux-empty,
.mf-ux-hidden,
.mf-ux-rail,
.mf-ux-section-actions {
  display: none !important;
}

@media (max-width: 760px) {
  :root {
    --mf-ux-nav-height: 44px;
  }

  .mf-score-ribbon {
    grid-template-columns: minmax(112px, auto) minmax(0, 1fr);
    min-height: 40px;
  }

  .mf-score-ribbon__brand {
    min-width: 100px;
    padding-inline: 0.72rem;
    font-size: 0.66rem;
  }

  .mf-score-ribbon__brand img {
    width: 22px;
    height: 22px;
  }

  .mf-score-ribbon__card {
    min-width: 164px;
    padding: 0.22rem 0.5rem;
  }

  .mf-score-ribbon__team img,
  .mf-score-ribbon__mark {
    flex-basis: 21px;
    width: 21px;
    height: 21px;
  }

  .mf-score-ribbon__team b {
    max-width: 3.25rem;
    font-size: 0.78rem;
  }

  .mf-score-ribbon__utility {
    display: none;
  }
}


/* Source: /assets/css/version20.css */

/* Inlined /assets/css/world-soccer-premium.css */
/* Premium World Soccer hub ? MoFutbol black, gold, tournament blue, and African green. */
.mf-system-world{
  --mf-world-ink:#f7f7ef;
  --mf-world-gold:#f5cf48;
  --mf-world-blue:#0d3156;
  --mf-world-green:#0c3827;
  background:
    radial-gradient(circle at 92% 8%,rgba(16,72,50,.35),transparent 30rem),
    linear-gradient(180deg,#020806 0,#040b08 52%,#020705 100%);
}
.mf-system-world .mf-worldcup-hero{position:relative;overflow:hidden;padding:22px 0 0;background:transparent}
.mf-system-world .mf-worldcup-hero:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#ee3a3e 0 24%,#f5cf48 24% 49%,#8ce64f 49% 74%,#44d7d0 74%)}
.mf-system-world .mf-worldcup-hero__grid{
  min-height:0;
  padding:clamp(22px,3vw,38px);
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  gap:clamp(20px,3vw,38px);
  border:1px solid rgba(245,207,72,.42);
  border-radius:20px;
  background:linear-gradient(120deg,rgba(3,17,11,.98),rgba(6,29,24,.92));
  box-shadow:0 26px 80px rgba(0,0,0,.34);
}
.mf-system-world .mf-worldcup-hero__copy{align-self:center}
.mf-system-world .mf-worldcup-hero__title{
  max-width:760px;
  margin:.45rem 0 .65rem;
  color:var(--mf-world-ink);
  font-size:clamp(2.35rem,5vw,4.9rem);
  line-height:.94;
  letter-spacing:-.045em;
  text-wrap:balance;
}
.mf-system-world .mf-worldcup-hero__lede{max-width:680px;margin:0;color:#c4d1c9;font-size:clamp(1rem,1.4vw,1.18rem);line-height:1.5}
.mf-system-world .mf-worldcup-hero__media{align-self:stretch}
.mf-system-world .mf-worldcup-hero__media-figure{height:100%;min-height:300px;margin:0;overflow:hidden;border:1px solid rgba(245,207,72,.42);border-radius:16px;background:#07130d}
.mf-system-world .mf-worldcup-hero__media-figure img{width:100%;height:100%;min-height:300px;display:block;object-fit:cover}
.mf-system-world .mf-hub-proof-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:22px}
.mf-system-world .mf-hub-proof-card{min-width:0;padding:12px;border:1px solid rgba(245,207,72,.22);border-radius:12px;background:rgba(2,10,7,.68)}
.mf-system-world .mf-hub-proof-card span{color:var(--mf-world-gold)}
.mf-system-world .mf-hub-proof-card strong{color:#e9f0e9;font-size:.86rem;line-height:1.35}
.mf-system-world .mf-world-route-console{padding:22px 0}
.mf-system-world .mf-world-route-console__panel{padding:20px;border-color:rgba(245,207,72,.32);border-radius:18px;background:linear-gradient(145deg,rgba(9,37,27,.94),rgba(3,13,9,.96))}
.mf-system-world .mf-world-route-console__copy h2{font-size:clamp(1.8rem,3vw,2.7rem);color:#fff}
.mf-system-world .mf-world-route-console__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mf-system-world .mf-world-route-card{min-height:188px;border:1px solid rgba(245,207,72,.32);border-radius:15px;box-shadow:0 14px 32px rgba(0,0,0,.25)}
.mf-system-world .mf-world-route-card:after{background:linear-gradient(180deg,rgba(1,8,5,.08),rgba(1,8,5,.94))}
.mf-system-world .mf-world-route-card strong{font-size:1.35rem;color:#fff}
.mf-system-world .mf-world-route-card span{color:#cbd8cf}
.mf-system-world .mf-world-live-section{padding-top:12px}
.mf-system-world .mf-world-live-shell{border-color:rgba(245,207,72,.3);border-radius:18px;background:linear-gradient(145deg,rgba(5,23,16,.96),rgba(2,10,7,.98))}
.mf-system-world .mf-world-live-head{padding:20px}
.mf-system-world .mf-world-live-copy h2{color:#fff}
.mf-system-world .mf-world-live-status{gap:10px;padding:0 20px 20px}
.mf-system-world .mf-world-live-stat{border-color:rgba(245,207,72,.25);background:#07150e}
@media(max-width:900px){
  .mf-system-world .mf-worldcup-hero__grid{grid-template-columns:1fr}
  .mf-system-world .mf-worldcup-hero__media-figure,.mf-system-world .mf-worldcup-hero__media-figure img{min-height:240px;max-height:360px}
  .mf-system-world .mf-world-route-console__grid{grid-template-columns:1fr}
  .mf-system-world .mf-world-route-card{min-height:160px}
}
@media(max-width:640px){
  .mf-system-world .mf-worldcup-hero{padding-top:12px}
  .mf-system-world .mf-worldcup-hero__grid{padding:20px 16px;border-radius:15px}
  .mf-system-world .mf-worldcup-hero__title{font-size:clamp(2.25rem,12vw,3.35rem)}
  .mf-system-world .mf-hub-proof-row{grid-template-columns:1fr}
  .mf-system-world .mf-worldcup-hero__media-figure,.mf-system-world .mf-worldcup-hero__media-figure img{min-height:210px}
}
@media(prefers-reduced-motion:reduce){
  .mf-system-world .mf-world-route-card{animation:none;transition:none}
}

/* Premium hub actions - 2026-08-03 */
.mf-system-world .mf-worldcup-hero__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.mf-system-world .mf-worldcup-hero__actions .stl-btn{min-height:46px;justify-content:center}
@media(max-width:640px){.mf-system-world .mf-worldcup-hero__actions .stl-btn{flex:1 1 100%}}


/* MoFutbol Version 20: production-safe polish on the existing system. */
:root {
  --mf-v20-card-pad: clamp(.72rem, 1.2vw, 1rem);
  --mf-v20-section-y: clamp(1rem, 2.4vw, 1.8rem);
  --mf-v20-radius: 16px;
  --mf-v20-line: rgba(245, 200, 66, .26);
  --mf-v20-panel: rgba(5, 18, 14, .86);
  --mf-v20-text: rgba(247, 251, 243, .9);
  --mf-v20-muted: rgba(247, 251, 243, .68);
}

/* Homepage story media and footer legibility refinements. */
html body.mf-v20-ready.mf-system-home
  main#main-content
  .mf-v22-now-line.mf-v22-now-line--with-media {
  display: grid !important;
  grid-template-columns: minmax(8.5rem, 0.42fr) minmax(0, 1fr) !important;
  gap: 0 !important;
  min-height: 10.75rem;
  padding: 0 !important;
  overflow: hidden;
}

html body.mf-v20-ready.mf-system-home .mf-v22-now-line__media {
  display: block;
  min-height: 100%;
  overflow: hidden;
  background: #08140e;
}

html body.mf-v20-ready.mf-system-home .mf-v22-now-line__media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 10.75rem;
  object-fit: cover;
  object-position: center;
}

html body.mf-v20-ready.mf-system-home .mf-v22-now-line__content {
  display: grid;
  align-content: center;
  gap: 0.42rem;
  min-width: 0;
  padding: 0.9rem 1rem;
}

@media (min-width: 761px) {
  html body.mf-v20-ready.mf-system-home .site-footer {
    padding-block: 1.15rem !important;
  }

  html body.mf-v20-ready.mf-system-home .site-footer__inner {
    gap: clamp(0.85rem, 1.5vw, 1.35rem) !important;
  }

  html body.mf-v20-ready.mf-system-home .site-footer .site-brand__logo {
    width: 34px !important;
    height: 34px !important;
  }

  html body.mf-v20-ready.mf-system-home .site-footer .site-brand__name {
    font-size: 0.98rem !important;
    line-height: 1.2 !important;
  }

  html body.mf-v20-ready.mf-system-home .site-footer .site-socials {
    gap: 0.45rem !important;
    margin-top: 0.6rem !important;
  }

  html body.mf-v20-ready.mf-system-home .site-footer .site-socials a {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    flex-basis: 44px !important;
  }

  html body.mf-v20-ready.mf-system-home .site-footer__nav h2,
  html body.mf-v20-ready.mf-system-home .site-footer__nav h3 {
    margin-bottom: 0.4rem !important;
    font-size: 0.74rem !important;
    line-height: 1.25 !important;
  }

  html body.mf-v20-ready.mf-system-home .site-footer__nav ul {
    gap: 0.12rem !important;
  }

  html body.mf-v20-ready.mf-system-home .site-footer__nav a {
    display: inline-flex !important;
    min-height: 44px !important;
    align-items: center;
    padding-block: 0.35rem !important;
    color: rgba(244, 250, 244, 0.9) !important;
    font-size: 0.86rem !important;
    line-height: 1.3 !important;
  }

  html body.mf-v20-ready.mf-system-home .site-footer__bottom {
    margin-top: 0.65rem !important;
    padding-top: 0.55rem !important;
    font-size: 0.72rem !important;
    line-height: 1.35 !important;
  }
}

@media (max-width: 760px) {
  html body.mf-v20-ready.mf-system-home
    main#main-content
    .mf-v22-now-line.mf-v22-now-line--with-media {
    grid-template-columns: 1fr !important;
  }

  html body.mf-v20-ready.mf-system-home .mf-v22-now-line__media,
  html body.mf-v20-ready.mf-system-home .mf-v22-now-line__media img {
    min-height: 0;
    aspect-ratio: 16 / 9;
  }
}

body.mf-v20-ready main#main-content > :where(section, .stl-section, .mf-section, .mf-world-section) {
  padding-block: var(--mf-v20-section-y);
}

body.mf-v20-ready main#main-content :where(.stl-container, .mf-v22-container, .site-container) {
  min-width: 0;
}

body.mf-v20-ready main#main-content :where(.stl-section-header-row, .mf-v22-section-head, .mf-diaspora-panel-head, .mf-matchday-watchlist__head) {
  gap: clamp(.55rem, 1.2vw, 1rem);
  margin-bottom: clamp(.65rem, 1.4vw, 1rem);
}

body.mf-v20-ready main#main-content :where(h1, .stl-heading) {
  text-wrap: balance;
}

body.mf-v20-ready main#main-content :where(h2, h3, .stl-subheading) {
  text-wrap: balance;
  letter-spacing: -.025em;
}

body.mf-v20-ready main#main-content :where(p, small, li) {
  text-wrap: pretty;
}

body.mf-v20-ready main#main-content :where(
  .mf-v22-feature,
  .mf-v22-article-card,
  .mf-v22-find-panel,
  .mf-v44-card,
  .mf-matchday-summary-card,
  .mf-matchday-watchitem,
  .mf-matchday-feature,
  .mf-diaspora-control-tile,
  .mf-diaspora-hub-panel,
  .mf-youth-stage-node,
  .mf-youth-inspector,
  .mf-fifa-tournament-card,
  .mf-worldcup-pillar,
  .mf-home-spotlight-card,
  .mf-route-card,
  .story-card,
  .article-card
) {
  border-color: var(--mf-v20-line) !important;
  border-radius: var(--mf-v20-radius);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .045);
}

body.mf-v20-ready main#main-content :where(
  .mf-v22-article-card,
  .mf-v44-card,
  .mf-matchday-summary-card,
  .mf-matchday-watchitem,
  .mf-diaspora-control-tile,
  .mf-worldcup-pillar,
  .mf-home-spotlight-card,
  .article-card
) {
  padding: var(--mf-v20-card-pad);
}

body.mf-v20-ready main#main-content :where(.stl-btn, .site-button, .mf-v22-button, .mf-v44-card a, .mf-matchday-watchitem, .mf-fifa-tournament-card) {
  min-height: 2.55rem;
}

body.mf-v20-ready main#main-content :where(.stl-btn--primary, .site-button--primary, .mf-v22-button--primary) {
  color: #06110c !important;
  border-color: rgba(255, 255, 255, .22) !important;
  background: linear-gradient(135deg, #ffd735, #c8f230 62%, #55e58d) !important;
  text-shadow: none !important;
}

body.mf-v20-ready main#main-content :where(.stl-btn--ghost, .mf-v22-button--secondary, .site-button--secondary) {
  background: rgba(255, 255, 255, .045);
}

body.mf-v20-ready main#main-content :where(.mf-empty, .mf-system-empty, .mc-board-empty, .mf-matchday-empty, .mf-polish-empty-state, .mf-polish-loading-state) {
  display: grid;
  gap: .32rem;
  min-height: 0;
  padding: .72rem .82rem;
  border: 1px solid rgba(245, 200, 66, .22);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(245, 200, 66, .08), rgba(45, 184, 75, .05)), rgba(3, 14, 11, .86);
  color: var(--mf-v20-text);
}

body.mf-v20-ready main#main-content :where(.mf-empty, .mf-system-empty, .mc-board-empty, .mf-matchday-empty, .mf-polish-empty-state, .mf-polish-loading-state) :where(p, small) {
  color: var(--mf-v20-muted);
  line-height: 1.38;
}

body.mf-v20-ready main#main-content :where([aria-live], [data-refresh-status], .mf-polish-freshness) {
  max-width: 100%;
}

body.mf-v20-ready .mf-polish-freshness {
  z-index: 2;
}

body.mf-v20-ready main#main-content :where(.mf-matchday-watchlist__grid, .mf-v22-article-grid, .mf-worldcup-pillars, .mf-diaspora-control-spotlights__grid) {
  gap: clamp(.5rem, 1.2vw, .85rem) !important;
}

body.mf-v20-ready main#main-content :where(img) {
  max-width: 100%;
}

body.mf-v20-ready main#main-content :where(a, button, input, select, textarea):focus-visible {
  outline: 2px solid rgba(200, 242, 48, .86);
  outline-offset: 3px;
}

body.mf-v20-ready.mf-system-home .mf-v22-home {
  --mf-v20-home-gap: clamp(.7rem, 1.45vw, 1.1rem);
  --mf-v20-home-pad: clamp(.82rem, 1.7vw, 1.25rem);
}

body.mf-v20-ready.mf-system-home .mf-v22-hero {
  padding-block: clamp(.8rem, 2vw, 1.35rem) !important;
}

body.mf-v20-ready.mf-system-home .mf-v22-hero__grid {
  align-items: stretch;
  gap: var(--mf-v20-home-gap) !important;
}

@media (min-width: 980px) {
  body.mf-v20-ready.mf-system-home .mf-v22-hero__grid {
    grid-template-columns: minmax(0, 1fr) minmax(17rem, .31fr);
  }
}

body.mf-v20-ready.mf-system-home .mf-v22-hero__copy,
body.mf-v20-ready.mf-system-home .mf-v22-find-panel {
  padding: var(--mf-v20-home-pad) !important;
  background:
    radial-gradient(circle at 18% 0, rgba(200, 242, 48, .08), transparent 28rem),
    linear-gradient(135deg, rgba(7, 22, 16, .94), rgba(1, 9, 7, .9));
}

body.mf-v20-ready.mf-system-home #home-hero-title {
  max-width: 18ch;
  font-size: clamp(2rem, 2.52vw, 2.45rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.042em;
}

body.mf-v20-ready.mf-system-home .mf-v22-hero__lede {
  max-width: 48ch;
  margin-block: .48rem .7rem;
  color: rgba(247, 251, 243, .82);
  font-size: clamp(.98rem, 1.2vw, 1.1rem);
  line-height: 1.35;
}

body.mf-v20-ready.mf-system-home .mf-v22-now-line {
  max-width: 42rem;
  margin-block: .25rem .72rem;
  padding: .72rem .82rem !important;
}

body.mf-v20-ready.mf-system-home .mf-v22-actions {
  align-items: center;
  gap: .48rem !important;
}

body.mf-v20-ready.mf-system-home .mf-v22-hero-tertiary {
  justify-content: center;
  min-height: 2.5rem;
  padding-inline: .35rem;
}

body.mf-v20-ready.mf-system-home :where(.mf-v22-league-doors, .mf-v22-quick-routes) {
  gap: .5rem !important;
}

body.mf-v20-ready.mf-system-home :where(.mf-v22-league-doors, .mf-v22-quick-routes) > a {
  min-height: 4.1rem;
  padding: .62rem .7rem !important;
}

body.mf-v20-ready.mf-system-home .mf-v22-find-panel {
  align-content: start;
  gap: .48rem !important;
}

body.mf-v20-ready.mf-system-home .mf-v22-find-panel > a {
  min-height: 3.6rem;
  padding: .66rem .72rem !important;
}

body.mf-v20-ready.mf-system-home .mf-v22-section {
  padding-block: clamp(1rem, 2vw, 1.65rem) !important;
}

body.mf-v20-ready.mf-system-home .mf-v22-section-head {
  align-items: end;
  padding-bottom: .48rem;
  border-bottom: 1px solid rgba(245, 200, 66, .18);
}

body.mf-v20-ready.mf-system-home .mf-v22-feature {
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(3, 18, 13, .96), rgba(5, 25, 20, .78)),
    rgba(5, 18, 14, .9);
}

body.mf-v20-ready.mf-system-home .mf-v22-feature__media img,
body.mf-v20-ready.mf-system-home .mf-v22-article-card > img,
body.mf-v20-ready.mf-system-home .mf-v22-diaspora-card img {
  display: block;
  width: 100%;
  object-fit: cover;
  filter: saturate(1.05) contrast(1.02);
}

body.mf-v20-ready.mf-system-home .mf-v22-feature__body {
  display: grid;
  align-content: center;
  gap: .55rem;
  padding: clamp(.9rem, 2vw, 1.35rem) !important;
}

body.mf-v20-ready.mf-system-home .mf-v22-feature__body h3 {
  max-width: 18ch;
  font-size: clamp(1.35rem, 2.5vw, 2.1rem);
  line-height: 1.02;
}

body.mf-v20-ready.mf-system-home .mf-v22-diaspora__grid,
body.mf-v20-ready.mf-system-home .mf-v22-worldcup__grid {
  gap: var(--mf-v20-home-gap) !important;
}

body.mf-v20-ready.mf-system-home .mf-v22-diaspora-card,
body.mf-v20-ready.mf-system-home .mf-v22-community-grid > a {
  min-height: 0;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

body.mf-v20-ready.mf-system-home .mf-v22-diaspora-card:hover,
body.mf-v20-ready.mf-system-home .mf-v22-community-grid > a:hover,
body.mf-v20-ready.mf-system-home .mf-v22-find-panel > a:hover {
  transform: translateY(-2px);
  border-color: rgba(200, 242, 48, .55) !important;
}

body.mf-v20-ready.mf-system-home .mf-v22-article-grid {
  align-items: stretch;
}

body.mf-v20-ready.mf-system-home .mf-v22-article-card {
  display: grid;
  gap: .68rem;
  overflow: hidden;
  background: linear-gradient(145deg, rgba(7, 22, 16, .94), rgba(5, 13, 11, .94));
}

body.mf-v20-ready.mf-system-home .mf-v22-article-card h3 {
  font-size: clamp(1.05rem, 1.5vw, 1.35rem);
  line-height: 1.08;
}

body.mf-v20-ready.mf-system-home .mf-v22-card-button,
body.mf-v20-ready.mf-system-home .mf-v22-text-link {
  min-height: 2.4rem;
}

body.mf-v20-ready.mf-system-home .mf-v22-community-grid {
  gap: .6rem !important;
}

body.mf-v20-ready .mf-v20-platform-highlight {
  background:
    radial-gradient(circle at 12% 0, rgba(200, 242, 48, .1), transparent 28rem),
    linear-gradient(180deg, rgba(2, 13, 9, .92), rgba(1, 8, 6, .96));
}

body.mf-v20-ready .mf-v20-platform-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(.58rem, 1.2vw, .88rem);
}

body.mf-v20-ready .mf-v20-platform-grid > a {
  display: grid !important;
  align-items: start !important;
  align-content: start;
  gap: .38rem;
  min-height: 10rem;
  padding: clamp(.72rem, 1.25vw, .95rem);
  border: 1px solid rgba(245, 200, 66, .24);
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(9, 36, 25, .9), rgba(3, 14, 12, .92)),
    rgba(4, 17, 14, .86);
  color: rgba(247, 251, 243, .9);
  text-decoration: none;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .045);
  transition: transform .16s ease, border-color .16s ease, background .16s ease;
}

body.mf-v20-ready .mf-v20-platform-grid > a:hover,
body.mf-v20-ready .mf-v20-platform-grid > a:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(200, 242, 48, .58);
}

body.mf-v20-ready .mf-v20-platform-grid > a span {
  color: rgba(245, 215, 66, .86);
  font-family: var(--font-mono, monospace);
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

body.mf-v20-ready .mf-v20-platform-grid > a strong {
  color: #fff;
  font-size: clamp(1.05rem, 1.45vw, 1.3rem);
  line-height: 1.05;
}

body.mf-v20-ready .mf-v20-platform-grid > a small {
  color: rgba(247, 251, 243, .72);
  font-size: .9rem;
  line-height: 1.35;
}

body.mf-v20-ready .mf-v20-platform-grid > a em {
  align-self: end;
  color: #c8f230;
  font-size: .78rem;
  font-style: normal;
  font-weight: 900;
}

body.mf-v20-ready .mf-v20-platform-grid--us {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.mf-v20-ready.mf-v20-us-lane-page main#main-content {
  background:
    radial-gradient(circle at 12% 0, rgba(245, 200, 66, .08), transparent 26rem),
    linear-gradient(180deg, rgba(2, 11, 8, .98), rgba(0, 5, 4, .98));
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-score-ribbon {
  position: relative;
  z-index: 20;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  overflow: hidden;
  min-height: 34px;
  max-height: 38px;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-score-ribbon__rail {
  min-width: 0;
  overflow: hidden;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-score-ribbon__track {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: .7rem;
  min-width: max-content;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-score-ribbon__card {
  flex: 0 0 auto;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-hero {
  display: block !important;
  padding-block: clamp(1rem, 2.4vw, 1.8rem);
  border-bottom: 1px solid rgba(245, 200, 66, .18);
  background:
    linear-gradient(135deg, rgba(5, 26, 18, .88), rgba(2, 11, 10, .94)),
    url("/assets/img/heroes/shared-hero-banner.png") center / cover no-repeat;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(16rem, .34fr);
  gap: clamp(.7rem, 1.4vw, 1rem);
  align-items: stretch;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-hero__grid > div,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-panel {
  padding: clamp(.82rem, 1.6vw, 1.2rem);
  border: 1px solid rgba(245, 200, 66, .24);
  border-radius: 18px;
  background: rgba(3, 14, 11, .88);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .045);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-hero h1 {
  max-width: 13ch;
  margin-block: .28rem .45rem;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.45rem);
  line-height: .96;
  letter-spacing: -.045em;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-hero p,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-panel p {
  max-width: 65ch;
  color: rgba(247, 251, 243, .78);
  line-height: 1.4;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-panel {
  display: grid;
  align-content: center;
  gap: .38rem;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-panel span {
  color: rgba(245, 215, 66, .86);
  font-family: var(--font-mono, monospace);
  font-size: .7rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-panel strong {
  color: #fff;
  font-size: clamp(1.1rem, 1.7vw, 1.45rem);
  line-height: 1.05;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-switchboard,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(.75rem, 1.4vw, 1rem);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-switchboard article,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-route-board__lead,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-route-board__steps article {
  border: 1px solid rgba(245, 200, 66, .2);
  border-radius: 18px;
  background:
    linear-gradient(145deg, rgba(9, 34, 25, .9), rgba(2, 12, 10, .94));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .045);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-switchboard article,
html body.mf-v20-ready.mf-v20-us-lane-page main#main-content .mf-v20-resource-grid a {
  display: grid;
  align-content: start;
  gap: .45rem;
  min-height: 100%;
  padding: clamp(.85rem, 1.5vw, 1.1rem);
  color: inherit;
  text-decoration: none;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-switchboard article:hover,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-switchboard article:focus-within,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a:hover,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a:focus-visible {
  border-color: rgba(206, 255, 31, .58);
  transform: translateY(-2px);
  box-shadow: 0 18px 36px rgba(0, 0, 0, .24);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-switchboard span,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid span,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-route-board__steps b {
  color: rgba(245, 215, 66, .9);
  font-family: var(--font-mono, monospace);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-switchboard h3,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid strong,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-route-board h2,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-route-board__steps strong {
  color: #fff;
  letter-spacing: -.025em;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-switchboard h3 {
  margin: 0;
  font-size: clamp(1rem, 1.5vw, 1.22rem);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-switchboard p,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid small,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-route-board p,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-route-board__steps span {
  color: rgba(247, 251, 243, .72);
  line-height: 1.45;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-switchboard a {
  align-self: end;
  color: #d6ff1f;
  font-weight: 900;
  text-decoration: none;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-route-board {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: clamp(.8rem, 1.6vw, 1.2rem);
  align-items: stretch;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-route-board__lead {
  display: grid;
  align-content: center;
  gap: .7rem;
  padding: clamp(1rem, 2vw, 1.35rem);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-route-board__lead h2 {
  max-width: 13ch;
  margin: 0;
  font-size: clamp(1.75rem, 3vw, 2.7rem);
  line-height: .98;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-route-board__steps {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-route-board__steps article {
  display: grid;
  gap: .35rem;
  padding: clamp(.85rem, 1.5vw, 1.05rem);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(18rem, .65fr);
  gap: clamp(.8rem, 1.6vw, 1.2rem);
  align-items: stretch;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board {
  margin-top: clamp(.85rem, 1.6vw, 1.2rem);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media__feature,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media__stack a,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board__embed,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board__links a {
  overflow: hidden;
  border: 1px solid rgba(245, 200, 66, .22);
  border-radius: 20px;
  background:
    radial-gradient(circle at 18% 0, rgba(206, 255, 31, .08), transparent 18rem),
    linear-gradient(145deg, rgba(8, 32, 25, .92), rgba(2, 12, 10, .96));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .045);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media__feature {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(16rem, .48fr);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media figure {
  min-height: 100%;
  margin: 0;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media img,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media__feature > div,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board__embed > div {
  display: grid;
  align-content: center;
  gap: .45rem;
  padding: clamp(.9rem, 1.7vw, 1.2rem);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media__stack,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board__links {
  display: grid;
  gap: .75rem;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media__stack a,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board__links a {
  display: grid;
  grid-template-columns: 6.2rem minmax(0, 1fr);
  gap: .7rem;
  align-items: center;
  min-height: 7rem;
  padding: .7rem;
  color: inherit;
  text-decoration: none;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media__stack img,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board__links img {
  aspect-ratio: 16 / 10;
  border-radius: 14px;
  background: rgba(255, 255, 255, .05);
  object-fit: contain;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board__links img {
  object-fit: cover;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board__embed iframe {
  display: block;
  width: 100%;
  min-height: clamp(15rem, 30vw, 24rem);
  border: 0;
  background: #000;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board__embed {
  display: grid;
  grid-template-rows: auto 1fr;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media span,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board span {
  color: rgba(245, 215, 66, .92);
  font-family: var(--font-mono, monospace);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media h3,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board h3,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media strong,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board strong {
  color: #fff;
  letter-spacing: -.025em;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media p,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board p {
  color: rgba(247, 251, 243, .74);
  line-height: 1.45;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media a:not(.mf-v20-official-media__stack a) {
  color: #d6ff1f;
  font-weight: 900;
  text-decoration: none;
}

body.mf-v20-ready.mf-diaspora-page main#main-content {
  --mf-v20-diaspora-gap: clamp(.62rem, 1.25vw, .95rem);
  --mf-v20-diaspora-pad: clamp(.75rem, 1.5vw, 1.05rem);
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-fix-hero {
  padding-block: clamp(.85rem, 2vw, 1.45rem) !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-fix-hero__grid {
  gap: var(--mf-v20-diaspora-gap) !important;
  align-items: stretch !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-fix-hero__copy,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-fix-hero__panel {
  padding: var(--mf-v20-diaspora-pad) !important;
  border: 1px solid rgba(245, 200, 66, .25);
  border-radius: 18px;
  background:
    radial-gradient(circle at 18% 0, rgba(28, 193, 96, .13), transparent 24rem),
    linear-gradient(135deg, rgba(5, 26, 18, .94), rgba(3, 13, 11, .92));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .045);
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-fix-hero__copy h1 {
  max-width: 12.5ch !important;
  font-size: clamp(1.95rem, 3.2vw, 3.15rem) !important;
  line-height: .98 !important;
  letter-spacing: -.045em;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-fix-hero__copy p {
  max-width: 62ch !important;
  margin-block: .35rem .6rem !important;
  color: rgba(247, 251, 243, .82);
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-route-strip,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-actions,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-hero-proof,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-hero-status {
  gap: .42rem !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-route-strip button {
  min-height: 2.2rem !important;
  padding: .45rem .7rem !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-hero-proof span {
  min-height: 2.45rem !important;
  padding: .42rem .55rem !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-stat-grid {
  gap: .5rem !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-stat-grid a {
  position: relative;
  min-height: 4.6rem !important;
  padding: .62rem .7rem !important;
  overflow: hidden;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-stat-grid a::after {
  content: "";
  position: absolute;
  inset: auto .65rem .5rem .65rem;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, #f5d742, #35d487, transparent);
  opacity: .5;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-hero-media {
  margin-top: .55rem !important;
  gap: .5rem !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-hero-media a {
  min-height: 4.5rem !important;
  padding: .55rem !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-tabs {
  gap: .42rem !important;
  padding: .42rem !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-official-source-board,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-hub-command,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-hub-panel,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-control-spotlights,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-official-image-deck {
  border-color: rgba(245, 200, 66, .24) !important;
  border-radius: 18px !important;
  background:
    linear-gradient(135deg, rgba(6, 32, 24, .92), rgba(4, 17, 15, .92)),
    rgba(5, 18, 14, .86) !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-overview-lead {
  align-items: end;
  gap: .65rem !important;
  padding-bottom: .65rem;
  border-bottom: 1px solid rgba(245, 200, 66, .16);
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-overview-lead h2,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-panel-head h2 {
  font-size: clamp(1.35rem, 2.2vw, 2.05rem) !important;
  line-height: 1.04 !important;
  letter-spacing: -.035em;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-panel-head p,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-overview-lead p {
  max-width: 68ch;
  color: rgba(247, 251, 243, .72);
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-control-spotlights__grid,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-official-image-grid,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-story-grid,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-player-grid,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-pathway-grid {
  gap: .62rem !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content :where(.mf-diaspora-control-tile, .mf-diaspora-official-image-card, .mf-diaspora-player-card, .mf-diaspora-story-card, .mf-diaspora-pathway-card, .mf-diaspora-fixture-card, .mf-official-source-card) {
  border-color: rgba(245, 200, 66, .23) !important;
  border-radius: 16px !important;
  background-color: rgba(4, 17, 14, .82);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content :where(.mf-diaspora-control-tile, .mf-diaspora-official-image-card, .mf-diaspora-player-card, .mf-diaspora-story-card, .mf-diaspora-pathway-card, .mf-official-source-card):hover {
  transform: translateY(-2px);
  border-color: rgba(53, 212, 135, .48) !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-control-tile {
  min-height: 7rem !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-control-tile > a:first-child {
  padding: .68rem !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-official-image-card img,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-story-card img,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-player-card__media img {
  display: block;
  width: 100%;
  object-fit: cover;
  filter: saturate(1.05) contrast(1.03);
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-player-card {
  overflow: hidden;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-player-card__body,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-story-card > div,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-pathway-card {
  gap: .5rem !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-card-row strong,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-control-tile strong,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-story-card h3 {
  line-height: 1.08 !important;
  text-wrap: balance;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-chip-row {
  gap: .32rem !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-chip-row span,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-source-list span,
html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-preview-meta span {
  border-color: rgba(255, 255, 255, .14) !important;
  background: rgba(255, 255, 255, .055) !important;
}

html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-worldcup-verified--diaspora {
  margin-top: var(--mf-v20-diaspora-gap) !important;
}

body.mf-v20-ready.mf-diaspora-players-page main#main-content {
  --mf-v20-player-gap: clamp(.58rem, 1.15vw, .85rem);
  --mf-v20-player-pad: clamp(.58rem, 1.05vw, .78rem);
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero {
  min-height: 0 !important;
  padding-block: clamp(.48rem, 1.1vw, .78rem) !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__grid {
  grid-template-columns: minmax(0, .72fr) minmax(14rem, .28fr) !important;
  align-items: stretch !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__copy,
html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__panel {
  align-content: center;
  min-height: 0 !important;
  padding: var(--mf-v20-player-pad) !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__copy h1 {
  max-width: 13ch !important;
  margin-block: .12rem .24rem !important;
  font-size: clamp(1.75rem, 2.55vw, 2.55rem) !important;
  line-height: .98 !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__copy p,
html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__panel p {
  max-width: 54ch !important;
  margin: 0 !important;
  font-size: clamp(.92rem, 1vw, 1rem);
  line-height: 1.34;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-actions {
  margin-top: .45rem !important;
  gap: .38rem !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-actions .stl-btn {
  min-height: 2.32rem !important;
  padding: .52rem .78rem !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-hero-lanes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .35rem;
  margin-top: .48rem;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-hero-lanes a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.15rem;
  padding: .42rem .5rem;
  border: 1px solid rgba(245, 200, 66, .22);
  border-radius: 999px;
  background: rgba(255, 255, 255, .055);
  color: rgba(247, 251, 243, .86);
  font-size: .72rem;
  font-weight: 900;
  text-decoration: none;
  transition: transform .16s ease, border-color .16s ease, background .16s ease;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-hero-lanes a:hover,
html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-hero-lanes a:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(200, 242, 48, .55);
  background: rgba(200, 242, 48, .12);
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-section-nav {
  margin-top: 0 !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-tabs {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: .38rem !important;
  overflow-x: auto;
  padding: .34rem !important;
  scrollbar-width: thin;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-tabs a {
  flex: 0 0 auto;
  min-height: 2.28rem !important;
  padding: .52rem .84rem !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-polish-start-action::before,
html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-polish-start-target::before {
  display: none !important;
  content: none !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-content {
  padding-top: .35rem !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-shell {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-toolbar {
  position: sticky;
  top: var(--mf-nav-height, 58px);
  z-index: 5;
  display: grid !important;
  grid-template-columns: minmax(8.5rem, .18fr) minmax(18rem, .34fr) minmax(0, 1fr) !important;
  gap: var(--mf-v20-player-gap) !important;
  align-items: center;
  margin-bottom: var(--mf-v20-player-gap) !important;
  padding: .58rem !important;
  border: 1px solid rgba(245, 200, 66, .24);
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(4, 22, 17, .96), rgba(3, 12, 13, .94)),
    rgba(3, 12, 10, .95) !important;
  box-shadow: 0 16px 34px rgba(0, 0, 0, .24), inset 0 1px 0 rgba(255, 255, 255, .045);
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-toolbar__label {
  display: grid;
  gap: .12rem;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-toolbar__label strong {
  font-size: clamp(1.05rem, 1.5vw, 1.28rem);
  line-height: 1;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-toolbar__search {
  display: grid;
  gap: .28rem;
  margin: 0 !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-toolbar__search > span {
  color: rgba(245, 215, 66, .82);
  font-family: var(--font-mono, monospace);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-search-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .42rem;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-search-row input {
  min-height: 2.5rem;
  padding: .55rem .72rem;
  border: 1px solid rgba(245, 200, 66, .2);
  border-radius: 12px;
  background: rgba(0, 0, 0, .34);
  color: #f7fbf3;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-search-row button,
html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-filter-chips button {
  min-height: 2.22rem !important;
  border: 1px solid rgba(255, 255, 255, .14) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, .055) !important;
  color: rgba(247, 251, 243, .86) !important;
  font-size: .72rem !important;
  font-weight: 900;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-search-row button {
  padding-inline: .78rem !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-filter-chips {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: .34rem !important;
  max-width: 100%;
  overflow-x: auto;
  padding-bottom: .12rem;
  scrollbar-width: none;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-filter-chips::-webkit-scrollbar,
html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-tabs::-webkit-scrollbar {
  display: none;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-filter-chips button {
  flex: 0 0 auto;
  padding: .42rem .66rem !important;
  white-space: nowrap;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-filter-chips button.is-active {
  border-color: rgba(255, 255, 255, .24) !important;
  background: linear-gradient(135deg, #ffd735, #c8f230 62%, #55e58d) !important;
  color: #06110c !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-player-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--mf-v20-player-gap) !important;
  align-items: stretch;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-player-card {
  position: relative;
  display: grid !important;
  grid-template-columns: minmax(5.6rem, .32fr) minmax(0, 1fr) !important;
  min-height: 10.25rem !important;
  padding: 0 !important;
  overflow: hidden;
  border-radius: 18px !important;
  background:
    linear-gradient(135deg, rgba(5, 24, 19, .93), rgba(3, 11, 12, .9)),
    var(--player-bg) center / cover no-repeat !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-player-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(53, 212, 135, .18), transparent 38%), linear-gradient(180deg, rgba(255, 255, 255, .045), transparent 42%);
  opacity: .68;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-player-card > * {
  position: relative;
  z-index: 1;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-player-card__media {
  display: grid;
  min-height: 100% !important;
  padding: .58rem;
  place-items: center;
  background: rgba(0, 0, 0, .28);
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-player-card__media img {
  width: 100%;
  height: 100%;
  max-height: 9.1rem;
  border-radius: 14px;
  object-fit: cover;
  box-shadow: 0 12px 24px rgba(0, 0, 0, .25);
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-player-card__media .mf-diaspora-flag-img {
  height: auto !important;
  max-height: 4.6rem;
  object-fit: contain !important;
  padding: .18rem;
  background: rgba(255, 255, 255, .08);
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-player-card__body {
  display: grid !important;
  align-content: center;
  gap: .42rem !important;
  padding: .72rem !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-card-row {
  display: grid;
  gap: .12rem;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-card-row strong {
  color: #fff;
  font-size: clamp(1rem, 1.25vw, 1.18rem);
  line-height: 1.05 !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-card-row small {
  color: rgba(245, 215, 66, .82);
  font-family: var(--font-mono, monospace);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-player-card__body p {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  color: rgba(247, 251, 243, .74);
  font-size: .86rem;
  line-height: 1.32;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: .28rem !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .34rem;
  align-items: center;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-card-actions .stl-btn {
  min-height: 2.18rem !important;
  padding: .45rem .7rem !important;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-source-details {
  max-width: 100%;
  color: rgba(247, 251, 243, .7);
  font-size: .72rem;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-source-details summary {
  cursor: pointer;
  font-weight: 900;
}

html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-source-details a {
  color: #c8f230;
  word-break: break-word;
}

@media (max-width: 1100px) {
  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-player-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-toolbar,
  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__copy h1 {
    font-size: clamp(1.65rem, 7vw, 2.12rem) !important;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero {
    padding-block: .45rem !important;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__grid {
    gap: .42rem !important;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__copy,
  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__panel {
    padding: .58rem !important;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__panel {
    display: grid;
    gap: .32rem;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__panel p {
    display: none;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__copy p,
  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-fix-hero__panel p {
    font-size: .88rem;
    line-height: 1.25;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .38rem !important;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-actions a:first-child {
    grid-column: auto !important;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-actions .stl-btn {
    width: 100%;
    min-height: 2.2rem !important;
    padding: .46rem .52rem !important;
    font-size: .78rem;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-hero-lanes {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .28rem;
    margin-top: .34rem;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-hero-lanes a {
    min-height: 1.9rem;
    padding: .34rem .38rem;
    font-size: .68rem;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-toolbar {
    position: static;
    padding: .62rem !important;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-tabs {
    justify-content: flex-start !important;
    scroll-padding-inline: .5rem;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-tabs a {
    flex: 0 0 5.8rem !important;
    justify-content: center;
    min-width: 5.8rem !important;
    text-align: center;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-player-grid {
    grid-template-columns: 1fr !important;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-player-card {
    grid-template-columns: 5.25rem minmax(0, 1fr) !important;
    min-height: 0 !important;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-player-card__media {
    padding: .48rem;
  }

  html body.mf-v20-ready.mf-diaspora-players-page main#main-content .mf-diaspora-player-card__media img {
    max-height: 5.1rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.mf-v20-ready.mf-system-home .mf-v22-diaspora-card,
  body.mf-v20-ready.mf-system-home .mf-v22-community-grid > a,
  html body.mf-v20-ready.mf-diaspora-page main#main-content :where(.mf-diaspora-control-tile, .mf-diaspora-official-image-card, .mf-diaspora-player-card, .mf-diaspora-story-card, .mf-diaspora-pathway-card, .mf-official-source-card) {
    transition: none;
  }
}

@media (max-width: 760px) {
  body.mf-v20-ready main#main-content > :where(section, .stl-section, .mf-section, .mf-world-section) {
    padding-block: clamp(.75rem, 4vw, 1.1rem);
  }

  body.mf-v20-ready main#main-content :where(.stl-section-header-row, .mf-v22-section-head, .mf-diaspora-panel-head, .mf-matchday-watchlist__head) {
    display: grid;
    align-items: start;
  }

  body.mf-v20-ready main#main-content :where(.stl-btn, .site-button, .mf-v22-button) {
    width: 100%;
    justify-content: center;
  }

  body.mf-v20-ready main#main-content :where(.mf-page-actions, .hero-ctas, .mf-v22-actions, .mf-daily-actions) {
    display: grid;
    grid-template-columns: 1fr;
    gap: .46rem;
  }

  body.mf-v20-ready main#main-content :where(.mf-v22-league-doors, .mf-v22-quick-routes, .mf-diaspora-tabs, .mf-wc-section-nav .stl-container) {
    overflow-x: auto;
    scrollbar-width: thin;
    -webkit-overflow-scrolling: touch;
  }

  body.mf-v20-ready.mf-system-home #home-hero-title {
    max-width: 13ch;
    font-size: clamp(2rem, 9vw, 2.65rem) !important;
  }

  body.mf-v20-ready.mf-system-home .mf-v22-hero__copy,
  body.mf-v20-ready.mf-system-home .mf-v22-find-panel {
    padding: .78rem !important;
  }

  body.mf-v20-ready.mf-system-home .mf-v22-now-line {
    margin-block: .18rem .58rem;
  }

  body.mf-v20-ready.mf-system-home :where(.mf-v22-league-doors, .mf-v22-quick-routes) > a {
    flex-basis: min(76%, 15rem) !important;
    min-height: 3.2rem;
  }

  body.mf-v20-ready.mf-system-home .mf-v22-feature__body h3 {
    max-width: 22ch;
  }

  body.mf-v20-ready .mf-v20-platform-grid,
  body.mf-v20-ready .mf-v20-platform-grid--us,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-hero__grid,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-switchboard,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-route-board,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-route-board__steps,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media__feature,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board {
    grid-template-columns: 1fr;
  }

  body.mf-v20-ready .mf-v20-platform-grid > a,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-switchboard article,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a {
    min-height: 0;
  }

  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-lane-hero h1 {
    max-width: 12ch;
    font-size: clamp(2rem, 9vw, 2.65rem);
  }

  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-official-media__stack a,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board__links a {
    grid-template-columns: 5.2rem minmax(0, 1fr);
    min-height: 5.9rem;
  }

  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-video-board__embed iframe {
    min-height: 13.5rem;
  }

  html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-fix-hero {
    padding-block: .72rem !important;
  }

  html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-fix-hero__copy,
  html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-fix-hero__panel {
    padding: .72rem !important;
  }

  html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-fix-hero__copy h1 {
    font-size: clamp(1.8rem, 8vw, 2.42rem) !important;
    max-width: 13ch !important;
  }

  html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-route-strip,
  html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-actions,
  html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-hero-proof {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-actions a:first-child {
    grid-column: 1 / -1;
  }

  html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-hero-media {
    display: flex !important;
    overflow-x: auto;
    scroll-snap-type: x proximity;
  }

  html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-hero-media a {
    flex: 0 0 min(76%, 16rem);
    scroll-snap-align: start;
  }

  html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-tabs {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x proximity;
  }

  html body.mf-v20-ready.mf-diaspora-page main#main-content .mf-diaspora-tabs a {
    flex: 0 0 auto;
    scroll-snap-align: start;
  }
}

/* Pro pathway media: six official destinations in a compact, filterable grid. */
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  margin-bottom: .8rem;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-filters {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-filters button {
  min-height: 44px;
  padding: .55rem .9rem;
  border: 1px solid rgba(245, 200, 66, .28);
  border-radius: 999px;
  color: rgba(247, 251, 243, .84);
  background: rgba(4, 15, 12, .88);
  font: 900 .72rem/1 var(--font-mono, monospace);
  letter-spacing: .06em;
  text-transform: uppercase;
  cursor: pointer;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-filters button:hover,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-filters button:focus-visible,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-filters button.is-active {
  border-color: #d6ff1f;
  color: #071009;
  background: linear-gradient(110deg, #f5c842, #d6ff1f 62%, #56dda1);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-status {
  margin: 0;
  color: rgba(247, 251, 243, .72);
  font-size: .78rem;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-gallery {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(.7rem, 1.3vw, 1rem);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card {
  position: relative;
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: 8.5rem 1fr;
  min-width: 0;
  min-height: 17.5rem !important;
  overflow: hidden;
  padding: 0 !important;
  border: 1px solid rgba(245, 200, 66, .25) !important;
  border-radius: 17px !important;
  color: inherit;
  text-decoration: none;
  background:
    radial-gradient(circle at 12% 0, rgba(206, 255, 31, .1), transparent 15rem),
    linear-gradient(145deg, rgba(8, 32, 25, .95), rgba(2, 12, 10, .98)) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card:hover,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card:focus-visible,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card:focus-within {
  z-index: 1;
  border-color: rgba(206, 255, 31, .78) !important;
  transform: translateY(-3px);
  box-shadow: 0 18px 36px rgba(0, 0, 0, .34);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card > figure {
  height: 8.5rem;
  min-height: 0;
  margin: 0;
  overflow: hidden;
  background: rgba(255, 255, 255, .035);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card > img,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card > figure img {
  display: block;
  width: 100%;
  height: 8.5rem;
  aspect-ratio: auto;
  border-radius: 0;
  object-fit: cover;
  background: rgba(255, 255, 255, .035);
  transition: transform 240ms ease;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card[data-media-type="league"] > img {
  padding: 1.15rem;
  object-fit: contain;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card:hover > img,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card:hover > figure img {
  transform: scale(1.035);
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card > div,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card > span:first-of-type {
  padding-inline: .9rem;
}

body.mf-v20-ready.mf-v20-us-lane-page article.mf-v20-media-card > div {
  display: grid;
  align-content: start;
  gap: .34rem;
  padding: .78rem .9rem .9rem;
}

body.mf-v20-ready.mf-v20-us-lane-page a.mf-v20-media-card {
  align-content: start;
  gap: .28rem;
  padding-bottom: .85rem !important;
}

body.mf-v20-ready.mf-v20-us-lane-page a.mf-v20-media-card > span {
  margin-top: .72rem;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card strong,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card h3 {
  padding-inline: .9rem;
  color: #fff;
  font-size: clamp(1rem, 1.25vw, 1.18rem);
  line-height: 1.08;
}

body.mf-v20-ready.mf-v20-us-lane-page article.mf-v20-media-card h3 {
  padding-inline: 0;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card[hidden] {
  display: none !important;
}

/* Connected pages use verified local/official artwork and remain fully clickable. */
html body.mf-v20-ready.mf-v20-us-lane-page main#main-content .mf-v20-resource-grid a {
  display: grid !important;
  grid-template-columns: 4.6rem minmax(0, 1fr);
  grid-template-areas:
    "visual eyebrow"
    "visual title"
    "visual copy"
    "visual action";
  min-height: 11.2rem;
  padding: .72rem;
  align-items: stretch !important;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a::before {
  grid-area: visual;
  content: "";
  align-self: stretch;
  min-height: 8.8rem;
  border: 1px solid rgba(245, 200, 66, .22);
  border-radius: 13px;
  background: rgba(255, 255, 255, .04) var(--resource-image) center / cover no-repeat;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a::after {
  grid-area: action;
  align-self: end;
  content: "Open page  →";
  color: #d6ff1f;
  font: 900 .72rem/1.2 var(--font-mono, monospace);
  letter-spacing: .04em;
  text-transform: uppercase;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a:nth-child(1) {
  --resource-image: url("/assets/img/league-logos/ncaa.png");
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a:nth-child(2) {
  --resource-image: url("/assets/HSChamps_logo.jpg");
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a:nth-child(3) {
  --resource-image: url("/assets/img/stl-hero/youth-soccer-field.jpg");
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a:nth-child(4) {
  --resource-image: url("/assets/img/flags/ghana.svg");
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a:nth-child(5) {
  --resource-image: url("/assets/img/us-soccer/stl-city-austin-analysis.jpg");
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a:nth-child(6) {
  --resource-image: url("/assets/img/contributor/contributor-portal-process.png");
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a:nth-child(1)::before,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a:nth-child(2)::before,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a:nth-child(4)::before,
body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid a:nth-child(6)::before {
  background-size: contain;
  background-repeat: no-repeat;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid span {
  grid-area: eyebrow;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid strong {
  grid-area: title;
  font-size: 1.03rem;
  line-height: 1.08;
}

body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid small {
  grid-area: copy;
}

@media (max-width: 900px) {
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-gallery,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 600px) {
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-controls {
    align-items: stretch;
    flex-direction: column;
  }

  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-filters {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-gallery,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-resource-grid {
    grid-template-columns: 1fr;
  }

  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card {
    grid-template-rows: 9.5rem auto;
    min-height: 0 !important;
  }

  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card > figure,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card > img,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card > figure img {
    height: 9.5rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card,
  body.mf-v20-ready.mf-v20-us-lane-page .mf-v20-media-card img {
    transition: none !important;
  }
}

/* Homepage official media showcase and image-led development pathways. */
html body.mf-home-v22 .mf-v22-diaspora {
  --mf-diaspora-active-image: url("/assets/img/homepage/diaspora-stories-official.jpg");
  background:
    linear-gradient(90deg, rgba(2, 8, 5, .97), rgba(3, 24, 12, .84) 48%, rgba(2, 8, 5, .94)),
    var(--mf-diaspora-active-image) center 42% / cover no-repeat !important;
}

html body.mf-home-v22 .mf-v22-diaspora::before {
  background:
    radial-gradient(circle at 18% 18%, rgba(245, 200, 66, .18), transparent 27rem),
    linear-gradient(90deg, rgba(2, 8, 5, .93), rgba(2, 20, 13, .7) 48%, rgba(2, 8, 5, .9)) !important;
}

html body.mf-home-v22 .mf-v22-diaspora::after {
  background: var(--mf-diaspora-active-image) center 42% / cover no-repeat !important;
}

html body.mf-home-v22 .mf-v22-diaspora__intro {
  border-color: rgba(245, 200, 66, .38) !important;
  background:
    linear-gradient(135deg, rgba(205, 32, 53, .16), rgba(245, 200, 66, .1) 50%, rgba(45, 184, 75, .15)),
    rgba(2, 8, 5, .84) !important;
}

html body.mf-home-v22 .mf-v22-diaspora-controls {
  display: flex;
  flex-wrap: wrap;
  gap: .38rem;
  align-items: center;
}

html body.mf-home-v22 .mf-v22-diaspora-controls button {
  min-width: 44px;
  min-height: 44px;
  padding: .5rem .72rem;
  border: 1px solid rgba(245, 200, 66, .34);
  border-radius: 999px;
  color: rgba(250, 248, 234, .9);
  background: rgba(3, 14, 10, .9);
  font: 900 .7rem/1 var(--font-mono, monospace);
  cursor: pointer;
}

html body.mf-home-v22 .mf-v22-diaspora-controls button:hover,
html body.mf-home-v22 .mf-v22-diaspora-controls button:focus-visible,
html body.mf-home-v22 .mf-v22-diaspora-controls button[aria-pressed="true"] {
  border-color: #f5c842;
  color: #061008;
  background: linear-gradient(110deg, #e3324f, #f5c842 46%, #5bdd82);
}

html body.mf-home-v22 .mf-v22-diaspora-controls .mf-v22-diaspora-pause {
  min-width: 8.75rem;
}

html body.mf-home-v22 .mf-v22-diaspora-status {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

html body.mf-home-v22 .mf-v22-diaspora__links .mf-v22-diaspora-card {
  --diaspora-lane: #f5c842;
  border-top: 3px solid var(--diaspora-lane) !important;
  opacity: .83;
}

html body.mf-home-v22 .mf-v22-diaspora__links .mf-v22-diaspora-card:nth-child(1) {
  --diaspora-lane: #e3324f;
}

html body.mf-home-v22 .mf-v22-diaspora__links .mf-v22-diaspora-card:nth-child(2) {
  --diaspora-lane: #62d990;
}

html body.mf-home-v22 .mf-v22-diaspora__links .mf-v22-diaspora-card:nth-child(3) {
  --diaspora-lane: #f5c842;
}

html body.mf-home-v22 .mf-v22-diaspora__links .mf-v22-diaspora-card:nth-child(4) {
  --diaspora-lane: #35bde7;
}

html body.mf-home-v22 .mf-v22-diaspora__links .mf-v22-diaspora-card.is-active,
html body.mf-home-v22 .mf-v22-diaspora__links .mf-v22-diaspora-card:hover,
html body.mf-home-v22 .mf-v22-diaspora__links .mf-v22-diaspora-card:focus-visible {
  border-color: var(--diaspora-lane) !important;
  opacity: 1;
  transform: translateY(-4px);
  box-shadow:
    0 16px 38px rgba(0, 0, 0, .32),
    0 0 0 1px color-mix(in srgb, var(--diaspora-lane) 45%, transparent) inset !important;
}

html body.mf-home-v22 .mf-v22-diaspora-card.is-active em {
  color: #061008;
  border-color: transparent;
  background: linear-gradient(110deg, var(--diaspora-lane), #d6ff1f);
}

html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight {
  background:
    radial-gradient(circle at 8% 0, rgba(51, 158, 255, .12), transparent 25rem),
    radial-gradient(circle at 92% 100%, rgba(206, 255, 31, .09), transparent 26rem),
    linear-gradient(180deg, rgba(2, 13, 9, .94), rgba(1, 8, 6, .98)) !important;
}

html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid > a {
  grid-template-rows: 6.6rem auto auto 1fr auto;
  min-height: 19rem;
  overflow: hidden;
  padding: .62rem !important;
}

html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid > a::after {
  content: "Explore →";
  position: absolute;
  right: .72rem;
  bottom: .7rem;
  color: #d6ff1f;
  font: 900 .64rem/1 var(--font-mono, monospace);
  letter-spacing: .05em;
  text-transform: uppercase;
}

html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid > a {
  position: relative;
  padding-bottom: 2.2rem !important;
}

html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid figure {
  height: 6.6rem;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(245, 200, 66, .22);
  border-radius: 12px;
  background: rgba(255, 255, 255, .045);
}

html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 220ms ease, filter 220ms ease;
}

html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid > a:nth-child(2) img,
html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid > a:nth-child(3) img {
  padding: .4rem;
  object-fit: contain;
  background: #f4f3ea;
}

html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid > a:hover img,
html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid > a:focus-visible img {
  filter: saturate(1.16) contrast(1.05);
  transform: scale(1.055);
}

html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid > a:nth-child(1) {
  border-top: 3px solid #45b8ff;
}

html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid > a:nth-child(2) {
  border-top: 3px solid #67df8e;
}

html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid > a:nth-child(3) {
  border-top: 3px solid #f5c842;
}

html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid > a:nth-child(4) {
  border-top: 3px solid #e3324f;
}

@media (max-width: 760px) {
  html body.mf-home-v22 .mf-v22-diaspora__links {
    display: flex !important;
    grid-template-columns: none !important;
    overflow-x: auto;
    padding: .15rem .1rem .65rem;
    scroll-snap-type: x mandatory;
  }

  html body.mf-home-v22 .mf-v22-diaspora__links .mf-v22-diaspora-card {
    flex: 0 0 min(82vw, 18rem);
    scroll-snap-align: start;
  }

  html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid > a {
    min-height: 17.5rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body.mf-home-v22 .mf-v22-diaspora__links .mf-v22-diaspora-card,
  html body.mf-v20-ready.mf-system-home .mf-v20-platform-highlight .mf-v20-platform-grid img {
    transition: none !important;
  }
}


/* Source: /assets/css/mf-brand-v2.css */
/*
 * MoFutbol Brand V2 theme layer.
 * Centralized tokens and production-safe overrides for the approved MF identity.
 */
:root {
  --mf-black: #080B0B;
  --mf-onyx: #0B0B0B;
  --mf-charcoal: #121715;
  --mf-surface: #171D1A;
  --mf-surface-raised: #1D2521;
  --mf-border: #2B352F;
  --mf-white: #F7F7F4;
  --mf-gray-100: #E7EAE7;
  --mf-gray-300: #B7BEB9;
  --mf-gray-500: #89928C;
  --mf-green-dark: #1B5E2B;
  --mf-green: #2E7D32;
  --mf-green-bright: #46A83E;
  --mf-yellow: #F4C430;
  --mf-red: #E53935;
  --brand-red: var(--mf-red);
  --brand-yellow: var(--mf-yellow);
  --brand-green: var(--mf-green);
  --brand-black: var(--mf-black);
  --color-bg: var(--mf-black);
  --color-surface: var(--mf-charcoal);
  --color-surface-2: var(--mf-surface);
  --color-surface-3: var(--mf-surface-raised);
  --color-text: var(--mf-white);
  --color-muted: var(--mf-gray-300);
  --color-border: rgba(43, 53, 47, .88);
  --color-border-strong: rgba(70, 168, 62, .46);
  --color-accent: var(--mf-green-bright);
  --color-accent-hover: #63B95B;
  --color-accent-dim: var(--mf-green-dark);
  --color-accent-soft: rgba(46, 125, 50, .14);
  --color-danger: var(--mf-red);
  --font-display: "Bebas Neue", sans-serif;
  --font-heading: "Bebas Neue", sans-serif;
  --font-body: "Montserrat", sans-serif;
  --font-ui: "Montserrat", sans-serif;
  --font-mono: var(--font-ui);
  --f-display: var(--font-display);
  --f-heading: var(--font-heading);
  --f-body: var(--font-body);
  --f-sans: var(--font-body);
  --f-mono: var(--font-ui);
  --mf-brand-bg-16x9: url("/assets/brand-v2/backgrounds/mf-background-16x9.webp");
  --mf-brand-social: url("/assets/brand-v2/backgrounds/mf-background-1200x630.webp");
  color-scheme: dark;
}

html {
  scroll-behavior: smooth;
  background: var(--mf-black);
}

body.mf-brand-v2,
html[data-theme="dark"] body {
  background:
    radial-gradient(circle at 16% 0, rgba(46, 125, 50, .16), transparent 24rem),
    linear-gradient(180deg, var(--mf-black), #040606 58%, var(--mf-onyx));
  color: var(--mf-white);
  font-family: var(--font-body);
}

body.mf-brand-v2::before {
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  content: "";
  background:
    linear-gradient(135deg, rgba(247, 247, 244, .025) 0 1px, transparent 1px 19px),
    radial-gradient(circle at 88% 12%, rgba(244, 196, 48, .06), transparent 18rem);
  background-size: 19px 19px, auto;
  opacity: .58;
}

.mf-page,
.mf-shell,
.site-container,
.stl-container,
.mf-v22-container {
  width: min(calc(100% - 2rem), 1280px);
  margin-inline: auto;
}

.mf-section {
  padding-block: clamp(1rem, 2vw, 1.9rem);
}

.mf-section-heading,
.stl-heading,
.stl-subheading,
body.mf-brand-v2 h1,
body.mf-brand-v2 h2,
body.mf-brand-v2 h3 {
  font-family: var(--font-display);
  letter-spacing: 0;
  text-wrap: balance;
}

.mf-card,
.mf-card-featured,
.mf-card-media,
.mf-card-player,
body.mf-brand-v2 main :where(article, .mf-home-spotlight-card, .mf-v22-find-panel, .mf-newsroom-today-card, .mf-newsroom-story, .mf-newsroom-player-card, .mf-v22-feature, .mf-v22-diaspora-card, .mf-info-card) {
  border: 1px solid rgba(43, 53, 47, .95);
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(29, 37, 33, .92), rgba(10, 14, 13, .96));
  box-shadow: inset 0 1px 0 rgba(247, 247, 244, .045);
}

body.mf-brand-v2 main :where(article, a, button, input, textarea, select) {
  transition: border-color 180ms ease, background 180ms ease, color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

body.mf-brand-v2 main :where(a, button, input, textarea, select):focus-visible,
body.mf-brand-v2 .site-header :where(a, button):focus-visible,
body.mf-brand-v2 .site-footer :where(a, button):focus-visible {
  outline: 2px solid var(--mf-yellow);
  outline-offset: 3px;
}

.mf-button-primary,
body.mf-brand-v2 :where(.stl-btn--primary, .site-button--primary, .mf-v22-button--primary, .site-header__cta--media) {
  border-color: rgba(70, 168, 62, .78) !important;
  color: var(--mf-white) !important;
  background: linear-gradient(135deg, var(--mf-green-dark), var(--mf-green) 68%, #3C9341) !important;
  text-shadow: none !important;
}

.mf-button-secondary,
body.mf-brand-v2 :where(.stl-btn--ghost, .mf-v22-button--secondary, .site-button--secondary) {
  border-color: rgba(70, 168, 62, .52) !important;
  color: var(--mf-white) !important;
  background: rgba(23, 29, 26, .82) !important;
}

.mf-button-ghost {
  color: var(--mf-green-bright);
  background: transparent;
}

body.mf-brand-v2 :where(.stl-btn--primary, .site-button--primary, .mf-v22-button--primary, .site-header__cta--media):hover,
body.mf-brand-v2 :where(.stl-btn--ghost, .mf-v22-button--secondary, .site-button--secondary):hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(0, 0, 0, .28);
}

.mf-badge,
.mf-badge-live,
.stl-eyebrow,
.mf-v22-kicker,
.mf-v22-hero-kicker span {
  color: var(--mf-green-bright) !important;
  font-family: var(--font-ui);
  letter-spacing: .08em;
  text-transform: uppercase;
}

.mf-badge-live {
  color: var(--mf-white) !important;
}

.mf-badge-live::before {
  display: inline-block;
  width: .5rem;
  height: .5rem;
  margin-right: .4rem;
  border-radius: 999px;
  background: var(--mf-red);
  content: "";
}

.mf-divider,
.mf-accent-line {
  min-height: 1px;
  background: linear-gradient(90deg, var(--mf-green), var(--mf-yellow), rgba(229, 57, 53, .72));
}

.mf-pattern-africa,
.mf-pattern-pitch {
  position: relative;
  overflow: hidden;
}

.mf-pattern-africa::before,
.mf-pattern-pitch::before {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  content: "";
  opacity: .04;
  background-image:
    linear-gradient(45deg, currentColor 12%, transparent 12%, transparent 50%, currentColor 50%, currentColor 62%, transparent 62%);
  background-size: 28px 28px;
}

.mf-logo-compact {
  display: inline-block;
  width: 2.75rem;
  height: 2.75rem;
  object-fit: contain;
}

.mf-logo-lockup {
  display: inline-block;
  width: min(18rem, 100%);
  height: auto;
  object-fit: contain;
}

body.mf-brand-v2 .site-header {
  border-bottom: 1px solid rgba(43, 53, 47, .95);
  background: rgba(11, 11, 11, .96) !important;
  backdrop-filter: blur(14px);
}

body.mf-brand-v2 .site-brand {
  gap: .62rem;
}

body.mf-brand-v2 .site-brand__logo {
  border-radius: 999px;
  background: var(--mf-black);
  box-shadow: 0 0 0 1px rgba(70, 168, 62, .32);
}

body.mf-brand-v2 .site-brand__name {
  color: var(--mf-white);
  font-family: var(--font-display);
  letter-spacing: .02em;
  text-transform: uppercase;
}

body.mf-brand-v2 .site-brand__name::after {
  content: ".TV";
  color: var(--mf-green-bright);
}

body.mf-brand-v2 .site-brand__tag {
  color: var(--mf-gray-300);
  letter-spacing: .12em;
  text-transform: uppercase;
}

body.mf-brand-v2 .site-nav :where(.site-nav__link, .site-nav__toggle):hover,
body.mf-brand-v2 .site-nav :where(.site-nav__link, .site-nav__toggle)[aria-current="page"],
body.mf-brand-v2 .site-nav [data-has-panel].is-open > .site-nav__toggle {
  color: var(--mf-white) !important;
  background: rgba(46, 125, 50, .18) !important;
  box-shadow: inset 0 -2px 0 var(--mf-green-bright);
}

body.mf-brand-v2 .mf-score-ribbon {
  border-block-color: rgba(43, 53, 47, .95) !important;
  background: linear-gradient(90deg, #040606, var(--mf-charcoal), #040606) !important;
}

body.mf-brand-v2 .mf-score-ribbon__brand span {
  color: var(--mf-yellow);
}

body.mf-brand-v2 .mf-v22-hero {
  min-height: auto;
  padding-block: clamp(1.15rem, 2.4vw, 2rem) !important;
  background:
    linear-gradient(90deg, rgba(8, 11, 11, .96), rgba(8, 11, 11, .78) 46%, rgba(8, 11, 11, .93)),
    var(--mf-brand-bg-16x9) center / cover no-repeat !important;
}

body.mf-brand-v2 .mf-v22-hero__bg {
  background:
    linear-gradient(90deg, rgba(8, 11, 11, .94), rgba(8, 11, 11, .54) 54%, rgba(8, 11, 11, .82)),
    var(--mf-brand-bg-16x9) center / cover no-repeat !important;
}

body.mf-brand-v2 .mf-v22-hero__copy,
body.mf-brand-v2 .mf-v22-find-panel {
  border-color: rgba(43, 53, 47, .94) !important;
  background: rgba(11, 11, 11, .82) !important;
}

body.mf-brand-v2 #home-hero-title {
  max-width: 15ch;
  color: var(--mf-white);
  font-size: clamp(2.25rem, 4vw, 4rem) !important;
  line-height: .9 !important;
}

body.mf-brand-v2 .mf-v22-hero__lede {
  max-width: 55ch;
  color: var(--mf-gray-100);
  font-size: clamp(1rem, 1.25vw, 1.18rem);
}

body.mf-brand-v2 .mf-v22-now-line {
  border-left: 3px solid var(--mf-yellow) !important;
  background: rgba(18, 23, 21, .9) !important;
}

body.mf-brand-v2 .site-footer {
  border-top: 1px solid rgba(43, 53, 47, .95);
  background:
    linear-gradient(180deg, rgba(11, 11, 11, .96), rgba(4, 6, 6, .98)),
    var(--mf-brand-social) center / cover no-repeat !important;
}

body.mf-brand-v2 .site-footer__copy {
  max-width: 56ch;
  color: var(--mf-gray-300);
}

html body.mf-brand-v2.mf-page-shell.mf-system-page.mf-system-diaspora.mf-v44-players main#main-content .mf-player-tracker-hero.mf-polish-hero {
  background:
    radial-gradient(circle at 82% 14%, rgba(70, 168, 62, .16), transparent 19rem),
    radial-gradient(circle at 18% 12%, rgba(244, 196, 48, .12), transparent 17rem),
    linear-gradient(105deg, rgba(8, 11, 11, .98) 0%, rgba(4, 22, 16, .94) 50%, rgba(8, 11, 11, .98) 100%) !important;
}

html body.mf-brand-v2.mf-page-shell.mf-system-page.mf-system-diaspora.mf-v44-players main#main-content .mf-player-tracker-hero.mf-polish-hero .mf-tracker-hero-bg.mf-diaspora-hero__bg {
  background:
    linear-gradient(100deg, rgba(8, 11, 11, .96) 0%, rgba(8, 11, 11, .66) 48%, rgba(8, 11, 11, .9) 100%),
    radial-gradient(circle at 20% 16%, rgba(244, 196, 48, .24), transparent 15rem),
    radial-gradient(circle at 78% 20%, rgba(70, 168, 62, .24), transparent 18rem),
    linear-gradient(135deg, rgba(46, 125, 50, .11) 0 1px, transparent 1px 20px),
    linear-gradient(90deg, transparent 0 49%, rgba(247, 247, 244, .07) 49% 51%, transparent 51% 100%),
    linear-gradient(0deg, transparent 0 49%, rgba(247, 247, 244, .045) 49% 51%, transparent 51% 100%) !important;
  background-size: auto, auto, auto, 20px 20px, 18rem 18rem, 18rem 18rem !important;
}

.mf-brand-v2-kit {
  background: var(--mf-black);
}

.mf-brand-v2-kit__hero {
  padding-block: clamp(2rem, 5vw, 4rem);
  background:
    linear-gradient(90deg, rgba(8, 11, 11, .95), rgba(8, 11, 11, .68) 54%, rgba(8, 11, 11, .92)),
    var(--mf-brand-bg-16x9) center / cover no-repeat;
}

.mf-brand-v2-kit__grid,
.mf-brand-v2-kit__asset-grid,
.mf-brand-v2-kit__template-grid,
.mf-brand-v2-kit__usage-grid {
  display: grid;
  gap: clamp(.8rem, 1.5vw, 1.15rem);
}

.mf-brand-v2-kit__grid {
  grid-template-columns: minmax(0, 1.1fr) minmax(18rem, .9fr);
  align-items: center;
}

.mf-brand-v2-kit__panel {
  padding: clamp(1rem, 2vw, 1.4rem);
  border: 1px solid var(--mf-border);
  border-radius: 8px;
  background: rgba(11, 11, 11, .84);
}

.mf-brand-v2-kit__panel img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
}

.mf-brand-v2-kit__asset-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mf-brand-v2-kit__template-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mf-brand-v2-kit__usage-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mf-brand-v2-swatch {
  display: grid;
  gap: .45rem;
  min-height: 8rem;
  padding: .8rem;
  border: 1px solid var(--mf-border);
  border-radius: 8px;
  background: var(--mf-surface);
}

.mf-brand-v2-swatch i {
  display: block;
  min-height: 3.4rem;
  border-radius: 6px;
  background: var(--swatch);
}

.mf-brand-v2-download {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.65rem;
  padding-inline: .95rem;
  border: 1px solid rgba(70, 168, 62, .55);
  border-radius: 6px;
  color: var(--mf-white);
  background: rgba(23, 29, 26, .9);
  font-weight: 800;
  text-decoration: none;
}

@media (max-width: 900px) {
  .mf-brand-v2-kit__grid,
  .mf-brand-v2-kit__asset-grid,
  .mf-brand-v2-kit__template-grid,
  .mf-brand-v2-kit__usage-grid {
    grid-template-columns: 1fr;
  }

  body.mf-brand-v2 .site-brand__tag {
    display: none;
  }
}

/* Brand-v2 editorial alignment for the official STL route map. */
.mf-route-map {
  background:
    linear-gradient(90deg, rgba(238, 58, 62, 0.05), transparent 28%),
    radial-gradient(circle at 84% 0%, rgba(32, 93, 54, 0.38), transparent 38%),
    #030806;
}

.mf-route-shell {
  width: min(1220px, calc(100% - 32px));
}

.mf-route-hero {
  gap: 16px;
}

.mf-route-intro,
.mf-route-proof,
.mf-route-tier,
.mf-route-note {
  border-color: rgba(245, 207, 72, 0.34);
  border-radius: 10px;
}

.mf-route-intro {
  min-height: 358px;
  background-image:
    linear-gradient(96deg, rgba(3, 12, 7, 0.97) 0%, rgba(3, 12, 7, 0.78) 53%, rgba(3, 12, 7, 0.34) 100%),
    url("/assets/img/stl-hero/energizer-park-stl.jpg");
  background-position: center;
}

.mf-route-intro h1 {
  max-width: 12ch;
  font-family: var(--font-display);
  font-size: clamp(2.35rem, 5vw, 4.75rem);
  line-height: 0.93;
}

.mf-route-proof {
  position: relative;
  overflow: hidden;
  background: linear-gradient(145deg, rgba(15, 49, 30, 0.94), rgba(3, 13, 8, 0.98));
}

.mf-route-proof::after {
  position: absolute;
  right: -4px;
  bottom: 16px;
  width: 52px;
  height: 3px;
  background: linear-gradient(90deg, #8ce64f, #f5cf48, #ee3a3e);
  content: "";
}

.mf-route-map__head {
  margin-top: 36px;
  padding-top: 18px;
  border-top: 1px solid rgba(221, 235, 214, 0.18);
}

.mf-route-tier {
  background: linear-gradient(118deg, rgba(12, 37, 23, 0.98), rgba(4, 14, 9, 0.98));
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.16);
}

.mf-route-tier[style*="56aaff"] {
  --tier-color: #8ce64f !important;
}

.mf-route-node {
  border-color: rgba(125, 158, 94, 0.48);
  border-radius: 7px;
  background: rgba(5, 20, 12, 0.9);
}

.mf-route-node:hover,
.mf-route-node:focus-visible {
  background: #123b25;
}

.mf-route-note {
  background: linear-gradient(96deg, rgba(17, 54, 31, 0.96), rgba(4, 15, 9, 0.98));
}

@media (max-width: 850px) {
  .mf-route-hero {
    grid-template-columns: 1fr;
  }

  .mf-route-intro {
    min-height: 0;
  }
}

@media (max-width: 560px) {
  .mf-route-shell {
    width: min(100% - 22px, 1220px);
  }
}

/* Article desk refinement: presentation only, live stories remain data-driven. */
body.mf-articles-page #mf-newsroom-front {
  position: relative;
  overflow: hidden;
  border-block: 1px solid rgba(245, 207, 72, 0.4);
  background:
    linear-gradient(90deg, rgba(245, 207, 72, 0.08), transparent 27%),
    linear-gradient(180deg, #06110b 0%, #030806 100%);
}

body.mf-articles-page #mf-newsroom-front::before {
  position: absolute;
  top: 0;
  right: 0;
  width: min(34vw, 420px);
  height: 3px;
  background: linear-gradient(90deg, #8ce64f, #f5cf48, #ee3a3e);
  content: "";
}

body.mf-articles-page .mf-newsroom-masthead {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 0.42fr) minmax(240px, 0.72fr);
  gap: 24px;
  align-items: end;
  margin-bottom: 14px;
  padding: 20px 0 18px;
  border-bottom: 1px solid rgba(221, 235, 214, 0.22);
}

body.mf-articles-page .mf-newsroom-masthead__copy h2 {
  margin: 5px 0 4px;
  color: #fffdf4;
  font-family: var(--font-display);
  font-size: clamp(2rem, 4.2vw, 4.2rem);
  line-height: 0.95;
}

body.mf-articles-page .mf-newsroom-masthead__copy p {
  max-width: 52ch;
  margin: 0;
  color: #cbd7c8;
}

body.mf-articles-page .mf-newsroom-edition {
  display: grid;
  gap: 5px;
  align-self: stretch;
  align-content: end;
  padding: 12px 0 12px 16px;
  border-left: 2px solid #f5cf48;
}

body.mf-articles-page .mf-newsroom-edition span,
body.mf-articles-page .mf-newsroom-edition small {
  color: #bdcdbb;
  font: 700 0.72rem/1.25 var(--font-ui);
  text-transform: uppercase;
}

body.mf-articles-page .mf-newsroom-edition strong {
  color: #f8d64d;
  font-family: var(--font-display);
  font-size: 1.05rem;
  line-height: 1.15;
}

body.mf-articles-page .mf-newsroom-search {
  padding: 0;
  border: 0;
  background: transparent;
}

body.mf-articles-page .mf-newsroom-tools {
  position: relative;
  z-index: 1;
  margin-bottom: 18px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(221, 235, 214, 0.16);
}

body.mf-articles-page .mf-newsroom-front-grid--deduped {
  position: relative;
}

body.mf-articles-page .mf-newsroom-card--lead {
  border-top: 3px solid #f5cf48;
}

body.mf-articles-page .mf-newsroom-side {
  gap: 14px;
}

body.mf-articles-page .mf-newsroom-card--side {
  border-left: 2px solid rgba(140, 230, 79, 0.74);
}

body.mf-articles-page .mf-newsroom-card__meta span {
  color: #f5cf48;
}

@media (max-width: 880px) {
  body.mf-articles-page .mf-newsroom-masthead {
    grid-template-columns: minmax(0, 1fr) minmax(220px, 0.7fr);
  }

  body.mf-articles-page .mf-newsroom-search {
    grid-column: 1 / -1;
  }
}

@media (max-width: 620px) {
  body.mf-articles-page .mf-newsroom-masthead {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  body.mf-articles-page .mf-newsroom-edition {
    padding: 10px 0 10px 13px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.mf-brand-v2 *,
  body.mf-brand-v2 *::before,
  body.mf-brand-v2 *::after {
    scroll-behavior: auto !important;
    transition-duration: .001ms !important;
    animation-duration: .001ms !important;
  }
}

/* Homepage brand masthead: aligns the live experience with the approved
   stadium-lit MoFutbol visual world while keeping its existing routes intact. */
body.mf-brand-v2.mf-home-v22 .site-header {
  border-bottom-color: rgba(190, 210, 187, .18);
  background: rgba(9, 11, 10, .98) !important;
}

body.mf-brand-v2.mf-home-v22 .site-header::before {
  position: absolute;
  inset: 0 0 auto;
  height: 2px;
  background: linear-gradient(90deg, var(--mf-green), var(--mf-yellow) 62%, var(--mf-red));
  content: "";
}

body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean {
  position: relative;
  isolation: isolate;
  min-height: clamp(35rem, 51vw, 45rem) !important;
  overflow: hidden;
  padding: 0 !important;
  border-bottom: 1px solid rgba(218, 228, 215, .25) !important;
  background:
    linear-gradient(90deg, rgba(7, 9, 8, .99) 0%, rgba(7, 9, 8, .95) 42%, rgba(7, 9, 8, .46) 72%, rgba(7, 9, 8, .84) 100%),
    linear-gradient(0deg, rgba(7, 9, 8, .95), transparent 36%, rgba(7, 9, 8, .44)),
    var(--mf-brand-bg-16x9) center / cover no-repeat !important;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(135deg, transparent 0 11%, rgba(72, 168, 73, .72) 11.1% 11.3%, transparent 11.4% 100%),
    linear-gradient(135deg, transparent 0 12.5%, rgba(244, 196, 48, .72) 12.6% 12.8%, transparent 12.9% 100%),
    linear-gradient(135deg, transparent 0 14%, rgba(229, 57, 53, .68) 14.1% 14.3%, transparent 14.4% 100%);
  opacity: .78;
  content: "";
}

body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean .mf-v22-hero__bg {
  display: none;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean .mf-v22-hero__grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 43rem) minmax(20rem, 1fr);
  align-items: center;
  min-height: clamp(35rem, 51vw, 45rem);
  padding-block: clamp(3.4rem, 6vw, 5.8rem) clamp(6.25rem, 9vw, 8.75rem) !important;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean .mf-v22-hero__grid::before {
  position: absolute;
  z-index: -1;
  inset: 0 -4vw 0 auto;
  width: min(50vw, 42rem);
  background:
    linear-gradient(90deg, rgba(7, 9, 8, 1), transparent 26%),
    linear-gradient(0deg, rgba(7, 9, 8, .88), transparent 42%),
    url("/assets/img/homepage/mofutbol-founder-portrait.png") 50% 42% / cover no-repeat;
  filter: saturate(.9) contrast(1.04);
  content: "";
}

body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean .mf-v22-hero__copy {
  position: relative;
  z-index: 1;
  max-width: 43rem;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-hero-kicker {
  width: fit-content;
  margin-bottom: .65rem;
  padding-bottom: .55rem;
  border-bottom: 1px solid rgba(245, 247, 242, .42);
}

body.mf-brand-v2.mf-home-v22 .mf-v22-hero-kicker span {
  color: #d7e7d2 !important;
  font-size: .7rem;
  letter-spacing: .22em;
}

body.mf-brand-v2.mf-home-v22 #home-hero-title {
  max-width: 10.5ch !important;
  margin: 0;
  color: #f1f3ee;
  font-size: clamp(3rem, 6.2vw, 6.5rem) !important;
  line-height: .82 !important;
  letter-spacing: .01em !important;
  text-shadow: 0 4px 26px rgba(0, 0, 0, .35);
}

body.mf-brand-v2.mf-home-v22 #home-hero-title::after {
  display: block;
  width: min(13rem, 45%);
  height: 3px;
  margin-top: .72rem;
  background: linear-gradient(90deg, var(--mf-green), var(--mf-yellow) 66%, var(--mf-red));
  content: "";
}

body.mf-brand-v2.mf-home-v22 .mf-v22-hero__lede {
  max-width: 35rem !important;
  margin-top: 1.1rem;
  color: rgba(235, 240, 233, .84) !important;
  font-size: clamp(1rem, 1.45vw, 1.17rem) !important;
  line-height: 1.48 !important;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-now-line {
  max-width: 35rem;
  margin-top: .55rem;
  padding: .82rem 0 .3rem 1rem;
  border: 0 !important;
  border-left: 2px solid var(--mf-yellow) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-now-line span {
  color: var(--mf-yellow);
  font: 800 .63rem/1.2 var(--font-ui);
  letter-spacing: .18em;
  text-transform: uppercase;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-now-line strong {
  margin-top: .25rem;
  color: #f5f6f1;
  font-family: var(--font-heading);
  font-size: clamp(1rem, 1.5vw, 1.22rem);
  line-height: 1.14;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-now-line small {
  color: rgba(225, 235, 222, .64);
}

body.mf-brand-v2.mf-home-v22 .mf-v22-actions {
  margin-top: .95rem;
  gap: .65rem !important;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-actions .mf-v22-button {
  min-height: 2.9rem !important;
  border-radius: 2px !important;
  padding-inline: 1rem !important;
  font-size: .83rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-actions .mf-v22-button--primary {
  border-color: rgba(225, 236, 218, .54) !important;
  background: #255f31 !important;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-actions .mf-v22-button--secondary {
  border-color: rgba(245, 196, 48, .68) !important;
  background: rgba(11, 14, 12, .52) !important;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-group-label,
body.mf-brand-v2.mf-home-v22 .mf-v22-quick-routes,
body.mf-brand-v2.mf-home-v22 .mf-v22-find-panel {
  display: none !important;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-league-doors {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  max-width: 38rem;
  margin-top: 1.3rem;
  border-top: 1px solid rgba(238, 242, 234, .24);
  border-bottom: 1px solid rgba(238, 242, 234, .24);
}

body.mf-brand-v2.mf-home-v22 .mf-v22-league-doors a {
  min-height: 4.35rem;
  padding: .7rem .8rem;
  border: 0 !important;
  border-right: 1px solid rgba(238, 242, 234, .2) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-league-doors a:last-child {
  border-right: 0 !important;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-league-doors a:hover,
body.mf-brand-v2.mf-home-v22 .mf-v22-league-doors a:focus-visible {
  background: rgba(61, 116, 65, .25) !important;
  transform: translateY(-2px);
}

body.mf-brand-v2.mf-home-v22 .mf-v22-league-doors span {
  color: var(--mf-yellow) !important;
  font: 800 .64rem/1 var(--font-ui);
  letter-spacing: .1em;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-league-doors strong {
  margin-top: .36rem;
  color: #f3f5ef;
  font: 700 .83rem/1.05 var(--font-heading);
}

body.mf-brand-v2.mf-home-v22 .mf-v22-league-doors small {
  display: none;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean .mf-v22-hero__copy > * {
  animation: mf-home-masthead-enter .7s cubic-bezier(.16, 1, .3, 1) both;
}

body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean .mf-v22-hero__copy > :nth-child(2) { animation-delay: .07s; }
body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean .mf-v22-hero__copy > :nth-child(3) { animation-delay: .13s; }
body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean .mf-v22-hero__copy > :nth-child(4) { animation-delay: .19s; }
body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean .mf-v22-hero__copy > :nth-child(5) { animation-delay: .25s; }

@keyframes mf-home-masthead-enter {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 980px) {
  body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean {
    min-height: 0 !important;
  }

  body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean .mf-v22-hero__grid {
    min-height: 0;
    grid-template-columns: minmax(0, 1fr);
    padding-block: 3.5rem 4rem !important;
  }

  body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean .mf-v22-hero__grid::before {
    right: -12vw;
    width: min(58vw, 32rem);
    opacity: .56;
  }
}

@media (max-width: 680px) {
  body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean .mf-v22-hero__grid {
    width: min(calc(100% - 2rem), 34rem) !important;
    padding-block: 2.5rem 2.75rem !important;
  }

  body.mf-brand-v2.mf-home-v22 .mf-v22-hero--clean .mf-v22-hero__grid::before {
    display: none;
  }

  body.mf-brand-v2.mf-home-v22 #home-hero-title {
    max-width: 9.8ch !important;
    font-size: clamp(2.9rem, 15vw, 4.6rem) !important;
  }

  body.mf-brand-v2.mf-home-v22 .mf-v22-league-doors {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: 100%;
  }

  body.mf-brand-v2.mf-home-v22 .mf-v22-league-doors a:nth-child(2) {
    border-right: 0 !important;
  }

  body.mf-brand-v2.mf-home-v22 .mf-v22-league-doors a:nth-child(-n + 2) {
    border-bottom: 1px solid rgba(238, 242, 234, .2) !important;
  }
}

/* Runtime homepage polish adds its own compact rules. These selectors retain
   the masthead hierarchy after those enhancements have arranged the links. */
html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus {
  min-height: clamp(35rem, 51vw, 45rem) !important;
  padding: 0 !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__grid {
  width: min(calc(100% - 2rem), 1200px) !important;
  max-width: 1200px !important;
  grid-template-columns: minmax(0, 43rem) minmax(20rem, 1fr) !important;
  min-height: clamp(35rem, 51vw, 45rem) !important;
  padding-block: clamp(3.4rem, 6vw, 5.8rem) clamp(6.25rem, 9vw, 8.75rem) !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__copy {
  width: 100% !important;
  max-width: 43rem !important;
  padding: 0 !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus h1 {
  max-width: 10.5ch !important;
  font-size: clamp(3rem, 6.2vw, 6.5rem) !important;
  line-height: .82 !important;
  letter-spacing: .01em !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__lede {
  max-width: 35rem !important;
  font-size: clamp(1rem, 1.45vw, 1.17rem) !important;
  font-weight: 500 !important;
  line-height: 1.48 !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-now-line.mf-v22-now-line--with-media {
  display: grid !important;
  grid-template-columns: minmax(9rem, .72fr) minmax(0, 1.28fr) !important;
  min-height: 8.5rem !important;
  max-height: none !important;
  margin-top: .8rem !important;
  padding: 0 !important;
  border: 1px solid rgba(245, 196, 48, .44) !important;
  border-left: 2px solid var(--mf-yellow) !important;
  background: rgba(7, 26, 16, .9) !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-now-line--with-media .mf-v22-now-line__content {
  padding: .9rem 1rem !important;
  background: transparent !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-now-line--with-media .mf-v22-now-line__title {
  color: #f5f6f1 !important;
  font: 800 clamp(.92rem, 1.2vw, 1.08rem)/1.08 var(--font-heading) !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-actions {
  display: flex !important;
  grid-template-columns: none !important;
  margin-top: .95rem !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-actions .mf-v22-button {
  width: auto !important;
  min-height: 2.9rem !important;
  padding: .72rem 1rem !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero-explore {
  display: block !important;
  margin-top: 1.35rem !important;
  padding-top: 0 !important;
  border: 0 !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero-explore > summary {
  display: none !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero-explore > .mf-v22-hero-explore__content {
  display: block !important;
  padding: 0 !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero-explore .mf-v22-quick-routes,
html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero-explore .mf-v22-find-panel {
  display: none !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero-explore .mf-v22-league-doors {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  max-width: 38rem !important;
  margin: 0 !important;
}

@media (max-width: 980px) {
  html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus,
  html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__grid {
    min-height: 0 !important;
  }

  html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__grid {
    grid-template-columns: minmax(0, 1fr) !important;
    padding-block: 3.5rem 4rem !important;
  }
}

@media (max-width: 680px) {
  html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__grid {
    width: min(calc(100% - 2rem), 34rem) !important;
    padding-block: 2.5rem 2.75rem !important;
  }

  html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus h1 {
    font-size: clamp(2.9rem, 15vw, 4.6rem) !important;
  }

  html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-actions {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-now-line.mf-v22-now-line--with-media {
    grid-template-columns: 1fr !important;
  }

  html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-now-line__media {
    height: 8rem;
  }

  html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero-explore .mf-v22-league-doors {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    max-width: 100% !important;
  }
}

body.mf-brand-v2.mf-home-v22 .mf-home-wafcon-next {
  border-block-color: rgba(244, 196, 48, .38) !important;
  background:
    linear-gradient(90deg, rgba(229, 57, 53, .1), transparent 26%),
    linear-gradient(110deg, #0a0d0b, #113a27 72%, #0a0d0b) !important;
}

body.mf-brand-v2.mf-home-v22 .mf-home-wafcon-next__card {
  border-color: rgba(244, 196, 48, .52) !important;
  background: linear-gradient(90deg, rgba(22, 92, 47, .92), rgba(10, 16, 12, .96)) !important;
  box-shadow: inset 0 1px 0 rgba(247, 247, 244, .08) !important;
}

body.mf-brand-v2.mf-home-v22 .mf-home-wafcon-next__mark {
  border-color: rgba(244, 196, 48, .54) !important;
  background: linear-gradient(135deg, #1b6334, #0b130e 66%) !important;
}

body.mf-brand-v2.mf-home-v22 .mf-home-wafcon-next__action {
  border-color: rgba(244, 196, 48, .74) !important;
  color: #10120e !important;
  background: var(--mf-yellow) !important;
}


/*
 * Sitewide stadium editorial system.
 * This is deliberately a shared final layer: public routes that already load
 * Brand V2 inherit the refreshed visual language without changing content,
 * data modules, forms, or navigation contracts.
 */
:root {
  --mf-black: #080b09;
  --mf-onyx: #0c100d;
  --mf-charcoal: #121813;
  --mf-surface: #171d17;
  --mf-surface-raised: #202820;
  --mf-border: #354136;
  --mf-green-dark: #1e5f31;
  --mf-green: #398544;
  --mf-green-bright: #67ae52;
  --mf-yellow: #e4b632;
  --mf-red: #c94139;
  --mf-white: #f3f4ee;
  --mf-gray-100: #e2e6dd;
  --mf-gray-300: #b9c1b6;
  --mf-gray-500: #89928a;
}

body.mf-brand-v2,
html[data-theme="dark"] body {
  background: #080b09;
  color: var(--mf-white);
}

body.mf-brand-v2::before {
  background:
    linear-gradient(135deg, transparent 0 14%, rgba(103, 174, 82, .045) 14.05% 14.12%, transparent 14.18% 100%),
    linear-gradient(135deg, transparent 0 15.25%, rgba(228, 182, 50, .045) 15.3% 15.37%, transparent 15.43% 100%),
    linear-gradient(135deg, transparent 0 16.5%, rgba(201, 65, 57, .04) 16.55% 16.62%, transparent 16.68% 100%),
    linear-gradient(90deg, rgba(255, 255, 255, .018) 1px, transparent 1px),
    linear-gradient(0deg, rgba(255, 255, 255, .014) 1px, transparent 1px);
  background-size: auto, auto, auto, 32px 32px, 32px 32px;
  opacity: .58;
}

body.mf-brand-v2 main {
  position: relative;
  isolation: isolate;
}

body.mf-brand-v2 main > :where(section, header)[class*="hero"] {
  position: relative;
  overflow: hidden;
  border-block: 1px solid rgba(226, 230, 221, .14);
  background:
    linear-gradient(104deg, rgba(8, 11, 9, .98) 0%, rgba(12, 20, 14, .96) 56%, rgba(8, 11, 9, .98) 100%) !important;
}

body.mf-brand-v2 main > :where(section, header)[class*="hero"]::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(135deg, transparent 0 71%, rgba(103, 174, 82, .18) 71.1% 71.28%, transparent 71.4% 100%),
    linear-gradient(135deg, transparent 0 74%, rgba(228, 182, 50, .16) 74.1% 74.28%, transparent 74.4% 100%),
    linear-gradient(135deg, transparent 0 77%, rgba(201, 65, 57, .15) 77.1% 77.28%, transparent 77.4% 100%);
  content: "";
}

body.mf-brand-v2 main :is(.mf-diaspora-hero, .mf-polish-hero, .mf-editorial-hero, .mf-afcon-hero, .mf-worldcup-hero, .mf-youth-hero, .mf-ac-hero, .mf-route-hero, .mf-page-hero) :where(h1, h2) {
  max-width: 15ch;
  color: var(--mf-white);
  font-family: var(--font-display);
  font-size: clamp(2.2rem, 3.8vw, 4.25rem);
  line-height: .92;
}

body.mf-brand-v2 main :is(.mf-diaspora-hero, .mf-polish-hero, .mf-editorial-hero, .mf-afcon-hero, .mf-worldcup-hero, .mf-youth-hero, .mf-ac-hero, .mf-route-hero, .mf-page-hero) :where(h1, h2)::after {
  display: block;
  width: 8.25rem;
  height: 2px;
  margin-top: .7rem;
  background: linear-gradient(90deg, var(--mf-green) 0 58%, var(--mf-yellow) 58% 82%, var(--mf-red) 82% 100%);
  content: "";
}

body.mf-brand-v2 main :where(.stl-section, .mf-section, .mf-ac-section, .mf-route-tier, .mf-route-note, .mf-tracker-links-section, .mf-newsroom-front) {
  border-color: rgba(226, 230, 221, .13);
  padding-block: clamp(1.35rem, 2.5vw, 2.6rem);
}

body.mf-brand-v2 main :where(.stl-section--alt, .mf-ac-section--surface, .mf-route-tier, .mf-tracker-links-section) {
  background-color: rgba(16, 24, 18, .9) !important;
}

body.mf-brand-v2 main :where(article, .mf-card, .mf-card-featured, .mf-card-media, .mf-card-player, .mf-info-card, .mf-ac-callout, .mf-route-proof, .mf-route-node, .mf-tracker-link-card, .mf-tracker-route-card, .mf-tracker-lane-panel) {
  border-color: rgba(226, 230, 221, .17) !important;
  border-radius: 4px !important;
  background-color: rgba(17, 24, 18, .94) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04) !important;
}

body.mf-brand-v2 main :where(article, .mf-card, .mf-card-featured, .mf-card-media, .mf-card-player, .mf-info-card, .mf-route-node, .mf-tracker-link-card, .mf-tracker-route-card):hover {
  border-color: rgba(103, 174, 82, .58) !important;
}

body.mf-brand-v2 :where(.stl-btn--primary, .site-button--primary, .mf-v22-button--primary, .site-header__cta--media, .mf-ac-button--primary) {
  border-radius: 3px !important;
  border-color: rgba(228, 182, 50, .72) !important;
  background: #2f783d !important;
  box-shadow: none !important;
}

body.mf-brand-v2 :where(.stl-btn--primary, .site-button--primary, .mf-v22-button--primary, .site-header__cta--media, .mf-ac-button--primary).mf-conversion-primary {
  background: #d9ff36 !important;
  color: #07140c !important;
}

body.mf-brand-v2 :where(.stl-btn--ghost, .mf-v22-button--secondary, .site-button--secondary, .mf-ac-button:not(.mf-ac-button--primary)) {
  border-radius: 3px !important;
  border-color: rgba(228, 182, 50, .5) !important;
  background: rgba(8, 11, 9, .5) !important;
}

body.mf-brand-v2 :where(.stl-btn--primary, .site-button--primary, .mf-v22-button--primary, .site-header__cta--media, .mf-ac-button--primary):hover {
  background: #3a8646 !important;
  box-shadow: none !important;
}

body.mf-brand-v2 main :where(input:not([type="checkbox"]):not([type="radio"]), textarea, select) {
  border: 1px solid rgba(226, 230, 221, .24) !important;
  border-radius: 3px !important;
  background: #0d130f !important;
  color: var(--mf-white) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035) !important;
}

body.mf-brand-v2 main :where(input, textarea, select)::placeholder {
  color: rgba(185, 193, 182, .68) !important;
}

body.mf-brand-v2 main :where(input, textarea, select):focus {
  border-color: var(--mf-yellow) !important;
  outline: 2px solid rgba(228, 182, 50, .24) !important;
  outline-offset: 1px;
}

body.mf-brand-v2 :where(.site-header, .site-footer) {
  position: relative;
  background: #0c100d !important;
}

body.mf-brand-v2 :where(.site-header, .site-footer)::after {
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  height: 2px;
  background: linear-gradient(90deg, var(--mf-green) 0 58%, var(--mf-yellow) 58% 81%, var(--mf-red) 81% 100%);
  content: "";
}

body.mf-brand-v2 .site-header__search,
body.mf-brand-v2 .site-header__cta,
body.mf-brand-v2 .site-theme-toggle,
body.mf-brand-v2 .site-nav__menu-button {
  border-radius: 3px !important;
}

body.mf-brand-v2 .site-footer {
  background: #0c100d !important;
}

body.mf-brand-v2 .site-footer::after {
  top: -1px;
  bottom: auto;
}

/* The founder portrait is a contained accent, not a page-sized background. */
html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus,
html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__grid {
  min-height: clamp(29rem, 38vw, 35rem) !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__grid {
  padding-block: clamp(2.4rem, 4vw, 3.6rem) clamp(3.5rem, 5vw, 4.8rem) !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__grid::before {
  right: 1vw;
  width: min(31vw, 27rem);
  background:
    linear-gradient(90deg, rgba(7, 9, 8, .97), transparent 30%),
    linear-gradient(0deg, rgba(7, 9, 8, .86), transparent 40%),
    url("/assets/img/homepage/mofutbol-founder-portrait.png") right bottom / contain no-repeat;
  filter: saturate(.86) contrast(1.02);
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus h1 {
  font-size: clamp(2.65rem, 4.55vw, 5rem) !important;
}

html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-now-line.mf-v22-now-line--with-media {
  min-height: 6.75rem !important;
}

@media (max-width: 980px) {
  html body.mf-brand-v2.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__grid {
    padding-block: 3rem 3.4rem !important;
  }
}

@media (max-width: 680px) {
  body.mf-brand-v2 main > :where(section, header)[class*="hero"]::before {
    opacity: .55;
  }

  body.mf-brand-v2 main :is(.mf-diaspora-hero, .mf-polish-hero, .mf-editorial-hero, .mf-afcon-hero, .mf-worldcup-hero, .mf-youth-hero, .mf-ac-hero, .mf-route-hero, .mf-page-hero) :where(h1, h2) {
    font-size: clamp(2rem, 11vw, 3.25rem);
  }
}

/* Shared article masthead: compact, wide, and readable at desktop scale. */
@media (min-width: 48rem) {
  body.mf-article-page #article-hero {
    min-height: 0 !important;
    padding-block: 0.7rem !important;
  }

  body.mf-article-page #article-hero .mf-article-hero__shell {
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr) max-content;
    grid-template-areas:
      "breadcrumb meta actions"
      "breadcrumb copy actions";
    align-items: start;
    column-gap: clamp(0.8rem, 1.6vw, 1.5rem) !important;
    row-gap: 0.35rem !important;
    width: min(calc(100% - 3rem), 84rem) !important;
    max-width: 84rem !important;
    margin-inline: auto !important;
    padding: clamp(0.75rem, 1.15vw, 1rem) clamp(0.9rem, 1.6vw, 1.35rem) !important;
    border-radius: 8px !important;
  }

  body.mf-article-page #article-hero .mf-article-breadcrumb {
    grid-area: breadcrumb;
    align-self: center;
  }

  body.mf-article-page #article-hero .mf-article-hero__meta {
    grid-area: meta;
    align-self: end;
  }

  body.mf-article-page #article-hero .mf-article-hero__copy {
    grid-area: copy;
    max-width: none;
    gap: 0.36rem;
  }

  body.mf-article-page #article-hero .mf-article-hero__copy h1 {
    max-width: none !important;
    font-size: clamp(1.75rem, 2.65vw, 2.8rem) !important;
    line-height: 0.98 !important;
  }

  body.mf-article-page #article-hero .mf-article-hero__copy p {
    max-width: 74ch;
    font-size: 0.92rem;
    line-height: 1.4;
  }

  body.mf-article-page #article-hero .mf-article-hero__actions {
    grid-area: actions;
    align-self: center;
    justify-content: flex-end;
    max-width: 19rem;
  }
}

@media (max-width: 47.99rem) {
  body.mf-article-page #article-hero {
    padding-block: 0.6rem 0.75rem !important;
  }

  body.mf-article-page #article-hero .mf-article-hero__shell {
    width: min(calc(100% - 1rem), 38rem) !important;
    padding: 0.75rem !important;
    border-radius: 8px !important;
  }

  body.mf-article-page #article-hero .mf-article-hero__copy h1 {
    max-width: 17ch !important;
    font-size: clamp(1.55rem, 7.1vw, 2.05rem) !important;
    line-height: 0.99 !important;
  }
}

@media (min-width: 75rem) {
  body.mf-article-page #article-detail > .stl-container {
    width: min(calc(100% - 4rem), 110rem) !important;
    max-width: 110rem !important;
  }

  body.mf-article-page .mf-article-detail-grid {
    grid-template-columns: minmax(0, 1fr) minmax(19rem, 22rem) !important;
    gap: clamp(1.25rem, 2vw, 2rem) !important;
  }

  body.mf-article-page .mf-article-copy,
  body.mf-article-page .mf-article-photo-gallery {
    width: min(100%, 78ch);
    max-width: 78ch;
  }
}

/* Brand typography: Bebas Neue for editorial display, Montserrat everywhere else. */
html body.mf-brand-v2,
html[data-theme] body {
  font-family: var(--font-body) !important;
}

html body.mf-brand-v2 :where(
  .site-header,
  .site-header *,
  .site-nav,
  .site-nav *,
  .site-drawer,
  .site-drawer *,
  .site-footer,
  .site-footer *,
  .mf-score-ribbon,
  .mf-score-ribbon *,
  nav,
  nav *,
  button,
  [role="button"],
  input,
  select,
  textarea,
  label,
  option,
  .stl-eyebrow,
  .eyebrow,
  .section-label,
  .mf-v22-kicker,
  .mf-v22-group-label,
  .mf-v22-hero-kicker,
  [class*="badge"],
  [class*="chip"],
  [class*="pill"],
  [class*="kicker"],
  [class*="eyebrow"],
  [class*="tag"],
  [class*="label"]
) {
  font-family: var(--font-ui) !important;
}

html body.mf-brand-v2 :where(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  .mf-section-heading,
  .stl-heading,
  .stl-subheading,
  .section-title,
  .story-card-title,
  .article-card-title,
  [class$="__title"],
  [class*="hero-title"],
  [class*="card-title"],
  [class*="section-title"],
  [class*="headline"],
  [class*="heading"],
  [class*="card"] > strong,
  [class*="card"] h3,
  [class*="card"] h4
) {
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
}

html body.mf-brand-v2 :where(
  p,
  li,
  dd,
  dt,
  blockquote,
  figcaption,
  .stl-muted,
  .mf-lede,
  [class*="description"],
  [class*="summary"],
  [class*="excerpt"],
  [class*="__copy"]
) {
  font-family: var(--font-body) !important;
}

html body.mf-brand-v2 :where(
  [class*="stat"] strong,
  [class*="stat"] b,
  [class*="metric"] strong,
  [class*="metric"] b,
  [class*="count"] strong,
  [class*="number"],
  [data-stat-value]
) {
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
}

html body.mf-brand-v2 :where(
  [class*="stat"] small,
  [class*="stat"] span,
  [class*="metric"] small,
  [class*="metric"] span,
  [class*="count"] small
) {
  font-family: var(--font-ui) !important;
  font-weight: 600 !important;
}


/* Source: /assets/css/mf-global-runtime.css */
/* Generated by scripts/build-global-runtime-css.mjs. Do not edit directly. */
/* global-navigation.css */
/* One compact, readable navigation system on every public MoFutbol route. */
:root {
  --mf-global-header-height: 54px;
  --mf-global-ticker-height: 48px;
}

/* Reserve the asynchronously rendered shell so the page does not jump on load. */
html [data-site-header]:empty {
  display: block;
  min-height: calc(var(--mf-global-header-height) + var(--mf-global-ticker-height));
  background: #050b08;
}

@media (max-width: 700px) {
  html [data-site-header]:empty {
    min-height: 106px;
  }
}

/* The shared header is in normal document flow. Remove the legacy offset that
   was reserved for the former fixed header and created a blank strip above it. */
html body.site-app-ready {
  padding-top: 0 !important;
}

html body .site-header {
  top: 0 !important;
  min-height: var(--mf-global-header-height) !important;
}

html body .site-header .site-header__inner {
  width: min(calc(100% - 24px), 100rem) !important;
  max-width: 100rem !important;
  min-height: var(--mf-global-header-height) !important;
  gap: 8px !important;
  padding-block: 4px !important;
}

html body .site-header .site-brand {
  min-width: max-content !important;
}

html body .site-header .site-brand__logo {
  width: 34px !important;
  height: 34px !important;
}

html body .site-header .site-brand__tag {
  line-height: 1.1;
}

html body .site-header .site-nav {
  min-width: 0 !important;
  overflow: visible !important;
}

html body .site-header .site-nav__list {
  justify-content: center !important;
  gap: 2px !important;
}

html body .site-header .site-nav :where(.site-nav__link, .site-nav__toggle) {
  min-height: 42px !important;
  padding-inline: 7px !important;
  font-size: 0.68rem !important;
}

html body .site-header .site-header__actions {
  flex: 0 0 auto !important;
  gap: 5px !important;
}

/* Shared command-menu structure. Some focused PHP routes intentionally ship
   only the base component CSS; keep their menus identical to the full public
   pages instead of letting legacy block-link rules collapse the panel copy. */
html body .site-header .site-nav__panel {
  display: grid !important;
  gap: 0.5rem !important;
  overflow: hidden;
  z-index: 1200 !important;
  background: #08120d !important;
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.52) !important;
}

/* The navigation builder keeps every menu in the DOM, then marks inactive
   panels with the native `hidden` attribute. The shared grid rule above must
   not override that state, or an inactive off-screen panel widens the page. */
html body .site-header .site-nav__panel[hidden] {
  display: none !important;
}

html body .site-header .site-nav__panel-head {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.15rem 0.15rem 0.35rem;
}

html body .site-header .site-nav__panel-head > span {
  color: var(--stl-gold, #f5c842);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

html body .site-header .site-nav__panel-head > small {
  color: var(--color-muted, #aeb9ad);
  font-size: 0.67rem;
  white-space: nowrap;
}

html body .site-header .site-nav__panel-grid {
  display: grid !important;
  gap: 0.4rem !important;
}

html body .site-header .site-nav__panel[data-nav-size="medium"] {
  min-width: min(28rem, calc(100vw - 2rem)) !important;
}

html body .site-header .site-nav__panel[data-nav-size="large"] {
  min-width: min(34rem, calc(100vw - 2rem)) !important;
}

html body .site-header .site-nav__panel[data-nav-size="medium"] .site-nav__panel-grid,
html body .site-header .site-nav__panel[data-nav-size="large"] .site-nav__panel-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

html body .site-header .site-nav__panel[data-nav-size="medium"] .site-nav__panel-grid > a:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

html body .site-header .site-nav__panel :where(.site-nav__panel-feature, .site-nav__panel-grid > a) {
  display: grid !important;
  grid-template-columns: 2rem minmax(0, 1fr) 1.35rem !important;
  align-items: center !important;
  column-gap: 0.65rem !important;
  min-height: 4.1rem !important;
  padding: 0.7rem 0.75rem !important;
  text-decoration: none;
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 0.7rem;
}

html body .site-header .site-nav__panel-icon {
  display: inline-grid !important;
  place-items: center;
  width: 2rem !important;
  height: 2rem !important;
  line-height: 1 !important;
}

html body .site-header .site-nav__panel-copy {
  display: block !important;
  min-width: 0;
}

html body .site-header .site-nav__panel-copy > span,
html body .site-header .site-nav__panel-copy small {
  display: block !important;
  overflow-wrap: anywhere;
}

html body .site-header .site-nav__panel-copy > span {
  color: var(--color-text, #f5f6f0);
  font-weight: 800;
  line-height: 1.15;
}

html body .site-header .site-nav__panel-copy small {
  margin-top: 0.18rem;
  color: var(--color-muted, #aeb9ad);
  font-size: 0.75rem;
  line-height: 1.35;
}

html body .site-header .site-nav__panel-arrow {
  display: inline-grid !important;
  place-items: center;
  width: 1.35rem;
  height: 1.35rem;
}

/* Preserve the primary Match Center action on desktop while reducing brand copy
   before the navigation needs to collapse into the drawer. */
@media (max-width: 1500px) {
  html body .site-header .site-brand__tag {
    display: none !important;
  }
}

/* Change to the full drawer before desktop controls can collide. */
@media (max-width: 1280px) {
  html body .site-header .site-header__inner {
    grid-template-columns: auto 1fr auto !important;
  }

  html body .site-header .site-nav {
    display: none !important;
  }

  html body .site-header .site-nav__menu-button {
    display: inline-flex !important;
  }
}

@media (max-width: 980px) {
  :root {
    --mf-global-header-height: 54px;
    --mf-global-ticker-height: 52px;
  }

  html body .site-header .site-header__inner {
    width: 100% !important;
    padding-inline: 14px !important;
  }

}

@media (max-width: 640px) {
  html body .site-header .site-brand__tag {
    display: none !important;
  }

  html body .site-header .site-header__actions {
    min-width: 0 !important;
  }

  html body .site-header :where(.site-header__search, .site-header__cta) {
    display: none !important;
  }

}

/* Mobile command drawer: a single readable navigation list, independent of
   the desktop menu's icon-and-copy layout. This keeps labels, descriptions,
   and disclosure counts from running together on narrow screens. */
@media (max-width: 1280px) {
  html body .site-drawer {
    inset: var(--mf-global-header-height) 0 0 auto !important;
    width: min(100%, 27rem) !important;
    max-width: 100% !important;
    min-height: calc(100dvh - var(--mf-global-header-height)) !important;
    max-height: calc(100dvh - var(--mf-global-header-height)) !important;
    padding: 12px 14px max(20px, env(safe-area-inset-bottom)) !important;
    gap: 8px !important;
    background: #07100b !important;
    border-left: 1px solid rgba(214, 255, 31, 0.18) !important;
    border-radius: 0 !important;
    overflow-y: auto !important;
  }

  html body .site-drawer__search {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 48px !important;
    padding: 0 14px !important;
    border: 1px solid rgba(214, 255, 31, 0.28) !important;
    border-radius: 12px !important;
    background: linear-gradient(100deg, #ffe13a, #a8f237 58%, #4cdd7d) !important;
    color: #07100b !important;
    font-family: var(--font-display, var(--font-sans)) !important;
    font-size: 0.92rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-align: left !important;
  }

  html body .site-drawer__quick {
    grid-template-columns: 1fr !important;
    gap: 4px !important;
    padding: 6px !important;
    border-color: rgba(255, 255, 255, 0.08) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.025) !important;
  }

  html body .site-drawer__quick-link:first-child {
    grid-column: auto !important;
  }

  html body .site-drawer__section {
    display: grid !important;
    gap: 4px !important;
    padding: 0 !important;
  }

  html body .site-drawer__single {
    padding: 0 !important;
  }

  html body .site-drawer :where(.site-drawer__quick-link, .site-drawer__single > a, .site-drawer__links > a) {
    display: block !important;
    min-height: 48px !important;
    padding: 10px 13px !important;
    border: 1px solid transparent !important;
    border-radius: 10px !important;
    color: #edf4ea !important;
    background: transparent !important;
    text-decoration: none !important;
  }

  html body .site-drawer :where(.site-drawer__quick-link, .site-drawer__single > a, .site-drawer__links > a):hover,
  html body .site-drawer :where(.site-drawer__quick-link, .site-drawer__single > a, .site-drawer__links > a):focus-visible,
  html body .site-drawer :where(.site-drawer__quick-link, .site-drawer__single > a, .site-drawer__links > a)[aria-current="page"] {
    color: #ffffff !important;
    border-color: rgba(214, 255, 31, 0.22) !important;
    background: rgba(214, 255, 31, 0.1) !important;
  }

  html body .site-drawer__link-copy {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 2px !important;
    min-width: 0 !important;
  }

  html body .site-drawer__link-label {
    display: block !important;
    color: inherit !important;
    font-family: var(--font-display, var(--font-sans)) !important;
    font-size: 0.96rem !important;
    font-weight: 750 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
  }

  html body .site-drawer__link-description {
    display: block !important;
    max-width: none !important;
    margin: 0 !important;
    color: #aab9aa !important;
    font-family: var(--font-sans, sans-serif) !important;
    font-size: 0.76rem !important;
    line-height: 1.3 !important;
  }

  html body .site-drawer__group {
    border: 1px solid rgba(255, 255, 255, 0.075) !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.018) !important;
  }

  html body .site-drawer__group > summary {
    display: flex !important;
    align-items: center !important;
    min-height: 48px !important;
    padding: 10px 13px !important;
    color: #edf4ea !important;
  }

  html body .site-drawer__group-label {
    font-family: var(--font-display, var(--font-sans)) !important;
    font-size: 0.9rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  html body .site-drawer__title-count {
    display: block !important;
    margin-left: auto !important;
    padding-left: 0.55rem !important;
    border-left: 1px solid rgba(255, 255, 255, 0.14) !important;
    color: #8fa08f !important;
    font-family: var(--font-mono, monospace) !important;
    font-size: 0.64rem !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }

  html body .site-drawer__links {
    gap: 3px !important;
    padding: 0 6px 6px !important;
  }
}

@media (max-width: 640px) {
  html body.site-app-ready .site-drawer {
    width: 100% !important;
    border-left: 0 !important;
  }
}

/* global-density.css */
/*
 * MoFutbol production density system.
 * Loaded after route-level styles so every public route shares the same
 * concise rhythm without flattening its editorial or tournament identity.
 */

:root {
  --mf-production-section-space: clamp(1.35rem, 2.8vw, 3.25rem);
  --mf-production-grid-gap: clamp(0.7rem, 1.45vw, 1.2rem);
  --mf-production-card-pad: clamp(0.8rem, 1.5vw, 1.15rem);
}

html body main#main-content {
  overflow: clip;
}

html body main#main-content > :is(
  .stl-section,
  .mf-v22-section,
  .mf-command-center,
  .mf-newsroom-home,
  .mf-football-redesign,
  .mf-official-content-network,
  .mf-tracker-links-section,
  .mf-diaspora-command,
  .mf-diaspora-authority,
  .mf-afcon-v2-desk,
  .mf-wafcon-v2-desk
) {
  padding-block: var(--mf-production-section-space) !important;
}

/* Keep the reading width intentional while retaining the full-width stadium
   and tournament backgrounds that give key pages their identity. */
html body main#main-content :is(.stl-container, .mf-v22-container, .mf-football-desk, .mf-di-shell) {
  width: min(calc(100% - clamp(1.5rem, 5vw, 4rem)), 82rem) !important;
}

html body main#main-content :is(
  .mf-v22-grid,
  .mf-v22-card-grid,
  .mf-newsroom-story-grid,
  .mf-newsroom-player-grid,
  .mf-football-desk__cards,
  .mf-football-stats,
  .mf-command-grid,
  .mf-club-grid,
  .mf-mwpl-main-grid,
  .mf-matchday-card-grid,
  .mf-di-grid
) {
  align-items: stretch !important;
  gap: var(--mf-production-grid-gap) !important;
  grid-auto-rows: auto !important;
}

/* Eliminate legacy fixed/min heights that leave empty panels under short
   editorial copy. Components retain room for images but grow only as needed. */
html body main#main-content :is(
  .mf-v20-card,
  .mf-v22-card,
  .mf-newsroom-card,
  .mf-football-card,
  .mf-mwpl-panel,
  .mf-matchday-group,
  .mf-di-panel,
  .site-card
) {
  min-height: 0 !important;
  align-content: start;
}

html body main#main-content :is(
  .mf-v20-card__body,
  .mf-v22-card__body,
  .mf-newsroom-card__body,
  .mf-football-card__body,
  .mf-mwpl-panel__body,
  .site-card__body
) {
  padding: var(--mf-production-card-pad) !important;
}

html body main#main-content :is(h1, h2, h3) {
  text-wrap: balance;
}

html body main#main-content :is(p, li) {
  text-wrap: pretty;
}

/* Articles: the lead story copy sits below a bright editorial image. Keep its
   surface intentionally dark so hierarchy and white type remain legible. */
#mf-newsroom-front .mf-newsroom-card--lead .mf-newsroom-card__body,
#mf-newsroom-front .mf-newsroom-front-grid--deduped > .mf-newsroom-card--lead .mf-newsroom-card__body {
  background: linear-gradient(135deg, #07130f 0%, #0a1b19 58%, #10261f 100%);
  color: #f7fbf8;
}

#mf-newsroom-front .mf-newsroom-card--lead :is(h3, p, time) {
  color: #f7fbf8;
  text-shadow: none;
}

#mf-newsroom-front .mf-newsroom-card--lead .mf-newsroom-card__meta {
  color: #d4ed8a;
}

html body main#main-content :is(.mf-section-head, .mf-newsroom-head, .mf-football-desk__masthead, .stl-section__head) {
  margin-bottom: clamp(0.7rem, 1.25vw, 1.05rem) !important;
}

html body main#main-content :is(.mf-v22-actions, .mf-football-desk__actions, .mf-actions, .stl-actions) {
  gap: 0.55rem !important;
  flex-wrap: wrap !important;
}

/* Long accordions and link panels should not manufacture a second internal
   page scroll. The page remains the single, predictable scroll context. */
html body main#main-content :is(.mf-no-internal-scroll, .mf-compact-board, .mf-progressive-section) {
  max-height: none !important;
}

/* Images read as deliberate editorial units rather than creating uneven cards. */
html body main#main-content :is(
  .mf-newsroom-card__media,
  .mf-v22-card__media,
  .mf-football-card__media,
  .mf-mwpl-news-card__media
) {
  aspect-ratio: 16 / 9;
  overflow: hidden;
}

html body main#main-content :is(
  .mf-newsroom-card__media img,
  .mf-v22-card__media img,
  .mf-football-card__media img,
  .mf-mwpl-news-card__media img
) {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 48rem) {
  :root {
    --mf-production-section-space: 1.15rem;
    --mf-production-grid-gap: 0.7rem;
    --mf-production-card-pad: 0.85rem;
  }

  html body main#main-content :is(.stl-container, .mf-v22-container, .mf-football-desk, .mf-di-shell) {
    width: min(calc(100% - 1.25rem), 82rem) !important;
  }

  html body main#main-content :is(
    .mf-newsroom-story-grid,
    .mf-newsroom-player-grid,
    .mf-football-desk__cards,
    .mf-command-grid,
    .mf-club-grid,
    .mf-matchday-card-grid
  ) {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body main#main-content :is(h1, h2) {
    letter-spacing: -0.025em;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body main#main-content *,
  html body main#main-content *::before,
  html body main#main-content *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* layout-discipline.css */
/*
 * MoFutbol's final shared presentation layer.
 * Three page modes only: editorial, live/data and conversion portal. This file
 * loads after the route CSS and is intentionally limited to shared rhythm,
 * navigation, cards, controls and footer rules.
 */
:root {
  --mf-layout-space-1: clamp(.75rem, 1.25vw, 1rem);
  --mf-layout-space-2: clamp(1rem, 2vw, 1.5rem);
  --mf-layout-space-3: clamp(1.5rem, 3vw, 2.5rem);
  --mf-layout-card-radius: .85rem;
  --mf-layout-title-leading: 1.04;
}

/* Canonical modes: concise reading column for editorial, structured grids for
   live/data, and a contained conversion canvas for forms and portals. */
html[data-mf-layout="editorial"] main :is(.stl-container, .mf-v22-container, .mf-newsroom-front-grid) {
  max-width: 78rem !important;
}

html[data-mf-layout="portal"] main :is(.stl-container, .mf-v22-container, .sv-wrap, .mf-contributor-shell) {
  max-width: 72rem !important;
}

html[data-mf-layout="portal"] main :is(form, .sv-panel, .mf-contributor-panel) {
  border-radius: var(--mf-layout-card-radius) !important;
}

html[data-mf-layout="live"] main :is(.mf-command-grid, .mf-matchday-card-grid, .mf-football-desk__cards) {
  align-items: start !important;
}

/* A hero communicates one decision: first action primary, optional second
   action neutral. Legacy third+ hero controls are deliberately suppressed. */
html body main :is(.mf-v22-hero, .mf-daily-hero, .mf-football-redesign, .mf-contributor-hero, .sv-hero)
  :is(.mf-v22-actions, .mf-v22-hero__actions, .mf-daily-hero__actions, .mf-football-desk__actions, .mf-actions, .stl-actions, .sv-actions)
  > :nth-child(n + 3) {
  display: none !important;
}

html body main :is(.mf-v22-hero, .mf-daily-hero, .mf-football-redesign, .mf-contributor-hero, .sv-hero)
  :is(.mf-v22-actions, .mf-v22-hero__actions, .mf-daily-hero__actions, .mf-football-desk__actions, .mf-actions, .stl-actions, .sv-actions)
  > :nth-child(2) {
  background: transparent !important;
  color: #eef6eb !important;
}

/* Cards share a calm rhythm: short metadata first, balanced headings, copy,
   then one action. No inherited fixed height can create empty black panels. */
html body main :is(.mf-v20-card, .mf-v22-card, .mf-newsroom-card, .mf-football-card, .mf-mwpl-panel, .mf-di-panel, .site-card) {
  min-height: 0 !important;
  border-radius: var(--mf-layout-card-radius) !important;
  overflow: clip;
}

html body main :is(.mf-v20-card, .mf-v22-card, .mf-newsroom-card, .mf-football-card, .mf-mwpl-panel, .mf-di-panel, .site-card)
  :is(h2, h3, h4) {
  margin-block: .35rem .45rem !important;
  line-height: var(--mf-layout-title-leading) !important;
  text-wrap: balance;
}

html body main :is(.mf-v20-card, .mf-v22-card, .mf-newsroom-card, .mf-football-card, .mf-mwpl-panel, .mf-di-panel, .site-card)
  :is(.meta, [class*="__meta"], [class*="eyebrow"], [class*="kicker"], time) {
  order: -1;
  font-size: .68rem !important;
  letter-spacing: .075em;
  line-height: 1.25 !important;
  text-transform: uppercase;
}

html body main :is(.mf-v20-card, .mf-v22-card, .mf-newsroom-card, .mf-football-card, .mf-mwpl-panel, .mf-di-panel, .site-card) p {
  margin-block: 0 .7rem !important;
  line-height: 1.45 !important;
}

/* The old grid often preserved the tallest item’s empty space. Let cards size
   themselves; optional/deferred content remains available in its own route. */
html body main :is(.mf-newsroom-story-grid, .mf-newsroom-player-grid, .mf-football-desk__cards,
  .mf-command-grid, .mf-club-grid, .mf-mwpl-main-grid, .mf-matchday-card-grid, .mf-di-grid) {
  align-items: start !important;
  grid-auto-rows: min-content !important;
  gap: var(--mf-layout-space-1) !important;
}

html body main [data-mf-secondary-module="true"] {
  display: none !important;
}

/* A denser footer remains fully touch-accessible; link target size stays 44px. */
html body .site-footer,
html body [data-site-footer] > footer.site-footer {
  padding-top: 1.15rem !important;
}

html body .site-footer .site-footer__inner {
  gap: 1rem 1.2rem !important;
  padding-bottom: 1rem !important;
}

html body .site-footer .site-footer__brand,
html body .site-footer .site-footer__nav {
  gap: .4rem !important;
}

html body .site-footer .site-footer__copy {
  max-width: 30ch !important;
  line-height: 1.42 !important;
}

html body .site-footer .site-footer__nav ul { gap: 0 !important; }

html body .site-footer .site-footer__nav a,
html body .site-footer .site-footer__bottom a {
  min-height: 44px !important;
  padding-block: .45rem !important;
  font-size: .86rem !important;
}

@media (max-width: 1280px) {
  html body .site-header .site-header__actions > :is(.site-header__cta--media, .site-header__theme) {
    display: none !important;
  }
}

@media (max-width: 640px) {
  :root { --mf-layout-space-1: .75rem; }

  html body .site-drawer :is(.site-drawer__link-label, .site-drawer__link-description) {
    letter-spacing: 0 !important;
    word-spacing: normal !important;
    overflow-wrap: normal !important;
  }

  html body .site-drawer__link-label { font-size: .98rem !important; }
  html body .site-drawer__link-description { font-size: .78rem !important; }

  html body main :is(h1, .mf-football-desk__masthead h2, .mf-v22-hero h1) {
    font-size: clamp(2rem, 9vw, 2.85rem) !important;
    line-height: .99 !important;
    letter-spacing: -.03em !important;
  }

  html body main :is(.mf-newsroom-story-grid, .mf-newsroom-player-grid, .mf-football-desk__cards,
    .mf-command-grid, .mf-club-grid, .mf-mwpl-main-grid, .mf-matchday-card-grid, .mf-di-grid) {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body .site-footer .site-footer__inner { gap: .65rem .85rem !important; }
}

/* global-footer.css */
/*
 * MoFutbol global footer release.
 * Loaded by assets/js/core/nav.js after route-specific styles so every public
 * page receives the same readable, keyboard-friendly footer treatment.
 */

html body .site-footer,
html body [data-site-footer] > footer.site-footer {
  position: relative;
  margin: 0 !important;
  padding: clamp(1rem, 1.8vw, 1.45rem) 0 0 !important;
  border: 0 !important;
  border-top: 1px solid rgba(245, 200, 66, 0.25) !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(45, 184, 75, 0.11), transparent 27rem),
    linear-gradient(180deg, #07130d 0%, #030806 100%) !important;
  color: #f0f4f0 !important;
  font-family: var(--font-body, "Outfit", "Inter", system-ui, sans-serif) !important;
  isolation: isolate;
}

html body .site-footer::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, #e8302a 0 18%, #f5c842 18% 48%, #b9ed35 48% 72%, #2db84b 72% 100%);
}

html body .site-footer .site-container {
  width: min(calc(100% - clamp(2rem, 5vw, 4rem)), 76rem) !important;
  max-width: 76rem !important;
  margin-inline: auto !important;
}

html body .site-footer .site-footer__inner {
  display: grid !important;
  grid-template-columns: minmax(15rem, 1.35fr) repeat(5, minmax(7.25rem, 0.72fr)) !important;
  align-items: start !important;
  gap: clamp(.75rem, 1.45vw, 1.15rem) clamp(.7rem, 1.25vw, 1.05rem) !important;
  margin-block: 0 !important;
  margin-inline: auto !important;
  padding: 0 0 clamp(.8rem, 1.35vw, 1rem) !important;
}

html body .site-footer .site-footer__brand,
html body .site-footer .site-footer__nav {
  display: grid !important;
  align-content: start !important;
  gap: 0.45rem !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body .site-footer .site-brand {
  display: inline-flex !important;
  align-items: center !important;
  justify-self: start !important;
  gap: 0.7rem !important;
  min-height: 38px !important;
  color: #fffdf3 !important;
  text-decoration: none !important;
}

html body .site-footer .site-brand__logo {
  display: block !important;
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  object-fit: contain !important;
}

html body .site-footer .site-brand__text {
  display: grid !important;
  gap: 0.1rem !important;
}

html body .site-footer .site-brand__name {
  color: #fffdf3 !important;
  font-family: var(--font-heading, "Outfit", system-ui, sans-serif) !important;
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  line-height: 1.05 !important;
}

html body .site-footer .site-brand__tag {
  display: block !important;
  color: #f5c842 !important;
  font-family: var(--font-mono, "JetBrains Mono", monospace) !important;
  font-size: max(0.64rem, 11px) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

html body .site-footer .site-footer__copy {
  display: block !important;
  max-width: 34ch !important;
  margin: 0 !important;
  color: #b9c8bf !important;
  font-size: max(0.82rem, 13px) !important;
  line-height: 1.42 !important;
}

html body .site-footer .site-socials {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.38rem !important;
  margin: 0 !important;
}

html body .site-footer .site-socials > a {
  box-sizing: border-box !important;
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 36px !important;
  width: 36px !important;
  min-width: 36px !important;
  max-width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  padding: 0.5rem !important;
  border: 1px solid rgba(245, 200, 66, 0.24) !important;
  border-radius: 0.65rem !important;
  background: rgba(255, 255, 255, 0.035) !important;
  color: #eef5ef !important;
  text-decoration: none !important;
  transition: color 160ms ease, background 160ms ease, border-color 160ms ease, transform 160ms ease !important;
}

html body .site-footer .site-socials > a:hover {
  border-color: #f5c842 !important;
  background: #f5c842 !important;
  color: #071007 !important;
  transform: translateY(-2px) !important;
}

html body .site-footer .site-socials > a:focus-visible,
html body .site-footer .site-footer__nav a:focus-visible,
html body .site-footer .site-footer__bottom a:focus-visible,
html body .site-footer .site-brand:focus-visible {
  outline: 3px solid #b9ed35 !important;
  outline-offset: 3px !important;
}

html body .site-footer .site-socials__icon {
  width: 1.2rem !important;
  height: 1.2rem !important;
}

html body .site-footer .site-socials__label,
html body .site-footer .site-socials__handle {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

html body .site-footer .site-footer__nav h2,
html body .site-footer .site-footer__nav h3 {
  margin: 0 !important;
  color: #f5c842 !important;
  font-family: var(--font-mono, "JetBrains Mono", monospace) !important;
  font-size: max(0.64rem, 11px) !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.09em !important;
  text-transform: uppercase !important;
}

html body .site-footer .site-footer__nav ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.1rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html body .site-footer .site-footer__nav li {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body .site-footer .site-footer__nav a,
html body .site-footer .site-footer__bottom a {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  min-width: 44px !important;
  min-height: 34px !important;
  padding: 0.35rem 0.15rem !important;
  color: #d5dfd7 !important;
  font-family: var(--font-body, "Outfit", "Inter", system-ui, sans-serif) !important;
  font-size: max(0.8rem, 13px) !important;
  font-weight: 550 !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
}

html body .site-footer .site-footer__nav a:hover,
html body .site-footer .site-footer__bottom a:hover {
  color: #d6ff1f !important;
}

html body .site-footer .site-footer__partner-link {
  display: grid !important;
  grid-template-columns: 3rem minmax(0, 1fr) !important;
  gap: 0.6rem !important;
}

html body .site-footer .site-footer__partner-logo {
  display: block !important;
  width: 3rem !important;
  max-width: 3rem !important;
  height: 1.75rem !important;
  max-height: 1.75rem !important;
  padding: 0.22rem !important;
  object-fit: contain !important;
}

html body .site-footer .site-footer__bottom {
  box-sizing: border-box !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.55rem 1.5rem !important;
  min-height: 42px !important;
  margin-block: 0 !important;
  margin-inline: auto !important;
  padding: 0.6rem 0 .75rem !important;
  border-top: 1px solid rgba(245, 200, 66, 0.16) !important;
  color: #9fb0a5 !important;
  font-family: var(--font-mono, "JetBrains Mono", monospace) !important;
  font-size: max(0.72rem, 11px) !important;
  line-height: 1.45 !important;
}

html body .site-footer .site-footer__operations {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 0.85rem !important;
  max-width: none !important;
  overflow: visible !important;
  white-space: normal !important;
}

html body .site-footer .site-footer__bottom .site-footer__editor-portal {
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  padding: 0.65rem 0.9rem !important;
  border: 1px solid rgba(216, 255, 46, 0.5) !important;
  border-radius: 999px;
  color: #07120b !important;
  background: linear-gradient(100deg, #ffe339, #91ef5b);
  font-weight: 900;
  text-decoration: none;
}

@media (max-width: 68rem) {
  html body .site-footer .site-footer__inner {
    grid-template-columns: minmax(15rem, 1.25fr) repeat(3, minmax(8rem, 0.8fr)) !important;
  }

  html body .site-footer .site-footer__brand {
    grid-row: span 2 !important;
  }
}

@media (max-width: 48rem) {
  html body .site-footer,
  html body [data-site-footer] > footer.site-footer {
    padding-top: 1.35rem !important;
  }

  html body .site-footer .site-container {
    width: min(calc(100% - 1.5rem), 80rem) !important;
  }

  html body .site-footer .site-footer__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 1.1rem 0.9rem !important;
  }

  html body .site-footer .site-footer__brand {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    padding-bottom: 0.35rem !important;
    border-bottom: 1px solid rgba(245, 200, 66, 0.14) !important;
  }

  html body .site-footer .site-footer__copy {
    max-width: 46ch !important;
  }

  html body .site-footer .site-socials > a {
    flex-basis: 44px !important;
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
  }

  html body .site-footer .site-footer__nav a {
    width: 100% !important;
    min-height: 44px !important;
    padding-block: 0.6rem !important;
  }

  html body .site-footer .site-footer__bottom {
    min-height: 52px !important;
    align-items: flex-start !important;
    flex-direction: column !important;
    padding-bottom: 1.2rem !important;
  }

  html body .site-footer .site-footer__operations {
    width: 100% !important;
    align-items: flex-start !important;
    flex-direction: column !important;
  }
}

@media (max-width: 23.5rem) {
  html body .site-footer .site-footer__inner {
    grid-template-columns: 1fr !important;
  }

  html body .site-footer .site-footer__brand {
    grid-column: auto !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .site-footer * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* Final cross-page release guard: the completed World Cup final is the
   primary World Soccer archive and cannot be collapsed by legacy rules. */
html body.mf-world-cup-page main#main-content
  #wc2026-knockout[data-wc-final-ready="true"] {
  display: block !important;
}

/* global-footer-v3.css */
html body .site-footer,
html body [data-site-footer] > footer.site-footer {
  padding-top: 1rem !important;
  border-top-color: rgba(245, 200, 66, .42) !important;
  background: #050a07 !important;
}

html body .site-footer::before { height: 2px !important; }

html body .site-footer .site-container {
  width: min(calc(100% - clamp(2rem, 5vw, 4rem)), 84rem) !important;
  max-width: 84rem !important;
}

html body .site-footer .site-footer__inner {
  grid-template-columns: minmax(13.5rem, 1.3fr) repeat(5, minmax(6.3rem, .72fr)) !important;
  gap: .9rem !important;
  padding-bottom: .7rem !important;
}

html body .site-footer .site-footer__brand,
html body .site-footer .site-footer__nav { gap: .3rem !important; }

html body .site-footer .site-brand__logo { width: 32px !important; min-width: 32px !important; height: 32px !important; }
html body .site-footer .site-brand { min-height: 32px !important; gap: .55rem !important; }
html body .site-footer .site-brand__name { font-size: .95rem !important; }
html body .site-footer .site-brand__tag { font-size: .56rem !important; }
html body .site-footer .site-footer__copy { max-width: 28ch !important; font-size: .76rem !important; line-height: 1.38 !important; }

html body .site-footer .site-socials { gap: .3rem !important; }
html body .site-footer .site-socials > a { flex-basis: 30px !important; width: 30px !important; min-width: 30px !important; max-width: 30px !important; height: 30px !important; min-height: 30px !important; max-height: 30px !important; padding: .38rem !important; border-radius: 3px !important; }

html body .site-footer .site-footer__nav summary { cursor: default; list-style: none; }
html body .site-footer .site-footer__nav summary::-webkit-details-marker { display: none; }
html body .site-footer .site-footer__nav h2,
html body .site-footer .site-footer__nav h3 { font-size: .58rem !important; }
html body .site-footer .site-footer__nav ul { gap: 0 !important; }
html body .site-footer .site-footer__nav a,
html body .site-footer .site-footer__bottom a { min-height: 27px !important; padding: .2rem 0 !important; font-size: .72rem !important; line-height: 1.2 !important; }

html body .site-footer .site-footer__bottom { min-height: 34px !important; padding: .45rem 0 .6rem !important; font-size: .62rem !important; }

@media (max-width: 68rem) {
  html body .site-footer .site-footer__inner { grid-template-columns: minmax(13.5rem, 1.2fr) repeat(3, minmax(7rem, .8fr)) !important; }
}

@media (max-width: 48rem) {
  html body .site-footer .site-footer__inner { gap: .85rem .7rem !important; }
  html body .site-footer .site-footer__copy { max-width: 40ch !important; }
  html body .site-footer .site-footer__nav summary { cursor: pointer; }
  html body .site-footer .site-footer__nav a { min-height: 38px !important; }
}

@media (min-width: 821px) {
  html body .site-footer .site-footer__brand .site-socials > a {
    box-sizing: border-box !important;
    width: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
    flex: 0 0 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    padding: 7px !important;
    justify-content: center !important;
  }

  html body .site-footer .site-footer__nav li > a,
  html body .site-footer .site-footer__bottom > a {
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    min-width: 36px !important;
    min-height: 34px !important;
    padding: 6px 3px !important;
  }

  html body .site-footer .site-footer__nav a.site-footer__editor-portal {
    justify-content: center !important;
    width: max-content !important;
    padding: 7px 11px !important;
    border: 1px solid rgba(216, 255, 46, .62) !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #ffe339, #91ef5b) !important;
    color: #07120b !important;
    font-weight: 900 !important;
    letter-spacing: .02em !important;
  }
}

/* global-header.css */
/* Shared site chrome: every route mounts the same navigation and control rhythm. */
:root {
  --mf-global-header-height: 64px;
  --mf-global-header-control: 44px;
}

html body .site-header {
  position: relative;
  z-index: 220;
  width: 100%;
  min-height: var(--mf-global-header-height);
  background: linear-gradient(100deg, #050b08 0%, #08120c 58%, #07140e 100%);
  border-bottom: 1px solid rgba(216, 255, 46, 0.16);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.2);
}

html body .site-header .site-header__inner {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center !important;
  gap: 12px;
  min-height: var(--mf-global-header-height) !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

html body .site-header .site-brand {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px;
  min-width: 144px;
  min-height: var(--mf-global-header-control);
  color: #f7fbff;
  text-decoration: none;
}

html body .site-header .site-brand__logo {
  display: block;
  width: 36px !important;
  height: 36px !important;
  object-fit: contain;
  flex: 0 0 36px;
}

html body .site-header .site-brand__text {
  display: grid;
  gap: 1px;
  min-width: 0;
}

html body .site-header .site-brand__name {
  color: #fff;
  font-size: 1.05rem;
  font-weight: 900;
  line-height: 1;
}

html body .site-header .site-brand__tag {
  color: #d8ff2e;
  font-size: 0.55rem;
  font-weight: 800;
  letter-spacing: 0.11em;
  line-height: 1.15;
  text-transform: uppercase;
}

html body .site-header .site-nav {
  display: block !important;
  min-width: 0;
  overflow: visible;
}

html body .site-header .site-nav__list {
  display: flex !important;
  align-items: center !important;
  justify-content: center;
  gap: 4px;
  min-width: 0;
  margin: 0;
  padding: 0;
}

html body .site-header .site-nav :where(.site-nav__link, .site-nav__toggle) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center;
  gap: 5px;
  min-height: 40px;
  padding: 0 10px;
  border: 1px solid transparent;
  border-radius: 9px;
  color: #e8f0ef;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
}

html body .site-header .site-nav :where(.site-nav__link, .site-nav__toggle):hover,
html body .site-header .site-nav :where(.site-nav__link, .site-nav__toggle)[aria-current="page"],
html body .site-header .site-nav [data-has-panel].is-open > .site-nav__toggle {
  border-color: rgba(216, 255, 46, 0.45);
  background: linear-gradient(135deg, rgba(255, 203, 53, 0.2), rgba(79, 226, 126, 0.14));
  color: #fff;
}

html body .site-header .site-header__actions {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end;
  gap: 6px;
  min-width: max-content;
}

html body .site-header .site-header__actions :where(a, button) {
  box-sizing: border-box;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: var(--mf-global-header-control) !important;
  height: var(--mf-global-header-control) !important;
  padding: 0 11px;
  border: 1px solid rgba(216, 255, 46, 0.22);
  border-radius: 9px;
  background: #07120b;
  color: #f7fbff;
  font: inherit;
  font-size: 0.68rem;
  font-weight: 900;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
}

html body .site-header .site-header__actions .site-header__cta--media {
  border-color: #ffc83d;
  background: linear-gradient(135deg, #ffe238, #f3c634);
  color: #07120b;
}

html body .site-header .site-header__actions .site-header__search {
  gap: 4px;
}

html body .site-header .site-header__actions :where(a, button):hover {
  border-color: #d8ff2e;
  transform: translateY(-1px);
}

html body .site-header :where(a, button):focus-visible {
  outline: 3px solid #d8ff2e;
  outline-offset: 2px;
}

html body .site-header .site-nav__menu-button {
  display: none !important;
  width: var(--mf-global-header-control);
  padding: 10px !important;
}

@media (max-width: 1280px) {
  html body .site-header .site-nav {
    display: none !important;
  }

  html body .site-header .site-header__inner {
    grid-template-columns: auto 1fr auto;
  }

  html body .site-header .site-nav__menu-button {
    display: inline-flex !important;
  }
}

@media (max-width: 700px) {
  :root {
    --mf-global-header-height: 58px;
  }

  html body .site-header .site-header__inner {
    gap: 8px;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }

  html body .site-header .site-brand {
    min-width: 0;
  }

  html body .site-header .site-brand__logo {
    width: 32px !important;
    height: 32px !important;
    flex-basis: 32px;
  }

  html body .site-header .site-brand__tag,
  html body .site-header .site-header__cta--media,
  html body .site-header .site-theme-toggle {
    display: none !important;
  }

  html body .site-header .site-header__actions :where(a, button) {
    min-width: var(--mf-global-header-control);
    padding: 0 8px;
  }
}

/* release-10.css */
/* Final production quality pass: faster first paint, touch targets, readable type,
   calmer homepage entry, and durable keyboard/reduced-motion behavior. */

:root { --mf-release-focus: #d8ff3e; }

html { scroll-behavior: smooth; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--mf-release-focus) !important;
  outline-offset: 3px;
}

:where(button, input:not([type="hidden"]), select) { min-height: 44px; }

.site-header :where(a, button),
.site-footer :where(a, button),
.stl-btn,
.mf-v22-button,
.mf-v22-card-button,
.mf-matchday-row__actions :where(a, button),
.mf-matchday-date-nav button,
.mf-matchday-tools-sticky :where(button, select, input) {
  min-height: 44px;
}

/* Avoid the large empty skeleton encountered on Match Center while live data loads. */
.mf-matchday-loading,
.mf-matchday-first-paint {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .6rem 1rem;
  min-height: 72px;
  padding: 1rem 1.15rem;
  border: 1px solid rgba(216,255,62,.24);
  border-radius: 14px;
  background: linear-gradient(120deg, rgba(8,24,16,.96), rgba(10,21,34,.92));
  color: rgba(244,247,251,.84);
}

.mf-matchday-loading > div { display: none; }
.mf-matchday-loading > span::after { content: " Verified fixtures and watch links are loading."; display: block; margin-top: .28rem; color: rgba(244,247,251,.68); font-size: .86rem; }
.mf-matchday-first-paint strong { color: #fff; }
.mf-matchday-first-paint a { color: var(--mf-release-focus); font-weight: 800; }

/* Keep the home entry focused on the matchday job; deeper routes remain in header and quick hubs. */
@media (min-width: 900px) {
  body.mf-home-v22 .mf-v22-hero--clean { min-height: 0; padding-block: clamp(1.2rem, 2.5vw, 2.5rem); }
  body.mf-home-v22 .mf-v22-hero--clean .mf-v22-group-label,
  body.mf-home-v22 .mf-v22-hero--clean .mf-v22-league-doors,
  body.mf-home-v22 .mf-v22-hero--clean .mf-v22-quick-routes { display: none !important; }
  body.mf-home-v22 .mf-v22-hero--clean .mf-v22-hero__copy { align-content: center; }
  body.mf-home-v22 .mf-v22-hero--clean .mf-v22-now-line { margin-top: .45rem; }
}

/* Progressive disclosure keeps contributor account creation the sole initial task. */
.mf-portal-auth > details.mf-portal-auth-disclosure {
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 12px;
  background: rgba(7,24,18,.56);
}

.mf-portal-auth > details.mf-portal-auth-disclosure > summary {
  display: flex;
  align-items: center;
  min-height: 52px;
  padding: .75rem 1rem;
  cursor: pointer;
  color: #fff;
  font-weight: 800;
}

.mf-portal-auth > details.mf-portal-auth-disclosure[open] > summary { border-bottom: 1px solid rgba(255,255,255,.12); }
.mf-portal-auth > details.mf-portal-auth-disclosure .mf-form-shell { border: 0; border-radius: 0; background: transparent; box-shadow: none; }

/* Footer is an information surface, not microcopy. */
.site-footer { font-size: .93rem; line-height: 1.55; }
.site-footer :where(a, p, small, span) { color: rgba(244,247,251,.82); }
.site-footer :where(h2, h3, strong) { color: #fff; }
.site-footer a:hover { color: var(--mf-release-focus); }

@media (max-width: 760px) {
  .site-header__nav { overflow-x: auto; scrollbar-width: thin; }
  .site-footer { font-size: 1rem; }
  .mf-matchday-loading, .mf-matchday-first-paint { align-items: flex-start; }
  .mf-matchday-loading > span { max-width: 28ch; }
  .mf-portal-auth { grid-template-columns: 1fr; }
  .mf-portal-auth .mf-form-grid { grid-template-columns: 1fr; }
  .mf-contributor-hero { min-height: auto; }
}

/* ux-audit-remediation.css */
/* MoFutbol 2026-07-21 UX audit remediation.
   Shared, low-specificity refinements layered after route styles. */

:root {
  --mf-reading: 72ch;
  --mf-control: 44px;
}

body {
  font-family: var(--font-body, "Outfit", "Inter", system-ui, sans-serif);
}

.site-header__search,
.mf-global-search__close,
.mf-global-search__submit {
  min-width: var(--mf-control);
  min-height: var(--mf-control);
}

.site-header__search {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .65rem .8rem;
  border: 1px solid rgba(245, 200, 66, .24);
  border-radius: 10px;
  color: #f7faf7;
  background: rgba(255,255,255,.035);
  font: 800 .72rem/1 var(--font-mono, monospace);
  letter-spacing: .04em;
  text-transform: uppercase;
}

.site-drawer__search {
  width: 100%;
  min-height: 50px;
  margin: 0 0 .75rem;
  padding: .8rem 1rem;
  border: 1px solid rgba(216,255,62,.38);
  border-radius: 12px;
  color: #07110d;
  background: linear-gradient(110deg, #ffd43b, #b9fb35 62%, #59dd8c);
  font-weight: 900;
  text-align: left;
}

.mf-global-search[hidden] { display: none !important; }
.mf-global-search {
  position: fixed;
  inset: 0;
  z-index: 5000;
  display: grid;
  place-items: start center;
  padding: min(12vh, 7rem) 1rem 2rem;
  background: rgba(1, 6, 4, .84);
  backdrop-filter: blur(14px);
}
.mf-global-search__dialog {
  width: min(100%, 54rem);
  max-height: min(76vh, 48rem);
  overflow: auto;
  padding: clamp(1rem, 2.5vw, 1.5rem);
  border: 1px solid rgba(216, 255, 62, .34);
  border-radius: 18px;
  background: #07130e;
  box-shadow: 0 30px 100px rgba(0,0,0,.58);
}
.mf-global-search__head,
.mf-global-search__form,
.mf-global-search__result {
  display: flex;
  align-items: center;
  gap: .75rem;
}
.mf-global-search__head { justify-content: space-between; margin-bottom: 1rem; }
.mf-global-search__head h2 { font-size: clamp(1.35rem, 3vw, 2rem); }
.mf-global-search__close {
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 999px;
  color: #fff;
}
.mf-global-search__form input {
  width: 100%;
  min-height: 50px;
  padding: .78rem 1rem;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 12px;
  color: #fff;
  background: #101b16;
}
.mf-global-search__submit {
  padding: .7rem 1rem;
  border-radius: 12px;
  color: #07110d;
  background: linear-gradient(110deg, #ffd43b, #b9fb35 62%, #59dd8c);
  font-weight: 900;
}
.mf-global-search__status { min-height: 1.5rem; margin: .8rem 0; color: rgba(255,255,255,.72); }
.mf-global-search__results { display: grid; gap: .55rem; }
.mf-global-search__result {
  justify-content: space-between;
  min-height: 64px;
  padding: .8rem 1rem;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  background: rgba(255,255,255,.035);
}
.mf-global-search__result span { display: block; color: #d8ff3e; font: 700 .65rem/1.2 var(--font-mono, monospace); text-transform: uppercase; }
.mf-global-search__result strong { display: block; margin-top: .25rem; }

/* Homepage: one clear first job and less decorative depth. */
body.mf-home-v22 .mf-v22-hero__copy { max-width: none; }
body.mf-home-v22 .mf-v22-hero__lede { max-width: 48rem; }
body.mf-home-v22 .mf-v22-now-line { max-width: 50rem; }

/* Match Center: treat controls as tools, not another hero. */
body.mf-match-center-page .mf-matchday-command { padding-block: .25rem; }
body.mf-match-center-page .mf-matchday-command h2 { font-size: clamp(1.9rem, 4vw, 3rem); }
body.mf-match-center-page .mf-matchday-controls > summary { min-height: var(--mf-control); }

/* Progressive disclosure for the long Diaspora authority experience. */
.mf-progressive-section {
  display: block;
  margin: clamp(.75rem, 1.6vw, 1.25rem) auto;
  width: min(calc(100% - 2rem), 72rem);
  border: 1px solid rgba(216,255,62,.22);
  border-radius: 16px;
  background: rgba(7,19,14,.92);
  overflow: clip;
}
.mf-progressive-section > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 60px;
  padding: .9rem 1rem;
  cursor: pointer;
  color: #fff;
  font-weight: 850;
  list-style: none;
}
.mf-progressive-section > summary::before {
  content: "↗";
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(216,255,62,.32);
  border-radius: 10px;
  background: rgba(216,255,62,.08);
  color: #d8ff3e;
  font: 850 1rem/1 monospace;
}
.mf-progressive-section__copy {
  min-width: 0;
  display: grid;
  gap: .15rem;
  margin-right: auto;
}
.mf-progressive-section__copy strong { line-height: 1.15; }
.mf-progressive-section__copy small {
  color: rgba(255,255,255,.66);
  font-size: .78rem;
  font-weight: 550;
  line-height: 1.3;
}
.mf-progressive-section > summary::-webkit-details-marker { display: none; }
.mf-progressive-section > summary::after { content: "+"; color: #d8ff3e; font: 800 1.35rem/1 monospace; }
.mf-progressive-section[open] > summary::after { content: "−"; }
.mf-progressive-section > section { margin: 0 !important; }

body.mf-diaspora-players-page .mf-progressive-section {
  width: min(calc(100% - 2rem), 58rem);
  margin-block: .65rem 1rem;
  border-radius: 14px;
  background: linear-gradient(110deg, rgba(12,35,26,.96), rgba(6,18,14,.94));
  box-shadow: 0 12px 30px rgba(0,0,0,.16);
}
body.mf-diaspora-players-page .mf-progressive-section > summary {
  min-height: 54px;
  padding: .55rem .75rem;
  gap: .7rem;
}
body.mf-diaspora-players-page .mf-progressive-section > summary::after {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(255,255,255,.055);
}

body.mf-diaspora-pathways-page .mf-progressive-section {
  width: min(calc(100% - 2rem), 58rem);
  margin-block: .65rem 1rem;
  border-radius: 14px;
  background: linear-gradient(110deg, rgba(12,35,26,.96), rgba(6,18,14,.94));
  box-shadow: 0 12px 30px rgba(0,0,0,.16);
}
body.mf-diaspora-pathways-page .mf-progressive-section > summary {
  min-height: 54px;
  padding: .55rem .75rem;
  gap: .7rem;
}
body.mf-diaspora-pathways-page .mf-progressive-section > summary::after {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(255,255,255,.055);
}

/* Contributor: onboarding is the first task; workflow detail is secondary. */
body.mf-contributor-page .mf-contributor-hero {
  min-height: 25rem;
  padding-block: clamp(4.5rem, 7vw, 6rem) clamp(1.35rem, 2.5vw, 2rem);
}
body.mf-contributor-page .mf-contributor-hero__copy { max-width: 44rem; }
body.mf-contributor-page .mf-contributor-hero__copy .mf-unified-hero-title { max-width: 12ch; font-size: clamp(2.5rem, 5.8vw, 5.4rem); }
body.mf-contributor-page .mf-contributor-process-section { padding-block: clamp(1.25rem, 2.5vw, 2rem); }
body.mf-contributor-page .mf-contributor-process-steps { display: none; }

/* Article loading is bounded and communicates progress. */
body.mf-article-page .mf-article-loading,
body.mf-article-page #article-detail > .stl-container:has(> .mf-skel) {
  min-height: 9rem;
  display: grid;
  align-content: center;
}
.mf-article-loading-copy { margin-top: .85rem; color: rgba(255,255,255,.78); }

@media (max-width: 900px) {
  .site-header__search { display: none !important; }

  body.mf-home-v22 .mf-v22-hero {
    min-height: 0 !important;
    padding-block: 1.35rem !important;
  }
  body.mf-home-v22 .mf-v22-hero__grid { gap: .85rem !important; }
  body.mf-home-v22 .mf-v22-hero h1 {
    max-width: 11ch !important;
    font-size: clamp(2.35rem, 11vw, 3.45rem) !important;
    line-height: .96 !important;
  }
  body.mf-home-v22 .mf-v22-hero__lede {
    font-size: 1.05rem !important;
    line-height: 1.45 !important;
  }
  body.mf-home-v22 .mf-v22-now-line__media img,
  body.mf-home-v22 .mf-v22-now-line img {
    max-height: 15rem !important;
    object-fit: cover;
  }
  body.mf-home-v22 .mf-v22-league-doors,
  body.mf-home-v22 .mf-v22-quick-routes,
  body.mf-home-v22 .mf-v22-find-panel { display: none !important; }
  body.mf-home-v22 .mf-v22-section { padding-block: 1.5rem !important; }

  body.mf-match-center-page .mf-match-polish-hero { display: none !important; }
  body.mf-match-center-page .mf-matchday-overview {
    grid-template-columns: 1fr 1fr !important;
    gap: .55rem !important;
  }
  body.mf-match-center-page .mf-matchday-overview__intro,
  body.mf-match-center-page .mf-matchday-refresh-toggle { grid-column: 1 / -1; }
  body.mf-match-center-page .mf-matchday-overview__following { display: none !important; }
  body.mf-match-center-page .mf-matchday-date-nav { gap: .4rem !important; }
  body.mf-match-center-page .mf-matchday-date-scroll { overflow-x: auto; flex-wrap: nowrap !important; scrollbar-width: thin; }
  body.mf-match-center-page .mf-matchday-controls:not([open]) > :not(summary) { display: none !important; }

  body.mf-diaspora-page .mf-diaspora-fix-hero { min-height: 0 !important; padding-block: 1.25rem !important; }
  body.mf-diaspora-page .mf-diaspora-fix-hero__grid { gap: .8rem !important; }
  body.mf-diaspora-page .mf-diaspora-fix-hero__copy h1 {
    font-size: clamp(2.15rem, 10.5vw, 3.25rem) !important;
    line-height: .96 !important;
  }
  body.mf-diaspora-page .mf-diaspora-fix-hero__copy > p {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  body.mf-diaspora-page .mf-diaspora-hero-media,
  body.mf-diaspora-page .mf-diaspora-fix-hero__panel { display: none !important; }
  body.mf-diaspora-page .mf-diaspora-actions { grid-template-columns: 1fr 1fr !important; }
  body.mf-diaspora-page .mf-diaspora-actions a:first-child { grid-column: 1 / -1; }
  body.mf-diaspora-page .mf-da-command { margin-block: .75rem !important; }

  body.mf-contributor-page .mf-contributor-hero {
    min-height: 0;
    padding-block: 1.25rem 1rem;
  }
  html body.mf-magazine-authority.mf-contributor-page .mf-contributor-hero__grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: .85rem;
  }
  body.mf-contributor-page .mf-contributor-hero__copy {
    width: 100%;
    max-width: none;
    min-width: 0;
  }
  body.mf-contributor-page .mf-contributor-hero__copy .mf-unified-hero-title {
    max-width: 10ch;
    font-size: clamp(2.25rem, 11vw, 3.4rem);
  }
  body.mf-contributor-page .mf-contributor-command { display: none; }
  body.mf-contributor-page #portal { padding-block: 1.25rem; }
  body.mf-contributor-page #contributor-process { padding-block: 1.1rem; }
  body.mf-contributor-page .mf-contributor-process-flow { grid-template-columns: repeat(3, minmax(0,1fr)); }
  body.mf-contributor-page .mf-contributor-process-flow li:nth-child(n+4) { display: none; }

  .mf-global-search { padding-top: 1rem; }
  .mf-global-search__form { align-items: stretch; flex-direction: column; }
}

@media (max-width: 520px) {
  body.mf-home-v22 .mf-v22-actions { display: grid !important; grid-template-columns: 1fr !important; }
  body.mf-home-v22 .mf-v22-button { width: 100%; }
  .mf-progressive-section { width: calc(100% - 1rem); }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; }
}

/* quality-repair.css */
.mf-quality-fallback {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem;
  min-height: 7rem;
  padding: clamp(1rem, 2vw, 1.35rem);
  border: 1px solid rgba(245, 200, 66, .28);
  border-radius: var(--radius-lg, 18px);
  background: linear-gradient(145deg, rgba(9, 25, 18, .98), rgba(7, 18, 29, .96));
}

.mf-quality-fallback strong,
.mf-quality-fallback p { display: block; }
.mf-quality-fallback strong { margin-top: .25rem; color: var(--text, #f4f7fb); font-size: clamp(1rem, 2vw, 1.25rem); }
.mf-quality-fallback p { margin: .35rem 0 0; color: var(--muted, #b5c0ca); }
.mf-quality-fallback__links { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .5rem; }
.mf-quality-fallback__links a { min-height: 44px; }
.mf-quality-image-fallback { object-fit: contain !important; padding: 10%; background: rgba(3, 15, 10, .94); }
.mf-city2-quality-pending .stl-pro-stat-grid,
.mf-city2-quality-pending #city2-next-matchup,
.mf-city2-quality-pending #city2-results { visibility: hidden; }

button,
[role="button"],
summary,
input[type="button"],
input[type="submit"],
input[type="reset"],
select,
.stl-btn,
.mf-core-button,
[data-site-header] a,
.site-footer a,
.site-footer__social a { min-height: 44px; }

/* Give high-frequency controls a small measurement buffer so fractional layout
   rounding never drops them below the WCAG 2.2 target size. */
button,
[role="button"],
summary,
input:not([type="hidden"]),
select,
textarea,
[aria-label="Back to top"],
#back-to-top,
#mo-btt,
.back-to-top,
.mf-back-to-top { min-height: 46px !important; }

[aria-label="Back to top"],
#back-to-top,
#mo-btt,
.back-to-top,
.mf-back-to-top { min-width: 46px !important; }

.mf-hidden-hp[aria-hidden="true"] {
  position: absolute !important;
  width: 1px !important;
  min-width: 0 !important;
  height: 1px !important;
  min-height: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

button:focus-visible,
[role="button"]:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
  outline: 3px solid #f5c842 !important;
  outline-offset: 3px !important;
}

.skip-link,
[data-skip-link] { position: fixed; top: .5rem; left: .5rem; z-index: 100000; transform: translateY(-160%); }
.skip-link:focus,
.skip-link:focus-visible,
[data-skip-link]:focus,
[data-skip-link]:focus-visible { transform: translateY(0); }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media (max-width: 700px) {
  .mf-quality-fallback { grid-template-columns: 1fr; }
  .mf-quality-fallback__links { justify-content: flex-start; }
  .mf-quality-fallback__links a { width: 100%; justify-content: center; }
}

/* Homepage desktop route menu: remove the unused second grid row left behind
   when the secondary route group is intentionally hidden. */
@media (min-width: 900px) {
  html body.mf-system-home main#main-content .mf-v22-hero-explore[open] {
    margin-top: .25rem !important;
    padding-top: .65rem !important;
  }

  html body.mf-system-home main#main-content .mf-v22-hero-explore[open] > .mf-v22-hero-explore__content {
    grid-template-columns: minmax(0, 2fr) minmax(17rem, .72fr) !important;
    grid-template-areas: "hero-leagues hero-hubs" !important;
    align-items: stretch !important;
    gap: .65rem !important;
    padding-bottom: 0 !important;
  }

  html body.mf-system-home main#main-content .mf-v22-hero-explore .mf-v22-league-doors {
    grid-area: hero-leagues !important;
    align-self: stretch !important;
    margin: 0 !important;
  }

  html body.mf-system-home main#main-content .mf-v22-hero-explore .mf-v22-find-panel {
    grid-area: hero-hubs !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-self: stretch !important;
    gap: .38rem !important;
    padding: .58rem !important;
  }

  html body.mf-system-home main#main-content .mf-v22-hero-explore .mf-v22-find-panel > .mf-v22-kicker {
    grid-column: 1 / -1 !important;
    margin: 0 !important;
  }

  html body.mf-system-home main#main-content .mf-v22-hero-explore .mf-v22-find-panel > a {
    min-height: 46px !important;
    padding: .4rem .5rem !important;
  }

  /* Match the highly specific desktop homepage shell so older release rules
     cannot recreate the removed row or force the hubs back to two columns. */
  html body.mf-system-home.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean .mf-v22-hero-explore[open] > .mf-v22-hero-explore__content {
    grid-template-columns: minmax(0, 2fr) minmax(17rem, .72fr) !important;
    grid-template-areas: "hero-leagues hero-hubs" !important;
    align-items: stretch !important;
  }

  html body.mf-system-home.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean .mf-v22-hero-explore .mf-v22-league-doors {
    height: 100% !important;
    margin: 0 !important;
  }

  html body.mf-system-home.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean .mf-v22-hero-explore .mf-v22-find-panel {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    height: 100% !important;
    padding: .58rem !important;
  }
}

/* Global compact footer. Link targets remain at least 44px while each desktop
   link group uses two columns and smaller viewports use native disclosures. */
html body .site-footer,
html body [data-site-footer] > footer.site-footer {
  padding: .85rem 0 0 !important;
}

html body .site-footer .site-footer__inner {
  gap: .7rem 1rem !important;
  padding: 0 0 .65rem !important;
}

html body .site-footer .site-footer__brand,
html body .site-footer .site-footer__nav {
  gap: .38rem !important;
}

html body .site-footer .site-footer__copy {
  font-size: max(.84rem, 14px) !important;
  line-height: 1.42 !important;
}

html body .site-footer details.site-footer__nav > summary {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: .5rem !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: .3rem .15rem !important;
  list-style: none !important;
  cursor: pointer;
}

html body .site-footer details.site-footer__nav > summary::-webkit-details-marker {
  display: none !important;
}

html body .site-footer details.site-footer__nav > summary::after {
  content: "+";
  display: inline-grid;
  place-items: center;
  flex: 0 0 1.5rem;
  width: 1.5rem;
  height: 1.5rem;
  border: 1px solid rgba(245, 200, 66, .28);
  border-radius: 50%;
  color: #f5c842;
  font: 800 1rem/1 var(--font-mono, "JetBrains Mono", monospace);
}

html body .site-footer details.site-footer__nav[open] > summary::after {
  content: "-";
}

html body .site-footer details.site-footer__nav > summary h2 {
  margin: 0 !important;
}

html body .site-footer .site-footer__nav ul {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 .45rem !important;
}

html body .site-footer .site-footer__nav a {
  width: 100% !important;
  min-height: 44px !important;
  padding: .35rem .1rem !important;
  font-size: max(.79rem, 13px) !important;
  line-height: 1.2 !important;
}

html body .site-footer .site-footer__bottom {
  min-height: 48px !important;
  padding: .55rem 0 .7rem !important;
}

@media (min-width: 68.0625rem) {
  html body .site-footer details.site-footer__nav > summary::after {
    display: none !important;
  }
}

@media (max-width: 68rem) {
  html body .site-footer .site-footer__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .45rem .7rem !important;
  }

  html body .site-footer .site-footer__brand {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    align-items: center !important;
    gap: .35rem .75rem !important;
    padding-bottom: .55rem !important;
    border-bottom: 1px solid rgba(245, 200, 66, .15) !important;
  }

  html body .site-footer .site-footer__brand > .site-brand,
  html body .site-footer .site-footer__brand > .site-footer__copy {
    grid-column: 1 !important;
  }

  html body .site-footer .site-footer__brand > .site-socials {
    grid-column: 2 !important;
    grid-row: 1 / span 2 !important;
    align-self: center !important;
  }

  html body .site-footer details.site-footer__nav {
    display: block !important;
    min-width: 0 !important;
    padding: 0 .55rem !important;
    border: 1px solid rgba(245, 200, 66, .15) !important;
    border-radius: .65rem !important;
    background: rgba(255, 255, 255, .025) !important;
  }

  html body .site-footer details.site-footer__nav[open] {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 32rem) {
  html body .site-footer .site-container {
    width: min(calc(100% - 1rem), 80rem) !important;
  }

  html body .site-footer .site-footer__brand {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body .site-footer .site-footer__brand > .site-socials {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  html body .site-footer .site-footer__copy {
    max-width: 40ch !important;
  }
}

/* newsletter-popup.css */
.mf-newsletter-popup[hidden] { display: none !important; }

.mf-newsletter-popup {
  position: fixed;
  z-index: 10050;
  inset: 0;
  display: grid;
  place-items: end center;
  padding: 1rem;
  background: rgba(1, 7, 4, .62);
  backdrop-filter: blur(8px);
}

.mf-newsletter-popup__dialog {
  position: relative;
  width: min(100%, 640px);
  padding: clamp(1.15rem, 3vw, 2rem);
  border: 1px solid rgba(202, 255, 90, .38);
  border-radius: 1.2rem;
  color: #f6fbf7;
  background:
    radial-gradient(circle at 96% 0%, rgba(202,255,90,.16), transparent 13rem),
    linear-gradient(145deg, #10271c, #07120c);
  box-shadow: 0 24px 80px rgba(0, 0, 0, .55);
}

.mf-newsletter-popup__close {
  position: absolute;
  top: .65rem;
  right: .65rem;
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: .7rem;
  color: #fff;
  background: rgba(1, 8, 5, .55);
  font-size: 1.25rem;
  cursor: pointer;
}

.mf-newsletter-popup__eyebrow {
  margin: 0 3rem .55rem 0;
  color: #f8d04e;
  font: 800 .7rem/1.2 "JetBrains Mono", monospace;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.mf-newsletter-popup h2 {
  max-width: 19ch;
  margin: 0;
  color: #fff;
  font: 900 clamp(1.75rem, 4vw, 2.55rem)/1 "Archivo Black", "Outfit", sans-serif;
}

.mf-newsletter-popup__copy {
  max-width: 58ch;
  margin: .8rem 0 1.15rem;
  color: #c5d1c9;
  line-height: 1.55;
}

.mf-newsletter-popup .site-newsletter-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .65rem;
  align-items: start;
}

.mf-newsletter-popup .site-newsletter-form > input[type="email"] {
  min-height: 48px;
  padding: .7rem .85rem;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: .7rem;
  color: #fff;
  background: #041009;
}

.mf-newsletter-popup .site-newsletter-form > button {
  min-height: 48px;
  padding: .7rem 1rem;
  border: 0;
  border-radius: .7rem;
  color: #071009;
  background: linear-gradient(110deg, #f7ce43, #caff5a);
  font-weight: 900;
  cursor: pointer;
}

.mf-newsletter-popup .site-newsletter-form__prefs,
.mf-newsletter-popup .site-newsletter-form__status {
  grid-column: 1 / -1;
}

.mf-newsletter-popup__consent {
  grid-column: 1 / -1;
  display: flex;
  gap: .6rem;
  align-items: flex-start;
  color: #c5d1c9;
  font-size: .82rem;
  line-height: 1.45;
}

.mf-newsletter-popup__consent input {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  margin-top: .05rem;
  accent-color: #d9ff36;
}

.mf-newsletter-popup__fineprint {
  margin: .75rem 0 0;
  color: #aebbb2;
  font-size: .78rem;
  line-height: 1.45;
}

.mf-newsletter-popup :is(button, input, summary, a):focus-visible {
  outline: 3px solid #6fe3ff;
  outline-offset: 3px;
}

@media (max-width: 540px) {
  .mf-newsletter-popup { place-items: end stretch; padding: .55rem; }
  .mf-newsletter-popup .site-newsletter-form { grid-template-columns: 1fr; }
  .mf-newsletter-popup .site-newsletter-form > button { width: 100%; }
}

/* site-audit-fixes-v43.css */
/* MoFutbol V4.3 audit fixes: media containment, mobile compression, tap targets */

body.mf-v43-ready :where(input, select, textarea, button, a[role="button"], .stl-btn, .site-button) {
  min-height: 44px;
}

body.mf-v43-ready :where(input, select, textarea) {
  font-size: 16px;
  line-height: 1.2;
}

body.mf-v43-ready :where(input[type="checkbox"], input[type="radio"]) {
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  accent-color: #d6ff1f;
}

body.mf-media-page .mf-media-player-section {
  position: relative;
  z-index: 2;
  overflow: visible;
  padding-block: clamp(1rem, 2vw, 1.8rem) clamp(2.4rem, 5vw, 4rem) !important;
  margin-bottom: clamp(1.4rem, 3vw, 2.4rem);
}

body.mf-media-page .mf-media-player-grid {
  align-items: start !important;
}

body.mf-media-page .mf-youtube-station {
  overflow: hidden;
  max-height: none;
}

body.mf-media-page .mf-youtube-stage {
  grid-template-columns: minmax(0, 1fr) minmax(14rem, 0.42fr);
}

body.mf-media-page .mf-youtube-playlist {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  max-height: 15.5rem;
  overflow: auto;
  padding-right: 0.25rem;
  overscroll-behavior: contain;
}

body.mf-media-page .mf-youtube-card {
  grid-template-columns: 5.5rem minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  min-height: 5.1rem !important;
  padding: 0.42rem !important;
}

body.mf-media-page .mf-youtube-card img {
  grid-row: 1 / span 2;
  aspect-ratio: 16 / 9;
}

body.mf-media-page .mf-youtube-card span {
  position: static !important;
  width: max-content;
  align-self: start;
}

body.mf-media-page .mf-youtube-card strong {
  -webkit-line-clamp: 2;
  font-size: 0.82rem;
}

body.mf-media-page .mf-watch-flow-section {
  position: relative;
  z-index: 1;
  clear: both;
  padding-top: clamp(2rem, 4vw, 3rem) !important;
}

@media (max-width: 980px) {
  body.mf-media-page .mf-media-player-grid,
  body.mf-media-page .mf-youtube-stage {
    grid-template-columns: 1fr !important;
  }

  body.mf-media-page .mf-youtube-playlist {
    grid-template-columns: 1fr !important;
    max-height: 18rem;
  }
}

/* Compact long mobile directories while keeping full content accessible. */
@media (max-width: 760px) {
  body.mf-v43-mobile-compact:not(.mf-v43-expanded) main#main-content,
  body.mf-v43-mobile-compact:not(.mf-v43-expanded) main {
    max-height: 5200px;
    overflow: hidden !important;
  }

  body.mf-v43-mobile-compact.mf-diaspora-page:not(.mf-v43-expanded) main#main-content,
  body.mf-v43-mobile-compact.mf-diaspora-page:not(.mf-v43-expanded) main {
    max-height: 4300px;
  }

  body.mf-v43-mobile-compact.mf-partnership-page:not(.mf-v43-expanded) main#main-content,
  body.mf-v43-mobile-compact.mf-partnership-page:not(.mf-v43-expanded) main,
  body.mf-v43-mobile-compact.mf-world-cup-page:not(.mf-v43-expanded) main#main-content,
  body.mf-v43-mobile-compact.mf-world-cup-page:not(.mf-v43-expanded) main,
  body.mf-v43-mobile-compact.mf-afcon-page:not(.mf-v43-expanded) main#main-content,
  body.mf-v43-mobile-compact.mf-afcon-page:not(.mf-v43-expanded) main,
  body.mf-v43-secondary-compact:not(.mf-v43-expanded) main#main-content,
  body.mf-v43-secondary-compact:not(.mf-v43-expanded) main {
    max-height: 5000px;
  }

  body.mf-v43-mobile-compact:not(.mf-v43-expanded) main#main-content::after,
  body.mf-v43-mobile-compact:not(.mf-v43-expanded) main::after {
    content: "";
    position: sticky;
    display: block;
    left: 0;
    right: 0;
    bottom: 0;
    height: 5rem;
    margin-top: -5rem;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(4, 10, 8, 0), rgba(4, 10, 8, 0.96));
  }

  body.mf-v43-mobile-compact :where(.mf-home-quicklinks, .mf-diaspora-tabs, .mf-kit-subnav, .mf-wc-section-nav .stl-container) {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 0.5rem !important;
    padding-bottom: 0.35rem !important;
    border-radius: 0 !important;
    background: transparent !important;
  }

  body.mf-v43-mobile-compact :where(.mf-home-quicklinks a, .mf-diaspora-tabs a, .mf-kit-subnav a, .mf-wc-section-nav a) {
    flex: 0 0 auto !important;
    min-height: 44px !important;
    padding-inline: 0.85rem !important;
    border-radius: 999px !important;
  }

  body.mf-v43-mobile-compact:not(.mf-v43-expanded) main > section:nth-of-type(n+6),
  body.mf-v43-mobile-compact:not(.mf-v43-expanded) main > article:nth-of-type(n+6) {
    display: none !important;
  }

  body.mf-v43-mobile-compact.mf-partnership-page:not(.mf-v43-expanded) main > section:nth-of-type(n+5),
  body.mf-v43-mobile-compact.mf-world-cup-page:not(.mf-v43-expanded) main > section:nth-of-type(n+6),
  body.mf-v43-mobile-compact.mf-afcon-page:not(.mf-v43-expanded) main > section:nth-of-type(n+5),
  body.mf-v43-mobile-compact.mf-diaspora-page:not(.mf-v43-expanded) main > section:nth-of-type(n+4),
  body.mf-v43-mobile-compact.mf-city-radar-page:not(.mf-v43-expanded) main > section:nth-of-type(n+6),
  body.mf-v43-mobile-compact.stl-soccer-hub-page:not(.mf-v43-expanded) main > section:nth-of-type(n+6),
  body.mf-v43-secondary-compact:not(.mf-v43-expanded) main > section:nth-of-type(n+5),
  body.mf-v43-secondary-compact:not(.mf-v43-expanded) main > article:nth-of-type(n+5) {
    display: none !important;
  }

  body.mf-partnership-page .mf-kit-subnav {
    width: 100% !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    padding: 0 0 0.4rem !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
  }

  body.mf-partnership-page .mf-kit-subnav a {
    flex: 0 0 auto !important;
    border-radius: 999px !important;
    min-width: max-content !important;
    padding: 0.72rem 0.95rem !important;
  }
}

.mf-v43-expand-wrap {
  width: min(100% - 2rem, 1120px);
  margin: 1rem auto 2rem;
}

.mf-v43-expand-button {
  width: 100%;
  min-height: 48px;
  border: 1px solid rgba(245, 200, 66, 0.38);
  border-radius: 999px;
  background: linear-gradient(135deg, #ffd447, #cfff24);
  color: #081007;
  font: 900 0.78rem/1 "JetBrains Mono", monospace;
  letter-spacing: 0;
  text-transform: uppercase;
  cursor: pointer;
}

body.mf-v43-expanded .mf-v43-expand-wrap {
  display: none;
}

@media (min-width: 761px) {
  body.mf-v43-desktop-compact:not(.mf-v43-expanded-desktop) main#main-content,
  body.mf-v43-desktop-compact:not(.mf-v43-expanded-desktop) main {
    max-height: 5000px;
    overflow: hidden !important;
    position: relative;
  }

  body.mf-v43-desktop-compact:not(.mf-v43-expanded-desktop) main#main-content::after,
  body.mf-v43-desktop-compact:not(.mf-v43-expanded-desktop) main::after {
    content: "";
    position: sticky;
    display: block;
    left: 0;
    right: 0;
    bottom: 0;
    height: 6rem;
    margin-top: -6rem;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(4, 10, 8, 0), rgba(4, 10, 8, 0.96));
  }

  body.mf-v43-expanded-desktop .mf-v43-expand-wrap--desktop {
    display: none;
  }
}

/* site-editorial-v44.css */
/* MoFutbol V4.4 editorial layer for non-home core pages */

body.mf-v44-ready .mf-v44-strip {
  position: relative;
  z-index: 2;
  padding-block: clamp(0.52rem, 1.15vw, 0.82rem);
  border-block: 1px solid rgba(245, 200, 66, 0.16);
  background:
    radial-gradient(circle at 88% 8%, rgba(45, 184, 75, 0.12), transparent 18rem),
    linear-gradient(180deg, rgba(4, 14, 9, 0.98), rgba(2, 8, 5, 0.98));
}

body.mf-v44-ready .mf-v44-strip__inner {
  width: min(1180px, calc(100% - 2rem));
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(17rem, 0.38fr) minmax(0, 0.62fr);
  gap: clamp(0.52rem, 1.1vw, 0.76rem);
  align-items: stretch;
}

body.mf-v44-ready .mf-v44-strip__copy,
body.mf-v44-ready .mf-v44-lane {
  border: 1px solid rgba(245, 200, 66, 0.18);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.045), rgba(255, 255, 255, 0.015)),
    rgba(6, 18, 12, 0.92);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

body.mf-v44-ready .mf-v44-strip__copy {
  display: grid;
  align-content: center;
  gap: 0.34rem;
  padding: clamp(0.64rem, 1.25vw, 0.82rem);
}

body.mf-v44-ready .mf-v44-strip__copy p,
body.mf-v44-ready .mf-v44-proof span,
body.mf-v44-ready .mf-v44-lane span,
body.mf-v44-ready .mf-v44-lane em {
  margin: 0;
  color: #f6d94b;
  font: 900 0.62rem/1.2 "JetBrains Mono", monospace;
  letter-spacing: 0;
  text-transform: uppercase;
}

body.mf-v44-ready .mf-v44-strip__copy h2 {
  max-width: 38ch;
  margin: 0;
  color: #fff;
  font: 900 clamp(1rem, 1.65vw, 1.38rem)/1.04 "Archivo Black", "Outfit", sans-serif;
  letter-spacing: 0;
}

body.mf-v44-ready .mf-v44-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 0.28rem;
}

body.mf-v44-ready .mf-v44-proof span {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0.28rem 0.46rem;
  border: 1px solid rgba(214, 255, 31, 0.18);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.035);
  color: rgba(255, 255, 255, 0.78);
}

body.mf-v44-ready .mf-v44-lanes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.46rem;
}

body.mf-v44-ready .mf-v44-lane {
  min-height: 5.85rem;
  display: grid;
  align-content: space-between;
  gap: 0.42rem;
  padding: 0.62rem;
  color: inherit;
  text-decoration: none;
  transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}

body.mf-v44-ready .mf-v44-lane:hover,
body.mf-v44-ready .mf-v44-lane:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(214, 255, 31, 0.58);
  background: rgba(214, 255, 31, 0.08);
}

body.mf-v44-ready .mf-v44-lane strong {
  color: rgba(255, 255, 255, 0.92);
  font-size: 0.84rem;
  line-height: 1.2;
}

body.mf-v44-ready .mf-v44-lane em {
  justify-self: start;
  min-height: 28px;
  display: inline-flex;
  align-items: center;
  padding: 0.34rem 0.52rem;
  border-radius: 999px;
  background: linear-gradient(135deg, #ffd447, #cfff24);
  color: #081007;
  font-style: normal;
}

body.mf-v44-ready.mf-v44-worldcup .mf-v44-strip,
body.mf-v44-ready.mf-v44-match .mf-v44-strip {
  border-top-color: rgba(45, 184, 75, 0.25);
}

body.mf-v44-ready.mf-v44-partners .mf-v44-strip {
  background:
    radial-gradient(circle at 88% 8%, rgba(245, 200, 66, 0.14), transparent 18rem),
    linear-gradient(180deg, rgba(7, 12, 10, 0.98), rgba(2, 8, 5, 0.98));
}

body.mf-v44-ready.mf-partnership-page .mf-kit-subnav-wrap {
  position: sticky !important;
  top: clamp(4.35rem, 7vw, 5.15rem) !important;
  z-index: 30 !important;
  margin-block: clamp(0.7rem, 1.5vw, 1rem) clamp(1rem, 2vw, 1.4rem) !important;
  padding-top: 0 !important;
}

body.mf-v44-ready.mf-partnership-page .mf-kit-anchor-offset {
  scroll-margin-top: clamp(9rem, 12vw, 10.75rem) !important;
}

body.mf-v44-ready.mf-partnership-page #fit {
  padding-top: clamp(2.3rem, 4.2vw, 3.35rem) !important;
}

@media (max-width: 980px) {
  body.mf-v44-ready .mf-v44-strip__inner {
    grid-template-columns: 1fr;
  }

  body.mf-v44-ready .mf-v44-lane {
    min-height: 5.25rem;
  }
}

@media (max-width: 820px) {
  body.mf-v44-ready .mf-v44-strip {
    padding-block: 0.48rem;
  }

  body.mf-v44-ready .mf-v44-strip__inner {
    width: min(100% - 1.5rem, 1180px);
    gap: 0.4rem;
  }

  body.mf-v44-ready .mf-v44-strip__copy {
    padding: 0.58rem;
  }

  body.mf-v44-ready .mf-v44-strip__copy h2 {
    font-size: clamp(1rem, 5.2vw, 1.26rem);
    max-width: none;
  }

  body.mf-v44-ready .mf-v44-proof {
    gap: 0.3rem;
  }

  body.mf-v44-ready .mf-v44-proof span {
    min-height: 28px;
    padding: 0.34rem 0.46rem;
    font-size: 0.56rem;
  }

  body.mf-v44-ready .mf-v44-lanes {
    display: grid;
    grid-template-columns: 1fr;
    overflow: visible;
    gap: 0.45rem;
    padding-bottom: 0;
    scroll-snap-type: none;
  }

  body.mf-v44-ready .mf-v44-lane {
    width: 100%;
    min-width: 0;
    flex: none;
    min-height: 4.35rem;
    padding: 0.58rem;
    scroll-snap-align: none;
  }

  body.mf-v44-ready .mf-v44-lane {
    grid-template-columns: minmax(0, 1fr) auto;
    align-content: center;
    align-items: center;
    gap: 0.28rem 0.52rem;
  }

  body.mf-v44-ready .mf-v44-lane span,
  body.mf-v44-ready .mf-v44-lane strong {
    grid-column: 1;
  }

  body.mf-v44-ready .mf-v44-lane em {
    grid-column: 2;
    grid-row: 1 / span 2;
  }

  body.mf-v44-ready .mf-v44-lane strong {
    font-size: 0.82rem;
  }
}

/* Player Tracker should use its own field texture, not the shared banner logo art. */
html body.mf-page-shell.mf-system-page.mf-system-diaspora.mf-v44-players main#main-content .mf-player-tracker-hero.mf-polish-hero {
  background:
    radial-gradient(circle at 82% 14%, rgba(70, 168, 62, .16), transparent 19rem),
    radial-gradient(circle at 18% 12%, rgba(244, 196, 48, .12), transparent 17rem),
    linear-gradient(105deg, rgba(8, 11, 11, .98) 0%, rgba(4, 22, 16, .94) 50%, rgba(8, 11, 11, .98) 100%) !important;
}

html body.mf-page-shell.mf-system-page.mf-system-diaspora.mf-v44-players main#main-content .mf-player-tracker-hero.mf-polish-hero .mf-tracker-hero-bg.mf-diaspora-hero__bg {
  background:
    linear-gradient(100deg, rgba(8, 11, 11, .96) 0%, rgba(8, 11, 11, .66) 48%, rgba(8, 11, 11, .9) 100%),
    radial-gradient(circle at 20% 16%, rgba(244, 196, 48, .24), transparent 15rem),
    radial-gradient(circle at 78% 20%, rgba(70, 168, 62, .24), transparent 18rem),
    linear-gradient(135deg, rgba(46, 125, 50, .11) 0 1px, transparent 1px 20px),
    linear-gradient(90deg, transparent 0 49%, rgba(247, 247, 244, .07) 49% 51%, transparent 51% 100%),
    linear-gradient(0deg, transparent 0 49%, rgba(247, 247, 244, .045) 49% 51%, transparent 51% 100%) !important;
  background-size: auto, auto, auto, 20px 20px, 18rem 18rem, 18rem 18rem !important;
}

/* Final mobile shell parity for Chrome/Safari/WebKit. */
@media (max-width: 860px) {
  body.mf-page-shell .site-header__actions > .site-header__cta,
  body.mf-page-shell .site-header__actions > .site-theme-toggle,
  body.mf-home-taste .site-header__actions > .site-header__cta,
  body.mf-home-taste .site-header__actions > .site-theme-toggle {
    display: none !important;
  }

  body.mf-page-shell .site-nav__menu-button,
  body.mf-home-taste .site-nav__menu-button {
    display: inline-flex !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
  }
}

/* unified-professional-ui.css */
/*
 * MoFutbol unified professional media UI.
 * This is the final shared presentation layer for the existing public routes.
 * It normalizes hierarchy and density without changing page structure or data.
 */
:root {
  --mf-content-max: 90rem;
  --mf-page-gutter: clamp(1rem, 3vw, 2.5rem);
  --mf-section-space: clamp(1.5rem, 2.6vw, 2.75rem);
  --mf-surface-calm: #101513;
  --mf-surface-raised: #151b18;
  --mf-border-calm: rgba(247, 247, 244, 0.12);
  --mf-border-active: rgba(70, 168, 62, 0.58);
  --mf-radius-card: 8px;
}

html body.mf-brand-v2 {
  background: #080b0b;
  color: #f7f7f4;
  font-family: var(--font-body, "Montserrat", sans-serif);
}

html body.mf-brand-v2 main#main-content > :where(section, header) > :where(
  .stl-container,
  .mf-v22-container,
  .mf-di-shell,
  .mf-football-desk,
  .sv-wrap,
  .mf-youth-shell,
  .mf-ac-shell
) {
  box-sizing: border-box;
  width: min(calc(100% - (var(--mf-page-gutter) * 2)), var(--mf-content-max)) !important;
  max-width: var(--mf-content-max) !important;
  margin-inline: auto !important;
}

html body.mf-brand-v2 main#main-content :where(.mf-di-shell, .mf-diaspora-fix-shell) {
  max-width: var(--mf-content-max) !important;
}

html body.mf-brand-v2 main#main-content > :is(
  .stl-section,
  .mf-v22-section,
  .mf-newsroom-home,
  .mf-review-band,
  .mf-stl-discovery,
  .mf-youth-section,
  .mf-youth-split,
  .mf-media-platforms,
  .mf-static-media-library,
  .mf-media-player-section,
  .mf-whale-station-section,
  .mf-diaspora-now,
  .mf-di-command
) {
  padding-block: var(--mf-section-space) !important;
}

html body.mf-brand-v2 main#main-content :where(h1, h2, h3, h4, h5, h6) {
  font-family: var(--font-display, "Bebas Neue", sans-serif) !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-wrap: balance;
}

html body.mf-brand-v2 main#main-content h1 {
  max-width: 18ch;
  font-size: clamp(2.25rem, 3.6vw, 3.25rem) !important;
  line-height: 0.96 !important;
}

html body.mf-brand-v2 main#main-content h2 {
  font-size: clamp(1.65rem, 2.4vw, 2.15rem) !important;
  line-height: 1 !important;
}

html body.mf-brand-v2 main#main-content h3 {
  font-size: clamp(1.15rem, 1.5vw, 1.5rem) !important;
  line-height: 1.04 !important;
}

html body.mf-brand-v2 main#main-content :where(p, li, dd, figcaption) {
  font-family: var(--font-body, "Montserrat", sans-serif) !important;
  letter-spacing: 0 !important;
}

html body.mf-brand-v2 :where(
  .stl-eyebrow,
  [class*="__kicker"],
  [class*="__meta"],
  [class*="__label"],
  [class*="badge"],
  [class*="pill"],
  button,
  .stl-btn,
  .site-nav__link,
  .site-nav__toggle
) {
  font-family: var(--font-ui, "Montserrat", sans-serif) !important;
}

html body.mf-brand-v2 main#main-content > :where(section, header)[class*="hero"] {
  min-height: 0 !important;
  height: auto !important;
}

html body.mf-brand-v2 main#main-content > :where(section, header)[class*="hero"] > :where(
  .stl-container,
  .mf-v22-container,
  .mf-youth-shell,
  .sv-wrap,
  .mf-ac-shell
) {
  min-height: 0 !important;
  padding-block: clamp(1.4rem, 2.8vw, 2.5rem) !important;
}

html body.mf-brand-v2 main#main-content :where(
  article,
  .mf-card,
  .mf-v20-card,
  .mf-v22-card,
  .mf-newsroom-card,
  .mf-article-card,
  .mf-matchday-group,
  .mf-match-tile,
  .mf-di-panel,
  .mf-player-polish-card,
  .mf-tracker-official-card,
  .mf-ds-player-card
) {
  border-color: var(--mf-border-calm) !important;
  border-radius: var(--mf-radius-card) !important;
  box-shadow: none !important;
}

html body.mf-brand-v2 main#main-content :where(
  article,
  .mf-card,
  .mf-v20-card,
  .mf-v22-card,
  .mf-newsroom-card,
  .mf-article-card,
  .mf-matchday-group,
  .mf-match-tile,
  .mf-di-panel,
  .mf-player-polish-card,
  .mf-tracker-official-card,
  .mf-ds-player-card
):hover {
  border-color: var(--mf-border-active) !important;
}

html body.mf-brand-v2 main#main-content :where(.filter-btn, [class*="filter"] button, [role="tab"]).is-active,
html body.mf-brand-v2 main#main-content :where(.filter-btn, [class*="filter"] button, [role="tab"])[aria-selected="true"] {
  border-color: rgba(70, 168, 62, 0.74) !important;
  background: #2e7d32 !important;
  color: #f7f7f4 !important;
}

/* Homepage: a strong current-story desk without a full-screen masthead. */
html body.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean,
html body.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean .mf-v22-hero__grid {
  min-height: clamp(23rem, 30vw, 27rem) !important;
}

html body.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean .mf-v22-hero__grid {
  width: min(calc(100% - (var(--mf-page-gutter) * 2)), var(--mf-content-max)) !important;
  max-width: var(--mf-content-max) !important;
  padding-block: clamp(1.5rem, 2.8vw, 2.5rem) !important;
}

html body.mf-home-v22 main#main-content .mf-v22-now-line--with-media {
  min-height: 5.5rem !important;
}

/* STL and the live hubs keep their imagery, but put useful content above fold. */
html body.stl-soccer-hub-page main#main-content > .mf-daily-hero,
html body.mf-match-center-page main#main-content > .mf-match-polish-hero,
html body.mf-core-directory-page main#main-content > :where(.sv-hero, [class*="hero"]),
html body.mf-youth-hub main#main-content > .mf-youth-hero,
html body.mf-media-page main#main-content > .mf-media-station-hero {
  min-height: 0 !important;
  padding-block: 0 !important;
}

html body.stl-soccer-hub-page main#main-content > .mf-daily-hero :where(.stl-container, .mf-daily-grid),
html body.mf-match-center-page main#main-content > .mf-match-polish-hero :where(.stl-container, .mf-polish-hero__grid),
html body.mf-media-page main#main-content > .mf-media-station-hero :where(.stl-container, .mf-daily-grid) {
  min-height: 0 !important;
  padding-block: clamp(1.25rem, 2.4vw, 2rem) !important;
}

html body.mf-match-center-page .mf-matchday-loading,
html body.mf-match-center-page .mf-matchday-first-paint {
  min-height: 7rem !important;
  align-content: center !important;
  padding: 1rem !important;
}

/* Player Tracker: search and the database are the primary route. */
html body.mf-v44-players main#main-content > .mf-player-tracker-hero,
html body.mf-v44-players main#main-content > .mf-player-tracker-hero .mf-polish-hero__grid {
  min-height: 0 !important;
}

html body.mf-v44-players main#main-content > .mf-player-tracker-hero .mf-polish-hero__grid {
  grid-template-columns: minmax(18rem, 0.72fr) minmax(0, 1.28fr) !important;
  gap: clamp(1rem, 2vw, 1.75rem) !important;
  padding-block: clamp(1.25rem, 2.4vw, 2rem) !important;
}

html body.mf-v44-players .mf-tracker-howto {
  display: none !important;
}

html body.mf-v44-players .mf-player-card-deck {
  gap: 0.65rem !important;
}

html body.mf-v44-players .mf-player-polish-card__media {
  min-height: 8.5rem !important;
  max-height: 11rem !important;
}

html body.mf-v44-players .mf-tracker-link-console {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
}

html body.mf-v44-players .mf-tracker-official-board {
  grid-column: 1 / -1 !important;
  order: -4 !important;
}

html body.mf-v44-players .mf-tracker-player-media {
  grid-column: 1 / -1 !important;
  order: -3 !important;
}

html body.mf-v44-players .mf-tracker-link-card--primary,
html body.mf-v44-players .mf-tracker-link-grid,
html body.mf-v44-players .mf-tracker-lane-panel {
  order: 2 !important;
}

html body.mf-v44-players .mf-tracker-link-card--primary {
  display: none !important;
}

html body.mf-v44-players .mf-tracker-official-board__grid,
html body.mf-v44-players .mf-tracker-player-grid,
html body.mf-diaspora-page .mf-di-static-grid,
html body.mf-diaspora-page .mf-ds-player-grid {
  display: grid !important;
  align-items: stretch !important;
  gap: 0.65rem !important;
}

@media (min-width: 93.75rem) {
  html body.mf-v44-players .mf-tracker-official-board__grid,
  html body.mf-v44-players .mf-tracker-player-grid,
  html body.mf-diaspora-page .mf-di-static-grid,
  html body.mf-diaspora-page .mf-ds-player-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
}

@media (min-width: 75rem) and (max-width: 93.6875rem) {
  html body.mf-v44-players .mf-tracker-official-board__grid,
  html body.mf-v44-players .mf-tracker-player-grid,
  html body.mf-diaspora-page .mf-di-static-grid,
  html body.mf-diaspora-page .mf-ds-player-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
}

@media (min-width: 56.25rem) and (max-width: 74.9375rem) {
  html body.mf-v44-players .mf-tracker-official-board__grid,
  html body.mf-v44-players .mf-tracker-player-grid,
  html body.mf-diaspora-page .mf-di-static-grid,
  html body.mf-diaspora-page .mf-ds-player-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* Diaspora: editorial discovery backed by the same player component language. */
html body.mf-diaspora-overview-page .mf-diaspora-now__grid {
  grid-template-columns: minmax(16rem, 1.35fr) repeat(3, minmax(0, 1fr)) !important;
  gap: 0.7rem !important;
}

html body.mf-diaspora-overview-page :where(.mf-da-command, .mf-da-daily, .mf-di-command) :where(article, a[class*="card"]) {
  min-height: 0 !important;
}

html body.mf-diaspora-overview-page .mf-da-command__identity small:empty,
html body.mf-diaspora-overview-page .mf-static-snapshot__head small:empty {
  display: none !important;
}

html body.mf-diaspora-overview-page .mf-static-snapshot__head > small,
html body.mf-media-page .mf-static-snapshot__head > small {
  display: none !important;
}

/* Articles: the latest reporting appears immediately as a newsroom front. */
html body.mf-articles-page main#main-content > .stl-city-hero,
html body.mf-page-shell main#main-content > .stl-city-hero {
  min-height: 0 !important;
  padding-block: clamp(1.25rem, 2.4vw, 2rem) !important;
}

html body.mf-articles-page .mf-newsroom-front-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.7fr) minmax(18rem, 0.8fr) !important;
  gap: 0.8rem !important;
}

html body.mf-articles-page .mf-newsroom-side {
  display: grid !important;
  gap: 0.8rem !important;
}

html body.mf-articles-page .mf-article-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0.8rem !important;
}

html body.mf-articles-page .mf-article-card-media {
  aspect-ratio: 16 / 9 !important;
}

html body.mf-articles-page .mf-article-card-body {
  padding: 0.85rem !important;
}

/* Multimedia reads like a station guide and never crops a program frame. */
html body.mf-media-page .mf-media-station-hero .mf-daily-grid {
  grid-template-columns: minmax(18rem, 0.7fr) minmax(0, 1.3fr) !important;
  gap: 0.9rem !important;
}

html body.mf-media-page :where(.mf-media-control__art, .mf-tribe-player__frame) {
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  background: #050706 !important;
}

html body.mf-media-page :where(.mf-media-control__art, .mf-tribe-player__frame) img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

html body.mf-media-page .mf-tribe-list {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0.7rem !important;
}

html body.mf-media-page .mf-tribe-card :where(p, .mf-tribe-card__description) {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

@media (max-width: 74.9375rem) {
  html body.mf-articles-page .mf-article-grid,
  html body.mf-media-page .mf-tribe-list {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  html body.mf-diaspora-overview-page .mf-diaspora-now__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 61.25rem) {
  html body.mf-v44-players main#main-content > .mf-player-tracker-hero .mf-polish-hero__grid,
  html body.mf-media-page .mf-media-station-hero .mf-daily-grid,
  html body.mf-articles-page .mf-newsroom-front-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.mf-v44-players .mf-player-card-deck {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  html body.mf-articles-page .mf-article-grid,
  html body.mf-media-page .mf-tribe-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 40rem) {
  :root {
    --mf-page-gutter: 0.75rem;
    --mf-section-space: 1.25rem;
  }

  html body.mf-brand-v2 main#main-content h1 {
    max-width: none;
    font-size: clamp(2rem, 10vw, 2.5rem) !important;
  }

  html body.mf-brand-v2 main#main-content h2 {
    font-size: clamp(1.5rem, 7vw, 1.9rem) !important;
  }

  html body.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean,
  html body.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean .mf-v22-hero__grid {
    min-height: 0 !important;
  }

  html body.mf-v44-players .mf-player-card-deck,
  html body.mf-v44-players .mf-tracker-official-board__grid,
  html body.mf-v44-players .mf-tracker-player-grid,
  html body.mf-diaspora-page .mf-di-static-grid,
  html body.mf-diaspora-page .mf-ds-player-grid,
  html body.mf-articles-page .mf-article-grid,
  html body.mf-media-page .mf-tribe-list,
  html body.mf-diaspora-overview-page .mf-diaspora-now__grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.mf-v44-players .mf-tracker-link-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Four-hub experience pass: editorial entry points, route clarity, and compact operations. */

/* Diaspora overview: a compact African-football desk replaces the removed legacy hero. */
html body.mf-diaspora-overview-page main#main-content > .mf-diaspora-now {
  position: relative;
  isolation: isolate;
  min-height: 23rem;
  overflow: hidden;
  border-bottom: 1px solid rgba(244, 196, 48, 0.42);
  background: #07110c !important;
}

html body.mf-diaspora-overview-page main#main-content > .mf-diaspora-now::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background: url("/assets/img/homepage/african-club-football-official.png") right center / min(54rem, 58vw) auto no-repeat;
  opacity: 0.34;
}

html body.mf-diaspora-overview-page main#main-content > .mf-diaspora-now::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, #07110c 0 42%, rgba(7, 17, 12, 0.93) 58%, rgba(7, 17, 12, 0.42));
}

html body.mf-diaspora-overview-page .mf-diaspora-now > .stl-container {
  display: grid;
  grid-template-columns: minmax(17rem, 0.58fr) minmax(0, 1.42fr);
  gap: clamp(1rem, 2vw, 1.75rem);
  align-items: end;
}

html body.mf-diaspora-overview-page .mf-diaspora-now__head {
  display: grid !important;
  align-content: end;
  gap: 1.25rem;
  min-width: 0;
  margin: 0 !important;
  padding: 1.2rem 0;
}

html body.mf-diaspora-overview-page .mf-diaspora-now__head > div {
  position: relative;
  padding-top: 0.85rem;
}

html body.mf-diaspora-overview-page .mf-diaspora-now__head > div::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 6rem;
  height: 3px;
  background: linear-gradient(90deg, #2e7d32 0 34%, #f4c430 34% 68%, #e53935 68%);
}

html body.mf-diaspora-overview-page .mf-diaspora-now__head h2 {
  max-width: 11ch;
  margin: 0.45rem 0 0 !important;
  font-size: clamp(2.55rem, 4.2vw, 4.5rem) !important;
  line-height: 0.92 !important;
}

html body.mf-diaspora-overview-page .mf-diaspora-now__head > a {
  width: fit-content;
  min-height: 2.75rem;
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(244, 196, 48, 0.58);
  border-radius: 4px;
  padding: 0.65rem 0.85rem;
  color: #f7f7f4;
  background: rgba(8, 11, 11, 0.72);
  text-decoration: none;
}

html body.mf-diaspora-overview-page .mf-diaspora-now__grid {
  grid-template-columns: minmax(15rem, 1.15fr) repeat(3, minmax(0, 0.85fr)) !important;
  align-items: stretch;
}

html body.mf-diaspora-overview-page :where(.mf-diaspora-now__feature, .mf-diaspora-now__card) {
  min-height: 12.5rem !important;
  border-radius: 4px !important;
  border-color: rgba(244, 196, 48, 0.36) !important;
  background: rgba(8, 14, 11, 0.92) !important;
  backdrop-filter: blur(8px);
}

html body.mf-diaspora-overview-page .mf-diaspora-now__feature {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

html body.mf-diaspora-overview-page .mf-diaspora-now__feature::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background: url("/assets/img/wafcon/caf-wafcon-2026-official.jpg") 67% center / cover no-repeat;
  opacity: 0.3;
}

html body.mf-diaspora-overview-page .mf-diaspora-now__feature::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(6, 13, 9, 0.98), rgba(6, 13, 9, 0.68));
}

html body.mf-diaspora-overview-page .mf-diaspora-now__card {
  gap: 1rem;
  justify-content: flex-end;
}

html body.mf-diaspora-overview-page .mf-diaspora-now__card strong {
  font-family: var(--font-display, "Bebas Neue", sans-serif);
  font-size: clamp(1.35rem, 1.7vw, 1.8rem);
  line-height: 1;
}

html body.mf-diaspora-overview-page main#main-content > .mf-da-command {
  position: static;
  z-index: auto;
}

html body.mf-diaspora-overview-page main#main-content > .stl-section:has(.mf-diaspora-section-nav) {
  padding-block: 0.65rem !important;
}

html body.mf-diaspora-overview-page .mf-diaspora-section-nav {
  margin: 0 !important;
}

html body.mf-diaspora-overview-page .mf-diaspora-tabs,
html body.mf-diaspora-pathways-page .mf-diaspora-tabs {
  border-radius: 4px !important;
  padding: 0.35rem !important;
  box-shadow: none !important;
}

html body.mf-diaspora-overview-page .mf-diaspora-tabs a,
html body.mf-diaspora-pathways-page .mf-diaspora-tabs a {
  min-height: 2.6rem !important;
  border-radius: 3px !important;
}

/* Diaspora pathways: one route board, no duplicate command strip. */
html body.mf-diaspora-pathways-page main#main-content > .mf-progressive-section {
  width: min(calc(100% - (var(--mf-page-gutter) * 2)), var(--mf-content-max)) !important;
  max-width: none !important;
}

html body.mf-diaspora-pathways-page main#main-content > .mf-diaspora-fix-hero {
  min-height: 18rem !important;
  border-bottom: 1px solid rgba(244, 196, 48, 0.36);
}

html body.mf-diaspora-pathways-page .mf-diaspora-fix-hero__grid {
  min-height: 18rem !important;
  grid-template-columns: minmax(18rem, 0.72fr) minmax(18rem, 0.48fr) !important;
  align-items: end !important;
  gap: 1rem !important;
  padding-block: 1.5rem !important;
}

html body.mf-diaspora-pathways-page :where(.mf-diaspora-fix-hero__copy, .mf-diaspora-fix-hero__panel) {
  border-radius: 4px !important;
  padding: clamp(1rem, 2vw, 1.5rem) !important;
  background: rgba(4, 15, 11, 0.88) !important;
  backdrop-filter: blur(7px);
}

html body.mf-diaspora-pathways-page .mf-diaspora-fix-hero__copy h1 {
  margin-block: 0.35rem 0.45rem !important;
  font-size: clamp(2.8rem, 5vw, 4.75rem) !important;
}

html body.mf-diaspora-pathways-page .mf-diaspora-fix-hero__panel {
  align-self: end !important;
  min-height: 8rem !important;
  display: grid;
  align-content: center;
  border-left: 3px solid #f4c430 !important;
}

html body.mf-diaspora-pathways-page main#main-content > .stl-section:has(.mf-diaspora-section-nav) {
  padding-block: 0.7rem !important;
}

html body.mf-diaspora-pathways-page .mf-africa-pathway-ladder__inner {
  border-radius: 4px !important;
  box-shadow: none !important;
}

html body.mf-diaspora-pathways-page .mf-africa-pathway-steps {
  gap: 0 !important;
  border: 1px solid rgba(244, 196, 48, 0.28);
}

html body.mf-diaspora-pathways-page .mf-africa-pathway-step {
  min-height: 9.75rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: rgba(4, 15, 11, 0.9) !important;
}

html body.mf-diaspora-pathways-page .mf-africa-pathway-step + .mf-africa-pathway-step {
  border-left: 1px solid rgba(244, 196, 48, 0.22) !important;
}

html body.mf-diaspora-pathways-page .mf-official-source-board {
  margin-bottom: clamp(1.25rem, 2.5vw, 2rem);
}

html body.mf-diaspora-pathways-page .mf-pathway-directory-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.85rem;
  padding-bottom: 0.85rem;
  border-bottom: 1px solid rgba(244, 196, 48, 0.28);
}

html body.mf-diaspora-pathways-page .mf-pathway-directory-head h2 {
  max-width: 22ch;
  margin: 0.25rem 0;
}

html body.mf-diaspora-pathways-page .mf-pathway-directory-head p {
  max-width: 68ch;
  margin: 0;
  color: rgba(247, 247, 244, 0.7);
}

html body.mf-diaspora-pathways-page #mf-diaspora-section-app[data-view="pathways"] .mf-diaspora-pathway-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.75rem !important;
}

html body.mf-diaspora-pathways-page #mf-diaspora-section-app[data-view="pathways"] .mf-diaspora-pathway-card {
  min-height: 18rem !important;
  align-content: start;
  border-radius: 4px !important;
  border-top: 3px solid #2e7d32 !important;
  background: #101513 !important;
}

html body.mf-diaspora-pathways-page #mf-diaspora-section-app[data-view="pathways"] .mf-diaspora-pathway-card:nth-child(3n + 2) {
  border-top-color: #f4c430 !important;
}

html body.mf-diaspora-pathways-page #mf-diaspora-section-app[data-view="pathways"] .mf-diaspora-pathway-card:nth-child(3n) {
  border-top-color: #e53935 !important;
}

html body.mf-diaspora-pathways-page .mf-diaspora-pathway-card > .stl-btn {
  margin-top: auto;
}

/* Youth Soccer: retain the real page intro and place the decision guide beneath it. */
html body.mf-youth-hub.mf-brand-v2 .mf-youth-hub__wrap {
  width: min(calc(100% - (var(--mf-page-gutter) * 2)), var(--mf-content-max)) !important;
  padding-top: 1rem !important;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero {
  position: relative;
  isolation: isolate;
  display: grid !important;
  grid-template-columns: minmax(18rem, 0.78fr) minmax(15rem, 0.42fr);
  gap: clamp(1rem, 2vw, 2rem);
  align-items: end;
  min-height: clamp(22rem, 34vw, 28rem) !important;
  padding: clamp(1.15rem, 3vw, 2.5rem) !important;
  overflow: hidden;
  border: 1px solid rgba(244, 196, 48, 0.34) !important;
  border-radius: 4px !important;
  background-position: center 44% !important;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero::before {
  content: "";
  position: absolute;
  display: block !important;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(3, 8, 5, 0.96) 0 42%, rgba(3, 8, 5, 0.72) 68%, rgba(3, 8, 5, 0.3));
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero__copy,
html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero__aside {
  position: relative;
  z-index: 1;
  display: block !important;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero__copy {
  max-width: 44rem;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero__copy h1 {
  max-width: 12ch;
  margin-block: 0.45rem 0.65rem;
  font-size: clamp(3rem, 5.6vw, 5.6rem) !important;
  line-height: 0.9 !important;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero__copy > p {
  max-width: 58ch;
  color: rgba(247, 247, 244, 0.82);
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero__aside {
  align-self: end;
  border: 1px solid rgba(244, 196, 48, 0.38);
  border-radius: 4px;
  padding: 1rem;
  background: rgba(5, 16, 11, 0.9);
  backdrop-filter: blur(8px);
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-status-card {
  padding-bottom: 0.85rem;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-status-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  border-top: 1px solid rgba(244, 196, 48, 0.22);
  border-bottom: 1px solid rgba(244, 196, 48, 0.22);
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-status-grid > div {
  padding: 0.7rem 0.45rem;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-status-grid > div + div {
  border-left: 1px solid rgba(244, 196, 48, 0.2);
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-field-guide {
  margin-top: 0.75rem;
  border: 1px solid rgba(244, 196, 48, 0.3);
  border-radius: 4px;
  background: #061009;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-field-guide__head {
  max-width: none;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem;
  text-align: left;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-field-guide__head h2 {
  margin: 0.2rem 0 0;
  font-size: clamp(1.9rem, 3vw, 2.8rem) !important;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-field-guide__head p {
  max-width: 48ch;
  margin-left: auto;
  text-align: right;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-field-guide__grid {
  border: 0;
  border-top: 1px solid rgba(244, 196, 48, 0.28);
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-field-guide__row {
  min-height: 3.15rem;
  padding-block: 0.58rem;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-pulse {
  margin-top: 0.75rem;
  border-radius: 4px !important;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-jump {
  position: sticky;
  top: var(--mf-sticky-offset, 0);
  z-index: 24;
  display: flex;
  overflow-x: auto;
  margin-top: 0.75rem;
  padding: 0.35rem;
  border: 1px solid rgba(244, 196, 48, 0.28);
  border-radius: 4px;
  background: rgba(3, 8, 5, 0.94);
  backdrop-filter: blur(10px);
  scrollbar-width: none;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-jump a {
  flex: 1 0 auto;
  justify-content: center;
  border: 0;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-route {
  min-height: 19rem;
}

html body.mf-youth-hub.mf-brand-v2 .mf-youth-route__media {
  height: auto;
  aspect-ratio: 16 / 8;
}

html body.mf-youth-hub.mf-brand-v2 #school-board {
  gap: 0.75rem;
}

/* Soccer Vision: the directory task leads; the visual supports it. */
html body.mf-core-directory-page main#main-content > .sv-hero {
  width: min(calc(100% - (var(--mf-page-gutter) * 2)), var(--mf-content-max));
  min-height: 21rem !important;
  margin: 1rem auto 0;
  border-radius: 4px !important;
  box-shadow: none !important;
}

html body.mf-core-directory-page .sv-hero .mf-core-hero__grid {
  grid-template-columns: minmax(20rem, 0.86fr) minmax(20rem, 0.54fr) !important;
  gap: clamp(1rem, 2vw, 1.75rem) !important;
  min-height: 21rem !important;
  padding: clamp(1.25rem, 2.6vw, 2rem) !important;
}

html body.mf-core-directory-page .sv-hero__copy .mf-core-title {
  max-width: 13ch !important;
  margin-block: 0.4rem 0.6rem;
  font-size: clamp(2.7rem, 4.7vw, 4.6rem) !important;
}

html body.mf-core-directory-page .sv-hero__visual {
  min-height: 0 !important;
  height: auto;
  max-height: none;
  align-self: center;
  aspect-ratio: 1672 / 941;
  border-radius: 4px !important;
  background: #080b0b;
  box-shadow: none !important;
}

html body.mf-core-directory-page .sv-hero__visual img {
  object-fit: contain !important;
}

html body.mf-core-directory-page main#main-content > .mf-core-nav {
  position: sticky;
  top: var(--mf-sticky-offset, 0);
  z-index: 24;
  margin-top: 0.75rem;
  background: rgba(8, 11, 11, 0.95);
  backdrop-filter: blur(10px);
}

html body.mf-core-directory-page main#main-content > .mf-core-nav .mf-core-nav__inner {
  min-height: 3rem;
}

html body.mf-core-directory-page #directory {
  padding-top: clamp(1.3rem, 2.4vw, 2rem) !important;
}

html body.mf-core-directory-page .sv-filters {
  grid-template-columns: repeat(5, minmax(8rem, 1fr));
  gap: 0.65rem;
  border-radius: 4px !important;
  padding: 0.85rem !important;
  background: #101513 !important;
}

html body.mf-core-directory-page .sv-filters > :where(button, a) {
  align-self: end;
}

html body.mf-core-directory-page .sv-directory-status {
  margin-block: 0.75rem;
  border-radius: 4px;
}

html body.mf-core-directory-page .sv-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}

html body.mf-core-directory-page .sv-card {
  min-height: 15.5rem;
  border-radius: 4px !important;
  padding: 0.85rem;
  background: #101513 !important;
}

html body.mf-core-directory-page .sv-card::after {
  display: none;
}

html body.mf-core-directory-page .sv-card__logo,
html body.mf-core-directory-page .sv-card__mark {
  width: 3rem;
  height: 3rem;
  flex-basis: 3rem;
  border-radius: 4px;
}

html body.mf-core-directory-page .sv-card:hover,
html body.mf-core-directory-page .sv-card:focus-within {
  transform: translateY(-2px);
  box-shadow: none !important;
}

html body.mf-brand-v2 main#main-content :where(a, button, input, select, summary):focus-visible {
  outline: 3px solid #f4c430 !important;
  outline-offset: 3px;
}

@media (max-width: 74.9375rem) {
  html body.mf-diaspora-overview-page .mf-diaspora-now > .stl-container,
  html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero,
  html body.mf-core-directory-page .sv-hero .mf-core-hero__grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.mf-diaspora-overview-page .mf-diaspora-now__head h2 {
    max-width: 16ch;
  }

  html body.mf-diaspora-overview-page .mf-diaspora-now__grid,
  html body.mf-diaspora-pathways-page #mf-diaspora-section-app[data-view="pathways"] .mf-diaspora-pathway-grid,
  html body.mf-core-directory-page .sv-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero__aside {
    max-width: 36rem;
  }

  html body.mf-core-directory-page .sv-hero__visual {
    height: auto;
    aspect-ratio: 1672 / 941;
  }

  html body.mf-core-directory-page .sv-filters {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 47.5rem) {
  html body.mf-diaspora-pathways-page main#main-content > .mf-progressive-section {
    width: calc(100% - 1rem) !important;
  }

  html body.mf-diaspora-overview-page main#main-content > .mf-diaspora-now {
    min-height: 0;
  }

  html body.mf-diaspora-overview-page main#main-content > .mf-diaspora-now::before {
    background-size: auto 19rem;
    background-position: right top;
    opacity: 0.2;
  }

  html body.mf-diaspora-overview-page main#main-content > .mf-diaspora-now::after {
    background: linear-gradient(180deg, rgba(7, 17, 12, 0.68), #07110c 21rem);
  }

  html body.mf-diaspora-overview-page .mf-diaspora-now__head {
    min-height: 17rem;
    align-content: end;
  }

  html body.mf-diaspora-overview-page .mf-diaspora-now__head h2 {
    max-width: 12ch;
    font-size: clamp(2.5rem, 12vw, 3.7rem) !important;
  }

  html body.mf-diaspora-overview-page .mf-diaspora-now__grid,
  html body.mf-diaspora-pathways-page #mf-diaspora-section-app[data-view="pathways"] .mf-diaspora-pathway-grid,
  html body.mf-core-directory-page .sv-grid,
  html body.mf-core-directory-page .sv-filters {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.mf-diaspora-overview-page :where(.mf-diaspora-now__feature, .mf-diaspora-now__card) {
    min-height: 10rem !important;
  }

  html body.mf-diaspora-pathways-page .mf-diaspora-fix-hero__grid {
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: 0 !important;
  }

  html body.mf-diaspora-pathways-page .mf-diaspora-fix-hero__panel {
    min-height: 0 !important;
  }

  html body.mf-diaspora-pathways-page .mf-pathway-directory-head,
  html body.mf-youth-hub.mf-brand-v2 .mf-youth-field-guide__head {
    display: grid;
    align-items: start;
  }

  html body.mf-diaspora-pathways-page .mf-pathway-directory-head .stl-btn {
    width: 100%;
  }

  html body.mf-diaspora-pathways-page .mf-africa-pathway-steps {
    gap: 0.5rem !important;
    border: 0;
  }

  html body.mf-diaspora-pathways-page .mf-africa-pathway-step + .mf-africa-pathway-step {
    border-left: 0 !important;
  }

  html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero {
    min-height: 0 !important;
    padding: 1rem !important;
    background-position: 62% top !important;
  }

  html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero::before {
    background: linear-gradient(180deg, rgba(3, 8, 5, 0.42), rgba(3, 8, 5, 0.96) 35%);
  }

  html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero__copy {
    padding-top: 8.5rem;
  }

  html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero__aside {
    display: grid !important;
  }

  html body.mf-youth-hub.mf-brand-v2 .mf-youth-hero__copy h1 {
    font-size: clamp(2.7rem, 13vw, 3.6rem) !important;
  }

  html body.mf-youth-hub.mf-brand-v2 .mf-youth-field-guide__head p {
    margin-left: 0;
    text-align: left;
  }

  html body.mf-youth-hub.mf-brand-v2 .mf-youth-field-guide__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  html body.mf-youth-hub.mf-brand-v2 .mf-youth-jump {
    margin-inline: 0;
  }

  html body.mf-core-directory-page main#main-content > .sv-hero {
    width: calc(100% - 1rem);
  }

  html body.mf-core-directory-page .sv-hero .mf-core-hero__grid {
    min-height: 0 !important;
    padding: 1rem !important;
  }

  html body.mf-core-directory-page .sv-hero__copy .mf-core-title {
    font-size: clamp(2.6rem, 13vw, 3.5rem) !important;
  }

  html body.mf-core-directory-page .sv-hero__visual {
    max-height: none;
    aspect-ratio: 16 / 10;
  }
}

/* Premium editorial calibration.
   This final pass reduces visual noise while preserving every route's data,
   imagery, and established black / green / gold identity. */
:root {
  --mf-content-max: 84rem;
  --mf-page-gutter: clamp(1rem, 3vw, 2.5rem);
  --mf-section-space: clamp(1.75rem, 3.1vw, 3.25rem);
  --mf-section-space-compact: clamp(1.1rem, 2vw, 1.8rem);
  --mf-control-height: 44px;
  --mf-radius-card: 6px;
  --mf-surface-calm: #0d1210;
  --mf-surface-raised: #121815;
  --mf-border-calm: rgba(247, 247, 244, 0.09);
  --mf-border-active: rgba(70, 168, 62, 0.7);
  --mf-copy-muted: #aab5ad;
  --mf-global-header-height: 56px;
  --mf-global-ticker-height: 42px;
}

html {
  scroll-behavior: smooth;
}

html body.mf-brand-v2 {
  background: #080b0b;
  color: #f7f7f4;
  font-family: var(--font-body, "Montserrat", sans-serif) !important;
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1.55;
}

html body.mf-brand-v2 main#main-content {
  background: #080b0b;
}

html body.mf-brand-v2 main#main-content :where(h1, h2, h3, h4, h5, h6),
html body.mf-brand-v2 main#main-content :where(h1, h2, h3, h4, h5, h6) * {
  font-family: var(--font-display, "Bebas Neue", sans-serif) !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-wrap: balance;
}

html body.mf-brand-v2 main#main-content h1 {
  max-width: 20ch;
  font-size: clamp(2.45rem, 3.6vw, 3.35rem) !important;
  line-height: 0.98 !important;
}

html body.mf-brand-v2 main#main-content h2 {
  font-size: clamp(1.75rem, 2.35vw, 2.15rem) !important;
  line-height: 1 !important;
}

html body.mf-brand-v2 main#main-content h3 {
  font-size: clamp(1.25rem, 1.55vw, 1.5rem) !important;
  line-height: 1.04 !important;
}

html body.mf-brand-v2 main#main-content h4 {
  font-size: clamp(1.05rem, 1.2vw, 1.25rem) !important;
  line-height: 1.08 !important;
}

html body.mf-brand-v2 :where(
  p,
  li,
  dd,
  dt,
  figcaption,
  input,
  textarea,
  select,
  button,
  summary,
  .site-nav__link,
  .site-nav__toggle
) {
  font-family: var(--font-body, "Montserrat", sans-serif) !important;
}

html body.mf-brand-v2 main#main-content :where(p, li, dd, figcaption) {
  font-size: clamp(0.88rem, 0.16vw + 0.85rem, 0.98rem);
  font-weight: 400;
  line-height: 1.58;
  letter-spacing: 0 !important;
  text-wrap: pretty;
}

html body.mf-brand-v2 :where(
  .stl-eyebrow,
  [class*="__kicker"],
  [class*="__label"],
  [class*="__meta"],
  [class*="badge"],
  [class*="pill"]
) {
  font-family: var(--font-ui, "Montserrat", sans-serif) !important;
  font-size: clamp(0.625rem, 0.09vw + 0.6rem, 0.7rem) !important;
  font-weight: 700 !important;
  letter-spacing: 0.075em !important;
  line-height: 1.25 !important;
}

html body.mf-brand-v2 :where(
  [class*="stat"] strong,
  [class*="metric"] strong,
  [class*="count"] strong,
  [data-stat] strong
) {
  font-family: var(--font-display, "Bebas Neue", sans-serif) !important;
  font-weight: 400 !important;
  font-variant-numeric: tabular-nums;
}

/* Shared chrome stays useful without competing with the page. */
html body .site-header {
  min-height: var(--mf-global-header-height) !important;
  border-bottom: 1px solid rgba(247, 247, 244, 0.08) !important;
  background: #080b0b !important;
  box-shadow: none !important;
}

html body .site-header .site-header__inner {
  width: min(calc(100% - 2rem), 92rem) !important;
  max-width: 92rem !important;
  min-height: var(--mf-global-header-height) !important;
  gap: 0.75rem !important;
  padding-block: 0.35rem !important;
}

html body .site-header .site-brand__logo {
  width: 32px !important;
  height: 32px !important;
  flex-basis: 32px !important;
}

html body .site-header .site-brand__name {
  font-family: var(--font-body, "Montserrat", sans-serif) !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

html body .site-header .site-nav__list {
  gap: 0.25rem !important;
}

html body .site-header .site-nav :where(.site-nav__link, .site-nav__toggle) {
  min-height: 40px !important;
  padding-inline: 0.62rem !important;
  border: 0 !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #cfd7d1 !important;
  font-size: 0.69rem !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
}

html body .site-header .site-nav :where(.site-nav__link, .site-nav__toggle):hover,
html body .site-header .site-nav :where(.site-nav__link, .site-nav__toggle)[aria-current="page"],
html body .site-header .site-nav [data-has-panel].is-open > .site-nav__toggle {
  border-bottom-color: #f4c430 !important;
  background: rgba(255, 255, 255, 0.035) !important;
  color: #f7f7f4 !important;
}

html body .site-header .site-header__actions :where(a, button) {
  height: 40px !important;
  min-height: 40px !important;
  padding-inline: 0.75rem !important;
  border-color: rgba(247, 247, 244, 0.14) !important;
  border-radius: 4px !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 0.67rem !important;
  font-weight: 700 !important;
}

html body .site-header .site-header__actions .site-header__cta--media {
  border-color: #2e7d32 !important;
  background: #2e7d32 !important;
  color: #f7f7f4 !important;
}

/* A single calm content measure across editorial, data, and portal pages. */
html body.mf-brand-v2 main#main-content :where(
  .stl-container,
  .mf-v22-container,
  .mf-di-shell,
  .mf-diaspora-fix-shell,
  .mf-football-desk,
  .sv-wrap,
  .mf-youth-shell,
  .mf-youth-hub__wrap,
  .mf-ac-shell,
  .mf-shell,
  .site-container
) {
  box-sizing: border-box;
  width: min(calc(100% - (var(--mf-page-gutter) * 2)), var(--mf-content-max)) !important;
  max-width: var(--mf-content-max) !important;
  margin-inline: auto !important;
}

html body.mf-brand-v2 main#main-content > :where(section, header, details) {
  border-inline: 0 !important;
  box-shadow: none !important;
}

html body.mf-brand-v2 main#main-content > :where(
  .stl-section,
  .mf-v22-section,
  .mf-newsroom-home,
  .mf-review-band,
  .mf-stl-discovery,
  .mf-youth-section,
  .mf-youth-split,
  .mf-media-platforms,
  .mf-static-media-library,
  .mf-media-player-section,
  .mf-whale-station-section,
  .mf-tribe-section,
  .mf-diaspora-now,
  .mf-di-command,
  .mf-progressive-section
) {
  padding-block: var(--mf-section-space) !important;
}

html body.mf-brand-v2 main#main-content :where(
  .mf-section-head,
  .mf-v22-section-head,
  .mf-newsroom-head,
  .stl-section-header-row,
  .mf-static-snapshot__head
) {
  margin-bottom: clamp(0.85rem, 1.4vw, 1.25rem) !important;
}

html body.mf-brand-v2 main#main-content :where(
  article,
  .mf-card,
  .mf-v20-card,
  .mf-v22-card,
  .mf-newsroom-card,
  .mf-article-card,
  .mf-matchday-group,
  .mf-match-tile,
  .mf-di-panel,
  .mf-player-polish-card,
  .mf-tracker-official-card,
  .mf-ds-player-card,
  .sv-card
) {
  border-color: var(--mf-border-calm) !important;
  border-radius: var(--mf-radius-card) !important;
  box-shadow: none !important;
}

html body.mf-brand-v2 main#main-content :where(
  .mf-card,
  .mf-v20-card,
  .mf-v22-card,
  .mf-newsroom-card,
  .mf-article-card,
  .mf-matchday-group,
  .mf-match-tile,
  .mf-di-panel,
  .mf-player-polish-card,
  .mf-tracker-official-card,
  .mf-ds-player-card,
  .sv-card
) {
  background-color: var(--mf-surface-calm) !important;
}

html body.mf-brand-v2 main#main-content :where(
  .mf-card,
  .mf-v20-card,
  .mf-v22-card,
  .mf-newsroom-card,
  .mf-article-card,
  .mf-matchday-group,
  .mf-match-tile,
  .mf-di-panel,
  .mf-player-polish-card,
  .mf-tracker-official-card,
  .mf-ds-player-card,
  .sv-card
):hover {
  border-color: var(--mf-border-active) !important;
  transform: translateY(-2px);
}

html body.mf-brand-v2 main#main-content :where(
  .stl-btn,
  .mf-v22-button,
  .mf-button-primary,
  .mf-button-secondary,
  .site-button,
  button:not([class*="icon"])
) {
  min-height: var(--mf-control-height) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

html body.mf-brand-v2 main#main-content :where(
  .stl-btn--primary,
  .mf-v22-button--primary,
  .mf-button-primary,
  .site-button--primary
) {
  border-color: #f4c430 !important;
  background: #f4c430 !important;
  color: #080b0b !important;
}

html body.mf-brand-v2 main#main-content :where(
  .stl-btn--ghost,
  .mf-v22-button--secondary,
  .mf-button-secondary
) {
  border-color: rgba(247, 247, 244, 0.16) !important;
  background: transparent !important;
  color: #f7f7f4 !important;
}

html body.mf-brand-v2 main#main-content :where(
  input:not([type="checkbox"]):not([type="radio"]),
  select,
  textarea
) {
  border-color: rgba(247, 247, 244, 0.15) !important;
  border-radius: 4px !important;
  background: #090e0b !important;
  box-shadow: none !important;
  color: #f7f7f4 !important;
}

html body.mf-brand-v2 main#main-content :where(
  .stl-eyebrow,
  [class*="badge"],
  [class*="pill"]
) {
  border-radius: 3px !important;
  box-shadow: none !important;
}

html body.mf-brand-v2 main#main-content :where(
  .mf-newsroom-card__media,
  .mf-newsroom-story > a,
  .mf-article-card-media,
  .mf-v22-card__media,
  .mf-v22-diaspora-card > img,
  .mf-static-media-card__media,
  .mf-tribe-card > a,
  .mf-tribe-card > img
) {
  display: block;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  background: #050706 !important;
}

html body.mf-brand-v2 main#main-content :where(
  .mf-newsroom-card__media,
  .mf-newsroom-story > a,
  .mf-article-card-media,
  .mf-v22-card__media,
  .mf-v22-diaspora-card > img,
  .mf-static-media-card__media,
  .mf-tribe-card > a
) img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 28%;
}

/* Homepage: one focused lead, then quieter newsroom bands. */
html body.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean,
html body.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean .mf-v22-hero__grid {
  min-height: 0 !important;
  height: auto !important;
}

html body.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean .mf-v22-hero__grid {
  grid-template-columns: minmax(18rem, 0.78fr) minmax(25rem, 1.22fr) !important;
  gap: clamp(1.5rem, 3.2vw, 3.25rem) !important;
  padding-block: clamp(1.75rem, 3vw, 2.8rem) !important;
}

html body.mf-home-v22 .mf-v22-hero__copy h1 {
  max-width: 13ch !important;
}

html body.mf-home-v22 .mf-v22-hero__lede {
  max-width: 48ch !important;
}

html body.mf-home-v22 .mf-v22-now-line--with-media {
  min-height: 0 !important;
}

html body.mf-home-v22 .mf-newsroom-today-grid,
html body.mf-home-v22 .mf-newsroom-story-grid {
  gap: 0.75rem !important;
}

html body.mf-home-v22 .mf-newsroom-today-grid > .mf-newsroom-today-card:nth-child(n + 7) {
  display: none !important;
}

html body.mf-home-v22 .mf-home-wafcon-next__card {
  border-radius: 6px !important;
  box-shadow: none !important;
}

/* Requested STL cleanup: the redundant legacy intro is removed; discovery is
   now the first useful page decision after the local navigation. */
html body.stl-soccer-hub-page #stl-section-1 {
  display: none !important;
}

html body.stl-soccer-hub-page .mf-stl-discovery {
  padding-block: clamp(1.4rem, 2.6vw, 2.4rem) !important;
}

html body.stl-soccer-hub-page :where(.mf-stl-discovery__search, .mf-stl-club-command) {
  border-radius: 6px !important;
  box-shadow: none !important;
}

/* Player and pathway pages prioritize search and official records over a tall
   branded masthead. */
html body.mf-v44-players main#main-content > .mf-player-tracker-hero,
html body.mf-v44-players main#main-content > .mf-player-tracker-hero .mf-polish-hero__grid {
  min-height: 0 !important;
  height: auto !important;
}

html body.mf-v44-players main#main-content > .mf-player-tracker-hero .mf-polish-hero__grid {
  grid-template-columns: minmax(17rem, 0.68fr) minmax(0, 1.32fr) !important;
  gap: clamp(1rem, 2vw, 1.5rem) !important;
  padding-block: clamp(1.1rem, 2.1vw, 1.75rem) !important;
}

html body.mf-v44-players .mf-polish-hero__copy h1 {
  max-width: 10ch !important;
  font-size: clamp(2.35rem, 3.2vw, 3rem) !important;
}

html body.mf-v44-players .mf-player-card-deck {
  gap: 0.75rem !important;
}

html body.mf-v44-players .mf-player-polish-card__media {
  min-height: 0 !important;
  height: auto !important;
  aspect-ratio: 16 / 10 !important;
}

html body.mf-v44-players .mf-player-polish-card__media img {
  object-fit: cover !important;
  object-position: center 22%;
}

/* Diaspora and youth hubs use broader editorial bands with quieter internals. */
html body.mf-diaspora-overview-page main#main-content > :where(.mf-progressive-section, .mf-da-command),
html body.mf-diaspora-pathways-page main#main-content > .mf-progressive-section {
  margin-block: 0.75rem !important;
  border-inline: 0 !important;
  border-radius: 0 !important;
}

html body.mf-diaspora-overview-page .mf-diaspora-now__grid {
  gap: 0.75rem !important;
}

html body.mf-diaspora-overview-page :where(.mf-diaspora-now__feature, .mf-diaspora-now__card) {
  min-height: 11rem !important;
  border-radius: 6px !important;
}

html body.mf-diaspora-pathways-page .mf-africa-pathway-ladder,
html body.mf-diaspora-pathways-page .mf-official-source-board,
html body.mf-youth-hub .mf-youth-field-guide,
html body.mf-youth-hub .mf-youth-pulse {
  border-radius: 6px !important;
  box-shadow: none !important;
}

html body.mf-youth-hub .mf-youth-hero {
  border-radius: 6px !important;
}

html body.mf-youth-hub .mf-youth-hero__copy h1 {
  max-width: 11ch !important;
  font-size: clamp(2.5rem, 3.65vw, 3.35rem) !important;
}

html body.mf-youth-hub :where(.mf-youth-route, .mf-youth-field-guide__row) {
  box-shadow: none !important;
}

/* Editorial and media pages gain a clearer reading / watching hierarchy. */
html body.mf-articles-page .mf-newsroom-front-grid {
  grid-template-columns: minmax(0, 1.55fr) minmax(17rem, 0.72fr) !important;
  gap: 0.85rem !important;
}

html body.mf-articles-page .mf-article-grid,
html body.mf-media-page .mf-static-media-grid,
html body.mf-media-page .mf-tribe-list {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0.75rem !important;
}

html body.mf-articles-page :where(.mf-newsroom-card__body, .mf-article-card-body),
html body.mf-media-page :where(.mf-static-media-card__body, .mf-tribe-card__body) {
  padding: 0.85rem !important;
}

html body.mf-media-page .mf-media-station-hero .mf-daily-grid {
  grid-template-columns: minmax(23rem, 0.72fr) minmax(0, 1.28fr) !important;
  gap: 0.85rem !important;
  padding-block: clamp(1rem, 2vw, 1.65rem) !important;
}

html body.mf-media-page .mf-media-station-hero h1,
html body.mf-media-page .mf-media-station-hero h1 * {
  max-width: 14ch !important;
  font-family: var(--font-display, "Bebas Neue", sans-serif) !important;
  font-size: clamp(2.35rem, 3vw, 2.9rem) !important;
  font-weight: 400 !important;
  line-height: 0.98 !important;
}

html body.mf-media-page .mf-media-station-hero :where(.mf-daily-lead, .mf-home-hero-copy) {
  min-height: 0 !important;
  padding: clamp(1rem, 1.8vw, 1.4rem) !important;
}

html body.mf-media-page :where(.mf-media-control__stage, .mf-tribe-player) {
  border-radius: 6px !important;
  box-shadow: none !important;
}

html body.mf-media-page :where(.mf-media-control__art, .mf-tribe-player__frame) {
  aspect-ratio: 16 / 9 !important;
  background: #050706 !important;
}

html body.mf-media-page :where(.mf-media-control__art, .mf-tribe-player__frame) img {
  object-fit: contain !important;
}

html body.mf-media-page .mf-tribe-section {
  width: min(calc(100% - (var(--mf-page-gutter) * 2)), var(--mf-content-max)) !important;
  margin-inline: auto !important;
  border-inline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

/* Article detail pages favor the story and a readable measure. */
html body.mf-brand-v2 .mf-article-detail-grid {
  width: min(calc(100% - (var(--mf-page-gutter) * 2)), 84rem) !important;
  max-width: 84rem !important;
  grid-template-columns: minmax(0, 1fr) minmax(14rem, 17rem) !important;
  gap: clamp(1rem, 2vw, 1.75rem) !important;
}

html body.mf-brand-v2 .mf-article-detail--story {
  padding: clamp(1rem, 2vw, 1.5rem) !important;
}

html body.mf-brand-v2 .mf-article-detail--story > :where(p, .mf-article-copy, .mf-article-body) {
  width: min(100%, 92ch);
  max-width: 92ch;
  font-size: clamp(0.98rem, 0.2vw + 0.94rem, 1.06rem) !important;
  line-height: 1.72 !important;
}

/* About and contributor flows use the same compact professional frame. */
html body.mf-about-community-page .mf-ac-hero__grid {
  grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 0.65fr) !important;
  gap: 0.85rem !important;
}

html body.mf-about-community-page .mf-ac-founder h2 {
  max-width: none !important;
  font-size: clamp(2rem, 3vw, 2.75rem) !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

html body.mf-contributor-dashboard-page:not(.is-contributor-authenticated) #contributor-process,
html body.mf-contributor-dashboard-page:not(.is-contributor-authenticated) .mf-portal-auth-disclosure {
  display: none !important;
}

html body.mf-contributor-dashboard-page .mf-contributor-hero {
  min-height: 0 !important;
  padding-block: clamp(1rem, 2vw, 1.6rem) !important;
}

html body.mf-contributor-dashboard-page main#main-content > .mf-contributor-hero > .mf-contributor-hero__grid {
  width: min(calc(100% - (var(--mf-page-gutter) * 2)), var(--mf-content-max)) !important;
  max-width: var(--mf-content-max) !important;
  min-height: 0 !important;
  grid-template-columns: minmax(0, 1fr) minmax(18rem, 22rem) !important;
  gap: clamp(1rem, 2.5vw, 2.25rem) !important;
  padding-block: 0 !important;
}

html body.mf-contributor-dashboard-page .mf-contributor-hero__copy .mf-unified-hero-title {
  max-width: 10ch !important;
  font-size: clamp(2.4rem, 3.5vw, 3.25rem) !important;
}

html body.mf-contributor-dashboard-page #portal {
  min-height: 0 !important;
  padding-block: var(--mf-section-space-compact) !important;
}

html body.mf-contributor-dashboard-page #portal > .stl-container {
  width: min(calc(100% - (var(--mf-page-gutter) * 2)), var(--mf-content-max)) !important;
  max-width: var(--mf-content-max) !important;
}

html body.mf-contributor-dashboard-page:not(.is-contributor-authenticated) .mf-portal-auth {
  grid-template-columns: minmax(0, 1fr) !important;
}

html body.mf-contributor-dashboard-page:not(.is-contributor-authenticated) .mf-portal-auth > .mf-form-shell {
  width: 100%;
  max-width: none !important;
}

html body.mf-contributor-dashboard-page:not(.is-contributor-authenticated) .mf-polish-contributor-primer {
  display: none !important;
}

/* Content-driven sections must collapse naturally while asynchronous data loads. */
html body.stl-soccer-hub-page main#main-content #tier-pro {
  min-height: 0 !important;
}

/* A submitted brand mark is an intentional fallback, not a blank photo crop. */
html body.mf-home-v22 .mf-v22-now-line__media img[src*="mf-profile-square"] {
  object-fit: cover !important;
  object-position: 50% 48% !important;
  padding: 0 !important;
  background: #07140d !important;
}

/* A branded loading surface prevents the newsroom from flashing as an empty page. */
html body.mf-articles-page #mf-newsroom-front[data-newsroom-loading] {
  min-height: 13rem;
  display: grid;
  align-items: center;
  border-block: 1px solid rgba(244, 196, 48, 0.2);
  background: #080d0b !important;
}

html body.mf-articles-page .mf-newsroom-loading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem;
  padding-block: var(--mf-section-space-compact);
}

html body.mf-articles-page .mf-newsroom-loading h2 {
  margin: 0.2rem 0 0.35rem !important;
}

html body.mf-articles-page .mf-newsroom-loading p {
  margin: 0;
  max-width: 58ch;
  color: rgba(247, 247, 244, 0.72) !important;
}

html body.mf-articles-page .mf-newsroom-loading__signal {
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 50%;
  background: var(--mf-bright-green, #46a83e);
  box-shadow: 0 0 0 0.35rem rgba(70, 168, 62, 0.14);
}

html body.mf-contributor-login-v2 main#main-content {
  min-height: calc(100dvh - var(--mf-global-header-height) - var(--mf-global-ticker-height));
}

html body.mf-contributor-login-v2 .mf-contributor-login-v2__shell {
  width: min(calc(100% - (var(--mf-page-gutter) * 2)), 72rem) !important;
  gap: 0 !important;
  border-radius: 6px !important;
  box-shadow: none !important;
}

/* Motion is quiet and functional. */
@media (prefers-reduced-motion: no-preference) {
  html body.mf-brand-v2 :where(a, button, summary, article) {
    transition: border-color 180ms ease, background-color 180ms ease, color 180ms ease, transform 180ms ease !important;
  }

  html body.mf-brand-v2 :where(a, button):active {
    transform: translateY(1px) scale(0.99);
  }
}

@media (max-width: 74.9375rem) {
  html body.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--clean .mf-v22-hero__grid,
  html body.mf-v44-players main#main-content > .mf-player-tracker-hero .mf-polish-hero__grid,
  html body.mf-media-page .mf-media-station-hero .mf-daily-grid,
  html body.mf-about-community-page .mf-ac-hero__grid,
  html body.mf-contributor-dashboard-page main#main-content > .mf-contributor-hero > .mf-contributor-hero__grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.mf-articles-page .mf-article-grid,
  html body.mf-media-page .mf-static-media-grid,
  html body.mf-media-page .mf-tribe-list {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 61.25rem) {
  html body.mf-articles-page .mf-newsroom-front-grid,
  html body.mf-brand-v2 .mf-article-detail-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.mf-articles-page .mf-article-grid,
  html body.mf-media-page .mf-static-media-grid,
  html body.mf-media-page .mf-tribe-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 40rem) {
  :root {
    --mf-page-gutter: 0.75rem;
    --mf-section-space: 1.45rem;
    --mf-global-header-height: 56px;
    --mf-global-ticker-height: 48px;
  }

  html body.mf-brand-v2 {
    font-size: 0.9rem;
  }

  html body.mf-brand-v2 main#main-content h1,
  html body.mf-brand-v2 main#main-content h1 * {
    max-width: none;
    font-size: clamp(2.2rem, 10.5vw, 2.75rem) !important;
  }

  html body.mf-brand-v2 main#main-content h2,
  html body.mf-brand-v2 main#main-content h2 * {
    font-size: clamp(1.65rem, 7.5vw, 2rem) !important;
  }

  html body .site-header .site-header__inner {
    width: 100% !important;
  }

  html body.mf-articles-page .mf-article-grid,
  html body.mf-media-page .mf-static-media-grid,
  html body.mf-media-page .mf-tribe-list {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.mf-v44-players .mf-player-card-deck {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.mf-contributor-dashboard-page .mf-contributor-command {
    display: none !important;
  }

  html body.mf-articles-page .mf-newsroom-loading {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  html body.mf-brand-v2 main#main-content :where(a, button, article) {
    transition-duration: 0.01ms !important;
  }
}

/* Premium global navigation: compact, readable, and consistent across desks. */
@media (min-width: 80.01rem) {
  :root {
    --mf-global-header-height: 58px;
    --mf-global-header-control: 40px;
  }

  html body .site-header {
    min-height: var(--mf-global-header-height) !important;
    background: rgba(5, 11, 8, 0.98) !important;
    border-bottom-color: rgba(244, 196, 48, 0.24) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.26) !important;
  }

  html body .site-header .site-header__inner {
    width: min(calc(100% - 2rem), 92rem) !important;
    max-width: 92rem !important;
    min-height: var(--mf-global-header-height) !important;
    gap: 0.75rem !important;
    padding-block: 5px !important;
  }

  html body .site-header .site-brand__logo {
    width: 36px !important;
    height: 36px !important;
  }

  html body .site-header .site-brand__name {
    font-size: 1.04rem !important;
    letter-spacing: 0 !important;
  }

  html body .site-header .site-nav__list {
    gap: 0.18rem !important;
  }

  html body .site-header .site-nav :where(.site-nav__link, .site-nav__toggle) {
    position: relative;
    min-height: 40px !important;
    padding-inline: 0.62rem !important;
    border-radius: 5px !important;
    font-size: 0.72rem !important;
    letter-spacing: 0.01em !important;
  }

  html body .site-header .site-nav :where(.site-nav__link, .site-nav__toggle)::after {
    content: "";
    position: absolute;
    right: 0.62rem;
    bottom: 4px;
    left: 0.62rem;
    height: 2px;
    background: linear-gradient(90deg, #2e7d32, #f4c430, #e53935);
    opacity: 0;
    transform: scaleX(0.4);
    transition: opacity 160ms ease, transform 160ms ease;
  }

  html body .site-header .site-nav :where(.site-nav__link, .site-nav__toggle):hover::after,
  html body .site-header .site-nav :where(.site-nav__link, .site-nav__toggle)[aria-current="page"]::after,
  html body .site-header .site-nav [data-has-panel].is-open > .site-nav__toggle::after {
    opacity: 1;
    transform: scaleX(1);
  }

  html body .site-header .site-header__actions {
    gap: 0.35rem !important;
  }

  html body .site-header .site-header__actions :where(a, button) {
    min-height: var(--mf-global-header-control) !important;
    height: var(--mf-global-header-control) !important;
    padding-inline: 0.7rem !important;
    border-radius: 5px !important;
    font-size: 0.68rem !important;
  }
}

@media (max-width: 80rem) {
  html body .site-header .site-nav {
    display: none !important;
  }

  html body .site-header .site-nav__menu-button {
    display: inline-flex !important;
  }
}

/* production-audit-repair.css */
/* Production audit repair layer. Loaded last by mf-global-runtime.css. */

/* Brand typography: one display face and one readable interface family. */
html body.mf-brand-v2 {
  font-family: var(--font-body, "Montserrat", sans-serif) !important;
  font-weight: 400;
}

html body.mf-brand-v2 :where(
  h1, h2, h3, h4, h5, h6,
  .mf-core-title,
  .mf-unified-hero-title,
  .mf-card-title,
  .mf-newsroom-headline,
  .mf-article-card__title,
  .mf-scoreboard-title
) {
  font-family: var(--font-display, "Bebas Neue", sans-serif) !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

html body.mf-brand-v2 :where(
  p, li, dt, dd, a, span, strong, small, time, figcaption, blockquote,
  input, textarea, select, option, label, code,
  button, summary, nav a,
  .stl-btn, .mf-core-button,
  .stl-eyebrow, .mf-core-label, .mf-core-kicker,
  [class*="__eyebrow"], [class*="__kicker"],
  [class*="__badge"], [class*="__tag"], [class*="__pill"],
  [class*="__meta"], [class*="__label"]
) {
  font-family: var(--font-ui, "Montserrat", sans-serif) !important;
}

html body.mf-brand-v2 :where(
  .stl-eyebrow, .mf-core-label, .mf-core-kicker,
  [class*="__eyebrow"], [class*="__kicker"],
  [class*="__badge"], [class*="__tag"], [class*="__pill"]
) {
  font-weight: 700 !important;
  letter-spacing: 0.055em !important;
}

/* Shared controls stay usable on touch screens and clear at keyboard focus. */
html body.mf-brand-v2 :where(button, [role="button"], .stl-btn, .mf-core-button) {
  min-height: 44px !important;
}

html body.mf-brand-v2 :where(a, button, input, textarea, select, summary):focus-visible {
  outline: 3px solid var(--mf-legacy-yellow, #f4c430) !important;
  outline-offset: 3px !important;
}

/* Compact global navigation while preserving a dependable 44px interaction target. */
html body.mf-brand-v2 .site-header :where(.site-nav a, .site-actions a, .site-actions button, .site-menu-toggle) {
  min-height: 44px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

html body.mf-brand-v2 .site-nav a,
html body.mf-brand-v2 .site-actions :where(a, button) {
  font-size: clamp(0.69rem, 0.18vw + 0.64rem, 0.78rem) !important;
  line-height: 1.1 !important;
  letter-spacing: 0.015em !important;
}

html body.mf-brand-v2 .site-header :where(a, button) {
  min-height: 44px !important;
}

@media (max-width: 80rem) {
  html body.mf-brand-v2 .site-header .site-theme-toggle {
    display: none !important;
  }
}

/* Article pages: wider editorial canvas, comfortable measure, compact masthead. */
html body.mf-article-page #article-detail > .stl-container,
html body.mf-article-page .mf-article-detail-grid {
  width: min(calc(100% - (var(--mf-page-gutter, 1rem) * 2)), 96rem) !important;
  max-width: 96rem !important;
}

html body.mf-article-page .mf-article-detail-grid {
  grid-template-columns: minmax(0, 1fr) minmax(15rem, 18rem) !important;
  gap: clamp(1rem, 1.7vw, 1.6rem) !important;
}

html body.mf-article-page .mf-article-detail--story {
  min-width: 0;
  max-width: none !important;
  padding: clamp(1rem, 1.8vw, 1.45rem) !important;
}

html body.mf-article-page .mf-article-copy,
html body.mf-article-page .mf-article-body {
  width: min(100%, 88ch) !important;
  max-width: 88ch !important;
  margin-inline: auto !important;
  font-family: var(--font-body, "Montserrat", sans-serif) !important;
  font-size: clamp(1rem, 0.22vw + 0.95rem, 1.08rem) !important;
  line-height: 1.72 !important;
}

html body.mf-article-page .mf-article-copy :where(h2, h3, h4),
html body.mf-article-page .mf-article-body :where(h2, h3, h4) {
  max-width: 24ch;
  margin-top: 1.5em;
  margin-bottom: 0.45em;
  text-wrap: balance;
}

html body.mf-article-page #article-hero {
  min-height: 0 !important;
  padding-block: 0.65rem 0.85rem !important;
}

/* News and media cards carry more information without turning into billboards. */
html body.mf-brand-v2 :where(.mf-article-card, .mf-static-media-card, .mf-core-card) h3 {
  font-size: clamp(1.22rem, 1vw + 0.88rem, 1.72rem) !important;
  line-height: 0.98 !important;
  text-wrap: balance;
}

html body.mf-brand-v2 :where(.mf-article-card, .mf-static-media-card, .mf-core-card) p {
  font-size: clamp(0.78rem, 0.12vw + 0.75rem, 0.86rem) !important;
  line-height: 1.45 !important;
}

html body.mf-brand-v2 :where(.mf-static-media-card__media, .mf-core-card__image, .mf-tribe-card > a) {
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #050706;
}

html body.mf-brand-v2 :where(.mf-static-media-card__media, .mf-core-card__image, .mf-tribe-card > a) img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

html body.mf-brand-v2 .mf-tribe-player__poster {
  position: relative;
  width: 100%;
  min-height: 0;
  aspect-ratio: 16 / 9;
  padding: 0;
  overflow: hidden;
  border: 0;
  background: #000;
  cursor: pointer;
}

html body.mf-brand-v2 .mf-tribe-player__poster img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

html body.mf-brand-v2 .mf-tribe-player__poster span {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  display: grid;
  place-items: center;
  min-width: 4.25rem;
  min-height: 2.75rem;
  padding: 0.65rem 0.9rem;
  border-radius: 5px;
  background: var(--mf-legacy-yellow, #f4c430);
  color: #080b0b;
  font-family: var(--font-ui, "Montserrat", sans-serif);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

html body.mf-brand-v2 .mf-tribe-player__notes {
  border-block: 1px solid rgba(247, 247, 244, 0.1);
  padding-block: 0.35rem;
}

html body.mf-brand-v2 .mf-tribe-player__notes summary {
  min-height: 36px;
  display: flex;
  align-items: center;
  color: rgba(247, 247, 244, 0.78);
  font-size: 0.72rem;
  font-weight: 700;
  cursor: pointer;
}

html body.mf-brand-v2 .mf-tribe-player__notes p {
  margin: 0.25rem 0 0 !important;
  font-size: 0.78rem !important;
  line-height: 1.45 !important;
}

/* Keep the verified-feed state visible without presenting failures as content. */
html body.mf-brand-v2 :where(.mf-feed-state, .mf-feed-notice, [data-feed-state]) {
  font-family: var(--font-ui, "Montserrat", sans-serif) !important;
  font-size: 0.72rem;
  line-height: 1.4;
}

@media (max-width: 61.25rem) {
  html body.mf-article-page .mf-article-detail-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.mf-article-page .mf-article-sidebar {
    position: static !important;
  }
}

@media (max-width: 47.5rem) {
  html body.mf-brand-v2 .site-header :where(.site-nav, .site-actions) {
    overscroll-behavior-inline: contain;
    scrollbar-width: thin;
  }

  html body.mf-brand-v2 .site-header :where(.site-nav a, .site-actions a, .site-actions button, .site-menu-toggle) {
    min-width: 44px !important;
  }

  html body.mf-article-page #article-detail > .stl-container,
  html body.mf-article-page .mf-article-detail-grid {
    width: min(calc(100% - 1rem), 96rem) !important;
  }

  html body.mf-article-page .mf-article-copy,
  html body.mf-article-page .mf-article-body {
    width: 100% !important;
    max-width: 100% !important;
    font-size: 1rem !important;
    line-height: 1.68 !important;
  }

  html body.mf-brand-v2 main#main-content :where(h1, .mf-core-title, .mf-unified-hero-title) {
    overflow-wrap: normal;
    word-break: normal;
    text-wrap: balance;
  }
}

@media (max-width: 35rem) {
  html body.mf-brand-v2 .site-header .site-header__search {
    display: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body.mf-brand-v2 *,
  html body.mf-brand-v2 *::before,
  html body.mf-brand-v2 *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* premium-layout-system.css */
/* Premium layout system. Loaded last by mf-global-runtime.css. */

html body.mf-brand-v2 {
  --mf-premium-shell: 94rem;
  --mf-premium-editorial: 82rem;
  --mf-premium-gutter: clamp(0.75rem, 2.25vw, 2rem);
  --mf-premium-section: clamp(1.65rem, 3.3vw, 3rem);
  --mf-premium-section-compact: clamp(1rem, 2vw, 1.65rem);
  --mf-premium-gap: clamp(0.7rem, 1.4vw, 1.15rem);
  --mf-premium-radius: 7px;
  --mf-premium-line: rgba(244, 196, 48, 0.24);
  --mf-premium-line-soft: rgba(247, 247, 244, 0.11);
  --mf-premium-surface: rgba(7, 18, 13, 0.94);
  --mf-premium-surface-raised: rgba(12, 28, 21, 0.96);
}

/* One dependable page canvas across editorial, hub, media, and portal routes. */
html body.mf-brand-v2 main#main-content :where(
  .stl-container,
  .site-container,
  .mf-v22-container,
  .mf-core-container,
  .mf-home-container
) {
  width: min(calc(100% - (var(--mf-premium-gutter) * 2)), var(--mf-premium-shell));
  max-width: var(--mf-premium-shell);
  margin-inline: auto;
}

html body.mf-brand-v2 main#main-content > :where(.stl-section, .mf-v22-section, .mf-core-section) {
  padding-block: var(--mf-premium-section);
}

html body.mf-brand-v2 main#main-content > :where(.stl-section, .mf-v22-section, .mf-core-section) + :where(.stl-section, .mf-v22-section, .mf-core-section) {
  border-top: 1px solid var(--mf-premium-line-soft);
}

html body.mf-brand-v2 :where(.stl-section-header-row, .mf-v22-section-head, .mf-core-section__head) {
  gap: var(--mf-premium-gap);
  margin-bottom: clamp(0.75rem, 1.5vw, 1.15rem);
}

html body.mf-brand-v2 :where(.stl-section-header-row, .mf-v22-section-head, .mf-core-section__head) h2 {
  max-width: 24ch;
  text-wrap: balance;
}

html body.mf-brand-v2 :where(.stl-section-header-row, .mf-v22-section-head, .mf-core-section__head) p {
  max-width: 68ch;
  margin-bottom: 0;
}

/* Compact global chrome without removing destinations or live match context. */
html body.mf-brand-v2 .site-header .site-header__inner {
  width: min(calc(100% - 1.25rem), 100rem) !important;
  max-width: 100rem !important;
}

html body.mf-brand-v2 .site-header .site-nav__list {
  gap: 1px !important;
}

html body.mf-brand-v2 .site-header .site-nav :where(.site-nav__link, .site-nav__toggle) {
  padding-inline: clamp(0.35rem, 0.65vw, 0.65rem) !important;
}

/* Page-level navigation remains useful once the masthead has scrolled away. */
html body.mf-brand-v2 :where(
  .mf-core-nav,
  .mf-stl-section-nav,
  .mf-diaspora-section-nav,
  .mf-youth-nav
) {
  position: sticky;
  top: 0;
  z-index: 120;
  background: rgba(4, 12, 8, 0.96);
  backdrop-filter: blur(14px);
  border-block: 1px solid var(--mf-premium-line-soft);
}

html body.mf-brand-v2 :where(
  .mf-core-nav__inner,
  .mf-stl-section-nav .stl-container,
  .mf-diaspora-tabs,
  .mf-youth-nav
) {
  min-height: 46px;
  display: flex;
  align-items: center;
  gap: 0.4rem;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
}

html body.mf-brand-v2 :where(
  .mf-core-nav a,
  .mf-stl-section-nav a,
  .mf-diaspora-tabs a,
  .mf-youth-nav a
) {
  min-height: 38px !important;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  padding: 0.55rem 0.75rem !important;
  border-radius: 5px !important;
  font-size: 0.7rem !important;
  white-space: nowrap;
}

/* Compact first view: strong subject signal with the next section still visible. */
html body.mf-brand-v2 :where(
  .mf-v22-hero,
  .mf-daily-hero,
  .mf-diaspora-hero,
  .mf-polish-hero,
  .mf-contributor-hero,
  .mf-youth-hero,
  .mf-media-station-hero
) {
  min-height: 0 !important;
}

html body.mf-brand-v2 :where(
  .mf-v22-hero__grid,
  .mf-daily-grid,
  .mf-diaspora-hero__inner,
  .mf-diaspora-fix-hero__grid,
  .mf-contributor-hero__grid,
  .mf-youth-hero
) {
  min-height: 0 !important;
  gap: clamp(1rem, 2.2vw, 2rem) !important;
}

html body.mf-brand-v2 :where(.mf-daily-hero, .mf-diaspora-hero, .mf-contributor-hero, .mf-media-station-hero) {
  padding-block: clamp(1.15rem, 2.6vw, 2.25rem) !important;
}

html body.mf-brand-v2 :where(.mf-v22-hero, .mf-player-tracker-hero, .mf-media-station-hero) {
  max-height: none !important;
}

html body.mf-brand-v2 main#main-content :where(.mf-v22-hero h1, .mf-daily-hero h1, .mf-diaspora-hero h1, .mf-contributor-hero h1, .mf-youth-hero h1) {
  max-width: 15ch;
  font-size: clamp(2.4rem, 5vw, 4.8rem) !important;
  line-height: 0.92 !important;
  text-wrap: balance;
}

html body.mf-brand-v2 main#main-content :where(.mf-v22-hero p, .mf-daily-hero p, .mf-diaspora-hero p, .mf-contributor-hero p, .mf-youth-hero p) {
  max-width: 60ch;
  font-size: clamp(0.86rem, 0.25vw + 0.8rem, 1rem) !important;
  line-height: 1.5 !important;
}

/* A common compact card language. */
html body.mf-brand-v2 :where(
  .mf-article-card,
  .mf-newsroom-card,
  .mf-newsroom-today-card,
  .mf-core-card,
  .mf-core-panel,
  .mf-static-media-card,
  .mf-route-card,
  .mf-surface-card,
  .mf-hub-proof-card,
  .mf-diaspora-now__card,
  .mf-youth-panel,
  .mf-youth-age-grid > article
) {
  min-width: 0;
  border-radius: var(--mf-premium-radius) !important;
}

html body.mf-brand-v2 :where(
  .mf-article-card,
  .mf-newsroom-card,
  .mf-core-card,
  .mf-static-media-card,
  .mf-route-card,
  .mf-surface-card,
  .mf-diaspora-now__card
) {
  display: flex;
  flex-direction: column;
}

html body.mf-brand-v2 :where(
  .mf-article-card,
  .mf-newsroom-card,
  .mf-core-card,
  .mf-static-media-card,
  .mf-route-card,
  .mf-surface-card,
  .mf-diaspora-now__card
) :where(.mf-core-actions, .mf-card-actions, [class*="__actions"], .stl-btn, .mf-core-button):last-child {
  margin-top: auto;
}

html body.mf-brand-v2 :where(
  .mf-article-card img,
  .mf-newsroom-card img,
  .mf-core-card img,
  .mf-static-media-card img,
  .mf-media-card img,
  .mf-official-video-card img
) {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

html body.mf-brand-v2 :where(
  .mf-article-card h3,
  .mf-newsroom-card h3,
  .mf-core-card h3,
  .mf-static-media-card h3,
  .mf-route-card h3,
  .mf-surface-card h3
) {
  margin-block: 0.2rem 0.35rem;
  text-wrap: balance;
}

html body.mf-brand-v2 :where(
  .mf-article-card p,
  .mf-newsroom-card p,
  .mf-core-card p,
  .mf-static-media-card p,
  .mf-route-card p,
  .mf-surface-card p
) {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

/* Editorial front: one lead plus a dense two-by-two briefing rail. */
html body.mf-articles-page .mf-newsroom-front-grid {
  grid-template-columns: minmax(0, 1.42fr) minmax(28rem, 1fr) !important;
  gap: var(--mf-premium-gap) !important;
  align-items: start;
}

html body.mf-articles-page .mf-newsroom-side {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: var(--mf-premium-gap) !important;
  align-content: start;
}

html body.mf-articles-page .mf-newsroom-side > * {
  height: 100%;
  min-height: 0 !important;
}

html body.mf-articles-page .mf-newsroom-front-section {
  padding-block: var(--mf-premium-section-compact) !important;
}

html body.mf-articles-page .mf-newsroom-front-section .mf-conversion-primary {
  min-height: 0 !important;
}

html body.mf-articles-page :where(.mf-article-grid, .mf-article-lanes) {
  gap: var(--mf-premium-gap) !important;
}

html body.mf-articles-page .mf-article-grid > * {
  height: 100%;
}

/* Long-form reading stays a single readable measure while using the canvas. */
html body.mf-article-page .mf-article-copy,
html body.mf-article-page .mf-article-body {
  width: min(100%, 92ch) !important;
  max-width: 92ch !important;
}

html body.mf-article-page .mf-article-sidebar {
  align-self: start;
  position: sticky;
  top: 1rem;
}

/* Data and directory pages use wider multi-column boards instead of tall stacks. */
html body.mf-brand-v2 :where(
  .mf-proof-grid,
  .mf-route-grid,
  .mf-youth-age-grid,
  .mf-youth-check-grid,
  .mf-hub-proof-row,
  .mf-ocn-card-grid
) {
  gap: var(--mf-premium-gap) !important;
}

html body.mf-youth-hub .mf-youth-split {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  align-items: start;
  gap: var(--mf-premium-gap) !important;
}

html body.mf-youth-hub .mf-youth-split > * {
  min-width: 0;
}

html body.mf-youth-hub .mf-youth-section {
  padding-block: var(--mf-premium-section-compact) !important;
}

html body.mf-diaspora-page :where(.mf-diaspora-now, .mf-da-command, .mf-di-command) {
  padding-block: var(--mf-premium-section-compact) !important;
}

html body.mf-diaspora-page :where(.mf-di-shell, .mf-da-shell, .mf-diaspora-fix-shell) {
  width: min(calc(100% - (var(--mf-premium-gutter) * 2)), var(--mf-premium-shell)) !important;
  max-width: var(--mf-premium-shell) !important;
  margin-inline: auto !important;
}

html body.mf-diaspora-pathways-page details.mf-progressive-section {
  width: min(calc(100% - (var(--mf-premium-gutter) * 2)), var(--mf-premium-shell)) !important;
  max-width: var(--mf-premium-shell) !important;
  margin-inline: auto !important;
}

html body.mf-v44-players .mf-player-tracker-hero {
  padding-block: clamp(1rem, 2vw, 1.75rem) !important;
}

html body.mf-v44-players .mf-tracker-links-section {
  padding-block: var(--mf-premium-section-compact) !important;
}

/* Media and podcast surfaces favor a player plus a compact queue. */
html body.mf-media-page :where(.mf-media-control, .mf-tribe-section),
html body.mf-core-podcast-page :where(.mf-core-section, .mf-tribe-section) {
  scroll-margin-top: 3.25rem;
}

html body.mf-media-page .mf-media-control,
html body.mf-core-podcast-page .mf-tribe-section {
  padding-block: var(--mf-premium-section-compact) !important;
}

html body.mf-media-page :where(.mf-media-control__stage, .mf-tribe-player),
html body.mf-core-podcast-page .mf-tribe-player {
  gap: var(--mf-premium-gap) !important;
}

html body.mf-media-page :where(.mf-media-control__art, .mf-tribe-player__frame),
html body.mf-core-podcast-page .mf-tribe-player__frame {
  aspect-ratio: 16 / 9 !important;
  min-height: 0 !important;
}

html body.mf-core-podcast-page #latest .mf-core-grid,
html body.mf-media-page :where(.mf-media-control__queue, .mf-tribe-list) {
  align-items: stretch;
}

/* Honest live, stale, and failure states are visually distinct at a glance. */
html body.mf-brand-v2 :where(.is-live, [data-live="true"], [data-status="live"])::before {
  content: "";
  display: inline-block;
  width: 0.45rem;
  height: 0.45rem;
  margin-right: 0.4rem;
  border-radius: 50%;
  background: #46a83e;
  box-shadow: 0 0 0 0 rgba(70, 168, 62, 0.48);
  animation: mf-premium-live-pulse 1.8s ease-out infinite;
}

html body.mf-brand-v2 :where(.is-stale, [data-status="stale"], [data-feed-state="stale"]) {
  border-color: rgba(244, 196, 48, 0.5) !important;
}

html body.mf-brand-v2 :where(.is-error, [data-status="error"], [data-feed-state="error"]) {
  border-color: rgba(229, 57, 53, 0.58) !important;
}

/* The guest contributor state should read as one complete gateway, not a tall void. */
html body.mf-contributor-dashboard-page:not(.is-contributor-authenticated) main#main-content {
  min-height: 0 !important;
}

html body.mf-contributor-dashboard-page:not(.is-contributor-authenticated) .mf-contributor-hero {
  padding-block: clamp(1rem, 2vw, 1.65rem) !important;
}

html body.mf-contributor-dashboard-page:not(.is-contributor-authenticated) .mf-contributor-guest-gateway {
  width: min(calc(100% - (var(--mf-premium-gutter) * 2)), var(--mf-premium-editorial));
  margin: var(--mf-premium-section-compact) auto !important;
}

/* Footer stays complete, but behaves like compact utility chrome. */
html body.mf-brand-v2 .site-footer {
  padding-block: clamp(1.2rem, 2.5vw, 2rem) 0.75rem !important;
}

html body.mf-brand-v2 .site-footer .site-footer__inner {
  width: min(calc(100% - (var(--mf-premium-gutter) * 2)), var(--mf-premium-shell)) !important;
  max-width: var(--mf-premium-shell) !important;
  display: grid !important;
  grid-template-columns: minmax(13rem, 1.35fr) repeat(5, minmax(7rem, 0.8fr)) !important;
  gap: clamp(0.9rem, 2vw, 1.75rem) !important;
  align-items: start;
}

html body.mf-brand-v2 .site-footer :where(.site-footer__copy, .site-footer__nav ul) {
  margin-block: 0.55rem 0 !important;
}

html body.mf-brand-v2 .site-footer .site-footer__nav li + li {
  margin-top: 0.1rem !important;
}

html body.mf-brand-v2 .site-footer .site-footer__bottom {
  width: min(calc(100% - (var(--mf-premium-gutter) * 2)), var(--mf-premium-shell)) !important;
  max-width: var(--mf-premium-shell) !important;
  min-height: 40px !important;
  margin-top: 0.75rem !important;
  padding-block: 0.55rem !important;
}

@keyframes mf-premium-live-pulse {
  0% { box-shadow: 0 0 0 0 rgba(70, 168, 62, 0.48); }
  75%, 100% { box-shadow: 0 0 0 0.48rem rgba(70, 168, 62, 0); }
}

@media (max-width: 72rem) {
  html body.mf-articles-page .mf-newsroom-front-grid {
    grid-template-columns: minmax(0, 1.25fr) minmax(22rem, 0.9fr) !important;
  }

  html body.mf-brand-v2 .site-footer .site-footer__inner {
    grid-template-columns: minmax(15rem, 1.35fr) repeat(3, minmax(8rem, 1fr)) !important;
  }
}

@media (max-width: 58rem) {
  html body.mf-articles-page .mf-newsroom-front-grid,
  html body.mf-youth-hub .mf-youth-split {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.mf-articles-page .mf-newsroom-side {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.mf-brand-v2 .site-footer .site-footer__inner {
    grid-template-columns: minmax(14rem, 1.4fr) repeat(2, minmax(8rem, 1fr)) !important;
  }

  html body.mf-article-page .mf-article-sidebar {
    position: static;
  }
}

@media (max-width: 42rem) {
  html body.mf-brand-v2 {
    --mf-premium-gutter: 0.65rem;
    --mf-premium-section: 1.35rem;
    --mf-premium-section-compact: 1rem;
  }

  html body.mf-brand-v2 :where(
    .mf-v22-hero,
    .mf-daily-hero,
    .mf-diaspora-hero,
    .mf-contributor-hero,
    .mf-youth-hero,
    .mf-media-station-hero
  ) {
    padding-block: 0.9rem !important;
  }

  html body.mf-brand-v2 main#main-content :where(.mf-v22-hero h1, .mf-daily-hero h1, .mf-diaspora-hero h1, .mf-contributor-hero h1, .mf-youth-hero h1) {
    font-size: clamp(2.15rem, 12vw, 3.4rem) !important;
  }

  html body.mf-articles-page .mf-newsroom-side {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.mf-brand-v2 .site-footer .site-footer__inner {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0.45rem !important;
  }

  html body.mf-brand-v2 .site-footer .site-footer__nav {
    border-top: 1px solid var(--mf-premium-line-soft);
    padding-top: 0.35rem;
  }

  html body.mf-brand-v2 .site-footer .site-footer__nav:not([open]) > :not(summary) {
    display: none;
  }

  html body.mf-brand-v2 .site-footer .site-footer__bottom {
    align-items: flex-start !important;
    gap: 0.3rem !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body.mf-brand-v2 :where(.is-live, [data-live="true"], [data-status="live"])::before {
    animation: none;
  }
}

/* diaspora-overview-v5.css */
/* Wide, source-led Diaspora overview. The player photography shown by this view
   is selected from the approved public player export at runtime. */
html body.mf-diaspora-overview-page {
  --mf-diaspora-wide-shell: 116rem;
}

html body.mf-diaspora-overview-page main#main-content > .mf-diaspora-now.mf-diaspora-desk-host {
  min-height: 0 !important;
  padding: clamp(1rem, 1.7vw, 1.5rem) 0 !important;
  overflow: visible !important;
  border-block: 1px solid rgba(244, 196, 48, 0.3) !important;
  background: #07110c !important;
}

html body.mf-diaspora-overview-page main#main-content > .mf-diaspora-now.mf-diaspora-desk-host::before,
html body.mf-diaspora-overview-page main#main-content > .mf-diaspora-now.mf-diaspora-desk-host::after {
  display: none !important;
}

html body.mf-diaspora-overview-page .mf-diaspora-now.mf-diaspora-desk-host > .mf-diaspora-desk {
  box-sizing: border-box;
  width: min(calc(100% - clamp(1.5rem, 3vw, 3rem)), var(--mf-diaspora-wide-shell)) !important;
  max-width: var(--mf-diaspora-wide-shell) !important;
  margin-inline: auto !important;
}

.mf-diaspora-desk {
  color: #f7f7f4;
  font-family: var(--font-body, "Montserrat", sans-serif);
}

.mf-diaspora-desk__header {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(24rem, 0.65fr);
  gap: clamp(1.25rem, 3vw, 3.25rem);
  align-items: end;
  padding: clamp(0.25rem, 1vw, 0.75rem) 0 clamp(1rem, 1.5vw, 1.4rem);
}

.mf-diaspora-desk__intro {
  display: grid;
  grid-template-columns: minmax(18rem, 0.92fr) minmax(21rem, 1.08fr);
  gap: 0.55rem clamp(1.25rem, 2.5vw, 2.5rem);
  align-items: end;
}

.mf-diaspora-desk__intro > .stl-eyebrow {
  grid-column: 1 / -1;
  color: #f4c430;
  font: 700 0.68rem/1 var(--font-body, "Montserrat", sans-serif);
  text-transform: uppercase;
}

.mf-diaspora-overview-page .mf-diaspora-desk__intro h1 {
  max-width: 13ch;
  margin: 0;
  font: 700 clamp(2.35rem, 3.6vw, 4.1rem)/0.91 var(--font-display, "Bebas Neue", sans-serif);
}

.mf-diaspora-desk__intro > p {
  max-width: 54ch;
  margin: 0 0 0.2rem;
  color: rgba(247, 247, 244, 0.74);
  font-size: clamp(0.88rem, 1vw, 1rem);
  line-height: 1.55;
}

.mf-diaspora-desk__stats {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-block: 1px solid rgba(247, 247, 244, 0.1);
}

.mf-diaspora-desk__stats > span {
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 0.45rem;
  padding: 0.6rem 0.75rem;
  border-right: 1px solid rgba(247, 247, 244, 0.1);
}

.mf-diaspora-desk__stats > span:last-child {
  border-right: 0;
}

.mf-diaspora-desk__stats strong {
  color: #f4c430;
  font: 700 1.75rem/1 var(--font-display, "Bebas Neue", sans-serif);
}

.mf-diaspora-desk__stats small {
  color: rgba(247, 247, 244, 0.68);
  font-size: 0.66rem;
  font-weight: 700;
  text-transform: uppercase;
}

.mf-diaspora-desk__search {
  padding: 1rem;
  border: 1px solid rgba(244, 196, 48, 0.28);
  border-radius: 6px;
  background: #0d1813;
}

.mf-diaspora-desk__search label {
  display: block;
  margin-bottom: 0.55rem;
  color: #f4c430;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
}

.mf-diaspora-desk__search > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
}

.mf-diaspora-desk__search input,
.mf-diaspora-desk__search button {
  min-height: 2.9rem;
  border: 1px solid rgba(247, 247, 244, 0.18);
  border-radius: 0;
  font: 600 0.78rem/1 var(--font-body, "Montserrat", sans-serif);
}

.mf-diaspora-desk__search input {
  min-width: 0;
  padding-inline: 0.85rem;
  color: #f7f7f4;
  background: #080b0b;
}

.mf-diaspora-desk__search button {
  padding-inline: 1rem;
  border-color: #f4c430;
  color: #080b0b;
  background: #f4c430;
  cursor: pointer;
}

.mf-diaspora-desk__search p {
  margin: 0.65rem 0 0;
  color: rgba(247, 247, 244, 0.58);
  font-size: 0.68rem;
  line-height: 1.45;
}

.mf-diaspora-desk__tabs {
  display: flex;
  gap: 0;
  overflow-x: auto;
  border-block: 1px solid rgba(247, 247, 244, 0.12);
  scrollbar-width: none;
}

.mf-diaspora-desk__tabs::-webkit-scrollbar {
  display: none;
}

.mf-diaspora-desk__tabs button {
  min-height: 3rem;
  flex: 1 1 0;
  border: 0;
  border-right: 1px solid rgba(247, 247, 244, 0.1);
  border-radius: 0;
  padding: 0.7rem 1rem;
  color: rgba(247, 247, 244, 0.72);
  background: transparent;
  font: 700 0.7rem/1 var(--font-body, "Montserrat", sans-serif);
  text-transform: uppercase;
  cursor: pointer;
}

.mf-diaspora-desk__tabs button[aria-selected="true"] {
  color: #f7f7f4;
  background: #2e7d32;
  box-shadow: inset 0 -3px #f4c430;
}

.mf-diaspora-desk__stage {
  padding-top: 0.85rem;
}

.mf-diaspora-desk__panel[hidden] {
  display: none !important;
}

.mf-diaspora-overview-page .mf-diaspora-desk__panel.is-active {
  animation: mf-diaspora-panel-in 220ms ease-out both;
  border-color: rgba(46, 125, 50, 0.56);
  background: transparent;
  box-shadow: none;
}

.mf-diaspora-desk__loading,
.mf-diaspora-desk__empty {
  min-height: 18rem;
  display: grid;
  place-content: center;
  gap: 0.45rem;
  border: 1px dashed rgba(244, 196, 48, 0.32);
  text-align: center;
}

.mf-diaspora-desk__loading span,
.mf-diaspora-desk__empty p {
  max-width: 54ch;
  margin: 0;
  color: rgba(247, 247, 244, 0.64);
}

.mf-diaspora-desk__empty a {
  width: fit-content;
  margin: 0.5rem auto 0;
  color: #d8ff2e;
  font-weight: 700;
}

.mf-diaspora-desk__player-layout {
  display: grid;
  grid-template-columns: minmax(32rem, 0.92fr) minmax(0, 1.08fr);
  gap: 0.8rem;
  align-items: start;
  padding: 0.65rem;
  border: 1px solid rgba(247, 247, 244, 0.1);
  border-top: 2px solid #2e7d32;
  border-radius: 6px;
  background: #06100b;
}

.mf-diaspora-player-feature {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(15rem, 1fr) minmax(14rem, 0.8fr);
  min-height: 0;
  align-self: start;
  overflow: hidden;
  border: 1px solid rgba(244, 196, 48, 0.35);
  border-radius: 6px;
  background: #0d1813;
}

.mf-diaspora-player-feature__media,
.mf-diaspora-player-compact__media {
  position: relative;
  min-width: 0;
  overflow: hidden;
  color: rgba(247, 247, 244, 0.62);
  background: #06100b;
  text-decoration: none;
}

.mf-diaspora-player-feature__media {
  aspect-ratio: 4 / 3;
}

.mf-diaspora-player-feature__media img,
.mf-diaspora-player-compact__media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: center;
  transition: transform 240ms ease;
}

.mf-diaspora-player-feature:hover img,
.mf-diaspora-player-compact:hover img {
  transform: scale(1.025);
}

.mf-diaspora-player-feature__media.is-unavailable,
.mf-diaspora-player-compact__media.is-unavailable {
  display: grid;
  place-items: center;
  padding: 1rem;
  text-align: center;
}

.mf-diaspora-player-feature__body {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-width: 0;
  padding: clamp(1rem, 2vw, 1.5rem);
}

.mf-diaspora-player-feature__eyebrow,
.mf-diaspora-player-compact__eyebrow {
  color: #f4c430;
  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
}

.mf-diaspora-player-feature h2,
.mf-diaspora-player-compact h2 {
  margin: 0.4rem 0 0 !important;
  font-family: var(--font-display, "Bebas Neue", sans-serif) !important;
  line-height: 0.95 !important;
}

.mf-diaspora-player-feature h2 {
  font-size: clamp(2.1rem, 3vw, 3.5rem) !important;
}

.mf-diaspora-player-feature__body > p,
.mf-diaspora-player-compact__body > p {
  margin: 0.5rem 0 0;
  color: rgba(247, 247, 244, 0.76);
  line-height: 1.4;
}

.mf-diaspora-player-feature__meta,
.mf-diaspora-player-compact__meta {
  display: grid;
  gap: 0.2rem;
  margin-top: 1rem;
  color: rgba(247, 247, 244, 0.54);
  font-size: 0.64rem;
}

.mf-diaspora-player-feature__actions,
.mf-diaspora-player-compact__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-top: 1rem;
}

.mf-diaspora-player-feature__actions a,
.mf-diaspora-player-compact__actions a {
  min-height: 2.45rem;
  display: inline-flex;
  align-items: center;
  padding: 0.55rem 0.7rem;
  border: 1px solid rgba(244, 196, 48, 0.34);
  border-radius: 4px;
  color: #f7f7f4;
  font-size: 0.68rem;
  font-weight: 700;
  text-decoration: none;
}

.mf-diaspora-player-feature__actions a:first-child,
.mf-diaspora-player-compact__actions a:first-child {
  color: #080b0b;
  background: #f4c430;
}

.mf-diaspora-desk__player-rail-wrap {
  min-width: 0;
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 0.6rem;
  align-self: start;
  padding: 0.65rem;
  border: 1px solid rgba(247, 247, 244, 0.1);
  border-radius: 6px;
  background: #07110c;
}

.mf-diaspora-desk__rail-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.15rem 0;
}

.mf-diaspora-desk__rail-head span,
.mf-diaspora-desk__rail-head strong {
  display: block;
}

.mf-diaspora-desk__rail-head span {
  color: #f4c430;
  font-size: 0.63rem;
  font-weight: 700;
  text-transform: uppercase;
}

.mf-diaspora-desk__rail-head strong {
  margin-top: 0.25rem;
  font-size: 0.92rem;
}

.mf-diaspora-desk__rail-head > div:last-child {
  display: flex;
  gap: 0.35rem;
}

.mf-diaspora-desk__rail-head button {
  width: 2.45rem;
  height: 2.45rem;
  border: 1px solid rgba(244, 196, 48, 0.38);
  border-radius: 50%;
  color: #f7f7f4;
  background: #0d1813;
  font-size: 1.3rem;
  cursor: pointer;
}

.mf-diaspora-desk__player-rail {
  min-width: 0;
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(14rem, 1fr);
  gap: 0.65rem;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: inline mandatory;
  scrollbar-width: thin;
  scrollbar-color: #f4c430 #07110c;
}

.mf-diaspora-player-compact {
  min-width: 0;
  display: grid;
  grid-template-rows: minmax(10rem, 1fr) auto;
  overflow: hidden;
  border: 1px solid rgba(247, 247, 244, 0.14);
  border-radius: 6px;
  background: #0d1813;
  scroll-snap-align: start;
}

.mf-diaspora-player-compact__body {
  min-width: 0;
  padding: 0.85rem;
}

.mf-diaspora-player-compact h2 {
  font-size: 1.65rem !important;
}

.mf-diaspora-player-compact__body > p {
  min-height: 2.5em;
  font-size: 0.74rem;
}

.mf-diaspora-player-compact__meta span:last-child,
.mf-diaspora-player-compact__actions a:last-child {
  display: none;
}

.mf-diaspora-desk__route-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.7rem;
}

.mf-diaspora-desk__route {
  min-height: 17rem;
  display: flex;
  flex-direction: column;
  padding: clamp(1rem, 1.5vw, 1.3rem);
  border: 1px solid rgba(247, 247, 244, 0.14);
  border-top: 3px solid #2e7d32;
  border-radius: 6px;
  color: #f7f7f4;
  background: #0d1813;
  text-decoration: none;
  transition: transform 180ms ease, border-color 180ms ease;
}

.mf-diaspora-desk__route:nth-child(2) {
  border-top-color: #f4c430;
}

.mf-diaspora-desk__route:nth-child(3) {
  border-top-color: #e53935;
}

.mf-diaspora-desk__route:nth-child(4) {
  border-top-color: #46a83e;
}

.mf-diaspora-desk__route:hover {
  transform: translateY(-2px);
  border-color: #f4c430;
}

.mf-diaspora-desk__route > span {
  color: #f4c430;
  font-size: 0.64rem;
  font-weight: 700;
  text-transform: uppercase;
}

.mf-diaspora-desk__route > strong {
  margin-top: 0.7rem;
  font: 700 clamp(1.7rem, 2.2vw, 2.4rem)/0.95 var(--font-display, "Bebas Neue", sans-serif);
}

.mf-diaspora-desk__route > p {
  color: rgba(247, 247, 244, 0.68);
  line-height: 1.5;
}

.mf-diaspora-desk__route > small {
  margin-top: auto;
  color: #d8ff2e;
  font-weight: 700;
}

.mf-diaspora-desk__footer {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding-top: 0.8rem;
  color: rgba(247, 247, 244, 0.62);
  font-size: 0.66rem;
  font-weight: 600;
}

.mf-diaspora-desk__footer span {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

.mf-diaspora-desk__footer i {
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 50%;
  background: #d8ff2e;
}

.mf-diaspora-desk__footer a {
  margin-left: auto;
  color: #f7f7f4;
}

/* The full desktop page should use the same wide editorial canvas as the desk. */
@media (min-width: 75rem) {
  html body.mf-diaspora-overview-page {
    --mf-content-max: var(--mf-diaspora-wide-shell);
    --mf-premium-shell: var(--mf-diaspora-wide-shell);
    --mf-exp-shell: min(calc(100% - 3rem), var(--mf-diaspora-wide-shell));
  }

  html body.mf-diaspora-overview-page main#main-content :where(
    .mf-di-shell,
    .mf-da-shell,
    .mf-diaspora-fix-shell,
    .mf-progressive-section
  ) {
    width: min(calc(100% - clamp(1.5rem, 3vw, 3rem)), var(--mf-diaspora-wide-shell)) !important;
    max-width: var(--mf-diaspora-wide-shell) !important;
  }

  html body.mf-diaspora-overview-page main#main-content .mf-progressive-section :where(.mf-di-shell, .mf-da-shell) {
    width: 100% !important;
    max-width: none !important;
  }

  html body.mf-diaspora-overview-page #mf-diaspora-section-app,
  html body.mf-diaspora-overview-page #mf-diaspora-section-app > .mf-diaspora-hub-lower {
    width: 100%;
    max-width: none;
  }
}

@media (max-width: 74.9375rem) {
  .mf-diaspora-desk__header,
  .mf-diaspora-desk__player-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .mf-diaspora-desk__intro {
    grid-template-columns: minmax(0, 1fr) minmax(17rem, 0.8fr);
  }

  .mf-diaspora-desk__route-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mf-diaspora-desk__route {
    min-height: 13rem;
  }
}

@media (max-width: 47.5rem) {
  html body.mf-diaspora-overview-page .mf-diaspora-now.mf-diaspora-desk-host > .mf-diaspora-desk {
    width: calc(100% - 1rem) !important;
  }

  .mf-diaspora-desk__header,
  .mf-diaspora-desk__intro {
    grid-template-columns: minmax(0, 1fr);
  }

  .mf-diaspora-desk__intro h1 {
    max-width: 15ch;
    font-size: clamp(2.3rem, 12vw, 3.5rem) !important;
  }

  .mf-diaspora-desk__stats {
    grid-template-columns: minmax(0, 1fr);
  }

  .mf-diaspora-desk__stats > span {
    border-right: 0;
    border-bottom: 1px solid rgba(247, 247, 244, 0.1);
  }

  .mf-diaspora-desk__stats > span:last-child {
    border-bottom: 0;
  }

  .mf-diaspora-desk__search > div {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.45rem;
  }

  .mf-diaspora-desk__tabs button {
    min-width: max-content;
    flex: 0 0 auto;
  }

  .mf-diaspora-player-feature {
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
  }

  .mf-diaspora-player-feature__media {
    aspect-ratio: 16 / 10;
  }

  .mf-diaspora-desk__player-rail {
    grid-auto-columns: minmax(14.5rem, 82vw);
  }

  .mf-diaspora-desk__route-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .mf-diaspora-desk__route {
    min-height: 11.5rem;
  }

  .mf-diaspora-desk__footer {
    align-items: flex-start;
    flex-direction: column;
  }

  .mf-diaspora-desk__footer a {
    margin-left: 0;
  }
}

@keyframes mf-diaspora-panel-in {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .mf-diaspora-overview-page .mf-diaspora-desk__panel.is-active {
    animation: none;
  }

  .mf-diaspora-player-feature__media img,
  .mf-diaspora-player-compact__media img,
  .mf-diaspora-desk__route {
    transition: none;
  }
}

/* global-accessibility.css */
/*
 * Global accessibility behavior
 *
 * JavaScript may add state classes, but presentation stays in this stylesheet.
 */

.mf-v42-page-title {
  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;
}

body.mf-v42-ready .site-header { min-height: 52px !important; }

body.mf-v42-ready .site-header__inner {
  min-height: 52px !important;
  gap: .55rem !important;
}

body.mf-v42-ready .site-brand img {
  width: 34px !important;
  height: 34px !important;
}

body.mf-v42-ready .site-nav__link,
body.mf-v42-ready .site-nav__toggle,
body.mf-v42-ready .site-header .site-button,
body.mf-v42-ready .site-header a {
  min-height: 44px !important;
}

body.mf-v42-ready main#main-content {
  padding-top: clamp(.5rem, 1vw, 1rem);
}

body.mf-v42-ready :where(
  .stl-btn,
  .site-button,
  .filter-btn,
  .mf-chip,
  .mf-wc-section-nav a,
  .mf-home-quicklinks a,
  .mc-date-tabs button,
  .mc-quick-tabs button,
  .mf-transfer-tabs button,
  .mf-worldcup-verified__filters button,
  .mf-wc-v42-tabs button,
  main button,
  a[class*="btn"],
  a[class*="button"]
) {
  min-height: 44px !important;
}

body.mf-v42-ready :where(main input, main select, main textarea) {
  min-height: 44px !important;
}

body.mf-v42-ready :where(
  nav a,
  nav button,
  .site-header button:not(.site-theme-toggle),
  .mf-page-actions a,
  .mf-page-actions button,
  .mf-chip-row a,
  .mf-chip-row button
) {
  min-height: 44px !important;
  display: inline-flex;
  align-items: center;
}

body.mf-v42-ready .mf-v42-tap-target,
body.mf-v42-ready main .mf-v42-tap-target.mf-v42-tap-target {
  min-width: 44px !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
}

body.mf-v42-ready :where(a, button, [role="button"], input, select, textarea):focus-visible {
  outline: 3px solid #d6ff1f !important;
  outline-offset: 3px !important;
}

body.mf-v42-ready .mf-wc-section-nav .stl-container,
body.mf-v42-ready .mf-home-quicklinks,
body.mf-v42-ready .mf-chip-row {
  gap: .55rem !important;
}

@media (max-width: 760px) {
  body.mf-v42-ready .site-nav__link,
  body.mf-v42-ready .site-nav__toggle,
  body.mf-v42-ready .site-header a,
  body.mf-v42-ready :where(
    .stl-btn,
    .site-button,
    .filter-btn,
    .mf-chip,
    .mf-wc-section-nav a,
    .mf-home-quicklinks a,
    button,
    a[class*="btn"],
    a[class*="button"]
  ),
  body.mf-v42-ready .site-drawer a,
  body.mf-v42-ready .site-drawer button {
    min-height: 44px !important;
  }
}

/* global-dynamic-states.css */
/*
 * Shared dynamic component states
 *
 * JavaScript owns state changes only. Presentation for conversion actions,
 * loading placeholders, reveal motion, and image failures belongs here.
 */

:root {
  --mf-conversion-primary: #d9ff36;
  --mf-conversion-ink: #07140c;
}

.mf-conversion-primary {
  background: var(--mf-conversion-primary) !important;
  border-color: transparent !important;
  color: var(--mf-conversion-ink) !important;
  box-shadow: 0 8px 24px rgba(187, 250, 51, 0.16);
  font-weight: 800 !important;
  min-block-size: 44px;
}

.mf-conversion-primary :where(strong, span, small) {
  color: var(--mf-conversion-ink) !important;
}

.mf-conversion-secondary {
  min-block-size: 44px;
}

.mf-conversion-primary:focus-visible,
.mf-conversion-secondary:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
}

.data-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  grid-column: 1 / -1;
  padding: 2.25rem 1rem;
}

.data-skeleton-card {
  display: grid;
  gap: 0.7rem;
  width: min(100%, 32rem);
}

.data-skeleton-line {
  display: block;
  height: 12px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.06));
  background-size: 200% 100%;
  animation: mf-skeleton-shift 1.1s linear infinite;
}

.data-skeleton-line--short {
  width: 52%;
}

@keyframes mf-skeleton-shift {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

.mo-reveal {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.5s ease, transform 0.5s cubic-bezier(0.34, 1.2, 0.64, 1);
}

.mo-reveal.mo-visible,
.mo-reveal.is-visible {
  opacity: 1;
  transform: none;
}

@keyframes moSlideIn {
  from { opacity: 0; transform: translateX(-14px) scale(0.95); }
  to { opacity: 1; transform: none; }
}

img.mf-image-fallback[data-mf-fallback-terminal="true"],
picture.mf-image-area-empty {
  display: none !important;
}

.mf-image-area-empty:empty {
  display: none !important;
}

@media (max-width: 48rem) {
  .mf-conversion-primary,
  .mf-conversion-secondary {
    min-block-size: 44px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .data-skeleton-line {
    animation: none;
  }

  .mo-reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* global-matchday-ticker.css */
/*
 * Global matchday ticker
 *
 * This file is the single presentation owner for the shared matchday ribbon.
 * JavaScript supplies data and state only; sizing and layout remain in CSS.
 */

html body.mf-page-shell .mf-score-ribbon,
html body.mf-v42-ready .mf-score-ribbon,
html body .mf-score-ribbon.mf-polish-ticker-open {
  --mf-ticker-progress: 16.667%;
  position: relative;
  z-index: 80;
  box-sizing: border-box;
  display: grid !important;
  grid-template-columns: 124px minmax(0, 1fr) 132px 76px 92px !important;
  align-items: center !important;
  width: 100%;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #07120b;
  color: #f7fbff;
  border-block: 1px solid rgba(244, 196, 48, .32);
}

html body.mf-home-v22 .mf-score-ribbon.mf-polish-ticker-open {
  display: grid !important;
}

.mf-score-ribbon::after {
  content: "";
  position: absolute;
  z-index: 4;
  inset: auto 0 0;
  width: var(--mf-ticker-progress);
  height: 2px;
  background: linear-gradient(90deg, #e53935 0 33%, #f4c430 33% 66%, #46a83e 66%);
  transition: width .35s ease;
  pointer-events: none;
}

.mf-score-ribbon__brand {
  box-sizing: border-box;
  display: flex !important;
  align-items: center !important;
  gap: .48rem;
  width: 124px !important;
  min-width: 124px !important;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  padding: 0 .72rem;
  overflow: hidden;
  background: #080b0b;
  color: #f7f7f4;
  text-decoration: none;
  white-space: nowrap;
  border-inline-end: 1px solid rgba(244, 196, 48, .24);
}

.mf-score-ribbon__brand img {
  display: block !important;
  width: 30px !important;
  height: 30px !important;
  object-fit: contain !important;
  flex: 0 0 30px !important;
}

.mf-score-ribbon__brand span {
  font-size: .68rem !important;
  font-weight: 800 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase;
}

.mf-score-ribbon__brand span::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: .38rem;
  border-radius: 50%;
  background: #e53935;
  box-shadow: 0 0 0 4px rgba(229, 57, 53, .14);
  animation: mfTickerLive 1.8s ease-in-out infinite;
}

@keyframes mfTickerLive {
  50% { opacity: .45; transform: scale(.72); }
}

.mf-score-ribbon__rail {
  box-sizing: border-box;
  display: flex !important;
  align-items: stretch !important;
  min-width: 0 !important;
  width: 100%;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  background: #0b1517;
}

.mf-score-ribbon__rail::-webkit-scrollbar { display: none; }

.mf-score-ribbon__track {
  box-sizing: border-box;
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: stretch !important;
  align-content: stretch !important;
  width: max-content !important;
  min-width: max-content !important;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  overflow: visible !important;
  transform: none !important;
  animation: none !important;
  will-change: auto !important;
}

.mf-score-ribbon__card {
  position: relative;
  box-sizing: border-box;
  display: grid !important;
  grid-template-areas: "league date" "match score" "meta meta" !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-rows: 12px 23px 12px !important;
  align-content: center !important;
  column-gap: .5rem;
  row-gap: 1px;
  scroll-snap-align: start;
  flex: 0 0 252px !important;
  width: 252px !important;
  min-width: 252px !important;
  max-width: 252px !important;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  margin: 0 !important;
  padding: .32rem .72rem !important;
  overflow: hidden !important;
  border-inline-end: 1px solid rgba(244, 196, 48, .16);
  background: #0b1517;
  color: #f7f7f4;
  text-decoration: none;
  transition: background-color .2s ease, box-shadow .2s ease;
}

.mf-score-ribbon__card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: transparent;
  transition: background-color .2s ease;
}

.mf-score-ribbon__card.is-current {
  background: #10201e;
  box-shadow: inset 0 1px 0 rgba(70, 168, 62, .2);
}

.mf-score-ribbon__card.is-current::before { background: #f4c430; }
.mf-score-ribbon__card:hover { background: #132823; }

.mf-score-ribbon__league,
.mf-score-ribbon__date,
.mf-score-ribbon__card small {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  font-size: .58rem !important;
  line-height: 1 !important;
  letter-spacing: .06em !important;
  font-weight: 700 !important;
}

.mf-score-ribbon__league {
  grid-area: league;
  color: #f4c430;
  text-transform: uppercase;
}

.mf-score-ribbon__date {
  grid-area: date;
  text-align: right;
  color: #b9c7c2;
}

.mf-score-ribbon__card small {
  grid-area: meta;
  color: #a9b7b2;
}

.mf-score-ribbon__match {
  grid-area: match;
  display: flex !important;
  align-items: center !important;
  gap: .38rem;
  min-width: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  font-size: .82rem !important;
  line-height: 1 !important;
  font-weight: 800;
}

.mf-score-ribbon__team {
  display: inline-flex !important;
  align-items: center !important;
  gap: .3rem;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.mf-score-ribbon__team img,
.mf-score-ribbon__mark {
  display: block !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  object-fit: contain !important;
  flex: 0 0 24px !important;
}

.mf-score-ribbon__team b { font-size: .78rem !important; }

.mf-score-ribbon__match em {
  color: #778883 !important;
  font-size: .56rem !important;
  font-style: normal !important;
  text-transform: uppercase;
}

.mf-score-ribbon__scoreline {
  grid-area: score;
  align-self: center;
  color: #f4c430;
  font-size: .9rem;
  font-variant-numeric: tabular-nums;
}

.mf-score-ribbon__controls {
  box-sizing: border-box;
  display: grid !important;
  grid-template-columns: repeat(3, 44px);
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  background: #080b0b;
  border-inline-start: 1px solid rgba(244, 196, 48, .22);
}

.mf-score-ribbon__controls button,
.mf-score-ribbon__visibility,
.mf-score-ribbon__utility {
  box-sizing: border-box;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  padding: 0;
  border: 0;
  border-inline-end: 1px solid rgba(244, 196, 48, .16);
  background: #080b0b;
  color: #f7f7f4;
  font: inherit;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}

.mf-score-ribbon__controls button {
  width: 44px !important;
  min-width: 44px !important;
  font-size: 1.35rem !important;
}

.mf-score-ribbon__toggle span {
  font-size: .74rem !important;
  letter-spacing: -.12em;
}

.mf-score-ribbon__visibility {
  width: 76px !important;
  min-width: 76px !important;
  font-size: .64rem !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
}

.mf-score-ribbon__utility {
  width: 92px !important;
  min-width: 92px !important;
  padding: 0 .6rem;
  color: #f4c430 !important;
  font-size: .62rem !important;
  font-weight: 800 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase;
}

.mf-score-ribbon__controls button:hover,
.mf-score-ribbon__visibility:hover,
.mf-score-ribbon__utility:hover {
  background: #14201b;
  color: #f4c430;
}

.mf-score-ribbon :is(button, a):focus-visible {
  outline: 3px solid #f4c430 !important;
  outline-offset: -3px !important;
}

@media (prefers-reduced-motion: reduce) {
  .mf-score-ribbon__brand span::before { animation: none; }
  .mf-score-ribbon__rail { scroll-behavior: auto; }
}

@media (max-width: 760px) {
  html body.mf-page-shell .mf-score-ribbon,
  html body.mf-home-v22 .mf-score-ribbon,
  html body .mf-score-ribbon.mf-polish-ticker-open {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 132px !important;
    grid-template-rows: 58px !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
  }

  .mf-score-ribbon__brand,
  .mf-score-ribbon__visibility,
  .mf-score-ribbon__utility { display: none !important; }

  html body .mf-score-ribbon__rail,
  html body .mf-score-ribbon.mf-polish-ticker-open .mf-score-ribbon__rail {
    display: flex !important;
    grid-column: auto !important;
    grid-row: auto !important;
    min-width: 0 !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
  }

  .mf-score-ribbon__track,
  .mf-score-ribbon__card {
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
  }

  .mf-score-ribbon__card {
    flex-basis: clamp(220px, calc(100vw - 132px), 252px) !important;
    width: clamp(220px, calc(100vw - 132px), 252px) !important;
    min-width: clamp(220px, calc(100vw - 132px), 252px) !important;
    max-width: clamp(220px, calc(100vw - 132px), 252px) !important;
    padding-inline: .62rem !important;
  }

  .mf-score-ribbon__controls {
    grid-template-columns: repeat(3, 44px);
    width: 132px !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
  }

  .mf-score-ribbon__controls button {
    width: 44px !important;
    min-width: 44px !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
  }

  .mf-polish-ticker-toggle { display: none !important; }
}

/* global-hero-density.css */
/*
 * Shared hero density layer.
 *
 * Route styles own the visual treatment; this final runtime layer owns only
 * first-viewport height and rhythm so every public hero remains compact.
 */

:root {
  --mf-hero-pad-block: clamp(0.9rem, 1.65vw, 1.5rem);
  --mf-hero-grid-gap: clamp(0.8rem, 1.55vw, 1.3rem);
}

html body main#main-content > section:where(
  [class*="-hero"],
  [class*="__hero"]
) {
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  padding-block: var(--mf-hero-pad-block) !important;
}

/* Legacy routes often put a second large height and vertical padding on the
   hero's inner grid. Reset only direct hero wrappers, leaving card internals
   and route-specific columns untouched. */
html body main#main-content > section:where(
  [class*="-hero"],
  [class*="__hero"]
) > :where(
  .stl-container,
  .mf-core-container,
  .mf-v22-container,
  .mf-di-shell,
  [class*="__grid"],
  [class*="__inner"]
) {
  min-height: 0 !important;
  height: auto !important;
  padding-block: 0 !important;
}

html body main#main-content > section:where(
  [class*="-hero"],
  [class*="__hero"]
) > :where(
  .stl-container,
  .mf-core-container,
  .mf-v22-container,
  .mf-di-shell,
  [class*="__grid"],
  [class*="__inner"]
):is([class*="grid"], [class*="inner"]) {
  gap: var(--mf-hero-grid-gap) !important;
}

html body main#main-content > section:where(
  [class*="-hero"],
  [class*="__hero"]
) :where(h1, .mf-core-title, .mf-unified-hero-title) {
  max-width: 15ch;
  margin-block: 0.35rem 0.55rem !important;
  font-size: clamp(2.15rem, 3.6vw, 3.7rem) !important;
  line-height: 0.94 !important;
  text-wrap: balance;
}

html body main#main-content > section:where(
  [class*="-hero"],
  [class*="__hero"]
) :where(
  .mf-core-actions,
  .mf-v22-actions,
  .mf-v22-hero__actions,
  .mf-daily-hero__actions,
  .mf-worldcup-hero__actions,
  .mf-transfer-hero__actions,
  .mf-youth-hero__actions,
  .mf-actions,
  .stl-actions
) {
  margin-top: 0.75rem !important;
  gap: 0.5rem !important;
}

@media (max-width: 47.99rem) {
  :root {
    --mf-hero-pad-block: 0.85rem;
    --mf-hero-grid-gap: 0.75rem;
  }

  html body main#main-content > section:where(
    [class*="-hero"],
    [class*="__hero"]
  ) :where(h1, .mf-core-title, .mf-unified-hero-title) {
    max-width: 16ch;
    font-size: clamp(2rem, 10vw, 2.8rem) !important;
    line-height: 0.96 !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body main#main-content > section:where(
    [class*="-hero"],
    [class*="__hero"]
  ) * {
    scroll-behavior: auto !important;
  }
}


/* Source: /assets/css/diaspora-command-center-v6.css */
body.mf-diaspora-v6 {
  --dv6-ink: #f7f7f4;
  --dv6-muted: #aeb8b3;
  --dv6-deep: #030907;
  --dv6-panel: #07140f;
  --dv6-line: rgba(244, 196, 48, 0.3);
  --dv6-green: #46a83e;
  --dv6-lime: #b9f22f;
  --dv6-gold: #f4c430;
  --dv6-red: #e53935;
  background: var(--dv6-deep);
  color: var(--dv6-ink);
}

body.mf-diaspora-v6 .mf-v42-page-title,
body.mf-diaspora-v6 main > .mf-v44-strip,
body.mf-diaspora-v6 main > .mf-ocn--diaspora {
  display: none !important;
}

.mf-diaspora-v6 main#main-content {
  overflow: clip;
  background: linear-gradient(90deg, rgba(229, 57, 53, 0.07), transparent 24%),
    radial-gradient(circle at 86% 12%, rgba(70, 168, 62, 0.1), transparent 30%), var(--dv6-deep);
}

.mf-dv6,
.mf-dv6 * { box-sizing: border-box; }

.mf-dv6 {
  width: min(100% - 32px, 1540px);
  margin-inline: auto;
  padding: 24px 0 56px;
  font-family: var(--font-body, "Montserrat", sans-serif);
}

.mf-dv6 a,
.mf-dv6 button,
.mf-dv6 input,
.mf-dv6 select { font: inherit; }

.mf-dv6 button,
.mf-dv6 a { -webkit-tap-highlight-color: transparent; }

.mf-dv6__loading,
.mf-dv6__noscript {
  min-height: 440px;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 10px;
  border: 1px solid var(--dv6-line);
  background: var(--dv6-panel);
  text-align: center;
}

.mf-dv6__loading strong {
  font-family: var(--font-display, "Bebas Neue", sans-serif);
  font-size: 2rem;
  font-weight: 400;
  text-transform: uppercase;
}

.mf-dv6__loading > span:last-child,
.mf-dv6__noscript p { color: var(--dv6-muted); }

.mf-dv6__scan {
  width: 54px;
  height: 4px;
  background: linear-gradient(90deg, var(--dv6-red), var(--dv6-gold), var(--dv6-green));
}

.mf-dv6__noscript a { color: var(--dv6-lime); }

.mf-dv6__hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.28fr) minmax(320px, 0.72fr);
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--dv6-line);
  background: var(--dv6-line);
}

.mf-dv6__hero::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  z-index: 2;
  height: 3px;
  background: linear-gradient(90deg, var(--dv6-green) 0 35%, var(--dv6-gold) 35% 68%, var(--dv6-red) 68% 100%);
}

.mf-dv6__identity,
.mf-dv6__pulse { min-width: 0; background: rgba(3, 12, 9, 0.97); }

.mf-dv6__identity {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 0.48fr);
  gap: 28px;
  align-items: end;
  padding: clamp(28px, 4vw, 56px);
  background: linear-gradient(90deg, rgba(3, 12, 9, 0.98) 0 62%, rgba(3, 12, 9, 0.72)),
    url("/assets/brand-v2/backgrounds/mf-background-16x9.webp") right center / cover no-repeat;
}

.mf-dv6__eyebrow,
.mf-dv6__label,
.mf-dv6__meta,
.mf-dv6__tab,
.mf-dv6__filter-label {
  font-family: var(--font-body, "Montserrat", sans-serif);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.mf-dv6__eyebrow,
.mf-dv6__label,
.mf-dv6__filter-label { color: var(--dv6-gold); }

.mf-dv6__identity h1,
.mf-dv6__section-heading h2,
.mf-dv6__feature-copy h2,
.mf-dv6__panel-title h2,
.mf-dv6__pathway h3,
.mf-dv6__source h3,
.mf-dv6__story h3,
.mf-dv6__result h3 {
  margin: 0;
  font-family: var(--font-display, "Bebas Neue", sans-serif);
  font-weight: 400;
  letter-spacing: 0;
  text-transform: uppercase;
}

.mf-dv6__identity h1 {
  max-width: 690px;
  margin-top: 9px;
  font-size: clamp(3.2rem, 6vw, 6.4rem);
  line-height: 0.86;
}

.mf-dv6__identity-copy > p {
  max-width: 690px;
  margin: 20px 0 0;
  color: #d2d9d5;
  font-size: clamp(0.94rem, 1.15vw, 1.08rem);
  line-height: 1.62;
}

.mf-dv6__hero-actions,
.mf-dv6__feature-actions,
.mf-dv6__links { display: flex; flex-wrap: wrap; gap: 9px; }
.mf-dv6__hero-actions { margin-top: 24px; }

.mf-dv6__action,
.mf-dv6__mini-action {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(244, 196, 48, 0.4);
  background: #08120e;
  color: var(--dv6-ink);
  text-decoration: none;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.03em;
}

.mf-dv6__action { padding: 0 17px; }
.mf-dv6__action--primary { border-color: var(--dv6-gold); background: var(--dv6-gold); color: #071009; }
.mf-dv6__action--utility { cursor: pointer; }
.mf-dv6__action--utility[aria-pressed="true"] { border-color: var(--dv6-lime); color: var(--dv6-lime); }

.mf-dv6__action:hover,
.mf-dv6__action:focus-visible,
.mf-dv6__mini-action:hover,
.mf-dv6__mini-action:focus-visible { border-color: var(--dv6-lime); background: var(--dv6-lime); color: #071009; }

.mf-dv6__hero-stats { display: grid; gap: 8px; align-content: end; }
.mf-dv6__hero-stat { display: grid; grid-template-columns: auto 1fr; align-items: baseline; gap: 10px; padding: 10px 0; border-bottom: 1px solid rgba(247, 247, 244, 0.13); }
.mf-dv6__hero-stat strong { color: var(--dv6-gold); font-family: var(--font-display, "Bebas Neue", sans-serif); font-size: 2rem; font-weight: 400; }
.mf-dv6__hero-stat span { color: var(--dv6-muted); font-size: 0.73rem; font-weight: 600; text-transform: uppercase; }

.mf-dv6__pulse { padding: 30px; }
.mf-dv6__pulse-head,
.mf-dv6__section-heading,
.mf-dv6__panel-title,
.mf-dv6__results-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.mf-dv6__pulse-head strong { font-size: 0.78rem; }
.mf-dv6__freshness { display: inline-flex; align-items: center; gap: 7px; color: var(--dv6-muted); font-size: 0.7rem; font-weight: 600; }
.mf-dv6__freshness::before,
.mf-dv6__trust-dot { content: ""; width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: var(--dv6-green); box-shadow: 0 0 0 4px rgba(70, 168, 62, 0.13); }
.mf-dv6__pulse-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-top: 24px; }
.mf-dv6__pulse-card { min-height: 100px; padding: 14px; border: 1px solid rgba(247, 247, 244, 0.12); background: #09150f; }
.mf-dv6__pulse-card strong { display: block; margin-top: 20px; font-family: var(--font-display, "Bebas Neue", sans-serif); font-size: 1.35rem; font-weight: 400; line-height: 1; text-transform: uppercase; }
.mf-dv6__pulse-card span { color: var(--dv6-muted); font-size: 0.65rem; font-weight: 700; text-transform: uppercase; }
.mf-dv6__pulse-note { margin: 22px 0 0; padding-top: 18px; border-top: 1px solid rgba(244, 196, 48, 0.22); color: var(--dv6-muted); font-size: 0.78rem; line-height: 1.5; }

.mf-dv6__command {
  position: sticky;
  top: var(--site-header-height, 72px);
  z-index: 14;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: end;
  padding: 14px 18px;
  border: 1px solid var(--dv6-line);
  border-top: 0;
  background: rgba(3, 9, 7, 0.96);
  backdrop-filter: blur(14px);
}

.mf-dv6__search-row { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(150px, 0.32fr) minmax(150px, 0.32fr); gap: 8px; }
.mf-dv6__search-row input,
.mf-dv6__search-row select { width: 100%; min-height: 44px; border: 1px solid rgba(247, 247, 244, 0.18); border-radius: 0; background: #050c09; color: var(--dv6-ink); padding: 0 13px; font-size: 0.8rem; }
.mf-dv6__search-row input:focus,
.mf-dv6__search-row select:focus { outline: 2px solid var(--dv6-gold); outline-offset: 1px; }
.mf-dv6__tabs { display: flex; gap: 5px; }
.mf-dv6__tab { min-height: 44px; padding: 0 14px; border: 1px solid rgba(247, 247, 244, 0.15); background: #07110d; color: var(--dv6-muted); cursor: pointer; }
.mf-dv6__tab[aria-selected="true"] { border-color: var(--dv6-gold); background: var(--dv6-gold); color: #071009; }
.mf-dv6__utility { margin-top: 10px; padding: 15px 18px; border: 1px solid rgba(247, 247, 244, 0.13); background: #07110d; }
.mf-dv6__utility-head { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.mf-dv6__utility-head h2 { margin-top: 4px; font-size: clamp(1.65rem, 2.2vw, 2.35rem); line-height: 0.95; }
.mf-dv6__utility-actions { display: flex; align-items: stretch; gap: 8px; }
.mf-dv6__utility-actions button,
.mf-dv6__utility-actions > span { min-height: 44px; display: inline-flex; align-items: center; gap: 6px; padding: 0 13px; border: 1px solid rgba(244, 196, 48, 0.34); background: #050c09; color: var(--dv6-muted); font: inherit; font-size: 0.67rem; font-weight: 700; text-transform: uppercase; }
.mf-dv6__utility-actions button { cursor: pointer; }
.mf-dv6__utility-actions button.is-active { border-color: var(--dv6-lime); background: rgba(70, 168, 62, 0.16); color: var(--dv6-ink); }
.mf-dv6__utility-actions strong { color: var(--dv6-gold); font-family: var(--font-display, "Bebas Neue", sans-serif); font-size: 1.45rem; font-weight: 400; }
.mf-dv6__compare-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; margin-top: 12px; }
.mf-dv6__compare-card { min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 12px; border: 1px solid rgba(247, 247, 244, 0.12); background: #09150f; }
.mf-dv6__compare-card div { min-width: 0; }
.mf-dv6__compare-card strong,
.mf-dv6__compare-card small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mf-dv6__compare-card strong { margin-top: 3px; font-size: 0.78rem; }
.mf-dv6__compare-card small { margin-top: 2px; color: var(--dv6-muted); font-size: 0.62rem; }
.mf-dv6__compare-card button { flex: 0 0 auto; border: 0; background: transparent; color: var(--dv6-gold); font: inherit; font-size: 0.62rem; font-weight: 700; cursor: pointer; }
.mf-dv6__compare-help { align-self: center; margin: 0; color: var(--dv6-muted); font-size: 0.7rem; line-height: 1.45; }
.mf-dv6__utility-status { min-height: 1em; margin: 8px 0 0; color: var(--dv6-lime); font-size: 0.66rem; }
.mf-dv6__stage { margin-top: 18px; }
.mf-dv6__panel[hidden] { display: none !important; }
.mf-dv6__panel--players { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(290px, 0.55fr); gap: 18px; }

.mf-dv6__feature { min-width: 0; display: grid; grid-template-columns: minmax(300px, 0.9fr) minmax(300px, 1.1fr); min-height: 480px; border: 1px solid var(--dv6-line); background: var(--dv6-panel); }
.mf-dv6__feature-media { position: relative; min-height: 390px; overflow: hidden; background: linear-gradient(145deg, rgba(244, 196, 48, 0.14), transparent 45%), #0c1712; }
.mf-dv6__feature-media img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: var(--player-focus, 50% 35%); }
.mf-dv6__feature-media::after { content: ""; position: absolute; inset: auto 0 0; height: 30%; background: linear-gradient(transparent, rgba(3, 9, 7, 0.84)); pointer-events: none; }
.mf-dv6__image-pending { width: 100%; height: 100%; min-height: 390px; display: grid; place-items: center; padding: 32px; text-align: center; color: var(--dv6-muted); }
.mf-dv6__image-pending img { width: 76px; height: auto; margin: 0 auto 18px; object-fit: contain; }
.mf-dv6__image-pending strong { display: block; color: var(--dv6-ink); font-family: var(--font-display, "Bebas Neue", sans-serif); font-size: 1.8rem; font-weight: 400; text-transform: uppercase; }
.mf-dv6__feature-copy { display: flex; flex-direction: column; min-width: 0; padding: clamp(24px, 3vw, 40px); }
.mf-dv6__feature-copy h2 { margin-top: 9px; font-size: clamp(2.6rem, 4.5vw, 5rem); line-height: 0.9; }
.mf-dv6__feature-role { margin: 12px 0 0; color: var(--dv6-gold); font-size: 0.82rem; font-weight: 700; }
.mf-dv6__feature-story { margin: 22px 0 0; color: #cad3ce; font-size: 0.88rem; line-height: 1.65; }
.mf-dv6__feature-path { margin: auto 0 0; padding: 18px 0; border-top: 1px solid rgba(247, 247, 244, 0.14); border-bottom: 1px solid rgba(247, 247, 244, 0.14); }
.mf-dv6__feature-path strong { display: block; margin-top: 6px; font-size: 0.9rem; line-height: 1.45; }
.mf-dv6__feature-actions { margin-top: 18px; }
.mf-dv6__meta { display: block; margin-top: 15px; color: var(--dv6-muted); line-height: 1.45; }

.mf-dv6__rail { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 8px; }
.mf-dv6__rail-card { display: grid; grid-template-columns: 68px minmax(0, 1fr); min-width: 0; min-height: 76px; padding: 0; overflow: hidden; border: 1px solid rgba(247, 247, 244, 0.14); background: #07110d; color: var(--dv6-ink); text-align: left; cursor: pointer; }
.mf-dv6__rail-card[aria-pressed="true"] { border-color: var(--dv6-gold); box-shadow: inset 3px 0 var(--dv6-gold); }
.mf-dv6__rail-card img { width: 68px; height: 100%; min-height: 74px; object-fit: cover; }
.mf-dv6__rail-copy { min-width: 0; padding: 11px; }
.mf-dv6__rail-copy strong,
.mf-dv6__rail-copy span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mf-dv6__rail-copy strong { font-size: 0.74rem; }
.mf-dv6__rail-copy span { margin-top: 5px; color: var(--dv6-muted); font-size: 0.62rem; }

.mf-dv6__side { display: grid; align-content: start; gap: 12px; }
.mf-dv6__side-block { padding: 20px; border: 1px solid var(--dv6-line); background: var(--dv6-panel); }
.mf-dv6__side-block h2 { margin: 7px 0 0; font-family: var(--font-display, "Bebas Neue", sans-serif); font-size: 1.9rem; font-weight: 400; text-transform: uppercase; }
.mf-dv6__change { margin-top: 16px; padding-left: 14px; border-left: 3px solid var(--dv6-gold); }
.mf-dv6__change strong,
.mf-dv6__change span,
.mf-dv6__change small { display: block; }
.mf-dv6__change strong { font-size: 0.82rem; }
.mf-dv6__change span,
.mf-dv6__change small { margin-top: 5px; color: var(--dv6-muted); font-size: 0.69rem; line-height: 1.45; }
.mf-dv6__change a { display: inline-block; margin-top: 9px; color: var(--dv6-lime); font-size: 0.68rem; font-weight: 700; }
.mf-dv6__country-list { display: grid; gap: 4px; margin-top: 14px; }
.mf-dv6__country-button { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; align-items: center; gap: 9px; min-height: 38px; padding: 5px 8px; border: 1px solid transparent; background: transparent; color: var(--dv6-ink); text-align: left; cursor: pointer; }
.mf-dv6__country-button:hover,
.mf-dv6__country-button:focus-visible { border-color: rgba(244, 196, 48, 0.4); background: rgba(244, 196, 48, 0.06); }
.mf-dv6__country-button img { width: 24px; height: 16px; object-fit: cover; }
.mf-dv6__country-button span,
.mf-dv6__country-button strong { font-size: 0.7rem; }
.mf-dv6__country-button span { min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; word-break: normal; }
.mf-dv6__country-button strong { color: var(--dv6-gold); }
.mf-dv6__trust-list { display: grid; gap: 11px; margin: 15px 0 0; padding: 0; list-style: none; }
.mf-dv6__trust-list li { display: grid; grid-template-columns: 8px 1fr; gap: 9px; color: var(--dv6-muted); font-size: 0.7rem; line-height: 1.45; }

.mf-dv6__panel-shell { padding: clamp(22px, 3vw, 38px); border: 1px solid var(--dv6-line); background: var(--dv6-panel); }
.mf-dv6__section-heading h2,
.mf-dv6__panel-title h2 { margin-top: 5px; font-size: clamp(2rem, 3vw, 3.4rem); line-height: 0.95; }
.mf-dv6__section-heading p,
.mf-dv6__panel-title p { max-width: 620px; margin: 8px 0 0; color: var(--dv6-muted); font-size: 0.8rem; line-height: 1.55; }
.mf-dv6__pathway-grid,
.mf-dv6__source-grid,
.mf-dv6__story-grid { display: grid; gap: 10px; margin-top: 24px; }
.mf-dv6__pathway-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.mf-dv6__pathway { min-width: 0; display: flex; flex-direction: column; min-height: 310px; padding: 20px; border: 1px solid rgba(247, 247, 244, 0.14); border-top: 3px solid var(--route-color, var(--dv6-green)); background: #09140f; }
.mf-dv6__pathway-count { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.mf-dv6__pathway-count strong { color: var(--dv6-gold); font-family: var(--font-display, "Bebas Neue", sans-serif); font-size: 2.2rem; font-weight: 400; }
.mf-dv6__pathway h3 { margin-top: 18px; font-size: 1.7rem; line-height: 1; }
.mf-dv6__pathway p { color: var(--dv6-muted); font-size: 0.72rem; line-height: 1.5; }
.mf-dv6__pathway-players { display: flex; flex-wrap: wrap; gap: 6px; margin: auto 0 16px; }
.mf-dv6__pathway-players a { padding: 6px 8px; border: 1px solid rgba(247, 247, 244, 0.16); color: var(--dv6-ink); text-decoration: none; font-size: 0.62rem; }
.mf-dv6__source-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mf-dv6__source { min-height: 190px; display: flex; flex-direction: column; padding: 20px; border: 1px solid rgba(247, 247, 244, 0.14); background: #09140f; }
.mf-dv6__source h3 { margin-top: 16px; font-size: 1.6rem; }
.mf-dv6__source p { color: var(--dv6-muted); font-size: 0.72rem; line-height: 1.5; }
.mf-dv6__source a { margin-top: auto; color: var(--dv6-lime); font-size: 0.68rem; font-weight: 700; }
.mf-dv6__story-grid { grid-template-columns: minmax(0, 1.35fr) repeat(2, minmax(0, 0.8fr)); }
.mf-dv6__story { min-height: 230px; display: flex; flex-direction: column; padding: 24px; border: 1px solid rgba(247, 247, 244, 0.14); background: #09140f; text-decoration: none; color: var(--dv6-ink); }
.mf-dv6__story:first-child { background: linear-gradient(90deg, rgba(3, 9, 7, 0.94), rgba(3, 9, 7, 0.6)), url("/assets/brand-v2/backgrounds/mf-background-16x9.webp") center / cover; }
.mf-dv6__story h3 { max-width: 500px; margin-top: 40px; font-size: clamp(2rem, 3vw, 3.4rem); line-height: 0.95; }
.mf-dv6__story span:last-child { margin-top: auto; color: var(--dv6-lime); font-size: 0.72rem; font-weight: 700; }

.mf-dv6__results { margin-top: 18px; padding: clamp(22px, 3vw, 38px); border: 1px solid var(--dv6-line); background: rgba(7, 20, 15, 0.86); }
.mf-dv6__results-head p { margin: 4px 0 0; color: var(--dv6-muted); font-size: 0.75rem; }
.mf-dv6__result-count { color: var(--dv6-gold); font-family: var(--font-display, "Bebas Neue", sans-serif); font-size: 2.2rem; }
.mf-dv6__result-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: start; gap: 9px; margin-top: 18px; }
.mf-dv6__result-shell { position: relative; min-width: 0; }
.mf-dv6__result { min-width: 0; display: grid; grid-template-columns: 88px minmax(0, 1fr); min-height: 132px; overflow: hidden; border: 1px solid rgba(247, 247, 244, 0.13); background: #07110d; color: var(--dv6-ink); text-decoration: none; }
.mf-dv6__result-media { height: 132px; min-height: 132px; background: #101c16; }
.mf-dv6__result-media img { width: 100%; height: 100%; display: block; object-fit: cover; }
.mf-dv6__result-media--flag { display: grid; place-items: center; padding: 20px; }
.mf-dv6__result-media--flag img { height: auto; object-fit: contain; }
.mf-dv6__result-copy { min-width: 0; padding: 14px 58px 38px 14px; }
.mf-dv6__result h3 { margin-top: 10px; font-size: 1.4rem; line-height: 1; }
.mf-dv6__result p,
.mf-dv6__result small { display: block; margin: 6px 0 0; overflow: hidden; color: var(--dv6-muted); font-size: 0.64rem; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.mf-dv6__result-save { position: absolute; right: 7px; bottom: 7px; min-height: 26px; padding: 0 8px; border: 1px solid rgba(244, 196, 48, 0.35); background: rgba(3, 9, 7, 0.94); color: var(--dv6-gold); font: inherit; font-size: 0.58rem; font-weight: 700; cursor: pointer; }
.mf-dv6__result-save[aria-pressed="true"] { border-color: var(--dv6-lime); color: var(--dv6-lime); }
.mf-dv6__empty,
.mf-dv6__error { grid-column: 1 / -1; padding: 26px; border: 1px dashed rgba(244, 196, 48, 0.35); color: var(--dv6-muted); text-align: center; }
.mf-dv6__error { min-height: 420px; display: grid; place-content: center; gap: 10px; }
.mf-dv6__error--inline {
  min-height: 0;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin: 0 0 16px;
  padding: 10px 12px;
  border-style: solid;
  text-align: left;
}
.mf-dv6__error--inline p { margin: 0; font-size: 0.72rem; line-height: 1.45; }
.mf-dv6__footer-band { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 20px; margin-top: 18px; padding: 18px 22px; border: 1px solid rgba(247, 247, 244, 0.12); background: #07110d; }
.mf-dv6__footer-band p { margin: 0; color: var(--dv6-muted); font-size: 0.72rem; line-height: 1.55; }

@media (hover: hover) {
  .mf-dv6__rail-card,
  .mf-dv6__result,
  .mf-dv6__pathway,
  .mf-dv6__source,
  .mf-dv6__story { transition: transform 180ms ease, border-color 180ms ease; }
  .mf-dv6__rail-card:hover,
  .mf-dv6__result:hover,
  .mf-dv6__pathway:hover,
  .mf-dv6__source:hover,
  .mf-dv6__story:hover { transform: translateY(-2px); border-color: rgba(185, 242, 47, 0.52); }
}

@media (max-width: 1180px) {
  .mf-dv6__hero,
  .mf-dv6__panel--players { grid-template-columns: 1fr; }
  .mf-dv6__pulse-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  body .mf-dv6__pathway-grid,
  .mf-dv6__result-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  .mf-dv6__identity,
  .mf-dv6__feature,
  .mf-dv6__story-grid { grid-template-columns: 1fr; }
  .mf-dv6__hero-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .mf-dv6__command { position: static; grid-template-columns: 1fr; }
  .mf-dv6__search-row,
  body .mf-dv6__source-grid { grid-template-columns: 1fr 1fr; }
  .mf-dv6__search-row input { grid-column: 1 / -1; }
  .mf-dv6__tabs { overflow-x: auto; padding-bottom: 2px; }
  .mf-dv6__tab { flex: 0 0 auto; }
  .mf-dv6__compare-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .mf-dv6 { width: min(100% - 20px, 1540px); padding-top: 12px; }
  .mf-dv6__identity,
  .mf-dv6__pulse,
  .mf-dv6__panel-shell,
  .mf-dv6__results { padding: 20px; }
  .mf-dv6__identity h1 { font-size: clamp(3rem, 15vw, 4.6rem); }
  .mf-dv6__hero-stats,
  .mf-dv6__pulse-grid,
  .mf-dv6__search-row,
  .mf-dv6__rail,
  .mf-dv6__pathway-grid,
  .mf-dv6__source-grid,
  .mf-dv6__result-grid { grid-template-columns: 1fr; }
  .mf-dv6__hero-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
  .mf-dv6__hero-stat { display: block; min-width: 0; padding: 12px 4px; }
  .mf-dv6__hero-stat strong,
  .mf-dv6__hero-stat span { display: block; }
  .mf-dv6__hero-stat span { margin-top: 4px; font-size: 0.57rem; line-height: 1.35; }
  .mf-dv6__feature-media,
  .mf-dv6__image-pending { min-height: 320px; }
  .mf-dv6__feature-copy h2 { font-size: 3.2rem; }
  .mf-dv6__section-heading,
  .mf-dv6__panel-title,
  .mf-dv6__results-head { flex-direction: column; align-items: flex-start; }
  .mf-dv6__footer-band { grid-template-columns: 1fr; }
  .mf-dv6__result { grid-template-columns: 104px minmax(0, 1fr); }
  .mf-dv6__error--inline { grid-template-columns: 1fr; }
  .mf-dv6__utility { padding: 15px; }
  .mf-dv6__utility-head { align-items: flex-start; flex-direction: column; }
  .mf-dv6__utility-actions { width: 100%; }
  .mf-dv6__utility-actions > * { flex: 1; justify-content: center; }
  .mf-dv6__compare-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .mf-dv6 *,
  .mf-dv6 *::before,
  .mf-dv6 *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; }
}
.mf-diaspora-v6 .mf-dv6 > :is(.mf-dv6__utility, .mf-dv6__stage, .mf-dv6__results, .mf-dv6__footer-band) {
  content-visibility: auto;
  contain-intrinsic-size: auto 760px;
}


/* Source: /assets/css/global-navigation.css */
/* One compact, readable navigation system on every public MoFutbol route. */
:root {
  --mf-global-header-height: 54px;
  --mf-global-ticker-height: 60px;
}

/* Reserve the asynchronously rendered shell so the page does not jump on load. */
html [data-site-header]:empty {
  display: block;
  min-height: calc(var(--mf-global-header-height) + var(--mf-global-ticker-height));
  background: #050b08;
}

@media (max-width: 700px) {
  html [data-site-header]:empty {
    min-height: calc(var(--mf-global-header-height) + var(--mf-global-ticker-height));
  }
}

/* The shared header is in normal document flow. Remove the legacy offset that
   was reserved for the former fixed header and created a blank strip above it. */
html body.site-app-ready {
  padding-top: 0 !important;
}

html body .site-header {
  top: 0 !important;
  min-height: var(--mf-global-header-height) !important;
}

html body .site-header .site-header__inner {
  width: min(calc(100% - 24px), 100rem) !important;
  max-width: 100rem !important;
  min-height: var(--mf-global-header-height) !important;
  gap: 8px !important;
  padding-block: 4px !important;
}

html body .site-header .site-brand {
  min-width: max-content !important;
}

html body .site-header .site-brand__logo {
  width: 34px !important;
  height: 34px !important;
}

html body .site-header .site-brand__tag {
  line-height: 1.1;
}

html body .site-header .site-nav {
  min-width: 0 !important;
  overflow: visible !important;
}

html body .site-header .site-nav__list {
  justify-content: center !important;
  gap: 2px !important;
}

html body .site-header .site-nav :where(.site-nav__link, .site-nav__toggle) {
  min-height: 44px !important;
  padding-inline: 7px !important;
  font-size: 0.68rem !important;
}

html body .site-header .site-header__actions {
  flex: 0 0 auto !important;
  gap: 5px !important;
}

/* Shared command-menu structure. Some focused PHP routes intentionally ship
   only the base component CSS; keep their menus identical to the full public
   pages instead of letting legacy block-link rules collapse the panel copy. */
html body .site-header .site-nav__panel {
  display: grid !important;
  gap: 0.5rem !important;
  overflow: hidden;
  z-index: 1200 !important;
  background: #08120d !important;
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.52) !important;
}

/* The navigation builder keeps every menu in the DOM, then marks inactive
   panels with the native `hidden` attribute. The shared grid rule above must
   not override that state, or an inactive off-screen panel widens the page. */
html body .site-header .site-nav__panel[hidden] {
  display: none !important;
}

html body .site-header .site-nav__panel-head {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.15rem 0.15rem 0.35rem;
}

html body .site-header .site-nav__panel-head > span {
  color: var(--stl-gold, #f5c842);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

html body .site-header .site-nav__panel-head > small {
  color: var(--color-muted, #aeb9ad);
  font-size: 0.67rem;
  white-space: nowrap;
}

html body .site-header .site-nav__panel-grid {
  display: grid !important;
  gap: 0.4rem !important;
}

html body .site-header .site-nav__panel[data-nav-size="medium"] {
  min-width: min(28rem, calc(100vw - 2rem)) !important;
}

html body .site-header .site-nav__panel[data-nav-size="large"] {
  min-width: min(34rem, calc(100vw - 2rem)) !important;
}

html body .site-header .site-nav__panel[data-nav-size="medium"] .site-nav__panel-grid,
html body .site-header .site-nav__panel[data-nav-size="large"] .site-nav__panel-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

html body .site-header .site-nav__panel[data-nav-size="medium"] .site-nav__panel-grid > a:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

html body .site-header .site-nav__panel :where(.site-nav__panel-feature, .site-nav__panel-grid > a) {
  display: grid !important;
  grid-template-columns: 2rem minmax(0, 1fr) 1.35rem !important;
  align-items: center !important;
  column-gap: 0.65rem !important;
  min-height: 4.1rem !important;
  padding: 0.7rem 0.75rem !important;
  text-decoration: none;
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 0.7rem;
}

html body .site-header .site-nav__panel-icon {
  display: inline-grid !important;
  place-items: center;
  width: 2rem !important;
  height: 2rem !important;
  line-height: 1 !important;
}

html body .site-header .site-nav__panel-copy {
  display: block !important;
  min-width: 0;
}

html body .site-header .site-nav__panel-copy > span,
html body .site-header .site-nav__panel-copy small {
  display: block !important;
  overflow-wrap: anywhere;
}

html body .site-header .site-nav__panel-copy > span {
  color: var(--color-text, #f5f6f0);
  font-weight: 800;
  line-height: 1.15;
}

html body .site-header .site-nav__panel-copy small {
  margin-top: 0.18rem;
  color: var(--color-muted, #aeb9ad);
  font-size: 0.75rem;
  line-height: 1.35;
}

html body .site-header .site-nav__panel-arrow {
  display: inline-grid !important;
  place-items: center;
  width: 1.35rem;
  height: 1.35rem;
}

/* Preserve the primary Match Center action on desktop while reducing brand copy
   before the navigation needs to collapse into the drawer. */
@media (max-width: 1500px) {
  html body .site-header .site-brand__tag {
    display: none !important;
  }
}

/* Change to the full drawer before desktop controls can collide. */
@media (max-width: 1280px) {
  html body .site-header .site-header__inner {
    grid-template-columns: auto 1fr auto !important;
  }

  html body .site-header .site-nav {
    display: none !important;
  }

  html body .site-header .site-nav__menu-button {
    display: inline-flex !important;
  }
}

@media (max-width: 980px) {
  :root {
    --mf-global-header-height: 54px;
    --mf-global-ticker-height: 60px;
  }

  html body .site-header .site-header__inner {
    width: 100% !important;
    padding-inline: 14px !important;
  }

}

@media (max-width: 640px) {
  html body .site-header .site-brand__tag {
    display: none !important;
  }

  html body .site-header .site-header__actions {
    min-width: 0 !important;
  }

  html body .site-header :where(.site-header__search, .site-header__cta) {
    display: none !important;
  }

}

/* Mobile command drawer: a single readable navigation list, independent of
   the desktop menu's icon-and-copy layout. This keeps labels, descriptions,
   and disclosure counts from running together on narrow screens. */
@media (max-width: 1280px) {
  html body .site-drawer {
    inset: var(--mf-global-header-height) 0 0 auto !important;
    width: min(100%, 27rem) !important;
    max-width: 100% !important;
    min-height: calc(100dvh - var(--mf-global-header-height)) !important;
    max-height: calc(100dvh - var(--mf-global-header-height)) !important;
    padding: 12px 14px max(20px, env(safe-area-inset-bottom)) !important;
    gap: 8px !important;
    background: #07100b !important;
    border-left: 1px solid rgba(214, 255, 31, 0.18) !important;
    border-radius: 0 !important;
    overflow-y: auto !important;
  }

  html body .site-drawer__search {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 48px !important;
    padding: 0 14px !important;
    border: 1px solid rgba(214, 255, 31, 0.28) !important;
    border-radius: 12px !important;
    background: linear-gradient(100deg, #ffe13a, #a8f237 58%, #4cdd7d) !important;
    color: #07100b !important;
    font-family: var(--font-display, var(--font-sans)) !important;
    font-size: 0.92rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-align: left !important;
  }

  html body .site-drawer__quick {
    grid-template-columns: 1fr !important;
    gap: 4px !important;
    padding: 6px !important;
    border-color: rgba(255, 255, 255, 0.08) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.025) !important;
  }

  html body .site-drawer__quick-link:first-child {
    grid-column: auto !important;
  }

  html body .site-drawer__section {
    display: grid !important;
    gap: 4px !important;
    padding: 0 !important;
  }

  html body .site-drawer__single {
    padding: 0 !important;
  }

  html body .site-drawer :where(.site-drawer__quick-link, .site-drawer__single > a, .site-drawer__links > a) {
    display: block !important;
    min-height: 48px !important;
    padding: 10px 13px !important;
    border: 1px solid transparent !important;
    border-radius: 10px !important;
    color: #edf4ea !important;
    background: transparent !important;
    text-decoration: none !important;
  }

  html body .site-drawer :where(.site-drawer__quick-link, .site-drawer__single > a, .site-drawer__links > a):hover,
  html body .site-drawer :where(.site-drawer__quick-link, .site-drawer__single > a, .site-drawer__links > a):focus-visible,
  html body .site-drawer :where(.site-drawer__quick-link, .site-drawer__single > a, .site-drawer__links > a)[aria-current="page"] {
    color: #ffffff !important;
    border-color: rgba(214, 255, 31, 0.22) !important;
    background: rgba(214, 255, 31, 0.1) !important;
  }

  html body .site-drawer__link-copy {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 2px !important;
    min-width: 0 !important;
  }

  html body .site-drawer__link-label {
    display: block !important;
    color: inherit !important;
    font-family: var(--font-display, var(--font-sans)) !important;
    font-size: 0.96rem !important;
    font-weight: 750 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
  }

  html body .site-drawer__link-description {
    display: block !important;
    max-width: none !important;
    margin: 0 !important;
    color: #aab9aa !important;
    font-family: var(--font-sans, sans-serif) !important;
    font-size: 0.76rem !important;
    line-height: 1.3 !important;
  }

  html body .site-drawer__group {
    border: 1px solid rgba(255, 255, 255, 0.075) !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.018) !important;
  }

  html body .site-drawer__group > summary {
    display: flex !important;
    align-items: center !important;
    min-height: 48px !important;
    padding: 10px 13px !important;
    color: #edf4ea !important;
  }

  html body .site-drawer__group-label {
    font-family: var(--font-display, var(--font-sans)) !important;
    font-size: 0.9rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  html body .site-drawer__title-count {
    display: block !important;
    margin-left: auto !important;
    padding-left: 0.55rem !important;
    border-left: 1px solid rgba(255, 255, 255, 0.14) !important;
    color: #8fa08f !important;
    font-family: var(--font-mono, monospace) !important;
    font-size: 0.64rem !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }

  html body .site-drawer__links {
    gap: 3px !important;
    padding: 0 6px 6px !important;
  }
}

@media (max-width: 640px) {
  html body.site-app-ready .site-drawer {
    width: 100% !important;
    border-left: 0 !important;
  }
}

@media (max-width: 760px) {
  body.mf-contributor-login-v2 #main-content {
    display: block;
    padding: 0 0 3rem;
  }

  body.mf-contributor-login-v2 .mf-contributor-login-v2__brand {
    min-height: 0;
    gap: 1.25rem;
    padding: 1.25rem;
  }

  body.mf-contributor-login-v2 .mf-contributor-login-v2__brand h1 {
    max-width: 12ch;
    font-size: clamp(2.2rem, 10vw, 3.2rem);
  }

  body.mf-contributor-login-v2 .mf-contributor-login-v2__brand-copy {
    margin-top: 0.6rem;
    line-height: 1.45;
  }

  body.mf-contributor-login-v2 .mf-contributor-login-v2__steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.35rem;
  }

  body.mf-contributor-login-v2 .mf-contributor-login-v2__steps li {
    min-height: auto;
    padding: 0.55rem;
  }

  body.mf-contributor-login-v2 .mf-contributor-login-v2__steps span {
    font-size: 0.66rem;
  }
}

@media (max-width: 390px) {
  body.mf-contributor-login-v2 .mf-contributor-login-v2__steps span {
    display: none;
  }
}


/* Source: /assets/css/global-matchday-ticker.css */
/*
 * Global matchday ticker
 *
 * This file is the single presentation owner for the shared matchday ribbon.
 * JavaScript supplies data and state only; sizing and layout remain in CSS.
 */

html body.mf-page-shell .mf-score-ribbon,
html body.mf-v42-ready .mf-score-ribbon,
html body .mf-score-ribbon.mf-polish-ticker-open {
  --mf-ticker-progress: 16.667%;
  position: relative;
  z-index: 80;
  box-sizing: border-box;
  display: grid !important;
  grid-template-columns: 124px minmax(0, 1fr) 132px 76px 92px !important;
  align-items: center !important;
  width: 100%;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #07120b;
  color: #f7fbff;
  border-block: 1px solid rgba(244, 196, 48, .32);
}

html body.mf-home-v22 .mf-score-ribbon.mf-polish-ticker-open {
  display: grid !important;
}

html body.mf-home-v22.mf-score-ribbon-ready .mf-score-ribbon[data-top-events-ticker] {
  display: grid !important;
}

.mf-score-ribbon::after {
  content: "";
  position: absolute;
  z-index: 4;
  inset: auto 0 0;
  width: var(--mf-ticker-progress);
  height: 2px;
  background: linear-gradient(90deg, #e53935 0 33%, #f4c430 33% 66%, #46a83e 66%);
  transition: width .35s ease;
  pointer-events: none;
}

.mf-score-ribbon__brand {
  box-sizing: border-box;
  display: flex !important;
  align-items: center !important;
  gap: .48rem;
  width: 124px !important;
  min-width: 124px !important;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  padding: 0 .72rem;
  overflow: hidden;
  background: #080b0b;
  color: #f7f7f4;
  text-decoration: none;
  white-space: nowrap;
  border-inline-end: 1px solid rgba(244, 196, 48, .24);
}

.mf-score-ribbon__brand img {
  display: block !important;
  width: 30px !important;
  height: 30px !important;
  object-fit: contain !important;
  flex: 0 0 30px !important;
}

.mf-score-ribbon__brand span {
  font-size: .68rem !important;
  font-weight: 800 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase;
}

.mf-score-ribbon__brand span::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: .38rem;
  border-radius: 50%;
  background: #e53935;
  box-shadow: 0 0 0 4px rgba(229, 57, 53, .14);
  animation: mfTickerLive 1.8s ease-in-out infinite;
}

@keyframes mfTickerLive {
  50% { opacity: .45; transform: scale(.72); }
}

.mf-score-ribbon__rail {
  box-sizing: border-box;
  display: flex !important;
  align-items: stretch !important;
  min-width: 0 !important;
  width: 100%;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  background: #0b1517;
}

.mf-score-ribbon__rail::-webkit-scrollbar { display: none; }

.mf-score-ribbon__track {
  box-sizing: border-box;
  display: flex !important;
  flex-flow: row nowrap !important;
  align-items: stretch !important;
  align-content: stretch !important;
  width: max-content !important;
  min-width: max-content !important;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  overflow: visible !important;
  transform: none !important;
  animation: none !important;
  will-change: auto !important;
}

.mf-score-ribbon__card {
  position: relative;
  box-sizing: border-box;
  display: grid !important;
  grid-template-areas: "league date" "match score" "meta meta" !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-rows: 12px 23px 12px !important;
  align-content: center !important;
  column-gap: .5rem;
  row-gap: 1px;
  scroll-snap-align: start;
  flex: 0 0 252px !important;
  width: 252px !important;
  min-width: 252px !important;
  max-width: 252px !important;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  margin: 0 !important;
  padding: .32rem .72rem !important;
  overflow: hidden !important;
  border-inline-end: 1px solid rgba(244, 196, 48, .16);
  background: #0b1517;
  color: #f7f7f4;
  text-decoration: none;
  transition: background-color .2s ease, box-shadow .2s ease;
}

.mf-score-ribbon__card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: transparent;
  transition: background-color .2s ease;
}

.mf-score-ribbon__card.is-current {
  background: #10201e;
  box-shadow: inset 0 1px 0 rgba(70, 168, 62, .2);
}

.mf-score-ribbon__card.is-current::before { background: #f4c430; }
.mf-score-ribbon__card:hover { background: #132823; }

.mf-score-ribbon__league,
.mf-score-ribbon__date,
.mf-score-ribbon__card small {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  font-size: .58rem !important;
  line-height: 1 !important;
  letter-spacing: .06em !important;
  font-weight: 700 !important;
}

.mf-score-ribbon__league {
  grid-area: league;
  color: #f4c430;
  text-transform: uppercase;
}

.mf-score-ribbon__date {
  grid-area: date;
  text-align: right;
  color: #b9c7c2;
}

.mf-score-ribbon__card small {
  grid-area: meta;
  color: #a9b7b2;
}

.mf-score-ribbon__match {
  grid-area: match;
  display: flex !important;
  align-items: center !important;
  gap: .38rem;
  min-width: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  font-size: .82rem !important;
  line-height: 1 !important;
  font-weight: 800;
}

.mf-score-ribbon__team {
  display: inline-flex !important;
  align-items: center !important;
  gap: .3rem;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.mf-score-ribbon__team img {
  display: block !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  object-fit: contain !important;
  flex: 0 0 24px !important;
}

.mf-score-ribbon__mark {
  display: inline-grid;
  width: 24px;
  height: 24px;
  min-width: 24px;
  flex: 0 0 24px;
  place-items: center;
  background: #131919;
  color: #f7f7f4;
}

.mf-score-ribbon__team b { font-size: .78rem !important; }

.mf-score-ribbon__match em {
  color: #778883 !important;
  font-size: .56rem !important;
  font-style: normal !important;
  text-transform: uppercase;
}

.mf-score-ribbon__scoreline {
  grid-area: score;
  align-self: center;
  color: #f4c430;
  font-size: .9rem;
  font-variant-numeric: tabular-nums;
}

.mf-score-ribbon__controls {
  box-sizing: border-box;
  display: grid !important;
  grid-template-columns: repeat(3, 44px);
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  background: #080b0b;
  border-inline-start: 1px solid rgba(244, 196, 48, .22);
}

.mf-score-ribbon__controls button,
.mf-score-ribbon__visibility,
.mf-score-ribbon__utility {
  box-sizing: border-box;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  padding: 0;
  border: 0;
  border-inline-end: 1px solid rgba(244, 196, 48, .16);
  background: #080b0b;
  color: #f7f7f4;
  font: inherit;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}

.mf-score-ribbon__controls button {
  width: 44px !important;
  min-width: 44px !important;
  font-size: 1.35rem !important;
}

.mf-score-ribbon__toggle span {
  font-size: .74rem !important;
  letter-spacing: -.12em;
}

.mf-score-ribbon__visibility {
  width: 76px !important;
  min-width: 76px !important;
  font-size: .64rem !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
}

.mf-score-ribbon__utility {
  width: 92px !important;
  min-width: 92px !important;
  padding: 0 .6rem;
  color: #f4c430 !important;
  font-size: .62rem !important;
  font-weight: 800 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase;
}

.mf-score-ribbon__controls button:hover,
.mf-score-ribbon__visibility:hover,
.mf-score-ribbon__utility:hover {
  background: #14201b;
  color: #f4c430;
}

.mf-score-ribbon :is(button, a):focus-visible {
  outline: 3px solid #f4c430 !important;
  outline-offset: -3px !important;
}

@media (prefers-reduced-motion: reduce) {
  .mf-score-ribbon__brand span::before { animation: none; }
  .mf-score-ribbon__rail { scroll-behavior: auto; }
}

@media (max-width: 760px) {
  html body.mf-page-shell .mf-score-ribbon,
  html body.mf-home-v22 .mf-score-ribbon,
  html body .mf-score-ribbon.mf-polish-ticker-open {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 132px !important;
    grid-template-rows: 58px !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
  }

  .mf-score-ribbon__brand,
  .mf-score-ribbon__visibility,
  .mf-score-ribbon__utility { display: none !important; }

  html body .mf-score-ribbon__rail,
  html body .mf-score-ribbon.mf-polish-ticker-open .mf-score-ribbon__rail {
    display: flex !important;
    grid-column: auto !important;
    grid-row: auto !important;
    min-width: 0 !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
  }

  .mf-score-ribbon__track,
  .mf-score-ribbon__card {
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
  }

  .mf-score-ribbon__card {
    flex-basis: clamp(220px, calc(100vw - 132px), 252px) !important;
    width: clamp(220px, calc(100vw - 132px), 252px) !important;
    min-width: clamp(220px, calc(100vw - 132px), 252px) !important;
    max-width: clamp(220px, calc(100vw - 132px), 252px) !important;
    padding-inline: .62rem !important;
  }

  .mf-score-ribbon__controls {
    grid-template-columns: repeat(3, 44px);
    width: 132px !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
  }

  .mf-score-ribbon__controls button {
    width: 44px !important;
    min-width: 44px !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
  }

  .mf-polish-ticker-toggle { display: none !important; }
}


/* Source: /assets/css/global-footer.css */
/*
 * MoFutbol global footer release.
 * Loaded by assets/js/core/nav.js after route-specific styles so every public
 * page receives the same readable, keyboard-friendly footer treatment.
 */

html body .site-footer,
html body [data-site-footer] > footer.site-footer {
  position: relative;
  margin: 0 !important;
  padding: clamp(1rem, 1.8vw, 1.45rem) 0 0 !important;
  border: 0 !important;
  border-top: 1px solid rgba(245, 200, 66, 0.25) !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(45, 184, 75, 0.11), transparent 27rem),
    linear-gradient(180deg, #07130d 0%, #030806 100%) !important;
  color: #f0f4f0 !important;
  font-family: var(--font-body, "Outfit", "Inter", system-ui, sans-serif) !important;
  isolation: isolate;
}

html body .site-footer::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, #e8302a 0 18%, #f5c842 18% 48%, #b9ed35 48% 72%, #2db84b 72% 100%);
}

html body .site-footer .site-container {
  width: min(calc(100% - clamp(2rem, 5vw, 4rem)), 76rem) !important;
  max-width: 76rem !important;
  margin-inline: auto !important;
}

html body .site-footer .site-footer__inner {
  display: grid !important;
  grid-template-columns: minmax(15rem, 1.35fr) repeat(5, minmax(7.25rem, 0.72fr)) !important;
  align-items: start !important;
  gap: clamp(.75rem, 1.45vw, 1.15rem) clamp(.7rem, 1.25vw, 1.05rem) !important;
  margin-block: 0 !important;
  margin-inline: auto !important;
  padding: 0 0 clamp(.8rem, 1.35vw, 1rem) !important;
}

html body .site-footer .site-footer__brand,
html body .site-footer .site-footer__nav {
  display: grid !important;
  align-content: start !important;
  gap: 0.45rem !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body .site-footer .site-brand {
  display: inline-flex !important;
  align-items: center !important;
  justify-self: start !important;
  gap: 0.7rem !important;
  min-height: 38px !important;
  color: #fffdf3 !important;
  text-decoration: none !important;
}

html body .site-footer .site-brand__logo {
  display: block !important;
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  object-fit: contain !important;
}

html body .site-footer .site-brand__text {
  display: grid !important;
  gap: 0.1rem !important;
}

html body .site-footer .site-brand__name {
  color: #fffdf3 !important;
  font-family: var(--font-heading, "Outfit", system-ui, sans-serif) !important;
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  line-height: 1.05 !important;
}

html body .site-footer .site-brand__tag {
  display: block !important;
  color: #f5c842 !important;
  font-family: var(--font-mono, "JetBrains Mono", monospace) !important;
  font-size: max(0.64rem, 11px) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

html body .site-footer .site-footer__copy {
  display: block !important;
  max-width: 34ch !important;
  margin: 0 !important;
  color: #b9c8bf !important;
  font-size: max(0.82rem, 13px) !important;
  line-height: 1.42 !important;
}

html body .site-footer .site-socials {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.38rem !important;
  margin: 0 !important;
}

html body .site-footer .site-socials > a {
  box-sizing: border-box !important;
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 36px !important;
  width: 36px !important;
  min-width: 36px !important;
  max-width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  padding: 0.5rem !important;
  border: 1px solid rgba(245, 200, 66, 0.24) !important;
  border-radius: 0.65rem !important;
  background: rgba(255, 255, 255, 0.035) !important;
  color: #eef5ef !important;
  text-decoration: none !important;
  transition: color 160ms ease, background 160ms ease, border-color 160ms ease, transform 160ms ease !important;
}

html body .site-footer .site-socials > a:hover {
  border-color: #f5c842 !important;
  background: #f5c842 !important;
  color: #071007 !important;
  transform: translateY(-2px) !important;
}

html body .site-footer .site-socials > a:focus-visible,
html body .site-footer .site-footer__nav a:focus-visible,
html body .site-footer .site-footer__bottom a:focus-visible,
html body .site-footer .site-brand:focus-visible {
  outline: 3px solid #b9ed35 !important;
  outline-offset: 3px !important;
}

html body .site-footer .site-socials__icon {
  width: 1.2rem !important;
  height: 1.2rem !important;
}

html body .site-footer .site-socials__label,
html body .site-footer .site-socials__handle {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

html body .site-footer .site-footer__nav h2,
html body .site-footer .site-footer__nav h3 {
  margin: 0 !important;
  color: #f5c842 !important;
  font-family: var(--font-mono, "JetBrains Mono", monospace) !important;
  font-size: max(0.64rem, 11px) !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.09em !important;
  text-transform: uppercase !important;
}

html body .site-footer .site-footer__nav ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.1rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html body .site-footer .site-footer__nav li {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body .site-footer .site-footer__nav a,
html body .site-footer .site-footer__bottom a {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  min-width: 44px !important;
  min-height: 34px !important;
  padding: 0.35rem 0.15rem !important;
  color: #d5dfd7 !important;
  font-family: var(--font-body, "Outfit", "Inter", system-ui, sans-serif) !important;
  font-size: max(0.8rem, 13px) !important;
  font-weight: 550 !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
}

html body .site-footer .site-footer__nav a:hover,
html body .site-footer .site-footer__bottom a:hover {
  color: #d6ff1f !important;
}

html body .site-footer .site-footer__partner-link {
  display: grid !important;
  grid-template-columns: 3rem minmax(0, 1fr) !important;
  gap: 0.6rem !important;
}

html body .site-footer .site-footer__partner-logo {
  display: block !important;
  width: 3rem !important;
  max-width: 3rem !important;
  height: 1.75rem !important;
  max-height: 1.75rem !important;
  padding: 0.22rem !important;
  object-fit: contain !important;
}

html body .site-footer .site-footer__bottom {
  box-sizing: border-box !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.55rem 1.5rem !important;
  min-height: 42px !important;
  margin-block: 0 !important;
  margin-inline: auto !important;
  padding: 0.6rem 0 .75rem !important;
  border-top: 1px solid rgba(245, 200, 66, 0.16) !important;
  color: #9fb0a5 !important;
  font-family: var(--font-mono, "JetBrains Mono", monospace) !important;
  font-size: max(0.72rem, 11px) !important;
  line-height: 1.45 !important;
}

html body .site-footer .site-footer__operations {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 0.85rem !important;
  max-width: none !important;
  overflow: visible !important;
  white-space: normal !important;
}

html body .site-footer .site-footer__bottom .site-footer__editor-portal {
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  padding: 0.65rem 0.9rem !important;
  border: 1px solid rgba(216, 255, 46, 0.5) !important;
  border-radius: 999px;
  color: #07120b !important;
  background: linear-gradient(100deg, #ffe339, #91ef5b);
  font-weight: 900;
  text-decoration: none;
}

html body .site-footer .site-footer__conversion {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(16rem, 1fr) minmax(30rem, 2fr) !important;
  gap: 1.5rem 2.5rem !important;
  width: min(calc(100% - 3rem), 80rem) !important;
  margin: 0 auto 1.75rem !important;
  padding: 1.4rem 0 !important;
  border-top: 1px solid rgba(185, 237, 53, 0.55) !important;
  border-bottom: 1px solid rgba(245, 200, 66, 0.2) !important;
}

html body .site-footer .site-footer__conversion-intro span {
  color: #b9ed35 !important;
  font-family: var(--font-mono, "JetBrains Mono", monospace) !important;
  font-size: max(0.68rem, 11px) !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

html body .site-footer .site-footer__conversion-intro h2 {
  margin: 0.25rem 0 0.35rem !important;
  color: #f4f6ef !important;
  font-size: clamp(1.25rem, 2vw, 1.85rem) !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
}

html body .site-footer .site-footer__conversion-intro p {
  max-width: 42rem !important;
  margin: 0 !important;
  color: #aebbb1 !important;
  font-size: max(0.84rem, 14px) !important;
  line-height: 1.55 !important;
}

html body .site-footer .site-footer__conversion-links {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 !important;
  border: 1px solid rgba(245, 200, 66, 0.18) !important;
}

html body .site-footer .site-footer__conversion-links a {
  display: grid !important;
  align-content: center !important;
  gap: 0.2rem !important;
  min-width: 0 !important;
  min-height: 4.5rem !important;
  padding: 0.85rem 1rem !important;
  color: #f4f6ef !important;
  text-decoration: none !important;
  border-right: 1px solid rgba(245, 200, 66, 0.14) !important;
  border-bottom: 1px solid rgba(245, 200, 66, 0.14) !important;
}

html body .site-footer .site-footer__conversion-links a:nth-child(2n) {
  border-right: 0 !important;
}

html body .site-footer .site-footer__conversion-links a:nth-last-child(-n + 2) {
  border-bottom: 0 !important;
}

html body .site-footer .site-footer__conversion-links a:hover,
html body .site-footer .site-footer__conversion-links a:focus-visible {
  color: #d6ff1f !important;
  background: rgba(185, 237, 53, 0.06) !important;
}

html body .site-footer .site-footer__conversion-links a:focus-visible {
  outline: 3px solid #b9ed35 !important;
  outline-offset: -3px !important;
}

html body .site-footer .site-footer__conversion-links strong {
  font-size: max(0.88rem, 14px) !important;
  line-height: 1.25 !important;
}

html body .site-footer .site-footer__conversion-links span {
  color: #9fb0a5 !important;
  font-size: max(0.75rem, 12px) !important;
  line-height: 1.35 !important;
}

@media (max-width: 68rem) {
  html body .site-footer .site-footer__conversion {
    grid-template-columns: 1fr !important;
  }

  html body .site-footer .site-footer__inner {
    grid-template-columns: minmax(15rem, 1.25fr) repeat(3, minmax(8rem, 0.8fr)) !important;
  }

  html body .site-footer .site-footer__brand {
    grid-row: span 2 !important;
  }
}

@media (max-width: 48rem) {
  html body .site-footer,
  html body [data-site-footer] > footer.site-footer {
    padding-top: 1.35rem !important;
  }

  html body .site-footer .site-container {
    width: min(calc(100% - 1.5rem), 80rem) !important;
  }

  html body .site-footer .site-footer__conversion {
    width: min(calc(100% - 1.5rem), 80rem) !important;
    gap: 1rem !important;
  }

  html body .site-footer .site-footer__conversion-links {
    grid-template-columns: 1fr !important;
  }

  html body .site-footer .site-footer__conversion-links a,
  html body .site-footer .site-footer__conversion-links a:nth-child(2n),
  html body .site-footer .site-footer__conversion-links a:nth-last-child(-n + 2) {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(245, 200, 66, 0.14) !important;
  }

  html body .site-footer .site-footer__conversion-links a:last-child {
    border-bottom: 0 !important;
  }

  html body .site-footer .site-footer__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 1.1rem 0.9rem !important;
  }

  html body .site-footer .site-footer__brand {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    padding-bottom: 0.35rem !important;
    border-bottom: 1px solid rgba(245, 200, 66, 0.14) !important;
  }

  html body .site-footer .site-footer__copy {
    max-width: 46ch !important;
  }

  html body .site-footer .site-socials > a {
    flex-basis: 44px !important;
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
  }

  html body .site-footer .site-footer__nav a {
    width: 100% !important;
    min-height: 44px !important;
    padding-block: 0.6rem !important;
  }

  html body .site-footer .site-footer__bottom {
    min-height: 52px !important;
    align-items: flex-start !important;
    flex-direction: column !important;
    padding-bottom: 1.2rem !important;
  }

  html body .site-footer .site-footer__operations {
    width: 100% !important;
    align-items: flex-start !important;
    flex-direction: column !important;
  }
}

@media (max-width: 23.5rem) {
  html body .site-footer .site-footer__inner {
    grid-template-columns: 1fr !important;
  }

  html body .site-footer .site-footer__brand {
    grid-column: auto !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .site-footer * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* Final cross-page release guard: the completed World Cup final is the
   primary World Soccer archive and cannot be collapsed by legacy rules. */
html body.mf-world-cup-page main#main-content
  #wc2026-knockout[data-wc-final-ready="true"] {
  display: block !important;
}


/* Source: /assets/css/global-footer-v3.css */
html body .site-footer,
html body [data-site-footer] > footer.site-footer {
  padding-top: 1rem !important;
  border-top-color: rgba(245, 200, 66, .42) !important;
  background: #050a07 !important;
}

html body .site-footer::before { height: 2px !important; }

html body .site-footer .site-container {
  width: min(calc(100% - clamp(2rem, 5vw, 4rem)), 84rem) !important;
  max-width: 84rem !important;
}

html body .site-footer .site-footer__inner {
  grid-template-columns: minmax(13.5rem, 1.3fr) repeat(5, minmax(6.3rem, .72fr)) !important;
  gap: .9rem !important;
  padding-bottom: .7rem !important;
}

html body .site-footer .site-footer__brand,
html body .site-footer .site-footer__nav { gap: .3rem !important; }

html body .site-footer .site-brand__logo { width: 32px !important; min-width: 32px !important; height: 32px !important; }
html body .site-footer .site-brand { min-height: 32px !important; gap: .55rem !important; }
html body .site-footer .site-brand__name { font-size: .95rem !important; }
html body .site-footer .site-brand__tag { font-size: .56rem !important; }
html body .site-footer .site-footer__copy { max-width: 28ch !important; font-size: .76rem !important; line-height: 1.38 !important; }

html body .site-footer .site-socials { gap: .3rem !important; }
html body .site-footer .site-socials > a { flex-basis: 44px !important; width: 44px !important; min-width: 44px !important; max-width: 44px !important; height: 44px !important; min-height: 44px !important; max-height: 44px !important; padding: .65rem !important; border-radius: 3px !important; }

html body .site-footer .site-footer__nav summary { cursor: default; list-style: none; }
html body .site-footer .site-footer__nav summary::-webkit-details-marker { display: none; }
html body .site-footer .site-footer__nav h2,
html body .site-footer .site-footer__nav h3 { font-size: .58rem !important; }
html body .site-footer .site-footer__nav ul { gap: 0 !important; }
html body .site-footer .site-footer__nav a,
html body .site-footer .site-footer__bottom a { min-height: 44px !important; padding: .55rem 0 !important; font-size: .72rem !important; line-height: 1.2 !important; }

html body .site-footer .site-footer__bottom { min-height: 34px !important; padding: .45rem 0 .6rem !important; font-size: .62rem !important; }

@media (max-width: 68rem) {
  html body .site-footer .site-footer__inner { grid-template-columns: minmax(13.5rem, 1.2fr) repeat(3, minmax(7rem, .8fr)) !important; }
}

@media (max-width: 48rem) {
  html body .site-footer .site-footer__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .85rem .7rem !important;
  }
  html body .site-footer .site-footer__brand {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  html body .site-footer .site-socials {
    max-width: 100% !important;
    flex-wrap: wrap !important;
  }
  html body .site-footer .site-footer__copy { max-width: 40ch !important; }
  html body .site-footer .site-footer__nav summary { display: flex; align-items: center; min-height: 44px; cursor: pointer; }
  html body .site-footer .site-footer__nav a { min-height: 44px !important; }
}

@media (min-width: 821px) {
  html body .site-footer .site-footer__brand .site-socials > a {
    box-sizing: border-box !important;
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    flex: 0 0 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    padding: 7px !important;
    justify-content: center !important;
  }

  html body .site-footer .site-footer__nav li > a,
  html body .site-footer .site-footer__bottom > a {
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    min-width: 36px !important;
    min-height: 44px !important;
    padding: 6px 3px !important;
  }

  html body .site-footer .site-footer__nav a.site-footer__editor-portal {
    justify-content: center !important;
    width: max-content !important;
    padding: 7px 11px !important;
    border: 1px solid rgba(216, 255, 46, .62) !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #ffe339, #91ef5b) !important;
    color: #07120b !important;
    font-weight: 900 !important;
    letter-spacing: .02em !important;
  }
}


/* Source: /assets/css/uiux-audit-v3.css */
/* Cross-route usability guardrails. Keep MoFutbol's existing visual identity. */
html body .site-header :where(.site-brand, .site-nav__link, .site-nav__toggle, .site-nav__menu-button, .site-header__actions > a, .site-header__actions > button) {
  box-sizing: border-box !important;
  min-height: 44px !important;
}

html body .site-header :where(.site-nav__link, .site-nav__toggle) {
  height: 44px !important;
}

html body .site-header .site-nav__menu-button {
  min-width: 44px !important;
}

html body .site-footer .site-brand {
  min-height: 44px !important;
}

html body.mf-ptg-body :where(
  [data-clear-filters],
  [data-map-state-select],
  .mf-ptg-map-summary select,
  .mf-ptg-map-results button,
  .mf-ptg-map-results a
) {
  box-sizing: border-box;
  min-height: 44px !important;
}

html body.mf-ptg-body .mf-ptg-filter-status {
  min-height: 44px;
  align-items: center;
}

html body.mf-ptg-body [data-clear-filters] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.55rem 0.7rem;
}

html body.mf-stl-directory-page :where(
  .stl-directory-card a,
  .stl-directory-card button,
  .stl-directory-quick-filters button,
  .stl-directory-lanes button,
  .stl-directory-results-bar button,
  .stl-directory-pagination button
) {
  box-sizing: border-box;
  min-height: 44px !important;
}

html body.mf-us-soccer-page .mf-home-quicklinks a,
html body.mf-afcon-page .mf-afcon-quick-rail a,
html body.mf-afcon-page :where(.mf-afcon-filter button, [data-afcon-filter]) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px !important;
}

html body.mf-core-podcast-page :where(.mf-podcast-play-here, [data-tribe-play]) {
  min-height: 44px !important;
}

html body.mf-article-page :where(.mf-article-share button, .mf-sponsor-actions a) {
  min-height: 44px !important;
}

@media (max-width: 48rem) {
  html body .site-footer .site-footer__nav {
    min-width: 0 !important;
  }
}

