:root { --ink:#1c2730; --muted:#596775; --paper:#fbfcfd; --line:#dce4ea; --accent:#146c6e; --accent-soft:#e6f4f2; }
* { box-sizing:border-box; }
body { margin:0; font:16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--ink); background:var(--paper); }
a { color:var(--accent); }
header { border-bottom:1px solid var(--line); background:#fff; }
.wrap { width:min(100% - 2rem, 760px); margin:auto; }
.bar { min-height:66px; display:flex; gap:1rem; align-items:center; justify-content:space-between; }
.brand { font-weight:750; color:var(--ink); text-decoration:none; letter-spacing:-.02em; }
nav { display:flex; flex-wrap:wrap; gap:.8rem; font-size:.92rem; }
nav a { text-decoration:none; }
main { padding:4rem 0; }
h1,h2,h3 { line-height:1.18; letter-spacing:-.03em; }
h1 { font-size:clamp(2.3rem,7vw,4.3rem); max-width:13ch; margin:0 0 1rem; }
h2 { margin-top:3rem; font-size:1.65rem; }
h3 { margin-top:2rem; font-size:1.2rem; }
.eyebrow { color:var(--accent); font-weight:700; text-transform:uppercase; letter-spacing:.08em; font-size:.78rem; }
.lead { font-size:1.22rem; max-width:58ch; color:var(--muted); }
.cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:1rem; margin:2rem 0; }
.card { display:block; padding:1.25rem; border:1px solid var(--line); border-radius:12px; background:#fff; color:inherit; text-decoration:none; }
.card:hover { border-color:var(--accent); }
.card strong { display:block; margin-bottom:.4rem; }
.notice { margin:2rem 0; padding:1rem 1.2rem; background:var(--accent-soft); border-left:4px solid var(--accent); }
table { width:100%; border-collapse:collapse; margin:1.5rem 0; }
th,td { padding:.7rem; text-align:left; border-bottom:1px solid var(--line); vertical-align:top; }
footer { padding:2rem 0; border-top:1px solid var(--line); color:var(--muted); font-size:.9rem; }
@media (max-width:520px) { main { padding:2.5rem 0; } .bar { align-items:flex-start; flex-direction:column; padding:1rem 0; } }

/* Article layouts */
.article h1 { max-width:22ch; font-size:clamp(2.2rem,6vw,3.7rem); }
.article .updated { color:var(--muted); font-size:.9rem; }
.article li { margin:.55rem 0; }
.article blockquote { margin:1.5rem 0; padding:.75rem 1.25rem; border-left:3px solid var(--accent); font-size:1.15rem; }
.quick-answer { padding:1.25rem 1.5rem; border:1px solid var(--line); border-radius:12px; background:#fff; }
.quick-answer h2 { margin-top:0; }
.table-scroll { max-width:100%; overflow-x:auto; }
.table-scroll table { min-width:420px; }
.table-scroll th { background:var(--accent-soft); }
.workflow { padding-left:1.5rem; }
.decision-callout { margin:2rem 0; padding:1.2rem; background:var(--accent-soft); border-radius:12px; }
.decision-callout strong,.decision-callout span { display:block; }
.decision-callout span { margin-top:.5rem; }
.decision-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin:1.5rem 0; }
.decision-grid section { padding:1.2rem; border:1px solid var(--line); border-radius:12px; background:#fff; }
.decision-grid h3 { margin-top:0; }
.decision-grid p { margin-bottom:0; }
@media (max-width:620px) { .decision-grid { grid-template-columns:1fr; } }

.cta-box { margin:3rem 0; padding:1.5rem; border-radius:14px; background:var(--ink); color:#fff; }
.cta-box h2 { margin:0 0 .6rem; color:#fff; }
.cta-box p { margin:.4rem 0 1.1rem; color:#e9eef2; }
.cta-box small { display:block; margin-top:.8rem; color:#bdc8d1; }
.button-link { display:inline-block; padding:.72rem 1rem; border-radius:8px; background:#fff; color:var(--accent); font-weight:750; text-decoration:none; }
.button-link:hover { background:var(--accent-soft); }

.consent-banner{position:fixed;z-index:1000;left:1rem;right:1rem;bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:1.25rem;max-width:900px;margin:auto;padding:1rem 1.15rem;background:#172033;color:#fff;border-radius:12px;box-shadow:0 8px 30px rgba(0,0,0,.25)}
.consent-banner p{margin:.3rem 0 0;color:#e5e7eb;font-size:.92rem}
.consent-actions{display:flex;gap:.6rem;flex-shrink:0}
.consent-actions button{border:1px solid #cbd5e1;border-radius:8px;padding:.65rem .9rem;background:transparent;color:#fff;font:inherit;cursor:pointer}
.consent-actions .consent-accept{border-color:#fff;background:#fff;color:#172033;font-weight:700}
.consent-actions button:focus-visible{outline:3px solid #93c5fd;outline-offset:2px}
@media(max-width:640px){.consent-banner{align-items:stretch;flex-direction:column}.consent-actions{justify-content:flex-end;flex-wrap:wrap}}

.resource-card .button-link,.cards section.card .button-link { background:var(--accent); color:#fff; }
.resource-card .button-link:hover,.cards section.card .button-link:hover { background:#0f5658; }
