/* V24 menu-page palette refresh
   Goal: non-home public pages use richer, varied section colors with clear contrast.
   Home page stays mostly intact except a stronger countdown accent. */

:root{
  --v24-plum-950:#22172f;
  --v24-plum-900:#2d1f3d;
  --v24-plum-800:#3b2851;
  --v24-emerald-900:#16543f;
  --v24-emerald-800:#1f6e54;
  --v24-emerald-700:#2a8867;
  --v24-teal-800:#285a66;
  --v24-blue-800:#274f77;
  --v24-amber-700:#c98921;
  --v24-amber-500:#dfab4f;
  --v24-rose-700:#a85b6e;
  --v24-ice:#f6f8fb;
  --v24-paper:#ffffff;
  --v24-soft-shadow:0 18px 36px rgba(24, 30, 40, .10);
}

/* ------------------------------------------------------------------
   Generic palette variables for all public menu pages except homepage
   ------------------------------------------------------------------ */
body.public-site:not(.page-index){
  --menu-band-start:#27334d;
  --menu-band-mid:#2d3955;
  --menu-band-end:#1f6759;
  --menu-band-accent:#d8b165;
  --menu-band-title:#ffffff;
  --menu-band-text:rgba(245,247,251,.90);
  --menu-band-chip-bg:rgba(255,255,255,.94);
  --menu-band-chip-text:#184d3e;
  --menu-band-chip-border:rgba(222,228,236,.95);
  --menu-band-border:rgba(77,92,114,.52);
  --menu-band-glow:rgba(255,255,255,.17);
  --menu-band-shadow:rgba(20,28,36,.15);
}

/* Page-specific palettes so everything does not feel only purple/green. */
body.public-site.page-announcements,
body.public-site.page-documents{
  --menu-band-start:#2f2240;
  --menu-band-mid:#3c2e4f;
  --menu-band-end:#586b6a;
  --menu-band-accent:#e0ab44;
  --menu-band-title:#ffffff;
  --menu-band-text:rgba(249,246,251,.92);
}

body.public-site.page-schedule{
  --menu-band-start:#243760;
  --menu-band-mid:#2a4e78;
  --menu-band-end:#2b7a69;
  --menu-band-accent:#f2c468;
  --menu-band-title:#ffffff;
  --menu-band-text:rgba(245,249,253,.92);
}

body.public-site.page-results,
body.public-site.page-medals,
body.public-site.page-certificates{
  --menu-band-start:#312046;
  --menu-band-mid:#5a406e;
  --menu-band-end:#8a6b52;
  --menu-band-accent:#f1d08a;
  --menu-band-title:#ffffff;
  --menu-band-text:rgba(250,247,243,.92);
}

body.public-site.page-live-scores{
  --menu-band-start:#134d43;
  --menu-band-mid:#19715f;
  --menu-band-end:#427c56;
  --menu-band-accent:#ffb052;
  --menu-band-title:#ffffff;
  --menu-band-text:rgba(241,250,246,.92);
}

body.public-site.page-help-center,
body.public-site.page-contact,
body.public-site.page-schools{
  --menu-band-start:#25445d;
  --menu-band-mid:#35657d;
  --menu-band-end:#2f816f;
  --menu-band-accent:#ffd07d;
  --menu-band-title:#ffffff;
  --menu-band-text:rgba(244,249,252,.92);
}

/* Light bands for pages with filter-heavy content */
body.public-site.page-register,
body.public-site.page-apply,
body.public-site.page-sports,
body.public-site.page-registration-guide,
body.public-site.page-athletes,
body.public-site.page-check-registration{
  --menu-band-start:#f5f7fb;
  --menu-band-mid:#faf6ff;
  --menu-band-end:#eef8f3;
  --menu-band-accent:#7051a1;
  --menu-band-title:#21374f;
  --menu-band-text:#55677c;
  --menu-band-chip-bg:#ffffff;
  --menu-band-chip-text:#216050;
  --menu-band-chip-border:#d9e2ea;
  --menu-band-border:#dfe6ee;
  --menu-band-glow:rgba(134, 176, 161, .14);
  --menu-band-shadow:rgba(22,34,46,.07);
}

/* ------------------------------------------------------------------
   Shared banner / hero styling for public menu pages
   ------------------------------------------------------------------ */
html body.public-site:not(.page-index) :is(.public-page-hero,.section-heading,.contact-page-hero,.guide-real-hero){
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 10% 18%, rgba(255,255,255,.08), transparent 16%),
    radial-gradient(circle at 86% 18%, var(--menu-band-glow), transparent 26%),
    radial-gradient(circle at 78% 78%, rgba(255,255,255,.10), transparent 18%),
    linear-gradient(118deg, var(--menu-band-start) 0%, var(--menu-band-mid) 55%, var(--menu-band-end) 100%) !important;
  border:1px solid var(--menu-band-border) !important;
  box-shadow:0 18px 34px var(--menu-band-shadow) !important;
  isolation:isolate;
}

html body.public-site:not(.page-index) :is(.public-page-hero,.section-heading,.contact-page-hero,.guide-real-hero)::before{
  content:"";
  position:absolute;
  inset:auto -40px -72px auto;
  width:260px;
  height:260px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.16) 0%, rgba(255,255,255,.06) 34%, transparent 70%);
  filter:blur(10px);
  pointer-events:none;
  opacity:.88;
}

html body.public-site:not(.page-index) :is(.public-page-hero,.section-heading,.contact-page-hero,.guide-real-hero)::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(255,255,255,.06), transparent 18%, transparent 82%, rgba(255,255,255,.05)),
    linear-gradient(135deg, transparent 0%, transparent 68%, rgba(255,255,255,.06) 81%, transparent 88%);
  z-index:0;
}

/* Make inner content render above decorative glows */
html body.public-site:not(.page-index) :is(.public-page-hero,.section-heading,.contact-page-hero,.guide-real-hero) > *{
  position:relative;
  z-index:1;
}

/* Typography contrast */
html body.public-site:not(.page-index) :is(.public-page-hero,.section-heading,.contact-page-hero,.guide-real-hero) :is(.section-title,h1,h2){
  color:var(--menu-band-title) !important;
  -webkit-text-fill-color:var(--menu-band-title) !important;
  text-shadow:0 1px 0 rgba(0,0,0,.04);
}

html body.public-site:not(.page-index) :is(.public-page-hero,.section-heading,.contact-page-hero,.guide-real-hero) :is(.section-lead,p,small,.muted){
  color:var(--menu-band-text) !important;
  -webkit-text-fill-color:var(--menu-band-text) !important;
}

html body.public-site:not(.page-index) :is(.public-page-hero,.section-heading,.contact-page-hero,.guide-real-hero) :is(.eyebrow,.guide-real-kicker,.live-eyebrow){
  color:var(--menu-band-accent) !important;
  -webkit-text-fill-color:var(--menu-band-accent) !important;
}

/* Buttons / count cards sitting on top of the bands */
html body.public-site:not(.page-index) .public-page-hero :is(.luxury-action-link,.contact-page-highlight),
html body.public-site:not(.page-index) .guide-real-actions .guide-real-link,
html body.public-site:not(.page-index) .guide-real-actions .guide-real-primary{
  background:var(--menu-band-chip-bg) !important;
  border:1px solid var(--menu-band-chip-border) !important;
  color:var(--menu-band-chip-text) !important;
  -webkit-text-fill-color:var(--menu-band-chip-text) !important;
  box-shadow:0 10px 24px rgba(24, 32, 40, .10) !important;
}

html body.public-site:not(.page-index) .public-page-hero .public-page-count{
  background:var(--menu-band-chip-bg) !important;
  border:1px solid var(--menu-band-chip-border) !important;
  box-shadow:0 12px 24px rgba(24, 32, 40, .10) !important;
}
html body.public-site:not(.page-index) .public-page-hero .public-page-count strong{
  color:var(--menu-band-chip-text) !important;
  -webkit-text-fill-color:var(--menu-band-chip-text) !important;
}
html body.public-site:not(.page-index) .public-page-hero .public-page-count span{
  color:#6b7684 !important;
  -webkit-text-fill-color:#6b7684 !important;
}

/* Documents page previously had invisible heading: ensure strong contrast. */
html body.public-site.page-documents .section-heading,
html body.public-site.page-announcements .section-heading{
  min-height:134px;
  align-items:flex-end;
}
html body.public-site.page-documents .section-heading .section-title,
html body.public-site.page-announcements .section-heading .section-title{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* Filter/search panels retain clean white blocks under colorful bands */
html body.public-site:not(.page-index) :is(.card,.public-page-card,.announcement-detail-card,.public-news-card,.news-grid > article,.news-grid > .card){
  background:#ffffff !important;
}

/* ------------------------------------------------------------------
   Homepage countdown: stronger visual priority with orange accent
   ------------------------------------------------------------------ */
html body.public-site.page-index .event-countdown{
  background:
    radial-gradient(circle at 83% 18%, rgba(255,255,255,.20), transparent 22%),
    radial-gradient(circle at 90% 76%, rgba(255, 175, 85, .32), transparent 30%),
    radial-gradient(circle at 18% 70%, rgba(90, 180, 139, .18), transparent 28%),
    linear-gradient(118deg, #2a1d39 0%, #342447 46%, #1f5344 100%) !important;
  border:1px solid rgba(109, 102, 124, .72) !important;
  box-shadow:0 18px 36px rgba(24, 22, 35, .17), 0 0 0 1px rgba(255,255,255,.05) inset !important;
}

html body.public-site.page-index .event-countdown::after{
  background:
    radial-gradient(circle, rgba(255, 170, 74, .22), transparent 64%) !important;
  filter:blur(14px) !important;
}

html body.public-site.page-index .countdown-icon{
  background:linear-gradient(145deg, rgba(255,186,108,.28), rgba(255,255,255,.12)) !important;
  border:1px solid rgba(255, 198, 120, .28) !important;
  color:#ffe6bf !important;
  box-shadow:0 10px 20px rgba(12,16,22,.12) !important;
}

html body.public-site.page-index .countdown-intro small{
  color:#ffbf63 !important;
  -webkit-text-fill-color:#ffbf63 !important;
}

html body.public-site.page-index .countdown-intro strong{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

html body.public-site.page-index .countdown-intro div>span{
  color:rgba(235, 239, 245, .88) !important;
  -webkit-text-fill-color:rgba(235, 239, 245, .88) !important;
}

html body.public-site.page-index .countdown-numbers>div{
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(252,248,243,.96)) !important;
  border:1px solid rgba(237, 218, 188, .92) !important;
  box-shadow:0 10px 20px rgba(24, 32, 40, .08) !important;
  position:relative;
  overflow:hidden;
}

html body.public-site.page-index .countdown-numbers>div::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg, #f0a949, #f6c87c);
}

html body.public-site.page-index .countdown-numbers b{
  color:#1d6f58 !important;
  -webkit-text-fill-color:#1d6f58 !important;
}

html body.public-site.page-index .countdown-numbers span{
  color:#8a6f53 !important;
  -webkit-text-fill-color:#8a6f53 !important;
  font-weight:800 !important;
}

html body.public-site.page-index .countdown-cta{
  background:linear-gradient(135deg, #df8f2d, #c86d24) !important;
  border:1px solid rgba(255, 200, 136, .32) !important;
  box-shadow:0 12px 24px rgba(106, 54, 18, .24) !important;
}

/* Small screens keep contrast and avoid crowded decoration */
@media (max-width: 900px){
  html body.public-site:not(.page-index) :is(.public-page-hero,.section-heading,.contact-page-hero,.guide-real-hero){
    background:
      radial-gradient(circle at 84% 16%, rgba(255,255,255,.14), transparent 26%),
      linear-gradient(120deg, var(--menu-band-start) 0%, var(--menu-band-mid) 58%, var(--menu-band-end) 100%) !important;
  }
  html body.public-site:not(.page-index) :is(.public-page-hero,.section-heading,.contact-page-hero,.guide-real-hero)::before{
    width:180px;height:180px;right:-36px;bottom:-42px;
  }
  html body.public-site.page-index .event-countdown{
    background:
      radial-gradient(circle at 84% 18%, rgba(255,255,255,.14), transparent 24%),
      radial-gradient(circle at 88% 82%, rgba(255, 171, 74, .26), transparent 28%),
      linear-gradient(120deg, #2a1d39 0%, #352446 58%, #205142 100%) !important;
  }
}
