:root{
  --ink:#16181d; --body:#33373f; --mut:#6b7280; --line:#e2e5ea; --line2:#eef0f4;
  --bg:#ffffff; --tint:#f7f8fa; --accent:#146c43; --accent-bg:#e8f3ed;
  --no:#b4232a; --no-bg:#fdeceb; --warn:#8a5a00; --warn-bg:#fdf4e3;
  --mono:ui-monospace,"SF Mono",Menlo,monospace;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--body);
  font:19px/1.7 Georgia,"Iowan Old Style",serif;-webkit-font-smoothing:antialiased}
.wrap{max-width:760px;margin:0 auto;padding:40px 22px 90px}
h1,h2,h3,.ui,nav{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,sans-serif}
h1{font-size:clamp(30px,5.2vw,42px);line-height:1.18;color:var(--ink);letter-spacing:-.02em;margin:0 0 16px;font-weight:750}
h2{font-size:26px;line-height:1.25;color:var(--ink);margin:52px 0 12px;letter-spacing:-.01em;font-weight:700}
h3{font-size:19px;color:var(--ink);margin:28px 0 8px;font-weight:700}
p{margin:0 0 18px}
a{color:#0b5ea8}
strong{color:var(--ink);font-weight:700}

/* Skip-link: onzichtbaar tot hij focus krijgt */
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;
  padding:12px 18px;z-index:99;font:600 15px -apple-system,sans-serif;border-radius:0 0 8px 0}
.skip:focus{left:0}

/* Site-brede voettekst */
.sitefoot{border-top:1px solid var(--line);margin-top:56px;padding-top:26px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,sans-serif}
.sitefoot .fbrand{font:750 16px/1 -apple-system,sans-serif;color:var(--ink);margin:0 0 8px}
.sitefoot .find{font-size:14.5px;line-height:1.55;color:var(--mut);margin:0 0 16px;max-width:62ch}
.sitefoot .flinks{display:flex;flex-wrap:wrap;gap:8px 20px;margin-bottom:16px}
.sitefoot .flinks a{font-size:14.5px;color:var(--body);text-decoration:none;
  border-bottom:1px solid var(--line)}
.sitefoot .flinks a:hover{color:var(--ink);border-bottom-color:var(--ink)}
.sitefoot .fsmall{font-size:13px;line-height:1.55;color:var(--mut);margin:0}

/* Site-brede navigatie */
.sitehead{border-bottom:1px solid var(--line);margin-bottom:28px;padding-bottom:16px;
  display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 22px}
.sitehead .brand{font:750 18px/1 -apple-system,sans-serif;color:var(--ink);
  text-decoration:none;letter-spacing:-.01em;margin-right:auto}
.sitehead a.nl{font:15px/1 -apple-system,sans-serif;color:var(--body);text-decoration:none;
  padding:4px 0;border-bottom:2px solid transparent}
.sitehead a.nl:hover{border-bottom-color:var(--ink);color:var(--ink)}
.sitehead a.nl[aria-current=page]{color:var(--ink);font-weight:650;border-bottom-color:var(--ink)}
@media(max-width:640px){.sitehead{gap:9px 16px}.sitehead .brand{margin-right:0;width:100%;margin-bottom:4px}
  .sitehead a.nl{font-size:14.5px}}

nav.crumb{font-size:14px;color:var(--mut);margin-bottom:18px}
nav.crumb a{color:var(--mut);text-decoration:none}
nav.crumb a:hover{text-decoration:underline}

.byline{font:14px/1.5 -apple-system,sans-serif;color:var(--mut);
  border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:30px}
.byline b{color:var(--ink)}

.answer{background:var(--accent-bg);border-left:4px solid var(--accent);
  padding:22px 24px;margin:0 0 34px;border-radius:0 8px 8px 0}
.answer p{margin:0;font-size:19px;color:#14321f}
.answer p + p{margin-top:14px}
.answer .lead{font-weight:700;color:var(--ink)}

.tool{border:2px solid var(--ink);border-radius:12px;padding:26px;margin:34px 0;background:var(--tint)}
.tool h3{margin:0 0 6px;font-size:21px}
.tool .hint{font:14.5px/1.5 -apple-system,sans-serif;color:var(--mut);margin:0 0 18px}
select,button,input{font:16px -apple-system,sans-serif;padding:13px 15px;border-radius:8px;border:1px solid #c3c8d0}
select,input{width:100%;background:#fff;color:var(--ink)}
select{appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8'><path d='M1 1l5 5 5-5' stroke='%2333373f' stroke-width='2' fill='none'/></svg>");
  background-repeat:no-repeat;background-position:right 15px center}
button{background:var(--ink);color:#fff;border:none;font-weight:650;cursor:pointer;margin-top:12px;width:100%}
button:hover{background:#000}
.out{margin-top:20px;padding:20px;border-radius:9px;display:none;font:16.5px/1.6 -apple-system,sans-serif}
.out.on{display:block}
.out .v{font-weight:750;font-size:18px;display:block;margin-bottom:7px}
.out.yes{background:var(--accent-bg);border:1px solid #9ac9b1;color:#14321f}
.out.no{background:var(--no-bg);border:1px solid #eaa9a5;color:#6d1418}
.out.dep{background:var(--warn-bg);border:1px solid #e0c383;color:#5c3d00}
.out cite{display:block;margin-top:9px;font:13px var(--mono);opacity:.85;font-style:normal}

/* Ruimere aanvinkhokjes en labels: doelgroep is 55-plus, kleine hokjes zijn daar een echt probleem */
.check{display:flex;align-items:flex-start;gap:13px;margin-bottom:14px;cursor:pointer;
  font:16.5px/1.45 -apple-system,sans-serif;color:var(--ink)}
.check input[type=checkbox]{width:24px;height:24px;flex:none;margin:0;cursor:pointer;
  accent-color:var(--ink)}
.field{display:block;margin-bottom:6px;font:15px -apple-system,sans-serif;color:var(--ink)}
.tool input[type=number]{margin-bottom:14px}

.scroll{overflow-x:auto;margin:22px 0}
table{width:100%;border-collapse:collapse;font:16px -apple-system,sans-serif}
th{text-align:left;font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--mut);
  padding:0 12px 10px 0;border-bottom:2px solid var(--line);white-space:nowrap;font-weight:700}
td{padding:12px 12px 12px 0;border-bottom:1px solid var(--line2);vertical-align:top}
td:first-child{color:var(--ink);font-weight:600}
.yes{color:var(--accent);font-weight:700;white-space:nowrap}
.no{color:var(--no);font-weight:700;white-space:nowrap}
.dep{color:var(--warn);font-weight:700;white-space:nowrap}
.fine{font-family:var(--mono);font-size:14.5px;white-space:nowrap}

blockquote{margin:22px 0;padding:18px 22px;background:var(--tint);
  border-left:3px solid #c3c8d0;font-size:17.5px;color:var(--ink)}
blockquote cite{display:block;margin-top:10px;font:13px var(--mono);color:var(--mut);font-style:normal}

.trap{border:1px solid var(--line);border-radius:10px;padding:20px 22px;margin:16px 0}
.trap h3{margin:0 0 7px;display:flex;gap:9px;align-items:baseline}
.trap h3 .tag{font:700 11px/1 -apple-system,sans-serif;letter-spacing:.06em;
  padding:4px 7px;border-radius:4px;background:var(--no-bg);color:var(--no);flex:none;text-transform:uppercase}
.trap p:last-child{margin-bottom:0}
.trap p{font-size:17.5px}

.steps{counter-reset:s;margin:24px 0;padding:0;list-style:none}
.steps li{counter-increment:s;position:relative;padding:0 0 22px 52px;border-left:2px solid var(--line);margin-left:15px}
.steps li:last-child{border-left-color:transparent;padding-bottom:0}
.steps li::before{content:counter(s);position:absolute;left:-16px;top:-2px;width:32px;height:32px;
  border-radius:50%;background:var(--ink);color:#fff;font:700 14px/32px -apple-system,sans-serif;text-align:center}
.steps h3{margin:0 0 6px}
.steps p{font-size:17.5px;margin-bottom:0}

details{border-bottom:1px solid var(--line2);padding:15px 0}
summary{font:650 17.5px -apple-system,sans-serif;color:var(--ink);cursor:pointer;list-style:none}
summary::-webkit-details-marker{display:none}
summary::before{content:"+ ";color:var(--mut);font-weight:400}
details[open] summary::before{content:"\2212  "}
details p{margin:12px 0 4px;font-size:17.5px}

.next{background:var(--tint);border-radius:10px;padding:22px 24px;margin:40px 0 0;
  font:16px/1.6 -apple-system,sans-serif}
.next h3{margin:0 0 10px;font-size:17px}
.next ul{margin:0;padding-left:18px}
.next li{margin-bottom:7px}

.sources{background:var(--tint);border-radius:10px;padding:22px 24px;margin:34px 0 0;
  font:15px/1.65 -apple-system,sans-serif}
.sources h3{margin:0 0 10px;font-size:16px}
.sources ul{margin:0;padding-left:18px}
.sources li{margin-bottom:6px}
.disc{font:13.5px/1.6 -apple-system,sans-serif;color:var(--mut);
  border-top:1px solid var(--line);margin-top:34px;padding-top:18px}
@media(max-width:600px){body{font-size:18px}.wrap{padding:28px 17px 60px}}
