/* css/laws-page.css — v124. Extracted verbatim from the 123 laws/ pages
 * (all shared this exact block). Linked from each page in place of the inline
 * <style>; rendered result is byte-identical. Content hash: f8b81ef470. */

:root{--bg:#05050a;--ink:#f0f0f8;--ink2:#a8abbe;--muted:#5a5e70;--v:#7c3aed;--v2:#a855f7;--line:rgba(255,255,255,.08)}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--ink);font-family:'DM Sans',-apple-system,sans-serif;font-weight:300;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:var(--v2);text-decoration:none}a:hover{text-decoration:underline}
nav{height:58px;display:flex;align-items:center;gap:24px;padding:0 28px;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(5,5,10,.85);backdrop-filter:blur(14px);z-index:50}
nav .logo{font-family:'Fraunces',Georgia,serif;font-size:18px;color:var(--ink);display:flex;align-items:center;gap:8px}
nav .logo:hover{text-decoration:none}
nav img{width:24px;height:24px;border-radius:6px}
nav .links{margin-left:auto;display:flex;gap:20px;font-size:13px}
nav .links a{color:var(--ink2)}nav .links a:hover{color:var(--ink);text-decoration:none}
.wrap{max-width:760px;margin:0 auto;padding:48px 24px 80px}
.crumbs{font-size:12px;color:var(--muted);margin-bottom:26px}
.crumbs a{color:var(--muted)}.crumbs a:hover{color:var(--ink2)}
.eyebrow{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--v2);margin-bottom:14px}
h1{font-family:'Fraunces',Georgia,serif;font-weight:200;font-size:clamp(30px,5vw,44px);line-height:1.15;margin-bottom:18px}
.lede{font-size:16px;color:var(--ink2);margin-bottom:36px}
h2{font-family:'Fraunces',Georgia,serif;font-weight:300;font-size:24px;margin:44px 0 16px}
p{color:var(--ink2);font-size:14.5px;margin-bottom:14px}
.cite{border:1px solid rgba(124,58,237,.35);border-radius:16px;background:linear-gradient(160deg,rgba(124,58,237,.08),rgba(255,255,255,.015));padding:24px;margin:8px 0 10px}
.cite .tag{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.16em;color:#16c784;border:1px solid rgba(22,199,132,.35);border-radius:5px;padding:2px 8px;display:inline-block;margin-bottom:12px}
.cite .name{font-family:'JetBrains Mono',monospace;font-size:15px;color:var(--ink);margin-bottom:8px}
.cite p{font-size:14px;margin-bottom:12px}
.cite a{font-size:13px;font-weight:500}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0}
@media(max-width:620px){.grid{grid-template-columns:1fr}}
.cell{border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:rgba(255,255,255,.015)}
.cell b{display:block;font-weight:600;color:var(--ink);font-size:13.5px;margin-bottom:5px}
.cell span{font-size:13px;color:var(--ink2)}
ol.steps{margin:6px 0 6px 20px}
ol.steps li{color:var(--ink2);font-size:14.5px;margin-bottom:10px;padding-left:6px}
details{border:1px solid var(--line);border-radius:12px;margin-bottom:10px;background:rgba(255,255,255,.015)}
summary{cursor:pointer;padding:15px 18px;font-size:14px;font-weight:500;color:var(--ink);list-style:none;display:flex;justify-content:space-between;align-items:center}
summary::after{content:'+';color:var(--muted);font-size:18px}
details[open] summary::after{content:'–'}
details p{padding:0 18px 15px;font-size:13.5px}
.cta{border:1px solid rgba(124,58,237,.35);border-radius:16px;padding:26px;margin-top:46px;background:linear-gradient(160deg,rgba(124,58,237,.09),transparent)}
.cta h3{font-family:'Fraunces',Georgia,serif;font-weight:300;font-size:20px;margin-bottom:8px}
.cta p{font-size:13.5px;margin-bottom:16px}
.cta .btn{display:inline-block;background:var(--v);color:#fff;font-size:13.5px;font-weight:600;padding:11px 22px;border-radius:9px}
.cta .btn:hover{background:#6d28d9;text-decoration:none}
.rel{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.rel a{border:1px solid var(--line);border-radius:999px;padding:7px 15px;font-size:12.5px;color:var(--ink2)}
.rel a:hover{border-color:rgba(124,58,237,.5);color:var(--ink);text-decoration:none}
.hub-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:8px}
@media(max-width:620px){.hub-grid{grid-template-columns:1fr}}
.hub-card{border:1px solid var(--line);border-radius:14px;padding:20px;background:rgba(255,255,255,.015);transition:.15s;display:block;color:var(--ink)}
.hub-card:hover{border-color:rgba(124,58,237,.5);text-decoration:none;transform:translateY(-2px)}
.hub-card .hc-ico{font-size:22px;margin-bottom:8px}
.hub-card b{display:block;font-weight:600;font-size:14.5px;margin-bottom:4px}
.hub-card span{font-size:12.5px;color:var(--muted)}
.disclaimer{font-size:11.5px;color:var(--muted);margin-top:40px;padding-top:20px;border-top:1px solid var(--line);line-height:1.7}
.lcap{margin:34px 0 8px;border:1px solid rgba(124,58,237,.35);border-radius:14px;padding:22px 24px;background:linear-gradient(160deg,rgba(124,58,237,.08),transparent)}.lcap h3{margin:0 0 6px;font-size:16px;color:#f0f0f8;font-family:'Fraunces',Georgia,serif}.lcap p{margin:0 0 14px;font-size:12.5px;color:#a8abbe;line-height:1.6}.lcap form{display:flex;gap:8px;flex-wrap:wrap}.lcap input[type=email]{flex:1;min-width:200px;background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.12);border-radius:9px;padding:11px 14px;color:#f0f0f8;font-size:13px;outline:none;font-family:inherit}.lcap input[type=email]:focus{border-color:rgba(124,58,237,.6)}.lcap input[name=website]{position:absolute;left:-9999px}.lcap button{background:#7c3aed;color:#fff;border:none;border-radius:9px;padding:11px 20px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit}.lcap button:hover{background:#6d28d9}.lcap .lcap-done{color:#16c784;font-size:13px}.lcap .lcap-note{font-size:10px;color:#5a5e70;margin-top:8px}
footer{border-top:1px solid var(--line);padding:26px;text-align:center;font-size:12px;color:var(--muted)}
footer a{color:var(--muted);margin:0 10px}
