/*
Theme Name: mysite
Author: ermakoffspb
Version: 1.0
*/

/* --- Основное --- */

* {
    box-sizing: border-box;
    margin: 0;
   
}

html, body {
    height: 100%;
}

body {
    font-family: 'Montserrat', sans-serif;
    margin: 0;
    padding-top: 98px; /*  высота header */
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

main {
    flex: 1 0 auto;
}

.site-footer {
    flex-shrink: 0;
}

/* --- полоса БАЗА ЗНАНИЙ --- */

.knowledge-strip {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #111;
    text-align: center;
    padding: 4px 0;
    font-size: 12px;
    letter-spacing: 0.5px;
    z-index: 1100;
    color: #FFF1DA;
}

.knowledge-strip a {
    color: #fff;
    text-decoration: none;
    font-weight: 500;
}

.knowledge-strip a:hover {
    opacity: 0.7;
}
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Базовая структура */

.site-header,
.hero,
.section,
.site-footer {
    width: 100%;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* задаю h3 */
.service-text h3 {
    font-size: 30px;
    font-weight: 600;
    margin-bottom: 10px;
}
.service-text p {
    margin-bottom: 5px;
    
}
/* секции */
.section {
    padding: 50px 0;
}

/* ===== HEADER ===== */

.site-header {
    height: 76px;
    position: fixed;
    top: 22px;
    left: 0;
    width: 100%;
    z-index: 1200;
    background: #1A2636; /* или любой цвет */
}

.header-inner {
    display: flex;
    align-items: center;
    height: 100%;
    /*background: #1A2636; /*url('assets/img/back1.png') center/cover no-repeat;*/
}

/* Левая часть */
.header-left {
    display: flex;
    align-items: center;
    margin-left: 50px;
}

.brand-logo {
    width: 96px;
    height: 96px;
    margin: 0;
    position: relative;
    top: 2px;
}

.brand-link{
display:flex;
align-items:center;
text-decoration:none;
color:inherit;
}

.brand-text {
    font-family: 'Roboto', sans-serif;
    line-height: 1.1;
    margin-left: 14px;
}

.brand-main {
    font-size: 31px;
    font-weight: 800;
    color: #9DA9BD;
    letter-spacing: 0.5px;
}

.brand-sub {
    font-size: 18px;
    font-weight: 600;
    color: #DCD7D0;
    margin-top: 2px;
}

.header-contacts {
    display: flex;
    gap: 40px;
    font-size: 16px;
    line-height: 1.4;
    color: #FFF1DA;
    text-align: right;
    flex: 1;
    margin-left: 40px;
    margin-right: 20px;

    justify-content: flex-end;  /* ← ключ */
}

/* Адрес прижимаем вправо */
.header-address {
    text-align: right;
}

.header-btn {
    margin-right: 50px;
    padding: 12px 18px;
    background: #F07C28;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    border-radius: 6px;
    width: 200px;       /* фикс ширина */
    flex-shrink: 0;     /* не сжимается */
    text-align: center;
}


/* фон страницы */
body {
    background: #1A2636;
}

/* ===== HERO ===== */ 
.hero { width: 100%; 
min-height: 560px; 
padding-top: 0; /* высота header */ 
background: url('/wp-content/themes/mysite/assets/img/muzhiki2.png') center/cover no-repeat; } 

.hero-inner { display: flex; 
justify-content: center; } 

.hero-content { display: flex; 
flex-direction: column; 
justify-content: flex-end; 
min-height: 500px; } /* Отступ слева 50 как в header */ 

.hero-title, .hero-description, .hero-rodnoe { margin-left: 50px; } 

/* Заголовок */ 
.hero-title { color: #fff1da; 
font-size: 33px; font-weight: 600; 
letter-spacing: -1px; line-height: 1.3; } 

.hero-main { font-size: 77px; font-weight: 600; letter-spacing: 1px; display: block; } 
.hero-sub { font-size: 44px; display: block; } 

/* Описание */ 
.hero-description { color: #fff1da; font-size: 30px; 
font-weight: 300; line-height: 1.5; margin-top: 15px; } 

/* Текст Родное Место */ 
.hero-rodnoe { color: #fff1da; font-size: 34px; 
font-weight: 400; line-height: 1.5; margin-top: 20px; }

/* Кнопки Позвонить и как доехать */ 
.btn { display: inline-flex; 
    justify-content: center; 
    align-items: center; 
    width: 260px; /* фиксированная ширина */ 
    height: 56px; /* выше и солиднее */ 
    border-radius: 8px; 
    font-weight: 600; 
    text-decoration: none; 
    font-size: 18px; gap: 4px; } 

.btn-primary { background: #D67B32; color: #FFF1DA; } 

.btn-dark { background: #1A2636; color: #fff; }

/* ===== WHAT WE DO ===== */

.section-services {
    background: #F2E5D6;
    padding: 65px 0;
    color: #111;
}

.section-services .container {
    padding-left: 70px;
    padding-right: 70px;
}

.section-title {
    font-size: 38px;
    text-align: center;
    margin-bottom: 25px;
    font-weight: 600;
    letter-spacing: 1px;
}



/* Сетка */
.services-grid {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Карточка — 2 колонки */
.service-card {
    display: flex;
    align-items: center;
    gap: 40px;
}

/* Левая колонка — картинка */
.service-image {
    flex: 0 0 300px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.service-image img {
    max-width: 300px;
    max-height: 300px;
    width: auto;
    height: auto;
    display: block;
}

/* Правая колонка — текст */
.service-text {
    flex: 1;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.4;
}


/* Планшет */
@media (max-width: 1000px) {
    .service-card {
        gap: 30px;
    }

    .service-text {
        font-size: 20px;
    }
}

/* Смартфон */
@media (max-width: 768px) {
    .service-card {
        flex-direction: column;
        text-align: center;
    }

    .service-image {
        flex: unset;
    }

    .service-text {
        font-size: 20px;
    }
}

/* ===== TAHOLOVE ===== */

.section-taholove {
    position: relative;
    min-height: 520px;
    padding: 0px 20px;
    background: url('/wp-content/themes/mysite/assets/img/taholove3.png') center center no-repeat;
    background-size: cover;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.section-taholove-title {
    background: #F2E5D6;
    padding: 0px 0 25px 0;
}

.section-taholove-title .container {
    max-width: 1060px;
    padding: 0;
}

.section-taholove-title .section-title {
    margin: 0;
    text-align: center;
}

.taholove-inner{
position:relative;
z-index:2;
text-align:center;
}

.section-taholove .section-title{
color:#FFF1DA;
margin-bottom:40px;
}

.taholove-content{
max-width:900px;
margin:0 auto;
}

/* Тонировка 60% */
.section-taholove::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.70);
}

/* Контент поверх */
.taholove-content {
    position: relative;
    z-index: 2;
    max-width: 1100px;
}

.taholove-text {
    font-size: 26px;
    line-height: 1.6;
    font-weight: 500;
    font-family: 'Roboto', sans-serif;
    color: #FFF1DA;
}

/* ===== ЦЕНЫ, КТО МЫ  ===== */

.section-blocks {
    padding: 0;
}

.blocks-grid {
    display: grid;
    grid-template-columns: repeat(2, 600px);
    grid-auto-rows: 350px; /* высота блока */
    gap: 0;
    padding: 0;
}

.block-item {
    position: relative;
    overflow: hidden;
}

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

/* Тонировка 50% */
.block-item::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.5);
}

/* Текст */
.block-item h3 {
    position: absolute;
    z-index: 2;
    color: #FFF1DA;
    font-size: 28px;
    font-weight: 600;
    left: 30px;
    bottom: 30px;
    margin: 0;
}

/* -- ПОДВАЛ --  */

.site-footer {
    background: #1A2636;   /* если хочешь тёмный */
    color: #FFF1DA;
    padding: 8px 0;
    font-size: 14px;
    line-height: 1.2;
}

.site-footer .container {
    text-align: center;
}


/* ===== SECTION ===== */

.section-hover-cards {
    padding: 30px 0 50px 0;
    background: #F2E5D6;
}

.section-hover-cards .container {
    max-width: 1060px;
    padding: 0;
}
.section-hover-cards .section-title {
    margin-top: 20px;   /* регулируй 20–40 */
}

.hover-grid {
    display: grid;
    grid-template-columns: repeat(2, 515px);
    gap: 30px;
}

/* ===== CARD ===== */

.hover-card {
    position: relative;
    height: 330px;
    overflow: hidden;
    cursor: pointer;
}

/* картинка */
.hover-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
}

/* лёгкий зум при наведении */
.hover-card:hover img,
.hover-card:focus-within img {
    transform: scale(1.05);
}

/* ===== OVERLAY ===== */

.hover-overlay {
    position: absolute;
    inset: 0;
    color: #FFF1DA;
}

/* --- цвет ссылки --- */
.hover-overlay a {
    color: #F07A24;
    text-decoration: none;
}

.hover-overlay a:hover {
    text-decoration: underline;
}

/* затемнение */
.hover-overlay::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.70);
    opacity: 0;
    transition: opacity 0.4s ease;
}

/* ===== ЗАГОЛОВОК — СТРОГО ПО ЦЕНТРУ ===== */

.hover-overlay h3 {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    transform: translateY(-50%);
    margin: 0;
    padding: 22px 25px;
    text-align: center;   /* НЕ МЕНЯЕТСЯ */
    font-size: 26px;
    font-weight: 500;
    background: rgba(0,0,0,0.70);
    transition: top 0.4s ease, transform 0.4s ease, background 0.4s ease;
    z-index: 2;
}

/* ===== ОСНОВНОЙ ТЕКСТ ===== */

.hover-overlay p {
    position: absolute;
    top: 120px;
    left: 25px;
    right: 25px;
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1.5;
    font-weight: 200;
    text-align: left;   /* всегда слева */
    opacity: 0;
    transform: translateY(15px);
    transition: opacity 0.4s ease, transform 0.4s ease;
    z-index: 2;
}

/* ===== HOVER ===== */

.hover-card:hover .hover-overlay::before,
.hover-card:focus-within .hover-overlay::before {
    opacity: 1;
}

/* заголовок просто поднимается */
.hover-card:hover h3,
.hover-card:focus-within h3 {
    top: 0px;
    transform: translateY(0);
    background: transparent;
}

/* текст появляется */
.hover-card:hover p,
.hover-card:focus-within p {
    opacity: 1;
    transform: translateY(0);
}

/* ===== MAP SECTION ===== */
.section-map {
    position: relative;
    width: 100%;
    height: 470px;
    overflow: hidden;
}

#map {
    width: 100%;
    height: 470px;
   /* scroll-margin-top: 150px;*/
}


/* ===== ЦЕНЫ И О НАС SECTION ===== */

.section-about-prices {
    background: #F2E5D6;
    padding: 50px 0;
}

.section-about-prices .container {
    max-width: 1060px;
    padding: 0;
}

.about-prices-grid {
    
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: stretch; /* важно */
}

.about-col {
    display: flex;
    flex-direction: column;
}

.dark-block {
    flex: 1; /* растягивает блок по высоте колонки */
}

.about-col h2 {
    margin-bottom: 25px;
}

/* --- ТЕКСТ В ПРАВОМ БЛОКЕ О НАС ---- */
.about-text {
    font-size: 18px;
}

.dark-block {
    background: #1A2636;
    color: #FFF1DA;
    padding: 40px;
}

.prices-table {
    display: flex;
    flex-direction: column;
}

.price-row {
    display: grid;
    grid-template-columns: 1fr 180px; /* фикс ширина под цену */
    align-items: center;
    padding: 18px 0;
    border-bottom: 1px solid rgba(255,241,218,0.15);
}

.price-row:first-child {
    padding-top: 0;
}

.price-row span:last-child {
    text-align: right;
    white-space: nowrap;
}

.price-row:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

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

.about-text ul {
    margin-top: 20px;
    padding-left: 18px;
}

.about-text li {
    margin-bottom: 10px;
}

/* ===== DOCUMENTS SECTION ===== */

.section-docs {
    position: relative;
    padding: 50px 0;
    background: url('/wp-content/themes/mysite/assets/img/taholove.png') center center no-repeat;
    background-size: cover;
}
.link-docs {
    color: #D67B32;
    text-decoration: none;
}

.section-docs::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.73); /* регулируй затемнение */
}

.section-docs .container {
    max-width: 1060px;
    padding: 0;
    position: relative;
    z-index: 2;
    color: #FFF1DA; /* если фон тёмный */
}

.section-docs .container {
    max-width: 1060px;
}

.docs-wrapper {
    max-width: 900px; /*ширина контента*/
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 50px;
    margin: 40px auto 0; 
}

.section-docs .docs-block {
    font-family: 'Roboto', sans-serif;
}

.docs-block h3 {
    font-size: 26px;
    margin-bottom: 20px;
    font-weight: 600;
}

.docs-block ul {
    padding-left: 20px;
}

.docs-block li {
    font-size: 18px;
    margin-bottom: 12px;
    line-height: 1.5;
}

#docs-section {
    scroll-margin-top: 90px;
}

/* ===== ГДЕ НАС ИСКАТЬ ===== */

.section-contacts {
    background: #F2E5D6;
    padding: 50px 0 35px 0;
}

.section-contacts .container {
    max-width: 1060px;
    padding: 0;
}

.contacts-info-narrow {
    max-width: 900px;   /* уже чем 1060 */
    margin-left: 80px;  /* сдвиг вправо */
    font-size: 18px;
    line-height: 1.6;
}

.contacts-label {
    margin-top: 25px;
    font-weight: 600;
}

.contacts-phones div {
    margin-bottom: 6px;
}

.phone-main a {
    font-size: 22px;
    font-weight: 700;
}

.phone-main span {
    font-size: 15px;
    color: #666;
    margin-left: 6px;
}

/* ===== ДЕСКТОП ===== */

.contacts-phones a {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
    color: #000000;
}


/* ===== МОБИЛЬНЫЕ  ===== */

@media (max-width: 768px) {

    .contacts-phones a {
        pointer-events: auto;
        cursor: pointer;
        text-decoration: underline;   /* ← подчёркивание возвращаем */
    }

}
.contacts-info {
    margin-bottom: 40px;
    font-size: 18px;
    line-height: 1.6;
}

.contacts-info a {
    color: #D67B32;
    text-decoration: none;
}

.contacts-info a:hover {
    text-decoration: underline;
}

.contacts-photos {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    
}

.contacts-photos img {
    width: 100%;
    height: 380px;
    object-fit: cover;
    display: block;
}

/* ===== CONTACT BUTTONS ===== */

.contacts-actions {
    margin-left: 80px;
    display: flex;
    gap: 20px;
    margin-top: 30px;
    margin-bottom: 50px;
    flex-wrap: wrap;
}

    .btn {
    gap: 10px;
}
/* TELEGRAM */

/* TELEGRAM — залитый */
.btn-telegram {
    background: #229ED9;
    border: none;
    color: #fff;
}


.btn-icon {
    width: 20px;
    height: 20px;
    margin-right: 8px;
    display: inline-block;
}

/* КНОПКА МАРШРУТА — ТОЛЬКО МОБИЛЬНАЯ */
.btn-route-mobile {
    display: none;
    background: #0F1E2E;
    color: #FFF1DA;
    border: none;
}

/* уменьшаем высоту именно в контактах */
.contacts-actions .btn {
    width: 260px;
    height: 48px;
    justify-content: center;
    font-size: 16px;
}

/* второстепенные кнопки */
.btn-outline {
    background: transparent;
    border: 2px solid #1A2636;
    color: #1A2636;
}

.btn-outline:hover {
    background: #1A2636;
    color: #FFF1DA;
}

/* мобильная версия */
@media (max-width: 768px) {

    .contacts-actions {
        flex-direction: column;
        gap: 12px;
    }

    .contacts-actions .btn {
        width: 100%;
        height: 50px;
        font-size: 16px;
    }

}

/* ===== MODAL ===== */

.modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.65);
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s ease;
    z-index: 2000;
}

.modal-overlay.active {
    opacity: 1;
    visibility: visible;
}

.modal {
    background: #F2E5D6;
    padding: 40px;          /* НЕ трогаем */
    width: 420px;
    border-radius: 10px;
    position: relative;
    text-align: center;
}

.modal h3 {
    margin-bottom: 10px;
}

.modal-sub {
    font-size: 14px;
    margin-bottom: 25px;
    color: #666;
}

.modal-form {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.modal-form input {
    padding: 12px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 6px;
}

.modal-form button {
    padding: 14px;
    background: #D67B32;
    color: #FFF1DA;
    border: none;
    border-radius: 6px;
    font-weight: 500;
    cursor: pointer;
    font-size: 16px;
}

.modal-form button:hover {
    background: #c46b25;
}

.modal-close {
    position: absolute;
    top: 12px;
    right: 15px;
    background: none;
    border: none;
    font-size: 22px;
    cursor: pointer;
}
.modal-success {
    background: #1A2636;
    color: #FFF1DA;

    margin: -36px;          /* 40 - 4 = 36 */
    padding: 40px;

    border-radius: 6px;     /* 10 - 4 = 6 */

    font-size: 26px;
    font-weight: 600;
    text-align: center;
}

/* Определяем доп страницы. БАЗА ЗНАНИЙ */

.page-content {
    flex: 1 0 auto;
    background: #F2E5D6;
    padding: 50px 0;
    text-align: justify;
}

.page-content .section-title {
    margin: 0 0 30px 0;
    letter-spacing: 0;
    margin-top: 40px;
    text-align: left;
    padding-left: 20px;
}

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

.page-content li {
    font-size: 18px;
    margin-bottom: 12px;
    line-height: 1.2;
}

.page-content h1 {
    font-size: 42px;
    font-weight: 600;
}

.page-content .container h1{
max-width:900px;
margin-left:auto;
margin-right:auto;
margin-bottom:20px;
}

.page-content h2 {
    font-size: 26px;
    margin-top: 24px;
    margin-bottom: 15px;
    font-weight: 600;
    padding-left: 20px;
}

.page-content p {
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 10px;
}

.page-content a {
    color: #D67B32;
    text-decoration: none;
    font-weight: 500;
}

.page-content a:hover {
    text-decoration: underline;
}

.container.narrow-container {
    max-width: 1060px;
    padding: 0;
}

.page-content .narrow-container {
    margin: 0 auto;
}

.knowledge-wrapper {
    max-width: 900px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* --- НАВИГАЦИЯ --- Хлебные Крошки*/

.breadcrumbs{
display:flex;
align-items:center;
gap:8px;
font-size:16px;
color:#777;
margin-bottom:20px;
}

.breadcrumbs a,
.breadcrumbs span{
display:inline;
}

.breadcrumbs a{
color:#777;
text-decoration:none;
}

.breadcrumbs a:hover{
text-decoration:underline;
}


/* ============================= */
/* ========= MOBILE ============ */
/* ============================= */


/* по умолчанию скрываем мобильную кнопку ПОЗВОНИТЬ*/
.header-btn-call {
    display: none;
}

@media (max-width: 768px) {

    body {
        padding-top: 55px;
    }

    /* ===== HEADER ===== */

    .site-header {
        height: 55px;
    }

    .header-inner {
        justify-content: center;
        gap: 20px;
    }

    .header-left {
        margin-left: 0;
    }

    .brand-logo {
        width: 60px;
        height: 60px;
        position: relative;
        top: 10px;
    }

    .brand-main {
        font-size: 12px;
    }

    .brand-sub {
        font-size: 9px;
    }

    .header-contacts {
        display: none;
    }

    .header-btn {
        font-size: 0; /* скрываем старый текст */
        margin-right: 0;
        padding: 8px 12px;
        width: auto;
    }
    
    .header-btn::after {
        content: "📞 ПОЗВОНИТЬ";
        font-size: 13px;
}

    .header-btn-modal {
        display: none;
    }

    .header-btn-call {
        display: inline-flex;
    }


    /* ===== HERO ===== */

    .hero {
        min-height: auto;
        padding: 50px 0;
        background-image: url('/wp-content/themes/mysite/assets/img/hero-mobile-main.png');
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        position: relative;
    }

    .hero::before {
        content: "";
        position: absolute;
        inset: 0;
        background: rgba(0,0,0,0.20);
        z-index: 1;
    }

    .hero-content {
        min-height: auto;
        position: relative;
        z-index: 2;
    }

    .hero-title,
    .hero-description,
    .hero-rodnoe {
        margin-left: 0;
        text-align: center;
        padding: 0 20px;
    }

    .hero-main {
        font-size: 34px;
        letter-spacing: 0;
    }

    .hero-sub {
        font-size: 20px;
    }

    .hero-description {
        font-size: 18px;
    }

    .hero-rodnoe {
        font-size: 18px;
    }



    /* ===== HOVER CARDS (MOBILE) ===== */

/* уменьшаем расстояние над ЧТО ДЕЛАЕМ */
.section-hover-cards {
    padding-top: 25px;
}

/* меняем порядок карточек */
.hover-card:nth-child(3) { order: 1; } /* Карты */
.hover-card:nth-child(4) { order: 2; } /* МАП */
.hover-card:nth-child(5) { order: 3; } /* Калибровки */
.hover-card:nth-child(1) { order: 4; } /* Продажа */
.hover-card:nth-child(6) { order: 5; } /* Ремонт */
.hover-card:nth-child(2) { order: 6; } /* Мониторинг */

/* контейнер */
.hover-grid {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 0 15px;
}

/* карточка */
.hover-card {
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: 260px;
    cursor: default;
}

/* картинка сверху */
.hover-card img {
    height: 260px;
    width: 100%;
    object-fit: cover;
    transform: none !important;
}

/* отключаем анимацию */
.hover-card:hover img,
.hover-card:focus-within img {
    transform: none;
}

/* overlay больше НЕ абсолютный */
.hover-overlay {
    position: relative;
}

/* ВАЖНО: полностью убираем затемнение */
.hover-overlay::before {
    display: none;
}

/* текст обычный, под картинкой */
.hover-overlay h3,
.hover-overlay p {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    transform: none;
    opacity: 1;
    background: none;
    padding: 15px 0;
    color: #111;
}

.hover-overlay h3 {
    font-size: 20px;
}

.hover-overlay p {
    font-size: 15px;
}

/* ===== СЕРЫЙ ФОН ПОД ТЕКСТОМ ХОВЕРА (MOBILE) ===== */

.hover-overlay {
    background: #2C2C2C;   /* серый фон */
    padding: 18px 15px;    /* внутренние отступы */
}

.hover-overlay h3,
.hover-overlay p {
    color: #FFF1DA;        /* светлый текст на сером фоне */
}



/* одинаковый заголовок для всех крупных секций */
.section-about-prices .section-title,
.section-hover-cards .section-title {
    text-align: center;
    margin: 0px 0 5px 0; 
}


    /* ===== TAHOLOVE ===== */

.taholove-title {
    position: relative;
    z-index: 2;
    text-align: center;
    margin-bottom: 20px;
}

/* уменьшаем расстояние после hover-карточек */
.section-hover-cards {
    padding-bottom: 0px;
}
/* уменьшаем расстояние перед НАПОМИНАЕМ */
.section-taholove-title {
    padding: 25px 0 5px 0;
}

.section-taholove-title .section-title {
    text-align: center;
}
.section-taholove .section-title {
    color: #FFF1DA;
}

    .section-taholove {
        height: auto !important;
        padding: 10px 20px;
        background-size: cover;
    }

/* уменьшаем верх у блока ЦЕНЫ */
.section-about-prices {
    padding-top: 25px;
}

    .taholove-text {
        font-size: 18px;
    }

    /* ===== ЦЕНЫ + О НАС ===== */



    .about-prices-grid {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 0 15px;
    }

    .dark-block {
        padding: 25px;
    }

    .price-row {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    .price-row span:last-child {
        text-align: left;
    }

    /* ===== ДОКУМЕНТЫ ===== */

    .docs-wrapper {
        gap: 30px;
        padding: 0 15px;
    }

    .docs-block li {
        font-size: 16px;
    }
    
    .section-docs .section-title {
        font-size: 30px;
        text-align: center;
    }   


    /* ===== КОНТАКТЫ ===== */
   
   /* уменьшаем воздух над ГДЕ НАС НАЙТИ */
.section-contacts {
    padding-top: 25px;
}

/* Заголовок секции контактов по центру */
.section-contacts .section-title {
    text-align: center;
}

   
   /* Контактный текст аккуратно слева */
.contacts-info-narrow {
    margin-left: 0;
    padding-left: 10px;
    text-align: left;
}
    

/* Контейнер кнопок — по центру */
.contacts-actions {
    margin-left: 0;
    justify-content: center;
    align-items: center;
}

/* Жёсткая ширина кнопок */
.contacts-actions .btn {
    width: 300px;
}

.btn-route-mobile {
        display: inline-flex;
        width: 300px; /* как остальные мобильные */
        height: 50px;
        justify-content: center;
        align-items: center;
        font-size: 16px;
    }

.btn-call-main::after {
    content: none !important;
}

    .contacts-photos {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .contacts-photos img {
        height: auto;
    }



    /* ===== MAP ===== */

    .section-map {
        height: 370px;
    }

    /* ===== MODAL ===== */

    .modal {
        width: 90%;
        padding: 30px;
    }
html, body {
    overflow-x: hidden;
}

  
}