/* 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/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/matchday-desk.css */
/* Matchday Desk */
.mf-matchday-desk {
 margin: 0 0 1.25rem;
}

body.mf-home-taste .mf-match-polish-hero {
 padding-block: clamp(2rem, 3.6vw, 3rem) clamp(.85rem, 1.8vw, 1.35rem) !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-polish-hero__grid,
body.mf-home-taste .mf-match-polish-hero.mf-editorial-hero .mf-editorial-hero__grid {
 align-items: center;
 grid-template-columns: minmax(17rem, .76fr) minmax(0, 1.24fr) !important;
 gap: clamp(.65rem, 1.4vw, 1rem) !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-unified-hero-title {
 max-width: 12ch !important;
 font-size: clamp(1.55rem, 2.7vw, 2.35rem) !important;
 line-height: 1 !important;
 margin-bottom: .35rem !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-lede {
 max-width: 44rem !important;
 margin: 0 !important;
 font-size: .9rem !important;
 line-height: 1.4 !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-page-actions {
 gap: .45rem !important;
 margin-top: .72rem !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-page-actions .stl-btn {
 min-height: 2.15rem !important;
 padding: .48rem .72rem !important;
 font-size: .72rem !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-match-utility {
 gap: .58rem !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-match-feature-card {
 display: grid !important;
 grid-template-columns: auto minmax(0, 1fr) auto !important;
 align-items: center !important;
 gap: .55rem .8rem !important;
 padding: .68rem .78rem !important;
 border-radius: .8rem !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-match-feature-card h2 {
 margin: .12rem 0 .16rem !important;
 font-size: clamp(.92rem, 1.35vw, 1.12rem) !important;
 line-height: 1.05 !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-match-feature-card p {
 margin: 0 !important;
 font-size: .78rem !important;
 line-height: 1.28 !important;
 display: -webkit-box !important;
 -webkit-line-clamp: 1 !important;
 -webkit-box-orient: vertical !important;
 overflow: hidden !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-match-feature-card > .mf-matchday-team-row,
body.mf-home-taste .mf-match-polish-hero .mf-match-feature-card > .mf-matchday-tab-logo,
body.mf-home-taste .mf-match-polish-hero .mf-match-feature-card > .mf-matchday-competition-mark {
 margin: 0 !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-match-feature-card > .stl-eyebrow,
body.mf-home-taste .mf-match-polish-hero .mf-match-feature-card > .mf-match-refresh-note {
 grid-column: 2;
}

body.mf-home-taste .mf-match-polish-hero .mf-match-feature-card > a {
 grid-column: 3;
 grid-row: 1 / span 4;
 align-self: center;
 white-space: nowrap;
}

body.mf-home-taste .mf-match-polish-hero .mf-match-utility__grid {
 grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
 gap: .55rem !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-match-tile {
 gap: .22rem !important;
 min-height: 5.4rem !important;
 padding: .5rem .58rem !important;
 border-radius: .72rem !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-match-tile span {
 margin-bottom: .3rem !important;
 padding: .18rem .42rem !important;
 font-size: .58rem !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-match-tile strong {
 font-size: .76rem !important;
 line-height: 1.08 !important;
 display: -webkit-box !important;
 -webkit-line-clamp: 2 !important;
 -webkit-box-orient: vertical !important;
 overflow: hidden !important;
}

body.mf-home-taste .mf-match-polish-hero .mf-match-tile small {
 margin-top: .28rem !important;
 font-size: .64rem !important;
 line-height: 1.22 !important;
 display: -webkit-box !important;
 -webkit-line-clamp: 2 !important;
 -webkit-box-orient: vertical !important;
 overflow: hidden !important;
}

.mf-matchday-hero {
 display:grid;
 gap:.62rem;
 padding:.72rem;
 border:1px solid rgba(255,255,255,.11);
 border-radius:24px;
 background:
  radial-gradient(circle at 12% 12%, rgba(255,213,76,.14), transparent 17rem),
  radial-gradient(circle at 92% 0%, rgba(46,207,125,.14), transparent 18rem),
  linear-gradient(145deg, rgba(13,25,39,.96), rgba(5,11,18,.98));
 box-shadow:var(--mc-shadow);
}

.mf-matchday-topline,
.mf-matchday-controls,
.mf-matchday-watchlist,
.mf-matchday-modules,
.mf-matchday-card-grid {
 display:grid;
 gap:.58rem;
}

.mf-matchday-topline {
 grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
 align-items:stretch;
}

.mf-matchday-summary {
 display:grid;
 grid-template-columns:repeat(5,minmax(0,1fr));
 gap:.55rem;
}

.mf-matchday-summary-card,
.mf-matchday-feature,
.mf-matchday-stale,
.mf-matchday-watchlist,
.mf-matchday-module,
.mf-matchday-card,
.mf-matchday-toolbar {
 border:1px solid rgba(255,255,255,.1);
 border-radius:18px;
 background:rgba(255,255,255,.045);
}

.mf-matchday-stale {
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:.85rem;
 padding:.72rem .85rem;
 border-color:rgba(255,213,76,.34);
 background:
  linear-gradient(90deg, rgba(255,213,76,.12), transparent 65%),
  rgba(5,11,18,.74);
}

.mf-matchday-stale span,
.mf-matchday-watchlist__head span {
 display:block;
 color:rgba(255,213,76,.96);
 font:800 .58rem/1.2 var(--f-mono);
 letter-spacing:.08em;
 text-transform:uppercase;
}

.mf-matchday-stale strong {
 display:block;
 color:#fff;
 font-size:.92rem;
 line-height:1.2;
}

.mf-matchday-stale p,
.mf-matchday-watchlist__head p {
 margin:.18rem 0 0;
 color:var(--mc-muted);
 font-size:.76rem;
 line-height:1.4;
}

.mf-matchday-stale__links {
 display:flex;
 flex-wrap:wrap;
 gap:.42rem;
 justify-content:flex-end;
}

.mf-matchday-stale__links a,
.mf-matchday-watchlist__head a {
 display:inline-flex;
 align-items:center;
 justify-content:center;
 min-height:44px;
 padding:.36rem .62rem;
 border:1px solid rgba(255,213,76,.28);
 border-radius:999px;
 color:#07111b;
 background:var(--mc-accent);
 text-decoration:none;
 font:900 .62rem var(--f-mono);
 text-transform:uppercase;
 white-space:nowrap;
}

.mf-matchday-freshness {
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:1rem;
 margin-bottom:.85rem;
 padding:.9rem 1rem;
 border:1px solid rgba(45,184,75,.28);
 border-radius:18px;
 background:
  linear-gradient(135deg, rgba(45,184,75,.12), transparent 42%),
  rgba(7,16,11,.9);
 box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
}

.mf-matchday-freshness.is-stale {
 border-color:rgba(255,213,76,.34);
 background:
  linear-gradient(135deg, rgba(255,213,76,.13), transparent 42%),
  rgba(16,14,7,.92);
}

.mf-matchday-freshness span {
 display:block;
 color:rgba(255,213,76,.96);
 font:900 .62rem/1.2 var(--f-mono);
 letter-spacing:.1em;
 text-transform:uppercase;
}

.mf-matchday-freshness strong {
 display:block;
 margin-top:.3rem;
 color:#fff;
 font-size:.98rem;
 line-height:1.2;
}

.mf-matchday-freshness p {
 margin:.22rem 0 0;
 color:var(--mc-muted);
 font-size:.78rem;
 line-height:1.4;
}

.mf-matchday-freshness button {
 flex:0 0 auto;
 min-height:44px;
 padding:.72rem 1rem;
 border:1px solid rgba(255,213,76,.34);
 border-radius:999px;
 background:rgba(255,255,255,.045);
 color:#fff;
 font:900 .68rem/1 var(--f-mono);
 letter-spacing:.08em;
 text-transform:uppercase;
 cursor:pointer;
}

.mf-matchday-freshness button:hover,
.mf-matchday-freshness button:focus-visible {
 border-color:rgba(214,255,31,.82);
 background:rgba(214,255,31,.1);
}

.mf-matchday-summary-card {
 display:grid;
 align-content:start;
 gap:.12rem;
 padding:.56rem;
 min-height:82px;
}

.mf-matchday-summary-card span,
.mf-matchday-feature span,
.mf-matchday-module span,
.mf-matchday-card span,
.mf-matchday-status {
 display:block;
 font:800 .62rem/1.25 var(--f-mono);
 letter-spacing:.08em;
 text-transform:uppercase;
 color:rgba(255,213,76,.9);
}

.mf-matchday-summary-card strong {
 display:block;
 margin:.16rem 0;
 color:#fff;
 font-size:.88rem;
 line-height:1.1;
}

.mf-matchday-summary-card small,
.mf-matchday-feature p,
.mf-matchday-module p,
.mf-matchday-card small {
 color:var(--mc-muted);
 font-size:.75rem;
 line-height:1.4;
}

.mf-matchday-summary-card--empty {
 border-style:dashed;
}

.mf-matchday-feature {
 display:grid;
 align-content:space-between;
 gap:.55rem;
 padding:.74rem;
 background:
  linear-gradient(135deg, rgba(255,213,76,.12), rgba(127,189,255,.09)),
  rgba(255,255,255,.04);
}

.mf-matchday-feature h2 {
 margin:.15rem 0 .35rem;
 color:#fff;
 font-family:var(--f-heading);
 font-size:clamp(.92rem,1.35vw,1.16rem);
 line-height:1.05;
}

.mf-matchday-watchlist {
 padding:.74rem;
 background:
  radial-gradient(circle at 8% 0%, rgba(255,213,76,.13), transparent 12rem),
  linear-gradient(135deg, rgba(46,207,125,.06), rgba(127,189,255,.06)),
  rgba(255,255,255,.04);
}

.mf-matchday-watchlist__head {
 display:flex;
 justify-content:space-between;
 align-items:end;
 gap:1rem;
 margin-bottom:.62rem;
}

.mf-matchday-watchlist__head h3 {
 margin:.12rem 0 0;
 color:#fff;
 font-size:clamp(1.02rem,1.6vw,1.34rem);
 line-height:1.05;
}

.mf-matchday-watchlist__grid {
 display:grid;
 grid-template-columns:repeat(5,minmax(0,1fr));
 gap:.5rem;
}

.mf-matchday-watchitem {
 display:grid;
 align-content:start;
 gap:.22rem;
 min-height:8.1rem;
 padding:.58rem;
 border:1px solid rgba(255,255,255,.1);
 border-radius:13px;
 color:#fff;
 background:rgba(5,11,18,.46);
 text-decoration:none;
 transition:transform .18s ease,border-color .18s ease,background-color .18s ease;
}

.mf-matchday-watchitem:hover,
.mf-matchday-watchitem:focus-visible {
 transform:translateY(-2px);
 border-color:rgba(255,213,76,.5);
 background:rgba(255,255,255,.065);
}

.mf-matchday-watchitem span {
 color:rgba(255,213,76,.9);
 font:800 .55rem/1.2 var(--f-mono);
 letter-spacing:.08em;
 text-transform:uppercase;
}

.mf-matchday-watchitem strong {
 display:-webkit-box;
 overflow:hidden;
 -webkit-line-clamp:2;
 -webkit-box-orient:vertical;
 font-size:.82rem;
 line-height:1.14;
}

.mf-matchday-watchitem small {
 display:-webkit-box;
 overflow:hidden;
 -webkit-line-clamp:3;
 -webkit-box-orient:vertical;
 color:var(--mc-muted);
 font-size:.66rem;
 line-height:1.32;
}

.mf-matchday-feature-row {
 display:flex;
 flex-wrap:wrap;
 gap:.45rem;
}

.mf-matchday-pill {
 display:inline-flex;
 align-items:center;
 min-height:1.6rem;
 padding:.27rem .46rem;
 border:1px solid rgba(255,255,255,.13);
 border-radius:999px;
 color:#fff;
 background:rgba(255,255,255,.055);
 font:800 .55rem var(--f-mono);
 letter-spacing:.05em;
 text-transform:uppercase;
}

.mf-matchday-tabs,
.mf-matchday-filter-row {
 display:flex;
 flex-wrap:wrap;
 gap:.45rem;
}

.mf-matchday-controls {
 padding:.72rem;
}

.mf-matchday-controls summary {
 display:none;
 cursor:pointer;
 list-style:none;
}

.mf-matchday-controls summary::-webkit-details-marker {
 display:none;
}

.mf-matchday-controls summary span {
 color:#fff;
 font-weight:900;
 font-size:.92rem;
}

.mf-matchday-controls summary small {
 color:var(--mc-muted);
 font-size:.72rem;
}

.mf-matchday-tabs button,
.mf-matchday-filter-row button,
.mf-matchday-card button {
 display:inline-flex;
 align-items:center;
 gap:.42rem;
 min-height:1.85rem;
 padding:.32rem .54rem;
 border:1px solid rgba(255,255,255,.12);
 border-radius:999px;
 background:rgba(255,255,255,.045);
 color:#fff;
 cursor:pointer;
 font:800 .55rem var(--f-mono);
 letter-spacing:.06em;
 text-transform:uppercase;
}

.mf-matchday-tab-logo,
.mf-matchday-competition-mark {
 display:grid;
 place-items:center;
 width:1.7rem;
 height:1.7rem;
 border:1px solid rgba(255,213,76,.24);
 border-radius:.5rem;
 background:rgba(5,11,18,.62);
 overflow:hidden;
 flex:0 0 auto;
}

.mf-matchday-tab-logo img,
.mf-matchday-competition-mark img {
 width:100%;
 height:100%;
 object-fit:contain;
 padding:.12rem;
}

.mf-matchday-summary-card > .mf-matchday-tab-logo,
.mf-matchday-summary-card > .mf-matchday-competition-mark,
.mf-match-tile > .mf-matchday-tab-logo,
.mf-match-tile > .mf-matchday-competition-mark {
 margin-bottom:.18rem;
}

.mf-matchday-tabs button:hover,
.mf-matchday-tabs button:focus-visible,
.mf-matchday-tabs button.is-active,
.mf-matchday-filter-row button:hover,
.mf-matchday-filter-row button:focus-visible,
.mf-matchday-filter-row button.is-active {
 border-color:rgba(255,213,76,.78);
 background:var(--mc-accent);
 color:#07111b;
}

.mf-matchday-toolbar {
 display:grid;
 grid-template-columns:minmax(180px,1.1fr) repeat(4,minmax(130px,.7fr));
 gap:.55rem;
 padding:.75rem 0 0;
 border:0;
 background:transparent;
}

.mf-matchday-toolbar label {
 display:grid;
 gap:.28rem;
 color:var(--mc-muted);
 font:800 .58rem var(--f-mono);
 letter-spacing:.07em;
 text-transform:uppercase;
}

.mf-matchday-toolbar :is(input,select) {
 width:100%;
 min-height:2.45rem;
 border:1px solid rgba(255,255,255,.12);
 border-radius:12px;
 background:rgba(5,11,18,.72);
 color:#fff;
 padding:.55rem .65rem;
}

.mf-matchday-modules {
 grid-template-columns:1fr;
}

.mf-matchday-module {
 padding:.9rem;
}

.mf-matchday-module h3 {
 margin:.15rem 0 .35rem;
 color:#fff;
 font-size:1rem;
}

.mf-matchday-mini-list {
 display:grid;
 gap:.45rem;
 margin-top:.65rem;
}

.mf-matchday-module--pathway {
 position:relative;
 overflow:hidden;
}

.mf-matchday-module--pathway::before {
 content:"";
 position:absolute;
 inset:0;
 pointer-events:none;
 background:
  radial-gradient(circle at 12% 4%, rgba(127,189,255,.14), transparent 13rem),
  linear-gradient(135deg, rgba(46,207,125,.09), transparent 58%);
 opacity:.9;
}

.mf-matchday-module--pathway > * {
 position:relative;
 z-index:1;
}

.mf-matchday-pathway-head {
 display:flex;
 justify-content:space-between;
 gap:.8rem;
 align-items:start;
}

.mf-matchday-pathway-head p {
 margin-bottom:0;
}

.mf-matchday-pathway-head small {
 display:inline-flex;
 align-items:center;
 min-height:1.65rem;
 padding:.28rem .5rem;
 border:1px solid rgba(127,189,255,.24);
 border-radius:999px;
 color:rgba(194,230,255,.94);
 background:rgba(5,11,18,.62);
 font:800 .55rem/1.1 var(--f-mono);
 letter-spacing:.06em;
 text-transform:uppercase;
 white-space:nowrap;
}

.mf-matchday-pathway-layout {
 display:grid;
 grid-template-columns:minmax(17rem,.72fr) minmax(0,1fr);
 gap:.55rem;
 margin-top:.75rem;
}

.mf-matchday-mini-list--pathway {
 margin-top:0;
 grid-template-columns:repeat(2,minmax(0,1fr));
}

.mf-matchday-pathway-grid {
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:.52rem;
}

.mf-matchday-pathway-news {
 display:grid;
 grid-template-columns:4.85rem minmax(0,1fr);
 grid-template-rows:auto auto 1fr;
 align-items:start;
 gap:.16rem .52rem;
 min-height:4.9rem;
 padding:.48rem;
 border:1px solid rgba(255,255,255,.1);
 border-radius:12px;
 color:#fff;
 background:
  linear-gradient(135deg, rgba(127,189,255,.06), transparent 48%),
  rgba(255,255,255,.046);
 text-decoration:none;
 overflow:hidden;
 transition:transform .18s ease,border-color .18s ease,background-color .18s ease;
}

.mf-matchday-pathway-news:hover,
.mf-matchday-pathway-news:focus-visible {
 transform:translateY(-2px);
 border-color:rgba(127,189,255,.55);
 background:rgba(255,255,255,.072);
}

.mf-matchday-pathway-news__thumb {
 grid-row:1 / span 3;
 display:grid;
 place-items:center;
 width:4.85rem;
 height:4.25rem;
 border:1px solid rgba(127,189,255,.18);
 border-radius:9px;
 background:rgba(5,11,18,.62);
 overflow:hidden;
}

.mf-matchday-pathway-news__thumb img {
 display:block;
 width:100%;
 height:100%;
 object-fit:contain;
 padding:.18rem;
}

body.mf-page-shell main#main-content .mf-matchday-pathway-news__thumb img {
 width:100% !important;
 height:100% !important;
 max-width:100%;
 max-height:100%;
}

.mf-matchday-pathway-news span {
 color:rgba(194,230,255,.94);
 font:800 .52rem/1.1 var(--f-mono);
 letter-spacing:.06em;
 text-transform:uppercase;
}

.mf-matchday-pathway-news strong {
 display:-webkit-box;
 overflow:hidden;
 -webkit-line-clamp:2;
 -webkit-box-orient:vertical;
 color:#fff;
 font-size:.78rem;
 line-height:1.15;
}

.mf-matchday-pathway-news small {
 display:-webkit-box;
 overflow:hidden;
 -webkit-line-clamp:2;
 -webkit-box-orient:vertical;
 color:var(--mc-muted);
 font-size:.62rem;
 line-height:1.3;
}

.mf-matchday-pathway-news--lead {
 grid-column:1 / -1;
 grid-template-columns:minmax(8rem,.35fr) minmax(0,1fr);
 min-height:8rem;
 background:
  linear-gradient(90deg, rgba(127,189,255,.11), transparent 45%),
  rgba(255,255,255,.06);
}

.mf-matchday-pathway-news--lead .mf-matchday-pathway-news__thumb {
 width:100%;
 height:7rem;
 min-height:0;
}

.mf-matchday-module--world {
 position:relative;
 overflow:hidden;
}

.mf-matchday-module--world::before {
 content:"";
 position:absolute;
 inset:0;
 pointer-events:none;
 background:
  radial-gradient(circle at 16% 0%, rgba(255,213,76,.12), transparent 13rem),
  linear-gradient(135deg, rgba(22,68,96,.16), transparent 55%);
 opacity:.9;
}

.mf-matchday-module--world > * {
 position:relative;
 z-index:1;
}

.mf-matchday-world-head {
 display:flex;
 justify-content:space-between;
 gap:.8rem;
 align-items:start;
}

.mf-matchday-world-head p {
 margin-bottom:0;
}

.mf-matchday-world-head small {
 display:inline-flex;
 align-items:center;
 min-height:1.65rem;
 padding:.28rem .5rem;
 border:1px solid rgba(255,213,76,.22);
 border-radius:999px;
 color:rgba(255,213,76,.92);
 background:rgba(5,11,18,.62);
 font:800 .55rem/1.1 var(--f-mono);
 letter-spacing:.06em;
 text-transform:uppercase;
 white-space:nowrap;
}

.mf-matchday-world-cadence {
 margin-top:.5rem;
 color:rgba(244,247,251,.68);
 font-size:.68rem;
 line-height:1.35;
}

.mf-matchday-world-grid {
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:.52rem;
 margin-top:.75rem;
}

.mf-matchday-world-news {
 display:grid;
 grid-template-columns:5.75rem minmax(0,1fr);
 grid-template-rows:auto auto 1fr;
 gap:.16rem .55rem;
 min-height:5.45rem;
 padding:.5rem;
 border:1px solid rgba(255,255,255,.1);
 border-radius:12px;
 color:#fff;
 background:
  linear-gradient(135deg, rgba(255,213,76,.055), transparent 44%),
  rgba(255,255,255,.046);
 text-decoration:none;
 transition:transform .18s ease,border-color .18s ease,background-color .18s ease;
}

.mf-matchday-world-news:hover,
.mf-matchday-world-news:focus-visible {
 transform:translateY(-2px);
 border-color:rgba(255,213,76,.58);
 background:rgba(255,255,255,.072);
}

.mf-matchday-world-news__thumb,
.mf-matchday-world-news__mark {
 grid-row:1 / span 3;
 width:5.75rem;
 aspect-ratio:16/9;
 border:1px solid rgba(255,213,76,.16);
 border-radius:9px;
 background:rgba(5,11,18,.6);
 object-fit:cover;
 overflow:hidden;
}

.mf-matchday-world-news__thumb {
 display:block;
}

.mf-matchday-world-news__thumb img {
 display:block;
 width:100%;
 height:100%;
 object-fit:cover;
}

.mf-matchday-world-news__mark {
 display:grid;
 place-items:center;
}

.mf-matchday-world-news__mark .mf-matchday-tab-logo {
 margin:0;
 width:2.2rem;
 height:2.2rem;
}

.mf-matchday-world-news span {
 color:rgba(255,213,76,.92);
 font:800 .55rem/1.1 var(--f-mono);
 letter-spacing:.06em;
 text-transform:uppercase;
}

.mf-matchday-world-news span b {
 color:#07111b;
 padding:.08rem .24rem;
 border-radius:999px;
 background:var(--mc-accent);
 font:inherit;
 letter-spacing:.04em;
}

.mf-matchday-world-news strong {
 display:-webkit-box;
 overflow:hidden;
 -webkit-line-clamp:2;
 -webkit-box-orient:vertical;
 color:#fff;
 font-size:.8rem;
 line-height:1.15;
}

.mf-matchday-world-news small {
 display:-webkit-box;
 overflow:hidden;
 -webkit-line-clamp:2;
 -webkit-box-orient:vertical;
 color:var(--mc-muted);
 font-size:.64rem;
 line-height:1.3;
}

.mf-matchday-world-news--lead {
 grid-column:1 / -1;
 grid-template-columns:minmax(10rem,.42fr) minmax(0,1fr);
 min-height:8.4rem;
 padding:.58rem;
 background:
  linear-gradient(90deg, rgba(255,213,76,.1), transparent 45%),
  rgba(255,255,255,.06);
}

.mf-matchday-world-news--lead .mf-matchday-world-news__thumb,
.mf-matchday-world-news--lead .mf-matchday-world-news__mark {
 width:100%;
 height:100%;
 min-height:7rem;
}

.mf-matchday-world-news--breaking {
 border-color:rgba(255,213,76,.2);
}

.mf-matchday-world-news--lead strong {
 font-size:.96rem;
 line-height:1.1;
 -webkit-line-clamp:2;
}

.mf-matchday-world-news--lead small {
 font-size:.72rem;
 -webkit-line-clamp:3;
}

.mf-matchday-world-fixtures {
 grid-column:1 / -1;
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:.45rem;
}

.mf-matchday-mini-empty {
 display:grid;
 gap:.55rem;
 padding:.72rem;
 border:1px dashed rgba(255,255,255,.14);
 border-radius:13px;
 background:rgba(255,255,255,.035);
 color:var(--mc-muted);
}

.mf-matchday-mini-empty strong {
 color:#fff;
 font-size:.88rem;
 line-height:1.2;
}

.mf-matchday-mini-empty small {
 font-size:.75rem;
 line-height:1.4;
}

.mf-matchday-mini-empty__links {
 display:flex;
 flex-wrap:wrap;
 gap:.42rem;
}

.mf-matchday-mini-empty__links a {
 display:inline-flex;
 align-items:center;
 gap:.38rem;
 min-height:2.05rem;
 padding:.34rem .56rem;
 border:1px solid rgba(255,213,76,.22);
 border-radius:999px;
 color:#fff;
 background:rgba(255,255,255,.045);
 text-decoration:none;
 font:800 .62rem var(--f-mono);
 text-transform:uppercase;
}

.mf-matchday-team-row {
 display:flex;
 align-items:center;
 gap:.34rem;
 margin:.05rem 0 .22rem;
 min-height:1.85rem;
}

.mf-matchday-team-row i {
 color:rgba(255,255,255,.52);
 font:800 .56rem/1 var(--f-mono);
 font-style:normal;
 letter-spacing:.08em;
 text-transform:uppercase;
}

.mf-matchday-team-mark {
 display:grid;
 place-items:center;
 width:1.82rem;
 height:1.82rem;
 border:1px solid rgba(255,213,76,.22);
 border-radius:.52rem;
 background:
  radial-gradient(circle at 30% 20%, rgba(255,213,76,.18), transparent 70%),
  rgba(4,11,16,.72);
 box-shadow:0 .35rem .9rem rgba(0,0,0,.18);
 overflow:hidden;
 flex:0 0 auto;
}

.mf-matchday-team-mark img {
 width:100%;
 height:100%;
 object-fit:contain;
 padding:.16rem;
}

.mf-matchday-team-name {
 display:inline-flex;
 align-items:center;
 min-height:1.82rem;
 max-width:8.5rem;
 color:rgba(244,247,251,.78);
 font:800 .62rem/1.1 var(--f-mono);
 overflow:hidden;
 text-overflow:ellipsis;
 white-space:nowrap;
 text-transform:uppercase;
}

.mf-match-refresh-note {
 display:block;
 margin:.2rem 0 .45rem;
 color:rgba(244,247,251,.7);
 font:800 .62rem/1.35 var(--f-mono);
 text-transform:uppercase;
}

.mf-matchday-mini {
 display:grid;
 gap:.28rem;
 padding:.58rem .65rem;
 border-radius:13px;
 background:rgba(255,255,255,.045);
 color:#fff;
 text-decoration:none;
}

.mf-matchday-mini:hover,
.mf-matchday-mini:focus-visible,
.mf-matchday-card:hover,
.mf-matchday-card:focus-within {
 border-color:rgba(255,213,76,.34);
 background:rgba(255,255,255,.068);
 transform:translateY(-1px);
}

.mf-matchday-mini strong {
 font-size:.82rem;
 line-height:1.25;
}

.mf-matchday-board-head {
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:1rem;
 margin:.2rem 0 .1rem;
}

.mf-matchday-board-head h2 {
 margin:0;
 color:#fff;
 font-size:1.05rem;
}

.mf-matchday-count {
 color:var(--mc-muted);
 font:800 .68rem var(--f-mono);
 letter-spacing:.07em;
 text-transform:uppercase;
}

.mf-matchday-card-grid {
 grid-template-columns:repeat(3,minmax(0,1fr));
 max-height:min(62vh,620px);
 overflow:auto;
 padding-right:.25rem;
 scrollbar-color:rgba(255,213,76,.72) rgba(255,255,255,.08);
}

.mf-matchday-card {
 position:relative;
 display:grid;
 gap:.58rem;
 overflow:hidden;
 isolation:isolate;
 padding:.85rem;
 border-top:3px solid var(--match-color,#ffd54c);
 transition:transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.mf-matchday-card-content {
 position:relative;
 z-index:1;
 display:grid;
 gap:.58rem;
 min-width:0;
}

.mf-matchday-card-bg {
 position:absolute;
 inset:0;
 z-index:0;
 display:block;
 background:
  linear-gradient(90deg, rgba(5,12,18,.9), rgba(5,12,18,.66) 54%, rgba(5,12,18,.88)),
  var(--match-venue-image, none) center/cover no-repeat;
 opacity:.72;
 transform:scale(1);
 transition:opacity .2s ease, transform .2s ease;
}

.mf-matchday-card--worldcup {
 min-height:12.2rem;
 border-color:rgba(255,255,255,.16);
 border-top-color:var(--match-host-accent,var(--match-color,#ffd54c));
 background:
  linear-gradient(135deg, rgba(255,213,76,.1), rgba(46,207,125,.07) 43%, rgba(127,189,255,.09)),
  rgba(5,14,21,.92);
 box-shadow:0 1rem 2.1rem rgba(0,0,0,.18);
}

.mf-matchday-card--worldcup::before {
 content:"";
 position:absolute;
 inset:0 0 auto;
 z-index:2;
 height:3px;
 background:linear-gradient(90deg,#ff4f6f 0 25%,#ffd54c 25% 52%,#2ecf7d 52% 78%,#7fbfff 78%);
 opacity:.95;
}

.mf-matchday-card--worldcup::after {
 content:"";
 position:absolute;
 inset:auto .85rem .65rem auto;
 z-index:0;
 width:5.3rem;
 height:5.3rem;
 border:1px solid rgba(255,255,255,.12);
 border-radius:50%;
 background:
  linear-gradient(transparent 49%, rgba(255,255,255,.12) 50%, transparent 51%),
  linear-gradient(90deg, transparent 49%, rgba(255,255,255,.12) 50%, transparent 51%);
 opacity:.28;
 pointer-events:none;
}

.mf-matchday-card--worldcup:hover,
.mf-matchday-card--worldcup:focus-within {
 border-color:rgba(255,255,255,.24);
 box-shadow:0 1.15rem 2.45rem rgba(0,0,0,.28), 0 0 0 1px rgba(255,213,76,.12) inset;
}

.mf-matchday-card--worldcup:hover .mf-matchday-card-bg,
.mf-matchday-card--worldcup:focus-within .mf-matchday-card-bg {
 opacity:.9;
 transform:scale(1.035);
}

.mf-matchday-card-worldcup-top {
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:.65rem;
 min-width:0;
}

.mf-matchday-card-worldcup-top span,
.mf-matchday-card-worldcup-top strong {
 display:inline-flex;
 align-items:center;
 min-width:0;
}

.mf-matchday-card-worldcup-top strong {
 color:#fff;
 font:800 .62rem/1.2 var(--f-mono);
 letter-spacing:.06em;
 text-transform:uppercase;
 text-align:right;
}

.mf-matchday-card--worldcup .mf-matchday-team-row {
 gap:.48rem;
 min-height:2.55rem;
 margin:.05rem 0 0;
}

.mf-matchday-card--worldcup .mf-matchday-team-mark {
 width:2.42rem;
 height:2.42rem;
 border-color:rgba(255,255,255,.42);
 border-radius:50%;
 background:rgba(255,255,255,.92);
 box-shadow:0 .55rem 1.05rem rgba(0,0,0,.2);
}

.mf-matchday-card--worldcup .mf-matchday-team-mark img {
 padding:.11rem;
}

.mf-matchday-card--worldcup .mf-matchday-venue-line {
 color:rgba(244,247,251,.9);
}

.mf-matchday-card--worldcup .mf-matchday-venue-line::before {
 content:"Host venue";
 display:block;
 margin-bottom:.12rem;
 color:var(--match-host-accent,#ffd54c);
 font:800 .55rem/1.2 var(--f-mono);
 letter-spacing:.08em;
 text-transform:uppercase;
}

.mf-matchday-card.is-hidden {
 display:none;
}

.mf-matchday-card h3 {
 margin:0;
 color:#fff;
 font-size:.98rem;
 line-height:1.18;
}

.mf-matchday-card-meta,
.mf-matchday-card-actions {
 display:flex;
 flex-wrap:wrap;
 gap:.38rem;
}

.mf-matchday-card-actions a {
 display:inline-flex;
 align-items:center;
 gap:.38rem;
 min-height:2rem;
 padding:.36rem .62rem;
 border-radius:999px;
 border:1px solid rgba(255,255,255,.13);
 color:#fff;
 text-decoration:none;
 font:800 .62rem var(--f-mono);
 text-transform:uppercase;
}

.mf-matchday-card-actions button {
 display:inline-flex;
 align-items:center;
 gap:.38rem;
 min-height:2rem;
 padding:.36rem .62rem;
 border:0;
 border-radius:999px;
 color:#07111b;
 background:var(--mc-accent);
 font:800 .62rem var(--f-mono);
 text-transform:uppercase;
 cursor:pointer;
}

.mf-matchday-card-actions a:first-child {
 background:var(--mc-accent);
 color:#07111b;
}

.mf-matchday-card--worldcup .mf-matchday-card-actions a:first-child {
 border-color:transparent;
 background:var(--match-host-accent,var(--mc-accent));
 color:#061019;
}

.mf-matchday-card--worldcup .mf-matchday-card-actions a:last-child {
 background:rgba(5,11,18,.58);
}

.mf-matchday-card--more {
 border-color:rgba(200,242,48,.82);
 background:
  radial-gradient(circle at 82% 18%, rgba(200,242,48,.2), transparent 12rem),
  linear-gradient(135deg, rgba(12,34,20,.94), rgba(6,18,29,.96));
}

.mf-matchday-card--more h3 {
 max-width:12ch;
}

.mf-matchday-empty {
 padding:1rem;
 border:1px dashed rgba(255,255,255,.16);
 border-radius:16px;
 color:var(--mc-muted);
}

.mf-matchday-link-desk {
 padding-top:clamp(.65rem,1.8vw,1.1rem);
}

.mf-matchday-pulse-shell {
 min-height:12rem;
}

.mf-matchday-pulse {
 position:relative;
 padding:clamp(.62rem,1.4vw,.85rem);
 border:1px solid rgba(255,255,255,.12);
 border-radius:18px;
 background:
  linear-gradient(90deg, rgba(233,34,60,.2), transparent 16%),
  radial-gradient(circle at 12% 12%, rgba(255,213,76,.16), transparent 13rem),
  radial-gradient(circle at 86% 18%, rgba(75,164,255,.2), transparent 17rem),
  linear-gradient(145deg, rgba(4,18,14,.96), rgba(7,17,26,.98));
 box-shadow:0 20px 54px rgba(0,0,0,.3);
 overflow:hidden;
}

.mf-matchday-pulse::before {
 content:"";
 position:absolute;
 inset:0;
 pointer-events:none;
 background:
  linear-gradient(90deg, #ef3340 0 12%, #ffd54c 12% 25%, #20c463 25% 40%, transparent 40%),
  repeating-linear-gradient(90deg, rgba(255,255,255,.045) 0 1px, transparent 1px 5rem);
 height:4px;
 opacity:.95;
}

.mf-matchday-pulse::after {
 content:"";
 position:absolute;
 top:0;
 bottom:0;
 left:-45%;
 width:38%;
 pointer-events:none;
 background:linear-gradient(90deg, transparent, rgba(255,255,255,.08), transparent);
 animation:mf-matchday-pulse-sweep 7s ease-in-out infinite;
}

@keyframes mf-matchday-pulse-sweep {
 0%, 42% { transform:translateX(0); opacity:0; }
 52% { opacity:1; }
 100% { transform:translateX(360%); opacity:0; }
}

.mf-matchday-pulse__header,
.mf-matchday-pulse__grid,
.mf-matchday-pulse__ticker {
 position:relative;
 z-index:1;
}

.mf-matchday-pulse__header {
 display:flex;
 align-items:end;
 justify-content:space-between;
 gap:.7rem;
 margin-bottom:.52rem;
}

.mf-matchday-pulse__header .stl-subheading {
 max-width:24ch !important;
 margin:0 !important;
 font-size:clamp(1.05rem,1.75vw,1.55rem) !important;
 line-height:1 !important;
 letter-spacing:0 !important;
}

.mf-matchday-pulse__ticker {
 display:grid;
 grid-template-columns:repeat(4,minmax(0,1fr));
 gap:.35rem;
 margin-bottom:.55rem;
}

.mf-matchday-pulse__ticker span {
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:.5rem;
 min-height:2.15rem;
 padding:.42rem .52rem;
 border:1px solid rgba(255,255,255,.12);
 border-radius:8px;
 background:rgba(255,255,255,.055);
 color:rgba(244,247,251,.82);
 font:800 .54rem var(--f-mono);
 text-transform:uppercase;
}

.mf-matchday-pulse__ticker strong {
 color:var(--mc-accent);
 font-size:1.05rem;
 font-family:var(--f-heading);
}

.mf-matchday-pulse__grid {
 display:grid;
 grid-template-columns:minmax(210px,.66fr) minmax(0,1.34fr);
 grid-template-areas:
  "spot lanes"
  "spot us";
 gap:.48rem;
}

.mf-matchday-pulse__spotlight,
.mf-matchday-pulse__us,
.mf-matchday-pulse-lane,
.mf-matchday-us-card {
 border:1px solid rgba(255,255,255,.12);
 border-radius:8px;
 background:rgba(1,10,8,.66);
}

.mf-matchday-pulse__spotlight {
 grid-area:spot;
 position:relative;
 display:grid;
 align-content:space-between;
 gap:.48rem;
 padding:.62rem;
 border-color:rgba(255,213,76,.28);
 overflow:hidden;
 isolation:isolate;
 --pulse-host-accent:#ffd54c;
}

.mf-matchday-pulse__spotlight > * {
 position:relative;
 z-index:1;
}

.mf-matchday-pulse__spotlight--worldcup {
 min-height:17.25rem;
 padding:.7rem;
 border-color:color-mix(in srgb, var(--pulse-host-accent) 68%, rgba(255,255,255,.18));
 background:
  linear-gradient(135deg, rgba(239,51,64,.18), transparent 26%),
  linear-gradient(315deg, rgba(32,196,99,.2), transparent 30%),
  rgba(1,10,8,.78);
 box-shadow:
  inset 0 0 0 1px rgba(255,255,255,.04),
  inset 0 -5px 0 color-mix(in srgb, var(--pulse-host-accent) 86%, transparent);
}

.mf-matchday-pulse__spotlight--worldcup::after {
 content:"";
 position:absolute;
 inset:0 0 auto;
 height:4px;
 background:linear-gradient(90deg, #ef3340 0 24%, #ffd54c 24% 50%, #20c463 50% 76%, #7fbfff 76%);
 z-index:2;
}

.mf-matchday-pulse__spotlight-bg {
 position:absolute !important;
 inset:0;
 z-index:0 !important;
 pointer-events:none;
 background:
  linear-gradient(180deg, rgba(1,10,8,.28), rgba(1,10,8,.86) 58%, rgba(1,10,8,.96)),
  radial-gradient(circle at 82% 18%, color-mix(in srgb, var(--pulse-host-accent) 34%, transparent), transparent 11rem),
  var(--pulse-venue-image);
 background-size:cover, auto, cover;
 background-position:center;
 opacity:.92;
 transform:scale(1.02);
}

.mf-matchday-pulse__spotlight-bg::after {
 content:"";
 position:absolute;
 inset:0;
 background:
  linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px),
  linear-gradient(0deg, rgba(255,255,255,.035) 1px, transparent 1px);
 background-size:4.6rem 4.6rem;
 mix-blend-mode:screen;
 opacity:.45;
}

.mf-matchday-pulse__hostbar,
.mf-matchday-pulse__venue {
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:.55rem;
 border:1px solid rgba(255,255,255,.12);
 border-radius:8px;
 background:rgba(0,0,0,.34);
 box-shadow:0 12px 24px rgba(0,0,0,.18);
 backdrop-filter:blur(8px);
}

.mf-matchday-pulse__hostbar {
 min-height:2.1rem;
 padding:.35rem .48rem;
}

.mf-matchday-pulse__hostbar span,
.mf-matchday-pulse__venue span {
 color:var(--pulse-host-accent);
 font:900 .54rem/1 var(--f-mono);
 text-transform:uppercase;
}

.mf-matchday-pulse__hostbar strong {
 color:#fff;
 font:900 .62rem/1 var(--f-mono);
 text-transform:uppercase;
 text-align:right;
}

.mf-matchday-pulse__venue {
 display:grid;
 gap:.16rem;
 justify-content:stretch;
 padding:.48rem;
 border-color:color-mix(in srgb, var(--pulse-host-accent) 34%, rgba(255,255,255,.12));
}

.mf-matchday-pulse__venue strong {
 color:#fff;
 font-size:.72rem;
 line-height:1.2;
}

.mf-matchday-pulse__spotlight > span,
.mf-matchday-pulse-lane > span,
.mf-matchday-us-card > span {
 color:var(--mc-accent);
 font:800 .6rem var(--f-mono);
 text-transform:uppercase;
}

.mf-matchday-pulse__spotlight h3 {
 margin:0;
 max-width:22ch;
 color:#fff;
 font-size:clamp(.96rem,1.35vw,1.2rem);
 line-height:1;
}

.mf-matchday-pulse__spotlight--worldcup h3 {
 max-width:18ch;
 font-size:clamp(1.15rem,2vw,1.58rem);
 text-shadow:0 2px 16px rgba(0,0,0,.7);
}

.mf-matchday-pulse__spotlight p {
 margin:0;
 color:var(--mc-muted);
 font-size:.82rem;
 line-height:1.45;
}

.mf-matchday-pulse__spotlight--worldcup p {
 max-width:28ch;
 color:rgba(244,247,251,.88);
 text-shadow:0 1px 10px rgba(0,0,0,.66);
}

.mf-matchday-pulse__actions {
 display:flex;
 flex-wrap:wrap;
 gap:.32rem;
}

.mf-matchday-pulse__actions a {
 display:inline-flex;
 align-items:center;
 justify-content:center;
 min-height:1.72rem;
 min-width:max-content;
 padding:.3rem .48rem;
 border:1px solid rgba(255,213,76,.25);
 border-radius:8px;
 color:#07111b;
 background:var(--mc-accent);
 text-decoration:none;
 font-weight:900;
 font-size:.62rem;
}

.mf-matchday-pulse__spotlight--worldcup .mf-matchday-pulse__actions a:first-child {
 border-color:transparent;
 background:linear-gradient(135deg, #ff4f6f, #ffd54c);
 color:#061009;
}

.mf-matchday-pulse__actions a:nth-child(n+2) {
 color:#fff;
 background:rgba(255,255,255,.04);
}

.mf-matchday-pulse__lanes {
 grid-area:lanes;
 display:grid;
 grid-template-columns:repeat(4,minmax(0,1fr));
 gap:.4rem;
}

.mf-matchday-pulse-lane {
 position:relative;
 display:grid;
 gap:.24rem;
 min-height:5.9rem;
 padding:.5rem .54rem;
 color:#fff;
 text-decoration:none;
 overflow:hidden;
 transition:transform .18s ease,border-color .18s ease,background-color .18s ease;
}

.mf-matchday-pulse-lane .mf-matchday-team-row,
.mf-matchday-pulse__spotlight .mf-matchday-team-row {
 margin-bottom:.08rem;
}

.mf-matchday-pulse-lane .mf-matchday-tab-logo,
.mf-matchday-pulse__spotlight .mf-matchday-tab-logo {
 margin-bottom:.08rem;
}

.mf-matchday-pulse-lane::before {
 content:"";
 position:absolute;
 inset:0 auto 0 0;
 width:4px;
 background:var(--pulse-color);
}

.mf-matchday-pulse-lane:hover,
.mf-matchday-pulse-lane:focus-visible,
.mf-matchday-us-card:hover,
.mf-matchday-us-card:focus-visible {
 transform:translateY(-2px);
 border-color:rgba(255,213,76,.62);
 background:rgba(255,255,255,.07);
}

.mf-matchday-pulse-lane strong {
 display:block;
 font-size:.72rem;
 line-height:1.15;
 display:-webkit-box;
 -webkit-line-clamp:2;
 -webkit-box-orient:vertical;
 overflow:hidden;
}

.mf-matchday-pulse-lane small {
 color:var(--mc-muted);
 font-size:.6rem;
 line-height:1.35;
 display:-webkit-box;
 -webkit-line-clamp:2;
 -webkit-box-orient:vertical;
 overflow:hidden;
}

.mf-matchday-pulse__us {
 grid-area:us;
 display:grid;
 gap:.42rem;
 padding:.52rem;
}

.mf-matchday-pulse__us > div:first-child {
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:.75rem;
}

.mf-matchday-pulse__us strong {
 color:#fff;
 font-size:.82rem;
}

.mf-matchday-pulse__story-grid {
 display:grid;
 grid-template-columns:repeat(4,minmax(0,1fr));
 gap:.36rem;
}

.mf-matchday-us-card {
 display:grid;
 grid-template-rows:auto auto 1fr;
 gap:.26rem;
 min-height:7.1rem;
 padding:.34rem;
 color:#fff;
 text-decoration:none;
 overflow:hidden;
 transition:transform .18s ease,border-color .18s ease,background-color .18s ease;
}

.mf-matchday-us-card img,
.mf-matchday-us-card__badge {
 width:100%;
 aspect-ratio:16/9;
 border-radius:6px;
 object-fit:cover;
 background:linear-gradient(135deg, rgba(255,213,76,.8), rgba(32,196,99,.65), rgba(73,167,255,.5));
}

.mf-matchday-us-card__badge {
 display:grid;
 place-items:center;
 color:#061009;
 font:900 1.4rem var(--f-heading);
}

.mf-matchday-us-card strong {
 display:-webkit-box;
 overflow:hidden;
 -webkit-line-clamp:2;
 -webkit-box-orient:vertical;
 font-size:.66rem;
 line-height:1.18;
}

.mf-matchday-link-shell {
 display:grid;
 grid-template-columns:minmax(250px,.78fr) minmax(0,1.22fr);
 grid-template-areas:
  "copy lanes"
  "copy accordion"
  "chips chips";
 gap:.85rem;
 padding:1rem;
 border:1px solid rgba(255,255,255,.1);
 border-radius:24px;
 background:
  radial-gradient(circle at 8% 10%, rgba(255,213,76,.12), transparent 16rem),
  radial-gradient(circle at 96% 88%, rgba(127,189,255,.13), transparent 18rem),
  linear-gradient(145deg, rgba(10,24,36,.94), rgba(4,11,17,.98));
 box-shadow:0 22px 60px rgba(0,0,0,.28);
}

.mf-matchday-link-copy {
 grid-area:copy;
 display:grid;
 align-content:start;
 gap:.65rem;
 padding:.85rem;
 border:1px solid rgba(255,255,255,.08);
 border-radius:18px;
 background:rgba(255,255,255,.035);
}

.mf-matchday-link-copy .stl-subheading {
 max-width:none !important;
 margin:0 !important;
 font-family:"Archivo Black", var(--f-heading), sans-serif !important;
 font-size:clamp(1.35rem,2vw,1.9rem) !important;
 font-weight:900 !important;
 line-height:1 !important;
 letter-spacing:-.045em !important;
 white-space:nowrap !important;
}

.mf-matchday-link-copy .mf-section-intro {
 max-width:34rem;
 margin:0;
 color:var(--mc-muted);
 font-size:.9rem;
 line-height:1.5;
}

.mf-matchday-link-actions {
 display:flex;
 flex-wrap:wrap;
 gap:.5rem;
 margin-top:.2rem;
}

.mf-matchday-lane-grid {
 grid-area:lanes;
 display:grid;
 grid-template-columns:repeat(4,minmax(0,1fr));
 gap:.65rem;
}

.mf-matchday-lane-card {
 position:relative;
 display:grid;
 align-content:space-between;
 gap:.65rem;
 min-height:150px;
 padding:.85rem;
 border:1px solid rgba(255,255,255,.1);
 border-radius:18px;
 background:
  linear-gradient(160deg, rgba(255,213,76,.08), transparent 45%),
  rgba(255,255,255,.045);
 color:#fff;
 text-decoration:none;
 overflow:hidden;
 transition:transform .18s ease,border-color .18s ease,background-color .18s ease;
}

.mf-matchday-lane-card::after {
 content:"";
 position:absolute;
 right:-1.7rem;
 bottom:-1.7rem;
 width:5rem;
 aspect-ratio:1;
 border-radius:50%;
 border:1px solid rgba(255,213,76,.28);
 opacity:.55;
}

.mf-matchday-lane-card:hover,
.mf-matchday-lane-card:focus-visible {
 transform:translateY(-3px);
 border-color:rgba(255,213,76,.62);
 background:rgba(255,255,255,.07);
}

.mf-matchday-lane-card span,
.mf-matchday-chip-bar span {
 display:inline-flex;
 width:max-content;
 align-items:center;
 padding:.28rem .48rem;
 border:1px solid rgba(255,213,76,.22);
 border-radius:999px;
 color:rgba(255,213,76,.92);
 font:800 .58rem var(--f-mono);
 letter-spacing:.08em;
 text-transform:uppercase;
}

.mf-matchday-lane-card strong {
 display:block;
 font-size:1rem;
 line-height:1.12;
}

.mf-matchday-lane-card small {
 color:var(--mc-muted);
 font-size:.75rem;
 line-height:1.4;
}

.mf-matchday-accordion {
 grid-area:accordion;
 display:grid;
 gap:.55rem;
}

.mf-matchday-accordion details {
 border:1px solid rgba(255,255,255,.1);
 border-radius:16px;
 background:rgba(255,255,255,.04);
 overflow:hidden;
}

.mf-matchday-accordion summary {
 cursor:pointer;
 padding:.72rem .85rem;
 color:#fff;
 font-weight:800;
 list-style:none;
}

.mf-matchday-accordion summary::-webkit-details-marker {
 display:none;
}

.mf-matchday-accordion summary::after {
 content:"+";
 float:right;
 color:var(--mc-accent);
 font-family:var(--f-mono);
}

.mf-matchday-accordion details[open] summary::after {
 content:"-";
}

.mf-matchday-accordion p {
 margin:0;
 padding:0 .85rem .85rem;
 color:var(--mc-muted);
 font-size:.82rem;
 line-height:1.5;
}

.mf-matchday-chip-bar {
 grid-area:chips;
 display:flex;
 flex-wrap:wrap;
 gap:.45rem;
 padding-top:.1rem;
}

.mf-matchday-chip-bar span {
 color:#fff;
 border-color:rgba(255,255,255,.12);
 background:rgba(255,255,255,.045);
}

@media (max-width: 1080px) {
 .mf-matchday-topline,
 .mf-matchday-modules {
  grid-template-columns:1fr;
 }

 .mf-matchday-summary,
 .mf-matchday-watchlist__grid,
 .mf-matchday-card-grid,
 .mf-matchday-world-grid,
 .mf-matchday-world-fixtures,
 .mf-matchday-lane-grid,
 .mf-matchday-pulse__ticker,
 .mf-matchday-pulse__lanes,
 .mf-matchday-pulse__story-grid {
  grid-template-columns:repeat(2,minmax(0,1fr));
 }

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

 .mf-matchday-link-shell {
  grid-template-columns:1fr;
  grid-template-areas:
   "copy"
   "lanes"
   "accordion"
  "chips";
 }

 .mf-matchday-pulse__grid {
  grid-template-columns:1fr;
  grid-template-areas:
   "spot"
   "lanes"
   "us";
 }

 .mf-matchday-link-copy .stl-subheading {
  max-width:none !important;
  white-space:nowrap !important;
 }
}

@media (max-width: 680px) {
 .mf-matchday-link-desk {
  display:none;
 }

 .mf-matchday-summary,
 .mf-matchday-watchlist__grid,
 .mf-matchday-card-grid,
 .mf-matchday-toolbar,
 .mf-matchday-world-grid,
 .mf-matchday-world-fixtures,
 .mf-matchday-lane-grid,
 .mf-matchday-pulse__ticker,
 .mf-matchday-pulse__lanes,
 .mf-matchday-pulse__story-grid {
  grid-template-columns:1fr;
 }

 .mf-matchday-stale,
 .mf-matchday-watchlist__head {
  display:grid;
  align-items:start;
 }

 .mf-matchday-freshness {
  display:grid;
  gap:.75rem;
 }

 .mf-matchday-freshness button {
  width:100%;
 }

 .mf-matchday-stale__links {
  justify-content:start;
 }

 .mf-matchday-controls {
  padding:.62rem;
 }

 .mf-matchday-controls summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
 }

 .mf-matchday-controls summary::after {
  content:"+";
  display:grid;
  place-items:center;
  width:1.95rem;
  height:1.95rem;
  border:1px solid rgba(255,213,76,.24);
  border-radius:999px;
  color:var(--mc-accent);
  font:900 1rem var(--f-mono);
 }

 .mf-matchday-controls[open] summary::after {
  content:"-";
 }

 .mf-matchday-tabs {
  flex-wrap:nowrap;
  overflow-x:auto;
  padding:.65rem .35rem .45rem 0;
  margin-right:-.35rem;
  scrollbar-color:rgba(255,213,76,.72) rgba(255,255,255,.08);
 }

 .mf-matchday-tabs::after {
  content:"More";
  position:sticky;
  right:0;
  display:inline-flex;
  align-items:center;
  min-height:1.85rem;
  padding:.32rem .5rem;
  border-radius:999px;
  color:#07111b;
  background:linear-gradient(90deg, rgba(200,242,48,.1), var(--mc-accent));
  font:900 .55rem var(--f-mono);
  text-transform:uppercase;
  pointer-events:none;
 }

 .mf-matchday-tabs button {
  flex:0 0 auto;
 }

 .mf-matchday-pulse__header {
  align-items:start;
  flex-direction:column;
 }

 .mf-matchday-pulse__spotlight h3,
 .mf-matchday-pulse__header .stl-subheading {
  max-width:none !important;
 }

 .mf-matchday-card-grid {
  max-height:none;
 }

 .mf-matchday-pathway-head,
 .mf-matchday-world-head {
  display:grid;
 }

 .mf-matchday-pathway-head small,
 .mf-matchday-world-head small {
  width:max-content;
  max-width:100%;
  white-space:normal;
 }

 .mf-matchday-mini-list--pathway,
 .mf-matchday-pathway-layout,
 .mf-matchday-pathway-grid {
  grid-template-columns:1fr;
 }

 .mf-matchday-pathway-news,
 .mf-matchday-pathway-news--lead {
  grid-template-columns:5.6rem minmax(0,1fr);
  min-height:auto;
 }

 .mf-matchday-pathway-news--lead {
  grid-column:auto;
 }

 .mf-matchday-pathway-news--lead .mf-matchday-pathway-news__thumb {
  width:5.6rem;
  height:5.6rem;
  min-height:0;
 }

 .mf-matchday-world-head {
  display:grid;
 }

 .mf-matchday-world-head small {
  width:max-content;
 }

 .mf-matchday-world-news,
 .mf-matchday-world-news--lead {
  grid-template-columns:5.6rem minmax(0,1fr);
  min-height:auto;
 }

 .mf-matchday-world-news--lead {
  grid-column:auto;
 }

 .mf-matchday-world-news--lead .mf-matchday-world-news__thumb,
 .mf-matchday-world-news--lead .mf-matchday-world-news__mark {
  width:5.6rem;
  height:auto;
  min-height:0;
 }

 .mf-matchday-link-copy .stl-subheading {
  max-width:18ch !important;
  white-space:normal !important;
 }
}

/* 10/10 audit pass: sharper Match Center hierarchy, clearer soccer utility, and stronger tap targets. */
body.mf-match-center-page.mf-v44-match .mf-v44-strip {
 position:relative;
 isolation:isolate;
 overflow:hidden;
 padding-block:clamp(.46rem, 1.15vw, .72rem) !important;
 border-bottom:1px solid rgba(245,200,66,.18);
 background:
  linear-gradient(90deg, rgba(3,8,6,.97) 0%, rgba(3,8,6,.76) 46%, rgba(3,8,6,.94) 100%),
  linear-gradient(180deg, rgba(5,18,12,.12), rgba(5,18,12,.9)),
  url("/assets/img/stl-hero/energizer-park-stl.jpg") center 42% / cover no-repeat !important;
}

body.mf-match-center-page.mf-v44-match .mf-v44-strip::after {
 content:"";
 position:absolute;
 inset:0;
 z-index:-1;
 pointer-events:none;
 background:
  linear-gradient(135deg, rgba(245,200,66,.12), transparent 28%),
  radial-gradient(circle at 78% 20%, rgba(45,184,75,.14), transparent 15rem);
}

body.mf-match-center-page.mf-v44-match .mf-v44-strip__inner {
 width:min(92rem, calc(100vw - 1.65rem));
 grid-template-columns:minmax(22rem,.88fr) minmax(0,1.12fr);
 gap:clamp(.48rem,1vw,.72rem);
 align-items:stretch;
}

body.mf-match-center-page.mf-v44-match .mf-v44-strip__copy,
body.mf-match-center-page.mf-v44-match .mf-v44-lane {
 border-color:rgba(245,200,66,.2);
 background:rgba(5,15,10,.74);
 backdrop-filter:blur(10px);
}

body.mf-match-center-page.mf-v44-match .mf-v44-strip__copy h2 {
 max-width:28ch;
 font-family:"Archivo Black", var(--f-heading, sans-serif);
 font-size:clamp(1.25rem,1.72vw,1.72rem) !important;
 line-height:1.02 !important;
 letter-spacing:0;
}

body.mf-match-center-page.mf-v44-match .mf-v44-proof span,
body.mf-match-center-page.mf-v44-match .mf-v44-lane span {
 letter-spacing:0;
}

body.mf-match-center-page.mf-v44-match .mf-v44-lanes {
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:.52rem;
}

body.mf-match-center-page.mf-v44-match .mf-v44-lane {
 min-height:5.85rem;
 padding:.58rem;
 display:flex;
 flex-direction:column;
 box-sizing:border-box;
}

body.mf-match-center-page.mf-v44-match .mf-v44-lane strong {
 font-size:.82rem;
 line-height:1.2;
}

body.mf-match-center-page.mf-v44-match .mf-v44-lane em,
.mf-matchday-watchlist__head a,
.mf-matchday-card-actions a,
.mf-matchday-mini-empty__links a {
 min-height:44px;
}

body.mf-match-center-page .mf-matchday-desk {
 padding-top:clamp(1rem,2.4vw,1.6rem) !important;
}

body.mf-match-center-page .mf-matchday-desk .stl-section-header-row {
 align-items:end;
 border-bottom:1px solid rgba(245,200,66,.18);
 padding-bottom:.8rem;
}

body.mf-match-center-page .mf-matchday-desk .stl-subheading {
 max-width:22ch;
 font-size:clamp(1.75rem,2.7vw,2.5rem);
 line-height:1.04;
}

body.mf-match-center-page .mf-section-intro--local {
 max-width:68ch;
}

body.mf-match-center-page .mf-matchday-summary {
 grid-template-columns:repeat(5,minmax(0,1fr));
 gap:.62rem;
}

body.mf-match-center-page .mf-matchday-summary-card,
body.mf-match-center-page .mf-matchday-feature {
 padding:.72rem;
 min-height:9.1rem;
 border-color:rgba(245,200,66,.16);
 background:rgba(6,18,12,.74);
}

body.mf-match-center-page .mf-matchday-feature {
 border-color:rgba(214,255,31,.26);
 background:
  linear-gradient(135deg, rgba(214,255,31,.1), rgba(45,184,75,.07)),
  rgba(6,18,12,.82);
}

body.mf-match-center-page .mf-matchday-watchlist {
 border-color:rgba(45,184,75,.22);
 background:
  radial-gradient(circle at 0 0, rgba(245,200,66,.16), transparent 15rem),
  linear-gradient(135deg, rgba(45,184,75,.08), rgba(127,189,255,.06)),
  rgba(7,18,22,.88);
}

body.mf-match-center-page .mf-matchday-watchitem {
 min-height:7.2rem;
 border-color:rgba(255,255,255,.12);
}

body.mf-match-center-page .mf-matchday-tabs button,
body.mf-match-center-page .mf-matchday-filter-row button {
 min-height:44px;
}

body.mf-match-center-page .mf-matchday-toolbar :is(input,select) {
 min-height:44px;
}

body.mf-match-center-page .mf-matchday-pathway-news,
body.mf-match-center-page .mf-matchday-world-news,
body.mf-match-center-page .mf-matchday-mini,
body.mf-match-center-page .mf-matchday-card {
 border-color:rgba(245,200,66,.14);
}

@media (max-width: 1080px) {
 body.mf-match-center-page.mf-v44-match .mf-v44-strip__inner,
 body.mf-match-center-page.mf-v44-match .mf-v44-lanes {
  grid-template-columns:1fr;
 }

 body.mf-match-center-page.mf-v44-match .mf-v44-lane {
  min-height:4.75rem;
 }

 body.mf-match-center-page .mf-matchday-summary {
  grid-template-columns:repeat(2,minmax(0,1fr));
 }
}

@media (max-width: 680px) {
 body.mf-match-center-page.mf-v44-match .mf-v44-strip {
  padding-block:.5rem !important;
  background:
   linear-gradient(180deg, rgba(3,8,6,.95), rgba(3,8,6,.9)),
   url("/assets/img/stl-hero/energizer-park-stl.jpg") center / cover no-repeat !important;
 }

 body.mf-match-center-page.mf-v44-match .mf-v44-strip__inner {
  width:min(100% - 1rem, 42rem);
  gap:.42rem;
 }

 body.mf-match-center-page.mf-v44-match .mf-v44-strip__copy,
 body.mf-match-center-page.mf-v44-match .mf-v44-lane {
  padding:.6rem;
 }

 body.mf-match-center-page.mf-v44-match .mf-v44-strip__copy h2 {
  max-width:24ch;
  font-size:clamp(1.18rem,5.4vw,1.52rem);
 }

 body.mf-match-center-page.mf-v44-match .mf-v44-lane {
  min-height:4.1rem;
 }

 body.mf-match-center-page .mf-matchday-summary {
  grid-template-columns:1fr;
 }

 body.mf-match-center-page .mf-matchday-summary-card,
 body.mf-match-center-page .mf-matchday-feature {
  min-height:0;
 }

 body.mf-match-center-page .mf-matchday-watchitem {
  min-height:5.8rem;
 }
}

/* Match Center utility-first rebuild */
body.mf-match-center-page [data-match-hero],
body.mf-match-center-page .mf-matchday-desk > .stl-container > .stl-section-header-row,
body.mf-match-center-page .mf-matchday-link-desk {
 display:none !important;
}

body.mf-match-center-page .mf-matchday-desk {
 padding:clamp(1rem,2.2vw,2rem) 0 clamp(2.5rem,5vw,4.5rem) !important;
 background:
  radial-gradient(circle at 15% 0, rgba(245,200,66,.07), transparent 24rem),
  linear-gradient(180deg, #050a07, #030706 60%, #050a07);
}

body.mf-match-center-page .mf-matchday-desk > .stl-container {
 width:min(1180px, calc(100% - 2rem));
}

body.mf-match-center-page .mf-matchday-hero {
 display:grid;
 gap:1rem;
 padding:0;
 border:0;
 background:transparent;
}

body.mf-match-center-page .mf-matchday-command {
 display:flex;
 align-items:end;
 justify-content:space-between;
 gap:1rem;
 padding:.15rem 0 .7rem;
 border-bottom:1px solid rgba(245,200,66,.25);
}

body.mf-match-center-page .mf-matchday-command h1 {
 margin:.25rem 0 .35rem;
 color:#f7faf7;
 font-family:"Archivo Black", var(--f-heading, sans-serif);
 font-size:clamp(2rem,3.4vw,3.35rem);
 line-height:.98;
 letter-spacing:-.035em;
}

body.mf-match-center-page .mf-matchday-command p {
 max-width:70ch;
 margin:0;
 color:#cbd3cc;
 font-size:clamp(.95rem,1.3vw,1.08rem);
 line-height:1.55;
}

body.mf-match-center-page .mf-matchday-overview {
 display:grid;
 grid-template-columns:1.1fr 1.05fr 1.35fr .66fr auto;
 gap:.65rem;
 padding:.7rem;
 border:1px solid rgba(245,200,66,.22);
 border-radius:1.1rem;
 background:linear-gradient(135deg,rgba(8,24,16,.96),rgba(8,17,29,.96));
}

body.mf-match-center-page .mf-matchday-overview > :is(div,article,.mf-matchday-overview__following) {
 display:grid;
 align-content:center;
 gap:.2rem;
 min-width:0;
 min-height:4.65rem;
 padding:.65rem;
 border:1px solid rgba(255,255,255,.1);
 border-radius:.8rem;
 background:rgba(2,11,7,.65);
}

body.mf-match-center-page .mf-matchday-overview span,
body.mf-match-center-page .mf-matchday-row__time span,
body.mf-match-center-page .mf-matchday-group__head span {
 color:#f5c842;
 font:700 .68rem/1.2 "JetBrains Mono", monospace;
 letter-spacing:.06em;
 text-transform:uppercase;
}

body.mf-match-center-page .mf-matchday-overview strong {
 overflow:hidden;
 color:#f7faf7;
 font-size:.88rem;
 line-height:1.25;
 text-overflow:ellipsis;
}

body.mf-match-center-page .mf-matchday-overview small {
 overflow:hidden;
 color:#aeb9b1;
 font-size:.72rem;
 line-height:1.35;
 text-overflow:ellipsis;
}

body.mf-match-center-page .mf-matchday-overview__intro strong {
 color:#d6ff1f;
}

body.mf-match-center-page .mf-matchday-overview__featured {
 border-color:rgba(214,255,31,.25) !important;
 background:linear-gradient(135deg,rgba(214,255,31,.07),rgba(45,184,75,.05)) !important;
}

body.mf-match-center-page .mf-matchday-overview__following {
 border:1px solid rgba(255,255,255,.1);
 border-radius:.8rem !important;
 background:rgba(2,11,7,.65);
 color:inherit;
 font-family:inherit;
 text-align:left;
}

body.mf-match-center-page .mf-matchday-overview__following[aria-pressed="true"] {
 border-color:#d6ff1f;
 background:rgba(214,255,31,.1);
}

body.mf-match-center-page .mf-matchday-overview__featured .mf-matchday-team-row {
 margin-bottom:.15rem;
}

body.mf-match-center-page .mf-matchday-refresh-toggle {
 align-self:stretch;
 min-width:8.5rem;
 min-height:44px;
 padding:.55rem .7rem;
 border:1px solid rgba(245,200,66,.3);
 border-radius:.65rem !important;
 background:#0a120d;
 color:#f5c842;
 font:700 .65rem/1.2 "JetBrains Mono", monospace;
}

body.mf-match-center-page .mf-matchday-tools-sticky {
 display:grid;
 gap:.65rem;
}

body.mf-match-center-page .mf-matchday-date-nav {
 display:grid;
 grid-template-columns:auto minmax(0,1fr) auto;
 gap:.55rem;
 align-items:center;
}

body.mf-match-center-page .mf-matchday-date-scroll {
 display:flex;
 gap:.45rem;
 overflow-x:auto;
 padding:.15rem .8rem;
 border-inline:1px solid rgba(245,200,66,.12);
 scroll-padding-inline:.8rem;
 scroll-snap-type:x proximity;
 scrollbar-width:thin;
 -webkit-mask-image:linear-gradient(90deg,transparent,#000 .75rem,#000 calc(100% - .75rem),transparent);
 mask-image:linear-gradient(90deg,transparent,#000 .75rem,#000 calc(100% - .75rem),transparent);
}

body.mf-match-center-page .mf-matchday-date-scroll button {
 scroll-snap-align:start;
}

body.mf-match-center-page .mf-matchday-date-scroll:focus-visible {
 border-radius:.75rem;
}

body.mf-match-center-page .mf-matchday-date-nav button {
 flex:0 0 auto;
 min-height:44px;
 padding:.62rem .85rem;
 border:1px solid rgba(245,200,66,.22);
 border-radius:.7rem;
 background:#09100c;
 color:#eef3ef;
 font:700 .72rem/1.2 "JetBrains Mono", monospace;
}

body.mf-match-center-page .mf-matchday-date-nav button.is-active {
 border-color:#f5c842;
 background:linear-gradient(100deg,#f5c842,#d6ff1f);
 color:#061008;
}

body.mf-match-center-page .mf-matchday-date-nav button:disabled {
 opacity:.45;
 cursor:not-allowed;
}

body.mf-match-center-page .mf-matchday-controls {
 margin:0;
 padding:.65rem;
 border:1px solid rgba(245,200,66,.17);
 border-radius:1rem;
 background:rgba(8,17,29,.82);
}

body.mf-match-center-page .mf-matchday-controls summary {
 display:none;
}

body.mf-match-center-page .mf-matchday-toolbar {
 display:grid;
 grid-template-columns:minmax(15rem,1.35fr) repeat(3,minmax(9rem,.8fr)) auto;
 gap:.55rem;
 margin:0;
}

body.mf-match-center-page .mf-matchday-toolbar label {
 display:grid;
 gap:.28rem;
 color:#d8dfda;
 font:700 .65rem/1.2 "JetBrains Mono", monospace;
 letter-spacing:.04em;
 text-transform:uppercase;
}

body.mf-match-center-page .mf-matchday-toolbar :is(input,select) {
 width:100%;
 min-height:48px;
 border-color:rgba(255,255,255,.16);
 border-radius:.65rem;
 background:#050d09;
 color:#f5f7f5;
 font:600 .82rem/1.2 "Archivo", sans-serif;
}

body.mf-match-center-page .mf-matchday-clear {
 align-self:end;
 min-height:48px;
 padding:.65rem .85rem;
 border:1px solid rgba(245,200,66,.25);
 border-radius:.65rem;
 background:transparent;
 color:#f5c842;
 font:700 .7rem/1.2 "JetBrains Mono", monospace;
}

body.mf-match-center-page .mf-matchday-guide-head {
 display:flex;
 align-items:end;
 justify-content:space-between;
 gap:1rem;
 margin:.4rem 0 0;
 padding:.7rem 0 .65rem;
 border-bottom:1px solid rgba(245,200,66,.2);
}

body.mf-match-center-page .mf-matchday-guide-head h2 {
 margin:.2rem 0 0;
 color:#f7faf7;
 font-family:"Archivo Black", var(--f-heading, sans-serif);
 font-size:clamp(1.55rem,2.4vw,2.25rem);
}

body.mf-match-center-page .mf-matchday-count {
 color:#d6ff1f;
 font:700 .72rem/1.2 "JetBrains Mono", monospace;
 text-transform:uppercase;
}

body.mf-match-center-page .mf-matchday-card-grid {
 display:grid;
 grid-template-columns:1fr;
 grid-auto-rows:auto;
 gap:.85rem;
 margin:0;
 max-height:none;
 overflow:visible;
 padding-right:0;
}

body.mf-match-center-page .mf-matchday-group {
 overflow:hidden;
 border:1px solid rgba(245,200,66,.18);
 border-radius:1rem;
 background:rgba(3,12,8,.78);
}

body.mf-match-center-page .mf-matchday-group__head {
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:1rem;
 min-height:44px;
 padding:.65rem .9rem;
 border-bottom:1px solid rgba(245,200,66,.16);
 background:linear-gradient(90deg,rgba(245,200,66,.08),rgba(8,17,29,.72));
}

body.mf-match-center-page .mf-matchday-group__head h3 {
 margin:0;
 color:#f7faf7;
 font-family:"Archivo Black", var(--f-heading, sans-serif);
 font-size:.9rem;
}

body.mf-match-center-page .mf-matchday-group__rows {
 display:grid;
}

body.mf-match-center-page .mf-matchday-row {
 display:grid;
 grid-template-columns:7.5rem minmax(18rem,1.8fr) minmax(9rem,.75fr) auto;
 gap:.8rem;
 align-items:center;
 min-height:7.25rem;
 padding:.85rem .9rem;
 border:0;
 border-bottom:1px solid rgba(255,255,255,.09);
 background:rgba(2,10,7,.7);
}

body.mf-match-center-page .mf-matchday-row:last-child {
 border-bottom:0;
}

body.mf-match-center-page .mf-matchday-row.is-live {
 box-shadow:inset 4px 0 #ff4f6f;
 background:linear-gradient(90deg,rgba(255,79,111,.08),rgba(2,10,7,.72) 22%);
}

body.mf-match-center-page .mf-matchday-row.is-world-cup {
 box-shadow:inset 4px 0 var(--match-host-accent,#7fbfff);
}

body.mf-match-center-page .mf-matchday-row__time {
 display:grid;
 gap:.28rem;
}

body.mf-match-center-page .mf-matchday-row__time strong {
 color:#f7faf7;
 font-family:"Archivo Black", var(--f-heading, sans-serif);
 font-size:1rem;
 line-height:1.15;
}

body.mf-match-center-page .mf-matchday-row__time span.is-live {
 color:#ff8aa2;
}

body.mf-match-center-page .mf-matchday-row__teams {
 display:grid;
 gap:.35rem;
 min-width:0;
}

body.mf-match-center-page .mf-matchday-team-lines {
 display:grid;
 gap:.28rem;
}

body.mf-match-center-page .mf-matchday-team-line {
 display:grid;
 grid-template-columns:2.1rem minmax(0,1fr);
 gap:.5rem;
 align-items:center;
 min-height:44px;
 color:inherit;
 text-decoration:none;
}

body.mf-match-center-page .mf-matchday-team-line:has(> strong:only-child) {
 grid-template-columns:1fr;
}

body.mf-match-center-page .mf-matchday-team-line .mf-matchday-team-mark {
 width:2rem;
 height:2rem;
}

body.mf-match-center-page .mf-matchday-team-line strong {
 margin:0;
 color:#f8faf8;
 font-family:"Archivo Black", var(--f-heading, sans-serif);
 font-size:clamp(.82rem,1.05vw,.98rem);
 line-height:1.2;
}

body.mf-match-center-page .mf-matchday-row__teams p,
body.mf-match-center-page .mf-matchday-row__watch {
 margin:0;
 color:#aeb8b1;
 font-size:.75rem;
 line-height:1.4;
}

body.mf-match-center-page .mf-matchday-row__watch {
 display:grid;
 gap:.2rem;
 min-width:0;
}

body.mf-match-center-page .mf-matchday-row__watch span {
 overflow:hidden;
 color:#eef3ef;
 font-weight:700;
 text-overflow:ellipsis;
 white-space:nowrap;
}

body.mf-match-center-page .mf-matchday-row__actions {
 display:flex;
 justify-content:flex-end;
 gap:.45rem;
}

body.mf-match-center-page .mf-matchday-row__actions :is(button,a) {
 display:inline-flex;
 align-items:center;
 justify-content:center;
 min-height:44px;
 padding:.58rem .72rem;
 border:1px solid rgba(245,200,66,.24);
 border-radius:.65rem;
 background:#07100b;
 color:#f5c842;
 font:700 .68rem/1.15 "JetBrains Mono", monospace;
 text-align:center;
 text-decoration:none;
}

body.mf-match-center-page .mf-matchday-row__actions .mf-matchday-follow {
 border-color:rgba(245,200,66,.16);
 background:transparent;
 color:#d8be63;
}

body.mf-match-center-page .mf-matchday-row__actions .mf-matchday-watch-link {
 border-color:transparent;
 background:transparent;
 color:#aeb8b1;
 text-decoration:underline;
 text-decoration-color:rgba(174,184,177,.38);
 text-underline-offset:.22rem;
}

body.mf-match-center-page .mf-matchday-row__actions .mf-matchday-view {
 border-color:#d6ff1f;
 background:#d6ff1f;
 color:#061008;
}

body.mf-match-center-page .mf-matchday-follow.is-followed {
 border-color:#d6ff1f;
 background:rgba(214,255,31,.12);
 color:#d6ff1f;
}

body.mf-match-center-page :is(button,a,input,select,summary):focus-visible {
 outline:3px solid #7fbfff !important;
 outline-offset:3px !important;
}

body.mf-match-center-page .mf-matchday-empty {
 display:grid;
 justify-items:start;
 gap:.45rem;
 padding:1.4rem;
 border:1px dashed rgba(245,200,66,.35);
 border-radius:1rem;
 background:rgba(8,17,29,.72);
 color:#c8d0ca;
}

body.mf-match-center-page .mf-matchday-empty strong {
 color:#f7faf7;
 font-family:"Archivo Black", var(--f-heading, sans-serif);
}

body.mf-match-center-page .mf-matchday-empty button {
 min-height:44px;
 margin-top:.25rem;
 padding:.6rem .85rem;
 border:1px solid #d6ff1f;
 border-radius:.65rem;
 background:#d6ff1f;
 color:#061008;
 font-weight:800;
}

body.mf-match-center-page .mf-matchday-group__more {
 width:100%;
 min-height:48px;
 border:0;
 border-top:1px solid rgba(245,200,66,.16);
 background:rgba(245,200,66,.06);
 color:#f5c842;
 font:700 .72rem/1.2 "JetBrains Mono", monospace;
}

body.mf-match-center-page .mf-matchday-loading {
 display:grid;
 gap:.7rem;
 padding:1rem;
 color:#dce4de;
}

body.mf-match-center-page .mf-matchday-loading div {
 height:5.5rem;
 border-radius:.85rem;
 background:linear-gradient(90deg,#09130e,#12231a,#09130e);
 background-size:200% 100%;
 animation:mf-match-loading 1.2s linear infinite;
}

@keyframes mf-match-loading {
 to { background-position:-200% 0; }
}

body.mf-match-center-page .mf-matchday-dialog {
 position:fixed;
 inset:0;
 width:min(760px,calc(100% - 1.5rem));
 max-height:min(86vh,720px);
 margin:auto !important;
 padding:0;
 border:1px solid rgba(245,200,66,.35);
 border-radius:1rem;
 background:#07110c;
 color:#f6f8f6;
 box-shadow:0 24px 80px rgba(0,0,0,.7);
}

body.mf-match-center-page .mf-matchday-dialog::backdrop {
 background:rgba(0,5,3,.8);
 backdrop-filter:blur(5px);
}

body.mf-match-center-page .mf-matchday-dialog__head {
 display:flex;
 align-items:center;
 justify-content:space-between;
 min-height:56px;
 padding:.65rem .85rem;
 border-bottom:1px solid rgba(245,200,66,.2);
}

body.mf-match-center-page .mf-matchday-dialog__head span {
 color:#f5c842;
 font:700 .72rem/1.2 "JetBrains Mono", monospace;
 text-transform:uppercase;
}

body.mf-match-center-page .mf-matchday-dialog__head button {
 min-height:44px;
 padding:.55rem .75rem;
 border:1px solid rgba(255,255,255,.18);
 border-radius:.6rem;
 background:#0b1710;
 color:#fff;
 font-weight:700;
}

body.mf-match-center-page .mf-matchday-detail-tabs {
 display:flex;
 gap:.35rem;
 overflow-x:auto;
 padding:.65rem .85rem;
 border-bottom:1px solid rgba(255,255,255,.1);
}

body.mf-match-center-page .mf-matchday-detail-tabs button {
 flex:0 0 auto;
 min-height:44px;
 padding:.55rem .75rem;
 border:1px solid rgba(245,200,66,.2);
 border-radius:.6rem;
 background:#09130e;
 color:#dfe5e0;
 font-weight:700;
}

body.mf-match-center-page .mf-matchday-detail-tabs button.is-active {
 border-color:#d6ff1f;
 color:#d6ff1f;
}

body.mf-match-center-page .mf-matchday-detail-panel {
 min-height:15rem;
 padding:1rem;
}

body.mf-match-center-page .mf-matchday-detail-summary {
 display:grid;
 grid-template-columns:auto minmax(0,1fr) auto;
 gap:1rem;
 align-items:center;
 padding:1rem;
 border:1px solid rgba(245,200,66,.16);
 border-radius:.8rem;
 background:rgba(4,14,9,.78);
}

body.mf-match-center-page .mf-matchday-detail-summary h2 {
 margin:.25rem 0;
 font-family:"Archivo Black", var(--f-heading, sans-serif);
 font-size:clamp(1.15rem,3vw,1.8rem);
}

body.mf-match-center-page .mf-matchday-detail-summary p,
body.mf-match-center-page .mf-matchday-detail-empty p,
body.mf-match-center-page .mf-matchday-detail-watch p {
 color:#b6c0b8;
}

body.mf-match-center-page .mf-matchday-detail-score {
 color:#d6ff1f;
 font-family:"Archivo Black", var(--f-heading, sans-serif);
 font-size:1.25rem;
}

body.mf-match-center-page .mf-matchday-detail-empty,
body.mf-match-center-page .mf-matchday-detail-watch {
 display:grid;
 gap:.45rem;
 padding:1.2rem;
 border:1px dashed rgba(245,200,66,.3);
 border-radius:.8rem;
}

body.mf-match-center-page .mf-matchday-detail-watch a {
 display:inline-flex;
 align-items:center;
 justify-content:center;
 width:max-content;
 min-height:44px;
 padding:.6rem .8rem;
 border-radius:.6rem;
 background:#d6ff1f;
 color:#061008;
 font-weight:800;
 text-decoration:none;
}

body.mf-match-center-page .mf-matchday-detail-page-link {
 display:inline-flex;
 align-items:center;
 justify-content:center;
 min-height:44px;
 margin-top:.75rem;
 padding:.6rem .8rem;
 border:1px solid #d6ff1f;
 border-radius:.6rem;
 background:#d6ff1f;
 color:#061008;
 font-weight:800;
 text-decoration:none;
}

@media (max-width: 1050px) {
 body.mf-match-center-page .mf-matchday-overview {
  grid-template-columns:repeat(2,minmax(0,1fr));
 }

 body.mf-match-center-page .mf-matchday-refresh-toggle {
  grid-column:span 2;
 }

 body.mf-match-center-page .mf-matchday-toolbar {
  grid-template-columns:repeat(2,minmax(0,1fr));
 }

 body.mf-match-center-page .mf-matchday-search {
  grid-column:span 2;
 }

 body.mf-match-center-page .mf-matchday-row {
  grid-template-columns:6.5rem minmax(15rem,1fr) auto;
 }

 body.mf-match-center-page .mf-matchday-row__watch {
  display:none;
 }
}

@media (max-width: 680px) {
 body.mf-match-center-page .mf-matchday-desk > .stl-container {
  width:min(100% - 1rem,42rem);
 }

 body.mf-match-center-page .mf-matchday-command {
  padding-bottom:.75rem;
 }

 body.mf-match-center-page .mf-matchday-command h1 {
  font-size:clamp(2rem,11vw,3rem);
 }

 body.mf-match-center-page .mf-matchday-overview {
  grid-template-columns:repeat(2,minmax(0,1fr));
  padding:.55rem;
 }

 body.mf-match-center-page .mf-matchday-overview > :is(div,article) {
  min-height:0;
 }

 body.mf-match-center-page .mf-matchday-overview__intro,
 body.mf-match-center-page .mf-matchday-overview__following {
  display:none !important;
 }

 body.mf-match-center-page .mf-matchday-refresh-toggle {
  grid-column:span 2;
  min-height:44px;
 }

 body.mf-match-center-page .mf-matchday-date-nav {
  grid-template-columns:3.6rem minmax(0,1fr) 3.6rem;
  gap:.35rem;
 }

 body.mf-match-center-page .mf-matchday-date-scroll {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.3rem;
  overflow:hidden;
  padding:.15rem;
  border-inline:0;
  -webkit-mask-image:none;
  mask-image:none;
 }

 body.mf-match-center-page .mf-matchday-tools-sticky {
  position:sticky;
  top:4.35rem;
  z-index:12;
  padding:.35rem;
  margin-inline:-.35rem;
  border:1px solid rgba(245,200,66,.15);
  border-radius:.85rem;
  background:rgba(4,11,7,.96);
  backdrop-filter:blur(12px);
 }

 body.mf-match-center-page .mf-matchday-date-nav button {
  width:100%;
  min-width:0;
  padding:.55rem .6rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
 }

 body.mf-match-center-page .mf-matchday-controls {
  padding:.55rem;
 }

 body.mf-match-center-page .mf-matchday-controls summary {
  display:flex;
  justify-content:space-between;
  align-items:center;
  min-height:44px;
  padding:.45rem;
 }

 body.mf-match-center-page .mf-matchday-controls:not([open]) .mf-matchday-toolbar {
  display:none;
 }

 body.mf-match-center-page .mf-matchday-toolbar,
 body.mf-match-center-page .mf-matchday-search {
  grid-template-columns:1fr;
  grid-column:auto;
 }

 body.mf-match-center-page .mf-matchday-toolbar {
  padding-top:.5rem;
 }

 body.mf-match-center-page .mf-matchday-row {
  grid-template-columns:1fr;
  gap:.6rem;
  padding:.85rem;
 }

 body.mf-match-center-page .mf-matchday-row__time {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
 }

 body.mf-match-center-page .mf-matchday-row__teams {
  align-items:start;
 }

 body.mf-match-center-page .mf-matchday-row__actions {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
 }

 body.mf-match-center-page .mf-matchday-row__actions :is(button,a) {
  padding:.55rem .35rem;
  font-size:.62rem;
 }

 body.mf-match-center-page .mf-matchday-row__actions .mf-matchday-watch-link {
  display:none;
 }

 body.mf-match-center-page .mf-matchday-detail-summary {
  grid-template-columns:1fr;
 }

 body.mf-match-center-page .mf-matchday-dialog {
  max-height:92vh;
 }
}

@media (prefers-reduced-motion: reduce) {
 body.mf-match-center-page .mf-matchday-loading div {
  animation:none;
 }
}

/* Desktop three-column fixture board: denser scanning without shrinking controls. */
@media (min-width: 1051px) {
 body.mf-match-center-page .mf-matchday-card-grid {
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:start;
 }

 body.mf-match-center-page .mf-matchday-group {
  min-width:0;
 }

 body.mf-match-center-page .mf-matchday-group--remainder-1:not(:has(.mf-matchday-row:nth-child(3))),
 body.mf-match-center-page .mf-matchday-group--remainder-2:not(:has(.mf-matchday-row:nth-child(3))) {
  grid-column:1 / -1;
 }

 body.mf-match-center-page .mf-matchday-group--remainder-2:not(:has(.mf-matchday-row:nth-child(3))) .mf-matchday-group__rows {
  grid-template-columns:repeat(2,minmax(0,1fr));
 }

 body.mf-match-center-page .mf-matchday-group--remainder-2:not(:has(.mf-matchday-row:nth-child(3))) .mf-matchday-row:first-child {
  border-right:1px solid rgba(255,255,255,.09);
 }

 body.mf-match-center-page .mf-matchday-group:has(.mf-matchday-row:nth-child(3)) {
  grid-column:1 / -1;
 }

 body.mf-match-center-page .mf-matchday-group:has(.mf-matchday-row:nth-child(3)) .mf-matchday-group__rows {
  grid-template-columns:repeat(6,minmax(0,1fr));
 }

 body.mf-match-center-page .mf-matchday-group:has(.mf-matchday-row:nth-child(3)) .mf-matchday-row:not(:nth-child(3n)) {
  border-right:1px solid rgba(255,255,255,.09);
 }

 body.mf-match-center-page .mf-matchday-group:has(.mf-matchday-row:nth-child(3)) .mf-matchday-row {
  grid-column:span 2;
 }

 body.mf-match-center-page .mf-matchday-group--remainder-1:has(.mf-matchday-row:nth-child(3)) .mf-matchday-row:last-child {
  grid-column:1 / -1;
 }

 body.mf-match-center-page .mf-matchday-group--remainder-2:has(.mf-matchday-row:nth-child(3)) .mf-matchday-row:nth-last-child(-n+2) {
  grid-column:span 3;
 }

 body.mf-match-center-page .mf-matchday-row {
  grid-template-columns:4.8rem minmax(0,1fr);
  gap:.5rem .62rem;
  align-content:center;
  min-height:9.15rem;
  padding:.72rem;
 }

 body.mf-match-center-page .mf-matchday-row__time {
  grid-column:1;
  grid-row:1 / span 2;
  align-content:start;
 }

 body.mf-match-center-page .mf-matchday-row__teams {
  grid-column:2;
  grid-row:1;
 }

 body.mf-match-center-page .mf-matchday-row__watch {
  display:none;
 }

 body.mf-match-center-page .mf-matchday-row__actions {
  grid-column:2;
  grid-row:2;
  justify-content:flex-start;
  flex-wrap:wrap;
 }

 body.mf-match-center-page .mf-matchday-row__actions :is(button,a) {
  min-width:0;
  padding:.52rem .56rem;
  font-size:.59rem;
 }

 body.mf-match-center-page .mf-matchday-row__actions .mf-matchday-watch-link {
  max-width:8.5rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
 }

 body.mf-match-center-page .mf-matchday-group--single {
  grid-column:1 / -1;
 }

 body.mf-match-center-page .mf-matchday-group--single .mf-matchday-row {
  grid-template-columns:7.5rem minmax(0,1fr) auto;
  min-height:7.25rem;
  padding:.85rem .9rem;
 }

 body.mf-match-center-page .mf-matchday-group--single .mf-matchday-row__time {
  grid-column:1;
  grid-row:1;
 }

 body.mf-match-center-page .mf-matchday-group--single .mf-matchday-row__teams {
  grid-column:2;
  grid-row:1;
 }

 body.mf-match-center-page .mf-matchday-group--single .mf-matchday-row__actions {
  grid-column:3;
  grid-row:1;
 justify-content:flex-end;
 }
}

/* Result-first match cards: completed fixtures scan faster without shrinking controls. */
body.mf-match-center-page .mf-matchday-team-line {
 grid-template-columns:minmax(0,1fr) auto;
}

body.mf-match-center-page .mf-matchday-team-line.has-mark {
 grid-template-columns:2.1rem minmax(0,1fr) auto;
}

body.mf-match-center-page .mf-matchday-team-score {
 justify-self:end;
 min-width:1.7rem;
 color:#d6ff1f;
 font:900 1.04rem/1 "Archivo Black","Arial Black",sans-serif;
 text-align:right;
}

body.mf-match-center-page .mf-matchday-row.is-final .mf-matchday-row__time strong {
 color:#d6ff1f;
 font-size:1.08rem;
}

body.mf-match-center-page .mf-matchday-row.is-final .mf-matchday-result-link {
 background:rgba(255,255,255,.035);
 border-color:rgba(255,225,50,.35);
 color:#f4df54;
}

/* Match Center priority pass: live scores and local fixtures lead; weekly cards stay dense. */
body.mf-match-center-page .mf-matchday-group--live {
 border-color:rgba(255,93,125,.55);
 box-shadow:0 0 0 1px rgba(255,93,125,.1), 0 12px 28px rgba(0,0,0,.18);
}

body.mf-match-center-page .mf-matchday-group--live .mf-matchday-group__head {
 background:linear-gradient(90deg,rgba(255,79,111,.18),rgba(8,17,29,.88));
}

body.mf-match-center-page .mf-matchday-group--priority .mf-matchday-group__head h3::before {
 content:"Priority";
 display:inline-block;
 margin-right:.48rem;
 color:#d6ff1f;
 font:700 .56rem/1 "JetBrains Mono",monospace;
 letter-spacing:.06em;
 text-transform:uppercase;
 vertical-align:middle;
}

@media (min-width:1051px) {
 body.mf-match-center-page .mf-matchday-group:has(.mf-matchday-row:nth-child(3)) .mf-matchday-row {
  min-height:7.45rem;
  padding:.6rem .68rem;
 }

 body.mf-match-center-page .mf-matchday-group:has(.mf-matchday-row:nth-child(3)) .mf-matchday-team-line {
  min-height:1.7rem;
  gap:.4rem;
 }

 body.mf-match-center-page .mf-matchday-group:has(.mf-matchday-row:nth-child(3)) .mf-matchday-team-line.has-mark {
  grid-template-columns:1.8rem minmax(0,1fr) auto;
 }

 body.mf-match-center-page .mf-matchday-group:has(.mf-matchday-row:nth-child(3)) .mf-matchday-team-line .mf-matchday-team-mark {
  width:1.72rem;
  height:1.72rem;
 }

 body.mf-match-center-page .mf-matchday-group:has(.mf-matchday-row:nth-child(3)) .mf-matchday-team-line strong {
  font-size:clamp(.75rem,.92vw,.88rem);
 }

 body.mf-match-center-page .mf-matchday-group:has(.mf-matchday-row:nth-child(3)) .mf-matchday-row__teams p {
  font-size:.68rem;
  line-height:1.3;
 }

 body.mf-match-center-page .mf-matchday-row.is-final {
  align-self:start;
  min-height:7.85rem;
  padding:.62rem .7rem;
 }

 body.mf-match-center-page .mf-matchday-row.is-final .mf-matchday-row__teams,
 body.mf-match-center-page .mf-matchday-row.is-final .mf-matchday-team-lines {
  gap:.18rem;
 }

 body.mf-match-center-page .mf-matchday-row.is-final .mf-matchday-team-lines {
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.4rem;
 }

 body.mf-match-center-page .mf-matchday-row.is-final .mf-matchday-team-line {
  padding:.25rem .35rem;
  border:1px solid rgba(255,255,255,.07);
  border-radius:.45rem;
  background:rgba(255,255,255,.022);
 }

 body.mf-match-center-page .mf-matchday-row.is-final .mf-matchday-team-line.has-mark {
  grid-template-columns:1.65rem minmax(0,1fr) auto;
 }

 body.mf-match-center-page .mf-matchday-row.is-final .mf-matchday-team-line .mf-matchday-team-mark {
  width:1.65rem;
  height:1.65rem;
 }

 body.mf-match-center-page .mf-matchday-row.is-final .mf-matchday-team-line strong {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
 }

 body.mf-match-center-page .mf-matchday-row.is-final .mf-matchday-row__teams p {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
 }

 body.mf-match-center-page .mf-matchday-row.is-final .mf-matchday-row__actions {
  gap:.35rem;
 }

 body.mf-match-center-page .mf-matchday-row.is-final .mf-matchday-row__actions :is(a,button) {
  min-height:44px;
  padding:.48rem .58rem;
 }
}


/* Source: /assets/css/release-11.css */
/* MoFutbol release 11: crawlable data, mobile discovery, and editorial authority. */
.mf-static-snapshot{display:grid;gap:1rem;padding:1rem;border:1px solid rgba(245,200,66,.2);border-radius:1rem;background:rgba(4,13,10,.82)}
.mf-static-snapshot__head{grid-column:1/-1;display:flex;align-items:baseline;gap:.7rem;flex-wrap:wrap;padding-bottom:.75rem;border-bottom:1px solid rgba(245,200,66,.16)}
.mf-static-snapshot__head>span{color:#ffd83d;font:800 .68rem/1.2 var(--f-mono,monospace);letter-spacing:.08em;text-transform:uppercase}
.mf-static-snapshot__head>strong,.mf-static-snapshot__head>h2{margin:0;color:#fff}.mf-static-snapshot__head>small{margin-left:auto;color:rgba(255,255,255,.65)}
.mf-static-match-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mf-static-match-card,.mf-static-directory-card{display:grid;gap:.45rem;align-content:start;padding:1rem;border:1px solid rgba(245,200,66,.18);border-radius:.8rem;background:rgba(255,255,255,.035)}
.mf-static-match-card>div{display:flex;justify-content:space-between;gap:.5rem}.mf-static-match-card span,.mf-static-directory-card>span,.mf-static-media-card>span{color:#d6ff3f;font:800 .65rem/1.2 var(--f-mono,monospace);letter-spacing:.06em;text-transform:uppercase}
.mf-static-match-card h3,.mf-static-directory-card h3,.mf-static-media-card h3{margin:0;color:#fff}.mf-static-match-card p,.mf-static-directory-card p,.mf-static-media-card p{margin:0;color:rgba(255,255,255,.72)}
.mf-static-match-card a,.mf-static-directory-card a,.mf-static-media-card strong,.mf-di-static-card strong{color:#d6ff3f;font-weight:800}
.mf-static-directory-grid,.mf-static-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.mf-static-directory-card{min-height:10rem}
.mf-static-media-library{padding-block:clamp(1.5rem,3vw,2.5rem)}.mf-static-media-grid{margin-top:1rem}.mf-static-media-card{display:grid;gap:.55rem;align-content:start;padding:.7rem;border:1px solid rgba(245,200,66,.2);border-radius:1rem;background:#07140f;color:inherit;transition:transform .2s ease,border-color .2s ease}.mf-static-media-card:hover,.mf-static-media-card:focus-within{transform:translateY(-3px);border-color:#d6ff3f}.mf-static-media-card__media{display:block}.mf-static-media-card img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:.7rem;background:#07110d}.mf-static-media-card small{color:rgba(255,255,255,.65)}.mf-static-media-card__action{display:inline-flex;align-items:center;justify-content:center;justify-self:start;min-height:44px;padding:.55rem .8rem;border:1px solid rgba(214,255,63,.45);border-radius:999px;color:#d6ff3f;font-weight:800;text-decoration:none}.mf-static-media-card__meta{font-size:.78rem}
.mf-di-static-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.mf-di-static-grid>.mf-static-snapshot__head{grid-column:1/-1}.mf-di-static-card{display:grid;grid-template-columns:4.5rem 1fr;gap:.7rem;padding:.65rem;border:1px solid rgba(245,200,66,.18);border-radius:.8rem;background:rgba(255,255,255,.035);color:inherit;text-decoration:none}.mf-di-static-card img{width:4.5rem;height:4.5rem;object-fit:cover;border-radius:.65rem}.mf-di-static-card h3,.mf-di-static-card p{margin:.15rem 0}.mf-di-static-card span{color:#ffd83d;font-size:.68rem;text-transform:uppercase}
@media(max-width:900px){.mf-static-match-grid,.mf-static-directory-grid,.mf-static-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mf-di-static-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.mf-static-match-grid,.mf-static-directory-grid,.mf-static-media-grid,.mf-di-static-grid{grid-template-columns:1fr}.mf-static-snapshot{padding:.75rem}.mf-static-snapshot__head>small{width:100%;margin-left:0}.mf-static-directory-card{min-height:0}
body:has(#articles-grid) .mf-article-newsroom-utility{padding-block:.75rem!important}body:has(#articles-grid) .mf-article-filter-row,body:has(#articles-grid) #articles-filters{display:flex!important;overflow-x:auto;flex-wrap:nowrap!important;scroll-snap-type:x proximity;padding-bottom:.4rem}body:has(#articles-grid) .filter-btn{flex:0 0 auto!important;min-width:auto!important;scroll-snap-align:start;padding-inline:1rem!important}
body.mf-article-page #article-hero{padding-block:.35rem .65rem!important}body.mf-article-page .mf-article-hero__shell{gap:.5rem!important}body.mf-article-page .mf-article-hero__copy h1{font-size:clamp(1.55rem,8vw,2.05rem)!important;line-height:1!important}body.mf-article-page .mf-article-detail--story{padding-top:0!important}
body.mf-player-tracker-page .mf-player-directory-hero{min-height:auto!important;padding-block:1.25rem!important}body.mf-player-tracker-page .mf-player-directory-hero h1{font-size:clamp(2.45rem,13vw,4rem)!important;line-height:.9!important}body.mf-player-tracker-page .mf-player-hero-cards{scroll-snap-type:x mandatory;scroll-padding-inline:1rem;gap:.75rem}body.mf-player-tracker-page .mf-player-hero-cards>*{scroll-snap-align:center}body.mf-player-tracker-page .mf-player-hero-cards::after{content:'Swipe for more players →';display:grid;place-items:center;min-width:8rem;color:#d6ff3f;font:800 .7rem var(--f-mono,monospace);text-transform:uppercase}
}
@media(prefers-reduced-motion:reduce){.mf-static-media-card{transition:none}}

/* Permanent World Cup archive. */
.mf-wc-archive-summary,.mf-wc-archive-recaps,.mf-wc-archive-legacy{padding-block:clamp(1.25rem,3vw,2.5rem)}
.mf-wc-archive-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;padding:0;margin:1rem 0 0;list-style:none}
.mf-wc-archive-timeline a{display:grid;gap:.2rem;min-height:64px;padding:.75rem;border:1px solid rgba(245,200,66,.22);border-radius:.75rem;background:rgba(255,255,255,.035);color:inherit;text-decoration:none}
.mf-wc-archive-timeline strong{color:#fff}.mf-wc-archive-timeline span{color:#d6ff3f;font:700 .68rem/1.2 var(--f-mono,monospace);text-transform:uppercase}
.mf-wc-archive-stage{margin-top:.75rem;border:1px solid rgba(245,200,66,.2);border-radius:.9rem;background:rgba(3,15,12,.86)}
.mf-wc-archive-stage>summary{display:flex;justify-content:space-between;align-items:center;min-height:52px;padding:.8rem 1rem;cursor:pointer;color:#fff;font-weight:800}
.mf-wc-archive-stage>summary strong{color:#d6ff3f;font:700 .68rem/1.2 var(--f-mono,monospace);text-transform:uppercase}
.mf-wc-archive-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;padding:.75rem}
.mf-wc-archive-result{display:grid;gap:.35rem;padding:.75rem;border:1px solid rgba(255,255,255,.1);border-radius:.7rem;background:rgba(255,255,255,.03)}
.mf-wc-archive-result span{color:#ffd83d;font:700 .65rem/1.2 var(--f-mono,monospace);text-transform:uppercase}.mf-wc-archive-result h3,.mf-wc-archive-result p{margin:0}.mf-wc-archive-result h3{color:#fff}.mf-wc-archive-result p{color:rgba(255,255,255,.7)}.mf-wc-archive-result a{color:#d6ff3f;font-weight:800}
.mf-wc-archive-recap-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-top:1rem}.mf-wc-archive-recap-grid article{padding:1rem;border:1px solid rgba(245,200,66,.2);border-radius:.8rem;background:rgba(255,255,255,.035)}.mf-wc-archive-recap-grid h3{margin:.35rem 0;color:#fff}.mf-wc-archive-recap-grid span,.mf-wc-archive-recap-grid a{color:#d6ff3f;font-weight:800}
@media(max-width:900px){.mf-wc-archive-timeline,.mf-wc-archive-recap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mf-wc-archive-results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.mf-wc-archive-timeline,.mf-wc-archive-recap-grid,.mf-wc-archive-results{grid-template-columns:1fr}.mf-wc-archive-stage>summary{min-height:48px}.mf-wc-archive-result{padding:.65rem}}

/* Mobile discovery and contributor focus. */
@media(max-width:600px){body:has(.mf-player-tracker-hero) .mf-player-tracker-hero{min-height:auto!important;padding-block:1rem!important}body:has(.mf-player-tracker-hero) .mf-player-tracker-hero h1{font-size:clamp(2.25rem,12vw,3.75rem)!important;line-height:.9!important}body:has(.mf-player-tracker-hero) .mf-tracker-howto{display:none!important}body:has(.mf-player-tracker-hero) .mf-tracker-polish-tabs{display:flex;overflow-x:auto;flex-wrap:nowrap!important;scroll-snap-type:x proximity}body:has(.mf-player-tracker-hero) .mf-tracker-polish-tabs>*{flex:0 0 auto;scroll-snap-align:start}}
.mf-contributor-page .mf-contributor-hero{min-height:auto!important;padding-block:clamp(1.5rem,4vw,3rem)!important}.mf-contributor-page .mf-contributor-process-section{padding-block:clamp(1rem,2vw,1.75rem)!important}.mf-contributor-page .mf-contributor-process-flow{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.65rem!important}.mf-contributor-page .mf-contributor-process-flow li{min-height:0!important;padding:.8rem!important}.mf-contributor-page .mf-contributor-process-flow li p,.mf-contributor-page .mf-contributor-process-steps{display:none!important}.mf-contributor-page .mf-portal-auth{grid-template-columns:repeat(2,minmax(0,1fr))!important}.mf-contributor-page .mf-portal-auth>.mf-form-shell:nth-child(n+3){display:none!important}
@media(max-width:760px){.mf-contributor-page .mf-contributor-process-flow{grid-template-columns:repeat(2,minmax(0,1fr))!important}.mf-contributor-page .mf-portal-auth{grid-template-columns:1fr!important}.mf-contributor-page .mf-contributor-command{display:none!important}}
.mf-tracker-official-card__origin{display:inline-block;width:1.15rem;height:.8rem;margin-right:.35rem;border-radius:.15rem;background-position:center;background-size:cover;box-shadow:0 0 0 1px rgba(255,255,255,.18);vertical-align:middle}
.mf-static-match-card__teams{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem}.mf-static-match-card__teams h3{margin:0}.mf-static-match-card__teams img{object-fit:contain}.mf-static-match-card__actions{display:flex;flex-wrap:wrap;gap:.5rem}.mf-static-match-card__actions a{min-height:44px}.mf-tracker-official-card__facts{display:flex;flex-wrap:wrap;gap:.35rem;margin:.45rem 0 0;padding:0;list-style:none}.mf-tracker-official-card__facts li{padding:.25rem .45rem;border:1px solid rgba(245,200,66,.22);border-radius:999px;font-size:.72rem}

/* World Cup archive: completed-final view should end at its content, not a legacy bracket height. */
body.mf-world-cup-page #wc2026-knockout.mf-wc-archive-board{
  min-height:0!important;
  padding-block:clamp(1rem,2vw,1.5rem)!important;
}
body.mf-world-cup-page #wc2026-knockout .mf-wc-final-focus{
  min-height:0!important;
  gap:clamp(.55rem,1vw,.8rem)!important;
}
body.mf-world-cup-page #wc2026-knockout .mf-wc-final-match{
  min-height:0!important;
}
body.mf-world-cup-page #wc2026-knockout .mf-wc-final-matchup{
  min-height:0!important;
  padding-block:.5rem .65rem!important;
}
body.mf-world-cup-page #wc2026-knockout .mf-wc-final-winning-goal{
  margin:.1rem 0 0!important;
}
body.mf-world-cup-page #wc2026-knockout .mf-wc-final-actions{
  margin-top:0!important;
}


/* 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/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-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;
  }
}


/* 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/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/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;
  }
}


/* 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: 138px minmax(0, 1fr) 132px 76px 96px !important;
  align-items: center !important;
  width: 100%;
  height: 64px !important;
  min-height: 64px !important;
  max-height: 64px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #050b09;
  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 {
  position: relative;
  box-sizing: border-box;
  display: flex !important;
  align-items: center !important;
  gap: .48rem;
  width: 138px !important;
  min-width: 138px !important;
  height: 64px !important;
  min-height: 64px !important;
  max-height: 64px !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 {
  display: grid;
  gap: 2px;
  font-size: .68rem !important;
  font-weight: 800 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase;
}

.mf-score-ribbon__brand span b,
.mf-score-ribbon__brand span i {
  display: block;
  font: inherit;
  line-height: 1;
}

.mf-score-ribbon__brand span b { color: #f4c430; }
.mf-score-ribbon__brand span i { color: #f7f7f4; font-size: .56rem; font-style: normal; }

.mf-score-ribbon__brand span::before {
  content: none;
}

.mf-score-ribbon__brand::before {
  content: "";
  position: absolute;
  top: 7px;
  left: 39px;
  width: 6px;
  height: 6px;
  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: 64px !important;
  min-height: 64px !important;
  max-height: 64px !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: 64px !important;
  min-height: 64px !important;
  max-height: 64px !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 25px 13px !important;
  align-content: center !important;
  column-gap: .5rem;
  row-gap: 1px;
  scroll-snap-align: start;
  flex: 0 0 264px !important;
  width: 264px !important;
  min-width: 264px !important;
  max-width: 264px !important;
  height: 64px !important;
  min-height: 64px !important;
  max-height: 64px !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: #52635e;
  transition: background-color .2s ease;
}

.mf-score-ribbon__card[data-ticker-lane="stl"]::before { background: #e53935; }
.mf-score-ribbon__card[data-ticker-lane="women"]::before { background: #f4c430; }
.mf-score-ribbon__card[data-ticker-lane="north-america"]::before { background: #f7f7f4; }
.mf-score-ribbon__card[data-ticker-lane="europe"]::before { background: #3da7ff; }
.mf-score-ribbon__card[data-ticker-lane="africa"]::before { background: #46a83e; }
.mf-score-ribbon__card[data-ticker-lane="south-america"]::before { background: #f4c430; }
.mf-score-ribbon__card[data-ticker-lane="asia"]::before { background: #e53935; }
.mf-score-ribbon__card[data-ticker-lane="oceania"]::before { background: #63d7c6; }

.mf-score-ribbon__card::after {
  content: "VERIFIED";
  position: absolute;
  right: .68rem;
  bottom: .31rem;
  color: #6f837d;
  font-size: .46rem;
  line-height: 1;
  letter-spacing: .08em;
  font-weight: 800;
}

.mf-score-ribbon__card[data-source-state="guide"]::after { content: "OFFICIAL LINK"; }

.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;
  max-width: calc(100% - 54px);
  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: 64px !important;
  min-height: 64px !important;
  max-height: 64px !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: 64px !important;
  min-height: 64px !important;
  max-height: 64px !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: 1540px) and (min-width: 761px) {
  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 {
    grid-template-columns: 138px minmax(0, 1fr) 132px 76px !important;
  }

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

@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) 88px !important;
    grid-template-rows: 60px !important;
    height: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
  }

  .mf-score-ribbon__brand,
  .mf-score-ribbon__toggle,
  .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: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
  }

  .mf-score-ribbon__track,
  .mf-score-ribbon__card {
    height: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
  }

  .mf-score-ribbon__card {
    flex-basis: calc(100vw - 88px) !important;
    width: calc(100vw - 88px) !important;
    min-width: calc(100vw - 88px) !important;
    max-width: calc(100vw - 88px) !important;
    padding-inline: .62rem !important;
  }

  .mf-score-ribbon__controls {
    grid-template-columns: repeat(2, 44px);
    width: 88px !important;
    height: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
  }

  .mf-score-ribbon__controls button {
    width: 44px !important;
    min-width: 44px !important;
    height: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
  }

  .mf-polish-ticker-toggle { display: none !important; }
}

/* This shared component owns its geometry after route-specific density rules. */
html body .mf-score-ribbon[data-top-events-ticker] {
  grid-template-columns: 138px minmax(0, 1fr) 132px 76px 96px !important;
  gap: 0 !important;
  height: 64px !important;
  min-height: 64px !important;
  max-height: 64px !important;
  opacity: 1 !important;
}

html body .mf-score-ribbon[data-top-events-ticker] :is(
  .mf-score-ribbon__brand,
  .mf-score-ribbon__rail,
  .mf-score-ribbon__track,
  .mf-score-ribbon__card,
  .mf-score-ribbon__controls,
  .mf-score-ribbon__controls button,
  .mf-score-ribbon__visibility,
  .mf-score-ribbon__utility
) {
  height: 64px !important;
  min-height: 64px !important;
  max-height: 64px !important;
}

html body .mf-score-ribbon[data-top-events-ticker] .mf-score-ribbon__card {
  flex-basis: 264px !important;
  width: 264px !important;
  min-width: 264px !important;
  max-width: 264px !important;
}

html body .mf-score-ribbon[data-top-events-ticker] :is(.mf-score-ribbon__league, .mf-score-ribbon__date) {
  font-size: .58rem !important;
}

@media (max-width: 1540px) and (min-width: 761px) {
  html body .mf-score-ribbon[data-top-events-ticker] {
    grid-template-columns: 138px minmax(0, 1fr) 132px 76px !important;
  }
}

@media (max-width: 760px) {
  html body .mf-score-ribbon[data-top-events-ticker] {
    grid-template-columns: minmax(0, 1fr) 88px !important;
    grid-template-rows: 60px !important;
    height: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
  }

  html body .mf-score-ribbon[data-top-events-ticker] :is(
    .mf-score-ribbon__rail,
    .mf-score-ribbon__track,
    .mf-score-ribbon__card,
    .mf-score-ribbon__controls,
    .mf-score-ribbon__controls button
  ) {
    height: 60px !important;
    min-height: 60px !important;
    max-height: 60px !important;
  }

  html body .mf-score-ribbon[data-top-events-ticker] :is(
    .mf-score-ribbon__brand,
    .mf-score-ribbon__toggle,
    .mf-score-ribbon__visibility,
    .mf-score-ribbon__utility
  ) {
    display: none !important;
  }

  html body .mf-score-ribbon[data-top-events-ticker] .mf-score-ribbon__track {
    min-width: max-content !important;
  }

  html body .mf-score-ribbon[data-top-events-ticker] .mf-score-ribbon__card {
    flex-basis: calc(100vw - 88px) !important;
    width: calc(100vw - 88px) !important;
    min-width: calc(100vw - 88px) !important;
    max-width: calc(100vw - 88px) !important;
    padding: .32rem .62rem !important;
  }

  html body .mf-score-ribbon[data-top-events-ticker] :is(.mf-score-ribbon__date, .mf-score-ribbon__card small) {
    display: block !important;
  }

  html body .mf-score-ribbon[data-top-events-ticker] :is(.mf-score-ribbon__team img, .mf-score-ribbon__mark) {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
  }

  html body .mf-score-ribbon[data-top-events-ticker] .mf-score-ribbon__team b {
    font-size: .78rem !important;
  }

  html body .mf-score-ribbon[data-top-events-ticker] .mf-score-ribbon__controls {
    grid-template-columns: repeat(2, 44px) !important;
    width: 88px !important;
  }
}


/* Source: /assets/css/editorial-platform-v3.css */
/* Shared editorial hierarchy for the MoFutbol newsroom. Loaded by the shared shell. */
:root {
  --mf-editorial-paper: #0b110e;
  --mf-editorial-panel: #101a14;
  --mf-editorial-line: rgba(237, 244, 234, .16);
  --mf-editorial-gold: #f2c746;
  --mf-editorial-lime: #c9f24b;
  --mf-editorial-copy: #eaf0e6;
  --mf-editorial-muted: #afbdad;
}

html { scroll-padding-top: 7rem; }

html body :is(main, .stl-container, .site-container, .mf-v22-container) { min-width: 0; }

html body main [id] { scroll-margin-top: 7rem; }

html body :is(a, button, input, select, summary, textarea):focus-visible {
  outline: 2px solid var(--mf-editorial-gold) !important;
  outline-offset: 3px !important;
}

html body form :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
  width: 100%;
  max-width: 100%;
  min-height: 44px;
  font: inherit;
}

html body form textarea {
  min-height: 8rem;
  resize: vertical;
}

html body form :is(input, textarea)::placeholder {
  color: rgba(220, 231, 215, .72);
  opacity: 1;
}

html body .mf-polish-back-top {
  position: fixed !important;
  right: clamp(.75rem, 2vw, 1.25rem) !important;
  bottom: clamp(.75rem, 2vw, 1.25rem) !important;
  z-index: 101 !important;
}

html body .mf-supporter-dock {
  position: fixed !important;
  right: clamp(.75rem, 2vw, 1.25rem) !important;
  bottom: calc(clamp(.75rem, 2vw, 1.25rem) + 3.5rem) !important;
  z-index: 100 !important;
  width: min(19rem, calc(100vw - 1.5rem)) !important;
  margin: 0 !important;
  border: 1px solid rgba(242, 199, 70, .42) !important;
  border-radius: 4px !important;
  background: #101a14 !important;
  box-shadow: 0 16px 32px rgba(0, 0, 0, .32) !important;
  color: var(--mf-editorial-copy) !important;
  font-size: .76rem !important;
}

html body .mf-supporter-dock > summary {
  display: flex !important;
  align-items: center;
  min-height: 40px;
  padding: .55rem .7rem;
  color: var(--mf-editorial-gold);
  cursor: pointer;
  font-weight: 800;
  list-style: none;
}

html body .mf-supporter-dock > summary::-webkit-details-marker { display: none; }
html body .mf-supporter-dock > summary::after { content: "+"; margin-left: auto; color: var(--mf-editorial-lime); }
html body .mf-supporter-dock[open] > summary { border-bottom: 1px solid var(--mf-editorial-line); }
html body .mf-supporter-dock[open] > summary::after { content: "-"; }

html body .mf-supporter-dock__links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

html body .mf-supporter-dock__links a {
  display: grid;
  gap: .08rem;
  min-width: 0;
  min-height: 54px;
  padding: .5rem .65rem;
  border-right: 1px solid var(--mf-editorial-line);
  border-bottom: 1px solid var(--mf-editorial-line);
  color: var(--mf-editorial-copy);
  text-decoration: none;
}

html body .mf-supporter-dock__links a:nth-child(2n) { border-right: 0; }
html body .mf-supporter-dock__links a:nth-last-child(-n + 2) { border-bottom: 0; }
html body .mf-supporter-dock__links a:hover { background: rgba(201, 242, 75, .08); color: var(--mf-editorial-lime); }
html body .mf-supporter-dock__links strong { color: var(--mf-editorial-gold); font-size: .86rem; }

/* The search route has one purposeful hero; keep it out of the legacy generic hero suppression. */
html:root body.mf-seo-body main#main-content > .mf-seo-hero {
  display: block !important;
}

html:root body.mf-seo-body .mf-seo-hero .stl-container {
  width: min(calc(100% - 2rem), 72rem);
  min-width: 0;
  margin-inline: auto;
  padding-block: clamp(2.25rem, 5vw, 4rem);
}

html:root body.mf-seo-body .mf-seo-actions {
  align-items: center;
}

html:root body.mf-seo-body .mf-seo-actions input {
  flex: 1 1 18rem;
  width: auto;
  min-width: min(18rem, 100%) !important;
}

html body .site-header {
  background: rgba(5, 10, 7, .97) !important;
  border-bottom: 1px solid rgba(242, 199, 70, .28) !important;
}

html body .site-header .site-header__inner {
  width: min(calc(100% - 2rem), 92rem) !important;
  min-height: 52px !important;
}

html body .site-header .site-nav__list { gap: .1rem !important; }

html body .site-header :is(.site-nav__link, .site-nav__toggle) {
  min-height: 40px !important;
  padding-inline: .58rem !important;
  border-radius: 0 !important;
  color: #dce7d7 !important;
  font-size: .68rem !important;
  font-weight: 760 !important;
  letter-spacing: 0 !important;
}

html body .site-header :is(.site-nav__link, .site-nav__toggle):hover,
html body .site-header :is(.site-nav__link, .site-nav__toggle):focus-visible,
html body .site-header .site-nav__item.is-current :is(.site-nav__link, .site-nav__toggle) {
  color: #07100b !important;
  background: var(--mf-editorial-lime) !important;
  outline: 2px solid transparent !important;
}

html body .site-header :is(.site-nav__link, .site-nav__toggle):focus-visible,
html body :is(a, button, input, select, summary):focus-visible {
  outline: 2px solid var(--mf-editorial-gold) !important;
  outline-offset: 3px !important;
}

html body .site-header .site-header__cta {
  border-radius: 0 !important;
  background: var(--mf-editorial-gold) !important;
  color: #090e0b !important;
}

body.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--single-focus {
  min-height: 318px !important;
  padding-block: 1.1rem 1rem !important;
  background-position: center !important;
}

body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-hero__grid,
body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-hero__copy {
  display: block !important;
  width: min(100% - 2rem, 48rem) !important;
  max-width: 48rem !important;
  margin-inline: auto !important;
  text-align: center !important;
}

body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-hero__copy > h1 {
  max-width: none !important;
  margin: .3rem auto .5rem !important;
  color: #f9fbf5 !important;
  font-size: clamp(2.3rem, 3.7vw, 3.65rem) !important;
  line-height: .94 !important;
  text-wrap: balance;
}

body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-hero__lede {
  max-width: 52ch !important;
  margin-inline: auto !important;
  color: #dce6d8 !important;
  font-size: clamp(.95rem, 1.3vw, 1.08rem) !important;
  line-height: 1.5 !important;
}

body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-hero-kicker {
  display: inline-flex !important;
  padding: .34rem .62rem !important;
  border: 1px solid rgba(242, 199, 70, .72) !important;
  background: rgba(7, 16, 11, .82) !important;
  color: var(--mf-editorial-gold) !important;
}

body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-actions {
  justify-content: center !important;
  margin-top: .8rem !important;
}

body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-actions a {
  min-height: 44px !important;
  border-radius: 0 !important;
}

body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-hero-explore {
  width: min(100%, 41rem) !important;
  margin: 1.25rem auto 0 !important;
  text-align: left !important;
}

body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-hero-explore > summary {
  justify-content: center !important;
  border-radius: 0 !important;
}

body.mf-home-v22 :is(.mf-newsroom-home, .mf-home-lead-strip) { border-color: var(--mf-editorial-line) !important; }

body.mf-home-v22 .mf-newsroom-head { align-items: end !important; gap: 1rem !important; }

body.mf-home-v22 .mf-newsroom-head h2,
body.mf-home-v22 .mf-v22-section-head h2 { max-width: 22ch; text-wrap: balance; }

body.mf-home-v22 .mf-newsroom-today-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
body.mf-home-v22 .mf-newsroom-today-card:first-child { grid-column: span 2; }
body.mf-home-v22 .mf-newsroom-story-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: .7rem !important; }
body.mf-home-v22 .mf-newsroom-story:first-child { grid-column: auto; }
body.mf-home-v22 .mf-newsroom-story > a { aspect-ratio: 16 / 9; }
body.mf-home-v22 .mf-newsroom-story > a img { width: 100%; height: 100%; object-fit: cover; }
body.mf-home-v22 .mf-newsroom-story h3 { font-size: clamp(.98rem, 1.15vw, 1.18rem) !important; line-height: 1.06 !important; }
body.mf-home-v22 .mf-newsroom-story p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

@media (min-width: 761px) {
  html:root body .site-footer,
  html:root body [data-site-footer] > footer.site-footer { padding-top: .55rem !important; }

  html:root body .site-footer .site-footer__conversion { padding-block: .7rem !important; }
  html:root body .site-footer .site-footer__conversion h2 { font-size: 1.25rem !important; }
  html:root body .site-footer .site-footer__conversion p { margin-top: .2rem !important; font-size: .76rem !important; }
  html:root body .site-footer .site-footer__conversion a { min-height: 32px !important; padding: .35rem .55rem !important; }

  html:root body .site-footer .site-footer__inner {
    grid-template-columns: minmax(10rem, 1.05fr) repeat(5, minmax(5.25rem, .7fr)) !important;
    gap: .45rem .75rem !important;
    padding-block: .45rem !important;
  }

  html:root body .site-footer .site-footer__brand,
  html:root body .site-footer .site-footer__nav { gap: .12rem !important; }
  html:root body .site-footer .site-footer__copy { font-size: .68rem !important; line-height: 1.3 !important; }
  html:root body .site-footer .site-footer__nav h2,
  html:root body .site-footer .site-footer__nav h3 { margin-bottom: .08rem !important; }
  html:root body .site-footer .site-footer__nav a,
  html:root body .site-footer .site-footer__bottom a {
    min-height: 29px !important;
    padding: .18rem 0 !important;
    font-size: .66rem !important;
  }
  html:root body .site-footer .site-footer__bottom { min-height: 26px !important; padding: .25rem 0 .35rem !important; }

  html:root body.mf-brand-v2.mf-home-v22.mf-system-home main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus {
    min-height: 0 !important;
    padding-block: 1rem !important;
  }

  html:root body.mf-brand-v2.mf-home-v22.mf-system-home main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__grid {
    min-height: 0 !important;
    padding-block: 0 !important;
  }

  html:root body.mf-brand-v2.mf-home-v22.mf-system-home main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__copy {
    width: min(100% - 2rem, 58rem) !important;
    max-width: 58rem !important;
    gap: .4rem !important;
  }

  html:root body.mf-brand-v2.mf-home-v22.mf-system-home main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus #home-hero-title {
    max-width: 58rem !important;
    margin: .2rem auto .35rem !important;
    font-size: clamp(2.35rem, 3.2vw, 3.45rem) !important;
    line-height: .92 !important;
  }

  html:root body.mf-brand-v2.mf-home-v22.mf-system-home main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__lede {
    margin-top: 0 !important;
    font-size: clamp(.88rem, 1vw, 1rem) !important;
    line-height: 1.35 !important;
  }

  html:root body.mf-brand-v2.mf-home-v22.mf-system-home main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero-kicker span {
    min-height: 1.65rem !important;
    padding: .28rem .58rem !important;
    font-size: .72rem !important;
  }

  html:root body.mf-brand-v2.mf-home-v22.mf-system-home main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-actions {
    margin-top: .55rem !important;
  }
}

.mf-platform-conversion {
  border-block: 1px solid var(--mf-editorial-line);
  background: linear-gradient(90deg, rgba(242, 199, 70, .11), rgba(24, 54, 34, .42));
}

.mf-platform-conversion__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) auto;
  gap: 1rem 2rem;
  align-items: center;
  width: min(100% - 2rem, 72rem);
  margin: 0 auto;
  padding: 1.5rem 0;
}

.mf-platform-conversion__eyebrow,
.mf-platform-conversion h2,
.mf-platform-conversion p { margin: 0; }

.mf-platform-conversion__eyebrow {
  color: var(--mf-editorial-gold);
  font-size: .68rem;
  font-weight: 800;
  text-transform: uppercase;
}

.mf-platform-conversion h2 {
  margin-top: .3rem;
  color: var(--mf-editorial-copy);
  font-family: var(--font-display, sans-serif);
  font-size: clamp(1.65rem, 2.8vw, 2.6rem);
  font-weight: 400;
  line-height: .95;
  text-transform: uppercase;
}

.mf-platform-conversion p {
  max-width: 58ch;
  margin-top: .55rem;
  color: var(--mf-editorial-muted);
  line-height: 1.45;
}

.mf-platform-conversion__actions { display: flex; flex-wrap: wrap; gap: .6rem; justify-content: flex-end; }

.mf-platform-conversion__actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: .7rem .9rem;
  border: 1px solid rgba(242, 199, 70, .72);
  border-radius: 0;
  color: #f8fbf4;
  font-size: .76rem;
  font-weight: 800;
  text-decoration: none;
}

.mf-platform-conversion__actions a:first-child { background: var(--mf-editorial-gold); color: #0b110e; }

body.mf-articles-page .stl-city-hero .stl-container,
body.mf-us-soccer-page .mf-v20-lane-hero__grid,
body.mf-diaspora-page .mf-diaspora-fix-hero__grid { width: min(100% - 2rem, 72rem) !important; }

body.mf-articles-page .stl-city-hero :is(h1, p) { max-width: 24ch; }
body.mf-articles-page .stl-city-hero .stl-muted { max-width: 61ch !important; }
body.mf-articles-page .mf-newsroom-masthead { gap: 1.25rem !important; border-radius: 0 !important; }
body.mf-articles-page :is(.mf-newsroom-tools, .article-filters) { scrollbar-width: thin; }

.mf-article-related-stories {
  margin-top: 2rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--mf-editorial-line);
}

.mf-article-related-stories h2 { margin: .25rem 0 .85rem; }

.mf-article-related-stories__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .75rem;
}

.mf-article-related-stories article {
  min-width: 0;
  border: 1px solid var(--mf-editorial-line);
  background: rgba(255, 255, 255, .025);
}

.mf-article-related-stories a {
  display: grid;
  gap: .45rem;
  min-height: 100%;
  padding: .9rem;
  color: var(--mf-editorial-copy);
  text-decoration: none;
}

.mf-article-related-stories a:hover,
.mf-article-related-stories a:focus-visible { background: rgba(201, 242, 75, .1); }

.mf-article-related-stories strong { line-height: 1.25; }
.mf-article-related-stories span { color: var(--mf-editorial-muted); font-size: .76rem; }

/* The tracker removes its icon rail after initialization, so do not leave a desktop grid track behind. */
body.mf-player-tracker-golden .mf-ptg-workspace {
  grid-template-columns: minmax(0, 1fr) !important;
}

body.mf-player-tracker-golden .mf-ptg-main {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
}
body.mf-player-tracker-golden .mf-ptg-map-head h1 { max-width: 18ch; text-wrap: balance; }
body.mf-player-tracker-golden :is(.mf-ptg-profile-note, .mf-ptg-map-status) { color: var(--mf-editorial-muted); }

@media (max-width: 1280px) {
  html body .site-header .site-header__inner { width: 100% !important; }
}

@media (max-width: 760px) {
  html:root body.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-hero--single-focus { min-height: 0 !important; padding-block: .8rem .9rem !important; }
  html:root body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-hero__grid { min-height: 0 !important; padding-block: 0 !important; }
  html:root body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-hero__copy { width: min(100% - 1.25rem, 42rem) !important; gap: .45rem !important; }
  html:root body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-hero__copy > h1 { max-width: 100% !important; margin: .1rem auto .25rem !important; font-size: clamp(1.9rem, 9vw, 2.3rem) !important; line-height: .94 !important; }
  html:root body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-hero__lede { font-size: .92rem !important; line-height: 1.35 !important; }
  html:root body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-actions { display: grid !important; grid-template-columns: 1fr 1fr !important; margin-top: .55rem !important; }
  body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-actions a { min-width: 0 !important; padding-inline: .55rem !important; font-size: .67rem !important; }
  html:root body.mf-home-v22 .mf-newsroom-today-grid,
  html:root body.mf-home-v22 .mf-newsroom-story-grid { grid-template-columns: 1fr !important; grid-auto-flow: row !important; }
  html:root body.mf-home-v22 :is(.mf-newsroom-today-card:first-child, .mf-newsroom-story:first-child) { grid-column: auto; }
  html:root body.mf-brand-v2.mf-home-v22.mf-system-home main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus { min-height: 0 !important; padding-block: .75rem .8rem !important; }
  html:root body.mf-brand-v2.mf-home-v22.mf-system-home main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__grid { min-height: 0 !important; padding-block: 0 !important; }
  html:root body.mf-brand-v2.mf-home-v22.mf-system-home main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus #home-hero-title { max-width: 100% !important; margin: .1rem auto .25rem !important; font-size: clamp(1.9rem, 9vw, 2.3rem) !important; line-height: .94 !important; }
  html:root body.mf-brand-v2.mf-home-v22.mf-system-home main#main-content.mf-v22-home > .mf-v22-hero--clean.mf-v22-hero--single-focus .mf-v22-hero__lede { font-size: .92rem !important; line-height: 1.35 !important; }
  .mf-platform-conversion__inner { grid-template-columns: 1fr; width: min(100% - 1.25rem, 42rem); padding-block: 1.2rem; }
  .mf-platform-conversion__actions { justify-content: flex-start; }
  .mf-article-related-stories__grid { grid-template-columns: 1fr; }
  body.mf-player-tracker-golden .mf-ptg-map-head h1 { font-size: clamp(1.7rem, 8vw, 2.3rem) !important; }
}

/* Editorial reduction: keep the front page a readable daily edition. */
html:root body.mf-home-v22 .mf-v22-hero--single-focus .mf-v22-actions a {
  min-height: 38px !important;
  padding-inline: .75rem !important;
  font-size: .68rem !important;
}

html:root body.mf-home-v22 .mf-home-lead-strip {
  padding-block: .85rem !important;
  background: #09110d !important;
}

html:root body.mf-system-home .mf-home-lead-strip .mf-v22-now-line--with-media {
  grid-template-rows: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}

html:root body.mf-system-home .mf-home-lead-strip .mf-v22-now-line__content {
  align-content: start !important;
  min-height: 0 !important;
  padding: .8rem .9rem !important;
}

html:root body.mf-system-home .mf-home-lead-strip .mf-v22-now-line__title {
  display: block !important;
  overflow: visible !important;
  -webkit-line-clamp: unset !important;
}

html:root body.mf-home-v22 .mf-newsroom-home {
  padding-block: 1.65rem !important;
}

html:root body.mf-home-v22 .mf-newsroom-story-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: .75rem !important;
}

html:root body.mf-home-v22 .mf-newsroom-story {
  min-width: 0;
}

html:root body.mf-home-v22 .mf-newsroom-story > a {
  aspect-ratio: 16 / 9 !important;
}

html:root body.mf-home-v22 .mf-newsroom-player-grid {
  max-width: 46rem;
}

.mf-home-watch-row {
  order: 3;
  padding-block: 1.65rem;
  border-top: 1px solid var(--mf-editorial-line);
  background: #0a120d;
}

.mf-home-watch-row__head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: .8rem;
}

.mf-home-watch-row__head span,
.mf-home-watch-row__head h2 { margin: 0; }
.mf-home-watch-row__head span {
  color: var(--mf-editorial-gold);
  font-size: .68rem;
  font-weight: 800;
  text-transform: uppercase;
}
.mf-home-watch-row__head h2 {
  margin-top: .2rem;
  color: var(--mf-editorial-copy);
  font-family: var(--font-display, sans-serif);
  font-size: clamp(1.45rem, 2.25vw, 2rem);
  line-height: 1;
  text-transform: uppercase;
}
.mf-home-watch-row__head a {
  color: var(--mf-editorial-lime);
  font-size: .72rem;
  font-weight: 800;
  text-decoration: none;
}
.mf-home-watch-row .mf-v22-media-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: .75rem !important;
}
.mf-home-watch-row .mf-v22-media-card {
  min-height: 0 !important;
  border-radius: 0 !important;
}
.mf-home-watch-row .mf-v22-media-card__body { padding: .7rem !important; }

.mf-platform-conversion {
  background: #101a14 !important;
}
.mf-platform-conversion__inner { padding-block: 1.1rem !important; }
.mf-platform-conversion h2 { font-size: clamp(1.35rem, 2vw, 1.9rem) !important; }
.mf-platform-conversion__actions a { min-height: 38px !important; }

html:root body.mf-home-v22 main#main-content.mf-v22-home > .mf-v22-diaspora { order: 4 !important; }
html:root body.mf-home-v22 main#main-content.mf-v22-home > .mf-v20-platform-highlight { order: 5 !important; }
html:root body.mf-home-v22 main#main-content.mf-v22-home > .mf-platform-conversion { order: 6 !important; }

@media (min-width: 761px) {
  html:root body .site-footer .site-footer__inner {
    grid-template-columns: minmax(13rem, 1.45fr) repeat(2, minmax(8rem, .8fr)) !important;
    gap: 1rem 1.35rem !important;
    padding-block: .8rem !important;
  }
  html:root body .site-footer .site-footer__nav a,
  html:root body .site-footer .site-footer__bottom a {
    min-height: 25px !important;
    padding-block: .12rem !important;
  }
}

body.mf-articles-page .stl-city-hero { padding-block: 2rem !important; }
body.mf-articles-page .stl-city-hero .stl-heading { max-width: 18ch !important; }
body.mf-articles-page .mf-newsroom-front-section { padding-block: 1.65rem !important; }
body.mf-articles-page .mf-newsroom-masthead {
  grid-template-columns: minmax(0, 1fr) minmax(16rem, 23rem) !important;
  padding: 0 0 .9rem !important;
  border: 0 !important;
  border-bottom: 1px solid var(--mf-editorial-line) !important;
  background: transparent !important;
}
body.mf-articles-page .mf-newsroom-masthead h2 { font-size: clamp(1.6rem, 2.4vw, 2.2rem) !important; }
body.mf-articles-page .mf-newsroom-front-grid { margin-top: 1rem !important; }

body.mf-article-page .mf-article-follow {
  margin-top: 2.25rem !important;
  padding: 1.1rem 0 0 !important;
}
body.mf-article-page .mf-article-share--inline > span { display: none; }
body.mf-article-page .mf-article-share--inline .mf-article-share__button {
  min-height: 34px !important;
  padding: .45rem .6rem !important;
}

body.mf-player-tracker-golden [data-tracker-secondary-map] {
  margin-top: 1.25rem !important;
}
body.mf-player-tracker-golden [data-tracker-secondary-map] .mf-ptg-map-grid {
  min-height: 370px !important;
}
body.mf-player-tracker-golden [data-tracker-secondary-map] .mf-ptg-map-canvas {
  min-height: 370px !important;
}
body.mf-player-tracker-golden [data-tracker-secondary-map] .mf-ptg-map-canvas svg {
  height: 340px !important;
}

@media (max-width: 760px) {
  html:root body.mf-home-v22 .mf-newsroom-story-grid,
  .mf-home-watch-row .mf-v22-media-grid { grid-template-columns: 1fr !important; }
  html:root body.mf-system-home .mf-home-lead-strip .mf-v22-now-line--with-media {
    grid-template-rows: auto !important;
    max-height: none !important;
  }
  .mf-home-watch-row__head { align-items: start; flex-direction: column; }
  body.mf-articles-page .mf-newsroom-masthead { grid-template-columns: 1fr !important; }
  body.mf-player-tracker-golden [data-tracker-secondary-map] .mf-ptg-map-grid,
  body.mf-player-tracker-golden [data-tracker-secondary-map] .mf-ptg-map-canvas { min-height: 300px !important; }
  body.mf-player-tracker-golden [data-tracker-secondary-map] .mf-ptg-map-canvas svg { height: 280px !important; }
}

/* The homepage is the canonical desktop masthead. Keep page-level CSS from
   changing its type scale, available actions, or centered navigation rhythm. */
@media (min-width: 1281px) {
  html:root body .site-header {
    min-height: 54px !important;
    background: rgba(9, 11, 10, .98) !important;
    border-bottom-color: rgba(190, 210, 187, .18) !important;
  }

  html:root body .site-header .site-header__inner {
    box-sizing: border-box !important;
    width: min(calc(100% - 2rem), 1288px) !important;
    max-width: 1288px !important;
    min-height: 52px !important;
    height: 52px !important;
    margin-inline: auto !important;
    padding: 4px 0 !important;
    gap: 14px !important;
  }

  html:root body .site-header .site-brand__name {
    font-size: 14.7px !important;
    line-height: 13.965px !important;
  }

  html:root body .site-header .site-brand__tag { display: none !important; }

  html:root body .site-header .site-nav__list { gap: 3.5px !important; }

  html:root body .site-header :is(.site-nav__link, .site-nav__toggle) {
    min-height: 44px !important;
    height: 44px !important;
    padding: 7.28px 8.12px !important;
    font-size: 9.52px !important;
    font-weight: 760 !important;
    line-height: 9.52px !important;
  }

  html:root body .site-header .site-header__actions { gap: 5.32px !important; }

  html:root body .site-header :is(.site-header__search, .site-header__cta, .site-theme-toggle) {
    min-height: 42px !important;
    height: 42px !important;
    padding: 7.84px 10.08px !important;
    font-size: 10.92px !important;
    font-weight: 800 !important;
    line-height: 10.92px !important;
  }

  html:root body .site-header .site-header__search { display: block !important; }
  html:root body .site-header .site-header__cta { display: inline-flex !important; }
  html:root body .site-header .site-theme-toggle { display: flex !important; }
}

