:root { --navy:#1f3864; --accent:#b07a00; --bg:#f6f7fb; --card:#fff; --ink:#1b1f29; --muted:#5d6675; --line:#d9dde6;
        --low:#d9ead3; --medium:#fff2cc; --high:#f4cccc; }
@media (prefers-color-scheme: dark) {
  :root { --bg:#12151c; --card:#1b2029; --ink:#e8eaf0; --muted:#a0a8b6; --line:#333a48; --navy:#8fb0f0; --accent:#e3a72f;
          --low:#27442a; --medium:#4d4320; --high:#5b2a2a; }
}
* { box-sizing:border-box; }
html { font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; line-height:1.55; scroll-behavior:smooth; }
body { margin:0; background:var(--bg); color:var(--ink); }
a { color:var(--navy); }
:focus-visible { outline:3px solid var(--accent); outline-offset:2px; }
.wrap { max-width:960px; margin:0 auto; padding:0 1.1rem; }
.top { background:var(--card); border-bottom:1px solid var(--line); }
.bar { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:.7rem 0; flex-wrap:wrap; }
.brand-block { display:flex; align-items:center; gap:.7rem; line-height:1.2; }
.brand-block img { width:36px; height:36px; background:#fff; border-radius:50%; }
.brand { font-weight:700; color:var(--navy); text-decoration:none; font-size:1.2rem; }
.tagline { display:block; font-size:.76rem; color:var(--muted); font-weight:400; }
nav a { margin-left:1.1rem; color:var(--muted); text-decoration:none; font-size:.93rem; }
nav a:hover { color:var(--navy); text-decoration:underline; }
h1 { font-size:2rem; line-height:1.2; color:var(--navy); margin:0 0 .8rem; }
h2 { font-size:1.35rem; color:var(--navy); margin:0 0 .8rem; }
h3 { font-size:1.05rem; margin:.1rem 0 .4rem; color:var(--navy); }
.hero { padding:3rem 0 1.6rem; }
.lead { font-size:1.12rem; color:var(--muted); max-width:46rem; margin:0; }
section { padding:1.6rem 0; }
.grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:1rem; }
.card { background:var(--card); border:1px solid var(--line); border-radius:10px; padding:1.1rem 1.2rem; }
.card p { margin:.3rem 0 0; }
.step { font-size:.8rem; font-weight:700; color:var(--accent); letter-spacing:.05em; text-transform:uppercase; }
.actions { display:flex; gap:.8rem; flex-wrap:wrap; margin-top:1.3rem; }
.btn { display:inline-block; padding:.65rem 1.2rem; border-radius:7px; background:var(--navy); color:#fff; font-weight:600; text-decoration:none; border:2px solid var(--navy); }
.btn.secondary { background:transparent; color:var(--navy); }
@media (prefers-color-scheme: dark) { .btn { color:#0d1220; } .btn.secondary { color:var(--navy); } }
.btn:hover { opacity:.88; }
.small { font-size:.86rem; color:var(--muted); }
.table-scroll { overflow-x:auto; }
table { width:100%; border-collapse:collapse; font-size:.95rem; background:var(--card); border:1px solid var(--line); border-radius:10px; }
th, td { text-align:left; padding:.55rem .8rem; border-bottom:1px solid var(--line); vertical-align:top; }
th { background:var(--bg); font-weight:600; }
tr:last-child td { border-bottom:0; }
.pill { display:inline-block; padding:.12rem .6rem; border-radius:999px; font-size:.85rem; font-weight:600; color:var(--ink); }
.pill.low { background:var(--low); } .pill.medium { background:var(--medium); } .pill.high { background:var(--high); }
ul.clean { padding-left:1.1rem; margin:.4rem 0; } ul.clean li { margin:.35rem 0; }
.legal h2 { margin-top:1.6rem; font-size:1.1rem; }
.legal p, .legal li { max-width:46rem; }
footer { border-top:1px solid var(--line); margin-top:2rem; padding:1.2rem 0 2rem; font-size:.88rem; color:var(--muted); }
footer .wrap { display:flex; gap:1.2rem; flex-wrap:wrap; align-items:baseline; }
footer a { color:var(--muted); }
