.sc-placeholder{background:color-mix(in srgb,currentColor 8%,transparent);
      border:1px solid color-mix(in srgb,currentColor 50%,transparent);
      border-radius:2px;box-sizing:border-box;overflow:hidden}
    100%{background-position:0% 50%}}
    .sc-placeholder-error{padding:4px 8px;font:11px/1.4 ui-monospace,monospace;
      color:color-mix(in srgb,currentColor 70%,transparent);word-break:break-word}
    .sc-interp.sc-missing{display:inline-block;width:2em;height:1em;overflow:hidden;
      vertical-align:text-bottom;background:rgba(255,255,255,.3);border:1px solid rgba(0,0,0,.5);
      border-radius:2px;box-sizing:border-box;color:transparent;
      user-select:none}
    .sc-interp.sc-unresolved{font-family:ui-monospace,monospace;font-size:.85em;
      color:color-mix(in srgb,currentColor 50%,transparent);
      background:color-mix(in srgb,currentColor 10%,transparent);border-radius:3px;
      padding:0 3px}
    .sc-host.sc-has-error{position:relative}
    .sc-logic-error{position:absolute;top:8px;left:8px;z-index:2147483647;max-width:60ch;
      padding:6px 10px;background:#b00020;color:#fff;font:12px/1.4 ui-monospace,monospace;
      border-radius:4px;white-space:pre-wrap;pointer-events:none}
    /* Mirrors PRINT_BASELINE_CSS in apps/web deck-stage-export.ts — keep both
       in sync until dc-runtime regains a build step. */
    @media print {
      @page { margin: 0.5cm; }
      figure, table { break-inside: avoid; }
      #dc-root, #dc-root > .sc-host { height: auto; }
      *, *::before, *::after {
        print-color-adjust: exact; -webkit-print-color-adjust: exact;
        backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
        animation-delay: -99s !important; animation-duration: .001s !important;
        animation-iteration-count: 1 !important; animation-fill-mode: both !important;
        animation-play-state: running !important; transition-duration: 0s !important;
      }
    }

/* =====================================================================
   Patchwork Health — Design Tokens
   Colors + Typography for all brand materials
   ===================================================================== */

/* ---------- Fonts ---------- */
:root {
  /* ---------- BRAND COLORS ---------- */
  /* Primary */
  --pw-navy: #05405C;          /* Primary navy — main text + brand surface */
  --pw-green: #5EF078;         /* Primary green — accent, CTA on dark, energy */

  /* Secondary */
  --pw-pale-green: #C9F8C9;    /* Calm green wash — large fills, callout cards */
  --pw-purple: #828AFA;        /* Soft purple — illustration / category color */
  --pw-blue: #8FC2FA;          /* Sky blue — illustration / category color */

  /* Neutral */
  --pw-grey: #F5F7F8;          /* Page background grey */
  --pw-white: #FFFFFF;

  /* ---------- DERIVED / TINTED PALETTE ----------
     Built from the navy + green; used for hover, depth, dividers. */
  --pw-navy-900: #03293B;
  --pw-navy-800: #05405C;      /* alias of brand navy */
  --pw-navy-700: #185773;
  --pw-navy-600: #3A7390;
  --pw-navy-500: #6B95AC;
  --pw-navy-400: #9DB7C7;
  --pw-navy-300: #C7D6DF;
  --pw-navy-200: #E2EAEF;
  --pw-navy-100: #EEF3F6;
  --pw-navy-50:  #F5F8FA;

  --pw-green-700: #2CC547;
  --pw-green-600: #44DC60;
  --pw-green-500: #5EF078;     /* alias of brand green */
  --pw-green-300: #A6F6B5;
  --pw-green-200: #C9F8C9;     /* alias of pale green */
  --pw-green-100: #E5FCEA;
  --pw-green-50:  #F2FEF4;

  /* ---------- SEMANTIC COLOR TOKENS ---------- */
  --bg-page: var(--pw-grey);
  --bg-surface: var(--pw-white);
  --bg-surface-alt: var(--pw-navy-50);
  --bg-inverse: var(--pw-navy);
  --bg-accent-soft: var(--pw-green-200);

  --fg-primary: var(--pw-navy);          /* main copy */
  --fg-secondary: var(--pw-navy-600);    /* metadata, captions */
  --fg-tertiary: var(--pw-navy-500);     /* placeholder, faint */
  --fg-inverse: var(--pw-white);
  --fg-on-green: var(--pw-navy);         /* navy on green pill */
  --fg-link: var(--pw-navy);

  --border-default: var(--pw-navy-200);
  --border-strong: var(--pw-navy-300);
  --border-subtle: var(--pw-navy-100);

  --accent-primary: var(--pw-green);     /* CTA, key highlights */
  --accent-secondary: var(--pw-navy);

  /* Status — derived to harmonize with the palette */
  --status-success: #2CC547;
  --status-warning: #F2B233;
  --status-danger:  #E5484D;
  --status-info:    #6B8FE5;

  /* ---------- TYPOGRAPHY ---------- */
  --font-sans: "Euclid Circular B", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
  --font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;

  /* Weights (Euclid Circular B) */
  --weight-light: 300;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;

  /* Type scale — print/brand-anchored.
     Brand-book sizes: 80 / 48 / 11. We scale up to web 16-base
     and add intermediate steps for UI. */
  --fs-display: 80px;          /* Hero headline */
  --fs-h1: 56px;
  --fs-h2: 48px;               /* Section header */
  --fs-h3: 36px;
  --fs-h4: 28px;
  --fs-h5: 22px;
  --fs-h6: 18px;
  --fs-body-lg: 18px;
  --fs-body: 16px;
  --fs-body-sm: 14px;
  --fs-caption: 12px;
  --fs-print-body: 11px;       /* brand spec for printed body */

  /* Line heights */
  --lh-tight: 1.05;    /* @kind font */
  --lh-snug: 1.15;     /* @kind font */
  --lh-normal: 1.35;   /* @kind font */
  --lh-relaxed: 1.55;  /* @kind font */
  --lh-loose: 1.7;     /* @kind font */

  /* Letter spacing */
  --ls-tight: -0.02em;
  --ls-normal: 0;       /* @kind font */
  --ls-wide: 0.04em;
  --ls-eyebrow: 0.12em;

  /* ---------- SPACING (4px grid) ---------- */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;
  --space-32: 128px;

  /* ---------- RADII ---------- */
  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-2xl: 32px;
  --radius-pill: 999px;

  /* ---------- SHADOWS ---------- */
  --shadow-xs: 0 1px 2px rgba(5, 64, 92, 0.06);
  --shadow-sm: 0 2px 6px rgba(5, 64, 92, 0.08);
  --shadow-md: 0 6px 18px rgba(5, 64, 92, 0.10);
  --shadow-lg: 0 18px 40px rgba(5, 64, 92, 0.14);
  --shadow-xl: 0 30px 70px rgba(5, 64, 92, 0.18);
  --shadow-focus: 0 0 0 4px rgba(94, 240, 120, 0.45);

  /* ---------- MOTION ---------- */
  --ease-out: cubic-bezier(0.16, 0.84, 0.32, 1);    /* @kind other */
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);    /* @kind other */
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1); /* @kind other */
  --dur-fast: 120ms;   /* @kind other */
  --dur-base: 200ms;   /* @kind other */
  --dur-slow: 360ms;   /* @kind other */
}

/* =====================================================================
   Semantic type classes (drop these on elements directly)
   ===================================================================== */
.pw-display {
  font-family: var(--font-sans);
  font-weight: var(--weight-medium);
  font-size: var(--fs-display);
  line-height: var(--lh-tight);
  letter-spacing: var(--ls-tight);
  color: var(--fg-primary);
}
.pw-h1 {
  font-family: var(--font-sans);
  font-weight: var(--weight-medium);
  font-size: var(--fs-h1);
  line-height: var(--lh-snug);
  letter-spacing: var(--ls-tight);
  color: var(--fg-primary);
}
.pw-h2 {
  font-family: var(--font-sans);
  font-weight: var(--weight-medium);
  font-size: var(--fs-h2);
  line-height: var(--lh-snug);
  letter-spacing: var(--ls-tight);
  color: var(--fg-primary);
}
.pw-h3 {
  font-family: var(--font-sans);
  font-weight: var(--weight-medium);
  font-size: var(--fs-h3);
  line-height: var(--lh-snug);
  color: var(--fg-primary);
}
.pw-h4 {
  font-family: var(--font-sans);
  font-weight: var(--weight-medium);
  font-size: var(--fs-h4);
  line-height: var(--lh-normal);
  color: var(--fg-primary);
}
.pw-h5 {
  font-family: var(--font-sans);
  font-weight: var(--weight-medium);
  font-size: var(--fs-h5);
  line-height: var(--lh-normal);
  color: var(--fg-primary);
}
.pw-h6 {
  font-family: var(--font-sans);
  font-weight: var(--weight-semibold);
  font-size: var(--fs-h6);
  line-height: var(--lh-normal);
  color: var(--fg-primary);
}
.pw-lead {
  font-family: var(--font-sans);
  font-weight: var(--weight-light);
  font-size: var(--fs-body-lg);
  line-height: var(--lh-relaxed);
  color: var(--fg-primary);
}
.pw-body {
  font-family: var(--font-sans);
  font-weight: var(--weight-light);
  font-size: var(--fs-body);
  line-height: var(--lh-relaxed);
  color: var(--fg-primary);
}
.pw-body-medium {
  font-family: var(--font-sans);
  font-weight: var(--weight-medium);
  font-size: var(--fs-body);
  line-height: var(--lh-relaxed);
  color: var(--fg-primary);
}
.pw-small {
  font-family: var(--font-sans);
  font-weight: var(--weight-regular);
  font-size: var(--fs-body-sm);
  line-height: var(--lh-relaxed);
  color: var(--fg-secondary);
}
.pw-caption {
  font-family: var(--font-sans);
  font-weight: var(--weight-medium);
  font-size: var(--fs-caption);
  line-height: var(--lh-normal);
  color: var(--fg-secondary);
}
.pw-eyebrow {
  font-family: var(--font-sans);
  font-weight: var(--weight-semibold);
  font-size: var(--fs-caption);
  line-height: 1;
  letter-spacing: var(--ls-eyebrow);
  text-transform: uppercase;
  color: var(--fg-secondary);
}
.pw-quote {
  font-family: var(--font-sans);
  font-weight: var(--weight-medium);
  font-size: var(--fs-h4);
  line-height: var(--lh-normal);
  color: var(--fg-primary);
}

/* Useful base reset for design previews */
.pw-base {
  font-family: var(--font-sans);
  color: var(--fg-primary);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* =====================================================================
   Patchwork Health — root stylesheet
   Single entrypoint for consumers: link this one file and you get every
   design token, @font-face declaration and semantic type class.
   ===================================================================== */
@import url("./colors_and_type.css");

html { scroll-behavior:smooth; }
* { box-sizing:border-box; }
html, body { margin:0; padding:0; background:#ffffff; color:var(--pw-navy); font-family:var(--font-sans); -webkit-font-smoothing:antialiased; }
a { color:var(--pw-navy); text-decoration:none; }
a:hover { text-decoration:underline; }
[data-lucide] { width:18px; height:18px; stroke-width:1.5; }
@keyframes pwIn { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:none; } }
@keyframes pwFloat { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-6px); } }
#proof-track::-webkit-scrollbar, #why-track::-webkit-scrollbar, #ts-tabs::-webkit-scrollbar, #ap-tabs::-webkit-scrollbar { display:none; }
#why [style*="scroll-snap-type"]::-webkit-scrollbar { display:none; }
@media (max-width:900px) {
  [data-split] { grid-template-columns:1fr !important; gap:32px !important; padding:32px 22px 36px !important; }
  [data-quad] { grid-template-columns:1fr !important; }
}
.pw-burger { display:none; align-items:center; justify-content:center; }