/* ===== БАЗА ===== */
* { margin:0; padding:0; box-sizing:border-box; }
body { 
    font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif; 
    background:#f8f9fa; 
    color:#333; 
    line-height:1.6;
    -webkit-text-size-adjust:100%;
    overflow-x:hidden;
}

/* ===== ШАПКА ===== */
.navbar { 
    background:linear-gradient(135deg,#8B1A1A 0%,#A52A2A 100%); 
    box-shadow:0 2px 15px rgba(139,26,26,.3); 
    padding:.8rem 0; 
}
.navbar .container { max-width:95%; margin:0 auto; }
.navbar-brand { 
    display:flex; 
    align-items:center; 
    font-weight:bold; 
    color:#fff !important; 
    text-decoration:none;
    gap:12px;
}
.navbar-brand img { 
    max-height:55px; 
    width:auto; 
    flex-shrink:0;
}
.navbar-brand-text { 
    font-weight:700; 
    font-size:1.3rem; 
    color:#fff; 
    letter-spacing:-0.3px; 
    text-shadow:0 1px 2px rgba(0,0,0,0.2); 
    line-height:1.2;
}
.navbar-brand-inn { 
    font-size:0.65rem; 
    color:rgba(255,255,255,0.9); 
    margin-top:4px; 
    display:flex; 
    gap:8px; 
    flex-wrap:wrap;
}

.navbar-toggler { 
    border-color:rgba(255,255,255,0.5); 
    padding:6px 12px; 
}
.navbar-toggler:focus { box-shadow:0 0 0 3px rgba(255,215,0,0.5); }

.nav-link { 
    color:#fff !important; 
    transition:all .3s; 
    margin:0 8px; 
    font-size:1rem; 
    font-weight:600; 
    padding:10px 20px; 
    border-radius:50px; 
    white-space:nowrap; 
}
.nav-link:hover { 
    color:#FFD700 !important; 
    background:rgba(255,255,255,.15); 
}
.nav-link i { margin-right:8px; }

/* ===== ПОДВАЛ ===== */
.footer { 
    background:linear-gradient(135deg,#8B1A1A 0%,#6B0F0F 100%); 
    color:#fff; 
    padding:40px 0 20px; 
    margin-top:50px; 
}
.footer h5 { 
    color:#FFD700; 
    margin-bottom:20px; 
    font-size:1.2rem; 
}
.footer p, .footer li { font-size:.95rem; }
.footer ul { list-style:none; padding:0; }
.footer li { margin-bottom:8px; }

/* ===== КНОПКИ ===== */
.btn-primary { 
    background:linear-gradient(135deg,#8B1A1A 0%,#A52A2A 100%); 
    border:none; 
    padding:12px 35px; 
    border-radius:50px; 
    transition:.3s; 
    font-size:1rem; 
}
.btn-primary:hover { 
    transform:translateY(-2px); 
    box-shadow:0 5px 20px rgba(139,26,26,.4); 
    background:linear-gradient(135deg,#6B0F0F 0%,#8B1A1A 100%);
}
.btn-light { background:#FFD700; color:#8B1A1A; font-weight:600; border:none; }
.btn-light:hover { background:#FFC700; color:#6B0F0F; }

/* ===== ЗАГОЛОВКИ ===== */
.section-title { 
    text-align:center; 
    margin-bottom:40px; 
    color:#8B1A1A; 
    font-weight:bold; 
    font-size:1.8rem; 
    position:relative; 
    padding-bottom:15px; 
}
.section-title:after { 
    content:''; 
    position:absolute; 
    bottom:0; 
    left:50%; 
    transform:translateX(-50%); 
    width:80px; 
    height:3px; 
    background:linear-gradient(90deg,#8B1A1A,#FFD700); 
}

/* ===== КАРТОЧКИ ===== */
.card { 
    border:none; 
    border-radius:10px; 
    box-shadow:0 3px 10px rgba(0,0,0,.1); 
    transition:.3s; 
    margin-bottom:20px; 
}
.card:hover { 
    transform:translateY(-5px); 
    box-shadow:0 5px 20px rgba(139,26,26,.15); 
}

/* ===== БЕЙДЖ "Лицензия МЧС | СРО" ===== */
.badge-experience { 
    background:#8B1A1A; 
    color:#fff; 
    padding:8px 20px; 
    border-radius:50px; 
    font-weight:bold; 
    font-size:1rem; 
    display:inline-block; 
    transition:all .3s ease; 
    cursor:pointer; 
    text-decoration:none;
}
.badge-experience:hover { 
    background:#6B0F0F; 
    transform:translateY(-2px); 
    box-shadow:0 5px 15px rgba(0,0,0,.2); 
}

/* ===== ТАБЫ УСЛУГ ===== */
.nav-tabs { 
    border-bottom:none; 
    gap:12px; 
    margin-bottom:35px; 
    flex-wrap:wrap; 
    position:relative; 
    justify-content:center;
}
.tab-btn { 
    background:linear-gradient(135deg,#f5f5f5 0%,#e8e8e8 100%); 
    border:none; 
    font-weight:600; 
    font-size:.95rem; 
    padding:12px 28px; 
    cursor:pointer; 
    color:#4a4a4a; 
    transition:all .3s ease; 
    border-radius:50px !important; 
    box-shadow:0 2px 5px rgba(0,0,0,.1); 
}
.tab-btn i { margin-right:10px; }
.tab-btn:hover { 
    transform:translateY(-3px); 
    box-shadow:0 5px 15px rgba(139,26,26,.3); 
    background:linear-gradient(135deg,#8B1A1A 0%,#A52A2A 100%); 
    color:#fff; 
}
.tab-btn.active { 
    background:linear-gradient(135deg,#8B1A1A 0%,#A52A2A 100%); 
    color:#fff; 
}
.tab-btn.active i { color:#FFD700; }
.tab-pane { animation:fadeIn .5s ease; }
@keyframes fadeIn { 
    from { opacity:0; transform:translateY(15px); } 
    to { opacity:1; transform:translateY(0); } 
}

/* ===== КОНТАКТНЫЕ ССЫЛКИ ===== */
.contact-link { 
    color:#8B1A1A; 
    text-decoration:none; 
    font-weight:600; 
    font-size:1.1rem; 
    transition:all 0.3s ease; 
    display:inline-block; 
}
.contact-link:hover { 
    color:#FFD700; 
    transform:translateX(5px); 
}
.contact-link i { margin-right:10px; color:#8B1A1A; transition:all 0.3s ease; }
.contact-link:hover i { color:#FFD700; }

/* ========================================================= */
/* ============== МОБИЛЬНАЯ АДАПТАЦИЯ ====================== */
/* ========================================================= */

/* Планшеты и телефоны */
@media (max-width: 991px) {
    .navbar-brand img { max-height:45px; }
    .navbar-brand-text { font-size:1.1rem; }
    .navbar-brand-inn { font-size:0.6rem; }
}

@media (max-width: 768px) {
    /* Шапка: логотип + короткое название */
    .navbar { padding:.5rem 0; }
    .navbar-brand { gap:8px; }
    .navbar-brand img { max-height:38px !important; }
    .navbar-brand-text { 
        font-size:.85rem !important; 
        line-height:1.2;
    }
    /* Скрываем длинное название и ИНН на мобильном */
    .navbar-brand-text .full-name { display:none; }
    .navbar-brand-inn { display:none; }
    .navbar-brand-text::after {
        content: 'ГК "КСБ"';
    }
    .navbar-brand-text .short-name { display:none; }

    /* Гамбургер-меню */
    .navbar-toggler { padding:6px 10px; }
    .navbar-collapse {
        background:linear-gradient(135deg,#6B0F0F 0%,#8B1A1A 100%);
        border-radius:10px;
        padding:15px;
        margin-top:10px;
    }
    .nav-link { 
        font-size:1.05rem !important; 
        padding:12px 20px !important; 
        margin:4px 0 !important; 
        text-align:center !important; 
        border-radius:8px !important;
        display:block;
    }
    .nav-link:hover { background:rgba(255,255,255,0.2) !important; }
    .nav-item { width:100%; }

    /* Заголовки */
    .section-title { 
        font-size:1.3rem !important; 
        margin-bottom:25px;
    }

    /* Карточки — на всю ширину */
    .col-md-4, .col-md-6, .col-md-3 { 
        width:100% !important; 
        flex:0 0 100% !important; 
        max-width:100% !important; 
    }

    /* Табы услуг: 2 колонки на мобильном */
    .nav-tabs { 
        gap:8px; 
        display:grid;
        grid-template-columns:1fr 1fr;
        margin-bottom:20px;
    }
    .nav-item { 
        list-style:none;
    }
    .tab-btn { 
        width:100%;
        padding:10px 8px; 
        font-size:.8rem; 
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:4px;
        line-height:1.2;
    }
    .tab-btn i { 
        margin-right:0; 
        font-size:1.2rem; 
        display:block;
    }

    /* Карточки внутри табов — компактнее */
    .card-body { padding:18px; }
    .card-body h4 { font-size:1.1rem; }
    .card-body ul { padding-left:20px; }
    .card-body li { font-size:.9rem; margin-bottom:6px; }

    /* Контактные ссылки крупнее */
    .contact-link { 
        font-size:1.15rem; 
        display:block;
        padding:8px 0;
        border-bottom:1px solid #f0f0f0;
    }
    .contact-link:last-child { border-bottom:none; }

    /* Подвал — вертикально */
    .footer { padding:30px 0 15px; }
    .footer h5 { font-size:1.05rem; margin-bottom:12px; }
    .footer p, .footer li { font-size:.9rem; }
    .footer .col-md-4 { margin-bottom:25px; }

    /* Кнопки — на всю ширину */
    .btn-lg { font-size:.95rem; padding:12px 20px; }
    .btn-primary, .btn-light { padding:12px 25px; }
}

/* Маленькие телефоны */
@media (max-width: 480px) {
    .navbar-brand img { max-height:32px !important; }
    .navbar-brand-text { font-size:.75rem !important; }

    .section-title { font-size:1.15rem !important; }

    /* Табы — по одной в ряд на очень маленьких экранах */
    .nav-tabs { grid-template-columns:1fr 1fr; }
    .tab-btn { padding:8px 6px; font-size:.72rem; }
    .tab-btn i { font-size:1.05rem; }

    /* Hero-блок — уменьшаем отступы */
    section[style*="padding:60px 0"] { padding:35px 0 !important; }
    h1[style*="font-size:2.5rem"] { font-size:1.5rem !important; }

    /* Заголовки h2, h3, h4 меньше */
    h2 { font-size:1.25rem; }
    h3 { font-size:1.1rem; }
    h4 { font-size:1rem; }

    /* Кнопка "Получить консультацию" */
    .btn-lg { padding:10px 18px; font-size:.88rem; }

    /* Отступы контейнера */
    .container { padding-left:12px; padding-right:12px; }
}

/* Ландшафтная ориентация на телефонах */
@media (max-width: 900px) and (orientation: landscape) {
    .navbar-brand-text { font-size:.85rem; }
    .hero-section { padding:30px 0; }
}