body{--accent:#18775a}
.hero{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.hero h1{font-size:clamp(2.5rem,7vw,6.8rem);line-height:.91;overflow-wrap:anywhere}
.hero>*{min-width:0}
.quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:2px solid var(--ink);border-left:2px solid var(--ink);margin-top:20px}
.quick>div{padding:14px;background:var(--white);border-right:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.quick small{display:block;font:700 10px 'Courier New',monospace;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.quick strong{line-height:1.5}
.app-link,.text-link{text-decoration:underline;text-underline-offset:3px}
.app-link:hover,.text-link:hover{color:var(--accent)}
.jump-links{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.jump-links a{border:1px solid var(--ink);padding:9px 12px;font-size:.88rem;font-weight:700}
.jump-links a:hover{background:var(--ink);color:var(--paper)}
.section{padding:32px 0;border-bottom:2px solid var(--ink)}
.section-title{display:flex;gap:14px;align-items:baseline;margin-bottom:18px}
.section-title .n{font:900 1rem 'Courier New',monospace;color:var(--accent)}
.section-title h2{font-size:clamp(1.8rem,4.5vw,3.5rem);line-height:1;letter-spacing:-.05em;margin:0;text-transform:uppercase}
.lead{font-size:1.08rem;line-height:1.65;max-width:950px}
.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:2px solid var(--ink);border-left:2px solid var(--ink)}
.card{padding:20px;background:var(--white);border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);min-width:0}
.card h3{font-size:1.5rem;letter-spacing:-.035em;margin:8px 0}
.card p,.card li{line-height:1.55;color:#403b35}
.card ol,.card ul{padding-left:22px}
.card li+li{margin-top:7px}
.card.accent{background:#e0efe8}
.statement{padding:24px;background:var(--ink);color:var(--paper);font-size:clamp(1.35rem,3vw,2rem);line-height:1.35;font-weight:700;margin:20px 0}
.note{background:#e0efe8;border-left:7px solid var(--accent);padding:16px 18px;line-height:1.6;margin:18px 0}
.note.caution{background:#fff1d7;border-left-color:#b85018}
.table-wrap{overflow-x:auto;max-width:100%;margin:18px 0;border:1px solid var(--ink)}
table{width:100%;border-collapse:collapse;background:var(--white);font-size:.95rem}
caption{padding:12px;text-align:left;font-weight:700;background:#e0efe8}
th,td{padding:12px;text-align:left;vertical-align:top;line-height:1.5;border:1px solid #b4aea4;overflow-wrap:anywhere}
thead th{background:var(--ink);color:var(--paper);font:700 11px 'Courier New',monospace;text-transform:uppercase;letter-spacing:.04em}
tbody th{font-weight:700}
code{font-family:'Courier New',monospace;background:#e9e4d9;padding:2px 4px;overflow-wrap:anywhere}
.practice{padding:20px;border:2px solid var(--ink);background:var(--white);margin:18px 0}
.practice h3{font-size:1.35rem;margin:8px 0}
.practice p,.practice li{line-height:1.6}
details{border-top:1px solid #b4aea4;margin-top:15px;padding-top:12px}
summary{cursor:pointer;font-weight:700;line-height:1.5;padding:6px 0}
details[open] summary{color:var(--accent)}
.sources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.source{padding:16px;border:1px solid var(--ink);line-height:1.55;background:var(--white)}
.source p{margin-bottom:0;color:#403b35}
.foot{border-top:0}
@media(max-width:900px){.hero{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){.quick,.cards,.sources{grid-template-columns:minmax(0,1fr)}.section-title{gap:9px}.card,.practice{padding:16px}.hero h1{font-size:clamp(2.5rem,10.5vw,4.5rem)}th,td{padding:9px;font-size:.85rem}.section-title h2{overflow-wrap:anywhere}.table-wrap{border:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
