/* КРИТИЧЕСКИЕ ИСПРАВЛЕНИЯ ДЛЯ АДАПТИВНОСТИ */

/* Исправление горизонтального скролла */
* {
    max-width: 100%;
}

html, body {
    overflow-x: hidden;
}

/* Исправление контейнера */
.container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}

/* Исправление изображений */
img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Исправление таблиц на мобильных */
@media (max-width: 768px) {
    table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    
    .comparison-table-detailed {
        font-size: 12px;
    }
    
    .comparison-table-detailed th,
    .comparison-table-detailed td {
        padding: 8px 4px;
        font-size: 12px;
    }
}

/* Исправление кнопок на мобильных */
@media (max-width: 480px) {
    .btn {
        width: 100%;
        margin-bottom: 10px;
    }
    
    .hero-cta {
        width: 100%;
    }
    
    .hero-cta .btn {
        width: 100%;
    }
}

/* Исправление текста на очень маленьких экранах */
@media (max-width: 375px) {
    .hero h1 {
        font-size: 1.5rem;
        line-height: 1.2;
    }
    
    .section-title {
        font-size: 1.5rem;
    }
    
    .subtitle {
        font-size: 0.9rem;
    }
}

/* Исправление мобильного меню */
.mobile-nav {
    display: none;
}

.mobile-nav.open {
    display: block;
}

@media (max-width: 768px) {
    .desktop-nav {
        display: none !important;
    }
    
    .header-contact .btn {
        display: none !important;
    }
}

/* Исправление grid на мобильных */
@media (max-width: 600px) {
    .counters-grid,
    .security-grid,
    .catalog-grid,
    .tariffs-grid,
    .reviews-grid,
    .info-grid {
        grid-template-columns: 1fr !important;
    }
}

/* Исправление отступов на мобильных */
@media (max-width: 768px) {
    .section {
        padding: 40px 0;
    }
    
    .hero {
        padding: 100px 0 60px;
    }
}

/* Исправление z-index для фиксированных элементов */
.header {
    z-index: 9999;
}

.mobile-nav {
    z-index: 9998;
}

/* Исправление анимаций на мобильных */
@media (max-width: 768px) {
    .animate-on-scroll {
        opacity: 1;
        transform: none;
    }
}

/* Добавляем в конец основного CSS файла */

/* ДОПОЛНИТЕЛЬНЫЕ ИСПРАВЛЕНИЯ */

/* Исправление для фото команды на мобильных */
@media (max-width: 768px) {
    .company-logo {
        width: 250px;
        height: 250px;
        margin: 0 auto 30px;
    }
}

@media (max-width: 480px) {
    .company-logo {
        width: 200px;
        height: 200px;
    }
}

/* Исправление для счетчиков */
.counter-value::after {
    content: '+';
}

/* Убираем + для процентов */
.counter-item:last-child .counter-value::after {
    content: '%';
}

/* Исправление comparison table на мобильных */
@media (max-width: 768px) {
    .comparison-table {
        font-size: 14px;
    }
    
    .table-header,
    .table-cell {
        padding: 15px 10px;
    }
    
    .savings-calculator {
        padding: 20px;
    }
    
    .calc-row {
        font-size: 14px;
    }
    
    .calc-result {
        flex-direction: column;
        gap: 10px;
    }
}

/* Исправление для очень узких экранов */
@media (max-width: 400px) {
    .comparison-table {
        font-size: 12px;
    }
    
    .table-header,
    .table-cell {
        padding: 10px 5px;
    }
    
    .counter-value {
        font-size: 1.75rem;
    }
    
    .savings-calculator h3 {
        font-size: 1.1rem;
    }
}