:root{--ink:#1d2420;--muted:#5d6762;--bg:#faf7f2;--card:#fff;--line:#e8e1d6;--acc:#0e6b4f;--acc2:#a4541c;--bol:#0000a4;--r:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:17px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,Inter,sans-serif;color:var(--ink);background:var(--bg)}
img{max-width:100%;height:auto;display:block}a{color:var(--acc)}h1,h2,h3{line-height:1.2;letter-spacing:-.01em;font-family:Georgia,"Iowan Old Style",serif}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}.narrow{max-width:820px}
header.site{position:sticky;top:0;z-index:9;background:rgba(250,247,242,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:64px}.logo{display:flex;gap:8px;align-items:center;font-weight:600;color:var(--ink);text-decoration:none;font-size:19px}.logo b{color:var(--acc)}
nav a{margin-left:22px;color:var(--ink);text-decoration:none;font-weight:500}nav a:hover{color:var(--acc)}
.hero{background:radial-gradient(1200px 500px at 80% -10%,#e5efe8 0,transparent 60%),linear-gradient(180deg,#f3ede3,#faf7f2);padding:56px 0 40px}
.hgrid{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}.hero h1{font-size:clamp(34px,5vw,56px);margin:.3em 0}.hero p{font-size:19px;color:var(--muted)}
.eyebrow{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--acc2)}
.hcta{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.hwin{position:relative;background:#fff;border-radius:28px;padding:18px;box-shadow:0 30px 60px -30px rgba(0,0,0,.25);text-decoration:none;color:var(--ink)}.hwin span{display:block;font-weight:700;text-align:center;padding-top:8px}.hwin small{display:block;color:var(--acc2);text-transform:uppercase;font-size:12px;letter-spacing:.08em}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--bol);color:#fff;font-weight:700;padding:13px 22px;border-radius:999px;text-decoration:none;transition:.2s;white-space:nowrap}.btn:hover{transform:translateY(-1px);box-shadow:0 10px 20px -10px var(--bol)}
.btn-ghost{background:transparent;color:var(--ink);border:2px solid var(--ink)}.btn-light{background:#fff;color:var(--acc)}
.sec{font-size:clamp(28px,3.5vw,40px);margin:56px 0 24px}
.quick h2{margin-top:40px}.qgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.q{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;text-decoration:none;color:var(--ink);font-size:14px;display:flex;flex-direction:column;gap:2px}.q img{width:100%;aspect-ratio:1;object-fit:contain}.q em{color:var(--acc);font-style:normal;font-size:12px;font-weight:600}
.prod{display:grid;grid-template-columns:360px 1fr;gap:36px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:28px;margin-bottom:28px;box-shadow:0 20px 40px -35px rgba(0,0,0,.4)}
.pimg{position:relative;align-self:start;position:sticky;top:84px}.pimg img{border-radius:14px;background:#fff;aspect-ratio:1;object-fit:contain}.ph{display:block;text-align:center;color:var(--muted)}
.rank{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--acc);color:#fff;font-weight:800;flex:none}.rank.big{position:absolute;left:-10px;top:-10px;width:52px;height:52px;font-size:20px;z-index:2;box-shadow:0 6px 14px rgba(0,0,0,.2)}
.badge{display:inline-block;background:#fdf0e5;color:#9a4d17;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}
.prod h3{font-size:26px;margin:10px 0 4px}.score{color:var(--muted);font-size:15px}.score b{color:var(--acc);font-size:22px}.lead{font-weight:600}
.pc{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:16px 0}.pc h4{margin:.2em 0}.pc ul{list-style:none;padding:0;margin:0}.pc li{padding:4px 0 4px 26px;position:relative;font-size:15px}
.plus li:before{content:"✓";position:absolute;left:0;color:var(--acc);font-weight:800}.min li:before{content:"–";position:absolute;left:4px;color:#b3401f;font-weight:800}
details{border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin:12px 0}summary{cursor:pointer;font-weight:700}table{width:100%;border-collapse:collapse;font-size:15px;margin-top:8px}th,td{text-align:left;padding:7px 4px;border-top:1px solid var(--line)}th{width:42%;color:var(--muted);font-weight:600}
.for{background:#eef5f1;padding:12px 14px;border-radius:12px}
.prose h2{font-size:30px;margin-top:1.6em}.prose h3{font-size:22px;margin-top:1.4em}.prose li{margin:.3em 0}
.top5{background:linear-gradient(135deg,#1f2a24,#0e3b2d);color:#fff;border-radius:22px;padding:26px;margin:36px 0}.top5 h2{margin:.2em 0 .6em;color:#fff;font-size:26px}.top5 ol{list-style:none;margin:0;padding:0}
.top5 li{display:grid;grid-template-columns:34px 88px 1fr auto;gap:14px;align-items:center;background:rgba(255,255,255,.06);border-radius:14px;padding:10px;margin:8px 0}.top5 img{background:#fff;border-radius:10px;width:88px;height:88px;object-fit:contain}
.t5i{display:flex;flex-direction:column;gap:3px}.t5n{color:#fff;font-weight:700;text-decoration:none;font-size:17px}.t5i small{color:#cfe0d7;font-size:13px;line-height:1.4}.top5 .rank{background:var(--acc2)}.top5 .badge{align-self:start}
.cta{background:var(--acc);color:#fff;border-radius:22px;padding:28px;margin:36px 0;text-align:center}.cta h2{color:#fff;margin-top:0}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;transition:.2s}.card:hover{transform:translateY(-3px);box-shadow:0 20px 30px -25px rgba(0,0,0,.5)}
.card img{aspect-ratio:16/10;object-fit:contain;background:#fff;width:100%}.card span{font-weight:700;padding:14px 16px 4px;font-family:Georgia,serif;font-size:19px}.card small{padding:0 16px 16px;color:var(--muted)}
.post h1{font-size:clamp(32px,4.5vw,46px);margin:.3em 0}.meta,.crumbs{color:var(--muted);font-size:14px}.crumbs{margin-top:24px}.feat img{border-radius:var(--r);background:#fff;max-height:460px;width:100%;object-fit:contain;border:1px solid var(--line)}.feat{margin:0 0 20px}
.related{margin:50px 0}.center{text-align:center;margin:28px 0}
footer.site{background:#1f2a24;color:#cbd5cf;margin-top:70px;padding:44px 0 24px}footer .logo{color:#fff}.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}footer h3{color:#fff;font-size:16px;font-family:inherit}footer a{display:block;color:#cbd5cf;text-decoration:none;margin:5px 0;font-size:15px}.disc{font-size:13px;color:#93a199;border-top:1px solid #34413a;padding-top:18px;margin-top:30px}
@media(max-width:900px){.hgrid,.prod{grid-template-columns:1fr}.pimg{position:relative;top:0;max-width:420px}.qgrid{grid-template-columns:repeat(2,1fr)}.cards{grid-template-columns:1fr 1fr}.fgrid{grid-template-columns:1fr}nav a{margin-left:14px}}
@media(max-width:600px){body{font-size:16px}.pc,.cards{grid-template-columns:1fr}.prod{padding:18px}.top5{padding:16px}.top5 li{grid-template-columns:60px 1fr;}.top5 .rank{display:none}.top5 img{width:60px;height:60px}.top5 .btn{grid-column:1/-1}.hwin{display:none}nav a:first-child{display:none}}
/* mobiele optimalisaties */
html{-webkit-text-size-adjust:100%}
.btn{min-height:48px}.card img{object-fit:cover;aspect-ratio:16/9}.feat img{object-fit:cover;max-height:none;aspect-ratio:16/9}
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch}.prose{overflow-wrap:anywhere}.prose table{display:block;overflow-x:auto}
nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 4px}footer a{padding:6px 0}summary{min-height:44px;display:flex;align-items:center}
.crumbs a{display:inline-block;padding:8px 0}
@media(max-width:600px){.wrap{padding:0 16px}.hero{padding:32px 0 24px}.hero h1{font-size:32px}.hero p{font-size:17px}.hcta .btn{flex:1 1 100%}
.prod .btn,.cta .btn{width:100%}.prod h3{font-size:22px}.sec{font-size:26px;margin:36px 0 18px}.prose h2{font-size:25px}.prose h3{font-size:20px}
.top5 h2{font-size:22px}.t5i small{font-size:14px}.q{font-size:13px}.rank.big{left:-6px;top:-6px;width:44px;height:44px;font-size:17px}.logo{font-size:17px}nav a{margin-left:10px}}
.top5 .rank{background:#c8743a}.disc{color:#b5c1ba}
