/* website-stunter.nl — themastijlen: koppeling WordPress-blokken ↔ ontwerpsysteem + sectielayouts homepage */

/* ---------- Basis / WordPress ---------- */
html{scroll-behavior:smooth}
body{background:var(--bg-page)}
.wp-site-blocks{min-height:100vh;display:flex;flex-direction:column}
.wp-site-blocks>main,.wp-site-blocks>.ws-main{flex:1}
:where(.wp-site-blocks) :where(.is-layout-flow)>*{margin-block:0}
.admin-bar .ws-nav{top:var(--wp-admin--admin-bar--height,32px)}
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ws-section>.ws-container>*+*{margin-top:0}

/* Koppen zonder preset-grootte volgen base.css. Typografische hulpklassen (te kiezen via 'Extra CSS-klassen'). */
.ws-display{font-family:var(--font-display);font-size:var(--fs-display);line-height:var(--lh-tight);letter-spacing:var(--tracking-display);font-weight:var(--fw-semibold);color:var(--text-strong)}
.ws-h1{font-size:var(--fs-h1)}.ws-h3{font-size:var(--fs-h3)}.ws-h4{font-size:var(--fs-h4)}.ws-h5{font-size:var(--fs-h5);font-family:var(--font-body)}
.ws-small{font-size:var(--fs-small)}.ws-xs{font-size:var(--fs-xs)}
.ws-muted{color:var(--text-muted)}.ws-strong{color:var(--text-strong);font-weight:500}
.ws-mono{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.04em;color:var(--text-muted)}
.ws-measure{max-width:34em}
.ws-center{text-align:center}
.ws-lead{font-size:var(--fs-lead);line-height:1.5;color:var(--text-body);max-width:var(--measure-narrow)}
.ws-on-dark .ws-lead{color:var(--text-inverse-muted)}
.ws-on-dark .ws-muted{color:var(--text-inverse-muted)}
.ws-on-dark .ws-strong{color:#fff}

/* Eyebrow: alinea met klasse ws-eyebrow (streepje via ::before) */
p.ws-eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:var(--fs-eyebrow);font-weight:500;letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted);line-height:1.2;justify-self:start;margin:0}
p.ws-eyebrow::before{content:"";width:18px;height:2px;background:var(--accent);border-radius:1px;flex:none}
p.ws-eyebrow--plain::before{display:none}
p.ws-eyebrow--accent{color:var(--text-accent)}
.ws-on-dark p.ws-eyebrow{color:var(--text-inverse-muted)}.ws-on-dark p.ws-eyebrow::before{background:var(--signal-400)}

/* Badge: alinea met klasse ws-badge */
p.ws-badge{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:600;line-height:1;white-space:nowrap;justify-self:start;margin:0}
p.ws-badge--neutral{background:var(--sand-200);color:var(--ink-800)}
p.ws-badge--accent{background:var(--signal-100);color:var(--signal-800)}
p.ws-badge--outline{background:transparent;color:var(--text-strong);box-shadow:inset 0 0 0 1px var(--border-strong)}

/* Knoppen: core/button. Standaard = primair; blokstijlen ws-secondary / ws-accent / ws-tertiary; extra klassen ws-lg, ws-sm, ws-arrow, ws-full */
.wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px}
.wp-block-buttons.ws-actions--center{justify-content:center}
.wp-block-button{margin:0}
.wp-block-button.ws-full,.wp-block-button.ws-full .wp-block-button__link{width:100%}
.wp-block-button__link.wp-element-button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:.55em;height:48px;padding:0 22px;border-radius:var(--radius-button);border:1.5px solid transparent;background:var(--action-primary);color:var(--action-primary-text);font-family:var(--font-body);font-size:var(--fs-body);font-weight:600;line-height:1;letter-spacing:-.005em;text-decoration:none;white-space:nowrap;cursor:pointer;user-select:none;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}
.wp-block-button__link:hover{background:var(--action-primary-hover);color:var(--action-primary-text);text-decoration:none}
.wp-block-button__link:active{transform:translateY(1px)}
.wp-block-button.ws-lg .wp-block-button__link{height:56px;padding:0 28px;font-size:1.125rem}
.wp-block-button.ws-sm .wp-block-button__link{height:40px;padding:0 16px;font-size:var(--fs-small)}
.wp-block-button.ws-arrow .wp-block-button__link::after{content:"";width:18px;height:18px;flex:none;background:currentColor;-webkit-mask:var(--ws-icon) center/contain no-repeat;mask:var(--ws-icon) center/contain no-repeat;transition:transform var(--dur-base) var(--ease-out)}
.wp-block-button.ws-lg.ws-arrow .wp-block-button__link::after{width:20px;height:20px}
.wp-block-button.ws-sm.ws-arrow .wp-block-button__link::after{width:16px;height:16px}
.wp-block-button.ws-arrow .wp-block-button__link:hover::after{transform:translateX(3px)}
.wp-block-button.is-style-ws-accent .wp-block-button__link{background:var(--accent);color:var(--accent-text)}
.wp-block-button.is-style-ws-accent .wp-block-button__link:hover{background:var(--accent-hover);color:var(--accent-text)}
.wp-block-button.is-style-ws-secondary .wp-block-button__link{background:var(--bg-surface);color:var(--text-strong);border-color:var(--border-strong)}
.wp-block-button.is-style-ws-secondary .wp-block-button__link:hover{border-color:var(--ink-900);color:var(--text-strong);background:var(--bg-surface)}
.wp-block-button.is-style-ws-tertiary .wp-block-button__link{background:transparent;color:var(--text-strong);padding:0 12px}
.wp-block-button.is-style-ws-tertiary .wp-block-button__link:hover{background:var(--bg-muted);color:var(--text-strong)}
.ws-on-dark .wp-block-button.is-style-ws-secondary .wp-block-button__link{background:transparent;color:#fff;border-color:var(--border-inverse-strong)}
.ws-on-dark .wp-block-button.is-style-ws-secondary .wp-block-button__link:hover{border-color:#fff;color:#fff}
.ws-on-dark .wp-block-button:not(.is-style-ws-accent):not(.is-style-ws-secondary):not(.is-style-ws-tertiary) .wp-block-button__link{background:#fff;color:var(--ink-900)}
.ws-on-dark .wp-block-button:not(.is-style-ws-accent):not(.is-style-ws-secondary):not(.is-style-ws-tertiary) .wp-block-button__link:hover{background:var(--sand-200);color:var(--ink-900)}

/* Tekstlink met pijl: alinea met klasse ws-link-arrow */
p.ws-link-arrow{margin:0}
p.ws-link-arrow a{display:inline-flex;align-items:center;gap:.35em;font-weight:600;text-decoration:none;color:var(--text-strong)}
p.ws-link-arrow a::after{content:"";width:18px;height:18px;flex:none;background:currentColor;-webkit-mask:var(--ws-icon) center/contain no-repeat;mask:var(--ws-icon) center/contain no-repeat;transition:transform var(--dur-base) var(--ease-out)}
p.ws-link-arrow a:hover{color:var(--signal-700)}
p.ws-link-arrow a:hover::after{transform:translateX(3px)}
p.ws-link-plain a{font-weight:500}
.ws-links-row{display:flex;flex-wrap:wrap;gap:12px 24px}

/* Vinkjeslijst: lijst met klasse ws-checks */
ul.ws-checks{list-style:none;margin:0;padding:0;display:grid;gap:12px}
ul.ws-checks li{display:flex;gap:12px;align-items:flex-start;line-height:1.45}
ul.ws-checks li::before{content:"";flex:none;width:20px;height:20px;margin-top:.1em;background:var(--polder-600);-webkit-mask:var(--ws-icon) center/contain no-repeat;mask:var(--ws-icon) center/contain no-repeat}
ul.ws-checks--sm{gap:8px;font-size:var(--fs-small)}
ul.ws-checks--sm li::before{width:18px;height:18px}
ul.ws-checks--row{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:8px;padding-top:20px;border-top:1px solid var(--border-subtle);font-size:var(--fs-small);font-weight:500;color:var(--text-strong)}
ul.ws-checks--row li{align-items:center;gap:8px}
ul.ws-checks--row li::before{width:18px;height:18px;margin-top:0}
.ws-on-dark ul.ws-checks li::before{color:var(--polder-300)}
.ws-card--dark ul.ws-checks,.ws-pricecard--featured ul.ws-checks{color:#fff}
.ws-card--dark ul.ws-checks li::before,.ws-pricecard--featured ul.ws-checks li::before{background:var(--signal-400)}

/* Streepjeslijst: lijst met klasse ws-dashes */
ul.ws-dashes{list-style:none;margin:0;padding:0;display:grid;gap:12px;color:var(--text-strong);font-weight:500}
ul.ws-dashes li{display:flex;gap:14px;align-items:center}
ul.ws-dashes li::before{content:"";width:18px;height:2px;background:var(--accent);border-radius:1px;flex:none}

/* Genummerde lijst met mono-nummers: lijst met klasse ws-numlist */
ol.ws-numlist{list-style:none;margin:0;padding:0;display:grid;counter-reset:ws-step}
ol.ws-numlist li{counter-increment:ws-step;display:flex;gap:16px;padding:14px 0;border-top:1px solid var(--border-default);color:var(--text-body)}
ol.ws-numlist li:last-child{border-bottom:1px solid var(--border-default)}
ol.ws-numlist li::before{content:counter(ws-step,decimal-leading-zero);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);padding-top:3px;flex:none}
ol.ws-numlist--ours li{align-items:center;border-color:var(--border-subtle);font-weight:600;color:var(--text-strong)}
ol.ws-numlist--ours li::before{color:var(--text-accent);font-weight:500;padding-top:0}
ol.ws-numlist--ours li::after{content:"";margin-left:auto;width:18px;height:18px;flex:none;background:var(--polder-600);-webkit-mask:var(--ws-icon) center/contain no-repeat;mask:var(--ws-icon) center/contain no-repeat}

/* Prijs (blok ws/price) */
.ws-price{display:inline-grid;gap:6px;color:var(--text-strong);justify-self:start}
.ws-price__prefix{font-family:var(--font-mono);font-size:var(--fs-eyebrow);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted)}
.ws-price__main{display:inline-flex;align-items:flex-start;font-family:var(--font-display);font-weight:600;line-height:1;letter-spacing:-.03em;font-variant-numeric:proportional-nums lining-nums;font-size:var(--fs-price)}
.ws-price__cur{font-size:.5em;margin:.12em .12em 0 0;font-weight:500}
.ws-price__cents{font-size:1em;letter-spacing:-.04em;margin-left:-.02em}
.ws-price__suffix{font-size:var(--fs-small);color:var(--text-muted);line-height:1.35}
.ws-price--sm .ws-price__main{font-size:1.75rem}
.ws-price--lg .ws-price__main{font-size:clamp(3rem,2.2rem + 3vw,4.75rem)}
.ws-on-dark .ws-price,.ws-pricecard--featured .ws-price{color:#fff}
.ws-on-dark .ws-price__prefix,.ws-on-dark .ws-price__suffix,.ws-pricecard--featured .ws-price__prefix,.ws-pricecard--featured .ws-price__suffix{color:var(--text-inverse-muted)}

/* Icoon-tegel (blok ws/icon met tegel) */
.ws-icon-tile{width:48px;height:48px;border-radius:10px;background:var(--bg-surface);display:inline-grid;place-items:center;flex:none;color:var(--ink-900)}
.ws-icon-tile--sand{background:var(--sand-100)}.ws-icon-tile--accent{background:var(--signal-100);color:var(--signal-700)}.ws-icon-tile--ink{background:var(--ink-900);color:#fff}
.ws-icon-tile--round{width:44px;height:44px;border-radius:50%;background:var(--ink-900);color:#fff}

/* Details/summary → accordion (core/details met klasse ws-faq__item) */
.ws-faq{border-top:1px solid var(--border-default)}
.ws-faq details.wp-block-details{border-bottom:1px solid var(--border-default)}
.ws-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;cursor:pointer;font-family:var(--font-display);font-size:var(--fs-h4);font-weight:600;letter-spacing:var(--tracking-tight);line-height:1.3;color:var(--text-strong);transition:color var(--dur-fast) var(--ease-out)}
.ws-faq summary::-webkit-details-marker{display:none}
.ws-faq summary:hover{color:var(--ink-600)}
.ws-faq summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:4px;border-radius:6px}
.ws-faq summary::after{content:"";flex:none;position:relative;width:32px;height:32px;border-radius:50%;background:var(--bg-muted);transition:background-color var(--dur-base) var(--ease-out),transform var(--dur-slow) var(--ease-out);
  background-image:linear-gradient(var(--ink-900),var(--ink-900)),linear-gradient(var(--ink-900),var(--ink-900));background-size:12px 2px,2px 12px;background-position:center;background-repeat:no-repeat}
.ws-faq details[open]>summary::after{transform:rotate(45deg);background-color:var(--signal-100)}
.ws-faq details>*:not(summary){padding:0 56px 24px 0;max-width:var(--measure);color:var(--text-body)}
.ws-faq details>p+p{padding-top:0;margin-top:-12px}
@supports (interpolate-size:allow-keywords){
  .ws-faq details{interpolate-size:allow-keywords}
  .ws-faq details::details-content{block-size:0;overflow:hidden;transition:block-size var(--dur-slow) var(--ease-out),content-visibility var(--dur-slow) allow-discrete}
  .ws-faq details[open]::details-content{block-size:auto}
}

/* Navigatie: core/navigation binnen .ws-nav */
.ws-nav{position:sticky;top:0;z-index:var(--z-nav);background:transparent;transition:background-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}
.ws-nav.is-scrolled,.ws-nav.is-open{background:rgba(251,249,245,.86);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);box-shadow:0 1px 0 var(--border-subtle)}
.ws-nav__inner{max-width:var(--container);margin:0 auto;padding:0 var(--gutter);height:var(--nav-height);display:flex;align-items:center;gap:32px}
.ws-nav .ws-nav__links{margin-left:auto}
.ws-nav .wp-block-navigation{font-size:var(--fs-small)}
.ws-nav .wp-block-navigation .wp-block-navigation__container{display:flex;gap:4px;list-style:none;margin:0;padding:0}
.ws-nav .wp-block-navigation-item{margin:0}
.ws-nav .wp-block-navigation-item__content{position:relative;display:block;padding:10px 12px;border-radius:var(--radius-sm);font-size:var(--fs-small);font-weight:500;color:var(--text-body);text-decoration:none;white-space:nowrap}
.ws-nav .wp-block-navigation-item__content:hover{color:var(--text-strong);background:var(--bg-muted)}
.ws-nav .current-menu-item>.wp-block-navigation-item__content{color:var(--text-strong)}
.ws-nav .current-menu-item>.wp-block-navigation-item__content::after{content:"";position:absolute;left:12px;bottom:4px;width:14px;height:2px;border-radius:1px;background:var(--accent)}
.ws-nav__actions{display:flex;gap:8px;align-items:center}
.ws-nav__actions .wp-block-buttons{gap:8px}
.ws-nav__burger{display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-button);border:1.5px solid transparent;background:transparent;color:var(--text-strong);cursor:pointer;padding:0}
.ws-nav__burger:hover{background:var(--bg-muted)}
.ws-nav__burger .ws-icon--x,.ws-nav.is-open .ws-nav__burger .ws-icon--menu{display:none}
.ws-nav.is-open .ws-nav__burger .ws-icon--x{display:inline-block}
.ws-nav__panel{display:none}
@media (max-width:900px){
  .ws-nav .ws-nav__links.wp-block-navigation{display:none}
  .ws-nav__actions{margin-left:auto}
  .ws-nav__burger{display:inline-flex}
  .ws-nav.is-open .ws-nav__panel{display:grid;gap:4px;padding:8px var(--gutter) 24px;border-top:1px solid var(--border-subtle);max-height:calc(100vh - var(--nav-height));overflow:auto}
  .ws-nav__panel .wp-block-navigation .wp-block-navigation__container{display:grid;gap:4px}
  .ws-nav__panel .wp-block-navigation-item__content{font-size:1.125rem;padding:14px 4px;border-bottom:1px solid var(--border-subtle);border-radius:0;white-space:normal}
  .ws-nav__panel .current-menu-item>.wp-block-navigation-item__content::after{left:auto;right:4px;bottom:50%}
  .ws-nav__panel .wp-block-buttons{margin-top:16px}
}
@media (max-width:480px){.ws-nav__actions>.wp-block-buttons{display:none}}

/* Browser- en telefoonframe (blokken ws/browser-frame en ws/phone-frame) */
.ws-browser{border-radius:var(--radius-mockup);background:var(--bg-surface);box-shadow:var(--shadow-mockup);overflow:hidden;display:flex;flex-direction:column}
.ws-browser__bar{display:flex;align-items:center;gap:14px;height:40px;padding:0 14px;background:var(--sand-100);border-bottom:1px solid var(--border-subtle);flex:none}
.ws-browser__dots{display:flex;gap:6px}.ws-browser__dots i{width:10px;height:10px;border-radius:50%;background:var(--sand-300)}
.ws-browser__url{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:340px;margin:0 auto;height:24px;border-radius:var(--radius-sm);background:var(--bg-surface);display:flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-mono);font-size:11.5px;color:var(--text-muted);box-shadow:inset 0 0 0 1px var(--border-subtle)}
.ws-browser__url .ws-icon{color:var(--polder-600);width:11px;height:11px}
.ws-browser__spacer{flex:0 1 42px;width:42px;min-width:0}
.ws-browser__view{position:relative;flex:1;min-height:0;overflow:hidden;aspect-ratio:var(--ws-aspect,16/10)}
.ws-browser__view .wp-block-image,.ws-browser__view figure{margin:0;height:100%}
.ws-browser__view img{width:100%;height:100%;object-fit:cover;object-position:top}
.ws-phone{border-radius:26px;background:var(--ink-900);padding:6px;box-shadow:var(--shadow-mockup);width:100%}
.ws-phone__screen{border-radius:21px;overflow:hidden;background:#fff;display:flex;flex-direction:column;aspect-ratio:var(--ws-aspect,9/18.5)}
.ws-phone__bar{height:26px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--sand-100);border-bottom:1px solid var(--border-subtle);font-family:var(--font-mono);font-size:9.5px;color:var(--text-muted)}
.ws-phone__view{flex:1;min-height:0;overflow:hidden}
.ws-phone__view .wp-block-image,.ws-phone__view figure{margin:0;height:100%}
.ws-phone__view img{width:100%;height:100%;object-fit:cover;object-position:top}
@media (max-width:640px){.ws-browser__bar{height:28px;padding:0 10px;gap:8px}.ws-browser__url{height:18px;font-size:9px}.ws-browser__dots i{width:7px;height:7px}}

/* Afbeeldingen */
.wp-block-image{margin:0}
.wp-block-image img{display:block;width:100%;height:auto}
.wp-block-image.ws-rounded img{border-radius:var(--radius-card)}

/* Secties en containers */
.ws-section{padding-block:var(--section-y);position:relative}
.ws-section--sm{padding-block:var(--section-y-sm)}.ws-section--lg{padding-block:var(--section-y-lg)}
.ws-section--white{background:var(--bg-surface)}
.ws-section--sand{background:var(--bg-subtle)}
.ws-section--dark{background:var(--bg-inverse);color:var(--text-inverse-muted)}
.ws-section--hero{padding-top:clamp(32px,6vw,72px);padding-bottom:clamp(64px,9vw,120px);overflow:hidden}
.ws-container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.ws-container--narrow{max-width:var(--container-narrow)}
.ws-container--wide{max-width:var(--container-wide)}

/* Generieke layouthulpen (groepen met klasse) */
/* Eén kolom met minimum 0: een grid-kolom is standaard minmax(auto,1fr) en groeit mee met de min-content van een kind (bv. .ws-case-stage met browser + telefoon), waardoor de pagina op smalle schermen breder werd dan het venster. */
.ws-stack{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.ws-stack--sm{gap:10px}.ws-stack--md{gap:20px}.ws-stack--lg{gap:24px}.ws-stack--xl{gap:28px}
.ws-stack--section{gap:clamp(40px,5vw,64px)}
.ws-stack--section-sm{gap:clamp(40px,5vw,56px)}
.ws-stack--section-lg{gap:clamp(40px,5vw,72px)}
.ws-max-560{max-width:560px}.ws-max-620{max-width:620px}.ws-max-640{max-width:640px}.ws-max-720{max-width:720px}.ws-max-380{max-width:380px}.ws-max-400{max-width:400px}.ws-max-440{max-width:440px}.ws-max-340{max-width:340px}
.ws-split-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:24px}
.ws-split-head>.wp-block-button,.ws-split-head>.wp-block-buttons{margin:0}
.ws-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.ws-row--between{justify-content:space-between}
.ws-row--end{align-items:end;gap:24px 32px}
.ws-row--baseline{align-items:baseline;gap:8px 20px}
.ws-push-right{margin-left:auto}
.ws-grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:var(--grid-gap);align-items:stretch}
.ws-grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--grid-gap);align-items:stretch}
.ws-grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:clamp(32px,3vw,40px)}
.ws-grid-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:24px 32px;padding-top:8px}
.ws-grid-checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:12px 24px}
.ws-note{font-size:var(--fs-small);color:var(--text-muted);padding-top:16px;border-top:1px solid var(--border-subtle)}
.ws-divider-top{padding-top:8px}

/* Kaarten */
.ws-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);padding:28px;display:grid;gap:24px;align-content:start}
.ws-card--outline{background:transparent;border-color:var(--border-default);padding:clamp(24px,3vw,40px)}
.ws-card--raised{border-color:transparent;box-shadow:var(--shadow-md);padding:clamp(24px,3vw,40px)}
.ws-card--subtle{background:var(--bg-subtle);border-color:transparent}
.ws-card--lg{padding:clamp(28px,4vw,56px)}
.ws-card--dashed{border:1px dashed var(--border-default);align-content:space-between;min-height:240px}

/* ---------- Homepage-secties ---------- */
/* Hero */
.ws-hero{display:flex;flex-wrap:wrap;gap:clamp(40px,5vw,72px);align-items:center}
.ws-hero__text{flex:1 1 400px;min-width:0;display:grid;gap:28px;max-width:560px}
.ws-hero__text h1{margin:0}
.ws-hero__visual{flex:1.35 1 520px;min-width:0;position:relative;padding:0 0 8% 7%}
.ws-hero__phone{position:absolute;left:0;bottom:0;width:24%;min-width:118px}
.ws-hero__caption{position:absolute;right:0;bottom:0;margin:0;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--text-muted)}
@media (max-width:640px){.ws-hero__visual{padding-bottom:12%}.ws-hero__caption{display:none}}

/* Voorbeelden */
.ws-case{display:grid;gap:20px;align-content:start}
.ws-case__visual{background:var(--sand-100);border-radius:var(--radius-card);padding:clamp(20px,4vw,56px) clamp(20px,4vw,56px) 0;overflow:hidden;display:flex;gap:clamp(16px,3vw,40px);align-items:flex-end}
.ws-case__visual>.ws-browser{flex:1 1 0;min-width:0;margin-bottom:-2%}
.ws-case__visual>.ws-phone{flex:0 0 19%;min-width:92px;width:auto;margin-bottom:clamp(20px,4vw,56px)}
.ws-case__visual--noord{background:#E4E7E1;padding:clamp(20px,3vw,40px);display:block}
.ws-case__visual--noord>.ws-browser{margin-bottom:0}
.ws-case__visual--balance{background:#EFE5DA;padding:clamp(20px,3vw,40px);gap:clamp(12px,2vw,24px)}
.ws-case__visual--balance>.ws-browser{margin-bottom:0}
.ws-case__visual--balance>.ws-phone{flex:0 0 26%;min-width:84px;margin-bottom:0}
.ws-case__meta{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:baseline}
.ws-case__meta h3{font-size:var(--fs-h3);margin:0}
.ws-case__meta h3 a{text-decoration:none;color:inherit}
.ws-case__meta h3 a:hover{color:var(--signal-700)}
.ws-case__meta .ws-badge{margin-left:auto}
.ws-cases-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:clamp(32px,4vw,48px) var(--grid-gap-lg)}
.ws-cases-2 .ws-case__meta h3{font-size:var(--fs-h4)}
@media (max-width:480px){.ws-case__visual>.ws-phone{display:none}.ws-case__visual--balance>.ws-phone{display:block}}

/* Positionering: vergelijking */
.ws-compare-head{display:grid;gap:4px}
.ws-compare-head h3{font-size:var(--fs-h4);color:var(--text-body);margin:0}

/* Zo werkt het: 4 stappen */
.ws-step{display:grid;gap:14px;align-content:start;padding-top:24px;border-top:1px solid var(--border-inverse-strong)}
.ws-step h3{font-size:var(--fs-h4);margin:0}
.ws-step p{font-size:var(--fs-small)}
p.ws-stepnum{font-family:var(--font-mono);font-size:var(--fs-small);color:var(--signal-400);margin:0}

/* Pakketten */
.ws-pricecard{display:flex;flex-direction:column;gap:24px;height:100%;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);padding:clamp(28px,3vw,40px);color:var(--text-body)}
.ws-pricecard--featured{background:var(--bg-inverse-raised);border-color:var(--border-inverse);color:var(--text-inverse-muted)}
.ws-pricecard--featured h3{color:#fff}
.ws-pricecard__head{display:grid;gap:8px}
.ws-pricecard__top{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:26px}
.ws-pricecard__top h3{font-size:var(--fs-h3);margin:0}
.ws-pricecard__desc{color:var(--text-muted);font-size:var(--fs-small)}
.ws-pricecard--featured .ws-pricecard__desc{color:var(--text-inverse-muted)}
hr.ws-pricecard__rule{height:1px;background:var(--border-subtle);border:0;margin:0;opacity:1;width:100%}
.ws-pricecard--featured hr.ws-pricecard__rule{background:var(--border-inverse)}
.ws-pricecard ul.ws-checks{flex:1}
.ws-pricecard .wp-block-buttons{display:grid}
.ws-pricecard .wp-block-button,.ws-pricecard .wp-block-button__link{width:100%}
.ws-pricecard--featured .wp-block-button.is-style-ws-secondary .wp-block-button__link{background:transparent;color:#fff;border-color:var(--border-inverse-strong)}
.ws-packages-foot{display:flex;flex-wrap:wrap;gap:16px 32px;justify-content:space-between;align-items:center;padding-top:8px}
p.ws-inclusive{display:flex;gap:12px;align-items:flex-start;max-width:720px;font-size:var(--fs-small);margin:0}
p.ws-inclusive::before{content:"";flex:none;width:20px;height:20px;background:var(--polder-600);-webkit-mask:var(--ws-icon) center/contain no-repeat;mask:var(--ws-icon) center/contain no-repeat}

/* Teksten inbegrepen */
.ws-two-col{display:flex;flex-wrap:wrap;gap:clamp(40px,6vw,96px);align-items:center}
.ws-two-col__text{flex:1 1 380px;min-width:0;display:grid;gap:24px}
.ws-two-col__visual{flex:1 1 420px;min-width:0}
.ws-two-col__visual--narrow{flex:1 1 300px;max-width:440px}
.ws-two-col__text--wide{flex:1.3 1 420px}
.ws-flow{display:grid;gap:0;justify-items:center}
.ws-flow__arrow{margin:-10px 0;position:relative;z-index:1;box-shadow:0 0 0 6px var(--bg-surface)}
.ws-brief{width:100%;background:var(--sand-100);border-radius:var(--radius-card);padding:24px;display:grid;gap:12px}
.ws-brief__head{display:flex;justify-content:space-between;gap:12px;align-items:center}
.ws-brief__q{font-weight:600;color:var(--text-strong)}
.ws-brief__a{background:var(--bg-surface);border:1px solid var(--border-input);border-radius:var(--radius-input);padding:14px;font-size:var(--fs-small);line-height:1.55;color:var(--text-body)}
.ws-result{width:100%;background:var(--bg-surface);border-radius:var(--radius-card);box-shadow:var(--shadow-md);padding:28px 24px 24px;display:grid;gap:12px}
p.ws-result__title{font-family:var(--font-display);font-weight:600;font-size:clamp(1.25rem,1.1rem + .6vw,1.6rem);line-height:1.2;letter-spacing:-.015em;color:var(--text-strong);text-wrap:balance}

/* Persoonlijke aandacht: features */
.ws-feature{display:grid;grid-template-columns:48px 1fr;column-gap:16px;row-gap:4px;align-content:start}
.ws-feature>.ws-icon-tile{grid-row:span 2}
.ws-feature h3{font-size:var(--fs-h5);font-family:var(--font-body);margin:0;align-self:end}
.ws-feature p{font-size:var(--fs-small)}

/* Zorgeloos */
.ws-zorgeloos{display:flex;flex-wrap:wrap;gap:clamp(32px,5vw,72px)}
.ws-zorgeloos__text{flex:1 1 340px;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-content:start}
/* Op zeer smalle schermen (320px) mag de knoptekst afbreken; anders drukt de knop de kolom breder dan de kaart. */
@media (max-width:359px){.ws-zorgeloos__text .wp-block-button__link{white-space:normal;text-align:center}}
.ws-zorgeloos__text h2{font-size:clamp(1.6rem,1.3rem + 1.2vw,2.25rem)}
.ws-zorgeloos__list{flex:1 1 380px;min-width:0;display:grid;gap:20px;align-content:start;padding-top:8px}

/* Reviews (placeholder) */
.ws-skel{height:60px;background-image:linear-gradient(var(--sand-200),var(--sand-200)),linear-gradient(var(--sand-200),var(--sand-200)),linear-gradient(var(--sand-200),var(--sand-200));background-size:100% 12px,92% 12px,64% 12px;background-position:0 0,0 24px,0 48px;background-repeat:no-repeat;border-radius:6px}
.ws-review-foot{display:flex;gap:12px;align-items:center}
.ws-review-foot::before{content:"";width:40px;height:40px;border-radius:50%;background:var(--sand-200);flex:none}
.ws-review-foot p{margin:0}
.ws-review-foot .ws-stack{gap:2px}

/* FAQ */
.ws-faq-layout{display:flex;flex-wrap:wrap;gap:clamp(32px,6vw,96px);align-items:flex-start}
.ws-faq__intro{flex:1 1 280px;min-width:0;max-width:400px;display:grid;gap:20px;position:sticky;top:104px}
.ws-faq__list{flex:2 1 460px;min-width:0}
@media (max-width:767px){.ws-faq__intro{position:static}}

/* Afsluiter */
.ws-closing{display:grid;gap:28px;justify-items:center;text-align:center;max-width:880px}
.ws-closing h2{font-size:var(--fs-h1)}
p.ws-usps{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:center;font-size:var(--fs-small);padding-top:12px}
p.ws-usps .ws-sep{color:var(--signal-400)}

/* Sticky mobiele CTA-balk */
.ws-stickybar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:rgba(251,249,245,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border-subtle);padding:12px 20px calc(12px + env(safe-area-inset-bottom));display:none;align-items:center;gap:16px;transform:translateY(100%);transition:transform var(--dur-slow) var(--ease-out)}
.ws-stickybar__text{display:grid;line-height:1.25;flex:1;min-width:0}
.ws-stickybar__text .ws-xs{color:var(--text-muted)}
.ws-stickybar .wp-block-buttons{flex:none}
@media (max-width:767px){.ws-stickybar{display:flex}.ws-stickybar.is-visible{transform:none}}

/* Footer */
.ws-footer{background:var(--bg-subtle);border-top:1px solid var(--border-subtle);padding:72px 0 32px;margin-top:auto}
.ws-footer__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:40px}
.ws-footer__brand{display:grid;gap:14px;align-content:start;grid-column:span 2;min-width:0;max-width:340px}
@media (max-width:480px){.ws-footer__brand{grid-column:span 1}}
.ws-footer__col{display:grid;gap:10px;align-content:start}
.ws-footer__col p.ws-eyebrow{margin-bottom:6px}
.ws-footer .wp-block-navigation .wp-block-navigation__container{display:grid;gap:10px;list-style:none;margin:0;padding:0}
.ws-footer .wp-block-navigation-item__content{text-decoration:none;font-size:var(--fs-small);color:var(--text-strong)}
.ws-footer .wp-block-navigation-item__content:hover{color:var(--signal-700)}
.ws-footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:24px;border-top:1px solid var(--border-default);font-size:var(--fs-xs);color:var(--text-muted)}
.ws-footer__bottom p{margin:0}

/* Overige pagina's (basis) */
.ws-page{padding-block:var(--section-y)}
.ws-page .ws-container{max-width:var(--container-narrow)}
.ws-page .wp-block-post-title{margin-bottom:24px}
.ws-page .entry-content>*+*{margin-top:1em}

/* Aanvullingen */
.ws-footer__stack{display:grid;gap:56px}
p.ws-measure,.ws-lead.ws-measure{max-width:34em}
.ws-pricecard hr.wp-block-separator.ws-pricecard__rule{width:100%;height:1px;border:0;border-bottom:0;background:var(--border-subtle);margin:0;opacity:1}
.ws-pricecard--featured hr.wp-block-separator.ws-pricecard__rule{background:var(--border-inverse)}
.ws-color--polder{color:var(--polder-600)}.ws-color--accent{color:var(--signal-700)}.ws-color--muted{color:var(--text-muted)}
.ws-icon-wrap{display:inline-flex;flex:none;vertical-align:middle}
.ws-nav__panel .wp-block-navigation-item{display:grid}
.ws-nav__panel .wp-block-navigation-item__content{width:100%}
.ws-nav__panel .wp-block-navigation{display:block}
.ws-nav__panel .wp-block-navigation .wp-block-navigation__container{width:100%}
.ws-nav__panel .wp-block-navigation .wp-block-navigation__container{grid-template-columns:minmax(0,1fr);justify-content:stretch;justify-items:stretch}

/* ---------- Subpagina's (fase 2) ---------- */
.ws-section--intro{padding-top:clamp(40px,6vw,88px);padding-bottom:clamp(32px,4vw,56px)}
.ws-section--intro-lg{padding-top:clamp(40px,6vw,88px)}
.ws-section--intro-md{padding-top:clamp(40px,6vw,88px);padding-bottom:clamp(40px,5vw,64px)}
.ws-section--flush-top{padding-top:0}
.ws-intro-row{display:flex;flex-wrap:wrap;gap:24px 64px;align-items:end;justify-content:space-between}
.ws-intro-row__text{display:grid;gap:20px;max-width:720px}
.ws-intro-row__text--wide{max-width:780px}
ul.ws-checks--tight{gap:10px;font-size:var(--fs-small);color:var(--text-strong);font-weight:500}
ul.ws-checks--tight li{align-items:center;gap:10px}
ul.ws-checks--tight li::before{width:18px;height:18px;margin-top:0}
p.ws-pricecard__note{font-size:var(--fs-xs);color:var(--text-muted);text-align:center;margin:0}
.ws-pricecard--featured p.ws-pricecard__note{color:var(--text-inverse-muted)}
.ws-pricecard .wp-block-buttons+p.ws-pricecard__note{margin-top:-12px}

/* Vergelijkingstabel (core/table met klasse ws-compare) */
.wp-block-table.ws-compare{margin:0;overflow:visible}
.ws-compare table{width:100%;border-collapse:collapse;font-size:var(--fs-small);table-layout:auto}
.ws-compare th,.ws-compare td{text-align:left;padding:16px 12px 16px 0;border:0;border-bottom:1px solid var(--border-subtle);vertical-align:middle;color:var(--text-body);word-break:normal}
.ws-compare tbody th,.ws-compare tbody td:first-child{font-weight:500;color:var(--text-strong);width:32%}
.ws-compare thead th{position:sticky;top:var(--nav-height);z-index:2;background:var(--bg-surface);border-bottom:1.5px solid var(--ink-900);padding:12px 12px 16px 0;font-weight:600;color:var(--text-strong);vertical-align:bottom;font-size:var(--fs-body);line-height:1.3}
.admin-bar .ws-compare thead th{top:calc(var(--nav-height) + var(--wp-admin--admin-bar--height,32px))}
.ws-compare thead th:first-child{width:32%}
.ws-compare__price{display:block;font-size:var(--fs-small);color:var(--text-muted);font-weight:400;margin-top:2px}
.ws-compare__dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent);margin-left:8px;vertical-align:middle}
.ws-compare img{width:20px;height:20px;display:inline-block;vertical-align:middle;margin-right:6px}
.wp-block-buttons.ws-compare__actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:24px;margin-left:32%}
.ws-compare__actions .wp-block-button,.ws-compare__actions .wp-block-button__link{width:100%}
@media (max-width:640px){
  .ws-compare table,.ws-compare thead,.ws-compare tbody{display:block}
  .ws-compare tr{display:flex;flex-wrap:wrap;gap:8px 12px;padding:14px 0;border-bottom:1px solid var(--border-subtle)}
  .ws-compare th,.ws-compare td{border:0;padding:0;width:auto}
  .ws-compare tr>*:first-child{flex:1 1 100%;width:auto}
  .ws-compare tr>*:not(:first-child){flex:1 1 0;min-width:0}
  .ws-compare thead th{position:static;border:0;padding:0}
  .ws-compare thead tr{position:sticky;top:var(--nav-height);background:var(--bg-surface);z-index:2;border-bottom:1.5px solid var(--ink-900)}
  .ws-compare thead th:first-child{display:none}
  .wp-block-buttons.ws-compare__actions{margin-left:0}
}

/* Extra's */
.ws-split{display:flex;flex-wrap:wrap;gap:40px clamp(40px,6vw,96px)}
.ws-split--center{align-items:center}
.ws-split--lg{gap:48px clamp(40px,6vw,96px)}
.ws-split__aside{flex:1 1 280px;max-width:380px;display:grid;gap:20px;align-content:start}
.ws-split__main{flex:2 1 460px;min-width:0}
.ws-split__text{flex:1 1 320px;max-width:460px;display:grid;gap:20px}
.ws-split__half{flex:1 1 360px;min-width:0;display:grid;gap:22px;align-content:start}
.ws-split__half--list{flex:1 1 380px;gap:28px}
.ws-addons{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:0 32px}
.ws-addon{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:16px;row-gap:4px;padding:20px 0;border-top:1px solid var(--border-default);align-content:start}
.ws-addon>.ws-icon-tile{grid-row:span 2;width:40px;height:40px}
.ws-addon__head{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.ws-addon__head p{margin:0;font-weight:600;color:var(--text-strong)}
.ws-addon__head p+p{white-space:nowrap}
.ws-addon>p{font-size:var(--fs-small);color:var(--text-muted)}

/* Betalen */
.ws-paycard{flex:1.2 1 400px;min-width:0;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);padding:clamp(24px,3vw,36px);display:grid;gap:24px}
.ws-paycard__head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.ws-paycard__head p{margin:0;font-weight:600;color:var(--text-strong)}
.ws-paycard__bar{display:grid;grid-template-columns:1fr 1fr;gap:4px;height:10px}
.ws-paycard__bar::before{content:"";background:var(--ink-900);border-radius:5px 0 0 5px}
.ws-paycard__bar::after{content:"";background:var(--sand-200);border-radius:0 5px 5px 0}
.ws-paycard__cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ws-paycard__col{display:grid;gap:4px}
.ws-paycard__col p.ws-eyebrow{letter-spacing:.06em}
p.ws-paycard__amount{font-family:var(--font-display);font-weight:600;font-size:1.5rem;color:var(--text-strong);letter-spacing:-.02em}
.ws-paycard__col p.ws-xs{color:var(--text-muted)}

/* Regels met icoon (donkere notities, infobox) */
.ws-iconline{display:flex;gap:12px;align-items:flex-start}
.ws-iconline p{margin:0}
.ws-dark-notes{display:grid;gap:14px;padding-top:24px;border-top:1px solid var(--border-inverse)}
.ws-dark-notes .ws-icon-wrap{color:var(--ink-200)}
.ws-on-dark p.ws-badge--outline{color:#fff;box-shadow:inset 0 0 0 1px var(--border-inverse-strong)}
.ws-on-dark ul.ws-checks{color:#fff}
.ws-infobox{display:flex;gap:12px;align-items:flex-start;max-width:360px;padding:16px 18px;border:1px solid var(--border-default);border-radius:var(--radius-card)}
.ws-infobox p{font-size:var(--fs-small);margin:0}
.ws-infobox strong{color:var(--text-strong)}

/* Pill-navigatie (buttons-blok met klasse ws-pills) */
.wp-block-buttons.ws-pills{gap:8px;margin-top:40px;counter-reset:pill}
.ws-pills .wp-block-button__link{height:44px;padding:0 16px;border:1px solid var(--border-strong);border-radius:var(--radius-pill);font-size:var(--fs-small);font-weight:500;background:var(--bg-surface);color:var(--text-strong);gap:10px}
.ws-pills .wp-block-button__link::before{counter-increment:pill;content:counter(pill,decimal-leading-zero);font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}
.ws-pills .wp-block-button__link:hover{background:var(--bg-surface);border-color:var(--ink-900);color:var(--text-strong)}

/* Cases (Voorbeelden) */
.ws-case-section{scroll-margin-top:var(--nav-height)}
.ws-case-head{display:flex;flex-wrap:wrap;gap:16px 32px;align-items:end;justify-content:space-between}
.ws-case-head__title{display:grid;gap:12px}
p.ws-casenum{font-family:var(--font-mono);font-size:var(--fs-small);color:var(--text-accent);margin:0}
.ws-badges{display:flex;flex-wrap:wrap;gap:8px}
p.ws-badge--dark{background:var(--ink-900);color:#fff}
.ws-case-stage{background:var(--sand-100);border-radius:var(--radius-card);padding:clamp(16px,4vw,64px);display:flex;gap:clamp(16px,3vw,48px);align-items:flex-start}
.ws-case-stage>.ws-browser{flex:1 1 0;min-width:0}
.ws-case-stage>.ws-phone{flex:0 0 21%;min-width:96px;width:auto;margin-top:clamp(24px,8vw,120px)}
.ws-case-stage--noord{background:#E1E5DF}
.ws-case-stage--balance{background:#EFE5DA}
.ws-case-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:32px var(--grid-gap-lg)}
.ws-case-col{display:grid;gap:10px;align-content:start}
.ws-case-col p.ws-eyebrow{margin-bottom:0}
.ws-linkhint{display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-small);color:var(--text-muted)}
.ws-linkhint p{margin:0}
.ws-cta-row{display:flex;flex-wrap:wrap;gap:32px;align-items:center;justify-content:space-between}
.ws-cta-row__text{display:grid;gap:14px;max-width:640px}
.ws-cta-row--sm{gap:24px}
.ws-cta-row--sm .ws-cta-row__text{gap:8px;max-width:440px}

/* Werkwijze */
.ws-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--grid-gap)}
.ws-summary__card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);padding:24px;display:grid;gap:8px;align-content:start}
.ws-summary__card h3{font-size:var(--fs-h4)}
.ws-summary__card p{font-size:var(--fs-small)}
.ws-summary__card p.ws-mono{font-size:var(--fs-xs)}
.ws-phase{display:flex;flex-wrap:wrap;gap:32px clamp(40px,6vw,96px)}
.ws-phase__intro{flex:1 1 260px;max-width:360px;display:grid;gap:14px;align-content:start}
.ws-phase__steps{flex:2 1 460px;min-width:0;display:grid}
.ws-wstep{display:grid;grid-template-columns:52px minmax(0,1fr);gap:4px 20px;padding:24px 0;border-top:1px solid var(--border-default);align-content:start}
.ws-on-dark .ws-wstep{border-color:var(--border-inverse-strong)}
p.ws-wstep__num{font-family:var(--font-mono);font-size:var(--fs-h4);line-height:1.3;color:var(--text-accent);margin:0;grid-row:span 2}
.ws-on-dark p.ws-wstep__num{color:var(--signal-400)}
.ws-wstep__head{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}
.ws-wstep__head h3{font-size:var(--fs-h4);margin:0}
.ws-wstep__head p.ws-mono{font-size:var(--fs-xs);letter-spacing:0}
.ws-on-dark .ws-wstep__head p.ws-mono{color:var(--text-inverse-muted)}
.ws-wstep>p:last-child{max-width:40em}
.ws-skip{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:var(--grid-gap)}
.ws-skip__card{background:var(--bg-surface);border-radius:var(--radius-card);padding:24px;display:grid;gap:8px;justify-items:start;align-content:start}
.ws-skip__card h3{font-size:var(--fs-h5);font-family:var(--font-body)}
.ws-skip__card p{font-size:var(--fs-small)}

/* Veelgestelde vragen (pagina) */
.ws-faq-page{display:grid;gap:56px}
.ws-faq-group{display:grid;gap:12px}
.ws-faq-group.is-hidden{display:none}
.ws-faq details.is-hidden{display:none}
.ws-faq-empty{border:1px dashed var(--border-default);border-radius:var(--radius-card);padding:32px;display:grid;gap:8px;justify-items:start}
.ws-faq-empty:not(.is-visible){display:none}
.ws-faq-empty h3{font-size:var(--fs-h4)}
.ws-faq-search{padding-top:12px}
.ws-faq-search .ws-input{padding-left:42px}
.ws-faq-search .ws-icon{position:absolute;left:14px;color:var(--text-muted);pointer-events:none}
.ws-faq-search .ws-control{position:relative;display:flex;align-items:center}

/* Contact */
.ws-contact{display:flex;flex-wrap:wrap;gap:48px clamp(40px,6vw,96px);align-items:flex-start}
.ws-contact__aside{flex:1 1 300px;max-width:420px;display:grid;gap:20px}
.ws-contact__main{flex:1.3 1 420px;min-width:0}
.ws-callcard{margin-top:20px;background:var(--bg-subtle);border-radius:var(--radius-card);padding:24px;display:grid;gap:12px;justify-items:start}
.ws-callcard__head{display:flex;gap:12px;align-items:center}
.ws-callcard__head h2{font-size:var(--fs-h4);margin:0}
.ws-callcard__head .ws-icon-tile{width:40px;height:40px}
.ws-callcard p{font-size:var(--fs-small)}
.wp-block-button.ws-icon-left .wp-block-button__link::before{content:"";width:16px;height:16px;flex:none;background:currentColor;-webkit-mask:var(--ws-icon) center/contain no-repeat;mask:var(--ws-icon) center/contain no-repeat}

/* Contact Form 7 in ontwerpstijl */
.ws-form-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);padding:clamp(24px,4vw,48px)}
.ws-form-card.is-hidden{display:none}
.ws-form-card .wpcf7 form{display:grid;gap:24px}
.ws-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:24px}
.ws-field{display:grid;gap:8px;min-width:0}
.ws-field .wpcf7-form-control-wrap{display:block;position:relative}
.ws-field .ws-label{font-size:var(--fs-small);font-weight:600;line-height:1.3;color:var(--text-strong)}
.ws-select-wrap{position:relative;display:block}
.ws-select-wrap .ws-select{padding-right:42px}
.ws-select-wrap::after{content:"";position:absolute;right:14px;top:50%;width:18px;height:18px;margin-top:-9px;background:var(--text-muted);-webkit-mask:var(--ws-icon) center/contain no-repeat;mask:var(--ws-icon) center/contain no-repeat;pointer-events:none}
.ws-textarea{min-height:160px}
.wpcf7-not-valid-tip{display:flex;gap:6px;align-items:center;margin-top:8px;font-size:var(--fs-xs);line-height:1.45;color:var(--text-danger);font-weight:500}
.wpcf7-not-valid-tip::before{content:"";width:16px;height:16px;flex:none;background:currentColor;-webkit-mask:var(--ws-icon) center/contain no-repeat;mask:var(--ws-icon) center/contain no-repeat}
.ws-form-foot{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.ws-form-foot p{font-size:var(--fs-xs);color:var(--text-muted);max-width:30em;margin:0}
.ws-submit{position:relative;display:inline-flex;align-items:center}
.ws-submit .wpcf7-submit{display:inline-flex;align-items:center;height:48px;padding:0 50px 0 22px;border-radius:var(--radius-button);border:1.5px solid transparent;background:var(--action-primary);color:var(--action-primary-text);font-family:var(--font-body);font-size:var(--fs-body);font-weight:600;line-height:1;letter-spacing:-.005em;cursor:pointer;appearance:none;-webkit-appearance:none;transition:background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}
.ws-submit .wpcf7-submit:hover{background:var(--action-primary-hover)}
.ws-submit .wpcf7-submit:active{transform:translateY(1px)}
.ws-submit .wpcf7-submit:disabled{opacity:.42;cursor:not-allowed}
.ws-submit::after{content:"";position:absolute;right:22px;top:50%;width:18px;height:18px;margin-top:-9px;background:#fff;-webkit-mask:var(--ws-icon) center/contain no-repeat;mask:var(--ws-icon) center/contain no-repeat;pointer-events:none;transition:transform var(--dur-base) var(--ease-out)}
.ws-submit:hover::after{transform:translateX(3px)}
.ws-submit .wpcf7-spinner{position:absolute;right:-36px;top:50%;margin:-12px 0 0}
.wpcf7 .wpcf7-response-output{margin:0!important;padding:14px 16px!important;border:1px solid var(--border-default)!important;border-radius:var(--radius-md);font-size:var(--fs-small);line-height:1.45}
.wpcf7 form.init .wpcf7-response-output,.wpcf7 form.submitting .wpcf7-response-output{display:none}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.aborted .wpcf7-response-output{border-color:var(--danger-600)!important;background:var(--danger-100);color:var(--danger-700)}
.wpcf7 form.sent .wpcf7-response-output{border-color:var(--polder-300)!important;background:var(--polder-100);color:var(--polder-700)}
.wpcf7 form.spam .wpcf7-response-output{border-color:var(--warning-500)!important;background:var(--warning-100);color:var(--warning-700)}
.ws-hp-wrap{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.ws-form-success{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);padding:clamp(28px,4vw,48px);display:grid;gap:16px;justify-items:start}
.ws-form-success:not(.is-visible){display:none}
.ws-form-success h2{font-size:var(--fs-h3)}
.ws-form-success .ws-icon-tile{background:var(--polder-100);color:var(--polder-700)}
.ws-phone__bar{padding:0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;line-height:26px;text-align:center}

/* Bestel-/briefingpagina's: eigen kop, geen sitefooter */
.ws-flow-page .ws-main{flex:1}

/* Juridische pagina's (algemene voorwaarden, privacyverklaring, cookiebeleid): leesbreedte, koppen, tabellen */
.ws-legal{display:grid;gap:14px}
.ws-legal>*{max-width:var(--measure)}
.ws-legal h2{font-size:var(--fs-h3);margin-top:22px;scroll-margin-top:calc(var(--nav-height) + 16px)}
.ws-legal h2:first-child{margin-top:0}
.ws-legal h3{font-size:var(--fs-h4);margin-top:6px}
.ws-legal p,.ws-legal li{color:var(--text-body);line-height:var(--lh-body)}
.ws-legal ul,.ws-legal ol{margin:0;padding-left:1.3em;display:grid;gap:6px;list-style-position:outside}
.ws-legal ul{list-style:disc}.ws-legal ol{list-style:decimal}
.ws-legal a{color:var(--text-strong);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:1.5px;text-underline-offset:.2em}
.ws-legal a:hover{color:var(--signal-700)}
.ws-legal .wp-block-table{margin:4px 0 0;overflow-x:auto;-webkit-overflow-scrolling:touch}
.ws-legal table{width:100%;border-collapse:collapse;font-size:var(--fs-small);line-height:1.45;min-width:520px}
.ws-legal th,.ws-legal td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--border-subtle)}
.ws-legal th{color:var(--text-strong);font-weight:600;background:var(--bg-subtle);white-space:nowrap}
.ws-legal td:nth-child(3){width:38%}.ws-legal td:nth-child(4){width:26%}
.ws-legal code{font-family:var(--font-mono);font-size:.88em;background:var(--bg-subtle);padding:1px 6px;border-radius:var(--radius-xs);white-space:nowrap}
.ws-legal-meta{font-size:var(--fs-small);color:var(--text-muted)}
.ws-legal-actions{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;font-size:var(--fs-small);color:var(--text-muted)}
.ws-draft-note{padding:12px 16px;border-radius:var(--radius-md);background:var(--warning-100);color:var(--warning-700);border:1px solid var(--warning-500);font-size:var(--fs-small)}
.ws-draft-note::before{content:"Concept · nog in te vullen: ";font-weight:600}
@media (max-width:640px){
.ws-legal .wp-block-table{overflow:visible}
.ws-legal table{min-width:0;display:block}
.ws-legal thead{display:none}
.ws-legal tbody{display:grid;gap:10px}
.ws-legal tr{display:grid;gap:6px;padding:12px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface)}
.ws-legal td{display:block;width:auto;padding:0;border:0}
.ws-legal td::before{content:attr(data-label);display:block;font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted);margin-bottom:2px}
.ws-legal td:nth-child(3),.ws-legal td:nth-child(4){width:auto}
}
