/*theme*/
/* Colours are variables named by role, not by value. --blue is the accent as text and lines, --blue-solid the fill behind white text.
   The dark values are listed twice (system setting, manual toggle) and must stay identical. Both are screen-only, so print stays light. */
:root{
/* text */
--ink:#162338;
--muted:#647085;
--faint:#73809a;
--brand-ink:#1d2e3f;
--ledger-name:#3d4a60;
--ledger-text:#56627a;
--placeholder:#757575;
/* accent: --blue is the accent as text and lines, --blue-solid is the fill behind white text */
--blue:#3156dc;
--blue-solid:#3156dc;
--blue-solid-hover:#2345bb;
--on-blue:#fff;
--accent-tint:#eef2ff;
--accent-tint-2:#f1f5ff;
--accent-tint-text:#244abd;
--option-edge:#a9bdf8;
--focus:#7195ff;
--notice-bg:#edf2fd;
--notice-text:#355288;
--cta-bg:#edf2fd;
--avatar-bg:#e6ecfa;
--avatar-text:#526a9e;
--hero-blob:#edf2fe;
--pale:#f2f5fb;
/* surfaces */
--bg:#fff;
--surface:#fff;
--surface-faint:#fbfcff;
--panel:#f5f7fb;
--panel-soft:#f3f6fb;
--inset:#f7f9fc;
--field-bg:#fff;
--table-sec:#fafbfd;
--table-group:#fafbfc;
--neutral-tint:#f1f3f6;
/* borders and rules */
--line:#e0e5ed;
--row-line:#eef0f5;
--shell-border:#dce3f0;
--card-border:#d8e1f0;
--control-border:#cbd3e0;
--link-rule:#aeb9cb;
--rule-strong:#b7c4de;
/* navy bands (product section, hero check): navy in both themes, lighter than the page in dark */
--band:#142844;
--callout:#162c4b;
--on-navy:#fff;
--on-navy-text:#b7c5da;
--on-navy-soft:#bdcce1;
--on-navy-faint:#9eb3d1;
--on-navy-accent:#a4baff;
--on-navy-note:#a6b8d2;
--on-navy-green:#a1e1cf;
--on-navy-border:#58708f;
--on-navy-quiet:#c3cee0;
--navy-btn-bg:#fff;
--navy-btn-text:#162c4b;
/* status: green and amber, text and fills */
--good:#267263;
--good-fill:#3c9a84;
--good-tint:#eaf5f1;
--good-note-text:#3a655c;
--good-note-bg:#eff7f4;
--good-panel-bg:#f0f7f5;
--good-panel-border:#cde4dd;
--warn:#a35a14;
--warn-fill:#d99a55;
--warn-tint:#fdf3e7;
/* meters and bars */
--track:#eef1f5;
--hatch:#e3e7ee;
--hatch-gap:#f6f7fa;
--cost-fill:#c9d3e3;
/* switches: which wordmark and which toggle icon show */
--show-logo-light:block;
--show-logo-dark:none;
--show-moon:block;
--show-sun:none;
/* shadows and the dialog backdrop */
--shadow-shell:#1e376f14;
--shadow-card:#0001;
--shadow-pop:#0002;
--shadow-dialog:#0003;
--shadow-callout:#162c4b1a;
--backdrop:#10203dcc;
}
@media screen and (prefers-color-scheme:dark){:root:not([data-theme="light"]){
/* text */
--ink:#e6ebf3;
--muted:#a0adc0;
--faint:#8b99b0;
--brand-ink:#e6ebf3;
--ledger-name:#c3ccda;
--ledger-text:#a6b2c5;
--placeholder:#8b99b0;
/* accent: --blue is the accent as text and lines, --blue-solid is the fill behind white text */
--blue:#8aa6ff;
--blue-solid:#3d62e6;
--blue-solid-hover:#4869ee;
--accent-tint:#1b2a55;
--accent-tint-2:#1b2a55;
--accent-tint-text:#b0c2ff;
--option-edge:#4a68c4;
--focus:#93acff;
--notice-bg:#15223f;
--notice-text:#aabde6;
--cta-bg:#15223f;
--avatar-bg:#21304f;
--avatar-text:#a8b8dc;
--hero-blob:#0f1b35;
--pale:#172033;
/* surfaces */
--bg:#0a1019;
--surface:#111a28;
--surface-faint:#152033;
--panel:#0d1521;
--panel-soft:#0d1521;
--inset:#0d1521;
--field-bg:#0c131f;
--table-sec:#151f31;
--table-group:#151f31;
--neutral-tint:#1c2638;
/* borders and rules */
--line:#243147;
--row-line:#1c2739;
--shell-border:#26344c;
--card-border:#26344c;
--control-border:#35445e;
--link-rule:#4b5b76;
--rule-strong:#3a4a66;
/* navy bands (product section, hero check): navy in both themes, lighter than the page in dark */
--band:#142a4c;
--callout:#1a3158;
/* status: green and amber, text and fills */
--good:#56c8a9;
--good-fill:#45b094;
--good-tint:#12332c;
--good-note-text:#93d8c5;
--good-note-bg:#11302a;
--good-panel-bg:#11302a;
--good-panel-border:#24564b;
--warn:#e6a866;
--warn-fill:#e3a55d;
--warn-tint:#38290f;
/* meters and bars */
--track:#253148;
--hatch:#2c3a52;
--hatch-gap:#172134;
--cost-fill:#475a78;
/* switches: which wordmark and which toggle icon show */
--show-logo-light:none;
--show-logo-dark:block;
--show-moon:none;
--show-sun:block;
/* shadows and the dialog backdrop */
--shadow-shell:#00000066;
--shadow-card:#00000059;
--shadow-pop:#00000066;
--shadow-dialog:#00000099;
--shadow-callout:#00000066;
--backdrop:#02050ad9;
}}
@media screen{:root[data-theme="dark"]{
/* text */
--ink:#e6ebf3;
--muted:#a0adc0;
--faint:#8b99b0;
--brand-ink:#e6ebf3;
--ledger-name:#c3ccda;
--ledger-text:#a6b2c5;
--placeholder:#8b99b0;
/* accent: --blue is the accent as text and lines, --blue-solid is the fill behind white text */
--blue:#8aa6ff;
--blue-solid:#3d62e6;
--blue-solid-hover:#4869ee;
--accent-tint:#1b2a55;
--accent-tint-2:#1b2a55;
--accent-tint-text:#b0c2ff;
--option-edge:#4a68c4;
--focus:#93acff;
--notice-bg:#15223f;
--notice-text:#aabde6;
--cta-bg:#15223f;
--avatar-bg:#21304f;
--avatar-text:#a8b8dc;
--hero-blob:#0f1b35;
--pale:#172033;
/* surfaces */
--bg:#0a1019;
--surface:#111a28;
--surface-faint:#152033;
--panel:#0d1521;
--panel-soft:#0d1521;
--inset:#0d1521;
--field-bg:#0c131f;
--table-sec:#151f31;
--table-group:#151f31;
--neutral-tint:#1c2638;
/* borders and rules */
--line:#243147;
--row-line:#1c2739;
--shell-border:#26344c;
--card-border:#26344c;
--control-border:#35445e;
--link-rule:#4b5b76;
--rule-strong:#3a4a66;
/* navy bands (product section, hero check): navy in both themes, lighter than the page in dark */
--band:#142a4c;
--callout:#1a3158;
/* status: green and amber, text and fills */
--good:#56c8a9;
--good-fill:#45b094;
--good-tint:#12332c;
--good-note-text:#93d8c5;
--good-note-bg:#11302a;
--good-panel-bg:#11302a;
--good-panel-border:#24564b;
--warn:#e6a866;
--warn-fill:#e3a55d;
--warn-tint:#38290f;
/* meters and bars */
--track:#253148;
--hatch:#2c3a52;
--hatch-gap:#172134;
--cost-fill:#475a78;
/* switches: which wordmark and which toggle icon show */
--show-logo-light:none;
--show-logo-dark:block;
--show-moon:none;
--show-sun:block;
/* shadows and the dialog backdrop */
--shadow-shell:#00000066;
--shadow-card:#00000059;
--shadow-pop:#00000066;
--shadow-dialog:#00000099;
--shadow-callout:#00000066;
--backdrop:#02050ad9;
}}
/* Placeholders keep the browser default in light (--placeholder there is that default, unused); in dark the default is too dim. */
@media screen and (prefers-color-scheme:dark){:root:not([data-theme="light"]) ::placeholder{color:var(--placeholder);opacity:1}}
@media screen{:root[data-theme="dark"] ::placeholder{color:var(--placeholder);opacity:1}}
:root{color-scheme:light dark}
:root[data-theme="light"]{color-scheme:light}
:root[data-theme="dark"]{color-scheme:dark}
@media print{:root,:root[data-theme]{color-scheme:light}}
/*end theme*/
:root{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--bg);color:var(--ink)}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:5px}.wrap{width:min(1240px,calc(100% - 96px));margin:auto}.nav{height:108px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-size:32px;font-weight:650;letter-spacing:-1.6px;display:flex;gap:10px;align-items:center}.mark{width:31px;height:34px;border-radius:7px;background:var(--blue-solid);color:var(--on-blue);font-weight:700;font-size:33px;line-height:39px;text-align:center;overflow:hidden}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:18px 24px;background:var(--blue-solid);color:var(--on-blue);border-radius:7px;font-size:15px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:var(--blue-solid-hover);transform:translateY(-2px)}.button.small{font-size:14px;padding:13px 18px}.hero{padding-top:64px;padding-bottom:86px;display:grid;grid-template-columns:.88fr 1.25fr;gap:45px;align-items:center}.eyebrow{font-size:12px;font-weight:650;letter-spacing:1.65px;line-height:1.65;margin:0 0 26px;color:var(--blue)}h1{font-size:clamp(56px,5.45vw,78px);line-height:1.025;font-weight:550;letter-spacing:-4px;margin:0 0 28px}h1 span{color:var(--blue)}.intro{font-size:18px;line-height:1.65;max-width:390px;color:var(--muted);margin:0 0 29px}.subnote{font-size:12px;line-height:1.6;color:var(--muted);margin:19px 0 0;max-width:340px}.hero-product{position:relative;padding:44px 0 32px;min-width:0}.hero-product:before{content:'';position:absolute;inset:0 -24px;background:var(--hero-blob);border-radius:38% 10% 22% 12%;z-index:-1}.app-shell{background:var(--surface);border:1px solid var(--shell-border);border-radius:12px;box-shadow:0 24px 70px var(--shadow-shell);overflow:hidden;transform:rotate(-1deg)}.app-top{display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding:15px 20px;font-size:12px;color:var(--muted);background:var(--surface-faint)}.mini-brand{font-size:22px;font-weight:650;letter-spacing:-1px;color:var(--ink)}.avatar{margin-left:auto;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:var(--avatar-bg);font-size:10px;color:var(--avatar-text)}.app-body{padding:23px}.app-title{display:flex;justify-content:space-between;align-items:center}.micro{font-size:10px;letter-spacing:1px;color:var(--muted);margin:0 0 7px}.app-title h2{font-size:21px;letter-spacing:-.6px;margin:0;font-weight:600}.draft{font-size:11px;padding:5px 9px;border:1px solid var(--line);border-radius:5px;color:var(--muted)}.app-tabs{display:flex;gap:26px;font-size:12px;border-bottom:1px solid var(--line);margin-top:23px;color:var(--muted)}.app-tabs span{padding-bottom:10px}.app-tabs span:first-child{color:var(--blue);border-bottom:2px solid var(--blue)}.metrics{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:20px 0}.metrics>div{padding:10px 12px;border:1px solid var(--line);border-radius:6px}.metrics small{font-size:11px;color:var(--muted);display:block;margin-bottom:8px}.metrics strong{font-size:24px;font-weight:550;letter-spacing:-.9px}.metrics .margin{background:var(--good-panel-bg);border-color:var(--good-panel-border);color:var(--good)}.margin strong span{font-size:16px}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;font-weight:400;color:var(--muted);padding:10px 7px;background:var(--inset)}td{padding:12px 7px;border-bottom:1px solid var(--row-line)}th:not(:first-child),td:not(:first-child){text-align:right;white-space:nowrap}.group td{background:var(--table-group);font-weight:600;padding:10px 7px}.app-footer{display:flex;justify-content:space-between;gap:14px;align-items:center;padding-top:24px;font-size:10px;color:var(--muted)}.app-footer strong{color:var(--ink);font-size:17px}.insight{position:relative;margin:-1px 18px 0 49px;border-radius:8px;background:var(--callout);color:var(--on-navy);padding:19px 18px;display:flex;align-items:center;gap:12px;box-shadow:0 12px 25px var(--shadow-callout);transform:rotate(1deg)}.insight strong{display:block;font-size:14px;font-weight:500}.insight div span{font-size:12px;color:var(--on-navy-soft);display:block;margin-top:5px}.insight-label{font-size:9px;letter-spacing:1px;color:var(--on-navy-faint);margin-left:auto}.example-note{text-align:right;margin:18px 5px 0;color:var(--muted);font-size:12px}.audience{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:29px 0;display:flex;gap:55px;align-items:center;font-size:14px}.audience p{line-height:1.6;margin:0;color:var(--muted)}.audience strong{font-weight:500;color:var(--ink)}.audience>div{flex:1;display:flex;justify-content:space-between;gap:20px;font-weight:550}.workflow{padding-top:108px;padding-bottom:100px}.section-heading{display:grid;grid-template-columns:1.25fr 1fr;column-gap:100px;align-items:end}.section-heading .eyebrow{grid-column:1/-1;margin-bottom:19px}section h2{font-size:44px;line-height:1.15;font-weight:500;letter-spacing:-1.8px;margin:0}.section-heading>p:last-child,.demo-layout>div>p:not(.eyebrow),.benefits p{color:var(--muted);font-size:16px;line-height:1.75;margin:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:61px}.steps article{border-top:1px solid var(--rule-strong);padding-top:23px}.step-no{color:var(--blue);font-size:12px;letter-spacing:1px;font-weight:600}.steps h3{font-size:24px;line-height:1.3;letter-spacing:-.5px;font-weight:500;margin:24px 0 15px}.steps p{color:var(--muted);font-size:16px;line-height:1.75;margin:0}.product-section{background:var(--band);color:var(--on-navy);padding:87px 0}.demo-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.product-section .eyebrow{color:var(--on-navy-accent)}.demo-layout h2{font-size:42px;margin-bottom:25px}.demo-layout>div>p:not(.eyebrow){color:var(--on-navy-text);max-width:425px}.segmented{display:inline-flex;gap:4px;border:1px solid var(--on-navy-border);padding:5px;border-radius:8px;margin-top:30px}.segmented button{background:transparent;color:var(--on-navy-quiet);border:0;padding:12px 15px;border-radius:5px;cursor:pointer;font-size:14px}.segmented button.selected{background:var(--navy-btn-bg);color:var(--navy-btn-text)}.demo-layout .demo-caption{font-size:12px!important;margin-top:18px!important}.demo-card{background:var(--surface);color:var(--ink);padding:31px;border-radius:10px;box-shadow:0 20px 40px var(--shadow-pop)}.demo-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:20px}.demo-heading>span:last-child{font-size:10px;letter-spacing:1px;color:var(--muted)}.demo-card h3{font-size:23px;font-weight:500;letter-spacing:-.6px;margin:27px 0 7px}.muted{font-size:13px;color:var(--muted);margin:0 0 29px}.slider-label{display:flex;justify-content:space-between;align-items:center;font-size:14px}.slider-label output{font-size:28px;font-weight:550;letter-spacing:-1px}input[type=range]{width:100%;margin:24px 0 6px;accent-color:var(--blue);cursor:pointer;height:22px}.range-end{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.demo-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px;border-top:1px solid var(--line);padding-top:24px}.demo-metrics small{font-size:12px;color:var(--muted);display:block;margin-bottom:8px}.demo-metrics strong{font-size:22px;letter-spacing:-.7px;font-weight:550}.demo-metrics>div:last-child strong{color:var(--blue)}.privacy{font-size:12px;line-height:1.65;color:var(--muted);padding:14px;background:var(--panel-soft);border-radius:5px;margin:27px 0 0}.proposal-line{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);font-size:14px;line-height:1.5;padding:20px 0}.proposal-line span:last-child{color:var(--muted)}.proposal-total{display:flex;justify-content:space-between;align-items:center;padding-top:28px;font-size:14px}.proposal-total strong{font-size:30px;font-weight:500}.difference{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-top:109px;padding-bottom:109px}.difference h2{font-size:42px}.benefits article{display:flex;gap:25px;margin-bottom:28px;padding-bottom:28px;border-bottom:1px solid var(--line)}.benefits article:last-child{margin-bottom:0}.benefits article>span{font-size:12px;color:var(--blue);padding-top:5px}.benefits h3{font-size:21px;letter-spacing:-.5px;font-weight:550;margin:0 0 11px}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:47px;padding-bottom:47px}footer .brand{font-size:27px}footer p,footer>span{font-size:12px;color:var(--muted)}footer .mark{transform:scale(.85)}[hidden]{display:none!important}@media(min-width:1500px){.hero{padding-top:90px;padding-bottom:110px}}@media(max-width:1050px){.wrap{width:calc(100% - 56px)}.hero{gap:28px;grid-template-columns:.85fr 1.15fr}h1{font-size:61px}.hero-product:before{inset:0 -10px}.app-body{padding:17px}.metrics strong{font-size:20px}.metrics>div{padding:10px 8px}.insight{margin-left:15px;margin-right:0}.insight-label{display:none}.audience{gap:30px}.audience>div{flex-wrap:wrap;gap:16px 28px;justify-content:flex-start}.demo-layout,.difference{gap:45px}.section-heading{column-gap:45px}.demo-card{padding:25px}.demo-metrics{gap:8px}.demo-metrics strong{font-size:20px}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}.nav{height:85px}.brand{font-size:29px}.button.small{font-size:12px;padding:12px}.hero{grid-template-columns:1fr;padding-top:34px;padding-bottom:45px;gap:33px}h1{font-size:64px;letter-spacing:-3px}.hero-copy .eyebrow{max-width:280px}.intro{max-width:460px}.hero-product{margin:0 5px}.app-shell{transform:none}.app-top{gap:15px;padding:13px 15px}.app-body{padding:16px}.app-title h2{font-size:19px}.metrics strong{font-size:21px}.metrics small{font-size:10px}.app-footer span{max-width:150px;line-height:1.5}.insight{padding:16px;margin-top:0}.audience{align-items:flex-start;flex-direction:column;gap:22px}.audience>div{font-size:13px;gap:18px 25px}.workflow{padding-top:66px;padding-bottom:66px}.section-heading{display:block}.section-heading h2{font-size:36px;margin-bottom:23px}.steps{grid-template-columns:1fr;gap:30px;margin-top:38px}.steps h3 br{display:none}.steps h3{font-size:23px;margin-top:16px}.product-section{padding:58px 0}.demo-layout,.difference{grid-template-columns:1fr;gap:37px}.demo-layout h2,.difference h2{font-size:36px}.demo-card{padding:24px 20px}.demo-metrics strong{font-size:21px}.difference{padding-top:65px;padding-bottom:65px}footer{flex-wrap:wrap;padding-top:30px;padding-bottom:30px;gap:14px}footer p{margin-left:auto}footer>span{width:100%;text-align:right;font-size:11px}.table-scroll{overflow:auto}table{font-size:11px}.app-top>span:nth-child(2){font-size:10px}.app-footer strong{font-size:15px}.insight strong{font-size:13px}.insight div span{font-size:11px}.demo-metrics small{font-size:11px}.segmented button{padding:11px 13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.button{border:0;cursor:pointer;line-height:1.3}.hero-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.secondary-link{font-size:14px;font-weight:600;border-bottom:1px solid var(--link-rule);padding:7px 0}.secondary-link:hover{color:var(--blue)}dialog{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:38px;max-width:540px;width:calc(100% - 32px);color:var(--ink);box-shadow:0 25px 80px var(--shadow-dialog)}dialog::backdrop{background:var(--backdrop,#10203dcc);backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:16px;top:12px;background:none;border:0;font-size:28px;cursor:pointer;color:var(--muted);width:35px;height:35px}.dialog-close:hover{color:var(--ink)}dialog .eyebrow{margin-bottom:18px}dialog h2{font-size:31px;line-height:1.2;letter-spacing:-1px;font-weight:500;margin:0}.access-intro{font-size:15px;line-height:1.7;color:var(--muted);margin:17px 0}.preview-notice{font-size:12px;line-height:1.6;padding:12px;background:var(--notice-bg);border-radius:5px;color:var(--notice-text)}form label{display:block;font-size:14px;margin:19px 0 9px}form label span{color:var(--muted);font-size:12px}form input,form textarea{border:1px solid var(--control-border);border-radius:6px;background:var(--field-bg);color:var(--ink);padding:12px;font:inherit;font-size:16px;width:100%}form textarea{resize:vertical}form .button{width:100%;margin-top:20px}#form-status{font-size:13px;color:var(--muted);line-height:1.6;margin:12px 0 0}dialog:modal{max-height:calc(100dvh - 32px)}@media(max-width:760px){dialog{padding:28px 22px}.nav .button.small{font-size:12px;gap:12px}.hero-actions{gap:18px}.hero-actions .button{padding:17px 18px}.hero-actions .secondary-link{font-size:13px}}

.workflow{border-top:1px solid var(--line)}.speed-heading{max-width:680px}.speed-heading>p:last-child{color:var(--on-navy-text);font-size:17px;line-height:1.75;max-width:530px;margin:23px 0 0}.workflow-frames{list-style:none;padding:0;margin:42px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.frame-caption{display:flex;align-items:center;gap:12px;margin-bottom:18px}.frame-caption>span{font-size:13px;color:var(--on-navy-accent)}.frame-caption h3{font-size:18px;font-weight:500;margin:0}.mini-screen{background:var(--surface);border:1px solid var(--card-border);border-radius:9px;color:var(--ink);padding:22px;min-height:295px;display:flex;flex-direction:column;box-shadow:0 12px 32px var(--shadow-card)}.screen-label{font-size:12px;letter-spacing:1px;color:var(--muted);padding-bottom:17px;border-bottom:1px solid var(--line);margin:0 0 6px}.saved-item{display:flex;gap:9px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);font-size:14px}.saved-item strong{font-weight:500}.saved-item small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.saved-item>span:last-child{margin-left:auto;text-align:right;white-space:nowrap}.selected-item{color:var(--blue);font-size:14px}.frame-note{font-size:13px;color:var(--muted);line-height:1.65;margin:auto 0 0;padding-top:20px}.quote-row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px;padding:18px 0}.quote-row strong{font-weight:550}.quantity-example{font-size:14px;border-top:1px solid var(--line);padding:14px 0}.quantity-example>div{display:flex;gap:9px;align-items:center;margin-top:12px;font-size:13px}.quantity-example strong{margin-left:auto;font-weight:550}.quantity-value{border:1px solid var(--option-edge);background:var(--accent-tint-2);border-radius:4px;padding:6px 9px;color:var(--accent-tint-text)}.quote-sum{border-top:1px solid var(--line);padding-bottom:0}.quote-sum strong{font-size:22px}.mini-screen h3{font-size:22px;font-weight:500;margin:20px 0 8px;letter-spacing:-.6px}.proposal-scope{font-size:14px;color:var(--muted);margin:0 0 22px}.privacy-label{font-size:12px;color:var(--good-note-text);background:var(--good-note-bg);border-radius:4px;padding:9px 10px;margin-top:20px}.sequence-note{font-size:12px;color:var(--on-navy-note);margin:20px 0 0}@media(max-width:1050px) and (min-width:761px){.workflow-frames{gap:14px}.mini-screen{padding:16px}.saved-item{flex-wrap:wrap}.saved-item>span:last-child{width:100%;text-align:left;margin-left:23px}.frame-caption h3{font-size:16px}.quantity-example>div{flex-wrap:wrap}}@media(max-width:760px){.workflow-frames{grid-template-columns:1fr;gap:28px}.mini-screen{min-height:0;padding:24px}.frame-note{padding-top:24px}.speed-heading h2{font-size:36px}.hero-product .table-scroll,.hero-product .app-tabs,.hero-product .app-footer{display:none}.hero-product .metrics{padding-bottom:4px}.hero-product{padding-top:24px;padding-bottom:15px}.insight{margin-top:14px}.app-body .metrics small{font-size:12px}.app-body .metrics strong{font-size:22px}.workflow{padding-top:48px}.subnote{font-size:14px;max-width:350px}.speed-heading>p:last-child{font-size:16px}}@media(max-width:380px){.app-body .metrics{grid-template-columns:1fr}.app-body .metrics>div{display:flex;align-items:center;justify-content:space-between}.app-body .metrics small{margin:0}.hero h1{font-size:55px}}
.forma-logo{display:block;width:159px;height:36px}.mini-brand{display:inline-flex;gap:8px;align-items:center;font-weight:700;color:var(--brand-ink)}.mini-brand img{display:block;flex:none}footer .forma-logo{width:142px;height:auto}@media(max-width:760px){.nav .forma-logo{width:136px;height:auto}.nav{gap:14px}}
.forma-logo{width:170px;height:36px}
.app-title h2{max-width:300px;line-height:1.25}
.good{color:var(--good)}
.row-note{font-size:13px;color:var(--good)}
.row-note.over{color:var(--warn)}
.unavailable{text-align:right}
.unavailable strong{color:var(--warn);display:block}
.unavailable small{display:block;font-size:11px;color:var(--muted);margin-top:4px}
.quote-row+.quote-row{border-top:1px solid var(--line)}
.respond{display:flex;gap:8px;margin-top:18px}
.respond span{flex:1;text-align:center;font-size:13px;font-weight:550;padding:9px 0;border:1px solid var(--control-border);border-radius:6px}
.respond .respond-accept{background:var(--blue-solid);border-color:var(--blue-solid);color:var(--on-blue)}
.bot-field{display:none}
button[disabled]{opacity:.6;cursor:default;transform:none}
.compare{margin-top:42px;background:var(--surface);color:var(--ink);border:1px solid var(--card-border);border-radius:12px;padding:24px;box-shadow:0 12px 32px var(--shadow-card)}
.compare-head{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:baseline;padding-bottom:18px;border-bottom:1px solid var(--line)}
.compare-head p{margin:0;font-size:12px;letter-spacing:1px;color:var(--muted)}
.compare-head span{font-size:13px;color:var(--muted)}
.options{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.option{border:1px solid var(--line);border-radius:9px;padding:18px;display:flex;flex-direction:column}
.option.is-focus{border-color:var(--option-edge);box-shadow:0 0 0 1px var(--option-edge);background:var(--surface-faint)}
.option-top{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:26px}
.option h3{font-size:16px;font-weight:550;margin:0;letter-spacing:-.2px}
.tag{font-size:11px;border-radius:4px;padding:3px 7px;white-space:nowrap}
.tag-focus{background:var(--accent-tint);color:var(--accent-tint-text)}
.tag-warn{background:var(--warn-tint);color:var(--warn)}
.tag-muted{background:var(--neutral-tint);color:var(--muted)}
.option dl{margin:14px 0 0}
.option dl>div{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-top:1px solid var(--line);font-size:14px}
.option dt{color:var(--muted)}
.option dd{margin:0;font-weight:550}
.option dl>div:last-child dd{font-size:20px;letter-spacing:-.5px}
.muted{color:var(--muted)!important}
.warn{color:var(--warn)}
.ok{color:var(--good)}
.meter{position:relative;height:6px;border-radius:3px;background:var(--track);margin-top:8px}
.meter span{position:absolute;inset:0 auto 0 0;border-radius:3px;background:var(--good-fill)}
.meter i{position:absolute;top:-4px;bottom:-4px;left:66.7%;width:2px;background:var(--ink);border-radius:1px}
.meter-empty{background:repeating-linear-gradient(90deg,var(--hatch) 0 6px,transparent 6px 10px)}
.meter-note{font-size:12px;color:var(--muted);margin:8px 0 0}
.option-foot{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:12px;margin:auto 0 0;padding-top:14px;color:var(--muted)}
.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}
.screen-label.sub{margin-top:22px}
.split{display:flex;height:14px;border-radius:4px;overflow:hidden;margin-top:14px}
.split-cost{background:var(--cost-fill)}
.split-profit{background:var(--good-fill)}
.split-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:13px;margin-top:10px;color:var(--muted)}
.dot{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:6px}
.dot-cost{background:var(--cost-fill)}
.dot-profit{background:var(--good-fill)}
.cats{list-style:none;margin:0;padding:0}
.cats li{display:grid;grid-template-columns:80px 1fr 56px;align-items:center;gap:12px;padding:10px 0;font-size:14px}
.cats strong{text-align:right;font-weight:550}
.cat-bar{position:relative;height:6px;border-radius:3px;background:var(--track)}
.cat-bar span{position:absolute;inset:0 auto 0 0;border-radius:3px;background:var(--good-fill)}
.cat-bar span.thin{background:var(--warn-fill)}
.cat-bar i{position:absolute;top:-4px;bottom:-4px;left:66.7%;width:2px;background:var(--ink)}
@media(max-width:1050px){.options{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.compare{padding:16px;margin-left:-4px;margin-right:-4px}
.options{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;padding-bottom:6px}
.option{flex:0 0 82%;scroll-snap-align:start}
.detail-grid{grid-template-columns:1fr}}
.meter-below span{background:var(--warn-fill)}
.swipe-hint{display:none}
@media(max-width:760px){.swipe-hint{display:block;font-size:12px;color:var(--muted);margin:14px 0 0}}

.faq{padding-top:80px;padding-bottom:20px}.faq h2{margin:10px 0 28px}.faq-list{max-width:760px;border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:0}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:18px;padding:20px 0;font-size:17px;font-weight:600}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:'+';color:var(--blue);font-size:22px;line-height:1}.faq details[open] summary::after{content:'−'}.faq details p{margin:0 0 22px;color:var(--muted);font-size:16px;line-height:1.7;max-width:660px}

/* Interactive compare: clickable options, what a discount does, category names that fit */
.app-title .app-name{font-size:21px;letter-spacing:-.6px;margin:0;font-weight:600}
.option[data-option]{cursor:pointer;transition:border-color .15s,box-shadow .15s}.option[data-option]:hover{border-color:var(--option-edge)}.option[data-option]:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.compare-hint{font-size:13px;color:var(--muted);margin:16px 0 0}
.muted{color:var(--muted)}
.whatif{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 28px;align-items:end;margin-top:22px;padding:20px;border-radius:9px;background:var(--panel)}
.whatif .screen-label{margin:0 0 12px}.whatif-rows{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 24px;margin:0}
.whatif-rows dt{font-size:12px;color:var(--muted);margin-bottom:6px}.whatif-rows dd{margin:0;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-variant-numeric:tabular-nums;font-size:15px}
.whatif-rows dd>span:first-child{color:var(--muted)}.whatif-rows dd strong{font-size:19px;font-weight:600;letter-spacing:-.4px}
.whatif-verdict{margin:12px 0 0;font-size:13px;color:var(--ink)}
.whatif-toggle{font:inherit;font-size:14px;font-weight:600;padding:12px 16px;border-radius:7px;border:1px solid var(--blue);background:var(--surface);color:var(--blue);cursor:pointer;white-space:nowrap}
.whatif-toggle[aria-pressed="true"]{background:var(--blue-solid);color:var(--on-blue)}
.cats li{grid-template-columns:minmax(0,96px) 1fr 92px}
.cat-bar-empty{background:repeating-linear-gradient(90deg,var(--hatch) 0 6px,transparent 6px 10px)}
.split-unknown{background:repeating-linear-gradient(90deg,var(--hatch) 0 6px,var(--hatch-gap) 6px 10px)}
@media(max-width:760px){.whatif{grid-template-columns:1fr}.whatif-rows{grid-template-columns:1fr}.whatif-toggle{width:100%}.cats li{grid-template-columns:minmax(0,84px) 1fr 76px;gap:8px;font-size:13px}.compare-hint{display:none}}
@media(prefers-reduced-motion:reduce){.option[data-option]{transition:none}}

/* Hero: less air above the headline so the main button sits in the first screen */
.hero{padding-top:32px;align-items:start}.hero-copy{padding-top:56px}@media(min-width:1500px){.hero{padding-top:48px}}@media(max-width:760px){.hero-copy{padding-top:0}}

/* Hero: one price and everything underneath it */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.app-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:18px 0 16px}
.app-status>div{background:var(--surface);padding:10px 12px}.app-status small{display:block;font-size:10.5px;color:var(--muted);margin-bottom:5px}.app-status strong{font-size:18px;font-weight:600;letter-spacing:-.4px;font-variant-numeric:tabular-nums}.app-status strong.warn{color:var(--warn)}
.ledger th:nth-child(4){width:64px}.ledger td{font-variant-numeric:tabular-nums}
.ledger tr.sec td{font-weight:600;background:var(--table-sec)}.ledger tr.line td:first-child{padding-left:20px;color:var(--ledger-name)}.ledger tr.line td{font-size:11.5px;color:var(--ledger-text)}
.lbar{display:block;height:5px;border-radius:3px;background:var(--good-fill);overflow:hidden}.lbar-cost{display:block;height:100%;background:var(--cost-fill)}
.mchip{display:inline-block;font-size:10.5px;font-weight:600;padding:2px 6px;border-radius:4px}.mchip-good{background:var(--good-tint);color:var(--good)}.mchip-warn{background:var(--warn-tint);color:var(--warn)}
/* Checks under the options */
.checks-panel{margin-top:22px;padding:20px;border-radius:9px;background:var(--panel)}.checks-panel .screen-label{margin:0 0 10px}
.checks{list-style:none;margin:0;padding:0}.check{display:flex;justify-content:space-between;align-items:center;gap:10px 20px;flex-wrap:wrap;padding:12px 0;border-top:1px solid var(--line);font-size:14px}.check:first-child{border-top:0}
.check p{margin:0;flex:1 1 280px;min-width:0}.check-act{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
@media(max-width:760px){.app-status strong{font-size:15px}.check-act{width:100%}}
/* Closing call to action: one line and the button */
.cta{display:flex;align-items:center;justify-content:space-between;gap:16px 32px;margin-top:64px;padding:22px 28px;background:var(--cta-bg);border-radius:12px}
.cta p{margin:0;font-size:17px;line-height:1.45;font-weight:550;letter-spacing:-.2px}
.cta .button{flex:none}
@media(max-width:760px){.cta{flex-direction:column;align-items:stretch;text-align:center;margin-top:44px;padding:22px 18px}
.cta .button{width:100%;font-size:14px;padding:14px 18px}
}
/* The wordmark follows the theme: the light-text one shows on dark */
.logo-on-light{display:var(--show-logo-light)}
.logo-on-dark{display:var(--show-logo-dark)}
/* Theme toggle in the nav */
.nav-actions{display:flex;align-items:center;gap:12px}
.theme-toggle{display:inline-grid;flex:none;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--control-border);border-radius:7px;background:transparent;color:var(--muted);cursor:pointer;transition:color .2s,border-color .2s}
.theme-toggle:hover{color:var(--ink);border-color:var(--link-rule)}
.theme-toggle svg{width:20px;height:20px}
.icon-moon{display:var(--show-moon)}
.icon-sun{display:var(--show-sun)}
.nav-actions .button{white-space:nowrap}
@media(max-width:760px){.nav-actions{gap:8px}
.theme-toggle{width:40px;height:40px}
}
@media(max-width:380px){.nav .forma-logo{width:118px}
.nav-actions{gap:6px}
.theme-toggle{width:36px;height:36px}
.nav .button.small{padding:12px 14px}
.nav .button.small span{display:none}
}
@media print{.theme-toggle{display:none}}

/* Hero: a concrete project, margin on every row, and the check sitting directly under the row it is about */
.app-shell,.insight{transform:none}
.app-sub{font-size:13px;color:var(--muted);margin:6px 0 0}
.ledger{font-size:13px}.ledger td{padding:10px 8px}.ledger tr.line td{font-size:12.5px}
/* Compare: each option has a line on what actually changes */
.option-desc{font-size:13px;line-height:1.45;color:var(--muted);margin:8px 0 0;min-height:2.9em}
@media(max-width:1050px){.app-status strong{font-size:16px}.row-check strong{font-size:13px}}

/* Truthful hero: the real "Before you send" check, one real row on a phone, and the offer beside the button */
.intro-sub{font-size:16px;line-height:1.65;max-width:440px;color:var(--muted);margin:-14px 0 26px}
.pilot-note{font-size:13px;font-weight:550;color:var(--ink);margin:14px 0 0}
.hero-notice{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0 0 16px;padding:12px 14px;border-radius:8px;background:var(--callout);color:var(--on-navy);font-size:13px}
.hero-notice .notice-label{flex:0 0 100%;font-size:9px;letter-spacing:1px;color:var(--on-navy-faint)}
.hero-notice strong{font-weight:600}.hero-notice span:last-child{color:var(--on-navy-soft)}
.hero-example{display:none}
@media(max-width:760px){
.hero-example{display:block;margin:0 0 4px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.hero-example p{margin:0}.hero-example-name{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}
.hero-example-figures{display:flex;align-items:center;gap:10px;margin-top:8px!important;font-size:13px;color:var(--muted)}
.intro-sub{font-size:15px;margin-top:-10px}}

/* Compare: the takeaway sits right under the cards, then the real checks */
.illustration-note{font-size:12px;color:var(--muted);margin:0 0 12px}
.takeaway{margin:20px 0 0;font-size:16px;line-height:1.55;font-weight:550;letter-spacing:-.1px}
.check{align-items:flex-start;flex-wrap:nowrap;gap:12px}.check p{flex:1 1 auto}
.check::before{content:"";flex:none;width:8px;height:8px;margin-top:6px;border-radius:50%;background:var(--warn-fill)}
.check.check-ok::before{background:var(--good-fill)}
.check p{display:flex;flex-direction:column;gap:2px}.check p strong{font-weight:600}.check p span{font-size:13px;color:var(--muted)}
.check-warn p strong{color:var(--warn)}.check-ok p strong{color:var(--good)}

/* Customer view: the name field the customer has to fill in before accepting */
.respond-name{margin-top:18px}
.respond-name span{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}
.respond-name i{display:block;height:36px;border:1px solid var(--control-border);border-radius:6px;background:var(--field-bg)}

/* Dialog and footer contact */
.access-contact{margin:16px 0 0;font-size:14px;color:var(--muted)}.access-contact a,footer a[href^="mailto:"]{color:inherit;text-decoration:underline;text-underline-offset:3px}

/* Focus that is visible on the controls that lacked it */
textarea:focus-visible,form input:focus-visible,.faq summary:focus-visible,.access-contact a:focus-visible,footer a:focus-visible{outline:3px solid var(--focus);outline-offset:2px}

/* Privacy page and the short notes beside the forms */
.legal{max-width:680px;margin:24px auto 96px}
.legal h1{font-size:40px;line-height:1.1;letter-spacing:-1.6px;font-weight:550;margin:0 0 10px}
.legal .updated{font-size:13px;color:var(--muted);margin:0 0 28px}
.legal h2{font-size:20px;font-weight:600;letter-spacing:-.3px;margin:34px 0 10px}
.legal p,.legal li{font-size:16px;line-height:1.7}.legal p{margin:0 0 14px}.legal ul{margin:0;padding-left:20px}.legal li{margin:0 0 10px}
.legal a,.form-privacy a,footer a[href$="privacy.html"]{color:inherit;text-decoration:underline;text-underline-offset:3px}
.form-privacy{font-size:12px;line-height:1.5;color:var(--muted);margin:14px 0 12px}
@media(max-width:760px){.legal{margin-top:8px}.legal h1{font-size:32px;letter-spacing:-1px}}
