/* Africa Edition — shared editorial treatment for AFCON and diaspora desks. */
body.mf-afcon-page,
body.mf-africa-page {
  --africa-gold: #f6c843;
  --africa-green: #16a360;
  --africa-red: #df5146;
  --africa-paper: #f7f0dc;
  --africa-ink: #08130e;
}

body.mf-afcon-page main#main-content,
body.mf-africa-page main#main-content {
  background:
    radial-gradient(circle at 10% 5%, rgba(246, 200, 67, .07), transparent 24rem),
    radial-gradient(circle at 90% 18%, rgba(22, 163, 96, .07), transparent 30rem);
}

/* Mastheads retain the site theme while borrowing the pace of a printed sports edition. */
body.mf-afcon-page .mf-afcon-hero,
body.mf-africa-page .mf-africa-hero {
  isolation: isolate;
}

body.mf-afcon-page .mf-afcon-hero::after,
body.mf-africa-page .mf-africa-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .42;
  background:
    linear-gradient(90deg, var(--africa-red), var(--africa-gold) 47%, var(--africa-green)) top / 100% 4px no-repeat,
    repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 108px);
}

body.mf-afcon-page .mf-afcon-hero .stl-eyebrow,
body.mf-africa-page .mf-africa-hero .stl-eyebrow {
  color: var(--africa-gold) !important;
  letter-spacing: .14em;
}

body.mf-afcon-page .mf-afcon-hero h1,
body.mf-africa-page .mf-africa-hero h1 {
  text-wrap: balance;
}

/* Compact edition rail: clear next reads without adding a tall content block. */
.mf-africa-edition-rail {
  margin: 0 auto;
  padding: 0 0 1.25rem;
}

.mf-africa-edition-rail__inner {
  display: grid;
  grid-template-columns: minmax(13rem, .8fr) repeat(3, minmax(0, 1fr));
  gap: .55rem;
  align-items: stretch;
}

.mf-africa-edition-rail__masthead,
.mf-africa-edition-rail__link {
  min-height: 6.6rem;
  border: 1px solid rgba(246, 200, 67, .25);
  border-radius: .9rem;
  background: linear-gradient(145deg, rgba(10, 37, 26, .92), rgba(5, 17, 12, .96));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}

.mf-africa-edition-rail__masthead {
  display: grid;
  align-content: center;
  gap: .32rem;
  padding: .85rem 1rem;
  border-left: 4px solid var(--africa-gold);
}

.mf-africa-edition-rail__masthead span,
.mf-africa-edition-rail__link small {
  color: var(--africa-gold);
  font: 800 .64rem/1.2 "JetBrains Mono", monospace;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.mf-africa-edition-rail__masthead strong {
  color: var(--africa-paper);
  font-size: 1.1rem;
  line-height: 1.04;
}

.mf-africa-edition-rail__masthead p {
  margin: 0;
  color: rgba(247, 240, 220, .7);
  font-size: .76rem;
  line-height: 1.35;
}

.mf-africa-edition-rail__link {
  display: grid;
  align-content: center;
  gap: .38rem;
  padding: .85rem .95rem;
  color: var(--africa-paper);
  text-decoration: none;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.mf-africa-edition-rail__link:nth-child(3n) { border-top-color: var(--africa-red); }
.mf-africa-edition-rail__link:nth-child(3n + 1) { border-top-color: var(--africa-green); }

.mf-africa-edition-rail__link strong {
  font-size: .96rem;
  line-height: 1.1;
}

.mf-africa-edition-rail__link span {
  color: rgba(247, 240, 220, .7);
  font-size: .76rem;
  line-height: 1.32;
}

.mf-africa-edition-rail__link:hover,
.mf-africa-edition-rail__link:focus-visible {
  transform: translateY(-2px);
  border-color: var(--africa-gold);
  background: linear-gradient(145deg, rgba(22, 68, 44, .98), rgba(5, 17, 12, .98));
  outline: none;
}

/* AFCON's existing official-link newsstand becomes the recognisable front page. */
body.mf-afcon-page .mf-afcon-newsstand {
  border-top: 1px solid rgba(246, 200, 67, .3);
  border-bottom: 1px solid rgba(246, 200, 67, .18);
}

body.mf-afcon-page .mf-afcon-newsstand__head {
  position: relative;
  overflow: hidden;
}

body.mf-afcon-page .mf-afcon-newsstand__head::after {
  content: "AFCON EDITION";
  position: absolute;
  right: -1.4rem;
  bottom: -.25rem;
  color: rgba(246, 200, 67, .08);
  font: 900 clamp(2rem, 4vw, 4.8rem)/1 "Archivo Black", sans-serif;
  letter-spacing: -.06em;
  pointer-events: none;
}

body.mf-afcon-page .mf-afcon-newsstand__rack {
  align-items: stretch;
}

body.mf-afcon-page .mf-afcon-newsstand__issue {
  box-shadow: 0 12px 24px rgba(0,0,0,.17);
}

/* Diaspora desk gains a clear editorial reading order after the search-first masthead. */
body.mf-africa-page .mf-africa-hero-copy > .stl-eyebrow::after {
  content: " · Africa edition";
  color: rgba(246, 200, 67, .68);
}

body.mf-africa-page .mf-na-diaspora-command {
  border-top: 3px solid transparent;
  border-image: linear-gradient(90deg, var(--africa-red), var(--africa-gold), var(--africa-green)) 1;
}

body.mf-africa-page .mf-mofutbol-source-board,
body.mf-africa-page .mf-official-source-board {
  border-color: rgba(246, 200, 67, .26);
}

body.mf-africa-page .mf-mofutbol-source-board__head > div > span,
body.mf-africa-page .mf-official-source-board .stl-eyebrow {
  color: var(--africa-gold) !important;
}

@media (max-width: 900px) {
  .mf-africa-edition-rail__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mf-africa-edition-rail__masthead {
    grid-column: 1 / -1;
    min-height: auto;
  }
}

@media (max-width: 600px) {
  .mf-africa-edition-rail__inner {
    grid-template-columns: 1fr;
  }

  .mf-africa-edition-rail__masthead {
    grid-column: auto;
  }
}
