/* Lumane Health — /discharge-teams
   Static build of the "Case managers page" from the Lumane Health design system
   (ui_kits/marketing_site/case-managers.html). Tokens are copied verbatim from the
   design system's tokens/*.css; component classes (.btn, .badge, .field, .progress)
   reproduce the React primitives' rendered styles. */

/* ── Tokens ─────────────────────────────────────────────── */
:root{
/* ── Base: Terracotta (brand primary, #E2725B) ───────────────────── */
--terracotta-50:#FDF4F1;--terracotta-100:#F9E2DB;--terracotta-200:#F2C6B9;--terracotta-300:#EBA895;--terracotta-400:#E68D75;--terracotta-500:#E2725B;--terracotta-600:#C85A43;--terracotta-700:#A54732;--terracotta-800:#7B3526;--terracotta-900:#4F221A;
/* ── Base: Cream (warm paper surfaces, #F2EEE1) ──────────────────── */
--cream-50:#FBF9F3;--cream-100:#F7F4EA;--cream-200:#F2EEE1;--cream-300:#E7E1CE;--cream-400:#D9D1B9;--cream-500:#C4BAA0;
/* ── Base: Ink (navy text ramp, #24324E) ─────────────────────────── */
--ink-900:#141C2C;--ink-800:#1B2538;--ink-700:#24324E;--ink-600:#3D4C6B;--ink-500:#5D6B87;--ink-400:#8590A5;--ink-300:#AEB6C4;--ink-200:#D3D8E0;--ink-100:#E7EAEF;--ink-0:#FFFFFF;
/* ── Base: Semantic hues ─────────────────────────────────────────── */
--sage-100:#E4EDE6;--sage-200:#C6D8CB;--sage-500:#5B8468;--sage-700:#3D6049;
--amber-100:#F8EED6;--amber-200:#EFDBAC;--amber-500:#C08A2B;--amber-700:#8C6014;
--crimson-100:#F7DEDA;--crimson-200:#EEBCB4;--crimson-500:#B33A2B;--crimson-700:#8A281B;
--slate-100:#E0E8EE;--slate-200:#BFD0DC;--slate-500:#4A6C82;--slate-700:#32505F;

/* ── Semantic: text ──────────────────────────────────────────────── */
--text-body:var(--ink-700);--text-heading:var(--ink-800);--text-display:var(--ink-900);--text-muted:var(--ink-500);--text-subtle:var(--ink-400);--text-accent:var(--terracotta-700);--text-on-accent:#FFFFFF;--text-on-ink:var(--cream-200);--text-link:var(--terracotta-700);--text-link-hover:var(--terracotta-800);--text-disabled:var(--ink-300);

/* ── Semantic: surfaces ──────────────────────────────────────────── */
--surface-page:var(--cream-200);--surface-card:#FFFDF8;--surface-raised:#FFFFFF;--surface-sunken:var(--cream-300);--surface-inset:var(--cream-100);--surface-accent:var(--terracotta-500);--surface-accent-soft:var(--terracotta-50);--surface-ink:var(--ink-800);--surface-overlay:rgba(20,28,44,.46);

/* ── Semantic: borders ───────────────────────────────────────────── */
--border-hairline:var(--cream-400);--border-default:#DCD4BF;--border-strong:var(--ink-300);--border-ink:var(--ink-700);--border-accent:var(--terracotta-500);--border-focus:var(--terracotta-600);

/* ── Semantic: status (discharge readiness vocabulary) ───────────── */
--status-ready-fg:var(--sage-700);--status-ready-bg:var(--sage-100);--status-ready-border:var(--sage-200);
--status-pending-fg:var(--amber-700);--status-pending-bg:var(--amber-100);--status-pending-border:var(--amber-200);
--status-blocked-fg:var(--crimson-700);--status-blocked-bg:var(--crimson-100);--status-blocked-border:var(--crimson-200);
--status-info-fg:var(--slate-700);--status-info-bg:var(--slate-100);--status-info-border:var(--slate-200);
--status-neutral-fg:var(--ink-600);--status-neutral-bg:var(--ink-100);--status-neutral-border:var(--ink-200);

/* ── Semantic: interaction ───────────────────────────────────────── */
--action-primary-bg:var(--terracotta-500);--action-primary-bg-hover:var(--terracotta-600);--action-primary-bg-active:var(--terracotta-700);
--action-secondary-bg:transparent;--action-secondary-border:var(--ink-700);--action-secondary-bg-hover:var(--ink-700);
--action-ghost-bg-hover:rgba(36,50,78,.06);--action-ghost-bg-active:rgba(36,50,78,.11);
--focus-ring:0 0 0 3px rgba(226,114,91,.34);
}
:root{
/* ── Families ────────────────────────────────────────────────────── */
--font-display:"Moonrof","Newsreader",Georgia,serif;
--font-serif:"Newsreader",Georgia,"Times New Roman",serif;
--font-mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace;
--font-body:var(--font-serif);
--font-label:var(--font-mono);

/* ── Scale (1.25 major third, 16px base) ─────────────────────────── */
--text-2xs:11px;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-md:18px;--text-lg:21px;--text-xl:26px;--text-2xl:33px;--text-3xl:41px;--text-4xl:52px;--text-5xl:65px;--text-6xl:82px;

/* ── Weights ─────────────────────────────────────────────────────── */
--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;

/* ── Line heights ────────────────────────────────────────────────── */
--leading-tight:1.06;--leading-snug:1.2;--leading-heading:1.28;--leading-normal:1.5;--leading-relaxed:1.62;

/* ── Tracking ────────────────────────────────────────────────────── */
--tracking-display:-.022em;--tracking-heading:-.012em;--tracking-normal:0;--tracking-label:.09em;--tracking-label-wide:.14em;

/* ── Optical sizing for Newsreader (variable opsz) ───────────────── */
--opsz-display:72; --opsz-heading:36; --opsz-body:16;

/* ── Composed roles ──────────────────────────────────────────────── */
--type-wordmark:var(--weight-regular) var(--text-2xl)/var(--leading-tight) var(--font-display);
--type-display:var(--weight-light) var(--text-4xl)/var(--leading-tight) var(--font-serif);
--type-h1:var(--weight-regular) var(--text-3xl)/var(--leading-snug) var(--font-serif);
--type-h2:var(--weight-regular) var(--text-2xl)/var(--leading-heading) var(--font-serif);
--type-h3:var(--weight-medium) var(--text-xl)/var(--leading-heading) var(--font-serif);
--type-h4:var(--weight-semibold) var(--text-md)/var(--leading-heading) var(--font-serif);
--type-lead:var(--weight-regular) var(--text-lg)/var(--leading-relaxed) var(--font-serif);
--type-body:var(--weight-regular) var(--text-base)/var(--leading-relaxed) var(--font-serif);
--type-body-sm:var(--weight-regular) var(--text-sm)/var(--leading-normal) var(--font-serif);
--type-label:var(--weight-medium) var(--text-xs)/1.3 var(--font-mono);
--type-label-lg:var(--weight-medium) var(--text-sm)/1.3 var(--font-mono);
--type-eyebrow:var(--weight-medium) var(--text-2xs)/1.2 var(--font-mono);
--type-data:var(--weight-regular) var(--text-sm)/1.45 var(--font-mono);
--type-data-lg:var(--weight-light) var(--text-2xl)/1.1 var(--font-mono);
--type-button:var(--weight-medium) var(--text-sm)/1 var(--font-mono);
}
:root{
/* ── Space (4px base, 1 = 4px) ───────────────────────────────────── */
--space-0:0;--space-px:1px;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--space-40:160px;

/* ── Component insets ────────────────────────────────────────────── */
--inset-control-sm:6px 12px;--inset-control-md:10px 18px;--inset-control-lg:14px 24px;
--inset-card:var(--space-6);--inset-card-lg:var(--space-8);--inset-cell:var(--space-3) var(--space-4);

/* ── Layout ──────────────────────────────────────────────────────── */
--layout-gutter:var(--space-6);--layout-gutter-lg:var(--space-10);
--layout-rail:248px;--layout-rail-collapsed:64px;--layout-topbar:64px;--layout-panel:360px;
--measure-prose:64ch; --measure-narrow:44ch;--container-app:1440px;--container-site:1200px;--container-text:720px;
}
:root{
/* ── Radii — the logo's stadium curves scaled down; pills for status, soft rects for containers ── */
--radius-none:0;--radius-xs:3px;--radius-sm:5px;--radius-md:8px;--radius-lg:12px;--radius-xl:18px;--radius-2xl:26px;--radius-pill:999px;--radius-circle:50%;
--radius-control:var(--radius-sm);--radius-card:var(--radius-lg);--radius-panel:var(--radius-xl);--radius-badge:var(--radius-pill);

/* ── Borders ─────────────────────────────────────────────────────── */
--border-width-hair:1px;--border-width-thick:1.5px;--border-width-heavy:2px;
--stroke-logo:.28em;

/* ── Shadows — warm, low, never blue-black ───────────────────────── */
--shadow-none:none;
--shadow-xs:0 1px 1px rgba(79,34,26,.05);
--shadow-sm:0 1px 2px rgba(79,34,26,.07),0 1px 1px rgba(79,34,26,.04);
--shadow-md:0 2px 5px rgba(79,34,26,.08),0 6px 14px -6px rgba(79,34,26,.10);
--shadow-lg:0 4px 10px rgba(79,34,26,.09),0 18px 36px -14px rgba(79,34,26,.14);
--shadow-xl:0 8px 20px rgba(79,34,26,.10),0 32px 64px -20px rgba(79,34,26,.18);
--shadow-inset:inset 0 1px 2px rgba(79,34,26,.07);
--shadow-accent:0 4px 14px -4px rgba(226,114,91,.42);

/* ── Protection gradients (over imagery) ─────────────────────────── */
--scrim-bottom:linear-gradient(to top,rgba(20,28,44,.74) 0%,rgba(20,28,44,.34) 42%,rgba(20,28,44,0) 100%);
--scrim-cream:linear-gradient(to top,var(--cream-200) 0%,rgba(242,238,225,0) 100%);
--blur-glass:saturate(1.1) blur(14px);
}
:root{
--duration-instant:80ms; --duration-fast:140ms; --duration-base:220ms; --duration-slow:340ms; --duration-deliberate:520ms;
--ease-standard:cubic-bezier(.2,.6,.25,1); --ease-out:cubic-bezier(.16,.84,.34,1); --ease-in:cubic-bezier(.5,0,.9,.4); --ease-linear:linear;
--transition-control:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard);
--transition-surface:box-shadow var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out);
--press-scale:.985;
--z-base:0; --z-raised:10; --z-sticky:100; --z-rail:200; --z-overlay:800; --z-dialog:900; --z-toast:1000; --z-tooltip:1100;
}
@media (prefers-reduced-motion:reduce){:root{--duration-instant:0ms; --duration-fast:0ms; --duration-base:0ms; --duration-slow:0ms; --duration-deliberate:0ms; --press-scale:1}}

/* ── Base ───────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--surface-page);color:var(--text-body);font:var(--type-body);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6{margin:0;color:var(--text-heading);text-wrap:balance}
h1{font:var(--type-h1);letter-spacing:var(--tracking-heading)}
h2{font:var(--type-h2);letter-spacing:var(--tracking-heading)}
h3{font:var(--type-h3)}
h4{font:var(--type-h4)}
p{margin:0;text-wrap:pretty}
a{color:var(--text-link);text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:.16em;text-decoration-color:var(--terracotta-300);transition:var(--transition-control)}
a:hover{color:var(--text-link-hover);text-decoration-color:currentColor}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}
small{font-size:var(--text-sm)}
code,kbd,samp,pre{font-family:var(--font-mono);font-size:.92em}
hr{border:0;border-top:var(--border-width-hair) solid var(--border-default);margin:var(--space-8) 0}
::selection{background:var(--terracotta-200);color:var(--ink-800)}
table{border-collapse:collapse}
button,input,select,textarea{font:inherit;color:inherit}
img,svg{display:block;max-width:100%}
[hidden]{display:none!important}
@keyframes lumane-spin{to{transform:rotate(360deg)}}
@keyframes lumane-rise{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes lumane-fade{from{opacity:0}to{opacity:1}}

/* ── Page ───────────────────────────────────────────────── */
html{scroll-padding-top:120px}
body{margin:0}
a{color:var(--text-link)}a:hover{color:var(--text-link-hover)}
.cm-wrap{width:100%;max-width:var(--container-site);margin:0 auto;padding-left:var(--space-8);padding-right:var(--space-8)}
.cm-skip{position:absolute;left:var(--space-4);top:-60px;z-index:1000;background:var(--ink-800);color:var(--cream-100);padding:var(--space-2) var(--space-4);border-radius:var(--radius-control);font:var(--type-label);text-transform:uppercase;letter-spacing:var(--tracking-label)}
.cm-skip:focus{top:var(--space-3);color:var(--cream-100)}
.cm-eyebrow{font:var(--type-label);letter-spacing:var(--tracking-label-wide);text-transform:uppercase;color:var(--text-accent)}
.cm-h2{font:var(--type-h1);font-size:clamp(30px,3.6vw,44px);line-height:1.14;letter-spacing:var(--tracking-heading);color:var(--text-display)}
.cm-accent{color:var(--terracotta-600)}
.cm-sub{font:var(--type-lead);font-size:clamp(18px,1.8vw,21px);color:var(--text-body);max-width:58ch}
.cm-head{display:flex;flex-direction:column;gap:var(--space-5);margin-bottom:var(--space-16);max-width:820px}
.cm-section{padding-top:var(--space-32);padding-bottom:var(--space-32)}
.cm-band{background:var(--cream-100);border-top:1px solid var(--border-default);border-bottom:1px solid var(--border-default)}
.cm-label{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-accent)}
.cm-node{width:56px;height:56px;border-radius:50%;background:var(--surface-card);border:1.5px solid var(--cream-400);display:grid;place-items:center;color:var(--ink-700);flex:0 0 auto;position:relative;z-index:1}
.cm-node.is-accent{background:var(--terracotta-50);border:2px solid var(--terracotta-500);color:var(--terracotta-600);box-shadow:0 0 0 7px rgba(226,114,91,.12)}
/* nav */
.cm-nav{position:sticky;top:0;z-index:var(--z-sticky);background:rgba(242,238,225,.86);backdrop-filter:var(--blur-glass);-webkit-backdrop-filter:var(--blur-glass);border-bottom:1px solid var(--border-default)}
.cm-nav-in{display:flex;align-items:center;gap:var(--space-8);min-height:72px}
.cm-brand{display:flex;align-items:center}
.cm-links{display:flex;gap:var(--space-6)}
.cm-links a{font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-body);text-decoration:none;padding:var(--space-2) 0;border-bottom:2px solid transparent;white-space:nowrap}
.cm-links a:hover{color:var(--text-accent)}
.cm-links a[aria-current="page"]{color:var(--text-accent);border-bottom-color:var(--terracotta-500)}
.cm-talk{margin-left:auto;display:inline-flex;align-items:center;gap:var(--space-2);min-height:38px;padding:var(--inset-control-md);border:1.5px solid var(--ink-700);border-radius:var(--radius-control);font:var(--type-button);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-700);text-decoration:none;transition:var(--transition-control)}
.cm-talk:hover{background:var(--ink-700);color:var(--cream-200)}
/* hero */
.cm-hero{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:var(--space-16);align-items:center;padding-top:var(--space-20);padding-bottom:var(--space-24)}
.cm-hero-copy{display:flex;flex-direction:column;gap:var(--space-6);min-width:0}
.cm-h1{margin:0;font-family:var(--font-serif);font-weight:var(--weight-light);font-size:clamp(42px,5.4vw,65px);line-height:1.04;letter-spacing:var(--tracking-display);color:var(--text-display);text-wrap:balance}
.cm-h1 span{display:block}
.cm-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}
.cm-trust{display:flex;align-items:center;gap:var(--space-2);margin:var(--space-8) 0 0;font:var(--type-body-sm);color:var(--text-body)}.cm-trust svg{flex:none;color:var(--status-ready-fg)}
/* plan visual */
.cm-plan{background:var(--surface-raised);border:1px solid var(--border-hairline);border-radius:var(--radius-panel);box-shadow:var(--shadow-xl);overflow:hidden}
.cm-plan-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--cream-100);border-bottom:1px solid var(--border-hairline);font:var(--type-eyebrow);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted)}
.cm-plan-head{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5) var(--space-5) var(--space-4)}
.cm-plan-title{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap}
.cm-cols{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:var(--space-4);padding:var(--space-2) var(--space-5);border-top:1px solid var(--border-strong);font:var(--type-eyebrow);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted)}
.cm-cols span:first-child{grid-column:1/3}
.cm-refs{list-style:none;margin:0;padding:0}
.cm-ref{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:var(--space-2) var(--space-4);align-items:center;padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-hairline)}
.cm-ref-ic{width:36px;height:36px;border-radius:var(--radius-md);background:var(--cream-100);border:1px solid var(--border-hairline);display:grid;place-items:center;color:var(--ink-600)}
.cm-ref-name{font:var(--type-body);font-weight:var(--weight-medium);color:var(--text-heading);line-height:1.3}
.cm-ref-detail{font:var(--type-body-sm);color:var(--text-muted)}
.cm-ref-st{justify-self:end}
.cm-caption{margin-top:var(--space-3);font:var(--type-eyebrow);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);text-align:right}
@media (prefers-reduced-motion:no-preference){
.cm-plan:not(.is-in) .cm-ref-st{opacity:0}
.cm-plan.is-in .cm-ref-st{animation:lumane-rise 340ms var(--ease-out) both}
}
/* problem */
.cm-pains{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-5)}
.cm-problem{padding-top:var(--space-20);padding-bottom:var(--space-20)}
.cm-problem .cm-head{margin-bottom:var(--space-10)}
.cm-pain{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);padding:var(--space-4) var(--space-5);display:flex;align-items:center;gap:var(--space-4)}
.cm-pain .cm-node{width:44px;height:44px}
.cm-pain-text{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
.cm-pain h3{font:var(--type-h4);font-size:var(--text-md);font-weight:var(--weight-medium);line-height:1.25;color:var(--text-display)}
/* steps */
.cm-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-8);position:relative}
.cm-step{position:relative;display:flex;flex-direction:column;gap:var(--space-3)}
.cm-step::before{content:"";position:absolute;top:27px;left:72px;right:calc(-1 * var(--space-8) + 16px);height:2px;background:repeating-linear-gradient(90deg,var(--cream-500) 0 10px,transparent 10px 18px)}
.cm-step:last-child::before{display:none}
.cm-step .cm-node{margin-bottom:var(--space-3)}
.cm-step h3{font:var(--type-h4);font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--text-display)}
.cm-step p{font:var(--type-body);color:var(--text-body)}
.cm-step-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}
.cm-control{margin-top:var(--space-12);display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-card);font:var(--type-body);font-size:var(--text-md);color:var(--text-heading)}
.cm-control svg{color:var(--terracotta-600)}
/* coordinate flow */
.cm-flow{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center}
.cm-flow-end{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);width:150px;text-align:center}
.cm-flow-end .cm-node{width:88px;height:88px}
.cm-flow-end span{font:var(--type-body);font-size:var(--text-md);font-weight:var(--weight-medium);color:var(--text-display);line-height:1.2}
.cm-flow-mid{display:flex;align-items:center;min-width:0}
.cm-flow-line{width:28px;height:3px;background:var(--sage-500);flex:0 0 auto}
.cm-flow-box{flex:1;min-width:0;background:var(--sage-100);border:1.5px solid var(--sage-200);border-radius:var(--radius-xl);padding:var(--space-6);display:flex;flex-direction:column;align-items:center;gap:var(--space-4)}
.cm-flow-box>span{font:var(--type-label);letter-spacing:var(--tracking-label-wide);text-transform:uppercase;color:var(--sage-700)}
.cm-pills{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2) var(--space-3)}
.cm-pills li{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--surface-card);border:1px solid var(--sage-200);border-radius:var(--radius-pill);font:var(--type-body);color:var(--sage-700);white-space:nowrap}
.cm-flow-end .cm-node.is-home{background:var(--sage-100);border:2px solid var(--sage-500);color:var(--sage-700)}
/* proof */
.cm-proof{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-12)}
.cm-proof-item{display:flex;flex-direction:column;gap:var(--space-5);padding-top:var(--space-6);border-top:1px solid var(--border-default)}
.cm-proof-item p{font:var(--type-h3);font-weight:var(--weight-regular);font-size:clamp(21px,2.1vw,26px);line-height:1.32;letter-spacing:var(--tracking-heading);color:var(--text-display);max-width:44ch;text-wrap:pretty}
.cm-prev{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4) var(--space-8);margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--border-default)}
.cm-logos{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-8)}
.cm-logos img{width:auto;object-fit:contain}
/* early access */
.cm-ea-sec{background:var(--surface-ink)}
.cm-ea{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:var(--space-16);align-items:start}
.cm-ea-left{display:flex;flex-direction:column;gap:var(--space-10);min-width:0}
.cm-ea .cm-eyebrow{color:var(--terracotta-300)}
.cm-ea .cm-h2{color:var(--cream-50)}
.cm-ea .cm-accent{color:var(--terracotta-300)}
.cm-ea .cm-sub{color:var(--ink-200)}
.cm-ea-block{display:flex;flex-direction:column;gap:var(--space-5)}
.cm-ea-block h3{font:var(--type-label-lg);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--terracotta-300)}
.cm-gets{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
.cm-gets li{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);background:var(--ink-700);border:1px solid var(--ink-600);border-radius:var(--radius-card)}
.cm-gets svg{color:var(--terracotta-300);margin-bottom:var(--space-1)}
.cm-gets strong{font:var(--type-h4);font-weight:var(--weight-semibold);color:var(--cream-50)}
.cm-gets span{font:var(--type-body);color:var(--ink-200)}
.cm-asks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.cm-asks li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:var(--space-4);padding:var(--space-4) 0;border-top:1px solid var(--ink-600);font:var(--type-body);color:var(--ink-200)}
.cm-asks li:last-child{border-bottom:1px solid var(--ink-600)}
.cm-asks .cm-ask-ic{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--terracotta-300);display:grid;place-items:center;color:var(--terracotta-300)}
.cm-asks strong{display:block;font:var(--type-h4);font-weight:var(--weight-semibold);color:var(--cream-50);margin-bottom:2px}
.cm-formcard{scroll-margin-top:110px;background:var(--surface-raised);border:1px solid var(--border-hairline);border-radius:var(--radius-panel);box-shadow:var(--shadow-xl);padding:var(--space-8)}
.cm-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5) var(--space-4)}
.cm-full{grid-column:1/-1}
.cm-note{display:grid;grid-template-columns:18px minmax(0,1fr);gap:var(--space-2);font:var(--type-body-sm);color:var(--text-muted)}
.cm-note svg{margin-top:2px}
.cm-done{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4) 0;outline:none}
.cm-done:focus-visible{outline:2px solid var(--border-focus);outline-offset:6px;border-radius:var(--radius-sm)}
/* founder */
.cm-founder{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-10);align-items:start;max-width:980px}
.cm-faces{display:flex;flex-direction:column;gap:var(--space-3)}
.cm-faces img{width:96px;height:96px;object-fit:cover;border:1px solid var(--cream-400);border-radius:var(--radius-xs)}
.cm-founder blockquote{margin:0;font:var(--type-h2);font-size:clamp(23px,2.6vw,30px);line-height:1.4;letter-spacing:var(--tracking-heading);color:var(--text-display);text-wrap:pretty}
.cm-sig{display:flex;align-items:center;gap:var(--space-4) var(--space-8);flex-wrap:wrap;margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--border-default)}
.cm-arrow-link{display:inline-flex;align-items:center;gap:var(--space-2);font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;text-decoration:none;color:var(--text-accent)}
.cm-arrow-link:hover{color:var(--text-link-hover)}
/* faq */
.cm-faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--space-16);align-items:start}
.cm-faq details{border-top:1px solid var(--border-default)}
.cm-faq details:last-child{border-bottom:1px solid var(--border-default)}
.cm-faq summary{list-style:none;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:var(--space-3);padding:var(--space-5) 0;cursor:pointer;font:var(--type-h4);font-weight:var(--weight-medium);font-size:var(--text-md);color:var(--text-heading);min-height:44px}
.cm-faq summary::-webkit-details-marker{display:none}
.cm-faq summary:hover{color:var(--text-accent)}
.cm-faq summary:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px;border-radius:var(--radius-xs)}
.cm-faq summary .cm-label{font-size:var(--text-xs)}
.cm-faq summary svg{color:var(--text-muted)}
.cm-faq details[open] summary svg{transform:rotate(180deg)}
.cm-faq details p{padding:0 var(--space-10) var(--space-6) calc(40px + var(--space-3));font:var(--type-body);color:var(--text-body);max-width:calc(var(--measure-prose) + 52px)}
/* cta */
.cm-cta{background:var(--surface-accent);padding:var(--space-20) 0}
.cm-cta-in{display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);flex-wrap:wrap}
.cm-cta h2{font:var(--type-h1);font-size:clamp(28px,3.4vw,41px);letter-spacing:var(--tracking-heading);color:#fff;max-width:24ch}
/* footer */
.cm-foot{background:var(--surface-ink);padding:var(--space-16) 0 var(--space-8);border-top:1px solid var(--ink-900)}
.cm-foot-grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:var(--space-10)}
.cm-foot-col{display:flex;flex-direction:column;gap:var(--space-3)}
.cm-foot h2{font:var(--type-eyebrow);letter-spacing:var(--tracking-label-wide);text-transform:uppercase;color:var(--terracotta-300)}
.cm-foot a{font:var(--type-body-sm);color:var(--ink-200);text-decoration:none}
.cm-foot a:hover{color:#fff;text-decoration:underline}
.cm-foot a:focus-visible{outline-color:var(--terracotta-300)}
.cm-foot-tag{font:var(--type-body-sm);color:var(--ink-300);max-width:34ch}
.cm-foot-sec{margin-top:var(--space-12);display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-6);font:var(--type-body-sm);color:var(--ink-300)}.cm-foot-sec strong{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--weight-medium);color:var(--cream-200)}.cm-foot-sec ul{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);margin:0;padding:0;list-style:none}
.cm-foot-sec+.cm-foot-base{margin-top:var(--space-6)}
.cm-foot-base{margin-top:var(--space-12);padding-top:var(--space-5);border-top:1px solid var(--ink-700);display:flex;align-items:center;gap:var(--space-3);font:var(--type-eyebrow);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-300)}
/* responsive */
@media (max-width:1100px){.cm-pains{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:1020px){
.cm-hero{grid-template-columns:minmax(0,1fr);gap:var(--space-12);padding-top:var(--space-12);padding-bottom:var(--space-16)}
.cm-ea{grid-template-columns:minmax(0,1fr);gap:var(--space-12)}
.cm-faq{grid-template-columns:minmax(0,1fr);gap:var(--space-8)}
.cm-foot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.cm-foot-brand{grid-column:1/-1}
}
@media (max-width:900px){
.cm-steps{grid-template-columns:minmax(0,1fr);gap:var(--space-8)}
.cm-step{padding-left:calc(56px + var(--space-5))}
.cm-step .cm-node{position:absolute;left:0;top:0;margin:0}
.cm-step::before{top:64px;left:27px;right:auto;bottom:calc(-1 * var(--space-8) + 8px);width:2px;height:auto;background:repeating-linear-gradient(180deg,var(--cream-500) 0 10px,transparent 10px 18px)}
.cm-proof{grid-template-columns:minmax(0,1fr);gap:var(--space-10)}
.cm-flow{grid-template-columns:minmax(0,1fr);justify-items:center}
.cm-flow-mid{flex-direction:column;width:100%}
.cm-flow-line{width:3px;height:28px}
.cm-founder{grid-template-columns:minmax(0,1fr);gap:var(--space-6)}
.cm-faces{flex-direction:row}
.cm-faces img{width:72px;height:72px}
}
@media (max-width:760px){
.cm-nav-in{flex-wrap:wrap;gap:0 var(--space-4);padding-top:var(--space-3)}
.cm-links{order:3;width:100%;gap:var(--space-5);overflow-x:auto;padding:var(--space-1) 0}
html{scroll-padding-top:140px}
}
@media (max-width:640px){
.cm-wrap{padding-left:var(--space-5);padding-right:var(--space-5)}
.cm-section{padding-top:var(--space-16);padding-bottom:var(--space-16)}
.cm-head{margin-bottom:var(--space-8)}
.cm-pains{grid-template-columns:minmax(0,1fr)}
.cm-gets{grid-template-columns:minmax(0,1fr)}
.cm-formcard{padding:var(--space-6) var(--space-5);border-radius:var(--radius-card);scroll-margin-top:130px}
.cm-form{grid-template-columns:minmax(0,1fr)}
.cm-pills li{white-space:normal}
.cm-faq details p{padding-right:0}
.cm-foot-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.cm-cta{padding:var(--space-16) 0}
}
@media (max-width:480px){
.cm-ref{grid-template-columns:36px minmax(0,1fr);padding:var(--space-4)}
.cm-ref-st{grid-column:2;justify-self:start}
.cm-cols{display:none}
.cm-plan-head,.cm-plan-bar{padding-left:var(--space-4);padding-right:var(--space-4)}
.cm-actions>*{flex:1 1 100%}
.cm-faq details p{padding-left:0}
}

/* ── Components (static equivalents of the design-system React primitives) ── */
.ic{display:inline-block;flex:0 0 auto}
/* Button */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;min-height:38px;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1;letter-spacing:var(--tracking-label);text-transform:uppercase;border-radius:var(--radius-control);cursor:pointer;text-decoration:none;transition:var(--transition-control),transform var(--duration-instant) var(--ease-standard)}
.btn>span{display:inline-block;padding-top:1px}
.btn:active:not(:disabled){transform:scale(var(--press-scale))}
.btn:disabled{cursor:not-allowed;opacity:.45}
.btn--lg{padding:14px 24px;font-size:var(--text-sm);gap:10px;min-height:48px}
.btn--block{display:flex;width:100%}
.btn--primary{background:var(--action-primary-bg);color:var(--text-on-accent);border:1.5px solid var(--action-primary-bg);box-shadow:var(--shadow-xs)}
.btn--primary:hover:not(:disabled){background:var(--action-primary-bg-hover);border-color:var(--action-primary-bg-hover);box-shadow:var(--shadow-accent);color:var(--text-on-accent)}
.btn--primary:active:not(:disabled){background:var(--action-primary-bg-active);border-color:var(--action-primary-bg-active);box-shadow:none}
.btn--secondary{background:transparent;color:var(--ink-700);border:1.5px solid var(--action-secondary-border)}
.btn--secondary:hover:not(:disabled){background:var(--action-secondary-bg-hover);color:var(--cream-200)}
.btn--secondary:active:not(:disabled){background:var(--ink-900);border-color:var(--ink-900);color:var(--cream-200)}
.btn--quiet{background:var(--cream-300);color:var(--ink-700);border:1.5px solid var(--cream-300)}
.btn--quiet:hover:not(:disabled){background:var(--cream-400);border-color:var(--cream-400);color:var(--ink-700)}
.btn--quiet:active:not(:disabled){background:var(--cream-500);border-color:var(--cream-500)}
.btn-spin{width:12px;height:12px;border-radius:var(--radius-circle);border:1.5px solid currentColor;border-top-color:transparent;animation:lumane-spin 700ms linear infinite}
/* Badge */
.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:1.35;letter-spacing:var(--tracking-label);text-transform:uppercase;white-space:nowrap;border-radius:var(--radius-badge);border:1px solid var(--status-neutral-border);color:var(--status-neutral-fg);background:var(--status-neutral-bg)}
.badge--sm{padding:2px 8px;font-size:var(--text-2xs)}
.badge--dot::before{content:"";width:6px;height:6px;border-radius:var(--radius-circle);background:currentColor;flex:0 0 auto}
.badge--ready{color:var(--status-ready-fg);background:var(--status-ready-bg);border-color:var(--status-ready-border)}
.badge--pending{color:var(--status-pending-fg);background:var(--status-pending-bg);border-color:var(--status-pending-border)}
.badge--info{color:var(--status-info-fg);background:var(--status-info-bg);border-color:var(--status-info-border)}
.badge--accent{color:var(--terracotta-700);background:var(--terracotta-50);border-color:var(--terracotta-200)}
/* ProgressBar */
.progress{display:flex;flex-direction:column;gap:6px;width:100%}
.progress-labels{display:flex;justify-content:space-between;gap:var(--space-3);font:var(--type-eyebrow);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted)}
.progress-labels span:last-child{color:var(--ink-700)}
.progress-track{height:4px;width:100%;background:var(--cream-400);border-radius:var(--radius-pill);overflow:hidden}
.progress-fill{height:100%;background:var(--sage-500);border-radius:var(--radius-pill)}
/* Field / Input / Select */
.field{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
.field label{display:flex;align-items:baseline;gap:6px;font:var(--type-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted)}
.field label .opt{text-transform:none;letter-spacing:0;color:var(--text-subtle)}
.field-err{font:var(--type-body-sm);color:var(--crimson-700)}
.field-err:empty{display:none}
.input,.select{width:100%;min-height:48px;background:var(--surface-raised);border:1px solid var(--border-default);border-radius:var(--radius-control);box-shadow:var(--shadow-xs);outline:none;font-family:var(--font-serif);font-size:var(--text-md);line-height:1.4;color:var(--text-body);transition:var(--transition-control)}
.input{padding:12px 14px}
.input:focus,.input:focus-visible,.select:focus,.select:focus-visible{border-color:var(--border-focus);box-shadow:var(--focus-ring);outline:none}
.input[aria-invalid="true"],.select[aria-invalid="true"]{border-color:var(--crimson-500)}
.select-wrap{position:relative;display:flex;min-width:0;width:100%}
.select{appearance:none;-webkit-appearance:none;padding:12px 38px 12px 14px;cursor:pointer}
.select-wrap .ic{position:absolute;right:11px;top:50%;transform:translateY(-50%);color:var(--text-subtle);pointer-events:none}
.form-err{font:var(--type-body-sm);color:var(--crimson-700)}
.form-err:empty{display:none}
/* Misc helpers replacing inline styles in the prototype */
.cm-plan-fig{margin:0;min-width:0}
.cm-plan-who{display:flex;flex-direction:column;gap:6px}
.cm-plan-kicker{font:var(--type-eyebrow);letter-spacing:var(--tracking-label-wide);text-transform:uppercase;color:var(--text-muted)}
.cm-plan-name{font:var(--type-h3);font-size:var(--text-lg);color:var(--text-heading)}
.cm-ref-body{min-width:0;display:flex;flex-direction:column;gap:2px}
.cm-ea-intro{display:flex;flex-direction:column;gap:var(--space-5)}
.cm-form-head{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-1)}
.cm-form-head h3{font:var(--type-h3);font-size:var(--text-lg);color:var(--text-heading)}
.cm-form-head p{font:var(--type-body-sm);color:var(--text-muted)}
.cm-form-foot{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-2)}
.cm-done .ic{color:var(--status-ready-fg)}
.cm-done h3{font:var(--type-h3);color:var(--text-heading)}
.cm-done p{font:var(--type-body);font-size:var(--text-md);color:var(--text-body)}
.cm-founder-quote{margin-top:var(--space-4)}
.cm-sig-who{display:flex;flex-direction:column;gap:2px}
.cm-sig-name{font:var(--type-body);font-weight:600;color:var(--text-heading)}
.cm-sig-role{font:var(--type-eyebrow);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted)}
.cm-sig .cm-arrow-link{margin-left:auto}
.cm-faq-head{display:flex;flex-direction:column;gap:var(--space-5)}
.cm-foot-brand{gap:var(--space-4)}
.cm-foot-brand>a{align-self:flex-start}
.cm-foot-logo{height:26px;width:auto;filter:brightness(0) invert(1)}
.cm-foot-icon{height:16px;width:auto;filter:brightness(0) invert(1)}
.cm-brand img{height:28px;width:auto}
.cm-control strong{font-weight:600}
