html.high-contrast,
html.high-contrast body {
    background: #000 !important;
    color: #fff !important;
}

html.high-contrast body::before,
html.high-contrast .hero-bg,
html.high-contrast .pitch-pattern,
html.high-contrast .hero-shade,
html.high-contrast .venue-bg,
html.high-contrast .cta-bg {
    display: none !important;
}

html.high-contrast body *:not(img):not(svg):not(path) {
    box-shadow: none !important;
    text-shadow: none !important;
}

html.high-contrast main,
html.high-contrast header,
html.high-contrast section,
html.high-contrast footer,
html.high-contrast article,
html.high-contrast aside,
html.high-contrast details,
html.high-contrast summary,
html.high-contrast form,
html.high-contrast .light-section,
html.high-contrast .upcoming-events,
html.high-contrast .parent-links,
html.high-contrast .venue,
html.high-contrast .programs,
html.high-contrast .coaches,
html.high-contrast .cta-section {
    background: #000 !important;
    color: #fff !important;
}

html.high-contrast .site-nav,
html.high-contrast .site-nav__links,
html.high-contrast .site-nav__more-menu {
    background: #000 !important;
    border-color: #fff !important;
}

html.high-contrast .site-nav__links li,
html.high-contrast .site-nav__more-menu li {
    border-color: #fff !important;
}

html.high-contrast .site-nav__more-menu a {
    border-color: transparent !important;
}

html.high-contrast .site-nav__more-menu a:hover,
html.high-contrast .site-nav__more-menu a:focus-visible {
    border-color: #ffd84d !important;
    background: #111 !important;
}

html.high-contrast .hero-slide,
html.high-contrast .hero-slide:first-child {
    background-image: none !important;
    background-color: #000 !important;
}

html.high-contrast .slider-controls,
html.high-contrast .slider-status {
    background: transparent !important;
    border: 0 !important;
}

html.high-contrast .finder-inner,
html.high-contrast .parent-promise,
html.high-contrast .parent-link,
html.high-contrast .home-event-card,
html.high-contrast .program-card,
html.high-contrast .coach-card,
html.high-contrast .venue-feature,
html.high-contrast .contact-cta,
html.high-contrast .mission-card,
html.high-contrast .pillar-card,
html.high-contrast .event-mini,
html.high-contrast .programme,
html.high-contrast .benefit,
html.high-contrast .impact-card,
html.high-contrast .sponsor-card,
html.high-contrast .faq-list details,
html.high-contrast .contact-item,
html.high-contrast .form {
    background: #000 !important;
    border: 2px solid #fff !important;
    color: #fff !important;
}

html.high-contrast h1,
html.high-contrast h2,
html.high-contrast h3,
html.high-contrast h4,
html.high-contrast p,
html.high-contrast li,
html.high-contrast span,
html.high-contrast small,
html.high-contrast strong,
html.high-contrast cite,
html.high-contrast label,
html.high-contrast div,
html.high-contrast summary {
    color: #fff !important;
}

html.high-contrast .mission-label,
html.high-contrast .section-label,
html.high-contrast .eyebrow,
html.high-contrast .sport-tag,
html.high-contrast .program-age,
html.high-contrast .coach-role,
html.high-contrast .home-event-meta,
html.high-contrast .venue-badge,
html.high-contrast .booking-note {
    color: #ffd84d !important;
    border-color: #ffd84d !important;
    background: #000 !important;
}

html.high-contrast a,
html.high-contrast a *,
html.high-contrast .program-book,
html.high-contrast .privacy-link {
    color: #ffd84d !important;
    text-decoration: underline !important;
}

html.high-contrast .btn-primary,
html.high-contrast .btn-secondary,
html.high-contrast .button,
html.high-contrast .site-nav__cta,
html.high-contrast .finder-action,
html.high-contrast button,
html.high-contrast input,
html.high-contrast select,
html.high-contrast textarea {
    background: #000 !important;
    border: 2px solid #ffd84d !important;
    color: #ffd84d !important;
}

html.high-contrast .btn-primary *,
html.high-contrast .btn-secondary *,
html.high-contrast .button *,
html.high-contrast .site-nav__cta *,
html.high-contrast .finder-action *,
html.high-contrast button * {
    color: #ffd84d !important;
}

html.high-contrast .site-nav__tool[aria-pressed="true"],
html.high-contrast .site-nav__tool[aria-pressed="true"] * {
    background: #ffd84d !important;
    border-color: #ffd84d !important;
    color: #000 !important;
}

html.high-contrast .site-nav__contrast-icon {
    background: linear-gradient(90deg, currentColor 50%, transparent 50%) !important;
}

html.high-contrast img {
    border: 2px solid #fff !important;
}

html.high-contrast input::placeholder,
html.high-contrast textarea::placeholder {
    color: #fff !important;
    opacity: 1 !important;
}

html.high-contrast svg,
html.high-contrast path {
    stroke: currentColor !important;
}

html.high-contrast :focus-visible {
    outline: 3px solid #00ffff !important;
    outline-offset: 4px !important;
}
