/* =========================================================
   ROOT (переменные)
========================================================= */
#promo-page-2026 {
    --promo-primary: #5b35b5;
    --promo-primary-dark: #45258d;
    --promo-accent: #dc62c1;
    --promo-text: #2e2f38;
    --promo-text-light: #67697e;
    --promo-bg: #ffffff;
    --promo-bg-soft: #f7f6fb;
    --promo-border: rgba(91,53,181,.12);
    --promo-radius: 24px;
    --promo-shadow: 0 10px 35px rgba(46,47,56,.08);
    --promo-transition: .25s ease;

    /* Цвета для карточек */
    --discount-primary: #5b35b5;
    --discount-text: #20212d;
    --discount-muted: #74768a;
    --discount-border: rgba(91,53,181,.10);
    --discount-line: rgba(91,53,181,.13);

    /* Цвета для доставки */
    --delivery-gold: #ffd84d;
    --delivery-bg: rgba(72,21,139,.30);

    /* Цвета для соединителей */
    --connector-dot: rgba(200,170,230,.9);
    --connector-dot-dark: rgba(210,180,235,.9);

    width: 100%;
    overflow-x: hidden;
    overflow-y: visible;
    color: var(--promo-text);
    font-family: Rubik,Arial,sans-serif;
    line-height: 1.6;
}
#promo-page-2026 *,
#promo-page-2026 *::before,
#promo-page-2026 *::after { box-sizing: border-box; }

/* =========================================================
   ICONS (сгруппированы)
========================================================= */
#promo-page-2026 .promo-icon { flex-shrink:0; display:inline-block; vertical-align:middle; }
#promo-page-2026 .promo-icon--xs { width:16px; height:16px; }
#promo-page-2026 .promo-icon--sm { width:18px; height:18px; }
#promo-page-2026 .promo-icon--md { width:22px; height:22px; }
#promo-page-2026 .promo-icon--lg { width:28px; height:28px; }
#promo-page-2026 .promo-icon--nav { width:18px; height:18px; flex-shrink:0; }
#promo-page-2026 .promo-icon--btn-lg { width:22px; height:22px; }
#promo-page-2026 .promo-icon--nav-lg { width:22px; height:22px; }
#promo-page-2026 .promo-icon--label-lg { width:32px; height:32px; flex-shrink:0; color:var(--promo-primary); overflow:visible; }
#promo-page-2026 .promo-icon--feature-lg { width:26px; height:26px; }
#promo-page-2026 .promo-icon--info-lg { width:34px; height:34px; }
#promo-page-2026 .promo-icon--faq-label { width:42px; height:42px; flex-shrink:0; }
#promo-page-2026 .promo-icon--faq-nav { width:25px; height:25px; flex-shrink:0; }
#promo-page-2026 .promo-icon--faq-nav svg { width:100%; height:100%; display:block; transform:scale(1.10); transform-origin:center; }

/* =========================================================
   CONTAINER & TYPOGRAPHY
========================================================= */
#promo-page-2026 .promo-container { width:min(1180px,calc(100% - 40px)); margin:0 auto; }
#promo-page-2026 .promo-container--faq { max-width:920px; }
#promo-page-2026 h2,#promo-page-2026 h3,#promo-page-2026 p { margin-top:0; }
#promo-page-2026 h2 { font-size:clamp(30px,4vw,52px); line-height:1.12; letter-spacing:-.03em; color:var(--promo-text); }
#promo-page-2026 h3 { font-size:clamp(20px,2vw,27px); line-height:1.25; }
#promo-page-2026 .promo-label {
    display:inline-flex; align-items:center; gap:8px; margin-bottom:14px;
    color:var(--promo-primary); font-size:13px; font-weight:700;
    letter-spacing:.12em; text-transform:uppercase;
}
#promo-page-2026 .promo-label--light { color:rgba(255,255,255,.7); }
#promo-page-2026 .promo-label--lg { font-size:23px; gap:14px; }
#promo-page-2026 .promo-no-wrap { white-space:nowrap; }
#promo-page-2026 .promo-nav-text { font-size:15px; }

/* =========================================================
   BUTTONS
========================================================= */
#promo-page-2026 .promo-btn {
    display:inline-flex; align-items:center; justify-content:center; gap:10px;
    min-height:50px; padding:12px 36px; border:none; border-radius:100px;
    font-family:inherit; font-size:15px; font-weight:700; text-decoration:none;
    transition:transform var(--promo-transition),box-shadow var(--promo-transition),background var(--promo-transition);
    cursor:pointer;
}
#promo-page-2026 .promo-btn:hover { transform:translateY(-2px); }
#promo-page-2026 .promo-btn--primary {
    color:#fff!important; background:linear-gradient(135deg,var(--promo-primary),var(--promo-accent));
    box-shadow:0 12px 30px rgba(91,53,181,.28);
}
#promo-page-2026 .promo-btn--primary:hover { color:#fff!important; box-shadow:0 18px 40px rgba(91,53,181,.38); }
#promo-page-2026 .promo-btn--light { color:var(--promo-primary)!important; background:#fff; border:1px solid rgba(255,255,255,.5); }
#promo-page-2026 .promo-btn--white { color:var(--promo-primary)!important; background:#fff; box-shadow:0 10px 30px rgba(0,0,0,.12); }

/* =========================================================
   HERO
========================================================= */
#promo-page-2026 .promo-hero {
    position:relative; padding:30px 0 35px;
    background:radial-gradient(circle at 80% 20%,rgba(220,98,193,.28),transparent 30%),
              radial-gradient(circle at 20% 80%,rgba(255,255,255,.15),transparent 28%),
              linear-gradient(135deg,#47278f,#5b35b5 55%,#8b43b4);
    color:#fff; overflow:hidden;
}
#promo-page-2026 .promo-hero::before,
#promo-page-2026 .promo-hero::after {
    content:""; position:absolute; border-radius:50%; pointer-events:none;
}
#promo-page-2026 .promo-hero::before {
    width:420px; height:420px; top:-250px; right:-100px;
    border:70px solid rgba(255,255,255,.05);
}
#promo-page-2026 .promo-hero::after {
    width:250px; height:250px; bottom:-170px; left:30%;
    border:40px solid rgba(255,255,255,.04);
}
#promo-page-2026 .promo-hero .promo-container { position:relative; z-index:1; }
#promo-page-2026 .promo-hero__content { max-width:780px; }
#promo-page-2026 .promo-hero__title {
    margin-bottom:24px; color:#fff!important;
    font-size:clamp(42px,6vw,74px)!important; font-weight:700; letter-spacing:-.045em;
}
#promo-page-2026 .promo-hero__title span { color:#ffd7f4; }
#promo-page-2026 .promo-hero__text {
    max-width:640px; margin-bottom:34px;
    color:rgba(255,255,255,.8); font-size:clamp(17px,2vw,21px);
}
#promo-page-2026 .promo-hero__buttons { display:flex; flex-wrap:wrap; gap:14px; }

/* =========================================================
   NAVIGATION
========================================================= */
#promo-page-2026 .promo-navigation {
    position:relative; border-bottom:1px solid rgba(46,47,56,.06); background:#fff;
}
#promo-page-2026 .promo-navigation .promo-container {
    display:flex; align-items:center; justify-content:center; gap:30px; min-height:60px;
}
#promo-page-2026 .promo-navigation a {
    position:relative; display:inline-flex; align-items:center; gap:6px;
    color:var(--promo-text-light); font-size:14px; font-weight:500;
    text-decoration:none; transition:color var(--promo-transition);
}
#promo-page-2026 .promo-navigation a::after {
    content:""; position:absolute; bottom:-6px; left:0;
    width:0; height:2px; background:var(--promo-primary);
    transition:width var(--promo-transition);
}
#promo-page-2026 .promo-navigation a:hover { color:var(--promo-primary); }
#promo-page-2026 .promo-navigation a:hover::after { width:100%; }

/* =========================================================
   SECTIONS
========================================================= */
#promo-page-2026 .promo-section { padding:70px 0; }
#promo-page-2026 .promo-section--light { background:var(--promo-bg-soft); }
#promo-page-2026 .promo-section--steps { position:relative; background:linear-gradient(180deg,#fff,#faf9fd); }
#promo-page-2026 .promo-section-heading {
    display:flex; flex-direction:column; align-items:center; margin-bottom:40px; text-align:center;
}
#promo-page-2026 .promo-section-heading h2 { margin-bottom:14px; }
#promo-page-2026 .promo-section-heading p {
    max-width:700px; margin:0 auto; color:var(--promo-text-light); font-size:17px;
}
#promo-page-2026 .promo-center-heading {
    max-width:780px; margin:0 auto 50px; text-align:center;
}
#promo-page-2026 .promo-center-heading h2 { margin-bottom:14px; }
#promo-page-2026 .promo-center-heading p {
    margin-bottom:0; color:var(--promo-text-light); font-size:17px;
}

/* =========================================================
   DISCOUNTS — GRID & CARDS
========================================================= */
#promo-page-2026 .discount-grid {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.27fr);
    gap:48px;
    width:min(1592px,calc(100vw - 140px)); max-width:1592px;
    position:relative; left:50%; transform:translateX(-50%);
    margin:0; padding:0; align-items:center;
}
#promo-page-2026 .discount-card {
    position:relative; z-index:1; min-width:0; height:360px;
    padding:24px 24px 20px; background:#fff;
    border:1px solid var(--discount-border); border-radius:24px;
    box-shadow:0 8px 28px rgba(46,47,56,.035),0 2px 8px rgba(91,53,181,.025);
    color:var(--discount-text);
    transition:transform .25s ease,box-shadow .25s ease;
}
#promo-page-2026 .discount-card:hover {
    transform:translateY(-3px); z-index:10;
    box-shadow:0 18px 42px rgba(46,47,56,.08),0 5px 16px rgba(91,53,181,.055);
}
#promo-page-2026 .discount-card:nth-child(1) { z-index:5; }
#promo-page-2026 .discount-card:nth-child(2) { z-index:4; }
#promo-page-2026 .discount-card:nth-child(3) { z-index:3; }
#promo-page-2026 .discount-card:nth-child(4) { z-index:2; }

/* Featured Card */
#promo-page-2026 .discount-card--featured {
    height:400px; margin:0; padding:26px 26px 22px; color:#fff;
    background:linear-gradient(66.5deg,#703dbd,#7a43c2 12%,#8048c3 18%,#8a4dc2 29%,#9754bf 41%,#9f56bd 47%,#a75abc 52%,#af5dbb 58%,#b65fba 64%,#bf62b9 70%,#c564b9 75%,#cb67b9 81%,#d268b8 87%,#d769b7 93%,#dc6ab7);
    border:none; border-radius:24px;
    box-shadow:0 18px 42px rgba(119,54,184,.20),0 4px 14px rgba(217,75,156,.12); z-index:2;
}
#promo-page-2026 .discount-card--featured:hover {
    box-shadow:0 24px 52px rgba(119,54,184,.25),0 6px 18px rgba(217,75,156,.16);
}
#promo-page-2026 .discount-card--featured .discount-card__top { gap:14px; }
#promo-page-2026 .discount-card--featured .discount-card__number {
    width:48px; height:46px; flex:0 0 48px; color:var(--discount-primary);
    background:#fff; border:none; border-radius:12px; font-size:18px; font-weight:500;
}
#promo-page-2026 .discount-card--featured .discount-card__title {
    display:flex; align-items:center; gap:6px; color:#fff;
    font-size:16px; font-weight:500; letter-spacing:-.015em; white-space:nowrap;
}
#promo-page-2026 .discount-card--featured .discount-card__threshold { margin-top:22px; }
#promo-page-2026 .discount-card--featured .discount-card__threshold-label,
#promo-page-2026 .discount-card--featured .discount-card__threshold strong { color:#fff; }
#promo-page-2026 .discount-card--featured .discount-card__divider { background:rgba(255,255,255,.25); }
#promo-page-2026 .discount-card--featured .discount-card__divider--top { margin-top:15px; margin-bottom:0; }
#promo-page-2026 .discount-card--featured .discount-card__discount-icon { color:#fff; background:rgba(255,255,255,.13); }
#promo-page-2026 .discount-card--featured .discount-card__discount-value,
#promo-page-2026 .discount-card--featured .discount-card__discount-label { color:#fff; }
#promo-page-2026 .discount-card--featured .discount-card__discount-label {
    display:flex; align-items:center; gap:6px;
}
#promo-page-2026 .discount-card--featured .discount-card__plus-icon {
    color:var(--delivery-gold); font-size:18px; font-weight:700; line-height:1;
}

/* Card Parts */
#promo-page-2026 .discount-card__top {
    display:flex; align-items:center; width:100%; min-width:0; min-height:52px; gap:18px;
}
#promo-page-2026 .discount-card__number {
    display:flex; align-items:center; justify-content:center;
    width:54px; height:52px; flex:0 0 54px;
    color:var(--discount-primary);
    background:linear-gradient(145deg,rgba(91,53,181,.045),rgba(174,94,218,.085));
    border:1px solid rgba(91,53,181,.09); border-radius:14px;
    font-family:Rubik,Arial,sans-serif; font-size:20px; line-height:1; font-weight:500; letter-spacing:-.02em;
}
#promo-page-2026 .discount-card__title {
    min-width:0; color:var(--discount-primary);
    font-family:Rubik,Arial,sans-serif; font-size:16px; line-height:1.05; font-weight:500;
    letter-spacing:-.02em; text-transform:uppercase; white-space:nowrap;
}
#promo-page-2026 .discount-card__star { flex:0 0 auto; color:var(--delivery-gold); font-size:18px; line-height:1; }
#promo-page-2026 .discount-card__threshold { display:block; margin:24px 0 0; min-width:0; }
#promo-page-2026 .discount-card__threshold-label {
    display:block; margin:0 0 4px; color:var(--discount-muted);
    font-family:Rubik,Arial,sans-serif; font-size:15px; line-height:1.15; font-weight:400; text-transform:uppercase;
}
#promo-page-2026 .discount-card__threshold strong {
    display:block; color:var(--discount-text);
    font-family:Rubik,Arial,sans-serif; font-size:48px; line-height:1.02; font-weight:500;
    letter-spacing:-.045em; white-space:nowrap;
}
#promo-page-2026 .discount-card__divider {
    width:100%; height:1px; margin:28px 0 0; background:var(--discount-line);
}
#promo-page-2026 .discount-card__discount {
    display:flex; align-items:center; min-width:0; gap:14px; margin-top:32px;
}
#promo-page-2026 .discount-card__discount-icon {
    display:flex; align-items:center; justify-content:center;
    width:60px; height:60px; flex:0 0 64px;
    color:var(--discount-primary);
    background:radial-gradient(circle at center,rgba(91,53,181,.09),rgba(91,53,181,.045));
    border-radius:50%;
}
#promo-page-2026 .discount-card__discount-icon svg {
    display:block; width:32px; height:32px;
    transform:scale(1.4); transform-origin:center; margin-top:8px;
}
#promo-page-2026 .discount-card__discount-content { min-width:0; }
#promo-page-2026 .discount-card__discount-value {
    color:var(--discount-primary);
    font-family:Rubik,Arial,sans-serif; font-size:40px; line-height:1;
    font-weight:500; letter-spacing:-.045em; white-space:nowrap;
}
#promo-page-2026 .discount-card__discount-label {
    margin-top:8px; color:var(--discount-muted);
    font-family:Rubik,Arial,sans-serif; font-size:14px; line-height:1.15;
    font-weight:400; text-transform:uppercase;
}

/* Delivery */
#promo-page-2026 .discount-card__delivery {
    display:flex; align-items:center; gap:12px; margin-top:18px;
    padding:10px 16px; background:var(--delivery-bg); border-radius:12px; color:#fff;
}
#promo-page-2026 .discount-card__delivery-icon {
    display:flex; align-items:center; justify-content:center;
    width:34px; height:34px; flex:0 0 34px; color:var(--delivery-gold);
}
#promo-page-2026 .discount-card__delivery-icon svg {
    display:block; width:26px; height:26px;
    transform:scale(1.4); transform-origin:center;
}
#promo-page-2026 .discount-card__delivery-text {
    min-width:0; font-family:Rubik,Arial,sans-serif; font-size:14px; line-height:1.25;
}
#promo-page-2026 .discount-card__delivery-title {
    display:block; margin-bottom:2px; color:var(--delivery-gold); font-weight:600; white-space:nowrap; font-size:14px;
}
#promo-page-2026 .discount-card__delivery-subtitle {
    display:block; color:#fff; font-weight:400; white-space:nowrap;
}

/* =========================================================
   CONNECTORS — ТОЛЬКО НА ДЕСКТОПЕ (4 колонки)
========================================================= */
#promo-page-2026 .discount-card:not(:last-child)::after {
    content: "";
    position: absolute;
    z-index: 20;
    top: 50%;
    right: -90px;
    width: 100px;
    height: 6px;
    transform: translateY(-50%);
    background:
        radial-gradient(circle at 5% 50%, rgba(200,170,230,.9) 0, rgba(200,170,230,.9) 1.5px, transparent 1.5px),
        radial-gradient(circle at 11% 50%, rgba(200,170,230,.9) 0, rgba(200,170,230,.9) 1.5px, transparent 1.5px),
        radial-gradient(circle at 17% 50%, rgba(200,170,230,.9) 0, rgba(200,170,230,.9) 1.5px, transparent 1.5px),
        radial-gradient(circle at 23% 50%, rgba(200,170,230,.9) 0, rgba(200,170,230,.9) 1.5px, transparent 1.5px),
        radial-gradient(circle at 29% 50%, rgba(200,170,230,.9) 0, rgba(200,170,230,.9) 1.5px, transparent 1.5px),
        radial-gradient(circle at 35% 50%, rgba(210,180,235,.9) 0, rgba(210,180,235,.9) 1.5px, transparent 1.5px),
        radial-gradient(circle at 41% 50%, rgba(210,180,235,.9) 0, rgba(210,180,235,.9) 1.5px, transparent 1.5px),
        radial-gradient(circle at 47% 50%, rgba(210,180,235,.9) 0, rgba(210,180,235,.9) 1.5px, transparent 1.5px),
        radial-gradient(circle at 53% 50%, rgba(210,180,235,.9) 0, rgba(210,180,235,.9) 1.5px, transparent 1.5px),
        radial-gradient(circle at 59% 50%, rgba(210,180,235,.9) 0, rgba(210,180,235,.9) 1.5px, transparent 1.5px),
        radial-gradient(circle at 65% 50%, rgba(210,180,235,.9) 0, rgba(210,180,235,.9) 1.5px, transparent 1.5px);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    pointer-events: none;
}
#promo-page-2026 .discount-card:not(:last-child)::before {
    content: "";
    position: absolute;
    z-index: 25;
    top: 50%;
    right: -24px;
    width: 34px;
    height: 34px;
    transform: translate(50%, -50%);
    border-radius: 50%;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b35b5' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m8 5 7 7-7 7'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: 18px;
    background-position: center;
    border: 1px solid rgba(91,53,181,.12);
    box-shadow: 0 1px 0 rgba(255,255,255,.95) inset, 0 5px 10px rgba(91,53,181,.16), 0 2px 4px rgba(91,53,181,.08);
    pointer-events: none;
}

/* =========================================================
   BONUS FEATURES
========================================================= */
#promo-page-2026 .bonus-features {
    display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-bottom:45px;
}
#promo-page-2026 .bonus-feature {
    position:relative; padding:24px 22px 20px; background:#fff;
    border:1px solid var(--promo-border); border-radius:var(--promo-radius);
    transition:transform var(--promo-transition),box-shadow var(--promo-transition);
}
#promo-page-2026 .bonus-feature:hover { transform:translateY(-6px); box-shadow:var(--promo-shadow); }
#promo-page-2026 .bonus-feature__number {
    position:absolute; top:14px; right:18px;
    color:rgba(91,53,181,.10); font-size:32px; font-weight:700; line-height:1;
}
#promo-page-2026 .bonus-feature__body { display:flex; align-items:flex-start; gap:16px; }
#promo-page-2026 .bonus-feature__icon {
    flex-shrink:0; display:flex; align-items:center; justify-content:center;
    width:56px; height:56px; color:var(--promo-primary);
    background:linear-gradient(135deg,rgba(91,53,181,.10),rgba(220,98,193,.10)); border-radius:14px;
}
#promo-page-2026 .bonus-feature__icon .promo-icon { width:32px; height:32px; }
#promo-page-2026 .bonus-feature__info { flex:1; min-width:0; }
#promo-page-2026 .bonus-feature__info h3 {
    margin-bottom:2px; font-size:clamp(18px,1.6vw,22px); color:var(--promo-text);
}
#promo-page-2026 .bonus-feature__info p {
    margin-bottom:0; font-size:14px; color:var(--promo-text-light); line-height:1.4;
}
#promo-page-2026 .bonus-feature__stat {
    flex-shrink:0; text-align:right; padding-left:2px; margin-top:31px;
    border-left:2px solid rgba(91,53,181,.10);
    width:90px; min-width:90px; max-width:90px;
}
#promo-page-2026 .bonus-feature__stat-value {
    display:block; font-size:20px; font-weight:700; color:var(--promo-primary); line-height:1.1;
}
#promo-page-2026 .bonus-feature__stat-label {
    display:block; font-size:12px; color:var(--promo-text-light); line-height:1.2;
}

/* =========================================================
   BONUS RULES
========================================================= */
#promo-page-2026 .bonus-rules {
    display:grid; grid-template-columns:minmax(0,1.6fr) minmax(260px,.8fr);
    gap:26px; padding:32px; background:var(--promo-bg-soft); border-radius:var(--promo-radius);
}
#promo-page-2026 .bonus-rules__main h3 { margin-bottom:20px; }
#promo-page-2026 .bonus-rules ul {
    display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px 20px; margin:0; padding:0; list-style:none;
}
#promo-page-2026 .bonus-rules li {
    display:flex; align-items:flex-start; gap:10px;
    color:var(--promo-text-light); font-size:14px;
}
#promo-page-2026 .rule-check {
    display:flex; align-items:center; justify-content:center;
    flex:0 0 20px; width:20px; min-width:20px; height:20px;
    color:#fff; background:var(--promo-primary); border-radius:50%; font-size:10px;
}
#promo-page-2026 .bonus-rules__highlight {
    display:flex; flex-direction:column; padding:26px;
    color:#fff; background:linear-gradient(145deg,var(--promo-primary),var(--promo-primary-dark)); border-radius:20px;
}
#promo-page-2026 .bonus-rules__highlight-label {
    display:inline-flex; align-items:center; gap:8px; margin-bottom:16px;
    font-size:14px; font-weight:700; letter-spacing:.15em; color:rgba(255,255,255,.65);
}
#promo-page-2026 .bonus-rules__highlight-label .promo-icon { width:20px; height:20px; }
#promo-page-2026 .bonus-rules__highlight strong {
    display:block; margin-bottom:10px; font-size:20px; line-height:1.3;
}
#promo-page-2026 .bonus-rules__highlight p {
    color:rgba(255,255,255,.7); font-size:14px; margin-bottom:0;
}
#promo-page-2026 .bonus-rules__value {
    display:flex; align-items:center; justify-content:center;
    margin:20px 0 8px; font-size:20px; width:100%; gap:6px;
}
#promo-page-2026 .bonus-rules__value .bonus-rules__value-prefix {
    font-size:20px; font-weight:500; opacity:.8; margin-right:2px; align-self:center;
}
#promo-page-2026 .bonus-rules__value b {
    display:inline-block; font-size:56px; line-height:1; font-weight:700;
}

/* =========================================================
   STEPS
========================================================= */
#promo-page-2026 .promo-step {
    display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    align-items:center; gap:60px; padding:55px 0;
    border-bottom:1px solid rgba(46,47,56,.07);
}
#promo-page-2026 .promo-step:last-child { border-bottom:none; }
#promo-page-2026 .promo-step--reverse { grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); }
#promo-page-2026 .promo-step--reverse .promo-step__content { order:2; }
#promo-page-2026 .promo-step__number { margin-bottom:16px; }
#promo-page-2026 .promo-step__number span {
    font-size:20px; font-weight:700; letter-spacing:.08em; color:var(--promo-primary);
}
#promo-page-2026 .promo-step h3 { margin-bottom:14px; }
#promo-page-2026 .promo-step p { color:var(--promo-text-light); font-size:16px; }
#promo-page-2026 .promo-step__hint {
    padding-left:15px; border-left:3px solid var(--promo-accent); font-size:14px!important;
}
#promo-page-2026 .promo-step__info {
    display:inline-flex; align-items:center; gap:8px; margin-top:12px;
    padding:8px 14px; color:var(--promo-primary);
    background:rgba(91,53,181,.08); border-radius:10px; font-size:14px;
}
#promo-page-2026 .promo-step__info--lg {
    padding:12px 20px; font-size:17px; gap:12px; border-radius:12px;
    background:rgba(91,53,181,.10); overflow:visible;
}
#promo-page-2026 .promo-step__info--lg .promo-icon { width:34px; height:34px; flex-shrink:0; overflow:visible; }
#promo-page-2026 .promo-step__info--lg strong { font-size:17px; font-weight:700; }
#promo-page-2026 .promo-step__image { position:relative; }
#promo-page-2026 .promo-step__image-link {
    display:block; position:relative; border-radius:20px; overflow:hidden; text-decoration:none;
}
#promo-page-2026 .promo-step__image-link img {
    display:block; width:100%; height:auto; transition:transform var(--promo-transition);
}
#promo-page-2026 .promo-step__image-link:hover img { transform:scale(1.02); }
#promo-page-2026 .promo-step__image-zoom {
    position:absolute; bottom:16px; right:16px;
    display:inline-flex; align-items:center; gap:6px;
    padding:8px 14px; background:rgba(0,0,0,.65); color:#fff;
    border-radius:30px; font-size:13px; font-weight:500;
    opacity:0; transition:opacity var(--promo-transition); pointer-events:none;
}
#promo-page-2026 .promo-step__image-link:hover .promo-step__image-zoom { opacity:1; }
#promo-page-2026 .promo-step__image-zoom svg { width:16px; height:16px; flex-shrink:0; }

/* =========================================================
   FAQ
========================================================= */
#promo-page-2026 .faq-list { display:grid; gap:10px; }
#promo-page-2026 .faq-item {
    background:#fff; border:1px solid rgba(46,47,56,.08); border-radius:14px;
    transition:border-color var(--promo-transition),box-shadow var(--promo-transition);
}
#promo-page-2026 .faq-item[open] {
    border-color:rgba(91,53,181,.2); box-shadow:0 10px 30px rgba(46,47,56,.06);
}
#promo-page-2026 .faq-item summary {
    display:flex; align-items:center; justify-content:space-between; gap:20px;
    padding:20px 24px; color:var(--promo-text); font-size:16px; font-weight:600;
    list-style:none; cursor:pointer; user-select:none;
}
#promo-page-2026 .faq-item summary::-webkit-details-marker { display:none; }
#promo-page-2026 .faq-icon {
    flex-shrink:0; width:20px; height:20px; color:var(--promo-primary);
    transition:transform var(--promo-transition);
}
#promo-page-2026 .faq-icon svg { width:100%; height:100%; }
#promo-page-2026 .faq-icon__vertical { transition:transform var(--promo-transition); }
#promo-page-2026 .faq-item[open] .faq-icon__vertical { transform:rotate(90deg); }
#promo-page-2026 .faq-item__content {
    padding:0 24px 24px; color:var(--promo-text-light); font-size:15px;
}

/* =========================================================
   ACCOUNT BANNER
========================================================= */
#promo-page-2026 .account-banner {
    position:relative; padding:80px 0; overflow:hidden;
    background:linear-gradient(120deg,rgba(46,25,100,.92),rgba(91,53,181,.85)),
              url("/thumb/2/-_uEGwSpsi34WqRPGljx8Q/1920r/d/background_image.webp") center/cover no-repeat;
}
#promo-page-2026 .account-banner::before {
    content:""; position:absolute; inset:0;
    background:radial-gradient(circle at 85% 30%,rgba(220,98,193,.3),transparent 30%);
}
#promo-page-2026 .account-banner .promo-container { position:relative; z-index:1; }
#promo-page-2026 .account-banner__content { max-width:600px; color:#fff; }
#promo-page-2026 .account-banner h2 {
    margin-bottom:16px; color:#fff!important;
}
#promo-page-2026 .account-banner p {
    max-width:580px; margin-bottom:28px; color:rgba(255,255,255,.75); font-size:18px;
}

/* =========================================================
   FINAL CTA
========================================================= */
#promo-page-2026 .promo-final { padding:60px 0; background:#fff; }
#promo-page-2026 .promo-final__inner {
    display:flex; align-items:center; justify-content:space-between; gap:40px;
    padding:40px 50px; background:var(--promo-bg-soft); border-radius:28px;
}
#promo-page-2026 .promo-final h2 {
    margin-bottom:0; font-size:clamp(28px,4vw,46px);
}

/* =========================================================
   UTILITY
========================================================= */
#promo-page-2026 #discounts,
#promo-page-2026 #bonuses,
#promo-page-2026 #how-to-use,
#promo-page-2026 #faq { scroll-margin-top:30px; }
h1:has(> #akcii-header),
h1:has(> div#akcii-header),
h1:has(> [id="akcii-header"]),
h1:has(> .akcii-header) { display: none !important; }
#akcii-header { display:none!important; }

/* =========================================================
   МЕДИА-ЗАПРОСЫ (объединены общие свойства)
========================================================= */

/* Планшеты и мобильные — общие стили */
@media (max-width:1260px) {
    #promo-page-2026 .discount-grid {
        width:calc(100% - 30px);
        left:auto; transform:none; margin:0 auto;
    }
    #promo-page-2026 .promo-step,
    #promo-page-2026 .promo-step--reverse {
        grid-template-columns:1fr;
        gap:32px;
        padding:40px 0;
    }
    #promo-page-2026 .promo-step--reverse .promo-step__content { order:initial; }
    #promo-page-2026 .bonus-rules { grid-template-columns:1fr; padding:26px; }
}

/* Планшеты (641px — 1260px) */
@media (min-width:641px) and (max-width:1260px) {
    #promo-page-2026 .discount-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:24px;
    }
    #promo-page-2026 .discount-card,
    #promo-page-2026 .discount-card--featured {
        min-height:430px; margin:0; padding:24px 22px;
    }
    #promo-page-2026 .discount-card__threshold { font-size:48px; }
    #promo-page-2026 .discount-card__discount-value { font-size:40px; }
    
    /* Скрываем соединители на планшетах */
    #promo-page-2026 .discount-card:not(:last-child)::after,
    #promo-page-2026 .discount-card:not(:last-child)::before {
        display: none;
    }

    #promo-page-2026 .bonus-features {
        grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px;
    }
    #promo-page-2026 .bonus-feature { padding:22px 20px 18px; }
    #promo-page-2026 .bonus-feature__body { gap:14px; }
    #promo-page-2026 .bonus-feature__icon { width:44px; height:44px; }
    #promo-page-2026 .bonus-feature__icon .promo-icon { width:24px; height:24px; }
    #promo-page-2026 .bonus-feature__stat {
        width:80px; min-width:80px; max-width:80px; margin-top:24px; padding-left:10px;
    }
    #promo-page-2026 .bonus-feature__stat-value { font-size:18px; }
    #promo-page-2026 .bonus-feature__stat-label { font-size:10px; }
    #promo-page-2026 .bonus-feature__number { font-size:30px; top:12px; right:16px; }

    #promo-page-2026 .bonus-rules ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* Мобильные (до 640px) */
@media (max-width:640px) {
    #promo-page-2026 .discount-grid {
        grid-template-columns:1fr; gap:16px;
    }
    #promo-page-2026 .discount-card,
    #promo-page-2026 .discount-card--featured {
        min-height:0; margin:0; padding:20px; border-radius:20px;
    }
    #promo-page-2026 .discount-card:not(.discount-card--featured) { height:305px; min-height:305px; }
    #promo-page-2026 .discount-card--featured { height:400px; min-height:400px; }
    #promo-page-2026 .discount-card__top { gap:16px; min-height:52px; }
    #promo-page-2026 .discount-card__number,
    #promo-page-2026 .discount-card--featured .discount-card__number {
        width:52px; height:50px; flex-basis:52px; font-size:21px;
    }
    #promo-page-2026 .discount-card__title,
    #promo-page-2026 .discount-card--featured .discount-card__title {
        font-size:17px; white-space:normal;
    }
    #promo-page-2026 .discount-card__threshold-label { margin-top:23px; font-size:15px; }
    #promo-page-2026 .discount-card__threshold { font-size:42px; }
    #promo-page-2026 .discount-card__divider { margin-top:24px; }
    #promo-page-2026 .discount-card__discount { gap:15px; margin-top:26px; }
    #promo-page-2026 .discount-card__discount-icon { width:68px; height:68px; flex-basis:68px; }
    #promo-page-2026 .discount-card__discount-icon svg { width:36px; height:36px; }
    #promo-page-2026 .discount-card__discount-value { font-size:36px; }
    #promo-page-2026 .discount-card__discount-label { margin-top:8px; font-size:15px; }
    #promo-page-2026 .discount-card__delivery { gap:12px; margin-top:20px; padding:12px 15px; }
    #promo-page-2026 .discount-card__delivery-title,
    #promo-page-2026 .discount-card__delivery-subtitle { white-space:normal; }
    
    /* Скрываем соединители на мобильных */
    #promo-page-2026 .discount-card:not(:last-child)::after,
    #promo-page-2026 .discount-card:not(:last-child)::before {
        display: none;
    }

    #promo-page-2026 .promo-container { width:min(100% - 30px,1180px); }
    #promo-page-2026 .promo-hero { padding:50px 0 30px; }
    #promo-page-2026 .promo-hero__buttons { flex-direction:column; }
    #promo-page-2026 .promo-btn { width:100%; justify-content:center; }
    #promo-page-2026 .promo-navigation { overflow-x:auto; }
    #promo-page-2026 .promo-navigation .promo-container {
        justify-content:flex-start; width:max-content; min-width:100%; padding:0 15px; gap:20px;
    }
    #promo-page-2026 .promo-no-wrap { white-space:normal; }
    #promo-page-2026 .promo-section { padding:55px 0; }
    #promo-page-2026 .promo-section-heading { flex-direction:column; gap:20px; }
    #promo-page-2026 .promo-section-heading p { max-width:100%; }

    #promo-page-2026 .promo-icon--label-lg { width:20px; height:20px; }
    #promo-page-2026 .promo-label--lg { font-size:16px; gap:8px; }
    #promo-page-2026 .promo-icon--faq-label { width:24px!important; height:24px!important; flex:0 0 20px!important; }

    #promo-page-2026 .bonus-features { grid-template-columns:1fr; }
    #promo-page-2026 .bonus-feature { padding:16px 14px 14px; }
    #promo-page-2026 .bonus-feature__body { gap:12px; flex-wrap:wrap; }
    #promo-page-2026 .bonus-feature__icon { width:42px; height:42px; }
    #promo-page-2026 .bonus-feature__icon .promo-icon { width:22px; height:22px; }
    #promo-page-2026 .bonus-feature__stat {
        width:100%; min-width:0; max-width:none; padding-left:0; border-left:none;
        text-align:center; margin-top:10px; padding-top:10px; border-top:1px solid rgba(91,53,181,.08);
    }
    #promo-page-2026 .bonus-feature__stat-value {
        display:inline-block; font-size:20px; font-weight:700; color:var(--promo-primary); line-height:1.2;
    }
    #promo-page-2026 .bonus-feature__stat-label {
        display:inline-block; font-size:13px; color:var(--promo-text-light); line-height:1.2; margin-left:6px;
    }
    #promo-page-2026 .bonus-feature__number { font-size:24px; top:10px; right:12px; }

    #promo-page-2026 .bonus-rules ul { grid-template-columns:1fr; }
    #promo-page-2026 .promo-step__image-zoom {
        padding:6px 12px; font-size:12px; bottom:12px; right:12px;
    }
    #promo-page-2026 .faq-item summary { padding:16px 18px; font-size:15px; }
    #promo-page-2026 .faq-item__content { padding:0 18px 18px; }
    #promo-page-2026 .promo-final__inner {
        flex-direction:column; align-items:flex-start; padding:30px 24px;
    }
    #promo-page-2026 .account-banner { padding:60px 0; }
    #promo-page-2026 .promo-icon--nav { width:16px; height:16px; }

    #promo-page-2026 .promo-label--lg {
        display:flex; justify-content:center; width:100%;
    }
    #promo-page-2026 .promo-label--lg .promo-label__inner {
        display:inline-flex; align-items:flex-start; gap:6px; font-size:14px; max-width:100%;
    }
    #promo-page-2026 .promo-label--lg .promo-icon--label-lg {
        flex:0 0 18px; width:18px; height:18px; flex-shrink:0; margin-top:3px; display:inline-block;
    }
    #promo-page-2026 .promo-label--lg .promo-label__text {
        display:inline; word-break:break-word; overflow-wrap:break-word; text-align:left;
    }
}
@media screen and (max-width: 767px) {  
    #promo-page-2026 .promo-btn:hover,
    #promo-page-2026 .promo-btn:active {
        transform: none !important;
    }
    #promo-page-2026 .promo-btn--primary:hover,
    #promo-page-2026 .promo-btn--primary:active {
        color: #fff !important;
        background: linear-gradient(135deg, var(--promo-primary), var(--promo-accent)) !important;
        box-shadow: 0 12px 30px rgba(91, 53, 181, .28) !important;
        transform: none !important;
    }
    #promo-page-2026 .promo-btn--light:hover,
    #promo-page-2026 .promo-btn--light:active {
        color: var(--promo-primary) !important;
        background: #fff !important;
        border: 1px solid rgba(255, 255, 255, .5) !important;
        transform: none !important;
    }
    #promo-page-2026 .promo-btn--white:hover,
    #promo-page-2026 .promo-btn--white:active {
        color: var(--promo-primary) !important;
        background: #fff !important;
        box-shadow: 0 10px 30px rgba(0, 0, 0, .12) !important;
        transform: none !important;
    }
}