/* The story cards lead; publisher coverage flows in two staggered rows. */
.movement.coverage-section { display: block; }
.coverage-top { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr); gap: clamp(40px, 5vw, 76px); align-items: center; }
.coverage-stories { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; list-style: none; margin: 0; padding: 14px 9px; }
.coverage-story { position: relative; min-width: 0; transform: rotate(var(--card-angle)); }
.coverage-story-guardian { --card-angle: -5deg; }
.coverage-story-post { --card-angle: 4deg; }
.coverage-story-people { --card-angle: 2deg; }
.coverage-story-cup { --card-angle: -3deg; }
.coverage-story a { display: flex; flex-direction: column; height: 100%; min-height: 200px; padding: 22px; border-radius: 9px; background: white; color: var(--ink); text-decoration: none; box-shadow: 0 13px 28px #24313f12; }
.coverage-masthead { display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 60px; padding-bottom: 12px; margin-bottom: 14px; border-bottom: 1px solid var(--line); }
.coverage-masthead > span[aria-hidden] { flex: 0 0 auto; align-self: flex-start; font-size: 23px; line-height: 1; }
.coverage-masthead img { object-fit: contain; object-position: left center; max-width: calc(100% - 24px); height: auto; max-height: 46px; }
.coverage-masthead .coverage-logo-guardian { width: 141px; filter: brightness(0); }
.coverage-masthead .coverage-logo-people { width: 96px; }
.coverage-masthead .coverage-logo-cup { width: 158px; }
.coverage-publisher-name { font: 700 21px/1.05 Georgia, 'Times New Roman', serif; letter-spacing: -.045em; }
.coverage-story h3 { margin: 0; font: 400 clamp(20px, 1.75vw, 26px)/1.18 Georgia, 'Times New Roman', serif; letter-spacing: -.025em; }
.coverage-story a:hover h3 { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.coverage-story a:focus-visible, .coverage-copy a:focus-visible, .publisher-window:focus-visible, .publisher-toggle:focus-visible { outline: 3px solid var(--cobalt); outline-offset: 5px; }
.coverage-story-guardian::before, .coverage-story-cup::after { content: ''; position: absolute; width: 22px; height: 5px; border-radius: 5px; background: var(--yellow); transform: rotate(45deg); pointer-events: none; }
.coverage-story-guardian::before { left: -19px; top: -12px; box-shadow: 10px -14px 0 var(--yellow); }
.coverage-story-cup::after { right: -24px; bottom: 28px; background: var(--cobalt); box-shadow: 10px -14px 0 var(--cobalt); opacity: .5; }
.coverage-copy h2 { font-size: clamp(34px, 3.35vw, 48px); }
.coverage-copy > p:not(.eyebrow) { margin: 26px 0 30px; color: var(--muted); font-size: 18px; line-height: 1.55; }
.coverage-copy .button { min-height: 52px; }
.publisher-ribbon { display: grid; grid-template-columns: minmax(0, 1fr) 44px; align-items: center; gap: 16px; margin-top: 44px; }
.publisher-ribbon[hidden], .publisher-toggle[hidden] { display: none; }
.publisher-window { height: 144px; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; mask-image: linear-gradient(to right, transparent, black 30px, black calc(100% - 30px), transparent); }
.publisher-window::-webkit-scrollbar { display: none; }
.publisher-track { display: flex; width: max-content; height: 100%; }
.publisher-set { display: grid; flex: 0 0 auto; grid-template-rows: repeat(2, 52px); grid-auto-flow: column; grid-auto-columns: 148px; align-content: center; align-items: center; gap: 20px 52px; margin: 0; padding: 0 152px 0 0; list-style: none; }
.publisher-set li:nth-child(even) { transform: translateX(100px); }
.publisher-set li { display: flex; align-items: center; justify-content: center; width: 148px; height: 52px; color: var(--ink); text-align: center; font-size: 18px; line-height: 1.15; font-weight: 650; }
.publisher-set img { width: auto; height: auto; max-width: 148px; max-height: 34px; object-fit: contain; }
.publisher-toggle { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid var(--line); border-radius: 50%; background: transparent; color: var(--muted); font: inherit; font-size: 18px; line-height: 1; cursor: pointer; }
.publisher-play { display: none; font-size: 13px; }
.publisher-ribbon[data-paused=true] .publisher-pause { display: none; }
.publisher-ribbon[data-paused=true] .publisher-play { display: inline; }
@keyframes publisher-drift { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: no-preference) {
  .publisher-ribbon[data-animated=true] .publisher-track { animation: publisher-drift var(--ribbon-duration, 540s) linear infinite; }
  .publisher-ribbon[data-paused=true] .publisher-track,
  .publisher-ribbon[data-offscreen=true] .publisher-track,
  .publisher-window:hover .publisher-track { animation-play-state: paused; }
  /* Keyboard and touch exploration use the original, stationary list. */
  .publisher-window:focus-within .publisher-track,
  .publisher-ribbon[data-manual=true] .publisher-track { animation: none; transform: none; }
  .publisher-window:focus-within [aria-hidden=true],
  .publisher-ribbon[data-manual=true] .publisher-set[aria-hidden=true] { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .publisher-track { animation: none; transform: none; }
  .publisher-set[aria-hidden=true], .publisher-toggle { display: none; }
  .publisher-ribbon { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 800px) {
  .coverage-top { grid-template-columns: minmax(0, 1fr); gap: 38px; }
  .coverage-stories { max-width: 620px; width: 100%; margin-inline: auto; }
  .coverage-copy h2 { max-width: 620px; }
  .coverage-copy > p:not(.eyebrow) { margin: 22px 0; }
}
@media (max-width: 560px) {
  .coverage-stories { padding-inline: 5px; gap: 12px; }
  .coverage-story a { padding: 14px; min-height: 0; }
  .coverage-masthead { min-height: 43px; gap: 5px; padding-bottom: 9px; margin-bottom: 11px; }
  .coverage-masthead img { max-height: 30px; max-width: calc(100% - 15px); }
  .coverage-masthead > span[aria-hidden] { font-size: 17px; }
  .coverage-publisher-name { font-size: 15px; }
  .coverage-story h3 { font-size: clamp(17px, 4.7vw, 21px); line-height: 1.25; }
  .coverage-story-guardian { --card-angle: -3deg; }
  .coverage-story-post { --card-angle: 3deg; }
  .coverage-story-guardian::before, .coverage-story-cup::after { display: none; }
  .coverage-copy h2 { font-size: 34px; }
  .coverage-copy > p:not(.eyebrow) { font-size: 17px; }
  .coverage-copy .button { width: 100%; }
  .publisher-ribbon { margin-top: 32px; gap: 8px; }
  .publisher-set { grid-template-rows: repeat(2, 48px); grid-auto-columns: 120px; gap: 16px 28px; padding-right: 102px; }
  .publisher-set li:nth-child(even) { transform: translateX(74px); }
  .publisher-set li { width: 120px; height: 48px; font-size: 16px; }
  .publisher-set img { max-width: 120px; max-height: 30px; }
  .publisher-window { height: 132px; mask-image: linear-gradient(to right, transparent, black 15px, black calc(100% - 15px), transparent); }
}
