  /* ════ HEADER (page-specific overrides) ════ */
  .header-logo { text-decoration: none; }
  .header-logo:hover { color: var(--groen-salie); }
  .header-terug { font-family: 'DM Sans', sans-serif; font-size: 14px; font-weight: 500; color: var(--groen-donker); text-decoration: none; display: flex; align-items: center; gap: 6px; padding: 8px 14px; border-radius: 100px; transition: background 0.15s, color 0.15s; }
  .header-terug:hover { background: rgba(28, 58, 42, 0.06); color: var(--groen-salie); }
  .header-terug svg { width: 14px; height: 14px; flex-shrink: 0; }

  /* ════ SUB-HERO ════ */
  .sub-hero { background: var(--salie-waas); padding: var(--s8) 0 var(--s6); text-align: center; }
  .sub-hero h1 { font-family: 'DM Sans', sans-serif; font-size: 32px; font-weight: 700; color: var(--groen-donker); line-height: 1.2; letter-spacing: -0.01em; margin-bottom: var(--s1); }
  .sub-hero-meta { font-family: 'DM Sans', sans-serif; font-size: 15px; font-weight: 400; color: var(--tekst-2); }

  /* ════ CATEGORIE-NAV ════ */
  .categorie-nav { max-width: 720px; margin: 0 auto; padding: var(--s4) var(--s4) 0; }
  .categorie-nav-inner { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
  .categorie-link { font-family: 'DM Sans', sans-serif; font-size: 14px; font-weight: 500; color: var(--groen-donker); text-decoration: none; padding: 8px 16px; border-radius: 100px; background: var(--salie-waas); border: 1px solid var(--salie-diep); transition: background 0.15s, color 0.15s, border-color 0.15s; }
  .categorie-link:hover { background: var(--salie-diep); color: var(--groen-salie); border-color: var(--groen-salie); }

  /* ════ FAQ CONTENT ════ */
  .faq-container { max-width: 720px; margin: 0 auto; padding: var(--s5) var(--s4) 0; }

  .faq-categorie { margin-bottom: var(--s8); }
  .faq-categorie:last-child { margin-bottom: 0; }
  .faq-categorie-header { display: flex; align-items: baseline; gap: var(--s2); margin-bottom: var(--s3); padding-bottom: var(--s2); border-bottom: 2px solid var(--salie-diep); }
  .faq-categorie h2 { font-family: 'DM Sans', sans-serif; font-size: 22px; font-weight: 700; color: var(--groen-donker); line-height: 1.3; letter-spacing: -0.005em; }
  .faq-categorie-tel { font-family: 'DM Sans', sans-serif; font-size: 13px; font-weight: 500; color: var(--tekst-3); }

  .faq-item { border-bottom: 1px solid rgba(28, 58, 42, 0.06); }
  .faq-item:last-child { border-bottom: none; }
  .faq-item summary { display: flex; justify-content: space-between; align-items: center; padding: 20px 0; font-family: 'DM Sans', sans-serif; font-size: 16px; font-weight: 600; color: var(--groen-donker); cursor: pointer; list-style: none; }
  .faq-item summary::-webkit-details-marker { display: none; }
  .faq-item summary::after { content: '+'; font-size: 20px; font-weight: 300; color: var(--groen-salie); transition: transform 0.2s ease; flex-shrink: 0; margin-left: var(--s2); line-height: 1; }
  .faq-item[open] summary::after { content: '\2212'; }
  .faq-item[open] summary { color: var(--groen-salie); padding-bottom: 8px; }
  .faq-antwoord { padding: 0 0 20px; font-family: 'DM Sans', sans-serif; font-size: 15px; color: var(--tekst-2); line-height: 1.7; overflow: hidden; animation: faqOpen 0.25s ease; max-width: 600px; }
  .faq-antwoord p { margin: 0 0 10px; }
  .faq-antwoord p:last-child { margin-bottom: 0; }
  .faq-antwoord a { color: var(--groen-salie); text-decoration: underline; text-underline-offset: 2px; text-decoration-color: rgba(58, 125, 92, 0.3); transition: text-decoration-color 0.15s; }
  .faq-antwoord a:hover { text-decoration-color: var(--groen-salie); }

  @keyframes faqOpen {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
  }

  .faq-lijst { background: #F7F9F7; border-radius: var(--radius-lg); padding: var(--s1) var(--s3); }

  .sub-update { text-align: center; font-size: 13px; color: var(--tekst-3); padding: var(--s4) 0; }

  /* ════ AFSLUITING CTA ════ */
  .afsluiting { background: var(--wit); text-align: center; padding: var(--s8) 0; }
  .afsluiting-card { background: var(--salie-waas); border-top: 3px solid var(--groen-salie); border-radius: var(--radius-lg); padding: var(--s5) var(--s4) var(--s5); max-width: 480px; margin: 0 auto; }
  .afsluiting .afsluiting-label { font-family: 'DM Sans', sans-serif; font-size: 13px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: var(--groen-salie); margin-bottom: var(--s2); max-width: none; }
  .afsluiting h2 { color: var(--groen-donker); margin: 0 0 8px; font-size: 30px; }
  .afsluiting p { margin: 0 auto 0; color: var(--tekst-2); font-size: 15px; max-width: 360px; }
  .afsluiting-review { display: flex; align-items: center; justify-content: center; gap: 10px; margin-top: var(--s3); font-family: 'DM Sans', sans-serif; }
  .afsluiting-review .review-badge-goud { font-size: 20px; font-weight: 700; color: var(--goud); }
  .afsluiting-review .review-bron { font-size: 14px; color: var(--tekst-2); }
  .afsluiting .afsluiting-cta { margin-top: var(--s3); }
  .afsluiting-alt { margin-top: 20px; text-align: center; }
  .afsluiting-alt-of { display: block; margin-top: 0; font-family: 'DM Sans', sans-serif; font-size: 14px; color: var(--tekst-3); }
  .afsluiting-alt-of a,
  .afsluiting-alt-of button { color: var(--groen-salie); text-decoration: underline; text-underline-offset: 2px; background: none; border: none; cursor: pointer; font-family: inherit; font-size: inherit; padding: 0; }
  .afsluiting-divider { border: none; border-top: 1px solid rgba(58, 125, 92, 0.12); margin: 28px auto 0; max-width: 50%; }
  .afsluiting-ssl { display: inline-flex; align-items: center; gap: 5px; margin-top: 14px; font-size: 13px; font-weight: 500; letter-spacing: 0.02em; color: rgba(28, 58, 42, 0.55); }
  @keyframes cta-breathe {
    0%, 100% { box-shadow: 0 2px 8px rgba(58, 125, 92, 0.3), 0 1px 2px rgba(58, 125, 92, 0.2); }
    50% { box-shadow: 0 4px 20px rgba(58, 125, 92, 0.45), 0 2px 6px rgba(58, 125, 92, 0.25); }
  }
  .afsluiting-cta { display: inline-block; background: var(--groen-salie); color: var(--wit); font-family: 'DM Sans', sans-serif; font-size: 18px; font-weight: 700; padding: 18px 48px; border: none; border-radius: var(--radius); text-decoration: none; cursor: pointer; box-shadow: 0 2px 8px rgba(58, 125, 92, 0.3), 0 1px 2px rgba(58, 125, 92, 0.2); transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease; line-height: 1; animation: cta-breathe 3s ease-in-out infinite; }
  .afsluiting-cta:hover { background: #327050; transform: translateY(-1px); box-shadow: 0 4px 16px rgba(58, 125, 92, 0.35), 0 2px 4px rgba(58, 125, 92, 0.2); animation: none; }
  .afsluiting-cta:focus-visible { outline: 3px solid var(--groen-salie); outline-offset: 3px; }
  .afsluiting-terugbel { display: block; margin-top: 14px; margin-left: auto; margin-right: auto; background: none; border: none; cursor: pointer; font-family: 'DM Sans', sans-serif; font-size: 14px; font-weight: 500; color: var(--tekst-3); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(28, 58, 42, 0.2); transition: color 0.15s, text-decoration-color 0.15s; }
  .afsluiting-terugbel:hover { color: var(--groen-salie); text-decoration-color: var(--groen-salie); }

  /* ════ PAGE-SPECIFIC: footer link active state ════ */
  .footer-links a.actief { font-weight: 600; color: var(--groen-donker); border-bottom-color: var(--groen-salie); }

  /* ════ RESPONSIVE (page-specific) ════ */
  @media (max-width: 480px) {
    .sub-hero { padding: var(--s6) 0 var(--s5); }
    .sub-hero h1 { font-size: 26px; }
    .categorie-nav { padding: var(--s3) var(--s3) 0; }
    .categorie-link { font-size: 13px; padding: 6px 12px; }
    .faq-container { padding: var(--s4) var(--s3) 0; }
    .faq-categorie h2 { font-size: 19px; }
    .faq-categorie { margin-bottom: var(--s6); }
    .faq-lijst { padding: var(--s1) var(--s2); }
    .faq-item summary { font-size: 15px; padding: 16px 0; }
    .faq-antwoord { font-size: 14px; padding: 0 0 16px; }
    .afsluiting { padding: var(--s6) 0; }
    .afsluiting-card { padding: var(--s3); border-radius: var(--radius); margin: 0 var(--s3); }
    .afsluiting h2 { font-size: 23px; }
    .afsluiting p { font-size: 15px; }
    .afsluiting-cta { display: block; width: 100%; text-align: center; padding: 16px var(--s3); font-size: 16px; }
  }
  @media (hover: none) {
    .categorie-link:hover { background: var(--salie-waas); color: var(--groen-donker); border-color: var(--salie-diep); }
    .afsluiting-cta:hover { transform: none; box-shadow: 0 2px 8px rgba(58, 125, 92, 0.3), 0 1px 2px rgba(58, 125, 92, 0.2); animation: none; }
  }
