:root{
  --bg:#f5f7fb; --surface:#ffffff; --text:#0d1b2e; --muted:#5b6b82; --line:#e3e8f0;
  --navy:#14325c; --navy-deep:#0a1c38; --accent:#2f6bd8; --soft:#eaf1fc;
  --radius:22px; --max:760px;
}
@media (prefers-color-scheme: dark){
  :root{ --bg:#07111f; --surface:#0e1b2e; --text:#e8eef8; --muted:#97a6bd; --line:#1c2c44;
         --accent:#7aa6f0; --soft:#12243d; }
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);
  font:17px/1.6 -apple-system,BlinkMacSystemFont,"SF Pro Text","Inter","Segoe UI",Roboto,sans-serif}
a{color:var(--accent)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
header.top{padding:22px 0}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px}
.brand{font-weight:700;letter-spacing:.02em;color:var(--text);text-decoration:none;font-size:18px}
.brand span{color:var(--accent)}
nav a{color:var(--muted);text-decoration:none;font-size:15px;margin-left:18px}
nav a:hover{color:var(--text)}
.hero{background:linear-gradient(135deg,var(--navy),var(--navy-deep));color:#fff;border-radius:var(--radius);
  padding:44px 32px;margin:8px 0 28px;text-align:center}
.hero h1{font-size:clamp(30px,6vw,44px);line-height:1.15;margin:16px 0 8px}
.hero p{color:#c9d7ee;margin:0 auto;max-width:520px}
.icon{width:112px;height:112px;border-radius:25px;box-shadow:0 12px 30px rgba(0,0,0,.35)}
.badge{display:inline-block;margin-top:22px;padding:8px 16px;border-radius:999px;background:rgba(255,255,255,.12);
  color:#fff;font-size:14px;font-weight:600}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px 26px;margin:0 0 20px}
.card h2{font-size:22px;margin:0 0 10px}
.card h3{font-size:17px;margin:20px 0 4px}
.steps{display:grid;gap:14px;margin:6px 0 0;padding:0;list-style:none}
.steps li{display:flex;gap:14px;align-items:flex-start}
.num{flex:0 0 34px;height:34px;border-radius:10px;background:linear-gradient(180deg,var(--navy),var(--navy-deep));
  color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}
.steps b{display:block}
.steps span{color:var(--muted);font-size:15px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:6px}
.feature{background:var(--soft);border-radius:16px;padding:16px}
.feature b{display:block;margin-bottom:2px}
.feature span{color:var(--muted);font-size:15px}
.muted{color:var(--muted)}
footer{padding:26px 0 48px;color:var(--muted);font-size:14px;text-align:center}
footer a{color:var(--muted)}
/* hoofdpagina */
.home{min-height:calc(100vh - 160px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.home h1{font-size:clamp(34px,7vw,52px);margin:0 0 6px;letter-spacing:.01em}
.home h1 span{color:var(--accent)}
.home p{color:var(--muted);margin:0 0 40px}
.app-tile{display:flex;flex-direction:column;align-items:center;gap:12px;text-decoration:none;color:var(--text);
  padding:22px 30px;border-radius:var(--radius);transition:transform .15s ease, background .15s ease}
.app-tile:hover{background:var(--surface);transform:translateY(-2px)}
.app-tile img{width:128px;height:128px;border-radius:29px;box-shadow:0 12px 30px rgba(10,28,56,.28)}
.app-tile b{font-size:19px}
.app-tile span{color:var(--muted);font-size:15px}
/* privacy */
.legal h1{font-size:clamp(28px,5vw,36px);margin:10px 0 4px}
.legal h2{font-size:20px;margin:30px 0 8px}
.legal ul{padding-left:22px}
.legal li{margin:4px 0}
.legal table{width:100%;border-collapse:collapse;font-size:15px;margin:8px 0}
.legal th,.legal td{text-align:left;vertical-align:top;padding:9px 10px;border-bottom:1px solid var(--line)}
.legal th{color:var(--muted);font-weight:600}
@media (max-width:520px){ .hero{padding:34px 20px} .card{padding:22px 18px} nav a{margin-left:12px}
  .legal table, .legal thead, .legal tbody, .legal tr, .legal th, .legal td{display:block}
  .legal thead{display:none} .legal td{border:0;padding:2px 0} .legal tr{border-bottom:1px solid var(--line);padding:10px 0} }
