@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

:root {
    --color-main: #2B973B;
    --color-second: #0E3113;
    --color-light: #F8F8F8;
    --color-light-muted: #efefef;
    --color-dark: #202020;
    --color-muted: #626262;
    --all-transition:  all 0.2s ease-in;
}

::-webkit-scrollbar {
    width: 12px; /* Ширина скроллбара */
    background-color: #f0f0f0; /* Цвет фона */
}

/* Стиль "ползунка" */
::-webkit-scrollbar-thumb {
    background-color: var(--color-main);
    border-radius: 6px; /* Скругленные углы */
    border: 3px solid #f0f0f0; /* Отступ внутри скроллбара */
}

/* Стиль при наведении */
::-webkit-scrollbar-thumb:hover {
    background-color: var(--color-main); /* Цвет ползунка при наведении */
}

/* Стиль "вверх" и "вниз" (если есть кнопки) */
::-webkit-scrollbar-button {
    background-color: #ccc;
}

::selection {
    background: var(--color-main);
    color: var(--color-light);

}

body{
    font-family: "Roboto", sans-serif;
    font-style: normal;
    color: var( --color-dark);
    background: #f1f1f1;
}

a{
    color: var(--color-dark);
    transition: var(--all-transition);
    cursor: pointer;
}

a:hover{
    color: var(--color-main);
    transition: var(--all-transition);
}

.cover{
    overflow-x: hidden;
}

span{
    color: var(--color-main);
}

.container{
    max-width: 1120px;
}

.text_content{
    max-width: 627px !important;
}

.img_cover{

}

.img_cover img{
    width: 100%;
    height: 100%;
}

.btn{
    border-radius: 6px !important;
    padding: 9px 38px;
    font-size: 17px;
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
    text-decoration: none;
    outline: none;
    border: none;
    box-shadow: 4px 3px 8px rgb(0 0 0 / 11%);
}

.btn_one, .btn_one:active, .btn_one:focus {
    color: var(--color-light) !important;
    background: linear-gradient(167deg, var(--color-main) 0%, var(--color-second) 100%);
    background-size: 100% 100%; /* Задаём размеры фона больше элемента */
    background-position: 0 0; /* Начальная позиция градиента */
    transition: var(--all-transition); /* Плавный переход для позиции фона */
    cursor: pointer;
}

.btn_one:hover {
    background-size: 200% 200%; /* При ховере сдвигаем градиент вниз */
    color: var(--color-light);
    transition: var(--all-transition) /* Плавный переход для позиции фона */

}

.object{
    position: absolute;
}

.section_title{
    text-align: center;
    margin-bottom: 40px;
}

.section_title h3{
    font-size: 44px;
    text-transform: uppercase;
}

.navbar{
    padding: 5px 0;
}

.navbar .logo img{
    max-height: 64px;
}

.navbar .right{
    display: flex;
    align-items: center;
}

.navbar .social img{
    max-height: 42px;
    opacity: 1;
    transition: var(--all-transition);
}

.social img:hover{
    opacity: 0.8;
    transition: var(--all-transition);
}

.social{
    margin-left: 10px;
}

.phone_number a{
    font-size: 18px;
    font-weight: 500;
}
.order_back_call{
    text-align: end;
}
.order_back_call a{

    text-decoration: underline;
    cursor: pointer;
    font-size: 14px;
}


.line_main {
    background-image: url(/assets/files/main_bg.jpg);
    background-size: cover;
    color: var(--color-dark);
    background-repeat: no-repeat;
    padding: 160px 0;
    position: relative;
}

.line_main:before{
    content: '';
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: 40px;
    height: 40px;
    background-image: url(/assets/files/arrow_before.png);
    background-size: contain;
    background-repeat: no-repeat;
}

.line_main .title{
    text-align: center;
    margin-bottom: 78px;
}

.line_main h1{
    font-size: 64px;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.line_main h2{
    font-size: 39px;
    font-weight: 300;
    text-transform: uppercase;
}

.line_main .cta{
    display: flex;
    justify-content: center;
}

.line_main .cta .content{
    display: flex;
    align-items: center;
}

.line_main .cta .content .btn_one{
    margin-right: 89px;
}

.line_main .arrow_top{
    position: relative;
}
.line_main .arrow_top:before{
    content: '';
    position: absolute;
    top: 57px;
    left: -110px;
    width: 214px;
    height: 47px;
    background-image: url(/assets/files/arrow_btn_left.png);
    background-size: contain;
    background-repeat: no-repeat;
}

.line_triggers{
    padding-top: 220px;
}

.line_triggers img{
    border-radius: 20px;
    max-width: 520px;
    box-shadow: 17px 18px 0px #cdcdcd;
}

.line_triggers .triggers{
    row-gap: 100px;
}

.line_triggers .block h4{
    font-size: 29px;
    position: relative;
    color: var(--color-main);
    margin-bottom: 13px;
    font-weight: bold;
}

.line_triggers .block h4:before{
    content: '';
    position: absolute;
    top: -30px;
    left: -40px;
    width: 93px;
    height: 93px;
    background-image: url(/assets/files/before_triggers.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
}

.line_triggers .block p{
    font-size: 24px;
    font-weight: 200;
    font-style: italic;
    margin-bottom: 0;
}

.line_materials{
    padding-top: 220px;
    position: relative;
}


.line_triggers .block a{
    margin-top: 10px;
}




.line_materials .content{
    display: flex;
    justify-content: center;
}

.line_materials .info{
    display: flex;
    text-align: center;
    column-gap: 176px;
}

.line_materials .object.bg{
    top: 90px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}

.line_materials .block img{
    margin-bottom: 20px;
}

.line_materials .block h4{
    color: var(--color-main);
    font-size: 28px;
    text-transform: uppercase;
    font-weight: 300;
}

.line_materials .block a{
    font-size: 20px;
    font-weight: 200;
}

.line_one_day{
    padding-top: 220px;
    position: relative;
}

.line_one_day .container{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.line_one_day .left{
    position: relative;
    width: 630px;
}

.line_one_day .before_after {
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 17px 18px 0px #cdcdcd;
}

.line_one_day .social{
    text-align: end;
    margin-bottom: 20px;
}

.line_one_day .social img{
    max-height: 32px;
}

.line_one_day .section_title{
    text-align: start;
    margin-bottom: 20px;
    position: relative;
}

.line_one_day .section_title:before{
    content: '';
    position: absolute;
    top: -30px;
    left: -40px;
    width: 93px;
    height: 93px;
    background-image: url(/assets/files/before_one_day_title.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
}

.line_one_day .section_title h3{
    font-weight: 900;

}

.line_one_day  p{
    text-transform: uppercase;
    font-size: 24px;
    font-weight: 300;
}

.line_errors{
    padding-top: 220px;
}

.line_errors .content{
    display: flex;
    justify-content: space-around;
    align-items: center;

}

.line_errors .section_title{
    margin-bottom: 80px;
}
.line_errors{
    position: relative;
}

.line_errors .video_link{
    width: fit-content;
    position: relative;
    box-shadow: 17px 18px 0px #cdcdcd;
    border-radius: 20px;
    overflow: hidden;
}
.line_errors img{
    max-width: 300px;
}

.line_errors .video_link .object{
    border-radius: unset;
    border-radius: 12px;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    background: rgb(0 0 0 / 27%);
    padding: 23px;
}


.line_errors p{
    font-size: 24px;
    font-weight: 200;
    font-style: italic;
    position: relative;
    margin-bottom: 25px;
}

.line_errors p:before{
    content: '';
    position: absolute;
    top: -30px;
    left: -40px;
    width: 93px;
    height: 93px;
    background-image: url(/assets/files/before_triggers.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
}

.line_maps{
    padding-top: 220px;
    position: relative;
}

.line_maps .section_title{

}

.line_maps .map{
    padding: 10px;
    border-radius: 20px;
    overflow: hidden;
    background: linear-gradient(to bottom right, #B5D4BA, #F8F8F8);
}

.line_maps .map iframe{
    border-radius: 20px;
    overflow: hidden;
}

.line_maps .section_title p{
    padding: 5px 10px;
    background: var(--color-main);
    border-radius: 12px;
    color: #f9f9f9;
    width: fit-content;
    display: block;
    margin-bottom: 10px;
}

.line_maps .object.bg{
    top: 250px;
    width: 100%;
    z-index: -1;
}

.line_works{
    padding-top: 220px;
}

.line_works .item{
    position: relative;
}
.line_works .object{
    max-width: 100px;
    border-radius: 12px;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    background: rgb(0 0 0 / 27%);
    padding: 23px;
}

.line_offer{
    padding-top: 180px;
    padding-bottom: 160px;
    position: relative;
}


.line_offer .section_title{
    text-align: start;
}


.line_offer .section_title h3{
    font-weight: bold;
    position: relative;
}

.line_offer .section_title h3:before{
    content: '';
    position: absolute;
    top: -390px;
    left: -450px;
    width: 801px;
    height: 801px;
    background-image: url(/assets/files/down_offer_before.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
}


.line_offer .section_title p{
    font-weight: 300;
    font-size: 25px;
    text-transform: uppercase;
}



.line_offer form{
    padding: 40px;
    background: #f8f8f8;
    border-radius: 20px;
}
.line_offer form h4{
    text-align: center;
    font-size: 24px;
    font-weight: 200;
    margin-bottom: 17px;
    text-transform: uppercase;
}
.line_offer form p{
    font-size: 18px;
    font-weight: 300;
    margin-bottom: 48px;
}

.line_offer form .form-floating{
    margin-bottom: 10px;
}

.line_offer form .form-floating:last-child{
    margin-bottom: 25px;
}

.line_offer form button{
    margin-bottom: 20px;
}

.line_offer .info{
    display: flex;
    align-items: center;
}

.line_offer .info .social{
    margin-left: 20px;
}


.line_offer .info .social img{
    max-width: 32px;
}

.politics{
    text-align: center;
    font-size: 12px !important;
    margin-bottom: 0 !important;
}

footer{
    padding: 20px 0;
    background: #f8f8f8;
    color: var(--color-main);
}



.owl-carousel .owl-item img{
    border-radius: 20px;
}

.modal-content {
    border: unset;
    border-radius: 20px;
    box-shadow: unset;
}