:root { --brand:#f8b400; --ink:#111; --bg:#fff; }
*{box-sizing:border-box}
body { margin:0; font-family:"Poppins", Arial, sans-serif; color:#222; background:#fff; scroll-behavior:smooth; }
a { color: inherit; }
header { background: linear-gradient(120deg,#111,#444); color:#fff; text-align:center; padding:100px 20px; }
header h1 { font-size:2.8rem; margin:0; }
header p { font-size:1.2rem; margin-top:10px; }
section { padding:60px 20px; max-width:1100px; margin:auto; }
.about { text-align:center; }
.about h2 { font-size:2rem; margin-bottom:10px; }
.services { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:30px; margin-top:40px; }
.service { background:#f5f5f5; border-radius:12px; padding:25px; text-align:center; box-shadow:0 4px 10px rgba(0,0,0,.05); transition:transform .2s ease; }
.service:hover { transform: translateY(-5px); }
.service h3 { margin-top:0; color:#333; }
.cta { background:#222; color:#fff; text-align:center; padding:60px 20px; }
.cta h2 { font-size:2rem; margin-bottom:20px; }
.cta a.btn { display:inline-block; background:var(--brand); color:#000; padding:15px 30px; border-radius:8px; text-decoration:none; font-weight:bold; transition:opacity .2s ease; }
.cta a.btn:hover { opacity:.9; }
.contact { background:#fafafa; border-top:1px solid #eee; }
form { max-width:760px; margin:0 auto; text-align:left; }
.grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.grid .full { grid-column:1 / -1; }
label { display:block; font-weight:600; margin-bottom:6px; }
input, textarea, select { width:100%; padding:12px 14px; border:1px solid #ddd; border-radius:10px; font-size:1rem; background:#fff; }
textarea { min-height:140px; resize:vertical; }
.form-actions { margin-top:20px; display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
button[type="submit"] { background:#111; color:#fff; border:none; padding:14px 22px; border-radius:10px; font-weight:700; cursor:pointer; }
button[type="submit"]:hover { opacity:.9; }
.helper { font-size:.9rem; color:#666; }
footer { background:#111; color:#ccc; text-align:center; padding:20px; font-size:.9rem; }
footer a { color:var(--brand); }

/* Cookie banner */
.cookie-banner { position:fixed; left:16px; right:16px; bottom:16px; background:#fff; border:1px solid #e6e6e6; box-shadow:0 6px 24px rgba(0,0,0,.12); border-radius:14px; padding:16px; display:none; z-index:9999; }
.cookie-banner h4 { margin:0 0 6px 0; font-size:1rem; }
.cookie-banner p { margin:0 0 12px 0; font-size:.95rem; color:#444; }
.cookie-actions { display:flex; gap:10px; flex-wrap:wrap; }
.cookie-actions button { border:none; padding:10px 14px; border-radius:10px; cursor:pointer; font-weight:600; }
.cookie-accept { background:var(--brand); color:#000; }
.cookie-decline { background:#eee; }
.hide { display:none; }

/* Status meldingen */
.notice { background:#eafbea; color:#0a5d0a; border:1px solid #b7e5b7; padding:12px 14px; border-radius:10px; margin-top:14px; display:none; }
.error { background:#fdeaea; color:#7a1010; border:1px solid #f1b7b7; padding:12px 14px; border-radius:10px; margin-top:14px; display:none; }
