/* font-weight here is a DESCRIPTOR, not a property: custom properties are
   invalid in @font-face and the browser falls back to a single weight,
   silently synthesising 500 and 700. The file is a variable font with a
   100-900 wght axis, so the range is written out literally. */
/* tokens.css is also <link>ed ahead of this file in every page. The import
   is a safety net so a stale HTML deploy can never leave the site without
   its design tokens. Browsers de-duplicate the request. */
@import url("/tokens.css?v=1");

@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url("/fonts/inter-latin.woff2") format("woff2")}

:root{
  /* Legacy aliases -> canonical tokens (tokens.css). Nothing new should use
     these names; they exist so the ~900 existing rules re-skin in one place. */
  --ink:var(--c-ink);
  --deep:var(--c-navy);
  --blue:var(--c-blue);
  --blue-2:var(--c-blue-strong);
  --green:var(--c-success);
  --green-text:var(--c-success);
  --green-on-dark:var(--c-white);
  --sky:var(--c-sky);
  --pale:var(--c-canvas);
  --paper:var(--c-white);
  --line:var(--c-line);
  --muted:var(--c-muted);
  --shadow:var(--e-3);
  --soft-shadow:var(--e-2);
  --radius:var(--r-xl);
  --max:var(--container);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;line-height:1.55}
img{max-width:100%}
a{color:inherit}
button,input{font:inherit}
.promo-bar{background:var(--c-pale);color:var(--c-navy);font-weight:var(--w-medium);text-align:center;padding:var(--s-3) var(--s-5);font-size:var(--t-sm)}
.promo-bar a{text-underline-offset:3px;margin-left:8px}
.site-header{height:72px;display:flex;align-items:center;justify-content:space-between;gap:var(--s-6);max-width:var(--container);margin:auto;padding:0 var(--gutter);background:var(--c-white)}
.brand,.brand-logo{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}
.brand-logo img{display:block}
nav{display:flex;align-items:center;gap:28px}
nav a{font-size:var(--t-base);font-weight:var(--w-medium);text-decoration:none;color:var(--c-ink)}
nav a:hover{color:var(--c-blue-strong)}
.nav-cta,.primary-button,.secondary-button,.light-button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-h);padding:0 var(--s-5);border-radius:var(--r-md);font-size:var(--t-base);font-weight:var(--w-bold);line-height:var(--lh-tight);text-decoration:none;transition:background .18s ease,border-color .18s ease;cursor:pointer}
.nav-cta:focus-visible,.primary-button:focus-visible,.secondary-button:focus-visible,.light-button:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.nav-cta,.primary-button{background:var(--blue);border:1px solid var(--blue);color:var(--c-white)}
.nav-cta:hover,.primary-button:hover{background:var(--c-blue-strong);border-color:var(--c-blue-strong);color:var(--c-white)}
.secondary-button{background:var(--c-white);border:1px solid var(--deep);color:var(--deep)}
.secondary-button:hover{background:var(--c-sky)}
.light-button{background:var(--c-white);color:var(--deep);border:1px solid var(--c-white)}
.container,.business-section{max-width:var(--container);margin-inline:auto;padding-left:var(--gutter);padding-right:var(--gutter)}
.home-hero{max-width:var(--container);margin:0 auto var(--s-5);background:linear-gradient(135deg,var(--deep),var(--blue));border-radius:var(--r-xl);min-height:0;display:grid;grid-template-columns:1.02fr .98fr;gap:var(--s-7);align-items:center;padding:var(--s-8) var(--gutter);overflow:hidden;position:relative;color:var(--c-white)}
.home-hero:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;border:90px solid rgba(255,255,255,.05);right:-140px;top:-180px}
.home-hero-copy{position:relative;z-index:1}
.eyebrow{display:inline-block;color:var(--c-blue-strong);font-size:var(--t-xs);letter-spacing:var(--track-caps);text-transform:uppercase;font-weight:var(--w-bold);margin-bottom:16px}
.home-hero .eyebrow{color:var(--c-pale)}
.home-hero h1,.section-heading h2,.inner-hero h1,.hero h1,.cta-panel h2{font-weight:var(--w-bold);line-height:var(--lh-display);letter-spacing:var(--track-display);margin:0}
.home-hero h1{font-size:var(--h1);max-width:690px}
.home-hero-copy>p{font-size:var(--t-xl);max-width:630px;color:var(--c-canvas);margin:26px 0 30px}
.hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.home-hero .primary-button{background:var(--c-white);border-color:var(--c-white);color:var(--deep)}
.home-hero .primary-button:hover{background:var(--c-pale);border-color:var(--c-pale)}
.home-hero .secondary-button{background:transparent;border-color:rgba(255,255,255,.7);color:var(--c-white)}
.home-hero .secondary-button:hover{background:rgba(255,255,255,.12)}
.hero-proof{display:flex;gap:22px;flex-wrap:wrap;margin-top:28px;color:var(--c-sky);font-size:var(--t-sm);font-weight:var(--w-bold)}
.hero-proof span:before{content:"✓";color:var(--green);font-weight:var(--w-bold);margin-right:7px}
.product-window{position:relative;z-index:1;background:var(--c-canvas);color:var(--ink);border-radius:var(--r-xl);padding:18px;box-shadow:0 28px 75px rgba(15,27,51,.28);transform:rotate(1deg)}
.window-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:2px 4px 14px}
.window-dots{display:flex;gap:6px}.window-dots i{display:block;width:8px;height:8px;background:var(--c-line);border-radius:50%}.window-dots i:first-child{background:var(--green)}
.window-top small{font-weight:var(--w-bold);color:var(--muted)}
.window-body{display:grid;grid-template-columns:128px 1fr;min-height:370px}
.mock-sidebar{padding:18px 12px;border-right:1px solid var(--line)}
.mock-sidebar b{display:block;color:var(--c-navy);font-size:var(--t-sm);letter-spacing:normal;margin-bottom:var(--s-5)}
.mock-sidebar span{display:block;height:9px;border-radius:var(--r-md);background:var(--c-pale);margin:15px 0}.mock-sidebar span:nth-child(2){width:75%;background:var(--blue)}.mock-sidebar span:nth-child(4){width:62%}
.mock-main{padding:22px}
.mock-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.mock-heading strong{font-size:var(--t-lg)}.status-pill{font-size:var(--t-xs);background:var(--c-success-pale);color:var(--c-success);padding:5px 8px;border-radius:var(--r-pill);font-weight:var(--w-bold);text-transform:uppercase}
.mock-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mock-metrics div{background:var(--c-white);border:1px solid var(--line);padding:13px;border-radius:var(--r-lg)}.mock-metrics span{display:block;color:var(--muted);font-size:var(--t-xs)}.mock-metrics b{font-size:var(--t-base);color:var(--deep)}
.mock-chart{height:142px;margin:13px 0;background:var(--c-white);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;display:flex;align-items:flex-end;gap:9px}.mock-chart i{display:block;flex:1;background:linear-gradient(var(--blue),var(--deep));border-radius:var(--r-md) var(--r-md) var(--r-sm) var(--r-sm)}.mock-chart i:nth-child(1){height:42%}.mock-chart i:nth-child(2){height:68%}.mock-chart i:nth-child(3){height:52%}.mock-chart i:nth-child(4){height:88%}.mock-chart i:nth-child(5){height:72%}.mock-chart i:nth-child(6){height:96%;background:var(--green)}
.mock-table{display:grid;grid-template-columns:1.4fr .7fr .6fr;gap:8px}.mock-table span{height:8px;background:var(--c-pale);border-radius:var(--r-md)}.mock-table span:nth-child(3n){background:var(--c-success-pale)}
.mock-main{transition:opacity .22s ease,transform .22s ease}.mock-main.is-changing{opacity:.2;transform:translateY(7px)}
.mock-chart i{transition:height .85s cubic-bezier(.2,.75,.25,1),background .3s ease}
.window-slider{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:18px}.window-slider button{width:8px;height:8px;padding:0;border:0;border-radius:var(--r-pill);background:var(--c-line);cursor:pointer;transition:width .25s ease,background .25s ease}.window-slider button.active{width:25px;background:var(--blue)}.window-slider button:focus-visible{outline:3px solid rgba(66,111,212,.25);outline-offset:3px}
.reveal-item{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease;transition-delay:var(--reveal-delay,0ms)}.reveal-item.is-visible{opacity:1;transform:none}
.suite-nav{max-width:var(--container);margin:0 auto var(--s-7);display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--c-white);box-shadow:var(--soft-shadow);overflow:hidden}
.suite-nav a{text-decoration:none;padding:var(--s-4) var(--s-4);border-right:1px solid var(--line);display:flex;gap:var(--s-2);align-items:center;min-width:0;font-size:var(--t-sm);font-weight:var(--w-bold);color:var(--c-ink)}.suite-nav a:last-child{border-right:0}.suite-nav a:hover{background:var(--sky);color:var(--deep)}
.product-icon{width:34px;height:34px;border-radius:var(--r-md);background:var(--c-pale);color:var(--c-navy);display:grid;place-items:center;font-size:var(--t-base);font-weight:var(--w-bold);flex:0 0 auto}
.section-pad,.business-section{padding-top:var(--section-y);padding-bottom:var(--section-y)}
.section-pad + .cta-panel,.business-section + .cta-panel,.section-pad + .calculator-cta,.business-section + .calculator-cta,.section-pad + .why-section,.business-section + .why-section,.section-pad + .partner-home,.business-section + .partner-home,.split-section + .cta-panel,.split-section + .why-section,.split-section + .partner-home{margin-top:0}
.cta-panel + footer,.calculator-cta + footer{margin-top:var(--section-y)}
.section-heading{max-width:760px;margin-bottom:42px}
.section-heading h2{font-size:var(--h2)}
.section-heading p{color:var(--muted);font-size:var(--t-lg);margin-top:18px}
.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-5)}
.solution-card,.feature-grid article,.resource-card{border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s-6);background:var(--c-white);transition:.2s ease;position:relative}
.solution-card:hover,.resource-card:hover{box-shadow:var(--e-2);border-color:var(--c-blue)}
.solution-card.featured{background:var(--sky);border-color:var(--c-line)}
.solution-card>span,.feature-grid b,.pricing-grid article>span{color:var(--c-blue-strong);font-size:var(--t-xs);font-weight:var(--w-bold);text-transform:uppercase;letter-spacing:var(--track-caps)}
.solution-card h3,.feature-grid h3,.resource-card h3{font-size:var(--t-2xl);line-height:var(--lh-display);margin:24px 0 12px}
.feature-grid .feature-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:var(--s-3);border-radius:var(--r-md);background:var(--sky);color:var(--c-blue-strong)}
.feature-grid .feature-icon .icon{width:21px;height:21px}
.feature-grid h3{margin-top:12px}
.solution-card p,.feature-grid p,.resource-card p{font-size:var(--t-sm);color:var(--muted)}
.solution-card a,.resource-card a{display:inline-flex;margin-top:18px;color:var(--deep);font-weight:var(--w-bold);text-decoration:none}
.solution-card a:hover,.resource-card a:hover{text-decoration:underline;text-underline-offset:4px}
.split-section{background:var(--c-canvas);padding:var(--section-y) 0}
.split-wrap{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.split-wrap{max-width:var(--container);margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
.split-copy h2{font-size:var(--h2);line-height:var(--lh-display);letter-spacing:var(--track-display);margin:0}.split-copy>p{font-size:var(--t-lg);color:var(--muted);margin:22px 0}
.check-list{list-style:none;padding:0;margin:24px 0}.check-list li{margin:13px 0;display:flex;align-items:flex-start;gap:var(--s-3);font-weight:var(--w-bold)}.check-list .check-icon{flex:0 0 auto;width:20px;height:20px;margin-top:1px;color:var(--green)}
.insight-panel{background:var(--c-white);border-radius:var(--r-xl);border:1px solid var(--line);box-shadow:var(--shadow);padding:28px}.insight-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;border-bottom:1px solid var(--line);padding-bottom:20px}.insight-top span{color:var(--muted);font-size:var(--t-xs)}.insight-top strong{display:block;font-size:var(--t-3xl);color:var(--deep)}
.insight-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.insight-grid article{background:var(--pale);border-radius:var(--r-lg);padding:17px}.insight-grid b{font-size:var(--t-xs);color:var(--c-blue-strong)}.insight-grid p{margin:8px 0 0;font-size:var(--t-sm);color:var(--muted)}
.why-section{max-width:var(--container);margin:var(--section-y) auto;background:linear-gradient(135deg,var(--deep),var(--blue-2));border-radius:var(--r-xl);color:var(--c-white);padding:var(--s-8) var(--gutter)}
.why-section h2{font-size:var(--h2);line-height:var(--lh-display);letter-spacing:var(--track-display);margin:0;max-width:770px}.eyebrow.light{color:var(--green)}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px}.why-grid article{border-top:1px solid rgba(255,255,255,.35);padding-top:22px}.why-grid b{color:var(--green)}.why-grid h3{font-size:var(--t-xl)}.why-grid p{color:var(--c-sky)}
.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.resource-card time{display:inline-block;color:var(--c-blue-strong);font-size:var(--t-xs);font-weight:var(--w-bold);text-transform:uppercase;letter-spacing:var(--track-caps)}.resource-card:first-child{background:var(--sky)}
.cta-panel,.calculator-cta{max-width:var(--container);margin:var(--section-y) auto;background:var(--ink);color:var(--c-white);border-radius:var(--r-xl);padding:var(--s-8) var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-panel h2,.calculator-cta h2{font-size:var(--h2);max-width:720px}.cta-panel p,.calculator-cta p{color:var(--c-pale)}.cta-panel .primary-button,.calculator-cta .primary-button{background:var(--c-blue);border-color:var(--c-blue);color:var(--c-white)}
footer{background:var(--c-canvas);border-top:1px solid var(--line);padding:var(--s-7) max(var(--gutter),calc((100vw - var(--container))/2 + var(--gutter))) var(--s-6);color:var(--muted);font-size:var(--t-sm)}
.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:42px;margin-bottom:42px}.footer-grid img{margin-bottom:16px}.footer-grid p{max-width:310px}.footer-grid h3{font-size:var(--t-sm);color:var(--ink);text-transform:uppercase;letter-spacing:var(--track-caps)}.footer-grid a{display:block;text-decoration:none;margin:10px 0}.footer-grid a:hover{color:var(--c-blue-strong)}
.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:20px}.footer-bottom a{margin-left:14px}

/* Inner product and company pages */
.inner-page{background:var(--c-white)}.inner-hero{max-width:var(--container);margin:0 auto;padding:var(--s-8) var(--gutter);background:var(--sky);border-radius:var(--r-xl)}.inner-hero>img{margin-bottom:26px}.inner-hero h1{font-size:var(--h1);max-width:880px}.inner-hero>p{font-size:var(--t-lg);color:var(--muted);max-width:760px;margin:24px 0}.inner-hero.centered{text-align:center}.inner-hero.centered p{margin-left:auto;margin-right:auto}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.feature-grid article:first-child{background:var(--sky)}
.product-detail{max-width:var(--container);margin:auto;padding:90px 28px}.product-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.product-detail-grid article{border-top:3px solid var(--blue);padding:24px 0}.product-detail-grid p{color:var(--muted)}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:var(--container);margin:0 auto 48px;padding:0 28px}.pricing-grid article{border:1px solid var(--line);border-radius:var(--r-xl);padding:30px;display:flex;flex-direction:column;align-items:flex-start;background:var(--c-white)}.pricing-grid article.featured{border:2px solid var(--blue);box-shadow:var(--shadow);background:var(--sky)}.pricing-grid h2{font-size:var(--t-2xl)}.pricing-grid strong{font-size:var(--t-3xl);color:var(--deep);margin-bottom:8px}.pricing-grid p{color:var(--muted);min-height:70px}.pricing-grid .primary-button,.pricing-grid .secondary-button{margin-top:auto}
.launch-note{max-width:1128px;margin:0 auto 90px;padding:20px 24px;border-radius:var(--r-lg);background:var(--sky);border:1px solid var(--c-line);color:var(--deep)}

/* Calculator */
.hero{min-height:0;background:var(--sky);display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:70px;padding:var(--section-y) max(var(--gutter),calc((100vw - var(--container))/2 + var(--gutter)));overflow:hidden}.hero-copy{max-width:680px}.hero h1{font-size:var(--h1)}.hero-copy>p{font-size:var(--t-xl);color:var(--muted);max-width:610px}.privacy-note{font-size:var(--t-sm);color:var(--muted)}
.hero-card{position:relative;background:linear-gradient(145deg,var(--deep),var(--blue));color:var(--c-white);border-radius:var(--r-xl);padding:38px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}.hero-card strong{font-size:var(--t-4xl)}.mini-label{font-size:var(--t-xs);text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--green);font-weight:var(--w-bold)}.mini-bars{display:grid;grid-template-columns:3fr 1.1fr .8fr .6fr;gap:5px;height:10px;margin:18px 0 5px}.mini-bars i{border-radius:var(--r-md);background:var(--c-white)}.mini-bars i:not(:first-child){background:var(--c-blue)}.hero-card small{color:var(--c-pale)}
.trust-strip{background:var(--deep);color:var(--c-white);display:flex;justify-content:center;gap:55px;padding:19px 25px;font-size:var(--t-sm)}.trust-strip span:before{content:"✓";color:var(--green);margin-right:9px}
.calculator-section{padding:100px 28px;max-width:1180px;margin:auto}.calculator-shell{display:grid;grid-template-columns:.9fr 1.1fr;border:1px solid var(--line);border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow)}.calculator-form{padding:38px;background:var(--c-white)}.form-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.form-heading h3{margin:0;font-size:var(--t-xl)}.text-button{border:0;background:none;color:var(--c-blue-strong);font-weight:var(--w-bold);cursor:pointer}.calculator-form>label,.optional-fields label{display:block;margin-bottom:18px}.calculator-form label>span:first-child,.optional-fields label>span:first-child{display:block;font-size:var(--t-sm);font-weight:var(--w-bold);margin-bottom:7px}.calculator-form em{font-style:normal;font-weight:var(--w-regular);color:var(--muted)}.money-input{height:52px;border:1px solid var(--line);border-radius:var(--r-md);display:flex;align-items:center;overflow:hidden;background:var(--c-white)}.money-input:focus-within{border-color:var(--c-blue-strong);box-shadow:0 0 0 3px rgba(66,111,212,.13)}.money-input b{font-size:var(--t-xs);color:var(--muted);padding:0 14px;border-right:1px solid var(--line)}.money-input input{border:0;outline:0;font-weight:var(--w-bold);width:100%;height:100%;padding:0 14px;background:transparent}.calculator-form details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:24px 0;padding:16px 0}.calculator-form summary{cursor:pointer;font-weight:var(--w-bold);color:var(--c-blue-strong)}.optional-fields{padding-top:18px}.check-row{display:flex;gap:10px;align-items:center}.check-row span{margin:0}.check-row input{width:18px;height:18px;accent-color:var(--c-blue-strong)}.calculate-button{width:100%}.results{background:linear-gradient(155deg,var(--deep),var(--blue-2));color:var(--c-white);padding:42px}.result-lead{padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.18);display:flex;flex-direction:column}.result-lead span,.result-grid span,.breakdown span{color:var(--c-sky);font-size:var(--t-sm)}.result-lead strong{font-size:var(--h2);letter-spacing:var(--track-display)}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.result-grid div{background:rgba(255,255,255,.09);border-radius:var(--r-lg);padding:16px;display:flex;flex-direction:column}.result-grid strong{font-size:var(--t-xl)}.breakdown{border-top:1px solid rgba(255,255,255,.18);padding-top:18px}.breakdown div{display:flex;justify-content:space-between;gap:20px;padding:9px 0}.employer-total{border-top:1px solid rgba(255,255,255,.18);margin-top:8px;padding-top:16px}.employer-total strong{color:var(--green)}.result-note{font-size:var(--t-xs);color:var(--c-pale);margin:22px 0 0}.platform{padding:100px max(28px,calc((100vw - 1124px)/2));background:var(--pale)}.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.module{background:var(--c-white);border:1px solid var(--line);border-radius:var(--r-xl);padding:25px;min-height:230px}.module.active{background:var(--deep);color:var(--c-white);border-color:var(--deep)}.module>span{font-weight:var(--w-bold);font-size:var(--t-xs);color:var(--c-blue-strong)}.module.active>span{color:var(--c-pale)}.module h3{font-size:var(--t-xl);margin:28px 0 10px}.module p{font-size:var(--t-sm);color:var(--muted)}.module.active p{color:var(--c-sky)}.module b{display:block;margin-top:22px;font-size:var(--t-xs);color:var(--c-blue-strong)}.module.active b{color:var(--c-white)}.updates{margin:90px auto;padding:55px;max-width:1124px;background:linear-gradient(135deg,var(--deep),var(--blue));color:var(--c-white);border-radius:var(--r-xl);display:flex;align-items:center;justify-content:space-between;gap:30px}.updates h2{font-size:var(--h2);margin:0}.updates p{color:var(--c-sky)}.methodology{max-width:900px;margin:0 auto;padding:30px 28px 100px}.methodology p{color:var(--muted)}.source-links{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.source-links a{border:1px solid var(--line);border-radius:var(--r-pill);padding:9px 14px;color:var(--c-blue-strong);font-size:var(--t-sm);font-weight:var(--w-bold);text-decoration:none}.legal-note{font-size:var(--t-xs)}

/* Legal and admin */
.legal-page main{max-width:820px;margin:auto;padding:70px 28px 100px}.legal-page h1{font-size:var(--h1);line-height:var(--lh-display)}.legal-page h2{margin-top:34px}.legal-page p,.legal-page li{color:var(--muted)}.answer-lead{font-size:var(--t-xl);color:var(--ink);background:var(--sky);border-left:4px solid var(--green);border-radius:var(--r-md);padding:20px 22px}.legal-page main>ul{padding-left:22px}.legal-page main small{display:block;border-top:1px solid var(--line);padding-top:18px}
.admin-page{background:var(--pale)}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:20px max(28px,calc((100vw - 1124px)/2));background:var(--c-white);border-bottom:1px solid var(--line)}.admin-header div{display:flex;flex-direction:column;align-items:flex-end}.admin-header span{font-size:var(--t-xs);color:var(--muted)}.admin-shell{max-width:1180px;margin:auto;padding:35px 28px 80px}.connection-banner{display:flex;justify-content:space-between;align-items:center;gap:20px;background:var(--sky);border:1px solid var(--c-line);border-radius:var(--r-lg);padding:18px 20px}.connection-banner p{margin:4px 0;color:var(--muted)}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:22px 0}.kpi-grid article,.dashboard-grid article,.metric-definition{background:var(--c-white);border:1px solid var(--line);border-radius:var(--r-xl);padding:22px}.kpi-grid span,.kpi-grid small{display:block;color:var(--muted);font-size:var(--t-xs)}.kpi-grid strong{display:block;font-size:var(--t-3xl)}.dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.empty-chart{height:220px;border-radius:var(--r-lg);background:var(--pale);display:grid;place-content:center;text-align:center;color:var(--muted)}.metric-list{list-style:none;padding:0}.metric-list li{padding:11px 0;border-bottom:1px solid var(--line)}.metric-list span{display:block;color:var(--c-blue-strong);font:600 12px monospace}.metric-definition{margin-top:16px}.metric-definition p{color:var(--muted)}

@media(max-width:900px){
  nav{gap:16px}nav a:not(.nav-cta){display:none}
  .home-hero,.hero,.split-wrap{grid-template-columns:1fr}.home-hero{padding:58px 44px}.product-window{max-width:650px}.suite-nav,.solution-grid,.feature-grid,.module-grid{grid-template-columns:1fr 1fr}.suite-nav a:nth-child(2){border-right:0}.suite-nav a:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .why-grid,.resource-grid,.product-detail-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.pricing-grid{grid-template-columns:1fr}.kpi-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .promo-bar{font-size:var(--t-xs)}.site-header{padding:0 18px}.home-hero{margin:0 10px 18px;padding:46px 24px;border-radius:var(--r-xl);min-height:auto}.home-hero h1,.inner-hero h1,.hero h1{font-size:var(--h1)}.window-body{grid-template-columns:1fr}.mock-sidebar{display:none}.mock-main{padding:16px}.mock-metrics{grid-template-columns:1fr}.mock-metrics div:nth-child(n+2){display:none}.suite-nav{margin:0 10px 54px;grid-template-columns:1fr}.suite-nav a{border-right:0;border-bottom:1px solid var(--line)}.suite-nav a:last-child{border-bottom:0}.section-pad,.business-section{padding-top:var(--section-y);padding-bottom:var(--section-y)}.solution-grid,.feature-grid,.module-grid,.insight-grid,.kpi-grid{grid-template-columns:1fr}.split-section{padding:70px 20px}.why-section{margin:65px 10px;padding:46px 24px}.cta-panel,.calculator-cta{margin:65px 10px;padding:42px 24px;align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.inner-hero{margin:10px;padding:52px 24px}.hero{padding:62px 20px}.calculator-section{padding:72px 18px}.calculator-shell{grid-template-columns:1fr}.calculator-form,.results{padding:26px 20px}.result-grid{grid-template-columns:1fr}.trust-strip{overflow:auto;justify-content:flex-start}.updates{margin:55px 18px;padding:38px 24px;align-items:flex-start;flex-direction:column}.updates h2{font-size:var(--h2)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms}.reveal-item{opacity:1;transform:none}}

/* Contlant typography system */
body{font-weight:100 900}
h1,.home-hero h1,.inner-hero h1,.hero h1{font-weight:var(--w-bold)}
h2,.section-heading h2,.cta-panel h2,.calculator-cta h2,.why-section h2{font-weight:var(--w-bold)}
h3,.solution-card h3,.feature-grid h3,.resource-card h3,.module h3{font-weight:var(--w-bold)}
button,button[class],button[type],.nav-cta,.primary-button,.secondary-button,.light-button{font-weight:var(--w-medium)}
table,tbody,td{font-weight:var(--w-regular)}
thead,th{font-weight:var(--w-medium)}
.mock-metrics b,.insight-top strong,.pricing-grid strong,.result-lead strong,.result-grid strong,.breakdown strong,.kpi-grid strong,.money-input input,[data-metric-value]{font-weight:var(--w-medium);font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}
.mock-metrics span,.insight-panel,.pricing-grid,.results,.kpi-grid,table{font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}

/* 2026 product and lead experience */
.suite-nav.five-products{grid-template-columns:repeat(5,minmax(0,1fr))}
.product-five-grid{grid-template-columns:repeat(3,1fr)}
.product-five-grid .solution-card{grid-column:auto;min-height:0;display:flex;flex-direction:column}
.product-five-grid .solution-card a{margin-top:auto}
.product-five-grid .appointments-card{grid-column:span 2}
.appointments-card{background:linear-gradient(145deg,var(--c-ink-deep),var(--c-navy));color:var(--c-white);border-color:var(--c-navy);overflow:hidden}
.appointments-card:after{content:"";position:absolute;width:180px;height:180px;border:36px solid rgba(66,111,212,.13);border-radius:50%;right:-70px;top:-76px}
.appointments-card p{color:var(--c-pale)}.appointments-card>span{color:var(--c-pale)}
.appointments-card a{color:var(--c-white)}
.partner-home{max-width:var(--container);margin:var(--section-y) auto;padding:0 var(--gutter);display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:var(--s-7)}
.partner-home-image{position:relative;border-radius:var(--r-xl);overflow:hidden;min-height:480px;box-shadow:var(--shadow)}
.partner-home-image:after{content:"Trusted relationships. Better tools.";position:absolute;left:24px;right:24px;bottom:24px;padding:18px 20px;border-radius:var(--r-lg);background:rgba(23,34,59,.82);backdrop-filter:blur(10px);color:var(--c-white);font-size:var(--t-sm);font-weight:var(--w-bold)}
.partner-home-image img{width:100%;height:100%;position:absolute;object-fit:cover}
.partner-home h2{font-size:var(--h2);line-height:var(--lh-display);letter-spacing:var(--track-display);margin:0}
.partner-home>div:last-child>p{color:var(--muted);font-size:var(--t-lg)}

/* Advanced calculator */
.calculator-hero{background:radial-gradient(circle at 88% 12%,rgba(66,111,212,.17),transparent 24%),linear-gradient(135deg,var(--c-ink-deep),var(--deep));border-radius:0 0 var(--r-xl) var(--r-xl);padding-top:80px;padding-bottom:90px}
.calculator-hero .hero-copy{max-width:640px}.calculator-hero h1{color:var(--c-white)}.calculator-hero .hero-copy p{max-width:620px;color:var(--c-sky)}
.calculator-hero .secondary-button{border-color:var(--c-white);color:var(--c-white);background:transparent}.calculator-hero .secondary-button:hover{background:rgba(255,255,255,.1)}
.engine-badge{display:inline-flex;align-items:center;gap:8px;margin-top:26px;padding:9px 13px;border:1px solid rgba(255,255,255,.25);border-radius:var(--r-pill);color:var(--c-sky);font-size:var(--t-xs);font-weight:var(--w-bold)}
.engine-badge:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(66,111,212,.14)}
.engine-badge[data-source="packaged-fallback"]:before{background:var(--c-warning-pale);box-shadow:0 0 0 4px rgba(156,95,13,.15)}
.scenario-card{background:var(--c-white);border:1px solid rgba(255,255,255,.45);border-radius:var(--r-xl);padding:30px;color:var(--ink);box-shadow:0 26px 70px rgba(0,0,0,.25);position:relative;overflow:hidden}
.scenario-card:before{content:"";position:absolute;width:180px;height:180px;border:45px solid var(--sky);border-radius:50%;right:-88px;top:-92px}
.scenario-top{display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative}.scenario-top>span{font-weight:var(--w-bold)}.scenario-top strong{font-size:var(--t-xs);padding:7px 10px;border-radius:var(--r-pill);background:var(--c-success-pale);color:var(--c-success)}
.scenario-card>p{margin:40px 0 4px;color:var(--muted)}.scenario-card>p b{color:var(--deep)}
.scenario-net{font-size:var(--h2);line-height:var(--lh-display);letter-spacing:var(--track-display);color:var(--deep);display:block}.scenario-caption{font-size:var(--t-xs);color:var(--muted)}
.scenario-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0 22px}.scenario-metrics div{padding:14px;border-radius:var(--r-lg);background:var(--pale)}.scenario-metrics span,.scenario-metrics b{display:block}.scenario-metrics span{font-size:var(--t-xs);color:var(--muted)}.scenario-metrics b{font-size:var(--t-base);margin-top:3px}
.scenario-controls{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.scenario-controls button{border:1px solid var(--line);background:var(--c-white);color:var(--muted);border-radius:var(--r-md);padding:8px 4px;font-size:var(--t-xs);cursor:pointer}.scenario-controls button.active{background:var(--deep);border-color:var(--deep);color:var(--c-white)}
.calculator-shell-enhanced{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}
.calculator-form .form-heading small{color:var(--c-blue-strong);font-weight:var(--w-bold);text-transform:uppercase;letter-spacing:var(--track-caps)}.calculator-form .form-heading h3{margin-top:3px}
.mode-switch{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:var(--r-lg);padding:4px;margin-bottom:26px;background:var(--pale)}
.mode-switch button{border:0;background:transparent;border-radius:var(--r-md);padding:11px 8px;color:var(--muted);cursor:pointer;font-size:var(--t-sm)}.mode-switch button.active{background:var(--c-white);color:var(--deep);box-shadow:0 4px 14px rgba(23,34,59,.08)}
.money-input input::placeholder{color:var(--c-blue);opacity:1}.money-input b{white-space:nowrap}
.two-field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.two-field-row label{min-width:0}
.calculator-form select,.lead-form-card select,.lead-form-card input,.lead-form-card textarea,.partner-apply select,.partner-apply input,.partner-apply textarea{width:100%;border:1px solid var(--line);border-radius:var(--r-md);background:var(--c-white);color:var(--ink);font:inherit;padding:12px 13px;outline:none}
.calculator-form select:focus,.lead-form-card input:focus,.lead-form-card select:focus,.lead-form-card textarea:focus,.partner-apply input:focus,.partner-apply select:focus,.partner-apply textarea:focus{border-color:var(--c-blue-strong);box-shadow:0 0 0 3px rgba(66,111,212,.12)}
.calculate-button{justify-content:space-between}.calculate-button:disabled{cursor:wait;opacity:.72}.browser-privacy{font-size:var(--t-xs);color:var(--muted);margin:12px 0 0}#calculation-source-status{padding:10px 12px;border:1px solid rgba(255,255,255,.2);border-radius:var(--r-md);background:rgba(255,255,255,.06)}#calculation-source-status[data-source="scopepayroll-live"]{font-weight:var(--w-bold)}
.result-actions{display:grid;gap:10px;padding-top:22px;margin-top:22px;border-top:1px solid rgba(255,255,255,.18)}
.result-actions .light-button{min-height:50px}.result-save{min-height:46px;border:1px solid rgba(255,255,255,.52);border-radius:var(--r-md);background:transparent;color:var(--c-white);font-weight:var(--w-bold);cursor:pointer}.result-save:hover{background:rgba(255,255,255,.1)}.result-actions small{color:var(--c-pale);text-align:center}
.saved-panel{margin-top:18px;border:1px solid var(--line);border-radius:var(--r-xl);padding:24px;background:var(--c-white);display:grid;grid-template-columns:1.2fr 1.8fr;gap:24px;align-items:start}.saved-panel h3{margin:0;font-size:var(--t-2xl)}.saved-panel p{color:var(--muted);font-size:var(--t-sm)}.saved-panel ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}.saved-estimate-button{width:100%;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--pale);padding:12px 14px;display:flex;justify-content:space-between;align-items:center;text-align:left;cursor:pointer}.saved-estimate-button:hover{border-color:var(--c-blue-strong);background:var(--sky)}.saved-estimate-button span,.saved-estimate-button small{display:block}.saved-estimate-button small{color:var(--muted);font-size:var(--t-xs)}.saved-estimate-button strong{color:var(--deep)}
.module-grid.five-up{grid-template-columns:repeat(5,1fr)}.module-grid a.module{text-decoration:none}.module-grid a.module:hover{transform:translateY(-4px);box-shadow:var(--soft-shadow)}

/* Product landing pages */
.product-page{background:var(--c-white)}.product-page .site-header{position:relative;z-index:5}.product-page main{overflow:hidden}
.product-hero{max-width:var(--container);margin:0 auto var(--s-6);padding:var(--s-8) var(--gutter);min-height:0;border-radius:var(--r-xl);background:radial-gradient(circle at 18% 8%,rgba(66,111,212,.13),transparent 24%),linear-gradient(135deg,var(--c-ink-deep),var(--c-blue-strong));color:var(--c-white);display:grid;grid-template-columns:.94fr 1.06fr;gap:60px;align-items:center}
.books-hero{background:radial-gradient(circle at 86% 8%,rgba(66,111,212,.13),transparent 24%),linear-gradient(135deg,var(--c-ink-deep),var(--c-blue-strong))}
.tax-hero{background:radial-gradient(circle at 20% 12%,rgba(66,111,212,.13),transparent 24%),linear-gradient(135deg,var(--c-ink-deep),var(--c-navy))}
.stock-hero{background:radial-gradient(circle at 84% 6%,rgba(66,111,212,.14),transparent 26%),linear-gradient(135deg,var(--c-success),var(--c-success))}
.appointments-hero{background:radial-gradient(circle at 12% 10%,rgba(66,111,212,.14),transparent 25%),linear-gradient(135deg,var(--c-ink-deep),var(--c-navy))}
.product-kicker{display:inline-flex;color:var(--c-blue-strong);font-size:var(--t-xs);text-transform:uppercase;letter-spacing:var(--track-caps);font-weight:var(--w-bold);margin-bottom:17px}
.product-hero h1{font-size:var(--h1);line-height:var(--lh-display);letter-spacing:var(--track-display);margin:0;font-weight:var(--w-bold)}.product-hero-copy>p{font-size:var(--t-lg);color:var(--c-sky);margin:24px 0 30px}.product-hero .secondary-button{border-color:rgba(255,255,255,.65);background:transparent;color:var(--c-white)}.product-hero .secondary-button:hover{background:rgba(255,255,255,.1)}
.product-proof{display:flex;gap:18px;flex-wrap:wrap;margin-top:26px}.product-proof span{font-size:var(--t-xs);color:var(--c-muted)}
.product-hero .product-proof span,.home-hero .product-proof span{color:var(--c-pale)}.product-proof span:before{content:"✓";color:var(--c-success);margin-right:var(--s-1);font-weight:var(--w-bold)}
.product-hero .product-proof span:before,.home-hero .product-proof span:before{color:var(--c-pale)}
.simulation-shell{border:1px solid rgba(255,255,255,.42);background:var(--c-canvas);color:var(--ink);border-radius:var(--r-xl);padding:20px;box-shadow:0 26px 70px rgba(0,0,0,.27);transform:rotate(.7deg)}
.simulation-header{display:flex;justify-content:space-between;align-items:center;padding:2px 4px 15px;border-bottom:1px solid var(--line);font-weight:var(--w-bold)}.simulation-header small{color:var(--muted)}.live-dot{display:inline-block;width:8px;height:8px;background:var(--green);border-radius:50%;box-shadow:0 0 0 4px rgba(66,111,212,.13);margin-right:8px}
.simulation-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.simulation-metrics article{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--c-white);padding:13px}.simulation-metrics span,.simulation-metrics strong{display:block}.simulation-metrics span{font-size:var(--t-xs);color:var(--muted)}.simulation-metrics strong{font-size:var(--t-xl);color:var(--deep);margin-top:4px}
.simulation-stage{border-radius:var(--r-lg);background:var(--c-white);border:1px solid var(--line);padding:16px}.simulation-stage>span{font-size:var(--t-xs);color:var(--muted);font-weight:var(--w-bold)}.simulation-actions{display:flex;gap:7px;flex-wrap:wrap;margin:9px 0 13px}.simulation-actions button{border:1px solid var(--c-line);background:var(--sky);color:var(--deep);border-radius:var(--r-md);padding:8px 9px;font-size:var(--t-xs);cursor:pointer}.simulation-actions button:hover,.simulation-actions button.active{background:var(--deep);border-color:var(--deep);color:var(--c-white)}.simulation-stage p{min-height:48px;margin:0;border-left:3px solid var(--green);padding:9px 10px;background:var(--pale);font-size:var(--t-xs);color:var(--muted);transition:.2s ease}.simulation-stage p.is-updated{color:var(--ink);transform:translateX(3px)}
.product-section{max-width:var(--container);margin:auto;padding:var(--section-y) var(--gutter)}.product-section .section-heading{max-width:820px}.feature-story-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.feature-story-grid article{min-height:300px;padding:27px;border:1px solid var(--line);border-radius:var(--r-xl);background:var(--c-white);display:flex;flex-direction:column}.feature-story-grid article:nth-child(2){background:var(--sky)}.feature-story-grid b{color:var(--c-blue-strong);font-size:var(--t-xs);letter-spacing:var(--track-caps);text-transform:uppercase}.feature-story-grid .step-icon{display:block;width:30px;height:30px;margin-top:22px;color:var(--c-blue-strong)}.feature-story-grid h3{font-size:var(--t-2xl);line-height:var(--lh-display);margin:12px 0 12px}.feature-story-grid p{font-size:var(--t-sm);color:var(--muted);margin-top:auto}
.feature-story{max-width:var(--container);margin:var(--section-y) auto;padding:var(--s-8) var(--gutter);border-radius:var(--r-xl);background:var(--pale);display:grid;grid-template-columns:1fr 1fr;gap:var(--s-7);align-items:center}.feature-story h2,.industry-strip h2,.partner-model h2,.partner-steps h2{font-size:var(--h2);line-height:var(--lh-display);letter-spacing:var(--track-display);margin:0}.feature-story>div:first-child>p{font-size:var(--t-lg);color:var(--muted)}
.story-board{background:var(--c-white);border:1px solid var(--line);border-radius:var(--r-xl);padding:22px;box-shadow:var(--shadow)}.story-command{background:linear-gradient(135deg,var(--deep),var(--blue));color:var(--c-white);border-radius:var(--r-lg);padding:22px}.story-command span,.story-command strong,.story-command small{display:block}.story-command span{font-size:var(--t-xs);color:var(--c-pale);text-transform:uppercase;letter-spacing:var(--track-caps)}.story-command strong{font-size:var(--t-3xl);margin:5px 0}.story-command small{color:var(--c-sky)}.story-row{display:flex;justify-content:space-between;gap:20px;padding:16px 4px;border-bottom:1px solid var(--line);font-size:var(--t-sm)}.story-row:last-child{border-bottom:0}.story-row span{color:var(--muted)}.story-row b{color:var(--deep)}
.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.journey-grid article{border-top:3px solid var(--green);padding:24px 2px}.journey-grid .role-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-bottom:14px;border-radius:var(--r-md);background:var(--sky);color:var(--c-blue-strong)}.journey-grid .role-icon .icon{width:20px;height:20px}.journey-grid span{font-size:var(--t-xs);color:var(--c-blue-strong);font-weight:var(--w-bold);text-transform:uppercase;letter-spacing:var(--track-caps)}.journey-grid h3{font-size:var(--t-xl);margin:13px 0 8px}.journey-grid p{font-size:var(--t-sm);color:var(--muted)}
.product-cta{max-width:var(--container);margin:var(--section-y) auto;background:var(--c-ink-deep);color:var(--c-white);border-radius:var(--r-xl);padding:var(--s-8) var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:40px}.product-cta h2{font-size:var(--h2);line-height:var(--lh-display);letter-spacing:var(--track-display);margin:0;max-width:760px}.product-cta .primary-button{background:var(--c-blue);border-color:var(--c-blue);color:var(--c-white)}.product-cta .light-button{background:transparent;border-color:rgba(255,255,255,.7);color:var(--c-white)}
.mini-calendar{display:grid;gap:7px;margin:12px 0}.mini-calendar>div{display:grid;grid-template-columns:58px 1fr;position:relative;border:1px solid var(--line);border-radius:var(--r-md);padding:10px 12px;background:var(--c-white)}.mini-calendar span{font-size:var(--t-xs);color:var(--c-blue-strong);font-weight:var(--w-bold);grid-row:1/3}.mini-calendar b{font-size:var(--t-xs)}.mini-calendar small{font-size:var(--t-xs);color:var(--muted)}.mini-calendar .open-slot{border-style:dashed;background:var(--c-success-pale)}.mini-calendar .open-slot b{color:var(--c-success)}
.industry-strip{max-width:var(--container);margin:var(--section-y) auto;padding:var(--s-8) var(--gutter);border-radius:var(--r-xl);background:var(--c-ink-deep);color:var(--c-white)}.industry-strip .section-heading p{color:var(--c-pale)}.industry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.industry-grid article{border:1px solid rgba(255,255,255,.16);border-radius:var(--r-xl);padding:24px;background:rgba(255,255,255,.05)}.industry-grid .role-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-bottom:14px;border-radius:var(--r-md);background:rgba(255,255,255,.08);color:var(--text-gold-on-dark)}.industry-grid .role-icon .icon{width:20px;height:20px}.industry-grid span{color:var(--green);font-size:var(--t-xs);text-transform:uppercase}.industry-grid h3{font-size:var(--t-xl)}.industry-grid p{font-size:var(--t-sm);color:var(--c-pale)}

/* Contact and partner journeys */
.lead-page,.partner-page{background:var(--pale)}.lead-layout{max-width:var(--container);margin:auto;padding:var(--section-y) var(--gutter);display:grid;grid-template-columns:.85fr 1.15fr;gap:var(--s-7);align-items:start}.lead-copy{position:sticky;top:35px}.lead-copy h1,.partner-hero h1{font-size:var(--h1);line-height:var(--lh-display);letter-spacing:var(--track-display);margin:0}.lead-copy>p{font-size:var(--t-lg);color:var(--muted)}.lead-promise{margin:36px 0;display:grid;gap:18px}.lead-promise article{display:grid;grid-template-columns:38px 1fr;gap:12px}.lead-promise article>span{width:34px;height:34px;display:grid;place-items:center;background:var(--sky);border-radius:var(--r-md);color:var(--c-blue-strong);font-size:var(--t-xs);font-weight:var(--w-bold)}.lead-promise article>span .icon{width:19px;height:19px}.lead-promise p{margin:3px 0;color:var(--muted);font-size:var(--t-sm)}.lead-photo{max-width:260px;aspect-ratio:3/4;margin:0 0 28px}.lead-photo img{width:100%;height:100%;object-fit:cover}.partner-inline{display:flex;flex-direction:column;border-radius:var(--r-lg);padding:18px;background:var(--c-ink-deep);color:var(--c-white);text-decoration:none}.partner-inline span{font-size:var(--t-xs);color:var(--c-pale);text-transform:uppercase;letter-spacing:var(--track-caps)}.partner-inline strong{margin-top:5px}
.lead-form-card{background:var(--c-white);border:1px solid var(--line);border-radius:var(--r-xl);padding:36px;box-shadow:var(--shadow)}.lead-form-card form,.partner-apply form{display:grid;gap:17px}.lead-form-card label,.partner-apply label{display:grid;gap:7px;font-size:var(--t-sm);font-weight:var(--w-bold)}.lead-form-card label>span,.partner-apply label>span{color:var(--c-navy)}.lead-form-card label em,.partner-apply label em{font-size:var(--t-xs);color:var(--muted);font-style:normal}.lead-form-card .form-heading h2{margin:3px 0 18px;font-size:var(--h2)}.form-consent{font-size:var(--t-xs);color:var(--muted);margin:0}.form-status{font-size:var(--t-xs);color:var(--deep);font-weight:var(--w-bold);min-height:18px;margin:0}
.partner-hero{max-width:var(--container);margin:0 auto;padding:var(--section-y) var(--gutter);display:grid;grid-template-columns:1fr 1fr;gap:var(--s-7);align-items:center}.partner-hero>div:first-child>p{font-size:var(--t-lg);color:var(--muted)}.partner-photo{position:relative;min-height:570px;border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow)}.partner-photo>img{position:absolute;width:100%;height:100%;object-fit:cover}.partner-photo>div{position:absolute;left:24px;right:24px;bottom:24px;background:rgba(23,34,59,.84);backdrop-filter:blur(10px);border-radius:var(--r-lg);padding:20px;color:var(--c-white)}.partner-photo span,.partner-photo strong{display:block}.partner-photo span{color:var(--c-pale);font-size:var(--t-xs);text-transform:uppercase;letter-spacing:var(--track-caps)}.partner-photo strong{font-size:var(--t-base);margin-top:4px}
.partner-model{max-width:var(--container);margin:var(--section-y) auto;padding:var(--s-8) var(--gutter);border-radius:var(--r-xl);background:var(--c-ink-deep);color:var(--c-white);display:grid;grid-template-columns:.8fr 1.2fr;gap:var(--s-7)}.partner-model>div:first-child>p{color:var(--c-pale);font-size:var(--t-base)}.partner-types{display:grid;grid-template-columns:1fr 1fr;gap:12px}.partner-types article{border:1px solid rgba(255,255,255,.17);border-radius:var(--r-lg);padding:21px;background:rgba(255,255,255,.04)}.partner-types .role-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;margin-bottom:14px;border-radius:var(--r-md);background:rgba(255,255,255,.08);color:var(--text-gold-on-dark)}.partner-types .role-icon .icon{width:20px;height:20px}.partner-types span{font-weight:var(--w-bold)}.partner-types p{font-size:var(--t-sm);color:var(--c-pale)}
.partner-steps{max-width:var(--container);margin:auto;padding:var(--section-y) var(--gutter)}.partner-steps ol{list-style:none;padding:0;margin:40px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.partner-steps li{border-top:1px solid var(--line);padding:22px 4px;display:flex;gap:15px}.partner-steps li>b{color:var(--green)}.partner-steps h3{margin:0}.partner-steps p{font-size:var(--t-sm);color:var(--muted)}
.partner-apply{max-width:var(--container);margin:0 auto var(--section-y);padding:var(--s-8) var(--gutter);border-radius:var(--r-xl);background:linear-gradient(135deg,var(--deep),var(--blue));color:var(--c-white);display:grid;grid-template-columns:.7fr 1.3fr;gap:var(--s-7)}.partner-apply>div h2{font-size:var(--h2);line-height:var(--lh-display);margin:0}.partner-apply>div p{color:var(--c-sky)}.partner-apply form{background:var(--c-white);color:var(--ink);border-radius:var(--r-xl);padding:30px}.partner-apply .primary-button{background:var(--c-blue);border-color:var(--c-blue);color:var(--c-white)}

@media(max-width:1200px){
  .module-grid.five-up{grid-template-columns:repeat(3,1fr)}
  .product-hero{grid-template-columns:1fr;padding:65px 48px}.simulation-shell{max-width:680px}
  .feature-story-grid,.journey-grid,.industry-grid{grid-template-columns:1fr 1fr}
  .lead-layout,.partner-hero,.partner-model,.partner-apply{grid-template-columns:1fr}.lead-copy{position:static}.partner-photo{min-height:520px}
}
@media(max-width:900px){
  .suite-nav.five-products{grid-template-columns:repeat(2,1fr)}.suite-nav.five-products a:last-child{grid-column:1/-1}
  .product-five-grid{grid-template-columns:1fr 1fr}.product-five-grid .solution-card,.product-five-grid .solution-card:first-child,.product-five-grid .appointments-card{grid-column:auto}.product-five-grid .appointments-card{grid-column:1/-1}
  .partner-home,.feature-story{grid-template-columns:1fr}.partner-home-image{min-height:520px}
  .partner-steps ol{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .suite-nav.five-products,.product-five-grid,.feature-story-grid,.journey-grid,.industry-grid,.partner-types,.partner-steps ol,.module-grid.five-up,.two-field-row{grid-template-columns:1fr}
  .suite-nav.five-products a:last-child,.product-five-grid .appointments-card{grid-column:auto}
  .partner-home{margin:65px auto;gap:35px}.partner-home-image{min-height:400px}
  .calculator-hero{border-radius:0 0 var(--r-xl) var(--r-xl)}.scenario-card{padding:22px}.scenario-controls button{font-size:var(--t-xs)}
  .saved-panel{grid-template-columns:1fr}.mode-switch{grid-template-columns:1fr}.calculator-shell-enhanced{grid-template-columns:1fr}
  .product-hero{margin:0 10px 28px;padding:52px 24px;border-radius:var(--r-xl);min-height:auto}.product-hero h1{font-size:var(--h1)}.simulation-shell{padding:14px;transform:none}.simulation-metrics{grid-template-columns:1fr 1fr}.simulation-actions button{flex:1 1 45%}
  .product-section{padding:var(--section-y) var(--gutter)}.feature-story{margin:20px 10px;padding:48px 24px;gap:35px}.industry-strip{margin:var(--section-y) auto;padding:var(--s-7) var(--gutter)}.product-cta{margin:60px 10px;padding:44px 24px;align-items:flex-start;flex-direction:column}
  .lead-layout{padding:var(--section-y) var(--gutter)}.lead-form-card{padding:25px 20px}.partner-hero{padding:55px 20px;gap:35px}.partner-photo{min-height:440px}.partner-model{margin:var(--section-y) auto;padding:var(--s-7) var(--gutter)}.partner-steps{padding:var(--section-y) var(--gutter)}.partner-apply{margin:0 10px 60px;padding:45px 20px;gap:30px}.partner-apply form{padding:22px 16px}
}

/* ============================================================
   Icon sprite usage: <svg class="icon"><use href="/icons.svg#..."/></svg>
   Presentation lives here so every icon shares one weight and inherits
   currentColor, instead of each use styling its own stroke by hand.
   ============================================================ */
.icon{width:24px;height:24px;flex:0 0 auto;fill:none;stroke:currentColor;
  stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}

/* ============================================================
   Mobile navigation for the shared .cx-hdr header.
   Below 900px every link but the CTA button is hidden (see the
   .cx-hdr nav rule further down) with no other way to reach them, so this
   toggle is required, not decorative - see nav.js's own header comment.
   Progressive enhancement: nav.js adds .js-nav to <html> only once it has
   found the real elements; without it, none of this applies and the nav
   stays visible as a wrapped row - usable, just not collapsible.
   ============================================================ */
.cx-nav-toggle{display:none;align-items:center;justify-content:center;
  width:44px;height:44px;padding:0;margin-left:auto;background:transparent;
  border:1px solid var(--c-line);border-radius:var(--r-md);color:var(--c-ink);cursor:pointer}
.cx-nav-toggle-close{display:none}
.cx-nav-toggle[aria-expanded="true"] .cx-nav-toggle-open{display:none}
.cx-nav-toggle[aria-expanded="true"] .cx-nav-toggle-close{display:block}

@media(max-width:900px){
  .js-nav .cx-nav-toggle{display:inline-flex}
  .cx-hdr{position:relative}

  .js-nav .cx-hdr nav[data-open="false"] a:not(.cx-btn){display:none}
  .js-nav .cx-hdr nav[data-open="true"]{
    position:absolute;top:100%;left:0;right:0;z-index:60;
    flex-direction:column;align-items:stretch;gap:0;
    background:var(--c-white);border-bottom:1px solid var(--c-line);box-shadow:var(--e-2);
    padding:var(--s-2) var(--gutter) var(--s-4);
  }
  .js-nav .cx-hdr nav[data-open="true"] a:not(.cx-btn){
    display:block;width:100%;padding:var(--s-3) 0;border-bottom:1px solid var(--c-line);
  }
  .js-nav .cx-hdr nav[data-open="true"] a.cx-btn{margin-top:var(--s-3);justify-content:center}

  /* True no-JS fallback: nothing above applies without .js-nav, so the row
     must wrap instead of clipping against the header's fixed height. */
  html:not(.js-nav) .cx-hdr{height:auto}
  html:not(.js-nav) .cx-hdr .cx-wrap{flex-wrap:wrap;padding-block:var(--s-3)}
}

/* One visible focus ring for the whole site. There was exactly one
   :focus-visible rule in 43KB of CSS, so keyboard users were navigating with
   the near-invisible UA default against blue and ink backgrounds. */
:focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:var(--r-sm)}
.home-hero :focus-visible,.inner-hero :focus-visible,.hero :focus-visible,
.promo-bar :focus-visible,.site-footer :focus-visible{outline-color:var(--c-white)}

/* Visually hidden, but available to assistive technology. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* stylelint-disable-next-line declaration-no-important -- hidden content must override component display rules */
[hidden]{display:none!important}

/* Skip link — every page previously forced a tab through the promo bar,
   the logo and five nav links before reaching content. */
.skip-link{position:absolute;left:-9999px;top:0;z-index:100;padding:12px 18px;background:var(--deep);
  color:var(--c-white);border-radius:0 0 var(--r-md) 0;font-weight:var(--w-medium)}
.skip-link:focus{left:0}

/* WCAG 2.5.8 wants 24x24 minimum. The carousel dots were 8x8 and the scenario
   buttons dropped to 9px type on phones. Keep the visual size, grow the target. */
.window-slider button{position:relative;min-width:24px;min-height:24px;background:transparent;border:0;
  padding:0;display:inline-flex;align-items:center;justify-content:center}
.window-slider button::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--border)}
.window-slider button[aria-selected="true"]::after,.window-slider button.active::after{background:var(--blue)}
@media(max-width:640px){
  .scenario-controls button{font-size:var(--t-sm);min-height:36px;padding:8px 12px}
}
.footer-grid a{padding:8px 0;margin:2px 0}
.footer-bottom a{display:inline-block;padding:8px 0;margin-left:14px}

/* Green is now status only (--c-success). Eyebrows and ticks that used to be
   lime take the brand blues instead; on dark grounds they take white, which is
   10.8:1 on --c-navy. See tokens.css. */
.check-list .check-icon,.partner-steps li>b{color:var(--green-text)}
.home-hero .eyebrow,.eyebrow.light,.why-grid b,.hero-proof span:before,
.module.active>span,.employer-total strong{color:var(--green-on-dark)}
.inner-hero .eyebrow,.split-section .eyebrow,.solution-card.featured>span{color:var(--deep)}

/* Auto-rotating panels must not re-announce themselves forever. */
.motion-pause{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;
  margin-left:8px;padding:0 8px;font-size:var(--t-xs);background:transparent;border:1px solid var(--border);
  border-radius:var(--r-md);cursor:pointer;color:inherit}

/* Honest status for products that are designed but not built. Marketing copy
   is gated on docs/IMPLEMENTATION-STATUS.md, not on intent. */
.build-status{display:block;margin:14px 0 0;padding:12px 16px;border-radius:var(--r-lg);
  background:var(--c-warning-pale);border:1px solid var(--c-warning-pale);color:var(--c-warning);font-size:var(--t-sm);line-height:1.5}
.build-status strong{color:var(--c-warning)}
.build-status a{color:var(--deep);text-decoration:underline}
[data-sim-disabled][disabled]{opacity:.55;cursor:not-allowed}

/* The kicker and eyebrow invert on brand-coloured grounds. These are the only
   two contexts in which they do, and they are listed here explicitly. */
.product-hero .product-kicker,.home-hero .product-kicker,
.product-hero .eyebrow,.home-hero .eyebrow,.why-section .eyebrow,
.cta-panel .eyebrow,.calculator-cta .eyebrow,.product-cta .eyebrow,
.partner-model .eyebrow,.industry-strip .eyebrow,.calculator-hero .eyebrow,
.eyebrow.light{color:var(--c-pale)}


/* ===== CONCEPT-B CHASSIS — appended 13 Aug 2026 ================================
/* ==========================================================================
   Shared chassis for the three homepage concepts.
   Everything resolves to tokens.css — no raw hex, no font-size under 12px.
   What is new here versus the live site:
     · a sticky header, so the page never feels like it starts over
     · heroes that fill the viewport (100svh), not a fixed 620px box
     · a photo frame treatment with a brand accent shape, so photography
       reads as designed rather than pasted in
     · section padding that is *filled*, not padded out
   ========================================================================== */

figure{margin:0}   /* the browser default 40px side margin was insetting every photo */
/* Heading sizing is scoped to the new homepage so it cannot disturb the ~900
   existing rules on the rest of the site. */
.home-b h1,.home-b h2,.home-b h3{margin:0;letter-spacing:var(--track-display);line-height:var(--lh-display);font-weight:var(--w-bold)}
.home-b h1{font-size:clamp(38px,4.4vw,58px)}
.home-b h2{font-size:clamp(30px,3.4vw,44px)}
.home-b h3{font-size:var(--t-2xl)}
.home-b p{margin:0}

.cx-wrap{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.cx-eyebrow{
  display:inline-block;font-size:var(--t-xs);font-weight:var(--w-bold);
  letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--c-blue-strong);
}
.cx-eyebrow.cx-on-dark{color:var(--c-pale)}
.cx-lede{font-size:var(--t-xl);color:var(--c-muted);max-width:56ch}
.cx-lede.cx-on-dark{color:var(--c-line)}

/* ---- sticky header ------------------------------------------------------ */
.cx-hdr{
  position:sticky;top:0;z-index:60;height:68px;
  background:rgba(255,255,255,.88);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--c-line);
}
.cx-hdr .cx-wrap{height:100%;display:flex;align-items:center;gap:var(--s-6)}
.cx-hdr nav{display:flex;align-items:center;gap:var(--s-5);margin-left:auto}
.cx-hdr nav a:not(.cx-btn){font-size:var(--t-sm);font-weight:var(--w-medium);color:var(--c-ink)}
.cx-hdr nav a:not(.cx-btn):hover{color:var(--c-blue-strong)}
.cx-brand{display:flex;align-items:center;gap:var(--s-3);font-weight:var(--w-bold);font-size:var(--t-lg)}
.cx-brand img{height:30px;width:auto}

/* ---- buttons: the one system, plus an inverse for brand grounds --------- */
.cx-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);
  min-height:var(--control-h);padding:0 var(--s-5);border-radius:var(--r-md);
  font-size:var(--t-base);font-weight:var(--w-bold);line-height:1;
  border:1px solid transparent;cursor:pointer;
  transition:background .18s ease,border-color .18s ease,color .18s ease;
}
.cx-btn-primary{background:var(--c-blue);border-color:var(--c-blue);color:var(--c-white)}
.cx-btn-primary:hover{background:var(--c-blue-strong);border-color:var(--c-blue-strong)}
.cx-btn-secondary{background:var(--c-white);border-color:var(--c-line);color:var(--c-navy)}
.cx-btn-secondary:hover{background:var(--c-sky)}
.cx-btn-inverse{background:var(--c-white);border-color:var(--c-white);color:var(--c-navy)}
.cx-btn-inverse:hover{background:var(--c-pale);border-color:var(--c-pale)}
.cx-btn-ghost{background:transparent;border-color:rgba(255,255,255,.6);color:var(--c-white)}
.cx-btn-ghost:hover{background:rgba(255,255,255,.14)}
.cx-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}
.cx-btn-lg{min-height:52px;padding:0 var(--s-6)}

/* ---- photo frame: image + accent shape --------------------------------- */
.cx-shot{position:relative;border-radius:var(--r-xl);overflow:hidden;background:var(--c-pale)}
.cx-shot img{width:100%;height:100%;object-fit:cover}
.cx-shot::after{
  content:"";position:absolute;left:0;bottom:0;width:38%;height:34%;
  background:var(--c-blue);opacity:.9;
  clip-path:polygon(0 100%,0 0,100% 100%);
}
.cx-shot.cx-accent-navy::after{background:var(--c-navy)}
.cx-shot.cx-accent-pale::after{background:var(--c-pale)}
.cx-shot.cx-no-accent::after{display:none}
.cx-shot figcaption{
  position:absolute;left:var(--s-5);right:var(--s-5);bottom:var(--s-5);z-index:2;
  padding:var(--s-4) var(--s-5);border-radius:var(--r-lg);
  background:rgba(15,27,51,.82);backdrop-filter:blur(10px);color:var(--c-white);
}
.cx-shot figcaption b{display:block;font-size:var(--t-base)}
.cx-shot figcaption span{display:block;margin-top:2px;font-size:var(--t-xs);color:var(--c-line)}

/* An empty slot still has to look deliberate. */
.cx-shot.cx-slot{
  background:linear-gradient(150deg,var(--c-navy),var(--c-blue));
  display:grid;place-items:center;text-align:center;color:var(--c-pale);
}
.cx-shot.cx-slot .cx-slot-note{padding:var(--s-6);font-size:var(--t-sm);max-width:34ch}
.cx-shot.cx-slot .cx-slot-note b{display:block;color:var(--c-white);font-size:var(--t-base);margin-bottom:var(--s-2)}

/* ---- section rhythm ----------------------------------------------------- */
.cx-band{padding-block:var(--section-y)}
.cx-band-tint{background:var(--c-canvas)}
.cx-band-sky{background:var(--c-sky)}
.cx-band-navy{background:var(--c-navy);color:var(--c-white)}
.cx-band-ink{background:var(--c-ink-deep);color:var(--c-white)}
.cx-band-navy h2,.cx-band-ink h2{color:var(--c-white)}
.cx-band-navy p,.cx-band-ink p{color:var(--c-line)}

.cx-head{max-width:60ch;margin-bottom:var(--s-7)}
.cx-head h2{margin-top:var(--s-3)}
.cx-head p{margin-top:var(--s-4)}

.cx-grid{display:grid;gap:var(--s-5)}
.cx-g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.cx-g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.cx-g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.cx-split{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-7);align-items:center}

.cx-card{
  background:var(--c-white);border:1px solid var(--c-line);border-radius:var(--r-lg);
  padding:var(--s-6);display:flex;flex-direction:column;gap:var(--s-3);
}
.cx-card-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;
  border-radius:var(--r-md);background:var(--c-sky);color:var(--c-blue-strong)}
.cx-card-icon .icon{width:22px;height:22px}
.cx-card h3{font-size:var(--t-xl)}
.cx-card p{font-size:var(--t-sm);color:var(--c-muted)}
.cx-card .cx-go{margin-top:auto;padding-top:var(--s-3);color:var(--c-blue-strong);font-weight:var(--w-bold);font-size:var(--t-sm)}
.cx-card:hover{border-color:var(--c-blue);box-shadow:var(--e-2)}
.cx-card-wide{grid-column:span 2;background:var(--c-sky);border-color:var(--c-pale)}
.cx-card-photo{padding:0;overflow:hidden}
.cx-card-photo .cx-shot{border-radius:0;aspect-ratio:4/3;width:100%}
.cx-card-photo .cx-card-body{padding:var(--s-5);display:flex;flex-direction:column;gap:var(--s-2);flex:1}

/* ---- stat band ---------------------------------------------------------- */
.cx-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-6)}
.cx-stat b{display:block;font-size:clamp(34px,3.6vw,48px);line-height:1;letter-spacing:var(--track-display)}
.cx-stat span{display:block;margin-top:var(--s-3);font-size:var(--t-sm);color:var(--c-line)}

/* ---- footer: ONE footer, every page ------------------------------------ */
.cx-ftr{background:var(--c-canvas);border-top:1px solid var(--c-line);padding-block:var(--s-7) var(--s-6)}
.cx-ftr-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:var(--s-6)}
.cx-ftr h4{margin:0 0 var(--s-4);font-size:var(--t-xs);text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--c-muted)}
.cx-ftr a{display:block;padding:var(--s-2) 0;font-size:var(--t-sm);color:var(--c-ink)}
.cx-ftr a:hover{color:var(--c-blue-strong)}
.cx-ftr .cx-about{max-width:34ch;font-size:var(--t-sm);color:var(--c-muted)}
.cx-ftr-btm{
  margin-top:var(--s-6);padding-top:var(--s-5);border-top:1px solid var(--c-line);
  display:flex;justify-content:space-between;gap:var(--s-5);font-size:var(--t-sm);color:var(--c-muted);
}
.cx-ftr-btm nav{display:flex;gap:var(--s-5)}

/* ---- responsive: the three shared breakpoints -------------------------- */
@media (max-width:900px){
  .cx-split,.cx-g4,.cx-g3,.cx-stats{grid-template-columns:1fr 1fr}
  .cx-ftr-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .cx-g2,.cx-g3,.cx-g4,.cx-split,.cx-stats,.cx-ftr-grid{grid-template-columns:1fr}
  .cx-card-wide{grid-column:auto}
  .cx-ftr-btm{flex-direction:column}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms;transition-duration:.01ms}
}

/* Money and other figures must never break across lines. */
.nowrap,.cx-metric b,.cx-reg td{white-space:nowrap}

/* ---- B: product-led homepage ---------------------------------------- */

/* ---- B: show the software working. The product IS the hero image. ------ */
.cx-hero{
  position:relative;min-height:calc(100svh - 68px);
  background:linear-gradient(160deg,var(--c-ink-deep) 0%,var(--c-navy) 55%,var(--c-blue) 140%);
  color:var(--c-white);overflow:hidden;display:flex;align-items:center;
}
.cx-hero::before{
  content:"";position:absolute;width:900px;height:900px;border-radius:50%;
  border:120px solid rgba(255,255,255,.045);right:-260px;top:-320px;
}
.cx-hero .cx-wrap{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:var(--s-7);align-items:center;padding-block:var(--s-8)}
.cx-hero h1{color:var(--c-white);margin-top:var(--s-4)}
.cx-hero .cx-lede{color:var(--c-line);margin-top:var(--s-5);max-width:46ch}
.cx-hero-cta{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-6)}
.cx-hero-note{margin-top:var(--s-5);font-size:var(--t-sm);color:var(--c-pale)}

/* the live-looking product surface */
.cx-surface{
  background:var(--c-white);color:var(--c-ink);border-radius:var(--r-xl);
  box-shadow:0 40px 90px rgba(9,20,44,.45);overflow:hidden;
}
.cx-surface-top{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--c-line);background:var(--c-canvas)}
.cx-surface-top i{width:9px;height:9px;border-radius:50%;background:var(--c-line);display:block}
.cx-surface-top i:first-child{background:var(--c-success)}
.cx-surface-top b{margin-left:auto;font-size:var(--t-xs);color:var(--c-muted);font-weight:var(--w-medium)}
.cx-surface-body{min-width:0;padding:var(--s-5);overflow-x:auto}
.cx-srow{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-4);margin-bottom:var(--s-4)}
.cx-srow h3{font-size:var(--t-xl)}
.cx-pill{font-size:var(--t-xs);font-weight:var(--w-bold);padding:4px var(--s-3);border-radius:var(--r-pill);
  background:var(--c-success-pale);color:var(--c-success)}
.cx-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-3);margin-bottom:var(--s-5)}
.cx-metric{border:1px solid var(--c-line);border-radius:var(--r-lg);padding:var(--s-4)}
.cx-metric span{display:block;font-size:var(--t-xs);color:var(--c-muted)}
.cx-metric b{display:block;margin-top:var(--s-2);font-size:var(--t-xl);letter-spacing:var(--track-display);font-variant-numeric:tabular-nums;white-space:nowrap}
.cx-reg{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.cx-reg th{font-size:var(--t-xs);text-transform:uppercase;letter-spacing:var(--track-caps);color:var(--c-muted);
  text-align:left;padding:var(--s-2) var(--s-3);border-bottom:1px solid var(--c-line)}
.cx-reg td{font-size:var(--t-sm);padding:var(--s-3);border-bottom:1px solid var(--c-line);white-space:nowrap}
.cx-reg td:first-child{white-space:normal}
.cx-reg th:nth-child(n+2),.cx-reg td:nth-child(n+2){text-align:right}
.cx-reg tr:last-child td{border-bottom:0}
.cx-reg .cx-who{display:flex;align-items:center;gap:var(--s-3)}
.cx-reg .cx-av{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;
  background:var(--c-pale);color:var(--c-navy);font-size:var(--t-xs);font-weight:var(--w-bold);flex:0 0 auto}
.cx-reg small{display:block;color:var(--c-muted);font-size:var(--t-xs)}
.cx-reg .cx-sel{background:var(--c-sky)}

/* the scroll story: three panes that swap the surface content */
.cx-steps .cx-split{align-items:start}
.cx-steplist{display:grid;gap:var(--s-4)}
.cx-step{border-left:3px solid var(--c-line);padding:var(--s-4) 0 var(--s-4) var(--s-5)}
.cx-step.on{border-left-color:var(--c-blue)}
.cx-step-head{display:flex;align-items:center;gap:var(--s-3)}
.cx-step-head .icon{width:22px;height:22px;color:var(--c-line);transition:color .18s ease}
.cx-step.on .cx-step-head .icon{color:var(--c-blue)}
.cx-step b{display:block;font-size:var(--t-lg)}
.cx-step p{font-size:var(--t-sm);color:var(--c-muted);margin-top:var(--s-2)}
.cx-sticky-col{position:sticky;top:calc(68px + var(--s-5))}

.cx-human .cx-shot{aspect-ratio:16/10}
.cx-quote{font-size:clamp(24px,2.6vw,34px);line-height:1.25;letter-spacing:var(--track-display);max-width:22ch}
.cx-quote-by{margin-top:var(--s-5);font-size:var(--t-sm);color:var(--c-line)}

@media(max-width:900px){
  .cx-hero .cx-wrap{grid-template-columns:1fr}
  .cx-metrics{grid-template-columns:1fr 1fr}
  .cx-sticky-col{position:static}
}

/* The chassis lost its base reset when it was folded into styles.css; these
   are the only two declarations from it that components actually relied on. */
.cx-hdr a,.cx-ftr a,.cx-btn,.home-b a{text-decoration:none}
.cx-hdr a:hover,.cx-ftr a:hover{text-decoration:none}
.home-b a:hover:not(.cx-btn):not(.cx-brand){text-decoration:underline;text-underline-offset:4px}

/* Analytics is opt-in. The preference panel is deliberately compact, stays
   above page actions and remains usable with keyboard, touch and zoom. */
.analytics-consent{position:fixed;z-index:1000;left:var(--s-4);right:var(--s-4);bottom:var(--s-4);max-width:760px;margin:auto;padding:var(--s-4);display:flex;align-items:center;justify-content:space-between;gap:var(--s-5);background:var(--c-ink-deep);color:var(--c-white);border:1px solid rgba(255,255,255,.2);border-radius:var(--r-lg);box-shadow:var(--e-3)}
.analytics-consent strong{display:block;margin-bottom:var(--s-1)}
.analytics-consent p{margin:0;color:var(--c-sky);font-size:var(--t-sm)}
.analytics-consent>div:last-child{display:flex;gap:var(--s-2);flex:0 0 auto}
.analytics-consent button{min-height:var(--control-h);padding:0 var(--s-4);border:1px solid var(--c-line);border-radius:var(--r-md);background:transparent;color:var(--c-white);font:inherit;font-weight:var(--w-bold);cursor:pointer}
.analytics-consent button[data-consent="granted"]{background:var(--c-blue);border-color:var(--c-blue)}
.analytics-consent .analytics-consent-close{position:absolute;inset:var(--s-2) var(--s-2) auto auto;min-height:0;padding:var(--s-1) var(--s-2);border:0;color:var(--c-line);font-size:var(--t-lg)}
.cx-ftr-btm nav button[data-analytics-preferences]{border:0;padding:0;background:transparent;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
@media(max-width:640px){.analytics-consent{align-items:stretch;flex-direction:column}.analytics-consent>div:last-child{display:grid;grid-template-columns:1fr 1fr}}
/* stylelint-disable-next-line declaration-no-important -- consent labels override the generic form-label weight */
.api-consent{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:var(--s-3);font-size:var(--t-sm);font-weight:var(--w-regular)!important;color:var(--c-muted)}
.api-consent input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--c-blue)}
.form-status.is-pending{color:var(--c-navy)}
.form-status.is-success{padding:var(--s-3);background:var(--c-success-pale);color:var(--c-success);border-radius:var(--r-md)}
.form-status.is-error{padding:var(--s-3);background:var(--c-danger-pale);color:var(--c-danger);border-radius:var(--r-md)}
.form-status a{font-weight:var(--w-bold)}

/* ========================================================================
   Constitution quality pass · 30 August 2026
   A single visual finishing layer for every public page. The earlier rules
   retain structural compatibility; these rules establish the final rhythm,
   surface treatment and hierarchy visitors see.
   ====================================================================== */
body{background:var(--c-white);color:var(--c-ink)}
main{overflow:hidden}
::selection{background:var(--c-pale);color:var(--c-navy)}

.cx-hdr{height:76px;background:var(--c-white);border-bottom-color:var(--c-line);box-shadow:var(--e-1)}
.cx-hdr::after{content:"";position:absolute;inset:auto 0 -1px;height:1px;background:linear-gradient(90deg,transparent,var(--c-gold-line),transparent);opacity:.5}
.cx-hdr .cx-wrap{gap:var(--s-7)}
.cx-brand{color:var(--c-navy);letter-spacing:var(--track-display)}
.cx-brand img{height:34px}
.cx-hdr nav{gap:var(--s-6)}
.cx-hdr nav a:not(.cx-btn){position:relative;color:var(--c-muted)}
.cx-hdr nav a:not(.cx-btn)::after{content:"";position:absolute;inset:auto 0 -10px;height:2px;border-radius:var(--r-pill);background:var(--c-blue);transform:scaleX(0);transform-origin:left;transition:transform .18s ease}
.cx-hdr nav a:not(.cx-btn):hover::after,.cx-hdr nav a:not(.cx-btn):focus-visible::after{transform:scaleX(1)}

.cx-btn,.primary-button,.secondary-button,.light-button{min-height:var(--control-h);border-radius:var(--r-md);font-weight:var(--w-bold);box-shadow:none}
.primary-button{background:var(--c-blue);border-color:var(--c-blue)}
.primary-button:hover{background:var(--c-blue-strong);border-color:var(--c-blue-strong);transform:translateY(-1px)}
.secondary-button{background:var(--c-white);border-color:var(--c-line);color:var(--c-navy)}

.cx-hero{min-height:720px;background:linear-gradient(145deg,var(--c-ink-deep),var(--c-navy));isolation:isolate}
.cx-hero::before{width:720px;height:720px;right:-240px;top:-300px;border:1px solid var(--c-line);box-shadow:0 0 0 96px rgba(255,255,255,.025),0 0 0 192px rgba(255,255,255,.018);opacity:.6}
.cx-hero::after{content:"";position:absolute;z-index:-1;left:0;bottom:0;width:38%;height:8px;background:var(--c-gold-on-dark)}
.cx-hero .cx-wrap{gap:var(--s-8);padding-block:var(--s-8)}
.home-b h1{max-width:10ch;font-size:clamp(44px,5.2vw,68px)}
.cx-hero .cx-lede{max-width:48ch;font-size:var(--t-xl);line-height:1.65}
.cx-hero-note{display:flex;align-items:center;gap:var(--s-2)}
.cx-hero-note::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c-success)}
.cx-surface{border:1px solid rgba(255,255,255,.22);border-radius:var(--r-xl);box-shadow:0 48px 96px rgba(15,27,51,.48);transform:perspective(1200px) rotateY(-2deg) rotateX(1deg)}
.cx-surface-top{min-height:52px;background:var(--c-white)}
.cx-surface-body{padding:var(--s-6)}
.cx-metric{background:var(--c-canvas);border-color:transparent}
.cx-reg .cx-sel{background:var(--c-pale);box-shadow:inset 3px 0 var(--c-navy)}

.cx-trust{position:relative;z-index:2;border-bottom:1px solid var(--c-line);background:var(--c-white)}
.cx-trust .cx-wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.cx-trust span{min-height:112px;padding:var(--s-5);display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--c-line)}
.cx-trust span:first-child{border-left:1px solid var(--c-line)}
.cx-trust b{color:var(--c-navy);font-size:var(--t-base)}
.cx-trust small{margin-top:var(--s-2);color:var(--c-muted);font-size:var(--t-xs)}

.cx-band{position:relative}
.cx-band-tint{background:var(--c-canvas)}
.cx-head{max-width:66ch;margin-bottom:var(--s-8)}
.cx-head h2{max-width:16ch;color:var(--c-navy)}
.cx-head p{font-size:var(--t-lg);line-height:1.7;color:var(--c-muted)}
.cx-step{border:1px solid transparent;border-left:3px solid var(--c-line);border-radius:0 var(--r-lg) var(--r-lg) 0;padding:var(--s-5)}
.cx-step.on{border-color:var(--c-line);border-left-color:var(--c-blue);background:var(--c-white);box-shadow:var(--e-2)}
.cx-step b{color:var(--c-navy)}
.cx-card{min-height:250px;border-color:var(--c-line);border-top:3px solid var(--c-navy);border-radius:var(--r-lg);padding:var(--s-6);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.cx-card:nth-child(2){border-top-color:var(--c-prod-books)}
.cx-card:nth-child(3){border-top-color:var(--c-prod-tax)}
.cx-card:nth-child(4){border-top-color:var(--c-prod-stock)}
.cx-card:nth-child(5){border-top-color:var(--c-prod-appts)}
.cx-card:hover{transform:translateY(-4px);box-shadow:var(--e-3)}
.cx-card h3{color:var(--c-navy)}
.cx-card-wide{background:var(--c-white);border-color:var(--c-line)}
.cx-human{background:var(--c-ink-deep)}
.cx-human::before{content:"";position:absolute;left:0;top:0;width:30%;height:4px;background:var(--c-gold-on-dark)}
.cx-human .cx-shot{box-shadow:var(--e-3)}

/* Shared inner and product pages */
.product-hero,.partner-hero,.inner-hero{position:relative;isolation:isolate;background:var(--c-canvas)}
.product-hero::before,.partner-hero::before,.inner-hero::before{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:6px;background:linear-gradient(90deg,var(--c-navy),var(--c-blue),var(--c-gold-line))}
.product-hero{padding-block:var(--s-8);gap:var(--s-8)}
.product-hero h1,.partner-hero h1,.inner-hero h1{color:var(--c-navy);max-width:14ch}
.product-hero-copy>p,.partner-hero>div>p,.inner-hero>p{font-size:var(--t-lg);line-height:1.7;color:var(--c-muted)}
.product-hero .product-kicker,.partner-hero .product-kicker{color:var(--c-blue-strong)}
.product-visual{border:1px solid var(--c-line);box-shadow:var(--e-3)}
.product-proof{padding-top:var(--s-5);border-top:1px solid var(--c-line)}
.product-proof span::before{background:var(--c-success)}
.product-section,.business-section{padding-block:var(--section-y)}
.feature-story-grid article,.journey-grid article,.feature-grid article,.industry-grid article,.partner-types article{border:1px solid var(--c-line);border-radius:var(--r-lg);background:var(--c-white);box-shadow:var(--e-1)}
.feature-story-grid article{border-top:3px solid var(--c-navy)}
.feature-story-grid article:hover,.journey-grid article:hover,.feature-grid article:hover{box-shadow:var(--e-2);transform:translateY(-2px)}
.feature-story{border-block:1px solid var(--c-line);background:var(--c-canvas)}
.story-board{border:1px solid var(--c-line);box-shadow:var(--e-3)}
.product-cta,.cta-panel{background:var(--c-navy)}

.lead-layout{background:linear-gradient(135deg,var(--c-canvas),var(--c-white));gap:var(--s-8)}
.lead-copy h1{color:var(--c-navy)}
.lead-promise article{border-top:1px solid var(--c-line)}
.lead-promise article>span{color:var(--c-blue-strong);background:var(--c-pale)}
.lead-form-card,.partner-apply form{border:1px solid var(--c-line);border-top:4px solid var(--c-navy);box-shadow:var(--e-3)}
input,select,textarea{border-color:var(--c-line)}
input:focus,select:focus,textarea:focus{border-color:var(--c-blue);box-shadow:var(--focus-ring)}

.legal-page main{max-width:800px;padding-block:var(--s-8)}
.legal-page main>h1{color:var(--c-navy);font-size:var(--h1)}
.legal-page main>h2{padding-top:var(--s-6);border-top:1px solid var(--c-line);color:var(--c-navy)}
.legal-page main>p,.legal-page main li{font-size:var(--t-base);line-height:1.75;color:var(--c-muted)}

.cx-ftr{padding-top:var(--s-8);background:var(--c-ink-deep);border-top:4px solid var(--c-gold-on-dark);color:var(--c-white)}
.cx-ftr .cx-brand,.cx-ftr a{color:var(--c-white)}
.cx-ftr h4,.cx-ftr .cx-about,.cx-ftr-btm{color:var(--c-line)}
.cx-ftr a:hover{color:var(--c-pale)}
.cx-ftr-btm{border-top-color:var(--c-muted)}

@media(max-width:1200px){
  .cx-hdr nav{gap:var(--s-4)}
  .cx-hero .cx-wrap{gap:var(--s-7)}
  .lead-layout{gap:var(--s-6)}
}
@media(max-width:900px){
  .cx-hdr{height:68px}
  .cx-hero{min-height:auto}
  .cx-hero .cx-wrap{padding-block:var(--s-7)}
  .cx-surface{transform:none}
  .cx-trust .cx-wrap{grid-template-columns:1fr 1fr}
  .cx-trust span:nth-child(3){border-left:1px solid var(--c-line)}
  .cx-trust span:nth-child(-n+2){border-bottom:1px solid var(--c-line)}
  .cx-head{margin-bottom:var(--s-7)}
}
@media(max-width:640px){
  .cx-hdr nav .cx-btn-primary{display:none}
  .cx-hdr nav{margin-left:auto}
  .cx-hdr nav a[href="https://scopespace.contlant.com/"]:not(.cx-btn){display:block;font-weight:var(--w-bold);color:var(--c-navy)}
  .home-b h1{font-size:var(--h1)}
  .cx-hero .cx-wrap{padding-top:var(--s-8)}
  .cx-surface-body{padding:var(--s-4)}
  .cx-metrics{grid-template-columns:1fr}
  .cx-reg th:nth-child(2),.cx-reg td:nth-child(2),.cx-reg th:nth-child(3),.cx-reg td:nth-child(3){display:none}
  .cx-trust span{min-height:96px;padding:var(--s-4)}
  .cx-card{min-height:0}
  .cx-ftr{padding-top:var(--s-7)}
}
