:root {
    /* Brand: The Internet Funnel — purple-forward system
       (variables keep prior names for backward-compat with existing CSS) */

    /* Brand purple — used in the actual logo only */
    --brand-purple: #5B0FFF;

    /* Deep purple-ink — replaces "navy" in dark sections, headlines, ink */
    --navy: #1A1230;
    --navy-deep: #110A22;
    --navy-soft: #251A40;

    /* System purple — replaces "blue" for accents, buttons, links */
    --blue: #6B47DC;
    --blue-light: #F2EEFF;
    --blue-bright: #7B5BE8;

    /* Light purple — primary accent color, used throughout (variable named --teal for legacy) */
    --teal: #B8A4FF;
    --teal-soft: #F2EEFF;

    /* Light purple — additional alias for clarity in new code */
    --accent-light: #B8A4FF;
    --accent-glow: rgba(184, 164, 255, 0.15);

    /* Warm yellow — used SPARINGLY for star ratings, verified marks, rare contrast moments */
    --accent-yellow: #FFC857;
    --accent-yellow-soft: #FFF4D6;

    /* Surfaces */
    --paper: #ffffff;
    --off-white: #FAFAFD;
    --gray-bg: #F2EEFF;

    /* Type colors */
    --ink: #1A1230;
    --ink-soft: #4A4263;
    --muted: #7A7390;

    /* Lines */
    --line: #E5E1F0;
    --line-dark: #332A52;

    /* Legacy amber (kept for any references) */
    --amber: #FFC857;
  }
  * { margin: 0; padding: 0; box-sizing: border-box; }
  html { scroll-behavior: smooth; }
  body {
    font-family: 'Inter', -apple-system, sans-serif;
    background: var(--paper);
    color: var(--ink);
    line-height: 1.55;
    font-size: 17px;
    -webkit-font-smoothing: antialiased;
  }
  .container { max-width: 1240px; margin: 0 auto; padding: 0 32px; }
  .container-narrow { max-width: 920px; margin: 0 auto; padding: 0 32px; }

  /* Typography */
  h1, h2, h3 { font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif; font-weight: 800; letter-spacing: -0.025em; line-height: 1.1; color: var(--navy); }
  h1 { font-size: clamp(40px, 5.5vw, 68px); }
  h2 { font-size: clamp(30px, 3.8vw, 46px); }
  h3 { font-size: clamp(20px, 2vw, 26px); font-weight: 700; line-height: 1.25; }
  h4 { font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif; font-size: 16px; font-weight: 700; color: var(--navy); }
  p { color: var(--ink-soft); }
  strong { color: var(--ink); font-weight: 700; }
  a { color: var(--blue); text-decoration: none; font-weight: 500; }
  .eyebrow {
    display: inline-block;
    background: var(--blue-light);
    color: var(--blue);
    padding: 6px 14px;
    border-radius: 100px;
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 24px;
    letter-spacing: 0.01em;
  }
  .eyebrow.teal { background: var(--teal-soft); color: var(--blue); }
  .eyebrow.amber { background: var(--accent-yellow-soft); color: #8a5a00; }

  /* Top bar — thin trust strip. Three credentials, tight padding.
     Earns its pixels by carrying three independently-provable claims:
     experience signal, positioning signal, risk-reversal signal. */
  .topbar {
    background: var(--navy-deep);
    color: rgba(255,255,255,0.78);
    font-size: 12.5px;
    padding: 6px 0;
    line-height: 1.4;
    letter-spacing: 0.01em;
  }
  .topbar .container {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
  }
  .topbar-item {
    display: inline-flex;
    align-items: center;
    gap: 16px;
  }
  .topbar-item strong {
    color: white;
    font-weight: 600;
    margin-right: 6px;
  }
  .topbar-sep {
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: rgba(255,255,255,0.3);
    display: inline-block;
  }

  /* Nav */
  nav.main {
    position: sticky; top: 0; z-index: 100;
    background: rgba(255, 255, 255, 0.96);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--line);
    padding: 16px 0;
  }
  nav.main .container { display: flex; align-items: center; justify-content: space-between; gap: 32px; }
  .logo { display: flex; align-items: center; gap: 14px; text-decoration: none; }
  .logo-img {
    height: 44px;
    width: auto;
    display: block;
  }
  /* Fallback: SVG-based brand mark + wordmark if no PNG loads */
  .logo-mark {
    width: 44px; height: 44px;
    background: var(--brand-purple);
    border-radius: 10px;
    position: relative;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 4px 20px rgba(91, 15, 255, 0.25);
    flex-shrink: 0;
  }
  /* Funnel mark inside the logo square — five horizontal stripes tapering down */
  .logo-mark svg {
    width: 22px; height: 22px;
    display: block;
  }
  .logo-text { display: flex; flex-direction: column; line-height: 1.05; }
  .logo-text .name {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 21px;
    font-weight: 900;
    color: var(--brand-purple);
    letter-spacing: -0.03em;
    line-height: 1;
  }
  .logo-text .name .article {
    display: block;
    font-size: 11px;
    font-weight: 500;
    font-style: italic;
    color: var(--ink);
    letter-spacing: 0.04em;
    text-transform: uppercase;
    margin-bottom: 1px;
    line-height: 1;
  }
  .logo-text .sub { font-size: 10.5px; color: var(--muted); font-weight: 500; letter-spacing: 0.06em; text-transform: uppercase; margin-top: 4px; }
  nav.main ul { display: flex; gap: 32px; list-style: none; align-items: center; }
  nav.main ul a { color: var(--ink); font-size: 15px; font-weight: 600; transition: color 0.2s; }
  nav.main ul a:hover { color: var(--blue); }

  /*
    Mobile nav — hamburger + slide-in drawer from right.
    Desktop: hamburger hidden, regular ul nav shown.
    ≤ 720px: ul hidden, hamburger shown, tap to open drawer.
  */
  .nav-hamburger {
    display: none;
    background: transparent;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 0;
    cursor: pointer;
    flex-direction: column;
    gap: 4px;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
  }
  .nav-hamburger span {
    display: block;
    width: 20px;
    height: 2px;
    background: var(--ink);
    border-radius: 1px;
    transition: transform 0.2s, opacity 0.2s;
  }
  .nav-hamburger[aria-expanded="true"] span:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
  }
  .nav-hamburger[aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
  }
  .nav-hamburger[aria-expanded="true"] span:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
  }
  .nav-drawer-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(15, 8, 32, 0.6);
    backdrop-filter: blur(4px);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s;
    z-index: 98;
  }
  .nav-drawer-backdrop.is-open {
    opacity: 1;
    pointer-events: auto;
  }
  .nav-drawer {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: 86%;
    max-width: 360px;
    background: white;
    z-index: 99;
    transform: translateX(100%);
    transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    flex-direction: column;
    padding: 96px 28px 32px;
    overflow-y: auto;
    box-shadow: -8px 0 32px rgba(0, 0, 0, 0.15);
  }
  .nav-drawer.is-open {
    transform: translateX(0);
  }
  .nav-drawer-close {
    position: absolute;
    top: 18px;
    right: 18px;
    width: 40px;
    height: 40px;
    background: transparent;
    border: 1px solid var(--line);
    border-radius: 8px;
    color: var(--ink);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .nav-drawer-list {
    list-style: none;
    margin: 0 0 32px 0;
    padding: 0;
  }
  .nav-drawer-list li {
    border-bottom: 1px solid var(--line);
  }
  .nav-drawer-link {
    display: block;
    padding: 18px 4px;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 16px;
    font-weight: 700;
    color: var(--ink);
    letter-spacing: -0.005em;
  }
  .nav-drawer-link:hover { color: var(--brand-purple); text-decoration: none; }
  .nav-drawer-cta {
    width: 100%;
    justify-content: center;
    padding: 14px 18px;
    font-size: 14px;
  }
  body.nav-drawer-open { overflow: hidden; }
  @media (max-width: 720px) {
    .nav-hamburger { display: flex; }
  }
  .btn {
    display: inline-flex; align-items: center; gap: 8px;
    background: var(--blue);
    color: white;
    padding: 12px 22px; border-radius: 8px;
    font-size: 14px; font-weight: 700;
    border: none; cursor: pointer;
    transition: all 0.2s;
    letter-spacing: 0.01em;
  }
  .btn:hover { background: var(--navy); color: white; transform: translateY(-1px); box-shadow: 0 6px 16px rgba(26, 18, 48, 0.15); }
  .btn-large { padding: 16px 30px; font-size: 16px; }
  .btn-xl { padding: 20px 36px; font-size: 17px; }
  .btn-secondary { background: white; color: var(--navy); border: 2px solid var(--navy); }
  .btn-secondary:hover { background: var(--navy); color: white; }
  .btn-teal { background: var(--teal); color: var(--navy); }
  .btn-teal:hover { background: var(--navy); color: white; }
  .btn-ghost { background: transparent; color: white; border: 2px solid rgba(255,255,255,0.3); }
  .btn-ghost:hover { background: white; color: var(--navy); border-color: white; }
  .btn-dark { background: var(--navy); color: white; }
  .btn-dark:hover { background: var(--brand-purple); color: white; }
  .btn-primary { background: var(--brand-purple); color: white; }
  .btn-primary:hover { background: var(--navy); color: white; }

  /* HERO */
  .hero {
    background: linear-gradient(135deg, #1A1230 0%, #251A40 60%, #2E1F52 100%);
    color: white;
    padding: 56px 0 72px;
    position: relative;
    overflow: hidden;
  }
  .hero::before {
    content: '';
    position: absolute;
    top: -50%; right: -20%;
    width: 800px; height: 800px;
    background: radial-gradient(circle, rgba(184, 164, 255, 0.10) 0%, transparent 60%);
    pointer-events: none;
  }
  .hero::after {
    content: '';
    position: absolute;
    bottom: -30%; left: -10%;
    width: 600px; height: 600px;
    background: radial-gradient(circle, rgba(107, 71, 220, 0.10) 0%, transparent 60%);
    pointer-events: none;
  }
  .hero .container { position: relative; z-index: 1; }
  .hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(380px, 1fr);
    gap: 72px;
    align-items: center;
  }
  .hero-grid > * { min-width: 0; }
  .hero-tag {
    display: inline-flex; align-items: center; gap: 10px;
    background: rgba(184, 164, 255, 0.18);
    border: 1px solid rgba(184, 164, 255, 0.3);
    color: var(--teal);
    padding: 8px 16px; border-radius: 100px;
    font-size: 13px; font-weight: 700;
    margin-bottom: 28px;
    line-height: 1.4;
  }
  @media (max-width: 600px) {
    .hero-tag {
      display: inline-flex;
      flex-wrap: wrap;
      border-radius: 14px;
      padding: 10px 14px;
      font-size: 12px;
    }
  }
  .hero-tag .dot {
    width: 8px; height: 8px;
    background: var(--teal); border-radius: 50%;
    animation: pulse 2s infinite;
  }
  @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.4; } }
  .hero h1 {
    color: white;
    margin-bottom: 24px;
    font-size: clamp(34px, 4.2vw, 56px);
    line-height: 1.08;
  }
  .hero h1 .highlight {
    color: var(--teal);
    position: relative;
  }
  .hero-sub {
    font-size: 20px; line-height: 1.55;
    color: #C8C0E0; margin-bottom: 40px;
    max-width: 56ch;
  }
  /* Two-part hero sub: the claim leads, the detail supports. */
  .hero-sub-claim {
    margin-bottom: 16px;
    color: #E4DEF5;
  }
  .hero-sub-detail {
    font-size: 18px;
    color: #A99FC8;
  }
  .hero-trust { display: flex; align-items: center; gap: 16px; color: #9A92B5; font-size: 14px; }
  .hero-trust-stars { color: var(--amber); font-size: 18px; letter-spacing: 2px; }

  /* Hero lead form — replaces hero case study card as primary conversion mechanism */
  .hero-form-card {
    background: white;
    color: var(--ink);
    border-radius: 16px;
    padding: 32px;
    box-shadow: 0 30px 80px rgba(0,0,0,0.3);
    position: relative;
  }
  .hero-form-label {
    display: inline-block;
    background: var(--brand-purple);
    color: white;
    padding: 6px 14px;
    border-radius: 100px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: 24px;
  }
  .hero-form-card h3 {
    font-size: 22px;
    line-height: 1.25;
    margin-bottom: 8px;
    color: var(--ink);
  }
  .hero-form-card .form-promise {
    color: var(--ink-soft);
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 22px;
  }
  .hero-form { display: flex; flex-direction: column; gap: 12px; }
  .hero-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .hero-form-field { display: flex; flex-direction: column; gap: 5px; }
  .hero-form-field label {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--muted);
  }
  .hero-form-field input,
  .hero-form-field select,
  .hero-form-field textarea {
    background: var(--off-white);
    border: 1px solid var(--line);
    color: var(--ink);
    padding: 10px 12px;
    border-radius: 8px;
    font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
    font-size: 14px;
    transition: all 0.2s;
  }
  .hero-form-field input:focus,
  .hero-form-field select:focus,
  .hero-form-field textarea:focus {
    outline: none;
    border-color: var(--brand-purple);
    background: white;
    box-shadow: 0 0 0 3px rgba(91, 15, 255, 0.08);
  }
  .hero-form-field input::placeholder,
  .hero-form-field textarea::placeholder { color: #A39DBA; }
  .hero-form-field textarea {
    resize: vertical;
    min-height: 60px;
    font-family: inherit;
  }
  /* Honeypot — hidden from humans, catches bots */
  .hero-form-honeypot {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
  }
  .hero-form-submit {
    margin-top: 6px;
    background: var(--brand-purple);
    color: white;
    border: none;
    padding: 14px 20px;
    border-radius: 8px;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s;
    letter-spacing: 0.01em;
  }
  .hero-form-submit:hover {
    background: var(--navy);
    transform: translateY(-1px);
    box-shadow: 0 8px 24px rgba(91, 15, 255, 0.25);
  }
  .hero-form-foot {
    margin-top: 14px;
    font-size: 12.5px;
    color: var(--muted);
    line-height: 1.4;
    text-align: center;
  }
  .hero-form-privacy {
    margin-top: 10px;
    font-size: 11.5px;
    color: var(--muted);
    line-height: 1.5;
    text-align: center;
  }
  .hero-form-privacy a {
    color: var(--brand-purple);
    text-decoration: underline;
    font-weight: 500;
  }
  .hero-form-status {
    margin-top: 14px;
    padding: 0;
    font-size: 14px;
    line-height: 1.5;
    border-radius: 8px;
    text-align: center;
  }
  .hero-form-status.success {
    padding: 14px 16px;
    background: #ECFDF5;
    color: #065F46;
    border: 1px solid #A7F3D0;
  }
  .hero-form-status.error {
    padding: 14px 16px;
    background: #FEF2F2;
    color: #991B1B;
    border: 1px solid #FECACA;
  }

  /* Post-submit thank you — hide form fields, show message only */
  .hero-form-card.is-submitted .hero-form-label,
  .hero-form.is-submitted .form-step,
  .hero-form.is-submitted .hero-form-privacy,
  .hero-form.is-submitted #formStep1Error {
    display: none !important;
  }
  .hero-form-card.is-submitted #leadFormStatus.success {
    margin-top: 0;
    padding: 28px 24px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.55;
  }
  .hero-form-card.is-submitted {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 200px;
  }

  @media (max-width: 720px) {
    .hero-form-row { grid-template-columns: 1fr; }
    .hero-form-card { padding: 24px; }
  }

  /*
    =================================================================
    FORM STEP ARCHITECTURE — Step 1 / Step 2 progressive disclosure
    Step 1 visible by default; Step 2 fades in when Step 1 validates.
    =================================================================
  */
  .form-step {
    display: none;
  }
  .form-step.is-active {
    display: block;
    animation: formStepFadeIn 0.3s ease-out;
  }
  @keyframes formStepFadeIn {
    from { opacity: 0; transform: translateY(4px); }
    to   { opacity: 1; transform: translateY(0); }
  }
  .form-step-indicator {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--brand-purple);
    margin-bottom: 14px;
  }
  .form-step-back {
    background: transparent;
    border: none;
    color: var(--ink-soft);
    font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    padding: 0 0 12px 0;
    margin-bottom: 4px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: color 0.15s;
  }
  .form-step-back:hover { color: var(--brand-purple); }
  .hero-form-label-optional {
    font-weight: 500;
    text-transform: none;
    letter-spacing: 0;
    color: #A39DBA;
  }

  /*
    =================================================================
    STICKY QUOTE BAR — desktop-only fast on-ramp to the hero form.
    Hidden by default. Slides up from the bottom once the hero form
    scrolls out of view. Hides again when user scrolls back into the
    hero, or when they reach the closing CTA section.

    On submit it does NOT post directly — it copies its 3 fields into
    the hero form's Step 1, fires the same Step 1 partial-lead event,
    and smooth-scrolls the user up to the hero form advanced to Step 2.
    One canonical lead path; no data fragmentation.
    =================================================================
  */
  /*
    Sticky quote bar — an inset floating card, not a full-bleed slab.
    It sits inset from the screen edges with rounded corners and a real
    shadow, so it reads as a deliberate floating component (consistent
    with the hero form card, case cards, pricing cards) rather than a
    dark band welded to the viewport bottom.
  */
  .sticky-bar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 95;
    /* The outer element is just a transparent positioning frame.
       The visible surface is .sticky-bar-inner. */
    background: transparent;
    padding: 0 20px 20px;
    transform: translateY(130%);
    transition: transform 0.34s cubic-bezier(0.32, 0.72, 0, 1);
    pointer-events: none;
  }
  .sticky-bar.is-visible {
    transform: translateY(0);
  }
  .sticky-bar.is-visible .sticky-bar-inner {
    pointer-events: auto;
  }
  /* When the cookie banner is showing, lift the bar above it. */
  body.cookie-banner-visible .sticky-bar.is-visible {
    transform: translateY(-76px);
  }
  .sticky-bar-inner {
    position: relative;
    max-width: 1180px;
    margin: 0 auto;
    padding: 14px 16px 14px 24px;
    display: flex;
    align-items: center;
    gap: 18px;
    /* The visible card surface: solid navy, rounded, strongly elevated. */
    background: var(--navy);
    border: 1px solid rgba(184, 164, 255, 0.14);
    border-radius: 14px;
    box-shadow:
      0 2px 8px rgba(15, 8, 32, 0.18),
      0 12px 28px rgba(15, 8, 32, 0.32),
      0 24px 56px rgba(15, 8, 32, 0.30);
  }
  .sticky-bar-label {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    line-height: 1.3;
    padding-right: 6px;
  }
  .sticky-bar-label strong {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 14px;
    font-weight: 800;
    color: white;
    letter-spacing: -0.01em;
  }
  .sticky-bar-label span {
    font-size: 11.5px;
    color: var(--accent-light);
  }
  .sticky-bar-fields {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
  }
  .sticky-bar-fields input {
    flex: 1;
    min-width: 0;
    background: rgba(255, 255, 255, 0.07);
    border: 1px solid rgba(255, 255, 255, 0.16);
    color: white;
    padding: 11px 14px;
    border-radius: 8px;
    font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
    font-size: 14px;
    transition: border-color 0.15s, background 0.15s;
  }
  .sticky-bar-fields input::placeholder { color: #8C84A8; }
  .sticky-bar-fields input:focus {
    outline: none;
    border-color: var(--accent-light);
    background: rgba(255, 255, 255, 0.1);
  }
  .sticky-bar-submit {
    flex-shrink: 0;
    background: var(--brand-purple);
    color: white;
    border: none;
    padding: 12px 24px;
    border-radius: 8px;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.15s, transform 0.15s;
    white-space: nowrap;
  }
  .sticky-bar-submit:hover {
    background: #4A0CD9;
    transform: translateY(-1px);
  }
  .sticky-bar-error {
    position: absolute;
    top: -38px;
    left: 24px;
    background: #FEF2F2;
    color: #991B1B;
    border: 1px solid #FECACA;
    font-size: 12.5px;
    padding: 6px 13px;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(15, 8, 32, 0.16);
    display: none;
  }
  .sticky-bar-error.is-visible { display: block; }

  .sticky-bar-error.success {
    background: rgba(16, 185, 129, 0.15);
    color: #A7F3D0;
    border: 1px solid rgba(16, 185, 129, 0.35);
    border-radius: 10px;
    padding: 14px 18px;
    font-size: 15px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 0;
  }

  .sticky-bar.is-submitted .sticky-bar-inner {
    justify-content: center;
    padding: 18px 24px;
  }
  .sticky-bar.is-submitted .sticky-bar-label,
  .sticky-bar.is-submitted .sticky-bar-fields,
  .sticky-bar.is-submitted .sticky-bar-submit {
    display: none !important;
  }

  /* Desktop-only — never render the sticky bar on tablet/mobile */
  @media (max-width: 980px) {
    .sticky-bar { display: none; }
  }

  /* Cookie consent banner — fixed to the viewport bottom. */
  .cookie-banner {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 96;
    background: var(--navy);
    color: white;
    border-top: 1px solid rgba(184, 164, 255, 0.14);
    box-shadow: 0 -8px 24px rgba(0,0,0,0.15);
    padding: 16px 24px;
    display: none;
    font-size: 14px;
    line-height: 1.5;
  }
  .cookie-banner.is-visible { display: block; }
  body.cookie-banner-visible { padding-bottom: 120px; }
  @media (max-width: 600px) {
    body.cookie-banner-visible { padding-bottom: 200px; }
  }
  .cookie-banner-inner {
    max-width: 1240px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
  }
  .cookie-banner-text {
    flex: 1 1 auto;
    min-width: 280px;
    color: rgba(255,255,255,0.9);
  }
  .cookie-banner-text a {
    color: var(--teal);
    text-decoration: underline;
  }
  .cookie-banner-actions {
    display: flex;
    gap: 10px;
    flex-shrink: 0;
  }
  .cookie-btn {
    padding: 10px 18px;
    border-radius: 6px;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    border: 1px solid transparent;
    transition: all 0.15s;
    letter-spacing: 0.01em;
  }
  .cookie-btn-accept {
    background: var(--brand-purple);
    color: white;
  }
  .cookie-btn-accept:hover { background: #4A0CD9; }
  .cookie-btn-reject {
    background: transparent;
    color: rgba(255,255,255,0.85);
    border-color: rgba(255,255,255,0.3);
  }
  .cookie-btn-reject:hover { background: rgba(255,255,255,0.08); color: white; }
  @media (max-width: 640px) {
    .cookie-banner-inner { flex-direction: column; align-items: stretch; gap: 14px; }
    .cookie-banner-actions { justify-content: stretch; }
    .cookie-btn { flex: 1; }
  }
  /* Revenue counter strip */
  .counter-strip {
    background: var(--navy-deep);
    padding: 32px 0;
    border-bottom: 1px solid var(--navy-soft);
  }
  .counter-strip .container { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
  .counter-item { text-align: center; color: white; }
  .counter-num {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: clamp(28px, 3vw, 40px);
    font-weight: 800; color: var(--teal);
    line-height: 1; letter-spacing: -0.03em;
    margin-bottom: 8px;
  }
  .counter-label {
    font-size: 13px; color: #9A92B5;
    text-transform: uppercase; letter-spacing: 0.05em;
    font-weight: 600;
  }

  /* Section base */
  section { padding: 100px 0; }
  section.alt { background: var(--off-white); }
  section.dark { background: var(--navy); color: white; }
  section.dark h1, section.dark h2, section.dark h3 { color: white; }
  section.dark p { color: #C8C0E0; }

  /* Quiet breathing section — sits between heavy sections, single typographic statement */
  section.quiet {
    background: var(--paper);
    padding: 120px 0 110px;
    text-align: center;
  }
  section.quiet .quiet-eyebrow {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--brand-purple);
    font-weight: 700;
    margin-bottom: 28px;
  }
  section.quiet .quiet-statement {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: clamp(28px, 4.2vw, 44px);
    font-weight: 700;
    line-height: 1.18;
    letter-spacing: -0.015em;
    color: var(--ink);
    max-width: 760px;
    margin: 0 auto 22px;
  }
  section.quiet .quiet-statement em {
    color: var(--brand-purple);
    font-style: normal;
  }
  section.quiet .quiet-support {
    font-size: 16px;
    color: var(--ink-soft);
    max-width: 580px;
    margin: 0 auto;
    line-height: 1.55;
  }
  @media (max-width: 900px) {
    section.quiet { padding: 72px 0 64px; }
    section.quiet .quiet-eyebrow { margin-bottom: 20px; }
  }

  /*
    Thesis section — same visual vocabulary as the breathing section above,
    but accommodates a three-paragraph body with subhead labels.
    Used for the AI / experience positioning section that sits between the
    founder section and pricing.
  */
  section.thesis {
    background: var(--paper);
    padding: 110px 0 100px;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
  }
  section.thesis .thesis-eyebrow {
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--brand-purple);
    font-weight: 700;
    margin-bottom: 24px;
  }
  section.thesis .thesis-statement {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: clamp(26px, 3.6vw, 38px);
    font-weight: 700;
    line-height: 1.22;
    letter-spacing: -0.015em;
    color: var(--ink);
    max-width: 820px;
    margin: 0 auto 56px;
  }
  section.thesis .thesis-statement em {
    color: var(--brand-purple);
    font-style: normal;
  }
  section.thesis .thesis-body {
    max-width: 760px;
    margin: 0 auto;
  }
  section.thesis .thesis-header {
    text-align: center;
    margin-bottom: 0;
  }
  section.thesis .thesis-beat {
    margin-bottom: 32px;
  }
  section.thesis .thesis-beat:last-of-type {
    margin-bottom: 40px;
  }
  section.thesis .thesis-beat-label {
    display: block;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--brand-purple);
    margin-bottom: 10px;
  }
  section.thesis .thesis-beat p {
    font-size: 17px;
    line-height: 1.65;
    color: var(--ink);
    margin: 0;
  }
  section.thesis .thesis-close {
    max-width: 760px;
    margin: 40px auto 0;
    padding-top: 32px;
    border-top: 1px solid var(--line);
    text-align: center;
    font-size: 15px;
    line-height: 1.6;
    color: var(--muted);
    font-style: italic;
  }
  @media (max-width: 900px) {
    section.thesis { padding: 72px 0 64px; }
    section.thesis .thesis-statement { margin-bottom: 40px; }
    section.thesis .thesis-beat { margin-bottom: 28px; }
  }

  .section-header { text-align: center; margin-bottom: 64px; max-width: 760px; margin-left: auto; margin-right: auto; }
  .section-header h2 { margin-bottom: 20px; }
  .section-header p { font-size: 19px; line-height: 1.6; }
  .section-header.left { text-align: left; margin-left: 0; }

  /* Cleaning specialist block */
  .cleaning-hero {
    background: linear-gradient(135deg, var(--blue-light) 0%, var(--teal-soft) 100%);
    border-radius: 20px;
    padding: 64px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 56px;
    align-items: center;
    margin-bottom: 40px;
    position: relative;
    overflow: hidden;
  }
  .cleaning-hero h2 { color: var(--navy); margin-bottom: 24px; }
  .cleaning-hero p { font-size: 18px; line-height: 1.65; color: var(--ink-soft); margin-bottom: 28px; }
  .cleaning-stats-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .cleaning-stat-card {
    background: white;
    border-radius: 12px;
    padding: 28px;
    box-shadow: 0 4px 24px rgba(26, 18, 48, 0.08);
  }
  .cleaning-stat-card .num {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 44px; font-weight: 800;
    color: var(--blue); line-height: 1;
    letter-spacing: -0.03em; margin-bottom: 10px;
  }
  .cleaning-stat-card .num.teal { color: var(--teal); }
  .cleaning-stat-card .label { font-size: 14px; color: var(--ink-soft); line-height: 1.45; font-weight: 500; }

  /* Cities map block */
  .cities-block {
    background: white;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 48px;
  }
  .cities-header { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 36px; flex-wrap: wrap; gap: 16px; }
  .cities-header h3 { color: var(--navy); }
  .cities-meta { color: var(--muted); font-size: 14px; }
  .cities-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
  }
  .city-pill {
    background: var(--off-white);
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 18px 16px;
    text-align: center;
    transition: all 0.2s;
  }
  .city-pill:hover { border-color: var(--blue); transform: translateY(-2px); box-shadow: 0 4px 12px rgba(26, 18, 48, 0.08); }
  .city-pill .name { font-weight: 700; color: var(--navy); font-size: 15px; margin-bottom: 4px; font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif; }
  .city-pill .state { font-size: 12px; color: var(--muted); }
  .city-pill.more {
    background: var(--blue-light);
    border-color: var(--blue);
    color: var(--blue);
    font-weight: 700;
    display: flex; align-items: center; justify-content: center;
  }

  /* Comparison table */
  .compare-grid { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 24px; }
  .compare-col {
    background: white;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 36px;
    position: relative;
  }
  .compare-col.us {
    background: linear-gradient(180deg, var(--navy) 0%, var(--navy-soft) 100%);
    color: white;
    border-color: var(--navy);
    transform: scale(1.03);
    box-shadow: 0 20px 60px rgba(26, 18, 48, 0.25);
  }
  .compare-col.us .compare-col-title { color: white; }
  .compare-col.us .compare-row { border-color: rgba(255,255,255,0.15); color: #C8C0E0; }
  .compare-col.us .check { color: var(--teal); }
  .compare-badge {
    position: absolute; top: -14px; left: 36px;
    background: var(--accent-yellow); color: var(--navy);
    padding: 6px 14px; border-radius: 100px;
    font-size: 11px; font-weight: 800;
    letter-spacing: 0.1em; text-transform: uppercase;
  }
  .compare-col-title {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 22px; font-weight: 800;
    color: var(--navy); margin-bottom: 8px;
  }
  .compare-col-sub { font-size: 13px; color: var(--muted); margin-bottom: 28px; }
  .compare-col.us .compare-col-sub { color: #9A92B5; }
  .compare-row {
    padding: 14px 0 14px 28px;
    border-bottom: 1px solid var(--line);
    font-size: 14.5px;
    line-height: 1.5;
    position: relative;
  }
  .compare-row:last-child { border-bottom: none; }
  .compare-row .check, .compare-row .x {
    position: absolute; left: 0; top: 14px;
    font-weight: 700; font-size: 16px;
  }
  .compare-row .check { color: var(--teal); }
  .compare-row .x { color: #ef4444; }

  /* Methodology grid */
  .method-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }

  /* DMAIC engagement banner — compact 5-card row */
  .engage-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; margin-top: 40px; }
  .engage-card {
    background: white;
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 24px 20px;
    transition: all 0.2s;
    display: flex; flex-direction: column; gap: 14px;
  }
  .engage-card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(26, 18, 48, 0.06); border-color: var(--brand-purple); }
  .engage-num {
    display: inline-flex; align-items: baseline; gap: 8px;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 13px; font-weight: 700;
    color: var(--brand-purple);
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }
  .engage-num .step { font-size: 22px; font-weight: 800; color: var(--brand-purple); letter-spacing: -0.01em; }
  .engage-card h3 {
    font-size: 18px;
    font-weight: 700;
    color: var(--ink);
    margin: 0;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    letter-spacing: -0.01em;
  }
  .engage-card p {
    font-size: 14px;
    line-height: 1.5;
    color: var(--ink-soft);
    margin: 0;
  }
  .engage-framing {
    margin-top: 36px;
    text-align: center;
    font-size: 14.5px;
    color: var(--muted);
    font-style: italic;
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
  }
  @media (max-width: 1000px) {
    .engage-grid { grid-template-columns: repeat(2, 1fr); }
  }
  @media (max-width: 540px) {
    .engage-grid { grid-template-columns: 1fr; }
  }

  .method-card {
    background: white;
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 36px 32px;
    transition: all 0.2s;
  }
  .method-card:hover { transform: translateY(-4px); box-shadow: 0 16px 40px rgba(26, 18, 48, 0.1); border-color: var(--blue); }
  .method-icon {
    width: 56px; height: 56px;
    background: var(--blue-light);
    color: var(--blue);
    border-radius: 12px;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 22px; font-weight: 800;
    margin-bottom: 24px;
  }
  .method-icon.teal { background: var(--teal-soft); color: var(--blue); }
  .method-icon.amber { background: var(--accent-yellow-soft); color: #8a5a00; }
  .method-card h3 { margin-bottom: 14px; }
  .method-card p { font-size: 15.5px; line-height: 1.6; }

  /* Case study cards */
  .case-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
  .case-grid-two { grid-template-columns: repeat(2, 1fr); max-width: 920px; margin: 0 auto; }
  .case-card {
    background: white;
    border: 1px solid var(--line);
    border-radius: 14px;
    overflow: hidden;
    transition: all 0.2s;
    display: flex; flex-direction: column;
  }
  .case-card:hover { transform: translateY(-4px); box-shadow: 0 16px 40px rgba(26, 18, 48, 0.1); border-color: var(--blue); }
  .case-card-head {
    background: linear-gradient(135deg, var(--navy) 0%, var(--navy-soft) 100%);
    color: white;
    padding: 28px;
  }
  .case-card-tag {
    display: inline-block;
    background: rgba(184, 164, 255, 0.22);
    color: var(--teal);
    padding: 4px 12px; border-radius: 100px;
    font-size: 11px; font-weight: 700;
    letter-spacing: 0.08em; text-transform: uppercase;
    margin-bottom: 16px;
  }
  .case-card-head h3 { color: white; font-size: 22px; margin-bottom: 8px; line-height: 1.25; }
  .case-card-meta { font-size: 13px; color: #9A92B5; }
  .case-card-body { padding: 28px; flex: 1; display: flex; flex-direction: column; }
  .case-card-body p { font-size: 15px; line-height: 1.6; margin-bottom: 20px; flex: 1; }
  .case-card-numbers { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; padding-top: 20px; border-top: 1px solid var(--line); }
  .case-card-number {
    background: var(--off-white);
    border-radius: 8px;
    padding: 14px;
  }
  .case-card-number .num {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 24px; font-weight: 800;
    color: var(--blue); line-height: 1;
    margin-bottom: 4px;
  }
  .case-card-number .label { font-size: 11px; color: var(--ink-soft); line-height: 1.4; }

  /* === Flagship case study deep-dive === */
  .case-deep {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 8px 28px rgba(26, 18, 48, 0.06);
    margin-bottom: 56px;
  }
  .case-deep-hero {
    background: linear-gradient(135deg, var(--navy) 0%, var(--navy-soft) 100%);
    color: white;
    padding: 48px 56px 44px;
    position: relative;
    overflow: hidden;
  }
  .case-deep-hero::before {
    content: '';
    position: absolute;
    top: -180px; right: -180px;
    width: 520px; height: 520px;
    background: radial-gradient(circle, rgba(184, 164, 255, 0.14) 0%, transparent 60%);
    pointer-events: none;
  }
  .case-deep-tag {
    display: inline-block;
    background: var(--brand-purple);
    color: white;
    padding: 6px 14px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 18px;
    position: relative;
    z-index: 1;
  }
  .case-deep-hero h3 {
    color: white;
    font-size: 36px;
    line-height: 1.18;
    margin-bottom: 16px;
    max-width: 760px;
    position: relative;
    z-index: 1;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-weight: 800;
    letter-spacing: -0.01em;
  }
  .case-deep-hero p.lead {
    font-size: 17px;
    line-height: 1.6;
    color: rgba(255,255,255,0.82);
    max-width: 760px;
    position: relative;
    z-index: 1;
  }
  .case-deep-meta {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    background: var(--navy-deep);
    color: white;
    padding: 24px 56px;
    border-top: 1px solid rgba(255,255,255,0.08);
  }
  .case-deep-meta-item .lbl {
    display: block;
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--accent-light);
    margin-bottom: 6px;
  }
  .case-deep-meta-item .val {
    font-size: 17px;
    font-weight: 700;
    color: white;
  }

  .case-deep-body { padding: 48px 56px; }
  .case-deep-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-bottom: 40px;
  }
  .case-deep-block h4 {
    font-size: 13px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--brand-purple);
    margin-bottom: 14px;
    font-weight: 700;
  }
  .case-deep-block p {
    font-size: 15.5px;
    line-height: 1.65;
    color: var(--ink-soft);
  }
  .case-deep-block ul {
    list-style: none;
    padding: 0;
  }
  .case-deep-block ul li {
    font-size: 15px;
    line-height: 1.55;
    color: var(--ink-soft);
    padding: 8px 0 8px 22px;
    position: relative;
  }
  .case-deep-block ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 16px;
    width: 8px;
    height: 8px;
    background: var(--brand-purple);
    border-radius: 2px;
  }

  .case-deep-strategy {
    background: var(--gray-bg);
    padding: 40px 56px;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
  }
  .case-deep-strategy-header {
    margin-bottom: 28px;
  }
  .case-deep-strategy-header h4 {
    font-size: 13px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--brand-purple);
    margin-bottom: 8px;
    font-weight: 700;
  }
  .case-deep-strategy-header h5 {
    font-size: 24px;
    color: var(--ink);
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-weight: 700;
    letter-spacing: -0.01em;
  }
  .case-deep-pillars {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
  .case-deep-strategy-footer {
    margin-top: 28px;
    padding: 20px 24px;
    background: var(--paper);
    border-left: 3px solid var(--brand-purple);
    border-radius: 6px;
    font-size: 14.5px;
    line-height: 1.55;
    color: var(--ink-soft);
  }
  .case-deep-strategy-footer strong { color: var(--ink); }
  .case-pillar {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 24px 26px;
    transition: all 0.2s ease;
  }
  .case-pillar:hover {
    border-color: var(--brand-purple);
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(91, 15, 255, 0.08);
  }
  .case-pillar-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: var(--brand-purple);
    color: white;
    border-radius: 8px;
    font-weight: 700;
    font-size: 14px;
    margin-bottom: 12px;
  }
  .case-pillar h6 {
    font-size: 16px;
    color: var(--ink);
    margin-bottom: 8px;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-weight: 700;
  }
  .case-pillar p {
    font-size: 14px;
    line-height: 1.55;
    color: var(--ink-soft);
  }

  .case-deep-results {
    padding: 48px 56px;
    background: var(--paper);
  }
  .case-deep-results-header {
    margin-bottom: 28px;
  }
  .case-deep-results-header h4 {
    font-size: 13px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--brand-purple);
    margin-bottom: 8px;
    font-weight: 700;
  }
  .case-deep-results-header h5 {
    font-size: 24px;
    color: var(--ink);
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-weight: 700;
    letter-spacing: -0.01em;
  }
  .case-deep-metrics {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px 32px;
    margin-bottom: 32px;
  }
  .case-metric {
    background: transparent;
    border-radius: 0;
    padding: 20px 0 20px 18px;
    border-left: 2px solid var(--brand-purple);
  }
  .case-metric .big {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 36px;
    font-weight: 800;
    color: var(--brand-purple);
    line-height: 1;
    margin-bottom: 8px;
    letter-spacing: -0.02em;
  }
  .case-metric .ttl {
    font-size: 13px;
    font-weight: 600;
    color: var(--ink);
    margin-bottom: 4px;
  }
  .case-metric .sub {
    font-size: 12px;
    color: var(--muted);
    line-height: 1.45;
  }

  .case-traffic-split {
    background: var(--gray-bg);
    border-radius: 14px;
    padding: 28px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 28px;
    align-items: center;
  }
  .case-traffic-split-text h6 {
    font-size: 13px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--brand-purple);
    margin-bottom: 10px;
    font-weight: 700;
  }
  .case-traffic-split-text p {
    font-size: 14.5px;
    line-height: 1.6;
    color: var(--ink-soft);
  }
  .case-traffic-bar {
    display: flex;
    height: 56px;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(26, 18, 48, 0.08);
  }
  .case-traffic-bar .seg {
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 700;
    font-size: 14px;
    flex-direction: column;
    gap: 2px;
  }
  .case-traffic-bar .seg .pct { font-size: 18px; }
  .case-traffic-bar .seg .lbl { font-size: 11px; opacity: 0.85; letter-spacing: 0.06em; }
  .case-traffic-bar .seg-google { background: var(--blue); flex: 40; }
  .case-traffic-bar .seg-bing { background: var(--brand-purple); flex: 60; }

  .case-deep-footer {
    background: var(--navy);
    color: white;
    padding: 32px 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
  }
  .case-deep-footer-text {
    font-size: 15px;
    line-height: 1.5;
    color: rgba(255,255,255,0.82);
    max-width: 560px;
  }
  .case-deep-footer-text strong { color: white; }

  /* Responsive: tablet & mobile */
  @media (max-width: 900px) {
    .case-deep-hero { padding: 36px 28px 32px; }
    .case-deep-hero h3 { font-size: 28px; }
    .case-deep-meta { grid-template-columns: repeat(2, 1fr); padding: 22px 28px; gap: 18px; }
    .case-deep-body { padding: 36px 28px; }
    .case-deep-grid { grid-template-columns: 1fr; gap: 28px; margin-bottom: 28px; }
    .case-deep-strategy { padding: 32px 28px; }
    .case-deep-pillars { grid-template-columns: 1fr; }
    .case-deep-results { padding: 36px 28px; }
    .case-deep-metrics { grid-template-columns: repeat(2, 1fr); }
    .case-traffic-split { grid-template-columns: 1fr; }
    .case-deep-footer { padding: 28px; }
  }
  @media (max-width: 520px) {
    .case-deep-hero h3 { font-size: 24px; }
    .case-deep-meta { grid-template-columns: 1fr; }
    .case-deep-metrics { grid-template-columns: 1fr; }
  }

  /* Founder / Leadership section */
  .founder-section {
    background: linear-gradient(135deg, var(--navy) 0%, var(--navy-soft) 100%);
    color: white;
    position: relative;
    overflow: hidden;
  }
  .founder-section::before {
    content: '';
    position: absolute;
    top: -200px; right: -200px;
    width: 700px; height: 700px;
    background: radial-gradient(circle, rgba(184, 164, 255, 0.14) 0%, transparent 60%);
    pointer-events: none;
  }
  .founder-section::after {
    content: '';
    position: absolute;
    bottom: -200px; left: -200px;
    width: 600px; height: 600px;
    background: radial-gradient(circle, rgba(107, 71, 220, 0.12) 0%, transparent 60%);
    pointer-events: none;
  }
  .founder-section .container { position: relative; z-index: 1; }
  .founder-grid {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 72px;
    align-items: center;
  }
  .founder-intro .eyebrow {
    background: rgba(184, 164, 255, 0.18);
    color: var(--teal);
  }
  .founder-intro h2 {
    color: white;
    margin-bottom: 28px;
    line-height: 1.1;
  }
  .founder-intro h2 em {
    color: var(--teal);
    font-style: normal;
    font-weight: 800;
  }
  .founder-intro p {
    color: #C8C0E0;
    font-size: 17.5px;
    line-height: 1.7;
    margin-bottom: 20px;
  }
  .founder-intro p strong { color: white; }
  .founder-signature {
    margin-top: 36px;
    padding-top: 28px;
    border-top: 1px solid rgba(255,255,255,0.12);
    display: flex; align-items: center; gap: 16px;
  }
  .founder-signature-mark {
    width: 48px; height: 48px;
    background: var(--brand-purple);
    border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    color: white;
    font-weight: 900;
    font-size: 18px;
    letter-spacing: -0.02em;
    box-shadow: 0 4px 16px rgba(91, 15, 255, 0.4);
  }
  .founder-signature-name {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-weight: 800;
    color: white;
    font-size: 18px;
    line-height: 1.2;
  }
  .founder-signature-role {
    color: #9A92B5;
    font-size: 13px;
    margin-top: 2px;
    letter-spacing: 0.02em;
  }

  /* Quote card — featured pull quote from founder */
  .quote-card {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 16px;
    padding: 56px 48px;
    backdrop-filter: blur(8px);
    position: relative;
    overflow: hidden;
  }
  .quote-card::before {
    content: '"';
    position: absolute;
    top: -20px; left: 24px;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 240px;
    line-height: 1;
    color: var(--teal);
    opacity: 0.18;
    pointer-events: none;
    font-weight: 800;
  }
  .quote-card-eyebrow {
    display: inline-block;
    background: rgba(184, 164, 255, 0.18);
    color: var(--teal);
    padding: 6px 14px;
    border-radius: 100px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    margin-bottom: 28px;
    position: relative;
    z-index: 1;
  }
  .quote-card blockquote {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 22px;
    line-height: 1.55;
    font-weight: 500;
    color: white;
    letter-spacing: -0.01em;
    margin: 0 0 36px;
    position: relative;
    z-index: 1;
  }
  .quote-card blockquote em {
    color: var(--teal);
    font-style: normal;
    font-weight: 700;
  }
  .quote-attribution {
    padding-top: 28px;
    border-top: 1px solid rgba(255,255,255,0.12);
    position: relative;
    z-index: 1;
  }
  .quote-attribution .name {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-weight: 800;
    color: white;
    font-size: 18px;
    letter-spacing: -0.01em;
    margin-bottom: 4px;
  }
  .quote-attribution .role {
    color: #9A92B5;
    font-size: 13.5px;
    letter-spacing: 0.02em;
  }
  .quote-attribution .role strong { color: var(--teal); font-weight: 700; }

  /* Quote card responsive */
  @media (max-width: 980px) {
    .quote-card { padding: 36px 28px; }
    .quote-card blockquote { font-size: 19px; }
    .quote-card::before { font-size: 160px; top: -10px; left: 12px; }
  }

  /* Operational artifact slot — placeholder for real dashboard/SOP/audit screenshot */
  .artifact-slot {
    margin-top: 28px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px dashed rgba(184, 164, 255, 0.3);
    border-radius: 12px;
    padding: 24px;
    text-align: center;
  }
  .artifact-slot-label {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--accent-light);
    margin-bottom: 12px;
  }
  .artifact-slot-text {
    color: #C8C0E0;
    font-size: 14px;
    line-height: 1.55;
    font-style: italic;
  }
  .artifact-slot-text strong { color: white; font-style: normal; }
  .artifact-mock-bars {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 6px;
    height: 60px;
    margin: 12px auto 16px;
    opacity: 0.5;
    max-width: 240px;
  }
  .artifact-mock-bars span {
    flex: 1;
    background: linear-gradient(180deg, var(--accent-light) 0%, rgba(184, 164, 255, 0.3) 100%);
    border-radius: 3px 3px 0 0;
  }
  .artifact-mock-bars span:nth-child(1) { height: 35%; }
  .artifact-mock-bars span:nth-child(2) { height: 55%; }
  .artifact-mock-bars span:nth-child(3) { height: 42%; }
  .artifact-mock-bars span:nth-child(4) { height: 75%; }
  .artifact-mock-bars span:nth-child(5) { height: 62%; }
  .artifact-mock-bars span:nth-child(6) { height: 88%; }
  .artifact-mock-bars span:nth-child(7) { height: 71%; }

  /* Team execution callout below founder section */
  .team-callout {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    padding: 24px 28px;
    margin-top: 28px;
    font-size: 14.5px;
    color: #C8C0E0;
    line-height: 1.6;
  }
  .team-callout strong { color: white; }

  /* Founder section responsive */
  @media (max-width: 980px) {
    .founder-grid { grid-template-columns: 1fr; gap: 48px; }
  }
  .pricing-universal {
    background: linear-gradient(135deg, var(--blue-light) 0%, var(--teal-soft) 100%);
    border-radius: 16px;
    padding: 40px 48px;
    margin-bottom: 32px;
  }
  .pricing-universal-head {
    display: flex; align-items: baseline; gap: 16px;
    margin-bottom: 24px;
    flex-wrap: wrap;
  }
  .pricing-universal-head h3 {
    color: var(--navy);
    font-size: 22px;
    margin: 0;
  }
  .pricing-universal-head span {
    font-size: 14px;
    color: var(--ink-soft);
    font-weight: 500;
  }
  .pricing-universal-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
  }
  .pricing-universal-item {
    background: white;
    border-radius: 10px;
    padding: 16px 20px;
    font-size: 14px;
    color: var(--ink);
    font-weight: 500;
    line-height: 1.4;
    display: flex; align-items: flex-start; gap: 10px;
  }
  .pricing-universal-item::before {
    content: '✓';
    color: var(--teal);
    font-weight: 800;
    flex-shrink: 0;
  }
  .pricing-table-wrap {
    background: white;
    border: 1px solid var(--line);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 24px rgba(26, 18, 48, 0.05);
  }
  .pricing-table { width: 100%; border-collapse: collapse; }
  .pricing-table thead {
    background: var(--navy);
    color: white;
  }
  .pricing-table thead th {
    padding: 20px 24px;
    text-align: left;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: white;
  }
  .pricing-table thead th:last-child { text-align: center; }
  .pricing-table tbody tr {
    border-bottom: 1px solid var(--line);
    transition: background 0.15s;
  }
  .pricing-table tbody tr:last-child { border-bottom: none; }
  .pricing-table tbody tr:hover { background: var(--off-white); }
  .pricing-table tbody tr.featured-row {
    background: linear-gradient(90deg, var(--blue-light) 0%, transparent 100%);
  }
  .pricing-table tbody tr.featured-row:hover { background: linear-gradient(90deg, var(--blue-light) 0%, var(--off-white) 100%); }
  .pricing-table td { padding: 24px; vertical-align: middle; }
  .pricing-table .col-spend {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-weight: 800;
    color: var(--navy);
    font-size: 17px;
  }
  .pricing-table .col-spend-sub {
    display: block;
    font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
    font-size: 12px;
    color: var(--muted);
    font-weight: 500;
    margin-top: 4px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }
  .pricing-table .col-fee {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 26px;
    font-weight: 800;
    color: var(--blue);
    letter-spacing: -0.02em;
    line-height: 1;
  }
  .pricing-table .col-fee-sub {
    display: block;
    font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
    font-size: 12px;
    color: var(--muted);
    font-weight: 500;
    margin-top: 6px;
  }
  .pricing-table .col-platforms {
    font-size: 14px;
    color: var(--ink);
    font-weight: 600;
    line-height: 1.4;
  }
  .pricing-table .col-platforms-sub {
    display: block;
    font-size: 12px;
    color: var(--muted);
    font-weight: 500;
    margin-top: 4px;
  }
  .pricing-table .col-pages {
    text-align: center;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 22px;
    font-weight: 800;
    color: var(--navy);
  }
  .pricing-table .col-pages-sub {
    display: block;
    font-size: 11px;
    color: var(--muted);
    font-weight: 500;
    margin-top: 4px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }
  .pricing-cta-row {
    background: var(--off-white);
    padding: 28px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap;
  }
  .pricing-cta-row p {
    font-size: 15px;
    color: var(--ink-soft);
    margin: 0;
  }
  .pricing-cta-row strong { color: var(--navy); }
  .pricing-fine {
    margin-top: 24px;
    text-align: center;
    font-size: 13px;
    color: var(--muted);
    line-height: 1.6;
  }
  .pricing-fine strong { color: var(--ink-soft); }

  /* Original pricing-grid (legacy, unused in v4 but kept for safety) */
  .pricing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; align-items: stretch; }
  .tier {
    background: white;
    border: 2px solid var(--line);
    padding: 40px 32px;
    border-radius: 16px;
    display: flex; flex-direction: column;
    position: relative;
  }
  .tier.featured {
    background: var(--navy);
    color: white;
    border-color: var(--teal);
    transform: scale(1.03);
    box-shadow: 0 20px 60px rgba(26, 18, 48, 0.2);
  }
  .tier.featured h3, .tier.featured .price { color: white; }
  .tier.featured p, .tier.featured li { color: #C8C0E0; }
  .tier.featured .tier-desc { color: var(--teal); }
  .tier.featured li::before { color: var(--teal); }
  .tier-badge {
    position: absolute; top: -14px; left: 32px;
    background: var(--accent-yellow); color: var(--navy);
    padding: 6px 14px; border-radius: 100px;
    font-size: 11px; font-weight: 800;
    letter-spacing: 0.1em; text-transform: uppercase;
  }
  .tier h3 { font-size: 24px; margin-bottom: 6px; }
  .tier-desc { font-size: 13px; color: var(--blue); font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: 28px; }
  .price {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 54px; font-weight: 800;
    line-height: 1; color: var(--navy);
    margin-bottom: 6px;
    letter-spacing: -0.03em;
  }
  .price-unit { font-size: 16px; color: var(--muted); font-weight: 500; }
  .tier.featured .price-unit { color: #9A92B5; }
  .price-overage { font-size: 13px; color: var(--ink-soft); margin: 8px 0 28px; }
  .tier.featured .price-overage { color: #9A92B5; }
  .tier ul { list-style: none; margin: 0 0 32px; padding: 24px 0 0; border-top: 1px solid var(--line); }
  .tier.featured ul { border-color: rgba(255,255,255,0.15); }
  .tier li {
    font-size: 14.5px; padding: 8px 0 8px 28px;
    position: relative; line-height: 1.5;
    color: var(--ink-soft);
  }
  .tier li::before {
    content: '✓'; position: absolute; left: 0; top: 8px;
    font-weight: 800; color: var(--blue); font-size: 14px;
  }
  .tier .btn { margin-top: auto; align-self: stretch; justify-content: center; }

  /* Promises */
  .promises { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
  .promise {
    background: white;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 40px;
    position: relative;
  }
  section.dark .promise {
    background: var(--navy-soft);
    border-color: rgba(255,255,255,0.1);
  }
  .promise-num {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 14px; font-weight: 800;
    color: var(--teal); margin-bottom: 16px;
    letter-spacing: 0.1em;
  }
  .promise h3 { margin-bottom: 16px; }
  .promise p { font-size: 16px; line-height: 1.6; }
  .promise-fine {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid rgba(255,255,255,0.1);
    font-size: 13px; color: #9A92B5;
    font-style: italic; line-height: 1.5;
  }
  section:not(.dark) .promise-fine {
    border-top-color: var(--line);
    color: var(--muted);
  }

  /* FAQ */
  .faq-grid { display: grid; grid-template-columns: 1fr 2fr; gap: 64px; align-items: start; }
  .faq-intro h2 { margin-bottom: 20px; }
  .faq-intro p { font-size: 17px; line-height: 1.65; }
  .faq-list { display: flex; flex-direction: column; gap: 4px; }
  .faq-item {
    background: white;
    border: 1px solid var(--line);
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.2s;
  }
  .faq-item[open] { border-color: var(--blue); box-shadow: 0 4px 16px rgba(26, 18, 48, 0.06); }
  .faq-item summary {
    padding: 20px 28px;
    cursor: pointer;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-weight: 700;
    color: var(--navy);
    font-size: 16.5px;
    list-style: none;
    display: flex; justify-content: space-between; align-items: center;
    gap: 16px;
  }
  .faq-item summary::-webkit-details-marker { display: none; }
  .faq-item summary::after {
    content: '+';
    font-size: 24px;
    color: var(--blue);
    font-weight: 400;
    transition: transform 0.2s;
  }
  .faq-item[open] summary::after { transform: rotate(45deg); }
  .faq-item-body { padding: 0 28px 24px; }
  .faq-item-body p { font-size: 15.5px; line-height: 1.65; }
  .faq-item-body p + p { margin-top: 12px; }

  /*
    Closing CTA section — compact closing block (replaces previous duplicate contact form).
    Inner styling sits on top of the existing .cta-final dark gradient (defined below).
    Two action paths: scroll-to-top (primary) and email (secondary).
  */
  .cta-final-block {
    text-align: center;
    max-width: 640px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
  }
  .cta-final-actions {
    display: flex;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: 32px;
  }
  .cta-final-foot {
    margin-top: 32px;
    font-size: 13.5px;
    color: #9A92B5;
    letter-spacing: 0.04em;
  }
  @media (max-width: 640px) {
    .cta-final-actions { flex-direction: column; gap: 12px; }
    .cta-final-actions .btn { width: 100%; justify-content: center; }
  }

  /* 90-Day Timeline — Visual Breather Section */
  .timeline-section {
    background: linear-gradient(180deg, var(--off-white) 0%, #F5F1FF 100%);
    padding: 80px 0;
  }
  .timeline-header {
    text-align: center;
    max-width: 640px;
    margin: 0 auto 56px;
  }
  .timeline-header h2 {
    font-size: clamp(28px, 3.2vw, 38px);
    margin-bottom: 14px;
  }
  .timeline-header p {
    font-size: 16px;
    line-height: 1.6;
  }
  .timeline-rail {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    position: relative;
    max-width: 1080px;
    margin: 0 auto;
  }
  .timeline-rail::before {
    content: '';
    position: absolute;
    top: 28px;
    left: 12%;
    right: 12%;
    height: 2px;
    background: linear-gradient(90deg, var(--blue) 0%, var(--accent-light) 100%);
    z-index: 0;
  }
  .timeline-step {
    text-align: center;
    position: relative;
    padding: 0 16px;
  }
  .timeline-dot {
    width: 56px; height: 56px;
    border-radius: 50%;
    background: white;
    border: 3px solid var(--blue);
    margin: 0 auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-weight: 800;
    font-size: 14px;
    color: var(--blue);
    position: relative;
    z-index: 1;
    box-shadow: 0 4px 12px rgba(107, 71, 220, 0.15);
  }
  .timeline-step h4 {
    font-family: 'Manrope', 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 16px;
    font-weight: 800;
    color: var(--navy);
    margin-bottom: 8px;
  }
  .timeline-step p {
    font-size: 14px;
    line-height: 1.5;
    color: var(--ink-soft);
    max-width: 220px;
    margin: 0 auto;
  }

  @media (max-width: 820px) {
    .timeline-rail { grid-template-columns: 1fr; gap: 32px; }
    .timeline-rail::before { display: none; }
    .timeline-step { padding: 0 20px; }
  }
  .cta-final {
    background: linear-gradient(135deg, var(--navy) 0%, var(--navy-soft) 100%);
    color: white;
    text-align: center;
    padding: 120px 0;
    position: relative;
    overflow: hidden;
  }
  .cta-final::before {
    content: ''; position: absolute;
    top: -200px; left: 50%;
    transform: translateX(-50%);
    width: 800px; height: 800px;
    background: radial-gradient(circle, rgba(184, 164, 255, 0.20) 0%, transparent 60%);
    pointer-events: none;
  }
  .cta-final .container-narrow { position: relative; z-index: 1; }
  .cta-final h2 { color: white; margin-bottom: 20px; }
  .cta-final .lead { font-size: 19px; color: #C8C0E0; margin-bottom: 48px; max-width: 56ch; margin-left: auto; margin-right: auto; }

  /* Footer */
  footer {
    background: var(--navy-deep);
    color: #C8C0E0;
    padding: 80px 0 36px;
  }
  .footer-grid {
    display: grid; grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 48px; padding-bottom: 56px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    margin-bottom: 32px;
  }
  footer h4 { color: var(--teal); margin-bottom: 20px; font-size: 12px; text-transform: uppercase; letter-spacing: 0.1em; }
  footer ul { list-style: none; }
  footer li { margin-bottom: 10px; }
  footer a { color: #C8C0E0; font-size: 14px; font-weight: 500; }
  footer a:hover { color: var(--teal); }
  .footer-brand p { color: #9A92B5; font-size: 14px; max-width: 36ch; margin-top: 16px; line-height: 1.6; }
  .footer-bottom { display: flex; justify-content: space-between; font-size: 13px; color: #6b7785; flex-wrap: wrap; gap: 16px; }

  /* Responsive */
  @media (max-width: 980px) {
    section { padding: 64px 0; }
    .hero { padding: 50px 0 70px; }
    .hero-grid { grid-template-columns: 1fr; gap: 48px; }
    .counter-strip .container { grid-template-columns: repeat(3, 1fr); gap: 24px; }
    .cleaning-hero { grid-template-columns: 1fr; padding: 36px; gap: 32px; }
    .cities-grid { grid-template-columns: repeat(2, 1fr); }
    .compare-grid { grid-template-columns: 1fr; gap: 16px; }
    .compare-col.us { transform: none; }
    .method-grid { grid-template-columns: 1fr; }
    .case-grid { grid-template-columns: 1fr; }
    .pricing-grid { grid-template-columns: 1fr; }
    .tier.featured { transform: none; }
    .pricing-universal-grid { grid-template-columns: 1fr 1fr; }
    .pricing-universal { padding: 28px; }
    .pricing-table thead { display: none; }
    .pricing-table, .pricing-table tbody, .pricing-table tr, .pricing-table td { display: block; width: 100%; }
    .pricing-table tbody tr { padding: 20px; border-bottom: 1px solid var(--line); }
    .pricing-table tbody tr:last-child { border-bottom: none; }
    .pricing-table td { padding: 6px 0; }
    .pricing-table td::before {
      content: attr(data-label);
      display: block;
      font-size: 11px;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      color: var(--muted);
      font-weight: 700;
      margin-bottom: 4px;
    }
    .pricing-table .col-pages { text-align: left; }
    .pricing-cta-row { flex-direction: column; align-items: flex-start; }
    .promises { grid-template-columns: 1fr; }
    .faq-grid { grid-template-columns: 1fr; gap: 32px; }
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
    nav.main ul { display: none; }
    .topbar { display: none; }
  }

  /* Small mobile (≤ 600px) — single-column for cramped grids */
  @media (max-width: 600px) {
    .pricing-universal-grid { grid-template-columns: 1fr; }
    .footer-grid { grid-template-columns: 1fr; gap: 28px; }
    .counter-strip .container { grid-template-columns: 1fr; gap: 20px; }
  }

  /*
    Reduced-motion support — accessibility.
    Users who set "reduce motion" in their OS get a still, calm page:
    no animations, no transitions, no smooth-scroll. Functionality is
    unchanged — only the motion is removed.
  */
  @media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: 0.01ms !important;
      scroll-behavior: auto !important;
    }
    html { scroll-behavior: auto !important; }
  }