

/* Start:/local/templates/red-gray/css/custom.css?177874247323497*/
:root {
    --box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
    --transition: all .3s ease 0s;

    --white: #fff;
    --black: #414342;
    --gray: #bfbbbb;
    --main-gray: #414342;
    --bg-color: #f1f1f1;
    --bg-color: #f6f6f6;
    --dark-red: #b42a47;
    --red: #ed2f59;
    --green-mint: #4CA7AA;
    --lightblue: #AFD2F8;
    --main-color: var(--red);
    accent-color: var(--main-color);
    --swiper-theme-color: var(--main-color);

    --gap: 24px;
    --border-color: #ececec;

    --border-radius-sm: 8px;
    --border-radius-md: 16px;
    --border-radius-lg: 24px;

    --btn-height-sm: 44px;
    --btn-height-md: 54px;
    --btn-height-lg: 64px;

    --header-height: 127px;
}

*,
*::before,
*::after {
    padding: 0;
    margin: 0;
    border: 0;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    outline: none;
}

:focus {
    outline: none !important;
}

pre {
    background-color: #fff;
    border: 1px solid var(--border-color);
    overflow: auto;
    min-width: 200px;
    color: #000;
    font-size: 14px;
}

html,
body {
    height: 100%;
    font-family: Montserrat, Verdana;
    font-family: Nunito;
    scroll-behavior: smooth;
    scrollbar-gutter: stable;
    font-size: 16px;
    line-height: 1.48;
    color: var(--black);
    background-color: #f6f6f6;
}

body.noscroll {
    overflow: hidden;
}

section {
    padding-top: calc(30px + (100 - 30) * ((100vw - 320px) / (1920 - 320)));
    padding-bottom: calc(30px + (100 - 30) * ((100vw - 320px) / (1920 - 320)));
}

a {
    color: var(--main-color);
    text-decoration: none;
    transition: var(--transition)
}

a:hover {
    text-decoration: none;
}

img {
    max-width: 100%;
}

img._noimage {
    position: absolute;
    object-fit: contain;
    object-position: center;
    max-width: 80px;
    max-height: 80px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

[class*=_container] {
    max-width: 1440px;
    box-sizing: content-box;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
}

[class*=_title] {
    color: var(--black);
    font-family: 'StarC';
    text-transform: uppercase;
    transform: scaleX(1.15);
    max-width: calc(100% - 15%);
    transform-origin: left;
    font-stretch: expanded;
}

.content {
    flex: 1 1 auto;
    position: relative;
}


.title {
    color: #222;
    font-weight: 400;
}

.subtitle {
    color: var(--main-color);

}

input, button, textarea, select {
    font-family: inherit;
}

input:not([type="submit"], [type="checkbox"], [type="button"], [type="file"],  [type="search"]),
textarea,
select {
    vertical-align: middle;
    border-radius: 4px;
    padding: 16px;
    color: var(--title-color);;
    font-size: 16px;
    outline: none;
    border: 1px solid transparent;
    width: 100%;
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
    -webkit-appearance: none;
}

ul, li {
    list-style: none;
}

h1, h2, h3, h4 {
    line-height: 116%;
    font-weight: 500;
}


h1 {
    font-size: calc(30px + (48 - 30) * ((100vw - 320px) / (1920 - 320)));
}

h2 {
    font-size: calc(28px + (40 - 28) * ((100vw - 320px) / (1920 - 320)));
}

h3 {
    font-size: calc(24px + (32 - 24) * ((100vw - 320px) / (1920 - 320)));
    line-height: 126%;
}

h4 {
    font-size: calc(20px + (24 - 20) * ((100vw - 320px) / (1920 - 320)));
}

.page ul, .page ol {
    /* padding-left: 20px;*/
    margin-bottom: 20px;
}

.page ol {
    list-style: none;
    /* counter-reset: counter;*/
}

.page ol li {
    /* counter-increment: counter;*/
}

.page ol li::before {
    /*  content: counter(counter) ". ";*/
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 0;
    width: auto;
    height: 100%;
    font-weight: 500;
    /*margin-left: -22px;*/
}

.page ul li, .page ol li {
    position: relative;
    /* left: 22px;*/
    margin-bottom: 12px;
}

.page ul li::before,
ol > ul li::before {
    content: '';
    position: absolute;
    margin-top: 7px;
    width: 8px;
    height: 8px;
    border-radius: 3px;
    background: var(--main-color);
    /*margin-left: -22px;*/
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    padding: 0;
    clip: rect(0 0 0 0);
    overflow: hidden;
}

._noscroll {
    overflow: hidden !important;
}


._nophoto {
    padding-bottom: 0;
    opacity: 50%;
    pointer-events: none;
}

._maincolor {
    color: var(--main-color);
}

._section-header {
    margin-bottom: 50px;
}

._section-title {
}

._section-link-more {
}

._section-color {
    background-color: var(--bg-color);
}

._section-footer {
    margin-top: 24px;
    text-align: center;
}

._ibg {
    position: relative;
    overflow: hidden;
    z-index: 1;
}

._ibg img {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: contain;
    z-index: 1;
    transition: var(--transition);
}

._link-hover {
    position: relative;
}

._link-hover::before {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 50%;
    width: 0;
    height: 1px;
    background-color: var(--main-color);
    z-index: 2;
    transition: var(--transition);
    transform: translateX(-50%);
}

._link-hover:hover::before,
._link-hover:focus::before {
    content: '';
    width: 100%;
}

.wrapper {
    width: 100%;
    min-height: 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #000;
    opacity: 0;
    transition: var(--transition);
    z-index: -10;
}

.overlay.active {
    opacity: 0.55;
    z-index: 5;
}

main {
    flex: 1 1 auto;
}

@media (max-width: 992px) {
    main {
        padding-top: 57px;
    }
}

.slider-arrows {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}


/* HEADER */
#bx-panel {
    /*display: none !important;*/
}

.header {
    width: 100%;
    border-bottom: 1px solid var(--border-color);
    background: var(--white);
}

.header__fixed {
    /*position: fixed;*/
    top: 0;
    z-index: 3;
}

.header__layout {
    /*position: absolute;*/
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -2;
}

.header__layout.layout__blur {
    /*backdrop-filter: blur(20px);*/
    z-index: -2;
}

.top-header {
    /* border-bottom: 1px solid #e4e8eb;*/
}

.top-header a {
    white-space: nowrap;
}

.top-header__container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem;
}

@media (min-width: 993px) {
    .top-header__container {
        padding-top: 10px;
    }
}

.top-header__menu {
    flex: 1 1 auto;
}

.menu__list {
    display: flex;
    flex-wrap: wrap;
    row-gap: 5px;
    /*column-gap: calc(20px + 40 * ((100vw - 320px) / 1600));*/
}

.menu__link {
    /*font-size: 1rem;*/
    /*line-height: calc(16px + 4 * ((100vw - 320px) / 1600));*/
}

@media (any-hover: hover) {
    .menu__link:hover {
        /*text-decoration: underline;*/
    }
}

.icon-menu {
    display: none;
}

@media (max-width: 767.98px) {
    .icon-menu {
        display: block;
        position: relative;
        flex: 0 0 30px;
        height: 18px;
        cursor: pointer;
        z-index: 5;
    }

    .icon-menu span, .icon-menu::before, .icon-menu::after {
        content: "";
        transition: all 0.2s ease 0s;
        left: 0;
        position: absolute;
        width: 100%;
        height: 2px;
        background-color: #fff;
    }

    .icon-menu::before {
        top: 0;
    }

    .icon-menu::after {
        bottom: 0;
    }

    .icon-menu span {
        top: calc(50% - 1px);
    }

    .menu-open .icon-menu {
        transform: scale(0);
    }

    .icon-menu::before {
        transform: rotate(-45deg);
        top: calc(50% - 1px);
    }

    .icon-menu::after {
        transform: rotate(45deg);
        bottom: calc(50% - 1px);
    }
}

.body-header {
    /*box-shadow: 0 4px 22px rgba(0, 0, 0, .08);
    background: var(--main-color);*/
}

.body-header__container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.body-header__logo {
    display: flex;
    align-items: center;
    height: 100%;
    font-size: 2.4rem;
    color: var(--main-color);
    font-weight: 800;
    font-family: system-ui;
}

.body-header__logo img {
    height: 43px;
    margin-right: 10px;
}

.actions-header {
    display: flex;
    gap: 40px;
    font-size: 14px;
    font-weight: 600;
    height: 56px;
    align-items: center;
}

.actions-header > div,
.actions-header > div > div {
    /*height: 100%;*/
}

.actions-header a {
    color: #222;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.actions-header a:hover {
    color: var(--main-color);
}

.header__visually-impaired {
    display: flex;
    gap: 10px;
    flex-wrap: nowrap;
    font-size: 13px;
    align-items: center;
    text-align: right;
}

.header__visually-impaired img {
    height: 30px;
}

@media (max-width: 1023px) {
    .body-header__logo {
        font-size: 2rem;
    }
}

@media (max-width: 992px) {
    .actions-header {
        display: grid;
        grid-template-areas: 'hphone hsearch' 'hemail hsearch';
        gap: 0;
    }

    .body-header__logo {
        font-size: calc(26px + (32 - 26) * ((100vw - 480px) / (992 - 480)));
        width: 100%;
    }

    .body-header__logo span {
        white-space: nowrap;
    }

    .body-header__logo img {
        height: calc(28px + (43 - 28) * ((100vw - 480px) / (992 - 480)));
    }

    .actions-header__phone,
    .actions-header__email {
        display: none;
    }

    .actions-header__phone a {
        grid-area: hphone;
        justify-content: end;
    }

    .actions-header__email a {
        grid-area: hemail;
        justify-content: end;
    }

    .body-header__search {
        grid-area: hsearch;
        margin-left: 20px;
    }
}

@media (max-width: 768px) {
    /* .top-header__container {
         display: grid;
         grid-template-columns: 1fr 50px;
         grid-template-rows: 50px 50px;
         gap: 0;
         height: 100%;
         top: 0;
         padding-top: 10px;
         padding-bottom: 10px;
     }*/
    /*.body-header {
        height: calc(100% - 100px) !important;
        top: 100px !important;
    }*/
    .body-header__logo {
        justify-content: flex-start;
    }

    .actions-header {
        /*width: 0;*/
        position: relative;
        grid-template-areas: 'hsearch';
        grid-area: 2 / 1 / auto / span 3;
        display: flex;
    }

    .search-header {
        border-color: var(--main-color);
        position: relative;
        width: 100%;
    }

    .search-header__input {
        width: 100%;
        padding: 0 50px 0 20px;
    }

    .search-header.active {

    }

    .actions-header__phone a,
    .actions-header__email a {
        justify-content: flex-start;
    }

    .body-header__search {
        position: relative;
        right: unset;
        left: unset;
        top: unset;
        width: 100%;
        height: 41px;
        grid-area: none;
        margin-left: 0;
    }

    .body-header__search.active {
        width: 100%;
    }

    .actions-header__email,
    .actions-header__phone {
        max-width: calc(100% - 60px);
    }
}

@media (max-width: 480px) {
    .body-header__logo span {
        font-size: calc(20px + (26 - 20) * ((100vw - 320px) / (480 - 320)));
        font-size: calc(16px + (26 - 16) * ((100vw - 320px) / (480 - 320)));
    }

    .body-header__logo img {
        margin-right: 5px;
        height: calc(22px + (28 - 22) * ((100vw - 320px) / (480 - 320)));
        height: calc(18px + (28 - 18) * ((100vw - 320px) / (480 - 320)));
    }

    .top-header__container {
        gap: calc(0rem + (1.25 - 0) * ((100vw - 320px) / (480 - 320)));
        /* padding-left: 10px;
         padding-right: 10px;*/
    }
}


/* /header */


/*footer*/
.footer ._link-hover::before {
    background-color: #fff;
}

@media (min-width: 1153px) {
    .footer {
        margin-top: 95px;
    }
}

.footer__container {

}


.footer__main {
    /*background-color: var(--main-color);
    background: linear-gradient(0deg, #910004 0%, #c70006 100%);*/
    background-color: var(--bg-color);
    padding-top: 60px;
    padding-bottom: 46px;
}

@media (max-width: 992px) {
    .footer__main {
        padding: 30px 0;
    }
}

.footer-main__container {
    display: flex;
    flex-direction: column;
}

.footer-main__container a {

}

.footer__top {
    display: flex;
    justify-content: space-between;
    margin-bottom: 36px;
    line-height: 1.4;
    font-weight: 600;
}

@media (max-width: 1280px) {
    .footer__top {
        display: grid;
        grid-template-areas: 'phone email' 'address callback';
        grid-gap: 20px;
    }
}

@media (max-width: 768px) {
    .footer__top {
        text-align: center;
        grid-template-columns: 1fr;
        grid-template-areas: 'phone' 'email' 'address' 'callback';
        margin-bottom: 20px;
    }
}


.footer__address {
    max-width: 400px;
    grid-area: address;
}

@media (max-width: 768px) {
    .footer__address {
        margin: 0 auto;
        max-width: unset;
    }
}

.footer__phone {
    grid-area: phone;
}

.footer__email {
    grid-area: email;
}

.footer__callback {
    grid-area: callback;
    text-align: end;
}

@media (max-width: 768px) {
    .footer__callback {
        text-align: center;
    }
}

.footer__callback .btn-callback:hover {
    background-color: #ff454be0;
    background-color: var(--main-color);
    color: #fff;
}

.footer__center {
    display: grid;
    grid-template-areas: 'ftext flogo flogo fsocial' 'fcopy flogo flogo flinks';
}

@media (max-width: 768px) {
    .footer__center {
        grid-template-columns: 1fr;
        grid-template-areas: 'fsocial fsocial' 'ftext ftext' 'fcopy flinks';
    }
}

@media (max-width: 480px) {
    .footer__center {
        grid-template-areas: 'fsocial fsocial' 'ftext ftext' 'flinks flinks' 'fcopy fcopy';
    }
}


.footer__social {
    grid-area: fsocial;
}

.footer__copy {
    grid-area: fcopy;
    margin-top: 26px;
    display: flex;
    align-items: flex-end;
}

.footer__logo {
    grid-area: flogo;
    display: flex;
    flex-direction: column;
    text-align: center;
    justify-content: center;
    padding: 0 20px;
    color: var(--main-color);
}

@media (max-width: 1152px) {
    .footer__logo {
        display: none;
    }
}

.footer__logo img {
    height: 80px;
    /*filter: brightness(100);*/
}

.footer__logo span {
    font-size: 2.4rem;
    font-weight: 800;
    font-family: system-ui;
}

.footer__bottom {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.footer__links {
    grid-area: flinks;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: end;
}

@media (max-width: 1024px) {
    .footer__links a, .footer__copy {
        font-size: calc(12px + (16 - 12) * ((100vw - 320px) / (1920 - 320)));
    }
}

@media (max-width: 480px) {
    .footer__links,
    .footer__copy {
        align-items: center;
        text-align: center;
        justify-content: center;
    }
}


.footer__contacts {

}

.footer__text {
    grid-area: ftext;
    font-size: 13px;
    max-width: 410px;
}

@media (max-width: 768px) {
    .footer__text {
        margin: 20px 0;
        max-width: 100%;
    }
}

.footer__text p:not(:last-child) {
    margin-bottom: 16px;
}

.footer__cookie {

}

.footer-bottom__left {
    font-size: 15px;
    gap: 13px;
    display: flex;
    flex-direction: column;
}

@media (min-width: 481px) {
    .footer__links a:not(:first-child) {
        margin-left: 30px;
        display: inline-block;
    }
}

.footer-bottom__right {
    display: flex;
    align-items: end;
}

/*/footer*/

[class*=__header] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/*[class*=__header-link-more] {
    margin-left: 20px;
}*/

[class*=__btn-more] {
    margin-top: 20px;
}

/* about */
.mp-about {
    padding: 60px 0;
    background-color: #fff;
}

.mp-about__container {
    display: flex;
}

@media (max-width: 1152px) {
    .mp-about__container {
        flex-direction: column;
    }
}

.mp-about__description {
    flex: 0 0 45%;
}

.mp-about__title {
    font-size: 36px;
    margin-bottom: 30px;
}

.mp-about__text {

}

.mp-about__btn {
    margin-top: 24px;
}

@media (max-width: 480px) {
    .mp-about__text {
        font-size: 14px;
    }
}

.mp-about__text p {
    margin-bottom: 10px;
}

.mp-about__btn-more {
    margin: 20px 0;
}

@media (min-width: 1153px) {
    .mp-about__photos {
        flex: 0 0 55%;
        display: grid;
        grid-gap: 20px;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr;
        padding-left: calc(40px + (70 - 40) * ((100vw - 1152px) / (1920 - 1152)));
    }
}

@media (max-width: 1152px) {
    .mp-about__photos {
        display: flex;
        flex: 0 0 100%;
        overflow: hidden;
        gap: 10px;
    }
}

.mp-about__photo {
    display: flex;
    max-height: 300px;
}
@media (max-width: 992px) {
    .mp-about__photo {
        margin-top: 24px;
    }
}
@media (min-width: 1153px) {
    .mp-about__photo:nth-child(1) {
        justify-content: flex-end;
        align-items: flex-end;
    }

    .mp-about__photo:nth-child(2) {
        align-items: flex-end;
    }

    .mp-about__photo:nth-child(3) {
        justify-content: flex-end;
    }

    .mp-about__photo:nth-child(4) {
    }
}

.mp-about__photo img {
    object-fit: contain;
    max-height: 300px;
    height: auto;
    border-radius: 5rem;
    corner-shape: squircle;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 6px 10px;
}

@media (max-width: 480px) {
    .mp-about__photo {
        display: none;
    }
}


.mp-about__photo:nth-child(1) img,
.mp-about__photo:nth-child(2) img {
    object-position: bottom;
}

.mp-about__photo:nth-child(3) img,
.mp-about__photo:nth-child(4) img {
    object-position: top;
}

/* /about */

/* custom hint ymap */
.ymap-hint {
    border-radius: var(--border-radius-md);
    max-width: 270px;
}

.ymap-hint__image {
    display: flex;
}

.ymap-hint__image img {
    max-width: 250px;
    border-radius: var(--border-radius-md);
    margin: 0 auto;
}

.hint-body {
    display: flex;
    flex-direction: column;
    font-size: 12px;
    padding: 0 10px;
}

.hint-body__title {
    font-weight: 600;
    font-size: 14px;
    margin: 8px 0 4px;
}

.hint-body__address {
    margin-bottom: 4px;
}

.hint-body__phone {
    margin-bottom: 4px;
}

.hint-body__email {
}

/* /custom hint ymap */

/* COOKIE */
.footer__cookie {
    display: none;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    bottom: 20px;
    left: 20px;
    padding: 20px;
    background: #fff;
    box-shadow: 2px 3px 10px rgb(0 0 0 / 40%);
    z-index: -1;
    opacity: 0;
    transition: all 0.3s ease 0s;
    width: 400px;
    flex-direction: column;
    color: #000;
    gap: 20px;
    border-radius: 16px;
}

@media (max-width: 480px) {
    .footer__cookie {
        width: calc(100% - 40px);
    }
}

.footer__cookie.show {
    z-index: 10;
    opacity: 1;
    display: flex;
}

.cookie__text {
    margin: 0;
    font-size: 0.9rem;
    text-align: left;
}

.cookie__accept {
    width: 100%;
    font-size: 16px;
    border: 1px solid transparent;
    color: #fff;
    background-color: var(--main-color);
    transition: all 0.3s ease 0s;
}

/* /COOKIE */

/* 404 */
.page-404 {
    position: relative;
    z-index: 5;
}

.page-404__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: #fff;
    overflow: hidden;
    z-index: 4;
}

.page-404__bg::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: #ffffff87;
}

.page-404__bg img {
    object-fit: cover;
    width: 100vw;
    height: 100vh;
}

.page-404__container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100vh;
}

.page-404__body {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 500px;
}

.page-404__title {
    font-size: calc(8rem + (13 - 8) * ((100vw - 320px) / (768 - 320)));
    letter-spacing: calc(0.5rem + (2 - 0.5) * ((100vw - 320px) / (768 - 320)));
    color: var(--main-color);
    text-shadow: 0px 11px 10px #757575cf;
}

.page-404__text {
    font-weight: 600;
    font-size: 2rem;
    text-shadow: 10px 10px 25px #fff,
    -10px 10px 25px #fff,
    -10px -10px 25px #fff,
    10px -10px 25px #fff;
}

.page-404__button {
    margin-top: 40px;
}

/* /404 */


/* для 3 разных шаблонов компонента */

.main-item__preview-info {
    width: 30px;
    height: 30px;
    position: absolute;
    right: 2rem;
    top: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    cursor: pointer;
    z-index: 3;
}

.main-item__preview-icon {
    font-size: 1.5rem;
    color: var(--main-color);
    transition: var(--transition);
}

.main-item__preview-info:hover .main-item__preview-icon {
    color: var(--main-color);
}

.main-item__preview-hint {
    position: absolute;
    right: 5px;
    top: 20px;
    width: 0;
    height: 0;
    overflow: hidden;
    transition: var(--transition);
    font-size: 12px;
    opacity: 0;
    background: rgba(255, 255, 255, 75%);
    backdrop-filter: blur(5px);
    border-radius: var(--border-radius-sm);
    color: var(--black);
    border-radius: 5rem;
    corner-shape: squircle;
}

.main-item__preview-info:hover .main-item__preview-hint {
    opacity: 1;
    width: 300px;
    height: auto;
    padding: 5px 15px;
}

/* /для 3 разных шаблонов компонента */

.mp-reviews {
    background-color: var(--white);
}
/* End */


/* Start:/local/templates/red-gray/css/buttons.css?17787598971840*/
button, .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 13px 40px;
    transition: var(--transition);
    border: 1px solid transparent;
    font-weight: 600;
    font-size: 1rem;
    cursor: pointer;
    border-radius: 5rem;
    corner-shape: squircle;
}

button:disabled,
.btn:disabled {
    pointer-events: none !important;
    background-color: #dbdbdb !important;
}

.btn.btn-primary {
    color: #fff;
    background-color: var(--main-color);
    border-width: 2px;
}

.btn.btn-primary:hover {
    background-color: var(--dark-red);
}

.btn-shadow {
    box-shadow: 0 11px 14px -10px #7b0004;
}

.btn.btn-shadow:hover {
    box-shadow: rgb(0 0 0 / 60%) 0px 20px 40px -12px;
}

.btn-outline {
    background-color: transparent;
    color: var(--main-color);
    border: 2px solid var(--main-color);
}

.btn-outline:hover {
    background-color: var(--main-color);
    color: var(--white);
}

.btn.btn-circle {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: unset;
    border-radius: 50%;
    aspect-ratio: 1;
}

.btn.btn-squircle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 5rem;
    corner-shape: squircle;
}

.slider-arrow,
button.slider-arrow {
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    padding: 0;
    cursor: pointer;
    transition: var(--transition);
    color: var(--main-color);
    background-color: #dbdbdb;
    aspect-ratio: 1;
}

.slider-arrow:hover,
button.slider-arrow:hover {
    background-color: var(--swiper-theme-color);
    color: #fff;
}

.slider-arrow:disabled,
button.slider-arrow:disabled {
    background-color: #f0f0f0 !important;
    color: #dbdbdb;
}

/* End */


/* Start:/local/templates/red-gray/fonts/icons/style.css?17607096904358*/
@font-face {
  font-family: 'icons';
  src:  url('/local/templates/red-gray/fonts/icons/icons.eot?b4kot6');
  src:  url('/local/templates/red-gray/fonts/icons/icons.eot?b4kot6#iefix') format('embedded-opentype'),
    url('/local/templates/red-gray/fonts/icons/icons.ttf?b4kot6') format('truetype'),
    url('/local/templates/red-gray/fonts/icons/icons.woff?b4kot6') format('woff'),
    url('/local/templates/red-gray/fonts/icons/icons.svg?b4kot6#icons') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="_icon-"], [class*=" _icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icons' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

._icon-add:before {
  content: "\e900";
}
._icon-aim:before {
  content: "\e901";
}
._icon-alarm:before {
  content: "\e902";
}
._icon-alert:before {
  content: "\e903";
}
._icon-arrow-down:before {
  content: "\e904";
}
._icon-arrow-left:before {
  content: "\e905";
}
._icon-arrow-next:before {
  content: "\e906";
}
._icon-arrow-prev:before {
  content: "\e907";
}
._icon-arrow-right:before {
  content: "\e908";
}
._icon-arrow-up:before {
  content: "\e909";
}
._icon-attention:before {
  content: "\e90a";
}
._icon-calendar:before {
  content: "\e90b";
}
._icon-calendar-ok:before {
  content: "\e90c";
}
._icon-calendar-phone:before {
  content: "\e90d";
}
._icon-camera:before {
  content: "\e90e";
}
._icon-cardio:before {
  content: "\e90f";
}
._icon-checkbox-check:before {
  content: "\e910";
}
._icon-checkbox-marker:before {
  content: "\e911";
}
._icon-checkbox-uncheck:before {
  content: "\e912";
}
._icon-check-polygon:before {
  content: "\e913";
}
._icon-check-round:before {
  content: "\e914";
}
._icon-clip:before {
  content: "\e915";
}
._icon-clip-add:before {
  content: "\e916";
}
._icon-clock:before {
  content: "\e917";
}
._icon-close:before {
  content: "\e918";
}
._icon-cross-round:before {
  content: "\e919";
}
._icon-doctor:before {
  content: "\e91a";
}
._icon-download:before {
  content: "\e91b";
}
._icon-gift:before {
  content: "\e91c";
}
._icon-glasses:before {
  content: "\e91d";
}
._icon-glasses-round:before {
  content: "\e91e";
}
._icon-heart:before {
  content: "\e91f";
}
._icon-home:before {
  content: "\e920";
}
._icon-image:before {
  content: "\e921";
}
._icon-image-2:before {
  content: "\e922";
}
._icon-info:before {
  content: "\e923";
}
._icon-insta:before {
  content: "\e924";
}
._icon-like:before {
  content: "\e925";
}
._icon-link:before {
  content: "\e926";
}
._icon-magnifier:before {
  content: "\e927";
}
._icon-mail:before {
  content: "\e928";
}
._icon-mail-dog:before {
  content: "\e929";
}
._icon-man-walk:before {
  content: "\e92a";
}
._icon-map-balloon:before {
  content: "\e92b";
}
._icon-min5:before {
  content: "\e92c";
}
._icon-min10:before {
  content: "\e92d";
}
._icon-min15:before {
  content: "\e92e";
}
._icon-min30:before {
  content: "\e92f";
}
._icon-minus-octagon:before {
  content: "\e930";
}
._icon-minus-round:before {
  content: "\e931";
}
._icon-nophoto:before {
  content: "\e932";
}
._icon-paperclip:before {
  content: "\e933";
}
._icon-phone:before {
  content: "\e934";
}
._icon-phone-call:before {
  content: "\e935";
}
._icon-phone-incoming:before {
  content: "\e936";
}
._icon-phone-outcoming:before {
  content: "\e937";
}
._icon-photo:before {
  content: "\e938";
}
._icon-pin:before {
  content: "\e939";
}
._icon-printer:before {
  content: "\e93a";
}
._icon-procedure:before {
  content: "\e93b";
}
._icon-question:before {
  content: "\e93c";
}
._icon-ruble:before {
  content: "\e93d";
}
._icon-rubles:before {
  content: "\e93e";
}
._icon-schedule:before {
  content: "\e93f";
}
._icon-send:before {
  content: "\e940";
}
._icon-shield:before {
  content: "\e941";
}
._icon-smile-angry:before {
  content: "\e942";
}
._icon-smile-bad:before {
  content: "\e943";
}
._icon-smile-great:before {
  content: "\e944";
}
._icon-smile-normal:before {
  content: "\e945";
}
._icon-smile-wonder:before {
  content: "\e946";
}
._icon-star:before {
  content: "\e947";
}
._icon-tablet:before {
  content: "\e948";
}
._icon-telegram:before {
  content: "\e949";
}
._icon-tooth:before {
  content: "\e94a";
}
._icon-upload:before {
  content: "\e94b";
}
._icon-vk:before {
  content: "\e94c";
}

/* End */


/* Start:/local/templates/red-gray/fonts/Montserrat/style.css?17607096886711*/
/* This stylesheet generated by Transfonter (https://transfonter.org) on October 3, 2017 10:05 PM */

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Light.eot');
	src: local('Montserrat Light'), local('Montserrat-Light'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Light.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Light.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Light.ttf') format('truetype');
	font-weight: 300;
	font-style: normal;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-MediumItalic.eot');
	src: local('Montserrat Medium Italic'), local('Montserrat-MediumItalic'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-MediumItalic.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-MediumItalic.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-MediumItalic.ttf') format('truetype');
	font-weight: 500;
	font-style: italic;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Thin.eot');
	src: local('Montserrat Thin'), local('Montserrat-Thin'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Thin.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Thin.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Thin.ttf') format('truetype');
	font-weight: 100;
	font-style: normal;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraLightItalic.eot');
	src: local('Montserrat ExtraLight Italic'), local('Montserrat-ExtraLightItalic'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraLightItalic.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraLightItalic.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraLightItalic.ttf') format('truetype');
	font-weight: 200;
	font-style: italic;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-BoldItalic.eot');
	src: local('Montserrat Bold Italic'), local('Montserrat-BoldItalic'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-BoldItalic.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-BoldItalic.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-BoldItalic.ttf') format('truetype');
	font-weight: bold;
	font-style: italic;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-SemiBold.eot');
	src: local('Montserrat SemiBold'), local('Montserrat-SemiBold'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-SemiBold.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-SemiBold.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-SemiBold.ttf') format('truetype');
	font-weight: 600;
	font-style: normal;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraLight.eot');
	src: local('Montserrat ExtraLight'), local('Montserrat-ExtraLight'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraLight.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraLight.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraLight.ttf') format('truetype');
	font-weight: 200;
	font-style: normal;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraBoldItalic.eot');
	src: local('Montserrat ExtraBold Italic'), local('Montserrat-ExtraBoldItalic'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraBoldItalic.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraBoldItalic.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraBoldItalic.ttf') format('truetype');
	font-weight: 800;
	font-style: italic;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Italic.eot');
	src: local('Montserrat Italic'), local('Montserrat-Italic'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Italic.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Italic.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Italic.ttf') format('truetype');
	font-weight: normal;
	font-style: italic;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Bold.eot');
	src: local('Montserrat Bold'), local('Montserrat-Bold'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Bold.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Bold.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Bold.ttf') format('truetype');
	font-weight: bold;
	font-style: normal;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-LightItalic.eot');
	src: local('Montserrat Light Italic'), local('Montserrat-LightItalic'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-LightItalic.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-LightItalic.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-LightItalic.ttf') format('truetype');
	font-weight: 300;
	font-style: italic;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-BlackItalic.eot');
	src: local('Montserrat Black Italic'), local('Montserrat-BlackItalic'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-BlackItalic.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-BlackItalic.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-BlackItalic.ttf') format('truetype');
	font-weight: 900;
	font-style: italic;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-SemiBoldItalic.eot');
	src: local('Montserrat SemiBold Italic'), local('Montserrat-SemiBoldItalic'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-SemiBoldItalic.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-SemiBoldItalic.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-SemiBoldItalic.ttf') format('truetype');
	font-weight: 600;
	font-style: italic;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Regular.eot');
	src: local('Montserrat Regular'), local('Montserrat-Regular'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Regular.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Regular.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Regular.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Medium.eot');
	src: local('Montserrat Medium'), local('Montserrat-Medium'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Medium.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Medium.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Medium.ttf') format('truetype');
	font-weight: 500;
	font-style: normal;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraBold.eot');
	src: local('Montserrat ExtraBold'), local('Montserrat-ExtraBold'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraBold.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraBold.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ExtraBold.ttf') format('truetype');
	font-weight: 800;
	font-style: normal;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Black.eot');
	src: local('Montserrat Black'), local('Montserrat-Black'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Black.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Black.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-Black.ttf') format('truetype');
	font-weight: 900;
	font-style: normal;
}

@font-face {
	font-family: 'Montserrat';
	src: url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ThinItalic.eot');
	src: local('Montserrat Thin Italic'), local('Montserrat-ThinItalic'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ThinItalic.eot?#iefix') format('embedded-opentype'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ThinItalic.woff') format('woff'),
		url('/local/templates/red-gray/fonts/Montserrat/Montserrat-ThinItalic.ttf') format('truetype');
	font-weight: 100;
	font-style: italic;
}

/* End */


/* Start:/local/templates/red-gray/fonts/StarC/stylesheet.css?1772702791290*/
@font-face {
    font-family: 'StarC';
    src: url('/local/templates/red-gray/fonts/StarC/StarC.eot');
    src: url('/local/templates/red-gray/fonts/StarC/StarC.eot?#iefix') format('embedded-opentype'),
        url('/local/templates/red-gray/fonts/StarC/StarC.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/StarC/StarC.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


/* End */


/* Start:/local/templates/red-gray/fonts/Nunito/stylesheet.css?17727078173572*/
@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-BlackItalic.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-BlackItalic.woff') format('woff');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-Bold.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-BoldItalic.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-ExtraBold.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-ExtraBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-ExtraBoldItalic.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-ExtraBoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-ExtraLight.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-ExtraLight.woff') format('woff');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-ExtraLightItalic.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-ExtraLightItalic.woff') format('woff');
    font-weight: 200;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-Italic.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-Italic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-Light.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-LightItalic.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-LightItalic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-Medium.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-MediumItalic.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-MediumItalic.woff') format('woff');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-Regular.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-SemiBold.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-SemiBoldItalic.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-SemiBoldItalic.woff') format('woff');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    src: url('/local/templates/red-gray/fonts/Nunito/Nunito-Black.woff2') format('woff2'),
        url('/local/templates/red-gray/fonts/Nunito/Nunito-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}


/* End */


/* Start:/local/templates/red-gray/css/visually-impaired.css?17607096871652*/
[class^="special-font"] [class^="_icon-"],
[class*="special-font"] [class*=" _icon-"],
[class^="special-font"] i[class^="_icon-"],
[class*="special-font"] i[class^="_icon-"] {
	font-family: 'icons' !important;
}

html.special .body-header {
	border-bottom: 1px solid #000;
}

html.special.special-font-size-1 #special h2,
html.special.special-font-size-1 #special title,
html.special[class^="special-font-size"] #special h2,
html.special[class^="special-font-size"] #special .title,
html.special[class*="special-font-size"] #special h2,
html.special[class*="special-font-size"] #special .title,
html.special[class^="special-font-size"] #special ._section-header > h2 {
	font-size: calc(28px + (40 - 28) * ((100vw - 320px) / (1920 - 320))) !important;
}

html.special .mp-slider__body .mp-slider__bg-back {
	display: none;
}

html.special .mp-slider__body .mp-slider__title,
html.special .mp-slider__body .mp-slider__content {
	background: transparent !important;
}

html.special .swiper-doctors__main .swiper-slide {
	border: 1px solid #000;
	overflow: hidden;
}

html.special .swiper-doctors__main .main-item__image img {
	height: 99%;
}

html.special .slider-doctors__aside .thumbs-item__title {
	background: transparent !important;
}


html.special-color-1 footer.footer-main,
[class^="special-color"] footer.footer-main {
	background-color: #eee !important;
	background: #eee !important;
}

html.special .bx-yandex-view-map {
	display: none;
}

html.special .footer__menu {
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
}

html.special .footer__logo img {
	filter: none;
}
/* End */


/* Start:/local/templates/red-gray/components/bitrix/search.title/widescreen/style.css?17640867093728*/
.bx-searchtitle {
	margin: 10px 0 0;
}

@media (max-width: 768px) {
	.bx-searchtitle {
		margin: 0;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
	}
}

.bx-input-group {
	height: 100%;
	position: relative;
	display: flex;
	align-items: center;
	z-index: 2;
}

.title-search-result {
	display: none;
	overflow: hidden;
	z-index: 999;
	min-width: calc(100% - 60px);
	background-color: #fff;
	left: 0 !important;
	border-radius: 8px;
	margin: 46px 20px 0;
	box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
	border-top: 1px solid var(--bg-color);
}

.title-search-fader {
	display: none;
	background-image: url('/local/templates/red-gray/components/bitrix/search.title/widescreen/images/fader.png');
	background-position: right top;
	background-repeat: repeat-y;
	position: absolute;
}

p.title-search-preview {
	font-size: 12px;
}

div.title-search-result td.title-search-price span {
	font-size: 26px;
}

/*========================*/
.bx_searche {
	padding: 10px;
}

.bx_searche .bx_item_block {
	margin-top: 10px;
	position: relative
}

.bx_searche .bx_item_element {
	width: 100%;
}

.bx_searche .bx_item_element hr {
	margin: 10px 0;
	border: none;
	border-bottom: 1px solid var(--bg-color);
	display: none;
}

.bx_searche .bx_item_element a {
	display: block;
	width: 100%;
	color: var(--main-color);
	font-size: 14px;
	padding: 10px;
	border-radius: 8px;
	text-decoration: none;
}

.bx_searche .bx_item_element a b {
	color: #222;
	font-weight: 600;
}

.bx_searche .bx_item_element a:hover,
.bx_searche .bx_item_element a:hover b {
	background-color: var(--bg-color);
}

.bx_searche .bx_price {
	font-weight: bold;
	font-size: 14px;
}

.bx_searche .bx_price .old {
	font-weight: normal;
	text-decoration: line-through;
	color: #636363
}

.bx_item_block.all_result {
	min-height: 0
}

.bx_item_block.others_result {
	min-height: 0;
	display: flex;
	align-items: center;
	width: 100%;
}

.bx_item_block.all_result .all_result_title {
	display: block;
}

.bx_item_block.all_result .all_result_title a {
	color: #222;
	text-align: center;
	font-weight: 600;
	background-color: var(--bg-color);
	border: 1px solid var(--bg-color);
}

.bx_item_block.all_result .all_result_title a:hover {
	background-color: #fff;
}

.bx_item_block.all_result a {
	margin-top: 0;
}

/*========================*/

.search-toggle {
	margin: 0;
	/*width: 40px;*/
	padding: 0 15px;
	height: 100%;
	position: relative;
	z-index: 1;
	background-color: transparent;

}

.search-toggle i {
	color: var(--main-color);
}

.body-header__search {
	position: relative;
	min-width: 45px;
	display: flex;
	align-items: center;
}

.search-header {
	position: fixed;
	left: 0;
	top: 0;
	height: 120px;
	width: 100vw;
	background-color: #fff;
	border: 1px solid transparent;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 20;
	display: none;
}

.search-header.active {
	width: 500px;
	border-color: var(--main-color);
}

.search-header__button {
	height: 48px;
	font-size: 16px;
	font-weight: 400;
	color: #999;
}

.search-header__input {
	height: 100%;
	width: 100%;
	color: #333;
	background-color: transparent;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	padding: 0 40px;
	font-size: 20px;
}

.search-header__input.active {
	width: 100%;
	padding: 0 50px 0 20px;
}

.search-header__input::placeholder {
	color: rgba(4, 4, 4, 0.5);
}

.search-header__close {
	background-color: #fff;
	padding: 0;
	height: 48px;
	width: 48px;
	border-radius: 8px;
	margin-left: 20px;
	color: #999;
}

.search-header__close:hover {
	color: #222;
}

@media (max-width: 480px) {
	.search-header__button {
		font-size: 14px;
		padding: 0 20px;
	}

	.search-header__input {
		padding: 0 20px 0 0;
	}
}
/* End */


/* Start:/local/templates/red-gray/components/bitrix/menu/main-menu/style.css?17787637919595*/
.menu {
    width: 100%;
    height: 100%;
    min-height: 59px;
    position: relative;
    display: flex;
}

.menu__list {
    position: relative;
    display: flex;
    justify-content: space-between;
    padding: 0;
    margin: 0;
    min-height: 59px;
    gap: var(--gap);
    width: 100%;
}

.menu__item {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: var(--transition);
    height: 100%;
    list-style: none;
    left: 0;
    padding: 0;
}

.menu__item:hover .menu__link {
    color: var(--main-color);
}

ul.menu__list li.menu-item::before {
    content: none !important;
}

.menu__link {
    height: 100%;
    display: flex;
    align-items: center;
    text-decoration: none;
    position: relative;
    font-weight: 600;
    color: var(--black);
}

@media (max-width: 1024px) {
    .menu__link {
        padding: 0 10px;
    }
}

/**
todo проверить стили
 */
/*.menu ._link-hover:hover::before {
    content: none;
}

@media (min-width: 993px) {
    .menu ._link-hover:hover::before {
        background-color: #fff;
    }
}*/

.menu__item._selected .menu__link {

}

.menu__list svg {
    position: relative;
    width: 15px;
    height: 15px;
    margin: 1px 10px 0 0;
}


/* catalog menu */
.menu__item-catalog {
    position: relative;
}

.header__menu {
    position: relative;
}

.btn-btn-menu-catalog {
    background-color: var(--main-color);
    color: #fff;
}

.btn-btn-menu-catalog.active {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.btn__icon {

}

.menu-icon {
    color: currentColor;
    text-decoration: none;
    outline: 0 !important;
    background-color: transparent;
    -webkit-text-decoration-skip: objects;
    -webkit-tap-highlight-color: transparent;
    height: 10px;
    transition-property: opacity, color;
    position: relative;
    z-index: 2;
    transform: translateZ(0);
}

.menu-icon, .menu-icon i {
    width: 18px;
    transition-duration: .2s;
    transition-timing-function: cubic-bezier(.25, 1, .5, 1);
    display: block;
}

.menu-icon i:nth-child(1) {
    transform: translateY(calc(-.5 * 10px));
}

.menu-icon i:nth-child(3) {
    transform: translateY(calc(.5 * 10px));
}

.menu-icon i {
    height: 2px;
    transition-property: transform;
    position: absolute;
    top: calc(50% - 2px / 2);
    left: 0;
    background: var(--main-color);
    background: #fff;
    will-change: transform;
}

.menu-icon, .menu-icon i {
    width: 18px;
    transition-duration: .2s;
    transition-timing-function: cubic-bezier(.25, 1, .5, 1);
    display: block;
}

.btn.btn-menu-catalog {
    background: transparent;
    height: 100%;
    cursor: pointer;
    color: var(--main-color);
    padding: 0;
}

.btn-menu-catalog.active .menu-icon i:nth-child(1) {
    transform: rotate(45deg);
}

.btn-menu-catalog.active .menu-icon i:nth-child(2) {
    transform: scale(0);
}

.btn-menu-catalog.active .menu-icon i:nth-child(3) {
    transform: rotate(-45deg);
}

.menu-catalog__wrapper {
    position: absolute;
    z-index: 10;
    top: calc(100% + 1px);
    left: 0;
}

.menu-catalog {
    position: relative;
    flex-direction: column;
    padding: 15px 0 15px 15px;
    border-radius: 0 0 15px 15px;
    width: 300px;
    /*height: calc(48px + 27px * 2);*/
    box-shadow: 0 8px 40px rgba(96, 147, 158, .5);
    box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
    background-color: #fff;
    /*backdrop-filter: blur(10px);*/
    display: none;

}

.menu-catalog.active {
    border-radius: 0 0 0 20px;
}

.menu-catalog__item,
.submenu-catalog__item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    border: 1px solid transparent;
    text-decoration: none;
    outline: 0;
    background-color: transparent;
    -webkit-tap-highlight-color: transparent;
    transition-property: opacity, border-radius, background-color;
    transition-duration: .2s;
    transition-timing-function: cubic-bezier(.25, 1, .5, 1);
    border-radius: 8px;
    padding: 12px 20px;
    font-weight: 600;
    cursor: pointer;
}

.menu-catalog__item:hover {
    background-color: var(--main-color);
    color: #fff;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.menu-catalog__item:hover .menu-catalog__link,
.submenu-catalog__item:hover .submenu-catalog__link {
    color: #fff;
}

.menu-catalog__item.selected > .menu-catalog__submenu {
    background-color: #ddd;
}

.menu-catalog__item:hover > .submenu-catalog {
    width: 100%;
    padding: 25px 25px 25px 0;
}

.menu-catalog__link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    white-space: nowrap;
    text-decoration: none;
}

.submenu-catalog {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 0;
    left: 100%;
    background: darkred;
    max-width: 378px;
    height: 100%;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    width: 0;
    overflow: hidden;
    padding: 25px 0;
    transition: all .2s cubic-bezier(.25, 1, .5, 1);
    z-index: 2;
}

.submenu-catalog__item {
    border-radius: 0 8px 8px 0;
}

.submenu-catalog__item:hover {
    background-color: var(--main-color);
}

.submenu-catalog__link {
    white-space: nowrap;
    text-decoration: none;
    color: #fff;
}

.menu-burger {
    display: flex;
    flex-direction: column;
    gap: 4px;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    min-width: 42px;
    height: 42px;
    padding: 0;
    z-index: 10;
}

@media (min-width: 993px) {
    .menu-burger {
        display: none;
    }
}

.menu-burger:hover {
    background: #ffffff57;
}

.menu-burger.active {
    background: #ffffff57;
}

.menu-burger span {
    width: 22px;
    height: 2px;
    transition: var(--transition);
    background-color: var(--main-color);
}

.menu-burger.active span:nth-child(2) {
    opacity: 0;
}

.menu-burger.active > span:first-child {
    transform: rotate(45deg) translate(4px, 4px);
}

.menu-burger.active > span:last-child {
    transform: rotate(-45deg) translate(4px, -5px);
}

.header__visually-impaired {
    color: var(--white);
}

@media (min-width: 993px) {
    .body-header__mobile-menu {
        display: none;
    }
}

@media (max-width: 992px) {
    .header {
        position: fixed;
        z-index: 5;
        background: #fff;
        width: 100%;
    }

    .body-header {
        width: 100%;
        position: fixed;
        height: calc(100% - 56px);
        z-index: 5;
        top: 56px;
        background-color: #fff;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        left: -100%;
        transition: var(--transition);
        padding-top: 0;
        overflow-y: auto;
    }

    .body-header.active {
        left: 0;
        box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px, rgba(0, 0, 0, 0.22) 0px 15px 12px;
    }

    .body-header__container {
        flex-direction: column;
        align-items: flex-start;
        padding: 0;
        height: 100%;
    }

    .menu {
        height: auto;
    }

    .menu__list {
        justify-content: flex-start;
        min-height: unset;
        row-gap: 0;
        overflow-y: auto;
    }

    .menu__item {
        display: flex;
        width: 100%;
        justify-content: flex-start;
        height: 50px;
        border-left: 3px solid transparent;
        border-bottom: 0;
        transition: var(--transition);
    }

    .menu__item:hover {
        background: var(--bg-color);
        border-color: var(--main-color);
    }

    .menu__link {
        width: 100%;
        padding: 0 20px;
        justify-content: center;
        font-size: 20px;
    }

    .menu__link:hover {
        color: var(--main-color);
    }

    .header__visually-impaired {
        width: 100%;
        justify-content: flex-start;
        height: 50px;
        background-color: var(--main-color);
        padding: 0 20px;
        cursor: pointer;
    }

    .header__visually-impaired span {
        font-weight: 700;
        white-space: nowrap;
    }

    .header__visually-impaired img {
        background-color: transparent;
    }

    .body-header__mobile-menu {
        margin-top: auto;
    }

    .menu__item-contact {
        display: flex;
        width: 100%;
        justify-content: flex-start;
        height: 50px;
        transition: var(--transition);
        padding: 0 20px;
        align-items: center;
        font-weight: 600;
        border-top: 1px solid var(--bg-color);
        border-bottom: 3px solid transparent;
    }

    .menu__item-contact:hover {
        border-bottom-color: var(--main-color);
    }
}

@media (max-width: 360px) {
    .body-header {
        max-width: 100%;
    }
}

@media (min-width: 993px) and (max-width: 1366px) {
    .body-header__container {
        padding: 0;
    }

    .menu__list {
        justify-content: flex-start;
    }

    .menu__item {
        height: unset;
    }

    .menu__link {
        padding: 7px 15px;
        /* height: unset;*/
    }
}
/* End */


/* Start:/local/templates/red-gray/components/bitrix/breadcrumb/custom/style.css?1760709686658*/
.breadcrumb {
    background-color: var(--bg-color);
    padding: 10px 0;
    font-size: 13px;
    margin-bottom: 20px;
}

.breadcrumb__body {
    display: flex;
}

.breadcrumb i {
    color: #b5bdc2;
    line-height: 13px;
    font-size: 12px;
    vertical-align: middle;
    margin: 0 8px;
}

.breadcrumb-item {
    white-space: nowrap;
    margin-right: 10px;
    color: #555;
}

.breadcrumb-item span {
}

.breadcrumb-item a {
    border-bottom: none;
}

.breadcrumb-item a:hover {
}

ul.breadcrumb__body {
    padding: 0;
    margin: 0;
}

ul.breadcrumb__body li {
    left: unset;
    margin: 0;
}

ul.breadcrumb__body li::before {
    content: none;
}
/* End */


/* Start:/local/templates/red-gray/components/bitrix/menu/bottom-menu/style.css?17607096861395*/
.footer__menu {
    background-color: #f8f8f8;
}

@media (max-width: 991px) {
    .footer__menu {
        display: none;
    }
}

.footer__menu-list {
    display: flex;
    height: 72px;
    align-items: center;
}

.footer__menu-item {
    height: 100%;
    display: flex;
    align-items: center;
    margin-right: 30px;
    list-style: none;
    left: 0;
    padding: 0;
}

.footer__menu-item::before {
    content: none;
}

.footer__menu-link {
    height: 100%;
    display: flex;
    align-items: center;
    font-weight: 600;
    flex-wrap: nowrap;
    position: relative;
    overflow: hidden;
    white-space: nowrap;
    letter-spacing: 0.05rem;
    font-size: 13px;
    text-transform: uppercase;
}

.footer__menu-link::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 0;
    height: 2px;
    background-color: var(--main-color);
    z-index: 2;
    transition: width .2s ease-in-out;
    transform: translateX(-50%);
}

.footer__menu-link:hover::before,
.footer__menu-link:focus::before {
    width: 100%;
}

.footer__menu-item:last-child {
    margin-right: 0;
    margin-left: auto;
}

.footer__menu-icon {
    margin-left: 10px;
    /*color: var(--main-color);*/
    font-size: 1.8rem;
}

.footer__menu-item._visually-impaired .footer__menu-link {
    color: #222;
}
/* End */


/* Start:/local/templates/red-gray/components/bitrix/news.list/social_services/style.css?17738428241014*/
.social {
    display: grid;
    grid-template-columns: repeat(3, 50px);
    grid-gap: 12px;
}

.social__item {
    list-style: none;
    left: 0;
    padding: 0;
}

.social__item::before {
    content: none;
}

.social__link {
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 16px;
}

.footer__social .social__link:hover {
    background-color: #ff454be0;
    background-color: var(--main-color);
    color: #fff;
}

.footer__social .social {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    position: relative;
    max-width: 200px;
    justify-content: flex-end;
    margin-left: auto;
}

@media (max-width: 768px) {
    .footer__social .social {
        justify-content: center;
        width: 100%;
        margin: 0 auto;
    }
}


.footer__social .social__link {
    color: var(--main-color);
    background-color: #fff;
    border: 1px solid var(--border-color);
}
/* End */


/* Start:/local/templates/red-gray/components/vabank/form.lite/.default/style.css?17734214852926*/
.mfeedback {
	width: 500px;
	max-width: 100%;
	padding: 40px 50px;
	vertical-align: middle;
	background: #fff;
	position: fixed;
	left: 50%;
	top: 50%;
	z-index: 5;
	transform: translate(-50%, -50%);
	transition: transform 0.4s ease;
	box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
	display: none;

	border-radius: 5rem;
	corner-shape: squircle;
}

.mfeedback__close {
	position: absolute;
	top: -28px;
	right: -28px;
	cursor: pointer;
	background-color: transparent;
	width: 36px;
	max-width: 36px;
	height: 36px;
	padding: 0;
	color: #efefef;
	border: none;
	z-index: 3;
	border-radius: 5rem;
	corner-shape: squircle;
}

.mfeedback__close:hover {
	background-color: var(--main-color);
	color: #fff;
}

.mfeedback form {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.mfeedback form > input:not(:last-child) {
	margin-bottom: 10px;
}

.mfeedback form > input:not([type="submit"]):focus {
	background-color: #fff;
	border-color: #777;
}

.mf-title {
	text-align: center;
	margin-bottom: 24px;
	font-size: 34px;
	line-height: 1.2;
	font-weight: 500;
}

.mf-input {
	font-size: 16px;
	line-height: 1.28;
	-webkit-appearance: none;
	background-color: #F3F3F3;
	padding: 14px 15px !important;
	border-radius: 10px !important;
	overflow: visible;
	transition: all 0.3s ease;
	width: 100%;
	border: 1px solid transparent;
}


.mf-submit {
	width: 100%;
	margin: 20px 0;
}

.mf-submit input {
	width: 100%;
}

.mf-agreement {
	display: flex;
	flex-wrap: nowrap;
}


input[type="checkbox"].ios-switch {
	position: absolute;
	margin: 8px 0 0 16px;
}

input[type="checkbox"].ios-switch + label {
	position: relative;
	padding: 0 0 0 50px;
	line-height: 1.28;
	font-size: 14px;
}

input[type="checkbox"].ios-switch + label:before {
	content: "";
	position: absolute;
	display: block;
	cursor: pointer;
	left: 0;
	top: 0;
	width: 40px;
	height: 24px;
	border-radius: 16px;
	background: #fff;
	border: 1px solid #d9d9d9;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

input[type="checkbox"].ios-switch + label:after {
	content: "";
	position: absolute;
	display: block;
	left: 0px;
	top: 0px;
	width: 24px; /* x*3 */
	height: 24px; /* x*3 */
	border-radius: 16px; /* x*2 */
	background: #fff;
	border: 1px solid #d9d9d9;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

input[type="checkbox"].ios-switch + label:hover:after {
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

input[type="checkbox"].ios-switch:checked + label:after {
	margin-left: 16px;
}

input[type="checkbox"].ios-switch:checked + label:before {
	background: var(--main-color);
}

.mfeedback .notetext {
	display: flex;
	position: absolute;
	background: #ffffffeb;
	width: 100%;
	height: 100%;
	z-index: 2;
	padding: 50px;
	margin: 0;
	left: 0;
	top: 0;
	justify-content: center;
	align-items: center;
	font-size: 1.2rem;
	border-radius: 8px;
	color: #46bf46;
}
/* End */
/* /local/templates/red-gray/css/custom.css?177874247323497 */
/* /local/templates/red-gray/css/buttons.css?17787598971840 */
/* /local/templates/red-gray/fonts/icons/style.css?17607096904358 */
/* /local/templates/red-gray/fonts/Montserrat/style.css?17607096886711 */
/* /local/templates/red-gray/fonts/StarC/stylesheet.css?1772702791290 */
/* /local/templates/red-gray/fonts/Nunito/stylesheet.css?17727078173572 */
/* /local/templates/red-gray/css/visually-impaired.css?17607096871652 */
/* /local/templates/red-gray/components/bitrix/search.title/widescreen/style.css?17640867093728 */
/* /local/templates/red-gray/components/bitrix/menu/main-menu/style.css?17787637919595 */
/* /local/templates/red-gray/components/bitrix/breadcrumb/custom/style.css?1760709686658 */
/* /local/templates/red-gray/components/bitrix/menu/bottom-menu/style.css?17607096861395 */
/* /local/templates/red-gray/components/bitrix/news.list/social_services/style.css?17738428241014 */
/* /local/templates/red-gray/components/vabank/form.lite/.default/style.css?17734214852926 */
