@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700;900&display=swap');

/* ========================================
   VARS.CSS - Переменные и настройки
   Тема: Брандмастер (Синий & Красный)
   ======================================== */

/* ========================================
         1. ЦВЕТОВЫЕ ПЕРЕМЕННЫЕ
     ======================================== */
   :root {
       /* === Основные цвета бренда Брандмастер (по брендбуку) === */
       --color-primary: #2b3078;        /* Официальный синий */
       --color-primary-dark: #1e2257;   /* Чуть темнее для ховеров */
       --color-primary-light: #3c439a;  /* Светлее для градиентов */
       
       --color-secondary: #2b3078;      
       
       --color-accent: #bc001d;         /* Официальный красный */
       --color-accent-hover: #9e0018;   /* Темнее для ховера */
       
       /* === Нейтральные цвета === */
       --color-white: #ffffff;
       --color-black: #000000;
       --color-gray-100: #f4f4f4;       /* Светло-серый фон */
       --color-gray-200: #c2c2c2;       /* Официальный серый (линии и бордеры) */
       --color-gray-300: #a8a8a8;       
       --color-gray-400: #949494;
       --color-gray-500: #808080;       /* Плейсхолдеры */
       --color-gray-600: #666666;
       --color-gray-700: #4d4d4d;
       --color-gray-800: #333333;       /* Основной текст */
       --color-gray-900: #000000;       /* Заголовки (строго черный) */
       
       /* === Цвета текста === */
       --color-text: var(--color-gray-800);          /* Основной текст */
       --color-text-primary: var(--color-gray-900);  /* Заголовки */
       --color-text-secondary: var(--color-gray-600);/* Второстепенный текст */
       --color-text-muted: var(--color-gray-500);    /* Неактивный текст */
       --color-link: var(--color-primary);           /* Ссылки (Синие) */
       --color-link-hover: var(--color-accent);      /* Ховер ссылок (Красные) */
       
       /* === Фоновые цвета === */
       --bg-body: var(--color-white);
       --bg-light: var(--color-gray-100);        
       --bg-gray: var(--color-gray-200);
       
       /* === Цвета состояний === */
       --color-success: #10b981;        
       --color-danger: #ef4444;         
       --color-warning: #f59e0b;        
       --color-info: #0ea5e9;           
       
       /* === Дополнительные цвета === */
       --bmk-blue: #eef0f9;             /* Очень светло-синий для фонов */
       --bmk-blue2: #2b3078;
       --bmk-orange: #bc001d;           /* Заменили оранжевый на красный */
       --bmk-dark-blue: #1e2257;
       
       --color-placeholder: var(--color-gray-400);
       --color-border: var(--color-gray-200);
       --color-scrollbar-thumb: var(--color-primary);
   }
    
/* ========================================
   2. ГРАДИЕНТЫ
   ======================================== */
:root {
    /* Градиент для блоков (от темно-синего к основному синему) */
    --gradient-primary: linear-gradient(135deg, var(--color-primary-dark) 0%, var(--color-primary) 100%);
    
    /* Градиент для акцентных кнопок (от красного к темно-красному) */
    --gradient-btn-custom: linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-hover) 100%);
    --gradient-btn-custom-hover: linear-gradient(135deg, var(--color-accent-hover) 0%, #8e0000 100%);
    
    /* Градиент для футера */
    --gradient-footer: linear-gradient(to right, #0f2352, #1a3673);
}

/* ========================================
   3. ТИПОГРАФИКА
   ======================================== */
:root {
    /* === Шрифты === */
    --font-family-base: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
    --font-family-heading: 'Roboto', sans-serif; 
    
    /* ========================================
       ГЛОБАЛЬНОЕ ПРИМЕНЕНИЕ ШРИФТОВ
       ======================================== */
    body {
        font-family: var(--font-family-base) !important;
    }
    
    h1, h2, h3, h4, h5, h6, .main-title, .section-title {
        font-family: var(--font-family-heading) !important;
    }
    
    input, button, textarea, select {
        font-family: inherit !important;
    }
    
    /* === Размеры шрифтов === */
    --font-size-xs: 0.75rem;      
    --font-size-sm: 0.875rem;     
    --font-size-base: 1rem;       
    --font-size-md: 1.125rem;     
    --font-size-lg: 1.25rem;      
    --font-size-xl: 1.5rem;       
    --font-size-xxl: 2rem;        
    --font-size-xxxl: 2.5rem;     
    
    /* === Вес шрифтов === */
    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 900;
    
    /* === Высота строки === */
    --line-height-sm: 1.2;
    --line-height-base: 1.5;
    --line-height-lg: 1.8;
}

/* ===================================
   ГЛОБАЛЬНЫЕ ОТСТУПЫ СЕКЦИЙ (Фикс сетки)
====================================== */
.mt-80 { margin-top: 80px !important; }
.mb-80 { margin-bottom: 80px !important; }
.mt-60 { margin-top: 60px !important; }
.mb-60 { margin-bottom: 60px !important; }
.mt-50 { margin-top: 50px !important; }
.mb-50 { margin-bottom: 50px !important; }
.mt-40 { margin-top: 40px !important; }
.mb-40 { margin-bottom: 40px !important; }
.mb-30 { margin-bottom: 30px !important; }
.mb-20 { margin-bottom: 20px !important; }
.mb-10 { margin-bottom: 10px !important; }

@media (max-width: 767px) {
    .mt-80 { margin-top: 50px !important; }
    .mb-80 { margin-bottom: 50px !important; }
    .mt-60 { margin-top: 40px !important; }
    .mb-60 { margin-bottom: 40px !important; }
    .mt-50 { margin-top: 30px !important; }
    .mb-50 { margin-bottom: 30px !important; }
}

/* ========================================
   4. РАЗМЕРЫ И ОТСТУПЫ
   ======================================== */
:root {
    --spacing-0: 0;
    --spacing-1: 0.25rem;   
    --spacing-2: 0.5rem;    
    --spacing-3: 1rem;      
    --spacing-4: 1.5rem;    
    --spacing-5: 3rem;      
    --spacing-6: 4.5rem;    
    --spacing-7: 6rem;      
    --spacing-8: 8rem;      
    --spacing-9: 3rem;      
    --spacing-10: 4rem;     
    
    --container-max-width: 1200px;
    --container-wide: 1200px; 
    
    --header-height: 90px;
    --footer-height: auto;
    
    --border-radius-sm: 0.2rem;
    --border-radius: 0.25rem;
    --border-radius-md: 0.5rem;
    --border-radius-lg: 0.5rem;   
    --border-radius-xl: 1.5rem;   
    --border-radius-xxl: 2rem;
    --border-radius-full: 9999px;
    
    --border-width: 1px;
    --border-width-2: 2px;
}

/* ========================================
   5. ТЕНИ И ЭФФЕКТЫ
   ======================================== */
:root {
    --shadow-sm: 0 .125rem .25rem rgba(15, 23, 42, .05);
    --shadow: 0 .5rem 1rem rgba(15, 23, 42, .08);
    --shadow-md: 0 4px 12px rgba(15, 23, 42, .12);
    --shadow-lg: 0 1rem 3rem rgba(15, 23, 42, .15);
    --shadow-xl: 0 1.5rem 4rem rgba(15, 23, 42, .2);
    
    --overlay-bg: rgba(15, 23, 42, 0.85);
    
    --filter-blur-sm: blur(4px);
    --filter-blur: blur(12px);
    --filter-blur-lg: blur(20px);
    
    --opacity-0: 0;
    --opacity-25: 0.25;
    --opacity-50: 0.5;
    --opacity-75: 0.75;
    --opacity-100: 1;
}

/* ========================================
   6. ПЕРЕХОДЫ И АНИМАЦИИ
   ======================================== */
:root {
    --transition-fast: 0.15s;
    --transition-base: 0.3s;
    --transition-slow: 0.5s;
    
    --ease-linear: linear;
    --ease-in: cubic-bezier(0.4, 0, 1, 1);
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    
    --transition: all var(--transition-base) var(--ease-in-out);
    --transition-fast: all var(--transition-fast) var(--ease-in-out);
    --transition-slow: all var(--transition-slow) var(--ease-in-out);
}

/* ========================================
   7. Z-ИНДЕКСЫ
   ======================================== */
:root {
    --z-index-base: 1;
    --z-index-header: 1030;
    --z-index-overlay: 1040;
    --z-index-modal: 1055;
    --z-index-fixed: 1060;
    
    --z-index-tooltip: 1070;
    --z-index-popover: 1080;
    --z-index-dropdown: 1090;
    --z-index-sticky: 1100;
    --z-index-backdrop: 1300;
}

/* ========================================
   8. BREAKPOINTS (точки останова)
   ======================================== */
:root {
    --breakpoint-xs: 0;
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;
    --breakpoint-xxl: 1400px;
    
    --max-width-mobile: 767px;
    --max-width-tablet: 1024px;
    --max-width-desktop: 1399px;
}

/* ========================================
   9. ДОПОЛНИТЕЛЬНЫЕ ПЕРЕМЕННЫЕ
   ======================================== */
:root {
    --overlay-bg: rgba(26, 54, 115, 0.85); /* Синий оверлей */
    --overlay-bg-light: rgba(244, 246, 248, 0.95);
    
    --scrollbar-width: 10px;
    --scrollbar-width-track: 14px;
    --scrollbar-track-bg: var(--color-gray-200);
    --scrollbar-thumb-bg: var(--color-primary);
    
    --filter-invert-white: brightness(0) invert(1);
    --filter-drop-shadow: drop-shadow(2px 2px 4px rgba(26, 54, 115, 0.3));
}

/* ========================================
   10. ПЕРЕМЕННЫЕ ДЛЯ БЫСТРОЙ ЗАМЕНЫ
   ======================================== */
:root {
    --brand-primary: var(--color-primary);
    --brand-secondary: var(--color-secondary);
    
    --logo-max-height: 90px;
    --logo-max-height-mobile: 60px;
    
    /* Социальные сети (Точные цвета брендов) */
    --social-color-max: #9418ff;
    --social-color-telegram: #229ED9;
    --social-color-whatsapp: #25D366;
    --social-color-email: var(--color-accent);
    --social-color-phone: var(--color-success);
}

/* ========================================
   УТИЛИТЫ (Цветовые классы)
   ======================================== */
.bg-primary { background-color: var(--color-primary) !important; }
.bg-secondary { background-color: var(--color-secondary) !important; }
.bg-accent { background-color: var(--color-accent) !important; }
.bg-white { background-color: var(--color-white) !important; }
.bg-light { background-color: var(--color-gray-100) !important; }
.bg-blue { background-color: var(--bmk-blue) !important; }

.text-primary { color: var(--color-primary) !important; }
.text-secondary { color: var(--color-secondary) !important; }
.text-accent { color: var(--color-accent) !important; }
.text-white { color: var(--color-white) !important; }
.text-muted { color: var(--color-text-muted) !important; }

.border-primary { border-color: var(--color-primary) !important; }
.border-secondary { border-color: var(--color-secondary) !important; }
.border-accent { border-color: var(--color-accent) !important; }

.shadow-sm { box-shadow: var(--shadow-sm) !important; }
.shadow { box-shadow: var(--shadow) !important; }
.shadow-lg { box-shadow: var(--shadow-lg) !important; }

.rounded { border-radius: var(--border-radius) !important; }
.rounded-lg { border-radius: var(--border-radius-lg) !important; }
.rounded-full { border-radius: var(--border-radius-full) !important; }
