
    /* Light mode is the default. Dark mode keeps the approved existing Novain look. */
    html:not(.theme-dark) .novain-hero {
      color: var(--nvcol-4b9a93f150,#172033);
      background:
        radial-gradient(circle at 76% 42%, rgba(8, 125, 255, .10) 0, transparent 43%),
        linear-gradient(120deg, var(--nvcol-fea0682ab8,#f7f9fc) 0%, var(--nvcol-f2074b6cef,#ffffff) 55%, var(--nvcol-1c61b9d9f7,#eef5fc) 100%) !important;
    }
    html:not(.theme-dark) .novain-hero::before { opacity: .10; }
    html:not(.theme-dark) .novain-hero-copy {
      color: var(--nvcol-4b9a93f150,#172033);
      border-color: var(--nvcol-a60118be9c,#dce6f0);
      background:
        radial-gradient(circle at 82% 14%, rgba(8, 125, 255, .08) 0, transparent 42%),
        radial-gradient(circle at 18% 88%, rgba(25, 199, 255, .05) 0, transparent 32%),
        linear-gradient(145deg, var(--nvcol-f2074b6cef,#ffffff) 0%, var(--nvcol-fea0682ab8,#f7f9fc) 54%, var(--nvcol-d68cb4d49d,#f0f5fa) 100%);
      box-shadow: 0 24px 60px rgba(31, 65, 105, .10), inset 0 1px 0 rgba(255, 255, 255, .9);
    }
    html:not(.theme-dark) .novain-hero-copy h1,
    html:not(.theme-dark) .novain-hero-copy h1 strong { color: var(--nvcol-4b9a93f150,#172033); }
    html:not(.theme-dark) .novain-hero-copy p { color: var(--nvcol-7b676f4499,#68758a); }
    html:not(.theme-dark) .novain-hero-eyebrow { color: var(--nvcol-2b580610b9,#087dff); }
    html:not(.theme-dark) .novain-hero-features { color: var(--nvcol-dd15e6f7d4,#111827); }
    html:not(.theme-dark) .novain-hero-features div {
      background: rgba(255,255,255,.95);
      border: 1px solid var(--nvcol-9f539d2d7d,#d9e2ef);
      color: var(--nvcol-dd15e6f7d4,#111827);
      box-shadow: 0 8px 18px rgba(15, 23, 42, .08);
    }
    html:not(.theme-dark) .novain-hero-features b,
    html:not(.theme-dark) .novain-feature-icon {
      color: var(--nvcol-dd15e6f7d4,#111827);
    }
    html:not(.theme-dark) .novain-hero-actions .btn-primary {
      color: var(--nvcol-f2074b6cef,#ffffff);
      background: var(--nvcol-2b580610b9,#087dff);
      border-color: var(--nvcol-2b580610b9,#087dff);
      box-shadow: 0 10px 25px rgba(8,125,255,.20);
    }
    html:not(.theme-dark) .novain-hero-actions .btn-primary:hover {
      background: var(--nvcol-f9fed4ed97,#066edc);
      box-shadow: 0 12px 28px rgba(8,125,255,.28);
    }
    html:not(.theme-dark) .novain-hero-actions .btn-outline {
      color: var(--nvcol-b74a104b20,#1f4f80);
      border-color: var(--nvcol-5d2c7175d8,#c7d8e8);
      background: rgba(255,255,255,.74);
    }
    html:not(.theme-dark) .novain-hero-actions .btn-outline:hover {
      color: var(--nvcol-2b580610b9,#087dff);
      border-color: var(--nvcol-a0d248e3a2,#9fc3e5);
      background: var(--nvcol-54c972b66c,#eef6ff);
    }
    .theme-dark .novain-hero {
      color: var(--nvcol-f2074b6cef,#ffffff);
      background:
        radial-gradient(circle at 76% 42%, rgba(15, 63, 126, .34) 0, transparent 42%),
        linear-gradient(120deg, var(--nvcol-f291189a15,#04132b) 0%, var(--nvcol-e048458ca3,#061a38) 56%, var(--nvcol-f237292f6b,#08234a) 100%) !important;
    }
    .theme-dark .novain-hero-copy {
      border-color: rgba(76, 157, 225, .2);
      background:
        radial-gradient(circle at 82% 14%, rgba(19, 75, 149, .22) 0, transparent 42%),
        radial-gradient(circle at 18% 88%, rgba(0, 158, 220, .08) 0, transparent 32%),
        linear-gradient(145deg, var(--nvcol-a750550b16,#071d3d) 0%, var(--nvcol-3f2ddb0051,#061a36) 52%, var(--nvcol-c611a7e785,#04122b) 100%);
      box-shadow: 0 24px 60px rgba(0, 0, 0, .24), inset 0 1px 0 rgba(255, 255, 255, .04);
    }
  
    html:not(.theme-dark) .novain-hero-copy p,
    .theme-dark .novain-hero-copy p {
      font-size: 21px;
      line-height: 2.08;
    }
    .novain-hero-controls {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 14px;
      margin-top: 26px;
    }
    .novain-hero-dots {
      display: flex;
      align-items: center;
      gap: 14px;
    }
    .novain-hero-dots button {
      width: 18px;
      height: 18px;
      padding: 0;
      border-radius: 999px;
      border: 2px solid transparent;
      background: var(--nvcol-5366220205,#9aacc4);
      box-shadow: 0 6px 14px rgba(15, 23, 42, .12);
      cursor: pointer;
      transition: transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
    }
    .novain-hero-dots button:hover {
      transform: translateY(-1px) scale(1.04);
    }
    html:not(.theme-dark) .novain-hero-dots button {
      background: var(--nvcol-56adafc01a,#b9c6d8);
      border-color: var(--nvcol-c89694e6da,#95a9c2);
    }
    html:not(.theme-dark) .novain-hero-dots button.is-active {
      background: var(--nvcol-10ace138a9,#2f3c50);
      border-color: var(--nvcol-10ace138a9,#2f3c50);
      box-shadow: 0 8px 18px rgba(15, 23, 42, .18);
      transform: scale(1.08);
    }
    .theme-dark .novain-hero-dots button {
      background: var(--nvcol-6913211482,#3b5675);
      border-color: var(--nvcol-26b91dcd5a,#65819f);
    }
    .theme-dark .novain-hero-dots button.is-active {
      background: var(--nvcol-53490bd576,#f5fbff);
      border-color: var(--nvcol-53490bd576,#f5fbff);
      box-shadow: 0 10px 24px rgba(0,0,0,.28);
      transform: scale(1.08);
    }
    html:not(.theme-dark) .novain-hero-count {
      color: var(--nvcol-68fd23bb14,#3a475b);
    }
    .theme-dark .novain-hero-count {
      color: var(--nvcol-7b11e19ea0,#d9ebff);
    }
    .novain-hero-count {
      font-size: 16px;
      font-weight: 800;
      letter-spacing: .4px;
    }
    @media (max-width: 900px) {
      html:not(.theme-dark) .novain-hero-copy p,
      .theme-dark .novain-hero-copy p {
        font-size: 18px;
      }
      .novain-hero-dots button {
        width: 16px;
        height: 16px;
      }
    }
  