
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    /* ── BRAND PALETTE (Kalev BB) ── */
    :root {
      --beige:       #f5ede3;
      --beige-mid:   #ede4d6;
      --beige-deep:  #e0d2c0;
      --cream:       #fdf8f2;
      --gold:        #c6a43a;
      --gold-light:  #e2c97a;
      --gold-dark:   #a08228;
      --gold-line:   #c9a96e;
      --text:        #1c1410;
      --text-mid:    #4a3c30;
      --text-muted:  #7a6a58;
      --text-dim:    #a89880;
      --border:      rgba(180,140,80,0.22);
      --border-light: rgba(180,140,80,0.12);
      --radius:      4px;
      --radius-lg:   14px;
      /* Golden ratio */
      --phi:         1.618;
      --phi-minor:   38.2%;   /* 1/φ × 100 */
      --phi-major:   61.8%;   /* φ/(1+φ) × 100 */
    }

    html { scroll-behavior: smooth; }

    body {
      font-family: 'Inter', sans-serif;
      background: var(--beige);
      color: var(--text);
      font-size: 16px;
      line-height: 1.7;
      -webkit-font-smoothing: antialiased;
      max-width: 1920px;
      margin: 0 auto;
    }

    h1, h2, h3, h4 {
      font-family: 'Cormorant Garamond', serif;
      font-weight: 400;
      line-height: 1.2;
    }


    /* ═══════════════════════════════
       HEADER
    ═══════════════════════════════ */
    .site-header {
      position: fixed;
      top: 0; left: 0; right: 0;
      z-index: 100;
      background: rgba(245,237,227,0.94);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
      border-bottom: 1px solid var(--border);
      padding: 14px 160px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 20px;
    }

    .header-logo {
      flex-shrink: 0;
    }

    .header-logo svg {
      height: 38px;
      width: auto;
    }

    /* Tint logo to brand gold */
    .header-logo svg path,
    .header-logo svg text {
      fill: var(--text) !important;
    }
    .header-logo svg .cls-4 {
      fill: var(--gold-line) !important;
    }

    .header-center {
      display: flex;
      align-items: center;
      gap: 32px;
    }

    .header-phones {
      display: flex;
      flex-direction: column;
      gap: 2px;
    }

    .header-phones a {
      font-size: 13px;
      font-weight: 500;
      color: var(--text-mid);
      text-decoration: none;
      letter-spacing: 0.03em;
      transition: color 0.2s;
    }
    .header-phones a:hover { color: var(--gold-dark); }

    .header-address {
      font-size: 12px;
      color: var(--text-muted);
      letter-spacing: 0.03em;
      border-left: 1px solid var(--border);
      padding-left: 24px;
    }

    .btn-header {
      background: var(--text);
      color: var(--cream);
      padding: 11px 28px;
      border: none;
      border-radius: var(--radius);
      font-family: 'Inter', sans-serif;
      font-size: 13px;
      font-weight: 500;
      letter-spacing: 0.04em;
      cursor: pointer;
      text-decoration: none;
      transition: background 0.2s;
      flex-shrink: 0;
    }
    .btn-header:hover { background: var(--text-mid); }


    /* ═══════════════════════════════
       SHARED BUTTONS
    ═══════════════════════════════ */
    .btn-primary {
      background: var(--text);
      color: var(--cream);
      padding: 16px 44px;
      border: none;
      border-radius: var(--radius);
      font-size: 15px;
      font-weight: 500;
      cursor: pointer;
      text-decoration: none;
      transition: background 0.2s, transform 0.15s;
      display: inline-block;
      letter-spacing: 0.02em;
    }
    .btn-primary:hover { background: var(--text-mid); transform: translateY(-1px); }

    .btn-ghost {
      border: 1px solid var(--border);
      color: var(--text-mid);
      padding: 16px 32px;
      border-radius: var(--radius);
      font-size: 15px;
      cursor: pointer;
      text-decoration: none;
      transition: color 0.2s, border-color 0.2s, background 0.2s;
      display: inline-block;
    }
    .btn-ghost:hover { color: var(--text); border-color: var(--gold-line); background: rgba(198,164,58,0.06); }

    .btn-gold {
      background: var(--gold);
      color: #fff;
      padding: 18px 56px;
      border: none;
      border-radius: var(--radius);
      font-size: 16px;
      font-weight: 500;
      cursor: pointer;
      text-decoration: none;
      transition: background 0.2s, transform 0.15s;
      display: inline-block;
      letter-spacing: 0.02em;
    }
    .btn-gold:hover { background: var(--gold-dark); transform: translateY(-1px); }


    /* ═══════════════════════════════
       SECTION BASE
    ═══════════════════════════════ */
    section { padding: 96px 160px; }

    .container { max-width: 1920px; margin: 0 auto; }

    .section-label {
      font-size: 11px;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      color: var(--gold-dark);
      margin-bottom: 18px;
      font-weight: 500;
    }

    .section-title {
      font-size: clamp(34px, 3.8vw, 56px);
      font-weight: 300;
      color: var(--text);
      margin-bottom: 18px;
      max-width: 680px;
    }
    .section-title em { font-style: italic; color: var(--gold-dark); }

    .section-desc {
      font-size: 17px;
      color: var(--text-muted);
      font-weight: 300;
      max-width: 580px;
      line-height: 1.8;
    }


    /* ═══════════════════════════════
       HERO  — golden ratio layout
       image occupies right 38.2%
    ═══════════════════════════════ */
    .hero {
      min-height: 100vh;
      padding: 0;
      display: grid;
      /* φ split: content 61.8% | image 38.2% */
      grid-template-columns: var(--phi-major) var(--phi-minor);
      position: relative;
      overflow: hidden;
    }

    .hero-content {
      padding: 140px 80px 80px 160px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      position: relative;
      z-index: 2;
    }

    /* Vertical gold line divider at φ point */
    .hero-content::after {
      content: '';
      position: absolute;
      right: 0; top: 10%; bottom: 10%;
      width: 1px;
      background: linear-gradient(to bottom, transparent, var(--gold-line) 30%, var(--gold-line) 70%, transparent);
      opacity: 0.4;
    }

    .hero-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: rgba(198,164,58,0.1);
      border: 1px solid var(--border);
      padding: 7px 18px;
      border-radius: 100px;
      font-size: 11px;
      letter-spacing: 0.1em;
      color: var(--gold-dark);
      margin-bottom: 36px;
      text-transform: uppercase;
      font-weight: 500;
      width: fit-content;
    }
    .hero-badge span { width: 5px; height: 5px; background: var(--gold); border-radius: 50%; }

    .hero h1 {
      font-size: clamp(48px, 5.5vw, 76px);
      font-weight: 300;
      color: var(--text);
      margin-bottom: 28px;
      line-height: 1.1;
    }
    .hero h1 em { font-style: italic; color: var(--gold-dark); }

    .hero-sub {
      font-size: 18px;
      color: var(--text-muted);
      line-height: 1.75;
      max-width: 500px;
      margin-bottom: 44px;
      font-weight: 300;
    }

    .hero-pills {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-bottom: 48px;
    }

    .pill {
      background: var(--cream);
      border: 1px solid var(--border-light);
      padding: 8px 18px;
      border-radius: 100px;
      font-size: 13px;
      color: var(--text-mid);
      letter-spacing: 0.02em;
    }

    .hero-cta-group {
      display: flex;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }

    /* IMAGE PANEL — golden section background */
    .hero-image {
      position: relative;
      overflow: hidden;
    }

    .hero-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      /* position: focus on golden point (61.8% from top) */
      object-position: center 38.2%;
      display: block;
    }

    /* Gradient fade on left edge */
    .hero-image::before {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(to right, var(--beige) 0%, transparent 30%);
      z-index: 1;
    }

    /* Price badge floating at φ point */
    .hero-price-float {
      position: absolute;
      /* golden point: 61.8% from top */
      top: 61.8%;
      left: 50%;
      transform: translate(-50%, -50%);
      z-index: 2;
      background: rgba(245,237,227,0.92);
      backdrop-filter: blur(8px);
      border: 1px solid var(--border);
      border-radius: var(--radius-lg);
      padding: 24px 28px;
      text-align: center;
      min-width: 180px;
    }

    .hero-price-float .label {
      font-size: 10px;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--text-dim);
      margin-bottom: 8px;
    }

    .hero-price-float .amount {
      font-family: 'Cormorant Garamond', serif;
      font-size: 52px;
      font-weight: 300;
      color: var(--gold-dark);
      line-height: 1;
    }

    .hero-price-float .rub { font-size: 28px; }

    .hero-price-float .note {
      font-size: 11px;
      color: var(--text-dim);
      margin-top: 6px;
    }


    /* ═══════════════════════════════
       STATS BAR
    ═══════════════════════════════ */
    .stats-bar {
      background: var(--text);
      padding: 40px 160px;
    }

    .stats-inner {
      max-width: 1920px;
      margin: 0 auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 20px;
    }

    .stat-item { text-align: center; }

    .stat-num {
      font-family: 'Cormorant Garamond', serif;
      font-size: 38px;
      font-weight: 300;
      color: var(--gold-light);
      line-height: 1;
      margin-bottom: 4px;
    }

    .stat-label {
      font-size: 11px;
      color: rgba(255,255,255,0.5);
      letter-spacing: 0.06em;
      text-transform: uppercase;
    }

    .stat-divider {
      width: 1px;
      height: 44px;
      background: rgba(255,255,255,0.12);
    }


    /* ═══════════════════════════════
       BLOCK 2 — WHY HYGIENE
       Background: viru-diagram-bg.jpg
       Golden layout: text 61.8% | image 38.2%
    ═══════════════════════════════ */
    .why-hygiene {
      background: var(--beige-mid);
      padding: 0;
      position: relative;
      overflow: hidden;
    }

    .why-hygiene-inner {
      display: grid;
      grid-template-columns: var(--phi-major) var(--phi-minor);
      min-height: 80vh;
    }

    .why-content {
      padding: 96px 72px 96px 160px;
      display: flex;
      flex-direction: column;
      justify-content: center;
    }

    .why-cards {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      margin-top: 52px;
    }

    .why-card {
      background: var(--cream);
      border: 1px solid var(--border-light);
      border-radius: var(--radius-lg);
      padding: 24px 22px;
      transition: border-color 0.2s, box-shadow 0.2s;
    }
    .why-card:hover {
      border-color: var(--border);
      box-shadow: 0 4px 24px rgba(140,100,40,0.08);
    }

    .why-card-icon { font-size: 22px; margin-bottom: 12px; }

    .why-card h3 {
      font-size: 16px;
      font-weight: 500;
      font-family: 'Inter', sans-serif;
      color: var(--text);
      margin-bottom: 8px;
    }

    .why-card p { font-size: 13px; color: var(--text-muted); line-height: 1.7; }

    /* Image panel with golden ratio positioning */
    .why-image-panel {
      position: relative;
      overflow: hidden;
    }

    .why-image-panel img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      /* Focus at golden point: 38.2% from top */
      object-position: center 38.2%;
    }

    /* Gradient from left */
    .why-image-panel::before {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(to right, var(--beige-mid) 0%, transparent 40%);
      z-index: 1;
    }

    /* Floating stat card at φ intersection */
    .why-stat-card {
      position: absolute;
      top: 61.8%;
      left: 50%;
      transform: translate(-50%, -50%);
      z-index: 2;
      background: rgba(245,237,227,0.93);
      backdrop-filter: blur(10px);
      border: 1px solid var(--border);
      border-radius: var(--radius-lg);
      padding: 20px 24px;
      min-width: 200px;
    }

    .why-stat-card .big { font-family: 'Cormorant Garamond', serif; font-size: 44px; color: var(--gold-dark); font-weight: 300; line-height: 1; }
    .why-stat-card .sm { font-size: 12px; color: var(--text-muted); margin-top: 4px; line-height: 1.5; }


    /* ═══════════════════════════════
       BLOCK 3 — INCLUDED
    ═══════════════════════════════ */
    .included {
      background: var(--cream);
    }

    .included-header {
      display: grid;
      grid-template-columns: var(--phi-major) var(--phi-minor);
      gap: 48px;
      align-items: end;
      margin-bottom: 56px;
      max-width: 1440px;
      margin-left: auto;
      margin-right: auto;
    }

    .price-hero {
      margin-top: 16px;
      display: flex;
      align-items: baseline;
      gap: 4px;
    }

    .price-hero .n {
      font-family: 'Cormorant Garamond', serif;
      font-size: 80px;
      font-weight: 300;
      color: var(--gold-dark);
      line-height: 1;
    }

    .price-hero .r {
      font-family: 'Cormorant Garamond', serif;
      font-size: 44px;
      color: var(--gold);
    }

    .included-note-side {
      font-size: 15px;
      color: var(--text-muted);
      line-height: 1.8;
      font-weight: 300;
      border-left: 2px solid var(--gold-line);
      padding-left: 20px;
      margin-top: 20px;
    }

    .included-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2px;
      background: var(--beige-deep);
      border-radius: var(--radius-lg);
      overflow: hidden;
      max-width: 1440px;
      margin: 0 auto;
    }

    .included-item {
      background: var(--cream);
      padding: 32px 28px;
      transition: background 0.2s;
    }
    .included-item:hover { background: #fffdf8; }

    .included-num {
      font-family: 'Cormorant Garamond', serif;
      font-size: 44px;
      font-weight: 300;
      color: rgba(198,164,58,0.25);
      line-height: 1;
      margin-bottom: 16px;
    }

    .included-item h3 {
      font-size: 17px;
      font-weight: 500;
      font-family: 'Inter', sans-serif;
      color: var(--text);
      margin-bottom: 8px;
    }

    .included-item p { font-size: 13px; color: var(--text-muted); line-height: 1.7; }

    .included-callout {
      margin-top: 36px;
      max-width: 1440px;
      margin-left: auto;
      margin-right: auto;
      padding: 24px 32px;
      background: var(--beige-mid);
      border: 1px solid var(--border);
      border-radius: var(--radius-lg);
      display: flex;
      gap: 20px;
      align-items: flex-start;
    }

    .included-callout-icon { font-size: 18px; flex-shrink: 0; margin-top: 2px; }

    .included-callout p { font-size: 14px; color: var(--text-muted); line-height: 1.75; }

    .included-callout strong { color: var(--text); }


    /* ═══════════════════════════════
       BLOCK 4 — PROBLEMS
    ═══════════════════════════════ */
    .problems { background: var(--beige-mid); }

    .problems-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 20px;
      margin-top: 56px;
      max-width: 1440px;
      margin-left: auto;
      margin-right: auto;
    }

    .problem-card {
      background: var(--cream);
      border: 1px solid var(--border-light);
      border-radius: var(--radius-lg);
      padding: 28px;
      display: flex;
      gap: 18px;
      align-items: flex-start;
      transition: border-color 0.2s;
    }
    .problem-card:hover { border-color: var(--border); }

    .problem-icon {
      width: 42px; height: 42px;
      background: rgba(198,164,58,0.1);
      border: 1px solid var(--border);
      border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      font-size: 17px; flex-shrink: 0;
    }

    .problem-content h3 {
      font-size: 17px; font-weight: 500;
      font-family: 'Inter', sans-serif;
      color: var(--text); margin-bottom: 8px;
    }

    .problem-content p { font-size: 14px; color: var(--text-muted); line-height: 1.7; }


    /* ═══════════════════════════════
       BLOCK 5 — WHY VIRU
       Background: viru-microscope-bg.jpg
       Image on left (38.2%), text on right (61.8%)
    ═══════════════════════════════ */
    .why-viru {
      padding: 0;
      background: var(--cream);
      overflow: hidden;
    }

    .why-viru-inner {
      display: grid;
      /* Reversed φ: image 38.2% left, content 61.8% right */
      grid-template-columns: var(--phi-minor) var(--phi-major);
      min-height: 80vh;
    }

    .why-viru-image {
      position: relative;
      overflow: hidden;
    }

    .why-viru-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: 38.2% center;
    }

    /* Gradient from right */
    .why-viru-image::after {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(to left, var(--cream) 0%, transparent 40%);
      z-index: 1;
    }

    .why-viru-content {
      padding: 96px 160px 96px 56px;
      display: flex;
      flex-direction: column;
      justify-content: center;
    }

    .viru-features {
      display: flex;
      flex-direction: column;
      gap: 28px;
      margin-top: 52px;
    }

    .viru-feature {
      display: flex;
      gap: 24px;
      align-items: flex-start;
      padding-bottom: 28px;
      border-bottom: 1px solid var(--border-light);
    }
    .viru-feature:last-child { border-bottom: none; padding-bottom: 0; }

    .viru-feature-num {
      font-family: 'Cormorant Garamond', serif;
      font-size: 38px;
      font-weight: 300;
      color: var(--gold);
      line-height: 1;
      min-width: 44px;
    }

    .viru-feature-text h3 {
      font-size: 20px; font-weight: 400;
      color: var(--text); margin-bottom: 8px;
    }

    .viru-feature-text p { font-size: 14px; color: var(--text-muted); line-height: 1.7; }

    .viru-quote-pull {
      margin-top: 40px;
      padding: 32px 36px;
      background: var(--beige-mid);
      border: 1px solid var(--border);
      border-left: 3px solid var(--gold-line);
      border-radius: var(--radius-lg);
    }

    .viru-quote-pull blockquote {
      font-family: 'Cormorant Garamond', serif;
      font-size: 22px;
      font-style: italic;
      color: var(--text);
      line-height: 1.6;
      margin-bottom: 12px;
    }

    .viru-quote-pull cite { font-size: 12px; color: var(--text-dim); font-style: normal; }

    .viru-mini-stats {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 2px;
      margin-top: 32px;
      background: var(--beige-deep);
      border-radius: var(--radius-lg);
      overflow: hidden;
    }

    .mini-stat {
      background: var(--cream);
      padding: 18px 16px;
      text-align: center;
    }

    .mini-stat-n {
      font-family: 'Cormorant Garamond', serif;
      font-size: 28px;
      color: var(--gold-dark);
      font-weight: 300;
    }

    .mini-stat-l {
      font-size: 10px;
      color: var(--text-dim);
      letter-spacing: 0.04em;
      margin-top: 3px;
      text-transform: uppercase;
    }


    /* ═══════════════════════════════
       BLOCK 6 — PROCEDURE
       Background: viru-aligners-bg.jpg
       Decorative right side
    ═══════════════════════════════ */
    .procedure {
      padding: 0;
      background: var(--beige-mid);
      overflow: hidden;
    }

    .procedure-inner {
      display: grid;
      grid-template-columns: var(--phi-major) var(--phi-minor);
      min-height: 90vh;
    }

    .procedure-content {
      padding: 96px 72px 96px 160px;
    }

    .steps-timeline {
      margin-top: 56px;
      display: flex;
      flex-direction: column;
      position: relative;
    }

    .steps-timeline::before {
      content: '';
      position: absolute;
      left: 22px; top: 22px; bottom: 22px;
      width: 1px;
      background: linear-gradient(to bottom, var(--gold-line), rgba(198,164,58,0.1));
    }

    .step {
      display: flex;
      gap: 32px;
      padding: 28px 0;
      border-bottom: 1px solid var(--border-light);
      align-items: flex-start;
    }
    .step:last-child { border-bottom: none; }

    .step-num-wrap {
      flex-shrink: 0;
      width: 44px; height: 44px;
      background: var(--cream);
      border: 1px solid var(--border);
      border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      position: relative; z-index: 1;
    }

    .step-num {
      font-family: 'Cormorant Garamond', serif;
      font-size: 20px;
      color: var(--gold-dark);
    }

    .step-content { padding-top: 6px; flex: 1; }

    .step-title {
      font-family: 'Cormorant Garamond', serif;
      font-size: 24px;
      color: var(--text);
      margin-bottom: 10px;
    }

    .step-desc { font-size: 14px; color: var(--text-muted); line-height: 1.75; max-width: 560px; }

    .step-tag {
      display: inline-block;
      margin-top: 10px;
      font-size: 11px;
      background: rgba(198,164,58,0.1);
      border: 1px solid var(--border);
      color: var(--gold-dark);
      padding: 4px 12px;
      border-radius: 100px;
      letter-spacing: 0.04em;
    }

    /* Decorative image panel */
    .procedure-image {
      position: relative;
      overflow: hidden;
    }

    .procedure-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center 38.2%;
    }

    .procedure-image::before {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(to right, var(--beige-mid) 0%, transparent 35%);
      z-index: 1;
    }


    /* ═══════════════════════════════
       BLOCK 7 — MYTHS
    ═══════════════════════════════ */
    .myths { background: var(--cream); }

    .myths-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 16px;
      margin-top: 56px;
      max-width: 1440px;
      margin-left: auto;
      margin-right: auto;
    }

    .myth-card {
      background: var(--beige);
      border: 1px solid var(--border-light);
      border-radius: var(--radius-lg);
      overflow: hidden;
      transition: border-color 0.2s;
    }
    .myth-card:hover { border-color: var(--border); }

    .myth-header {
      padding: 18px 22px;
      background: var(--beige-mid);
      border-bottom: 1px solid var(--border-light);
      display: flex;
      align-items: flex-start;
      gap: 10px;
    }

    .myth-label {
      font-size: 9px; font-weight: 600;
      letter-spacing: 0.12em; text-transform: uppercase;
      padding: 3px 10px; border-radius: 100px;
      flex-shrink: 0; margin-top: 2px;
    }
    .myth-label.myth { background: rgba(180,60,60,0.12); color: #b04040; }

    .myth-text { font-size: 14px; color: var(--text-muted); font-style: italic; line-height: 1.5; }

    .myth-body { padding: 18px 22px; }
    .myth-body p { font-size: 14px; color: var(--text-muted); line-height: 1.75; }


    /* ═══════════════════════════════
       BLOCK 8 — RESULTS
    ═══════════════════════════════ */
    .results { background: var(--beige-mid); }

    .results-inner {
      display: grid;
      grid-template-columns: var(--phi-major) var(--phi-minor);
      gap: 64px;
      align-items: start;
      margin-top: 56px;
      max-width: 1440px;
      margin-left: auto;
      margin-right: auto;
    }

    .results-list {
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: 14px;
    }

    .result-item {
      display: flex;
      align-items: flex-start;
      gap: 14px;
      padding: 18px 20px;
      background: var(--cream);
      border-radius: var(--radius-lg);
      border: 1px solid var(--border-light);
    }

    .result-check {
      width: 26px; height: 26px;
      background: rgba(198,164,58,0.12);
      border: 1px solid var(--border);
      border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      flex-shrink: 0;
      color: var(--gold-dark);
      font-size: 12px;
      margin-top: 1px;
    }

    .result-item p { font-size: 15px; color: var(--text); line-height: 1.6; }

    .results-side {
      display: flex;
      flex-direction: column;
      gap: 20px;
    }

    .results-quote {
      background: var(--cream);
      border: 1px solid var(--border);
      border-left: 3px solid var(--gold-line);
      border-radius: var(--radius-lg);
      padding: 36px 32px;
    }

    .results-quote blockquote {
      font-family: 'Cormorant Garamond', serif;
      font-size: 24px;
      font-style: italic;
      color: var(--text);
      line-height: 1.55;
      margin-bottom: 16px;
    }

    .results-quote cite { font-size: 12px; color: var(--text-dim); font-style: normal; }

    .result-insight {
      background: rgba(198,164,58,0.08);
      border: 1px solid var(--border);
      border-radius: var(--radius-lg);
      padding: 24px 28px;
    }

    .insight-num {
      font-family: 'Cormorant Garamond', serif;
      font-size: 52px;
      color: var(--gold-dark);
      font-weight: 300;
      line-height: 1;
      margin-bottom: 8px;
    }

    .insight-desc { font-size: 14px; color: var(--text-muted); line-height: 1.6; }


    /* ═══════════════════════════════
       BLOCK 9 — REVIEWS
    ═══════════════════════════════ */
    .reviews { background: var(--beige); }

    .reviews-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
      margin-top: 56px;
      max-width: 1440px;
      margin-left: auto;
      margin-right: auto;
    }

    .review-card {
      background: var(--cream);
      border: 1px solid var(--border-light);
      border-radius: var(--radius-lg);
      padding: 28px 24px;
      transition: border-color 0.2s, box-shadow 0.2s;
    }
    .review-card:hover {
      border-color: var(--border);
      box-shadow: 0 4px 20px rgba(140,100,40,0.07);
    }

    .review-stars { display: flex; gap: 3px; margin-bottom: 14px; }
    .review-stars span { color: var(--gold); font-size: 14px; }

    .review-text {
      font-size: 15px; color: var(--text-muted);
      line-height: 1.75; margin-bottom: 22px; font-style: italic;
    }

    .review-author { display: flex; align-items: center; gap: 12px; }

    .review-avatar {
      width: 36px; height: 36px;
      background: var(--beige-mid);
      border: 1px solid var(--border);
      border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      font-family: 'Cormorant Garamond', serif;
      font-size: 16px; color: var(--gold-dark);
    }

    .review-info .name { font-size: 13px; color: var(--text); font-weight: 500; }
    .review-info .meta { font-size: 11px; color: var(--text-dim); margin-top: 2px; }

    .review-platform {
      margin-top: 14px; padding-top: 14px;
      border-top: 1px solid var(--border-light);
      font-size: 11px; color: var(--text-dim);
      letter-spacing: 0.04em;
    }


    /* ═══════════════════════════════
       BLOCK 10 — FAQ
    ═══════════════════════════════ */
    .faq { background: var(--cream); }

    .faq-list {
      margin-top: 56px;
      display: flex;
      flex-direction: column;
      gap: 2px;
      max-width: 1440px;
      margin-left: auto;
      margin-right: auto;
    }

    .faq-item {
      background: var(--beige);
      border-radius: var(--radius);
      overflow: hidden;
      border: 1px solid transparent;
    }

    .faq-question {
      width: 100%; background: none; border: none; cursor: pointer;
      padding: 22px 32px;
      display: flex; align-items: center; justify-content: space-between; gap: 20px;
      text-align: left;
    }

    .faq-q-text { font-size: 16px; color: var(--text); font-weight: 400; }

    .faq-icon {
      width: 26px; height: 26px;
      border: 1px solid var(--border);
      border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      color: var(--gold-dark); font-size: 17px; flex-shrink: 0;
      transition: transform 0.2s;
      background: var(--cream);
    }

    .faq-item.open .faq-icon { transform: rotate(45deg); }
    .faq-item.open { border-color: var(--border); background: var(--cream); }

    .faq-answer {
      display: none;
      padding: 0 32px 20px;
      font-size: 14px; color: var(--text-muted); line-height: 1.8;
    }
    .faq-item.open .faq-answer { display: block; }


    /* ═══════════════════════════════
       BLOCK 11 — FINAL OFFER
    ═══════════════════════════════ */
    .final-offer {
      background: var(--text);
      position: relative;
      overflow: hidden;
    }

    /* Subtle gold wave at φ point */
    .final-offer::before {
      content: '';
      position: absolute;
      bottom: 0; left: 0; right: 0;
      height: 38.2%;
      background: linear-gradient(to top, rgba(198,164,58,0.06), transparent);
      pointer-events: none;
    }

    .final-inner {
      max-width: 1440px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: var(--phi-major) var(--phi-minor);
      gap: 64px;
      align-items: center;
      position: relative;
      z-index: 1;
    }

    .final-left h2 {
      font-size: clamp(38px, 4.5vw, 64px);
      font-weight: 300;
      color: var(--beige);
      margin-bottom: 20px;
    }
    .final-left h2 em { font-style: italic; color: var(--gold-light); }

    .final-left p {
      font-size: 17px;
      color: rgba(245,237,227,0.6);
      font-weight: 300;
      line-height: 1.75;
      margin-bottom: 40px;
    }

    .final-checks {
      display: flex;
      flex-direction: column;
      gap: 12px;
      margin-bottom: 40px;
    }

    .final-check {
      display: flex;
      align-items: flex-start;
      gap: 12px;
      font-size: 15px;
      color: rgba(245,237,227,0.75);
    }

    .final-check::before {
      content: '—';
      color: var(--gold-light);
      font-weight: 600;
      flex-shrink: 0;
    }

    .final-right {
      background: var(--beige);
      border-radius: var(--radius-lg);
      padding: 44px 40px;
      position: relative;
    }

    .final-right::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0; height: 2px;
      background: linear-gradient(90deg, transparent, var(--gold-line), transparent);
      border-radius: var(--radius-lg) var(--radius-lg) 0 0;
    }

    .final-price-label { font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--text-dim); margin-bottom: 8px; }

    .final-price-main {
      font-family: 'Cormorant Garamond', serif;
      font-size: 72px; font-weight: 300;
      color: var(--gold-dark);
      line-height: 1; margin-bottom: 6px;
    }

    .final-price-note { font-size: 13px; color: var(--text-muted); margin-bottom: 28px; }

    .final-includes {
      list-style: none;
      display: flex; flex-direction: column; gap: 10px;
      margin-bottom: 28px;
    }

    .final-includes li {
      display: flex; align-items: flex-start; gap: 10px;
      font-size: 14px; color: var(--text-muted);
    }

    .final-includes li::before { content: '—'; color: var(--gold); flex-shrink: 0; }

    .final-cta-btn {
      width: 100%;
      background: var(--text);
      color: var(--cream);
      padding: 16px;
      border: none; border-radius: var(--radius);
      font-size: 15px; font-weight: 500;
      cursor: pointer; text-align: center; text-decoration: none;
      display: block; transition: background 0.2s;
      letter-spacing: 0.02em;
    }
    .final-cta-btn:hover { background: var(--text-mid); }

    .final-cta-note {
      text-align: center; font-size: 12px;
      color: var(--text-dim); margin-top: 10px;
    }

    .final-scarcity {
      margin-top: 16px; padding: 12px 18px;
      background: rgba(198,164,58,0.1);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      display: flex; align-items: center; gap: 10px;
      font-size: 12px; color: var(--text-muted);
    }

    .scarcity-dot {
      width: 7px; height: 7px;
      background: var(--gold); border-radius: 50%;
      flex-shrink: 0;
      animation: pulse 2s infinite;
    }
    @keyframes pulse {
      0%, 100% { opacity: 1; }
      50% { opacity: 0.3; }
    }


    /* ═══════════════════════════════
       FOOTER
    ═══════════════════════════════ */
    footer {
      background: var(--beige-mid);
      border-top: 1px solid var(--border);
      padding: 44px 160px;
    }

    .footer-inner {
      max-width: 1920px; margin: 0 auto;
      display: flex; align-items: flex-start;
      justify-content: space-between;
      flex-wrap: wrap; gap: 32px;
    }

    .footer-logo svg { height: 32px; width: auto; }

    .footer-contacts { display: flex; flex-direction: column; gap: 6px; }

    .footer-contacts a {
      font-size: 14px; color: var(--text-mid);
      text-decoration: none; font-weight: 500;
      transition: color 0.2s;
    }
    .footer-contacts a:hover { color: var(--gold-dark); }

    .footer-address-text { font-size: 13px; color: var(--text-muted); margin-top: 4px; }

    .footer-legal {
      font-size: 11px; color: var(--text-dim);
      line-height: 1.7; max-width: 400px;
    }


    /* ═══════════════════════════════
       RESPONSIVE
    ═══════════════════════════════ */
    @media (max-width: 1440px) {
      section { padding: 96px 80px; }
      .stats-bar { padding: 40px 80px; }
      footer { padding: 44px 80px; }
      .hero-content { padding: 140px 60px 80px 80px; }
      .why-content { padding: 96px 48px 96px 80px; }
      .why-viru-content { padding: 96px 80px 96px 48px; }
      .procedure-content { padding: 96px 48px 96px 80px; }
    }

    @media (max-width: 1024px) {
      section { padding: 72px 32px; }
      .stats-bar { padding: 32px 32px; }
      .hero { grid-template-columns: 1fr; min-height: auto; }
      .hero-content { padding: 120px 32px 60px; }
      .hero-image { display: none; }

      .why-hygiene-inner { grid-template-columns: 1fr; }
      .why-image-panel { display: none; }
      .why-content { padding: 72px 32px; }
      .why-cards { grid-template-columns: 1fr 1fr; }

      .included-header { grid-template-columns: 1fr; gap: 0; }
      .included-grid { grid-template-columns: 1fr 1fr; max-width: 100%; }

      .problems-grid { grid-template-columns: 1fr; max-width: 100%; }
      .myths-grid { max-width: 100%; }
      .results-inner { grid-template-columns: 1fr; gap: 40px; max-width: 100%; }
      .reviews-grid { grid-template-columns: 1fr; max-width: 100%; }
      .faq-list { max-width: 100%; }

      .why-viru-inner { grid-template-columns: 1fr; }
      .why-viru-image { display: none; }
      .why-viru-content { padding: 72px 32px; }

      .viru-mini-stats { grid-template-columns: repeat(4, 1fr); }

      .procedure-inner { grid-template-columns: 1fr; }
      .procedure-content { padding: 72px 32px; }
      .procedure-image { display: none; }

      .final-inner { grid-template-columns: 1fr; gap: 48px; max-width: 100%; }

      .site-header { padding: 14px 24px; }
      .header-center { display: none; }

      footer { padding: 40px 24px; }
    }

    @media (max-width: 640px) {
      .included-grid { grid-template-columns: 1fr; }
      .why-cards { grid-template-columns: 1fr; }
      .myths-grid { grid-template-columns: 1fr; }
      .viru-mini-stats { grid-template-columns: repeat(2, 1fr); }
    }
