body.is-high-contrast {
    --color-bg: #00000a;
    --color-high-contrast: #ffff00;
    --color-main: var(--color-high-contrast);
    --e-global-color-c5989ce: var(--color-bg);
    --e-global-color-text: var(--color-high-contrast);
    --e-global-color-primary: var(--color-high-contrast);
    --e-global-color-accent: var(--color-high-contrast);
    background-color: var(--color-bg);
    color: var(--color-main);
}

body.is-high-contrast a:has(.elementor-icon-list-text),
body.is-high-contrast .elementor-icon-list-text,
body.is-high-contrast a[id*='Accessability'],
body.is-high-contrast a[id*='accessibility'],
body.is-high-contrast a[id*='accessability'],
body.is-high-contrast a,
body.is-high-contrast .elementor-heading-title,
body.is-high-contrast .elementor-cta--skin-classic .elementor-cta__content-item,
body.is-high-contrast .obj-grid-item,
body.is-high-contrast .obj-grid-item-container *,
body.is-high-contrast .section-header-red-line,
body.is-high-contrast footer + * *,
body.is-high-contrast .section-filter-item.people,
body.is-high-contrast .elementor-social-icon i {
    color: var(--color-main) !important;
}

body.is-high-contrast a[id*='Accessability'],
body.is-high-contrast a[id*='accessibility'],
body.is-high-contrast a[id*='accessability'] {
    background-color: transparent !important;
}

body.is-high-contrast .elementor-nav-menu--dropdown a:hover,
body.is-high-contrast .elementor-button,
body.is-high-contrast .elementor-nav-menu--dropdown,
body.is-high-contrast .elementor-nav-menu--dropdown a,
body.is-high-contrast
    .elementor-widget-nav-menu
    .elementor-nav-menu--main
    .elementor-item.elementor-item-active {
    color: var(--color-bg) !important;
}

body.is-high-contrast .elementor-nav-menu--main .elementor-item:hover,
body.is-high-contrast .elementor-nav-menu--main .elementor-item.highlighted,
body.is-high-contrast .e-con::before,
body.is-high-contrast .elementor-background-video-container::before {
    --e-global-color-text: var(--color-bg);
    color: var(--e-global-color-text) !important;
}

body.is-high-contrast
    .wpml-ls-legacy-dropdown-click
    .wpml-ls-current-language:hover
    > a,
body.is-high-contrast .wpml-ls-legacy-dropdown-click a:focus,
body.is-high-contrast .wpml-ls-legacy-dropdown-click a:hover {
    background: var(--color-bg);
}

body.is-high-contrast .quicklinks_custom a,
body.is-high-contrast .elementor-cta__content {
    background-color: var(--color-bg) !important;
    color: var(--color-main) !important;
}

body.is-high-contrast .load-more-button,
body.is-high-contrast .close-filters-button,
body.is-high-contrast .load-more-button:hover,
body.is-high-contrast .close-filters-button:hover,
body.is-high-contrast .filter-select-button,
body.is-high-contrast .section-filter-item.people.section-active {
    background-color: var(--color-main) !important;
    color: var(--color-bg) !important;
}

body.is-high-contrast .filter-select-button,
body.is-high-contrast .section-filter-item.people.section-active {
    border: 0;
}

body.is-high-contrast
    .elementor-element:not(
        .elementor-motion-effects-element-type-background
    )[data-settings*='background_background'],
body.is-high-contrast .obj-grid-header-wrapper,
body.is-high-contrast .type-post .dropdown-item:hover,
body.is-high-contrast .obj-grid-item,
body.is-high-contrast .filter-select-dropdown {
    background-color: var(--color-bg) !important;
}

body.is-high-contrast a:hover {
    text-decoration: underline;
}

body.is-high-contrast .type-post .dropdown-item,
body.is-high-contrast .section-header-red-line,
body.is-high-contrast .filter-select-dropdown {
    border-color: var(--color-main);
}

.accessibility {
    position: fixed;
    top: 0;
    right: 0;
    width: 1000px;
    max-width: 100%;
    max-height: 100%;
    content-visibility: hidden;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    overflow-y: auto;
    overscroll-behavior: contain;
    background-color: rgba(0, 0, 0, 0.5);
    padding: 0;
    z-index: 10000;
    transition: 300ms ease-in-out;
    transition-property: content-visibility, opacity, visibility;
}

body.is-high-contrast .accessibility {
    --e-global-color-primary: var(--color-main);
    --e-global-color-text: var(--color-main);
}

.accessibility.is-open {
    content-visibility: visible;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.accessibility__inner {
    display: flex;
    flex-direction: column;
    gap: 24px;
    font-size: var(--e-global-typography-text-font-size);
    background-color: #f7f2e9;
    padding: 42px 54px;
}

@media (max-width: 767px) {
    .accessibility__inner {
        padding: 24px;
    }
}

body.is-high-contrast .accessibility__inner {
    background-color: var(--color-bg);
}

.accessibility__title {
    color: var(--e-global-color-primary);
    margin: 0;
    margin-bottom: 0 !important;
}

.button-group {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 24px;
}

.accessibility__toggle input {
    width: 16px;
    height: 16px;
    appearance: none;
    border: 1px solid var(--e-global-color-primary);
    border-radius: 50%;
}

.accessibility__toggle input:checked {
    background-repeat: no-repeat;
    background-image: url('data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%272%27 fill=%27%23F14C2A%27/%3e%3c/svg%3e');
    background-size: 148%;
    background-position: 50% 50%;
}

body.is-high-contrast .accessibility__toggle input:checked {
    background-image: url('data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%272%27 fill=%27%23ffff00%27/%3e%3c/svg%3e');
}

.accessibility__toggle .form-check {
    display: grid;
    grid-template-columns: minmax(0, 16px) minmax(0, 1fr);
    gap: 8px;
    cursor: pointer;
}

.accessibility__toggle label {
    color: var(--e-global-color-primary);
}

.accessibility__toggle label span {
    display: block;
    width: 100%;
    color: var(--e-global-color-text);
}

.accessibility .elementor-button {
    border: 0;
    cursor: pointer;
}
