/**
 * ============================================================================
 * СТИЛИ ДЛЯ САЙТА ООО "НАСТ" (НижАвтоСпецТранс)
 * ============================================================================
 * Файл: css/style.css
 * Описание: Основные стили для одностраничного сайта компании по вывозу отходов
 * Технологии: CSS3, Bootstrap 5 (базовая сетка и компоненты)
 * Автор: Курсовая работа
 * Год: 2026
 * ============================================================================
 */

/* ==========================================================================
   1. БАЗОВЫЕ СТИЛИ (RESET & BASE)
   ========================================================================== */

/**
 * Плавная прокрутка для всех якорных ссылок
 * Улучшает UX при навигации по одностраничному сайту
 */
html {
    scroll-behavior: smooth;
}

/**
 * Базовые настройки для body
 * Используем системные шрифты для лучшей производительности
 */
body {
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    line-height: 1.6;
    color: #333;
    margin: 0;
    font-family: var(--bs-body-font-family);
    font-size: var(--bs-body-font-size);
    font-weight: var(--bs-body-font-weight);
    line-height: var(--bs-body-line-height);
    color: var(--bs-body-color);
    text-align: var(--bs-body-text-align);
    background-color: var(--bs-body-bg);
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
}

/* ==========================================================================
   2. ШАПКА САЙТА (HEADER)
   ========================================================================== */

/**
 * Липкая шапка (sticky header)
 * Остаётся видимой при прокрутке страницы
 */
.site-header {
    position: sticky;
    top: 0;
    z-index: 1030; /* Выше чем у большинства элементов */
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

/**
 * Стили для навигационной панели
 * Тёмный фон с белым текстом для контраста
 */
.site-header .navbar {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%) !important;
}

/**
 * Логотип компании
 * Увеличенный размер шрифта для заметности
 */
.site-header .navbar-brand {
    font-size: 1.5rem;
    font-weight: 700;
    color: #4ade80 !important; /* Зелёный цвет - ассоциация с экологией */
}

/**
 * Ссылки навигации
 * Плавный переход цвета при наведении
 */
.site-header .nav-link {
    transition: color 0.3s ease;
    font-weight: 500;
}

.site-header .nav-link:hover {
    color: #4ade80 !important;
}

/**
 * Информационная полоса под навигацией
 * Светлый фон с контактами и графиком работы
 */
.site-header .bg-light {
    background-color: #f8f9fa !important;
}

/* ==========================================================================
   3. ГЛАВНЫЙ ЭКРАН (HERO SECTION)
   ========================================================================== */

/**
 * Секция героя (первый экран)
 * Градиентный фон с зелёными оттенками (экологическая тематика)
 */
.hero-section {
    padding: 80px 0;
    background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%);
    min-height: 600px;
    display: flex;
    align-items: center;
}
*, ::after, ::before {
    box-sizing: border-box;
}

/**
 * Заголовок главного экрана
 * Адаптивный размер шрифта
 */
.hero-section h1 {
    color: #1b4332;
    line-height: 1.3;
}

/**
 * Адаптивность заголовка для мобильных устройств
 */
@media (max-width: 768px) {
    .hero-section {
        padding: 40px 0;
        min-height: auto;
    }
    
    .hero-section h1 {
        font-size: 1.75rem;
    }
}

/**
 * Карточки преимуществ
 * Тени и скругления для современного вида
 */
.hero-section .card {
    border: none;
    border-radius: 12px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/**
 * Эффект при наведении на карточку преимущества
 */
.hero-section .card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

/* ==========================================================================
   4. РАЗДЕЛ "УСЛУГИ" (SERVICES)
   ========================================================================== */

/**
 * Карточки услуг
 * Единый стиль с плавными переходами
 */
.service-card {
    border: none;
    border-radius: 12px;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/**
 * Изображения в карточках услуг
 * Адаптивное масштабирование
 */
.service-card img {
    height: 200px;
    object-fit: cover;
    transition: transform 0.3s ease;
}

/**
 * Эффект при наведении на карточку услуги
 */
.service-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15) !important;
}

.service-card:hover img {
    transform: scale(1.05);
}

/* ==========================================================================
   5. КАЛЬКУЛЯТОР (CALCULATOR)
   ========================================================================== */

/**
 * Форма калькулятора
 * Акцент на полях ввода для удобства заполнения
 */
#calculatorForm .form-control,
#calculatorForm .form-select {
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    padding: 12px 16px;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

/**
 * Состояние фокуса для полей формы
 * Зелёная обводка - ассоциация с брендом
 */
#calculatorForm .form-control:focus,
#calculatorForm .form-select:focus {
    border-color: #4ade80;
    box-shadow: 0 0 0 3px rgba(74, 222, 128, 0.2);
}

/**
 * Блок результата расчёта
 * Выделен визуально для привлечения внимания
 */
#calculationResult {
    animation: fadeIn 0.5s ease;
}

/**
 * Анимация появления результата
 */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ==========================================================================
   6. ФОРМА ЗАЯВКИ (ORDER FORM)
   ========================================================================== */

/**
 * Стили для формы заказа
 * Аналогичны калькулятору для единого стиля
 */
#orderForm .form-control,
#orderForm .form-select,
#orderForm .form-check-input {
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    transition: border-color 0.3s ease;
}

#orderForm .form-control:focus,
#orderForm .form-select:focus {
    border-color: #22c55e;
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.2);
}

/**
 * Текстовое поле комментария
 * Увеличенная высота для удобства ввода
 */
#orderForm textarea {
    min-height: 100px;
    resize: vertical;
}

/* ==========================================================================
   7. ГРАФИК РАБОТЫ (SCHEDULE)
   ========================================================================== */

/**
 * Карточки графика работы
 * Цветовые акценты для разных типов информации
 */
#schedule .card-header {
    border-radius: 0 !important;
    font-weight: 600;
}

#schedule .card {
    border: none;
    border-radius: 12px;
    overflow: hidden;
}

/* ==========================================================================
   8. О КОМПАНИИ (ABOUT)
   ========================================================================== */

/**
 * Секция "О компании"
 * Светлый фон для визуального разделения
 */
#about {
    background-color: #f8f9fa;
}

/**
 * Изображения в галерее
 * Скруглённые углы и тени
 */
#about img {
    border-radius: 12px;
    transition: transform 0.3s ease;
}

#about img:hover {
    transform: scale(1.02);
}

/* ==========================================================================
   9. КОНТАКТЫ (CONTACTS)
   ========================================================================== */

/**
 * Карточки контактов
 * Тени для выделения на странице
 */
#contacts .card {
    border: none;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

/**
 * Карта (Яндекс.Карты)
 * Скруглённые углы
 */
#contacts iframe {
    border-radius: 12px;
}

/* ==========================================================================
   10. ПОДВАЛ (FOOTER)
   ========================================================================== */

/**
 * Подвал сайта
 * Тёмный фон для контраста с основным содержимым
 */
footer {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%) !important;
}

footer a {
    transition: color 0.3s ease;
}

footer a:hover {
    color: #4ade80 !important;
}

/* ==========================================================================
   11. МОДАЛЬНЫЕ ОКНА (MODALS)
   ========================================================================== */

/**
 * Стили для модальных окон
 * Скруглённые углы и тени
 */
.modal-content {
    border: none;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
}

.modal-header {
    border-radius: 16px 16px 0 0;
    background-color: #f8f9fa;
}

/**
 * Вкладки в личном кабинете
 * Акцент на активной вкладке
 */
.nav-tabs .nav-link {
    border: none;
    color: #666;
    transition: all 0.3s ease;
}

.nav-tabs .nav-link.active {
    color: #22c55e;
    font-weight: 600;
    border-bottom: 3px solid #22c55e;
}

/* ==========================================================================
   12. АДАПТИВНОСТЬ (RESPONSIVE DESIGN)
   ========================================================================== */

/**
 * Планшеты (менее 992px)
 */
@media (max-width: 992px) {
    .hero-section {
        padding: 60px 0;
    }
    
    .hero-section h1 {
        font-size: 2.0rem;
    }
    
    /* Скрываем изображение на планшетах для экономии места */
    .hero-section .col-lg-4 {
        display: none;
    }
}

/**
 * Мобильные телефоны (менее 768px)
 */
@media (max-width: 768px) {
    /**
     * Уменьшаем отступы для мобильных
     */
    section {
        padding: 40px 0 !important;
    }
    
    /**
     * Кнопки на всю ширину экрана
     */
    .hero-section .btn-lg {
        width: 100%;
        margin-bottom: 10px;
    }
    
    /**
     * Карточки в одну колонку
     */
    .service-card {
        margin-bottom: 20px;
    }
    
    /**
     * Уменьшаем размер шрифта заголовков
     */
    h2 {
        font-size: 1.75rem !important;
    }
    
    /**
     * Контакты в одну колонку
     */
    #contacts .col-lg-5,
    #contacts .col-lg-7 {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

/**
 * Маленькие телефоны (менее 576px)
 */
@media (max-width: 576px) {
    /**
     * Ещё меньшие отступы
     */
    .container {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    /**
     * Меньший размер шрифта для заголовков
     */
    .display-4 {
        font-size: 1.5rem !important;
    }
    
    .display-6 {
        font-size: 1.5rem !important;
    }
}

/* ==========================================================================
   13. УТИЛИТАРНЫЕ КЛАССЫ (UTILITY CLASSES)
   ========================================================================== */

/**
 * Класс для плавного появления элементов
 */
.fade-in {
    animation: fadeIn 0.5s ease;
}

/**
 * Класс для выделения важных элементов
 */
.highlight {
    background-color: #fef3c7;
    padding: 2px 6px;
    border-radius: 4px;
}

/**
 * Класс для иконок в тексте
 */
.icon-text {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

/* ==========================================================================
   14. ЦВЕТОВЫЕ АКЦЕНТЫ (COLOR ACCENTS)
   ========================================================================== */

/**
 * Основные цвета бренда
 * Зелёный - экология, доверие
 * Синий - надёжность, профессионализм
 * Оранжевый - инновации и интузиазм
 */
:root {
    --primary-green: #4ade80;
    --dark-green: #1b4332;
    --light-green: #d1fae5;
    --primary-blue: #1e40af;
    --dark-blue: #1e3a8a;
	--orange: #ff4433;
    --bs-breakpoint-xs: 0;
    --bs-breakpoint-sm: 576px;
    --bs-breakpoint-md: 768px;
    --bs-breakpoint-lg: 992px;
    --bs-breakpoint-xl: 1200px;
    --bs-breakpoint-xxl: 1400px;
}
:root, [data-bs-theme=light] {
    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #ffc107;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-black: #000;
    --bs-white: #fff;
    --bs-gray: #6c757d;
    --bs-gray-dark: #343a40;
    --bs-gray-100: #f8f9fa;
    --bs-gray-200: #e9ecef;
    --bs-gray-300: #dee2e6;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #6c757d;
    --bs-gray-700: #495057;
    --bs-gray-800: #343a40;
    --bs-gray-900: #212529;
    --bs-primary: #0d6efd;
    --bs-secondary: #6c757d;
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
    --bs-primary-rgb: 13, 110, 253;
    --bs-secondary-rgb: 108, 117, 125;
    --bs-success-rgb: 25, 135, 84;
    --bs-info-rgb: 13, 202, 240;
    --bs-warning-rgb: 255, 193, 7;
    --bs-danger-rgb: 220, 53, 69;
    --bs-light-rgb: 248, 249, 250;
    --bs-dark-rgb: 33, 37, 41;
    --bs-primary-text-emphasis: #052c65;
    --bs-secondary-text-emphasis: #2b2f32;
    --bs-success-text-emphasis: #0a3622;
    --bs-info-text-emphasis: #055160;
    --bs-warning-text-emphasis: #664d03;
    --bs-danger-text-emphasis: #58151c;
    --bs-light-text-emphasis: #495057;
    --bs-dark-text-emphasis: #495057;
    --bs-primary-bg-subtle: #cfe2ff;
    --bs-secondary-bg-subtle: #e2e3e5;
    --bs-success-bg-subtle: #d1e7dd;
    --bs-info-bg-subtle: #cff4fc;
    --bs-warning-bg-subtle: #fff3cd;
    --bs-danger-bg-subtle: #f8d7da;
    --bs-light-bg-subtle: #fcfcfd;
    --bs-dark-bg-subtle: #ced4da;
    --bs-primary-border-subtle: #9ec5fe;
    --bs-secondary-border-subtle: #c4c8cb;
    --bs-success-border-subtle: #a3cfbb;
    --bs-info-border-subtle: #9eeaf9;
    --bs-warning-border-subtle: #ffe69c;
    --bs-danger-border-subtle: #f1aeb5;
    --bs-light-border-subtle: #e9ecef;
    --bs-dark-border-subtle: #adb5bd;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;
    --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
    --bs-body-font-family: var(--bs-font-sans-serif);
    --bs-body-font-size: 1rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.5;
    --bs-body-color: #212529;
    --bs-body-color-rgb: 33, 37, 41;
    --bs-body-bg: #fff;
    --bs-body-bg-rgb: 255, 255, 255;
    --bs-emphasis-color: #000;
    --bs-emphasis-color-rgb: 0, 0, 0;
    --bs-secondary-color: rgba(33, 37, 41, 0.75);
    --bs-secondary-color-rgb: 33, 37, 41;
    --bs-secondary-bg: #e9ecef;
    --bs-secondary-bg-rgb: 233, 236, 239;
    --bs-tertiary-color: rgba(33, 37, 41, 0.5);
    --bs-tertiary-color-rgb: 33, 37, 41;
    --bs-tertiary-bg: #f8f9fa;
    --bs-tertiary-bg-rgb: 248, 249, 250;
    --bs-heading-color: inherit;
    --bs-link-color: #0d6efd;
    --bs-link-color-rgb: 13, 110, 253;
    --bs-link-decoration: underline;
    --bs-link-hover-color: #0a58ca;
    --bs-link-hover-color-rgb: 10, 88, 202;
    --bs-code-color: #d63384;
    --bs-highlight-bg: #fff3cd;
    --bs-border-width: 1px;
    --bs-border-style: solid;
    --bs-border-color: #dee2e6;
    --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
    --bs-border-radius: 0.375rem;
    --bs-border-radius-sm: 0.25rem;
    --bs-border-radius-lg: 0.5rem;
    --bs-border-radius-xl: 1rem;
    --bs-border-radius-xxl: 2rem;
    --bs-border-radius-2xl: var(--bs-border-radius-xxl);
    --bs-border-radius-pill: 50rem;
    --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
    --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
    --bs-focus-ring-width: 0.25rem;
    --bs-focus-ring-opacity: 0.25;
    --bs-focus-ring-color: rgba(13, 110, 253, 0.25);
    --bs-form-valid-color: #198754;
    --bs-form-valid-border-color: #198754;
    --bs-form-invalid-color: #dc3545;
    --bs-form-invalid-border-color #dc3545;
}

/**
 * Кнопки с градиентом
 */
.btn-gradient {
    background: linear-gradient(135deg, var(--primary-green) 0%, #22c55e 100%);
    border: none;
    color: white;
    font-weight: 600;
}

.btn-gradient:hover {
    background: linear-gradient(135deg, #22c55e 0%, var(--primary-green) 100%);
    color: white;
}
.btn-top {
    --bs-btn-color: #fff;
    --bs-btn-bg: #ff4433;
    --bs-btn-border-color: #f7220e;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #ff2d1a;
    --bs-btn-hover-border-color: #ff182e;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #ff1500;
    --bs-btn-active-border-color: #ff1500;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #ff4433;
    --bs-btn-disabled-border-color: #ff4433;
}

/* ==========================================================================
   15. АНИМАЦИИ (ANIMATIONS)
   ========================================================================== */

/**
 * Анимация пульсации для важных кнопок
 */
@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
}

.btn-pulse {
    animation: pulse 2s infinite;
}

/**
 * Анимация появления снизу вверх
 */
@keyframes slideUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.slide-up {
    animation: slideUp 0.6s ease;
}

/* ==========================================================================
   16. СТИЛИ ДЛЯ КАЛЕНДАРЯ (CALENDAR STYLES)
   ========================================================================== */

/**
 * Контейнер календаря в личном кабинете
 */
#calendar {
    min-height: 400px;
    background-color: #f8f9fa;
    border-radius: 12px;
    padding: 20px;
}

/**
 * Ячейка календаря (день)
 */
.calendar-day {
    min-height: 100px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 8px;
    background-color: white;
    transition: box-shadow 0.3s ease;
}

.calendar-day:hover {
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

/**
 * Метки событий в календаре
 */
.calendar-event {
    font-size: 0.85rem;
    padding: 4px 8px;
    border-radius: 4px;
    margin-bottom: 4px;
}

.calendar-event.planned {
    background-color: #dbeafe;
    color: #1e40af;
}

.calendar-event.completed {
    background-color: #d1fae5;
    color: #065f46;
}

.calendar-event.rescheduled {
    background-color: #fef3c7;
    color: #92400e;
}

/* ==========================================================================
   17. СТИЛИ ДЛЯ ТАБЛИЦ (TABLE STYLES)
   ========================================================================== */

/**
 * Таблицы в личном кабинете
 */
.table-responsive {
    border-radius: 12px;
    overflow: hidden;
}

.table {
    margin-bottom: 0;
}

.table thead {
    background-color: #f8f9fa;
}

.table tbody tr:hover {
    background-color: #f8f9fa;
}

/* ==========================================================================
   18. СТИЛИ ДЛЯ УВЕДОМЛЕНИЙ (ALERT STYLES)
   ========================================================================== */

/**
 * Уведомления (alerts)
 * Кастомные стили для Bootstrap alerts
 */
.alert {
    border-radius: 12px;
    border: none;
}

.alert-success {
    background-color: #d1fae5;
    color: #065f46;
}

.alert-info {
    background-color: #dbeafe;
    color: #1e40af;
}

.alert-warning {
    background-color: #fef3c7;
    color: #92400e;
}

/* ==========================================================================
   19. СТИЛИ ДЛЯ ФОРМ (FORM STYLES)
   ========================================================================== */

/**
 * Валидация форм
 * Стили для успешной и ошибочной валидации
 */
.form-control.is-valid {
    border-color: #22c55e;
}

.form-control.is-valid:focus {
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.25);
}

.form-control.is-invalid {
    border-color: #ef4444;
}

.form-control.is-invalid:focus {
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.25);
}

/**
 * Подсказки для полей форм
 */
.form-text {
    font-size: 0.875rem;
    color: #666;
}

/* ==========================================================================
   20. ПРОВЕРКА ДОСТУПНОСТИ (ACCESSIBILITY)
   ========================================================================== */

/**
 * Стили для фокуса клавиатуры
 * Улучшенная видимость для пользователей, navigающих с клавиатуры
 */
*:focus-visible {
    outline: 3px solid #4ade80;
    outline-offset: 2px;
}

/**
 * Скрытие элементов для скринридеров
 */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* ==========================================================================
   21. ЗАГРУЗЧИК (LOADER)
   ========================================================================== */

/**
 * Анимация загрузки
 * Используется при загрузке данных
 */
.loader {
    border: 4px solid #f3f3f3;
    border-top: 4px solid #4ade80;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* ==========================================================================
   22. ПЛАВНАЯ ПРОКРУТКА ДЛЯ ЯКОРЕЙ (SMOOTH SCROLL OFFSET)
   ========================================================================== */

/**
 * Компенсация высоты липкой шапки при прокрутке к якорям
 */
section[id] {
    scroll-margin-top: 120px;
}

@media (max-width: 992px) {
    section[id] {
        scroll-margin-top: 140px;
    }
}

/* ==========================================================================
   23. ДОПОЛНИТЕЛЬНЫЕ МЕДИА-ЗАПРОСЫ (ADDITIONAL MEDIA QUERIES)
   ========================================================================== */

/**
 * Пейзажная ориентация на мобильных
 */
@media (max-width: 768px) and (orientation: landscape) {
    .hero-section {
        min-height: auto;
        padding: 30px 0;
    }
    
    .hero-section h1 {
        font-size: 1.5rem;
    }
	    .display-4 {
        font-size: 1.5rem;
    }
}
@media (min-width: 1200px) {
    .display-4 {
        font-size: 2.5rem;
    }
}
@media (max-width: 1200px) {
    .display-4 {
        font-size: 2.5rem;
    }
}

/**
 * Большие экраны (более 1400px)
 */
@media (min-width: 1400px) {
    .container {
        max-width: 1320px;
		
    }
}

/* ==========================================================================
   24. ПЕЧАТНЫЕ СТИЛИ (PRINT STYLES)
   ========================================================================== */

/**
 * Стили для печати страницы
 * Скрываем ненужные элементы, оптимизируем для бумаги
 */
@media print {
    /**
     * Скрываем навигацию, кнопки, модальные окна
     */
    header, footer, .btn, .modal, nav {
        display: none !important;
    }
    
    /**
     * Чёрный текст на белом фоне
     */
    body {
        background: white;
        color: black;
    }
    
    /**
     * Убираем тени и градиенты
     */
    .card, .shadow {
        box-shadow: none !important;
        border: 1px solid #ddd;
    }
    
    /**
     * Разрывы страниц для печати
     */
    section {
        page-break-inside: avoid;
    }
}

/* ==========================================================================
   25. ТЁМНАЯ ТЕМА (DARK MODE) - ОПЦИОНАЛЬНО
   ========================================================================== */

/**
 * Поддержка тёмной темы системы
 * Автоматическое переключение при системной настройке
 */
@media (prefers-color-scheme: dark) {
    /**
     * Можно добавить тёмные стили здесь
     * Пока оставляем светлую тему как основную
     */
}

/* ==========================================================================
   КОНЕЦ ФАЙЛА СТИЛЕЙ
   ========================================================================== */
