
/* Invoice Factoring Index — ledger/rate-sheet identity.
   Ink on cool paper. Every number monospace + tabular. Amber reserved for CTAs only. */
:root{
  --paper:#F4F5F2; --card:#FFFFFF; --sunk:#E9EBE5;
  --ink:#14181A; --ink-2:#414A4D; --ink-3:#6C7679;
  --rule:#D3D7CE; --rule-2:#BFC5B9;
  --brand:#1B4A5A; --brand-2:#12333F;
  --amber:#B45F06; --amber-ink:#FFFFFF; --amber-soft:#F6E7D3;
  --good:#2C6A44; --warn:#8A6400; --bad:#9E2B1C;
  --max:1180px; --rad:3px;
}
@media (prefers-color-scheme:dark){
  :root{
    --paper:#101312; --card:#181C1B; --sunk:#1F2422;
    --ink:#E9ECE6; --ink-2:#B3BAB4; --ink-3:#828C87;
    --rule:#2C3230; --rule-2:#3C4441;
    --brand:#7FB4C4; --brand-2:#A8CFDB;
    --amber:#E09A45; --amber-ink:#14181A; --amber-soft:#33261485;
    --good:#6FBE8C; --warn:#D6AC4A; --bad:#E4796A;
  }
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--paper); color:var(--ink);
  font:400 16.5px/1.62 Georgia,"Iowan Old Style","Times New Roman",serif;
  -webkit-font-smoothing:antialiased;
}
.sans,button,input,.btn,th,.pill,nav,.card-k,.eyebrow{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}
.num,td.n,.panel-stats dd{font-family:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;font-variant-numeric:tabular-nums}
img{max-width:100%;height:auto;display:block}
a{color:var(--brand);text-decoration-thickness:1px;text-underline-offset:2px}
a:hover{color:var(--amber)}
:focus-visible{outline:2px solid var(--amber);outline-offset:2px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:8px;top:8px;z-index:99;background:var(--ink);color:var(--paper);padding:10px 14px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 clamp(16px,4vw,36px)}

/* ── header ───────────────────────────────────────────── */
.site-head{background:var(--card);border-bottom:1px solid var(--rule);position:sticky;top:0;z-index:40}
.head-inner{max-width:var(--max);margin:0 auto;padding:12px clamp(16px,4vw,36px);
  display:flex;align-items:center;gap:20px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);flex:none}
.brand-mark{width:34px;height:34px}
.brand-text{display:flex;flex-direction:column;line-height:1}
.brand-text b{font:700 14.5px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.01em}
.brand-text span{font:700 10.5px/1.5 ui-monospace,Menlo,monospace;letter-spacing:.34em;color:var(--amber)}
.site-nav{margin-left:auto;display:flex;align-items:center;gap:19px;flex-wrap:wrap}
.site-nav a{font-size:13.5px;font-weight:600;color:var(--ink-2);text-decoration:none;white-space:nowrap}
.site-nav a:hover,.site-nav a.on{color:var(--amber)}
.site-nav a.btn{color:var(--amber-ink)}
.navtoggle{display:none;margin-left:auto;background:none;border:1px solid var(--rule-2);
  color:var(--ink);padding:7px 13px;border-radius:var(--rad);font-size:13px;font-weight:600;cursor:pointer}
.disclosure-bar{margin:0;padding:7px clamp(16px,4vw,36px);background:var(--sunk);
  border-top:1px solid var(--rule);font:400 11.5px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif;
  color:var(--ink-3);text-align:center}
.disclosure-bar a{color:var(--ink-2);white-space:nowrap}
@media(max-width:940px){
  .navtoggle{display:block}
  .site-nav{display:none;order:3;width:100%;flex-direction:column;align-items:flex-start;gap:2px;
    padding-top:12px;margin-left:0;border-top:1px solid var(--rule);margin-top:10px}
  .site-nav.open{display:flex}
  .site-nav a{padding:8px 0;font-size:15px}
  .head-inner{flex-wrap:wrap}
}

/* ── buttons ──────────────────────────────────────────── */
.btn{display:inline-block;padding:11px 19px;border-radius:var(--rad);font-size:14px;font-weight:700;
  text-decoration:none;border:1px solid transparent;cursor:pointer;line-height:1.25;transition:.13s}
.btn-primary{background:var(--amber);color:var(--amber-ink);border-color:var(--amber)}
.btn-primary:hover{filter:brightness(1.09);color:var(--amber-ink)}
.btn-dark{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.btn-dark:hover{color:var(--paper);filter:brightness(1.35)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--rule-2)}
.btn-lg{padding:14px 26px;font-size:15.5px}
.btn-sm{padding:8px 13px;font-size:12.5px}
.btn-block{display:block;text-align:center;width:100%}

/* ── hero ─────────────────────────────────────────────── */
.hero{background:var(--card);border-bottom:1px solid var(--rule)}
.hero-inner{display:grid;grid-template-columns:1.35fr .85fr;gap:52px;padding-top:56px;padding-bottom:56px;align-items:start}
.eyebrow{font:700 11px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.16em;
  text-transform:uppercase;color:var(--ink-3);margin:0 0 18px}
.hero h1{font:800 clamp(38px,6vw,68px)/.98 "Helvetica Neue",Helvetica,Arial,sans-serif;
  letter-spacing:-.038em;margin:0 0 20px;text-wrap:balance}
.hero h1 em{font-style:italic;color:var(--amber)}
.hero-sub{font-size:18.5px;color:var(--ink-2);margin:0 0 26px;max-width:56ch}
.hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-bottom:14px}
.hero-note{font:400 12.5px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-3);margin:0;max-width:48ch}
.hero-panel{background:var(--sunk);border:1px solid var(--rule);padding:22px}
.panel-h{font:700 11px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink-3);margin:0 0 16px}
.panel-stats{margin:0;display:grid;gap:1px;background:var(--rule);border:1px solid var(--rule)}
.panel-stats>div{background:var(--sunk);padding:11px 13px;display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.panel-stats dt{font:600 12.5px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-2);margin:0}
.panel-stats dd{margin:0;font-size:19px;font-weight:600;letter-spacing:-.02em}
.panel-foot{font:400 12px/1.55 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-3);margin:14px 0 0}
@media(max-width:900px){.hero-inner{grid-template-columns:1fr;gap:32px;padding-top:36px;padding-bottom:36px}}

/* ── bands / cards ────────────────────────────────────── */
.band{padding:52px 0;border-bottom:1px solid var(--rule)}
.band-h{font:800 clamp(21px,3vw,30px)/1.15 "Helvetica Neue",Helvetica,Arial,sans-serif;
  letter-spacing:-.024em;margin:0 0 8px;text-wrap:balance}
.band-sub{color:var(--ink-2);margin:0 0 24px;max-width:74ch}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(232px,1fr));gap:14px;margin-top:24px}
.card{background:var(--card);border:1px solid var(--rule);padding:20px;text-decoration:none;
  color:var(--ink);display:flex;flex-direction:column;transition:.14s}
.card:hover{border-color:var(--amber);transform:translateY(-2px);color:var(--ink)}
.card-k{font:700 10px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.15em;
  text-transform:uppercase;color:var(--amber);margin:0 0 11px}
.card-h{font:700 18px/1.2 "Helvetica Neue",Helvetica,Arial,sans-serif;margin:0 0 8px;letter-spacing:-.015em}
.card-b{font-size:14.5px;color:var(--ink-2);margin:0 0 16px;flex:1}
.card-go{font:700 13px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--brand)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:38px;margin-top:22px}
@media(max-width:820px){.two-col{grid-template-columns:1fr;gap:22px}}
.linkgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(198px,1fr));gap:26px;margin-top:22px}
.linkgrid h3{font:700 11px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink-3);margin:0 0 12px;padding-bottom:9px;border-bottom:1px solid var(--rule)}
.linkgrid ul{list-style:none;margin:0;padding:0}
.linkgrid li{margin-bottom:8px;font-size:14.5px}
.more{font:700 14px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;display:inline-block;margin-top:18px}

/* ── article ──────────────────────────────────────────── */
.article{padding:34px 0 60px}
.crumb{font:400 12px/1.6 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-3);margin-bottom:22px}
.crumb a{color:var(--ink-3);text-decoration:none}
.crumb a:hover{color:var(--amber)}
.crumb span{margin:0 7px;color:var(--rule-2)}
.crumb span:last-child{margin:0;color:var(--ink-3)}
.art-head{border-bottom:2px solid var(--ink);padding-bottom:22px;margin-bottom:30px}
.art-head h1{font:800 clamp(28px,4.6vw,46px)/1.06 "Helvetica Neue",Helvetica,Arial,sans-serif;
  letter-spacing:-.032em;margin:0 0 14px;text-wrap:balance;max-width:24ch}
.standfirst{font-size:19px;color:var(--ink-2);margin:0 0 14px;max-width:64ch}
.byline{font:400 12.5px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-3);margin:0}
.art-grid{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:48px;align-items:start}
.art-body{min-width:0;max-width:72ch}
.art-body h2{font:800 clamp(20px,2.6vw,27px)/1.2 "Helvetica Neue",Helvetica,Arial,sans-serif;
  letter-spacing:-.022em;margin:44px 0 13px;padding-top:16px;border-top:1px solid var(--rule);text-wrap:balance}
.art-body h3{font:700 17px/1.3 "Helvetica Neue",Helvetica,Arial,sans-serif;margin:28px 0 9px}
.art-body p{margin:0 0 16px}
.art-side{position:sticky;top:104px;display:flex;flex-direction:column;gap:16px}
@media(max-width:1000px){
  .art-grid{grid-template-columns:1fr;gap:30px}
  .art-side{position:static;flex-direction:row;flex-wrap:wrap}
  .art-side>*{flex:1 1 260px}
}

.toc{background:var(--sunk);border-left:3px solid var(--amber);padding:16px 20px;margin:0 0 30px}
.toc-h{font:700 10.5px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.15em;
  text-transform:uppercase;color:var(--ink-3);margin:0 0 11px}
.toc ul{margin:0;padding:0;list-style:none;columns:2;column-gap:26px}
.toc li{margin-bottom:6px;font:400 13.5px/1.45 "Helvetica Neue",Helvetica,Arial,sans-serif;break-inside:avoid}
@media(max-width:620px){.toc ul{columns:1}}

ul.checks,ol.steps{margin:0 0 18px;padding-left:0;list-style:none}
ul.checks li{position:relative;padding-left:22px;margin-bottom:9px}
ul.checks li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;
  background:var(--amber);border-radius:1px}
ol.steps{counter-reset:s}
ol.steps li{position:relative;padding-left:34px;margin-bottom:11px;counter-increment:s}
ol.steps li::before{content:counter(s);position:absolute;left:0;top:.06em;width:23px;height:23px;
  background:var(--ink);color:var(--paper);border-radius:50%;display:grid;place-items:center;
  font:700 12px/1 ui-monospace,Menlo,monospace}
.complist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(276px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule)}
.complist li{background:var(--card);padding:13px 16px}
.complist li a{font:700 15px/1.3 "Helvetica Neue",Helvetica,Arial,sans-serif;text-decoration:none;display:block}
.complist li span{display:block;font:400 12.5px/1.45 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-3);margin-top:3px}

/* ── tables ───────────────────────────────────────────── */
.tw{overflow-x:auto;margin:22px 0;border:1px solid var(--rule);background:var(--card)}
table.data{border-collapse:collapse;width:100%;font:400 13.5px/1.45 "Helvetica Neue",Helvetica,Arial,sans-serif;min-width:640px}
table.data caption{text-align:left;padding:12px 14px;font-weight:700;border-bottom:1px solid var(--rule)}
table.data th[scope=col]{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);
  text-align:left;padding:11px 14px;border-bottom:2px solid var(--ink);white-space:nowrap;vertical-align:bottom}
table.data td,table.data th[scope=row]{padding:11px 14px;border-bottom:1px solid var(--rule);vertical-align:top;text-align:left}
table.data th[scope=row]{font-weight:700;white-space:nowrap}
table.data tbody tr:last-child td,table.data tbody tr:last-child th{border-bottom:none}
table.data tbody tr:hover{background:var(--sunk)}
.tsub{display:block;font-weight:400;font-size:11.5px;color:var(--ink-3);margin-top:2px}
.np{color:var(--ink-3);font-style:italic;font-size:12.5px}
.np-line{color:var(--ink-3);font-style:italic}
.tnote{font:400 13px/1.55 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-2);
  margin:-8px 0 24px;padding-left:12px;border-left:2px solid var(--rule-2)}
.pill{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:3px 7px;border:1px solid currentColor;border-radius:2px;white-space:nowrap}
.pill.ok{color:var(--good)} .pill.pending{color:var(--ink-3)}

/* ── callouts ─────────────────────────────────────────── */
.callout{background:var(--sunk);border-left:4px solid var(--brand);padding:17px 20px;margin:24px 0}
.callout.warn{border-left-color:var(--amber)}
.callout-h{font:700 10.5px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.13em;
  text-transform:uppercase;color:var(--ink-2);margin:0 0 9px}
.callout p:last-child{margin-bottom:0}
.callout p{font-size:15.5px}

/* ── FAQ ──────────────────────────────────────────────── */
.faq{border-top:1px solid var(--rule);margin:16px 0 24px}
.faq details{border-bottom:1px solid var(--rule)}
.faq summary{cursor:pointer;padding:15px 30px 15px 0;font:700 16px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif;
  position:relative;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:13px;font:400 21px/1 ui-monospace,Menlo,monospace;color:var(--amber)}
.faq details[open] summary::after{content:"\2212"}
.faq details>div{padding:0 0 17px;color:var(--ink-2)}

/* ── CTAs ─────────────────────────────────────────────── */
.cta-band{background:var(--brand-2);color:#EEF3F4;margin:0}
@media (prefers-color-scheme:dark){.cta-band{background:var(--sunk);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}}
.cta-inner{max-width:var(--max);margin:0 auto;padding:38px clamp(16px,4vw,36px);
  display:grid;grid-template-columns:1.5fr auto;gap:34px;align-items:center}
.cta-eyebrow{font:700 10.5px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.16em;
  text-transform:uppercase;color:var(--amber);margin:0 0 11px}
.cta-h{font:800 clamp(21px,2.8vw,29px)/1.15 "Helvetica Neue",Helvetica,Arial,sans-serif;
  letter-spacing:-.024em;margin:0 0 10px;color:inherit;text-wrap:balance}
.cta-body{margin:0;font-size:16px;opacity:.9;max-width:62ch}
.cta-actions{display:flex;flex-direction:column;gap:9px;align-items:stretch;min-width:250px}
.cta-sub{font:400 12px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif;opacity:.72;margin:0;text-align:center}
@media (prefers-color-scheme:dark){.cta-band .cta-h,.cta-band .cta-body{color:var(--ink)}}
@media(max-width:820px){.cta-inner{grid-template-columns:1fr;gap:20px;padding:28px clamp(16px,4vw,36px)}}

.cta-inline{background:var(--amber-soft);border:1px solid var(--rule);border-left:4px solid var(--amber);
  padding:15px 18px;margin:26px 0;display:flex;flex-direction:column;gap:4px}
.cta-inline a{font:700 15.5px/1.35 "Helvetica Neue",Helvetica,Arial,sans-serif;text-decoration:none;color:var(--ink)}
.cta-inline a:hover{color:var(--amber)}
.cta-inline-note{font:400 12px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-3)}

.side-cta{background:var(--card);border:1px solid var(--rule);border-top:3px solid var(--amber);padding:19px}
.side-cta-eyebrow{font:700 10px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.15em;
  text-transform:uppercase;color:var(--amber);margin:0 0 10px}
.side-cta-h{font:700 17px/1.25 "Helvetica Neue",Helvetica,Arial,sans-serif;margin:0 0 8px;letter-spacing:-.015em}
.side-cta-body{font:400 13.5px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-2);margin:0 0 14px}
.side-cta-note{font:400 11.5px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-3);margin:9px 0 0;text-align:center}
.side-note{background:var(--sunk);border:1px solid var(--rule);padding:17px}
.side-note-h{font:700 10px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.15em;
  text-transform:uppercase;color:var(--ink-3);margin:0 0 9px}
.side-note p{font:400 13.5px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif;margin:0 0 10px;color:var(--ink-2)}
.side-note a{font:700 13px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;text-decoration:none}

/* ── index meta ───────────────────────────────────────── */
.index-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;
  background:var(--rule);border:1px solid var(--rule);margin:0 0 26px}
.index-meta>div{background:var(--card);padding:14px 16px}
.index-meta .k{display:block;font:700 10px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}
.index-meta .v{display:block;font:600 20px/1 ui-monospace,Menlo,monospace;font-variant-numeric:tabular-nums;letter-spacing:-.02em}

/* ── calculator ───────────────────────────────────────── */
.calc{background:var(--card);border:1px solid var(--rule);border-top:3px solid var(--amber);padding:22px;margin:24px 0}
.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));gap:14px}
.calc label{display:flex;flex-direction:column;gap:6px;
  font:600 12px/1.35 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-2)}
.calc input{padding:9px 11px;border:1px solid var(--rule-2);border-radius:var(--rad);
  background:var(--paper);color:var(--ink);font:600 15px/1 ui-monospace,Menlo,monospace;
  font-variant-numeric:tabular-nums;width:100%}
.calc-out{margin-top:20px;padding-top:18px;border-top:2px solid var(--ink);display:grid;
  grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:16px}
.calc-out .o{display:flex;flex-direction:column;gap:5px}
.calc-out .ok_{font:700 10px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.13em;
  text-transform:uppercase;color:var(--ink-3)}
.calc-out .ov{font:600 24px/1 ui-monospace,Menlo,monospace;font-variant-numeric:tabular-nums;letter-spacing:-.03em}
.calc-out .ov.hi{color:var(--amber)}
.calc-note{font:400 12.5px/1.55 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-3);margin:16px 0 0}

/* ── footer ───────────────────────────────────────────── */
.site-foot{background:var(--card);border-top:2px solid var(--ink);margin-top:0}
.foot-cta{max-width:var(--max);margin:0 auto;padding:26px clamp(16px,4vw,36px);
  display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;
  border-bottom:1px solid var(--rule)}
.foot-cta-h{font:800 20px/1.2 "Helvetica Neue",Helvetica,Arial,sans-serif;margin:0 0 4px;letter-spacing:-.02em}
.foot-cta-b{font:400 14px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-2);margin:0}
.foot-grid{max-width:var(--max);margin:0 auto;padding:36px clamp(16px,4vw,36px);
  display:grid;grid-template-columns:repeat(auto-fit,minmax(186px,1fr));gap:30px}
.fgroup h3{font:700 10.5px/1 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink-3);margin:0 0 13px}
.fgroup ul{list-style:none;margin:0;padding:0}
.fgroup li{margin-bottom:8px}
.fgroup a{font:400 13.5px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-2);text-decoration:none}
.fgroup a:hover{color:var(--amber)}
.foot-legal{max-width:var(--max);margin:0 auto;padding:22px clamp(16px,4vw,36px) 44px;
  border-top:1px solid var(--rule);font:400 12.5px/1.65 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-2)}
.foot-legal p{margin:0 0 7px;max-width:96ch}
.foot-legal .muted{color:var(--ink-3);font-size:11.5px}

@media print{.site-head,.site-foot,.cta-band,.cta-inline,.side-cta,.toc{display:none!important}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.side-cta-alt{font:400 12.5px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-3);
  margin:13px 0 0;padding-top:12px;border-top:1px solid var(--rule)}
.side-cta-alt a{font-weight:700;color:var(--brand)}
.cta-inline-note a{color:var(--ink-2)}
.foot-cta .btn+.btn{margin-left:8px}
@media(max-width:520px){.foot-cta .btn{display:block;width:100%;text-align:center}.foot-cta .btn+.btn{margin:8px 0 0}}

.hero-img{margin:0 0 26px;border:1px solid var(--rule);overflow:hidden;background:var(--sunk)}
.hero-img img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover}
.diagram{margin:26px 0;border:1px solid var(--rule);background:var(--card);padding:0}
.diagram img{width:100%;height:auto;display:block}
.diagram figcaption{font:400 12.5px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif;color:var(--ink-3);
  padding:10px 14px;border-top:1px solid var(--rule);background:var(--sunk)}
@media (prefers-color-scheme:dark){.hero-img img,.diagram img{opacity:.92}}
