@font-face{font-family:'Readex Pro';src:url('/fonts/readex-pro.woff2') format('woff2');font-weight:300 700;font-display:swap}
@font-face{font-family:'Public Sans';src:url('/fonts/public-sans.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'Public Sans';src:url('/fonts/public-sans-italic.woff2') format('woff2');font-weight:100 900;font-style:italic;font-display:swap}

:root{
  --night:#0b1c2b; --ink:#0d2130; --paper:#f4f7f9; --card:#fff;
  --text:#22323f; --muted:#5d7183; --faint:#8ea0af;
  --rule:#dde5ea; --rule-soft:#eaf0f4;
  --gold:#b8901f; --gold-hi:#e0bb45; --gold-bg:#fbf3dc;
  --alarm:#a33025; --alarm-2:#c4574a; --alarm-bg:#fbeae7;
  --ok:#2f6f4f; --ok-bg:#e7f2ec;
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--text);
  font-family:'Public Sans',-apple-system,'Segoe UI',Arial,sans-serif;font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased}
.w{max-width:940px;margin:0 auto;padding:0 22px}
h1,h2,h3,h4{font-family:'Readex Pro','Public Sans',sans-serif;margin:0;letter-spacing:-.02em;text-wrap:balance;color:var(--ink)}
a{color:var(--gold)}

/* masthead */
.top{background:var(--night);color:#eef4f8;padding:26px 0 24px;border-bottom:4px solid var(--gold-hi)}
.brand{font-family:'Readex Pro',sans-serif;font-size:13px;font-weight:600;letter-spacing:.05em;color:#fff}
.brand .tld{color:var(--gold-hi)}
.top h1{color:#fff;font-size:clamp(23px,4.6vw,33px);line-height:1.12;margin:12px 0 0;font-weight:700}
.top .lede{color:#b9cbd8;margin:10px 0 0;font-size:15px;max-width:64ch}
.badge{display:inline-block;margin:14px 0 0;background:rgba(224,187,69,.14);border:1px solid rgba(224,187,69,.45);
  color:var(--gold-hi);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;
  padding:5px 10px;border-radius:999px}

/* sections */
section{padding:34px 0 0}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0 0 12px}
h2{font-size:clamp(19px,3.4vw,25px);line-height:1.2}
.sub{color:var(--muted);margin:10px 0 0;max-width:68ch;font-size:15.5px}

/* stat strip */
.strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:22px 0 0}
.strip div{background:var(--card);border:1px solid var(--rule);border-radius:11px;padding:13px 14px}
.strip b{display:block;font-family:'Readex Pro',sans-serif;font-size:21px;font-weight:700;color:var(--ink);
  font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1.1}
.strip span{display:block;margin-top:4px;font-size:11.5px;color:var(--muted);line-height:1.35}
@media(max-width:640px){.strip{grid-template-columns:1fr 1fr}}

/* case cards */
.cases{display:flex;flex-direction:column;gap:14px;margin:22px 0 0}
.case{background:var(--card);border:1px solid var(--rule);border-radius:14px;padding:20px 22px;
  border-left:5px solid var(--gold-hi)}
.case.primary{border-left-color:var(--alarm-2)}
.case .role{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--gold)}
.case.primary .role{color:var(--alarm)}
.case h3{font-size:20px;margin:7px 0 0;line-height:1.25}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:10px;margin:16px 0 0;
  border-top:1px solid var(--rule-soft);padding-top:14px}
.facts div b{display:block;font-family:'Readex Pro',sans-serif;font-size:17px;font-weight:700;color:var(--ink);
  font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.facts div span{display:block;font-size:11px;color:var(--faint);margin-top:2px;letter-spacing:.02em}
.case p{margin:14px 0 0;font-size:15px;color:var(--text)}
.case .dom{margin:12px 0 0;font-size:13.5px;color:var(--muted)}
.case .dom code{background:var(--rule-soft);padding:2px 7px;border-radius:5px;font-size:13px;color:var(--ink)}

/* workflow */
.steps{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}
.steps li{background:var(--card);border:1px solid var(--rule);border-radius:11px;padding:13px 16px;
  display:flex;gap:13px;align-items:flex-start;font-size:15px}
.steps .n{font-family:'Readex Pro',sans-serif;font-weight:700;font-size:13px;color:var(--faint);flex:0 0 20px;
  font-variant-numeric:tabular-nums;padding-top:2px}
.steps .b{flex:1}
.steps b{display:block;color:var(--ink);font-size:15px}
.steps small{display:block;color:var(--muted);font-size:13.5px;margin-top:3px;line-height:1.5}
.pill{flex:0 0 auto;font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  padding:4px 9px;border-radius:999px;white-space:nowrap;align-self:center}
.pill.go{background:var(--ok-bg);color:var(--ok)}
.pill.org{background:var(--gold-bg);color:var(--gold)}
.pill.hold{background:var(--alarm-bg);color:var(--alarm)}

.note{background:var(--gold-bg);border-radius:11px;padding:15px 18px;margin:20px 0 0;font-size:14.5px;color:var(--text)}
.note b{color:var(--ink)}
.btn{display:inline-block;margin:18px 0 0;background:var(--night);color:#fff;text-decoration:none;
  border-radius:999px;padding:12px 24px;font-size:13.5px;font-weight:700;letter-spacing:.03em}
.btn:hover{background:var(--gold);color:var(--night)}
footer{margin:44px 0 0;background:var(--night);color:rgba(238,244,248,.6);font-size:12.5px;padding:22px 0;line-height:1.6}
footer a{color:var(--gold-hi)}

/* rendered brief */
.doc{background:var(--card);border:1px solid var(--rule);border-radius:14px;padding:30px 32px;margin:22px 0 0}
.doc h1{font-size:27px;margin:0 0 6px}
.doc h2{font-size:21px;margin:30px 0 10px;padding-top:18px;border-top:1px solid var(--rule-soft)}
.doc h2:first-of-type{border-top:0;padding-top:0}
.doc h3{font-size:17px;margin:22px 0 8px;color:var(--gold)}
.doc h4{font-size:15px;margin:16px 0 6px}
.doc p{margin:11px 0 0;font-size:15.5px}
.doc ul,.doc ol{margin:11px 0 0;padding-left:22px;font-size:15.5px}
.doc li{margin:5px 0}
.doc hr{border:0;border-top:1px solid var(--rule);margin:24px 0}
.doc code{background:var(--rule-soft);padding:2px 6px;border-radius:4px;font-size:13.5px}
.doc strong{color:var(--ink)}
.doc em{color:var(--muted)}
.tw{overflow-x:auto;margin:14px 0 0}
.doc table{border-collapse:collapse;width:100%;font-size:14.5px;min-width:420px}
.doc th{text-align:left;background:var(--rule-soft);color:var(--ink);font-weight:700;font-size:12px;
  letter-spacing:.06em;text-transform:uppercase;padding:9px 12px;border-bottom:2px solid var(--rule)}
.doc td{padding:9px 12px;border-bottom:1px solid var(--rule-soft);vertical-align:top;
  font-variant-numeric:tabular-nums}
.doc blockquote{margin:14px 0 0;padding:2px 0 2px 16px;border-left:3px solid var(--gold-hi);color:var(--muted)}
