/* Cserepesház: scoped WCAG 2.1 AA corrections, 2026-11-02. */
#page [data-id="0a19c5b"] .elementor-item,
#page [data-id="37e7e091"] .elementor-item {
    color: #17212f !important;
}
#page [data-id="0a19c5b"] .elementor-item:hover,
#page [data-id="0a19c5b"] .elementor-item:focus,
#page [data-id="0a19c5b"] .elementor-item-active,
#page [data-id="37e7e091"] .elementor-item-active {
    color: #111827 !important;
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
}
/* Preserve the institutions' existing background colours. */
#page [data-id="ddc9cfc"] .elementor-heading-title,
#page [data-id="bbf32bb"] .elementor-heading-title,
#page [data-id="89220c2"] .elementor-heading-title,
#page [data-id="d0e1165"] .elementor-heading-title {
    color: #17212f !important;
}
#page [data-id="79ec0e55"] .elementor-widget-container {
    color: #bdbdbd !important;
}
#page .elementor-widget-search button,
#page .elementor-widget-search-form button,
#page button.elementor-search-form__submit {
    color: #17212f !important;
}
/* Plain-text details links on white cards need their own dark link colour. */
#page .e-loop-item:not(.swiper-slide) .elementor-button {
    color: #2d4810 !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}
/* A solid caption background keeps text readable over every poster. */
#page [data-widget_type="loop-carousel.post"] [data-id="46b3e98"] {
    background: #17212f !important;
    padding: 12px !important;
}
#page [data-widget_type="loop-carousel.post"] .elementor-heading-title,
#page [data-widget_type="loop-carousel.post"] .elementor-heading-title a,
#page [data-widget_type="loop-carousel.post"] .elementor-button {
    color: #ffffff !important;
}
#page .csh-a11y-carousel-toolbar {
    display: flex;
    justify-content: flex-end;
    margin: 0 0 12px;
    padding: 4px;
}
#page button.csh-a11y-rotation {
    color: #ffffff !important;
    background: #17212f !important;
    border: 2px solid #17212f !important;
    border-radius: 4px;
    min-height: 44px;
    padding: 9px 16px;
    font: inherit;
    font-weight: 600;
    line-height: 1.3;
    cursor: pointer;
}
#page button.csh-a11y-rotation:hover {
    background: #2d4810 !important;
}
#page [data-widget_type="loop-carousel.post"] .elementor-swiper-button {
    color: #ffffff !important;
    background: #17212f !important;
    opacity: 1 !important;
    border: 2px solid #ffffff;
    border-radius: 50%;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
}
#page [data-widget_type="loop-carousel.post"] .elementor-swiper-button svg {
    fill: #ffffff !important;
}
#page a:focus-visible,
#page button:focus-visible,
#page input:focus-visible,
#page select:focus-visible,
#page textarea:focus-visible,
#page [tabindex]:focus-visible,
#page [role="button"]:focus-visible,
#page .evofc_day:focus,
#page .evcal_arrows:focus,
.evo_lightboxes a:focus-visible,
.evo_lightboxes button:focus-visible,
.evo_lightboxes [role="button"]:focus-visible,
.cky-btn-revisit:focus-visible {
    outline: 3px solid #111111 !important;
    outline-offset: 3px !important;
    box-shadow: 0 0 0 3px #ffffff !important;
    z-index: 2;
}
#page .e-loop-item:focus-within {
    outline: 3px solid #111111 !important;
    outline-offset: -3px !important;
}
#page .evofc_day:focus-visible { z-index: 3; }
#page .evofc_day_name { color: #414142 !important; }
#page .evofc_day { cursor: pointer; }
#page .evofc_day[data-su] { opacity: 1 !important; }
#page .evofc_day[data-su] .evo_day_in_num,
#page .evcal_arrows i { color: #17212f !important; }
#page .evo-gototoday-btn {
    color: #ffffff !important;
    background: #17212f !important;
}
.evo_lightboxes .evolbclose {
    color: #17212f !important;
    background: #ffffff !important;
    border: 2px solid #17212f !important;
    border-radius: 4px;
    min-width: 44px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
.evo_lightboxes .evolbclose i { color: #17212f !important; }
#page .evofc_day[aria-pressed="true"] .evo_day_in {
    border: 2px solid #17212f;
}
.csh-a11y-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}
#page .elementor-heading-title p:last-child { margin-bottom: 0; }
@media (prefers-reduced-motion: reduce) {
    #page .elementor-animation-pop,
    #page .elementor-animation-float,
    #page .e-loop-item {
        animation: none !important;
        transition: none !important;
    }
}
