:root{--paper:#F5F2EB;--ink:#111315;--rule:#D6D1C4;--muted:#5D5A52;--acc:#1B3B2B;--sig:#B83A1B;
--serif:"Newsreader",Georgia,serif;--sans:"IBM Plex Sans",system-ui,sans-serif;--mono:"IBM Plex Mono",ui-monospace,monospace}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.55 var(--sans);font-feature-settings:"tnum" 1}
a{color:inherit}.mono{font-family:var(--mono);font-feature-settings:"tnum" 1,"zero" 1}.sig{color:var(--sig)}
:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
.skip{position:absolute;left:8px;top:-48px;background:var(--ink);color:var(--paper);padding:8px 12px;z-index:5;text-decoration:none}
.skip:focus{top:8px}
.nav a[aria-current="page"]{border-bottom-color:var(--ink)}
.archive-banner{background:#F3EDE2;border-bottom:1px solid var(--ink)}
.archive-banner p{margin:0;padding:12px 0;font-size:14.5px;line-height:1.45;max-width:70em}
.legal{max-width:760px;padding-top:28px;padding-bottom:72px}
.legal h1{font-size:42px;max-width:16em}
.legal h2{font-size:26px;margin:28px 0 8px}
.legal p,.legal li{font-size:16.5px;line-height:1.55}
.legal ul{padding-left:1.2em;margin:8px 0 0}
.legal a{color:var(--acc)}
.legal code{font-family:var(--mono);font-size:.92em}
.frame{max-width:1320px;margin:0 auto;padding:0 40px}

/* dateline + masthead */
.dateline{border-bottom:1px solid var(--ink);font:500 11px/1 var(--mono);letter-spacing:.06em}
.dl-in{display:flex;justify-content:space-between;gap:24px;padding-top:11px;padding-bottom:11px}
.dl-in span{white-space:nowrap}.dl-in b{font-weight:600}
.masthead{border-bottom:3px double var(--ink)}
.mh-in{display:flex;align-items:flex-end;justify-content:space-between;padding-top:18px;padding-bottom:14px}
.wordmark{font:500 52px/0.9 var(--serif);letter-spacing:-.025em;text-decoration:none}
.wordmark.small{font-size:26px}
.nav{display:flex;gap:28px;font:500 12px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;padding-bottom:6px}
.nav a{text-decoration:none;border-bottom:1px solid transparent;padding-bottom:3px}.nav a:hover{border-color:var(--ink)}

/* hero */
.hero{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:0;padding-top:0;padding-bottom:0}
.hero-copy{padding:44px 56px 40px 0;border-right:1px solid var(--ink)}
.kicker{font:600 12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--acc);margin:0 0 20px}
h1{font:500 58px/1.02 var(--serif);letter-spacing:-.022em;margin:0 0 22px;max-width:15.5em}
h1 em{font-style:italic;font-weight:400;color:var(--acc)}
.dek{font:400 18px/1.55 var(--sans);color:#2B2C2B;max-width:44em;margin:0 0 16px}
.edge{font:500 16.5px/1.5 var(--sans);color:var(--ink);max-width:44em;margin:0 0 28px;padding:12px 14px;border-left:3px solid var(--sig);background:#F3EDE2}
.edge b{font-weight:600}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:28px}
.btn{display:inline-block;background:var(--ink);color:var(--paper);font:600 14px/1 var(--sans);letter-spacing:.01em;padding:16px 22px;border:1px solid var(--ink);border-radius:0;text-decoration:none;cursor:pointer}
.btn:hover{background:var(--acc);border-color:var(--acc)}
.textlink{font:500 14px/1 var(--sans);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:3px}

.titleblock{border-left:0;display:flex;flex-direction:column}
.tb-head{font:600 11px/1 var(--mono);letter-spacing:.1em;padding:14px 0 12px 24px;border-bottom:1px solid var(--ink);margin-top:44px;border-top:1px solid var(--ink)}
.titleblock dl{margin:0}
.titleblock dl div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:11px 0 11px 24px;border-bottom:1px solid var(--rule)}
.titleblock dt{font:400 14px/1.3 var(--sans);color:var(--muted)}
.titleblock dd{margin:0;text-align:right}
.titleblock dd.big{font:500 30px/1 var(--serif)}
.titleblock dd.mono{font-size:12.5px;font-weight:500;letter-spacing:.03em}
.tb-foot{font-size:10.5px;letter-spacing:.06em;color:var(--muted);padding:12px 0 0 24px}

/* section heads */
.sec-head{display:flex;justify-content:space-between;align-items:baseline;gap:24px;border-top:3px solid var(--ink);padding-top:14px;margin-bottom:18px;flex-wrap:wrap}
h2{font:500 34px/1.1 var(--serif);letter-spacing:-.015em;margin:0}
.meta{font-size:11.5px;letter-spacing:.08em;color:var(--muted);margin:0}
.ledger-sec{padding-top:8px;padding-bottom:64px}
.ledger-sec .sec-head{border-top:1px solid var(--ink)}

/* ledger */
.ledger{width:100%;border-collapse:collapse;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.ledger col.c1{width:31%}.ledger col.c2{width:20%}.ledger col.c3{width:13%}.ledger col.c4{width:19%}.ledger col.c5{width:17%}
.ledger th{font:600 10.5px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;text-align:left;padding:10px 14px 10px 0;border-bottom:1px solid var(--ink);color:var(--muted)}
.ledger td{vertical-align:top;padding:16px 16px 10px 0}
.ledger td+td,.ledger th+th{padding-left:14px;border-left:1px solid var(--rule)}
.ledger .r{text-align:right}
.ledger span{display:block}
.sol{font-size:12px;font-weight:600;letter-spacing:.03em;color:var(--acc)}
.title{font:600 19px/1.22 var(--serif);margin:4px 0 4px}
.agency,.sub{font-size:13px;color:var(--muted);line-height:1.35}
.loc{font-weight:500;font-size:15px}
.naics{font-size:11.5px;margin-top:6px;letter-spacing:.02em}
.code{font-size:13px;font-weight:600;letter-spacing:.06em;display:inline-block!important;border:1px solid var(--ink);padding:2px 6px;margin-bottom:5px}
.mag{font-size:13px;font-weight:500}
.flags{margin-top:6px}
.flags span{font:500 11.5px/1.35 var(--mono);letter-spacing:.01em;padding-left:12px;position:relative}
.flags span:before{content:"";position:absolute;left:0;top:.55em;width:6px;height:1px;background:var(--ink)}
.flags span.sig:before{background:var(--sig)}
.due{font-size:14px;font-weight:600;letter-spacing:.03em}
.time{font-size:13px;margin-top:2px}
.left{font-size:11px;letter-spacing:.08em;color:var(--sig);margin-top:6px;font-weight:600}
.note td{padding:0 0 16px 0;border-bottom:1px solid var(--rule);font:400 15px/1.5 var(--sans);color:#2B2C2B}
.ledger tbody tr.note:last-child td{border-bottom:0}
.nl{display:inline!important;font:600 10.5px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--acc);margin-right:12px}
.note a{font:600 12px/1 var(--mono);letter-spacing:.04em;color:var(--acc);text-decoration:none;border-bottom:1px solid var(--acc);margin-left:8px;white-space:nowrap}
.foot-note{font-size:13px;color:var(--muted);margin:14px 0 0;max-width:70em}

/* cut */
.cut-sec{padding-bottom:64px}
.audit{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.audit li{padding:18px 16px 18px 16px;border-left:1px solid var(--rule);position:relative}
.audit li:first-child{border-left:0;padding-left:0}
.audit .n{display:block;font:500 44px/1 var(--mono);letter-spacing:-.03em;margin-bottom:10px}
.audit .l{font-size:13.5px;line-height:1.35;color:#2B2C2B;display:block}
.audit li.res{background:var(--ink);color:var(--paper);border-left-color:var(--ink)}
.audit li.res .l{color:#D9D5CB}
.audit li.res.sig .n{color:#F08A6C}
.cuts{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--ink);margin-top:28px;border-top:1px solid var(--ink)}
.cutcase{padding:20px 32px 24px 0}
.cutcase+.cutcase{padding-left:32px;padding-right:0;border-left:1px solid var(--ink)}
.tag{font-size:11px;letter-spacing:.1em;font-weight:600;margin:0 0 10px}
.cutcase h3{font:500 25px/1.15 var(--serif);margin:0 0 8px;text-decoration:line-through;text-decoration-color:var(--sig);text-decoration-thickness:1.5px}
.ref{font-size:11px;letter-spacing:.06em;color:var(--muted);margin:0 0 12px}
.cutcase p:last-child{margin:0;font-size:15px;color:#2B2C2B}

/* rates */
.rates-sec{padding-bottom:64px}
.rates{width:100%;border-collapse:collapse;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.rates th{font:600 10.5px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;text-align:left;color:var(--muted);padding:10px 20px 10px 0;border-bottom:1px solid var(--ink)}
.rates td{padding:22px 20px 22px 0;border-bottom:1px solid var(--rule);vertical-align:top;font-size:15px}
.rates tr:last-child td{border-bottom:0}
.rates .r{text-align:right}
.rates th:nth-child(1){width:16%}.rates th:nth-child(2){width:10%}.rates th:nth-child(3){width:14%}.rates th:nth-child(4){width:18%}.rates th:nth-child(6){width:16%}
.rates td:nth-child(5){color:#2B2C2B}
.rates td.act{padding-right:0}
.plan-act{display:inline-block;background:var(--ink);color:var(--paper);font:600 12px/1.2 var(--mono);letter-spacing:.03em;text-decoration:none;padding:12px 12px}
.plan-act:hover{background:var(--sig)}
.plan-closed{display:inline-block;max-width:16em;font:500 13px/1.4 var(--sans);color:var(--muted)}
a.plan-act.free{background:transparent;color:var(--ink);padding:0 0 3px;border-bottom:1px solid var(--ink);letter-spacing:.01em}
a.plan-act.free:hover{background:transparent;color:var(--acc);border-color:var(--acc)}
.paid-banner{background:var(--ink);color:var(--paper);padding:16px 18px;margin:0 0 22px;font:400 15px/1.45 var(--sans)}
.paid-banner[hidden]{display:none}
.paid-banner b{display:block;font:500 26px/1.15 var(--serif);margin:0 0 6px}
.paid-banner a{color:var(--paper);border-bottom:1px solid var(--paper);text-decoration:none}
.plan{font:500 24px/1.1 var(--serif)}
.rates td.price{font-size:30px;font-weight:500;letter-spacing:-.02em;white-space:nowrap}
.price small{font-size:13px;color:var(--muted);margin-left:2px}
.rates th:nth-child(2),.rates td:nth-child(2){padding-right:36px}
.terms{font:italic 400 19px/1.4 var(--serif);margin:18px 0 0}
.trust{list-style:none;padding:0;margin:18px 0 0;max-width:46em}
.trust li{position:relative;padding:0 0 7px 1.15em;font:400 14.5px/1.45 var(--sans);color:var(--ink)}
.trust li:before{content:"·";position:absolute;left:0;color:var(--acc);font-weight:600}

/* desk + qa */
.desk-qa{display:grid;grid-template-columns:1fr 1fr;padding-bottom:72px}
.desk,.qa{border-top:3px solid var(--ink)}
.desk{padding:22px 48px 0 0;border-right:1px solid var(--ink)}
.qa{padding:22px 0 0 48px}
.lede{color:#2B2C2B;margin:10px 0 22px}
.form label{display:block;margin-bottom:16px}
.form label>span,.form legend{display:block;font:600 10.5px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.form input[type=email],.form select{width:100%;font:400 16px/1.2 var(--sans);color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--ink);border-radius:0;padding:10px 0;appearance:none;-webkit-appearance:none}
.form select{background:linear-gradient(45deg,transparent 50%,var(--ink) 50%) right 6px center/6px 6px no-repeat}
.two{display:grid;grid-template-columns:1fr 1fr;gap:24px}
fieldset{border:0;padding:0;margin:4px 0 22px}
.chk{display:inline-flex!important;align-items:center;gap:7px;margin:0 22px 0 0!important;font-size:14px}
.chk input{width:14px;height:14px;accent-color:var(--ink);margin:0}
.formnote{font-size:12.5px;color:var(--muted);margin:10px 0 0}
.formnote.err{color:var(--sig)}
.formnote.ok{color:var(--ink)}
.formnote a{color:var(--acc);font-weight:600;text-decoration:none;border-bottom:1px solid var(--acc)}
.form label.consent{display:flex;align-items:flex-start;gap:10px;margin:0 0 16px}
.form label.consent>span{display:block;margin:0;font:400 14.5px/1.45 var(--sans);letter-spacing:0;text-transform:none;color:var(--ink)}
.form label.consent input{width:18px;height:18px;margin-top:3px;flex:none;accent-color:var(--ink)}
button.btn{font-family:var(--sans)}
button.btn:disabled{opacity:.55;cursor:wait}
.form label.hp,.form label.hp input{position:absolute;left:-9999px;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);border:0;white-space:nowrap}
.qa dl{margin:14px 0 0}
.qa dt{font:600 19px/1.25 var(--serif);margin:0 0 4px;padding-top:14px;border-top:1px solid var(--rule)}
.qa dt:first-child{border-top:0;padding-top:4px}
.qa dd{margin:0 0 14px;color:#2B2C2B;font-size:15px}

/* footer */
.footer{border-top:1px solid var(--ink);background:var(--ink);color:var(--paper)}
.ft-in{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 28px;padding-top:22px;padding-bottom:26px}
.ft-in .mono{font-size:10.5px;letter-spacing:.07em;color:#CFCAC0}

/* responsive */
@media (max-width:1100px){
  .dl-in .dl-mid:nth-of-type(3){display:none}
  .hero{grid-template-columns:1fr}
  .hero-copy{border-right:0;padding-right:0}
  .tb-head,.titleblock dl div,.tb-foot{padding-left:0}
  .tb-head{margin-top:0}
  .audit{grid-template-columns:repeat(3,1fr)}
  .audit li:nth-child(4){border-left:0;padding-left:0}
  .audit li:nth-child(n+4){border-top:1px solid var(--rule)}
}
@media (max-width:760px){
  .frame{padding:0 20px}
  .dl-in{flex-wrap:wrap;gap:6px 14px;font-size:10px}
  .dl-in .dl-mid{display:none}
  .mh-in{flex-direction:column;align-items:flex-start;gap:14px;padding-top:22px}
  .dl-in{padding-top:10px;padding-bottom:10px}
  .rates td.price{font-size:24px}
  .ledger-sec,.cut-sec,.rates-sec{padding-bottom:48px}
  .ft-in{padding-top:26px;padding-bottom:30px;gap:12px}
  .wordmark{font-size:40px}
  .nav{gap:16px;font-size:11px;flex-wrap:wrap}
  .hero-copy{padding:30px 0 30px}
  h1{font-size:37px;line-height:1.05}
  .dek{font-size:16.5px}
  .actions{gap:18px}
  .titleblock{padding-bottom:28px}
  h2{font-size:28px}
  .ledger,.ledger tbody,.ledger tr,.ledger td{display:block;width:100%}
  .ledger thead,.ledger colgroup{display:none}
  .ledger tr.row{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ink);padding-top:14px}
  .ledger tr.row td{padding:0 0 12px 0;border-left:0!important}
  .ledger tr.row td:first-child{grid-column:1/-1}
  .ledger tr.row td:nth-child(2){grid-column:1/-1}
  .ledger tr.row td.r{text-align:left}
  .ledger td+td{padding-left:0}
  .note td{padding-bottom:18px}
  .audit{grid-template-columns:1fr 1fr}
  .audit li{padding:16px 12px}
  .audit li:nth-child(odd){border-left:0;padding-left:0}
  .audit li:nth-child(n+3){border-top:1px solid var(--rule)}
  .audit li:nth-child(4){border-left:1px solid var(--rule);padding-left:12px}
  .audit li.res{padding-left:12px!important}
  .audit li:before{display:none}
  .audit .n{font-size:36px}
  .cuts{grid-template-columns:1fr}
  .cutcase,.cutcase+.cutcase{padding:20px 0;border-left:0}
  .cutcase+.cutcase{border-top:1px solid var(--ink)}
  .rates thead{display:none}
  .rates,.rates tbody,.rates tr,.rates td{display:block;width:100%}
  .rates tr{display:grid;grid-template-columns:1fr auto;border-bottom:1px solid var(--rule);padding:18px 0}
  .rates tr:last-child{border-bottom:0}
  .rates td{border:0;padding:0 0 6px 0;font-size:14.5px}
  .rates td:nth-child(n+3){grid-column:1/-1}
  .rates td:nth-child(2){padding-right:0}
  .rates td:nth-child(3){font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:4px}
  .rates td:nth-child(4){font-weight:500}
  .rates td.act .plan-act{display:block;text-align:center;margin-top:8px}
  .rates td.act a.plan-act.free{display:inline-block}
  .desk-qa{grid-template-columns:1fr}
  .desk{padding-right:0;border-right:0;padding-bottom:32px;border-bottom:1px solid var(--ink)}
  .qa{padding-left:0}
  .two{grid-template-columns:1fr;gap:0}
  .legal h1{font-size:32px}
}
