        /* Montserrat (variable) — локально, cyrillic + latin */
        @font-face{
            font-family:'Montserrat';
            font-style:normal;
            font-weight:100 900;
            font-display:swap;
            src:url('assets/fonts/montserrat-cyrillic.woff2') format('woff2');
            unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
        }
        @font-face{
            font-family:'Montserrat';
            font-style:normal;
            font-weight:100 900;
            font-display:swap;
            src:url('assets/fonts/montserrat-latin.woff2') format('woff2');
            unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
        }

        :root{
            /* --- Dark theme palette --- */
            --bg-base:#1E1F22;         /* основной фон */
            --bg-elev:#17181A;         /* более тёмный уровень — topbar, steps, footer */
            --bg-surface:#26272B;      /* карточки, панели */
            --bg-surface-2:#2B2D31;    /* форма, hover */
            --line:rgba(255,255,255,.08);
            --line-strong:rgba(255,255,255,.14);
            --text:#E6E7EA;            /* основной текст */
            --text-hi:#FFFFFF;         /* заголовки */
            --text-mute:#9A9CA3;       /* приглушённый */

            /* --- Accent colors --- */
            --cl-blue:#4E93E7;
            --cl-teal:#4CAEA3;
            --cl-green:#86B966;
            --cl-yellow:#E5B84A;
            --cl-orange:#E58A4A;
            --cl-red:#E56060;
            --cl-pink:#D96EA7;
            --cl-purple:#8F6EDA;
            --cl-magenta:#B96ED9;
            --cl-cyan:#6BC8DA;

            --cl-primary:#E58A4A;      /* main CTA */
            --cl-primary-rgb:229,138,74;

            /* --- Legacy aliases (используются по всему коду, перенаправляем на тёмную тему) --- */
            --cl-charcoal:var(--bg-elev);
            --cl-charcoal-2:var(--bg-elev);
            --cl-honeydew:var(--bg-elev);
            --cl-flame:var(--cl-primary);
            --cl-ash:var(--line-strong);
            --cl-ink:var(--text);
            --cl-mute:var(--text-mute);
            --cl-line:var(--line);

            --radius:18px;
            --shadow-sm:0 6px 18px rgba(0,0,0,.35);
            --shadow-md:0 18px 40px rgba(0,0,0,.45);
            --shadow-lg:0 28px 60px rgba(0,0,0,.55);
            --t:cubic-bezier(.22,.61,.36,1);
            --font-ui:'Montserrat','Segoe UI',system-ui,-apple-system,'Helvetica Neue',Arial,sans-serif;
            --font-display:'Montserrat','Segoe UI',system-ui,-apple-system,'Helvetica Neue',Arial,sans-serif;
        }

        *{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
        html{scroll-behavior:smooth;background:var(--bg-base);}
        body{
            font-family:var(--font-ui);
            color:var(--text);
            background:var(--bg-base);
        }
        .page-wrap{overflow-x:clip;overflow-y:visible;}
        ::selection{background:var(--cl-primary);color:#fff;}

        .container-xxl{max-width:1440px;}

        h1,h2,h3,h4,.display-1,.display-2,.display-3,.display-4,.display-5,.display-6{
            font-family:var(--font-display);
            font-weight:700;
            letter-spacing:-.02em;
            color:var(--text-hi);
        }
        .eyebrow{
            display:inline-flex;align-items:center;gap:.6rem;
            font-family:var(--font-ui);
            font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;
            color:var(--cl-primary);font-weight:600;
        }
        .eyebrow::before{content:"";width:28px;height:2px;background:var(--cl-primary);}

        a{color:var(--text);text-decoration:none;transition:color .25s var(--t);}
        a:hover{color:var(--cl-primary);}

        .btn{
            border-radius:999px;font-weight:600;letter-spacing:.01em;padding:.85rem 1.6rem;
            border:0;color:#fff;
            background-size:200% 200%;background-position:0% 50%;
            transition:background-position .5s var(--t),transform .3s var(--t),box-shadow .3s var(--t),color .3s var(--t);
        }
        .btn:hover{background-position:100% 50%;transform:translateY(-2px);}

        /* Главная CTA (btn-flame) — огненный градиент */
        .btn-flame{background-image:linear-gradient(135deg,var(--cl-orange) 0%,var(--cl-red) 50%,var(--cl-pink) 100%);color:#fff;box-shadow:0 10px 24px rgba(229,138,74,.35);}
        .btn-flame:hover{box-shadow:0 14px 32px rgba(229,96,96,.45);}

        /* Светлая кнопка */
        .btn-dark-ink{background-image:linear-gradient(135deg,var(--cl-purple) 0%,var(--cl-magenta) 50%,var(--cl-pink) 100%);color:#fff;box-shadow:0 10px 24px rgba(143,110,218,.35);}
        .btn-dark-ink:hover{box-shadow:0 14px 32px rgba(185,110,217,.45);}

        /* Прозрачная / outline — с градиентной обводкой через padding mask */
        .btn-ghost,.btn-outline-ink{
            background-image:linear-gradient(var(--bg-base),var(--bg-base)),linear-gradient(135deg,var(--cl-blue),var(--cl-cyan));
            background-origin:border-box;background-clip:padding-box,border-box;
            border:2px solid transparent;color:#fff;padding:calc(.85rem - 1px) calc(1.6rem - 1px);
        }
        .btn-ghost:hover,.btn-outline-ink:hover{background-image:linear-gradient(135deg,var(--cl-blue),var(--cl-cyan)),linear-gradient(135deg,var(--cl-blue),var(--cl-cyan));color:#fff;}
        /* в hero фон не --bg-base, а полупрозрачный поверх картинки — ghost переопределяем */
        .hero .btn-ghost{
            background-image:none;background:rgba(0,0,0,.3);backdrop-filter:blur(6px);
            border:1px solid rgba(255,255,255,.55);padding:.85rem 1.6rem;color:#fff;
        }
        .hero .btn-ghost:hover{background:#fff;color:var(--bg-base);border-color:#fff;}

        /* ===== Header stack (fixed, не sticky — защита от дрожания) ===== */
        .header-stack{
            position:fixed;top:0;left:0;right:0;z-index:1020;
        }
        body{padding-top:72px;} /* высота navbar без topbar */
        @media (min-width:992px){
            body{padding-top:110px;} /* topbar + navbar */
        }
        .topbar{overflow:hidden;max-height:60px;transition:max-height .35s var(--t),padding .35s var(--t);}
        .topbar.is-hidden{max-height:0;padding-top:0;padding-bottom:0;border-bottom-color:transparent;}

        /* ===== Topbar ===== */
        .topbar{background:var(--bg-elev);color:var(--text-mute);font-size:.86rem;padding:.55rem 0;border-bottom:1px solid var(--line);}
        .topbar a{color:var(--text-mute);}
        .topbar a:hover{color:var(--text-hi);}
        .topbar .divider{width:1px;height:14px;background:var(--line-strong);display:inline-block;margin:0 .9rem;vertical-align:middle;}
        .topbar .social a{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;transition:all .25s var(--t);}
        .topbar .social a:hover{background:var(--cl-primary);color:#fff;transform:translateY(-1px);}

        /* ===== Navbar ===== */
        .navbar-main{
            background:var(--bg-base);
            border-bottom:1px solid var(--line);
            padding:.9rem 0;
            transition:padding .3s var(--t),background .3s var(--t),box-shadow .3s var(--t),backdrop-filter .3s var(--t);
        }
        .navbar-main.is-stuck{box-shadow:0 10px 30px rgba(0,0,0,.5);padding:.55rem 0;background:rgba(30,31,34,.92);backdrop-filter:blur(12px);}
        .navbar-main .btn{white-space:nowrap;}
        .brand{display:inline-flex;align-items:center;line-height:0;}
        .brand img{display:block;height:44px;width:auto;transition:height .3s var(--t);}
        .navbar-main.is-stuck .brand img{height:36px;}

        /* Sentinel для IntersectionObserver — определяет "низ ли вы" без обратной связи от высоты навбара */
        .scroll-sentinel{position:absolute;top:0;left:0;right:0;height:80px;pointer-events:none;}
        .nav-list{display:flex;gap:1.6rem;list-style:none;margin:0;padding:0;}
        .nav-list a{position:relative;font-weight:600;font-size:.94rem;color:var(--text);padding:.4rem 0;white-space:nowrap;}
        .nav-list a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--cl-primary);transition:width .3s var(--t);}
        .nav-list a:hover{color:var(--text-hi);}
        .nav-list a:hover::after{width:100%;}
        .nav-phone{font-weight:700;font-size:1.05rem;color:var(--text-hi);}
        .nav-phone small{display:block;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-mute);font-weight:500;}
        .burger{width:46px;height:46px;border-radius:12px;border:1px solid var(--line);background:var(--bg-surface);color:var(--text);display:inline-flex;align-items:center;justify-content:center;font-size:1.4rem;transition:all .25s var(--t);}
        .burger:hover{background:var(--cl-primary);color:#fff;border-color:var(--cl-primary);}

        /* ===== Hero slider ===== */
        .hero{
            position:relative;
            height:60vh;min-height:400px;
            background:var(--bg-elev);overflow:hidden;
        }
        .hero .slick-list,.hero .slick-track,.hero .slick-slide > div{height:100%;}
        .hero-slide{position:relative;height:60vh;min-height:400px;}
        @media (min-width:576px){
            .hero,.hero-slide{height:calc(100vh - 73px);min-height:500px;max-height:none;}
        }
        @media (min-width:992px){
            .hero,.hero-slide{height:calc(100vh - 110px);min-height:560px;}
        }
        .hero-slide .bg{
            position:absolute;inset:0;background-size:cover;background-position:center;
            animation:hero-kenburns 14s linear forwards;
            will-change:transform;
        }
        @keyframes hero-kenburns{
            from{transform:scale(1.08);}
            to  {transform:scale(1);}
        }
        .hero-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,24,26,.86) 0%,rgba(23,24,26,.55) 55%,rgba(23,24,26,.2) 100%);}
        .hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:center;color:#fff;}
        .hero-inner .eyebrow{color:#fff;}
        .hero-inner .eyebrow::before{background:var(--cl-primary);}
        .hero-title{font-size:clamp(2.1rem,4.6vw,4.4rem);line-height:1.05;color:#fff;max-width:760px;margin:1rem 0 1.4rem;}
        .hero-sub{font-size:clamp(1rem,1.3vw,1.2rem);color:rgba(255,255,255,.82);max-width:620px;margin-bottom:2.2rem;}
        .hero .slick-dots{position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);display:flex!important;gap:.6rem;list-style:none;padding:0;margin:0;z-index:5;}
        .hero .slick-dots li button{font-size:0;width:34px;height:3px;border:0;background:rgba(255,255,255,.3);transition:background .3s var(--t),width .3s var(--t);padding:0;border-radius:2px;cursor:pointer;}
        .hero .slick-dots li.slick-active button{background:var(--cl-primary);width:56px;}
        .hero-arrow{
            position:absolute;top:50%;transform:translateY(-50%);z-index:5;
            width:56px;height:56px;border-radius:50%;border:1px solid rgba(255,255,255,.3);
            background:rgba(0,0,0,.3);color:#fff;backdrop-filter:blur(8px);
            display:flex;align-items:center;justify-content:center;font-size:1.4rem;cursor:pointer;
            transition:all .25s var(--t);
        }
        .hero-arrow:hover{background:var(--cl-primary);border-color:var(--cl-primary);transform:translateY(-50%) scale(1.06);}
        .hero-arrow.prev{left:2rem;}
        .hero-arrow.next{right:2rem;}
        .hero-count{position:absolute;right:2rem;bottom:2.3rem;z-index:5;color:rgba(255,255,255,.6);font-weight:600;letter-spacing:.14em;font-size:.85rem;}
        .hero-count b{color:var(--cl-orange);font-size:1.3rem;font-weight:800;}
        .hero-scroll{position:absolute;left:50%;transform:translateX(-50%);bottom:1.2rem;color:rgba(255,255,255,.6);font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;z-index:4;display:none;transition:opacity .3s var(--t),visibility .3s var(--t);}
        .hero-scroll.is-hidden{opacity:0;visibility:hidden;}

        /* ===== Section common ===== */
        .section{padding:6rem 0;background:var(--bg-base);}
        .section-sm{padding:4rem 0;background:var(--bg-base);}
        .section-alt{background:var(--bg-elev);}
        .section-head{max-width:720px;margin:0 auto 3.5rem;text-align:center;}
        .section-head h2{font-size:clamp(1.9rem,3vw,2.8rem);margin:.8rem 0;}
        .section-head p{color:var(--text-mute);font-size:1.05rem;}

        /* ===== Collections ===== */
        .section-collections{background:var(--bg-base);}
        .collection-card{
            position:relative;display:block;overflow:hidden;border-radius:var(--radius);
            aspect-ratio:1/1;background:var(--bg-surface);
            box-shadow:0 6px 18px rgba(0,0,0,.08);
            transition:transform .4s var(--t),box-shadow .4s var(--t);
        }
        .collection-card:hover{transform:translateY(-6px);box-shadow:0 28px 60px rgba(0,0,0,.15);}
        .collection-card .img{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .8s var(--t);opacity:.95;}
        .collection-card:hover .img{transform:scale(1.08);opacity:1;}
        .collection-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(23,24,26,0) 40%,rgba(23,24,26,.85) 100%);}
        .collection-card .info{
            position:absolute;left:0;right:0;bottom:0;padding:1.1rem 1.4rem;color:#fff;z-index:2;
            display:flex;align-items:center;justify-content:space-between;gap:1rem;
            background:rgba(23,24,26,.28);
            backdrop-filter:blur(3px) saturate(140%);
            -webkit-backdrop-filter:blur(3px) saturate(140%);
            border-top:1px solid rgba(255,255,255,.08);
            transition:background .3s var(--t);
        }
        .collection-card:hover .info{background:rgba(23,24,26,.45);}
        .collection-card .info h3{color:#fff;font-size:1.2rem;margin:0;font-family:var(--font-display);line-height:1.2;}
        .collection-card .arrow{width:40px;height:40px;flex-shrink:0;border-radius:50%;color:#fff;display:inline-flex;align-items:center;justify-content:center;transition:all .3s var(--t);box-shadow:0 6px 16px rgba(0,0,0,.18);}
        .collection-card:hover .arrow{transform:rotate(-45deg) scale(1.1);}

        /* ===== Advantages ===== */
        .section-adv{background:var(--bg-elev);}
        .adv-card{background:var(--bg-surface);border-radius:var(--radius);padding:2.1rem 1.8rem;height:100%;transition:all .35s var(--t);border:1px solid var(--line);}
        .adv-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--cl-primary);}
        .adv-ico{
            width:62px;height:62px;border-radius:16px;
            color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:1.8rem;
            margin-bottom:1.3rem;
        }
        /* Rainbow set — каждая иконка свой цвет */
        .adv-card:nth-child(6n+1) .adv-ico{background:linear-gradient(135deg,var(--cl-orange),var(--cl-yellow));box-shadow:0 14px 28px rgba(229,138,74,.3);}
        .adv-card:nth-child(6n+2) .adv-ico{background:linear-gradient(135deg,var(--cl-blue),var(--cl-cyan));box-shadow:0 14px 28px rgba(78,147,231,.3);}
        .adv-card:nth-child(6n+3) .adv-ico{background:linear-gradient(135deg,var(--cl-pink),var(--cl-magenta));box-shadow:0 14px 28px rgba(217,110,167,.3);}
        .adv-card:nth-child(6n+4) .adv-ico{background:linear-gradient(135deg,var(--cl-teal),var(--cl-green));box-shadow:0 14px 28px rgba(76,174,163,.3);}
        .adv-card:nth-child(6n+5) .adv-ico{background:linear-gradient(135deg,var(--cl-purple),var(--cl-blue));box-shadow:0 14px 28px rgba(143,110,218,.3);}
        .adv-card:nth-child(6n+6) .adv-ico{background:linear-gradient(135deg,var(--cl-red),var(--cl-orange));box-shadow:0 14px 28px rgba(229,96,96,.3);}
        .adv-card h3{font-size:1.2rem;margin:0 0 .6rem;}
        .adv-card p{color:var(--text-mute);margin:0;font-size:.96rem;line-height:1.55;}

        /* ===== Products carousel ===== */
        .section-products{background:var(--bg-base);}
        .product-card{background:var(--bg-surface);border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);transition:all .35s var(--t);}
        .products-slider .slick-slide{padding:0 10px;box-sizing:border-box;}
        .products-slider .slick-list{margin:0 -10px;padding-bottom:20px;}
        .product-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--cl-primary);}
        .product-card .img{aspect-ratio:4/3;background-size:cover;background-position:center;}
        .product-card .body{padding:1.3rem 1.4rem 1.6rem;}
        .product-card .tag{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text-mute);}
        .product-card h3{font-size:1.2rem;margin:.3rem 0 1rem;color:var(--text-hi);}
        .product-card .price{display:flex;align-items:baseline;gap:.4rem;color:var(--text);}
        .product-card .price b{font-size:1.4rem;font-family:var(--font-display);font-weight:700;color:var(--cl-yellow);}
        .product-card .price small{color:var(--text-mute);}
        .products-slider .slick-dots{display:flex!important;justify-content:center;gap:.5rem;margin-top:1.8rem;padding:0;list-style:none;}
        .products-slider .slick-dots li button{font-size:0;width:10px;height:10px;border-radius:50%;border:0;padding:0;background:var(--line-strong);transition:all .3s var(--t);cursor:pointer;}
        .products-slider .slick-dots li.slick-active button{background:var(--cl-primary);width:28px;border-radius:5px;}
        .products-arrow{
            position:absolute;top:40%;transform:translateY(-50%);z-index:5;
            width:52px;height:52px;border-radius:50%;border:1px solid var(--line-strong);
            background:var(--bg-surface);color:var(--text);
            display:flex;align-items:center;justify-content:center;font-size:1.3rem;cursor:pointer;
            transition:all .25s var(--t);
        }
        .products-arrow:hover{background:var(--cl-primary);border-color:var(--cl-primary);color:#fff;transform:translateY(-50%) scale(1.06);}
        .products-arrow.prev{left:-26px;}
        .products-arrow.next{right:-26px;}
        @media (max-width:1199px){
            .products-arrow.prev{left:8px;}
            .products-arrow.next{right:8px;}
        }
        @media (max-width:575px){
            .products-arrow{width:44px;height:44px;font-size:1.1rem;}
        }

        /* ===== Steps ===== */
        .section-steps{background:var(--bg-elev);color:#fff;position:relative;overflow:hidden;}
        .section-steps h2{color:#fff;}
        .section-steps .section-head p{color:var(--text-mute);}
        .step{position:relative;padding:1.6rem 1.4rem 1.8rem;border-radius:var(--radius);background:var(--bg-surface);border:1px solid var(--line);height:100%;transition:all .35s var(--t);}
        .step:hover{background:var(--bg-surface-2);transform:translateY(-6px);border-color:var(--cl-primary);}
        .step .num{font-family:var(--font-display);font-size:3rem;line-height:1;display:block;margin-bottom:.7rem;font-weight:800;}
        /* Rainbow step numbers */
        .step:nth-child(1) .num,.col-6:nth-child(1) .step .num,.col-md-4:nth-child(1) .step .num,.col-lg:nth-child(1) .step .num{color:var(--cl-blue);}
        .col-lg:nth-child(2) .step .num{color:var(--cl-teal);}
        .col-lg:nth-child(3) .step .num{color:var(--cl-green);}
        .col-lg:nth-child(4) .step .num{color:var(--cl-yellow);}
        .col-lg:nth-child(5) .step .num{color:var(--cl-orange);}
        .step h3{color:var(--text-hi);font-size:1.15rem;margin:0 0 .5rem;}
        .step p{color:var(--text-mute);margin:0;font-size:.95rem;line-height:1.55;}

        /* ===== Portfolio ===== */
        .section-portfolio{background:var(--bg-base);}
        .portfolio-slider .slick-slide{padding:0 12px;box-sizing:border-box;}
        .portfolio-slider .slick-slide > div{height:100%;}
        .portfolio-slider .slick-list{margin:0 -12px;}
        .work-card{position:relative;overflow:hidden;border-radius:var(--radius);height:100%;}
        .work-card .img{aspect-ratio:1/1;background-size:cover;background-position:center;transition:transform .8s var(--t);}
        .work-card:hover .img{transform:scale(1.06);}
        .work-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(23,24,26,0) 50%,rgba(23,24,26,.9));}
        .work-card .cap{position:absolute;left:1.4rem;bottom:1.2rem;right:1.4rem;color:#fff;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:1rem;}
        .work-card .cap h3{color:#fff;margin:0;font-size:1.15rem;}
        .work-card .cap .plus{width:44px;height:44px;flex-shrink:0;border-radius:50%;color:#fff;display:inline-flex;align-items:center;justify-content:center;transition:transform .3s var(--t);box-shadow:0 6px 14px rgba(0,0,0,.18);}
        .work-card .cap .plus i{display:inline-flex;transition:transform .3s var(--t);}
        .work-card:hover .cap .plus{transform:scale(1.1);}
        .work-card:hover .cap .plus i{transform:rotate(90deg);}
        .portfolio-slider .slick-dots{display:flex!important;justify-content:center;gap:.5rem;margin-top:1.8rem;padding:0;list-style:none;}
        .portfolio-slider .slick-dots li button{font-size:0;width:10px;height:10px;border-radius:50%;border:0;padding:0;background:var(--line-strong);transition:all .3s var(--t);cursor:pointer;}
        .portfolio-slider .slick-dots li.slick-active button{background:var(--cl-primary);width:28px;border-radius:5px;}
        .portfolio-arrow{
            position:absolute;top:42%;transform:translateY(-50%);z-index:5;
            width:52px;height:52px;border-radius:50%;border:1px solid var(--line-strong);
            background:var(--bg-surface);color:var(--text);
            display:flex;align-items:center;justify-content:center;font-size:1.3rem;cursor:pointer;
            transition:all .25s var(--t);
        }
        .portfolio-arrow:hover{background:var(--cl-primary);border-color:var(--cl-primary);color:#fff;transform:translateY(-50%) scale(1.06);}
        .portfolio-arrow.prev{left:-26px;}
        .portfolio-arrow.next{right:-26px;}
        @media (max-width:1199px){
            .portfolio-arrow.prev{left:8px;}
            .portfolio-arrow.next{right:8px;}
        }
        @media (max-width:575px){
            .portfolio-arrow{width:44px;height:44px;font-size:1.1rem;}
        }

        /* ===== Info strip (payment / about) ===== */
        .section-info{background:var(--bg-elev);}
        .info-panel{background:var(--bg-surface);border-radius:var(--radius);padding:2.4rem;height:100%;border:1px solid var(--line);}
        .info-panel h3{font-size:1.4rem;margin:0 0 1.4rem;}
        .info-list{list-style:none;margin:0;padding:0;}
        .info-list li{display:flex;gap:.8rem;align-items:flex-start;padding:.7rem 0;border-bottom:1px solid var(--line);color:var(--text);line-height:1.5em;}
        .info-list li:last-child{border-bottom:0;}
        .info-list i{font-size:1.1rem;margin-top:0;}
        /* Rainbow icons в info-panel */
        .info-list li:nth-child(1) i{color:var(--cl-blue);}
        .info-list li:nth-child(2) i{color:var(--cl-yellow);}
        .info-list li:nth-child(3) i{color:var(--cl-green);}
        .info-list li:nth-child(4) i{color:var(--cl-pink);}

        /* ===== CTA banner ===== */
        .cta{background:linear-gradient(120deg,var(--cl-orange),var(--cl-yellow));color:#1a1a1a;border-radius:var(--radius);padding:3.4rem;position:relative;overflow:hidden;}
        .cta::before{content:"";position:absolute;right:-80px;top:-80px;width:360px;height:360px;border-radius:50%;background:rgba(255,255,255,.14);}
        .cta::after{content:"";position:absolute;left:-120px;bottom:-120px;width:280px;height:280px;border-radius:50%;background:rgba(0,0,0,.08);}
        .cta h2{color:#1a1a1a;font-size:clamp(1.7rem,2.4vw,2.4rem);margin:0 0 .6rem;position:relative;z-index:2;}
        .cta p{color:rgba(0,0,0,.72);margin:0 0 1.8rem;position:relative;z-index:2;max-width:560px;}
        .cta .btn{position:relative;z-index:2;}
        .cta .btn-ghost{color:#1a1a1a;border-color:rgba(0,0,0,.4);}
        .cta .btn-ghost:hover{background:#1a1a1a;color:#fff;}

        /* ===== Lead form ===== */
        .section-lead{background:var(--bg-base);}
        .lead-form{background:var(--bg-surface);border-radius:var(--radius);padding:2.6rem;border:1px solid var(--line);}
        .lead-form .form-control{border-radius:999px;border:1px solid var(--line);padding:.9rem 1.2rem;background:var(--bg-elev);color:var(--text);}
        .lead-form .form-control::placeholder{color:var(--text-mute);}
        .lead-form .form-control:focus{border-color:var(--cl-primary);background:var(--bg-surface-2);color:var(--text-hi);box-shadow:0 0 0 .22rem rgba(var(--cl-primary-rgb),.18);}
        .lead-form textarea.form-control{border-radius:20px;}
        .lead-form small.text-muted{color:var(--text-mute)!important;}
        .lead-form a{color:var(--cl-primary);}

        /* ===== Footer ===== */
        .footer{background:var(--bg-elev);color:var(--text-mute);padding:4.5rem 0 1.5rem;border-top:1px solid var(--line);}
        .footer h4{color:var(--text-hi);font-family:var(--font-ui);font-size:.85rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;margin:0 0 1.2rem;}
        .footer a{color:var(--text-mute);display:inline-block;padding:.25rem 0;font-size:.94rem;}
        .footer a:hover{color:var(--cl-primary);}
        .footer .brand img{}
        .footer .social a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--bg-surface);margin-right:.4rem;transition:all .25s var(--t);color:var(--text);}
        .footer .social a:hover{background:var(--cl-primary);color:#fff;transform:translateY(-2px);}
        .footer-bottom{border-top:1px solid var(--line);margin-top:3rem;padding-top:1.5rem;color:var(--text-mute);font-size:.84rem;}

        /* ===== Offcanvas mobile menu ===== */
        .offcanvas-nav{background:var(--bg-elev);color:#fff;}
        .offcanvas-nav .brand{color:#fff;}
        .offcanvas-nav .btn-close{filter:invert(1) brightness(2);}
        .offcanvas-nav .nav-list{flex-direction:column;gap:0;}
        .offcanvas-nav .nav-list a{display:block;color:var(--text);padding:.5rem 0;font-size:1.1rem;border-bottom:1px solid var(--line);}
        .offcanvas-nav .nav-list a:hover{color:var(--text-hi);}
        .offcanvas-nav .nav-list a::after{display:none;}

        /* Bootstrap text-muted override для тёмной темы */
        .text-muted{color:var(--text-mute)!important;}
        .alert-success{background:rgba(134,185,102,.15);color:var(--cl-green);border:1px solid rgba(134,185,102,.3);}

        /* ===== SEO text block ===== */
        .section-seo{background:var(--bg-elev);padding:4rem 0;}
        .seo-wrap h2{font-size:clamp(1.4rem,2vw,1.9rem);margin:0 0 1.6rem;color:var(--text-hi);}
        .seo-wrap h3{font-size:1.1rem;margin:1.4rem 0 .6rem;color:var(--text-hi);font-weight:600;}
        .seo-wrap p{color:var(--text-mute);line-height:1.65;margin:0 0 .9rem;font-size:.95rem;}
        .seo-wrap p b{color:var(--text);font-weight:600;}
        .seo-cols{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;}
        @media (max-width:767px){
            .seo-cols{grid-template-columns:1fr;gap:0;}
            .section-seo{padding:3rem 0;}
        }

        /* ===== Плавающие кнопки — соцсети слева + "вверх" справа ===== */
        .float-social{
            position:fixed;left:1.2rem;bottom:1.2rem;z-index:1030;
            display:flex;flex-direction:column;gap:.65rem;
        }
        .float-ico{
            width:46px;height:46px;border-radius:50%;overflow:hidden;
            display:inline-flex;background:transparent;
            box-shadow:0 6px 18px rgba(0,0,0,.28);
            transition:transform .3s var(--t), box-shadow .3s var(--t);
        }
        .float-ico img{width:100%;height:100%;display:block;}
        .float-ico:hover{transform:scale(1.1) rotate(-6deg);box-shadow:0 10px 24px rgba(0,0,0,.4);}

        .to-top{
            position:fixed;right:1.2rem;bottom:1.2rem;z-index:1030;
            width:48px;height:48px;border-radius:50%;border:0;
            background-image:linear-gradient(135deg,var(--cl-purple),var(--cl-magenta));
            color:#fff;cursor:pointer;
            display:inline-flex;align-items:center;justify-content:center;font-size:1.25rem;
            box-shadow:0 10px 24px rgba(143,110,218,.4);
            opacity:0;visibility:hidden;transform:translateY(16px);pointer-events:none;
            transition:opacity .3s var(--t),transform .3s var(--t),box-shadow .3s var(--t),visibility .3s;
        }
        .to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;}
        .to-top:hover{box-shadow:0 16px 36px rgba(185,110,217,.5);transform:translateY(-4px) scale(1.05);}

        @media (max-width:575px){
            .float-social{left:.8rem;bottom:.8rem;gap:.5rem;}
            .float-ico{width:40px;height:40px;}
            .to-top{right:.8rem;bottom:.8rem;width:44px;height:44px;font-size:1.1rem;}
        }

        /* ===== Декоративный волнистый hr на всю ширину ===== */
        .wavy-hr{
            border:0;height:18px;display:block;width:100%;margin:0;
            background-color:#2a2b2e;
            -webkit-mask:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 18' fill='none'%3E%3Cpath d='M0 9 Q 15 0 30 9 T 60 9' stroke='black' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x center/60px 18px;
                    mask:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 18' fill='none'%3E%3Cpath d='M0 9 Q 15 0 30 9 T 60 9' stroke='black' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") repeat-x center/60px 18px;
        }
        [data-theme="light"] .wavy-hr{background-color:#F2F3F5;}

        /* ===== Topbar — круглые соцсетевые иконки + theme toggle ===== */
        .social-ico{
            width:28px;height:28px;padding:0;border-radius:50%;overflow:hidden;
            background:transparent!important;display:inline-flex;transition:transform .25s var(--t);
        }
        .social-ico img{width:100%;height:100%;display:block;}
        .social-ico:hover{transform:scale(1.1) rotate(-6deg);background:transparent!important;}
        .footer .social-ico{width:38px;height:38px;}
        .footer .social-ico:hover{transform:scale(1.08) rotate(-4deg);}
        .theme-toggle{
            width:28px;height:28px;border-radius:50%;border:1px solid var(--line-strong);
            background:transparent;color:inherit;cursor:pointer;margin-left:.3rem;
            display:inline-flex;align-items:center;justify-content:center;font-size:.9rem;
            transition:all .25s var(--t);
        }
        .theme-toggle:hover{background:var(--cl-yellow);color:#1a1a1a;border-color:var(--cl-yellow);transform:scale(1.1) rotate(45deg);}
        .theme-toggle-wide{
            width:100%;height:auto;padding:.65rem 1rem;border-radius:999px;
            gap:.6rem;font-size:.95rem;font-weight:600;margin-left:0;
            background:transparent;color:var(--text);border:1px solid var(--line-strong);
        }
        .theme-toggle-wide:hover{transform:none;background:var(--cl-yellow);color:#1a1a1a;border-color:var(--cl-yellow);}
        .theme-system{
            width:28px;height:28px;border-radius:50%;border:1px solid var(--line-strong);
            background:transparent;color:inherit;cursor:pointer;margin-left:.3rem;
            display:inline-flex;align-items:center;justify-content:center;font-size:.9rem;
            transition:all .25s var(--t);
        }
        .theme-system:hover{background:var(--cl-blue);color:#fff;border-color:var(--cl-blue);transform:scale(1.1);}

        /* ===== Светлая тема ===== */
        [data-theme="light"]{
            --bg-base:#FFFFFF;
            --bg-elev:#F2F3F5;
            --bg-surface:#FFFFFF;
            --bg-surface-2:#F7F8FA;
            --line:rgba(0,0,0,.08);
            --line-strong:rgba(0,0,0,.14);
            --text:#1a1a1a;
            --text-hi:#000000;
            --text-mute:#5e6773;
            color-scheme:light;
        }
        [data-theme="light"] .brand img{filter:invert(1);}
        [data-theme="light"] .navbar-main{box-shadow:0 1px 0 var(--line);}
        [data-theme="light"] .navbar-main.is-stuck{background:rgba(255,255,255,.94);box-shadow:0 10px 30px rgba(0,0,0,.08);}

        /* Карточки / панели в светлой теме получают тонкую рамку */
        [data-theme="light"] .adv-card,
        [data-theme="light"] .product-card,
        [data-theme="light"] .info-panel,
        [data-theme="light"] .lead-form,
        [data-theme="light"] .step{box-shadow:0 4px 14px rgba(0,0,0,.06);}

        /* Steps тёмный → светлый фон, но заголовки — чёрные */
        [data-theme="light"] .section-steps,[data-theme="light"] .section-steps h2{color:var(--text-hi);}
        [data-theme="light"] .section-steps .section-head p,[data-theme="light"] .step p{color:var(--text-mute);}
        [data-theme="light"] .step{background:#fff;border-color:var(--line);}
        [data-theme="light"] .step:hover{background:#fff;}
        [data-theme="light"] .step h3{color:var(--text-hi);}

        /* Footer */
        [data-theme="light"] .footer{color:var(--text-mute);border-top:1px solid var(--line);}
        [data-theme="light"] .footer h4{color:var(--text-hi);}
        [data-theme="light"] .footer a{color:var(--text);}
        [data-theme="light"] .footer a:hover{color:var(--cl-primary);}
        [data-theme="light"] .footer-brand,[data-theme="light"] .footer p,[data-theme="light"] .footer-bottom{color:var(--text-mute);}
        [data-theme="light"] .footer .social a{background:#fff;color:var(--text);border:1px solid var(--line);}
        [data-theme="light"] .footer .social a:hover{color:#fff;}

        .offcanvas-nav .social-ico{width:40px;height:40px;}
        .offcanvas-info{border-top:1px solid var(--line);}

        /* Offcanvas меню */
        [data-theme="light"] .offcanvas-nav{color:var(--text);}
        [data-theme="light"] .offcanvas-nav .btn-close{filter:none;}
        [data-theme="light"] .offcanvas-nav .nav-list a:hover{color:#000;}

        /* Lead form inputs */
        [data-theme="light"] .lead-form .form-control{background:#fff;color:var(--text);}
        [data-theme="light"] .lead-form .form-control:focus{background:#fff;color:var(--text-hi);}

        /* Collection .info — светлая плашка в светлой теме */
        [data-theme="light"] .collection-card::after{background:linear-gradient(180deg,rgba(255,255,255,0) 40%,rgba(255,255,255,.75) 100%);}
        [data-theme="light"] .collection-card .info{
            background:rgba(255,255,255,.5);
            border-top:1px solid rgba(0,0,0,.05);
            color:#1a1a1a;
        }
        [data-theme="light"] .collection-card .info h3{color:#1a1a1a;}
        [data-theme="light"] .collection-card:hover .info{background:rgba(255,255,255,.72);}

        /* Work-card — светлый gradient и тёмный текст в светлой теме */
        [data-theme="light"] .work-card::after{background:linear-gradient(180deg,rgba(255,255,255,0) 50%,rgba(255,255,255,.92));}
        [data-theme="light"] .work-card .cap h3{color:#1a1a1a;}

        /* Hero overlay — инвертируется в светлой теме */
        [data-theme="light"] .hero-slide::after{background:linear-gradient(90deg,rgba(255,255,255,.86) 0%,rgba(255,255,255,.55) 55%,rgba(255,255,255,.2) 100%);}
        [data-theme="light"] .hero-inner,
        [data-theme="light"] .hero-title,
        [data-theme="light"] .hero-count{color:#1a1a1a;}
        [data-theme="light"] .hero-sub{color:rgba(0,0,0,.72);}
        [data-theme="light"] .hero-inner .eyebrow{color:#1a1a1a;}
        [data-theme="light"] .hero .slick-dots li button{background:rgba(0,0,0,.25);}
        [data-theme="light"] .hero-arrow{background:rgba(255,255,255,.55);color:#1a1a1a;border-color:rgba(0,0,0,.14);}
        [data-theme="light"] .hero-arrow:hover{background:var(--cl-primary);color:#fff;border-color:var(--cl-primary);}
        [data-theme="light"] .hero-scroll{color:rgba(0,0,0,.6);}

        /* Outline / ghost кнопки — инверсия в светлой теме */
        [data-theme="light"] .btn-outline-ink,
        [data-theme="light"] .btn-ghost{
            background-image:linear-gradient(#fff,#fff),linear-gradient(135deg,var(--cl-blue),var(--cl-cyan));
            color:var(--text-hi);
        }
        [data-theme="light"] .btn-outline-ink:hover,
        [data-theme="light"] .btn-ghost:hover{
            background-image:linear-gradient(135deg,var(--cl-blue),var(--cl-cyan)),linear-gradient(135deg,var(--cl-blue),var(--cl-cyan));
            color:#fff;
        }

        /* Burger */
        [data-theme="light"] .burger{background:#fff;color:var(--text);}

        /* Topbar светлый */
        [data-theme="light"] .topbar{color:var(--text-mute);}
        [data-theme="light"] .topbar a{color:var(--text-mute);}
        [data-theme="light"] .topbar a:hover{color:var(--text-hi);}
        [data-theme="light"] .theme-toggle{border-color:var(--line-strong);}

        /* Portfolio / products стрелки */
        [data-theme="light"] .products-arrow,[data-theme="light"] .portfolio-arrow{background:#fff;color:var(--text);}

        /* Products dots inactive */
        [data-theme="light"] .products-slider .slick-dots li button,
        [data-theme="light"] .portfolio-slider .slick-dots li button{background:rgba(0,0,0,.14);}

        /* ::selection */
        [data-theme="light"] ::selection{background:var(--cl-primary);color:#fff;}

        /* ===== baguetteBox — стили под тёмную тему ===== */
        #baguetteBox-overlay{background:rgba(10,11,13,.95)!important;}
        #baguetteBox-slider .full-image figcaption{background:rgba(0,0,0,.6);color:#fff;font-family:var(--font-ui);font-size:.95rem;letter-spacing:.02em;padding:1rem 1.5rem;}
        .baguetteBox-button{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.14)!important;transition:all .25s var(--t);}
        .baguetteBox-button:hover{background:var(--cl-primary)!important;border-color:var(--cl-primary)!important;}
        .baguetteBox-button svg polyline,.baguetteBox-button svg g{stroke:#fff!important;}

        /* ===== Разноцветные акценты по секциям ===== */
        .section-collections .eyebrow{color:var(--cl-blue);}
        .section-collections .eyebrow::before{background:var(--cl-blue);}
        .section-adv .eyebrow{color:var(--cl-cyan);}
        .section-adv .eyebrow::before{background:var(--cl-cyan);}
        .section-products .eyebrow{color:var(--cl-yellow);}
        .section-products .eyebrow::before{background:var(--cl-yellow);}
        .section-steps .eyebrow{color:var(--cl-green);}
        .section-steps .eyebrow::before{background:var(--cl-green);}
        .section-portfolio .eyebrow{color:var(--cl-pink);}
        .section-portfolio .eyebrow::before{background:var(--cl-pink);}
        .section-info .info-panel:nth-child(1) .eyebrow,
        .section-info .col-md-6:nth-child(1) .eyebrow{color:var(--cl-teal);}
        .section-info .info-panel:nth-child(1) .eyebrow::before,
        .section-info .col-md-6:nth-child(1) .eyebrow::before{background:var(--cl-teal);}
        .section-info .col-md-6:nth-child(2) .eyebrow{color:var(--cl-purple);}
        .section-info .col-md-6:nth-child(2) .eyebrow::before{background:var(--cl-purple);}
        .section-lead .eyebrow{color:var(--cl-magenta);}
        .section-lead .eyebrow::before{background:var(--cl-magenta);}

        /* ===== Rainbow для коллекций — стрелки всегда цветные, border при hover ===== */
        .section-collections .row > div:nth-child(12n+1)  .collection-card .arrow{background:var(--cl-blue);}
        .section-collections .row > div:nth-child(12n+2)  .collection-card .arrow{background:var(--cl-teal);}
        .section-collections .row > div:nth-child(12n+3)  .collection-card .arrow{background:var(--cl-green);}
        .section-collections .row > div:nth-child(12n+4)  .collection-card .arrow{background:var(--cl-yellow);color:#1a1a1a;}
        .section-collections .row > div:nth-child(12n+5)  .collection-card .arrow{background:var(--cl-orange);}
        .section-collections .row > div:nth-child(12n+6)  .collection-card .arrow{background:var(--cl-red);}
        .section-collections .row > div:nth-child(12n+7)  .collection-card .arrow{background:var(--cl-pink);}
        .section-collections .row > div:nth-child(12n+8)  .collection-card .arrow{background:var(--cl-purple);}
        .section-collections .row > div:nth-child(12n+9)  .collection-card .arrow{background:var(--cl-magenta);}
        .section-collections .row > div:nth-child(12n+10) .collection-card .arrow{background:var(--cl-cyan);color:#1a1a1a;}
        .section-collections .row > div:nth-child(12n+11) .collection-card .arrow{background:var(--cl-blue);}
        .section-collections .row > div:nth-child(12n+12) .collection-card .arrow{background:var(--cl-green);}

        .section-collections .row > div:nth-child(12n+1)  .collection-card:hover{outline:2px solid var(--cl-blue);}
        .section-collections .row > div:nth-child(12n+2)  .collection-card:hover{outline:2px solid var(--cl-teal);}
        .section-collections .row > div:nth-child(12n+3)  .collection-card:hover{outline:2px solid var(--cl-green);}
        .section-collections .row > div:nth-child(12n+4)  .collection-card:hover{outline:2px solid var(--cl-yellow);}
        .section-collections .row > div:nth-child(12n+5)  .collection-card:hover{outline:2px solid var(--cl-orange);}
        .section-collections .row > div:nth-child(12n+6)  .collection-card:hover{outline:2px solid var(--cl-red);}
        .section-collections .row > div:nth-child(12n+7)  .collection-card:hover{outline:2px solid var(--cl-pink);}
        .section-collections .row > div:nth-child(12n+8)  .collection-card:hover{outline:2px solid var(--cl-purple);}
        .section-collections .row > div:nth-child(12n+9)  .collection-card:hover{outline:2px solid var(--cl-magenta);}
        .section-collections .row > div:nth-child(12n+10) .collection-card:hover{outline:2px solid var(--cl-cyan);}
        .section-collections .row > div:nth-child(12n+11) .collection-card:hover{outline:2px solid var(--cl-blue);}
        .section-collections .row > div:nth-child(12n+12) .collection-card:hover{outline:2px solid var(--cl-green);}

        /* ===== Rainbow для товаров — цветная полоса сверху и свой цвет цены ===== */
        .product-card{position:relative;}
        .product-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--cl-primary);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--t);z-index:3;}
        .product-card:hover::before{transform:scaleX(1);}
        .products-slider .slick-slide:nth-child(4n+1) .product-card::before{background:var(--cl-blue);}
        .products-slider .slick-slide:nth-child(4n+1) .product-card .price b{color:var(--cl-blue);}
        .products-slider .slick-slide:nth-child(4n+2) .product-card::before{background:var(--cl-green);}
        .products-slider .slick-slide:nth-child(4n+2) .product-card .price b{color:var(--cl-green);}
        .products-slider .slick-slide:nth-child(4n+3) .product-card::before{background:var(--cl-pink);}
        .products-slider .slick-slide:nth-child(4n+3) .product-card .price b{color:var(--cl-pink);}
        .products-slider .slick-slide:nth-child(4n+4) .product-card::before{background:var(--cl-yellow);}
        .products-slider .slick-slide:nth-child(4n+4) .product-card .price b{color:var(--cl-yellow);}

        /* ===== Portfolio — "+" всегда цветные, по циклу 12 ===== */
        .portfolio-slider .slick-slide:nth-child(12n+1)  .work-card .plus{background:var(--cl-blue);}
        .portfolio-slider .slick-slide:nth-child(12n+2)  .work-card .plus{background:var(--cl-teal);}
        .portfolio-slider .slick-slide:nth-child(12n+3)  .work-card .plus{background:var(--cl-green);}
        .portfolio-slider .slick-slide:nth-child(12n+4)  .work-card .plus{background:var(--cl-yellow);color:#1a1a1a;}
        .portfolio-slider .slick-slide:nth-child(12n+5)  .work-card .plus{background:var(--cl-orange);}
        .portfolio-slider .slick-slide:nth-child(12n+6)  .work-card .plus{background:var(--cl-red);}
        .portfolio-slider .slick-slide:nth-child(12n+7)  .work-card .plus{background:var(--cl-pink);}
        .portfolio-slider .slick-slide:nth-child(12n+8)  .work-card .plus{background:var(--cl-purple);}
        .portfolio-slider .slick-slide:nth-child(12n+9)  .work-card .plus{background:var(--cl-magenta);}
        .portfolio-slider .slick-slide:nth-child(12n+10) .work-card .plus{background:var(--cl-cyan);color:#1a1a1a;}
        .portfolio-slider .slick-slide:nth-child(12n+11) .work-card .plus{background:var(--cl-blue);}
        .portfolio-slider .slick-slide:nth-child(12n+12) .work-card .plus{background:var(--cl-green);}

/* ===== Футер — цветные заголовки колонок ===== */
        .footer .row > div:nth-child(2) h4{color:var(--cl-blue);}
        .footer .row > div:nth-child(3) h4{color:var(--cl-teal);}
        .footer .row > div:nth-child(4) h4{color:var(--cl-yellow);}

        /* ===== Nav-list — цветное подчёркивание по позиции ===== */
        .navbar-main .nav-list > li:nth-child(1) a::after{background:var(--cl-blue);}
        .navbar-main .nav-list > li:nth-child(2) a::after{background:var(--cl-teal);}
        .navbar-main .nav-list > li:nth-child(3) a::after{background:var(--cl-green);}
        .navbar-main .nav-list > li:nth-child(4) a::after{background:var(--cl-yellow);}
        .navbar-main .nav-list > li:nth-child(5) a::after{background:var(--cl-pink);}
        .navbar-main .nav-list > li:nth-child(6) a::after{background:var(--cl-cyan);}

        /* ===== Hero — eyebrow оставляем белым, но подчёркивание цветное на каждом слайде ===== */
        .hero-slide:nth-of-type(4n+1) .hero-inner .eyebrow::before{background:var(--cl-orange);}
        .hero-slide:nth-of-type(4n+2) .hero-inner .eyebrow::before{background:var(--cl-blue);}
        .hero-slide:nth-of-type(4n+3) .hero-inner .eyebrow::before{background:var(--cl-pink);}
        .hero-slide:nth-of-type(4n+4) .hero-inner .eyebrow::before{background:var(--cl-green);}

        /* Кнопка "Заказать звонок" — статичный градиент purple → magenta */
        .navbar-main .btn-flame,
        .offcanvas-nav .btn-flame{
            background-image:linear-gradient(135deg,var(--cl-purple),var(--cl-magenta));
            box-shadow:0 10px 24px rgba(143,110,218,.35);
            color:#fff;
        }
        .navbar-main .btn-flame:hover,
        .offcanvas-nav .btn-flame:hover{
            transform:translateY(-2px);
            box-shadow:0 16px 36px rgba(185,110,217,.5);
        }

        /* ===== Разноцветные градиентные кнопки ===== */
        .btn-blue   {background-image:linear-gradient(135deg,var(--cl-blue),   var(--cl-cyan));   color:#fff;    box-shadow:0 10px 24px rgba(78,147,231,.35);}
        .btn-teal   {background-image:linear-gradient(135deg,var(--cl-teal),   var(--cl-cyan));   color:#fff;    box-shadow:0 10px 24px rgba(76,174,163,.35);}
        .btn-green  {background-image:linear-gradient(135deg,var(--cl-green),  var(--cl-yellow)); color:#1a1a1a; box-shadow:0 10px 24px rgba(134,185,102,.35);}
        .btn-yellow {background-image:linear-gradient(135deg,var(--cl-yellow), var(--cl-orange)); color:#1a1a1a; box-shadow:0 10px 24px rgba(229,184,74,.35);}
        .btn-orange {background-image:linear-gradient(135deg,var(--cl-orange), var(--cl-red));    color:#fff;    box-shadow:0 10px 24px rgba(229,138,74,.35);}
        .btn-red    {background-image:linear-gradient(135deg,var(--cl-red),    var(--cl-pink));   color:#fff;    box-shadow:0 10px 24px rgba(229,96,96,.35);}
        .btn-pink   {background-image:linear-gradient(135deg,var(--cl-pink),   var(--cl-magenta));color:#fff;    box-shadow:0 10px 24px rgba(217,110,167,.35);}
        .btn-purple {background-image:linear-gradient(135deg,var(--cl-purple), var(--cl-blue));   color:#fff;    box-shadow:0 10px 24px rgba(143,110,218,.35);}
        .btn-magenta{background-image:linear-gradient(135deg,var(--cl-magenta),var(--cl-purple)); color:#fff;    box-shadow:0 10px 24px rgba(185,110,217,.35);}
        .btn-cyan   {background-image:linear-gradient(135deg,var(--cl-cyan),   var(--cl-blue));   color:#1a1a1a; box-shadow:0 10px 24px rgba(107,200,218,.35);}
        .btn-blue:hover,.btn-teal:hover,.btn-green:hover,.btn-yellow:hover,.btn-orange:hover,
        .btn-red:hover,.btn-pink:hover,.btn-purple:hover,.btn-magenta:hover,.btn-cyan:hover{
            transform:translateY(-2px);box-shadow:0 16px 36px rgba(0,0,0,.4);background-position:100% 50%;
        }

        /* Hero slides — главная кнопка каждого слайда своим градиентом */
        .hero .slick-slide:nth-of-type(1) .hero-inner .btn-flame{background-image:linear-gradient(135deg,var(--cl-orange),var(--cl-red),var(--cl-pink));color:#fff;}
        .hero .slick-slide:nth-of-type(2) .hero-inner .btn-flame{background-image:linear-gradient(135deg,var(--cl-green),var(--cl-teal),var(--cl-cyan));color:#1a1a1a;}
        .hero .slick-slide:nth-of-type(3) .hero-inner .btn-flame{background-image:linear-gradient(135deg,var(--cl-pink),var(--cl-magenta),var(--cl-purple));color:#fff;}
        .hero .slick-slide:nth-of-type(4) .hero-inner .btn-flame{background-image:linear-gradient(135deg,var(--cl-blue),var(--cl-purple),var(--cl-pink));color:#fff;}

        /* MAX — брендовый градиент (из SVG: cyan → blue → purple) */
        .btn-max{background-image:linear-gradient(135deg,#43d6ff,#5a8cff,#8f3fff);color:#fff;box-shadow:0 10px 24px rgba(90,140,255,.4);}
        .btn-max img{transition:filter .3s var(--t);}
        .btn-max:hover{box-shadow:0 16px 36px rgba(143,63,255,.5);transform:translateY(-2px);}
        .btn-max:hover img{filter:brightness(0) invert(.08);}
        /* CTA ghost — градиентная обводка на тёплом банере */
        .cta .btn-ghost{
            background-image:linear-gradient(#fff,#fff),linear-gradient(135deg,#1a1a1a,#000);
            background-origin:border-box;background-clip:padding-box,border-box;
            border:2px solid transparent;color:#1a1a1a;padding:calc(.85rem - 1px) calc(1.6rem - 1px);
        }
        .cta .btn-ghost:hover{background-image:linear-gradient(135deg,#1a1a1a,#000),linear-gradient(135deg,#1a1a1a,#000);color:#fff;}
        /* CTA dark-ink — оставляем purple→magenta градиент из общего правила */

        /* Пункты меню — постоянно цветные, при hover только подчёркивание */
        .navbar-main .nav-list > li:nth-child(1) a{color:var(--cl-blue);}
        .navbar-main .nav-list > li:nth-child(2) a{color:var(--cl-teal);}
        .navbar-main .nav-list > li:nth-child(3) a{color:var(--cl-green);}
        .navbar-main .nav-list > li:nth-child(4) a{color:var(--cl-yellow);}
        .navbar-main .nav-list > li:nth-child(5) a{color:var(--cl-pink);}
        .navbar-main .nav-list > li:nth-child(6) a{color:var(--cl-cyan);}
        /* hover не трогает цвет — остаётся nth-child, работает только подчёркивание ::after */

        /* Offcanvas (мобильное меню) — каждый пункт свой цвет */
        .offcanvas-nav .nav-list > li:nth-child(1) a{color:var(--cl-blue);}
        .offcanvas-nav .nav-list > li:nth-child(2) a{color:var(--cl-teal);}
        .offcanvas-nav .nav-list > li:nth-child(3) a{color:var(--cl-green);}
        .offcanvas-nav .nav-list > li:nth-child(4) a{color:var(--cl-yellow);}
        .offcanvas-nav .nav-list > li:nth-child(5) a{color:var(--cl-pink);}
        .offcanvas-nav .nav-list > li:nth-child(6) a{color:var(--cl-cyan);}
        .offcanvas-nav .nav-list > li a:hover{color:#fff;}

        /* ===== Responsive ===== */
        @media (max-width: 1199px){
            .section{padding:4.5rem 0;}
            .hero-arrow{display:none;}
        }
        @media (max-width: 991px){
            .nav-list.d-flex-desktop{display:none!important;}
            .topbar{display:none;}
            .cta{padding:2.4rem;}
            .lead-form{padding:1.8rem;}
            .section-head{margin-bottom:2.5rem;}
        }
        @media (max-width: 575px){
            .section{padding:3.5rem 0;}
            .hero-title{font-size:2rem;}
            .hero-sub{font-size:1rem;}
            .hero .slick-dots{bottom:1.6rem;}
            .hero-count{display:none;}
            .cta{padding:2rem;}
            .brand img{height:36px;}
        }

/* ============================================================
   OPV2 Product page (/katalog/.../tovar)
   ============================================================ */
.opv2-product-page{color:var(--text);}
.opv2-product-page .opv2-product-title{font-size:clamp(1.5rem,2.3vw,2.2rem);margin:0 0 1rem;color:var(--text-hi);}
.opv2-product-page .opv2-product-short{color:var(--text-mute);line-height:1.6;font-size:.98rem;}
.opv2-product-page .opv2-product-short p:last-child{margin-bottom:0;}
.opv2-product-page .opv2-link-more{color:var(--cl-primary);display:inline-flex;align-items:center;gap:.4rem;font-size:.9rem;font-weight:600;margin-top:.6rem;}
.opv2-product-page .opv2-link-more:hover{color:var(--text-hi);}
.opv2-product-page .opv2-link-more i{transition:transform .25s var(--t);}
.opv2-product-page .opv2-link-more.is-open i{transform:rotate(180deg);}
.opv2-product-page .hidden{display:none;}

/* big price under calculator */
.opv2-price-headline{
    display:flex;align-items:baseline;gap:.4rem;
    padding:1rem 1.2rem;border-radius:var(--radius);
    background:linear-gradient(135deg,var(--bg-surface),var(--bg-surface-2));
    border:1px solid var(--line);
    margin-top:1.2rem;
}
.opv2-price-headline__value{font-family:var(--font-display);font-size:2rem;font-weight:800;color:var(--cl-primary);line-height:1;}
.opv2-price-headline__unit{color:var(--text-mute);font-size:.95rem;letter-spacing:.02em;}
.opv2-price-headline__value:empty::before{content:"—";color:var(--text-mute);}

/* calc modifications area (ExtraOptions output) */
.opv2-price-mods{color:var(--text-mute);font-size:.92rem;}
.opv2-price-mods .table,
.opv2-price-mods table{color:var(--text);width:100%;}
.opv2-price-mods td,.opv2-price-mods th{border-color:var(--line);padding:.4rem .6rem;}

/* option group common skin — обёртка переопределяет вид inner чанков */
.opv2-option-group{background:var(--bg-surface);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.2rem;transition:border-color .2s var(--t);}
.opv2-option-group:hover{border-color:var(--line-strong);}
.opv2-option-group .h5{color:var(--text-hi);font-size:1rem;margin:0 0 .8rem;font-weight:600;}
.opv2-option-group label,
.opv2-option-group .label{color:var(--text);}
.opv2-option-group input[type="text"],
.opv2-option-group input[type="number"],
.opv2-option-group select{
    background:var(--bg-elev);color:var(--text);border:1px solid var(--line);
    border-radius:12px;padding:.5rem .8rem;
}
.opv2-option-group input:focus,
.opv2-option-group select:focus{border-color:var(--cl-primary);outline:none;box-shadow:0 0 0 .2rem rgba(var(--cl-primary-rgb),.18);}
.opv2-option-group .btn{border-radius:999px;}

/* options-overlay — цвет/материал/эффект часто рендерятся как плитки */
.opv2-option-group.options-overlay .form-check,
.opv2-option-group .material-items,
.opv2-option-group .color-items,
.opv2-option-group .effect-items{display:flex;flex-wrap:wrap;gap:.5rem;}
.opv2-option-group img{max-width:100%;height:auto;border-radius:10px;}

/* Add to cart / buttons line */
.opv2-product-buttons .btn{border-radius:999px;}
.opv2-product-buttons .btn-primary,
.opv2-product-buttons .btn-success{
    background-image:linear-gradient(135deg,var(--cl-orange),var(--cl-red),var(--cl-pink));
    background-size:200% 200%;background-position:0% 50%;
    color:#fff;border:0;box-shadow:0 10px 24px rgba(229,138,74,.35);
    transition:background-position .4s var(--t),transform .3s var(--t),box-shadow .3s var(--t);
}
.opv2-product-buttons .btn-primary:hover,
.opv2-product-buttons .btn-success:hover{background-position:100% 50%;transform:translateY(-2px);box-shadow:0 14px 32px rgba(229,96,96,.45);}
.opv2-product-buttons input[type="number"]{background:var(--bg-elev);color:var(--text);border:1px solid var(--line);border-radius:12px;}

/* btn-skidka — legacy name, перекрашиваем */
.opv2-product-page .btn-skidka{
    background:transparent;color:var(--text);border:1px solid var(--line-strong);
    border-radius:999px;padding:.7rem 1.4rem;font-weight:600;text-decoration:none;
    display:inline-flex;align-items:center;transition:all .25s var(--t);
}
.opv2-product-page .btn-skidka:hover{background:var(--cl-primary);color:#fff;border-color:var(--cl-primary);transform:translateY(-2px);}

/* Benefits strip */
.opv2-product-benefits{background:var(--bg-elev);border-radius:var(--radius);padding:1.4rem;color:var(--text-mute);}
.opv2-product-benefits .row{margin:0;}

/* Tabs (Bootstrap-style внутри старого чанка Tabs) */
.opv2-product-tabs{margin-top:2rem;}
.opv2-product-tabs .nav-tabs{border-bottom:1px solid var(--line);}
.opv2-product-tabs .nav-tabs .nav-link{
    color:var(--text-mute);border:0;background:transparent;
    padding:.8rem 1.4rem;font-weight:600;position:relative;
}
.opv2-product-tabs .nav-tabs .nav-link::after{content:"";position:absolute;left:1.4rem;right:1.4rem;bottom:-1px;height:2px;background:var(--cl-primary);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--t);}
.opv2-product-tabs .nav-tabs .nav-link.active,
.opv2-product-tabs .nav-tabs .nav-link:hover{color:var(--text-hi);}
.opv2-product-tabs .nav-tabs .nav-link.active::after{transform:scaleX(1);}
.opv2-product-tabs .tab-content{padding:1.6rem 0;color:var(--text);}

/* Gallery container — пусть галерея заполняет колонку */
.opv2-product-gallery img{max-width:100%;height:auto;border-radius:var(--radius);}
.opv2-product-gallery .slick-slide{outline:none;}

/* Within msProduct — любые таблицы/абзацы наследуют нашу палитру */
#msProduct table{color:var(--text);}
#msProduct td,#msProduct th{border-color:var(--line);}
#msProduct h1,#msProduct h2,#msProduct h3,#msProduct h4,#msProduct h5{color:var(--text-hi);}
#msProduct a{color:var(--cl-primary);}
#msProduct a:hover{color:var(--text-hi);}

@media (max-width:991px){
    .opv2-price-headline{padding:.8rem 1rem;}
    .opv2-price-headline__value{font-size:1.7rem;}
}
