*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:Inter,system-ui,Arial,sans-serif;color:#111;background:#f8f6f2}
.page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
.wrap{max-width:1000px;margin:0 auto;padding:0 20px;width:100%}
header{background:#7a1c1c;color:#fff;padding:14px 0;position:sticky;top:0;z-index:10}
.navwrap{display:flex;align-items:center;justify-content:space-between}
.logo{font-weight:900;color:#fff;text-decoration:none;font-size:22px;letter-spacing:.5px}.logo span{font-weight:400;opacity:.9}
nav{display:flex;gap:18px}nav a{color:#fff;text-decoration:none;font-weight:600;padding:6px 0;border-bottom:2px solid transparent}
nav a:hover{border-color:#fff}
.menu-toggle{display:none;background:transparent;border:1px solid #fff;color:#fff;border-radius:6px;padding:6px 10px;font-size:20px}
main{flex:1;padding:24px 0 40px}
.hero{padding:40px 0 20px} .hero h1{font-size:clamp(32px,6vw,48px);margin:0 0 8px}
.btn{display:inline-block;margin-top:16px;background:#7a1c1c;color:#fff;padding:12px 20px;text-decoration:none;border-radius:8px;font-weight:700}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:30px 0}
.card{background:#fff;padding:18px;border-radius:12px;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.personen{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}
.persoon{background:#fff;padding:16px;border-radius:12px}.persoon img{width:100%;height:220px;object-fit:cover;background:#ddd;border-radius:10px}
.verhaal{background:#fff;padding:16px;border-radius:12px;margin:12px 0}
.list{padding:0}.list li{background:#fff;padding:12px;border-radius:10px;margin:10px 0;list-style:none}
.form{max-width:520px;display:grid;gap:12px}.form input,.form textarea{width:100%;padding:12px;border:1px solid #ccc;border-radius:8px;font-size:16px}
.form button{background:#7a1c1c;color:#fff;border:0;padding:12px 18px;border-radius:8px;cursor:pointer;font-weight:700;font-size:16px}
.ok{background:#dff0d8;padding:10px;border-radius:8px;margin-bottom:12px}
footer{margin-top:auto;background:#111;color:#bbb;padding:18px 0;font-size:14px}
footer a{color:#fff}
@media(max-width:800px){
  .menu-toggle{display:block}
  nav{position:absolute;top:100%;left:0;right:0;background:#7a1c1c;flex-direction:column;gap:0;padding:0 20px 12px;display:none}
  nav.open{display:flex}
  nav a{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.15)}
  .grid{grid-template-columns:1fr}
}
