:root{
  --paper:#F3F1EA;--card:#FFFFFF;--ink:#15171A;--muted:#5A5F58;--faint:#8A8E86;--rule:#D9D6CB;--rule-soft:#E7E4DA;
  --signal:#C8401F;--signal-bg:#FBE9E2;--green:#2F6B3F;--amber:#8A5A00;--amber-bg:#F6ECD6;--chip:#ECEAE2;
  --serif:'Source Serif 4',Georgia,serif;--sans:'IBM Plex Sans',-apple-system,'Segoe UI',Helvetica,Arial,sans-serif;--mono:'IBM Plex Mono',ui-monospace,Menlo,Consolas,monospace;
  color-scheme:light;
}
*{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);-webkit-font-smoothing:antialiased}
a{color:var(--ink);text-decoration-color:var(--faint);text-underline-offset:2px}
a:hover{color:var(--signal)}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.mono{font-family:var(--mono)}
.kicker{font:600 12px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:12px;background:#fff;padding:8px 12px;z-index:9}

/* header */
.top{border-bottom:3px solid var(--ink);background:var(--paper)}
.top .wrap{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding-top:16px;padding-bottom:14px}
.brand{font:800 21px/1 var(--sans);letter-spacing:-.01em;text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:10px}
.brand svg{flex:none}
.nav{display:flex;gap:4px;flex-wrap:wrap;margin-left:auto}
.nav a{text-decoration:none;font:500 14px/1 var(--sans);padding:10px 12px;border-radius:6px}
.nav a:hover{background:var(--rule-soft);color:var(--ink)}
.nav a.cta{background:var(--ink);color:#fff}
.nav a.cta:hover{background:#30343a}

/* hero */
.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:48px;padding:56px 0 40px;align-items:start}
.hero h1{font:600 clamp(36px,5.2vw,62px)/1.02 var(--serif);letter-spacing:-.02em;margin:14px 0 18px}
.hero h1 em{font-style:italic;color:var(--signal)}
.lede{font-size:19px;line-height:1.5;color:var(--muted);max-width:560px;margin:0 0 26px}
.btns{display:flex;gap:10px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:8px;background:var(--ink);color:#fff;font:600 16px/1 var(--sans);text-decoration:none;border:0;cursor:pointer}
.btn:hover{background:#30343a;color:#fff}
.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--ink)}
.btn.ghost:hover{background:var(--ink);color:#fff}
.stats{display:grid;grid-template-columns:repeat(3,1fr);border:1.5px solid var(--ink);background:var(--card);margin-top:34px}
.stats div{padding:14px 16px;border-right:1px solid var(--rule)}
.stats div:last-child{border-right:0}
.stats b{display:block;font:600 32px/1 var(--serif)}
.stats span{font-size:13px;color:var(--muted)}

/* docket card (hero right) */
.docket{background:var(--card);border:1.5px solid var(--ink);box-shadow:6px 6px 0 var(--ink)}
.docket header{display:flex;justify-content:space-between;align-items:baseline;padding:12px 16px;border-bottom:1.5px solid var(--ink);background:var(--ink);color:#fff}
.docket header .kicker{color:#fff}
.docket ol{list-style:none;margin:0;padding:0}
.docket li{padding:14px 16px;border-bottom:1px solid var(--rule)}
.docket li:last-child{border-bottom:0}
.docket .when{font:600 12px/1.4 var(--mono);color:var(--signal);text-transform:uppercase;letter-spacing:.03em}
.docket .what{font:600 17px/1.3 var(--serif);margin:3px 0 4px}
.docket .meta{font-size:13px;color:var(--muted)}
.docket footer{padding:12px 16px;border-top:1.5px solid var(--ink);font-size:14px}

/* sections */
section{padding:56px 0;border-top:1px solid var(--rule)}
section h2{font:600 clamp(28px,3.4vw,40px)/1.1 var(--serif);letter-spacing:-.015em;margin:8px 0 14px}
section .sub{color:var(--muted);max-width:640px;margin:0 0 28px;font-size:17px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.feature{background:var(--card);border:1px solid var(--rule);padding:20px}
.feature h3{font:600 19px/1.25 var(--serif);margin:10px 0 6px}
.feature p{margin:0;color:var(--muted);font-size:15px}
.feature .n{font:600 13px/1 var(--mono);color:var(--signal)}

/* example entry */
.entry{background:var(--card);border:1px solid var(--rule);padding:22px;max-width:760px}
.entry .when{font:700 12px/1.4 var(--sans);color:var(--signal);text-transform:uppercase;letter-spacing:.03em}
.entry h3{font:600 23px/1.25 var(--serif);margin:6px 0 6px}
.entry .facts{font-size:13px;color:var(--muted)}
.entry .facts b{color:var(--ink)}
.entry .case{font:600 13px var(--mono);color:var(--ink)}
.entry p{margin:10px 0 0}
.rep{margin-top:14px;border-left:3px solid var(--ink);background:var(--paper);padding:12px 14px;font-size:15px}
.rep .rec{font-weight:700;color:var(--green);margin-top:4px}
.rep ul{margin:6px 0 0;padding-left:18px}
.rep li{margin-bottom:4px}

/* coverage */
table.cov{width:100%;border-collapse:collapse;background:var(--card);border:1.5px solid var(--ink)}
.cov th,.cov td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--rule);vertical-align:top;font-size:15px}
.cov th{font:600 12px/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--paper)}
.cov td:first-child{font-weight:600;white-space:nowrap}
.cov .soon{color:var(--faint)}
.cov .num{font-family:var(--mono);font-size:14px}
.pill{display:inline-block;padding:2px 8px;border-radius:99px;font:600 12px/18px var(--sans);background:var(--chip)}
.pill.live{background:#E3EFE2;color:var(--green)}
.pill.soon{background:var(--amber-bg);color:var(--amber)}

/* who */
.who{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1.5px solid var(--ink);background:var(--card)}
.who div{padding:18px;border-right:1px solid var(--rule)}
.who div:last-child{border-right:0}
.who h3{font:600 17px/1.3 var(--serif);margin:0 0 6px}
.who p{margin:0;font-size:14px;color:var(--muted)}

/* pricing */
.price{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}
.plan{background:var(--card);border:1.5px solid var(--ink);padding:26px;box-shadow:6px 6px 0 var(--signal)}
.plan .amt{font:600 56px/1 var(--serif);letter-spacing:-.02em}
.plan .amt small{font:400 17px var(--sans);color:var(--muted);letter-spacing:0}
.plan ul{padding-left:18px;margin:16px 0 20px}
.plan li{margin-bottom:6px}
.offer{display:inline-block;background:var(--signal);color:#fff;font:700 12px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;padding:7px 10px;margin-bottom:14px}

/* form */
form.req{background:var(--card);border:1.5px solid var(--ink);padding:24px;display:grid;gap:14px}
.req label{display:grid;gap:6px;font-weight:600;font-size:14px}
.req input,.req select,.req textarea{font:400 16px var(--sans);padding:12px 12px;border:1.5px solid var(--ink);border-radius:6px;background:#fff;color:var(--ink);width:100%}
.req textarea{min-height:76px;resize:vertical}
.req .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.req .hp{position:absolute;left:-9999px}
.req .msg{margin:0;font-size:14px;min-height:1.3em}
.req .msg.ok{color:var(--green);font-weight:600}
.req .msg.err{color:var(--signal);font-weight:600}
.checks{display:flex;flex-wrap:wrap;gap:8px}
.checks label{display:inline-flex;align-items:center;gap:6px;font-weight:500;border:1px solid var(--rule);padding:6px 10px;border-radius:99px;background:var(--paper);cursor:pointer}
.checks input{width:auto;margin:0}

/* jurisdiction pages */
.page-h{padding:40px 0 10px}
.page-h h1{font:600 clamp(32px,4.4vw,50px)/1.05 var(--serif);letter-spacing:-.02em;margin:10px 0 10px}
.list{border-top:2px solid var(--ink)}
.li{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;padding:18px 0;border-bottom:1px solid var(--rule)}
.li .d{font:600 13px/1.4 var(--mono);color:var(--signal);text-transform:uppercase}
.li .d span{display:block;color:var(--muted);font-weight:500;text-transform:none}
.li h3{font:600 20px/1.3 var(--serif);margin:0 0 4px}
.li .facts{font-size:13px;color:var(--muted)}
.li .facts .case{font:600 13px var(--mono);color:var(--ink)}
.li p{margin:8px 0 0}
.li .src{font-size:13px;margin-top:8px;color:var(--muted)}
.chip{display:inline-block;padding:2px 8px;margin:6px 4px 0 0;border-radius:3px;background:var(--chip);font:600 12px/18px var(--sans)}
.chip.status{background:var(--amber-bg);color:var(--amber)}
.cta-band{margin:40px 0 0;background:var(--ink);color:#fff;padding:26px;display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.cta-band p{margin:0;font:600 20px/1.3 var(--serif)}
.cta-band .btn{background:var(--signal)}
.empty{padding:26px 0;color:var(--muted)}

/* digest web wrapper */
.webbar{background:var(--ink);color:#fff;font:500 14px/1.4 var(--sans)}
.webbar .wrap{display:flex;gap:16px;align-items:center;justify-content:space-between;padding-top:10px;padding-bottom:10px;flex-wrap:wrap}
.webbar a{color:#fff}

footer.site{border-top:3px solid var(--ink);margin-top:56px;padding:26px 0 40px;font-size:14px;color:var(--muted)}
footer.site .wrap{display:flex;gap:20px;justify-content:space-between;flex-wrap:wrap}

@media (max-width:900px){
  .hero{grid-template-columns:1fr;gap:34px;padding-top:36px}
  .grid3,.price{grid-template-columns:1fr}
  .who{grid-template-columns:1fr 1fr}
  .who div:nth-child(2){border-right:0}
  .who div:nth-child(-n+2){border-bottom:1px solid var(--rule)}
}
@media (max-width:560px){
  .wrap{padding:0 16px}
  .nav{margin-left:0;width:100%}
  .nav a{padding:9px 10px}
  .stats{grid-template-columns:1fr}
  .stats div{border-right:0;border-bottom:1px solid var(--rule)}
  .stats div:last-child{border-bottom:0}
  .who{grid-template-columns:1fr}
  .who div{border-right:0;border-bottom:1px solid var(--rule)}
  .req .row{grid-template-columns:1fr}
  .li{grid-template-columns:1fr;gap:6px}
  .cov th:nth-child(3),.cov td:nth-child(3){display:none}
  .docket{box-shadow:4px 4px 0 var(--ink)}
}
