/* ====== Specification ====== */

body {
    font-family: "Montserrat", sans-serif;
    background: #F6F6F6;
    font-size: 16px;
    color: #1E1E1E;
    padding: 0;
    margin: 0;
}

.container {
    width: 1290px;
    margin: 0 auto;
    padding: 0;
}

div,
p,
form,
input,
a,
span,
button,
ul,
li {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

p {
    font-family: "Montserrat", sans-serif;
    font-size: 16px;
    color: #1E1E1E;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: #1E1E1E;
    padding: 0;
    margin: 0;
}

h1 {}

h2 {}

h3 {}

a {
    font-family: "Montserrat", sans-serif;
    font-size: 16px;
    color: #1E1E1E;
    text-decoration: none;
}

a:hover,
a:active {
    text-decoration: none;
}

button,
button:hover,
button:focus,
button:active,
input,
input:hover,
input:focus,
input:active,
textarea,
textarea:hover,
textarea:focus,
textarea:active {
    outline: none;
}

input[type="submit"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* ====== Header ====== */


/* btn */

.btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 240px;
    height: 50px;
    font-size: 18px;
    font-weight: 600;
    border-radius: 30px;
    background: rgb(16 43 81);
    color: #fff;
    cursor: pointer;
    transition: 0.3s;
}

.btn:hover {
    background: #ffc235;
}

.btn_stroke {
    border: 2px solid #1E1E1E;
    background: transparent;
    color: #1E1E1E;
}

.btn_stroke:hover {
    background: #1E1E1E;
    color: #fff;
}


/* Header */

.header {
    background: #fff;
    border-bottom: 1px solid rgba(239, 239, 239, 1);
    position: fixed;
    /* top: 0; */
    left: 0;
    right: 0;
    width: 100%;
    z-index: 999;
}

.header-margin {
    height: 80px;
}

.header .container {
    padding: 13px 0;
    position: relative;
}

.header-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.menu-contacts {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-left: 58px;
}

.nav {
    display: flex;
    align-items: center;
}

.menu-catalog {
    position: relative;
}

.menu-catalog-btn {
    width: 144px;
    height: 44px;
    border-radius: 15px;
    background: rgb(16 43 81);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: 0.3s;
}

.menu-catalog-btn:hover {
    background: #FFC426;
}

.menu-catalog-btn-icon {
    min-width: 15px;
    height: 14px;
    margin-right: 10px;
    position: relative;
}

.menu-catalog-btn-icon .line {
    background: #fff;
    width: 100%;
    height: 2px;
    border-radius: 2px;
    position: absolute;
}
.menu-catalog-btn-icon .line-1 {
    top: 0;
}
.menu-catalog-btn-icon .line-2 {
    top: 50%;
    margin-top: -1px;
}
.menu-catalog-btn-icon .line-3 {
    top: 100%;
    margin-top: -2px;
}

.menu-catalog-btn span {
    font-size: 20px;
    font-weight: 600;
    color: #fff;
}

.cat-menu-nav {
    position: absolute;
    top: 100%;
    margin-top: 18px;
    left: 0;
    background: #fff;
    z-index: 100;
    display: none;
}

.menu-catalog:hover .cat-menu-nav {
    display: block;
}

.cat-menu-nav::after {
    content: '';
    position: absolute;
    bottom: 100%;
    height: 20px;
    width: 100%;
}

.cat-menu {
    /* padding: 10px 0; */
    border: 1px solid rgba(239, 239, 239, 1);
}

.cat-menu li {
    display: block;
    
}

.cat-menu li a {
    display: block;
    padding: 10px 20px;
    font-weight: 500;
    white-space: nowrap;
    transition: 0.3s;
}

.cat-menu li:hover>a {
    background: rgb(16 43 81);
    color: #fff;
}

.cat-menu li ul {
    display: none;
    position: relative;
}

.cat-menu li ul::before {
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    height: 50px;
    width: 100%;
    z-index: 100;
    margin-left: -2px;
}

.cat-menu>li {
    /* position: relative; */
}

.cat-menu>li:hover > ul {
    display: block !important;
    position: absolute;
    left: 100%;
    top: 0;
    background: #fff;
    border: 1px solid rgba(239, 239, 239, 1);
    columns: 2;
}





.menu {
    display: flex;
    margin-left: 60px;
}

.menu>li {
    display: block;
    margin-right: 48px;
    cursor: pointer;
}

.menu>li a {
    font-weight: 500;
    transition: 0.3s;
}

.menu>li:hover>a {
    color: rgb(16 43 81);
}



.menu>li.menu-item-has-children {
    position: relative;
    margin-right: 30px;
    padding-right: 18px;
}

.menu>li.menu-item-has-children::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -3px;
    width: 12px;
    height: 7px;
    background: url(../img/menu-angle-icon.svg) no-repeat center center;
    pointer-events: none;
}


.menu>li ul {
    display: none;
    position: absolute;
    top: 49.5px;
    min-width: 180px;
    background: #fff;
    margin-left: -20px;
    border: 1px solid rgba(239, 239, 239, 1);
    /* padding: 10px 0; */
}

.menu>li ul::after {
    content: '';
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    width: 100%;
    height: 60px;
}

.menu>li:hover>ul {
    display: block;
    animation: 0.5s animeSubMenu;
}

.menu>li ul li {
    display: block;
}

.menu>li ul li a {
    display: block;
    padding: 10px 20px;
    white-space: nowrap;
    font-size: 15px;
}

.menu>li ul li:hover a {
    background: rgb(16 43 81);
    color: #fff;
}

@keyframes animeSubMenu {
    0% {transform: translateY(15px); opacity: 0;}
    100% {transform: translateY(0px); opacity: 1;}
}


.header-contacts {

}

.header-contacts__link {
    display: flex;
    align-items: center;
}

.header-contacts__link:first-child {
    margin-bottom: 7px;
}

.header-contacts__link svg {
    margin-right: 5px;
    stroke: #1E1E1E;
    transition: 0.3s;
}

.header-contacts__link span {
    font-weight: 500;
    font-variant-numeric: tabular-nums;
    transition: 0.3s;
}

.header-contacts__link:hover {
    /* opacity: 0.8; */
    color: rgb(16 43 81);
}

.header-contacts__link:hover svg {
    /* stroke: rgb(16 43 81); */
    /* opacity: 0.8; */
}

.header-contacts-mail {
    position: absolute;
    top: 100%;
    right: -30px;
    padding: 10px 30px;
    background: #fff;
    border: 1px solid rgba(239, 239, 239, 1);
    border-radius: 0px 0px 20px 20px;
}

.header-contacts-mail .header-contacts__link {
    margin-bottom: 0;
}



/* offer */

.offer {
    padding: 90px 0 55px;
}

.offer-flex {
    display: flex;
    margin-bottom: 30px;
}

.offer__photo {
    max-width: 850px;
    width: 100%;
    /* height: 430px; */
    border-radius: 20px;
    margin-right: 30px;
}

.offer-title-label {
    display: inline-block;
    max-width: 445px;
    padding: 30px;
    background: #fff;
    border-radius: 20px;
    border: 2px solid #EFEFEF;
    margin-top: -40px;
    margin-left: 30px;
}

.offer__title {
    position: relative;
    padding-left: 25px;
    font-size: 36px;
    font-weight: 700;
}

.offer__title::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 5px;
    height: 100%;
    border-radius: 3px;
    background: #6a6a6c;
}

.offer__title span {
    color: rgb(16 43 81);
}

.offer-wrap {

}

.offer-item {
    display: flex;
    align-items: center;
    max-width: 410px;
    height: 90px;
    background: #fff;
    padding: 0 25px;
    border-radius: 20px;
    margin-bottom: 30px;
}

.offer-item img {
    display: block;
    width: 40px;
    margin-right: 20px;
}

.offer-item__title {
    font-size: 20px;
    font-weight: 600;
}

.offer-item__title span {
    color: rgb(16 43 81);
}

.offer__btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 70px;
    font-size: 24px;
    font-weight: 600;
    color: #fff;
    background: rgb(16 43 81);
    border-radius: 20px;
}

.offer-price {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 45px 40px;
    background: #fff;
    border-radius: 20px;
    overflow: hidden;
}

.offer-price-wrap {
    position: relative;
    display: flex;
    align-items: center;
    z-index: 5;
}

.offer-price__title {
    max-width: 310px;
    font-size: 28px;
    font-weight: 600;
    margin-right: 50px;
}

.offer-price__text {
    max-width: 280px;
    font-size: 20px;
}

.offer-price-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 70px;
    padding: 0 30px;
    border: 2px solid rgb(16 43 81);
    border-radius: 50px;
    transition: 0.3s;
}

.offer-price-btn__arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    background: rgb(16 43 81);
    border-radius: 50%;
    transition: 0.3s;
}

.offer-price-btn__arrow svg {
    display: block;
    fill: #fff;
    transition: 0.3s;
}

.offer-price-btn-wrap {
    display: flex;
    align-items: center;
    margin-right: 25px;
    transition: 0.3s;
}

.offer-price-btn-wrap svg {
    stroke: rgb(16 43 81);
    margin-right: 15px;
    transition: 0.3s;
}

.offer-price-btn-wrap span {
    font-size: 18px;
    font-weight: 600;
    color: rgb(16 43 81);
    transition: 0.3s;
}

.offer-price-btn:hover {
    background: rgb(16 43 81);
    color: #fff;
}

.offer-price-btn:hover span {
    color: #fff;
}

.offer-price-btn:hover svg {
    stroke: #fff;
}

.offer-price-btn:hover .offer-price-btn__arrow {
    background: #fff;
}

.offer-price-btn:hover .offer-price-btn__arrow svg {
    fill: rgb(16 43 81);
}

.offer-price__orn {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    height: 100%;
    pointer-events: none;
    z-index: 3;
}

.offer-price__pipes {
    position: absolute;
    bottom: 0;
    right: 319px;
    width: 359px;
    height: 160px;
    pointer-events: none;
    z-index: 3;
}


/* about */

.about {
    padding: 55px 0;
}

.about-flex {
    display: flex;
    justify-content: space-between;
}

.about-wrap {
    max-width: 520px;
}

.about-title-label {
    display: inline-block;
    padding: 19px 30px;
    background: #fff;
    border: 2px solid #EFEFEF;
    border-radius: 20px;
    margin-left: 30px;
}

.about__title {
    position: relative;
    display: block;
    font-size: 32px;
    font-weight: 700;
    padding-left: 25px;
}

.about__title::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 5px;
    height: 100%;
    border-radius: 3px;
    background: #6a6a6c;
}

.about-content {
    padding: 60px 30px 30px;
    background: #fff;
    border-radius: 20px;
    margin-top: -40px;
}

.about__text {
    margin-bottom: 25px;
}

.about__text p {
    margin-bottom: 20px;
}

.about__text p:last-child {
    margin-bottom: 0;
}

.about__photo {
    max-width: 740px;
    width: 100%;
    border-radius: 20px;
}


/* products */

.products {
    padding: 55px 0;
}

.title-label {
    display: inline-block;
    max-width: 1050px;
    padding: 19px 30px;
    background: #fff;
    border: 2px solid #EFEFEF;
    border-radius: 20px;
    margin-left: 30px;
}

.title-label_button {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 30px;
    max-width: 760px;
    width: 100%;
}

.title-label_big {
    padding: 17px 30px;
}

.title-label_big .title-label__title {
    font-size: 36px;
}

.title-label__title {
    position: relative;
    display: block;
    font-size: 32px;
    font-weight: 700;
    padding-left: 25px;
}

.title-label__title::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 5px;
    height: 100%;
    border-radius: 3px;
    background: #6a6a6c;
}

.products-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    padding: 70px 30px 30px;
    background: #fff;
    border-radius: 20px;
    margin-top: -40px;
}

.products-card {
    position: relative;
    display: flex;
    justify-content: space-between;
    padding: 25px 20px 25px 35px;
    border-radius: 20px;
    border: 2px solid #EFEFEF;
    overflow: hidden;
}

.products-card-wrap {
    max-width: 260px;
    width: 100%;
}

.products-card__title {
    position: relative;
    display: block;
    width: 100%;
    font-size: 24px;
    font-weight: 600;
    padding-bottom: 15px;
    margin-bottom: 27px;
    transition: 0.3s;
}

.products-card__title::after {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    content: "";
    height: 2px;
    background: #6a6a6c;
}

.products-card__title:hover {
    color: rgb(16 43 81);
} 

.products-card__links {
    display: block;
}

.products-card__links li {
    position: relative;
    display: block;
    font-weight: 500;
    padding-left: 14px;
    margin-bottom: 6px;
}

.products-card__links li::before {
    position: absolute;
    top: 8px;
    left: 0;
    content: "";
    width: 4px;
    height: 4px;
    background: #1E1E1E;
    border-radius: 50%;
}

.products-card__links li:last-child {
    margin-bottom: 0;
}

.products-card__links li a {
    transition: 0.3s;
}

.products-card__links li a:hover {
    color: rgb(16 43 81);
}

.products-card__photo {
    position: relative;
    display: block;
    min-width: 250px;
    width: 250px;
    min-height: 250px;
    height: 250px;
    z-index: 5;
}

.products-card_services .products-card-wrap {
    max-width: 250px;
}

.products-card-poly-wrap {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    filter: drop-shadow(-7px 0 #FFCF4D) drop-shadow(-5px 0 #fff) drop-shadow(-4px 0 #FFCF4D);
}


.products-card_services .products-card__polygon {
    /* min-width: 294px; */
    max-width: 294px;
    height: 100%;
    object-fit: cover;
    clip-path: polygon(15% 0, 100% 0, 100% 100%, 0% 100%);
}

.products-card__orn {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    z-index: 3;
}


/* partners */

.partners {
    padding: 55px 0;
    overflow: hidden;
}

.partners-wrap {
    display: flex;
    align-items: center;
}

.partners-item {
    display: flex;
}

.partners__logo {
    display: flex;
    align-items: center;
    justify-content: center;
}

.partners-item img {
    display: block;
    max-width: 220px;
    max-height: 60px;
    margin: 0 35px;
}

.marquee {
    animation: scroll 45s linear infinite;
}

@keyframes scroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(calc(-100% - 20px));
    }
}


/* advantages */

.advantages {
    padding: 55px 0;
}

.advantages-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    padding: 70px 30px 30px;
    background: #fff;
    border-radius: 20px;
    margin-top: -40px;
}

.advantages-card {
    padding: 25px 28px;
    border-radius: 20px;
    border: 2px solid #EFEFEF;
}

.advantages-card-flex {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding-bottom: 20px;
    margin-bottom: 22px;
}

.advantages-card-flex::after {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    content: "";
    width: 100%;
    height: 2px;
    background: #6a6a6c;
}

.advantages-card__num {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 50px;
    width: 50px;
    height: 50px;
    background: rgb(16 43 81);
    border-radius: 50%;
    font-size: 36px;
    font-weight: 700;
    color: #fff;
    margin-right: 20px;
}

.advantages-card__title {
    font-size: 18px;
    font-weight: 700;
}

.advantages-card__text {
    font-size: 16px;
    font-weight: 500;
}


/* reviews */

.reviews {
    padding: 55px 0;
}

.reviews-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    padding: 70px 30px 30px;
    background: #fff;
    border-radius: 20px;
    margin-top: -40px;
}

.reviews-card {
    position: relative;
    display: flex;
    justify-content: space-between;
    padding: 30px;
    border-radius: 20px;
    border: 1px solid #EFEFEF;
}

.reviews-card__photo {
    position: relative;
    display: block;
    /* max-width: 290px;
    max-height: 390px; */
    z-index: 5;
}

.reviews-card__photo img {
    display: block;
    max-width: 290px;
    /* width: 100%; */
    max-height: 390px;
    border-radius: 20px;
}

.reviews-card-content {
    position: relative;
    max-width: 250px;
    width: 100%;
    z-index: 5;
}

.reviews-card__title {
    position: relative;
    font-size: 20px;
    font-weight: 700;
    padding-bottom: 15px;
    margin-bottom: 17px;
}

.reviews-card__title::after {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    content: "";
    width: 100%;
    height: 2px;
    background: #6a6a6c;
}

.reviews-card__text {
    
}

.reviews-card__text p {
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 15px;
}

.reviews-card__text p:last-child {
    margin-bottom: 0;
}

.reviews-card__orn {
    position: absolute;
    left: 0;
    bottom: 0;
    /* height: 100%; */
    pointer-events: none;
    z-index: 3;
}


/* contacts */

.contacts {
    padding: 55px 0;
}

.contacts-flex {
    display: flex;
    justify-content: space-between;
}

.contacts-wrap {
    max-width: 740px;
    width: 100%;
}

.contacts-content {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px 60px;
    padding: 80px 40px 40px;
    background: #fff;
    border-radius: 20px;
    margin-top: -40px;
}

.contacts-item {

}

.contacts-item__name {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 15px;
}

.contacts-item__value {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 10px;
}

.contacts-item__value:last-child {
    margin-bottom: 0;
}

.contacts-item__value a {
    transition: 0.3s;
}

.contacts-item__value a:hover {
    color: rgb(16 43 81);
}

.contacts-item-socs {
    display: flex;
}

.contacts-item__soc {
    display: block;
    margin-right: 15px;
    transition: 0.3s;
}

.contacts-item__soc svg {
    display: block;
    width: 36px;
    height: 36px;
    fill: rgb(16 43 81);
    transition: 0.3s;
}

.contacts-item__soc:hover svg {
    opacity: 0.6;
}

.contacts-form {
    display: flex;
    flex-direction: column;
    max-width: 520px;
    width: 100%;
    padding: 35px;
    background: #fff;
    border-radius: 20px;
}

.contacts-form__title {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 30px;
}

.contacts-form__input {
    width: 100%;
    height: 50px;
    padding: 0 30px;
    background: #F1F1F1;
    border: none;
    border-radius: 30px;
    font-size: 18px;
    font-weight: 500;
    color: #1e1e1e;
    margin-bottom: 20px;
}

.contacts-form__input:last-child {
    /* margin-bottom: 25px; */
}

.contacts-form__input::placeholder {
    font-family: "Montserrat", sans-serif;
    color: #7A7A7A;
}

.contacts-form__btn {
    width: 100%;
    font-family: "Montserrat", sans-serif;
    font-size: 20px;
    font-weight: 600;
    border: none;
    margin-bottom: 20px;
}

.contacts-form__desc {
    max-width: 390px;
    font-size: 14px;
    text-align: center;
    margin: 0 auto;
}

.contacts-form__desc a {
    font-size: 14px;
    color: rgb(16 43 81);
    transition: 0.3s
}

.contacts-form__desc a:hover {
    opacity: 0.6;
}


/* map-sec */

.map-sec {
    padding: 55px 0 110px;
}

.map {
    width: 100%;
    height: 450px;
    border-radius: 20px;
    overflow: hidden;
    background: #DBDBDB;
}

.map img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}


.map div {
    width: 100%;
    height: 100%;
}

.map iframe {
    width: 100%;
    height: 100%;
}





/* Footer */

.footer {
    background: rgba(67, 67, 67, 1);
    padding-top: 40px;
}

.footer-row {
    display: flex;
    justify-content: space-between;
    padding-bottom: 40px;
}

.footer-col {
    max-width: 190px;
    width: 100%;
}

.footer-col_first {
    max-width: 410px;
    margin-right: 30px;
}

.footer-logo {
    max-width: 182px;
    display: block;
    margin-bottom: 40px;
}

.footer-logo img {
    display: block;
    width: 100%;
}

.mailing-list {

}

.mailing-list__title {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 15px;
    color: #fff;
}

.mailing-form {
    display: flex;
    margin-bottom: 15px;
}

.mailing-form>p {
    display: flex;
}

.mailing-form__input {
    max-width: 250px;
    width: 100%;
    height: 40px;
    background: #fff;
    border-radius: 20px;
    border: 0;
    padding: 0 20px;
    margin-right: 20px;
    font-size: 14px;
    color: rgba(30, 30, 30, 1);
    font-weight: 500;
}

.mailing-form__inputa::placeholder {
    font-size: 14px;
    color: rgba(30, 30, 30, 1);
    font-weight: 500;
}

.mailing-form__btn {
    width: 140px;
    height: 40px;
    border: 0;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.3s;
}

.mailing-form__btn:hover {
    background: #FFC426;
}

.mailing-list__privacy {
    font-size: 10px;
    color: #fff;
}

.mailing-list__privacy a {
    font-size: 10px;
    color: rgb(16 43 81);
    transition: 0.3s;
}

.mailing-list__privacy a:hover {
    text-decoration: underline;
}

.footer-col_menu {

}

.footer-menu__title {
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 20px;
}

.footer-menu {

}

.footer-menu li {
    display: block;
    margin-bottom: 15px;
}

.footer-menu li:last-child {
    margin-bottom: 0;
}

.footer-menu li a {
    font-size: 14px;
    color: rgba(181, 181, 181, 1);
    transition: 0.3s;
}

.footer-menu li a:hover {
    color: rgba(255, 214, 103, 1);
}

.footer-copy-privacy {
    padding: 25px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top: 2px solid rgba(255, 214, 103, 1);
}

.copy {
    font-size: 12px;
    color: #fff;
}

.footer-privacy {
    font-size: 12px;
    color: #fff;
    transition: 0.3s;
}

.footer-privacy:hover {
    color: rgb(16 43 81);
}



/* breadcrumbs */

.breadcrumbs-block {
    
}

.breadcrumbs {
    display: inline-flex;
    align-items: center;
    height: 40px;
    padding: 0 30px;
    background: #EBEBEB;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    margin-left: -30px;
}

.breadcrumbs a {
    max-width: 250px;
    font-size: 12px;
    font-weight: 500;
    color: #7A7A7A;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    transition: 0.3s;
}

.breadcrumbs a:hover {
    color: #1E1E1E;
}

.breadcrumbs span {
    font-size: 12px;
    font-weight: 500;
    color: #7A7A7A;
    margin: 0 10px;
}

.breadcrumbs p {
    max-width: 250px;
    font-size: 12px;
    font-weight: 500;
    color: #ADADAD;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}


/* inner-pg */

.inner-pg {
    padding: 40px 0 110px;
}

.inner-pg-wrap {
    padding: 70px 30px 30px;
    background: #fff;
    border-radius: 20px;
    margin-top: -40px;
}


/* prod-cat */

.prod-cat {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.prod-cat-card {
    position: relative;
    padding: 30px 30px 21px;
    background: #fff;
    border-radius: 20px;
    border: 2px solid #EFEFEF;
    overflow: hidden;
}

.prod-cat-card img {
    object-fit: contain;
}

.prod-cat-card__photo {
    position: relative;
    display: block;
    width: 170px;
    height: 170px;
    /* max-width: 170px; */
    margin: 0 auto 20px;
    z-index: 5;
}

.prod-cat-card__title {
    min-height: 44px;
    font-size: 18px;
    font-weight: 600;
    text-align: center;
}

.prod-cat-card__orn {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
}




/* Contact form */
.wpcf7-spinner, .wpcf7-response-output {
    display: none !important;
}

.wpcf7-not-valid-tip {
    font-size: 12px;
    position: absolute;
    top: 34px;
    left: 30px;
}

.wpcf7-not-valid {
    background: rgb(255, 238, 238);
}

.mailing-form .wpcf7-not-valid-tip {
    left: 20px;
    top: 40px;
}


.form-modal_thanks .contacts-form__title {
    margin-bottom: 0;
    font-size: 24px;
}

.form-modal_thanks .contacts-form__title span {
    display: block;
    font-weight: 500;
    margin-top: 8px;
    font-size: 18px;
}

.form-modal {
    position: relative;
}

.form-modal_close {
    position: absolute;
    right: 15px;
    top: 15px;
    width: 15px;
    height: 15px;
    cursor: pointer;
    z-index: 100;
    transition: 0.3s;
}
.form-modal_close:hover {
    opacity: 0.7;
}
.form-modal_close .line {
    position: absolute;
    top: 50%;
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background: #1E1E1E;
}
.form-modal_close .line-1 {
    transform: rotate(45deg);
}
.form-modal_close .line-2 {
    transform: rotate(-45deg);
}

.form-modal_product {
    background: #fff;
    max-width: 600px;
    border-radius: 20px;
}




/* prod-subcat-card */

.prod-subcat-card {
    display: block;
    background: #fff;
    overflow: hidden;
    border: 2px solid #EFEFEF;
    border-radius: 20px;
}

.prod-subcat-card__photo {
    min-height: 195px;
    height: 195px;
    box-shadow: 0 5px 0 #FFCF4D;
}

.prod-subcat-card-wrap {
    padding: 20px 18px 23px;
}

.prod-subcat-card__title {
    min-height: 45px;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 15px;
}

.prod-subcat-card-block {

}

.prod-subcat-card__subtitle {
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 10px;
}

.prod-subcat-card-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
}

.prod-subcat-card__item {
    padding: 5px 10px;
    border: 1px solid #434343;
    border-radius: 20px;
    font-size: 12px;
}


/* prodinfo */

.inner-pg_single {
    padding-bottom: 55px;
}

.prodinfo {
    display: flex;
    justify-content: space-between;
}

.prodinfo-wrap {
    max-width: 710px;
    width: 100%;
}

.prodinfo__photo {
    height: 530px;
    border: 2px solid #EFEFEF;
    border-radius: 20px;
    margin-bottom: 40px;
}

.prodinfo-text-swiper {

}

.prodinfo-text {
    max-height: 280px;
    overflow: hidden;
    position: relative;
}

.prodinfo-text span {
    /* font-weight: 500 !important; */
}

.prodinfo-text::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 30px;
    background: linear-gradient(0deg, #fff 37.64%, rgba(255,255,255, 0) 100%);
    transition: 0.3s;
}

.txtswipe.collapse .prodinfo-text {
    max-height: none;
}

.txtswipe.collapse .prodinfo-text::after {
    height: 0;
}

.prodinfo-text h2 {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 20px;
}

.prodinfo-text h3 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 20px;
}

.prodinfo-text h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 20px;
}

.prodinfo-text p {
    font-weight: 400;
    margin-bottom: 15px;
}

.prodinfo-text ul {
    margin-bottom: 15px;
}

.prodinfo-text ul li {
    position: relative;
    display: block;
    padding-left: 20px;
    font-weight: 400;
    margin-bottom: 10px;
}

.prodinfo-text ul li::before {
    position: absolute;
    top: 8px;
    left: 4px;
    content: "";
    width: 4px;
    height: 4px;
    background: #1E1E1E;
    border-radius: 50%;
}

.prodinfo-text ol {
    padding-left: 20px;
    margin-bottom: 15px;
}

.prodinfo-text ol li {
    font-weight: 400;
    margin-bottom: 10px;
}

.prodinfo-text a {
    font-weight: 400;
    /* color: rgb(16 43 81); */
    text-decoration: underline;
    transition: 0.3s;
}

.prodinfo-text a:hover {
    color: rgb(16 43 81);
    text-decoration: underline;
}

.prodinfo-text b, .prodinfo-text strong {
    font-weight: 600;
}

.prodinfo-text-height {

}

.prodinfo-text-swiper__more {
    display: flex;
    align-items: center;
    font-size: 16px;
    font-weight: 500;
    color: #7A7A7A;
    cursor: pointer;
    margin-top: 15px;
    transition: 0.3s;
}

.prodinfo-text-swiper__more svg {
    stroke: #7A7A7A;
    margin-left: 5px;
    margin-top: 2px;
    /* transition: 0.3s; */
}

.prodinfo-text-swiper__more:hover {
    color: rgb(16 43 81);
}

.prodinfo-text-swiper__more:hover svg {
    stroke: rgb(16 43 81);
}

.txtswipe.collapse svg {
    transform: rotate(180deg);
    transition: 0 !important;
}

.prodinfo-col {
    max-width: 490px;
    width: 100%;
}

.prodinfo-block {
    padding: 30px;
    border: 2px solid #EFEFEF;
    border-radius: 20px;
}

.prodinfo__title {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 25px;
}

.prodinfo__text {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 30px;
}

.prodinfo-param {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-bottom: 30px;
}

.prodinfo-param-item {

}

.prodinfo-param-item__name {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 10px;
}

.prodinfo-param-item__value {
    font-size: 14px;
    font-weight: 400;
}

.prodinfo-standard-swiper {
    margin-bottom: 30px;
}

.prodinfo-standard {
    margin-bottom: 5px;
    max-height: 70px;
    overflow: hidden;
}

.txtswipe.collapse .prodinfo-standard {
    max-height: 500px;
}

.prodinfo-standard__title {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 15px;
}

.prodinfo-standard-height {

}

.prodinfo-standard-flex {
    display: flex;
    flex-wrap: wrap;
}

.prodinfo-standard__item {
    font-size: 14px;
    padding: 5px 15px;
    border: 1px solid #1e1e1e;
    border-radius: 30px;
    margin-right: 10px;
    margin-bottom: 10px;
}

.prodinfo-standard-swiper__more {
    display: flex;
    align-items: center;
    font-size: 14px;
    font-weight: 500;
    color: #7A7A7A;
    cursor: pointer;
    transition: 0.3s;
}

.prodinfo-standard-swiper__more svg {
    stroke: #7A7A7A;
    margin-left: 6px;
    margin-top: 2px;
    /* transition: 0.3s; */
}

.prodinfo-standard-swiper__more:hover {
    color: rgb(16 43 81);
}

.prodinfo-standard-swiper__more:hover svg {
    stroke: rgb(16 43 81);
}

.txtswipe.collapse svg {
    transform: rotate(180deg);
    transition: 0 !important;
}

.prodinfo-btns {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.prodinfo__btn {
    max-width: 235px;
    width: 100%;
}

.prodinfo-price-btn {
    max-width: 175px;
    padding: 6px 13px 6px 23px;
    background: #fff;
    border: 2px solid rgb(16 43 81);
    font-size: 14px;
    color: rgb(16 43 81);
    transition: 0.3s;
}

.prodinfo-price-btn__arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    min-width: 30px;
    height: 30px;
    background: rgb(16 43 81);
    border-radius: 50%;
    margin-left: 10px;
    transition: 0.3s;
}

.prodinfo-price-btn__arrow svg {
    display: block;
    height: 23px;
    fill: #fff;
    transition: 0.3s;
}

.prodinfo-price-btn:hover {
    background: rgb(16 43 81);
    color: #fff;
}

.prodinfo-price-btn:hover .prodinfo-price-btn__arrow {
    background: #fff;
}

.prodinfo-price-btn:hover .prodinfo-price-btn__arrow svg {
    fill: rgb(16 43 81);
}


/* similar */

.similar {
    padding: 55px 0;
}

.similar-wrap {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    padding: 70px 30px 30px;
    background: #fff;
    border-radius: 20px;
    margin-top: -40px;
}

.similar-wrap_services {
    grid-template-columns: repeat(3, 1fr);
}

.contacts_single {
    padding-bottom: 110px;
}


/* serv-cat */

.serv-cat {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.serv-cat-card {
    display: flex;
    align-items: flex-end;
    height: 280px;
    border-radius: 20px;
    border: 2px solid #EFEFEF;
}

.serv-cat-card-label {
    padding: 13px;
    background: #fff;
    border: 2px solid #EFEFEF;
    border-radius: 15px;
    margin-left: -10px;
    margin-bottom: 10px;
}

.serv-cat-card__title {
    max-width: 315px;
    position: relative;
    padding-left: 15px;
    font-size: 18px;
    font-weight: 600;
}

.serv-cat-card__title::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 5px;
    height: 100%;
    background: #6a6a6c;
    border-radius: 5px;
}


/* servinfo */

.servinfo {
    display: flex;
    justify-content: space-between;
}

.servinfo-wrap {
    max-width: 820px;
    width: 100%;
    margin-right: 30px;
}

.servinfo-grid {
    display: grid;
    gap: 20px;
    grid-template-areas:
    "a a b"
    "a a c";
    grid-template-rows: repeat(2, 155px);
    grid-template-columns: repeat(3, 1fr);
    margin-bottom: 50px;
}

.servinfo__photo {
    border-radius: 20px;
}

.servinfo__photo:nth-child(1) {
    grid-area: a;
}

.servinfo__photo:nth-child(2) {
    grid-area: b;
}

.servinfo__photo:nth-child(3) {
    grid-area: c;
}

.servinfo-text {

}

.servinfo-text h2 {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 25px;
}

.servinfo-text h3 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 20px;
}

.servinfo-text h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 20px;
}

.servinfo-text p {
    font-weight: 400;
    margin-bottom: 20px;
}

.servinfo-text ul {
    margin-bottom: 20px;
}

.servinfo-text ul li {
    position: relative;
    display: block;
    padding-left: 20px;
    line-height: 140%;
    font-weight: 400;
    margin-bottom: 10px;
}

.servinfo-text ul li::before {
    position: absolute;
    top: 8px;
    left: 4px;
    content: "";
    width: 4px;
    height: 4px;
    background: #1E1E1E;
    border-radius: 50%;
}

.servinfo-text ol {
    padding-left: 20px;
    margin-bottom: 15px;
}

.servinfo-text ol li {
    font-weight: 400;
    margin-bottom: 10px;
}

.servinfo-text a {
    font-weight: 400;
    /* color: rgb(16 43 81); */
    text-decoration: underline;
    transition: 0.3s;
}

.servinfo-text a:hover {
    color: rgb(16 43 81);
    text-decoration: underline;
}

.servinfo-text :last-child {
    margin-bottom: 0;
}

.servinfo-text b,.servinfo-text strong {
    font-weight: 600;
}

.servinfo-col {
    position: relative;
    max-width: 380px;
    width: 100%;
}

.servinfo-form {
    position: sticky;
    top: 170px;
    padding: 30px;
    border-radius: 20px;
    border: 2px solid #EFEFEF;
}

.servinfo-form__title {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 25px;
}

.servinfo-form__input {
    width: 100%;
    height: 50px;
    padding: 0 20px;
    background: #F1F1F1;
    border: none;
    border-radius: 30px;
    font-family: "Montserrat", sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #1e1e1e;
    margin-bottom: 15px;
}

.servinfo-form__input.wpcf7-not-valid {
    background: rgb(255, 238, 238);
}

.servinfo-form__input::placeholder {
    font-family: "Montserrat", sans-serif;
}

.servinfo-form__area {
    box-sizing: border-box;
    width: 100%;
    height: 100px;
    padding: 14px 20px;
    background: #F1F1F1;
    border-radius: 20px;
    border: none;
    resize: none;
    font-family: "Montserrat", sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #1e1e1e;
    margin-bottom: 20px;
}

.servinfo-form__area::placeholder {
    font-family: "Montserrat", sans-serif;
}

.servinfo-form__btn {
    display: block;
    width: 100%;
    height: 40px;
    font-family: "Montserrat", sans-serif;
    font-size: 16px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    margin-bottom: 20px;
}

.servinfo-form__desc {
    font-size: 12px;
    text-align: center;
    margin: 0 auto;
}

.servinfo-form__desc a {
    font-size: 12px;
    color: rgb(16 43 81);
    transition: 0.3s;
}

.servinfo-form__desc a:hover {
    opacity: 0.6;
}


/* gost-list */

.gost-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.gost-list-item {
    display: block;
    padding: 20px 30px;
    border-radius: 15px;
    background: #fff;
    border: 2px solid #EFEFEF;
    font-size: 16px;
    font-weight: 500;
    transition: 0.3s;
}

.gost-list-item:hover {
    border: 2px solid rgb(16 43 81);
}


/* gost-pg */

.gost-pg {

}

.gost-pg-info {
    padding-bottom: 25px;
    border-bottom: 2px solid #6a6a6c;
}

.gost-pg-info-row {
    display: flex;
    margin-bottom: 15px;
}

.gost-pg-info-row:last-child {
    margin-bottom: 0;
}

.gost-pg-info__name {
    max-width: 250px;
    width: 100%;
    font-size: 16px;
    font-weight: 700;
    margin-right: 30px;
}

.gost-pg-info__value {
    font-weight: 500;
}

.gost-pg-text {
    padding: 25px 0;
    border-bottom: 2px solid #6a6a6c;
}

.gost-pg-text h2 {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 25px;
}

.gost-pg-text h3 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 20px;
}

.gost-pg-text h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 20px;
}

.gost-pg-text p {
    font-weight: 500;
    margin-bottom: 20px;
}

.gost-pg-text ul {
    margin-bottom: 20px;
}

.gost-pg-text ul li {
    position: relative;
    display: block;
    padding-left: 20px;
    font-weight: 500;
    margin-bottom: 15px;
}

.gost-pg-text ul li::before {
    position: absolute;
    top: 8px;
    left: 4px;
    content: "";
    width: 4px;
    height: 4px;
    background: #1E1E1E;
    border-radius: 50%;
}

.gost-pg-text ol {
    padding-left: 20px;
    margin-bottom: 15px;
}

.gost-pg-text ol li {
    font-weight: 500;
    margin-bottom: 15px;
}

.gost-pg-text a {
    font-weight: 500;
    /* color: rgb(16 43 81); */
    text-decoration: underline;
    transition: 0.3s;
}

.gost-pg-text a:hover {
    color: rgb(16 43 81);
    text-decoration: underline;
}

.gost-pg-text :last-child {
    margin-bottom: 0;
}

.gost-pg-edge {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 25px;
}

.gost-pg-edge-wrap {
    display: flex;
    align-items: center;
}

.gost-pg-edge__icon {
    display: block;
    width: 50px;
    margin-right: 15px;
}

.gost-pg-edge__title {
    font-size: 20px;
    font-weight: 600;
}

.gost-pg-edge-btns {
    display: flex;
    align-items: center;
}

.gost-pg-edge__btn {
    width: 250px;
    font-size: 16px;
    margin-left: 30px;
}


/* documents */

.documents {
    
}

.infotabs {
    display: flex;
    justify-content: space-between;
}

.infotab-items {
    max-width: 270px;
    width: 100%;
    margin-right: 30px;
}

.infotab-item {
    padding: 15px 20px;
    background: #fff;
    border-radius: 15px;
    border: 2px solid #EFEFEF;
    cursor: pointer;
    margin-bottom: 15px;
    transition: 0.3s;
}

.infotab-item:hover {
    border: 2px solid #6a6a6c;
}

.infotab-items .active {
    border: 2px solid rgb(16 43 81);
}

.infotab-items .active:hover {
    border: 2px solid #6a6a6c;
}

.infotab-contents {
    max-width: 930px;
    width: 100%;
}

.infotab-content {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
}

.infotab-content.active {
    animation:0.7s animTabs;
    opacity: 1;
    max-height: none;
    overflow: visible;
}

@keyframes animTabs {
    0% {opacity: 0; transform: translateY(60px);}
    100% {opacity: 1; transform: translateY(0);}
}

.documents-wrap {

}

.documents-card {
    display: flex;
    /* justify-content: space-between; */
    padding: 30px;
    border-radius: 20px;
    border: 2px solid #EFEFEF;
    margin-bottom: 30px;
    gap: 20px;
}

.documents-card:last-child {
    margin-bottom: 0;
}

.documents-card__photo {
    display: block;
    margin-right: 30px;
}

.documents-card__photo img {
    display: block;
    max-width: 300px;
    min-width: 300px;
    max-height: 450px;
    border-radius: 20px;
}

.documents-card-content {
    
}

.documents-card__title {
    position: relative;
    font-size: 24px;
    font-weight: 700;
    padding-bottom: 15px;
    margin-bottom: 17px;
}

.documents-card__title::after {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    content: "";
    width: 100%;
    height: 2px;
    background: #6a6a6c;
}

.documents-card__text {

}

.documents-card__text p {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 15px;
}

.documents-card__text p:last-child {
    margin-bottom: 0;
}


/* owner */

.about_inner {
    padding-top: 40px;
}

.about_inner .about__text {
    margin-bottom: 0;
}

.partners_inner {
    padding-bottom: 110px;
}

.owner {
    padding: 55px 0;
}

.owner-flex {
    display: flex;
    justify-content: space-between;
}

.owner__photo {
    max-width: 410px;
    width: 100%;
    border-radius: 20px;
}

.owner-wrap {
    max-width: 850px;
}

.owner-content {
    padding: 70px 30px 30px;
    background: #fff;
    border-radius: 20px;
    margin-top: -40px;
}

.owner__name {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 10px;
}

.owner__prof {
    position: relative;
    font-size: 18px;
    font-weight: 500;
    padding-bottom: 20px;
    margin-bottom: 22px;
}

.owner__prof::after {
    position: absolute;
    top: 100%;
    left: 0;
    content: "";
    width: 100%;
    height: 2px;
    background: #6a6a6c;
}

.owner-text {

}

.owner-text p {
    margin-bottom: 15px;
}

.owner-text p:last-child {
    margin-bottom: 0;
}

.contacts_page {
    padding-top: 40px;
}


/* calculators */

.calculators {

}

.infotabs_calculators {
    display: block;
}

.infotabs_calculators .infotab-items {
    display: flex;
    gap: 30px;
    max-width: none;
    margin-right: 0;
    margin-bottom: 30px;
}

.infotabs_calculators .infotab-item {
    width: 100%;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    margin-bottom: 0;
}

.infotabs_calculators .infotab-contents {
    max-width: none;
}

.calculators-wrap {
    display: flex;
    justify-content: center;
    max-width: 100%;
    /* min-height: 800px; */
}

.calc-desc {
    display: flex;
    justify-content: center;
}

.calculators-wrap iframe {
    max-width: 100% !important;
}

.metal-calculator-widget {
    width: 100% !important;
}


/* Other page */
.page-main {
    padding: 60px 0;
}

.page-main__title {
    font-size: 36px;
    margin-bottom: 40px;
}

.page-main-content h2 {
    font-size: 26px;
    margin-bottom: 15px;
}

.page-main-content h3 {
    font-size: 22px;
    margin-bottom: 15px;
}

.page-main-content h4 {
    font-size: 18px;
    margin-bottom: 15px;
}

.page-main-content h5 {
    font-size: 18px;
    margin-bottom: 15px;
}

.page-main-content p {
    font-size: 16px;
    line-height: 135%;
    margin-bottom: 15px;
}

.page-main-content div {
    font-size: 16px;
    line-height: 135%;
    margin-bottom: 15px;
}

.page-main-content ul {
    padding-left: 20px;
}

.page-main-content ol {
    padding-left: 20px;
}

.page-main-content li {
    margin-bottom: 6px;
    line-height: 135%;
}


/* ====== Media Quaries ====== */

/* 1200-1320 */
@media screen and (max-width: 1320px) {
    .container {
        width: 1170px;
    }

    .offer-price__title {
        font-size: 24px;
        max-width: 280px;
        margin-right: 30px;
    }

    .offer-price__text {
        font-size: 16px;
    }

    .about-content {
        margin-right: 20px;
    }

    .about__photo {
        max-width: 660px;
    }

    .reviews-card__photo {
        margin-right: 20px;
    }

    .contacts-content {
        margin-right: 30px;
    }

    .footer-col {
        max-width: 170px;
    }
    
    .footer-col_first {
        max-width: 390px;
    }

    .prodinfo-col {
        max-width: 430px;
        margin-left: 20px;
    }

    .prodinfo__btn {
        font-size: 16px;
        max-width: 200px;
    }

    .prodinfo-price-btn {
        font-size: 13px;
    }

    .prodinfo-block {
        padding: 30px 20px;
    }

    .prodinfo-text {
        max-height: 310px;
    }

    .similar-wrap {
        grid-template-columns: repeat(3, 1fr);
    }


    .serv-cat {
        grid-template-columns: repeat(2, 1fr);
    }

}

/* 992-1200 */
@media screen and (max-width: 1200px) {
    .container {
        width: 960px;
    }

    .menu-contacts {
        /* display: none; */
        margin-left: 30px;
    }

    .menu {
        margin-left: 30px;
    }

    .menu>li a {
        font-size: 14px;
    }

    .menu-catalog-btn {
        height: 36px;
        width: 120px;
    }

    .menu-catalog-btn-icon {
        height: 12px;
    }

    .menu-catalog-btn span {
        font-size: 16px;
    }

    .header-contacts__link span {
        font-size: 14px;
    }

    .menu>li.menu-item-has-children {
        margin-right: 15px;
    }

    .menu>li {
        margin-right: 20px;
    }

    .reviews-wrap {
        grid-template-columns: repeat(1, 1fr);
    }

    .reviews-card-content {
        max-width: 100%;
    }

    .offer-item__title {
        font-size: 16px;
    }

    .offer-item {
        padding: 0 18px;
        margin-bottom: 20px;
    }

    .offer__photo {
        max-width: 600px;
    }

    .offer__title {
        font-size: 28px;
    }

    .offer-title-label {
        max-width: 380px;
    }

    .offer-price {
        padding: 30px 25px;
    }

    .offer-price__title {
        font-size: 18px;
        max-width: 240px;
    }

    .offer-price__text {
        max-width: 180px;
        font-size: 14px;
    }

    .offer-price-btn {
        height: 50px;
        padding: 0 15px;
    }

    .offer-price-btn-wrap span {
        font-size: 14px;
    }

    .offer-price-btn-wrap svg {
        display: block;
        width: 30px;
    }

    .offer-price-btn__arrow {
        display: block;
        width: 30px;
        height: 30px;
    }

    .offer-price-btn__arrow svg {
        display: block;
        width: 20px;
        height: 20px;
    }

    .offer-price__pipes {
        width: 240px;
        height: auto;
    }

    .products-card {
        align-items: center;
        padding: 16px 10px 16px 20px;
    }

    .products-card__links li a {
        font-size: 14px;
    }
    
    .products-card__photo {
        min-width: 180px;
        max-width: 180px;
        width: auto;
        height: auto;
        min-height: auto;
    }

    .products-wrap {
        grid-template-columns: repeat(1, 1fr);
    }

    .products-card_services .products-card__polygon {
        max-width: 500px;
        min-width: 500px;
    }

    .products-card_services {
        min-height: 300px;
    }

    .advantages-card {
        padding: 18px;
    }

    .contacts-content {
        grid-template-columns: repeat(1, 1fr);
        gap: 20px;
    }

    .contacts-form__title {
        font-size: 18px;
    }

    .contacts-item__value {
        font-size: 14px;
    }

    .contacts-item__value a {
        font-size: 14px;
    }

    .contacts-item__name {
        font-size: 18px;
        margin-bottom: 10px;
    }

    .contacts-item__soc svg {
        width: 28px;
        height: 28px;
    }

    .map {
        height: 70vh;
    }

    .mailing-form>p {
        flex-direction: column;
    }

    .mailing-form .wpcf7-not-valid-tip {
        top: 37px;
    }

    .mailing-form__input {
        margin-bottom: 12px;
        margin-right: 0;
    }

    .mailing-form__btn {
        width: 100%;
    }

    .footer-col {
        max-width: 140px;
    }

    .footer-col_first {
        max-width: 250px;
    }

    .prod-cat {
        grid-template-columns: repeat(3, 1fr);
    }


    .prodinfo {
        flex-direction: column-reverse;
    }

    .prodinfo-block {
        margin-left: 0;
    }

    .prodinfo-col {
        max-width: 100%;
        margin-left: 0;
        margin-bottom: 30px;
    }

    .prodinfo-wrap {
        max-width: 100%;
    }

    .similar-wrap {
        grid-template-columns: repeat(2, 1fr);
    }


    .owner__photo {
        min-width: 300px;
        margin-right: 20px;
    }
}

/* 768-992 */
@media screen and (max-width: 992px) {
    .container {
        width: 720px;
    }

    .header .container {
        position: relative;
    }


    .mob-btn {
        display: block !important;
        width: 34px;
        height: 21px;
        position: relative;
    }
    .mob-btn .line {
        width: 100%;
        height: 2px;
        background: #1E1E1E;
        position: absolute;
    }
    .mob-btn .line-1 {
        top: 0;
    }
    .mob-btn .line-2 {
        top: 50%;
        margin-top: -1px;
    }
    .mob-btn .line-3 {
        top: 100%;
        margin-top: -2px;
    }

    .menu-contacts {
        position: fixed;
        top:0;
        right: 0;
        width: 300px;
        height: 100vh;
        display: flex;
        flex-direction: column;
        justify-content: start;
        align-items: start;
        background: #fff;
        padding-top: 80px;
        padding-bottom: 80px;
        border: 1px solid rgba(239, 239, 239, 1);
        overflow: hidden;
        overflow-y: scroll;
        max-width: 0;
        z-index: 200;
        transition: 0.3s;
    }

    .menu-contacts.collapse {
        max-width: 300px;
    }

    .menu-contacts__close {
        display: block !important;
        position: absolute;
        right: 30px;
        top: 30px;
        width: 25px;
        height: 25px;
    }

    .menu-contacts__close .line {
        width: 100%;
        height: 2px;
        border-radius: 2px;
        position: absolute;
        top: 50%;
        margin-top: -1px;
        background: #1E1E1E;
    }
    .menu-contacts__close .line-1 {
        transform: rotate(45deg);
    }
    .menu-contacts__close .line-2 {
        transform: rotate(-45deg);
    }

    .nav {
        flex-direction: column;
        align-items: start;
        padding: 0 30px;
        max-width: 100%;
        width: 100%;
        box-sizing: border-box;
    }

    .header-contacts {
        padding: 0 30px;
    }

    .menu-catalog {
        display: flex;
        flex-direction: column;
        margin-bottom: 40px;
    }

    .cat-menu-nav {
        display: block;
        position: static;
        border: 0;
        margin-top: 10px;
    }

    .cat-menu {
        display: flex;
        flex-direction: column;
        border: 0;
    }
    
    .cat-menu li:hover ul {
        display: none !important;
    }

    .menu-catalog-btn {
        background: transparent;
        padding: 0;
        height: auto;
        width: auto;
        display: block;
    }

    .menu-catalog-btn span {
        color: #1E1E1E;
        font-size: 18px;
    }

    .menu-catalog-btn-icon {
        display: none;
    }

    .cat-menu li a {
        padding: 0;
        font-size: 16px;
        margin-bottom: 8px;
        /* padding-left: 14px; */
    }

    .menu>li.menu-item-has-children::after {
        top: 10px;
    }



    .menu {
        flex-direction: column;
        margin-left: 0;
        margin-bottom: 40px;
        width: 100%;
    }

    .menu>li {
        margin-bottom: 10px;
    }

    .menu>li a {
        font-size: 16px;
    }

    .menu>li.menu-item-has-children {

    }

    .menu>li ul::after {
        display: none;
    }

    .menu>li>ul {
        position: static;
        left: auto;
        margin-left: 0;
        display: none;
        border: 0;
        padding-left: 16px;
        margin-top: 10px;
    }
    .menu>li:hover>ul {
        display: none;
        animation: none;
    }
    .menu>li.active>ul {
        display: block;
    }

    .menu>li.active.menu-item-has-children::after {
        transform: rotate(180deg);
    }

    .menu>li ul li a {
        padding: 0;
        margin-bottom: 10px;
    }

    .menu>li ul li a {
        opacity: 0.8;
    }




    .header-contacts__link span {
        font-size: 14px;
    }

    .header-contacts-mail {
        position: static;
        border: 0;
        padding: 0;
        border-radius: 0;
        margin-top: 7px;
    }

    .header-contacts__link {
        margin-bottom: 10px;
    }

    .header-contacts__link svg {
        margin-right: 8px;
    }
    

    








    .advantages-wrap {
        grid-template-columns: repeat(2, 1fr);
    }

    .offer-item img {
        width: 30px;
        margin-right: 10px;
    }

    .offer__photo {
        margin-right: 20px;
    }

    .offer-item__title {
        font-size: 14px;
    }

    .offer-item {
        height: 70px;
        margin-bottom: 10px;
    }

    .offer__title {
        font-size: 21px;
        padding-left: 14px;
    }

    .offer-title-label {
        max-width: 270px;
        padding: 20px;
    }

    .offer__btn {
        font-size: 20px;
        height: 56px;
    }

    .offer-price-wrap {
        flex-direction: column;
        align-items: flex-start;
    }

    .offer-price__title {
        font-size: 20px;
        margin-right: 0;
        margin-bottom: 14px;
    }

    .offer-price__pipes {
        left: 200px;
        width: 300px;
    }

    .about-content {
        min-width: 400px;
        max-width: 400px;
    }

    .about__title, .title-label__title {
        font-size: 24px;
    }

    .about__text p {
        font-size: 14px;
    }

    .products-card_services .products-card__polygon {
        max-width: 370px;
        min-width: 370px;
    }

    .title-label_button {
        max-width: 600px;
    }

    .contacts-form__title {
        font-size: 16px;
    }

    .footer-row {
        flex-wrap: wrap;
    }

    .footer-col {
        max-width: 200px;
    }

    .footer-col_first {
        max-width: 350px;
        margin-bottom: 40px;
    }

    .mailing-form__input {
        max-width: 350px;
    }



    .prod-cat {
        grid-template-columns: repeat(2, 1fr);
    }


    .servinfo {
        flex-direction: column;
    }

    .servinfo-col {
        max-width: 100%;
        margin-top: 40px;
    }

    .gost-pg-info-row {
        flex-direction: column;
        margin-bottom: 22px;
    }

    .gost-pg-info__name {
        max-width: 100%;
        margin-bottom: 6px;
    }

    .gost-pg-edge {
        align-items: start;
        flex-direction: column;
    }

    .gost-pg-edge-btns {
        margin-left: 0;
        margin-top: 20px;
    }

    .gost-pg-edge__btn {
        margin-left: 0;
        margin-right: 20px;
    }

    .title-label {
        max-width: 80%;
    }


    .infotabs {
        display: flex;
        flex-direction: column;
        margin-right: 0;
        
    }

    .infotab-items {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        max-width: 100%;
        margin-bottom: 30px;
        gap: 20px;
    }

    .infotab-item {
        width: 48%;
        margin-right: 0;
        margin-bottom: 0;
    }
}

/* 576-768 */
@media screen and (max-width: 767px) {
    .container {
        width: 540px;
    }


    .menu-contacts__close {
        top: 15px;
    }
    
    .about__title, .title-label__title {
        font-size: 22px;
    }

    .title-label_button {
        padding: 10px 20px;
        max-width: 500px;
    }

    .title-label__btn {
        width: 200px;
    }

    .btn {
        font-size: 16px;
    }

    .offer-flex {
        flex-direction: column;
    }

    .offer__photo {
        width: 100%;
        height: 300px;
        margin-right: 0;
    }

    .offer-wrap {
        margin-top: 30px;
    }

    .offer-item {
        max-width: 100%;
        width: 100%;
    }

    .advantages-wrap {
        grid-template-columns: repeat(1, 1fr);
    }

    .reviews-card__photo {
        max-width: 220px;
        width: 100%;
    }

    .reviews-card__photo img {
        width: 100%;
        
        max-width: none;
    }

    .reviews-card__title {
        font-size: 16px;
    }

    .reviews-wrap {
        padding: 60px 16px 16px;
    }

    .reviews-card {
        padding: 18px;
    }

    .contacts-flex {
        flex-direction: column;
    }

    .contacts-content {
        margin-right: 0;
        margin-bottom: 30px;
    }

    .contacts-form {
        max-width: none;
    }

    .title-label {
        margin-left: 16px;
    }

    .offer-price {
        flex-direction: column;
        align-items: start;
    }

    .offer-price-wrap {
        margin-bottom: 20px;
    }

    .offer-price-btn {
        z-index: 100;
    }

    .offer-price__orn {
        margin-left: -220px;
    }

    .offer-price__pipes {
        width: 300px;
        right: 0;
        left: auto;
    }

    .about__photo {
        display: none;
    }

    .about-content {
        max-width: none;
        min-width: auto;
        margin-right: 0;
    }

    .about-wrap {
        max-width: none;
    }

    .title-label__btn {
        font-size: 14px;
        width: 180px;
    }

    .products-card_services .products-card__polygon {
        max-width: 200px;
        min-width: 200px;
    }

    .products-wrap{
        padding: 70px 20px 30px;
    }

    .partners-item img {
        max-width: 180px;
        max-height: 40px;
        margin: 0 20px;
    }

    .advantages-wrap {
        padding: 70px 20px 30px;
    }

    .advantages-card__num {
        min-width: 40px;
        width: 40px;
        height: 40px;
        font-size: 23px;
    }

    .logo {
        display: block;
        max-width: 120px;
    }

    .logo img {
        display: block;
        width: 100%;
    }

    .header-margin {
        height: 58px;
    }

    .footer-col {
        max-width: 180px;
        margin-bottom: 40px;
    }

    .footer-col_first {
        max-width: 270px;
    }

    .prod-cat {
        grid-template-columns: repeat(1, 1fr);
    }


    .similar-wrap {
        grid-template-columns: repeat(1, 1fr);
    }

    .prodinfo-price-btn {
        font-size: 14px;
    }

    .prodinfo__photo {
        height: 400px;
    }


    .serv-cat {
        grid-template-columns: repeat(1, 1fr);
    }

    .servinfo-grid {
        grid-template-rows: repeat(2, 105px);
    }


    .gost-list {
        grid-template-columns: repeat(1, 1fr);
    }


    .gost-pg-edge__title {
        font-size: 16px;
    }

    .gost-pg-edge__icon {
        width: 36px;
        margin-right: 10px;
    }

    .gost-pg-edge__btn {
        width: 220px;
    }


    .infotabs_calculators .infotab-items {
        flex-direction: column;
        gap: 15px;
    }

    .calculators-wrap iframe {
        max-width: 100%;
    }

    .calculators-wrap {
        overflow-x: scroll;
    }


    .about_inner {
        padding-bottom: 30px;
    }

    .owner {
        padding-top: 30px;
    }

    .owner-flex {
        flex-direction: column-reverse;
    }

    .owner__photo {
        max-width: 100%;
        height: 400px;
        width: 100%;
        margin-top: 30px;
        margin-right: 0;
        min-width: auto;
    }



    .documents-card {
        flex-direction: column;
    }

    .documents-card__photo img {
        max-width: 100%;
        width: 100%;
    }

    .documents-card__photo {
        margin-right: 0;
        margin-bottom: 30px;
    }

    .infotab-item {
        width: 100%;
    }

    .calc-desc {
        display: none;
    }

    .calc-mob {
        display: flex !important;
        justify-content: center;
    }
    
}

/* <576 */
@media screen and (max-width: 576px) {
    .container {
        width: 94vw;
    }

    .menu-contacts__close {
        top: 15px;
        right: 15px;
    }

    .mailing-list {
        display: none;
    }

    .footer-logo {
        margin-bottom: 0;
    }

    .footer-col {
        max-width: 150px;
    }

    .footer-col_first {
        max-width: 100%;
    }

    .offer__photo {
        height: 240px;
    }

    .offer-title-label {
        margin-left: 14px;
    }

    .offer-item {
        height: 60px;
    }

    .offer-price__pipes {
        width: 130px;
        display: none;
    }

    .offer {
        padding-bottom: 30px;
    }

    .about {
        padding: 30px 0;
    }

    .about-content {
        padding: 70px 20px 30px;
        margin-top: -30px;
    }

    .about-title-label {
        margin-left: 20px;
        padding: 10px 20px;
        border-radius: 12px;
    }

    .title-label_button {
        flex-direction: column;
        align-items: start;
        border-radius: 12px;
        padding: 10px 20px;
    }

    .title-label__btn {
        height: 40px;
        margin-top: 14px;
        display: none;
    }

    .title-label_button {
        max-width: 300px;
    }

    .products {
        padding: 30px 0;
    }

    .products-card__orn {
        display: block;
        height: 100%;
        margin-right: -140px;
    }

    .products-card-wrap {
        position: relative;
        z-index: 100;
    }

    .products-card {
        flex-direction: column;
    }

    .products-card__photo {
        margin-top: 30px;
    }

    .products-wrap {
        margin-top: -30px;
    }

    .products-card_services .products-card__polygon {
        display: none;
    }

    .partners {
        padding: 40px 0;
    }

    .advantages {
        padding: 30px 0;
    }

    .title-label {
        border-radius: 12px;
        max-width: 300px;
    }

    .reviews {
        padding: 30px 0;
    }

    .reviews-wrap {
        margin-top: -30px;
    }

    .reviews-card {
        flex-direction: column;
    }

    .reviews-card__photo {
        margin-right: 0;
        display: block;
        margin-bottom: 20px;
        max-width: none;
    }

    .reviews-card__orn {
        transform: rotate(180deg);
        left: auto;
        bottom: auto;
        right: -30px;
        top: 0;
    }

    .reviews-card {
        overflow: hidden;
    }

    .contacts {
        padding: 30px 0;
    }

    .contacts-content {
        margin-top: -30px;
        padding: 70px 20px 30px;
    }

    .title-label {
        padding: 10px 20px;
    }

    .contacts-form {
        padding: 30px 20px;
    }

    .map-sec {
        padding: 30px 0 60px;
    }

    .footer-copy-privacy {
        flex-direction: column;
    }

    .copy {
        margin-bottom: 10px;
    }

    .footer-row {
        padding-bottom: 0;
    }

    .arcticmodal-container_i2 {
        padding: 0;
    }

    

    .title-label_big .title-label__title {
        font-size: 24px;
    }

    .inner-pg-wrap {
        padding: 60px 15px 30px;
        margin-top: -30px;
    }

    .prodinfo-block {
        padding: 20px 14px;
    }

    .prodinfo__title {
        font-size: 20px;
        margin-bottom: 16px;
    }

    .prodinfo__text {
        font-size: 14px;
        margin-bottom: 20px;
    }

    .prodinfo-param {
        margin-bottom: 20px;
    }

    .prodinfo-btns {
        flex-direction: column;
    }

    .prodinfo__btn {
        max-width: 100%;
        margin-bottom: 12px;
    }

    .prodinfo-price-btn {
        max-width: 100%;
        width: 100%;
    }

    .prodinfo__photo {
        height: 80vw;
    }

    .prodinfo-text h2 {
        font-size: 20px;
    }

    .prodinfo-text p {
        font-size: 14px;
    }

    .prodinfo-text div {
        font-size: 14px;
    }

    .prodinfo-text li {
        font-size: 14px;
    }

    .prodinfo-text-swiper__more {
        font-size: 14px;
    }

    .prodinfo-text {
        max-height: 360px;
    }

    .prodinfo-text h3 {
        font-size: 18px;
    }

    .similar-wrap {
        padding: 60px 15px 30px;
        margin-top: -30px;
    }


    .serv-cat-card {
        height: 200px;
    }

    .title-label_big .title-label__title {
        font-size: 22px;
    }

    .servinfo-grid {
        grid-template-areas:
        "a a"
        "a a"
        "b c";
        grid-template-rows: repeat(3, 80px);
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
        margin-bottom: 30px;
    }

    .servinfo__photo {
        border-radius: 14px;
    }

    .servinfo-text h2 {
        font-size: 20px;
    }

    .servinfo-text h3 {
        font-size: 18px;
    }

    .servinfo-text p {
        font-size: 14px;
    }

    .servinfo-text div {
        font-size: 14px;
    }

    .servinfo-text ul li {
        font-size: 14px;
    }

    .servinfo-form {
        padding: 30px 14px;
    }

    .inner-pg_single {
        padding-bottom: 30px;
    }

    .similar {
        padding: 30px 0;
    }

    .contacts {
        padding-bottom: 55px;
    }

    .gost-list-item {
        padding: 14px 20px;
    }

    .gost-pg-edge-btns {
        flex-direction: column;
    }

    .gost-pg-info-row {
        overflow: hidden;
    }

    .gost-pg-info__name {
        margin-right: 0;
    }

    .breadcrumbs {
        max-width: 90%;
        flex-wrap: wrap;
    }

    .gost-pg-edge__btn {
        width: 100%;
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 10px;
    }

    .gost-pg-edge-btns {
        width: 100%;
    }


    .owner-content {
        padding: 60px 15px 30px;
        margin-top: -30px;
    }

    .owner__name {
        font-size: 20px;
    }

    .owner__prof {
        font-size: 16px;
    }

    .owner-text p {
        font-size: 14px;
    }

    .owner {
        padding-bottom: 00px;
    }

    .infotab-items {
        gap: 12px;
    }

    .infotab-item {
        padding: 10px 14px;
        font-size: 14px;
        border-radius: 10px;
    }

    .documents-card__photo img {
        min-width: auto;
    }

    .documents-card {
        padding: 16px;
    }

    .documents-card__title {
        font-size: 20px;
    }

    .documents-card__text p {
        font-size: 14px;
    }

    .page-main__title {
        font-size: 26px;
    }
}