/* Racing Edition V4.1 — four focused visual fixes on top of approved V4.
   No API, mapping, backend, routing or event-card content changes. */

/* 1. Access control: keep white text AND icon over the crimson button on mobile. */
html body .site-navbar .navbar-links .login-btn,
html body .site-navbar .navbar-links .login-btn:is(:visited,:hover,:focus-visible) {
  color:#fff !important; background:#c80b32 !important;
  border-color:#fc5972 !important;
}
html body .site-navbar .navbar-links .login-btn i,
html body .site-navbar .navbar-links .login-btn span,
html body .site-navbar .navbar-links .login-btn:is(:hover,:focus-visible) i {
  color:#fff !important; -webkit-text-fill-color:#fff !important;
  opacity:1 !important; filter:none !important; text-shadow:none !important;
}

/* 2. Hero contact buttons: visible labels and pictograms, not blue on blue. */
html body:not(.promotion-management) .track-top-stage .hero-social-btn:not(.hero-edit-btn) {
  background:rgba(7,35,59,.92) !important;
  border:1px solid rgba(240,248,252,.86) !important;
  color:#fff !important;
}
html body:not(.promotion-management) .track-top-stage .hero-social-btn:not(.hero-edit-btn):is(:hover,:focus-visible) {
  background:#175b82 !important; border-color:#fff !important;
}
html body:not(.promotion-management) .track-top-stage .hero-social-btn i,
html body:not(.promotion-management) .track-top-stage .hero-social-btn span:not(.copy-feedback),
html body:not(.promotion-management) .track-top-stage .hero-social-btn .copy-feedback i {
  color:#fff !important; -webkit-text-fill-color:#fff !important; opacity:1 !important;
}

/* 3. Home event cards expand inside two columns, never across the full desktop grid.
   Retain the established imagery, details, session list and call-to-action. */
@media (min-width:769px) {
  html body:not(.promotion-management) .events-block .event-entry-home.expand-ratio {
    grid-column:span var(--event-expand-span,2) !important;
    min-width:0 !important;
  }
  html body:not(.promotion-management) .events-block .event-entry-home.expand-ratio .event-card-moderno.is-expanded {
    width:min(100%,670px) !important;
    max-width:670px !important;
    margin-inline:auto !important;
    height:var(--event-expanded-height,580px) !important;
    max-height:86vh !important;
  }
  html body:not(.promotion-management) .events-block .event-entry-home.expand-ratio .event-card-moderno.is-expanded .event-card-description {
    overflow-y:auto !important; overflow-x:hidden !important;
    overscroll-behavior:contain !important;
    scrollbar-width:thin;
  }
}

/* 4. Track cover photo: its own right-hand plane instead of stretching a thumbnail
   across the entire width of the hero. The left side remains typographic/navy. */
@media (min-width:769px) {
  html body:not(.promotion-management) .track-top-stage {background:#082e49 !important;}
  html body:not(.promotion-management) .track-top-stage .track-top-bg {
    left:42% !important; right:0 !important; top:0 !important; bottom:0 !important;
    transform:none !important; opacity:.98 !important; filter:none !important;
    background-size:cover !important; background-position:50% 50% !important;
  }
  html body:not(.promotion-management) .track-top-stage::before {
    background:linear-gradient(90deg,
      #082e49 0%, #082e49 28%, rgba(8,46,73,.98) 38%,
      rgba(8,46,73,.64) 47%,rgba(8,46,73,.18) 63%,
      rgba(8,46,73,.02) 80%,transparent 100%) !important;
  }
}
@media (max-width:768px) {
  html body:not(.promotion-management) .track-top-stage {background:#082e49 !important;}
  html body:not(.promotion-management) .track-top-stage .track-top-bg {
    left:0 !important;right:0 !important;top:0 !important;bottom:auto !important;
    height:clamp(195px,55vw,240px) !important;
    background-size:cover !important;background-position:center center !important;
    transform:none !important;filter:none !important;opacity:.96 !important;
  }
  html body:not(.promotion-management) .track-top-stage::before {
    background:linear-gradient(180deg,
      rgba(5,35,58,.62) 0px,rgba(5,35,58,.70) 85px,
      rgba(5,35,58,.97) 190px,#082e49 240px) !important;
  }
}
