@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@100;200;300;400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Jost:wght@100;200;300;400;500;600;700;800;900&display=swap');
:root{
    --font-family: 'Manrope', sans-serif;
    --white: #ffffff;
    --rose: #E55B5B;
    --black: #000000;
    --grey: #F3F2F1;
    --blue: #4BC2DF;
    --rose-light: #E9C8C8;
    --text-color: #333333;
    --background-color: #5B0D24;
    --fz-slider-title: 85px;
    --fz-slider-body: 24px;
    --fz-text: 18px;
    --fz-nav: 20px;
    --fz-title-block: 42px;    
    --len-container: 1170px;
    --baner-h: 1326.37px;
    --img-w: calc( ( var(--len-container) - var(--gap) * 2 ) / 3 );
    --img-h: calc( var(--img-w) * 1.057 );
    --bt-w: calc( ( var(--len-container) - var(--gap) * 2 ) / 3 );;
    --bt-h: 50px;
    --gap: 30px;
    --bs-offcanvas-zindex: 10046;
    --logo-h: 130px;
    --mb-block: 80px;
    --mb-title: 50px;
    --lh: 25px;
    --koef: 1;
}

body {
    font-family: var(--font-family);
    background-color: var(--white);
    color: var(--text-color);
}

div#app {
    min-height: 100vh;
    overflow: hidden;
    position: relative;
}
div#app:after{
    content: '';
    position: absolute;
    background-color: var(--background-color);
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -4;
}
@media (min-width: 1200px) {
    .container{
        max-width: 1170px;
        padding: 0;
    }
}
#main{
    padding-top: calc(var(--logo-h) + 26px );
    min-height: 73vh;
}
.header-top{
    padding: 0 !important;
}

.header-bottom{
    padding-top: 0 !important;
}
.right-group-header{
    width: var(--img-w);
}
.contextual-region {
    position: unset;
}
@media (min-width: 768px) {
    header#header-mob {
        display: none !important;
    }
    header#header {
        display: block !important;
    }
}
@media (max-width: 767px) {
    header#header {
        display: none !important;
    }
    header#header-mob {
        display: flex !important;
    }
    
}
div#vpa-short-wrapper {
    background: var(--background-color);
}
.ui-dialog {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    max-width: calc(100% - 20px);
    max-height: calc(100% - 20px);
}
img{
    max-width: 100%;
    height: auto;
}
/*HEADER STYLES*/
#footer .ajax-progress,
#header .ajax-progress {
    display: none;
}

.toolbar .toolbar-tab .toolbar-icon {
    padding: 0.75em 1.5em 0.75em 2.5em;
}

/* *** contextual-region *** */
.contextual-region .contextual {
    display: none;
    top: -8px;
    right: 8px;
}

.contextual-region .contextual-region .contextual {
    top: 8px;
}

.contextual-region:hover .contextual {
    display: block;
}

.contextual-region .contextual .trigger {
    width: 22px !important;
    height: 22px !important;
    background-size: 14px 14px;
}

.cart-block--summary .cart-block--summary__count {
    position: absolute;
    width: 18px;
    height: 18px;
    border: 2px solid #fff;
    background: #ccc;
    color: #fff;
    top: -3px;
    right: -9px;
    border-radius: 50%;
    font-size: 10px;
    font-weight: 500;
}

#header-mob {
    top: 0;
    width: 100%;
    height: calc( var(--logo-h) + 20px );
    background: transparent;
    color: var(--white);
    padding: 10px 5px;
    z-index: 50;
/*    box-shadow: 0 2px 5px 1px #E9C8C8;*/
}

#header-mob.toolbar-horizontal #header-mob {
    top: 0;
}

#header-mob .logo, #header-mob .logo a, .offcanvas-header .logo, .offcanvas-header .logo a {
    width: calc(var(--logo-h) * 1.54);
    height: var(--logo-h);
}
#header-mob .logo{
    position: absolute;
    left: 50%;
    top: 10px;
    transform: translate(-50%, 0);
}
#header-mob .logo a, .offcanvas-header .logo a{
    display: flex;
}
#header-mob .logo a img, .offcanvas-header .logo a img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.btn-close {
    --bs-btn-close-color: #FFFFFF;
    --bs-btn-close-bg:url("/sites/all/themes/vesta_theme/image/stich.svg");
}
offcanvas-header
#header-mob > * {
    padding: 0 10px;
}

#header-mob a {
    color: var(--white);
}

.offcanvas {
    --bs-offcanvas-bg: var(--background-color);
}
#header-mob .col-phone .tel{
    text-decoration: none;
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: var(--lh);
    color: #FFFFFF;
}
#header-mob .col-phone .tel:hover{
    color: var(--rose);
}
.offcanvas .offcanvas-title {
    color: #000;
    text-transform: uppercase;
    font-size: 20px;
    font-weight: 500;
}
.offcanvas .social{
        display: flex;
        .item{
            margin-right: 8px;
            a{
                width: 30px;
                height: 30px;
            }
            img{
                width: 30px;
                height: 30px;
                object-fit: cover;
            }
        }
        .item:last-child{
            margin-right: 0;
        }
    }
.offcanvas .col-contacts{
        display: flex;
        flex-direction: column;
        img{
            margin-right: 10px;
        }
        a{
            margin-bottom: 20px;
            font-family: 'Manrope';
            font-style: normal;
            font-weight: 400;
            font-size: var(--fz-text);
            line-height: var(--lh);
            color: #FFFFFF;
            text-decoration: none;
        }
        a:hover{
            color: var(--rose);
        }
        .adress{
            display: flex;
            align-items: center;
            p{
                width: 291px;
                font-family: 'Manrope';
                font-style: normal;
                font-weight: 400;
                font-size: var(--fz-text);
                line-height: var(--lh);
                color: #FFFFFF;
                margin: 0;
            }
        }
    }
.region-navigation .nav > .nav-item:hover .dropdown-menu {
    display: block;
    top: 100%;
    left: 0;
}


/*HEADER STYLES*/

/* SLICK STYLES */
div#slider-block .view.view-slayder.view-id-slayder .view-content .node--type-slide .content {
    position: absolute;
    top: 0;
    bottom: calc(1vw + 12px);
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: #fff;
}

.slick-prev, .slick-next {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: calc(50% - 10px);
    display: block;
    width: 20px;
    height: 20px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}

button.slick-prev.slick-arrow {
    left: 25px;
}

button.slick-next.slick-arrow {
    right: 25px;
}

ul.slick-dots {
    padding: 0;
    display: flex;
    justify-content: center;
    gap: 7px;
    list-style: none;
    margin: 10px 0;
}

ul.slick-dots li button {
    background: #686868;
    border-radius: 50%;
    border: none;
    padding: 0;
    width: 10px;
    font-size: 0;
    height: 10px;
    display: block;
}

ul.slick-dots li button::before {
    display: none;
}

ul.slick-dots li.slick-active button {
    background: #272727;
}

button.slick-arrow {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}

button.slick-arrow::before {
    content: '';
    display: block;
    position: relative;
    width: 30px;
    height: 30px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    font-size: 0;
}

button.slick-prev.slick-arrow::before {
    background-image: url("/sites/all/themes/vesta_theme/image/arrow-top.svg");
    transform: rotate(-90deg);
}

button.slick-next.slick-arrow::before {
    background-image: url("/sites/all/themes/vesta_theme/image/arrow-top.svg");
    transform: rotate(90deg);
}
.nav-link {
    font-size: var(--fz-nav);
    color: var(--white);
}
.nav {
    --bs-nav-link-color: var(--white);
    --bs-nav-link-hover-color: var(--rose);
    --bs-nav-link-disabled-color: var(--white);
}
.offcanvas-body .region-navigation .nav{
    width: 120px;
}
.offcanvas-body .region-navigation, .offcanvas-body .region-search, .offcanvas-body .social{
    margin-bottom: 25px;
}
#scrollToTop {
    width: 107px;
    height: 107px;
    background: none;
    text-indent: 0;
    font-size: 0;
    border: 0px;
    outline: 0px;
    display: flex;
    bottom: 120px;
    cursor: pointer;
    position: fixed;
    right: 75px;
    z-index: 10;
    transition: 0.2s;
    padding: 0;
}

/* SLICK STYLES */

/* PRODUCT PAGE STYLES*/
.product-teaser {
    display: flex;
    gap: 50px;
}

.product-teaser .product-teaser-image {
    max-width: 500px;
}

.product-teaser .product-teaser-image .field.field--name-field-variation-image.field--type-image .elements .current-slide.slick-initialized.slick-slider {
    margin: 0 0 10px;
}

.product-teaser .product-teaser-image .field.field--name-field-variation-image.field--type-image .elements .current-slide.slick-initialized.slick-slider .slick-list.draggable .slick-track .element.slick-slide img {
    max-width: 500px;
    min-width: 500px;
    max-height: 500px;
    min-height: 500px;
    object-fit: cover;
}

.product-teaser .product-teaser-image .field.field--name-field-variation-image.field--type-image .elements .nav-slide.slick-initialized.slick-slider .slick-list.draggable {
    margin: 0 -5px;
}

.product-teaser .product-teaser-image .field.field--name-field-variation-image.field--type-image .elements .nav-slide.slick-initialized.slick-slider .slick-list.draggable .slick-track .element.slick-slide {
    margin: 0 5px;
    max-width: 118px;
    min-width: 118px;
    max-height: 118px;
    min-height: 118px;
}

.product-teaser .product-teaser-image .field.field--name-field-variation-image.field--type-image .elements .nav-slide.slick-initialized.slick-slider .slick-list.draggable .slick-track .element.slick-slide img {
    max-width: 118px;
    min-width: 118px;
    max-height: 118px;
    min-height: 118px;
    object-fit: cover;
}

.product-teaser .product-teaser-info {
    max-width: 500px;
}

.product-view-full button.slick-prev.slick-arrow {
    left: -25px;
}

.product-view-full button.slick-next.slick-arrow {
    right: -25px;
}


.node--view-mode-full .field--name-body img {
    margin: 0 10px;
}

/* PRODUCT PAGE STYLES*/


/* *** ADAPTIVE *** */
@media screen and (max-width: 1199px) {
}

@media screen and (max-width: 991px) {
    #offcanvasNav .nav .dropdown-menu {
        display: none;
        position: static;
        border: 0px solid;
        background: transparent;
        padding: 10px 0;
        border-bottom: 1px solid #BDBDBD;
    }

    #offcanvasNav li.nav-item {
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
}

@media screen and (max-width: 576px) {
}
footer .social .item.mt {
    margin-top: 2px;
}

#header{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
    padding: 14px 0 12px 0;
}

.field--name-field-fon-baner{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: var(--baner-h);
    z-index: -2;
    img{
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}
.header .logo{
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate( -50%, 0);
}
.header .logo, .header .logo a{
    width: calc( var(--logo-h) * 1.54 );
    height: var(--logo-h);
}
.header .logo a{
    display: flex;
}
.header .logo img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.header .col-nav .nav{
   flex-wrap: wrap;
   gap: 20px;
}
.header-top{
    position: relative;
    height: var(--logo-h);
}
.header-bottom{
    height: var(--logo-h);
}
.header .col-nav .nav li a{
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 600;
    font-size: var(--fz-nav);
    line-height: calc( var(--fz-nav) + 7px );
    color: #FFFFFF;
    text-decoration: none;
    padding: 0;
}
header .col-nav .nav li a:hover{
    color: var(--rose);
}
header .col-contacts{
    margin-bottom: 14px;
    display: flex;
}
header .col-contacts a{
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 400;
    font-size: var(--fz-text);
    line-height: var(--lh);
    color: #FFFFFF;
    display: flex;
    align-items: center;
    text-decoration: none;
}
header .col-contacts a:hover{
    color: var(--rose);
}
header .col-contacts a img{
    margin-right: 10px;
}
header .col-contacts .tel{
    margin-right: var(--gap);
}


.search-form .form-actions {
    display: flex;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px;
    margin: auto 0px auto auto;
}
.search-form .js-form-item{
    width: 100%;
}
.search-form .js-form-item input{
    width: 100%;
    height: 40px;
    background: var(--grey);
    border-radius: 50px;
    padding-left: 40px;
    font-size: var(--fz-text);
}
.search-form .js-form-item input::placeholder{
    font-size: var(--fz-text);
}
.search-form .form-actions button{
    background-image: url(/sites/all/themes/vesta_theme/image/tabler_search.svg);
    background-size: 18px;
    background-position: center;
    background-repeat: no-repeat;
    width: 18px;
    height: 18px;
    background-color: transparent;
    font-size: 0px !important;
    box-shadow: none;
    border: none;
}
.search-form{
    position: relative;
    width: 100%;
}
.search-form .form-actions button:hover {
    color: var(--grey);
    background-color: transparent;
    border-color: var(--grey);
    --bs-btn-active-color: var(--grey);
    --bs-btn-active-bg: var(--grey);
    --bs-btn-active-border-color: var(--grey);
}
.form-control:focus {
    background-color: var(--grey);
}
.search-form .btn:first-child:active{
    background-color: transparent;
}
.node--type-baner.node--view-mode-full{
    padding: 237px 0 238px 0;
    .field--name-node-title{
        margin-bottom: 57px;
     }
    .field--name-node-title h1{
        font-family: 'Jost';
        font-style: normal;
        font-weight: 600;
        font-size: var(--fz-slider-title);
        line-height: 127.99%;
        color: #FFFFFF;
        margin-bottom: 0;
    }
    .field--name-body{
        width: 88%;
    }
}
#baner-block, #about-block, .front .wr_front_content, #uslugi-block, #contacts-block{
    margin-bottom: var(--mb-block);
}
.row-footer{
    margin-bottom: 40px;
}
.block-title{
  font-family: 'Jost';
    font-style: normal;
    font-weight: 600;
    font-size: var(--fz-title-block);
    line-height: 127.99%;
    color: #FFFFFF;
    margin-bottom: var(--mb-title);
}
.not-front h1{
    font-family: 'Jost';
    font-style: normal;
    font-weight: 600;
    font-size: var(--fz-title-block);
    line-height: 127.99%;
    color: #FFFFFF;
    margin-bottom: var(--mb-title);
}
#uslugi-block .block-title{
    margin-bottom: 30px;
}
.field--name-body p{
        font-family: 'Manrope';
        font-style: normal;
        font-weight: 400;
        font-size: var(--fz-slider-body);
        line-height: calc( var(--fz-slider-body) + 9px );
        color: #FFFFFF;
}
.node--type-nashi-zaly.node--view-mode-full .field--name-body{
    margin-bottom: var(--mb-title);
    width: 73%;
}
.field--name-field-zaly-izobrazhenie{
    display: flex;
    justify-content: space-between;
    .field__item{
        border-radius: 10px;
        border: solid 3px var(--rose-light);
        overflow: hidden;
        width: var(--img-w);
        height: var(--img-h);
        img{
            width: var(--img-w);
            height: var(--img-h);
            object-fit: cover;
        }
    }
}
.not-front .field--name-field-zaly-izobrazhenie{
    display: flex;
    justify-content: space-between;
    gap: var(--gap);
}
.front .header:after{
    content: '';
    position: absolute;
    height: 895.38px;
    left: 0;
    right: 0;
    top: 46.31px;
    background: linear-gradient(180deg, rgba(49, 30, 17, 0) 0%, rgba(26, 15, 8, 0.25) 73.41%);
    z-index: -1;
    pointer-events: none;
}
.front #header-mob:after{
    content: '';
    position: absolute;
    height: 516px;
    left: 0;
    right: 0;
    top: 46.31px;
    background: linear-gradient(180deg, rgba(49, 30, 17, 0) 0%, rgba(26, 15, 8, 0.25) 73.41%);
    z-index: -1;
    pointer-events: none;
}
#about-block{
    position: relative;
}
.front #about-block::after{
    content: '';
    position: absolute;
    height: 552px;
    left: 0px;
    right: 0;
    top: -118px;
    background: linear-gradient(180deg, rgba(91, 13, 36, 0) 1.08%, #5B0D24 86.81%);
    z-index: -1;
}

.field--name-field-catalog-image img, .blazy--field-izobrazhenie-usluga--teaser img {
    width: var(--img-w);
    height: var(--img-h);
    object-fit: cover;
}

.field--name-field-catalog-image::after, .blazy--field-izobrazhenie-usluga--teaser::after{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 10px;
    background: linear-gradient(180deg, rgba(49, 30, 17, 0) 46.15%, rgba(37, 8, 20, 0.8) 87.98%);
    pointer-events: none;
}

.field--name-field-catalog-image, .blazy--field-izobrazhenie-usluga--teaser{
    border-radius: 10px;
    border: solid 3px var(--rose-light);
    width: var(--img-w);
    height: var(--img-h);
    overflow: hidden;
    position: relative;
}
.taxonomy-term--type-catalog.taxonomy-term--view-mode-teaser{
    position: relative;
    .field--name-taxonomy-term-title{
        position: absolute;
        bottom: 35px;
        left: 35px;
    }
    .field--name-taxonomy-term-title a{
        font-family: 'Manrope';
        font-style: normal;
        font-weight: 800;
        font-size: var(--fz-text);
        line-height: var(--lh);
        text-transform: uppercase;
        color: #FFFFFF;
        text-decoration: none;
    }
    .field--name-taxonomy-term-title a:hover{
        color: var(--rose);
    }
}
.taxonomy-term--type-catalog.taxonomy-term--view-mode-teaser:hover .field--name-taxonomy-term-title a{
        color: var(--rose);
    }

.node--type-usluga.node--view-mode-teaser{
    position: relative;
    .field--name-node-title{
        position: absolute;
        bottom: 35px;
        left: 35px;
    }
    .field--name-node-title a{
        font-family: 'Manrope';
        font-style: normal;
        font-weight: 700;
        font-size: var(--fz-text);
        line-height: var(--lh);
        color: #FFFFFF;
        text-decoration: none;
    }
    .field--name-node-title a:hover{
        color: var(--rose);
    }
}
.node--type-usluga.node--view-mode-teaser:hover a{
    color: var(--rose);
}
.c-s-block{
    display: flex;
    .social{
        margin-right: 63px;
    }
}
footer .col-nav{
    margin-right: 64px;
}

.view-id-catalog.view-display-id-block_front .view-content,
.view-id-nashi_uslugi.view-display-id-block_1 .view-content,
.view-id-nashi_kontakty.view-display-id-block_1 .view-content{
    display: flex;
    justify-content: space-between;
    row-gap: var(--gap);
    flex-wrap: wrap;
    margin-bottom: 30px;
}

.more-link{
    width: var(--bt-w);
    height: var(--bt-h);
    background: #E55B5B;
    border-radius: 50px;
    cursor: pointer;
    margin: 0 auto;
    a{
        font-family: 'Manrope';
        font-style: normal;
        font-weight: 700;
        font-size: var(--fz-text);
        color: #F3F2F1;
        width: var(--bt-w);
        height: var(--bt-h);
        border-radius: 50px;
        display: flex;
        justify-content: center;
        align-items: center;
        text-decoration: none;
    }
}
.node--type-kontakt.node--view-mode-teaser{
    width: var(--img-w);
    height: calc( var(--img-w) * 0.55 );
    border-radius: 10px;
    background-color: var(--white);
    padding: var(--gap) calc( var(--gap) - 2px );
    display: flex;
    flex-direction: column;
    align-items: center;
    .field--name-body p, .field--name-body p a{
        font-family: 'Manrope';
        font-style: normal;
        font-weight: 500;
        font-size: var(--fz-text);
        line-height: var(--lh);
        text-align: center;
        color: #000000;
        text-decoration: none;
    }
    .field--name-body p a:hover{
        color: var(--rose);
    }
}
.blazy--field-kartinka--teaser{
    width: 65px;
    height: 65px;
    margin-bottom: var(--gap);
}
.blazy--field-kartinka--teaser .media--svg, .blazy--field-kartinka--teaser .media--svg img{
    width: 65px;
    height: 65px;
}
.field[data-blazy] {
    min-width: 20% !important;
}
footer{
    background-color: var(--white);
    padding: 40px 0 32px 0;
    .row-footer{
        display: flex;
        justify-content: space-between;
    }
    .col-logo a img{
        width: 148.47px;
        height: 97.23px;
        object-fit: cover;
    }
    .col-logo a{
        width: 148.47px;
        height: 97.23px;
        display: flex;
    }
    .col-logo{
        margin-right: 153px;
    }
    .region-nav-footer{
        display: flex;
        #block-vesta-theme-osnovnayanavigaciya{
            margin-right: 50px;
        }
        #block-vesta-theme-osnovnayanavigaciya ul{
            width: 82px;
            flex-direction: column;
        }
        #block-vesta-theme-uslugi ul{
            width: 179px;
            flex-direction: column;
        }
        ul li a{
            font-family: 'Manrope';
            font-style: normal;
            font-weight: 500;
            font-size: var(--fz-text);
            line-height: var(--lh);
            color: #000000;
            padding: 7.5px 0;
        }
        ul li a:hover{
            color: var(--rose);
        }
    }
    .social{
        display: flex;
        .item{
            margin-right: 8px;
            a{
                width: 30px;
                height: 30px;
            }
            img{
                width: 30px;
                height: 30px;
                object-fit: cover;
            }
        }
        .item:last-child{
            margin-right: 0;
        }
    }
    .col-contacts{
        display: flex;
        flex-direction: column;
        img{
            margin-right: 10px;
        }
        a{
            margin-bottom: 20px;
            font-family: 'Manrope';
            font-style: normal;
            font-weight: 400;
            font-size: var(--fz-text);
            line-height: var(--lh);
            color: #000000;
            text-decoration: none;
        }
        a:hover{
            color: var(--rose);
        }
        .adress{
            display: flex;
            align-items: center;
            p{
                width: 291px;
                font-family: 'Manrope';
                font-style: normal;
                font-weight: 400;
                font-size: var(--fz-text);
                line-height: var(--lh);
                color: #000000;
                margin: 0;
            }
        }
    }
    .copyright, .col-webvesta a{
        font-family: 'Manrope';
        font-style: normal;
        font-weight: 400;
        font-size: 14px;
        line-height: 19px;
        letter-spacing: 0.04em;
        color: #000000;
        text-decoration: none;
    }
    .col-webvesta a:hover{
        color: var(--rose);
    }
    .col-politika{
        display: flex;
        justify-content: space-between;
    }
}
.front #main::after{
    content: '';
    position: absolute;
    left: 0px;
    right: 0;
    top: 1251px;
    bottom: -92px;
    background: url(/sites/all/themes/vesta_theme/image/fon_gradient.jpg);
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
    z-index: -3;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.front #main::before{
    content: '';
    position: absolute;
    left: 0px;
    right: 0;
    top: 1368px;
    height: 552px;
    background: linear-gradient(180deg, rgba(91, 13, 36, 0) 1.08%, #5B0D24 86.81%);
    transform: matrix(1, 0, 0, -1, 0, 0);
    z-index: -2;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

#main, #block-vesta-theme-views-block-catalog-block-front, .view-display-id-block_front, .region-about, .region-uslugi, .region-contacts{
    position: relative;
}
.not-front .view-content{
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap);
    margin-bottom: 30px;
}
#block-vesta-theme-views-block-catalog-block-front::before{
    content: '';
    position: absolute;
    right: calc( 0px - 213px * var(--koef) );
    top: -143px;
    width: calc( var(--koef) * 538px );
    height: calc( var(--koef) * 393px );
    background: url(/sites/all/themes/vesta_theme/image/2.png);
    z-index: -1;
    background-size: cover;
}
#block-vesta-theme-views-block-catalog-block-front::after{
    content: '';
    position: absolute;
    left: calc( 0px - 342px * var(--koef) );
    bottom: -188px;
    width: calc( var(--koef) * 593px );
    height: calc( var(--koef) * 631px );
    height: 631px;
    background: url(/sites/all/themes/vesta_theme/image/5.png);
    z-index: -1;
    background-size: cover;
}
.view-display-id-block_front::before{
    content: '';
    position: absolute;
    right: calc( 0px - 554px * var(--koef) );
    top: 98px;
    width: calc( var(--koef) * 520px );
    height: calc( var(--koef) * 297px );
    background: url(/sites/all/themes/vesta_theme/image/31.png);
    z-index: -1;
    background-size: cover;
}
.view-display-id-block_front::after{
    content: '';
    position: absolute;
    left: calc( 0px - 592px * var(--koef) );
    top: 377px;
    width: calc( var(--koef) * 526px );
    height: calc( var(--koef) * 251px );
    background: url(/sites/all/themes/vesta_theme/image/41.png);
    z-index: -1;
    background-size: cover;
}
.region-about::before{
    content: '';
    position: absolute;
    right: calc(  0px - 588px * var(--koef) );
    top: 335px;
    width: calc( var(--koef) * 432px );
    height: calc( var(--koef) * 459px );
    background: url(/sites/all/themes/vesta_theme/image/11.png);
    z-index: -1;
    background-size: cover;
}
.region-uslugi::after{
    content: '';
    position: absolute;
    right: calc( 0px - 364px * var(--koef) );
    top: 137px;
    width: calc( var(--koef) * 582px );
    height: calc( var(--koef) * 582px );
    background: url(/sites/all/themes/vesta_theme/image/7.png);
    z-index: -1;
    background-size: cover;
}
.region-uslugi::before{
    content: '';
    position: absolute;
    right: calc( 0px - 496px * var(--koef) );
    top: -177px;
    width: calc( var(--koef) * 462px );
    height: calc( var(--koef) * 462px );
    background: url(/sites/all/themes/vesta_theme/image/61.png);
    z-index: -1;
    background-size: cover;
}
.region-contacts::after{
    content: '';
    position: absolute;
    left: calc( 0px - 467px * var(--koef) );
    top: 63px;
    width: calc( var(--koef) * 545px );
    height: calc( var(--koef) * 545px );
    background: url(/sites/all/themes/vesta_theme/image/91.png);
    z-index: -1;
    background-size: cover;
}
.region-contacts::before{
    content: '';
    position: absolute;
    left: calc( 0px - 467px * var(--koef) );
    top: -63px;
    width: calc( var(--koef) * 311px );
    height: calc( var(--koef) * 227px );
    background: url(/sites/all/themes/vesta_theme/image/81.png);
    z-index: -1;
    background-size: cover;
}
#footer .dropdown-toggle::after{
    display: none;
}

.dropdown-menu {
    --bs-dropdown-color: var(--white);
    --bs-dropdown-bg: #5b0d2466;
    --bs-dropdown-border-color: var(--background-color);
    --bs-dropdown-link-color: var(--white);
    --bs-dropdown-link-hover-color: var(--rose);
    --bs-dropdown-link-hover-bg: #5b0d2466;
    --bs-dropdown-link-active-color: #fff;
    --bs-dropdown-link-active-bg: transparent;
    --bs-dropdown-link-disabled-color: var(--background-color);
    margin-left: 20px;
}
.not-front .dropdown-menu {
    --bs-dropdown-bg: rgba(116, 24, 62, 1);
}
.header .col-nav .nav li a.dropdown-item{
    padding: 7px 25px;
}
.dropdown-toggle::after {
    content: "";
    position: absolute;
    top: 9px;
    right: -20px;
    background-image: url(/sites/all/themes/vesta_theme/image/Vector.png);
    background-size: cover;
    width: 12px;
    height: 6px;
    border: none;
}
.not-front .wr_content{
    margin-bottom: var(--mb-block);
}
.node--type-usluga.node--view-mode-full .field--name-field-izobrazhenie-usluga{
    float: left;
    margin-right: 50px;
    margin-bottom: 30px;
    width: var(--img-w);
    height: var(--img-h);

}
.node--type-usluga.node--view-mode-full .field--name-field-izobrazhenie-usluga img{
    object-fit: cover;
    width: var(--img-w);
    height: var(--img-h);
}

.field--name-body, .field--name-body ul li {
    font-family: 'Manrope';
    font-style: normal;
    color: #FFFFFF;
}
 .field--name-body ul li {
    font-size: var(--fz-text);
 }

.commerce-product--view-mode-teaser{
    color: var(--white);
    position: relative;
    .field--name-title{
        font-family: 'Manrope';
        font-style: normal;
        font-weight: 800;
        font-size: var(--fz-slider-body);
        line-height: var(--lh);
        text-transform: uppercase;
        color: var(--rose);
        margin-bottom: 10px;
    }
    .field--name-field-harakteristiki{
        max-width: 75%;
    }
    .field--name-field-harakteristiki p, .field--name-weight{
        font-family: 'Manrope';
        font-style: normal;
        font-weight: 400;
        font-size: var(--fz-text);
        line-height: var(--lh);
        color: #FFFFFF;
        margin-bottom: 0.2rem;
    }
    .field--name-price{
        position: absolute;
        right: 0;
        top: 50%;
        transform: translate( 0, -50%);
        font-family: 'Manrope';
        font-style: normal;
        font-weight: 800;
        font-size: var(--fz-slider-body);
        line-height: var(--lh);
        color: var(--white);
    }
    
}
.view-display-id-page_2 .views-row{
    width: 100%;
}

.node--type-usluga.node--view-mode-full .field--name-body p{
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 400;
    font-size: var(--fz-text);
    line-height: var(--lh);
    color: #FFFFFF;
}

.row>* {
    padding-right: 0;
    padding-left: 0;
}

.wr_content .search-form {
    display: none;
    max-width: 30%;
}
.wr_content #block-vesta-theme-content, .wr_content #block-vesta-theme-content ul li, .wr_content #block-vesta-theme-content ul li a {
    color: var(--white);
}
@media screen and (min-width: 992px) and (max-width: 1199px) {

 :root{
    --fz-slider-title: 80px;
    --fz-slider-body: 20px;
    --fz-text: 16px;
    --fz-nav: 19px;
    --fz-title-block: 40px;    
    --len-container: 960px;
    --baner-h: 1200px;
    --img-w: calc( ( var(--len-container) - var(--gap) * 2 ) / 3 );
    --img-h: calc( var(--img-w) * 1.057 );
    --bt-w: calc( ( var(--len-container) - var(--gap) * 2 ) / 3 );;
    --bt-h: 50px;
    --gap: 30px;
    --bs-offcanvas-zindex: 10046;
    --logo-h: 110px;
    --mb-block: 70px;
    --mb-title: 45px;
    --lh: 23px;
    --koef: 0.9;
}
.container{
    padding: 0;
}
.right-group-header {
    width: 350px;
}
.node--type-baner.node--view-mode-full {
    padding: 220px 0 220px 0;
}
.front #main::after {
    top: 1200px;
}
.front #main::before {
    top: 1168px;
}
.front .header:after {
    height: 845px;
}
.front #about-block::after {
    height: 530px;
    top: -162px;
}
.blazy--field-kartinka--teaser .media--svg, .blazy--field-kartinka--teaser .media--svg img {
    width: 55px;
    height: 55px;
}
.blazy--field-kartinka--teaser {
    width: 55px;
    height: 55px;
}
.node--type-kontakt.node--view-mode-teaser {
    padding: 20px;
}

footer .col-contacts .adress  p {
                width: 264px;
            }
#scrollToTop {
    width: 87px;
    height: 87px;
}
footer .col-logo {
        margin-right: 50px;
    }
.c-s-block.social{
        margin-right: 34px;
    }
footer .col-nav{
    margin-right: 34px;
}

}


@media screen and (min-width: 768px) and (max-width: 991px) {

:root{
    --fz-slider-title: 60px;
    --fz-slider-body: 18px;
    --fz-text: 15px;
    --fz-nav: 15px;
    --fz-title-block: 35px;    
    --len-container: 720px;
    --baner-h: 1020px;
    --img-w: calc( ( var(--len-container) - var(--gap) * 2 ) / 3 );
    --img-h: calc( var(--img-w) * 1.057 );
    --bt-w: calc( ( var(--len-container) - var(--gap) * 2 ) / 3 );;
    --bt-h: 40px;
    --gap: 20px;
    --bs-offcanvas-zindex: 10046;
    --logo-h: 90px;
    --mb-block: 70px;
    --mb-title: 45px;
    --lh: 23px;
    --koef: 0.72;
}
.container{
    padding: 0;}

.node--type-baner.node--view-mode-full {
    padding: 160px 0 160px 0;
}
.front #main::after {
    top: 1200px;
}
.front #main::before {
    top: 1168px;
}
.front .header:after {
    height: 690px;
    top: 15px;
}
.front #about-block::after {
    height: 530px;
    top: -162px;
}
.blazy--field-kartinka--teaser .media--svg, .blazy--field-kartinka--teaser .media--svg img {
    width: 40px;
    height: 40px;
}
.blazy--field-kartinka--teaser {
    width: 40px;
    height: 40px;
}
.node--type-kontakt.node--view-mode-teaser {
    padding: 15px;
}

footer .col-contacts .adress  p {
                width: 264px;
            }
#scrollToTop {
    width: 77px;
    height: 77px;
    right: 15px;
    bottom: 75px;
}
footer .col-logo {
        margin-right: 50px;
    }
.dropdown-toggle::after {
    top: 7px;
    right: -18px;
    width: 10px;
    height: 5px;
}
.header .col-nav .nav {
    gap: 18px;
}
header .col-contacts a img {
    margin-right: 8px;
    width: 20px !important;
    height: 20px !important;
}
.header .logo {
    left: 45%;
}
.search-form .js-form-item input {
    width: 100%;
    height: 33px;
}
.right-group-header{
    width: 295px;
}
.node--type-baner.node--view-mode-full .field--name-node-title {
        margin-bottom: 30px;
    }
#block-vesta-theme-views-block-catalog-block-front::after {
    height: 475px;
    bottom: -130px;
}
.node--type-kontakt.node--view-mode-teaser {
    height: 160px;
}
.taxonomy-term--type-catalog.taxonomy-term--view-mode-teaser .field--name-taxonomy-term-title {
        bottom: 20px;
        left: 17px;
    }
.node--type-usluga.node--view-mode-teaser .field--name-node-title {
        position: absolute;
        bottom: 20px;
        left: 20px;
    }
.c-s-block{
    flex-direction: column;
    .social{
        margin-right: 0px;
        margin-bottom: 20px;
    }
}
footer {
    & .region-nav-footer {
        #block-vesta-theme-uslugi ul {
            width: 154px;
        }
    }
}
footer {
    & .region-nav-footer {
        #block-vesta-theme-osnovnayanavigaciya ul {
            width: 72px;
        }
    }
}
footer .col-contacts .adress p {
        width: 173px;
    }
footer .col-logo a img {
        width: 120px;
        height: 80px;
        object-fit: cover;
    }
footer .col-logo a{
        width: 120px;
        height: 80px;
}
}

@media screen and (min-width: 577px) and (max-width: 767px) {

:root{
    --fz-slider-title: 60px;
    --fz-slider-body: 18px;
    --fz-text: 14px;
    --fz-nav: 15px;
    --fz-title-block: 30px;    
    --len-container: 540px;
    --baner-h: 770px;
    --img-w: calc( ( var(--len-container) - var(--gap) * 2 ) / 3 );
    --img-h: calc( var(--img-w) * 1.057 );
    --bt-w: calc( ( var(--len-container) - var(--gap) * 2 ) / 3 );;
    --bt-h: 40px;
    --gap: 12px;
    --bs-offcanvas-zindex: 10046;
    --logo-h: 64px;
    --mb-block: 50px;
    --mb-title: 30px;
    --lh: 23px;
    --koef: 0.5;
}
.container{
    padding: 0;}

.node--type-baner.node--view-mode-full {
    padding: 120px 0 120px 0;
}
.front #main::after {
    top: 765px;
}
.front #main::before {
    top: 765px;
    height: 365px;
}
.front .header:after {
    height: 690px;
    top: 15px;
}
.front #about-block::after {
    height: 530px;
    top: -175px;
}
.blazy--field-kartinka--teaser .media--svg, .blazy--field-kartinka--teaser .media--svg img {
    width: 40px;
    height: 40px;
}
.blazy--field-kartinka--teaser {
    width: 40px;
    height: 40px;
}
.node--type-kontakt.node--view-mode-teaser {
    padding: 15px;
}

footer .col-contacts .adress  p {
                width: 264px;
            }
#scrollToTop {
    width: 77px;
    height: 77px;
    right: 15px;
    bottom: 75px;
}
footer .col-logo {
        margin-right: 0px;
        width: 100%;
    }
.dropdown-toggle::after {
    top: 16px;
    right: 37px;
    width: 11px;
    height: 6px;
}
.header .col-nav .nav {
    gap: 18px;
}
header .col-contacts a img {
    margin-right: 8px;
    width: 20px !important;
    height: 20px !important;
}
.header .logo {
    left: 45%;
}
.search-form .js-form-item input {
    width: 100%;
    height: 33px;
}
.right-group-header{
    width: 295px;
}
.node--type-baner.node--view-mode-full .field--name-node-title {
        margin-bottom: 30px;
    }
#block-vesta-theme-views-block-catalog-block-front::after {
    height: 330px;
    bottom: -88px;
}
.node--type-kontakt.node--view-mode-teaser {
    height: 150px;
}
.node--type-kontakt.node--view-mode-teaser {
    .field--name-body p, .field--name-body p a {
        font-size: 14px;
        line-height: 15px;
        
    }
}
.taxonomy-term--type-catalog.taxonomy-term--view-mode-teaser .field--name-taxonomy-term-title {
        bottom: 20px;
        left: 17px;
    }
.node--type-usluga.node--view-mode-teaser .field--name-node-title {
        position: absolute;
        bottom: 20px;
        left: 20px;
    }
.c-s-block{
    flex-direction: column-reverse;
    gap: 10px;
    .social{
        margin-right: 0px;
        margin-bottom: 20px;
    }
}
footer {
    & .region-nav-footer {
        #block-vesta-theme-uslugi ul {
            width: 154px;
        }
    }
}
footer {
    & .region-nav-footer {
        #block-vesta-theme-osnovnayanavigaciya ul {
            width: 72px;
        }
    }
}
footer .col-contacts .adress p {
        width: 173px;
    }
.node--type-baner.node--view-mode-full .field--name-body {
        width: 100%;
    }
.node--type-nashi-zaly.node--view-mode-full .field--name-body {
    width: 100%;
}
#main {
    padding-top: 20px;
    min-height: 56vh;
}
.node--type-nashi-zaly.node--view-mode-full .field--name-body {
    width: 100%;
}
#block-vesta-theme-views-block-catalog-block-front::before {
    top: -85px;
}
.region-contacts::after {
     top: 105px;
}
.view-display-id-block_front::after {
    top: 149px;
}
#uslugi-block .block-title {
    margin-bottom: 20px;
}
.row-footer {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: start;
    gap: 20px;
}
footer .col-logo a, footer .col-logo a img {
        width: 111px;
        height: 70px;
    }
footer .col-logo a{
    margin: 0 auto;
}
footer .col-nav {
    margin-right: 0;
}
.node--type-usluga.node--view-mode-full .field--name-field-izobrazhenie-usluga {
    margin-right: 30px;
    margin-bottom: 20px;
}
.field--name-field-fon-baner {
    position: absolute;
    top: calc( 0px - var(--logo-h) - 20px );
    left: 0;
    right: 0;
    height: calc( var(--logo-h) + 20px + var(--baner-h) );
}
footer .col-contacts a {
            margin-bottom: 10px;
        }
}
/*
.not-front #main::after {
    content: '';
    position: absolute;
    left: 0px;
    right: 0;
    top: 0;
    bottom: -92px;
    background: url(/sites/all/themes/vesta_theme/image/fon_gradient.jpg);
    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
    z-index: -3;
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover;
}
.not-front #main::before {
    content: '';
    position: absolute;
    left: 0px;
    right: 0;
    top: 0;
    height: 552px;
    background: linear-gradient(180deg, rgba(91, 13, 36, 0) 1.08%, #5B0D24 86.81%);
    transform: matrix(1, 0, 0, -1, 0, 0);
    z-index: -2;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
*/

@media screen and (max-width: 576px) {

:root{
    --fz-slider-title: 42px;
    --fz-slider-body: 16px;
    --fz-text: 14px;
    --fz-nav: 15px;
    --fz-title-block: 28px;    
    --len-container: 100%;
    --baner-h: 770px;
    --img-w: 300px;
    --img-h: calc( var(--img-w) * 1.057 );
    --bt-w: 300px;
    --bt-h: 40px;
    --gap: 15px;
    --bs-offcanvas-zindex: 10046;
    --logo-h: 50px;
    --mb-block: 50px;
    --mb-title: 30px;
    --lh: 20px;
    --koef: 0.5;
}

.node--type-baner.node--view-mode-full {
    padding: 100px 0 120px 0;
}
.front #main::after {
    top: 765px;
}
.front #main::before {
    top: 765px;
    height: 365px;
}
.front .header:after {
    height: 690px;
    top: 15px;
}
.front #about-block::after {
    height: 530px;
    top: -175px;
}
.blazy--field-kartinka--teaser .media--svg, .blazy--field-kartinka--teaser .media--svg img {
    width: 40px;
    height: 40px;
}
.blazy--field-kartinka--teaser {
    width: 40px;
    height: 40px;
}
.node--type-kontakt.node--view-mode-teaser {
    padding: 15px;
}

footer .col-contacts .adress  p {
                width: 264px;
            }
#scrollToTop {
    width: 55px;
    height: 55px;
    right: 15px;
    bottom: 75px;
}
footer .col-logo {
        margin-right: 0px;
        width: 100%;
    }
.dropdown-toggle::after {
    top: 16px;
    right: 37px;
    width: 11px;
    height: 6px;
}
.header .col-nav .nav {
    gap: 18px;
}
header .col-contacts a img {
    margin-right: 8px;
    width: 20px !important;
    height: 20px !important;
}
.header .logo {
    left: 45%;
}
.search-form .js-form-item input {
    width: 100%;
    height: 33px;
}
.right-group-header{
    width: 295px;
}
.node--type-baner.node--view-mode-full .field--name-node-title {
        margin-bottom: 30px;
    }
#block-vesta-theme-views-block-catalog-block-front::after {
    height: 330px;
    bottom: -88px;
}
.node--type-kontakt.node--view-mode-teaser {
    height: 130px;
}
.node--type-kontakt.node--view-mode-teaser .field--name-body p, .field--name-body p a {
        font-size: 14px;
        line-height: 20px;
}
.taxonomy-term--type-catalog.taxonomy-term--view-mode-teaser .field--name-taxonomy-term-title {
        bottom: 20px;
        left: 17px;
    }
.node--type-usluga.node--view-mode-teaser .field--name-node-title {
        position: absolute;
        bottom: 20px;
        left: 20px;
    }
.c-s-block{
    flex-direction: column-reverse;
    gap: 20px;
    align-items: center;
    .social{
        margin-right: 0px;
        margin-bottom: 20px;
    }
}
footer {
    & .region-nav-footer {
        #block-vesta-theme-uslugi ul {
            width: 154px;
        }
    }
}
footer {
    & .region-nav-footer {
        #block-vesta-theme-osnovnayanavigaciya ul {
            width: 72px;
        }
    }
}
footer .col-contacts a {
            margin-bottom: 10px;
        }
footer .col-contacts .adress p {
        width: 259px;
    }
.node--type-baner.node--view-mode-full .field--name-body {
        width: 100%;
    }
.node--type-nashi-zaly.node--view-mode-full .field--name-body {
    width: 100%;
}
#main {
    padding-top: 20px;
    min-height: 56vh;
}
.node--type-nashi-zaly.node--view-mode-full .field--name-body {
    width: 100%;
}
#block-vesta-theme-views-block-catalog-block-front::before {
    top: -85px;
}
.region-contacts::after {
     top: 105px;
     display: none;
}
.view-display-id-block_front::after {
    top: 149px;
}
#uslugi-block .block-title {
    margin-bottom: 20px;
}
.row-footer {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}
footer .col-logo a, footer .col-logo a img {
        width: 111px;
        height: 70px;
    }
footer .col-logo a{
    margin: 0 auto;
}
footer .col-nav {
    margin-right: 0;
}
.node--type-usluga.node--view-mode-full .field--name-field-izobrazhenie-usluga {
    margin: 0 auto 20px auto;
    float: unset;
}
.field--name-field-zaly-izobrazhenie {
    flex-direction: column;
    gap: var(--gap);
    align-items: center;
}
.view-id-catalog.view-display-id-block_front .view-content, .view-id-nashi_uslugi.view-display-id-block_1 .view-content, .view-id-nashi_kontakty.view-display-id-block_1 .view-content {
    flex-direction: column;
    gap: var(--gap);
    align-items: center;
}
footer .col-politika {
        flex-direction: column;
}
.not-front .field--name-field-zaly-izobrazhenie {
    flex-direction: column;
}
.not-front .view-content {
    flex-direction: column;
    align-items: center;
}
.commerce-product--view-mode-teaser .field--name-title {
    max-width: 75%;
}
footer .copyright, .col-webvesta a {
        font-size: 12px !important;
    }

.field--name-field-fon-baner {
    position: absolute;
    top: calc( 0px - var(--logo-h) - 20px );
    left: 0;
    right: 0;
    height: calc( var(--logo-h) + 20px + var(--baner-h) );
}
}


h3 a {
    color: var(--white);
    text-decoration: none;
}
.field--name-field-harakteristiki p, .field--name-weight{
        font-family: 'Manrope';
        font-style: normal;
        font-weight: 400;
        font-size: var(--fz-text);
        line-height: var(--lh);
        color: #FFFFFF;
        margin-bottom: 0.2rem;
    }
.field--name-price{
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate( 0, -50%);
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 800;
    font-size: var(--fz-slider-body);
    line-height: var(--lh);
    color: var(--white);
}
.group-content{
    position: relative;
}
.view-dokumenty .view-content{
    flex-direction: column;
    width: 100%;
}
.node--type-dokument.node--view-mode-teaser{
    display: flex;
}
.field--name-dynamic-token-fieldnode-skachat{
    display: flex;
    justify-content: space-between;
    width: 100%;
    .file-name, .file-download{
        font-family: 'Manrope';
        font-style: normal;
        font-weight: 800;
        font-size: var(--fz-text);
        line-height: var(--lh);
        text-transform: uppercase;
        color: #FFFFFF;
        text-decoration: none;
        p{margin: 0;}
    }
    .file-name:hover,  .file-download:hover{
        color: var(--rose);
        text-decoration: none;
    }
}