/* ==========================================================================
   overrides.css — landing-specific values
   --------------------------------------------------------------------------
   ВСЁ, что меняется с ленда на ленд, живёт здесь. Файл подключается ПОСЛЕДНИМ —
   значит любая переменная или правило отсюда перекрывает базовые из других
   файлов. Бери этот файл за основу при заведении нового ленда.

   Содержит ровно три секции:
     1. Бренд-переменные   (цвет акцента, золота, фон, радиусы)
     2. Шрифт и оффер      (название продукта, цены, ссылки)
     3. Точечные правки    (для микрокорректировок без переписывания компонентов)
   ========================================================================== */

:root {
    /* --- 1. Бренд-переменные ------------------------------------------ */
    /* Основной синий бренда */
    --c-navy:      #1A3067;
    --c-navy-deep: #223B88;
    --c-darker:    #303D71;
    /* Синий-акцент (футер-лого, кнопки "Tudj meg többet") */
    --c-accent:    #4D80DE;
    --c-tint:      #C6D3E8;
    --c-wash:      #EAEEF7;
    /* Жёлтый акцент CTA */
    --c-gold:      #EF994E;
    --c-gold-soft: #ffebbe;
    --c-gold-text: #dd9b00;
    /* Красный (warning) */
    --c-danger:    #da2f15;
    --c-danger-bg: #ffece9;

    /* --- 2. Типографика, оффер ---------------------------------------- */
    --ff-display: 'Brygada 1918', 'Geologica', serif;
    --ff-body:    'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;

    /* Радиусы (если ленд требует более плоский/острый стиль) */
    --radius-sm: 8px;
    --radius:    12px;
    --radius-lg: 16px;
    --radius-xl: 24px;
}

/* --- 3. Точечные правки --------------------------------------------------
   Здесь можно держать одиночные правила, которые «подкручивают» компонент,
   не переписывая его исходные стили. Примеры:

   .topbar { background: linear-gradient(...); }
   .product__cta { text-transform: uppercase; }
   .desc__title { font-style: italic; }

   ----------------------------------------------------------------------- */

/* [A] Мини-форма заказа в шагах (order.html) */
.steps .register__submit {
    height: 46px;
    font-size: 14px;
}

.steps .mockform {
    height: auto;
    min-height: 200px;
}

/* [B] Видео-ревю: портрет 9:16 на всех ширинах */
.video {
    aspect-ratio: 9 / 16;
    max-width: min(100%, 300px);
    margin-inline: auto;
}

/* [C] Планшет/мобайл: бренд слева, перемикач+CTA+бургер ГРУППОЙ справа.
   ОДИН auto-margin (на бренде) толкает всё после него вправо. НЕ ставить auto
   на .header__lang И .product__cta--sm одновременно — два auto растаскивают их,
   между перемикачом и CTA появляется зазор («розсипано», SEOX-2369). */
@media (max-width: 1024px) {
    .topbar__inner .topbar__brand { margin-inline-end: auto; }

    /* iPad Pro 1024: блок инфо товара («шапка») по центру, выровнен с галереей
       (рекуррентная ревью-правка). По умолч. flex растягивает .product__info влево. */
    .product__info {
        width: 100%;
        max-width: 500px;
        align-self: center;
    }
}

/* Компактный перемикач языка на узких телефонах, чтобы бренд+перемикач+бургер
   помещались в одну строку (SEOX-2369). */
@media (max-width: 600px) {
    .header__current-lang { min-width: 0; padding: 8px 14px; }
}

/* [D] Узкие экраны: карточки шагов не на всю ширину */
@media (max-width: 768px) {
    .steps {
        justify-items: center;
    }

    .steps__card {
        width: 100%;
        max-width: 400px;
    }
}

/* [E] CTA в шапке — одна строка; поджим отступов при переполнении */
.product__cta--sm {
    white-space: nowrap;
    text-align: center;
}

@media (min-width: 1025px) and (max-width: 1180px) {
    .topbar__nav {
        gap: 12px;
    }

    .topbar__inner {
        gap: 12px;
    }

    .product__cta--sm {
        padding: 6px 14px;
    }
}


/* ==========================================================================
   [KMB] SEOX-2543 — brand palette + макет-правки Keto Matcha Blue (PL)
   ========================================================================== */

/* Тени/свечения захардкожены мимо переменных — перекрашиваем под CTA #EF994E
   и navy #1A3067 макета (иначе остаются стоковые оранжево-красные/сине-фиолетовые). */
:root {
    --sh-cta: 0 8px 22px rgba(239, 153, 78, 0.35);
}

@keyframes pulse-cta {
    0%, 100% { box-shadow: 0 8px 22px rgba(239, 153, 78, 0.35); }
    50%      { box-shadow: 0 8px 30px rgba(239, 153, 78, 0.55); }
}

/* Плавающая кнопка заказа (register.css @keyframes pulse) — стоковый rgba(245,69,0) */
@keyframes pulse {
    0%, 100% { box-shadow: 0 8px 22px 0 rgba(239, 153, 78, 0.35); }
    50%      { box-shadow: 0 12px 30px 0 rgba(239, 153, 78, 0.55); }
}

.hover-cta-btn { box-shadow: 0 8px 22px 0 rgba(239, 153, 78, 0.35); }

.product__main-img:hover { box-shadow: 0 24px 60px rgba(26, 48, 103, 0.18); }
.product__thumb--active  { box-shadow: 0 0 0 1px var(--c-navy), 0 6px 14px rgba(26, 48, 103, 0.18); }

.mockform__price-badge { border: 0.5px solid rgba(239, 153, 78, 0.4); }

/* Плашка «Właściwości…» на макете — navy, а не --c-darker */
.specs__head { background: var(--c-navy); margin: 0; }

/* Видео-отзыв снят вертикально (1080×1920) — на мобайле стоковый бокс даёт ~533px */
@media (max-width: 768px) {
    .video {
        aspect-ratio: 9 / 16;
        height: 300px;
        width: auto;
        max-width: 100%;
    }
}

/* Промо-бар: в колоночном ≤768 не сбрасывался padding-right под кнопку закрытия */
@media (max-width: 768px) {
    .promo__inner { padding-right: 20px; }
    .promo__msg   { padding-right: 24px; }
}

/* Бренд из 3 слов («Keto Matcha Blue») в стоковом multi-2 сжимается флексом и
   переносится на 3 строки → обрезается фикс-высотой топбара (--topbar-h).
   Сток рассчитан на однословный бренд (Vitaxir). На макете — одна строка.
   Тот же фикс уходит в ядро (template-MR). */
.topbar__brand      { white-space: nowrap; flex-shrink: 0; }
.site-footer__logo  { white-space: nowrap; }

/* Длинные польские сложные слова («niskowęglowodanowej») вылезали за H2 на 390px */
.desc__title { overflow-wrap: break-word; }

/* Топбар: на макете (компонент «01 — Navigation» + инстансы страниц) навигация
   ЦЕЛИКОМ белая — активный пункт НЕ золотой и без подчёркивания; за индикацию
   текущей страницы отвечает таб-бар ниже. Сток красит активный в --c-gold. */
.topbar__nav-link--active         { color: #fff; }
.topbar__nav-link--active::after  { left: 50%; right: 50%; }
.topbar__nav-link::after          { background: #fff; }
.topbar__nav-link:hover::after    { left: 0; right: 0; }

/* Старая цена ЗАЧЁРКНУТА (ревью Anastasiia H): сток multi-2 глушил это
   `text-decoration:none` в product.css, и «310 PLN» рядом со «155 PLN»
   читалось как вторая живая цена. На макете — зачёркнута. Класс общий для
   hero-цены и блока register → чинит оба места. В ядро уехало template-MR 2715;
   этот сайт собран раньше. */
.product__price-old { text-decoration: line-through; }

/* ==========================================================================
   [KMB] Шапка: CTA срезалась (ревью Anastasiya M, HD 1280)
   --------------------------------------------------------------------------
   Сток multi-2 пихает brand + 8 пунктов + CTA в одну строку, а бургер включает
   только на ≤1024. Польские лейблы длиннее венгерских стоковых → на ВСЕХ
   ширинах ≥1025 CTA вылезала за контейнер (.topbar__inner) на 51px, а на
   1025–1280 — и за вьюпорт (на 1280 торчала на 11px и срезалась). На 1440+
   она попадала в кадр, поэтому визуально казалась целой — баг ловится только
   замером, см. SEOX-2330.
   Решение (как в скилле): <1200 → бургер-дроп; ≥1200 → поджимаем инлайн-nav.
   Порог дробный (1199.98), чтобы на high-DPI не осталось щели на ~1024.5.
   ========================================================================== */

@media (min-width: 1200px) {
    .topbar__inner { gap: 16px; }
    .topbar__nav { gap: 12px; }
    .topbar__nav-link { font-size: 15px; }
}

@media (max-width: 1199.98px) {
    /* position:relative ОБЯЗАТЕЛЕН: спаны бургера — position:absolute; width:100%,
       и без позиционированного родителя они считаются от страницы, растягиваясь
       во всю ширину шапки (выглядит как перечёркнутый хедер). В стоке это правило
       живёт в @media ≤1024, в новый диапазон 1025–1199 не попадает. */
    .topbar__burger { display: block; position: relative; }
    .topbar__burger span { transition: transform 0.25s ease, opacity 0.2s ease; }

    /* Бургер -> крестик (тоже только в стоковом ≤1024) */
    .topbar.is-open .topbar__burger span:nth-child(1) {
        transform: translate(-50%, -50%) rotate(45deg);
        transform-origin: center;
        left: 50%;
        top: 50%;
    }
    .topbar.is-open .topbar__burger span:nth-child(2) { opacity: 0; }
    .topbar.is-open .topbar__burger span:nth-child(3) {
        transform: translate(-50%, -50%) rotate(-45deg);
        transform-origin: center;
        left: 50%;
        bottom: 50%;
    }

    body.has-menu-open { overflow: hidden; }

    /* Бренд слева, CTA+бургер ГРУППОЙ справа. Сток делает это ОДНИМ auto на
       бренде, но только в @media ≤1024 — в диапазоне 1025–1199 его нет, и
       space-between вешает CTA ПОСЕРЕДИНЕ шапки (зазор до бургера ~330px,
       SEOX-2330 site-MR 1959). Второй auto (на CTA) НЕ ставим — два auto
       растаскивают контролы (SEOX-2369). */
    .topbar__inner .topbar__brand { margin-inline-end: auto; }

    .topbar__nav {
        position: fixed;
        top: var(--topbar-h);
        left: 0;
        right: 0;
        max-height: calc(100vh - var(--topbar-h));
        overflow-y: auto;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding: 16px 20px 24px;
        background: var(--c-navy);
        border-top: 1px solid rgba(255, 255, 255, 0.08);
        transform: translateY(-12px);
        opacity: 0;
        visibility: hidden;
        transition: transform 0.25s ease, opacity 0.25s ease, visibility 0.25s;
    }

    .topbar__nav-link {
        padding: 14px 8px;
        font-size: 18px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    }
    .topbar__nav-link:last-of-type { border-bottom: 0; }
    .topbar__nav-link::after { display: none; }

    .topbar::before {
        content: "";
        position: fixed;
        inset: var(--topbar-h) 0 0;
        background: rgba(0, 0, 0, 0.45);
        opacity: 0;
        visibility: hidden;
        transition: opacity 0.25s ease, visibility 0.25s;
        pointer-events: none;
        z-index: -1;
    }

    .topbar.is-open .topbar__nav { transform: translateY(0); opacity: 1; visibility: visible; }
    .topbar.is-open::before { opacity: 1; visibility: visible; pointer-events: auto; }

    /* CTA прижата вправо к бургеру: в новом диапазоне 1025–1199 ядровый
       margin-left:auto не действует (он в @media ≤1024) → кнопка болталась бы
       по центру (SEOX-2330). Единственный auto — на бренде (см. сток [C]). */
    .topbar__inner .product__cta--sm {
        height: 34px;
        padding: 6px 16px;
        font-size: 13px;
        width: fit-content;
        flex: 0 0 auto;
    }
}

/* CTA внутри бургер-дропа. Сток намеренно прячет кнопку в шапке на телефонах
   (`@media(max-width:600px){.product__cta--sm{display:none}}`), из-за чего на
   мобайле не остаётся НИ ОДНОЙ кнопки заказа в шапке/меню (ревью Anastasiya M).
   Показываем её последним пунктом дропа — там влезает длинный польский лейбл,
   в отличие от тесной мобильной шапки. Выше 600 кнопка в шапке и так есть. */
.topbar__nav-cta { display: none; }

@media (max-width: 600px) {
    .topbar__nav-cta {
        display: flex;
        width: 100%;
        margin-top: 16px;
        padding: 13px 24px;
        justify-content: center;
    }
}
