:root {
    color-scheme: dark;
    --bg: #0b1220;
    --surface: #111d33;
    --surface-raised: #192741;
    --surface-soft: #132039;
    --border: #263b5c;
    --text: #f0f6fd;
    --muted: #9cafc7;
    --accent: #39d3e7;
    --accent-strong: #7ae6f3;
    --mint: #49dca9;
    --violet: #9b7cf6;
    --amber: #ffbd3e;
    --danger: #ff6f88;
    --shadow: 0 24px 70px rgb(0 0 0 / 24%);
    --body-glow: rgb(57 211 231 / 9%);
    --header-border: rgb(38 59 92 / 80%);
    --header-bg: rgb(11 18 32 / 88%);
    --preview-gradient-end: #0f1b30;
    --success-border: rgb(73 220 169 / 45%);
    --featured-shadow: rgb(57 211 231 / 8%);
    --danger-border: rgb(255 111 136 / 50%);
    --selected-shadow: rgb(41 184 163 / 18%);
    --footer-bg: #080f1c;
    --radius-sm: .75rem;
    --radius-md: 1.25rem;
    --radius-lg: 2rem;
    --container: 76rem;
}

:root[data-theme="light"] {
    color-scheme: light;
    --bg: #f5f8fc;
    --surface: #ffffff;
    --surface-raised: #eaf1f8;
    --surface-soft: #edf4fa;
    --border: #c6d4e3;
    --text: #13233a;
    --muted: #50657d;
    --accent: #087f92;
    --accent-strong: #056575;
    --mint: #087b59;
    --violet: #6f4bd8;
    --amber: #9b6500;
    --danger: #b42343;
    --shadow: 0 24px 70px rgb(28 55 87 / 14%);
    --body-glow: rgb(8 127 146 / 10%);
    --header-border: rgb(164 184 205 / 78%);
    --header-bg: rgb(245 248 252 / 90%);
    --preview-gradient-end: #e5eef7;
    --success-border: rgb(8 123 89 / 40%);
    --featured-shadow: rgb(8 127 146 / 12%);
    --danger-border: rgb(180 35 67 / 42%);
    --selected-shadow: rgb(8 127 146 / 18%);
    --footer-bg: #e7eef6;
}

* { box-sizing: border-box; }

html {
    scroll-behavior: smooth;
    background: var(--bg);
}

body {
    margin: 0;
    min-width: 20rem;
    background:
        radial-gradient(circle at 85% 2%, var(--body-glow), transparent 28rem),
        var(--bg);
    color: var(--text);
    font-family: "Segoe UI", system-ui, sans-serif;
    font-size: 1rem;
    line-height: 1.6;
    text-rendering: optimizeLegibility;
}

a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
select { font: inherit; }

:focus-visible {
    outline: .2rem solid var(--amber);
    outline-offset: .2rem;
}

.skip-link {
    position: fixed;
    z-index: 1000;
    top: 1rem;
    left: 1rem;
    padding: .75rem 1rem;
    border-radius: .6rem;
    background: var(--text);
    color: var(--bg);
    transform: translateY(-200%);
}

.skip-link:focus { transform: translateY(0); }

.container {
    width: min(calc(100% - 2rem), var(--container));
    margin-inline: auto;
}

.site-shell { min-height: 100vh; overflow: clip; }

.site-header {
    position: sticky;
    z-index: 100;
    top: 0;
    border-bottom: 1px solid var(--header-border);
    background: var(--header-bg);
    backdrop-filter: blur(1rem);
}

.site-header__inner {
    display: flex;
    min-height: 5rem;
    align-items: center;
    gap: 2rem;
}

.brand {
    display: inline-flex;
    align-items: center;
    gap: .7rem;
    font-size: 1.15rem;
    font-weight: 700;
    letter-spacing: -.03em;
}

.brand__mark {
    display: grid;
    width: 2rem;
    height: 2rem;
    place-items: center;
    border-radius: .6rem;
    background: var(--accent);
    color: var(--bg);
    font-family: "Cascadia Mono", "Consolas", monospace;
}

.brand__accent { color: var(--accent); }

.desktop-nav {
    display: flex;
    flex: 1;
    justify-content: center;
    gap: 1.6rem;
    color: var(--muted);
    font-size: .92rem;
}

.desktop-nav a {
    padding: .7rem .1rem;
    border-bottom: 2px solid transparent;
}

.desktop-nav a:hover,
.desktop-nav a.active {
    border-color: var(--accent);
    color: var(--text);
}

.site-header__actions { display: flex; gap: .65rem; }
.mobile-nav { display: none; margin-left: auto; }

.theme-toggle {
    display: inline-grid;
    width: 2.8rem;
    min-height: 2.8rem;
    place-items: center;
    border: 1px solid var(--border);
    border-radius: .85rem;
    background: var(--surface);
    color: var(--text);
    cursor: pointer;
    font: inherit;
    font-size: 1.15rem;
}

.theme-toggle:hover { border-color: var(--accent); }
.theme-toggle--mobile { display: flex; width: 100%; justify-content: flex-start; gap: .75rem; padding-inline: .75rem; font-size: .9rem; font-weight: 700; }

.button {
    display: inline-flex;
    min-height: 2.8rem;
    align-items: center;
    justify-content: center;
    padding: .65rem 1.1rem;
    border: 1px solid transparent;
    border-radius: .85rem;
    cursor: pointer;
    font-weight: 700;
    line-height: 1;
    transition: transform .18s ease, border-color .18s ease, background-color .18s ease;
}

.button:not(:disabled):hover { transform: translateY(-2px); }
.button--large { min-height: 3.45rem; padding-inline: 1.4rem; }
.button--primary { background: var(--accent); color: var(--bg); }
.button--primary:hover { background: var(--accent-strong); }
.button--secondary { border-color: var(--border); background: var(--surface-raised); }
.button--secondary:hover, .button--ghost:hover { border-color: var(--accent); }
.button--ghost { background: transparent; color: var(--text); }
.button:disabled { cursor: not-allowed; opacity: .45; }

.contact-honeypot {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}

.eyebrow {
    margin: 0 0 1rem;
    color: var(--accent);
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { line-height: 1.08; letter-spacing: -.045em; }
h1 { font-size: clamp(3rem, 7vw, 5.7rem); }
h2 { font-size: clamp(2rem, 4vw, 3.4rem); }
h3 { font-size: 1.35rem; }

.hero {
    display: grid;
    min-height: 47rem;
    align-items: center;
    gap: 4rem;
    grid-template-columns: .95fr 1.05fr;
    padding-block: 5rem;
}

.hero__content { max-width: 40rem; }
.hero h1 { margin-bottom: 1.6rem; }
.hero__lead, .page-hero > p:last-child {
    max-width: 47rem;
    color: var(--muted);
    font-size: clamp(1.05rem, 2vw, 1.28rem);
}

.hero__actions { display: flex; flex-wrap: wrap; gap: .85rem; margin: 2rem 0 1.5rem; }
.hero__note { color: var(--muted); font-family: "Cascadia Mono", "Consolas", monospace; font-size: .7rem; letter-spacing: .06em; }

.product-preview {
    position: relative;
    min-height: 35rem;
    padding: 2rem;
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    background: linear-gradient(145deg, var(--surface), var(--preview-gradient-end));
    box-shadow: var(--shadow);
}

.product-preview::before {
    position: absolute;
    z-index: -1;
    width: 16rem;
    height: 16rem;
    border-radius: 50%;
    background: var(--violet);
    content: "";
    filter: blur(7rem);
    inset: 10% -5% auto auto;
    opacity: .22;
}

.product-preview__top {
    display: flex;
    justify-content: space-between;
    margin-bottom: 1.1rem;
    color: var(--accent);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .08em;
}

.status-pill {
    padding: .2rem .55rem;
    border: 1px solid var(--success-border);
    border-radius: 999px;
    color: var(--mint);
}

.product-preview h2 { font-size: 1.75rem; }

.product-preview__intro {
    max-width: 34rem;
    margin: .65rem 0 1.4rem;
    color: var(--muted);
}

.acquisition-flow {
    display: grid;
    padding: 0;
    margin: 0;
    gap: .7rem;
    list-style: none;
}

.acquisition-flow__step {
    display: grid;
    min-width: 0;
    align-items: center;
    padding: 1rem;
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    background: var(--surface-raised);
    gap: .9rem;
    grid-template-columns: auto minmax(0, 1fr) auto;
}

.acquisition-flow__step--active {
    border-color: var(--accent);
    box-shadow: inset 3px 0 0 var(--accent);
}

.acquisition-flow__marker {
    display: grid;
    width: 2.35rem;
    height: 2.35rem;
    place-items: center;
    border: 1px solid var(--border);
    border-radius: 50%;
    color: var(--muted);
    font-family: "Cascadia Mono", "Consolas", monospace;
    font-size: .72rem;
}

.acquisition-flow__step--complete .acquisition-flow__marker {
    border-color: var(--success-border);
    color: var(--mint);
}

.acquisition-flow__step--active .acquisition-flow__marker {
    border-color: var(--accent);
    background: var(--accent);
    color: var(--surface);
}

.acquisition-flow__step strong,
.acquisition-flow__step small {
    display: block;
}

.acquisition-flow__step strong { font-size: .92rem; }
.acquisition-flow__step small { margin-top: .2rem; color: var(--muted); }

.acquisition-flow__state {
    color: var(--muted);
    font-family: "Cascadia Mono", "Consolas", monospace;
    font-size: .7rem;
    text-transform: uppercase;
}

.acquisition-flow__step--complete .acquisition-flow__state { color: var(--mint); }
.acquisition-flow__step--active .acquisition-flow__state { color: var(--accent); }

.activation-note {
    display: flex;
    align-items: center;
    padding: 1rem;
    margin-top: 1rem;
    border: 1px solid var(--success-border);
    border-radius: var(--radius-md);
    background: color-mix(in srgb, var(--mint) 7%, transparent);
    gap: .8rem;
}

.activation-note__icon {
    display: grid;
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 50%;
    background: var(--mint);
    color: var(--surface);
    font-weight: 800;
}

.activation-note strong,
.activation-note small { display: block; }
.activation-note small { margin-top: .15rem; color: var(--muted); }

.trust-strip {
    display: grid;
    padding-block: 1.5rem;
    border-block: 1px solid var(--border);
    color: var(--muted);
    font-size: .9rem;
    gap: 1rem;
    grid-template-columns: repeat(4, 1fr);
}

.trust-strip span::before { margin-right: .6rem; color: var(--mint); content: "✓"; }
.section { padding-block: clamp(4rem, 9vw, 7rem); }

.section-heading { max-width: 48rem; margin-bottom: 3rem; }
.section-heading p:last-child { color: var(--muted); font-size: 1.08rem; }
.section-heading--centered { margin-inline: auto; text-align: center; }

.feature-grid { display: grid; gap: 1rem; grid-template-columns: repeat(4, 1fr); }
.feature-grid--three { grid-template-columns: repeat(3, 1fr); }

.feature-card {
    min-height: 20rem;
    padding: 1.6rem;
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    background: var(--surface);
}

.feature-card__index {
    color: var(--accent);
    font-family: "Cascadia Mono", "Consolas", monospace;
    font-size: .75rem;
}

.feature-card__icon {
    display: grid;
    width: 3.5rem;
    height: 3.5rem;
    margin: 2.4rem 0 1.5rem;
    place-items: center;
    border-radius: 1rem;
    background: var(--surface-raised);
    color: var(--accent);
    font-size: 1.5rem;
}

.feature-card p { color: var(--muted); }

.section--split {
    display: grid;
    align-items: start;
    gap: 5rem;
    grid-template-columns: 1fr 1fr;
}

.statement-list { border-top: 1px solid var(--border); }
.statement-list p { padding-block: 1.3rem; border-bottom: 1px solid var(--border); color: var(--muted); }
.statement-list strong { color: var(--text); }

.cta-section {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 7rem;
    padding: clamp(2rem, 5vw, 3.5rem);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    background: linear-gradient(120deg, var(--surface-raised), var(--surface));
}

.cta-section h2 { max-width: 44rem; margin-bottom: .8rem; font-size: clamp(2rem, 4vw, 3rem); }
.cta-section p:last-child { margin-bottom: 0; color: var(--muted); }

.page-hero { max-width: var(--container); padding-top: clamp(6rem, 12vw, 10rem); padding-bottom: 3rem; }
.page-hero h1 { max-width: 62rem; }
.page-hero--narrow { max-width: 62rem; margin-inline: max(1rem, calc((100vw - var(--container)) / 2)); }
.page-hero--centered { margin-inline: auto; text-align: center; }
.page-hero--centered h1, .page-hero--centered p { margin-inline: auto; }

.product-layers {
    display: grid;
    gap: 1px;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    background: var(--border);
    grid-template-columns: repeat(2, 1fr);
}

.product-layers article { min-height: 19rem; padding: 2.5rem; background: var(--surface); }
.product-layers span, .story-grid article span { color: var(--accent); font-family: "Cascadia Mono", "Consolas", monospace; font-size: .78rem; }
.product-layers h2 { margin-top: 4rem; font-size: 2.2rem; }
.product-layers p { max-width: 30rem; color: var(--muted); }

.data-flow {
    display: grid;
    gap: 4rem;
    grid-template-columns: 1fr 1.2fr;
    padding: 3rem;
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    background: var(--surface);
}

.data-flow p:last-child { color: var(--muted); }
.data-flow__nodes { display: grid; gap: .7rem; grid-template-columns: repeat(3, 1fr); }
.data-flow__nodes span { display: grid; min-height: 5rem; place-items: center; border: 1px solid var(--border); border-radius: var(--radius-sm); background: var(--surface-raised); font-weight: 700; }

.journey { display: grid; margin: 0; padding: 0; gap: 1rem; list-style: none; }
.journey li { display: grid; align-items: center; gap: 2rem; grid-template-columns: 7rem 1fr; padding: 2rem; border-bottom: 1px solid var(--border); }
.journey li > span { color: var(--accent); font-family: "Cascadia Mono", "Consolas", monospace; font-size: 2rem; }
.journey h2 { margin-bottom: .5rem; font-size: 2rem; }
.journey p { margin-bottom: 0; color: var(--muted); }

.story-grid { display: grid; gap: 5rem; grid-template-columns: .9fr 1.1fr; }
.story-grid blockquote { margin: 0; padding: 2.5rem; border-left: .3rem solid var(--accent); border-radius: 0 var(--radius-md) var(--radius-md) 0; background: var(--surface); font-size: clamp(1.8rem, 4vw, 3rem); line-height: 1.25; }
.story-grid cite { display: block; margin-top: 3rem; color: var(--accent); font-family: "Cascadia Mono", "Consolas", monospace; font-size: .75rem; font-style: normal; text-transform: uppercase; }
.story-grid article { display: grid; gap: .5rem; grid-template-columns: 3rem 1fr; padding: 1.5rem 0; border-bottom: 1px solid var(--border); }
.story-grid article h2, .story-grid article p { grid-column: 2; }
.story-grid article h2 { margin-bottom: .2rem; font-size: 1.7rem; }
.story-grid article p { color: var(--muted); }

.values-grid { display: grid; gap: 1rem; grid-template-columns: repeat(4, 1fr); }
.values-grid span { padding: 1.5rem; border-top: .25rem solid var(--accent); background: var(--surface); font-weight: 700; }

.pricing-grid { display: grid; align-items: start; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(16.5rem, 1fr)); }
.pricing-card { position: relative; padding: 1.7rem; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--surface); }
.pricing-card--featured { border-color: var(--accent); box-shadow: 0 0 0 1px var(--accent), 0 24px 70px var(--featured-shadow); }
.pricing-card__badge { position: absolute; top: 1rem; right: 1rem; color: var(--accent); font-family: "Cascadia Mono", "Consolas", monospace; font-size: .62rem; }
.pricing-card h2 { font-size: 1.8rem; }
.pricing-card__description { min-height: 5rem; color: var(--muted); }
.pricing-card__price { display: flex; align-items: baseline; gap: .4rem; margin-top: 1.5rem; }
.pricing-card__price strong { font-size: 2.5rem; line-height: 1; }
.pricing-card__price span, .pricing-card__annual { color: var(--muted); font-size: .82rem; }
.pricing-card__trial { color: var(--mint); font-weight: 700; }
.pricing-card .button { width: 100%; margin-block: 1rem; }
.pricing-card ul { margin: 1rem 0 0; padding: 1rem 0 0; border-top: 1px solid var(--border); list-style: none; }
.pricing-card li { display: flex; align-items: flex-start; gap: .7rem; margin-bottom: .8rem; font-size: .88rem; }
.pricing-card li > span:first-child { color: var(--mint); }
.pricing-card li small { display: block; color: var(--muted); }

.catalog-state { max-width: 42rem; margin: 0 auto; padding: 4rem 2rem; border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--surface); text-align: center; }
.catalog-state p { color: var(--muted); }
.catalog-state--error { border-color: var(--danger-border); }
.state-icon, .loader { display: grid; width: 3.5rem; height: 3.5rem; margin: 0 auto 1.5rem; place-items: center; border: 1px solid var(--accent); border-radius: 50%; color: var(--accent); font-size: 1.5rem; }
.loader { border-color: var(--border); border-top-color: var(--accent); animation: spin .8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

.pricing-note { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: 2.5rem; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--surface-raised); }
.pricing-note h2 { margin-bottom: 0; font-size: 2rem; }

.docs-layout { display: grid; align-items: start; gap: 4rem; grid-template-columns: 17rem 1fr; }
.docs-layout aside { position: sticky; top: 7rem; display: flex; flex-direction: column; gap: .85rem; padding: 1.4rem; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--surface); }
.docs-layout aside a { color: var(--muted); }
.docs-layout aside a:hover { color: var(--accent); }
.docs-content article { display: grid; gap: 1rem; grid-template-columns: 3.5rem 1fr; padding: 2rem 0; border-bottom: 1px solid var(--border); }
.docs-content article > span { color: var(--accent); font-family: "Cascadia Mono", "Consolas", monospace; }
.docs-content h2 { font-size: 2rem; }
.docs-content p { color: var(--muted); }
.docs-content a, .article-back { color: var(--accent); font-weight: 700; }

.article-layout { max-width: 52rem; margin: 0 auto; padding-top: 3rem; }
.article-layout article { margin-top: 3rem; }
.article-layout h1, .legal-page h1 { font-size: clamp(3rem, 7vw, 5rem); }
.article-lead { color: var(--muted); font-size: 1.25rem; }
.article-layout article > h2, .legal-page h2 { margin-top: 3.5rem; font-size: 2rem; }
.article-callout, .legal-notice { margin-block: 2.5rem; padding: 1.5rem; border-left: .25rem solid var(--amber); background: var(--surface); }
.article-callout p, .legal-notice p { margin: .5rem 0 0; color: var(--muted); }

.faq-list { max-width: 56rem; margin-inline: auto; }
.faq-list details { border-bottom: 1px solid var(--border); }
.faq-list summary { padding: 1.5rem 2.5rem 1.5rem 0; cursor: pointer; font-size: 1.15rem; font-weight: 700; }
.faq-list p { max-width: 48rem; color: var(--muted); }

.contact-grid { display: grid; gap: 4rem; grid-template-columns: .8fr 1.2fr; }
.contact-card { padding: 2rem; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--surface); }
.contact-card p:not(.eyebrow) { color: var(--muted); }
.contact-form { display: grid; gap: 1rem; }
.contact-form label { display: grid; gap: .4rem; font-weight: 700; }
.contact-form input, .contact-form textarea { width: 100%; padding: .85rem 1rem; border: 1px solid var(--border); border-radius: .7rem; background: var(--surface); color: var(--text); }
.contact-form input:disabled, .contact-form textarea:disabled { opacity: .7; }
.contact-form > p { color: var(--muted); font-size: .85rem; }

.legal-page { max-width: 52rem; margin: 3rem auto; }
.page-state { min-height: 65vh; padding-block: 10rem; text-align: center; }
.page-state h1 { max-width: 54rem; margin-inline: auto; }
.page-state p:not(.eyebrow) { color: var(--muted); font-size: 1.15rem; }

.onboarding-layout { display: grid; align-items: start; gap: 2rem; grid-template-columns: minmax(16rem, .65fr) minmax(0, 1.7fr); }
.onboarding-summary { position: sticky; top: 7rem; padding: 1.75rem; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--surface); }
.onboarding-summary > p:not(.eyebrow), .form-help { color: var(--muted); }
.onboarding-summary .billing-facts { display: grid; gap: .75rem; margin-block: 1.5rem; }
.onboarding-summary .billing-facts div { display: flex; justify-content: space-between; gap: 1rem; padding-bottom: .65rem; border-bottom: 1px solid var(--border); }
.onboarding-summary .billing-facts dd { margin: 0; font-weight: 700; }
.onboarding-form { display: grid; gap: 1.25rem; }
.onboarding-form fieldset { margin: 0; padding: 1.75rem; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--surface); }
.onboarding-form legend { display: flex; align-items: center; gap: .65rem; padding-right: .75rem; font-size: 1.15rem; font-weight: 800; }
.onboarding-form legend span { display: grid; width: 2rem; height: 2rem; place-items: center; border-radius: 50%; background: var(--accent); color: var(--bg); font-size: .78rem; }
.form-grid { display: grid; gap: 1rem; margin-top: 1rem; }
.form-grid--two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.form-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.form-grid__wide { grid-column: span 2; }
.onboarding-form label { display: grid; align-content: start; gap: .4rem; min-width: 0; font-weight: 700; }
.onboarding-form label small, .form-checkbox small { color: var(--muted); font-weight: 400; }
.onboarding-form input:not([type="checkbox"]), .onboarding-form select { width: 100%; min-width: 0; padding: .85rem 1rem; border: 1px solid var(--border); border-radius: .7rem; background: var(--surface-raised); color: var(--text); }
.form-checkbox { display: flex !important; align-items: flex-start; grid-template-columns: auto 1fr; gap: .7rem !important; }
.form-checkbox input { width: 1.1rem; height: 1.1rem; margin-top: .15rem; accent-color: var(--accent); }
.form-checkbox span { display: grid; gap: .25rem; }
.form-checkbox--panel, .checkout-notice { padding: 1rem; border: 1px solid var(--border); border-radius: .7rem; background: var(--surface-raised); }
.checkout-notice { margin-block: 1rem; }
.checkout-notice p { margin-bottom: 0; color: var(--muted); }
.onboarding-form fieldset > .button { width: 100%; margin-top: 1.25rem; }
.onboarding-result { max-width: 46rem; min-height: 62vh; padding-top: 7rem; text-align: center; }
.onboarding-result p { color: var(--muted); font-size: 1.08rem; }
.result-mark { display: grid; width: 4rem; height: 4rem; margin: 1rem auto 1.5rem; place-items: center; border: 1px solid var(--accent); border-radius: 50%; color: var(--accent); font-size: 1.8rem; }
.result-mark--success { border-color: var(--mint); color: var(--mint); }
.result-mark--warning { border-color: var(--amber); color: var(--amber); }

.site-footer { padding-top: 4rem; border-top: 1px solid var(--border); background: var(--footer-bg); }
.site-footer__grid { display: grid; gap: 3rem; grid-template-columns: 2fr repeat(3, 1fr); }
.site-footer__grid h2 { color: var(--muted); font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; }
.site-footer__grid > div:not(:first-child) { display: flex; flex-direction: column; gap: .7rem; }
.site-footer__grid a:not(.brand) { color: var(--muted); font-size: .9rem; }
.site-footer__grid a:hover { color: var(--accent); }
.site-footer__summary { max-width: 20rem; margin-top: 1.2rem; color: var(--muted); }
.site-footer__bottom { display: flex; justify-content: space-between; margin-top: 4rem; padding-block: 1.3rem; border-top: 1px solid var(--border); color: var(--muted); font-family: "Cascadia Mono", "Consolas", monospace; font-size: .7rem; }
.system-status span { display: inline-block; width: .5rem; height: .5rem; margin-right: .4rem; border-radius: 50%; background: var(--mint); }

@media (max-width: 68rem) {
    .desktop-nav, .site-header__actions { display: none; }
    .mobile-nav { display: block; }
    .mobile-nav summary { cursor: pointer; font-weight: 700; list-style: none; }
    .mobile-nav[open] nav { position: absolute; top: calc(100% + 1px); right: 1rem; display: flex; width: min(22rem, calc(100vw - 2rem)); flex-direction: column; padding: 1rem; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--surface); box-shadow: var(--shadow); }
    .mobile-nav nav a { padding: .75rem; border-radius: .5rem; color: var(--muted); }
    .mobile-nav nav a:hover, .mobile-nav nav a.active { background: var(--surface-raised); color: var(--text); }
    .hero { grid-template-columns: 1fr; }
    .hero__content { max-width: 50rem; }
    .product-preview { min-height: auto; }
    .feature-grid, .feature-grid--three { grid-template-columns: repeat(2, 1fr); }
    .values-grid { grid-template-columns: repeat(2, 1fr); }
    .docs-layout { grid-template-columns: 13rem 1fr; }
    .onboarding-layout { grid-template-columns: 1fr; }
    .onboarding-summary { position: static; }
}

@media (max-width: 48rem) {
    h1 { font-size: clamp(2.65rem, 13vw, 4.2rem); }
    .hero { min-height: auto; padding-block: 4rem; }
    .product-preview { padding: 1rem; border-radius: var(--radius-md); }
    .trust-strip, .product-layers, .data-flow, .feature-grid, .feature-grid--three, .section--split, .story-grid, .docs-layout, .contact-grid, .site-footer__grid { grid-template-columns: 1fr; }
    .acquisition-flow__step { align-items: start; grid-template-columns: auto minmax(0, 1fr); }
    .acquisition-flow__state { grid-column: 2; }
    .trust-strip { padding-inline: .5rem; }
    .product-layers article { min-height: 15rem; padding: 1.5rem; }
    .product-layers h2 { margin-top: 2rem; }
    .data-flow { padding: 1.5rem; }
    .data-flow__nodes { grid-template-columns: repeat(2, 1fr); }
    .feature-card { min-height: auto; }
    .journey li { align-items: start; grid-template-columns: 3.5rem 1fr; padding-inline: .5rem; }
    .journey li > span { font-size: 1.2rem; }
    .cta-section, .pricing-note { align-items: stretch; flex-direction: column; }
    .cta-section .button, .pricing-note .button { width: 100%; }
    .docs-layout aside { position: static; }
    .form-grid--two, .form-grid--three { grid-template-columns: 1fr; }
    .form-grid__wide { grid-column: auto; }
    .onboarding-form fieldset { padding: 1.25rem; }
    .site-footer__grid > div { padding-bottom: 1rem; border-bottom: 1px solid var(--border); }
    .site-footer__bottom { align-items: flex-start; flex-direction: column; gap: .7rem; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
