:root{
  --bg:#ffffff;
  --text:#1a1a1a;
  --muted:#666;
  --line:#e5e5e5;
  --accent:#111;
  --radius:16px;
  --shadow:0 10px 30px rgba(0,0,0,.06);
  --container:1100px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  color:var(--text); background:var(--bg); line-height:1.6;
  -webkit-tap-highlight-color: transparent;
}

.container{max-width:var(--container); margin:0 auto; padding:0 24px}
section{padding:64px 0}
h1,h2,h3{line-height:1.2; margin:0 0 16px}
h1{font-size: clamp(32px, 4vw, 48px); letter-spacing:.5px}
h2{font-size: clamp(24px, 3vw, 34px)}
h3{font-size: 20px; margin-bottom:8px}
p{margin:0 0 12px; color:var(--muted)}

/* Buttons */
.button, button, .btn{
  display:inline-block; padding:14px 20px; border-radius:999px;
  border:1px solid var(--text); background:#000; color:#fff; text-decoration:none;
  font-weight:600; letter-spacing:.2px; transition:.2s transform,.2s opacity,.2s background,.2s color,.2s border-color;
}
.button.outline{background:transparent; color:var(--text); border-color:var(--text)}
.button:hover{transform:translateY(-1px); opacity:.95}
.button:focus,.button:active{outline:none}
.button:focus-visible{outline:2px dotted var(--text); outline-offset:2px}
.button:visited{color:#fff}
.button.outline:visited{color:var(--text)}

/* Masthead met gradient */
.masthead {
  text-align:center;
  padding:50px 0 30px;
  background-color: white; /* linear-gradient(180deg, #fafafa 0%, #fff 100%); */
  border-bottom:1px solid var(--line);
}
.mast-logo {
  width:100%; /* 200px */
  height:auto;
  border-radius:0;
  margin-bottom:12px;
}
.site-title {
  font-size:30px;
  font-weight:700;
  margin:0 0 20px;
}
.mast-nav {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:24px;
}
.mast-nav a {
  color:var(--text);
  text-decoration:none;
  font-weight:500;
}
.mast-nav a:hover { text-decoration:underline }

/* Hero */
.hero{padding:60px 0}
.hero-wrap{max-width:700px; margin:0 auto; text-align:center;}
.hero h2{font-size: clamp(28px, 4vw, 42px);}
.hero p.lead{font-size:18px;}

/* Grid & cards */
.grid{display:grid; gap:20px}
.grid.cols-3{grid-template-columns:repeat(3,1fr)}
@media (max-width:900px){ .grid.cols-3{grid-template-columns:1fr} }

.card{
  background:#fff; border:1px solid var(--line); border-radius:var(--radius);
  padding:22px; box-shadow:var(--shadow);
}

.list{list-style:none; padding:0; margin:0}
.list li{display:flex; justify-content:space-between; padding:10px 0; border-bottom:1px dashed var(--line)}
.list li:last-child{border-bottom:0}

.kicker{letter-spacing:.15em; text-transform:uppercase; font-size:12px; color:var(--muted); margin-bottom:8px}
.muted{color:var(--muted)}
.center{text-align:center}

.split{display:grid; grid-template-columns:1fr 1fr; gap:28px; align-items:center}
@media (max-width:900px){ .split{grid-template-columns:1fr} }

.badge{display:inline-block; padding:6px 10px; border:1px solid var(--line); border-radius:999px; font-size:12px; color:var(--muted)}

/* Footer */
.footer{padding:28px 0; border-top:1px solid var(--line); color:var(--muted); font-size:14px; text-align:center}
.footer a{color:inherit; text-decoration:none}
.sep{opacity:.35; margin:0 6px}

/* Link-blok (zwart/wit, kaart-achtig) */
.link-block{
  display:flex; align-items:center; justify-content:space-between;
  gap:12px; padding:14px 16px; border:1px solid #111; border-radius:12px;
  background:#fff; color:#111; text-decoration:none;
  transition:transform .08s ease, background .12s ease, color .12s ease;
}
.link-block:hover{ background:#111; color:#fff; transform:translateY(-1px); }
.link-block:focus{ outline:2px solid #111; outline-offset:3px; }
.link-text{ display:flex; flex-direction:column; line-height:1.25; }
.link-text strong{ font-weight:600; }
.link-sub{ font-size:.9rem; opacity:.7; }
.link-icon{ font-size:1.1rem; line-height:1; }

