body {
    background: var(--lp-bg);
}

.landing-page {
    background: rgba(245,245,245);
    margin: auto;
    border-radius: 20px;
    min-width: 320px;
    font-size: 20px;
}


div.desktop {
    display: none !important;
}


header {
    
}


/* Название компании */
.header-company {
    display: flex;
    gap: 15px;
    align-items: center;
    justify-content: center;
    padding: 25px;
    position: relative;
    margin-bottom: 30px;
}
    
    .header-company img {
        width: 100%;
    }


/* Контактная информация в шапке */
.header-contacts {
    margin: auto;
    position: relative;
}
    .call-btn {
        width: 280px;
        height: 50px;
        margin: auto;
        display: flex;
        align-items: center;
        background: var(--primary-color);
        border-radius: 30px;
        padding-left: 5px;
        position: relative;
        box-shadow: 0 4px 10px rgba(0,0,0,.2);
    }
    .call-btn > * {
        display: block;
    }
    .call-btn-img {
        width: 40px;
        height: 40px;
        background: var(--lp-bg) url(../imgs/phone-call.svg) no-repeat center;
        background-size: 50%;
        border-radius: 50%;
         animation: 1200ms ease 0s normal none 1 running shake;
        animation-iteration-count: infinite;
        -webkit-animation: 1200ms ease 0s normal none 1 running shake;
        -webkit-animation-iteration-count: infinite;
    }
    .call-btn-number {
        padding: 0 25px 0 15px;
        font-weight: bold;
        font-size: 120%;
        color: var(--btn-text-color);
        white-space: nowrap;
    }
    .call-btn-number-hide {
        position: absolute;
        top: 50%;
        right: 15px;
        background: linear-gradient(to right, transparent, var(--primary-color) 85%);
        width: 50%;
        height: 40px;
        transform: translateY(-50%);
        transition: opacity .3s;
        display: none;
        z-index: 0;
    }
    .call-btn-number-hide:hover {
        opacity: 0;
    }
    .call-time {
        text-align: center;
        margin-top: 6px;
        font-size: 90%;
    }
    
    .call-btn.float {
        position: fixed;
        top: 15px;
        left: 50%;
        transform: translateX(-50%) scale(.8);
        z-index: 55;
        font-size: 20px;
    }


    #message-btn {
    }
    
    #message-btn.call-btn {
        width: 280px;
        height: 50px;
        margin: auto;
        margin-top: 16px;
        margin-bottom: 16px;
        display: flex;
        align-items: center;
        background: #41BD4F;
        border-radius: 30px;
        padding-left: 5px;
        position: relative;
        box-shadow: 0 4px 10px rgba(0,0,0,.2);
    }
    #message-btn .call-btn-img {
        background: var(--lp-bg) url(../imgs/whatsapp-message.svg) no-repeat center;
        background-size: 60%;
    }


/* Экран с главным предложением */
.offer {
    margin: 60px 0 24px;
}
.offer h1 {
    text-align: center;
    user-select: none;
    margin: auto;
    padding: 20px;
}
    .offer-service {
        font-size: 30px;
    }
        .offer-service p:first-child {
            font-size: 120%; 
            text-transform: uppercase;
        }
        .offer-service p:last-child {
            font-size: 70%;
        }
        .offer-service p {
            text-transform: lowercase;
            line-height: 120%;
        }
        
    
    .offer-target {
        margin-top: 80px;
        font-size: 80%;
        margin-bottom: 96px;
    }
        .offer-target .target {
            background: var(--primary-color);
            padding: 8px 15px;
            color:  var(--btn-text-color);
            display: flex;
            justify-content: center;
            max-width: 320px;
            font-weight: bold;
            margin: auto;
            margin-top: 16px;
        }
    .offer-target.desktop {display: none;}

    /* Форма обратной связи */
    .offer-callback-form {
        margin: auto;
    }
    .offer-theme-img {
        width: 290px;
        height: 290px;
        background: var(--lp-theme-icon);
        background-size: contain;
        margin: 90px auto;
        display: none;
    }
    .offer-callbackform {
        max-width: 320px;
        margin: auto;
    }
    .offer-form {
        background: rgba(253,253,253);
        padding: 25px;
        border-radius: 15px;
        text-align: center;
        margin-top: 7px;
        position: relative;
    }
        .offer-form h4 {
            font-size: 150%;
        }
        .offer-form p {
            font-size: 80%;
        }
        .offer-form p.offer-form-desc {
            margin: 10px 0;
        }
        .offer-form input#client-tel {
            width: 100%;
            text-align: center;
            background: rgba(245,245,245);
            border: none;
        }
        .offer-form input#client-tel::placeholder {
            font-size: 90%;
            opacity: .3;
            transition: opacity .3s;
        }
        .offer-form input#client-tel:focus::placeholder {
            opacity: 0;
        }
        .offer-form button#send-client-tel {
            width: 100%;
            border: none;
            background: var(--primary-color);
            color: var(--btn-text-color);
            transition: transform .3s, opacity .3s;
        }
        .offer-form button#send-client-tel:active {
            transform: scale(.9);
        }
        .offer-form button#send-client-tel:disabled {
            transform: scale(1);
            opacity: .3;
        }

        p.offer-form-note {
            margin-top: 8px;
            font-size: 60%;
        }

    /* Блок с ценой на диагностику */
    .offer-price {
        text-align: center;
        margin-top: 90px;
    }
        .offer-price > div:first-child {
            font-size: 150%;
            font-weight: bold;
        }
        .offer-price > div:nth-child(2) {
            font-size: 120%;
            padding: 6px 0;
        }
        .offer-price > div:last-child {
            font-size: 70%;
        }

/* Блок с марками */
.brand-list {
    background: rgba(253,253,253);
    margin: auto;
    overflow-x: scroll;
    overflow-y: hidden;
}
    .brand-items {
        width: fit-content;
        display: flex;
    }
    .brand-items img {
        height: auto;
        width: 80%;
    }
    .brand-items > div {
        height: 80px;
        width: 180px;
        display: flex;
        justify-content: center;
        align-items: center;
        /* border-right: 1px solid rgba(245,245,245);
        border-left: 1px solid rgba(245,245,245); */
        transition: opacity .3s;
    }
    
    .brand-list > div:last-child {
        font-size: 70%;
        text-align: center;
        opacity: .6;
        padding: 12px;
    }

    
    
/* Блок преимуществ */
h2 {
    text-align: center;
    font-size: 200%;
    margin: 120px auto;
    padding: 0 15px;
    max-width: 320px;
}

    .advantages-center {
        width: 280px;
        height: 280px;
        background: var(--lp-theme-icon);
        margin: 60px auto;
    }
    .advantages-left > div, 
    .advantages-right > div {
        text-align: center;
        max-width: 320px;
        margin: 0 auto 50px;
    }
    .advantages-item h3 {
       margin-bottom: 26px;
       padding: 0 15px;
       font-weight: bold;
    }
    .advantages-item p {
       font-size: 80%;
       padding: 0 12px;
    }

.advantages-company {
    text-align: center;
    margin-top: 90px;
}
    .advantages-company > div:last-child {
        margin: auto;
        margin-top: 36px;
        max-width: 320px;
        font-size: 80%;
        padding: 0 25px;
    }


/* Как мы работаем */
.steps {
    /* display: none; */
    margin: auto;
}
    .step {
        text-align: center;
        max-width: 320px;
        margin: 0 auto 50px;
    }
        .step > div:first-child {
            font-size: 500%;
            font-weight: 800;
        }
        .step > div:last-child {
            margin-top: 26px;
            font-size: 90%;
            padding: 0 15px;
        }

.steps-final {
    text-align: center;
    margin: auto;
    margin-top: 60px;
    max-width: 320px;
}
    .steps-theme-img {
        width: 120px;
        height: 120px;
        background: var(--lp-theme-icon);
        margin: auto;
    }
    .steps-final > div:last-child {
        margin-top: 26px;
        font-weight: bold;
        padding: 0 15px;
    }
    
    
/* Отзывы */
.profi-ru {
    background: #EF1C39;
    color: white;
    font-weight: bold;
    padding: 2px 12px;
    text-transform: uppercase;
}
.reviews {
    margin: auto;
    padding: 15px;
}
.reviews-stats {
    display: flex;
    gap: 16px;
    align-items: center;
    margin-bottom: 26px;
}
.reviews-stats-value {
    font-size: 60px;
    font-weight: bold;
}
.rating-desc {
    margin-top: 4px;
    font-size: 90%;
    text-align: center;
}

    .review-item {
        background: rgba(253,253,253);
        border-radius: 16px;
        padding: 15px;
        margin-bottom: 16px;
    }
        .review-user-data {
            display: flex;
            gap: 16px;
        }
        .review-user-name {
            font-size: 80%;
            margin-left: 3px;
            margin-bottom: 3px;
        }
        .review-user-img {
            width: 40px;
            height: 40px;
            display: flex;
            align-items: center;
            justify-content: center;
            background: #33313C;
            color: rgba(253,253,253);
            font-size: 130%;
            border-radius: 50%;
        }
        .review-user-rating {
            /* display: flex; */
            align-items: flex-end;
            gap: 20px;
        }
            .review-user-rating-stars {
                display: inline-flex;/* 
                width: 90px; */
                position: relative;
            }
            .review-user-rating-stars img {
                width: 20px;
            }
            .review-user-rating-stars.plus-five img:last-child {
                transform: rotate(-8deg);
                position: relative;
                top: -1.5px;
            }
            .review-user-rating-stars.plus-five::after {
                content: '';
                width: 8px;
                height: 8px;
                background: url(../imgs/plus_profi.svg) no-repeat center;
                background-size: 100%;
                display: block;
                position: absolute;
                left: 100%;
                bottom: 0;
                transform: rotate(45deg) translateY(-1px) translateX(-3px);
            }
            .review-user-rating-stars.plus-five::before {
                content: '';
                width: 11px;
                height: 11px;
                background: url(../imgs/plus_profi.svg) no-repeat center;
                background-size: 100%;
                display: block;
                position: absolute;
                left: 100%;
                top: 0;
                bottom: 1.5px;
                transform: rotate(10deg) translateX(1px) translateY(-2px);
            }
            .review-user-rating-date {
                font-size: 80%;
                margin-left: 3px;
                opacity: .5;
            }
            
    .review-user-message {
        padding-left: 60px;
        font-size: 90%;
        padding-top: 10px;
    }
    .review-user-cost {
        padding-left: 60px;
        margin-top: 12px;
        font-size: 90%;
    }
        .review-user-cost > p:first-child {
            opacity: .3;
            margin-bottom: 2px;
            font-size: 90%;
        }
    .review-user-photo {
        margin-left: 60px;
        margin-top: 12px;
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 8px;
    }
        .review-user-photo img {
            width: 100px;
        }



/* Блок с контактными данными */
footer {
    margin: auto;
    margin-top: 120px;
    padding: 60px 25px 25px;
    width: 320px;
    display: inline-block;
}
    footer > div:first-child {
        margin-bottom: 16px;
        font-size: 80%;
        font-weight: bold;
        opacity: .7;
    }
    footer > div:last-child {
        font-size: 60%;
        opacity: .3;
    }
    
