/* ============================================================
   DoughPrint — blog (index + artikel). Hergebruikt landing.css voor
   tokens, nav, knoppen en de gestippelde textuur; hier enkel blog-stijl.
   ============================================================ */

.blog-top{padding-top:122px}

/* ---------- blog-kop ---------- */
.blog-hero{text-align:center;max-width:680px;margin:0 auto;padding:0 0 8px}
.blog-hero h1{font-size:clamp(34px,4.6vw,52px);line-height:1.05;letter-spacing:-.025em;font-weight:800;margin:16px 0 0}
.blog-hero p{font-size:16.5px;line-height:1.6;color:var(--muted);margin:16px 0 0}

/* ---------- artikel-grid ---------- */
.post-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin:54px 0 0}
.post-card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);
  border-radius:20px;overflow:hidden;text-decoration:none;color:inherit;
  transition:transform .25s,box-shadow .25s,border-color .25s}
.post-card:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(22,21,20,.12);border-color:#cdc7b8}
.post-thumb{aspect-ratio:3/2;overflow:hidden;background:#f3f0e8}
.post-thumb img{width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .5s cubic-bezier(.22,.61,.36,1)}
.post-card:hover .post-thumb img{transform:scale(1.04)}
.post-body{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}
.post-cat{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;
  font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);
  background:#fbe9e4;border:1px solid #f0cabf;border-radius:999px;padding:4px 11px}
.post-card h2{font-size:21px;line-height:1.2;letter-spacing:-.015em;font-weight:800;margin:14px 0 0}
.post-card p{font-size:14px;line-height:1.6;color:var(--muted);margin:11px 0 0}
.post-meta{display:flex;align-items:center;gap:10px;margin-top:18px;
  font-family:var(--mono);font-size:11.5px;color:var(--muted)}
.post-meta .dotsep{width:3px;height:3px;border-radius:50%;background:var(--line)}
.post-card .more{margin-top:16px;font-weight:700;font-size:13.5px;color:var(--ink);display:inline-flex;align-items:center;gap:7px}
.post-card .more .arr{transition:transform .2s}
.post-card:hover .more .arr{transform:translateX(4px)}
@media(max-width:760px){.post-grid{grid-template-columns:1fr}}

/* ---------- artikelpagina ---------- */
.article{max-width:760px;margin:0 auto}
.article-head{text-align:center;max-width:720px;margin:0 auto}
.article-head .post-cat{margin:0 auto}
.article-head h1{font-size:clamp(30px,4.2vw,46px);line-height:1.1;letter-spacing:-.025em;font-weight:800;margin:16px 0 0}
.article-head .lead{font-size:17px;line-height:1.6;color:var(--muted);margin:16px auto 0;max-width:620px}
.article-meta{display:inline-flex;align-items:center;gap:11px;margin-top:22px;
  font-family:var(--mono);font-size:12px;color:var(--muted)}
.article-meta .av{width:30px;height:30px;border-radius:50%;background:var(--ink);color:#fff;
  display:grid;place-items:center;font-family:var(--sans);font-weight:800;font-size:12px}
.article-meta .dotsep{width:3px;height:3px;border-radius:50%;background:var(--line)}
.article-hero{margin:38px 0 0;border-radius:22px;overflow:hidden;border:1px solid var(--line);
  background:#fff;box-shadow:0 30px 70px rgba(22,21,20,.16);aspect-ratio:3/2}
.article-hero img{width:100%;height:100%;object-fit:cover;display:block}

/* prose */
.prose{margin:44px auto 0;font-size:16.5px;line-height:1.75;color:#2c2a27}
.prose>p{margin:0 0 20px}
.prose h2{font-size:25px;line-height:1.2;letter-spacing:-.015em;font-weight:800;color:var(--ink);margin:40px 0 14px}
.prose h3{font-size:18.5px;font-weight:700;color:var(--ink);margin:28px 0 10px}
.prose a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
.prose strong{font-weight:700;color:var(--ink)}
.prose ul,.prose ol{margin:0 0 20px;padding-left:22px}
.prose li{margin:0 0 9px}
.prose li::marker{color:var(--accent)}
.prose blockquote{margin:26px 0;padding:16px 22px;border-left:3px solid var(--accent);
  background:rgba(207,77,51,.05);border-radius:0 12px 12px 0;font-size:17px;line-height:1.6;color:var(--ink)}
.prose blockquote p{margin:0;font-style:italic}
.prose figure{margin:30px 0}
.prose figure img{width:100%;border-radius:16px;border:1px solid var(--line);display:block}
.prose figcaption{font-family:var(--mono);font-size:11.5px;color:var(--muted);text-align:center;margin-top:10px}
.prose .callout{margin:26px 0;padding:18px 20px;border:1px solid var(--line);border-radius:14px;
  background:rgba(120,132,156,.06);font-size:15px;line-height:1.6}
.prose .callout b{color:var(--ink)}
.prose hr{border:none;border-top:1px solid var(--line);margin:36px 0}

/* deel-/eind-CTA in een artikel */
.article-cta{max-width:760px;margin:50px auto 0;background:var(--ink);color:#fff;border-radius:20px;
  padding:32px 30px;text-align:center;position:relative;overflow:hidden}
.article-cta h3{font-size:23px;font-weight:800;letter-spacing:-.01em;margin:0}
.article-cta p{color:rgba(255,255,255,.66);font-size:15px;margin:10px auto 20px;max-width:440px}
.article-cta .gw{position:absolute;border-radius:50%;filter:blur(56px);opacity:.5;pointer-events:none}
.article-cta .gw.a{width:240px;height:240px;background:var(--accent);left:-70px;top:-90px}
.article-cta .gw.b{width:220px;height:220px;background:var(--accent2);right:-60px;bottom:-90px}

/* terug-link */
.back-link{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12.5px;
  color:var(--muted);margin-bottom:6px;transition:.15s}
.back-link:hover{color:var(--ink)}
.article-foot{max-width:760px;margin:40px auto 0;border-top:1px solid var(--line);padding-top:24px;
  display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.article-foot .fmeta{font-family:var(--mono);font-size:12px;color:var(--muted)}
