/* ==========================================================================
   Praktijk voor Privacy — componentset (sinds 2.7.0)

   Eén bron voor tokens en gedeelde componenten. Pagina's bouwen hieruit op
   met core-blokken en ppv-classes; geen losse <style>-blokken of inline
   kleuren meer in de pagina-inhoud. Iconen zijn getekende SVG's als
   data-URI-masker (geen externe iconenset, geen verzoek naar derden).
   ========================================================================== */

:root{
  /* Kleur: logokleuren + afgeleide neutralen met navy-ondertoon */
  --ppv-navy:#1F2F63;
  --ppv-petrol:#006694;
  --ppv-sky:#BBDCE9;          /* accent op navy (8,8:1) */
  --ppv-mist:#EFF5F8;         /* bandvlak */
  --ppv-white:#FFFFFF;
  --ppv-ink:#39445C;          /* lopende tekst, 9,7:1 op wit */
  --ppv-muted:#56627F;        /* secundaire tekst, ≥5,4:1 op wit/mist */
  --ppv-line:#CFD6E1;         /* kaartrand, haarlijnen */
  --ppv-line-soft:#E2E8F0;
  --ppv-selection:#FCE4A8;   /* tekstselectie: lichte saffraantint, navy tekst 10,2:1 */
  --ppv-error:#B42318;        /* foutmeldingen, 6,5:1 op wit */
  --ppv-field:#7F8AA1;        /* rand van invoervelden en checkboxen: 3,5:1 op wit, 3,2:1 op mist (WCAG 1.4.11) */
  --ppv-accent:#F2B33D;       /* saffraan: de enige steunkleur, alleen als vlak met navy tekst (6,9:1) */
  --ppv-accent-hover:#F6C667; /* hover van saffraan, 8,0:1 met navy */

  /* Type */
  --ppv-font-display:'Manrope',system-ui,sans-serif;
  --ppv-font-body:'Inter',system-ui,sans-serif;
  --ppv-fs-h1:clamp(2rem,1.3rem + 2.3vw,2.875rem);    /* 32 → 46: de homepage-kop past op één regel bij 1200px inhoud */
  --ppv-fs-h2:clamp(1.5rem,1.25rem + .9vw,2rem);      /* 24 → 32 */
  --ppv-fs-h3:clamp(1.1875rem,1.1rem + .3vw,1.3125rem);
  --ppv-fs-lead:clamp(1.0625rem,1rem + .35vw,1.25rem);
  --ppv-fs-body:1.0625rem;                             /* 17px */
  --ppv-fs-small:.9375rem;                             /* 15px */
  --ppv-fs-meta:.875rem;                               /* 14px */

  /* Ruimte */
  --ppv-gap:clamp(1.25rem,.9rem + 1.2vw,2rem);
  --ppv-pad-card:clamp(1.5rem,1.2rem + 1vw,2.25rem);
  --ppv-space-section:clamp(3.5rem,2.6rem + 3vw,5.5rem);

  /* Vorm */
  --ppv-radius-control:12px;
  --ppv-radius-card:16px;
  --ppv-radius-band:20px;
  --ppv-shadow-lift:0 10px 28px rgba(16,24,40,.09),0 2px 6px rgba(16,24,40,.05);

  /* Beweging */
  --ppv-ease:cubic-bezier(.16,1,.3,1);
  --ppv-dur:150ms;

  /* Getekende iconen (1,75px lijn, afgeronde uiteinden) */
  --ppv-icon-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
  --ppv-icon-check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
  --ppv-icon-sort:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 9l4-4 4 4M8 15l4 4 4-4'/%3E%3C/svg%3E");
  --ppv-icon-sort-up:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 19V5M6 11l6-6 6 6'/%3E%3C/svg%3E");
  --ppv-icon-sort-down:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M6 13l6 6 6-6'/%3E%3C/svg%3E");
  /* Microsoft-logo (vier vlakken, officiële kleuren) voor inloggen via Microsoft SSO — de enige andere kleuren in beeld */
  --ppv-logo-microsoft:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 21 21'%3E%3Cpath fill='%23f25022' d='M0 0h10v10H0z'/%3E%3Cpath fill='%237fba00' d='M11 0h10v10H11z'/%3E%3Cpath fill='%2300a4ef' d='M0 11h10v10H0z'/%3E%3Cpath fill='%23ffb900' d='M11 11h10v10H11z'/%3E%3C/svg%3E");
  --ppv-icon-check-navy:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231F2F63' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
  --ppv-icon-check-petrol:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23006694' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
  --ppv-icon-lock:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='10.5' width='14' height='10' rx='2'/%3E%3Cpath d='M8.5 10.5V7.5a3.5 3.5 0 0 1 7 0v3'/%3E%3C/svg%3E");

  /* Astra-palet op de logokleuren, zodat Customizer-kleuren (menuknop,
     dropdownrand, "global color"-banden, koppen) overal meekleuren. */
  --ast-global-color-0:#1F2F63;
  --ast-global-color-1:#006694;
  --ast-global-color-2:#1F2F63;
  --ast-global-color-3:#39445C;
  --ast-global-color-4:#FFFFFF;
  --ast-global-color-5:#EFF5F8;
  --ast-global-color-6:#1F2F63;
  --ast-global-color-7:#CFD6E1;
  --ast-global-color-8:#39445C;
}

/* --------------------------------------------------------------------------
   Browseroppervlakken: selectie, focus, cijfers
   -------------------------------------------------------------------------- */
::selection{background:var(--ppv-selection);color:var(--ppv-navy)}
html{scrollbar-color:#B7C1D1 transparent}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible,
.wp-block-button__link:focus-visible,
.ast-button:focus-visible{
  outline:2px solid var(--ppv-petrol) !important;
  outline-offset:3px !important;
  box-shadow:none;
}
.ppv-footer :focus-visible,
.ppv-on-dark :focus-visible{outline-color:#fff !important}

/* --------------------------------------------------------------------------
   Koppen (lage specificiteit: pagina-eigen stijlen van nog niet omgezette
   pagina's winnen tot die pagina in de rollout aan de beurt is)
   -------------------------------------------------------------------------- */
/* Astra zet koppen via `.entry-content :where(h1…)` op 600; de componentset
   maakt ze overal 800 in navy. Pagina-eigen <style>-blokken van nog niet
   omgezette pagina's blijven winnen waar ze specifieker zijn. */
.entry-content :is(h1,h2,h3,h4),
.ppv-section :is(h1,h2,h3,h4){
  font-family:var(--ppv-font-display);
  color:var(--ppv-navy);
  font-weight:800;
  letter-spacing:-.015em;
  text-wrap:balance;
}

/* --------------------------------------------------------------------------
   Knoppen — vier varianten
   primair (core-knop), secundair (core "Omlijnd"), omgekeerd (op donker),
   tekstlink met pijl. Hover: kleurwissel, geen verschuiving.
   -------------------------------------------------------------------------- */
/* Astra's customizer zet `.wp-block-button .wp-block-button__link` op een
   transparant (omlijnd) knopje; zelfde specificiteit, later geladen = wint. */
.wp-block-button .wp-block-button__link,
.ppv-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  min-height:48px;padding:.75rem 1.35rem;
  border-radius:var(--ppv-radius-control);
  background:var(--ppv-petrol);color:#fff;
  font-family:var(--ppv-font-body);font-size:1rem;font-weight:600;line-height:1.25;
  text-decoration:none;border:1.5px solid var(--ppv-petrol);box-shadow:none;
  transition:background-color var(--ppv-dur) var(--ppv-ease),color var(--ppv-dur) var(--ppv-ease),border-color var(--ppv-dur) var(--ppv-ease);
}
.wp-block-button .wp-block-button__link:hover,
.ppv-btn:hover{background:var(--ppv-navy);border-color:var(--ppv-navy);color:#fff;text-decoration:none}

.wp-block-button.is-style-outline > .wp-block-button__link,
.ppv-btn--secondary{background:transparent;color:var(--ppv-navy);border-color:var(--ppv-navy)}
.wp-block-button.is-style-outline > .wp-block-button__link:hover,
.ppv-btn--secondary:hover{background:var(--ppv-mist);color:var(--ppv-navy);border-color:var(--ppv-navy)}

.wp-block-button.is-style-ppv-inverse > .wp-block-button__link,
.ppv-btn--inverse{background:#fff;color:var(--ppv-navy);border-color:#fff}
.wp-block-button.is-style-ppv-inverse > .wp-block-button__link:hover,
.ppv-btn--inverse:hover{background:var(--ppv-mist);border-color:var(--ppv-mist);color:var(--ppv-navy)}

.wp-block-button.is-style-ppv-link > .wp-block-button__link,
.entry-content a.ppv-link-arrow,
.ppv-link-arrow{
  background:transparent;border:0;color:var(--ppv-petrol);
  padding-inline:0;min-height:44px;
  justify-content:flex-start;text-align:left; /* een tekstlink die afbreekt, blijft links staan */
}
.wp-block-button.is-style-ppv-link > .wp-block-button__link::after,
.ppv-link-arrow::after{
  content:"";width:1.1em;height:1.1em;flex:none;background:currentColor;
  -webkit-mask:var(--ppv-icon-arrow) center/contain no-repeat;mask:var(--ppv-icon-arrow) center/contain no-repeat;
  transition:transform var(--ppv-dur) var(--ppv-ease);
}
.wp-block-button.is-style-ppv-link > .wp-block-button__link:hover,
.entry-content a.ppv-link-arrow:hover,
.ppv-link-arrow:hover{background:transparent;border-color:transparent;color:var(--ppv-navy);text-decoration:underline;text-underline-offset:.25em}
.wp-block-button.is-style-ppv-link > .wp-block-button__link:hover::after,
.ppv-link-arrow:hover::after{transform:translateX(3px)}
.entry-content a.ppv-link-arrow,.ppv-link-arrow{display:inline-flex;align-items:center;gap:.45em;font-weight:600;text-decoration:none}

.wp-block-buttons.ppv-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem}
.entry-content .wp-block-group.ppv-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;padding:0}
.entry-content .wp-block-group.ppv-actions > *{margin:0}
.ppv-login-button > .wp-block-button__link::before{content:"";flex:none;width:1em;height:1em;background:var(--ppv-logo-microsoft) center/contain no-repeat}

/* --------------------------------------------------------------------------
   Secties en vlakken
   -------------------------------------------------------------------------- */
.entry-content > .ppv-section,
.entry-content > .wp-block-group.ppv-section{margin-block:var(--ppv-space-section) 0}
.entry-content > .ppv-section:first-child{margin-block-start:0}
.entry-content > .ppv-section.ppv-section--near{margin-block-start:clamp(1.75rem,1.4rem + 1vw,2.5rem)}

/* Astra geeft elke core-groep een eigen binnenmarge; de componentset bepaalt
   zelf de ruimte, zodat de inhoud op één lijn staat met de header. */
.entry-content .wp-block-group:is(.ppv-section,.ppv-doors,.ppv-door,.ppv-door__head,.ppv-door__body,.ppv-team__grid,.ppv-section-head,.ppv-news-card,.img-wrap,.card-body,.meta-row),
.entry-content .ppv-team__grid > .wp-block-group,
.entry-content .ppv-newsletter > .wp-block-group{padding:0}
.entry-content .wp-block-group.ppv-band{padding:var(--ppv-pad-card)}
.entry-content .wp-block-group.ppv-door__body{padding:var(--ppv-pad-card)}
.entry-content .wp-block-group.ppv-door__head{padding:var(--ppv-pad-card) var(--ppv-pad-card) 1.25rem}
.entry-content .ppv-news-card .card-body{padding:20px}
.entry-content .wp-block-group.ppv-home-hero{padding-top:clamp(1.75rem,1.2rem + 1.6vw,2.75rem)}

/* Lijsten in componenten: geen Astra-inspringing */
.entry-content :is(ul,ol):is(.ppv-link-list,.ppv-check-list,.ppv-dossiers){margin:0;padding:0}

.ppv-section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1.5rem;margin-bottom:1.75rem}
.ppv-section-head > *{margin:0 !important}
.ppv-section-head h2{font-size:var(--ppv-fs-h2)}

.ppv-card{
  background:#fff;border:1px solid var(--ppv-line);border-radius:var(--ppv-radius-card);
  padding:var(--ppv-pad-card);
}
.ppv-band{background:var(--ppv-mist);border-radius:var(--ppv-radius-band);padding:var(--ppv-pad-card)}
/* Op een band (mist) krijgen de vinkjescirkel en de hover van een omlijnde knop het tegenvlak: wit */
.ppv-band .ppv-check-list li::before{background:#fff}
.ppv-band .wp-block-button.is-style-outline > .wp-block-button__link:hover,
.ppv-band .ppv-btn--secondary:hover{background:#fff}
.ppv-panel{background:var(--ppv-navy);color:#fff;border-radius:var(--ppv-radius-band);padding:var(--ppv-pad-card)}
.ppv-panel :where(h2,h3){color:#fff}

.ppv-nowrap{white-space:nowrap}
.ppv-lead{font-size:var(--ppv-fs-lead);line-height:1.55;color:var(--ppv-ink);max-width:60ch}

/* Vinkjeslijst (voordelen) — getekend vinkje in een mist-cirkel */
.ppv-check-list{list-style:none;margin:0;padding:0;display:grid;gap:1rem}
.ppv-check-list li{position:relative;padding-left:2.25rem;font-size:var(--ppv-fs-body);line-height:1.55;color:var(--ppv-ink)}
.ppv-check-list li::before{
  content:"";position:absolute;left:0;top:.1em;width:1.5rem;height:1.5rem;border-radius:50%;
  background:var(--ppv-mist);
}
.ppv-check-list--compact{gap:.6rem}
.ppv-check-list--compact li{font-size:var(--ppv-fs-small);padding-left:2rem}
.ppv-check-list--compact li::before{width:1.3rem;height:1.3rem;top:.05em}
.ppv-check-list--compact li::after{left:.26rem;top:.33em;width:.78rem;height:.78rem}
.ppv-check-list li::after{
  content:"";position:absolute;left:.3rem;top:.4em;width:.9rem;height:.9rem;background:var(--ppv-petrol);
  -webkit-mask:var(--ppv-icon-check) center/contain no-repeat;mask:var(--ppv-icon-check) center/contain no-repeat;
}

/* Linklijst (werkvormen) — hele regel klikbaar, haarlijn ertussen */
.ppv-link-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--ppv-line-soft)}
.ppv-link-list li{margin:0;border-bottom:1px solid var(--ppv-line-soft)}
.entry-content .ppv-link-list a,
.ppv-link-list a{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:48px;padding:.7rem 0;
  font-weight:600;color:var(--ppv-navy);text-decoration:none;
  transition:color var(--ppv-dur) var(--ppv-ease);
}
.ppv-link-list a::after{
  content:"";width:1.1rem;height:1.1rem;flex:none;background:var(--ppv-petrol);
  -webkit-mask:var(--ppv-icon-arrow) center/contain no-repeat;mask:var(--ppv-icon-arrow) center/contain no-repeat;
  transition:transform var(--ppv-dur) var(--ppv-ease);
}
.ppv-link-list a:hover{color:var(--ppv-petrol)}
.ppv-link-list a:hover::after{transform:translateX(4px)}

/* Foto — eigen fotografie, vaste radius, vaste verhouding per plek */
.ppv-photo{margin:0;border-radius:var(--ppv-radius-card);overflow:hidden;background:var(--ppv-mist)}
.ppv-photo img{display:block;width:100%;height:100%;object-fit:cover}

/* Markeringspil (Pre-DPIA / DPIA / Gratis) */
.ppv-pill{
  display:inline-flex;align-items:center;min-height:1.5rem;padding:0 .6rem;border-radius:999px;
  font-size:.8125rem;font-weight:600;line-height:1;white-space:nowrap;
  background:#fff;color:var(--ppv-navy);border:1px solid var(--ppv-line);
}
.ppv-pill--pre{color:var(--ppv-petrol);border-color:currentColor}
.ppv-pill--free{background:var(--ppv-accent);border-color:var(--ppv-accent);color:var(--ppv-navy)}

/* --------------------------------------------------------------------------
   Het register — dossierregels uit het DPIA Depot (signatuur)
   -------------------------------------------------------------------------- */
.ppv-register{background:var(--ppv-mist);padding:clamp(1.25rem,1rem + 1vw,1.75rem);container:ppv-register / inline-size}
.ppv-register__head{
  display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1rem;margin:0 0 .75rem;
  font-size:var(--ppv-fs-meta);color:var(--ppv-muted);
}
.ppv-register__head strong{font-family:var(--ppv-font-display);font-size:var(--ppv-fs-small);font-weight:800;color:var(--ppv-navy)}
/* Saffraan stip: het register is het nieuwste van het Depot; dezelfde stip hangt voor documenten van de laatste 14 dagen */
.ppv-dossier__nr{position:relative}
.ppv-dossier.is-nieuw .ppv-dossier__nr::before{content:"";position:absolute;left:-.8em;top:.48em;width:.45em;height:.45em;border-radius:50%;background:var(--ppv-accent)}
.ppv-register__head strong::before{content:"";display:inline-block;width:.5em;height:.5em;margin-right:.45em;border-radius:50%;background:var(--ppv-accent);vertical-align:.08em}
.entry-content .ppv-register__head a,
.ppv-register__head a{text-decoration:none;color:var(--ppv-petrol);font-weight:600;text-decoration:none}
.ppv-register__head a:hover{color:var(--ppv-navy);text-decoration:underline;text-underline-offset:.2em}

.ppv-dossiers{list-style:none;margin:0;padding:0;border-top:1px solid var(--ppv-line)}
.ppv-dossiers li{margin:0;border-bottom:1px solid var(--ppv-line)}
.entry-content a.ppv-dossier,
.ppv-dossier{
  display:grid;grid-template-columns:4.25rem minmax(0,1fr) 1.25rem;grid-template-areas:"nr title go" "nr meta go";
  column-gap:.75rem;row-gap:.3rem;align-items:center;
  padding:.85rem .75rem;margin:0 -.75rem;border-radius:10px;
  color:var(--ppv-navy);text-decoration:none;
  transition:background-color var(--ppv-dur) var(--ppv-ease);
}
.ppv-dossier__nr{
  grid-area:nr;align-self:start;padding-top:.1rem;
  font-family:var(--ppv-font-body);font-size:var(--ppv-fs-meta);font-weight:600;color:var(--ppv-muted);
  font-variant-numeric:tabular-nums lining-nums;white-space:nowrap;
  transition:color var(--ppv-dur) var(--ppv-ease);
}
.ppv-dossier__title{grid-area:title;font-family:var(--ppv-font-display);font-weight:700;font-size:1rem;line-height:1.35;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:20 8 8;-webkit-hyphenate-limit-before:8;-webkit-hyphenate-limit-after:8}
.ppv-dossier__meta{grid-area:meta;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:var(--ppv-fs-meta);color:var(--ppv-muted)}
.ppv-dossier__meta time{font-variant-numeric:tabular-nums}
.ppv-dossier::after{
  grid-area:go;content:"";width:1.1rem;height:1.1rem;background:var(--ppv-petrol);opacity:0;transform:translateX(-4px);
  -webkit-mask:var(--ppv-icon-arrow) center/contain no-repeat;mask:var(--ppv-icon-arrow) center/contain no-repeat;
  transition:opacity var(--ppv-dur) var(--ppv-ease),transform var(--ppv-dur) var(--ppv-ease);
}
.ppv-dossier:hover,.ppv-dossier:focus-visible{background:#fff;text-decoration:none}
.ppv-dossier:hover .ppv-dossier__nr,.ppv-dossier:focus-visible .ppv-dossier__nr{color:var(--ppv-petrol)}
.ppv-dossier:hover::after,.ppv-dossier:focus-visible::after{opacity:1;transform:none}
.ppv-register--empty{font-size:var(--ppv-fs-small);color:var(--ppv-muted)}

/* --------------------------------------------------------------------------
   Homepage — hero en de twee deuren
   -------------------------------------------------------------------------- */
.ppv-home-hero{padding-top:clamp(2.5rem,1.6rem + 3vw,4.5rem)}
.ppv-home-hero h1{font-size:var(--ppv-fs-h1);line-height:1.08;letter-spacing:-.025em;margin:0 0 .85rem}
.ppv-home-hero .ppv-lead{margin:0}

.entry-content > .ppv-doors{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto 1fr;
  column-gap:var(--ppv-gap);row-gap:0;
  margin-block:clamp(1.75rem,1.4rem + 1vw,2.5rem) 0;
  container:ppv-doors / inline-size;   /* op het raster, niet op de deur: containment op de deur zet subgrid uit */
}
.ppv-doors > *{margin:0 !important}
/* Elke deur deelt de rijen van het raster (kop · bewijs · inhoud), zodat
   namen, bewijsvlakken en knoppen van beide deuren exact op één lijn staan. */
.ppv-door{
  grid-row:span 3;display:grid;grid-template-rows:subgrid;
  background:#fff;border:1px solid var(--ppv-line);border-radius:var(--ppv-radius-card);overflow:hidden;
}
.ppv-door > *{margin:0 !important}

.ppv-door__head{
  display:grid;grid-template-columns:minmax(0,1fr);gap:.5rem 1.5rem;align-items:center;align-content:start;
  padding:var(--ppv-pad-card) var(--ppv-pad-card) 1.5rem;
}
.ppv-door__head > *{margin:0 !important}
.ppv-door__head h2{font-size:clamp(1.5rem,1.3rem + .6vw,1.875rem);line-height:1.15;letter-spacing:-.02em}
.ppv-door__key{font-size:var(--ppv-fs-small) !important;line-height:1.5;color:var(--ppv-muted) !important}
.ppv-door__key strong{color:var(--ppv-navy);font-weight:700}
.ppv-door__cta{margin-top:.5rem !important}
@container ppv-doors (min-width: 1072px){
  .ppv-door__head{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title cta" "key cta"}
  .ppv-door__head h2{grid-area:title;align-self:end}
  .ppv-door__key{grid-area:key;align-self:start}
  .ppv-door__cta{grid-area:cta;margin-top:0 !important}
}

.ppv-door__media{border-radius:0;width:100%;height:100%;min-height:15rem}
.ppv-door__media img{height:100%}
.ppv-door .ppv-register{height:100%;display:flex;flex-direction:column;justify-content:flex-start}
.ppv-door__body{display:flex;flex-direction:column;gap:1rem;padding:var(--ppv-pad-card)}
.ppv-door__body > *{margin:0 !important}
.ppv-door__body p{font-size:var(--ppv-fs-body);line-height:1.6;color:var(--ppv-ink);max-width:52ch}
.ppv-door__body .ppv-actions{margin-top:auto !important}

/* Register éénregelig op een brede kaart: nummer · titel · datum en markering · pijl */
@container ppv-register (min-width: 480px){
  .entry-content a.ppv-dossier,.ppv-dossier{grid-template-columns:3.5rem minmax(0,1fr) auto 1.1rem;grid-template-areas:"nr title meta go";padding-block:.7rem}
  .ppv-dossier__nr{align-self:center;padding-top:0}
  /* Datum en markering in vaste sporen, zodat de datumkolom recht staat */
  .ppv-dossier__meta{display:grid;grid-template-columns:6.25rem 5.5rem;column-gap:.6rem;align-items:center;justify-items:start}
  .ppv-dossier__meta time{justify-self:end}
}
/* Smal register (mobiel): drie regels volstaan */
@container ppv-register (max-width: 479px){
  .ppv-dossiers li:nth-child(n+4){display:none}
}

/* Team — wie je spreekt */
.ppv-team .ppv-photo{aspect-ratio:21/9}
.ppv-team__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(2rem,1rem + 4vw,5rem);margin-top:clamp(2rem,1.5rem + 1.5vw,3rem) !important;align-items:start}
.ppv-team__grid > *{margin:0 !important}
.ppv-team__grid h2{font-size:var(--ppv-fs-h2);line-height:1.15;margin:0 0 1rem}
.ppv-team__grid p{font-size:var(--ppv-fs-body);line-height:1.65;color:var(--ppv-ink);max-width:62ch;margin:0 0 1rem}
.ppv-team__grid .ppv-actions{margin-top:1.25rem}
.ppv-team__caption{font-size:var(--ppv-fs-meta);color:var(--ppv-muted);margin:.75rem 0 0 !important}
/* Teamsectie zonder foto (homepage sinds 2.9.4): het raster begint de band */
.ppv-team__grid:first-child{margin-top:0 !important}

/* Actueel — registerlijst zonder beeld: datum · titel · pijl, hele regel klikbaar */
.entry-content ul.ppv-newslist{list-style:none;margin:0;padding:0;border-top:1px solid var(--ppv-line)}
.ppv-newslist > li{margin:0;border-bottom:1px solid var(--ppv-line)}
.entry-content .ppv-newsrow{
  position:relative;display:grid;grid-template-columns:10rem minmax(0,1fr) 1.25rem;grid-template-areas:"date title go" "date excerpt go";
  column-gap:1.5rem;row-gap:.25rem;align-items:baseline;padding:1.1rem .75rem;margin:0 -.75rem;border-radius:10px;
  transition:background-color var(--ppv-dur) var(--ppv-ease);
}
.ppv-newsrow > *{margin:0 !important}
.ppv-newsrow__date{grid-area:date;font-size:var(--ppv-fs-meta);font-weight:600;color:var(--ppv-muted);font-variant-numeric:tabular-nums;transition:color var(--ppv-dur) var(--ppv-ease)}
.ppv-newsrow__title{grid-area:title;font-size:1.125rem !important;line-height:1.35 !important;font-weight:700 !important}
.entry-content .ppv-newsrow__title a{color:var(--ppv-navy);text-decoration:none}
.ppv-newsrow__title a::after{content:"";position:absolute;inset:0;border-radius:10px}
.ppv-newsrow__excerpt{grid-area:excerpt;font-size:var(--ppv-fs-small);color:var(--ppv-muted);max-width:62ch}
.ppv-newsrow__excerpt p{margin:0;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.ppv-newsrow__excerpt .wp-block-post-excerpt__more-text{display:none}
.ppv-newsrow::after{
  grid-area:go;align-self:center;content:"";width:1.1rem;height:1.1rem;background:var(--ppv-petrol);opacity:0;transform:translateX(-4px);
  -webkit-mask:var(--ppv-icon-arrow) center/contain no-repeat;mask:var(--ppv-icon-arrow) center/contain no-repeat;
  transition:opacity var(--ppv-dur) var(--ppv-ease),transform var(--ppv-dur) var(--ppv-ease);
}
.ppv-newsrow:hover,.ppv-newsrow:focus-within{background:var(--ppv-mist)}
.ppv-newsrow:hover .ppv-newsrow__date,.ppv-newsrow:focus-within .ppv-newsrow__date{color:var(--ppv-petrol)}
.ppv-newsrow:hover::after,.ppv-newsrow:focus-within::after{opacity:1;transform:none}
.ppv-newsrow__title a:focus-visible{outline-offset:6px !important}

/* Nieuwskaarten (/nieuws/) — elk bericht met een kleine eigen foto, zoals op de oude nieuwspagina.
   Vlak: haarlijn, geen schaduw, niets tilt op; de hele kaart is klikbaar via de titel. */
.entry-content .wp-block-post-template.ppv-newsgrid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ppv-gap)}
.ppv-newsgrid > li{margin:0;min-width:0}
.entry-content .wp-block-group.ppv-newscard{position:relative;display:flex;flex-direction:column;height:100%;padding:0;background:#fff;border:1px solid var(--ppv-line);border-radius:var(--ppv-radius-card);overflow:hidden;transition:border-color var(--ppv-dur) var(--ppv-ease)}
.ppv-newscard > *{margin:0 !important}
.ppv-newscard__img{aspect-ratio:16/9;overflow:hidden;background:var(--ppv-mist)}
.ppv-newscard__img img{display:block;width:100%;height:100%;object-fit:cover;box-shadow:none !important;border-radius:0 !important}
.entry-content .wp-block-group.ppv-newscard__body{display:flex;flex-direction:column;gap:.45rem;padding:1.1rem 1.25rem 1.4rem}
.ppv-newscard__body > *{margin:0 !important}
.ppv-newscard__date{font-size:var(--ppv-fs-meta);font-weight:600;color:var(--ppv-muted);font-variant-numeric:tabular-nums}
.entry-content .ppv-newscard__title{font-size:1.125rem;line-height:1.35;letter-spacing:-.01em}
.entry-content .ppv-newscard__title a{color:var(--ppv-navy);text-decoration:none;transition:color var(--ppv-dur) var(--ppv-ease)}
.ppv-newscard__title a::after{content:"";position:absolute;inset:0;z-index:1}
.ppv-newscard__excerpt p{margin:0;font-size:var(--ppv-fs-small);line-height:1.55;color:var(--ppv-ink)}
.ppv-newscard__excerpt .wp-block-post-excerpt__more-text{display:none}
.entry-content .wp-block-group.ppv-newscard:hover{border-color:var(--ppv-petrol)}
.entry-content .ppv-newscard:hover .ppv-newscard__title a{color:var(--ppv-petrol);text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px}
.entry-content .wp-block-group.ppv-newscard:focus-within{outline:2px solid var(--ppv-petrol);outline-offset:3px}
.entry-content .ppv-newscard__title a:focus-visible{outline:none !important}
@media (max-width:900px){.entry-content .wp-block-post-template.ppv-newsgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.entry-content .wp-block-post-template.ppv-newsgrid{grid-template-columns:1fr}}

/* Nieuwsbrief */
.ppv-newsletter{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem 2rem}
.ppv-newsletter > *{margin:0 !important}
.ppv-newsletter h2{font-size:clamp(1.25rem,1.15rem + .4vw,1.5rem);margin:0 0 .35rem !important}
.ppv-newsletter p{margin:0;color:var(--ppv-ink);max-width:56ch}

/* Nieuwskaarten (nieuwsoverzicht, legacy tot de rollout van /nieuws/) */
.ppv-news-card .wp-block-post-title{font-size:1.125rem}
.entry-content .ppv-news-card .card-body{display:flex;flex-direction:column;gap:.5rem}
.entry-content .ppv-news-card .card-body > *{margin:0}
.entry-content .ppv-news-card .wp-block-post-excerpt{margin:0}
.entry-content .ppv-news-card .card-body .wp-block-read-more{margin-top:.25rem}
.entry-content .ppv-news-card .wp-block-read-more{display:inline-flex;align-items:center;gap:.45em;min-height:44px;color:var(--ppv-petrol);font-weight:600;text-decoration:none}
.ppv-news-card .wp-block-read-more::after{content:"";width:1.05em;height:1.05em;background:currentColor;-webkit-mask:var(--ppv-icon-arrow) center/contain no-repeat;mask:var(--ppv-icon-arrow) center/contain no-repeat;transition:transform var(--ppv-dur) var(--ppv-ease)}
.entry-content .ppv-news-card .wp-block-read-more:hover{color:var(--ppv-navy);text-decoration:underline;text-underline-offset:.25em}
.ppv-news-card .wp-block-read-more:hover::after{transform:translateX(3px)}

@media (max-width:900px){
  .entry-content > .ppv-doors{grid-template-columns:1fr;grid-template-rows:none;row-gap:var(--ppv-gap)}
  .ppv-door{grid-row:auto;display:flex;flex-direction:column}
  .ppv-door__media{aspect-ratio:16/10;height:auto;min-height:0}
  .ppv-door .ppv-register{height:auto}
  .ppv-team__grid{grid-template-columns:1fr}
  .ppv-team .ppv-photo{aspect-ratio:16/9}
}
@media (max-width:600px){
  .entry-content .ppv-newsrow{grid-template-columns:minmax(0,1fr) 1.1rem;grid-template-areas:"date go" "title go" "excerpt go"}
  .ppv-dossier{grid-template-columns:3.5rem minmax(0,1fr) 1rem}
  .ppv-newsletter .wp-block-buttons,.ppv-newsletter .wp-block-button{width:100%}
  .ppv-newsletter .wp-block-button__link{width:100%}
}

/* --------------------------------------------------------------------------
   Binnenpagina's — paginakop, leeskolom, secties, afsluiter
   -------------------------------------------------------------------------- */
.entry-content .wp-block-group.ppv-page-hero{padding:clamp(1.75rem,1.2rem + 1.6vw,2.75rem) 0 0}
/* Astra zet op pagina's met (voorheen) een titel inline #primary{margin:60px 0}; met een eigen paginakop hoort de ruimte bij de kop zelf. */
body.ppv-own-hero #primary{margin-top:0 !important;margin-bottom:0 !important}
.ppv-page-hero h1{font-size:clamp(2rem,1.45rem + 1.8vw,2.75rem);line-height:1.1;letter-spacing:-.025em;margin:0 0 .85rem}
.ppv-page-hero .ppv-lead{margin:0}
.ppv-page-hero .ppv-actions{margin-top:1.5rem !important}
.ppv-page-hero__key{margin:1rem 0 0 !important;font-size:var(--ppv-fs-small);color:var(--ppv-muted)}
.ppv-page-hero__key strong{color:var(--ppv-navy)}
.entry-content .wp-block-group.ppv-page-hero--split{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(1.5rem,1rem + 3vw,4rem);align-items:center}
.ppv-page-hero--split > *{margin:0 !important}
.ppv-page-hero--split > .ppv-toc{grid-column:1/-1}
.ppv-page-hero--split .ppv-register{border-radius:var(--ppv-radius-card)}
.ppv-page-hero--split .ppv-photo{aspect-ratio:3/2}

/* Op deze pagina — sprongkoppelingen naar de secties */
.ppv-toc{display:flex;flex-wrap:wrap;align-items:center;gap:0 1.5rem;margin:1.5rem 0 0 !important;padding-top:.75rem;border-top:1px solid var(--ppv-line-soft);font-size:var(--ppv-fs-small);color:var(--ppv-muted)}
.entry-content .ppv-toc a{display:inline-flex;align-items:center;min-height:44px;color:var(--ppv-petrol);font-weight:600;text-decoration:none}
.entry-content .ppv-toc a:hover{color:var(--ppv-navy);text-decoration:underline;text-underline-offset:.25em}
.ppv-toc__label{margin-right:.25rem}
[id]{scroll-margin-top:6rem}

/* Leeskolom */
.ppv-prose > *{max-width:60ch}   /* Inter op 17px: 60ch ≈ 75 tekens */
.ppv-prose > *:first-child{margin-top:0}
.ppv-prose p,.ppv-prose li{font-size:var(--ppv-fs-body);line-height:1.7;color:var(--ppv-ink)}
.ppv-prose p{margin:0 0 1.1rem}
.entry-content .ppv-prose ul:not(.ppv-check-list):not(.ppv-link-list){margin:0 0 1.25rem;padding-left:1.25rem}
.ppv-prose ul:not(.ppv-check-list):not(.ppv-link-list) li{margin:0 0 .5rem;padding-left:.25rem}
.ppv-prose li::marker{color:var(--ppv-petrol)}
.ppv-prose h3{font-size:var(--ppv-fs-h3);line-height:1.3;margin:1.75rem 0 .5rem}
/* Tekstlinks in lopende tekst (leeskolom, stappen, nieuwsartikel): petrol met een onderstreping
   van 1px; hover navy op de lichte saffraantint met een onderstreping van 2px (saffraan als vlak
   met navy erop). De box-shadow geeft het vlak wat lucht zonder dat de regel verspringt. */
.entry-content .ppv-prose a:not(.wp-block-button__link),
.entry-content .ppv-steps a,
.article-body a:not(.wp-block-button__link){color:var(--ppv-petrol);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em;border-radius:3px;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:color var(--ppv-dur) var(--ppv-ease),background-color var(--ppv-dur) var(--ppv-ease),box-shadow var(--ppv-dur) var(--ppv-ease)}
.entry-content .ppv-prose a:not(.wp-block-button__link):hover,
.entry-content .ppv-steps a:hover,
.article-body a:not(.wp-block-button__link):hover{color:var(--ppv-navy);background-color:var(--ppv-selection);box-shadow:0 0 0 .15em var(--ppv-selection);text-decoration-thickness:2px}
.ppv-prose .ppv-actions{margin-top:1.5rem}
.entry-content .ppv-prose .ppv-check-list{margin-bottom:1.5rem}

/* Juridische pagina's (privacyverklaring, voorwaarden, AI-beleid): één leeskolom met echte
   tussenkoppen; artikelen in de algemene voorwaarden genummerd als 1, 1.1, 1.2 */
.ppv-legal h2{font-size:clamp(1.25rem,1.1rem + .5vw,1.5rem);line-height:1.25;margin:2.25rem 0 .6rem}
.ppv-legal > h2:first-child{margin-top:0}
.entry-content .ppv-legal .ppv-legal__note{font-size:var(--ppv-fs-small);color:var(--ppv-muted)}
.ppv-legal .wp-block-image{margin:1.5rem 0}
.ppv-legal .wp-block-image img{border-radius:10px;box-shadow:none !important}
.entry-content .ppv-legal ol.ppv-legal-list{counter-reset:ppv-art;list-style:none;margin:0;padding:0}
.entry-content .ppv-legal ol.ppv-legal-list > li{counter-increment:ppv-art;margin:0 0 1.75rem;padding:0}
.ppv-legal ol.ppv-legal-list > li > strong:first-child{display:block;margin:0 0 .6rem;font-family:var(--ppv-font-display);font-weight:800;font-size:clamp(1.1875rem,1.1rem + .3vw,1.3125rem);line-height:1.3;color:var(--ppv-navy)}
.ppv-legal ol.ppv-legal-list > li > strong:first-child::before{content:counter(ppv-art) ". "}
.entry-content .ppv-legal ol.ppv-legal-list > li > ol{counter-reset:ppv-lid;list-style:none;margin:0;padding:0}
.entry-content .ppv-legal ol.ppv-legal-list > li > ol > li{counter-increment:ppv-lid;position:relative;margin:0 0 .6rem;padding-left:3rem}
.ppv-legal ol.ppv-legal-list > li > ol > li::before{content:counter(ppv-art) "." counter(ppv-lid);position:absolute;left:0;top:0;font-weight:600;color:var(--ppv-muted);font-variant-numeric:tabular-nums}
/* Schermafbeelding als bewijs (bijv. een cookiescan): haarlijn, zodat een witte rand niet wegvalt */
.ppv-legal .wp-block-image.ppv-screenshot img{border:1px solid var(--ppv-line)}

/* Juridische pagina met inhoudsopgave (privacyverklaring, algemene voorwaarden, AI-beleid):
   de sprongkoppelingen staan boven de leeskolom, en vanaf 900px als meelopende kolom rechts
   ernaast (8/4, zoals de documentpagina). Elke H2 en elk artikel opent met een zachte haarlijn. */
.entry-content .wp-block-group.ppv-legal-layout > .ppv-toc{margin:0 0 2rem !important;padding-bottom:.25rem;border-bottom:1px solid var(--ppv-line-soft)}
/* De kolom zelf is 60ch, zodat de haarlijnen even breed zijn als de tekst */
.ppv-legal-layout > .ppv-legal{max-width:60ch;font-size:var(--ppv-fs-body)}
.ppv-legal-layout .ppv-legal > h2{margin-top:2.75rem;padding-top:2rem;border-top:1px solid var(--ppv-line-soft)}
.entry-content .ppv-legal-layout .ppv-legal ol.ppv-legal-list > li{margin:0}
.entry-content .ppv-legal-layout .ppv-legal ol.ppv-legal-list > li + li{margin-top:2.75rem;padding-top:2rem;border-top:1px solid var(--ppv-line-soft)}
.entry-content .ppv-legal-layout .ppv-legal > .ppv-legal__note:last-child{max-width:none;margin:2.75rem 0 0;padding-top:1.25rem;border-top:1px solid var(--ppv-line-soft)}
.entry-content .ppv-legal-layout > .ppv-toc a[aria-current]{color:var(--ppv-navy);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.45em;text-decoration-color:var(--ppv-petrol)}
/* Genummerd (de artikelen van de voorwaarden): altijd een lijst onder elkaar, met het
   artikelnummer uit een CSS-teller, net als in de voorwaarden zelf */
.entry-content .wp-block-group.ppv-legal-layout > .ppv-toc--numbered{counter-reset:ppv-toc;flex-direction:column;align-items:stretch;padding:0;border:0}
.ppv-legal-layout > .ppv-toc--numbered .ppv-toc__label{margin:0 0 .5rem;font-size:var(--ppv-fs-meta);font-weight:600}
.entry-content .ppv-legal-layout > .ppv-toc--numbered a{counter-increment:ppv-toc;position:relative;align-items:flex-start;padding:.6rem 0 .6rem 2rem;border-top:1px solid var(--ppv-line-soft)}
.entry-content .ppv-legal-layout > .ppv-toc--numbered a:last-child{border-bottom:1px solid var(--ppv-line-soft)}
/* Buiten de tekstloop, zodat de onderstreping van de actieve sectie alleen onder de titel staat;
   bij een titel over twee regels staat het nummer naast de eerste regel */
.ppv-legal-layout > .ppv-toc--numbered a::before{content:counter(ppv-toc) ".";position:absolute;top:.6rem;left:0;color:var(--ppv-muted);font-variant-numeric:tabular-nums}
@media (min-width:900px){
  .entry-content .wp-block-group.ppv-legal-layout{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);column-gap:clamp(2rem,1rem + 3vw,4rem);align-items:start}
  .entry-content .wp-block-group.ppv-legal-layout > *{margin:0 !important}
  .ppv-legal-layout > .ppv-legal{grid-column:1;grid-row:1}
  .entry-content .wp-block-group.ppv-legal-layout > .ppv-toc{grid-column:2;grid-row:1;position:sticky;top:2rem;flex-direction:column;align-items:stretch;padding:0;border:0}
  .ppv-legal-layout > .ppv-toc .ppv-toc__label{margin:0 0 .5rem;font-size:var(--ppv-fs-meta);font-weight:600}
  .entry-content .ppv-legal-layout > .ppv-toc a{border-top:1px solid var(--ppv-line-soft)}
  .entry-content .ppv-legal-layout > .ppv-toc a:last-child{border-bottom:1px solid var(--ppv-line-soft)}
}
/* Op een laag scherm past de lange lijst niet meelopend: dan staat hij gewoon stil */
@media (min-width:900px) and (max-height:48rem){
  .entry-content .wp-block-group.ppv-legal-layout > .ppv-toc--numbered{position:static}
}

/* Stappen — een genummerde volgorde (de volgorde zelf is de informatie) */
.entry-content ol.ppv-steps{list-style:none;counter-reset:ppv-step;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ppv-gap);margin:1.75rem 0 0;padding:0}
.entry-content .ppv-steps > li{counter-increment:ppv-step;margin:0;padding:var(--ppv-pad-card);background:#fff;border:1px solid var(--ppv-line);border-radius:var(--ppv-radius-card);font-size:var(--ppv-fs-small);line-height:1.6;color:var(--ppv-ink)}
.ppv-steps > li::before{content:counter(ppv-step);display:grid;place-items:center;width:2rem;height:2rem;margin-bottom:1rem;border-radius:50%;background:var(--ppv-accent);color:var(--ppv-navy);font-family:var(--ppv-font-display);font-weight:800;font-size:1rem;font-variant-numeric:tabular-nums}
.ppv-steps > li > strong:first-child{display:block;margin-bottom:.4rem;font-family:var(--ppv-font-display);font-weight:800;font-size:1.125rem;line-height:1.35;color:var(--ppv-navy)}

/* Code en gekopieerde links (welkomstpagina): Inter-tekst, code alleen waar het echt code is */
.ppv-prose code,.ppv-steps code{font-size:.9em;padding:.1em .35em;border-radius:6px;background:var(--ppv-mist);color:var(--ppv-navy);overflow-wrap:anywhere}
.ppv-band .ppv-prose code{background:#fff}
.entry-content .ppv-prose pre.wp-block-code{margin:0 0 1rem;padding:.9rem 1rem;border:1px solid var(--ppv-line);border-radius:10px;background:var(--ppv-mist);white-space:pre-wrap;word-break:break-all;font-size:.875rem;line-height:1.55;color:var(--ppv-ink)}
.entry-content .ppv-prose pre.wp-block-code code{padding:0;background:none;font-size:inherit;color:inherit}

/* Toestemmingskaart (welkomstpagina, voor de ICT-beheerder) */
.entry-content .wp-block-group.ppv-consent{margin:1.5rem 0 2rem;display:flex;flex-direction:column;gap:1rem}
.ppv-consent > *{margin:0 !important;max-width:none}
.entry-content .ppv-consent .ppv-consent__label{font-weight:600;font-size:var(--ppv-fs-small);color:var(--ppv-navy)}
.entry-content .ppv-consent .ppv-consent__id{font-size:var(--ppv-fs-small);color:var(--ppv-muted)}
.ppv-consent .ppv-login-button > .wp-block-button__link::before{width:1.1em;height:1.1em;padding:.15em;border-radius:3px;background-color:#fff;background-origin:content-box}

/* Beeld in een split-kop dat geen foto uit het register is (bijv. de GIF op de 404-pagina) */
.ppv-page-hero--split .ppv-photo--gif{aspect-ratio:auto;max-width:26rem;justify-self:end}
.ppv-page-hero--split .ppv-photo--gif img{height:auto}

/* Sectie met kop links en tekst rechts, als een dossierblad */
.entry-content .wp-block-group.ppv-split{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:1rem clamp(1.5rem,1rem + 3vw,4rem);align-items:start}
.ppv-split > *{margin:0 !important}
.ppv-split__head h2{font-size:var(--ppv-fs-h2);line-height:1.15;margin:0 0 .6rem}
.ppv-split__head p{font-size:var(--ppv-fs-small);line-height:1.5;color:var(--ppv-muted);margin:0;max-width:34ch}
.entry-content .wp-block-group.ppv-split.ppv-band{padding:var(--ppv-pad-card)}

/* Twee gelijke kolommen */
.entry-content .wp-block-group.ppv-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem clamp(2rem,1rem + 4vw,5rem);align-items:start}
.ppv-columns > *{margin:0 !important}
.ppv-columns h2{font-size:var(--ppv-fs-h2);margin:0 0 1rem}

/* Afsluiter — navy paneel met één duidelijke vervolgstap */
.entry-content .wp-block-group.ppv-close{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem 2.5rem;padding:clamp(1.75rem,1.2rem + 2vw,3rem)}
.ppv-close > *{margin:0 !important}
.ppv-close h2{font-size:clamp(1.375rem,1.2rem + .7vw,1.875rem);line-height:1.2;color:#fff;margin:0 0 .4rem !important}
.ppv-close p{margin:0;color:rgba(255,255,255,.88);max-width:56ch;font-size:var(--ppv-fs-body);line-height:1.55}
.ppv-close .wp-block-button.is-style-ppv-link > .wp-block-button__link{color:#fff}
.ppv-close .wp-block-button.is-style-ppv-link > .wp-block-button__link:hover,
.ppv-close .ppv-link-arrow:hover{color:var(--ppv-accent)}

/* Urenpakketten */
.entry-content .wp-block-group.ppv-packages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ppv-gap);margin-top:1.75rem !important}
.ppv-packages > *{margin:0 !important}
.entry-content .wp-block-group.ppv-package{display:flex;flex-direction:column;gap:.35rem;padding:var(--ppv-pad-card)}
.ppv-package > *{margin:0 !important}
.ppv-package h3{font-size:1.125rem;margin:0 !important}
.ppv-package__hours{font-family:var(--ppv-font-display);font-weight:800;font-size:clamp(2rem,1.7rem + 1vw,2.5rem);line-height:1.1;color:var(--ppv-navy);font-variant-numeric:tabular-nums}
.ppv-package .ppv-check-list{margin-top:.75rem !important}
.entry-content .wp-block-group.ppv-package--featured{border:2px solid var(--ppv-navy)}
.entry-content .wp-block-group.ppv-package{position:relative}
.ppv-package .ppv-pill{position:absolute;top:var(--ppv-pad-card);right:var(--ppv-pad-card)}
.ppv-package--featured h3{padding-right:8.5rem}

/* Team (Over ons) */
.entry-content .wp-block-group.ppv-members{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.5rem,1rem + 2vw,3rem);margin-top:2rem !important}
.ppv-members > *{margin:0 !important}
.entry-content .wp-block-group.ppv-member{display:flex;flex-direction:column;gap:.6rem}
.ppv-member > *{margin:0 !important}
.ppv-member .ppv-photo{aspect-ratio:4/5;margin-bottom:.5rem !important}
.ppv-member h3{font-size:1.25rem;line-height:1.25}
.ppv-member__role{font-size:var(--ppv-fs-small) !important;font-weight:600;color:var(--ppv-petrol) !important}
.ppv-member p{font-size:var(--ppv-fs-small);line-height:1.6;color:var(--ppv-ink)}
.ppv-member .ppv-link-list{margin-top:.5rem !important}
.ppv-member .ppv-link-list a,.ppv-contact .ppv-link-list a{min-height:44px;font-size:var(--ppv-fs-small);overflow-wrap:anywhere}

/* Contactkaarten */
.entry-content .wp-block-group.ppv-contacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ppv-gap);margin-top:2rem !important}
.ppv-contacts > *{margin:0 !important}
.entry-content .wp-block-group.ppv-contact{display:flex;flex-direction:column;gap:1rem;padding:var(--ppv-pad-card)}
.ppv-contact > *{margin:0 !important}
.entry-content .wp-block-group.ppv-contact__head{display:grid;grid-template-columns:4.5rem minmax(0,1fr);gap:0 1rem;align-items:center;padding:0}
.ppv-contact__head > *{margin:0 !important}
.ppv-contact__head .ppv-photo{grid-row:span 2;width:4.5rem;height:4.5rem;border-radius:50%;outline:1px solid var(--ppv-line);outline-offset:-1px}
.ppv-contact__head h3{font-size:1.25rem;align-self:end}
.ppv-contact__head p{font-size:var(--ppv-fs-small);color:var(--ppv-petrol);font-weight:600;align-self:start}

/* Citaat */
.ppv-quote{margin:0;padding:0;border:0;max-width:40ch}
.ppv-quote p{font-style:normal;font-family:var(--ppv-font-display);font-weight:700;font-size:clamp(1.375rem,1.1rem + 1vw,1.875rem);line-height:1.35;color:var(--ppv-navy);margin:0}
.entry-content blockquote.ppv-quote{border-left:0;padding:0;margin:0}

/* --------------------------------------------------------------------------
   Formulieren — Fluent Forms en PvP Webinars in dezelfde vormtaal
   -------------------------------------------------------------------------- */
.frm-fluent-form .ff-el-group{margin-bottom:1.1rem}
.frm-fluent-form .ff-el-input--label label,
.pvpwb-formulier .pvpwb-veld > label{display:block;font-weight:600;font-size:.9375rem;color:var(--ppv-navy);margin-bottom:.4rem}
.frm-fluent-form .ff-el-is-required.asterisk-right label::after,
.frm-fluent-form .ff-el-is-required label::after{color:var(--ppv-error) !important}
.frm-fluent-form .ff-el-form-control,
.pvpwb-formulier input[type="text"],.pvpwb-formulier input[type="email"],.pvpwb-formulier input[type="tel"],
.pvpwb-formulier select,.pvpwb-formulier textarea,
.dpia-table-search__input,.dpia-table-filter__select{
  min-height:48px;padding:.7rem .9rem !important;border:1px solid var(--ppv-field) !important;border-radius:10px !important;
  background:#fff !important;color:var(--ppv-ink) !important;font-family:var(--ppv-font-body);font-size:1rem !important;line-height:1.4;box-shadow:none !important;
  transition:border-color var(--ppv-dur) var(--ppv-ease);
}
.frm-fluent-form textarea.ff-el-form-control,.pvpwb-formulier textarea{min-height:8rem}
.frm-fluent-form .ff-el-form-control::placeholder,.pvpwb-formulier ::placeholder,.dpia-table-search__input::placeholder{color:var(--ppv-muted);opacity:1}
.frm-fluent-form .ff-el-form-control:hover,.pvpwb-formulier input:hover,.pvpwb-formulier textarea:hover{border-color:var(--ppv-muted) !important}
.frm-fluent-form .ff-el-form-control:focus,.pvpwb-formulier input:focus,.pvpwb-formulier textarea:focus,.pvpwb-formulier select:focus,.dpia-table-search__input:focus,.dpia-table-filter__select:focus{border-color:var(--ppv-petrol) !important}
.frm-fluent-form input[type="checkbox"],.pvpwb input[type="checkbox"]{
  -webkit-appearance:none;appearance:none;width:1.375rem !important;height:1.375rem !important;min-height:0 !important;max-height:1.375rem;block-size:1.375rem;align-self:flex-start;flex:none;margin:.05rem 0 0 !important;
  border:1.5px solid var(--ppv-field) !important;border-radius:6px !important;background:#fff !important;cursor:pointer;display:inline-grid;place-content:center;
  transition:background-color var(--ppv-dur) var(--ppv-ease),border-color var(--ppv-dur) var(--ppv-ease);
}
.frm-fluent-form input[type="checkbox"]::before,.pvpwb input[type="checkbox"]::before{content:"";width:.85rem;height:.85rem;background:#fff;transform:scale(0);-webkit-mask:var(--ppv-icon-check) center/contain no-repeat;mask:var(--ppv-icon-check) center/contain no-repeat;transition:transform var(--ppv-dur) var(--ppv-ease)}
.frm-fluent-form input[type="checkbox"]:checked,.pvpwb input[type="checkbox"]:checked{background:var(--ppv-navy) !important;border-color:var(--ppv-navy) !important}
.frm-fluent-form input[type="checkbox"]:checked::before,.pvpwb input[type="checkbox"]:checked::before{transform:scale(1)}
.frm-fluent-form input[type="checkbox"]:hover,.pvpwb input[type="checkbox"]:hover{border-color:var(--ppv-navy) !important}
.frm-fluent-form input[type="radio"]{width:1.375rem;height:1.375rem;accent-color:var(--ppv-navy);flex:none}
.frm-fluent-form .ff-el-form-check-label,.pvpwb-vink{display:flex;gap:.65rem;align-items:flex-start;font-size:var(--ppv-fs-small);line-height:1.5;color:var(--ppv-ink);min-height:44px}
.frm-fluent-form .ff-btn-submit,.frm-fluent-form .ff-btn-submit:not(.ff_btn_no_style),
.pvpwb-knop{
  display:inline-flex !important;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.5rem !important;
  background:var(--ppv-petrol) !important;color:#fff !important;border:1.5px solid var(--ppv-petrol) !important;border-radius:var(--ppv-radius-control) !important;
  font-family:var(--ppv-font-body) !important;font-size:1rem !important;font-weight:600 !important;box-shadow:none !important;opacity:1 !important;
  transition:background-color var(--ppv-dur) var(--ppv-ease),border-color var(--ppv-dur) var(--ppv-ease);
}
.frm-fluent-form .ff-btn-submit:hover,.pvpwb-knop:hover{background:var(--ppv-navy) !important;border-color:var(--ppv-navy) !important}
.frm-fluent-form .error,.frm-fluent-form .text-danger,.pvpwb-fout{color:var(--ppv-error) !important;font-size:var(--ppv-fs-small);margin-top:.35rem}
.frm-fluent-form .ff-el-is-error .ff-el-form-control,.pvpwb-heeft-fout input{border-color:var(--ppv-error) !important}
.pvpwb-melding{padding:1rem 1.25rem;border-radius:10px;font-size:var(--ppv-fs-small);background:var(--ppv-mist);color:var(--ppv-navy)}
.pvpwb-melding-fout{background:#FDF0EF;color:var(--ppv-error)}
.pvpwb-melding:empty,.pvpwb-fout:empty{display:none}
/* De plugin zet display:flex op de tip en overschrijft daarmee het hidden-attribuut: dan staat er vooraf al een leeg "!"-vak */
.pvpwb-tip[hidden]{display:none !important}
.ppv-form-note{font-size:var(--ppv-fs-small) !important;color:var(--ppv-muted) !important;margin-top:1rem !important}
@media (max-width:600px){
  .frm-fluent-form .ff-t-container{display:block}
  .frm-fluent-form .ff-t-cell{width:100% !important;padding:0 !important}
  .frm-fluent-form .ff-btn-submit,.pvpwb-knop{width:100%}
}

/* --------------------------------------------------------------------------
   DPIA Depot — documententabel en prijzen (plugin-markup, thema-vormtaal)
   -------------------------------------------------------------------------- */
.entry-content .dpia-table{border-collapse:collapse;border:0;font-size:var(--ppv-fs-small)}
.entry-content .dpia-table th{background:var(--ppv-mist);color:var(--ppv-navy);font-weight:700;border:0;border-bottom:1px solid var(--ppv-line);padding:.75rem .9rem}
.entry-content .dpia-table td{border:0;border-bottom:1px solid var(--ppv-line-soft);padding:.8rem .9rem;color:var(--ppv-ink);vertical-align:middle}
.entry-content .dpia-table :is(.dpia-table__col-number,.dpia-table__col-date){font-variant-numeric:tabular-nums}
.entry-content .dpia-table td.dpia-table__col-date{white-space:nowrap}
.entry-content .dpia-table tr:hover td{background:#FAFCFD}
.entry-content .dpia-table a{color:var(--ppv-navy);font-weight:600;text-decoration:none}
.entry-content .dpia-table a:hover{color:var(--ppv-petrol);text-decoration:underline;text-underline-offset:.2em}
.entry-content .dpia-table a.dpia-table__subject{font-weight:400;color:var(--ppv-muted)}
.entry-content .dpia-table a.dpia-table__subject:hover{color:var(--ppv-petrol)}
.entry-content .dpia-badge{display:inline-flex;align-items:center;min-height:1.5rem;padding:0 .6rem;border-radius:999px;font-size:.8125rem;font-weight:600;background:#fff;color:var(--ppv-navy);border:1px solid var(--ppv-line)}
.entry-content .dpia-badge-pre{color:var(--ppv-petrol);border-color:currentColor}
.entry-content .dpia-badge-free{background:var(--ppv-navy);border-color:var(--ppv-navy);color:#fff}
.dpia-table-search__label,.dpia-table-filter__label{font-weight:600;color:var(--ppv-navy);font-size:.9375rem}
/* Sorteerkoppen: platte kopknop met getekend icoon (geen Unicode-pijl, geen Astra-knopstijl) */
.entry-content .dpia-table .dpia-table__sort{display:inline-flex;align-items:center;gap:.35rem;min-height:0;padding:0 !important;margin:0;background:none !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;color:var(--ppv-navy) !important;font:inherit;font-weight:700}
.entry-content .dpia-table .dpia-table__sort:hover{background:none !important;color:var(--ppv-petrol) !important}
.entry-content .dpia-table th.dpia-sortable:hover{background:var(--ppv-mist)}
.entry-content .dpia-table .dpia-table__sort::after,
.entry-content .dpia-table th.dpia-sortable[role="button"]::after{content:"" !important;width:.95rem;height:.95rem;margin:0;background:currentColor;opacity:.55;-webkit-mask:var(--ppv-icon-sort) center/contain no-repeat;mask:var(--ppv-icon-sort) center/contain no-repeat}
.entry-content .dpia-table th[aria-sort="ascending"] .dpia-table__sort::after,
.entry-content .dpia-table th.dpia-sortable[role="button"][aria-sort="ascending"]::after{opacity:1;-webkit-mask-image:var(--ppv-icon-sort-up);mask-image:var(--ppv-icon-sort-up)}
.entry-content .dpia-table th[aria-sort="descending"] .dpia-table__sort::after,
.entry-content .dpia-table th.dpia-sortable[role="button"][aria-sort="descending"]::after{opacity:1;-webkit-mask-image:var(--ppv-icon-sort-down);mask-image:var(--ppv-icon-sort-down)}
.entry-content .dpia-table .dpia-table__sort:focus-visible,
.entry-content .dpia-table th.dpia-sortable[role="button"]:focus-visible{outline:2px solid var(--ppv-petrol) !important;outline-offset:3px !important}
/* Mobiel: de tabel wordt een registerlijst — nummer · titel, daaronder onderwerp, markering en datum */
@media (max-width:700px){
  .entry-content .dpia-table-scroll{overflow:visible}
  .entry-content .dpia-table,.entry-content .dpia-table tbody{display:block;width:100%}
  .entry-content .dpia-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .entry-content .dpia-table tr{display:grid;grid-template-columns:2.75rem minmax(0,1fr);grid-template-areas:"nr title" "nr subject" "nr meta";column-gap:.75rem;row-gap:.3rem;padding:.9rem 0;border-bottom:1px solid var(--ppv-line)}
  .entry-content .dpia-table tr:hover td{background:none}
  .entry-content .dpia-table td{display:block;border:0;padding:0}
  .entry-content .dpia-table td.dpia-table__col-number{grid-area:nr;font-weight:600;color:var(--ppv-muted)}
  .entry-content .dpia-table td.dpia-table__col-process{grid-area:title}
  .entry-content .dpia-table td.dpia-table__col-subject{grid-area:subject;font-size:var(--ppv-fs-meta)}
  .entry-content .dpia-table td.dpia-table__col-marking{grid-area:meta;display:inline-flex;gap:.5rem;align-items:center}
  .entry-content .dpia-table td.dpia-table__col-date{grid-area:meta;justify-self:end;align-self:center;font-size:var(--ppv-fs-meta);color:var(--ppv-muted)}
}

.entry-content .dpia-prijzen__row{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--ppv-gap);align-items:start}
.entry-content .dpia-prijzen__standard{background:#fff;border:2px solid var(--ppv-navy);border-radius:var(--ppv-radius-card);padding:var(--ppv-pad-card);margin:0}
.entry-content .dpia-prijzen__standard p{margin:0 0 .5rem}
.entry-content .dpia-prijzen__standard-label{font-weight:600;color:var(--ppv-navy);font-size:var(--ppv-fs-small);text-transform:none;letter-spacing:0}
.entry-content .dpia-prijzen__standard-price{font-family:var(--ppv-font-display);font-weight:800;font-size:clamp(2.25rem,1.9rem + 1.2vw,3rem);line-height:1.05;color:var(--ppv-navy);font-variant-numeric:tabular-nums}
.entry-content .dpia-prijzen__standard-price span{display:block;font-family:var(--ppv-font-body);font-weight:500;font-size:var(--ppv-fs-small);color:var(--ppv-muted);margin-top:.35rem}
.entry-content .dpia-prijzen__standard-sub{font-size:var(--ppv-fs-small);color:var(--ppv-ink)}
.entry-content .dpia-prijzen__staffel-col{background:var(--ppv-mist);border-radius:var(--ppv-radius-card);padding:var(--ppv-pad-card)}
.entry-content .dpia-prijzen__staffel-intro{font-size:var(--ppv-fs-small);color:var(--ppv-ink);margin:0 0 1rem}
.entry-content .dpia-prijzen__staffel{width:100%;border-collapse:collapse;border:0;font-size:var(--ppv-fs-small);font-variant-numeric:tabular-nums}
.entry-content .dpia-prijzen__staffel th{text-align:left;color:var(--ppv-navy);font-weight:700;border:0;border-bottom:1px solid var(--ppv-line);padding:.5rem 0;background:transparent}
.entry-content .dpia-prijzen__staffel td{border:0;border-bottom:1px solid var(--ppv-line);padding:.6rem 0;color:var(--ppv-ink);background:transparent}
.entry-content .dpia-prijzen__staffel td:last-child,.entry-content .dpia-prijzen__staffel th:last-child{text-align:right}

/* --------------------------------------------------------------------------
   Webinarsessies (PvP Webinars)
   -------------------------------------------------------------------------- */
.pvpwb-sessie{border:1px solid var(--ppv-line) !important;border-radius:var(--ppv-radius-card) !important;box-shadow:none !important;background:#fff !important}
.pvpwb-datum{background:var(--ppv-navy) !important;color:#fff !important;border-radius:12px !important}
.pvpwb-datum-maand{font-size:.8125rem !important;color:var(--ppv-accent) !important}
.pvpwb-sessie-titel{font-family:var(--ppv-font-display) !important;font-weight:800 !important;color:var(--ppv-navy) !important}
.pvpwb-sessie-wanneer,.pvpwb-sessie-spreker,.pvpwb-duur,.pvpwb-tijd{color:var(--ppv-muted) !important;font-size:var(--ppv-fs-small) !important}
.pvpwb-groep-titel{font-family:var(--ppv-font-display);font-weight:800;color:var(--ppv-navy)}

/* Juridische en overige pagina's met de Astra-paginatitel */
/* Astra zet inline `header.entry-header:not(.related-entry-header) .entry-title` op 600/2rem; body ervoor wint */
body header.entry-header:not(.related-entry-header) .entry-title,
.entry-header .entry-title{font-family:var(--ppv-font-display);font-weight:800;color:var(--ppv-navy);font-size:clamp(2rem,1.45rem + 1.8vw,2.75rem);line-height:1.1;letter-spacing:-.025em}

/* Nieuwsartikel: één raster (1000px, tekst links uitgelijnd op 700px), geen schaduwen */
.breadcrumbs,.article-head,.hero-img,.article-body,.share-bar,.cta-band,.related-wrap{max-width:1040px !important;margin-inline:auto !important;padding-inline:20px !important;box-sizing:border-box}
.article-head > *,.article-body > *{max-width:700px}
.article-head{padding-top:clamp(1.75rem,1.2rem + 1.6vw,2.75rem) !important}
.article-head h1{font-size:clamp(2rem,1.45rem + 1.8vw,2.75rem) !important;line-height:1.1 !important;letter-spacing:-.025em}
.author-row{flex-wrap:wrap}
.author-row .meta{flex-basis:100%;margin-top:.25rem;font-size:var(--ppv-fs-meta);color:var(--ppv-muted);font-variant-numeric:tabular-nums}
.hero-img img{box-shadow:none !important;border-radius:var(--ppv-radius-card) !important}
.article-body blockquote{box-shadow:none !important;background:var(--ppv-mist) !important;border-radius:var(--ppv-radius-band) !important;border:0 !important}
.article-body blockquote p{font-style:normal}
.cta-band .cta-inner{padding:clamp(1.75rem,1.2rem + 2vw,3rem) !important}
.cta-band .cta-inner h3{font-size:clamp(1.375rem,1.2rem + .7vw,1.875rem) !important;line-height:1.2}
.cta-band .cta-inner p{font-size:var(--ppv-fs-body) !important;line-height:1.55;max-width:56ch !important}
.related-wrap{padding-bottom:0 !important}

/* Nieuwsartikel: witte grond zoals de rest van de site */
body.single-post,body.single-post .site-content{background:#fff}
.article-head .dek{color:var(--ppv-ink);font-size:var(--ppv-fs-lead);line-height:1.6}
.article-head .badge-cat{background:#fff;border:1px solid var(--ppv-line);color:var(--ppv-navy);font-weight:600;font-size:.8125rem}
.cta-band .cta-inner{background:var(--ppv-navy);border-radius:var(--ppv-radius-band)}
.cta-band .cta-inner p{opacity:1;color:rgba(255,255,255,.88)}
.cta-band .cta-inner .btn{display:inline-flex;align-items:center;gap:.5em;min-height:48px;border-radius:var(--ppv-radius-control);font-size:1rem;font-weight:600;transition:background-color var(--ppv-dur) var(--ppv-ease)}
.cta-band .cta-inner .btn:hover{background:var(--ppv-mist);color:var(--ppv-navy)}
/* Saffraan op de knop van de afsluiter en de CTA-band: de belangrijkste vervolgstap op navy */
.ppv-close .wp-block-button.is-style-ppv-inverse > .wp-block-button__link,
.ppv-close .ppv-btn--inverse,
.cta-band .cta-inner .btn{background:var(--ppv-accent);border-color:var(--ppv-accent);color:var(--ppv-navy)}
.ppv-close .wp-block-button.is-style-ppv-inverse > .wp-block-button__link:hover,
.ppv-close .ppv-btn--inverse:hover,
.cta-band .cta-inner .btn:hover{background:var(--ppv-accent-hover);border-color:var(--ppv-accent-hover);color:var(--ppv-navy)}
.related-wrap .ppv-newslist{margin-top:0}

/* DPIA-documentpagina (single-dpia_document.php): een dossierblad in de 1200px-container.
   De plugin levert de opbouw (frontend.css volgt de --ppv-tokens); het thema de kop en de grond. */
body.single-dpia_document,body.single-dpia_document .site-content{background:#fff}
body.single-dpia_document #primary{margin-top:0 !important;margin-bottom:0 !important}
body.single-dpia_document article.ppv-doc{padding:0 !important;margin:0 !important}
@media (max-width:921px){body:is(.single-dpia_document,.tax-dpia_onderwerp) .site-content > .ast-container{padding-inline:20px !important}}
/* Onderwerppagina's van het Depot (/onderwerp/…): witte grond zoals de rest van de site */
body.tax-dpia_onderwerp,body.tax-dpia_onderwerp .site-content{background:#fff}
body.tax-dpia_onderwerp #primary{margin-top:0 !important;margin-bottom:0 !important}
body.tax-dpia_onderwerp .ast-container .ast-container{padding-inline:0 !important;max-width:none}
.ppv-doc__head{padding-top:clamp(1.75rem,1.2rem + 1.6vw,2.75rem);margin:0 0 1rem}
.ppv-doc__head h1{font-size:clamp(2rem,1.45rem + 1.8vw,2.75rem);line-height:1.1;letter-spacing:-.025em;margin:0;max-width:26ch;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}

@media (max-width:900px){
  .entry-content .wp-block-group:is(.ppv-page-hero--split,.ppv-split,.ppv-columns){grid-template-columns:1fr}
  .entry-content .wp-block-group:is(.ppv-packages,.ppv-members,.ppv-contacts){grid-template-columns:1fr}
  .entry-content ol.ppv-steps{grid-template-columns:1fr}
  .ppv-page-hero--split .ppv-photo--gif{justify-self:start}
  .entry-content .dpia-prijzen__row{grid-template-columns:1fr}
  .ppv-member{max-width:26rem}
}
@media (min-width:601px) and (max-width:900px){
  .entry-content .wp-block-group:is(.ppv-members,.ppv-contacts){grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* --------------------------------------------------------------------------
   Header — menu, ledenlogin, Contact-knop, dropdown, mobiele knop
   -------------------------------------------------------------------------- */
.main-header-menu .menu-item > .menu-link{font-size:15px;font-weight:600;color:var(--ppv-ink)}
.main-header-menu .menu-item > .menu-link:hover,
.main-header-menu .current-menu-item > .menu-link,
.main-header-menu .current-menu-ancestor > .menu-link{color:var(--ppv-navy)}
.main-header-menu .current-menu-item > .menu-link,
.main-header-menu .current-menu-ancestor > .menu-link{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.45em;text-decoration-color:var(--ppv-petrol)}

.main-header-menu .menu-item-ppv-login > .menu-link{display:inline-flex;align-items:center;gap:.5em;color:var(--ppv-muted)}
/* Inloggen gaat via Microsoft SSO: het Microsoft-logo vóór de link */
.main-header-menu .menu-item-ppv-login > .menu-link::before{
  content:"";flex:none;width:.95rem;height:.95rem;background:var(--ppv-logo-microsoft) center/contain no-repeat;
}
.main-header-menu .menu-item-ppv-login > .menu-link:hover{color:var(--ppv-navy)}
/* Ingelogd (statuscookie van de plugin): navy tekst met een petrol vinkje in een mistcirkel */
.main-header-menu .menu-item-ppv-login.is-signed-in > .menu-link{color:var(--ppv-navy)}
.main-header-menu .menu-item-ppv-login.is-signed-in > .menu-link::before{width:1.35rem;height:1.35rem;border-radius:50%;background:var(--ppv-accent) var(--ppv-icon-check-navy) center/.85rem no-repeat}

.main-header-menu .menu-item-cta > .menu-link{border-radius:10px !important;padding:9px 16px !important;font-size:15px;text-decoration:none !important}
.main-header-menu .menu-item-cta > .menu-link{background:var(--ppv-petrol)}
.main-header-menu .menu-item-cta > .menu-link:hover{background:var(--ppv-navy)}

.main-header-menu .sub-menu{
  border:1px solid var(--ppv-line) !important;border-radius:var(--ppv-radius-control);
  box-shadow:var(--ppv-shadow-lift) !important;padding:.4rem 0;overflow:hidden;
}
.main-header-menu .sub-menu .menu-link{font-size:15px !important;padding:.65rem 1.1rem !important;color:var(--ppv-ink) !important}
.main-header-menu .sub-menu .menu-link:hover{background:var(--ppv-mist);color:var(--ppv-navy) !important}

.ast-mobile-menu-trigger-fill,
.menu-toggle.main-header-menu-toggle{background:var(--ppv-navy) !important;border-radius:10px !important;min-width:44px;min-height:44px;color:#fff !important}

/* Mobiel uitklapmenu */
.ast-mobile-header-content .main-header-menu .menu-link,
#ast-mobile-header .main-header-menu .menu-link{font-size:16px !important;min-height:48px;display:flex;align-items:center}
#ast-mobile-header .main-header-menu .menu-item-cta > .menu-link{margin:0 !important;justify-content:center;background:var(--ppv-petrol) !important;color:#fff !important;border-radius:var(--ppv-radius-control) !important;min-height:48px}
#ast-mobile-header .main-header-menu .menu-item-cta{border:0 !important;padding:.75rem 20px 1.25rem !important}
#ast-mobile-header .ast-menu-toggle{background:transparent !important;box-shadow:none !important;color:var(--ppv-navy) !important;min-width:48px;min-height:48px}

/* --------------------------------------------------------------------------
   Footer — tikdoelen en de lege Astra-balk eronder
   -------------------------------------------------------------------------- */
.ppv-footer .ppv-footer-title{font-family:var(--ppv-font-body);font-weight:700;font-size:.9375rem;letter-spacing:0;margin:0 0 .9rem;color:var(--ppv-accent)}
/* Saffraan op navy: 6,9:1, dus ook als tekst leesbaar */
.ppv-footer-col a:hover,.ppv-footer-bottom a:hover{color:var(--ppv-accent) !important;opacity:1}
.ppv-footer-col ul{gap:0 !important}
.ppv-footer-col a{display:inline-flex;align-items:center;min-height:36px;font-size:.9375rem !important}
.ppv-footer-bottom{font-size:.875rem !important;opacity:.85 !important}
.ppv-footer-legal{display:flex;flex-wrap:wrap;gap:0 1.25rem}
.ppv-footer-bottom a{display:inline-flex;align-items:center;min-height:36px}
footer.site-footer .site-below-footer-wrap{display:none !important}
@media (max-width:781px){
  .ppv-footer-col a,.ppv-footer-bottom a{min-height:44px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:0s !important;animation-duration:0s !important}
}
