:root {
  color-scheme: light;
  --console-sidebar-width: 13.5rem;
  --console-topbar-height: 3.5rem;
  --bg: #f7f7fa;
  --surface: #ffffff;
  --surface-raised: #ffffff;
  --surface-soft: #f0f1f5;
  --text: #15151b;
  --text-strong: #09090d;
  --muted: #5d606c;
  --faint: #666975;
  --line: #dedfe6;
  --line-strong: #c7c9d3;
  --signal: #1b17ff;
  --signal-bright: #4d49ff;
  --signal-text: #1b17ff;
  --focus-ring: #1b17ff;
  --signal-soft: #ecebff;
  --warning: #97530a;
  --warning-soft: #fff3dc;
  --success: #1f7148;
  --success-soft: #e8f7ef;
  --danger: #a32835;
  --danger-soft: #ffebed;
  --terminal: #0b0b0f;
  --terminal-raised: #111118;
  --terminal-line: #2a2b35;
  --terminal-muted: #bfc1cc;
  --terminal-text: #f1f1f5;
  --shadow: 0 1.2rem 4rem rgba(21, 21, 35, .09);
  --sidebar: #f2f2f6;
  --sidebar-text: #15151b;
  --sidebar-muted: #666975;
  --sidebar-hover: #e7e7ed;
  --control-target: 2.75rem;
  --badge-min-height: 1.5rem;
  --badge-padding-inline: .6rem;
  --badge-gap: .25rem;
  --badge-font-size: .625rem;
  --badge-dot-size: .375rem;
  --badge-letter-spacing: .065em;
  --radius-control: 999px;
  --radius-compact: 1rem;
  --radius-card: 1.5rem;
  --weight-display: 430;
  --weight-heading: 460;
  --weight-control: 540;
  --motion-fast: 140ms;
  --motion-base: 220ms;
  --motion-slow: 460ms;
  --ease-out: cubic-bezier(.22, 1, .36, 1);
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #08080b;
  --surface: #0f0f14;
  --surface-raised: #13131a;
  --surface-soft: #181820;
  --text: #ffffff;
  --text-strong: #ffffff;
  --muted: #d0d1d9;
  --faint: #a9abb6;
  --line: #292a34;
  --line-strong: #3a3c49;
  --signal: #1b17ff;
  --signal-bright: #4d49ff;
  --signal-text: #8a88ff;
  --focus-ring: #8a88ff;
  --signal-soft: #17164a;
  --warning: #f2bd6c;
  --warning-soft: #2d2110;
  --success: #7bdca9;
  --success-soft: #0f2b1d;
  --danger: #ff8b96;
  --danger-soft: #31161a;
  --terminal: #050508;
  --terminal-text: #ffffff;
  --shadow: 0 1.2rem 4rem rgba(0, 0, 0, .35);
  --sidebar: #08080b;
  --sidebar-text: #f1f1f5;
  --sidebar-muted: #b7b9c4;
  --sidebar-hover: #15151d;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-height: 100vh; background: var(--bg); color: var(--text); font-family: "SF Pro Text", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, ui-sans-serif, system-ui, sans-serif; font-size: 1rem; line-height: 1.5; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
h1, h2, h3, h4, .brand, .console-brand { font-family: "SF Pro Display", "Helvetica Neue", -apple-system, BlinkMacSystemFont, Arial, ui-sans-serif, system-ui, sans-serif; font-weight: var(--weight-heading); letter-spacing: -.035em; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; }
button { color: inherit; }
:focus-visible { outline: .18rem solid var(--focus-ring); outline-offset: .18rem; }
::selection { background: var(--signal); color: #ffffff; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.muted-copy { color: var(--muted); }
.skip-link { position: fixed; top: .75rem; left: .75rem; z-index: 200; padding: .6rem .8rem; border: 1px solid var(--signal); border-radius: var(--radius-compact); background: var(--surface-raised); color: var(--signal-text); font-size: .82rem; font-weight: var(--weight-control); text-decoration: none; transform: translateY(-200%); transition: transform var(--motion-fast) ease; }
.skip-link:focus-visible { transform: translateY(0); }

.brand, .console-brand { display: inline-flex; align-items: center; gap: .7rem; min-height: var(--control-target); text-decoration: none; letter-spacing: -.02em; }
.brand-wordmark { display: inline-grid; width: 8.2rem; line-height: 0; }
.brand-wordmark-image { grid-area: 1 / 1; width: 100%; height: auto; }
.brand-wordmark-dark { display: none; }
:root[data-theme="dark"] .brand-wordmark-light { display: none; }
:root[data-theme="dark"] .brand-wordmark-dark { display: block; }
.button, .primary, .secondary, .text-button { display: inline-flex; align-items: center; justify-content: center; gap: .4rem; min-height: var(--control-target); padding: .58rem 1rem; border: 1px solid var(--line-strong); border-radius: var(--radius-control); background: var(--surface); color: var(--text); font-size: .82rem; font-weight: var(--weight-control); text-decoration: none; cursor: pointer; transition: transform .18s ease, border-color .18s ease, background-color .18s ease, color .18s ease, box-shadow .18s ease; }
.button:hover:not(:disabled):not([aria-disabled="true"]), .primary:hover:not(:disabled):not([aria-disabled="true"]), .secondary:hover:not(:disabled):not([aria-disabled="true"]), .text-button:hover:not(:disabled):not([aria-disabled="true"]) { transform: translateY(-1px); border-color: var(--signal); box-shadow: 0 .35rem 1rem color-mix(in srgb, var(--signal) 12%, transparent); }
.button.primary, .primary { border-color: var(--signal); background: var(--signal); color: #ffffff; }
.button.secondary, .secondary { background: var(--surface-raised); }
.button.ghost, .text-button { background: transparent; }
:where(.button.primary, .primary):hover:not(:disabled):not([aria-disabled="true"]) { background: color-mix(in srgb, var(--signal) 86%, #000000); color: #ffffff; }
.button.secondary:hover:not(:disabled):not([aria-disabled="true"]), .secondary:hover:not(:disabled):not([aria-disabled="true"]), .button.ghost:hover:not(:disabled):not([aria-disabled="true"]), .text-button:hover:not(:disabled):not([aria-disabled="true"]) { background: var(--signal-soft); color: var(--signal-text); }
.button:active:not(:disabled):not([aria-disabled="true"]), .primary:active:not(:disabled):not([aria-disabled="true"]), .secondary:active:not(:disabled):not([aria-disabled="true"]), .text-button:active:not(:disabled):not([aria-disabled="true"]) { transform: translateY(0) scale(.985); box-shadow: none; }
.button.small { min-height: var(--control-target); padding: .42rem .65rem; font-size: .78rem; }
button:disabled { cursor: not-allowed; opacity: .48; }
.actions { display: flex; flex-wrap: wrap; gap: .65rem; align-items: center; }

/* Public surfaces */
.public-shell { min-height: 100vh; background: radial-gradient(circle at 74% 6%, color-mix(in srgb, var(--signal) 10%, transparent) 0, transparent 29rem), var(--bg); }
.public-header, .public-footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem 1.5rem; width: min(92rem, 100%); margin: auto; padding: 1rem clamp(1rem, 4vw, 3.5rem); }
.public-header { position: relative; z-index: 5; }
.public-header .button { min-height: var(--control-target); padding: .45rem .7rem; font-size: .82rem; }
.public-header nav, .public-footer nav { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1rem; }
.public-header nav > a:not(.button), .public-footer a, .public-footer .footer-cookie-button { color: var(--muted); text-decoration: none; font-size: .9rem; }
.public-header nav > a:not(.button) { display: inline-flex; align-items: center; min-height: var(--control-target); font-weight: 500; }
.public-footer { border-top: 1px solid var(--line); color: var(--muted); font-size: .7rem; }
.public-footer a, .public-footer .footer-cookie-button { font-size: .7rem; }
.site-footer-links > a, .footer-cookie-button { display: inline-flex; align-items: center; min-height: var(--control-target); font-weight: 500; }
.footer-cookie-button { padding: 0; border: 0; background: transparent; color: inherit; cursor: pointer; font-size: inherit; text-decoration: none; }
.site-footer-links a, .footer-cookie-button { transition: color var(--motion-fast) ease, text-decoration-color var(--motion-fast) ease; }
.site-footer-links a:hover, .footer-cookie-button:hover { color: var(--text); text-decoration: underline; text-underline-offset: .18rem; }
.site-footer-links .footer-social-link { display: inline-grid; place-items: center; width: var(--control-target); height: var(--control-target); border: 1px solid var(--line); border-radius: 50%; color: var(--muted); }
.site-footer-links .footer-social-link:hover { border-color: color-mix(in srgb, var(--signal) 55%, var(--line)); background: var(--signal-soft); color: var(--signal-text); text-decoration: none; }
.footer-social-link svg { width: .9rem; height: .9rem; overflow: visible; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.footer-social-link .footer-social-dot { fill: currentColor; stroke: none; }
.ai-disclaimer-marker { margin-left: .12rem; color: var(--signal-text); font-size: .72em; font-weight: 540; text-decoration: none; vertical-align: super; }
.ai-disclaimer-marker:hover { text-decoration: underline; }
.marketing-main { overflow: hidden; }
.marketing-hero { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(31rem, .88fr); gap: clamp(2.5rem, 5vw, 6rem); align-items: start; width: min(92rem, 100%); margin: auto; padding: clamp(3rem, 6vh, 5rem) clamp(1rem, 4vw, 3.5rem) clamp(7rem, 9vw, 9rem); }
.marketing-hero > div:first-child { max-width: 51rem; }
.signal-pill { display: inline-flex; align-items: center; gap: var(--badge-gap); min-height: var(--badge-min-height); padding: 0 var(--badge-padding-inline); border: 1px solid color-mix(in srgb, var(--signal) 45%, var(--line)); border-radius: 999px; color: var(--signal-text); background: color-mix(in srgb, var(--signal-soft) 75%, transparent); font-size: var(--badge-font-size); font-weight: 540; line-height: 1; letter-spacing: var(--badge-letter-spacing); text-transform: uppercase; white-space: nowrap; }
.signal-pill > span { flex: 0 0 auto; width: var(--badge-dot-size); height: var(--badge-dot-size); border-radius: 50%; background: var(--signal); box-shadow: 0 0 0 0 color-mix(in srgb, var(--signal) 30%, transparent); animation: signal-dot-pulse 1.8s ease-out infinite; }
@keyframes signal-dot-pulse {
  0%, 34% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--signal) 32%, transparent); transform: scale(1); }
  72% { box-shadow: 0 0 0 .38rem transparent; transform: scale(1.08); }
  100% { box-shadow: 0 0 0 0 transparent; transform: scale(1); }
}
.marketing-hero h1, .docs-hero h1 { max-width: 16ch; margin: 1.1rem 0 1.2rem; color: var(--text-strong); font-size: clamp(3.25rem, 5.2vw, 5.65rem); font-weight: 400; line-height: 1.01; letter-spacing: .005em; }
.marketing-hero h1 { max-width: 18ch; font-size: clamp(2.9rem, 4.1vw, 4.4rem); }
.page-lede { max-width: 46rem; color: var(--muted); font-size: clamp(1.02rem, 1.35vw, 1.18rem); line-height: 1.58; }
.marketing-hero .actions { margin-top: 1.6rem; }
.marketing-hero .marketing-waitlist-cta,
:root[data-theme="dark"] .marketing-hero .marketing-waitlist-cta {
  border-color: var(--signal);
  background: #ffffff;
  color: var(--signal);
  box-shadow: 0 .4rem 1rem color-mix(in srgb, var(--signal) 10%, transparent);
}
.marketing-hero .marketing-waitlist-cta:hover:not(:disabled):not([aria-disabled="true"]),
:root[data-theme="dark"] .marketing-hero .marketing-waitlist-cta:hover:not(:disabled):not([aria-disabled="true"]) {
  border-color: var(--signal);
  background: color-mix(in srgb, #ffffff 92%, var(--signal));
  color: var(--signal);
}
.marketing-hero-pricing-link { display: inline-flex; align-items: center; min-height: var(--control-target); padding-inline: .45rem; color: var(--signal-text); font-size: .82rem; font-weight: var(--weight-control); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .22rem; transition: color var(--motion-fast) ease, text-decoration-thickness var(--motion-fast) ease, transform var(--motion-fast) ease; }
.marketing-hero-pricing-link:hover { color: var(--signal-bright); text-decoration-thickness: 2px; transform: translateY(-1px); }
.marketing-hero-pricing-link:active { transform: translateY(0); }
.trust-row { display: flex; flex-wrap: wrap; gap: .75rem 1.35rem; margin-top: 1.8rem; color: var(--faint); font-size: .72rem; font-weight: 540; text-transform: uppercase; letter-spacing: .075em; }
.trust-row span::before { content: "✓"; margin-right: .4rem; color: var(--signal-text); }
.terminal-window { overflow: hidden; border: 1px solid var(--line-strong); border-radius: 1.25rem; background: var(--terminal); color: var(--terminal-text); box-shadow: var(--shadow); }
.terminal-title { display: flex; align-items: center; gap: 1rem; min-height: 3.2rem; padding: 0 1.1rem; border-bottom: 1px solid var(--terminal-line); background: var(--terminal-raised); color: var(--terminal-muted); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .8rem; }
.terminal-dots { display: flex; gap: .45rem; }
.terminal-dots i { width: .7rem; height: .7rem; border-radius: 50%; background: #ff665d; }
.terminal-dots i:nth-child(2) { background: #f5b940; }
.terminal-dots i:nth-child(3) { background: var(--signal-bright); }
.marketing-terminal { margin-top: .1rem; }
.terminal-body { min-height: 28rem; padding: clamp(1.3rem, 4vw, 2.6rem); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: clamp(.82rem, 1.15vw, 1rem); line-height: 1.75; }
.marketing-terminal .terminal-body { min-height: 23rem; padding: clamp(1.3rem, 3vw, 2.15rem); font-size: clamp(.8rem, 1vw, .94rem); line-height: 1.65; }
.terminal-body p { margin: 0 0 1rem; }
.terminal-body .prompt, .terminal-body .accent { color: #ad7cff; }
.terminal-body .success { color: #8d8aff; }
.terminal-body .muted { color: var(--terminal-muted); }
.warning-text { color: #f0c36f; }
.eyebrow { color: var(--signal-text); font-size: .7rem; font-weight: 540; letter-spacing: .13em; text-transform: uppercase; }
.marketing-answer, .marketing-product, .marketing-flow, .marketing-risk { width: min(85rem, calc(100% - 2rem)); margin: 0 auto 6rem; }
.marketing-flow { width: min(80rem, calc(100% - clamp(2rem, 6vw, 6rem))); }
.marketing-answer { display: grid; justify-items: center; gap: 1.75rem; padding: clamp(3.5rem, 6vw, 5.5rem) 0; border-block: 1px solid var(--line); text-align: center; }
.marketing-answer-heading { display: grid; justify-items: center; align-self: start; }
.marketing-answer-heading h2 { max-width: 21ch; margin-inline: auto; }
.marketing-hero h1, .marketing-answer-heading h2, .marketing-section-heading h2, .marketing-risk h2 { margin: .8rem 0 1rem; color: var(--text-strong); font-size: clamp(2rem, 4vw, 3.4rem); font-weight: 470; line-height: 1.05; letter-spacing: -.045em; }
.marketing-answer-heading p { max-width: 31rem; margin: 0; color: var(--muted); font-size: .92rem; line-height: 1.65; }
.marketing-answer-copy { align-self: end; display: grid; gap: 1rem; max-width: 48rem; }
.marketing-answer-copy p { margin: 0; color: var(--muted); font-size: clamp(.95rem, 1.4vw, 1.1rem); line-height: 1.7; }
.marketing-product { display: grid; gap: clamp(2rem, 4vw, 3rem); margin-bottom: clamp(7rem, 9vw, 9rem); }
.marketing-product-heading { display: grid; justify-items: center; gap: 1.25rem; max-width: 54rem; margin-inline: auto; text-align: center; }
.marketing-product-heading h2 { max-width: 20ch; margin: .8rem auto 0; color: var(--text-strong); font-size: clamp(2rem, 4vw, 3.4rem); font-weight: 470; line-height: 1.05; letter-spacing: -.045em; }
.marketing-product-heading p { max-width: 38rem; margin: 0 auto .25rem; color: var(--muted); font-size: .9rem; line-height: 1.65; }
.marketing-product-frame { justify-self: center; overflow: hidden; width: min(64rem, 100%); margin: .5rem 0 0; border: 1px solid color-mix(in srgb, var(--signal) 34%, var(--line)); border-radius: var(--radius-card); background: var(--surface); box-shadow: 0 2rem 5rem color-mix(in srgb, var(--signal) 10%, transparent); }
.marketing-product-chrome { display: flex; align-items: center; gap: .4rem; min-height: 2.45rem; padding: 0 1rem; border-bottom: 1px solid var(--line); background: color-mix(in srgb, var(--surface-raised) 86%, var(--signal-soft)); }
.marketing-product-chrome span { width: .55rem; height: .55rem; border-radius: 50%; background: var(--line-strong); }
.marketing-product-chrome span:first-child { background: var(--signal); }
.marketing-product-chrome strong { margin-left: .45rem; color: var(--faint); font: 520 .67rem/1 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .02em; }
.marketing-console-preview { overflow: hidden; background: var(--surface); color: var(--text); }
.marketing-console-canvas { display: grid; grid-template-columns: 9.25rem minmax(0, 1fr); min-height: 30rem; background: var(--surface); font-size: clamp(.64rem, .82vw, .76rem); }
.marketing-console-sidebar { padding: 1rem .75rem; border-right: 1px solid var(--line); background: var(--sidebar); }
.marketing-console-sidebar .brand-wordmark { display: block; width: 6.2rem; margin: .25rem 0 1.4rem .35rem; }
.marketing-console-navigation { display: grid; gap: .2rem; }
.marketing-console-navigation > span { display: flex; align-items: center; gap: .55rem; min-height: 2.15rem; padding: .45rem .6rem; border-radius: .38rem; color: var(--sidebar-muted); font-weight: 520; }
.marketing-console-navigation > span.active { background: var(--signal-soft); color: var(--signal-text); box-shadow: inset 2px 0 var(--signal); }
:root[data-theme="dark"] .marketing-console-navigation > span.active { color: #fff; }
.marketing-console-navigation svg { width: 1rem; height: 1rem; }
.marketing-console-workspace { min-width: 0; }
.marketing-console-topbar { display: flex; align-items: center; justify-content: space-between; min-height: 3.3rem; padding: .5rem .85rem; border-bottom: 1px solid var(--line); background: var(--surface); }
.marketing-console-back { display: grid; place-items: center; width: 2rem; height: 2rem; border: 1px solid var(--line); border-radius: .42rem; color: var(--muted); }
.marketing-console-profile { display: flex; align-items: center; gap: .55rem; min-width: 12rem; padding: .4rem .55rem; border: 1px solid var(--line); border-radius: .55rem; background: var(--surface-raised); }
.marketing-console-profile > i { display: grid; place-items: center; width: 1.75rem; height: 1.75rem; border-radius: .42rem; background: var(--signal-soft); color: var(--signal-text); font-style: normal; font-weight: 520; }
.marketing-console-profile > span { display: grid; gap: .08rem; }
.marketing-console-profile strong { color: var(--text-strong); font-size: .72rem; }
.marketing-console-profile small { color: var(--faint); font-size: .58rem; }
.marketing-console-profile > b { margin-left: auto; color: var(--faint); font-size: .66rem; letter-spacing: .05em; }
.marketing-console-content { display: grid; gap: 1rem; padding: 1.1rem; }
.marketing-console-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: .2rem 0 .95rem; border-bottom: 1px solid var(--line); }
.marketing-console-heading > div > span, .marketing-console-lower small { color: var(--signal-text); font-size: .58rem; font-weight: 520; letter-spacing: .15em; text-transform: uppercase; }
.marketing-console-heading h3 { margin: .25rem 0 .2rem; color: var(--text-strong); font-size: clamp(1.25rem, 2.2vw, 1.8rem); letter-spacing: -.04em; }
.marketing-console-heading p { margin: 0; color: var(--muted); font-size: .68rem; }
.marketing-console-heading > .status-badge { flex: 0 0 auto; white-space: nowrap; }
.marketing-console-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .7rem; }
.marketing-console-stats article { display: grid; gap: .32rem; min-height: 6.2rem; padding: .9rem; border: 1px solid var(--line); border-radius: .55rem; background: var(--surface-raised); }
.marketing-console-stats article:first-child { border-color: color-mix(in srgb, var(--signal) 45%, var(--line)); background: linear-gradient(135deg, var(--signal-soft), var(--surface-raised) 72%); }
.marketing-console-stats span { color: var(--muted); font-size: .62rem; font-weight: 500; }
.marketing-console-stats strong { align-self: end; color: var(--text-strong); font-size: 1.35rem; letter-spacing: -.04em; }
.marketing-console-stats small { color: var(--faint); font-size: .58rem; }
.marketing-console-lower { display: grid; grid-template-columns: minmax(0, 2fr) minmax(12rem, .82fr); gap: .7rem; }
.marketing-console-lower > section, .marketing-console-lower > aside { min-width: 0; padding: .9rem; border: 1px solid var(--line); border-radius: .55rem; background: var(--surface-raised); }
.marketing-console-lower section > header { display: flex; align-items: flex-start; justify-content: space-between; padding-bottom: .55rem; }
.marketing-console-lower section > header span { display: grid; gap: .28rem; }
.marketing-console-lower section > header strong, .marketing-console-lower > aside > strong { color: var(--text-strong); font-size: .82rem; }
.marketing-console-lower section > header > b { color: var(--signal-text); font-size: .62rem; }
.marketing-console-report { display: grid; grid-template-columns: minmax(0, 1.2fr) auto minmax(7rem, .85fr); gap: .75rem; align-items: center; min-height: 3.7rem; border-top: 1px solid var(--line); }
.marketing-console-report > span { display: grid; gap: .15rem; }
.marketing-console-report > span strong, .marketing-console-report > strong { color: var(--text-strong); font-size: .66rem; }
.marketing-console-report > span small { color: var(--faint); font-size: .56rem; }
.marketing-console-report > .status-badge { justify-self: center; }
.marketing-console-lower > aside { display: grid; align-content: start; gap: .55rem; }
.marketing-console-lower > aside > p { margin: .15rem 0 .35rem; color: var(--muted); font-size: .64rem; line-height: 1.55; }
.marketing-console-lower > aside > span { display: flex; justify-content: space-between; gap: .75rem; padding-top: .55rem; border-top: 1px solid var(--line); color: var(--text); font-size: .61rem; font-weight: 500; }
.marketing-product-frame figcaption { padding: .75rem 1rem; border-top: 1px solid var(--line); color: var(--faint); font-size: .68rem; line-height: 1.5; }
.marketing-flow-steps article > span { color: var(--signal-text); font: 520 .68rem/1.4 ui-monospace, SFMono-Regular, Menlo, monospace; }
.marketing-flow-steps h3 { margin: 0 0 .35rem; color: var(--text-strong); font-size: 1.02rem; font-weight: 500; letter-spacing: -.02em; }
.marketing-flow-steps p { margin: 0; color: var(--muted); font-size: .86rem; line-height: 1.65; }
.marketing-section-heading { max-width: 45rem; margin-bottom: 2rem; }
.marketing-section-heading h2 { margin-bottom: 0; }
.marketing-flow-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block: 1px solid var(--line); }
.marketing-flow-steps article { min-height: 12rem; padding: 1.5rem 1.5rem 1.75rem 0; border-right: 1px solid var(--line); }
.marketing-flow-steps article + article { padding-left: 1.5rem; }
.marketing-flow-steps article:last-child { border-right: 0; }
.marketing-flow-steps h3 { margin-top: 2.1rem; }
.marketing-risk { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(2rem, 6vw, 6rem); padding: clamp(2rem, 5vw, 4.5rem); border: 1px solid color-mix(in srgb, var(--signal) 30%, var(--line)); border-radius: .75rem; background: linear-gradient(145deg, color-mix(in srgb, var(--signal-soft) 80%, var(--surface)), var(--surface) 65%); }
.marketing-risk > div > p { max-width: 35rem; margin: 0; color: var(--muted); font-size: .9rem; line-height: 1.65; }
.marketing-risk-actions { margin-top: 1.35rem; }
.marketing-risk-cta,
:root[data-theme="dark"] .marketing-risk-cta { min-height: 3.2rem; padding: .78rem 1.8rem; border-color: var(--signal); background: #ffffff; color: var(--signal); font-size: .9rem; box-shadow: 0 .65rem 1.5rem color-mix(in srgb,var(--signal) 13%,transparent); }
.marketing-risk-cta:hover,
:root[data-theme="dark"] .marketing-risk-cta:hover { border-color: var(--signal); background: color-mix(in srgb,#ffffff 92%,var(--signal)); color: var(--signal); box-shadow: 0 .85rem 1.8rem color-mix(in srgb,var(--signal) 18%,transparent); transform: translateY(-1px); }
.marketing-risk h2 { font-size: clamp(1.9rem, 3.5vw, 3rem); }
.marketing-risk ul { display: grid; align-content: start; margin: 0; padding: 0; border-top: 1px solid var(--line); list-style: none; }
.marketing-risk li { display: grid; grid-template-columns: minmax(9rem, .75fr) minmax(0, 1.25fr); gap: 1rem; padding: .9rem 0; border-bottom: 1px solid var(--line); }
.marketing-risk li strong { color: var(--text); font-size: .82rem; }
.marketing-risk li span { color: var(--muted); font-size: .78rem; line-height: 1.5; }
/* Theme */
.theme-picker { display: inline-flex; padding: .1rem; border: 1px solid var(--line); border-radius: var(--radius-control); background: var(--surface-soft); }
.theme-picker button { min-height: var(--control-target); border: 0; border-radius: var(--radius-control); padding: .3rem .5rem; background: transparent; color: var(--muted); cursor: pointer; font-size: .76rem; font-weight: 500; }
.theme-picker button:hover { background: var(--surface-soft); color: var(--text); }
.theme-picker button[aria-pressed="true"] { background: var(--surface); color: var(--text); box-shadow: 0 .1rem .4rem rgba(0,0,0,.08); }
.theme-picker.compact button { padding: .28rem .42rem; }
.theme-toggle-control { display: inline-flex; align-items: center; gap: .35rem; min-height: var(--control-target); padding: 0; border: 0; border-radius: var(--radius-control); background: transparent; cursor: pointer; }
.theme-toggle-control:hover .theme-toggle-track { border-color: var(--signal); box-shadow: 0 0 0 .2rem var(--signal-soft); }
.theme-toggle-icon { display: inline-grid; place-items: center; width: 1rem; height: 1rem; color: var(--faint); opacity: .65; transition: color .18s ease, opacity .18s ease; }
.theme-toggle-icon svg { width: 100%; height: 100%; overflow: visible; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.theme-toggle-sun, :root[data-theme="dark"] .theme-toggle-moon { color: var(--text-strong); opacity: 1; }
.theme-toggle-moon, :root[data-theme="dark"] .theme-toggle-sun { color: var(--faint); opacity: .65; }
.theme-toggle-track { position: relative; width: 2.35rem; height: 1.35rem; border: 1px solid var(--line-strong); border-radius: var(--radius-control); background: var(--surface-soft); transition: background .18s ease, border-color .18s ease, box-shadow .18s ease; }
.theme-toggle-track::after { position: absolute; top: .14rem; left: .14rem; width: .95rem; height: .95rem; border-radius: 50%; background: #fff; box-shadow: 0 .08rem .24rem rgba(0,0,0,.24); content: ""; transition: transform .18s ease; }
:root[data-theme="dark"] .theme-toggle-track { border-color: var(--signal); background: var(--signal); }
:root[data-theme="dark"] .theme-toggle-track::after { transform: translateX(1rem); }

/* Canonical public chrome and magazine layout. */
body.public-navigation-open { overflow: hidden; }
.marketing-home-shell { position: relative; --footer-stage-height: clamp(8rem, 14svh, 10rem); }
.marketing-home-shell > .public-header { position: absolute; inset: 0 0 auto; width: min(92rem, 100%); border: 0; background: transparent; animation: public-header-in 720ms cubic-bezier(.22,1,.36,1) both; }
.public-header nav { flex-wrap: nowrap; }
.public-navigation-toggle, .public-navigation-close { display: grid; place-items: center; width: var(--control-target); height: var(--control-target); padding: 0; border-radius: 0; background: transparent; color: var(--text-strong); cursor: pointer; }
.public-navigation-toggle { border: 0; transition: color var(--motion-fast) ease, transform var(--motion-fast) var(--ease-out); }
.public-navigation-toggle:hover { color: var(--signal-text); transform: translateY(-1px); }
.public-navigation-toggle svg, .public-navigation-close svg { width: 1.2rem; height: 1.2rem; overflow: visible; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.public-navigation-dialog { position: fixed; inset: 0 0 auto; z-index: 90; width: 100%; max-width: none; max-height: min(88dvh, 38rem); margin: 0; padding: 0; overflow: auto; border: 1px solid var(--line-strong); border-top: 0; border-radius: 0 0 var(--radius-card) var(--radius-card); background: var(--surface); color: var(--text); box-shadow: 0 1.25rem 4rem rgba(8,8,16,.3); }
.public-navigation-dialog[open] { animation: public-navigation-enter 420ms cubic-bezier(.22,1,.36,1); }
.public-navigation-dialog::backdrop { background: rgba(8,8,14,.62); backdrop-filter: blur(.2rem); }
.public-navigation-panel { display: grid; grid-template-rows: auto 1fr auto; width: min(72rem, 100%); margin: auto; padding: 1rem clamp(1rem,4vw,3rem) 1.5rem; }
.public-navigation-header { display: grid; grid-template-columns: var(--control-target) minmax(0,1fr) var(--control-target); align-items: center; gap: 1rem; padding: .35rem .25rem 1rem; border-bottom: 1px solid var(--line); }
.public-navigation-brand { grid-column: 2; display: inline-flex; min-height: var(--control-target); align-items: center; justify-self: center; }
.public-navigation-brand .brand-wordmark { width: 8rem; }
.public-navigation-close { grid-column: 3; justify-self: end; border: 1px solid var(--line); border-radius: 50%; background: var(--surface-soft); color: var(--muted); transition: border-color .16s ease, background-color .16s ease, color .16s ease, transform .16s ease; }
.public-navigation-close:hover { border-color: color-mix(in srgb,var(--signal) 48%,var(--line)); background: var(--signal-soft); color: var(--signal-text); transform: rotate(4deg); }
.public-navigation-links { display: grid !important; align-content: start; gap: .4rem !important; padding: 1rem 0; }
.public-navigation-links a { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 1rem; align-items: center; min-height: 2.75rem; padding: .65rem .8rem; border: 1px solid transparent; border-radius: var(--radius-compact); color: var(--text); font-size: .9rem; font-weight: var(--weight-control); text-decoration: none; transition: border-color var(--motion-fast) ease, background-color var(--motion-fast) ease, color var(--motion-fast) ease, transform var(--motion-fast) var(--ease-out); }
.public-navigation-links a:hover, .public-navigation-links a[aria-current="page"] { border-color: color-mix(in srgb,var(--signal) 42%,var(--line)); background: var(--signal-soft); color: var(--signal-text); }
.public-navigation-links a:hover { transform: translateX(.18rem); }
.public-navigation-links a span { color: var(--faint); font-size: 1rem; }
.public-navigation-ctas { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; padding-top: 1rem; border-top: 1px solid var(--line); }
.public-navigation-ctas .button { width: 100%; }

.public-footer { display: grid; grid-template-columns: minmax(0,1fr); align-content: center; justify-items: center; gap: .85rem; min-height: var(--footer-stage-height, 8rem); text-align: center; }
.public-footer .site-footer-links, .public-footer .footer-social-links { justify-content: center; }
.footer-social-links { display: flex; gap: .5rem !important; }
.footer-social-link { display: inline-grid; place-items: center; justify-content: center; width: var(--control-target); height: var(--control-target); border: 1px solid var(--line); border-radius: 50%; color: var(--muted); transition: border-color .18s ease, color .18s ease, background .18s ease; }
.footer-social-link:hover { border-color: color-mix(in srgb,var(--signal) 55%,var(--line)); background: var(--signal-soft); color: var(--signal-text); }

.marketing-home-shell .marketing-hero { position: relative; isolation: isolate; align-items: center; min-height: 100svh; padding-top: clamp(7.5rem,12vh,9rem); padding-bottom: clamp(6.5rem,10vh,8rem); }
.marketing-home-shell .marketing-hero > :not(.hero-media):not(.section-scroll-cue) { position: relative; z-index: 1; }
.marketing-home-shell .marketing-hero > div:first-child { animation: public-hero-copy-in 820ms 110ms cubic-bezier(.22,1,.36,1) both; }
.hero-media, .hero-media video, .hero-media-poster, .hero-media-overlay { position: absolute; inset: 0; width: 100%; height: 100%; }
.hero-media { right: auto; left: 50%; z-index: 0; width: 100vw; overflow: hidden; pointer-events: none; transform: translateX(-50%); }
.hero-media-poster { background: url("/hero/light-11d0fb9f9d6ef048.jpg") center / cover no-repeat; }
:root[data-theme="dark"] .hero-media-poster { background-image: url("/hero/dark-018ef64c4bea57dd.jpg"); }
.hero-media video { object-fit: cover; object-position: center; opacity: 0; transition: opacity var(--motion-slow) ease; }
.hero-media video[data-poster-ready="true"] { opacity: 1; }
.hero-media-overlay { background: linear-gradient(90deg,rgba(247,247,250,.96) 0%,rgba(247,247,250,.88) 46%,rgba(247,247,250,.7) 100%); }
:root[data-theme="dark"] .hero-media-overlay { background: linear-gradient(90deg,rgba(8,8,11,.96) 0%,rgba(8,8,11,.87) 46%,rgba(8,8,11,.7) 100%); }
.section-scroll-cue { position: absolute; bottom: clamp(1.4rem,3vh,2.25rem); left: 50%; z-index: 2; display: inline-flex; align-items: center; justify-content: center; width: 2.5rem; height: 2.5rem; border: 1px solid color-mix(in srgb,var(--signal) 42%,var(--line)); border-radius: 50%; background: color-mix(in srgb,var(--surface) 72%,transparent); color: var(--signal-text); text-decoration: none; transform: translateX(-50%); transition: border-color var(--motion-fast) ease, background-color var(--motion-fast) ease, box-shadow var(--motion-base) var(--ease-out); }
.section-scroll-cue svg { width: 1.15rem; height: 1.15rem; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; transition: transform .18s ease; }
.section-scroll-cue:hover { border-color: var(--signal); background: var(--surface); box-shadow: 0 .55rem 1.4rem color-mix(in srgb,var(--signal) 16%,transparent); }
.section-scroll-cue:hover svg { transform: translateY(.18rem); }
.magazine-section { position: relative; box-sizing: border-box; min-height: 100svh; margin-bottom: 0; padding-top: clamp(5.5rem,10vh,8rem); padding-bottom: clamp(6.5rem,12vh,9rem); scroll-margin-top: 0; }
.marketing-flow.magazine-section, .marketing-answer.magazine-section, .marketing-product.magazine-section, .marketing-risk-stage.magazine-section { display: grid; align-content: center; }
.marketing-section-heading { display: grid; justify-items: center; width: 100%; max-width: none; margin: 0 auto clamp(3rem,5vw,4.5rem); text-align: center; }
.marketing-section-heading h2 { max-width: 24ch; margin-inline: auto; }
.marketing-step-header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.marketing-step-number { color: var(--signal-text); font: 520 .68rem/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; }
.workflow-icon { display: inline-grid; flex: 0 0 auto; place-items: center; width: 2.35rem; height: 2.35rem; border: 1px solid color-mix(in srgb,var(--signal) 36%,var(--line)); border-radius: .78rem; background: var(--signal-soft); color: var(--signal-text); }
.workflow-icon svg { width: 1.15rem; height: 1.15rem; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }
.marketing-flow-steps h3 { margin-top: 1rem; }
.client-integrations { display: grid; gap: .45rem; margin-top: 1rem; }
.client-integrations-label { color: var(--faint); font-size: .62rem; font-weight: 520; letter-spacing: .09em; text-transform: uppercase; }
.client-integration-list { display: flex; flex-wrap: wrap; gap: .4rem; }
.client-integration-badge { display: inline-flex; min-height: 2.2rem; gap: .45rem; align-items: center; padding: .36rem .62rem; border: 1px solid var(--line); border-radius: 999px; background: color-mix(in srgb,var(--surface) 88%,transparent); color: var(--text); font-size: .67rem; font-weight: 540; line-height: 1; white-space: nowrap; }
.client-integration-badge .client-logo { flex: 0 0 auto; width: 1.15rem; height: 1.15rem; }
.client-logo-cli { fill: none; stroke: #2424ff; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.marketing-risk-stage { display: grid; place-items: center; width: 100%; min-height: calc(100svh - var(--footer-stage-height)); }
.marketing-risk-compact { grid-template-columns: minmax(0,1fr); justify-items: center; width: min(68rem,calc(100% - clamp(2rem,6vw,6rem))); margin: 0; padding: clamp(3rem,6vw,5.25rem); border-radius: clamp(1.75rem,3vw,2.5rem); text-align: center; box-shadow: 0 1.5rem 4rem color-mix(in srgb,var(--signal) 8%,transparent); }
.marketing-risk-compact > div { display: grid; justify-items: center; }
.marketing-risk-compact > div > p { max-width: 38rem; }
.marketing-product.magazine-section { width: min(85rem,calc(100% - 2rem)); }
.marketing-main strong, .marketing-main b { font-weight: 500; }
.marketing-console-navigation > span, .marketing-console-heading > div > span, .marketing-console-lower small { font-weight: 520; }
.marketing-flow-steps article > span, .marketing-flow-steps h3 { font-weight: 520; }
.marketing-console-profile > i, .marketing-console-report > b { font-weight: 520; }

@keyframes public-header-in { from { opacity: 0; transform: translateY(-.5rem); } to { opacity: 1; transform: translateY(0); } }
@keyframes public-hero-copy-in { from { opacity: 0; transform: translateY(.75rem); } to { opacity: 1; transform: translateY(0); } }
@keyframes public-navigation-enter { from { opacity: 0; transform: translateY(-100%); } to { opacity: 1; transform: translateY(0); } }
@keyframes surface-reveal { from { opacity: 0; transform: translateY(1.1rem); } to { opacity: 1; transform: translateY(0); } }

@supports (animation-timeline: view()) {
  .marketing-section-heading,
  .marketing-answer-heading,
  .marketing-answer-copy,
  .marketing-product-heading,
  .marketing-product-frame,
  .marketing-risk-compact {
    animation: surface-reveal var(--motion-slow) var(--ease-out) both;
    animation-timeline: view();
    animation-range: entry 12% cover 32%;
  }
}

/* Keep the public surface mobile-first while the signed-in console remains desktop-only. */
@media (max-width: 70rem) {
  .marketing-hero { grid-template-columns: 1fr; gap: 3rem; padding-top: 3rem; }
  .marketing-terminal { max-width: 48rem; }
  .hero-media-overlay { background: linear-gradient(180deg,rgba(247,247,250,.94) 0%,rgba(247,247,250,.86) 58%,rgba(247,247,250,.72) 100%); }
  :root[data-theme="dark"] .hero-media-overlay { background: linear-gradient(180deg,rgba(8,8,11,.94) 0%,rgba(8,8,11,.86) 58%,rgba(8,8,11,.72) 100%); }
}

@media (max-width: 50rem) {
  .marketing-home-shell { --footer-stage-height: 10rem; }
  .public-header, .public-footer { padding-inline: 1.5rem; }
  .public-header { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: center; min-height: 4.5rem; padding-top: 1.1rem; padding-bottom: .9rem; }
  .public-header .brand { grid-column: 2; justify-self: center; }
  .public-header .brand-wordmark { width: clamp(6.7rem,30vw,7.6rem); }
  .public-header nav { grid-column: 3; justify-self: end; justify-content: flex-end; margin-left: 0; gap: .45rem; }
  .public-header .theme-toggle-control { display: inline-flex; gap: .25rem; }
  .public-header .theme-toggle-icon { width: .75rem; height: .75rem; }
  .marketing-hero, .marketing-answer, .marketing-product, .marketing-flow, .marketing-risk { width: min(30rem,calc(100% - 2.5rem)); margin-inline: auto; }
  .marketing-home-shell .marketing-hero { justify-items: center; min-height: 100svh; padding: 7rem 0 6rem; text-align: center; }
  .marketing-hero > div:first-child { display: grid; justify-items: center; }
  .marketing-hero .actions, .trust-row { justify-content: center; }
  .marketing-terminal { width: 100%; text-align: left; }
  .marketing-terminal .terminal-body { min-height: 0; }
  .marketing-answer, .marketing-risk, .marketing-product-heading { grid-template-columns: 1fr; }
  .marketing-flow, .marketing-section-heading, .marketing-flow-steps article, .marketing-risk, .marketing-product-heading { text-align: center; }
  .marketing-section-heading, .marketing-product-heading, .marketing-answer-heading, .marketing-risk > div { justify-items: center; }
  .marketing-product { gap: 1.6rem; }
  .marketing-flow-steps { grid-template-columns: 1fr; }
  .marketing-flow-steps article, .marketing-flow-steps article + article { min-width: 0; min-height: auto; padding: 1.5rem 1rem; border-right: 0; border-bottom: 1px solid var(--line); }
  .marketing-flow-steps article:last-child { border-bottom: 0; }
  .marketing-flow-steps h3 { margin: .75rem 0 .4rem; }
  .marketing-flow-steps p { width: 100%; max-width: 27rem; margin-inline: auto; overflow-wrap: anywhere; }
  .marketing-section-heading { margin-bottom: 2.25rem; }
  .marketing-step-header { width: 100%; }
  .marketing-flow-steps .client-integrations { justify-items: center; }
  .marketing-flow-steps .client-integration-list { justify-content: center; }
  .marketing-console-canvas { grid-template-columns: 1fr; }
  .marketing-console-sidebar { display: none; }
  .marketing-risk { justify-items: center; padding: 2rem 1.5rem; }
  .marketing-risk-stage .marketing-risk { width: min(30rem,calc(100% - 2.5rem)); margin: 0; padding: 2.75rem 1.5rem; border-radius: 1.75rem; }
}

@media (max-width: 32rem) {
  .marketing-home-shell { --footer-stage-height: 12rem; }
  .public-header, .public-footer { padding-left: max(.85rem,env(safe-area-inset-left)); padding-right: max(.85rem,env(safe-area-inset-right)); }
  .public-header { min-height: 4.35rem; padding-top: .8rem; padding-bottom: .8rem; }
  .public-header .brand-wordmark,
  .identity-header.public-header .brand-wordmark { width: 5.65rem; }
  .public-header nav { min-width: 5.4rem; gap: .15rem; }
  .public-header .theme-toggle-control { gap: 0; }
  .public-header .theme-toggle-track { width: 2.35rem; height: 1.35rem; }
  .public-header .theme-toggle-track::after { top: .14rem; left: .14rem; width: .95rem; height: .95rem; }
  :root[data-theme="dark"] .public-header .theme-toggle-track::after { transform: translateX(1rem); }
  .public-header .theme-toggle-icon { display: none; }
  .public-navigation-panel { padding-inline: max(1rem,env(safe-area-inset-left)) max(1rem,env(safe-area-inset-right)); }
  .marketing-hero .signal-pill {
    max-width: 100%;
    min-height: 0;
    padding-block: .42rem;
    white-space: normal;
    line-height: 1.25;
    text-align: center;
  }
  .marketing-hero .actions { width: 100%; }
  .marketing-hero .actions .button { min-width: 0; padding-inline: .7rem; }
  .marketing-hero .trust-row span { max-width: 100%; overflow-wrap: anywhere; }
  .marketing-answer, .marketing-product, .marketing-flow, .marketing-risk { width: calc(100% - 2rem); }
  .marketing-answer { gap: 2rem; padding-block: 3rem; }
  .marketing-console-content { padding: .75rem; }
  .marketing-console-profile { min-width: 0; }
  .marketing-console-profile > span { display: none; }
  .marketing-console-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .marketing-console-stats article:first-child { grid-column: 1 / -1; }
  .marketing-console-stats article { min-height: 4.8rem; }
  .marketing-console-lower { grid-template-columns: 1fr; }
  .marketing-console-lower > aside { display: none; }
  .marketing-console-report { grid-template-columns: minmax(0,1fr) auto; }
  .marketing-console-report > strong { display: none; }
  .marketing-risk-stage .marketing-risk { width: calc(100% - 2rem); margin: 0; padding-block: 2.5rem; }
  .magazine-section { min-height: 100svh; margin-bottom: 0; padding-top: 4.75rem; padding-bottom: 6.25rem; }
  .public-footer { justify-content: center; text-align: center; }
  .public-footer .site-footer-links, .public-footer .footer-social-links { justify-content: center; }
}

@media (max-width: 22rem) {
  .marketing-hero .actions { display: grid; grid-template-columns: 1fr; }
  .marketing-hero .actions .button { width: 100%; }
  .marketing-hero .trust-row { font-size: .66rem; letter-spacing: .055em; }
}

@media (prefers-reduced-motion: reduce) {
  .marketing-home-shell > .public-header, .marketing-home-shell .marketing-hero > div:first-child, .public-navigation-dialog[open] { animation: none; }
}

