/* ============================================================
   PAGE-REGELEN.CSS — "Uitvaart regelen" long-read ("Linnen gids")
   Sticky inhoudsopgave links, lopende tekst rechts, genummerde
   8-stappen-checklist en vier fase-secties. Verbruikt uitsluitend
   variabelen uit tokens.css; bouwt voort op sandbox-base.css.
   Behoudt de oorspronkelijke vormgeving.
   ============================================================ */

.d2-scope{font-size:var(--text-reading);line-height:var(--leading-reading);}

/* Artikelkop */
.rg-head{padding:46px 0 8px;}
.rg-head .sb-breadcrumb{margin-bottom:26px;}
.rg-head h1{font-family:var(--font-display);font-weight:var(--heading-weight);letter-spacing:var(--display-1-tracking);font-size:var(--display-1);line-height:var(--display-1-leading);margin:14px 0 18px;max-width:20ch;}
.rg-meta{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;color:var(--color-text-muted);font-size:0.96rem;}
.rg-meta .author{display:inline-flex;align-items:center;gap:10px;font-weight:600;color:var(--color-ink);}
.rg-meta .avatar{width:34px;height:34px;border-radius:50%;background:var(--color-primary);color:#fff;display:grid;place-items:center;font-family:var(--font-display);font-size:0.95rem;}
.rg-meta .dot-sep{color:var(--color-line);}

/* Layout */
.rg-layout{display:grid;grid-template-columns:240px 1fr;gap:48px;padding:40px 0 60px;align-items:start;}
@media (max-width:900px){.rg-layout{grid-template-columns:1fr;gap:0;}}

/* Inhoudsopgave */
.rg-toc{position:sticky;top:96px;}
.rg-toc .label{font-size:0.76rem;font-weight:var(--kicker-weight);letter-spacing:0.14em;text-transform:uppercase;color:var(--color-accent);margin-bottom:14px;}
.rg-toc ol{list-style:none;display:flex;flex-direction:column;gap:2px;}
.rg-toc a{display:block;padding:8px 10px;border-left:2px solid var(--color-line);text-decoration:none;color:var(--color-text-muted);font-size:0.95rem;}
.rg-toc a:hover{color:var(--color-ink);border-left-color:var(--color-accent);background:var(--color-surface-deep);}
@media (max-width:900px){.rg-toc{position:static;border:1px solid var(--color-line);border-radius:var(--radius);padding:20px 22px;margin-bottom:32px;background:var(--color-surface-card);}}

/* Artikeltekst */
.rg-article{max-width:680px;}
.rg-article > p:first-of-type::first-letter{font-family:var(--font-display);font-weight:600;float:left;font-size:3.6rem;line-height:0.82;padding:6px 12px 0 0;color:var(--color-primary);}

/* Genummerd checklist-blok */
.rg-checklist{background:var(--color-surface-deep);border:1px solid var(--color-line);border-radius:12px;padding:32px 34px;margin:10px 0 36px;scroll-margin-top:96px;}
.rg-checklist .label{font-size:0.78rem;font-weight:var(--kicker-weight);letter-spacing:0.14em;text-transform:uppercase;color:var(--color-accent);margin-bottom:6px;}
.rg-checklist h2{font-family:var(--font-display);font-weight:var(--heading-weight);font-size:1.5rem;margin:0 0 18px;letter-spacing:-0.015em;}
.rg-checklist ol{list-style:none;counter-reset:cl;display:flex;flex-direction:column;gap:0;}
.rg-checklist li{counter-increment:cl;display:grid;grid-template-columns:30px minmax(0,1fr);gap:16px;align-items:start;padding:15px 0;border-bottom:1px solid var(--color-line);}
.rg-checklist li:last-child{border-bottom:none;}
.rg-checklist li::before{content:counter(cl);width:30px;height:30px;border-radius:50%;background:var(--color-primary);color:#fff;display:grid;place-items:center;font-family:var(--font-display);font-weight:600;font-size:0.95rem;transform:translateY(-1px);}
.rg-checklist li .cl-copy{display:block;min-width:0;}
.rg-checklist li b{display:block;font-weight:700;line-height:1.35;margin-bottom:5px;}
.rg-checklist li .cl-d{display:block;color:var(--color-text-muted);font-size:0.96rem;line-height:1.55;}

/* Citaat */
blockquote{border-left:3px solid var(--color-accent);padding:4px 0 4px 22px;margin:8px 0 26px;font-family:var(--font-display);font-style:italic;font-size:1.25rem;color:var(--color-primary);line-height:1.45;}

/* Callout */
.rg-callout{background:var(--color-surface-card);border:1px solid var(--color-line);border-radius:12px;padding:32px 36px;margin:8px 0 34px;}
.rg-callout .label{font-size:0.78rem;font-weight:var(--kicker-weight);letter-spacing:0.14em;text-transform:uppercase;color:var(--color-accent);margin-bottom:10px;}
.rg-callout h2{font-size:var(--h3-size);margin:0 0 10px;}
.rg-callout p:last-child{margin-bottom:0;}
.rg-callout ul{margin-bottom:0;}

/* CTA (donker) */
.rg-cta{background:var(--color-ink);color:#fff;border-radius:var(--radius-lg);padding:34px 36px;margin:40px 0 0;}
.rg-cta .sb-kicker{color:var(--color-accent-soft);}
.rg-cta h2{font-family:var(--font-display);font-weight:var(--heading-weight);font-size:1.7rem;color:#fff;margin:0 0 10px;letter-spacing:-0.015em;}
.rg-cta p{color:#cdd7cd;margin:0 0 22px;max-width:48ch;}
.rg-cta-acties{display:flex;gap:14px;flex-wrap:wrap;}

/* CTA-knop op donkere achtergrond (voorheen inline) */
.rg-cta .sb-btn-ghost{border-color:#fff;color:#fff;}
.rg-cta .sb-btn-ghost:hover{background:#fff;color:var(--color-ink);}

/* ---- Productie-aanvullingen ---- */
.rg-h2-sub { font-size: 0.7em; font-weight: 400; color: var(--color-text-muted); }
.rg-download { margin: -16px 0 36px; }
.rg-download-btn { font-size: 0.95rem; padding: 12px 20px; }
.rg-toc a.is-active { color: var(--color-ink); border-left-color: var(--color-accent); font-weight: 600; }
.rg-article section { scroll-margin-top: 96px; }
.rg-crosslink { font-size: 0.95rem; color: var(--color-text-muted); margin: -20px 0 32px; }
.rg-steden { margin-top: 22px; font-size: 0.92rem; color: #8fa089; line-height: 1.9; }
.rg-steden a { color: #cdd7cd; text-decoration: underline; text-underline-offset: 3px; }
.rg-steden a:hover { color: #fff; }

.rg-article section:not(.rg-checklist) ul,
.rg-article section:not(.rg-checklist) ol { list-style:none; padding-left:0; margin:0 0 22px; }
.rg-article section:not(.rg-checklist) ol { counter-reset:rg-list; }
.rg-article section:not(.rg-checklist) li { position:relative; padding-left:1.35em; margin-bottom:7px; }
.rg-article section:not(.rg-checklist) ul > li::before { content:"•"; position:absolute; left:0; top:0; color:var(--color-ink); }
.rg-article section:not(.rg-checklist) ol > li { counter-increment:rg-list; }
.rg-article section:not(.rg-checklist) ol > li::before { content:counter(rg-list) "."; position:absolute; left:0; top:0; color:var(--color-ink); font-weight:600; }

@media (max-width:700px){
  .rg-head h1{max-width:10ch;}
  .rg-checklist{padding:26px 22px;}
  .rg-checklist li{grid-template-columns:28px minmax(0,1fr);gap:13px;}
  .rg-checklist li::before{width:28px;height:28px;font-size:0.9rem;}
  .rg-callout{padding:28px 24px;}
}

/* Tabellen in long-read (o.a. privacy-cookieoverzicht) */
.rg-article table{width:100%;border-collapse:collapse;margin:8px 0 30px;font-size:0.98rem;}
.rg-article table caption{text-align:left;font-weight:600;color:var(--color-ink);margin-bottom:10px;}
.rg-article th,.rg-article td{text-align:left;vertical-align:top;padding:12px 16px;border-bottom:1px solid var(--color-line);line-height:1.5;}
.rg-article thead th{background:var(--color-surface-deep);font-weight:600;color:var(--color-ink);border-bottom:1.5px solid var(--color-line);}
.rg-article tbody tr:last-child td{border-bottom:none;}
.rg-article .rg-table-wrap{overflow-x:auto;border:1px solid var(--color-line);border-radius:12px;margin:8px 0 30px;}
.rg-article .rg-table-wrap table{margin:0;}
