/* Reflow for the existing accessibility plugin. Its inline text settings stay intact. */
body.visually-impaired-controls-enable {
    overflow-wrap: anywhere;
}
/* The footer also grows with enlarged text; a fixed bottom reserve is insufficient. */
body.visually-impaired-controls-enable .container {
    padding-bottom: 0;
}
body.visually-impaired-controls-enable footer {
    position: relative;
    clear: both;
}

/* The enlarged header must take up space above the page and the settings panel. */
body.visually-impaired-controls-enable header.main_header {
    position: relative;
    transform: none !important;
    margin-top: 0;
}
body.visually-impaired-controls-enable .slauder,
body.visually-impaired-controls-enable .contentbody {
    padding-top: 20px;
    max-height: none;
}
body.visually-impaired-controls-enable .nav {
    display: flex;
    flex-wrap: wrap;
    height: auto;
}
body.visually-impaired-controls-enable .nav > * {
    float: none;
    max-width: 100%;
    min-width: 0;
}
body.visually-impaired-controls-enable .nav > ul:not(.social) {
    display: flex;
    flex-wrap: wrap;
}
body.visually-impaired-controls-enable .nav li a,
body.visually-impaired-controls-enable .switcher-list li a,
body.visually-impaired-controls-enable .switcher-list li > span {
    color: inherit !important;
}
body.visually-impaired-controls-enable .vcard {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}
body.visually-impaired-controls-enable .vcard > li {
    min-width: 0;
    height: auto;
}
body.visually-impaired-controls-enable .visually-impaired-controls .vi_panel {
    height: auto;
    max-width: 100%;
    box-sizing: border-box;
}
body.visually-impaired-controls-enable .visually-impaired-controls .vi-popp {
    width: 100%;
    max-width: 780px;
    box-sizing: border-box;
}
body.visually-impaired-controls-enable a:focus-visible,
body.visually-impaired-controls-enable button:focus-visible {
    outline: 2px solid currentColor !important;
    outline-offset: 2px;
}
/* A large cookie notice must not cover the page or overlap its own button. */
body.visually-impaired-controls-enable .bottom-info-wrapper {
    position: relative;
    clear: both;
}
body.visually-impaired-controls-enable .bottom-info-block-content {
    margin-right: 0 !important;
}
body.visually-impaired-controls-enable .bottom-info-block-action {
    position: static;
    margin-top: 0.5em;
}

/* Keep the date and weekday in normal flow, below the news text. */
body.visually-impaired-controls-enable .entry-post.cat .right,
body.visually-impaired-controls-enable .entry-post.cat .entry-content {
    float: none;
    width: auto;
    max-width: 100%;
}
body.visually-impaired-controls-enable .entry-post.cat .preimg {
    float: none;
    max-width: 100%;
    margin-bottom: 1em;
}
body.visually-impaired-controls-enable .entry-post .date_contine {
    position: static;
    display: flow-root;
    clear: both;
    height: auto;
    min-height: 0;
    width: 100%;
    margin-top: 1em;
}
body.visually-impaired-controls-enable .entry-post .post_date {
    display: flex;
    flex-wrap: wrap;
    gap: 0 0.5em;
    float: none;
    min-width: 0;
    max-width: 100%;
}
body.visually-impaired-controls-enable .entry-post .post_date > * {
    float: none;
    margin: 0;
    min-width: 0;
    text-align: left;
}
body.visually-impaired-controls-enable .entry-post .post_date .l {
    flex-basis: 100%;
}
body.visually-impaired-controls-enable .entry-post .contine {
    position: static;
    display: block;
    float: none;
    clear: both;
    margin-top: 0.5em;
}

/* A vertical event layout leaves room for dates, ranges, prices and long titles. */
body.visually-impaired-controls-enable .upcoming-events,
body.visually-impaired-controls-enable .todays-events,
body.visually-impaired-controls-enable .upcoming-events > li,
body.visually-impaired-controls-enable .todays-events > li {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
}
body.visually-impaired-controls-enable .upcoming-events .event,
body.visually-impaired-controls-enable .todays-events .event {
    flex-direction: column !important;
    gap: 0.5em;
    width: 100%;
}
body.visually-impaired-controls-enable .event .event-date,
body.visually-impaired-controls-enable .event .event-date_content,
body.visually-impaired-controls-enable .event .event-info {
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    box-sizing: border-box;
    text-align: left !important;
}
body.visually-impaired-controls-enable .event-date > div {
    height: auto !important;
}

/* Flex tracks take the height of their tallest slide, even after text settings change.
   bxSlider keeps its inline widths and horizontal movement; overflow stays clipped. */
body.visually-impaired-controls-enable .l-slider {
    max-height: none;
}
body.visually-impaired-controls-enable .l-slider .bx-viewport,
body.visually-impaired-controls-enable .top_news .bx-viewport {
    height: auto !important;
}
body.visually-impaired-controls-enable .main_slider,
body.visually-impaired-controls-enable #top_news {
    display: flex;
    align-items: stretch;
    height: auto !important;
}
body.visually-impaired-controls-enable .main_slider > li,
body.visually-impaired-controls-enable #top_news > li {
    flex-shrink: 0;
    height: auto;
}
body.visually-impaired-controls-enable .main_slider > li > a {
    display: flex;
    align-items: flex-start;
    width: 100%;
}
body.visually-impaired-controls-enable .l-slider .main_slider .bx-caption {
    position: static;
    width: 50%;
    max-width: none;
    min-width: 0;
    height: auto;
    padding: 1em;
}
body.visually-impaired-controls-enable .l-slider ul.main_slider li img {
    width: 50%;
    height: auto;
    max-height: 430px;
    object-fit: contain;
}
body.visually-impaired-controls-enable .l-slider .main_slider .contine_button {
    float: none;
    padding: 0.5em;
    margin-top: 0.5em;
}
body.visually-impaired-controls-enable .vi-no-images {
    height: auto !important;
    max-width: 100%;
    overflow: visible;
}
body.visually-impaired-controls-enable .main_slider > li > a > .vi-no-images {
    width: 50% !important;
    flex-shrink: 0;
}

/* Read announcements without moving text or gradient masks. */
body.visually-impaired-controls-enable .marquee-section .contentcenter {
    flex-direction: column;
    align-items: stretch;
}
body.visually-impaired-controls-enable .marquee-header {
    width: auto;
}
body.visually-impaired-controls-enable .marquee {
    flex-wrap: wrap;
    white-space: normal;
    transform: none !important;
    gap: 0.5em;
}
body.visually-impaired-controls-enable .marquee-wrapper::before,
body.visually-impaired-controls-enable .marquee-wrapper::after {
    display: none;
}

@media (max-width: 1100px) {
    body.visually-impaired-controls-enable .main_slider > li > a {
        flex-direction: column;
    }
    body.visually-impaired-controls-enable .l-slider .main_slider .bx-caption,
    body.visually-impaired-controls-enable .l-slider ul.main_slider li img,
    body.visually-impaired-controls-enable .main_slider > li > a > .vi-no-images {
        width: 100% !important;
    }
}
