.visually-hidden {
    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;
    border: 0 !important;
    white-space: nowrap !important;
}

body {
    min-width: 320px;
}

form.new_form div.form-label.hidden,
form.zend_form div.form-label.hidden {
    display: block !important;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
    outline: 3px solid #a3238e;
    outline-offset: 2px;
}

.main-nav .hidden-menu,
.main-nav .menu-more {
    font: inherit;
}

.main-nav .menu-more {
    display: none;
}

.main-nav .hidden-menu {
    display: none;
    appearance: none;
    border: 0;
    background: #cacaca;
    color: #222;
    cursor: pointer;
    font-weight: 700;
    text-align: center;
}

.main-nav .main-menu-list.is-open {
    display: block;
}

.main-nav .menu-more {
    appearance: none;
    border: 1px solid #666;
    background: #fff;
    border-radius: 4px;
    color: #222;
    cursor: pointer;
    height: 32px;
    line-height: 30px;
    padding: 0;
    text-align: center;
    width: 32px;
}

.jqmWindowNew button {
    border: 0;
}

@media screen and (min-width: 768px) {
    .news-block + .news-text {
        float: none !important;
        display: inline-block;
        margin-left: 4%;
        width: 74% !important;
    }

    .news-block + .news-text + *,
    .news-block + .news-text::after {
        clear: both;
    }

    .news-block {
        width: 20%;
        vertical-align: top;
    }
}

@media screen and (max-width: 767px) {
    .main-image {
        width: 118px !important;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .main-image a {
        display: block;
        width: 100%;
    }

    .main-image img {
        display: block;
        width: auto !important;
        height: auto !important;
        max-width: 104px;
        max-height: 34px;
        margin: 10px auto 0;
    }

    .main-nav {
        position: relative;
    }

    .main-nav .hidden-menu {
        display: block;
        position: fixed;
        right: 0;
        top: 0;
        z-index: 1000;
        border: 1px solid #000;
        height: 55px;
        line-height: 55px;
        width: 70%;
    }

    .main-nav .main-menu-list {
        display: none;
    }

    .main-nav .menu-more {
        display: block;
        position: absolute;
        right: 10px;
        top: 5px;
    }

    .table-main div.main-menu div.menu-item > a {
        display: block;
        padding: 5px 48px 5px 0;
    }

    .table-main div.main-menu div.submenu {
        display: none;
    }

    .table-main div.main-menu div.submenu.is-open {
        display: block;
    }
}

@media screen and (max-width: 480px) {
    .main-image {
        width: 112px !important;
    }

    .main-image img {
        max-width: 98px;
        max-height: 32px;
        margin-top: 11px;
    }
}
