:root{--bg:#f7f8f4;--surface:#fff;--surface-alt:#eef2e8;--text:#16201b;--muted:#66736c;--border:#d9ded6;--accent:#23614b;--accent-dark:#164433;--gold:#b88a2d;--shadow:0 20px 60px #16201b14}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}a{color:inherit}.site-header{z-index:10;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f7f8f4eb;justify-content:space-between;align-items:center;gap:24px;padding:18px clamp(20px,5vw,72px);display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-mark{background:var(--text);width:42px;height:42px;color:var(--surface);letter-spacing:0;border-radius:8px;place-items:center;font-weight:800;display:grid}.brand strong,.brand small{display:block}.brand small{color:var(--muted);font-size:13px}.site-nav{color:var(--muted);gap:18px;font-size:15px;display:flex}.site-nav a,.github-link,.button,.metric-link{text-decoration:none}.github-link{color:var(--accent);align-items:center;gap:8px;font-weight:700;display:inline-flex}.footer-links a{align-items:center;gap:8px;display:inline-flex}.hero{grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);align-items:center;gap:clamp(28px,5vw,72px);padding:clamp(64px,10vw,128px) clamp(20px,5vw,72px) 56px;display:grid}.hero h1,.page-heading h1{letter-spacing:0;max-width:980px;margin:0;font-size:clamp(44px,7vw,86px);line-height:.98}.hero p,.page-heading p{max-width:720px;color:var(--muted);font-size:clamp(18px,2vw,22px)}.hero-actions,.feature-band{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.button{border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 18px;font-weight:750;display:inline-flex}.button.primary{background:var(--accent);color:#fff}.button.secondary{border:1px solid var(--border);background:var(--surface)}.hero-panel{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;gap:18px;padding:28px;display:grid}.hero-panel div,.hero-panel .metric-link{border-bottom:1px solid var(--border);padding-bottom:18px}.hero-panel div:last-child,.hero-panel .metric-link:last-child{border-bottom:0;padding-bottom:0}.metric{font-size:46px;font-weight:850;display:block}.metric-label{color:var(--muted)}.metric-link{color:inherit;display:block}.metric-link:hover .metric,.metric-link:focus-visible .metric{color:var(--accent)}.mit-badge{color:#7a5417;letter-spacing:.04em;background:#fff8df;border:1px solid #b88a2d80;border-radius:6px;align-items:center;min-height:28px;margin-bottom:8px;padding:0 10px;font-size:13px;font-weight:850;display:inline-flex}.section-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:24px clamp(20px,5vw,72px) 72px;display:grid}.section-grid article,.prose-card,.table-card,.note-box,.steps article{border:1px solid var(--border);background:var(--surface);border-radius:8px;box-shadow:0 12px 36px #16201b0a}.section-grid article{padding:24px}.section-grid h2,.prose-card h2{margin-top:0}.section-grid p,.prose-card p{color:var(--muted)}.section-grid.compact{padding-inline:0}.feature-band{background:var(--text);color:#fff;border-radius:8px;justify-content:space-between;margin:0 clamp(20px,5vw,72px) 72px;padding:32px}.feature-band p{color:#ffffffbd;max-width:740px}.feature-band .button.primary{color:var(--text);background:#fff}.page-shell{padding:56px clamp(20px,5vw,72px) 80px}.page-shell.narrow{max-width:980px;margin:0 auto}.page-heading{margin-bottom:32px}.table-card{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:18px}th{color:var(--muted);text-transform:uppercase;font-size:13px}td span,td small{color:var(--muted);margin-top:4px;display:block}td a{color:var(--accent);font-weight:700}.note-box{color:var(--muted);margin-top:18px;padding:22px}.note-box.strong{background:var(--surface-alt);color:var(--text)}.steps{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:32px;display:grid}.steps article{padding:18px}.steps span{color:var(--gold);font-weight:850}.steps h2{margin:8px 0 0;font-size:16px}.prose-card{padding:32px}.site-footer{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;gap:18px;padding:28px clamp(20px,5vw,72px);display:flex}.site-footer a{color:var(--accent);font-weight:700}.footer-links{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.act-meta-grid dl{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin:0 0 28px;display:grid}.act-meta-grid dt{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:4px;font-size:.75rem}.act-meta-grid dd{margin:0;font-weight:600}.act-actions{flex-wrap:wrap;gap:12px;margin-bottom:28px;display:flex}.canonical-citation{color:var(--muted);margin:0;font-size:1.1rem;font-weight:600}.status-badge{border-radius:99px;padding:2px 10px;font-size:.8rem;font-weight:700;display:inline-block}.status-active{color:#065f46;background:#d1fae5}.status-repealed{color:#991b1b;background:#fee2e2}.status-partially_repealed{color:#92400e;background:#fef3c7}.status-unknown{background:var(--border);color:var(--muted)}.tag-list{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.tag{background:var(--border);color:var(--muted);border-radius:99px;padding:3px 10px;font-size:.78rem}.search-container{margin-bottom:32px}.breadcrumb{color:var(--muted);margin-bottom:24px;font-size:.88rem}.breadcrumb a{color:var(--accent)}.provenance-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.provenance-header h2{margin:0}.provenance-log{background:var(--border);white-space:pre-wrap;word-break:break-word;color:var(--text);border-radius:8px;padding:20px;font-size:.82rem;line-height:1.6;overflow-x:auto}@media (max-width:900px){.site-header{flex-direction:column;align-items:flex-start}.site-nav{flex-wrap:wrap}.hero{grid-template-columns:1fr;padding-top:44px}.section-grid,.steps{grid-template-columns:1fr}.feature-band,.site-footer{flex-direction:column;align-items:flex-start}}
