/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/static/fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/static/fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/static/fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/static/fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/static/fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/static/fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/static/fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/static/fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggOxSuXd.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggexSg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggOxSuXd.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggexSg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggOxSuXd.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggexSg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggOxSuXd.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggexSg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggOxSuXd.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/static/fonts/xn7gYHE41ni1AdIRggexSg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Tailwind CSS Custom Styles for IT Sirius */

@tailwind base;
@tailwind components;
@tailwind utilities;

@layer base {
    :root {
        --background: 0 0% 100%;
        --foreground: 240 10% 10%;
        --card: 0 0% 100%;
        --card-foreground: 240 10% 10%;
        --popover: 0 0% 100%;
        --popover-foreground: 240 10% 10%;
        --primary: 240 30% 14%;
        --primary-foreground: 0 0% 100%;
        --secondary: 240 5% 96%;
        --secondary-foreground: 240 10% 10%;
        --muted: 240 5% 96%;
        --muted-foreground: 240 4% 46%;
        --accent: 350 80% 59%;
        --accent-foreground: 0 0% 100%;
        --destructive: 0 84% 60%;
        --destructive-foreground: 0 0% 100%;
        --border: 240 6% 90%;
        --input: 240 6% 90%;
        --ring: 350 80% 59%;
        --radius: 0.75rem;
    }

    .dark {
        --background: 240 20% 6%;
        --foreground: 0 0% 100%;
        --card: 240 20% 8%;
        --card-foreground: 0 0% 100%;
        --popover: 240 20% 8%;
        --popover-foreground: 0 0% 100%;
        --primary: 0 0% 100%;
        --primary-foreground: 240 30% 14%;
        --secondary: 240 10% 15%;
        --secondary-foreground: 0 0% 100%;
        --muted: 240 10% 15%;
        --muted-foreground: 240 5% 65%;
        --accent: 350 80% 59%;
        --accent-foreground: 0 0% 100%;
        --destructive: 0 62% 30%;
        --destructive-foreground: 0 0% 100%;
        --border: 240 10% 20%;
        --input: 240 10% 20%;
        --ring: 350 80% 59%;
    }

    * {
        @apply border-border;
    }

    body {
        @apply bg-slate-50 text-foreground antialiased;
        font-feature-settings: "rlig" 1, "calt" 1;
    }

    /* Implementation Page Specific Global Variables */
    :root, [data-theme="light"], .light {
        --bg1: theme('colors.white');
        --bg2: theme('colors.slate.50');
        --bg3: theme('colors.slate.100');
        --border: theme('colors.slate.200');
        --text: theme('colors.slate.900');
        --muted: theme('colors.slate.500');
        --accent: theme('colors.blue.600');
        --accent2: theme('colors.blue.500');
        --green: theme('colors.emerald.500');
        --orange: theme('colors.orange.500');
    }

    html[data-theme="dark"], .dark-mode, .dark {
        --bg1: theme('colors.sirius-night');
        --bg2: theme('colors.slate.800');
        --bg3: theme('colors.slate.700');
        --border: theme('colors.slate.700');
        --text: theme('colors.slate.50');
        --muted: theme('colors.slate.400');
        --accent: theme('colors.violet.500');
        --accent2: theme('colors.violet.400');
        --green: theme('colors.emerald.500');
        --orange: theme('colors.amber.500');
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        @apply font-heading font-bold tracking-tight;
    }
}

/* Корпоративные компоненты согласно брендбуку */
@layer components {

    /* Контейнер - 1280px с центрированием и адаптивными отступами */
    .section-container {
        @apply max-w-container mx-auto px-4 md:px-6 lg:px-8;
    }

    /* Кнопки */
    .btn {
        @apply inline-flex items-center justify-center rounded-xl font-semibold transition-all duration-300 focus:outline-none focus:ring-2 focus:ring-offset-2;
    }

    .btn-primary {
        @apply bg-sirius-red hover:bg-sirius-red/90 text-white px-8 py-3 shadow-lg hover:shadow-xl focus:ring-sirius-red;
    }

    .btn-secondary {
        @apply bg-white/10 hover:bg-white/20 text-foreground border border-border px-8 py-3;
    }

    .btn-outline {
        @apply border-2 border-border hover:border-sirius-red hover:text-sirius-red bg-transparent px-8 py-3;
    }

    .btn-hero-primary {
        @apply px-8 py-5 bg-sirius-blue hover:bg-blue-700 text-white text-lg font-bold rounded-2xl shadow-xl shadow-sirius-blue/20 transition-all transform hover:scale-105 active:scale-95 flex items-center justify-center gap-3;
    }

    .btn-hero-glass {
        @apply px-8 py-5 bg-white/10 dark:bg-sirius-900/10 hover:bg-white/20 dark:bg-sirius-900/20 text-white text-lg font-bold rounded-2xl backdrop-blur-md transition-all border border-white/20;
    }

    .btn-hero-white {
        @apply px-8 py-4 bg-white text-sirius-blue hover:bg-slate-50 text-lg font-black rounded-2xl shadow-xl transition-all transform hover:scale-105 flex items-center justify-center gap-3;
    }

    .btn-blue {
        @apply inline-flex items-center justify-center px-6 py-3 bg-sirius-blue hover:bg-blue-700 text-white font-bold rounded-xl transition-all shadow-lg hover:shadow-sirius-blue/25 hover:-translate-y-0.5;
    }

    .btn-tariff-primary {
        @apply w-full py-4 bg-sirius-blue text-white hover:bg-blue-700 shadow-lg shadow-sirius-blue/30 font-black rounded-2xl transition-all flex items-center justify-center gap-2;
    }

    .btn-tariff-outline {
        @apply w-full py-4 bg-slate-50 dark:bg-sirius-800 text-slate-900 dark:text-white border border-slate-100 dark:border-sirius-700 hover:bg-slate-100 font-black rounded-2xl transition-all flex items-center justify-center gap-2;
    }

    /* Карточки продуктов - согласно брендбуку с адаптивным padding */
    .card-sirius {
        @apply bg-white rounded-3xl p-5 md:p-6 lg:p-8 shadow-lg hover:shadow-xl transition-all duration-300 border-t-4;
    }

    .card-hover {
        @apply transform hover:-translate-y-1 transition-all duration-300;
    }

    /* Категории карточек */
    .card-sirius-azure {
        @apply border-t-sirius-azure;
    }

    .card-sirius-green {
        @apply border-t-sirius-green;
    }

    .card-sirius-accent {
        @apply border-t-sirius-accent;
    }

    .card-sirius-pink {
        @apply border-t-sirius-pink;
    }

    /* Заголовки карточек */
    .card-title {
        @apply text-sirius-blue text-2xl font-bold mb-3;
    }

    /* Ссылки "Подробнее" */
    .link-more {
        @apply text-sirius-red font-semibold inline-flex items-center gap-2 hover:gap-3 transition-all;
    }

    /* Поля ввода */
    .input-field {
        @apply w-full px-4 py-3 rounded-xl border border-border bg-white focus:border-sirius-red focus:ring-2 focus:ring-sirius-red/20 transition-all;
    }

    /* Сетка карточек с адаптивным gap */
    .cards-grid {
        @apply grid gap-4 md:gap-6 lg:gap-8;
    }

    /* ── Стили для Roadmap Timeline (Universal Service) ── */
    .univ-roadmap-timeline {
        @apply relative max-w-[800px] mx-auto mt-10 pl-2 md:pl-4;
    }
    .univ-roadmap-timeline::before {
        content: '';
        @apply absolute left-[25px] md:left-[33px] top-6 bottom-6 w-[3px] bg-sirius-accent/15 z-[1];
    }
    .univ-roadmap-item {
        @apply relative pl-[60px] md:pl-[80px] pb-12;
    }
    .univ-roadmap-item:last-child {
        @apply pb-0;
    }
    .univ-roadmap-dot {
        @apply absolute left-0 md:left-2 top-0 w-10 h-10 md:w-12 md:h-12 bg-sirius-accent text-white rounded-full flex items-center justify-center font-bold text-lg md:text-xl shadow-[0_4px_15px_#2563eb33] z-[2] transition-all duration-300 group-hover:scale-110 group-hover:bg-blue-600 group-hover:shadow-[0_8px_25px_#2563eb66];
    }
    .univ-roadmap-content h3 {
        @apply text-xl md:text-[1.4rem] font-black mb-2 text-slate-900 dark:text-white leading-tight tracking-tight;
    }
    .univ-roadmap-content p {
        @apply text-base md:text-[1.05rem] leading-relaxed text-slate-600 dark:text-slate-300 m-0;
    }
    .univ-roadmap-dur {
        @apply inline-flex items-center gap-[6px] mt-3 text-[0.9rem] font-bold text-slate-500 dark:text-slate-400 bg-slate-50 dark:bg-sirius-800 px-3 py-1 rounded-md border border-slate-200 dark:border-sirius-700;
    }
}

/* Prose Override for CMS Content */
.prose {
    @apply max-w-none text-muted-foreground leading-relaxed;
}

.prose h2 {
    @apply text-3xl font-heading font-bold text-sirius-blue dark:text-white mt-12 mb-6;
}

.prose h3 {
    @apply text-2xl font-heading font-bold mt-8 mb-4 text-sirius-blue dark:text-white;
}

.prose h4 {
    @apply text-xl font-heading font-bold mt-6 mb-3 text-sirius-blue dark:text-gray-200;
}

.prose h5, .prose h6 {
    @apply text-lg font-heading font-bold mt-4 mb-2 text-sirius-blue dark:text-gray-300;
}

.prose p {
    @apply mb-6 text-lg text-foreground dark:text-gray-300;
}

.prose a {
    @apply text-sirius-accent hover:text-sirius-accent/80 font-medium no-underline border-b border-transparent hover:border-sirius-accent transition-all dark:text-sirius-accent dark:hover:text-sirius-accent/80;
}

.prose ul {
    @apply list-disc pl-6 mb-6 space-y-3 marker:text-sirius-accent text-foreground dark:text-gray-300;
}

.prose img {
    @apply rounded-3xl shadow-lg my-8 w-full cursor-pointer hover:opacity-95 transition-opacity dark:opacity-90 dark:brightness-90;
}

.prose blockquote {
    @apply border-l-4 border-sirius-accent pl-6 py-4 bg-muted dark:bg-gray-800 rounded-r-xl italic text-foreground dark:text-gray-200 my-8 shadow-sm;
}
/* Product Quiz Styles */
.quiz-option {
    @apply flex flex-col items-center justify-center p-6 rounded-2xl border-2 border-gray-200 bg-white transition-all duration-200 hover:border-sirius-orange hover:shadow-lg cursor-pointer;
}

.quiz-option.selected {
    @apply border-sirius-orange bg-gradient-to-br from-sirius-orange/10 to-sirius-red/10 shadow-lg;
}

.quiz-option:hover {
    @apply transform -translate-y-1;
}

/* Comparison Table Styles */
.comparison-table {
    @apply w-full border-collapse rounded-2xl overflow-hidden shadow-xl;
}

.comparison-table th {
    @apply bg-gradient-to-br from-sirius-blue to-sirius-blue/80 text-white p-4 font-heading font-bold text-lg;
}

.comparison-table td {
    @apply p-4 border-b border-gray-200;
}

.comparison-table tr:hover {
    @apply bg-gray-50;
}

.comparison-table .popular-badge {
    @apply inline-block bg-sirius-orange text-white text-xs font-bold px-3 py-1 rounded-full mb-2;
}

.comparison-table .check-icon {
    @apply text-green-500 text-2xl;
}

.comparison-table .cross-icon {
    @apply text-gray-300 text-2xl;
}

/* Version Cards */
.version-card {
    @apply bg-white rounded-2xl p-6 border-2 border-gray-200 transition-all duration-300 hover:shadow-2xl hover:border-sirius-orange;
}

.version-card.popular {
    @apply border-sirius-orange shadow-xl relative;
}

.version-card.popular::before {
    content: 'Популярный';
    @apply absolute -top-3 left-1/2 transform -translate-x-1/2 bg-sirius-orange text-white text-xs font-bold px-4 py-1 rounded-full;
}

/* ---- MERGED FROM homepage.css ---- */
/* ============================================================
   HOMEPAGE v2.3 — Premium Redesign
   Flip-clock, Honeycomb, Glassmorphism, Star Glow
   ============================================================ */

/* ---------- Flip-clock word rotator ---------- */
.flip-words {
  display: inline-block;
  position: relative;
  height: 1.15em;
  overflow: hidden;
  vertical-align: bottom;
}
.flip-words .flip-word {
  display: block;
  position: absolute;
  width: 100%;
  left: 0;
  opacity: 0;
  transform: rotateX(90deg) translateY(-20px);
  transform-origin: bottom center;
  transition: none;
}
.flip-words .flip-word.active {
  position: relative;
  opacity: 1;
  transform: rotateX(0) translateY(0);
  animation: flipIn 0.6s cubic-bezier(.23,1,.32,1);
}
.flip-words .flip-word.leaving {
  opacity: 0;
  transform: rotateX(-90deg) translateY(20px);
  animation: flipOut 0.4s cubic-bezier(.55,.06,.68,.19) forwards;
}
@keyframes flipIn {
  0% { opacity:0; transform: rotateX(90deg) translateY(-20px); }
  100% { opacity:1; transform: rotateX(0) translateY(0); }
}
@keyframes flipOut {
  0% { opacity:1; transform: rotateX(0) translateY(0); }
  100% { opacity:0; transform: rotateX(-90deg) translateY(20px); }
}

/* ---------- Star glow background ---------- */
.star-glow {
  position: absolute;
  width: 500px; height: 500px;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, theme('colors.sirius-blue / 15%') 0%, transparent 70%);
  animation: starPulse 4s ease-in-out infinite;
  pointer-events: none;
}
@keyframes starPulse {
  0%,100% { opacity:0.4; transform: translate(-50%,-50%) scale(1); }
  50% { opacity:0.7; transform: translate(-50%,-50%) scale(1.15); }
}

/* ---------- Glassmorphism stat cards ---------- */
.glass-stat {
  background: theme('colors.white / 5%');
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid theme('colors.white / 10%');
  border-radius: 20px;
  padding: 28px 24px;
  text-align: center;
  transition: all 0.3s ease;
}
.glass-stat:hover {
  background: theme('colors.white / 10%');
  border-color: theme('colors.white / 20%');
  transform: translateY(-4px);
  box-shadow: 0 20px 40px theme('colors.black / 30%');
}
.glass-stat .stat-icon {
  width: 48px; height: 48px;
  margin: 0 auto 12px;
  border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  font-size: 22px;
}
.glass-stat .stat-number {
  font-family: 'Manrope', sans-serif;
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1;
  margin-bottom: 6px;
}
.glass-stat .stat-label {
  font-size: 0.8rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  opacity: 0.6;
}

/* ---------- Honeycomb grid ---------- */
.honeycomb {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 900px;
  margin: 0 auto;
  padding: 20px 0;
}
.hex-wrapper {
  width: 160px;
  height: 184px;
  margin: -22px 6px;
  position: relative;
  transition: transform 0.4s cubic-bezier(.34,1.56,.64,1), z-index 0s;
  z-index: 1;
  cursor: pointer;
}
.hex-wrapper:hover {
  transform: scale(1.2);
  z-index: 10;
}
/* Offset every other row */
.hex-row-offset {
  margin-left: 86px;
}
.hex-shape {
  width: 100%; height: 100%;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 20px;
  transition: all 0.4s ease;
  position: relative;
}
.hex-shape::before {
  content: '';
  position: absolute;
  inset: 2px;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  z-index: -1;
  transition: background 0.3s;
}
.hex-center .hex-shape {
  background: linear-gradient(135deg, theme('colors.sirius-orange'), theme('colors.sirius-red'));
}
.hero-gradient-orange {
  background: linear-gradient(135deg, theme('colors.sirius-orange'), theme('colors.sirius-red'));
}
.hex-item .hex-shape {
  background: theme('colors.white / 8%');
  border: none;
}
.hex-item .hex-shape::before {
  background: theme('colors.slate.900 / 95%');
}
.hex-item:hover .hex-shape {
  background: linear-gradient(135deg, theme('colors.sky.700'), theme('colors.sky.500'));
}
.hero-gradient-blue {
  background: linear-gradient(135deg, theme('colors.sky.700'), theme('colors.sky.500'));
}
.hex-icon {
  font-size: 28px;
  margin-bottom: 6px;
  filter: drop-shadow(0 2px 4px theme('colors.black / 30%'));
}
.hex-label {
  font-size: 11px;
  font-weight: 700;
  color: white;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1.3;
}
.hex-svg-icon {
  width: 28px; height: 28px;
  color: white;
  margin-bottom: 6px;
  filter: drop-shadow(0 2px 4px theme('colors.black / 30%'));
}

/* Hex connectors via SVG lines */
.hex-connectors {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  pointer-events: none;
  z-index: 0;
}

/* ---------- Bento grid (advantages) ---------- */
.bento-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: auto auto;
  gap: 20px;
}
.bento-card {
  background: theme('colors.white / 4%');
  border: 1px solid theme('colors.white / 8%');
  border-radius: 24px;
  padding: 36px 32px;
  transition: all 0.4s ease;
  position: relative;
  overflow: hidden;
}
.bento-card::after {
  content: '';
  position: absolute;
  top: 0; left: 0;
  width: 100%; .text-gradient {
  background: linear-gradient(90deg, theme('colors.sirius-orange'), theme('colors.sirius-red'));
}  opacity: 0;
  transition: opacity 0.3s;
}
.bento-card:hover {
  background: theme('colors.white / 7%');
  transform: translateY(-4px);
  box-shadow: 0 24px 48px theme('colors.black / 20%');
}
.bento-card:hover::after { opacity: 1; }
.bento-wide { grid-column: span 2; }

/* ---------- Client marquee ---------- */
.marquee-track {
  display: flex;
  gap: 60px;
  animation: marqueeScroll 30s linear infinite;
  width: max-content;
}
.marquee-track:hover { animation-play-state: paused; }
@keyframes marqueeScroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* ---------- Scroll reveal ---------- */
.reveal-section {
  opacity: 0;
  transform: translateY(40px);
  transition: all 0.8s cubic-bezier(.22,1,.36,1);
}
.reveal-section.visible {
  opacity: 1;
  transform: translateY(0);
}

/* ---------- Badge pills ---------- */
.trust-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 18px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  border: 1px solid theme('colors.white / 15%');
  background: theme('colors.white / 6%');
  backdrop-filter: blur(8px);
  color: theme('colors.white / 85%');
  transition: all 0.3s;
}
.trust-badge:hover {
  background: theme('colors.white / 12%');
  border-color: theme('colors.white / 25%');
}
.trust-badge .badge-dot {
  width: 8px; height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

/* ---------- Responsive ---------- */
@media (max-width: 768px) {
  .bento-grid { grid-template-columns: 1fr; }
  .bento-wide { grid-column: span 1; }
  .hex-wrapper { width: 120px; height: 138px; margin: -16px 4px; }
  .hex-row-offset { margin-left: 64px; }
  .hex-label { font-size: 9px; }
  .hex-icon { font-size: 22px; }
  .glass-stat .stat-number { font-size: 2rem; }
}

/* ── Global structural CSS for 3D flip cards ── */
.flip-card {
    perspective: 1000px;
    height: 100%;
    cursor: pointer;
}

.flip-inner {
    position: relative;
    width: 100%;
    height: 100%;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    transform-style: preserve-3d;
}

.flip-card:hover .flip-inner,
.flip-card.active .flip-inner {
    transform: rotateY(180deg);
}

.flip-front,
.flip-back {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.flip-back {
    transform: rotateY(180deg);
}

.problems-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}
.problems-grid .flip-card {
    width: calc(25% - 18px);
    min-width: 260px;
}
@media (max-width: 1400px) {
    .problems-grid .flip-card { width: calc(33.333% - 16px); }
}
@media (max-width: 992px) {
    .problems-grid .flip-card { width: calc(50% - 12px); }
}
@media (max-width: 600px) {
    .problems-grid .flip-card { width: 100%; min-width: 0; }
}

.problem-icon {
    font-size: 2rem;
}
.flip-hint {
    position: absolute;
    top: 12px;
    right: 12px;
    font-size: 1.2rem;
    color: var(--muted);
    opacity: 0.6;
    transition: transform 0.3s ease;
}
.flip-card:hover .flip-hint {
    transform: rotate(180deg);
    color: var(--accent);
}
@media (max-width: 768px) {
    .flip-card { height: auto; min-height: 200px; }
    .flip-front, .flip-back { padding: 20px; align-items: center; text-align: center; justify-content: center; }
    .problem-icon { font-size: 2.2rem; margin-bottom: 8px; }
    .flip-hint { bottom: 12px !important; right: 12px !important; top: auto !important; }
}

/* EXTRACTED FROM TEMPLATES */
/* From shop_page.html */
.hero-bg-dark {
        background-color: theme('colors.slate.900') !important;
        background-image: radial-gradient(circle at 70% 30%, theme('colors.sirius-azure / 20%') 0%, transparent 70%) !important;
    }
    .badge-premium {
        display: inline-flex;
        align-items: center;
        padding: 0.5rem 1.25rem;
        border-radius: 9999px;
        font-size: 14px !important;
        font-weight: 700;
        border-width: 1px;
        transition: all 0.3s;
        backdrop-filter: blur(10px);
    }
    .badge-red {
        background: theme('colors.sirius-red / 15%') !important;
        color: theme('colors.sirius-red') !important;
        border-color: theme('colors.sirius-red / 30%') !important;
    }
    .badge-blue {
        background: theme('colors.sirius-azure / 15%') !important;
        color: theme('colors.blue.500') !important;
        border-color: theme('colors.sirius-azure / 30%') !important;
    }
    #orderModal_final.active, #leadModal.active {
        display: flex !important;
        opacity: 1 !important;
    }
    #orderModal_final.active > div, #leadModal.active > div {
        transform: scale(1);
        opacity: 1;
    }
    .benefit-icon-wrapper {
        width: 100%;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 1rem;
        background: theme('colors.slate.100');
        color: theme('colors.slate.600');
        transition: all 0.5s ease;
    }
    .group:hover .benefit-icon-wrapper {
        background: theme('colors.sirius-red');
        color: white;
        transform: scale(1.1) rotate(5deg);
    }

/* From implementation_page.html */
/* ── ОБЩИЕ СТИЛИ ── */
    * {
        box-sizing: border-box;
        margin: 0;
        padding: 0
    }

    body {
        background: var(--bg1);
        color: var(--text);
        font-family: 'Inter', sans-serif;
        line-height: 1.6
    }

    .container {
        max-width: 1440px;
        margin: 0 auto;
        padding: 0 4px
    }

    section {
        padding: 50px 0
    }

    .separator {
        height: 1px;
        background: radial-gradient(circle, var(--border) 0%, transparent 85%);
        max-width: 1000px;
        margin: 0 auto;
        opacity: 0.8
    }

    .section-label {
        font-size: .75rem;
        font-weight: 700;
        letter-spacing: .12em;
        text-transform: uppercase;
        color: var(--accent2);
        margin-bottom: 12px
    }

    .section-sub {
        color: var(--muted);
        margin-top: 8px;
        font-size: .95rem
    }

    h2 {
        font-size: clamp(1.6rem, 3.5vw, 2.4rem);
        font-weight: 800;
        line-height: 1.2
    }

    .card {
        background: var(--bg2);
        color: var(--text);
        border: 1px solid var(--border);
        border-radius: var(--radius);
        padding: 24px
    }

    .btn {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 14px 28px;
        border-radius: 10px;
        font-weight: 600;
        font-size: .95rem;
        text-decoration: none;
        cursor: pointer;
        transition: all .2s;
        border: none
    }

    .btn-primary {
        background: var(--accent);
        color: theme('colors.white')
    }

    .btn-primary:hover {
        background: var(--accent2);
        transform: translateY(-1px);
        box-shadow: 0 4px 16px theme('colors.sirius-azure / 40%');
    }

    .btn-outline {
        background: transparent;
        color: var(--text);
        border: 1px solid var(--border)
    }

    .btn-outline:hover {
        background: var(--bg3);
        text-decoration: none;
    }

    .btn-outline-accent {
        background: transparent;
        color: var(--accent);
        border: 1px solid var(--accent);
    }

    .btn-outline-accent:hover {
        background: var(--accent);
        color: theme('colors.white');
        text-decoration: none;
    }

    .btn-group {
        display: flex;
        gap: 12px;
        flex-wrap: wrap;
        margin-top: 24px
    }

    .btn-cta { 
        background: theme('colors.sirius-red'); 
        color: theme('colors.white'); 
        box-shadow: 0 4px 14px theme('colors.sirius-red / 25%');
        border: none;
    }
    .btn-cta:hover { 
        background: theme('colors.coral.600'); 
        transform: translateY(-1px); 
        box-shadow: 0 6px 20px theme('colors.sirius-red / 35%'); 
        color: theme('colors.white');
    }

    .btn-note {
        font-size: .78rem;
        color: var(--muted);
        margin-top: 8px
    }

    .badge {
        padding: 4px 12px;
        border-radius: 20px;
        font-size: .75rem;
        font-weight: 600
    }

    .badge-blue {
        background: theme('colors.sirius-azure / 15%');
        color: var(--accent2);
        border: 1px solid theme('colors.sirius-azure / 30%')
    }

    .badge-green {
        background: theme('colors.green.500 / 12%');
        color: var(--green);
        border: 1px solid theme('colors.green.500 / 25%')
    }

    /* ── HERO ── */
    #hero {
        padding: 24px 0 60px;
        background: radial-gradient(ellipse 100% 80% at 50% 0%, theme('colors.sirius-azure / 15%') 0%, transparent 80%);
        border-bottom: 1px solid var(--border)
    }
    
    /* Для ноутбуков и обычных ПК (до 1920px) */
    @media (min-width: 1400px) and (max-width: 1920px) {
        #hero .container {
            max-width: 1220px;
        }
        .hero-inner {
            grid-template-columns: 1fr 1fr;
            gap: 52px;
        }
    }

    /* Для очень больших экранов (выше 1920px) - возвращаем крупный масштаб */
    @media (min-width: 1921px) {
        #hero {
            padding: 40px 0 72px;
        }
        #hero .container {
            max-width: 1440px;
        }
        .hero-inner {
            grid-template-columns: 1fr 1.2fr;
            gap: 80px;
        }
        .hero-h1 {
            font-size: 4.5rem !important;
            margin-bottom: 32px !important;
        }
        .hero-sub {
            font-size: 1.15rem !important;
            margin-bottom: 28px !important;
        }
        .hero-trust-item strong {
            font-size: 1.9rem !important;
        }
    }
    


    .hero-h1 {
        font-size: clamp(2rem, 5vw, 3.4rem);
        font-weight: 900;
        line-height: 1.1;
        margin: 0 0 24px
    }

    .hero-inner {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 48px;
        align-items: start;
        margin-top: 20px
    }

    .hero-flowchart {
        background: var(--bg2);
        border: 1px solid var(--border);
        border-radius: var(--radius);
        padding: 16px 16px 4px;
        overflow: hidden;
        margin-top: 0
    }

    .hero-badges {
        display: flex;
        gap: 8px;
        flex-wrap: wrap
    }

    .hero-sub {
        color: var(--muted);
        font-size: 1.05rem;
        margin-bottom: 20px
    }

    .hero-utp {
        list-style: none;
        display: flex;
        flex-direction: column;
        gap: 10px;
        margin: 0 0 8px
    }

    .hero-utp li::before {
        content: "✓";
        color: var(--green);
        font-weight: 700;
        margin-right: 8px
    }

    .hero-trust {
        display: flex;
        gap: 20px;
    }

    .hero-trust-wrap {
        display: flex;
        align-items: center;
        gap: 24px;
        flex-wrap: wrap;
        margin-top: 24px
    }

    .hero-trust-item {
        text-align: center
    }

    .hero-trust-item strong {
        font-size: 1.6rem;
        font-weight: 800;
        color: var(--accent2);
        display: block
    }

    .hero-trust-item span {
        font-size: .75rem;
        color: var(--muted)
    }



    /* ── Flowchart анимации ── */
    @keyframes fcFadeIn {
        from {
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }

    @keyframes fcLineDraw {
        from {
            opacity: 0;
            stroke-dashoffset: 150
        }

        to {
            opacity: 1;
            stroke-dashoffset: 0
        }
    }

    @keyframes fcPulse {

        0%,
        100% {
            r: 88;
            opacity: .15
        }

        50% {
            r: 105;
            opacity: .3
        }
    }

    .fc-node {
        opacity: 0;
        animation: fcFadeIn .5s ease forwards;
        transform-origin: center;
        transform-box: fill-box;
        transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), filter 0.3s ease;
        cursor: pointer;
    }

    .fc-node:hover {
        transform: scale(1.05);
        filter: brightness(1.1) drop-shadow(0 0 8px var(--accent));
    }

    .fc-line {
        stroke-dasharray: 150;
        stroke-dashoffset: 150;
        opacity: 0;
        animation: fcLineDraw .4s ease forwards;
        pointer-events: none; /* Чтобы линии не перехватывали hover */
    }

    .fc-pulse {
        animation: fcPulse 3s ease-in-out infinite
    }

    /* ── СЕТКИ ДЛЯ КАРТОЧЕК ── */
    .grid-3 {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 24px
    }

    .grid-4 {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 24px
    }

    .problems-grid {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 24px;
        margin-top: 0
    }
    .problems-grid .flip-card {
        width: calc(25% - 18px);
        min-width: 260px;
    }
    @media (max-width: 1400px) {
        .problems-grid .flip-card { width: calc(33.333% - 16px); }
    }
    @media (max-width: 992px) {
        .problems-grid .flip-card { width: calc(50% - 12px); }
    }
    @media (max-width: 600px) {
        .problems-grid .flip-card { width: 100%; min-width: 0; }
    }

    .flip-card {
        perspective: 1000px;
        height: 240px;
        cursor: pointer
    }

    .flip-inner {
        position: relative;
        width: 100%;
        height: 100%;
        transition: transform .55s cubic-bezier(.4, 0, .2, 1);
        transform-style: preserve-3d
    }

    .flip-card:hover .flip-inner,
    .flip-card.active .flip-inner {
        transform: rotateY(180deg)
    }

    .flip-front,
    .flip-back {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
        display: flex;
        flex-direction: column;
        gap: 8px;
        overflow: hidden;
        background: var(--bg2);
        border: 1px solid var(--border);
        border-radius: var(--radius);
    }

    .flip-back {
        transform: rotateY(180deg);
        background: linear-gradient(135deg, theme('colors.sirius-azure / 22%'), var(--bg2));
        border: 1px solid var(--accent);
        border-radius: var(--radius);
        padding: 24px
    }

    .problem-icon {
        font-size: 2rem
    }

    .flip-hint {
        position: absolute;
        top: 12px;
        right: 12px;
        font-size: 1.2rem;
        color: var(--muted);
        opacity: 0.6;
        transition: transform 0.3s ease;
    }

    .flip-card:hover .flip-hint {
        transform: rotate(180deg);
        color: var(--accent);
        opacity: 1;
    }

    /* ── ФУНКЦИОНАЛ (ТАБЫ) ── */
    .tabs-nav {
        display: flex;
        gap: 8px;
        margin-top: 24px;
        margin-bottom: 32px;
        border-bottom: 2px solid var(--border);
        flex-wrap: wrap
    }

    .tab-btn {
        padding: 12px 24px;
        background: transparent;
        border: none;
        color: var(--muted);
        cursor: pointer;
        font-weight: 600;
        transition: all 0.3s ease;
        position: relative;
        border-bottom: 2px solid transparent;
        margin-bottom: -2px
    }

    .tab-btn:hover {
        color: var(--text)
    }

    .tab-btn.active {
        color: var(--accent);
        border-bottom-color: var(--accent)
    }

    .tab-pane {
        display: none;
        opacity: 0;
        transform: translateY(10px)
    }

    .tab-pane.active {
        display: block;
        animation: tabSlideUp 0.4s ease forwards
    }

    @keyframes tabSlideUp {
        to {
            opacity: 1;
            transform: translateY(0)
        }
    }

    .tab-features {
        list-style: none;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px
    }

    .tab-features li {
        padding: 12px 16px;
        background: var(--bg3);
        border-radius: 8px;
        border: 1px solid var(--border);
        font-size: .9rem
    }

    .tab-features li::before {
        content: "✓";
        color: var(--green);
        margin-right: 8px;
        font-weight: 700
    }

    /* ── TIMELINE ── */
    .process-grid {
        display: grid;
        grid-template-columns: 1fr 400px;
        gap: 48px;
        align-items: start;
    }

    @media (max-width: 992px) {
        .process-grid {
            grid-template-columns: 1fr;
            gap: 32px;
        }
        .process-form-wrap {
            position: static !important;
        }
    }

    .timeline {
        position: relative;
        padding-left: 40px
    }

    .timeline::before {
        content: "";
        position: absolute;
        left: 15px;
        top: 0;
        bottom: 0;
        width: 2px;
        background: linear-gradient(var(--accent), transparent)
    }

    .timeline-item {
        position: relative;
        margin-bottom: 32px
    }

    .timeline-num {
        position: absolute;
        left: -40px;
        width: 30px;
        height: 30px;
        border-radius: 50%;
        background: var(--accent);
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 700;
        font-size: .85rem
    }

    .timeline-dur {
        font-size: .75rem;
        color: var(--accent2);
        margin-top: 4px
    }



    /* ── КВИЗ АККОРДЕОН ── */
    .aq-wrap {
        max-width: 780px;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        gap: 8px
    }

    .aq-item {
        border: 1px solid var(--border);
        border-radius: 12px; /* Увеличено до 12px */
        overflow: hidden;
        background: var(--bg2); /* Светлый фон как на site1, но с поддержкой темной темы */
        color: var(--text);
        transition: border-color .2s;
        margin-bottom: 8px; /* Добавлен отступ между плашками */
    }

    .aq-item.open {
        border-color: var(--accent2);
        box-shadow: 0 10px 15px -3px theme('colors.sirius-azure / 10%');
    }

    .aq-head {
        display: flex;
        align-items: center;
        gap: 16px;
        padding: 12px 20px; /* Уменьшено до 12px как на site1 */
        cursor: pointer;
        user-select: none;
        transition: background .15s
    }

    .aq-head:hover {
        background: theme('colors.sirius-azure / 6%')
    }

    .aq-num {
        width: 32px;
        height: 32px;
        border-radius: 50%;
        background: var(--bg3);
        border: 1px solid var(--border);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: .85rem;
        font-weight: 700;
        flex-shrink: 0;
        transition: background .2s
    }

    .aq-item.open .aq-num {
        background: var(--accent);
        border-color: var(--accent);
        color: theme('colors.white')
    }

    .aq-item.answered .aq-num {
        background: var(--green);
        border-color: var(--green);
        color: theme('colors.white')
    }

    .aq-title {
        flex: 1;
        font-weight: 500;
        font-size: .95rem
    }

    .aq-icon {
        font-size: 1.3rem;
        color: var(--muted);
        transition: transform .25s;
        flex-shrink: 0
    }

    .aq-item.open .aq-icon {
        transform: rotate(45deg);
        color: var(--accent2)
    }

    .aq-body {
        max-height: 0;
        overflow: hidden;
        transition: max-height .35s ease
    }

    .aq-item.open .aq-body {
        max-height: 600px
    }

    .aq-options {
        display: flex;
        flex-direction: column;
        gap: 8px;
        padding: 4px 20px 20px
    }

    .aq-opt {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 12px 16px;
        border: 1px solid var(--border);
        border-radius: 8px;
        cursor: pointer;
        transition: all .15s;
        background: var(--bg3)
    }

    .aq-opt:hover {
        border-color: var(--accent2);
        background: theme('colors.sirius-azure / 8%')
    }

    .aq-opt input {
        display: none
    }

    .aq-opt:has(input:checked) {
        border-color: var(--accent);
        background: theme('colors.sirius-azure / 12%')
    }

    .aq-opt span {
        font-size: .9rem;
        font-weight: 500;
    }

    /* ── QUIZ REFACTOR ── */
    .quiz-container {
        max-width: 600px;
        margin: 32px auto 0;
        padding: 28px;
        background: var(--bg2);
        box-shadow: 0 20px 40px -10px theme('colors.black / 30%'), 0 0 0 1px var(--border);
        transition: all 0.3s ease;
    }

    .quiz-progress-wrap {
        margin-bottom: 24px;
    }

    .quiz-progress-bar {
        height: 6px;
        background: var(--bg3);
        border-radius: 10px;
        overflow: hidden;
    }

    .quiz-progress-fill {
        width: 0%;
        height: 100%;
        background: linear-gradient(90deg, var(--accent), var(--accent2));
        transition: width 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
        box-shadow: 0 0 15px theme('colors.sirius-azure / 40%');
    }

    .quiz-step-title {
        margin-bottom: 20px;
        font-size: 1.15rem;
        font-weight: 800;
        line-height: 1.3;
        color: var(--text);
    }

    .aq-opt {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 12px 16px;
        border: 1px solid var(--border);
        border-radius: 10px;
        cursor: pointer;
        transition: all 0.2s ease;
        background: var(--bg1);
        font-size: 0.9rem;
        position: relative;
    }

    .aq-opt:hover {
        border-color: var(--accent2);
        background: var(--bg3);
        transform: translateY(-1px);
    }

    .aq-opt:has(input:checked) {
        border-color: var(--accent) !important;
        background: rgba(37, 99, 235, 0.12) !important;
        box-shadow: 0 4px 12px rgba(37, 99, 235, 0.15);
    }

    .aq-opt:has(input:checked):hover {
        background: rgba(37, 99, 235, 0.18) !important;
    }

    .dark .aq-opt:has(input:checked) {
        border-color: var(--accent) !important;
        background: rgba(139, 92, 246, 0.18) !important;
        box-shadow: 0 4px 12px rgba(139, 92, 246, 0.25);
    }

    .dark .aq-opt:has(input:checked):hover {
        background: rgba(139, 92, 246, 0.28) !important;
    }

    .aq-opt:has(input:checked)::after {
        content: "✓";
        position: absolute;
        right: 18px;
        color: var(--accent);
        font-weight: 700;
    }

    .quiz-nav {
        display: flex;
        justify-content: space-between;
        margin-top: 32px;
        border-top: 1px solid var(--border);
        padding-top: 20px;
    }

    .quiz-final-wrap {
        text-align: center;
    }

    .quiz-final-icon {
        font-size: 3rem;
        margin-bottom: 16px;
        display: block;
        filter: drop-shadow(0 0 10px theme('colors.sirius-azure / 20%'));
    }

    .quiz-final-form {
        max-width: 380px;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        gap: 12px;
    }

    /* ── FAQ ── */
    .faq-list {
        max-width: 720px;
        margin: 24px auto 0
    }

    .faq-item {
        border: 1px solid var(--border);
        border-radius: 8px;
        overflow: hidden;
        margin-bottom: 8px
    }

    .faq-q {
        padding: 16px 20px;
        cursor: pointer;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 12px;
        user-select: none
    }

    .faq-icon {
        flex-shrink: 0;
        transition: transform .3s;
        color: var(--muted)
    }

    .faq-item.open .faq-icon {
        transform: rotate(45deg);
        color: var(--accent2)
    }

    .faq-a {
        max-height: 0;
        overflow: hidden;
        transition: max-height .3s cubic-bezier(0.4, 0, 0.2, 1), opacity .3s ease;
        opacity: 0;
    }

    .faq-item.open .faq-a {
        max-height: 600px;
        opacity: 1;
    }

    .faq-a-inner {
        min-height: 0;
        padding: 0 20px 20px;
        color: var(--muted);
        font-size: .95rem;
        line-height: 1.6
    }

    /* ── ФОРМА ── */
    #contact {
        background: var(--bg2);
        border-top: 1px solid var(--border);
        border-bottom: 1px solid var(--border)
    }

    .contact-inner {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 48px;
        align-items: start
    }

    .contact-form {
        display: flex;
        flex-direction: column;
        gap: 14px
    }

    .contact-form input,
    .contact-form textarea,
    .contact-form select {
        background: theme('colors.slate.50');
        border: 1px solid theme('colors.slate.200');
        border-radius: 12px;
        padding: 14px 16px;
        color: var(--text);
        font-family: inherit;
        font-size: .95rem;
        width: 100%;
        transition: all .2s;
    }

    .contact-form input:focus,
    .contact-form textarea:focus {
        outline: none;
        border-color: var(--accent);
        background: theme('colors.white');
        box-shadow: 0 0 0 4px theme('colors.sirius-azure / 10%');
    }

    .benefit-list {
        list-style: none;
        display: flex;
        flex-direction: column;
        gap: 12px;
        margin-top: 16px
    }

    .benefit-list li {
        padding: 14px 16px;
        background: theme('colors.sirius-azure / 8%');
        border: 1px solid theme('colors.sirius-azure / 20%');
        border-radius: 8px;
        font-size: .9rem
    }

    .benefit-list li::before {
        content: "✓";
        margin-right: 8px;
        color: var(--accent);
        font-weight: bold;
    }

    .benefit-grid {
        list-style: none;
        display: grid;
        grid-template-columns: repeat(1, minmax(0, 1fr));
        gap: 12px;
        margin-top: 16px;
    }

    @media (min-width: 768px) {
        .benefit-grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
    }

    .benefit-grid li {
        padding: 14px 16px;
        background: theme('colors.sirius-azure / 8%');
        border: 1px solid theme('colors.sirius-azure / 20%');
        border-radius: 8px;
        font-size: .9rem;
        display: flex;
        align-items: center;
    }

    .benefit-grid li::before {
        content: "✓";
        margin-right: 8px;
        color: var(--accent);
        font-weight: bold;
        flex-shrink: 0;
    }

    /* ── МОДАЛКА ── */
    .modal-overlay {
        position: fixed;
        inset: 0;
        background: theme('colors.black / 40%');
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        z-index: 1000;
        display: flex;
        align-items: center;
        justify-content: center;
        opacity: 0;
        pointer-events: none;
        transition: all .4s cubic-bezier(0.4, 0, 0.2, 1)
    }

    .modal-overlay.open {
        opacity: 1;
        pointer-events: all
    }

    .modal-box {
        background: var(--bg2);
        color: var(--text);
        border: 1px solid var(--border);
        border-radius: 24px;
        width: min(520px, 95vw);
        max-height: 90vh;
        display: flex;
        flex-direction: column;
        box-shadow: 0 25px 50px -12px theme('colors.black / 50%');
        transform: translateY(20px) scale(0.95);
        transition: all .4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    }

    .modal-overlay.open .modal-box {
        transform: translateY(0) scale(1);
    }

    .modal-header {
        padding: 20px 24px;
        border-bottom: 1px solid var(--border);
        display: flex;
        justify-content: space-between;
        align-items: center
    }

    .modal-close {
        background: none;
        border: none;
        color: var(--muted);
        font-size: 1.5rem;
        cursor: pointer;
        padding: 4px 8px;
        border-radius: 6px
    }

    .modal-close:hover {
        background: var(--bg3);
        color: var(--text)
    }

    .modal-body {
        padding: 24px;
        overflow-y: auto;
        flex: 1
    }

    .modal-loader {
        text-align: center;
        padding: 40px;
        color: var(--muted)
    }

    /* ── CAPABILITY CARDS ── */
    .cap-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 16px;
        margin-top: 24px
    }

    .cap-card {
        background: var(--bg2);
        border: 1px solid var(--border);
        border-radius: var(--radius);
        padding: 24px;
        cursor: pointer;
        transition: all .2s
    }

    .cap-card:hover {
        border-color: var(--accent);
        transform: translateY(-2px)
    }

    .cap-icon {
        font-size: 2rem;
        margin-bottom: 12px
    }

    /* ── Responsive ── */
    @media(max-width:1250px) {

        .hero-inner,
        .contact-inner {
            grid-template-columns: 1fr
        }

        .hero-flowchart {
            display: none
        }

        .grid-3,
        .grid-4,
        .main-column .grid-4,
        .cap-grid {
            grid-template-columns: 1fr 1fr
        }

        .tab-features {
            grid-template-columns: 1fr
        }
    }

    @media(max-width:768px) {

        .grid-3,
        .grid-4,
        .main-column .grid-4,
        .cap-grid {
            grid-template-columns: 1fr !important;
        }

        .section-inner {
            padding: 0 16px;
        }

        .card {
            padding: 24px 20px;
        }

        .quiz-container {
            padding: 24px !important;
            margin-top: 24px !important;
        }

        .hero-h1 {
            font-size: 2.2rem;
        }

        /* Адаптация карточек (Боли бизнеса) под мобильные устройства */
        .flip-card {
            height: auto;
            min-height: 200px;
        }
        
        .flip-front, .flip-back {
            padding: 20px;
            align-items: center;
            text-align: center;
            justify-content: center;
        }

        .problem-icon {
            font-size: 2.2rem;
            margin-bottom: 8px;
        }
        
        .flip-hint {
            bottom: 12px !important;
            right: 12px !important;
            top: auto !important; /* Убираем top позиционирование */
        }
    }
    /* ── LAYOUT WITH SIDEBAR ── */
    .container.section-with-sidebar {
        max-width: 1800px; /* Увеличено для возможности маневра формы */
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        transition: all 0.7s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .container.section-with-sidebar.sidebar-collapsed {
        max-width: 1180px; 
    }

    .section-with-sidebar {
        display: grid;
        grid-template-columns: minmax(0, 1200px) 380px; 
        gap: 60px; /* Вернул отступ */
        justify-content: center;
        align-items: start;
        margin-top: 40px;
        margin-bottom: 120px;
        background-color: var(--bg1);
        transition: all 0.7s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .section-with-sidebar.sidebar-collapsed {
        grid-template-columns: 1fr 0px;
        gap: 0;
    }

    .section-inner {
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .main-column {
        min-width: 0;
        max-width: 1440px;
        width: 100%;
    }

    .sidebar-column {
        position: sticky;
        top: 100px;
        z-index: 1000;
        transition: opacity 0.5s ease, transform 0.5s ease, visibility 0.5s;
        overflow: hidden;
    }

    .sidebar-column.is-hidden {
        opacity: 0;
        pointer-events: none;
        visibility: hidden;
        transform: translateX(40px);
    }
    @media (max-width: 1550px) {
        .section-with-sidebar {
            grid-template-columns: 1fr 260px; /* Форма стала еще уже (260px) */
            gap: 30px;
        }
        .side-form-title {
            font-size: 22px;
            margin-bottom: 20px;
        }
        .form-input {
            padding: 10px 14px;
            font-size: 14px;
        }
        .form-label {
            font-size: 13px;
        }
    }

    @media (max-width: 1280px) {
        .section-with-sidebar {
            grid-template-columns: 1fr;
        }
        /* Прячем сайдбар через CSS — не через JS */
        .sidebar-column {
            display: none !important;
        }
    }

    /* ── STICKY SIDEBAR FORM (EXACTLY AS SCREENSHOT) ── */
    .side-form-card {
        background: transparent;
        border: none;
        border-radius: 0;
        padding: 0;
        box-shadow: none;
        max-width: 400px; /* Фиксируем ширину самой формы */
        margin: 0 auto; /* Центрируем форму в её колонке */
    }

    .side-form-title {
        font-size: 28px; /* Увеличено */
        font-weight: 800;
        margin-bottom: 28px;
        color: var(--text);
        line-height: 1.1;
        position: relative;
    }

    .form-group {
        margin-bottom: 12px;
    }

    .form-label {
        display: block;
        font-size: 15px;
        font-weight: 500;
        color: var(--text);
        margin-bottom: 8px;
    }

    .form-input {
        width: 100%;
        background: theme('colors.slate.50');
        border: 1px solid theme('colors.slate.200');
        border-radius: 12px;
        padding: 14px 18px; /* Увеличено */
        font-size: 16px; /* Увеличено */
        color: theme('colors.neutral.900');
        transition: all 0.2s;
    }

    .form-input:focus {
        outline: none;
        border-color: theme('colors.sirius-red');
        box-shadow: 0 0 0 3px theme('colors.sirius-red / 10%');
    }

    .form-input::placeholder {
        color: theme('colors.slate.400');
    }

    .form-textarea {
        resize: none;
        height: 80px;
    }

    .btn-side-red {
        width: 100%;
        background: theme('colors.sirius-red');
        color: theme('colors.white');
        border: none;
        border-radius: 12px;
        padding: 14px;
        font-size: 15px;
        font-weight: 700;
        cursor: pointer;
        transition: all 0.3s;
        margin-top: 4px;
        box-shadow: 0 4px 15px theme('colors.sirius-red / 20%');
    }

    .btn-side-red:hover {
        background: theme('colors.rose.500');
        transform: translateY(-2px);
        box-shadow: 0 8px 20px theme('colors.sirius-red / 30%');
    }

    .btn-side-red:active {
        background: theme('colors.rose.500');
    }
    /* ── FLOATING TAB ── */
    .side-tab {
        position: fixed;
        right: 0;
        top: 50%;
        transform: translateY(-50%) translateX(100%);
        background: theme('colors.sirius-red');
        color: theme('colors.white');
        padding: 20px 8px;
        cursor: pointer;
        z-index: 2000;
        border-radius: 8px 0 0 8px;
        writing-mode: vertical-rl;
        text-orientation: mixed;
        font-weight: 700;
        font-size: 14px;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        box-shadow: -2px 0 10px theme('colors.black / 20%');
        transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .side-tab.is-visible {
        transform: translateY(-50%) translateX(0);
    }

    .side-tab:hover {
        background: theme('colors.rose.500');
        padding-right: 12px;
    }

    .side-tab i {
        writing-mode: horizontal-tb;
        font-size: 1.2rem;
        margin-bottom: 5px;
    }

    @media (max-width: 1850px) {
        .container.section-with-sidebar {
            max-width: 1600px;
        }
        .section-with-sidebar {
            gap: 100px;
        }
    }

    @media (max-width: 1700px) {
        .container.section-with-sidebar {
            max-width: 1440px;
        }
        .section-with-sidebar {
            gap: 60px;
        }
    }

    @media (max-width: 1550px) {
        .container.section-with-sidebar {
            max-width: 1280px;
        }
        .section-with-sidebar {
            gap: 40px;
        }
    }


    @media (max-width: 1400px) {
        .main-column .grid-4 {
            grid-template-columns: repeat(3, 1fr);
        }
    }

    @media (max-width: 1600px) {
        .container.section-with-sidebar {
            max-width: 1280px;
        }
        .section-with-sidebar {
            gap: 30px;
        }
    }

    /* ── PROCESS SLIDER (LIKE SCREENSHOT) ── */
    .process-slider-container {
        position: relative;
        margin-top: 40px;
        padding-bottom: 0;
    }

    .process-track-wrapper {
        overflow-x: auto;
        padding: 20px 0;
        scrollbar-width: none;
        -ms-overflow-style: none;
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory;
    }

    .process-track-wrapper::-webkit-scrollbar {
        display: none;
    }

    .process-track {
        display: flex;
        gap: 0;
        align-items: center;
    }

    .process-step-card-wrap {
        display: flex;
        align-items: center;
        flex-shrink: 0;
        scroll-snap-align: center;
    }

    .process-step-card {
        width: 300px;
        background: var(--bg2);
        border: 1px solid var(--border);
        border-radius: 20px;
        padding: 40px 24px;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        min-height: 280px;
        transition: transform 0.3s ease, border-color 0.3s ease;
        box-shadow: var(--shadow);
    }

    .process-step-card:hover {
        border-color: var(--accent2);
        transform: translateY(-5px);
    }

    .process-step-number {
        width: 50px;
        height: 50px;
        background: var(--accent);
        color: theme('colors.white');
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 20px;
        font-weight: 700;
        margin-bottom: 24px;
        box-shadow: 0 4px 15px theme('colors.sirius-azure / 30%');
    }

    .process-step-title {
        font-size: 1.1rem;
        font-weight: 700;
        color: var(--text);
        margin-bottom: 12px;
        line-height: 1.4;
    }

    .process-step-desc {
        color: var(--muted);
        font-size: 0.9rem;
        line-height: 1.5;
    }

    .process-arrow {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 50px;
        color: var(--accent);
        opacity: 0.4;
    }

    .process-controls {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 20px;
        margin-top: 20px;
    }

    .process-nav-group {
        display: flex;
        align-items: center;
        background: var(--bg3);
        padding: 6px 16px;
        border-radius: 100px;
        gap: 16px;
        border: 1px solid var(--border);
    }

    .process-nav-btn {
        width: 32px;
        height: 32px;
        border-radius: 50%;
        background: var(--accent);
        color: theme('colors.white');
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        border: none;
        transition: all 0.2s;
    }

    .process-nav-btn:hover {
        background: var(--accent2);
        transform: scale(1.1);
    }

    .process-dots {
        display: flex;
        gap: 8px;
        align-items: center;
    }

    .process-dot {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: transparent;
        border: 1px solid var(--accent);
        cursor: pointer;
        transition: all 0.3s;
        opacity: 0.5;
    }

    .process-dot.active {
        background: var(--accent);
        transform: scale(1.2);
        opacity: 1;
    }

    @media (max-width: 768px) {
        .process-step-card {
            width: 260px;
            min-height: 250px;
        }
        .process-arrow {
            width: 30px;
        }
    }

/* From service_page.html */
.sticky-grid-wrapper {
            display: grid;
            grid-template-columns: 1fr 940px 380px 1fr;
            column-gap: 80px;
            width: 100%;
            position: relative;
        }
        .main-column-premium {
            grid-column: 2;
            min-width: 0;
            padding-top: 2rem;
            padding-bottom: 2rem;
        }
        .sidebar-column-premium {
            grid-column: 3;
            grid-row: 1 / span 100;
            position: sticky;
            top: 90px;
            height: min-content;
            z-index: 40;
            padding-top: 2rem;
        }
        @media (max-width: 1600px) {
            .sticky-grid-wrapper {
                grid-template-columns: 1fr 800px 380px 1fr;
                column-gap: 40px;
            }
        }
        @media (max-width: 1440px) {
            .sticky-grid-wrapper {
                grid-template-columns: 60px 1fr 380px 60px;
                column-gap: 40px;
            }
        }
        @media (max-width: 1100px) {
            .sticky-grid-wrapper {
                display: flex;
                flex-direction: column;
                padding: 0 20px;
            }
            .sidebar-column-premium {
                position: static;
                width: 100%;
                order: 2;
                margin-top: 40px;
                padding: 0;
            }
            .main-column-premium {
                width: 100%;
                padding: 0;
            }
        }

/* From markirovka_tovarov.html */
#hero-markirovka {
        background-color: theme('colors.slate.900') !important;
        background-image: radial-gradient(circle at 70% 30%, theme('colors.sirius-azure / 20%') 0%, transparent 70%) !important;
    }
    #hero-markirovka::before, 
    #hero-markirovka::after {
        display: none !important;
    }

/* From markirovka_tovarov.html */
/* === PREMIUM LAYOUT: точная копия архитектуры прототипа === */
        .sticky-grid-wrapper {
            display: grid;
            grid-template-columns: 1fr 940px 380px 1fr;
            column-gap: 80px;
            width: 100%;
            position: relative;
            background-color: var(--bg1);
        }
        .main-column-premium {
            grid-column: 2;
            min-width: 0;
            padding-top: 2rem;
            padding-bottom: 2rem;
        }
        .sidebar-column-premium {
            grid-column: 3;
            grid-row: 1 / span 100;
            position: sticky;
            top: 90px;
            height: min-content;
            z-index: 40;
            padding-top: 2rem;
        }
        @media (max-width: 1600px) {
            .sticky-grid-wrapper {
                grid-template-columns: 1fr 800px 380px 1fr;
                column-gap: 40px;
            }
        }
        @media (max-width: 1440px) {
            .sticky-grid-wrapper {
                grid-template-columns: 60px 1fr 380px 60px;
                column-gap: 40px;
            }
        }
        @media (max-width: 1100px) {
            .sticky-grid-wrapper {
                display: flex;
                flex-direction: column;
                padding: 0 20px;
            }
            .sidebar-column-premium {
                position: static;
                width: 100%;
                order: 2;
                margin-top: 40px;
                padding: 0;
            }
            .main-column-premium {
                width: 100%;
                padding: 0;
            }
        }

/* From markirovka_tovarov.html */
/* ===== FAQ Modern Premium (Option 1) - Re-Restored ===== */
    .faq-list {
        display: flex;
        flex-direction: column;
        gap: 16px;
    }

    .faq-item {
        border: 1px solid var(--border);
        border-radius: 20px;
        margin-bottom: 0;
        overflow: hidden;
        background: var(--bg2);
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        box-shadow: 0 4px 6px -1px theme('colors.black / 5%'), 0 2px 4px -1px theme('colors.black / 3%');
    }
    
    .faq-item:hover {
        border-color: theme('colors.blue.500 / 20%');
        box-shadow: 0 10px 15px -3px theme('colors.sirius-azure / 5%');
        transform: translateY(-1px);
    }

    .faq-item[open] {
        border-color: theme('colors.blue.500');
        box-shadow: 0 20px 25px -5px theme('colors.sirius-azure / 10%');
    }

    .faq-item summary {
        list-style: none;
        padding: 24px 30px;
        font-weight: 700;
        font-size: 18px;
        color: var(--text);
        cursor: pointer;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 10px;
        transition: color 0.2s;
        outline: none;
        user-select: none;
    }

    .faq-item[open] summary {
        color: theme('colors.blue.600');
        padding-bottom: 12px;
    }

    .faq-item summary::-webkit-details-marker {
        display: none;
    }

    .faq-icon-wrapper {
        width: 32px;
        height: 32px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: var(--bg-muted);
        border-radius: 50%;
        color: var(--muted);
        transition: all 0.3s ease;
    }

    .faq-item[open] .faq-icon-wrapper {
        background: theme('colors.blue.600');
        color: theme('colors.white');
        transform: rotate(45deg);
    }

    .faq-content {
        padding: 0 30px 30px 30px;
        color: theme('colors.slate.600');
        font-size: 16px;
        line-height: 1.6;
        animation: slideDown 0.3s ease-out;
    }

    @keyframes slideDown {
        from { opacity: 0; transform: translateY(-10px); }
        to { opacity: 1; transform: translateY(0); }
    }

    /* ===== Knowledge Hub V4 (Static Vertical Flow) ===== */
    .knowledge-hub-v4 {
        margin-top: 40px;
        margin-bottom: 80px;
        border: 1px solid theme('colors.slate.200');
        border-radius: 2.5rem;
        padding: 48px;
        background: theme('colors.white');
        box-shadow: 0 10px 15px -3px theme('colors.black / 3%'), 0 4px 6px -4px theme('colors.black / 2%');
        display: flex;
        flex-direction: column;
        gap: 24px;
    }

    .kh-main-title {
        font-size: 28px;
        font-weight: 900;
        color: theme('colors.slate.800');
        margin-bottom: 24px;
        letter-spacing: -0.03em;
        text-align: left;
    }

    @media (max-width: 768px) {
        .knowledge-hub-v4 {
            padding: 30px 20px;
            border-radius: 1.5rem;
        }
    }

    .kh-section {
        background: theme('colors.white');
        border: 1px solid theme('colors.slate.200');
        border-radius: 1.5rem;
        padding: 30px;
        box-shadow: 0 4px 6px -1px theme('colors.black / 5%'), 0 2px 4px -1px theme('colors.black / 3%');
        transition: all 0.3s ease;
        display: flex !important;
        align-items: flex-start !important;
        gap: 16px !important;
        margin-bottom: 24px;
    }

    .kh-section:hover {
        border-color: theme('colors.blue.500 / 20%');
        box-shadow: 0 10px 15px -3px theme('colors.sirius-azure / 8%');
        transform: translateY(-2px);
    }

    .kh-indicator {
        width: 6px !important;
        min-width: 6px !important;
        background: linear-gradient(to bottom, theme('colors.blue.600'), theme('colors.amber.400')) !important;
        border-radius: 99px !important;
        flex-shrink: 0 !important;
        align-self: stretch !important;
        margin-top: 4px !important;
        margin-bottom: 4px !important;
        display: block !important;
    }

    .kh-content-wrap {
        flex: 1 !important;
        font-size: 17px !important;
        line-height: 1.6 !important;
        color: theme('colors.slate.600') !important;
        text-align: left !important;
    }

    .kh-header {
        display: block !important;
        font-size: 20px !important;
        font-weight: 800 !important;
        color: theme('colors.slate.800') !important;
        margin-bottom: 12px !important;
        padding: 0 !important;
        letter-spacing: -0.02em;
        line-height: 1.3;
    }

    .kh-body {
        display: block !important;
        font-size: 17px;
        line-height: 1.7;
        color: theme('colors.slate.600');
    }

    .kh-body p {
        display: block !important;
        margin-bottom: 1rem !important;
    }

    .kh-body p:last-child {
        margin-bottom: 0 !important;
    }

    .kh-body ul {
        list-style: none;
        padding: 0;
        margin: 16px 0;
    }

    .kh-body li {
        position: relative;
        padding-left: 24px;
        margin-bottom: 12px;
    }

    .kh-body li::before {
        content: "—";
        position: absolute;
        left: 0;
        color: theme('colors.blue.600');
        font-weight: bold;
    }

    .kh-sub-label {
        font-weight: 700;
        color: theme('colors.slate.800');
        margin-top: 20px;
        display: block;
    }

    /* ===== Responsibility Section (Fines) ===== */
    .responsibility-section {
        margin-bottom: 80px;
        text-align: center;
    }

    .resp-grid {
        display: flex;
        flex-direction: column;
        gap: 40px;
        margin-top: 50px;
        text-align: left;
        max-width: 800px;
        margin-left: auto;
        margin-right: auto;
    }

    .resp-item {
        display: flex;
        gap: 20px;
        align-items: flex-start;
    }

    .resp-number {
        width: 42px;
        height: 42px;
        min-width: 42px;
        background: theme('colors.sirius-yellow');
        color: theme('colors.white');
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 900;
        font-size: 17px;
        box-shadow: 0 4px 6px -1px theme('colors.sirius-yellow / 40%');
    }

    .resp-title {
        font-size: 17px;
        font-weight: 800;
        color: theme('colors.slate.800');
        margin-bottom: 12px;
        line-height: 1.3;
    }

    .resp-text {
        font-size: 15px;
        line-height: 1.6;
        color: theme('colors.slate.600');
    }

    .badge-premium {
        display: inline-flex;
        align-items: center;
        padding: 0.5rem 1.25rem;
        border-radius: 9999px;
        font-size: 14px !important;
        font-weight: 700;
        border-width: 1px;
        transition: all 0.3s;
    }

    .badge-blue {
        background: theme('colors.sirius-azure / 20%') !important;
        color: theme('colors.blue.500') !important;
        border-color: theme('colors.sirius-azure / 40%') !important;
    }

    .badge-emerald {
        background: theme('colors.sirius-green / 20%') !important;
        color: theme('colors.emerald.500') !important;
        border-color: theme('colors.sirius-green / 40%') !important;
    }

    .badge-orange {
        background: theme('colors.amber.500 / 20%') !important;
        color: theme('colors.orange.500') !important;
        border-color: theme('colors.amber.500 / 40%') !important;
    }

    .badge-gray {
        background: theme('colors.white / 10%') !important;
        color: theme('colors.slate.300') !important;
        border-color: theme('colors.white / 20%') !important;
    }

    .markirovka-premium h1, .markirovka-premium h2, .markirovka-premium h3 {
        font-family: 'Inter', sans-serif;
    }
    
    .animate-float {
        animation: float 6s ease-in-out infinite;
    }
    
    @keyframes float {
        0%, 100% { transform: translateY(0); }
        50% { transform: translateY(-20px); }
    }
    
    .pulse-dot {
        animation: pulse 2s infinite;
    }
    
    @keyframes pulse {
        0% { box-shadow: 0 0 0 0 theme('colors.sirius-yellow / 70%'); }
        70% { box-shadow: 0 0 0 15px theme('colors.sirius-yellow / 0%'); }
        100% { box-shadow: 0 0 0 0 theme('colors.sirius-yellow / 0%'); }
    }

    .glass-card-dark {
        background: theme('colors.slate.800 / 40%');
        border: 1px solid theme('colors.white / 8%');
        box-shadow: 0 40px 100px -20px theme('colors.black / 50%'), inset 0 1px 1px theme('colors.white / 5%');
        backdrop-filter: blur(12px);
    }



/* From article_page.html */
/* REFRESH_TIMESTAMP: 2026_03_25_23_02_V12 */
    /* Removed conflicting :root block from article_page.html */

    /* Balanced Asymmetric: Smaller Content, Shifted Right */
    .sticky-wrapper-article {
        display: grid;
        grid-template-columns: minmax(20px, 1fr) minmax(0, 1200px) 380px minmax(20px, 1fr);
        column-gap: 80px;
        width: 100%;
        position: relative;
        padding-bottom: 120px;
    }

    /* Content expands & centers when form is collapsed */
    .sticky-wrapper-article.form-is-collapsed {
        grid-template-columns: 1fr 1000px 0 0 1fr;
        /* Centered 1000px block */
        transition: grid-template-columns 0.4s ease;
        /* Fluid expansion */
    }

    #hero-article {
        grid-column: 2;
        grid-row: 1;
        padding: 40px 0;
    }

    .sidebar-column-article {
        grid-column: 3;
        grid-row: 1 / span 100;
        position: sticky;
        top: 134px !important;
        height: min-content;
        z-index: 100;
        /* padding-top: 40px; */
    }

    .main-column-article {
        grid-column: 2;
        grid-row: 2;
    }

    /* Modal (Popup) mode for sidebar */
    body.sidebar-manual-open .sidebar-column-article {
        position: fixed !important;
        right: 0 !important;
        top: 0 !important;
        height: 100vh !important;
        width: 100vw !important;
        max-width: 500px !important;
        background: theme('colors.slate.900') !important;
        box-shadow: -20px 0 60px theme('colors.black / 50%') !important;
        z-index: 10001 !important;
        padding: 40px !important;
        justify-content: center !important;
        opacity: 1 !important;
        transform: translateX(0) !important;
        visibility: visible !important;
    }

    body.sidebar-manual-open::before {
        content: '';
        position: fixed;
        inset: 0;
        background: theme('colors.slate.900 / 70%');
        backdrop-filter: blur(8px);
        z-index: 10000;
    }

    /* BP Exclusive: Static Sidebar (Aligned with H1) */
    .page-1c-accounting-free .sidebar-column-article {
        position: relative !important;
        margin-top: 48px !important;
        top: auto !important;
    }

    /* Responsive for Laptops */
    @media (max-width: 1440px) {
        .sticky-wrapper-article {
            grid-template-columns: 60px 1fr 380px 60px;
            column-gap: 40px;
        }
    }

    /* Mobile & Laptop Breakpoints */
    @media (max-width: 1240px) {
        .sticky-wrapper-article {
            grid-template-columns: 1fr !important;
            padding: 0 20px !important;
        }

        .main-column-article {
            width: 100% !important;
            order: 2;
        }

        .hero-bg-article {
            grid-column: 1 !important;
        }

        .sidebar-column-article {
            position: fixed !important;
            top: -200% !important; /* Far off-screen instead of hidden */
            left: 50% !important;
            right: auto !important;
            width: min(460px, 92vw) !important;
            height: auto !important;
            max-height: 90vh !important;
            background: theme('colors.white') !important;
            z-index: 2001 !important;
            padding: 30px 24px 30px !important;
            box-shadow: 0 20px 50px theme('colors.black / 30%') !important;
            border-radius: 24px !important;
            transform: translate(-50%, -45%) scale(0.95) !important;
            opacity: 0.01 !important; /* Nearly transparent but visible for Google */
            visibility: visible !important;
            pointer-events: none !important;
            transition: all 0.45s cubic-bezier(0.16, 1, 0.3, 1) !important;
            display: block !important;
            overflow-y: auto !important;
            -webkit-overflow-scrolling: touch;
        }

        /* Modal Overlay */
        .sidebar-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: theme('colors.slate.900 / 60%');
            backdrop-filter: blur(8px);
            -webkit-backdrop-filter: blur(8px);
            z-index: 2000;
            opacity: 0;
            visibility: hidden;
            transition: all 0.3s ease;
        }

        body.sidebar-manual-open .sidebar-overlay {
            opacity: 1;
            visibility: visible;
        }

        body.sidebar-manual-open .sidebar-column-article {
            top: 50% !important; /* Bring back to center */
            transform: translate(-50%, -50%) scale(1) !important;
            opacity: 1 !important;
            visibility: visible !important;
            pointer-events: auto !important;
        }

        /* Restore reCAPTCHA badge visibility */
        /* It will handle its own positioning by default */

        .side-tab {
            display: flex !important;
            bottom: 30px !important;
            top: auto !important;
            right: 0 !important;
            transform: translateX(0) !important;
            border-radius: 12px 0 0 12px !important;
            background: theme('colors.sirius-red') !important;
            z-index: 999;
        }
        
        .sidebar-manual-open .side-tab {
            opacity: 0;
            pointer-events: none;
        }
    }

    /* Sidebar state is now static on Hero */
    .sticky-wrapper-article.form-is-collapsed .sidebar-column-article {
        display: none !important; /* Safety for existing classes, though we'll remove them */
    }

    /* Hero Background (Midnight Premium) */
    .hero-bg-article {
        grid-column: 1 / -1;
        grid-row: 1;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 600px !important; 
        background-color: theme('colors.slate.900') !important;
        background-image: radial-gradient(circle at 70% 30%, theme('colors.sirius-azure / 15%') 0%, transparent 70%) !important;
        border-bottom: 1px solid theme('colors.white / 5%') !important;
        z-index: -1 !important;
    }

    #hero-article {
        grid-column: 2;
        grid-row: 1;
        min-height: 600px;
        padding: 40px 0 60px !important;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        color: theme('colors.white');
    }

    /* Content wrapper instead of glass card */
    .hero-content-wrapper-article {
        max-width: 1000px;
        margin-left: 100px;
        z-index: 10;
        padding-bottom: 60px;
    }

    .badge-premium {
        display: inline-flex;
        align-items: center;
        padding: 10px 18px;
        border-radius: 99px;
        font-size: 14px;
        font-weight: 800;
        letter-spacing: 0.04em;
        text-transform: uppercase;
        margin-bottom: 32px;
        background: theme('colors.white / 5%');
        border: 1px solid theme('colors.white / 15%');
        color: theme('colors.white');
        box-shadow: 0 4px 20px theme('colors.black / 20%');
    }
    
    .badge-blue { color: theme('colors.blue.400'); background: theme('colors.blue.600 / 10%'); border-color: theme('colors.blue.600 / 20%'); }
    .badge-green { color: theme('colors.emerald.400'); background: theme('colors.emerald.600 / 10%'); border-color: theme('colors.emerald.600 / 20%'); }

    #hero-article .hero-h1 {
        font-size: 3.8rem;
        font-weight: 850;
        color: theme('colors.white') !important;
        margin-bottom: 24px;
        line-height: 1.05;
        letter-spacing: -0.02em;
    }

    #hero-article .hero-h1 b, #hero-article .hero-h1 strong {
        color: theme('colors.sirius-yellow') !important;
    }

    #hero-article .hero-sub {
        font-size: 1.4rem;
        color: theme('colors.white / 80%') !important;
        margin-bottom: 0;
        font-weight: 400;
        line-height: 1.5;
        max-width: 700px;
    }

    .benefits-mini {
        background: theme('colors.stone.50');
        /* NEUTRAL WARM STONE TINT - SUBTLE AND CALM */
        border: 1px solid var(--border);
        padding: 32px;
        border-radius: 24px;
        box-shadow: 0 10px 30px -10px theme('colors.black / 5%');
        margin-bottom: 40px;
    }

    .benefits-mini p {
        margin-bottom: 18px;
        line-height: 1.6;
    }

    .benefits-mini p:last-child {
        margin-bottom: 0;
    }

    /* TOC Timeline Style */
    .toc-vertical-list {
        display: flex;
        flex-direction: column;
        gap: 0;
        padding: 0 0 20px;
        /* Reduced top padding */
        max-width: 600px;
        margin: 0 auto;
    }

    .toc-v-item {
        display: flex;
        align-items: center;
        gap: 24px;
        text-decoration: none;
        color: var(--text);
        position: relative;
        padding-bottom: 48px;
        transition: 0.2s;
    }

    .toc-v-item:hover .toc-v-text {
        color: var(--accent);
    }

    /* Vertical line between circles */
    .toc-v-item::before {
        content: '';
        position: absolute;
        left: 19px;
        top: 40px;
        bottom: 0px;
        width: 2px;
        background: theme('colors.slate.200');
        z-index: 0;
    }

    .toc-v-item:last-child::before {
        display: none;
    }

    .toc-v-num {
        width: 40px;
        height: 40px;
        background: theme('colors.slate.800');
        color: theme('colors.white');
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 700;
        font-size: 1.1rem;
        flex-shrink: 0;
        position: relative;
        z-index: 1;
        box-shadow: 0 4px 10px theme('colors.black / 10%');
    }

    .toc-v-text {
        font-weight: 800;
        font-size: 1.2rem;
        line-height: 1.2;
        color: theme('colors.slate.700');
    }

    /* Form Styling */
    .hero-form-card-article {
        background: theme('colors.white / 3%');
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        border: 1px solid theme('colors.white / 10%');
        padding: 24px;
        border-radius: 20px;
        box-shadow: 0 10px 30px theme('colors.black / 40%');
        transition: 0.4s cubic-bezier(0.16, 1, 0.3, 1);
        margin-top: 5px !important;
        height: min-content;
        z-index: 50;
        opacity: 1 !important; /* Stay visible on hero */
        transform: none !important;
        pointer-events: auto !important;
    }

    .article-form-group {
        margin-bottom: 24px;
    }

    .article-form-label {
        display: block;
        font-weight: 700;
        font-size: 1.1rem;
        margin-bottom: 4px;
        color: theme('colors.white') !important;
    }

    .article-form-hint {
        font-size: 0.85rem;
        color: theme('colors.white / 70%');
        margin-bottom: 8px;
        line-height: 1.4;
    }

    .article-form-input {
        width: 100%;
        padding: 14px 18px;
        background: theme('colors.white');
        border: 1px solid var(--border);
        border-radius: 12px;
        font-size: 1rem;
        box-shadow: 0 1px 2px theme('colors.black / 5%');
    }

    .btn-cta-article {
        background: theme('colors.sirius-red');
        /* Back to Red */
        color: theme('colors.white');
        width: 100%;
        padding: 18px;
        border-radius: 14px;
        font-weight: 800;
        border: none;
        cursor: pointer;
        transition: 0.2s;
        margin-top: 10px;
        font-size: 1.25rem;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        box-shadow: 0 4px 12px theme('colors.sirius-red / 30%');
    }

    .btn-cta-article:hover {
        background: theme('colors.rose.600');
        transform: translateY(-1px);
    }

    .btn-cta-article:active {
        background: theme('colors.rose.600');
    }

    /* Instructions Original Styles */
    .instr-card {
        background: theme('colors.white');
        border: 1px solid var(--border);
        border-radius: 20px;
        padding: 24px 32px;
        margin-bottom: 60px;
        /* Increased spacing between blocks */
        box-shadow: 0 4px 6px -1px theme('colors.black / 5%');
    }

    .instr-card-compact {
        @apply mb-3;
    }

    .instr-step {
        display: inline-block;
        padding: 4px 12px;
        background: var(--accent);
        color: theme('colors.white');
        border-radius: 99px;
        font-size: 0.8rem;
        font-weight: 700;
        margin-bottom: 16px;
        text-transform: uppercase;
        letter-spacing: 0.05em;
    }

    .instr-title {
        font-size: 1.6rem;
        font-weight: 850;
        margin-bottom: 12px;
        line-height: 1.2;
        letter-spacing: -0.02em;
    }

    .instr-text {
        font-size: 1rem;
        line-height: 1.5;
        color: theme('colors.slate.700');
    }

    .instr-img {
        max-width: 60%;
        /* Reduced from 80% to 60% */
        display: block;
        margin: 20px auto 0;
        border-radius: 12px;
        border: 1px solid var(--border);
        cursor: zoom-in;
    }

    /* Modal Zoom Styles */
    .modal-zoom {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: theme('colors.slate.900 / 95%');
        display: none;
        align-items: center;
        justify-content: center;
        z-index: 9999;
        cursor: zoom-out;
    }

    .modal-zoom.active {
        display: flex;
    }

    .modal-zoom img {
        max-width: 90%;
        max-height: 90%;
        border-radius: 12px;
        box-shadow: 0 20px 50px theme('colors.black / 50%');
    }


        /* Hero form card inside drawer */
        .hero-form-card-article {
            margin-top: 0 !important;
            opacity: 1 !important;
            transform: none !important;
            pointer-events: auto !important;
        }

        .hero-bg-article {
            grid-column: 1 !important;
        }

        /* Overlay when sidebar is open */
        .sticky-wrapper-article::after {
            content: '';
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: theme('colors.slate.900 / 60%');
            backdrop-filter: blur(4px);
            z-index: 1000;
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.4s;
        }

        .sticky-wrapper-article.sidebar-manual-open::after {
            opacity: 1;
            pointer-events: auto;
        }

/* From article_page.html */
/* Отступы между абзацами для лучшей читимости */
    .hero-glass-card p,
    .instr-text p,
    .main-column-article p,
    .benefits-mini div {
        margin-bottom: 1.25rem;
    }

    .hero-glass-card p:last-child,
    .instr-text p:last-child,
    .main-column-article p:last-child {
        margin-bottom: 0;
    }

    /* Классические ссылки */
    .demo-page a:not(.toc-v-item):not(.btn-cta-article) {
        color: var(--accent);
        text-decoration: underline;
    }

/* From article_page.html */
@media (max-width: 1240px) {
        .mobile-only-close {
            display: block !important;
            position: absolute;
            top: 15px;
            right: 15px;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            background: theme('colors.slate.100');
            border: none;
            font-size: 24px;
            line-height: 1;
            color: theme('colors.slate.500');
            cursor: pointer;
            z-index: 10;
        }
    }

/* From universal_service_page.html */
#hero-universal {
        background-color: theme('colors.slate.900') !important;
        background-image: radial-gradient(circle at 70% 30%, theme('colors.sirius-azure / 15%') 0%, transparent 70%) !important;
        color: theme('colors.white') !important;
    }
    .badge-premium {
        display: inline-flex;
        align-items: center;
        padding: 0.5rem 1.25rem;
        border-radius: 9999px;
        font-size: 14px;
        font-weight: 700;
        border: 1px solid transparent;
        transition: all 0.3s;
    }
    .badge-blue { background: theme('colors.sirius-azure / 20%'); color: theme('colors.blue.500'); border-color: theme('colors.sirius-azure / 40%'); }
    .badge-emerald { background: theme('colors.sirius-green / 20%'); color: theme('colors.emerald.500'); border-color: theme('colors.sirius-green / 40%'); }
    .badge-orange { background: theme('colors.amber.500 / 20%'); color: theme('colors.orange.500'); border-color: theme('colors.amber.500 / 40%'); }
    
    .universal-service-page h1, .universal-service-page h2, .universal-service-page h3 {
        font-family: 'Inter', sans-serif;
    }
    
    .animate-float {
        animation: float 6s ease-in-out infinite;
    }
    @keyframes float {
        0%, 100% { transform: translateY(0); }
        50% { transform: translateY(-20px); }
    }

    .kh-section {
        background: theme('colors.white');
        border: 1px solid theme('colors.slate.200');
        border-radius: 1.5rem;
        padding: 30px;
        box-shadow: 0 4px 6px -1px theme('colors.black / 5%');
        transition: all 0.3s ease;
        display: flex;
        align-items: flex-start;
        gap: 16px;
        margin-bottom: 24px;
    }
    .kh-indicator {
        width: 6px;
        min-width: 6px;
        background: linear-gradient(to bottom, theme('colors.blue.600'), theme('colors.amber.400'));
        border-radius: 99px;
        align-self: stretch;
        margin-top: 4px;
        margin-bottom: 4px;
    }
    
    .faq-list { display: flex; flex-direction: column; gap: 16px; }
    .faq-item { border: 1px solid var(--border); border-radius: 20px; overflow: hidden; background: var(--bg2); }
    .faq-item summary { list-style: none; padding: 24px 30px; font-weight: 700; cursor: pointer; display: flex; justify-content: space-between; align-items: center; color: var(--text); }
    .faq-item[open] summary { color: theme('colors.blue.600'); padding-bottom: 12px; }
    .faq-content { padding: 0 30px 30px 30px; color: var(--muted); }

    /* Sidebar Styles */
    .univ-sidebar-card { background:var(--bg2); border-radius:1.5rem; padding:2rem; border:1px solid var(--border); box-shadow:0 10px 25px -5px theme('colors.black / 5%'); }
    .univ-sidebar-form-label { display:block; font-size:0.875rem; font-weight:700; color:var(--text); margin-bottom:0.5rem; }
    .univ-sidebar-input { width:100%; padding:0.75rem 1rem; background:var(--bg-muted); border:1px solid var(--border); border-radius:0.75rem; font-size:0.875rem; color: var(--text); transition:all 0.3s; margin-bottom:1rem; }
    .univ-sidebar-input:focus { background:var(--bg2); border-color:theme('colors.blue.600'); outline:none; box-shadow:0 0 0 3px theme('colors.sirius-azure / 10%'); }
    .univ-sidebar-contact-item { display:flex; gap:1rem; align-items:flex-start; margin-bottom:1.5rem; }
    .univ-sidebar-contact-item svg { width:1.25rem; height:1.25rem; color:theme('colors.orange.500'); flex-shrink:0; margin-top:0.25rem; }
    [x-cloak] { display: none !important; }
    
    .calc-badge {
        position: absolute;
        top: -25px;
        left: 50%;
        transform: translateX(-50%) translateY(5px);
        padding: 5px 12px;
        font-size: 11px;
        font-weight: 900;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        border-radius: 8px;
        box-shadow: 0 4px 15px theme('colors.orange.600 / 30%');
        z-index: 50;
        white-space: nowrap;
        pointer-events: none;
        opacity: 0;
        transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        background-color: theme('colors.sirius-orange') !important;
        color: white !important;
    }
    .group:hover .calc-badge {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
    }
    .pricing-btn-active {
        background-color: theme('colors.sirius-red') !important;
        color: white !important;
        box-shadow: 0 20px 25px -5px theme('colors.sirius-red / 40%') !important;
    }
    .scale-label { transition: all 0.2s; white-space: nowrap; }
    .scale-label-big { font-size: 13px !important; color: theme('colors.slate.900') !important; font-weight: 900 !important; opacity: 1 !important; }

/* From universal_service_page.html */
/* === PREMIUM LAYOUT: точная копия архитектуры прототипа === */
        .sticky-grid-wrapper {
            display: grid;
            grid-template-columns: minmax(20px, 1fr) minmax(0, 1200px) 380px minmax(20px, 1fr);
            column-gap: 80px;
            width: 100%;
            position: relative;
        }
        .main-column-premium {
            grid-column: 2;
            min-width: 0;
        }
        .sidebar-column-premium {
            grid-column: 3;
            grid-row: 1 / span 100;
            position: sticky;
            top: 90px;
            height: min-content;
            z-index: 40;
            padding-top: 2rem;
        }

        @media (max-width: 1440px) {
            .sticky-grid-wrapper {
                grid-template-columns: 60px 1fr 380px 60px;
                column-gap: 40px;
            }
        }
        @media (max-width: 1100px) {
            .sticky-grid-wrapper {
                display: flex;
                flex-direction: column;
                padding: 0 20px;
            }
            .sidebar-column-premium {
                position: static;
                width: 100%;
                order: 2;
                margin-top: 40px;
                padding: 0;
            }
            .main-column-premium {
                width: 100%;
                padding: 0;
            }
        }

/* From universal_service_page.html */
.flip-card { perspective: 1000px; }
                    .flip-card-inner { transition: transform 0.7s; transform-style: preserve-3d; }
                    .flip-card:hover .flip-card-inner { transform: rotateY(180deg); }
                    .flip-card-front, .flip-card-back { backface-visibility: hidden; -webkit-backface-visibility: hidden; }
                    .flip-card-back { transform: rotateY(180deg); }

/* From universal_service_page.html */
.univ-instr-card { background:theme('colors.white'); border:1px solid theme('colors.slate.200'); border-radius:20px; padding:24px 32px; margin-bottom:60px; box-shadow:0 4px 6px -1px theme('colors.black / 5%'); }
                    .univ-instr-step { display:inline-block; padding:4px 12px; background:theme('colors.blue.600'); color:theme('colors.white'); border-radius:99px; font-size:.8rem; font-weight:700; margin-bottom:16px; text-transform:uppercase; letter-spacing:.05em; }
                    .univ-instr-title { font-size:1.6rem; font-weight:850; margin-bottom:12px; line-height:1.2; letter-spacing:-.02em; }
                    .univ-instr-text { font-size:1rem; line-height:1.5; color:theme('colors.slate.700'); }
                    .univ-instr-text p { margin-bottom:1.25rem; }
                    .univ-instr-text p:last-child { margin-bottom:0; }



/* From _features_tabs_content.html */
.tab-btn-active {
        background-color: theme('colors.slate.200') !important;
        color: theme('colors.blue.800') !important;
        font-weight: 800 !important;
        position: relative;
    }
    .tab-btn-inactive {
        background-color: theme('colors.slate.50');
        color: theme('colors.slate.500');
    }
    .tab-btn-inactive:hover {
        background-color: theme('colors.slate.100');
    }
    .tab-divider {
        width: 1px;
        height: 100%;
        background-color: theme('colors.slate.300');
    }


/* From implementation_faq.html */
.faq-list {
        max-width: 720px;
        margin: 24px auto 0
    }

    .faq-item {
        border: 1px solid var(--border);
        border-radius: 8px;
        overflow: hidden;
        margin-bottom: 8px
    }

    .faq-q {
        padding: 16px 20px;
        cursor: pointer;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 12px;
        user-select: none
    }

    .faq-icon {
        flex-shrink: 0;
        transition: transform .3s;
        color: var(--muted)
    }

    .faq-item.open .faq-icon {
        transform: rotate(45deg);
        color: var(--accent2)
    }

    .faq-a {
        max-height: 0;
        overflow: hidden;
        transition: max-height .3s cubic-bezier(0.4, 0, 0.2, 1), opacity .3s ease;
        opacity: 0;
    }

    .faq-item.open .faq-a {
        max-height: 600px;
        opacity: 1;
    }

    .faq-a-inner {
        min-height: 0;
        padding: 0 20px 20px;
        color: var(--muted);
        font-size: .95rem;
        line-height: 1.6
    }

/* From problems.html */
.flip-card { perspective: 1000px; }
    .flip-card-inner { transition: transform 0.7s; transform-style: preserve-3d; }
    .flip-card:hover .flip-card-inner { transform: rotateY(180deg); }
    .flip-card-front, .flip-card-back { backface-visibility: hidden; -webkit-backface-visibility: hidden; }
    .flip-card-back { transform: rotateY(180deg); }

/* From honeycomb_block.html */
/* ── Экосистема решений (Замощённые Соты) ── */
  .honeycomb-section {
    padding: 8rem 0 10rem;
    background: linear-gradient(155deg, theme('colors.slate.50') 0%, theme('colors.white') 100%);
    position: relative;
  }

  .dark .honeycomb-section {
    background: linear-gradient(155deg, theme('colors.slate.900') 0%, theme('colors.sirius.800') 100%);
  }

  .hc-container {
    position: relative;
    width: 100%;
    max-width: 800px;
    height: 800px;
    margin: 0 auto;
  }

  /* Масштабирование контейнера для узких экранов */
  @media (max-width: 768px) {
    .hc-container {
      transform: scale(0.85);
      margin-top: -40px;
      margin-bottom: -40px;
    }
  }

  @media (max-width: 580px) {
    .hc-container {
      transform: scale(0.65);
      margin-top: -100px;
      margin-bottom: -100px;
    }
  }

  @media (max-width: 440px) {
    .hc-container {
      transform: scale(0.5);
      margin-top: -160px;
      margin-bottom: -160px;
    }
  }

  .hc-node-pos {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 240px;
    height: 208px;
    margin-left: -120px;
    margin-top: -104px;
    z-index: 10;
    cursor: default;
  }

  .hc-scale-wrapper {
    width: 100%;
    height: 100%;
    transform: scale(0.96);
    transition: transform 0.4s cubic-bezier(.34, 1.56, .64, 1), filter 0.4s;
    filter: drop-shadow(0 4px 12px theme('colors.slate.900 / 6%'));
  }

  .dark .hc-scale-wrapper {
    filter: drop-shadow(0 4px 12px theme('colors.black / 30%'));
  }

  .hc-node-pos:hover .hc-scale-wrapper {
    transform: scale(1.02);
    filter: drop-shadow(0 12px 28px theme('colors.indigo.600 / 25%'));
  }

  .dark .hc-node-pos:hover .hc-scale-wrapper {
    filter: drop-shadow(0 12px 28px theme('colors.sky.400 / 25%'));
  }

  .hc-shape {
    width: 100%;
    height: 100%;
    clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 16px 28px;
    text-align: center;
    position: relative;
    background: theme('colors.slate.300');
  }

  .dark .hc-shape {
    background: theme('colors.white / 15%');
  }

  .hc-shape::before {
    content: '';
    position: absolute;
    inset: 1.5px;
    clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
    background: theme('colors.white');
    z-index: -1;
  }

  .dark .hc-shape::before {
    background: theme('colors.sirius.800');
  }

  .hc-star-point {
    position: absolute;
    top: -112px;
    left: 60px;
    width: 120px;
    height: 104px;
    clip-path: polygon(50% 0%, 100% 100%, 0% 100%);
    transform-origin: 50% 216px;
    z-index: -1;
  }
  .hc-star-point::before {
    content: '';
    position: absolute;
    inset: 0;
    clip-path: polygon(50% 3px, calc(100% - 2.5px) calc(100% - 1.5px), 2.5px calc(100% - 1.5px));
    z-index: -1;
  }

  .hc-dir-top .hc-star-point { transform: rotate(0deg); }
  .hc-dir-top-right .hc-star-point { transform: rotate(60deg); }
  .hc-dir-bottom-right .hc-star-point { transform: rotate(120deg); }
  .hc-dir-bottom .hc-star-point { transform: rotate(180deg); }
  .hc-dir-bottom-left .hc-star-point { transform: rotate(240deg); }
  .hc-dir-top-left .hc-star-point { transform: rotate(300deg); }
  .hc-center .hc-star-point { display: none; }

  @keyframes mobileFadeOut {
    0%, 35% { opacity: 1; transform: scale(1); }
    65%, 100% { opacity: 0; transform: scale(0.95); }
  }
  @keyframes mobileFadeIn {
    0%, 35% { opacity: 0; transform: scale(1.1); }
    65%, 100% { opacity: 1; transform: scale(1); }
  }
  @media (max-width: 1024px) {
    .mobile-hc-title {
      animation: mobileFadeOut 3.5s infinite alternate ease-in-out;
    }
    .mobile-hc-meme {
      animation: mobileFadeIn 3.5s infinite alternate ease-in-out;
    }
  }

  /* Центральная сота — акцентная (Кнопка "Сделать хорошо") */
  .hc-center {
    cursor: pointer;
  }
  .hc-center .hc-scale-wrapper {
    transform: scale(0.98);
    transition: all 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
  }
  .hc-center:hover .hc-scale-wrapper {
    transform: scale(0.96) translateY(2px);
    filter: drop-shadow(0 12px 28px theme('colors.rose.600 / 40%'));
  }
  .hc-center:active .hc-scale-wrapper {
    transform: scale(0.92) translateY(6px);
    filter: drop-shadow(0 4px 8px theme('colors.rose.600 / 30%'));
    transition: all 0.1s;
  }
  .hc-center .hc-shape {
    background: linear-gradient(135deg, theme('colors.amber.400'), theme('colors.red.400'));
  }
  .gradient-icon-orange {
    background: linear-gradient(135deg, theme('colors.orange.600'), theme('colors.rose.600'));
  }
  .hc-center .hc-shape::before {
    background: linear-gradient(135deg, theme('colors.orange.600'), theme('colors.rose.600'));
  }
  .dark .hc-center .hc-shape {
    background: linear-gradient(135deg, theme('colors.indigo.500'), theme('colors.sky.400'));
  }
  .dark .hc-center .hc-shape::before {
    background: linear-gradient(135deg, theme('colors.indigo.600'), theme('colors.sky.500'));
  }

  /* Пастельные цвета для светлой темы */
  .hc-c1 .hc-shape, .hc-c1 .hc-star-point { background: theme('colors.green.200'); } .hc-c1 .hc-shape::before, .hc-c1 .hc-star-point::before { background: theme('colors.green.50'); }
  .hc-c2 .hc-shape, .hc-c2 .hc-star-point { background: theme('colors.purple.200'); } .hc-c2 .hc-shape::before, .hc-c2 .hc-star-point::before { background: theme('colors.purple.50'); }
  .hc-c3 .hc-shape, .hc-c3 .hc-star-point { background: theme('colors.sky.200'); } .hc-c3 .hc-shape::before, .hc-c3 .hc-star-point::before { background: theme('colors.sky.50'); }
  .hc-c4 .hc-shape, .hc-c4 .hc-star-point { background: theme('colors.amber.200'); } .hc-c4 .hc-shape::before, .hc-c4 .hc-star-point::before { background: theme('colors.amber.50'); }
  .hc-c5 .hc-shape, .hc-c5 .hc-star-point { background: theme('colors.rose.200'); } .hc-c5 .hc-shape::before, .hc-c5 .hc-star-point::before { background: theme('colors.rose.50'); }
  .hc-c6 .hc-shape, .hc-c6 .hc-star-point { background: theme('colors.emerald.200'); } .hc-c6 .hc-shape::before, .hc-c6 .hc-star-point::before { background: theme('colors.emerald.50'); }

  /* В тёмной теме сбрасываем */
  .dark .hc-c1 .hc-shape, .dark .hc-c2 .hc-shape, .dark .hc-c3 .hc-shape,
  .dark .hc-c4 .hc-shape, .dark .hc-c5 .hc-shape, .dark .hc-c6 .hc-shape,
  .dark .hc-c1 .hc-star-point, .dark .hc-c2 .hc-star-point, .dark .hc-c3 .hc-star-point,
  .dark .hc-c4 .hc-star-point, .dark .hc-c5 .hc-star-point, .dark .hc-c6 .hc-star-point {
    background: theme('colors.white / 15%') !important;
  }
  .dark .hc-c1 .hc-shape::before, .dark .hc-c2 .hc-shape::before, .dark .hc-c3 .hc-shape::before,
  .dark .hc-c4 .hc-shape::before, .dark .hc-c5 .hc-shape::before, .dark .hc-c6 .hc-shape::before,
  .dark .hc-c1 .hc-star-point::before, .dark .hc-c2 .hc-star-point::before, .dark .hc-c3 .hc-star-point::before,
  .dark .hc-c4 .hc-star-point::before, .dark .hc-c5 .hc-star-point::before, .dark .hc-c6 .hc-star-point::before {
    background: theme('colors.sirius.800') !important;
  }

  .hc-section-title { color: theme('colors.slate.900'); }
  .dark .hc-section-title { color: theme('colors.slate.50'); }
  .hc-section-desc { color: theme('colors.slate.600'); }
  .dark .hc-section-desc { color: theme('colors.slate.400'); }

  .hc-title {
    font-family: 'Manrope', 'Inter', sans-serif;
    font-weight: 800;
    font-size: 14px;
    line-height: 1.25;
    text-transform: uppercase;
    margin-bottom: 6px;
    letter-spacing: 0.03em;
    color: theme('colors.slate.900');
  }
  .dark .hc-title { color: theme('colors.slate.50'); }

  .hc-desc {
    font-size: 12px;
    font-weight: 500;
    line-height: 1.35;
    color: theme('colors.slate.500');
  }
  .dark .hc-desc { color: theme('colors.slate.400'); }

  .hc-center .hc-title { font-size: 18px; color: theme('colors.white'); margin-bottom: 0; }
  .dark .hc-center .hc-title { color: theme('colors.white'); }

  /* ── ПОДМЕНЮ ВТОРОГО УРОВНЯ ── */
  .hc-submenu {
    position: absolute;
    pointer-events: none;
    opacity: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
    transition: all 0.3s cubic-bezier(.34, 1.56, .64, 1);
    padding: 20px;
    z-index: 50;
  }

  .hc-node-pos:hover .hc-submenu {
    pointer-events: auto;
    opacity: 1;
  }

  .hc-dir-top .hc-submenu { bottom: 80%; left: 50%; transform: translateX(-50%) translateY(15px); align-items: center; }
  .hc-dir-top:hover .hc-submenu { transform: translateX(-50%) translateY(0); }
  .hc-dir-bottom .hc-submenu { top: 80%; left: 50%; transform: translateX(-50%) translateY(-15px); align-items: center; }
  .hc-dir-bottom:hover .hc-submenu { transform: translateX(-50%) translateY(0); }
  .hc-dir-top-right .hc-submenu { bottom: 50%; left: 75%; transform: translateX(-15px) translateY(15px); align-items: flex-start; }
  .hc-dir-top-right:hover .hc-submenu { transform: translateX(0) translateY(0); }
  .hc-dir-bottom-right .hc-submenu { top: 50%; left: 75%; transform: translateX(-15px) translateY(-15px); align-items: flex-start; }
  .hc-dir-bottom-right:hover .hc-submenu { transform: translateX(0) translateY(0); }
  .hc-dir-top-left .hc-submenu { bottom: 50%; right: 75%; transform: translateX(15px) translateY(15px); align-items: flex-end; }
  .hc-dir-top-left:hover .hc-submenu { transform: translateX(0) translateY(0); }
  .hc-dir-bottom-left .hc-submenu { top: 50%; right: 75%; transform: translateX(15px) translateY(-15px); align-items: flex-end; }
  .hc-dir-bottom-left:hover .hc-submenu { transform: translateX(0) translateY(0); }

  .hc-submenu-link {
    display: inline-flex;
    white-space: nowrap;
    position: relative;
    padding: 8px 24px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.25s;
    background: theme('colors.slate.200 / 90%');
    color: theme('colors.slate.900');
    filter: drop-shadow(0 4px 6px theme('colors.black / 5%'));
    clip-path: polygon(12px 0%, calc(100% - 12px) 0%, 100% 50%, calc(100% - 12px) 100%, 12px 100%, 0% 50%);
    border: none;
    cursor: pointer;
  }
  .hc-submenu-link::before {
    content: '';
    position: absolute;
    inset: 1.5px;
    z-index: -1;
    background: theme('colors.white');
    clip-path: polygon(12px 0%, calc(100% - 12px) 0%, 100% 50%, calc(100% - 12px) 100%, 12px 100%, 0% 50%);
    transition: background 0.25s;
  }

  .hc-submenu-link:hover {
    background: theme('colors.orange.500');
    color: theme('colors.orange.600');
    filter: drop-shadow(0 0 12px theme('colors.orange.500 / 45%'));
    transform: scale(1.05);
  }
  .hc-submenu-link:hover::before { background: theme('colors.white'); }

  .dark .hc-submenu-link { background: theme('colors.white / 15%'); color: theme('colors.slate.50'); }
  .dark .hc-submenu-link::before { background: theme('colors.slate.900'); }
  .dark .hc-submenu-link:hover { background: theme('colors.sky.500'); color: theme('colors.sky.400'); filter: drop-shadow(0 0 12px theme('colors.sky.400 / 45%')); transform: scale(1.05); }
  .dark .hc-submenu-link:hover::before { background: theme('colors.slate.800'); }

/* From business_tasks_demo.html */
/* Custom scrollbar for back of cards and container */
.custom-scrollbar::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}
.custom-scrollbar::-webkit-scrollbar-track {
    background: transparent;
}
.custom-scrollbar::-webkit-scrollbar-thumb {
    background: theme('colors.gray.400 / 30%');
    border-radius: 10px;
}
.custom-scrollbar::-webkit-scrollbar-thumb:hover {
    background: theme('colors.gray.400 / 50%');
}
.dark .custom-scrollbar::-webkit-scrollbar-thumb {
    background: theme('colors.white / 10%');
}
.dark .custom-scrollbar::-webkit-scrollbar-thumb:hover {
    background: theme('colors.white / 20%');
}
.no-scrollbar::-webkit-scrollbar {
    display: none;
}
.no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* From instructions_section.html */
.univ-instr-card { background:theme('colors.white'); border:1px solid theme('colors.slate.200'); border-radius:20px; padding:24px 32px; margin-bottom:60px; box-shadow:0 4px 6px -1px theme('colors.black / 5%'); }
    .univ-instr-step { display:inline-block; padding:4px 12px; background:theme('colors.blue.600'); color:theme('colors.white'); border-radius:99px; font-size:.8rem; font-weight:700; margin-bottom:16px; text-transform:uppercase; letter-spacing:.05em; }
    .univ-instr-title { font-size:1.6rem; font-weight:850; margin-bottom:12px; line-height:1.2; letter-spacing:-.02em; }
    .univ-instr-text { font-size:1rem; line-height:1.5; color:theme('colors.slate.700'); }
    .univ-instr-text p { margin-bottom:1.25rem; }
    .univ-instr-text p:last-child { margin-bottom:0; }

/* From implementation_features.html */
.tabs-nav {
            display: flex;
            gap: 8px;
            margin-top: 24px;
            margin-bottom: 32px;
            border-bottom: 2px solid var(--border);
            flex-wrap: wrap
        }

        .tab-btn {
            padding: 12px 24px;
            background: transparent;
            border: none;
            color: var(--muted);
            cursor: pointer;
            font-weight: 600;
            transition: all 0.3s ease;
            position: relative;
            border-bottom: 2px solid transparent;
            margin-bottom: -2px
        }

        .tab-btn:hover {
            color: var(--text)
        }

        .tab-btn.active {
            color: var(--accent);
            border-bottom-color: var(--accent)
        }

        .tab-pane {
            display: none;
            opacity: 0;
            transform: translateY(10px)
        }

        .tab-pane.active {
            display: block;
            animation: tabSlideUp 0.4s ease forwards
        }

        @keyframes tabSlideUp {
            to {
                opacity: 1;
                transform: translateY(0)
            }
        }

        .tab-features {
            list-style: none;
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 12px
        }

        .tab-features li {
            padding: 12px 16px;
            background: var(--bg3);
            border-radius: 8px;
            color: var(--text);
            font-size: 0.95rem;
            display: flex;
            align-items: center;
            gap: 8px
        }

        .tab-features li::before {
            content: "✓";
            color: var(--green);
            font-weight: bold
        }

/* From features_tabs.html */
.animate-float-slow {
        animation: float-hover 6s ease-in-out infinite;
    }
    @keyframes float-hover {
        0%, 100% { transform: translateY(0); }
        50% { transform: translateY(-20px); }
    }
    .check-icon-premium {
        background: linear-gradient(135deg, theme('colors.blue.600') 0%, theme('colors.blue.500') 100%);
    }

.side-tab-fixed {
    @apply bg-sirius-red text-white py-6 px-2.5 rounded-l-xl flex items-center justify-center shadow-2xl;
    writing-mode: vertical-rl;
    text-orientation: mixed;
}

@layer components {
    /* Sticky Sidebar Component */
    .mobile-close-btn {
        display: none;
    }
    
    .sticky-sidebar-container .lead-form-card {
        margin-bottom: 15px !important;
    }

    @media (max-width: 1240px) {
        .sticky-sidebar-container {
            position: fixed !important;
            bottom: 30px;
            right: 0;
            z-index: 2000;
        }

        .sticky-sidebar-container .lead-form-card {
            position: fixed;
            top: 0;
            right: 0;
            width: min(400px, 85vw);
            height: 100vh;
            border-radius: 0;
            transform: translateX(110%);
            transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
            z-index: 2001;
            margin: 0;
            box-shadow: -10px 0 40px rgba(0, 0, 0, 0.3);
            background: theme('colors.slate.900');
            padding: 60px 24px 40px;
            overflow-y: auto;
        }

        .sticky-sidebar-container.is-open .lead-form-card {
            transform: translateX(0);
        }

        .sidebar-mobile-tab {
            display: flex;
            position: fixed;
            bottom: 30px;
            right: 0;
            background: linear-gradient(135deg, theme('colors.sirius-orange'), theme('colors.sirius-red'));
            color: #fff;
            padding: 16px 20px;
            border-radius: 12px 0 0 12px;
            font-weight: 700;
            cursor: pointer;
            box-shadow: -4px 4px 15px rgba(233, 69, 96, 0.4);
            z-index: 2000;
            transition: transform 0.3s;
        }

        .sticky-sidebar-container.is-open .sidebar-mobile-tab {
            transform: translateX(110%);
        }

        .mobile-close-btn {
            display: block;
            position: absolute;
            top: 20px;
            right: 20px;
            width: 32px;
            height: 32px;
            background: rgba(255, 255, 255, 0.1);
            border: none;
            color: #fff;
            border-radius: 50%;
            font-size: 24px;
            line-height: 1;
            cursor: pointer;
        }

        /* Overlay */
        .sticky-sidebar-container::after {
            content: '';
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(15, 23, 42, 0.7);
            backdrop-filter: blur(4px);
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.4s;
            z-index: 1000;
        }

        .sticky-sidebar-container.is-open::after {
            opacity: 1;
            pointer-events: auto;
        }
    }

    @media (min-width: 1241px) {
        .sidebar-mobile-tab {
            display: none;
        }
    }
}

@layer components {
  /* Home Hero Component */
  .hero-section {
    position: relative;
    overflow: hidden;
    min-height: 88vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 7rem 0 4rem;
    background: linear-gradient(155deg, theme('colors.indigo.50') 0%, #e8effe 40%, theme('colors.indigo.50') 100%);
  }

  .dark .hero-section {
    background: linear-gradient(155deg, #0d1b2e 0%, #112240 40%, #0a192f 100%);
  }

  .hero-blob {
    position: absolute;
    border-radius: 50%;
    filter: blur(90px);
    pointer-events: none;
  }

  .hero-blob-1 {
    width: 600px;
    height: 600px;
    top: -100px;
    right: -100px;
    background: radial-gradient(circle, rgba(99, 102, 241, .12) 0%, transparent 70%);
  }

  .hero-blob-2 {
    width: 400px;
    height: 400px;
    bottom: 0;
    left: -80px;
    background: radial-gradient(circle, rgba(14, 165, 233, .08) 0%, transparent 70%);
  }

  .dark .hero-blob-1 {
    background: radial-gradient(circle, rgba(99, 102, 241, .2) 0%, transparent 70%);
  }

  .dark .hero-blob-2 {
    background: radial-gradient(circle, rgba(14, 165, 233, .14) 0%, transparent 70%);
  }

  /* Badges */
  .hero-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-bottom: 2.5rem;
  }

  .hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 15px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    font-family: 'Inter', sans-serif;
    letter-spacing: -.01em;
    transition: transform .2s, box-shadow .2s;
    cursor: default;
  }

  .hero-badge:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, .1);
  }

  .hero-badge svg {
    width: 15px;
    height: 15px;
    flex-shrink: 0;
  }

  .badge-blue {
    background: theme('colors.indigo.50');
    color: theme('colors.indigo.600');
    border: 1px solid theme('colors.indigo.200');
  }

  .badge-green {
    background: theme('colors.emerald.50');
    color: theme('colors.emerald.600');
    border: 1px solid theme('colors.emerald.200');
  }

  .badge-amber {
    background: theme('colors.amber.50');
    color: theme('colors.amber.600');
    border: 1px solid theme('colors.amber.200');
  }

  .badge-sky {
    background: theme('colors.sky.50');
    color: theme('colors.sky.700');
    border: 1px solid theme('colors.sky.200');
  }

  .dark .badge-blue {
    background: rgba(79, 70, 229, .15);
    color: theme('colors.indigo.300');
    border-color: rgba(99, 102, 241, .3);
  }

  .dark .badge-green {
    background: rgba(22, 163, 74, .15);
    color: theme('colors.emerald.300');
    border-color: rgba(34, 197, 94, .3);
  }

  .dark .badge-amber {
    background: rgba(217, 119, 6, .15);
    color: theme('colors.amber.300');
    border-color: rgba(245, 158, 11, .3);
  }

  .dark .badge-sky {
    background: rgba(3, 105, 161, .15);
    color: theme('colors.sky.300');
    border-color: rgba(14, 165, 233, .3);
  }

  /* Title */
  .hero-title {
    font-family: 'Manrope', 'Inter', sans-serif;
    font-size: clamp(2.4rem, 5.5vw, 4.2rem);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -.03em;
    color: theme('colors.slate.900');
    text-align: center;
    margin-bottom: 1.25rem;
  }

  .dark .hero-title {
    color: theme('colors.slate.100');
  }

  /* Reel */
  .hero-reel-wrap {
    display: block;
    text-align: center;
    margin-bottom: .1em;
  }

  .hero-reel-pill {
    display: inline-flex;
    align-items: flex-start;
    justify-content: center;
    overflow: hidden;
    padding: 0;
    vertical-align: middle;
    background: transparent;
    border: none;
    box-sizing: content-box;
    transition: width .38s cubic-bezier(.4, 0, .2, 1);
    white-space: nowrap;
  }

  .dark .hero-reel-pill {
    background: transparent;
    border: none;
  }

  .hero-reel-track {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .hero-reel-item {
    flex-shrink: 0;
    white-space: nowrap;
    background: linear-gradient(90deg, theme('colors.indigo.600'), theme('colors.sky.500'));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
  }

  .dark .hero-reel-item {
    background: linear-gradient(90deg, theme('colors.indigo.300'), theme('colors.sky.400'));
    -webkit-background-clip: text;
    background-clip: text;
  }

  /* Sub */
  .hero-sub {
    font-size: clamp(1rem, 2vw, 1.18rem);
    line-height: 1.65;
    color: theme('colors.slate.600');
    text-align: center;
    max-width: 540px;
    margin: 0 auto 2.5rem;
  }

  .dark .hero-sub {
    color: theme('colors.slate.400');
  }

  /* CTA */
  .hero-cta {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    margin-bottom: 4rem;
  }

  .hero-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 32px;
    border-radius: 12px;
    font-size: 1rem;
    font-weight: 700;
    font-family: 'Inter', sans-serif;
    background: linear-gradient(135deg, theme('colors.indigo.600') 0%, theme('colors.indigo.500') 100%);
    color: #fff;
    border: none;
    cursor: pointer;
    transition: all .25s;
    text-decoration: none;
    box-shadow: 0 4px 20px rgba(79, 70, 229, .35);
  }

  .hero-btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 32px rgba(79, 70, 229, .45);
    color: #fff;
  }

  .hero-btn-secondary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 32px;
    border-radius: 12px;
    font-size: 1rem;
    font-weight: 600;
    font-family: 'Inter', sans-serif;
    background: theme('colors.slate.200');
    color: theme('colors.slate.800');
    border: none;
    cursor: pointer;
    transition: all .25s;
    text-decoration: none;
  }

  .hero-btn-secondary:hover {
    background: theme('colors.slate.300');
    transform: translateY(-2px);
    color: theme('colors.slate.800');
  }

  .dark .hero-btn-secondary {
    background: rgba(255, 255, 255, .08);
    color: theme('colors.slate.200');
    border: 1px solid rgba(255, 255, 255, .12);
  }

  .dark .hero-btn-secondary:hover {
    background: rgba(255, 255, 255, .14);
    color: theme('colors.slate.50');
  }

  /* Stats */
  .hero-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    max-width: 900px;
    margin: 0 auto;
  }

  .hero-stat-card {
    border-radius: 20px;
    padding: 24px 20px;
    text-align: center;
    transition: transform .25s, box-shadow .25s;
    background: rgba(255, 255, 255, .88);
    border: 1px solid rgba(226, 232, 240, .8);
    box-shadow: 0 2px 16px rgba(15, 23, 42, .06);
  }

  .hero-stat-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(79, 70, 229, .12);
  }

  .dark .hero-stat-card {
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .08);
    box-shadow: none;
  }

  .dark .hero-stat-card:hover {
    background: rgba(255, 255, 255, .07);
    box-shadow: 0 12px 32px rgba(0, 0, 0, .3);
  }

  .hero-stat-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 12px;
  }

  .hero-stat-icon svg {
    width: 22px;
    height: 22px;
  }

  .hero-stat-num {
    font-family: 'Manrope', sans-serif;
    font-size: 2.4rem;
    font-weight: 800;
    line-height: 1;
    margin-bottom: 4px;
    color: theme('colors.slate.900');
    letter-spacing: -.03em;
  }

  .dark .hero-stat-num {
    color: theme('colors.slate.100');
  }

  .hero-stat-label {
    font-size: .72rem;
    text-transform: uppercase;
    letter-spacing: .09em;
    font-weight: 600;
    color: theme('colors.slate.400');
  }

  @media(max-width:768px) {
    .hero-section {
      padding: 5rem 0 3rem;
      min-height: auto;
    }

    .hero-stats {
      grid-template-columns: repeat(2, 1fr);
      gap: 12px;
    }

    .hero-stat-num {
      font-size: 2rem;
    }

    .hero-stat-card {
      padding: 18px 14px;
    }

    .hero-badge {
      font-size: 12px;
      padding: 6px 13px;
    }
  }

  @media(max-width:480px) {
    .hero-cta {
      flex-direction: column;
      align-items: stretch;
      max-width: 300px;
      margin-left: auto;
      margin-right: auto;
    }

    .hero-btn-primary,
    .hero-btn-secondary {
      justify-content: center;
    }
  }
}

/* Стили для логотипа в хедере: градиент текста и свечение звезды */
.sirius-logo-text {
  background: linear-gradient(to right, #003d5c, #0891b2);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.dark .sirius-logo-text {
  background: linear-gradient(to right, #60a5fa, #22d3ee);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.sirius-logo-glow {
  position: absolute;
  inset: 6px;
  border-radius: 9999px;
  background: rgba(37, 99, 235, 0.3);
  filter: blur(10px);
  transform: scale(1.25);
  transition: all 0.3s ease;
  z-index: 1;
  opacity: 0.85;
}

.dark .sirius-logo-glow {
  background: rgba(34, 211, 238, 0.4);
  filter: blur(12px);
}

.group:hover .sirius-logo-glow {
  animation: logo-pulse 3s ease-in-out infinite;
}

@keyframes logo-pulse {
  0%, 100% {
    transform: scale(1.25);
    opacity: 0.85;
  }
  50% {
    transform: scale(1.55);
    opacity: 1;
  }
}

/* ── Стили для виджета мессенджеров и QR-попапа ── */
.messenger-widget-btn {
  @apply fixed bottom-6 right-6 w-14 h-14 z-[2500] rounded-full bg-gradient-to-tr from-sirius-blue to-sirius-accent hover:from-sirius-blue/90 hover:to-sirius-accent/90 text-white flex items-center justify-center shadow-lg hover:shadow-2xl cursor-pointer transition-all duration-300 hover:scale-110 active:scale-95;
}

.messenger-widget-pulse {
  @apply absolute inset-0 rounded-full bg-sirius-accent/40 animate-ping pointer-events-none;
}

/* Модальное окно попапа */
.messenger-modal {
  @apply fixed inset-0 z-[3000] flex items-center justify-center p-4 bg-slate-950/70 backdrop-blur-md opacity-0 pointer-events-none transition-all duration-300;
}

.messenger-modal.active {
  @apply opacity-100 pointer-events-auto;
}

.messenger-modal-content {
  @apply relative w-full max-w-2xl bg-white dark:bg-slate-900 rounded-3xl overflow-hidden shadow-2xl border border-slate-200 dark:border-slate-800 flex flex-col md:flex-row transform scale-95 opacity-0 transition-all duration-300;
}

.messenger-modal.active .messenger-modal-content {
  @apply scale-100 opacity-100;
}

/* Кнопки мессенджеров в попапе */
.popup-btn-tg {
  @apply flex items-center gap-4 p-4 rounded-2xl bg-[#229ED9] hover:bg-[#229ED9]/90 text-white transition-all transform hover:-translate-y-0.5 shadow-lg shadow-[#229ED9]/20 font-bold text-lg cursor-pointer;
}

.popup-btn-max {
  @apply flex items-center gap-4 p-4 rounded-2xl bg-gradient-to-r from-[#00A3FF] to-[#8b5cf6] hover:brightness-105 text-white transition-all transform hover:-translate-y-0.5 shadow-lg shadow-[#00A3FF]/20 font-bold text-lg cursor-pointer;
}

/* Кнопки в сайдбаре */
.sidebar-btn-tg {
  @apply flex items-center justify-center gap-2 py-3 px-4 bg-[#229ED9]/10 hover:bg-[#229ED9]/20 text-[#229ED9] border border-[#229ED9]/20 hover:border-[#229ED9]/40 rounded-xl transition-all font-bold text-sm cursor-pointer;
}

.sidebar-btn-max {
  @apply flex items-center justify-center gap-2 py-3 px-4 bg-[#00A3FF]/10 hover:bg-[#00A3FF]/20 text-[#00A3FF] border border-[#00A3FF]/20 hover:border-[#00A3FF]/40 rounded-xl transition-all font-bold text-sm cursor-pointer;
}

.sirius-success-star {
  @apply w-20 h-20 mx-auto mb-6 drop-shadow-[0_0_15px_rgba(255,151,0,0.6)] animate-bounce;
}





/* ── Стили общих секций (перенесены из _common_sections.html) ── */
  /* ── Common Sections: СВЕТЛАЯ ТЕМА ── */
  .cs-section {
    padding: 85px 0 105px;
    position: relative;
    z-index: 10;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  .cs-container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 48px;
    min-width: 0;
  }

  @media (max-width: 768px) {
    .cs-section {
      padding: 64px 0;
    }

    .cs-container {
      padding: 0 24px;
    }
  }

  .cs-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #8b5cf6;
    margin-bottom: 20px;
    width: 100%;
  }

  .cs-label::before,
  .cs-label::after {
    content: '';
    width: 140px;
    height: 1px;
    opacity: 0.85;
    flex-shrink: 1;
  }

  .cs-label::before {
    background: linear-gradient(to left, #8b5cf6 0%, transparent 100%);
  }

  .cs-label::after {
    background: linear-gradient(to right, #8b5cf6 0%, transparent 100%);
  }

  /* Заголовки — стилизация под главную страницу */
  .cs-title {
    font-size: 1.875rem;
    font-weight: 900;
    line-height: 1.1;
    color: #0f172a;
    margin-bottom: 48px;
    letter-spacing: -0.025em;
    text-align: center;
  }

  @media (min-width: 768px) {
    .cs-title {
      font-size: 3rem;
    }
  }

  .dark .cs-title {
    color: #ffffff;
  }

  .cs-title span {
    background: linear-gradient(to right, #2563eb, #06b6d4);
    /* Сине-голубой градиент главной */
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
  }

  /* ══ БЛОК 1: СТАТУСЫ ══ */
  #cs-statuses {
    background: #ffffff;
    position: relative;
    overflow: hidden;
    scroll-margin-top: 100px;
    transition: background-color 0.3s;
  }

  .dark #cs-statuses {
    background: #0f172a;
  }

  #cs-statuses::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(ellipse at 70% 50%, rgba(139, 92, 246, .04) 0%, transparent 60%);
  }

  .cs-statuses-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px !important;
    border: none;
    position: relative;
    /* Горизонтальное затухание линий сетки (крестики-нолики) */
    background: linear-gradient(to right, transparent 0%, rgba(240, 73, 97, 0.3) 15%, rgba(240, 73, 97, 0.3) 85%, transparent 100%);
  }

  .dark .cs-statuses-grid {
    background: linear-gradient(to right, transparent 0%, rgba(139, 92, 246, 0.35) 15%, rgba(139, 92, 246, 0.35) 85%, transparent 100%);
  }

  /* Вертикальное затухание линий сверху и снизу (перекрываем фон секции) */
  .cs-statuses-grid::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 10;
    background: linear-gradient(to bottom, #ffffff 0%, transparent 15%, transparent 85%, #ffffff 100%);
  }

  .dark .cs-statuses-grid::after {
    background: linear-gradient(to bottom, #0f172a 0%, transparent 15%, transparent 85%, #0f172a 100%);
  }

  @media (max-width: 900px) {
    .cs-statuses-grid {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  @media (max-width: 600px) {
    .cs-statuses-grid {
      grid-template-columns: 1fr;
    }
  }

  .cs-status-card {
    background: #ffffff;
    padding: 32px 24px;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    cursor: pointer;
    position: relative;
    transition: background .3s;
    min-height: 140px !important;
  }

  .dark .cs-status-card {
    background: #0f172a;
  }

  .cs-status-card:hover {
    background: #fafafa;
    z-index: 5;
  }

  /* SVG логотипы — тёмный цвет на светлом фоне */
  .cs-logo {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #1e293b !important;
    margin: 0 !important;
    transition: transform .3s !important;
    gap: 10px !important;
  }

  .dark .cs-logo {
    color: #f1f5f9 !important;
  }

  .cs-status-card:hover .cs-logo {
    transform: scale(1.05) !important;
    color: #e11d48 !important;
  }

  .cs-logo-img {
    height: 75px !important;
    width: auto !important;
    object-fit: contain !important;
  }

  /* Эффект четкого темного ЧБ (Grayscale без Opacity) */
  .cs-logo-img,
  .cs-logo>svg,
  .cs-logo-badge {
    filter: grayscale(1) contrast(1.2);
    transition: filter 0.4s ease, transform 0.3s ease !important;
  }

  .cs-status-card:hover .cs-logo-img,
  .cs-status-card:hover .cs-logo>svg,
  .cs-status-card:hover .cs-logo-badge {
    filter: grayscale(0) contrast(1);
  }

  /* Ночная тема для логотипов и карточек */
  .dark .cs-status-card {
    background: #0f172a;
  }

  /* Наведение в темной теме — включаем светлый фон ("прожектор"), чтобы скрыть белые фоны JPEG и показать оригинальные цвета! */
  .dark .cs-status-card:hover {
    background: #ffffff;
  }

  .dark .cs-logo-img,
  .dark .cs-logo>svg,
  .dark .cs-logo-badge {
    filter: grayscale(1) invert(1) brightness(2) contrast(0.9);
    mix-blend-mode: screen;
    /* Скрывает черные фоны от инвертированных JPEG */
  }

  .dark .cs-status-card:hover .cs-logo-img,
  .dark .cs-status-card:hover .cs-logo>svg,
  .dark .cs-status-card:hover .cs-logo-badge {
    filter: grayscale(0) drop-shadow(0 0 8px rgba(255, 255, 255, 0.1));
    mix-blend-mode: normal;
    /* При наведении фон карточки белый, поэтому нормальный режим отрисует JPEG идеально */
  }

  .cs-logo-badge {
    width: 54px !important;
    height: 54px !important;
    border: 4px solid currentColor !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    font-family: 'Times New Roman', serif !important;
    flex-shrink: 0 !important;
  }

  .cs-logo-text {
    display: flex !important;
    flex-direction: column !important;
    line-height: 1.1 !important;
    text-align: left !important;
    min-width: 110px !important;
  }

  .cs-logo-title {
    font-size: 20px !important;
    font-weight: 900 !important;
    font-family: 'Times New Roman', serif !important;
  }

  .cs-logo-sub {
    font-size: 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
  }

  .cs-status-name {
    display: none !important;
  }

  /* Скрываем текстовые подписи как в Тильде */
  .cs-status-dlg-muted {
    display: none !important;
  }

  button.cs-status-card {
    appearance: none;
    border: none;
    margin: 0;
    width: auto;
    box-sizing: border-box;
    font: inherit;
    color: inherit;
    text-align: inherit;
    font-family: inherit;
    cursor: pointer;
    outline-offset: 2px;
  }

  #cs-statuses dialog.cs-status-dialog::backdrop {
    background: rgba(15, 23, 42, 0.45);
  }

  #cs-statuses dialog.cs-status-dialog {
    margin: auto;
    max-width: 520px;
    width: calc(100% - 32px);
    padding: 0;
    border: none;
    border-radius: 20px;
    box-shadow: 0 28px 64px rgba(15, 23, 42, .22);
    background: #fff;
    overflow: hidden;
  }

  #cs-statuses .cs-status-dlg-inner {
    padding: 28px 28px 22px 28px;
  }

  #cs-statuses .cs-status-dlg-close {
    margin: -8px -8px 8px auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 12px;
    border: none;
    background: #f1f5f9;
    color: #64748b;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
  }

  #cs-statuses .cs-status-dlg-close:hover {
    background: #e2e8f0;
    color: #1e293b;
  }

  #cs-statuses .cs-status-dlg-title {
    font-size: 1.25rem;
    font-weight: 900;
    color: #0f172a;
    margin: 0 0 14px 0;
    line-height: 1.25;
  }

  #cs-statuses .cs-status-dlg-desc {
    font-size: 14px;
    color: #475569;
    line-height: 1.65;
    margin: 0;
    white-space: pre-wrap;
  }

  #cs-statuses .cs-status-dlg-muted {
    margin-top: 20px;
    font-size: 13px;
    color: #94a3b8;
  }

  /* ══ БЛОК 2: О НАС ══ */
  #cs-about {
    background: #ffffff;
  }

  .dark #cs-about {
    background: #0f172a;
  }

  .cs-about-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 72px;
    align-items: start;
  }

  @media (max-width: 900px) {
    .cs-about-grid {
      grid-template-columns: 1fr;
      gap: 48px;
    }
  }

  .cs-timeline {
    position: relative;
    padding-left: 32px;
  }

  .cs-timeline::before {
    content: '';
    position: absolute;
    left: 7px;
    top: 8px;
    bottom: 8px;
    width: 2px;
    background: linear-gradient(to bottom, #8b5cf6, rgba(139, 92, 246, .1));
  }

  .cs-tl-item {
    position: relative;
    padding-bottom: 24px;
    transition: transform 0.3s ease;
    cursor: default;
  }

  .cs-tl-item:hover .cs-tl-year {
    transform: scale(1.15) translateX(2px);
    font-weight: 900;
  }

  .cs-tl-item:hover .cs-tl-dot {
    transform: scale(1.2);
    box-shadow: 0 0 0 6px rgba(139, 92, 246, .25);
  }

  .cs-tl-dot {
    position: absolute;
    left: -28px;
    top: 4px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #8b5cf6;
    border: 2px solid #ffffff;
    box-shadow: 0 0 0 4px rgba(139, 92, 246, .15);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }

  .dark .cs-tl-dot {
    border-color: #0f172a;
  }

  .cs-tl-year {
    font-size: 12px;
    font-weight: 800;
    color: #8b5cf6;
    margin-bottom: 4px;
    letter-spacing: .05em;
    transition: transform 0.3s ease;
    transform-origin: left center;
    display: inline-block;
  }

  .cs-tl-text {
    font-size: 13px;
    color: #64748b;
    line-height: 1.6;
    transition: transform 0.3s ease, color 0.3s ease;
    transform-origin: left top;
    display: block;
  }

  .dark .cs-tl-text {
    color: #94a3b8;
  }

  .cs-tl-item:hover .cs-tl-text {
    transform: scale(1.03) translateX(2px);
    color: #1e293b;
  }

  .dark .cs-tl-item:hover .cs-tl-text {
    color: #f1f5f9;
  }

  .cs-tl-text strong {
    color: #1e293b;
    font-weight: 700;
  }

  .dark .cs-tl-text strong {
    color: #f1f5f9;
  }

  .cs-tl-text ul {
    list-style-type: disc;
    padding-left: 18px;
    margin-top: 6px;
    margin-bottom: 6px;
  }

  .cs-tl-text li {
    margin-bottom: 4px;
  }

  .cs-about-right {
    display: flex;
    flex-direction: column;
    gap: 24px;
  }

  .cs-photo-card {
    border-radius: 20px;
    overflow: hidden;
    background: #f1f5f9;
    aspect-ratio: 16/9;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #e2e8f0;
    position: relative;
  }

  .dark .cs-photo-card {
    background: #1e293b;
    border-color: #334155;
  }

  .cs-photo-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 60px;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.05), transparent);
    pointer-events: none;
  }

  .cs-photo-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.5s ease;
  }

  .cs-photo-card:hover img {
    transform: scale(1.03);
  }

  .cs-photo-placeholder {
    font-size: 13px;
    color: #94a3b8;
  }

  .cs-stats-chips {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
  }

  .cs-chip {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    padding: 18px 12px;
    text-align: center;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .04);
  }

  .dark .cs-chip {
    background: #1e293b;
    border-color: #334155;
  }

  .cs-chip-num {
    font-size: 1.6rem;
    font-weight: 900;
    color: #8b5cf6;
  }

  .cs-chip-label {
    font-size: 11px;
    color: #64748b;
    margin-top: 4px;
    font-weight: 500;
  }

  .dark .cs-chip-label {
    color: #94a3b8;
  }

  /* ══ БЛОК 3: ЦИФРЫ ══ */
  #cs-numbers {
    background: #f8fafc;
    position: relative;
  }

  .dark #cs-numbers {
    background: #1e293b;
  }

  #cs-numbers::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(ellipse at 30% 50%, rgba(139, 92, 246, .03) 0%, transparent 60%);
  }

  .cs-numbers-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }

  @media (max-width: 900px) {
    .cs-numbers-grid {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  @media (max-width: 480px) {
    .cs-numbers-grid {
      grid-template-columns: 1fr;
    }
  }

  .cs-num-card {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 24px;
    padding: 36px 28px;
    position: relative;
    overflow: hidden;
    transition: transform .3s, box-shadow .3s, border-color .3s;
  }

  .dark .cs-num-card {
    background: #0f172a;
    border-color: #334155;
  }

  .cs-num-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 48px rgba(139, 92, 246, .1);
    border-color: rgba(139, 92, 246, .3);
  }

  .cs-num-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: rgba(139, 92, 246, .08);
    border: 1px solid rgba(139, 92, 246, .15);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    margin-bottom: 20px;
  }

  .cs-num-value {
    font-size: 2.75rem;
    font-weight: 900;
    color: #0f172a;
    line-height: 1;
    margin-bottom: 6px;
  }

  .dark .cs-num-value {
    color: #f8fafc;
  }

  .cs-num-value span {
    color: #8b5cf6;
  }

  .cs-num-label {
    font-size: .95rem;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 12px;
  }

  .dark .cs-num-label {
    color: #f1f5f9;
  }

  .cs-num-desc {
    font-size: 12.5px;
    color: #64748b;
    line-height: 1.7;
  }

  .dark .cs-num-desc {
    color: #94a3b8;
  }

  /* ══ БЛОК 4: КЛИЕНТЫ ══ */
  #cs-clients {
    background: #ffffff;
  }

  .dark #cs-clients {
    background: #0f172a;
  }

  .cs-track-wrap {
    position: relative;
    overflow: hidden;
    margin: 0 -48px;
    padding: 8px 0;
  }

  .cs-track-wrap::before,
  .cs-track-wrap::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 120px;
    z-index: 2;
    pointer-events: none;
  }

  .cs-track-wrap::before {
    left: 0;
    background: linear-gradient(to right, #ffffff, transparent);
  }

  .cs-track-wrap::after {
    right: 0;
    background: linear-gradient(to left, #ffffff, transparent);
  }

  .dark .cs-track-wrap::before {
    background: linear-gradient(to right, #0f172a, transparent);
  }

  .dark .cs-track-wrap::after {
    background: linear-gradient(to left, #0f172a, transparent);
  }

  .cs-track {
    display: flex;
    gap: 20px;
    animation: cs-scroll 45s linear infinite;
    width: max-content;
    will-change: transform;
  }

  .cs-track:hover {
    animation-play-state: paused;
  }

  @keyframes cs-scroll {
    0% {
      transform: translate3d(0, 0, 0);
    }

    100% {
      transform: translate3d(-50%, 0, 0);
    }
  }

  .cs-client-card {
    flex-shrink: 0;
    width: 190px;
    height: 90px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    cursor: pointer;
    transition: border-color .3s, box-shadow .3s;
    color: #475569;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: .05em;
    text-align: center;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .04);
  }

  .dark .cs-client-card {
    background: #1e293b;
    border-color: #334155;
    color: #cbd5e1;
  }

  .cs-client-card:hover {
    border-color: rgba(139, 92, 246, .4);
    box-shadow: 0 8px 24px rgba(139, 92, 246, .1);
    color: #1e293b;
  }

  .dark .cs-client-card:hover {
    color: #f8fafc;
  }

  .dark .cs-client-logo {
    filter: grayscale(1) invert(1) brightness(2) contrast(0.9);
    mix-blend-mode: screen;
    transition: filter 0.3s;
  }

  .dark .cs-client-card:hover .cs-client-logo {
    filter: grayscale(0) drop-shadow(0 0 8px rgba(255, 255, 255, 0.1));
    mix-blend-mode: normal;
  }

  .cs-clients-counter {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 48px;
    margin-top: 48px;
    padding-top: 40px;
    border-top: 1px solid #e2e8f0;
  }

  .dark .cs-clients-counter {
    border-color: #334155;
  }

  @media (max-width: 600px) {
    .cs-clients-counter {
      gap: 24px;
      flex-wrap: wrap;
    }
  }

  .cs-counter-item {
    text-align: center;
  }

  .cs-counter-num {
    font-size: 2.25rem;
    font-weight: 900;
    color: #0f172a;
  }

  .dark .cs-counter-num {
    color: #f8fafc;
  }

  .cs-counter-label {
    font-size: 11.5px;
    color: #64748b;
    font-weight: 500;
    margin-top: 4px;
  }

  .dark .cs-counter-label {
    color: #94a3b8;
  }

  /* ══ БЛОК 5: ОТЗЫВЫ ══ */
  #cs-reviews {
    background: #f8fafc;
  }

  .dark #cs-reviews {
    background: #1e293b;
  }

  .cs-reviews-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-top: 40px;
  }

  @media (max-width: 1024px) {
    .cs-reviews-grid {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  @media (max-width: 640px) {
    .cs-reviews-grid {
      grid-template-columns: 1fr;
    }
  }

  .cs-review-card {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 24px;
    padding: 32px;
    transition: all 0.3s ease;
  }

  .dark .cs-review-card {
    background: #0f172a;
    border-color: #334155;
  }

  .cs-review-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 48px rgba(0, 0, 0, 0.05);
    border-color: rgba(139, 92, 246, 0.2);
  }

  .cs-rev-text {
    font-size: 14px;
    color: #475569;
    line-height: 1.7;
    font-style: italic;
    margin-bottom: 24px;
  }

  .dark .cs-rev-text {
    color: #94a3b8;
  }

  .cs-rev-author {
    display: flex;
    align-items: center;
    gap: 12px;
  }

  .cs-rev-avatar {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: #f1f5f9;
    color: #8b5cf6;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 18px;
  }

  .dark .cs-rev-avatar {
    background: #1e293b;
  }

  .cs-rev-name {
    font-size: 14px;
    font-weight: 800;
    color: #0f172a;
  }

  .dark .cs-rev-name {
    color: #f8fafc;
  }

  .cs-rev-title {
    font-size: 11px;
    color: #94a3b8;
  }

  /* ══ БЛОК 6: КОНТАКТЫ ══ */
  #cs-contact {
    background: #ffffff;
    position: relative;
    z-index: 20;
    overflow: visible;
    padding-bottom: 220px;
  }

  .dark #cs-contact {
    background: #0f172a;
  }

  #cs-contact::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(ellipse at 50% 0%, rgba(139, 92, 246, .06) 0%, transparent 60%);
  }

  .cs-contact-inner {
    text-align: center;
    position: relative;
    z-index: 1;
  }

  .cs-contact-title {
    font-size: 3rem;
    font-weight: 900;
    color: #0f172a;
    margin-bottom: 12px;
    line-height: 1.1;
  }

  .dark .cs-contact-title {
    color: #f8fafc;
  }

  .cs-contact-title span {
    color: #8b5cf6;
  }

  .cs-contact-sub {
    font-size: 1.05rem;
    color: #64748b;
    max-width: 520px;
    margin: 0 auto 56px;
  }

  .dark .cs-contact-sub {
    color: #cbd5e1;
  }

  .cs-contact-cards {
    display: flex;
    gap: 20px;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 56px;
  }

  .cs-ccard {
    flex: 1;
    min-width: 240px;
    max-width: 320px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 22px;
    padding: 36px 28px;
    text-align: center;
    cursor: pointer;
    transition: transform .3s, box-shadow .3s, border-color .3s;
  }

  .dark .cs-ccard {
    background: #1e293b;
    border-color: #334155;
  }

  .cs-ccard:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 48px rgba(139, 92, 246, .1);
    border-color: rgba(139, 92, 246, .3);
  }

  .cs-ccard-icon {
    width: 60px;
    height: 60px;
    border-radius: 18px;
    margin: 0 auto 16px;
    background: rgba(139, 92, 246, .08);
    border: 1px solid rgba(139, 92, 246, .15);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
  }

  .cs-ccard-label {
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #94a3b8;
    margin-bottom: 8px;
  }

  .cs-ccard-value {
    font-size: 1.1rem;
    font-weight: 800;
    color: #0f172a;
  }

  .dark .cs-ccard-value {
    color: #f8fafc;
  }

  .cs-cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 18px 44px;
    background: linear-gradient(to bottom right, #4f46e5, #6366f1);
    color: white;
    font-weight: 900;
    font-size: .875rem;
    letter-spacing: .12em;
    text-transform: uppercase;
    border-radius: 14px;
    cursor: pointer;
    transition: all .3s;
    box-shadow: 0 12px 32px rgba(79, 70, 229, .3);
    border: none;
    text-decoration: none;
  }

  .cs-cta:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 48px rgba(79, 70, 229, .45);
    color: white;
  }

  /* ══ РАЗДЕЛИТЕЛЬ ══ */
  .cs-divider {
    position: relative;
    background: #ffffff;
    border-top: 1px solid #e2e8f0;
    padding: 48px 0 0;
    overflow: hidden;
  }

  .dark .cs-divider {
    background: #0f172a;
    border-color: #334155;
  }

  .cs-divider::before {
    content: '';
    position: absolute;
    top: 0;
    left: 10%;
    right: 10%;
    height: 3px;
    background: linear-gradient(90deg, transparent 0%, #8b5cf6 30%, #8b5cf6 70%, transparent 100%);
    border-radius: 2px;
  }

  /* Секция Минцифры РФ на странице о компании */
  .mincifry-section {
    @apply bg-gradient-to-br from-slate-100 via-slate-50 to-slate-100 border border-slate-200/60 text-slate-800;
    @apply dark:from-slate-950 dark:via-sirius-night dark:to-slate-950 dark:border-transparent dark:text-white;
  }

  .mincifry-card {
    @apply bg-white border border-slate-100 shadow-sm rounded-3xl p-6 md:p-8 space-y-6 text-slate-700;
    @apply dark:bg-white/5 dark:border-white/10 dark:shadow-none dark:text-slate-300;
  }

  .mincifry-badge {
    @apply bg-slate-100 text-slate-800 text-xs px-2.5 py-1 rounded font-mono mr-2 inline-block;
    @apply dark:bg-white/10 dark:text-white;
  }

  .mincifry-hr {
    @apply border-slate-100;
    @apply dark:border-white/10;
  }

  .mincifry-price-row {
    @apply flex justify-between py-2 border-b border-slate-100 text-slate-700;
    @apply dark:border-white/10 dark:text-slate-300;
  }

  .mincifry-price-value {
    @apply font-bold text-sirius-blue;
    @apply dark:text-white;
  }

  .mincifry-card-title-orange {
    @apply text-sirius-accent;
    @apply dark:text-sirius-orange;
  }

  .mincifry-note {
    @apply mt-6 p-4 bg-slate-50 rounded-2xl border border-slate-100 text-xs text-slate-600 leading-relaxed;
    @apply dark:bg-white/5 dark:border-white/5 dark:text-slate-300;
  }

  /* ── ПРЕМИУМ-САЙДБАР ФОРМА ── */
  .sidebar-form-premium {
    background-color: theme('colors.slate.50');
    border: 1px solid theme('colors.slate.100');
    box-shadow: theme('boxShadow.sm');
  }

  .sidebar-form-premium input,
  .sidebar-form-premium textarea {
    background-color: theme('colors.white') !important;
    border-color: theme('colors.slate.200') !important;
    color: theme('colors.slate.900') !important;
  }

  .sidebar-form-premium input:focus,
  .sidebar-form-premium textarea:focus {
    border-color: theme('colors.blue.500') !important;
    background-color: theme('colors.white') !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);
  }

  /* Темная тема */
  .dark .sidebar-form-premium {
    background: linear-gradient(135deg, #0b1528 0%, #050b14 100%);
    border: 1.5px solid rgba(59, 130, 246, 0.5) !important;
    box-shadow: 0 0 25px rgba(59, 130, 246, 0.25), inset 0 0 15px rgba(59, 130, 246, 0.1);
  }

  .dark .sidebar-form-premium input,
  .dark .sidebar-form-premium textarea {
    background-color: #0b1322 !important;
    border-color: rgba(59, 130, 246, 0.2) !important;
    color: theme('colors.white') !important;
  }

  .dark .sidebar-form-premium input:focus,
  .dark .sidebar-form-premium textarea:focus {
    border-color: theme('colors.blue.400') !important;
    background-color: #0d1a30 !important;
    box-shadow: 0 0 10px rgba(59, 130, 246, 0.2);
  }

  /* Интерактивный калькулятор цен */
  .calc-period-btn.active {
    background-color: #ffffff;
    color: #059669 !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
  }
  .dark .calc-period-btn.active {
    background-color: #1e293b;
    color: #34d399 !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
  }
  /* Специфичное оформление под тему 1С:Садовод */
  .theme-sadovod .calc-period-btn.active {
    color: #10b981 !important;
  }
  .theme-sadovod #calc-price-display {
    color: #059669;
  }
