body {
    font-family: "Roboto", sans-serif;
    color: var(--color-main);
    font-size: 16px;
}


@media (min-width: 1200px) {
    .container-xl, .container-lg, .container-md, .container-sm, .container {
        max-width: 1170px;
    }
}

.region-sidebar-first, .region-sidebar-second, .region-footer, .region-content {
    padding: 0;
}


img {
    max-width: 100%;
    height: auto;

}

p {
    font-family: 'Roboto', sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.2;

}

h1, h2, section .block-title {
    font-family: "Roboto", sans-serif;
    font-weight: 600;
    font-style: normal;
}

h1 {
    font-size: 48px;
    line-height: 1;

}

h2, section .block-title {
    color: var(--color-active);
    font-size: 36px;
    text-transform: uppercase;
    margin-bottom: 50px;
    line-height: 1;

}

h4 {
    font-size: 16px;

}

h3, h4, h5, h6 {
    font-family: "Roboto", sans-serif;
    font-weight: 600;
    font-style: normal;

}

ul.sf-menu a, ul.sf-menu span.nolink {
    padding: 13px;
}

a {
    display: inline-flex;
    text-decoration: none;
    color: var(--color-link);
    word-break: break-word;

}

a:hover {
    color: var(--color-link-hover);
    text-decoration: none;
}


.nav {
    /* margin-left: -5px; */
    color: var(--color-main);
    --bs-nav-link-color: none;
    font-weight: 500;


}

.nav-link {
    padding: 20px 25px 16px;
    --bs-nav-link-color: none;
    --bs-nav-link-hover-color: none;

}

.nav-link:hover {
    color: var(--color-active);

}


.btn {
    font-size: 18px;
    line-height: 1;
    font-weight: 500;
    font-family: "Roboto", sans-serif;
    border-radius: 10px;
    padding: 20px;
    display: inline-flex;
    justify-content: center;
    align-items: center;

}

.btn-success, .btn-primary {
    color: var(--color-white);
    background-color: var(--color-active);
    border-color: var(--color-active);

}

.btn-success:hover, .btn-success:not(:disabled):not(.disabled):active, .btn-success:focus,
.btn-primary:hover, .btn-primary:not(:disabled):not(.disabled):active, .btn-primary:focus,
.btn-outline-success:hover, .btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:focus {
    color: #fff;
    background-color: var(--color-active-hover);
    border-color: var(--color-active-hover);
}

.btn-check:checked+.btn, .btn.active, .btn.show, .btn:first-child:active,
:not(.btn-check)+.btn:active, .btn.disabled, .btn:disabled, fieldset:disabled .btn {
    color: #fff;
    background-color: var(--color-active-hover);
    border-color: var(--color-active-hover);
}

.btn-outline-success {
    padding: 15px 36px;
    border: 3px solid;
    border-color: var(--color-active);
    color: var(--color-active);
}


.top_section, .about, .map-block {
    background: var(--color-bg);
}

section {
    padding: 80px 0;
}



/******************** main start******************************/

main {

    padding-bottom: 50px;
}


main h1 {
    font-size: 40px;
    margin-bottom: 40px;
    line-height: 1;
    /* color: var(--color-main); */
}

main h2 {
    font-size: 35px;
    margin-bottom: 40px;
    line-height: 1;

}

/******************** main end******************************/

/* ********************** top-bar start ********************** */

.top-bar {
    color: var(--color-main);
    border-bottom: 3px solid #387740;
    padding-top: 22px;
    padding-bottom: 16px;
}

.top-bar-col_3 .contact-item.phone {
    display: flex;
    align-items: center;
    gap: 7px;
}

.top-bar-col_3 .contact-item.mail {
    display: flex;
    align-items: center;
    gap: 12px;
}

.top-bar-col_4 {
    display: flex;
    align-items: center;
    gap: 36px;
}

.top-bar-col_4 img {
    width: 27px;
    height: 27px;
}


/* ********************** top-bar end ********************** */


/* ********************** top_section start ********************** */

.top_section {
    padding: 65px;
}

.top_section_left {
    color: var(--color-main);
}

.top_section_left h1 {
    margin-bottom: 30px;
}

.top_section_left .btn-success {
    max-width: 270px;
    width: 100%;
    margin-top: 34px;
    box-shadow: 0px 4px 38px rgba(21, 66, 1, 0.25);
}


.top_section_right img {
    width: 100%;
    height: 370px;
    border-radius: 0 123px 0 123px;
}

/* ********************** top_section end ********************** */


/* ********************** benefits start ********************** */
.benefits {
    padding-bottom: 0;
}

.benefits .view-preimushchestva-na-glavnoy .view-content {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;

}

.benefits .benefits-card .content {
    text-align: center;
}

.benefits .field--name-field-izobrazhenie-benefits img {
    margin-bottom: 28px;
}

.benefits .benefits-card p {
    font-weight: 600;
    margin-bottom: 0;
}

/* ********************** benefits end ********************** */


/* ********************** services start ********************** */
.services .view-content {
    display: flex;
    flex-wrap: wrap;
    margin-right: calc(0px - var(--gap));
    margin-left: calc(0px - var(--gap));
    justify-content: center;
}

.service {
    /* padding-right: var(--gap);
    padding-left: var(--gap); */
    /* padding: 30px;
    margin: 15px;
    width: 30%;
    height: 357px;
    position: relative; */
    position: relative;
    padding: 15px;

}

/* .services .content::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;

    border-radius: 15px;
    pointer-events: none;
} */

/* .services .content:hover::before {
    border-color: #000;
} */


.service .content {
    height: 100%;
    padding: 30px;
    border-radius: 15px;
    height: 357px;
    /* border: 2px solid transparent; */
}

/* .service .content:hover {

    border-color: #000;
    transition: border-color 0.3s ease;
} */

.service .views-field-title {
    font-size: 26px;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 40px;
}

.service .views-field-body p {
    font-size: 20px;
    font-weight: 400;
    line-height: 1.2;

}

.service:nth-child(odd) .content {
    background: var(--color-active);
    color: var(--color-white);
    border-radius: 15px;
}

.service:nth-child(even) .content {
    background: #F6F6F6;
    border-radius: 15px;
    color: var(--color-main);

}


/* .service:nth-child(-n+3) {
    margin-top: 0;
} */

.services .field-content img {
    position: absolute;
    right: 50px;
    top: 70%;
}

/* ********************** services end ********************** */

/* ********************** partners start ********************** */
.partners {
    padding: 0 0 80px;
}

.partners .view-content {
    display: flex;
    flex-wrap: wrap;
    margin-right: calc(0px - var(--gap));
    margin-left: calc(0px - var(--gap));
    justify-content: center;
}

.partner-card .content {
    height: 100%;
    padding: 30px;
    border-radius: 15px;
    height: 357px;
    /* border: 2px solid transparent; */
}

.partner-card {
    padding: 15px;
}

.partner-card h2 {
    font-size: 26px;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 40px;
}

/* card */

.partner-card:nth-child(odd) .content {
    background: var(--color-active);
    color: var(--color-white);
    border-radius: 15px;
}

.partner-card:nth-child(even) .content {
    background: #F6F6F6;
    border-radius: 15px;
    color: var(--color-main);
}

.partner-card:nth-child(odd) h2 {
    color: var(--color-white);
}

.partner-card:nth-child(even) h2 {
    color: var(--color-main);
}

.partner-card .node--type-nashi-partnery {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.partner-card .file--mime-application-pdf {
    margin-top: auto;
}


/* .file--mime-application-pdf {
    width: 100%;
} */
.partners .view-content .partner-card .file--mime-application-pdf a {
    padding: 15px 0px;
    width: 100%;
    text-align: center;
    display: block;
    color: var(--color-white);
    border: 3px solid;
    border-color: var(--color-white);
    background-color: var(--color-active);
    border-radius: 15px;

}

.partners .view-content .partner-card .file--mime-application-pdf a:hover {
    background-color: var(--color-active-hover);

}

.partners .view-content .partner-card:nth-child(even) .file--mime-application-pdf a {
    color: var(--color-active);
    border-color: var(--color-active);
    background-color: #f6f6f6;

}

.partners .view-content .partner-card:nth-child(even) .file--mime-application-pdf a:hover {

    border-color: var(--color-white);
    background-color: var(--color-active);
    color: var(--color-white);
}




/* ********************** partners end ********************** */

/* ********************** form-block start ********************** */
.form-block {
    padding-top: 157px;
    padding-bottom: 157px;
    background-image: linear-gradient(rgba(49, 42, 42, 0.46), rgba(49, 42, 42, 0.46)), url(../image/form.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

.form-block .block-title {
    margin-bottom: 30px;
}

.form-block .block-title, .form-block p {
    color: var(--color-white);
    text-align: center;
}

.form-block .form-type-processed-text p {
    font-size: 26px;
    font-weight: 400;
    margin-bottom: 66px;
}

.form-block .js-form-item.form-item.js-form-type-textfield.form-type-textfield.js-form-item-imya.form-item-imya.form-no-label,
.form-block .js-form-item.form-item.js-form-type-textfield.form-type-textfield.js-form-item-telefon.form-item-telefon.form-no-label {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.form-item--error-message {
    color: red;
}

.form-block .form-control {
    height: 55px;
    width: 100%;
    padding: 17px 25px;
    line-height: 100%;
    color: var(--color-white);
    margin-top: 0;
    margin-bottom: 15px;
    background: transparent;
    border: 2px solid var(--color-white);
    ;

}

.form-block .form-control::placeholder {
    color: var(--color-white);

}

.form-block .form-wrapper.fcontainer-wrapper {
    display: block;
    width: 100%;
    max-width: 420px;
    margin-left: auto;
    margin-right: auto;
}

.form-block .form-wrapper {
    display: flex;
    justify-content: center;

}

.form-block .form-submit {
    width: 100%;

}

.form-block .webform-submission-ostavte-zayavku-dlya-konsultacii-form {
    position: relative;
}

.form-block .form-type-checkbox {
    display: flex;
    align-items: flex-start;
    text-align: left;
    color: #fff;

}

/* ................... оформление чекбокса.................... */

.form-block input[type="checkbox"i] {

    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 14px;
    height: 14px;
    border: 1.4px solid #fff;
    position: relative;
    cursor: pointer;
    /* margin: 0 12px 0 0; */
    vertical-align: middle;
    overflow: visible;
    /* Разрешаем выход за границы */
    background-color: transparent;
}

.form-block input[type="checkbox"]:checked {
    background-color: transparent;
    border-color: #fff;
}

.form-block input[type="checkbox"]:checked::before {
    content: '';
    position: absolute;
    top: 40%;
    left: 70%;
    transform: translate(-50%, -50%);
    width: 14px;
    height: 10px;
    background-image: url(../image/checked.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 1;
}

.form-block .description {
    font-size: 12px;
    line-height: 1;
}

.form-block .description a {
    color: #fff;
}

.form-block .description a:hover {
    color: var(--color-link-hover);

}

/* ................... оформление чекбокса.................... */


.form-type-checkbox {
    display: flex;
    align-items: center;
    /* gap: 10px; */
    margin: 15px 0;
}


input[type="checkbox"i] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 16px;
    height: 14px;
    border: 2px solid var(--color-active);
    position: relative;
    cursor: pointer;
    margin: 0 12px 0 0;
    vertical-align: middle;
    overflow: visible;
    background-color: transparent;
}

input[type="checkbox"]:checked {
    background-color: var(--color-active);
}

input[type="checkbox"]:checked::before {
    content: '';
    position: absolute;
    top: 40%;
    left: 70%;
    transform: translate(-50%, -50%);
    width: 14px;
    height: 10px;
    background-image: url(../image/checked.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 1;
}

/* ********************** form-block end ********************** */



/* ********************** about start ********************** */


.about .node--view-mode-full .field--name-body img {
    max-width: 400px;
    width: 100%;
    height: auto;
    border-radius: var(--border-radius);
    margin-right: 70px;
    margin-left: 0;
}


.about .field--name-body h3 {
    font-size: 32px;
    font-weight: 400;
    color: var(--color-main);
    line-height: 1.2;
    margin-bottom: 20px;

}

.about .field--name-body p {
    font-size: 17px;
    color: var(--color-main);
    line-height: 1.2;
    margin-bottom: 20px;
}


.ds-2col {
    display: flex;
}

.ds-2col>.group-left, .ds-2col>.group-right {
    float: none;
}

/* .about .ds-2col>.group-left {
    width: 35%;

}

.about .ds-2col>.group-right {
    width: 65%;
    padding-left: 70px;
} */

/* ********************** about end ********************** */


/* ********************** slider start ********************** */
.slider {
    padding-top: 26px;
    padding-bottom: 0;
}

.slider img {
    border-radius: var(--border-radius);
    aspect-ratio: auto;
    object-fit: cover;
    max-height: 453px;
    width: 100%;
}

/* 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: 10px;
    list-style: none;
    margin: 10px 0;
    position: absolute;
    bottom: 15px;
    left: 50%;
    transform: translateX(-50%);
}

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

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

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

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-slider.svg");
    transform: rotate(-90deg);
}

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

#scrollToTop {
    width: 48px;
    height: 48px;
    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 */


/* ********************** slider end ********************** */


/* ********************** gallery start ********************** */
.gallery {
    padding-bottom: 50px;
}


.gallery .block-title {
    text-align: center;
}

.gallery .view-gallery-page .views-infinite-scroll-content-wrapper,
main .view-gallery-page .views-infinite-scroll-content-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.gallery .view-gallery-page .photo-item .field-content,
main .view-gallery-page .photo-item .field-content {
    padding-bottom: 30px;
    padding-left: 30px;
}

.gallery .view-gallery-page .photo-item .field-content>a>img,
main .view-gallery-page .photo-item .field-content>a>img {
    /* Получаем квадратное изображение */
    width: 350px;
    /*Высота должна быть задана*/
    height: 350px;
    /* Параметры сохранят пропорции*/
    aspect-ratio: auto;
    object-fit: cover;
    transition: transform 0.3s ease;
    border-radius: var(--border-radius);
}

.gallery .view-gallery-page .photo-item .field-content>a>img:hover,
main .view-gallery-page .photo-item .field-content>a>img:hover {
    transform: scale(1.1);
}


/* ********************** gallery end ********************** */




/* ********************** map_contacts start ********************** */

.map .region-map {
    border-radius: var(--border-radius);
    filter: drop-shadow(0px 2px 5px rgba(46, 46, 46, 0.22));
    overflow: hidden;
}

.map-block h4 {
    margin-top: 36px;
    margin-bottom: 40px;
    color: var(--color-main);
    font-size: 28px;
    line-height: 1;
}

.map-block .contacts {
    line-height: 1;
    font-size: 24px;
}


.map-block .contacts .contact-item.phone,
.contacts .contact-item.mail, .contacts .contact-item.address {
    margin-bottom: 20px;
}

.map-block .socials img {
    width: 100%;
    height: 37px;
    margin-top: 13px;
}

/* ********************** map_contacts end ********************** *





/* ********************** footer start ********************** */
.footer {
    background-color: #2C2C2C;
    color: var(--color-white);
    padding-top: 50px;
    padding-bottom: 28px;
}


.footer .footer_1 h4 {
    margin-top: 15px;
    margin-bottom: 15px;

}

.footer .footer_1 .copyrights {
    margin-top: 25px;
}

.footer .footer_1 .copyrights, .copyrights h4 {
    font-weight: 400;
    color: #CDC8C8;
    line-height: 11px;
}

.footer .footer_1 .copyrights a {
    font-weight: 400;
    line-height: 11px;
    color: #9F9F9F;

}

.footer .footer_1 .copyrights a:hover {
    color: var(--color-link-hover);
    text-decoration: none;
}



.footer .footer_2 ul {
    display: flex;
    flex-direction: column;
    color: var(--color-white);

}


footer .footer_2 .nav-link {
    padding: 0 0 15px;
    line-height: 1;
}

footer .footer_3 .footer-contacts {
    line-height: 1;
}

footer .footer_3 .footer-contacts a {
    color: #fff;
}

footer .footer_3 .footer-contacts a:hover {
    color: var(--color-link-hover);
}

footer .footer_3 .street {
    margin-left: 28px;
}

footer .footer_3 .footer-contacts .contact-item.phone, .footer-contacts .contact-item.mail, .footer-contacts .street {
    padding-bottom: 15px;
}

footer .footer_3 .footer-contacts img {
    margin-right: 10px;
}

footer .footer_3 .socials>img {
    width: 24px;
    height: 24px;
}



footer .vesta {
    text-align: center;
    margin-top: 65px;

}

footer .vesta a {
    text-align: center;
    color: #CDC8C8;
}

footer .vesta a:hover {
    color: var(--color-link-hover);
}

footer .footer_4 {
    text-align: right;
    margin-top: 52px;
}

footer .footer_4 .btn-success {
    padding: 13px 14px;

}


/* ********************** footer end ********************** */



/*HEADER STYLES*/

.header-bottom {
    background: #ffffff;
}

.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%;
    background: #f6f6f6;
    box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3);
    color: #000;
    padding: 5px 5px;
    z-index: 50;
}

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


#header-mob a {
    color: #000;
}

.offcanvas {
    --bs-offcanvas-bg: #ffffff;
}

.offcanvas .offcanvas-title {
    color: #000;
    text-transform: uppercase;
    font-size: 20px;
    font-weight: 500;
}

.region-navigation .nav>.nav-item:hover .dropdown-menu {
    display: block;
    top: 100%;
    left: 0;
}





/*HEADER 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;
}




/* 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) {} */


/******************** MOBILE MENU END *********************/
.offcanvas-header {
    display: flex;
    align-items: center;
    padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
    border-bottom: 3px solid #387740;
    box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.3);
}

.offcanvas .nav-link:hover {
    color: var(--color-active);
    border-bottom: 3px solid #387740;
    /* transition: background-color 0.3s ease-in; */
}


/*........................ боковое мобильное меню - навигация starn..........................*/

.offcanvas img {
    max-width: 80%;
    height: auto;
}

.offcanvas .contact-item {
    margin-top: 20px;
    padding-bottom: 15px;
}

/* header .col-logo img {
    width: 70%;
    height: auto;
} */

.header-mob .col-phone {
    margin-left: auto;
}

/* иконки соцсети */

.msngrs a img {
    margin-left: 10px;
    height: 20px;
}

.header-mob .col-logo img {
    width: 75%;
    height: auto;
}

/*........................ боковое мобильное меню - навигация starn..........................*/


/* *** ADAPTIVE *** */
@media screen and (max-width: 1998px) {
    h2, section .block-title {
        font-size: 30px;
    }

    h3, h4, h5, h6 {
        font-size: 16px;
    }

    .top-bar {
        font-size: 15px;
    }

    .top-bar .top-bar-col_1 img {
        width: 80%;
        height: auto;
    }

    .top-bar .top-bar-col_4 {
        gap: 15px;
    }


    footer .block-title, div#block-vesta-theme-osnovnayanavigaciya-menu {
        font-size: 16px;
    }

    footer {
        font-size: 14px;
    }

}

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

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

    main {
        margin-top: 100px;
    }

    section {
        padding: 60px 0;
    }

    h1 {
        font-size: 45px;
    }

    h1, h2, h3, h4, h5, h6, p, .views-field-title, .block-title {
        word-break: break-word;
    }

    .top_section {
        margin-top: 65px;
    }

    .top_section img {
        display: none;
    }

    .benefits .benefits-card {
        text-align: center;
        margin-bottom: 30px;

    }

    .form-block {
        padding-top: 140px;
        padding-bottom: 140px;

    }

    .about .field--name-body h3 {
        font-size: 26px;

    }


    .form-block .form-type-processed-text p {
        font-size: 22px;

    }

    .about .group-right h3 {
        font-size: 32px;

    }

    .slider img {
        height: 353px;
        width: 100%;
    }

    .gallery .view-gallery-page .photo-item .field-content>a>img,
    main .view-gallery-page .photo-item .field-content>a>img {
        width: 250px;
        height: 250px;

    }

    .map-block .contacts {
        font-size: 20px;
    }

    .map-block .map_contacts {
        margin-bottom: 30px;
    }

    .map-block h4 {
        margin-top: 0;
    }

    footer {
        padding-top: 0;

    }

    footer .footer_3 .footer-contacts img {
        margin-right: 5px;
    }

    .about .node--view-mode-full .field--name-body img {

        margin-right: 20px;

    }

}

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

    #scrollToTop {
        right: 45px;
    }

    .container, .container-sm {
        max-width: 100% !important;
        width: 100% !important;
        padding-left: 30px;
        padding-right: 30px;
    }

    main h1 {
        font-size: 35px;
    }

    h1 {
        font-size: 40px;
    }

    .top_section {
        padding: 60px;
    }

    .form-block {
        padding-bottom: 100px;
    }

    .about .node--view-mode-full .field--name-body img {

        margin-right: auto;
        margin-left: auto;
        float: none;
        display: block;
    }

    .map-block {
        padding: 60px;
    }

    .map-block h4 {
        font-size: 26px;
    }

    .map-block .contacts {
        font-size: 18px;
    }

    .map-block .socials img {
        max-width: 80%;
    }

    footer {
        font-size: 13px;

    }

    footer .footer_3 .socials>img {
        width: 20px;
        height: 20px;
    }
}



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


    h2, section .block-title {
        margin-bottom: 28px;
    }

    section {
        padding: 40px 0;
    }

    main h1 {
        font-size: 30px;
    }

    #header-mob {
        padding: 10px 5px;

    }

    header .col-logo img {
        width: 80%;
        height: auto;
    }

    header .contact-item {
        font-size: 13px;
    }

    .top_section {
        padding: 40px 20px;
    }

    h1 {
        font-size: 34px;
    }

    .form-block {

        padding: 60px 10px;
    }

    .form-block .form-type-processed-text p {
        font-size: 22px;
        margin-bottom: 35px;
    }

    .gallery .view-gallery-page .views-infinite-scroll-content-wrapper,
    main .view-gallery-page .views-infinite-scroll-content-wrapper {

        margin-right: 22px;
    }

    .gallery {
        padding-bottom: 20px;
    }

    .map-block {
        padding: 40px 10px;
    }

    footer .footer_3 .footer-contacts {
        margin-top: 52px;
    }

    footer .footer_4 {
        text-align: left;
        margin-top: 52px;
    }
}

@media (min-width: 768px) {}



@media (min-width: 992px) {
    .col-lg-2-5 {
        flex: 0 0 auto;
        width: 20%;
    }
}


@media screen and (max-width: 470px) {
    .about-top .field--name-body h2 {
        font-size: 40px;
        margin-bottom: 45px;
    }

    .about .about-descr {
        /* flex-wrap: wrap-reverse;
            justify-content: end; */
        flex-wrap: wrap;
        justify-content: end;
        margin-bottom: 20px;
    }

    .about .region.region-about-cards {
        gap: 20px;
        flex-direction: column;
    }

    .about .about-cards {
        margin: 0;
    }

    .delivery a.more-link.more-link-red {
        top: -64px;
    }

    .delivery .field--type-text-with-summary {
        margin-top: 80px;
    }

    .view-gallery-page .photo-item .field-content>a {
        border-radius: 15px;
    }

}