/* Approved Event atmosphere; action, status and navigation colours retain their meaning. */
body.site-theme--active[data-site-theme] {
  --surface-page:var(--site-theme-canvas); --surface-canvas:var(--site-theme-canvas);
  --surface-rail:var(--site-theme-rail); --surface-bezel:var(--site-theme-rail);
  --surface-sunken:var(--site-theme-canvas); --surface-card:var(--site-theme-surface);
  --surface-raised:color-mix(in srgb,var(--site-theme-surface) 90%,var(--site-theme-ink));
  --border-faint:color-mix(in srgb,var(--site-theme-surface) 85%,var(--site-theme-ink));
  --border-subtle:color-mix(in srgb,var(--site-theme-surface) 76%,var(--site-theme-ink));
  --text-subtle:var(--text-muted);
  --surface-glass:color-mix(in srgb,var(--site-theme-rail) 96%,transparent);
  --floodlight:radial-gradient(ellipse 85% 48% at 100% 0,color-mix(in srgb,var(--site-theme-accent) 12%,transparent),transparent 85%);
  background:var(--floodlight),var(--surface-page);
}
.logo .wordmark.site-theme-wordmark--seasonal { width:164px; height:auto; }
@media (max-width:959px) { .logo .wordmark.site-theme-wordmark--seasonal { width:118px; } }
#view:has(.site-theme-backdrop) { position:relative; isolation:isolate; }
.site-theme-backdrop { position:absolute; inset:0 0 auto; height:680px; overflow:hidden; pointer-events:none; z-index:-1; }
.site-theme-backdrop img { width:100%; height:100%; object-fit:cover; object-position:right top; opacity:.72; }
.site-theme-backdrop::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,var(--surface-page),transparent 95%),linear-gradient(0deg,var(--surface-page),transparent 82%); }
.challenge-identity--open { background:transparent; box-shadow:none; padding-inline:0; border:0; }
.challenge-identity--open::before, .challenge-identity--open::after, .challenge-identity--open > .challenge-identity__scene { display:none; }
.challenge-identity--open .challenge-identity__illustration { transform:none; }
@media (max-width:600px) {
  .site-theme-backdrop { height:820px; }
  .site-theme-backdrop img { object-position:72% top; opacity:.55; }
  .site-theme-backdrop::after { background:linear-gradient(180deg,var(--surface-page),transparent 45%,var(--surface-page)); }
}

/* One cover headline, with its facts grouped directly beneath it. */
.event-cover-toolbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:var(--space-3); margin-bottom:var(--space-4); }
.event-cover-toolbar__back { display:inline-flex; align-items:center; gap:var(--space-1); min-height:var(--tap-min); color:var(--text-muted); font:var(--type-label); }
.event-cover-toolbar__back:hover { color:var(--text-strong); }
.challenge-identity--summary.challenge-identity--topfacts { min-height:0; padding-block:var(--space-6); grid-template-areas:"copy art"; gap:var(--space-5); }
.challenge-identity--summary .challenge-identity__copy { align-self:center; }
.challenge-identity__event-title { margin:0; font-family:var(--font-display); font-size:var(--fs-display); line-height:1.05; font-weight:var(--weight-display); letter-spacing:var(--tracking-display); color:var(--occasion-ink); text-wrap:balance; overflow-wrap:anywhere; }
.challenge-identity__subtitle { margin:var(--space-2) 0 0; color:var(--text-body); font:var(--type-body); text-wrap:pretty; }
.challenge-identity__metadata.event-card__facts { justify-content:flex-start; flex-wrap:wrap; gap:0 var(--space-4); margin-top:var(--space-4); font:var(--type-label); color:var(--text-body); }
.challenge-identity__date { display:inline-flex; align-items:center; gap:var(--space-2); white-space:nowrap; }
.challenge-identity__date .meaning-icon { padding:calc(var(--space-1) / 2); }
.challenge-identity__metadata .event-card__deadline { margin-left:0; }
.challenge-identity__state { color:var(--text-muted); }
.challenge-identity--summary .challenge-identity__art { height:240px; padding:0; }
.challenge-identity--summary .challenge-identity__pairing > .team-crest { --crest-size:clamp(64px,30cqi,128px) !important; }
.challenge-identity__games { display:inline-flex; align-items:center; gap:var(--space-2); min-height:var(--tap-min); border-radius:var(--radius-sm); color:var(--text-body); white-space:nowrap; }
.challenge-identity__games:hover { color:var(--text-accent); text-decoration:underline; text-underline-offset:var(--space-1); }
#line-up { scroll-margin-top:calc(var(--space-8) + var(--space-4)); }
@media (min-width:601px) and (max-width:959px) {
  .challenge-identity__event-title { font-size:var(--fs-h1); }
}
@media (max-width:600px) {
  .challenge-identity--summary.challenge-identity--topfacts { grid-template-columns:minmax(0,1fr); grid-template-areas:"copy" "art"; padding-block:var(--space-4); gap:var(--space-3); }
  .challenge-identity__event-title { font-size:var(--fs-h1); line-height:var(--lh-h1); }
  .challenge-identity__metadata.event-card__facts { margin-top:var(--space-2); }
  .challenge-identity--summary .challenge-identity__art { height:176px; }
  .challenge-identity--summary .challenge-identity__pairing > .team-crest { --crest-size:112px !important; }
}
