*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body{
    background-color: #000;
    color: #fff;
    font-family: "Montserrat", sans-serif;
    font-size: 16px;
    font-weight: 300;
    font-style: normal;
    text-align: center;
    text-shadow: 1px 1px 1px #000;
}
.mobile{
    width: 100%;
    max-width: 430px;
    margin: 0 auto;
    background-image: url("../img/bg.png");
    background-size: contain;
    background-repeat: repeat-y;
    background-position: center;
}
.container{
    padding: 0 15px;
}
img.w100{
    width: 100%;
}
a{
    text-decoration: none;
}
.gold{
    color: #f5ad00;
}
@supports (-webkit-background-clip: text) or (background-clip: text){
    .gold{
        text-shadow: none;
        background: #f5ad00 url("../img/gold.png") center/cover no-repeat;
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        -webkit-filter: drop-shadow(1px 1px 1px #000);
        filter: drop-shadow(1px 1px 1px #000);
    }
    .header_name::before {
        text-shadow: none;
        background: #f5ad00 url("../img/gold.png") center/cover no-repeat;
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        -webkit-filter: drop-shadow(1px 1px 1px rgba(0,0,0,0.3));
        filter: drop-shadow(1px 1px 1px rgba(0,0,0,0.3));
    }
}
.mt5{
    margin-top: 5px;
}
.mt-5{
    margin-top: -5px;
}
.mt10{
    margin-top: 10px;
}
.mt-10{
    margin-top: -10px;
}
.mt15{
    margin-top: 15px;
}
.mt-15{
    margin-top: -15px;
}
.mt20{
    margin-top: 20px;
}
.mt-20{
    margin-top: -20px;
}
.mt25{
    margin-top: 25px;
}
.mt-25{
    margin-top: -25px;
}
.mt30{
    margin-top: 30px;
}
.mt-30{
    margin-top: -30px;
}
.mt35{
    margin-top: 35px;
}
.mt40{
    margin-top: 40px;
}
.mt45{
    margin-top: 45px;
}
.mt50{
    margin-top: 50px;
}
.mt60{
    margin-top: 60px;
}
.mt65{
    margin-top: 65px;
}
.mt70{
    margin-top: 70px;
}
.mt75{
    margin-top: 75px;
}
.mt80{
    margin-top: 80px;
}
.mt85{
    margin-top: 85px;
}
.mt-85{
    margin-top: -85px;
}
.mt90{
    margin-top: 90px;
}
.mt95{
    margin-top: 95px;
}
.mt100{
    margin-top: 100px;
}
.mt110{
    margin-top: 110px;
}
.mt120{
    margin-top: 120px;
}
.mt130{
    margin-top: 130px;
}
.pt40{
    padding-top: 40px;
}
.pb50{
    padding-bottom: 50px;
}
.header_divider{
    margin-top: -120px;
}
.header_name{
    position: relative;
    font-family: 'A La Russ';
    font-weight: 500;
    font-size: 120px;
    text-transform: uppercase;
    width: max-content;
    margin: 0 auto;
}
.header_name::before {
    content: 'Отец';
    position: absolute;
    left: 4px;
    top: -35px;
    font-size: 40px;
}
.header_title h1{
    font-size: 30px;
    font-weight: 800;
    text-transform: uppercase;
}
.phone a{
    font-size: 32px;
    font-weight: 800;
    text-transform: uppercase;
}
span.text_online{
    color: #2ab312;
    font-weight: 500;
}
.messenger{
    display: flex;
    gap: 30px;
    justify-content: center;
    align-items: center;
}
.messenger a{
    color: #fff;
    padding: 10px 20px;
    border-radius: 35px;
}
a.telegram, a.whatsapp, a.close, a.call{
    position: relative;
    overflow: hidden;
}
a.telegram::before, a.whatsapp::before, a.close::before, a.call::before{
    content: "";
    position: absolute;
    top: 0;
    left: -75%;
    width: 60%;
    height: 100%;
    background: linear-gradient(120deg,rgba(255, 255, 255, 0) 0%,rgba(255, 255, 255, 0.15) 30%,rgba(255, 255, 255, 0.55) 50%,rgba(255, 255, 255, 0.15) 70%,rgba(255, 255, 255, 0) 100%);
    transform: skewX(-25deg);
    filter: blur(6px);
    animation: shine 3s ease-in-out infinite;
    pointer-events: none;
    will-change: transform, opacity;
}
.telegram{
    background: #2197ff;
    background: linear-gradient(180deg,rgba(33, 151, 255, 1) 0%,rgba(15, 70, 117, 1) 100%);
}
.whatsapp{
    background: #2ab312;
    background: linear-gradient(180deg,rgba(42, 179, 18, 1) 0%,rgba(23, 99, 11, 1) 100%);
}
.close{
    background: #ff4040;
    background: linear-gradient(180deg, rgba(255, 64, 64, 1) 0%, rgba(128, 25, 25, 1) 100%);
}
.call{
    background: #FFC629;
    background: linear-gradient(180deg, rgba(255, 198, 41, 1) 0%, rgba(168, 102, 22, 1) 100%);
}
@keyframes shine{
    0%{
        left: -75%;
        opacity: 0;
    }
    15%{
        opacity: 1;
    }
    50%{
        left: 125%;
        opacity: 1;
    }
    85%{
        opacity: 0.5;
    }
    100%{
        left: 125%;
        opacity: 0;
    }
}
.counter{
    background-image: url("../img/counter_bg.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 290px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-weight: 800;
    text-transform: uppercase;
}
.counter div{
    margin-top: -10px;
}
.counter_descr_top{
    font-size: 12px;
}
.counter_number{
    font-size: 84px;
}
.counter_descr_bottom{
    font-size: 26px;
}
.ornament_border_bottom{
    position: relative;
}
.ornament_border_bottom::after{
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 36px;
    background: url(../img/border.svg) repeat-x center;
    background-size: cover;
    z-index: 1;
}
.ornament_border_bottom::after{
    bottom: -18px;
}
section.divider{
    padding-bottom: 40px;
}
.divider_title h2{
    font-size: 26px;
    font-weight: 800;
    text-transform: uppercase;
}
.section_title h2{
    font-size: 30px;
    font-weight: 800;
    text-transform: uppercase;
}
.divider_item_title h3{
    font-size: 26px;
    font-weight: 800;
    text-transform: uppercase;
}
.service_item{
    background-image: url("../img/service_bg.png");
    background-size: contain;
    background-repeat: repeat-y;
    background-position: center;
    border-radius: 20px;
    border: 1px solid rgba(245, 172, 0, 0.3);
    padding-bottom: 15px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
}
.service_item_img{
    position: relative;
    overflow: hidden;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 220px;
}
.service_item_img img.service_item_img_three {
    width: 140px;
    position: absolute;
    right: -25px;
    bottom: -15px;
    animation: branchSwing 6s ease-in-out infinite;
    transform-origin: bottom right;
}
@keyframes branchSwing {
    0%   {transform: rotate(0deg);}
    50%  {transform: rotate(-10deg);}
    100% {transform: rotate(0deg);}
}
.service_item_img_s1{
    background-image: url("../img/s1.png");
}
.service_item_img_s2{
    background-image: url("../img/s2.png");
}
.service_item_img_s3{
    background-image: url("../img/s3.png");
}
.service_item_img_s4{
    background-image: url("../img/s4.png");
}
.service_item_img_s5{
    background-image: url("../img/s5.png");
}
.service_item_img_s6{
    background-image: url("../img/s6.png");
}
.service_item_img_s7{
    background-image: url("../img/s7.png");
}
.service_item_img_s8{
    background-image: url("../img/s8.png");
}
.service_item_img_s9{
    background-image: url("../img/s9.png");
}
.service_item_title, .service_item_list, .service_item_btn{
    padding: 0 15px;
}
.service_item_title h3{
    font-size: 26px;
    font-weight: 800;
    text-transform: uppercase;
}
.service_item_list ul{
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.service_item_list ul li a{
    color: #fff;
    font-size: 16px;
}
a.btn{
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: url("../img/btn_bg.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    height: 116px;
    padding-top: 5px;
}
a.btn span{
    font-size: 20px;
    font-weight: 800;
    text-transform: uppercase;
}
section.lost_service{
    position: relative;
    padding-top: 210px;
    padding-bottom: 190px;
}
section.lost_service::before{
    content: '';
    position: absolute;
    width: 100%;
    height: 290px;
    background-image: url("../img/lost_top.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    left: 0;
    top: -100px;
}
section.lost_service::after{
    content: '';
    position: absolute;
    width: 100%;
    height: 280px;
    background-image: url("../img/lost_bottom.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    left: 0;
    bottom: -80px;
    z-index: 1;
}
form{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
form input, form textarea, form button{
    font-family: "Montserrat", sans-serif;
    font-style: normal;
}
form input, form textarea{
    padding: 10px 20px;
    border: 1px solid #f5ad00;
}
form input{
    border-radius: 35px;
}
form textarea{
    border-radius: 25px;
}
.lost_service form input{
    text-align: center;
}
form input, form textarea{
    font-weight: 300;
    font-size: 18px;
    width: 100%;
    background-color: rgb(0 0 0 / 30%);
    color: #fff;
    outline: none;
}
form textarea{
    min-width: 100%;
    max-width: 100%;
    min-height: 100px;
    max-height: 100px;
}
form button{
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: url("../img/btn_bg.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    height: 110px;
    padding-top: 5px;
    text-decoration: none;
    background-color: transparent;
    border: none;
}
form button span{
    font-size: 22px;
    font-weight: 800;
    text-transform: uppercase;
    color: #f5ad00;
}
section.review{
    padding-top: 140px;
}
.review_item{
    text-align: left;
    padding: 0 15px;
}
.review_item_user{
    display: flex;
    gap: 20px;
}
.review_item_user_img{
    display: flex;
    align-items: center;
}
.review_item_user_img img{
    width: 60px;
    border-radius: 50%;
}
.review_item_user_container{
    display: flex;
    flex-direction: column;
    gap: 5px;
    justify-content: center;
}
.review_item_user_name{
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
}
.review_item_text{
    background-color: #fff;
    color: #000;
    text-shadow: none;
    font-size: 14px;
    font-weight: 400;
    padding: 15px 20px;
    border-radius: 20px;
    margin-top: 20px;
    line-height: 19px;
    -webkit-text-size-adjust: none;
}
.review_slick .slick-next{
    right: 20px;
    top: 20px;
    animation: moveArrowRight 2s ease-in-out infinite;
}
.slick-prev:before, .slick-next:before{
    font-size: 24px;
    opacity: 1;
    color: #f5ad00;
}
.about_slick_item img{
    width: 70%;
    border-radius: 10px;
    margin: 0 auto;
}
.slick-prev{
    z-index: 1;
}
.about_slick .slick-next{
    right: 15px;
    animation: moveArrowRight 2s ease-in-out infinite;
}
.about_slick .slick-prev{
    left: 15px;
    animation: moveArrowLeft 2s ease-in-out infinite;
}
@keyframes moveArrowRight{
    0%,
    100%{
        transform: translateX(0);
    }
    50%{
        transform: translateX(-15px);
    }
}
@keyframes moveArrowLeft{
    0%,
    100%{
        transform: translateX(0);
    }
    50%{
      transform: translateX(15px);
    }
}
footer{
    display: flex;
    align-items: center;
    padding-top: 12px;
    height: 60px;
    justify-content: center;
}
footer a{
    color: #fff;
    font-size: 12px;
}
.iziModal-content{
    text-align: left;
}
.modal_header{
    display: flex;
    justify-content: space-between;
}
.modal_header_title h3{
    font-size: 24px;
    font-weight: 800;
    text-transform: uppercase;
}
.modal_header_close{
    display: flex;
    align-items: center;
}
.modal_header_close a{
    width: 18px;
    height: 18px;
    background-image: url("../img/close.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.iziModal-content .messenger{
    justify-content: flex-start;
    flex-wrap: wrap;
}
.iziModal-content .messenger a{
    padding: 10px 32px;
}
.page_info{
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 15px;
    flex-direction: column;
    gap: 20px;
}
.page_info header h2{
    font-size: 30px;
    font-weight: 800;
    text-transform: uppercase;
}
.disabled {
    pointer-events: none;
    cursor: default;
}
a.online{
    position: absolute;
    left: 15px;
    top: 15px;
    background-image: url("../img/bg.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 10px 15px;
    text-shadow: none;
    color: #fff;
    display: flex;
    gap: 10px;
    border-radius: 10px;
    text-align: left;
    width: 240px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
.online_img{
    display: flex;
    align-items: center;
    position: relative;
    background-image: url("../img/me.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    flex: 0 0 50px;
}
.online_img::after{
    content: '';
    position: absolute;
    left: 4px;
    bottom: 4px; 
    width: 8px;
    height: 8px;
    background-color: #44df00;
    border-radius: 50%;
    z-index: 2;
}
.online_img::before{
    content: '';
    position: absolute;
    left: 4px;
    bottom: 4px;
    width: 8px;
    height: 8px;
    background-color: #44df00;
    border-radius: 50%;
    z-index: 1;
    opacity: 0.7;
    animation: wave 2s infinite ease-out;
}
@keyframes wave{
    0%{
        transform: scale(1);
        opacity: 0.7;
    }
    50%{
        opacity: 0.3;
    }
    100%{
        transform: scale(2.5);
        opacity: 0;
    }
}
.online_container{
    display: flex;
    flex-direction: column;
    gap: 3px;
    justify-content: center;
}
.online_title{
    font-size: 15px;
    font-weight: 800;
    text-transform: uppercase;
}
.online_descr{
    font-size: 11px;
    font-weight: 400;
}
.online_descr span{
    color: #2ab312;
    font-weight: 600;
}
a.connect{
    position: fixed;
    z-index: 100;
    right: 15px;
    bottom: 15px;
    width: 60px;
    height: 60px;
    background-image: url("../img/me.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 50%;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
.connect::after{
    content: '';
    position: absolute;
    left: 6px;
    bottom: 4px; 
    width: 8px;
    height: 8px;
    background-color: #44df00;
    border-radius: 50%;
    z-index: 2;
}
.connect::before{
    content: '';
    position: absolute;
    left: 6px;
    bottom: 4px;
    width: 8px;
    height: 8px;
    background-color: #44df00;
    border-radius: 50%;
    z-index: 1;
    opacity: 0.7;
    animation: wave 2s infinite ease-out;
}
.connect_info{
    position: fixed;
    bottom: 70px;
    right: 70px;
    font-size: 12px;
    font-weight: 500;
    text-shadow: none;
    text-align: left;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom-left-radius: 20px;
    padding: 10px 15px;
    background: #fff;
    color: #000;
    box-shadow: 0 0 8px 1px rgb(0 0 0 / 40%);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.8s ease-in-out, visibility 0.8s ease-in-out;
    z-index: 100;
}
.connect_info span{
    font-weight: 500;
    color: #2ab312;
}
.connect_info.show{
    opacity: 1;
    visibility: visible;
}
.connect_info.hide{
    opacity: 0;
    visibility: hidden;
}
.connect, .connect_info{
    cursor: pointer;
}
.firefly{
    position: fixed;
    width: 2px;
    height: 2px;
    border-radius: 100%;
    background: rgb(255, 191, 0);
    box-shadow: 0 0 5px 2px rgb(255, 204, 0);
    opacity: 0;
}
.disclaimer{
    font-size: 14px;
    color: #ffbd22;
}
