/* ==========================================================================
   ЦВЕТА И БАЗОВЫЕ НАСТРОЙКИ
   ========================================================================== */
:root {
    --bg-black: #0a0a0a;
    --bg-card: #141414;
    --accent-gold-light: #F6BE6A;
    --accent-gold-dark: #9C6831;
    --accent-gradient: linear-gradient(135deg, #F6BE6A 0%, #9C6831 100%);
    --toggle-on: #F6BE6A; 
    --toggle-off: #222222;
    --text-white: #ffffff;
    --text-muted: #8c8c8c;
    --font-main: 'Montserrat', sans-serif;
}

* { 
    margin: 0; 
    padding: 0; 
    box-sizing: border-box; 
}

html { 
    scroll-behavior: smooth; 
}

/* Жестко запрещаем сайту растягиваться по ширине */
html, body { 
    max-width: 100vw;
    overflow-x: hidden; 
    position: relative;
    background-color: var(--bg-black); 
    color: var(--text-white); 
    font-family: var(--font-main); 
    line-height: 1.6; 
    -webkit-font-smoothing: antialiased; 
}

/* Глобальное свечение фона (используем 100% вместо vw для мобилок) */
body::before {
    content: '';
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    background: radial-gradient(circle at 15% 15%, rgba(246, 190, 106, 0.04) 0%, transparent 70%);
    z-index: -1; pointer-events: none; 
}

body::after {
    content: '';
    position: fixed;
    top: 0; right: 0; width: 100%; height: 100%;
    background: radial-gradient(circle at 85% 85%, rgba(156, 104, 49, 0.04) 0%, transparent 70%);
    z-index: -1; pointer-events: none;
}

.container { width: 100%; max-width: 1200px; padding: 0 24px; margin: 0 auto; }
.section-padding { padding: 60px 0; }

/* ТИПОГРАФИКА */
h1 { font-size: 2.6rem; font-weight: 900; line-height: 1.1; text-transform: uppercase; letter-spacing: -1px; margin-bottom: 16px; }
.section-title { font-size: 1.8rem; font-weight: 800; text-align: center; text-transform: uppercase; margin-bottom: 8px; letter-spacing: -0.5px; }
.section-subtitle { text-align: center; color: var(--accent-gold-light); font-size: 0.85rem; font-weight: 700; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 40px; }
p { color: var(--text-muted); font-weight: 500; } 

/* ЗОЛОТЫЕ КНОПКИ */
.btn-gold-gradient { 
    display: block; width: 100%; background: var(--accent-gradient); color: #000; padding: 18px 32px; 
    font-size: 1.1rem; font-weight: 800; text-align: center; text-transform: uppercase; 
    text-decoration: none; border-radius: 8px; border: none; box-shadow: 0 8px 24px rgba(156, 104, 49, 0.3); 
    transition: transform 0.2s ease, box-shadow 0.2s ease; cursor: pointer; font-family: var(--font-main); 
}
.btn-gold-gradient:hover { transform: translateY(-2px); box-shadow: 0 12px 32px rgba(156, 104, 49, 0.5); }
.btn-outline-gold { padding: 10px 20px; border: 1px solid var(--accent-gold-light); color: var(--text-white); text-transform: uppercase; font-size: 0.75rem; font-weight: 700; border-radius: 6px; text-decoration: none; transition: all 0.3s ease; }
.btn-outline-gold:hover { background-color: var(--accent-gold-light); color: #000; }

/* ==========================================================================
   ПАРЯЩАЯ ШАПКА 
   ========================================================================== */
.header { 
    position: fixed; top: 20px; left: 50%; 
    transform: translate3d(-50%, 0, 0); /* 3D-ускорение */
    width: calc(100% - 32px); max-width: 1200px; 
    background-color: rgba(15, 15, 15, 0.7); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 12px; z-index: 1000; box-shadow: 0 10px 40px rgba(0,0,0,0.5); 
}

.header-container { display: flex; justify-content: space-between; align-items: center; height: 65px; padding: 0 20px; }
.header-brand { display: flex; align-items: center; gap: 20px; }
.logo-link { text-decoration: none; display: block; }
.logo-img { max-height: 30px; width: auto; display: block; transition: opacity 0.3s ease; }
.logo-link:hover .logo-img { opacity: 0.8; }
.header-descriptor { display: none; font-size: 0.7rem; color: var(--text-muted); line-height: 1.4; font-weight: 500; padding-left: 20px; border-left: 1px solid rgba(255,255,255,0.1); }
.header-actions { display: flex; align-items: center; height: 100%; }
.hidden-mobile { display: none; }

/* ==========================================================================
   ЭКРАН HERO (БАЗОВАЯ СТРУКТУРА)
   ========================================================================== */
.hero-red { position: relative; padding-top: 140px; padding-bottom: 60px; display: flex; align-items: center; overflow: hidden; }
.hero-grid { position: relative; z-index: 2; display: flex; flex-direction: column; gap: 40px; width: 100%; }
.hero-content-left { display: flex; flex-direction: column; align-items: flex-start; z-index: 5; position: relative; }

.promo-gift { display: flex; align-items: center; gap: 8px; font-size: 0.85rem; font-weight: 600; color: #fff; margin-bottom: 20px; background-color: rgba(255,255,255,0.05); padding: 8px 16px; border-radius: 30px; border: 1px solid rgba(255,255,255,0.1); z-index: 10; }
.gradient-text { font-size: 2.6rem; font-weight: 900; line-height: 0.95; letter-spacing: -1px; margin-bottom: 20px; text-transform: uppercase; background: var(--accent-gradient); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; color: transparent; display: inline-block; }
.hero-subtitle { font-size: 1.1rem; font-weight: 500; color: #ddd; margin-bottom: 32px; line-height: 1.5; z-index: 10; }
.micro-text { font-size: 0.8rem; color: #5e5e5e; margin-top: 12px; z-index: 10; }

.hero-visual-right { position: relative; width: 100%; margin-top: 20px; z-index: 2; }
.car-layers { position: relative; width: 100%; z-index: 2; }
.car-base { width: 100%; display: block; }
.car-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; transition: opacity 0.5s ease-in-out; pointer-events: none; }
.car-overlay.show { opacity: 1; }
.feature-pointer { display: none; } 

.hero-switch {
    display: inline-flex;
    background-color: #080808; 
    border: 1px solid rgba(255, 255, 255, 0.08); 
    border-radius: 50px;
    padding: 6px;
    margin-bottom: 20px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.6); 
}
.hero-switch-btn {
    padding: 16px 36px; font-size: 0.9rem; font-weight: 800; letter-spacing: 1px; text-transform: uppercase;
    color: #666666; text-decoration: none; border-radius: 40px; transition: all 0.3s ease;
}
.hero-switch-btn:hover:not(.active) { color: #aaaaaa; }
.hero-switch-btn.active {
    background: var(--accent-gradient); color: #000000; box-shadow: 0 0 28px rgba(246, 190, 106, 0.3); 
}

/* ==========================================================================
   USP STRIP (ПАНЕЛЬ ПРЕИМУЩЕСТВ)
   ========================================================================== */
.usp-strip {
    position: relative; z-index: 10; padding: 24px 0; margin-top: 0; 
    background: linear-gradient(90deg, rgba(20,20,20,0.8) 0%, rgba(30,30,30,0.5) 50%, rgba(20,20,20,0.8) 100%);
    border-top: 1px solid rgba(255, 255, 255, 0.05); border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); 
}
.usp-strip + .section-padding { padding-top: 60px !important; }
.usp-strip-container { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 20px; }
.usp-item { display: flex; align-items: center; gap: 12px; }
.usp-icon { font-size: 1.2rem; filter: grayscale(0.2); }
.usp-text { font-size: 0.85rem; font-weight: 700; color: #cccccc; text-transform: uppercase; letter-spacing: 1px; }

/* ==========================================================================
   BENTO GRID (ОБНОВЛЕННАЯ СЕТКА: ВЕРХ 50/50, НИЗ 60/40)
   ========================================================================== */
.bento-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
}

/* На больших экранах включаем умную асимметрию */
@media (min-width: 992px) {
    .bento-grid {
        grid-template-columns: repeat(10, 1fr); /* База из 10 колонок для идеального шага процентов */
    }

    /* Жестко задаем пропорции строкам */
    .bento-grid .premium-card:nth-child(1) { grid-column: span 5; } /* 50% */
    .bento-grid .premium-card:nth-child(2) { grid-column: span 5; } /* 50% */
    .bento-grid .premium-card:nth-child(3) { grid-column: span 6; } /* 60% */
    .bento-grid .premium-card:nth-child(4) { grid-column: span 4; } /* 40% */

    /* ГОРИЗОНТАЛЬНЫЙ СТИЛЬ ДЛЯ ШИРОКИХ БЛОКОВ (1 и 3) */
    .bento-grid .premium-card:nth-child(1),
    .bento-grid .premium-card:nth-child(3) {
        flex-direction: row;
        align-items: flex-start;
        gap: 32px;
        padding: 40px 44px;
    }

    /* Тюнинг иконок в горизонтальных блоках */
    .bento-grid .premium-card:nth-child(1) .premium-icon-box,
    .bento-grid .premium-card:nth-child(3) .premium-icon-box {
        margin-top: 4px;
        margin-bottom: 0;
        flex-shrink: 0;
        width: 74px;
        height: 74px;
    }

    .bento-grid .premium-card:nth-child(1) .premium-icon-box svg,
    .bento-grid .premium-card:nth-child(3) .premium-icon-box svg {
        width: 32px;
        height: 32px;
    }

    .bento-grid .premium-card:nth-child(1) .card-text,
    .bento-grid .premium-card:nth-child(3) .card-text {
        flex: 1;
    }

    /* ВЕРТИКАЛЬНЫЙ СТИЛЬ ДЛЯ СТАНДАРТНЫХ БЛОКОВ (2 и 4) */
    .bento-grid .premium-card:nth-child(2),
    .bento-grid .premium-card:nth-child(4) {
        flex-direction: column;
        align-items: flex-start;
    }

    .bento-grid .premium-card:nth-child(2) .premium-icon-box,
    .bento-grid .premium-card:nth-child(4) .premium-icon-box {
        margin-bottom: 24px;
        width: 54px;
        height: 54px;
    }
    
    .bento-grid .premium-card:nth-child(2) .premium-icon-box svg,
    .bento-grid .premium-card:nth-child(4) .premium-icon-box svg {
        width: 26px;
        height: 26px;
    }
}

/* На мобилках сетка автоматически превращается в красивую ровную single-колонку */
@media (max-width: 991px) {
    .bento-grid {
        grid-template-columns: 1fr;
    }
}

/* ==========================================================================
   КИНЕМАТОГРАФИЧНЫЕ КАРТОЧКИ УСЛУГ (HOVER REVEAL)
   ========================================================================== */
.service-card-pro { position: relative; height: 420px; border-radius: 16px; overflow: hidden; cursor: pointer; border: 1px solid rgba(255, 255, 255, 0.04); background-color: var(--bg-card); transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
.service-card-pro:hover { border-color: rgba(246, 190, 106, 0.3); box-shadow: 0 20px 40px rgba(0,0,0,0.8), 0 0 30px rgba(246, 190, 106, 0.05); transform: translateY(-5px); }

.scp-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; transition: transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
.service-card-pro:hover .scp-bg { transform: scale(1.08); }
.scp-bg .img-placeholder { width: 100%; height: 100%; background-color: #111; display: flex; align-items: center; justify-content: center; color: #333; font-weight: 900; font-size: 3rem; letter-spacing: 5px; }

.scp-overlay { position: absolute; bottom: 0; left: 0; width: 100%; height: 70%; background: linear-gradient(to top, rgba(10,10,10, 0.95) 0%, rgba(10,10,10, 0.7) 40%, transparent 100%); transition: height 0.4s ease, background 0.4s ease; }
.service-card-pro:hover .scp-overlay { height: 100%; background: linear-gradient(to top, rgba(10,10,10, 0.98) 0%, rgba(10,10,10, 0.8) 60%, rgba(10,10,10, 0.4) 100%); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); }

.scp-content { position: absolute; bottom: 0; left: 0; width: 100%; padding: 32px 24px; z-index: 2; }
.scp-content h3 { font-size: 1.4rem; font-weight: 800; color: var(--text-white); margin-bottom: 0; transition: transform 0.4s ease, margin-bottom 0.4s ease; }
.service-card-pro:hover .scp-content h3 { transform: translateY(-10px); margin-bottom: 8px; color: var(--accent-gold-light); }

.scp-hidden { max-height: 0; opacity: 0; transform: translateY(20px); transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94); overflow: hidden; }
.service-card-pro:hover .scp-hidden { max-height: 200px; opacity: 1; transform: translateY(0); }
.scp-hidden p { font-size: 0.9rem; line-height: 1.5; color: #bbbbbb; margin-bottom: 20px; }

.scp-explore { display: inline-flex; align-items: center; gap: 8px; font-size: 0.85rem; font-weight: 700; text-transform: uppercase; color: var(--text-white); letter-spacing: 1px; }
.scp-explore .arrow { color: var(--accent-gold-light); font-size: 1.2rem; transition: transform 0.3s ease; }
.service-card-pro:hover .scp-explore .arrow { transform: translateX(5px); }

/* ФОРМА (Используется в модальном окне) */
.quote-form { display: flex; flex-direction: column; gap: 16px; max-width: 550px; margin: 0 auto; width: 100%; }
.quote-form input, .quote-form select { width: 100%; padding: 18px; background-color: rgba(10, 10, 10, 0.5); border: 1px solid rgba(255, 255, 255, 0.06); border-radius: 8px; color: var(--text-white); font-family: var(--font-main); font-size: 1rem; transition: border-color 0.2s ease; }
.quote-form input:focus, .quote-form select:focus { outline: none; border-color: var(--accent-gold-light); }

/* ==========================================================================
   FINAL AW-CTA BLOCK (ПОДВАЛ С ФУРГОНОМ)
   ========================================================================== */
.aw-footer-cta { 
    position: relative; width: 100%; min-height: 800px; display: flex; align-items: center; justify-content: center; 
    background: transparent !important; margin-top: 60px; margin-bottom: -60px; 
    overflow: hidden; /* БЛОКИРОВКА СДВИГА ЭКРАНА */
}
.aw-bg-text { position: absolute; top: 23%; left: 50%; transform: translate3d(-50%, 0, 0); font-size: clamp(5rem, 12vw, 15rem); font-weight: 900; line-height: 0.85; text-align: center; color: rgba(255, 255, 255, 0.03); text-transform: uppercase; white-space: nowrap; z-index: 1; pointer-events: none; }
.aw-hero-van { position: absolute; bottom: 0; left: 50%; transform: translate3d(-50%, 0, 0); width: 100%; max-width: 900px; z-index: 2; pointer-events: none; filter: drop-shadow(0 -10px 40px rgba(0,0,0,0.8)); }
.aw-cta-overlay { position: absolute; bottom: 220px; left: 50%; transform: translate3d(-50%, 0, 0); z-index: 3; display: flex; justify-content: space-between; align-items: center; width: 100%; max-width: 1200px; padding: 0 24px; }
.aw-glass-panel { width: 30%; max-width: 320px; background: rgba(15, 15, 15, 0.55); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 12px; padding: 24px; text-align: center; box-shadow: 0 15px 35px rgba(0,0,0,0.6); }
.aw-glass-panel p { font-size: 0.85rem; color: #e0e0e0; margin: 0; line-height: 1.6; font-weight: 500; }
.aw-action-center { display: flex; justify-content: center; align-items: center; }

/* Анимация кнопки на фургоне */
@keyframes van-btn-pulse {
    0% { box-shadow: 0 0 0 0 rgba(246, 190, 106, 0.5), 0 10px 30px rgba(156, 104, 49, 0.5); }
    70% { box-shadow: 0 0 0 20px rgba(246, 190, 106, 0), 0 15px 40px rgba(156, 104, 49, 0.6); }
    100% { box-shadow: 0 0 0 0 rgba(246, 190, 106, 0), 0 10px 30px rgba(156, 104, 49, 0.5); }
}

.aw-action-center .btn-gold-gradient {
    width: auto !important; display: inline-block; padding: 20px 45px; min-width: 300px;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    animation: van-btn-pulse 2.5s infinite ease-in-out;
}
.aw-action-center .btn-gold-gradient:hover {
    transform: translateY(-3px) scale(1.02) !important;
    box-shadow: 0 0 40px rgba(246, 190, 106, 0.8), 0 15px 40px rgba(156, 104, 49, 0.6) !important;
    animation: none;
}

/* ==========================================================================
   ПОДВАЛ
   ========================================================================== */
footer, .site-footer, #footer { position: relative !important; z-index: 10 !important; background: transparent !important; border: none !important; box-shadow: none !important; }
footer.footer-glass { 
    position: relative !important; z-index: 11 !important; 
    background-color: rgba(15, 15, 15, 0.7) !important; backdrop-filter: blur(20px) !important; -webkit-backdrop-filter: blur(20px) !important; 
    border: 1px solid rgba(255, 255, 255, 0.1) !important; border-radius: 12px !important; 
    padding: 40px 20px !important; text-align: center !important; box-shadow: 0 10px 40px rgba(0,0,0,0.5) !important; 
    width: calc(100% - 32px) !important; max-width: 1200px !important; margin: 40px auto 20px auto !important; 
}

/* ==========================================================================
   МОДАЛЬНОЕ ОКНО
   ========================================================================== */
.modal-overlay {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0, 0, 0, 0.85); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
    z-index: 100000; display: flex; align-items: center; justify-content: center;
    opacity: 0; visibility: hidden; transition: all 0.3s ease;
}
.modal-overlay.active { opacity: 1; visibility: visible; }

.modal-container {
    background: var(--bg-card); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 16px;
    padding: 40px 32px; width: 90%; max-width: 500px; position: relative;
    transform: translateY(30px) scale(0.95); transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    box-shadow: 0 25px 50px rgba(0,0,0,0.8);
}
.modal-overlay.active .modal-container { transform: translateY(0) scale(1); }

.modal-close { position: absolute; top: 16px; right: 20px; background: none; border: none; color: var(--text-muted); font-size: 2.2rem; cursor: pointer; transition: color 0.3s ease; line-height: 1; }
.modal-close:hover { color: var(--accent-gold-light); }
.modal-header { text-align: center; margin-bottom: 24px; }
.modal-header .section-title { font-size: 1.5rem; margin-bottom: 4px; }

/* ==========================================================================
   DESKTOP МЕДИА ЗАПРОСЫ
   ========================================================================== */
@media (min-width: 992px) {
    .section-padding { padding: 80px 0; }
    
    .header-container { gap: 20px; }
    .header-descriptor { display: block; font-size: 0.65rem; white-space: nowrap; }
    .hidden-mobile { display: flex; }
    .header-actions { gap: 32px; }
    .header-socials { display: flex; align-items: center; gap: 16px; }
    .social-text { font-size: 0.7rem; color: var(--text-muted); text-align: right; line-height: 1.3; }
    .social-icons { display: flex; gap: 8px; }
    .icon-circle { width: 34px; height: 34px; border: 1px solid rgba(255,255,255,0.1); border-radius: 6px; display: flex; align-items: center; justify-content: center; color: var(--text-white); transition: all 0.3s ease; }
    .icon-circle:hover { background-color: var(--accent-gold-light); border-color: var(--accent-gold-light); color: #000; }
    .icon-circle svg { width: 16px; height: 16px; }
    .header-phone { display: flex; flex-direction: column; align-items: flex-end; min-width: 160px; white-space: nowrap; }
    .header-phone a { color: var(--text-white); font-size: 1.1rem; font-weight: 800; text-decoration: none; }
    .online-status { font-size: 0.7rem; color: var(--text-muted); display: flex; align-items: center; gap: 6px; margin-top: 2px; white-space: nowrap; }
    .dot { width: 6px; height: 6px; background-color: var(--accent-gold-light); border-radius: 50%; box-shadow: 0 0 8px var(--accent-gold-light); }

    .hero-grid { display: flex; align-items: center; min-height: 600px; padding-bottom: 20px; position: relative; }
    .hero-content-left { width: 100%; padding-top: 0; position: relative; z-index: 1; }
    .hero-content-left > * { position: relative; }
    .promo-gift, .hero-switch, .micro-text { z-index: 10; }
    .gradient-text, .hero-subtitle { z-index: 1; }
    .promo-gift { margin-bottom: 30px; }
    .gradient-text { font-size: clamp(2.8rem, 5vw, 5.5rem); line-height: 0.95; letter-spacing: -2px; margin-bottom: 30px; white-space: nowrap; }
    
    .hero-visual-right { position: absolute; width: 60%; max-width: 1050px; min-width: 650px; right: -5%; top: 50%; transform: translateY(-50%); z-index: 2; pointer-events: none; }
    
    .feature-pointer { display: flex; position: absolute; background-color: rgba(20, 20, 20, 0.4); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(255, 255, 255, 0.15); padding: 12px 18px; border-radius: 8px; align-items: center; gap: 12px; cursor: pointer; pointer-events: auto; z-index: 10; box-shadow: 0 10px 30px rgba(0,0,0,0.5); }
    .pointer-text { font-size: 0.85rem; font-weight: 700; color: var(--text-white); white-space: nowrap; }
    .toggle-track { width: 34px; height: 18px; background-color: var(--toggle-off); border-radius: 20px; position: relative; transition: 0.3s ease; border: 1px solid rgba(255,255,255,0.05); }
    .toggle-thumb { position: absolute; width: 12px; height: 12px; background-color: #ffffff; border-radius: 50%; top: 2px; left: 3px; transition: transform 0.3s cubic-bezier(0.4, 0.0, 0.2, 1); }
    .feature-pointer.active .toggle-track { background-color: var(--toggle-on); border-color: var(--toggle-on); }
    .feature-pointer.active .toggle-thumb { transform: translateX(14px); }
    
    .pointer-top-right { top: 12%; right: 12%; }      
    .pointer-mid-left { bottom: 23%; left: 0%; }       
    .pointer-bottom-right { bottom: 27%; right: 12%;} 

    .b2b-layout .pointer-top-right { top: 0%; right: 36%; }      
    .b2b-layout .pointer-mid-left { bottom: 23%; left: 0%; }       
    .b2b-layout .pointer-bottom-right { bottom: 30%; right: 4%; }

    .feature-pointer::after, .pointer-top-right::after, .pointer-mid-left::after, .pointer-bottom-right::after { display: none !important; }

    .tint-dropdown { position: absolute; bottom: 100%; left: 14px; right: 14px; background-color: rgba(15, 15, 15, 0.95); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border: 1px solid rgba(255, 255, 255, 0.05); border-bottom: none; border-radius: 8px 8px 0 0; padding: 6px; margin-bottom: -1px; display: flex; justify-content: center; gap: 4px; opacity: 0; visibility: hidden; transition: opacity 0.2s ease, visibility 0.2s ease; z-index: 1; cursor: default; }
    .tint-dropdown::after { display: none !important; } 
    .feature-pointer.active .tint-dropdown { opacity: 1; visibility: visible; }
    .tint-level { flex: 1; text-align: center; padding: 6px 0; background: rgba(255, 255, 255, 0.03); color: #ddd; border-radius: 4px; font-size: 0.8rem; font-weight: 600; cursor: pointer; transition: background 0.2s, color 0.2s; }
    .tint-level:hover { background: rgba(255, 255, 255, 0.08); color: #fff; }
    .tint-level.active { background: var(--toggle-on); color: #000; font-weight: 800; }

    /* Bento Grid Layout & Alignment for Desktop */
    .premium-card.wide {
        flex-direction: row; align-items: flex-start; gap: 32px; padding: 40px 48px;
    }
    .premium-card.wide .premium-icon-box {
        margin-top: 4px; margin-bottom: 0; flex-shrink: 0; width: 80px; height: 80px;
    }
    .premium-card.wide .premium-icon-box svg { width: 36px; height: 36px; }
    .premium-card.wide .card-text { flex: 1; }
}

/* ==========================================================================
   АДАПТАЦИЯ МОБИЛЬНЫХ УСТРОЙСТВ
   ========================================================================== */
.mobile-icons-only, .mobile-bottom-bar { display: none; }

@media (max-width: 992px) {
    .aw-cta-overlay { flex-direction: column; gap: 20px; bottom: 180px; }
    .modal-container { padding: 32px 20px; }
}

@media (max-width: 991px) {
    .logo-img { max-height: 42px !important; }
    .hidden-mobile { display: none !important; }
    .mobile-icons-only { display: flex; gap: 20px; align-items: center; }
    .mobile-icons-only a { color: var(--text-white); width: 24px; height: 24px; display: flex; align-items: center; justify-content: center; transition: color 0.3s ease; }
    .mobile-icons-only a svg { width: 100%; height: 100%; }
    .mobile-icons-only a:hover { color: var(--accent-gold-light); }
    .header-container { padding: 0 20px !important; justify-content: space-between !important; }
    .header-actions { gap: 0 !important; }

    .hero-switch { display: none !important; }

    /* Bento Grid Mobile Layout */
    .bento-grid { grid-template-columns: 1fr; }
    .premium-card.wide { grid-column: span 1; }

    .mobile-bottom-bar {
        display: block; position: fixed; bottom: 20px; left: 50%; transform: translate3d(-50%, 0, 0); 
        width: calc(100% - 32px); max-width: 450px; z-index: 9999 !important; pointer-events: auto !important; 
    }

    @keyframes soft-pulse {
        0% { box-shadow: 0 4px 15px rgba(156, 104, 49, 0.3), 0 0 0 0 rgba(246, 190, 106, 0.6); }
        70% { box-shadow: 0 4px 15px rgba(156, 104, 49, 0.3), 0 0 0 15px rgba(246, 190, 106, 0); }
        100% { box-shadow: 0 4px 15px rgba(156, 104, 49, 0.3), 0 0 0 0 rgba(246, 190, 106, 0); }
    }

    .mbb-glass-container { background-color: rgba(15, 15, 15, 0.7); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 12px; padding: 8px; display: flex; align-items: center; justify-content: space-between; gap: 12px; box-shadow: 0 -10px 40px rgba(0,0,0,0.5); }
    .mbb-switch { display: flex; flex: 1; background-color: #080808; border-radius: 8px; border: 1px solid rgba(255, 255, 255, 0.05); padding: 4px; }
    .mbb-switch-btn { flex: 1; padding: 12px 2px; font-family: var(--font-main); font-size: 0.65rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.5px; color: #666; background: transparent; border: none; border-radius: 6px; cursor: pointer; transition: all 0.3s ease; }
    .mbb-switch-btn.active { background: var(--accent-gradient); color: #000; box-shadow: 0 0 15px rgba(246, 190, 106, 0.2); }
    .mbb-cta-btn { width: 48px; height: 48px; flex-shrink: 0; background: var(--accent-gradient); border: none; border-radius: 8px; display: flex; align-items: center; justify-content: center; color: #000; cursor: pointer; box-shadow: 0 4px 15px rgba(156, 104, 49, 0.3); animation: soft-pulse 2s infinite ease-in-out; transition: transform 0.2s ease; }
    .mbb-cta-btn:active { transform: scale(0.95); }
    .mbb-cta-btn svg { width: 22px; height: 22px; }
}

@media (max-width: 768px) {
    .usp-strip { padding: 20px 0; }
    .usp-strip + .section-padding { padding-top: 50px !important; }
    .usp-strip-container { justify-content: center; gap: 16px; }
    .usp-item { width: 45%; justify-content: flex-start; }
    .usp-text { font-size: 0.75rem; }
}