/*!
 * SCN front-end - centrale stylesheet (Start Clothing Now, fase 4)
 * Bestand:  wp-content/mu-plugins/scn-frontend/scn-frontend.css
 * Geladen:  door mu-plugins/scn-frontend.php, onderaan de body (na Astra, na Additional CSS en na de inline <style>
 *           van de Custom HTML-pagina's), met ?ver=SCN_FRONTEND_CSS_VERSION. Verhoog die constante bij elke wijziging.
 *           Het blok tussen "@critical:start" en "@critical:end" wordt door scn-frontend.php óók inline in de head gezet
 *           (tokens, html 100%, body), zodat de nieuwe rem-basis vóór de eerste render geldt (geen verspringing/CLS).
 *           1.5.5 (F7): dezelfde <link> staat óók direct na <body> en direct na het eerste <style>-blok van de content
 *           (scn-frontend.php sectie 19), zodat de pagina meteen met deze opmaak getekend wordt; de footer-<link> blijft de laatste.
 * Norm:     /workspace/scn-fix/ui/stijlgids-fase4.md (SG) + besluiten-fase4.md (1-8). Paragraafnummers hieronder = SG.
 * Afspraak: alle nieuwe front-end-CSS komt hier. Niet in Additional CSS, niet in post_content (Custom HTML met inline
 *           JS/SVG niet aanpassen), niet via een optimalisatieplugin. Knoppen: nergens een hex-waarde, alleen --scn-cta*.
 * Specificiteit: de pagina's hebben eigen inline CSS met !important (bv. ".scn-contact2 .forminator-ui ...").
 *           Dit bestand staat later in de cascade; waar nodig staat "body" vooraan om minstens even specifiek te zijn,
 *           en !important alleen waar de bestaande regel ook !important is.
 *
 * Versies
 * 1.6.0  06-10-2026  F7 (staging): §14 cookiebanner mobiel compact, footerknop Cookie-instellingen, scroll-margin anker
 *                    #scn-panel-offerte; kritiek: banner pas tonen als zijn CSS er is. Kerstpagina-opmaak: scn-kerst.css.
 *         rev c  ?ver=1.6.0-c: ruimte offertepanel tot de bouwer er is (CLS bij binnenkomst via #scn-panel-offerte).
 *         rev d  ?ver=1.6.0-d: links in de bannertekst onderstreept (axe link-in-text-block).
 * 1.0.0  01-10-2026  Aangemaakt (fase 4 deel A, stap 1). Nog geen regels.
 * 1.3.1  01-10-2026  QA fase 5 (F5-06): sticky balk zonder slide-transitie bij prefers-reduced-motion. Verder ongewijzigd.
 * 1.3.0  01-10-2026  UI-ronde 2: sticky verborgen = visibility hidden, tekstlinks, menufocus, pauzeknop rechtsboven + dubbele
 *                    focusring, sticky-uitlijning, focus verzendknop, mobiel menu #fffcf8.
 * 1.2.1  01-10-2026  404-kop zonder Astra-marge (h1 op 315 bij 1440); kicker juridisch gelijk aan andere kickers, datumregel na h1.
 * 1.2.0  01-10-2026  Deel C + UI-review 1: tabelwrapper (scroll/caption/breakout), --scn-measure 32rem, feedback-
 *                    uitlijning, FAQ-marge, footer-padding/nowrap, sticky-breedte, zoek-/404-uitlijning, videoknop.
 * 1.1.3  01-10-2026  Deel B afgerond (footer, laatste correcties).
 * 1.1.1  01-10-2026  Zoekkop zonder Astra-padding; onderbalk footer één keer padding.
 * 1.1.0  01-10-2026  Deel B: tokens (§1.2, §2.1, §7.2), typografie (§1), breedtes (§7, besluit 8), knoppen (§3),
 *                    focus (§4), velden (§5), kaarten (§6), juridisch (§1.3, §8), zoeken + 404 (§10), footer (§9).
 */

/* @critical:start ================================================================================ */
:root{
  --scn-serif:"Cormorant Garamond","Cormorant",Georgia,"Times New Roman",serif;
  --scn-sans:"Source Sans 3","Source Sans Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  --scn-fs-body:1rem;--scn-fs-lead:1.125rem;--scn-fs-small:.875rem;--scn-fs-eyebrow:.75rem;
  --scn-fs-h1:clamp(2rem,1.4rem + 2.5vw,3.25rem);--scn-fs-h2:clamp(1.625rem,1.3rem + 1.4vw,2.25rem);
  --scn-fs-h3:1.25rem;--scn-fs-h4:1.125rem;--scn-fs-button:1rem;--scn-lh-body:1.65;
  --scn-ink:#2a2825;--scn-ink-dark:#1c1b19;--scn-muted:#4f4a43;--scn-help:#4a453f;
  --scn-accent-text:#6f5a40;--scn-accent:#8b7355;--scn-accent-soft:#c4a882;--scn-gold:#b79a41;
  --scn-bg-body:#f7f4ee;--scn-cream:#f7f5f1;--scn-bg:#efebe4;--scn-bg-warm:#efe7da;--scn-card:#fffcf8;--scn-field-bg:#fff;
  --scn-card-border:#e4dfd6;--scn-field-border:#8f8578;--scn-placeholder:#6b645b;
  --scn-error:#b5533c;--scn-error-text:#8a2d1a;
  --scn-cta:var(--scn-ink);--scn-cta-hover:var(--scn-ink-dark);--scn-cta-text:#fffcf8;
  --scn-focus:#2a2825;
  --scn-space-1:.25rem;--scn-space-2:.5rem;--scn-space-3:.75rem;--scn-space-4:1rem;--scn-space-5:1.5rem;
  --scn-space-6:2rem;--scn-space-7:3rem;--scn-space-8:4rem;--scn-space-9:6rem;
  --scn-container-wide:1200px;--scn-container:1080px;--scn-container-narrow:860px;--scn-measure:32rem;--scn-list:760px;
  --scn-gutter:1.25rem;--scn-section-y:3rem;--scn-sticky-h:4.5rem;
}
@media (min-width:545px){:root{--scn-gutter:1.5rem;--scn-section-y:4rem}}
@media (min-width:922px){:root{--scn-gutter:1.5rem;--scn-section-y:4.5rem}}
/* §1.1: 1rem = 16px op alle breakpoints (Astra: 81,25% desktop, 74,1% <=921) */
html,html:root{font-size:100%}
body,button,input,select,textarea,.ast-button,.ast-custom-button{font-family:var(--scn-sans)}
body{font-size:var(--scn-fs-body);line-height:var(--scn-lh-body);color:var(--scn-ink)}
/* 1.5.4 logo (ronde 6b): woordmerk als <img> met width/height (scn-frontend.php sectie 17). Kritiek, zodat header en footer
   bij de eerste render al de juiste maat hebben (geen CLS). Mobiele header: Astra's breakpoint (body.ast-header-break-point,
   <= 921px) en de mobiele header van Astra zelf (#ast-mobile-header), zodat het niet afhangt van wanneer Astra's JS de class zet. */
body .site-header .site-logo-img img.scn-logo{display:block;height:44px!important;width:auto!important;max-width:none!important}
body.ast-header-break-point .site-header .site-logo-img img.scn-logo,body #ast-mobile-header .site-logo-img img.scn-logo{height:40px!important}
body .site-footer .scn-footer .scn-footer-brand img.scn-logo--footer{display:block;height:40px;width:auto;max-width:none;margin:.5rem 0 .25rem}
@media (max-width:544px){body .site-footer .scn-footer .scn-footer-brand img.scn-logo--footer{height:36px}}
/* 1.6.0 (F7): Complianz laadt zijn banner-CSS async (scn-meting). Tot die binnen is blijft de banner weg, zodat er geen
   ongestyled frame in de flow verschijnt (gemeten: #page 1313px omlaag, 2x CLS 1.0). Specificiteit 0 via :where(): zodra
   banner-1-optin.css (.cmplz-cookiebanner{display:grid}) geladen is, wint die vanzelf. Zonder JS blijft de banner via de
   eigen .cmplz-hidden van Complianz verborgen, zoals voorheen. */
:where(#cmplz-cookiebanner-container .cmplz-cookiebanner){display:none}
/* @critical:end ================================================================================== */

/* ============================== 1. TYPOGRAFIE (§1) ============================== */
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
strong,b{font-weight:600}
input,select,textarea{font-size:1rem}
h1,h2,h3,h4,.entry-content :where(h1,h2,h3,h4){font-family:var(--scn-serif);font-weight:600;letter-spacing:0;color:var(--scn-ink)}
h5,h6,.entry-content :where(h5,h6){font-family:var(--scn-sans);font-size:1rem;font-weight:600;line-height:1.4}
h1,.entry-content :where(h1){font-size:var(--scn-fs-h1);line-height:1.15}
h2,.entry-content :where(h2){font-size:var(--scn-fs-h2);line-height:1.2}
h3,.entry-content :where(h3){font-size:var(--scn-fs-h3);line-height:1.3}
h4,.entry-content :where(h4){font-size:var(--scn-fs-h4);line-height:1.35}

/* Custom HTML-pagina's (.scn-lp): basis 1rem/1.65, geen 300 meer, geen letterafstand */
body .scn-lp{font-family:var(--scn-sans);font-size:var(--scn-fs-body);line-height:var(--scn-lh-body);letter-spacing:0}
body .scn-lp p,body .scn-lp li,body .scn-lp .scn-intro,body .scn-lp .scn-note,body .scn-lp .scn-subtle,
body .scn-lp .scn-card p,body .scn-lp .scn-step p,body .scn-lp .scn-list li,body .scn-lp .scn-faq-a,
body .scn-lp .scn-hero .lead,body .scn-lp .scn-sticky-inner p,body .scn-fb p{font-weight:400}
body .scn-lp p{margin:0 0 1rem}
/* Koppenschaal: één h1-, h2-, h3-maat op alle pagina's (INC-03/04/05) */
body .scn-lp h1,body .scn-lp .scn-hero h1,body .scn-contact2 h1,body .scn-fb h1,body .scn-legal h1,
body.search .ast-archive-description .page-title,body.error404 .page-title{
  font-family:var(--scn-serif);font-size:var(--scn-fs-h1);font-weight:600;line-height:1.15;letter-spacing:0;margin:0 0 1rem}
body .scn-lp h2,body .scn-fb h2,body .scn-lp .scn-faq-cta-title,
body .entry-content .scn-lp .scn-step h2{font-family:var(--scn-serif);font-size:var(--scn-fs-h2);font-weight:600;line-height:1.2;letter-spacing:0}
body .scn-lp h2,body .scn-fb h2{margin:0 0 .75rem}
body .scn-lp h3,body .scn-contact2 h3,body .scn-lp .scn-card h3,body .scn-lp .scn-step h3{font-family:var(--scn-serif);font-size:var(--scn-fs-h3);font-weight:600;line-height:1.3;letter-spacing:0;margin:0 0 .5rem}
body .scn-lp h4,body .scn-contact2 .scn-c2-print h4{font-family:var(--scn-serif);font-size:var(--scn-fs-h4);font-weight:600;line-height:1.35}
/* Kaarttitels in de stappen op Hoe het werkt zijn h2 in de HTML; visueel kaarttitel (§6: 1.25rem), zoals de stappen op Home */
body .entry-content .scn-lp .scn-step h2{font-size:var(--scn-fs-h3);line-height:1.3;margin:0 0 .5rem}
/* Sectiekoppen na eerdere inhoud: vaste bovenmarge i.p.v. 2.6rem/3rem per pagina */
body .scn-lp .scn-wrap > h2:not(:first-child),body .scn-fb h2:not(:first-child){margin-top:var(--scn-space-7)}
/* Eyebrow/kicker (§1.2): .75rem 600 uppercase .12em #6f5a40; op donker #c4a882 (INC-06) */
body .scn-lp .scn-kicker,body .scn-lp .scn-eyebrow,body .scn-contact2 .scn-kicker,body .scn-fb .scn-kicker,.scn-kicker,
body .scn-lp .scn-tagline{
  font-family:var(--scn-sans);font-size:var(--scn-fs-eyebrow);font-weight:600;line-height:1.4;letter-spacing:.12em;text-transform:uppercase;
  color:var(--scn-accent-text)!important;margin:0 0 .5rem}
body .entry-content .scn-lp :is(.scn-hero,.scn-section.quiet,.scn-parallax-section,.scn-quiet) :is(.scn-kicker,.scn-eyebrow){color:var(--scn-accent-soft)!important}
body .scn-lp .scn-hero .scn-eyebrow{margin-bottom:1rem}
body .scn-lp .scn-tagline{margin:var(--scn-space-6) 0 0}
/* Lead/intro (§1.2): 1.125rem/1.6 #4f4a43, max 70ch */
body .scn-lp .scn-intro,body .scn-contact2 .scn-c2-intro,body .scn-fb .scn-intro,body .scn-lp .scn-hero .lead{
  font-size:var(--scn-fs-lead);line-height:1.6;max-width:var(--scn-measure)}
body .scn-lp .scn-hero .lead{max-width:34rem;opacity:1}
body .scn-lp p{max-width:var(--scn-measure)}
body .scn-lp .scn-card p,body .scn-lp .scn-step p,body .scn-lp .scn-faq-a,body .scn-lp .scn-faq-a p{font-size:var(--scn-fs-body)}
/* Klein nooit onder .875rem (§1.2, INC-02) */
body .scn-lp .scn-paylogo,body .scn-lp .scn-pill,body .scn-contact2 .scn-c2-hint,body .scn-contact2 .scn-c2-sizes label,
body .scn-contact2 .scn-c2-del,body .scn-lp .scn-verse cite,body .scn-lp .scn-sign-role{font-size:var(--scn-fs-small)}
body .scn-lp .scn-note,body .scn-lp .scn-subtle,body .scn-lp .scn-sticky-inner p,body .scn-contact2 .scn-c2-tab span{font-size:.9375rem}
/* Missietekst "Duurzaam · kwaliteit · op maat" op donker (§2.4): #c4a882 */
body .entry-content .scn-lp .scn-section.quiet p:not(.scn-intro){color:#d4cfc4!important}
body .entry-content .scn-lp .scn-section.quiet p[style*="accent-soft"]{color:var(--scn-accent-soft)!important}
/* #8b7355 in kleine tekst en hover wordt #6f5a40 (§2.4) */
body .scn-contact2,body .scn-fb{--accent-d:#6f5a40}
body .scn-lp .scn-textlink{color:var(--scn-accent-text)!important;font-weight:500;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em;text-decoration-color:currentColor}
body .scn-lp .scn-textlink:hover{color:var(--scn-ink)!important;text-decoration-thickness:2px}
body .scn-lp .scn-step .n{color:var(--scn-ink)}
body .scn-faq-list summary:hover{color:var(--scn-accent-text)!important}
body .scn-lp .scn-faq-list summary{font-size:1.0625rem}
/* Quote Over ons (§1.2): Cormorant italic 1.25rem 500 */
body .scn-lp .scn-verse p{font-size:1.25rem;line-height:1.5}

/* Astra-onderdelen: menu, kruimelpad, skip-link, zoekveld (INC-17: geen Roboto, Source Sans overal) */
.main-header-menu,.ast-builder-menu-1,.ast-builder-menu-mobile,.main-header-menu .menu-link,.ast-breadcrumbs,.ast-breadcrumbs-wrapper,
.skip-link,.search-form,.search-field,.ast-footer-copyright,.site-footer{font-family:var(--scn-sans)}
.main-header-menu .menu-link{font-size:1rem;font-weight:500}
.ast-breadcrumbs-wrapper,.ast-breadcrumbs .trail-items{font-size:var(--scn-fs-small);line-height:1.5;color:var(--scn-muted)}
.ast-breadcrumbs .trail-items a{color:var(--scn-accent-text);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}
.ast-breadcrumbs .trail-items a:hover{color:var(--scn-ink)}
/* Kruimelpad op dezelfde lijn als de wraps (1080 + gutter), ook op pagina's met eigen container-CSS (feedback) */
body .main-header-bar.ast-header-breadcrumb > .ast-container,body:has(.scn-fb) .main-header-bar.ast-header-breadcrumb > .ast-container{max-width:var(--scn-container)!important;margin-inline:auto;padding-inline:var(--scn-gutter)!important;box-sizing:border-box}
.main-header-menu .menu-item:hover > .menu-link,.main-header-menu .menu-item > .menu-link:hover{color:var(--scn-accent-text)}
/* Topbalk (Additional CSS 13px/12,5px/11,5px): klein nooit onder .875rem */
body .scn-topbar{font-size:var(--scn-fs-small)}
@media (max-width:767px){body .scn-topbar{font-size:var(--scn-fs-small);letter-spacing:0}}
@media (max-width:359px){body .scn-topbar{font-size:var(--scn-fs-small);letter-spacing:0}}

/* ============================== 2. BREEDTES EN RITME (§7, besluit 8) ============================== */
/* Container-patroon: alle pagina-wraps 1080px met gutter (INC-07) */
body .scn-lp .scn-wrap,body .scn-contact2 .scn-wrap,body .scn-lp .scn-hero .scn-wrap{
  width:100%;max-width:var(--scn-container);margin-inline:auto;padding-inline:var(--scn-gutter);box-sizing:border-box}
/* Standaardpagina's (kop + inhoud direct in de wrap): sectieruimte (INC-10) */
body .scn-lp > .scn-wrap{padding-block:var(--scn-section-y)}
/* Home: sectieruimte */
body .scn-lp .scn-section{padding-block:var(--scn-section-y)}
body .scn-lp .scn-hero .scn-wrap{padding-block:clamp(4rem,8vh,6rem) clamp(3rem,7vh,5rem)}
/* Contact: wrap 1080, formulierkolom 860 gecentreerd (besluit 8) */
body .scn-contact2 > .scn-wrap > *{max-width:var(--scn-container-narrow);margin-inline:auto}
/* Feedback: wrap 1080, intro in de leeskolom (70ch), formulier 860, allebei gecentreerd (besluit 8) */
body .scn-lp.scn-fb{max-width:none;margin:0;padding:0}
body .scn-fb > .scn-wrap{width:100%;max-width:var(--scn-container);margin-inline:auto;padding:var(--scn-section-y) var(--scn-gutter);box-sizing:border-box}
/* UI-review 3: kicker, h1, h2 en intro links in de 860-kolom (zelfde linkerrand als het formulier, net als Contact);
   alleen de alinea's krijgen de leesmaat (--scn-measure, UI-review 2) */
body .scn-fb > .scn-wrap > *{width:100%;max-width:var(--scn-container-narrow);margin-inline:auto}
body .scn-fb > .scn-wrap > p{max-width:var(--scn-measure);margin-left:max(0px,calc((100% - var(--scn-container-narrow)) / 2));margin-right:auto}
body .scn-fb > .scn-wrap > #scn-feedback-slot,body .scn-fb #scn-feedback-slot{max-width:var(--scn-container-narrow);margin-inline:auto}
body .scn-fb #scn-feedback-slot{margin-top:var(--scn-space-6)}
/* Sticky balk: zelfde breedte */
/* UI-ronde 2 punt 5: balk zonder eigen zijpadding, inner = container met gutter, zodat de inhoud op dezelfde x staat als de secties (204-1236 op 1440, 24 op 800) */
body .scn-lp .scn-sticky-cta .scn-sticky-inner,body .scn-sticky-cta .scn-sticky-inner{max-width:var(--scn-container);margin-inline:auto;padding-inline:var(--scn-gutter);box-sizing:border-box}
/* Kaartafstanden (§7.2) */
body .scn-lp .scn-grid-4,body .scn-lp .scn-grid-3,body .scn-lp .scn-steps{gap:var(--scn-space-4);align-items:stretch}
@media (min-width:545px){body .scn-lp .scn-grid-4,body .scn-lp .scn-grid-3{gap:var(--scn-space-5)}}

/* ============================== 3. KNOPPEN (§3) ============================== */
body .scn-lp a.scn-btn,body .scn-lp .scn-btn-primary,body .scn-lp .scn-btn-ink,body .site-footer .scn-footer a.scn-footer-btn,
body .scn-contact2 .forminator-ui .forminator-button-submit,body .scn-fb .forminator-ui .forminator-button-submit,
body .scn-contact2 .scn-c2-add.is-main,body .scn-contact2 .scn-c2-add,body .scn-sticky-cta a.scn-btn,
body .scn-search-form .scn-search-submit,body .scn-btn-cta,body .forminator-ui .forminator-button-submit{
  display:inline-flex!important;align-items:center;justify-content:center;gap:.5rem;box-sizing:border-box;
  min-height:3rem!important;height:auto!important;padding:.75rem 1.5rem!important;
  border:1px solid var(--scn-cta)!important;border-radius:999px!important;
  background:var(--scn-cta)!important;background-image:none!important;color:var(--scn-cta-text)!important;
  font-family:var(--scn-sans)!important;font-size:var(--scn-fs-button)!important;font-weight:500!important;line-height:1.25!important;
  letter-spacing:0!important;text-decoration:none!important;text-transform:none!important;box-shadow:none!important;
  cursor:pointer;transform:none;transition:background-color .2s ease,border-color .2s ease,color .2s ease!important}
body .scn-lp a.scn-btn:hover,body .scn-lp .scn-btn-primary:hover,body .scn-lp .scn-btn-ink:hover,body .site-footer .scn-footer a.scn-footer-btn:hover,
body .scn-contact2 .forminator-ui .forminator-button-submit:hover,body .scn-fb .forminator-ui .forminator-button-submit:hover,
body .scn-contact2 .forminator-ui .forminator-button-submit:focus,body .scn-fb .forminator-ui .forminator-button-submit:focus,
body .scn-contact2 .scn-c2-add.is-main:hover,body .scn-sticky-cta a.scn-btn:hover,body .scn-search-form .scn-search-submit:hover,
body .scn-btn-cta:hover,body .forminator-ui .forminator-button-submit:hover,body .site-footer .scn-footer a.scn-footer-btn:focus-visible{
  background:var(--scn-cta-hover)!important;border-color:var(--scn-cta-hover)!important;color:var(--scn-cta-text)!important;transform:none}
body .scn-lp a.scn-btn:active,body .scn-contact2 .forminator-ui .forminator-button-submit:active,body .scn-fb .forminator-ui .forminator-button-submit:active,
body .scn-contact2 .scn-c2-add.is-main:active,body .site-footer .scn-footer a.scn-footer-btn:active{background:var(--scn-cta-hover)!important;transform:translateY(1px)}
body .scn-contact2 .forminator-ui .forminator-button-submit[disabled],body .scn-fb .forminator-ui .forminator-button-submit[disabled],
body .scn-lp .scn-btn[aria-disabled="true"],body .scn-contact2 .scn-c2-add:disabled{
  background:#e4dfd6!important;border-color:#e4dfd6!important;color:var(--scn-muted)!important;cursor:not-allowed;transform:none;opacity:1!important}
body .scn-contact2 .forminator-ui .forminator-button-submit.forminator-button-onload{opacity:.85!important;cursor:wait}
/* Op donkere vlakken: rand zodat de knop zichtbaar blijft (§3.1) */
body .scn-lp :is(.scn-hero,.scn-section.quiet,.scn-parallax-section,.scn-quiet) a.scn-btn:not(.scn-btn-ghost){border-color:rgba(255,252,248,.55)!important}
/* Secundair/outline (§3.2, INC-16): transparant, tekst en rand #2a2825, hover #efe7da + rand #1c1b19 */
body .entry-content .scn-lp a.scn-btn.scn-btn-ghost,body .scn-contact2 .scn-c2-add:not(.is-main){
  background:transparent!important;color:var(--scn-ink)!important;border-color:var(--scn-ink)!important}
body .entry-content .scn-lp a.scn-btn.scn-btn-ghost:hover,body .scn-contact2 .scn-c2-add:not(.is-main):hover{
  background:var(--scn-bg-warm)!important;color:var(--scn-ink)!important;border-color:var(--scn-ink-dark)!important}
body .entry-content .scn-lp a.scn-btn.scn-btn-ghost:active,body .scn-contact2 .scn-c2-add:not(.is-main):active{background:var(--scn-bg-warm)!important;transform:translateY(1px)}
body .entry-content .scn-lp :is(.scn-hero,.scn-section.quiet,.scn-parallax-section,.scn-quiet) a.scn-btn.scn-btn-ghost{
  color:#fffcf8!important;border-color:rgba(255,252,248,.7)!important;background:transparent!important}
body .entry-content .scn-lp :is(.scn-hero,.scn-section.quiet,.scn-parallax-section,.scn-quiet) a.scn-btn.scn-btn-ghost:hover{
  background:rgba(255,252,248,.12)!important;border-color:#fffcf8!important;color:#fffcf8!important}
/* Contact: actieve tab = CTA-kleur; inactieve tab rand #8f8578 (UI >= 3:1) */
body .scn-contact2 .scn-c2-tab{border:1px solid var(--scn-field-border);min-height:3rem}
body .scn-contact2 .scn-c2-tab:hover{border-color:var(--scn-ink)}
body .scn-contact2 .scn-c2-tab[aria-selected="true"]{background:var(--scn-cta);border-color:var(--scn-cta);color:var(--scn-cta-text)}
body .scn-contact2 .scn-c2-tab[aria-selected="true"]:hover{background:var(--scn-cta-hover);border-color:var(--scn-cta-hover)}
/* Kleine hulpknoppen (Verwijderen, bestand kiezen): geen #8b7355-hover meer */
body .scn-contact2 .scn-c2-del{min-height:2.75rem;padding:.5rem 1rem;border-color:var(--scn-field-border);color:var(--scn-accent-text)}
body .scn-contact2 .scn-c2-del:hover{border-color:var(--scn-ink);color:var(--scn-ink);background:var(--scn-bg-warm)}
body .scn-contact2 .forminator-ui input[type=file]::file-selector-button:hover,body .scn-fb .forminator-ui input[type=file]::file-selector-button:hover{background:var(--scn-cta-hover);color:var(--scn-cta-text)}
body .scn-contact2 .forminator-ui .forminator-button-upload:hover,body .scn-contact2 .forminator-ui .forminator-button-upload:focus,
body .scn-fb .forminator-ui .forminator-button-upload:hover,body .scn-fb .forminator-ui .forminator-button-upload:focus{background:var(--scn-cta-hover)!important;color:var(--scn-cta-text)!important}
/* Formulieren mobiel: verzendknop en hoofdknop volle breedte (§3.2) */
@media (max-width:544px){
  body .scn-contact2 .forminator-ui .forminator-button-submit,body .scn-fb .forminator-ui .forminator-button-submit,
  body .scn-contact2 .scn-c2-add.is-main{width:100%!important}
}
/* Hamburger (§3.2, INC-20): #fffcf8 op #2a2825, 48x48, radius 10px */
body [data-section="section-header-mobile-trigger"] .ast-button-wrap .menu-toggle.ast-mobile-menu-trigger-fill,
body [data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-fill{
  background:var(--scn-ink);color:#fffcf8;border:0;border-radius:10px;width:3rem;height:3rem;min-width:3rem;padding:0;
  display:inline-flex;align-items:center;justify-content:center}
body [data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-fill:hover{background:var(--scn-ink-dark)}
body [data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg{fill:#fffcf8;width:1.5rem;height:1.5rem}
/* Scroll naar boven (QA-20/21): zelfde focus, niet onder de sticky balk */
#ast-scroll-top{border-radius:10px}

/* ============================== 4. FOCUS (§4) ============================== */
body :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible,
body .site .skip-link:focus-visible,body #ast-scroll-top:focus-visible{
  outline:2px solid var(--scn-focus)!important;outline-offset:3px!important;box-shadow:none}
body :is(.scn-hero,.scn-section.quiet,.scn-parallax-section,.scn-quiet,.scn-on-dark){--scn-focus:#fffcf8}
body .scn-lp a.scn-btn:focus-visible,body .forminator-ui .forminator-button:focus-visible,body .scn-contact2 .scn-c2-add:focus-visible,
body .scn-contact2 .scn-c2-tab:focus-visible,body .site-footer .scn-footer a.scn-footer-btn:focus-visible{border-radius:999px!important}
body .site-footer .scn-footer a:focus-visible{outline:2px solid var(--scn-focus)!important;outline-offset:3px!important;border-radius:3px}
body .site-footer .scn-footer a.scn-footer-btn:focus-visible{box-shadow:none!important}
body .scn-faq-list summary:focus-visible{outline:2px solid var(--scn-focus)!important;outline-offset:3px!important}
body .scn-topbar a.scn-topbar__ig:focus-visible{outline:2px solid var(--scn-focus)!important;outline-offset:-2px!important}
/* Velden: rand wordt #6f5a40, geen 25%-ring meer; outline §4 erover */
body .scn-contact2 input:focus,body .scn-contact2 select:focus,body .scn-contact2 textarea:focus,
body .scn-contact2 .forminator-ui .forminator-input:focus,body .scn-contact2 .forminator-ui .forminator-textarea:focus,body .scn-contact2 .forminator-ui select:focus,
body .scn-fb .forminator-ui .forminator-input:focus,body .scn-fb .forminator-ui .forminator-textarea:focus,body .scn-fb .forminator-ui select:focus,
body .forminator-ui .forminator-input:focus,body .forminator-ui .forminator-textarea:focus,body .scn-search-form .scn-search-field:focus,
body.search .search-form .search-field:focus,body.error404 .search-form .search-field:focus{
  border-color:var(--scn-accent-text)!important;box-shadow:none!important;outline:2px solid var(--scn-focus)!important;outline-offset:3px!important}
/* Fout + focus: rand blijft rood */
body .forminator-ui .forminator-has_error .forminator-input:focus,body .forminator-ui .forminator-has_error .forminator-textarea:focus,
body .scn-contact2 [aria-invalid="true"]:focus,body .scn-fb [aria-invalid="true"]:focus{border-color:var(--scn-error)!important}
/* Verborgen radio/checkbox: ring op de pil via :has() */
body .scn-contact2 .forminator-ui .forminator-radio:has(input:focus-visible),body .scn-contact2 .forminator-ui .forminator-checkbox:has(input:focus-visible),
body .scn-fb .forminator-ui .forminator-radio:has(input:focus-visible),body .scn-fb .forminator-ui .forminator-checkbox:has(input:focus-visible),
body .forminator-ui .forminator-radio:has(input:focus-visible),body .forminator-ui .forminator-checkbox:has(input:focus-visible),
body label:has(> input[type="radio"]:focus-visible),body label:has(> input[type="checkbox"]:focus-visible){
  outline:2px solid var(--scn-focus)!important;outline-offset:3px!important}
body .scn-contact2 .forminator-ui .forminator-radio input:focus-visible + .forminator-radio-bullet,
body .scn-contact2 .forminator-ui .forminator-checkbox input:focus-visible + .forminator-checkbox-box,
body .scn-fb .forminator-ui .forminator-radio input:focus-visible + .forminator-radio-bullet,
body .scn-fb .forminator-ui .forminator-checkbox input:focus-visible + .forminator-checkbox-box{outline:none!important}
/* Focus nooit onder de sticky balk (§4) */
html:has(.scn-sticky-cta.is-on){scroll-padding-bottom:5rem}

/* ============================== 5. FORMULIERVELDEN (§5) ============================== */
body .scn-contact2 input[type=text],body .scn-contact2 input[type=number],body .scn-contact2 input[type=email],body .scn-contact2 input[type=tel],
body .scn-contact2 select,body .scn-contact2 textarea,
body .scn-contact2 .forminator-ui .forminator-input,body .scn-contact2 .forminator-ui .forminator-textarea,
body .scn-contact2 .forminator-ui select.forminator-select--field,body .scn-contact2 .forminator-ui select.forminator-select,
body .scn-fb .forminator-ui .forminator-input,body .scn-fb .forminator-ui .forminator-textarea,
body .scn-fb .forminator-ui select.forminator-select--field,body .scn-fb .forminator-ui select.forminator-select{
  background-color:var(--scn-field-bg)!important;border:1px solid var(--scn-field-border)!important;border-radius:10px!important;
  color:var(--scn-ink)!important;min-height:3rem!important;padding:.75rem .875rem!important;
  font-family:var(--scn-sans)!important;font-size:1rem!important;line-height:1.4!important;box-shadow:none!important}
body .scn-contact2 .scn-c2-sizes input{padding:.75rem .25rem!important}
body .scn-contact2 input::placeholder,body .scn-contact2 textarea::placeholder,body .scn-fb input::placeholder,body .scn-fb textarea::placeholder,
body .scn-contact2 .forminator-ui .forminator-input::placeholder,body .scn-contact2 .forminator-ui .forminator-textarea::placeholder,
body .scn-fb .forminator-ui .forminator-input::placeholder,body .scn-fb .forminator-ui .forminator-textarea::placeholder,
body .search-form .search-field::placeholder,body .scn-search-form .scn-search-field::placeholder{color:var(--scn-placeholder)!important;opacity:1!important}
body .scn-contact2 input:hover,body .scn-contact2 select:hover,body .scn-contact2 textarea:hover,
body .scn-contact2 .forminator-ui .forminator-input:hover,body .scn-contact2 .forminator-ui .forminator-textarea:hover,
body .scn-fb .forminator-ui .forminator-input:hover,body .scn-fb .forminator-ui .forminator-textarea:hover{border-color:var(--scn-muted)!important}
body .scn-contact2 .forminator-ui .forminator-textarea,body .scn-fb .forminator-ui .forminator-textarea,body .scn-contact2 textarea{min-height:8rem!important;resize:vertical}
/* select: eigen chevron #2a2825 op 1rem van rechts */
body .scn-contact2 select,body .scn-contact2 .forminator-ui select.forminator-select--field,body .scn-fb .forminator-ui select.forminator-select--field{
  -webkit-appearance:none;appearance:none;padding-right:2.5rem!important;
  background:var(--scn-field-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%232a2825' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 1rem center/12px 8px!important}
/* fout (§5) */
body .scn-contact2 .forminator-ui .forminator-has_error .forminator-input,body .scn-contact2 .forminator-ui .forminator-has_error .forminator-textarea,
body .scn-fb .forminator-ui .forminator-has_error .forminator-input,body .scn-fb .forminator-ui .forminator-has_error .forminator-textarea,
body .scn-contact2 select[aria-invalid="true"]{border-color:var(--scn-error)!important;box-shadow:inset 0 0 0 1px var(--scn-error)!important}
body .scn-contact2 select[aria-invalid="true"]{background-color:var(--scn-field-bg)!important}
body .scn-contact2 .forminator-ui .forminator-error-message,body .scn-fb .forminator-ui .forminator-error-message,
body .scn-contact2 .scn-c2-fielderr{color:var(--scn-error-text)!important;font-size:var(--scn-fs-small)!important;font-weight:600!important;margin:.375rem 0 0!important}
/* disabled */
body .forminator-ui .forminator-input:disabled,body .scn-contact2 input:disabled,body .scn-contact2 select:disabled{background:var(--scn-bg-body)!important;border-color:#e4dfd6!important;color:var(--scn-placeholder)!important;cursor:not-allowed}
/* labels en hulptekst (§1.2/§5) */
body .scn-contact2 .forminator-ui .forminator-label,body .scn-fb .forminator-ui .forminator-label,
body .scn-contact2 label,body .scn-contact2 .scn-c2-legend{font-family:var(--scn-sans)!important;font-size:var(--scn-fs-small)!important;font-weight:600!important;line-height:1.4!important;color:var(--scn-ink)!important;margin:0 0 .25rem!important}
body .scn-contact2 .scn-c2-checks label,body .scn-contact2 .scn-c2-sizes label{margin:0!important}
body .scn-contact2 .scn-c2-sizes label{margin:0 0 .25rem!important;font-weight:600!important}
body .scn-contact2 .forminator-ui .forminator-description,body .scn-fb .forminator-ui .forminator-description,body .scn-contact2 .scn-c2-hint{
  font-size:var(--scn-fs-small)!important;line-height:1.5!important;color:var(--scn-help)!important;font-weight:400!important}
body .scn-contact2 .forminator-ui .forminator-description,body .scn-fb .forminator-ui .forminator-description{margin:0 0 .5rem!important}
body .scn-contact2 .forminator-ui .forminator-row,body .scn-fb .forminator-ui .forminator-row{margin-bottom:1.25rem!important}
body .scn-contact2 .forminator-ui .forminator-row.scn-batches-row{margin:0!important}
/* radio- en checkboxrijen/pillen (§5) */
body .scn-contact2 .forminator-ui .forminator-radio,body .scn-contact2 .forminator-ui .forminator-checkbox,
body .scn-fb .forminator-ui .forminator-radio,body .scn-fb .forminator-ui .forminator-checkbox{
  border:1px solid var(--scn-field-border)!important;border-radius:12px!important;background:var(--scn-field-bg)!important;min-height:2.75rem;padding:.625rem 1rem!important;align-items:center!important}
body .scn-contact2 .forminator-ui .forminator-radio:hover,body .scn-contact2 .forminator-ui .forminator-checkbox:hover,
body .scn-fb .forminator-ui .forminator-radio:hover,body .scn-fb .forminator-ui .forminator-checkbox:hover{border-color:var(--scn-muted)!important}
body .scn-contact2 .forminator-ui .forminator-radio:has(input:checked),body .scn-contact2 .forminator-ui .forminator-checkbox:has(input:checked),
body .scn-fb .forminator-ui .forminator-radio:has(input:checked),body .scn-fb .forminator-ui .forminator-checkbox:has(input:checked){
  background:var(--scn-bg-warm)!important;border-color:var(--scn-accent-text)!important;box-shadow:inset 0 0 0 1px var(--scn-accent-text)!important}
body .scn-contact2 .forminator-ui .forminator-radio .forminator-radio-bullet,body .scn-contact2 .forminator-ui .forminator-checkbox .forminator-checkbox-box,
body .scn-fb .forminator-ui .forminator-radio .forminator-radio-bullet,body .scn-fb .forminator-ui .forminator-checkbox .forminator-checkbox-box{border-color:var(--scn-field-border)!important;margin:0!important}
body .scn-contact2 .forminator-ui .forminator-radio-label,body .scn-contact2 .forminator-ui .forminator-checkbox-label,
body .scn-fb .forminator-ui .forminator-radio-label,body .scn-fb .forminator-ui .forminator-checkbox-label{font-size:1rem!important}
body .scn-contact2 .scn-c2-checks label{min-height:2.75rem;padding:.625rem 1rem;border:1px solid var(--scn-field-border);border-radius:999px;font-size:1rem;font-weight:400!important;background:var(--scn-field-bg)}
body .scn-contact2 .scn-c2-checks label:has(input:checked){background:var(--scn-bg-warm);border-color:var(--scn-accent-text);box-shadow:inset 0 0 0 1px var(--scn-accent-text)}
body .scn-contact2 .scn-c2-checks input{accent-color:var(--scn-ink)}
/* uploadveld: rand #8f8578 (UI) */
body .scn-contact2 .forminator-ui .forminator-multi-upload,body .scn-fb .forminator-ui .forminator-multi-upload{border-color:var(--scn-field-border)!important}
body .scn-contact2 .forminator-ui .forminator-multi-upload:hover,body .scn-contact2 .forminator-ui .forminator-multi-upload:focus-within,
body .scn-fb .forminator-ui .forminator-multi-upload:hover,body .scn-fb .forminator-ui .forminator-multi-upload:focus-within{border-color:var(--scn-accent-text)!important;background:var(--scn-bg-warm)!important}
body .scn-contact2 .forminator-ui .forminator-multi-upload-message p,body .scn-fb .forminator-ui .forminator-multi-upload-message p{font-size:1rem!important}
body .scn-contact2 .forminator-ui .forminator-uploaded-file--size,body .scn-fb .forminator-ui .forminator-uploaded-file--size{font-size:var(--scn-fs-small)!important}
/* offertebouwer: groepstitels en totaal-badge (§5) */
body .scn-contact2 .scn-c2-head h3{font-size:var(--scn-fs-h3)}
body .scn-contact2 .scn-c2-prints > h3{font-size:var(--scn-fs-h4)!important}
body .scn-contact2 .scn-c2-total{display:inline-block;background:var(--scn-bg-warm);color:var(--scn-ink);font-size:var(--scn-fs-small);font-weight:600;border-radius:999px;padding:.25rem .75rem;margin:.75rem 0 0}
body .scn-contact2 .scn-c2-disclaimer{border-left:3px solid var(--scn-accent-soft);font-size:1rem!important;color:var(--scn-ink)!important}
body .scn-contact2 .scn-c2-batch,body .scn-contact2 .scn-c2-print{border-color:var(--scn-card-border)}
body .scn-contact2 .forminator-ui .forminator-response-message{font-size:1rem!important}
/* Astra-zoekveld (zoekpagina, 404) */
body.search .search-form .search-field,body.error404 .search-form .search-field{
  background:var(--scn-field-bg);border:1px solid var(--scn-field-border);border-radius:10px;min-height:3rem;padding:.75rem .875rem;font-size:1rem;color:var(--scn-ink)}

/* ============================== 6. KAARTEN (§6) ============================== */
body .scn-lp .scn-card,body .scn-lp .scn-step{border-color:var(--scn-card-border);border-radius:18px;padding:1.5rem;box-shadow:none}
body .scn-lp .scn-section.quiet .scn-card{border-radius:18px}
@media (max-width:544px){body .scn-lp .scn-card,body .scn-lp .scn-step{padding:1.25rem}}
body .scn-lp .scn-card:hover{box-shadow:none}

/* ============================== 7. JURIDISCHE PAGINA'S (§1.3, §8; pagina 3, 1014, 1015) ============================== */
/* Leeskolom 70ch gecentreerd met gutter (INC-11); content-box zodat de tekstkolom zelf 70ch is */
body .scn-legal{box-sizing:content-box;max-width:var(--scn-measure);margin-inline:auto;padding:var(--scn-section-y) var(--scn-gutter);
  font:400 1rem/1.65 var(--scn-sans);color:var(--scn-ink)}
body .scn-legal h1{font:600 var(--scn-fs-h1)/1.15 var(--scn-serif);color:var(--scn-ink);margin:0 0 .5rem}
body .scn-legal .scn-updated,body .scn-legal > p:first-of-type:not(.scn-kicker),body .scn-legal > h1 + p{font-size:var(--scn-fs-small);color:var(--scn-muted);margin:0 0 2rem}
/* Kicker juridische pagina's (copy fase 4, via scn-frontend.php): zelfde maat en afstand tot de h1 als op de andere pagina's */
body .scn-legal > p.scn-legal-kicker{font-size:var(--scn-fs-eyebrow);line-height:1.4;margin:0 0 .5rem}
body .scn-legal h2{font:600 var(--scn-fs-h2)/1.2 var(--scn-serif);color:var(--scn-ink);margin:2.5rem 0 .75rem}
body .scn-legal h3{font:600 1.25rem/1.3 var(--scn-serif);color:var(--scn-ink);margin:1.75rem 0 .5rem}
body .scn-legal h2 + h3{margin-top:1rem}
body .scn-legal p{margin:0 0 1rem}
body .scn-legal ul,body .scn-legal ol{margin:0 0 1.25rem;padding-left:1.25rem}
body .scn-legal li{margin:0 0 .375rem;padding-left:.25rem}
body .scn-legal li::marker{color:var(--scn-accent-text)}
body .scn-legal ol li::marker{font-weight:600}
body .scn-legal strong{font-weight:600}
body .scn-legal a{color:var(--scn-accent-text);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em;overflow-wrap:anywhere}
body .scn-legal a:hover{color:var(--scn-ink);text-decoration-thickness:2px}
/* Tabellen (§8, INC-12; UI-review 1). scn-frontend.js zet elke tabel in div.scn-table-wrap (+ visueel verborgen caption);
   de HTML in de database blijft gelijk. De wrapper scrollt horizontaal, de tabel blijft display:table. */
body .scn-legal .scn-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;margin:0 0 1.5rem;max-width:100%}
body .scn-legal .scn-table-wrap:focus-visible{outline:2px solid var(--scn-focus);outline-offset:3px}
body .scn-legal .scn-legal-table{display:table;width:100%;max-width:none;border-collapse:collapse;margin:0 0 1.5rem;
  font:400 .9375rem/1.5 var(--scn-sans);color:var(--scn-ink);border:0}
body .scn-legal .scn-table-wrap > .scn-legal-table{margin:0}
body .scn-legal .scn-legal-table th,body .scn-legal .scn-legal-table td{padding:.75rem 1rem;border:0;border-bottom:1px solid var(--scn-card-border);text-align:left;vertical-align:top}
body .scn-legal .scn-legal-table th{background:var(--scn-bg-warm);color:var(--scn-ink);font-weight:600;vertical-align:bottom}
body .scn-legal .scn-legal-table tbody tr:nth-child(even){background:var(--scn-card)}
body .scn-legal .scn-legal-table td:first-child{overflow-wrap:anywhere}
.scn-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
/* 4+ kolommen (cookietabel): min-breedte 32rem; vanaf 545px breekt de wrapper uit tot de wrap (besluit 8, UI-review 1c);
   op mobiel scrollt de wrapper en steekt kolom 3 zichtbaar uit (cellen min 7rem, UI-review 1b) */
body .scn-legal .scn-legal-table:has(tr > :nth-child(4)){min-width:32rem}
body .scn-legal .scn-legal-table:has(tr > :nth-child(4)) td:first-child{overflow-wrap:normal;word-break:normal}
@media (min-width:545px){
  body .scn-legal .scn-table-wrap--wide{
    width:min(calc(var(--scn-container) - 2 * var(--scn-gutter)),calc(100vw - 2 * var(--scn-gutter)));max-width:none;
    margin-left:calc((100% - min(calc(var(--scn-container) - 2 * var(--scn-gutter)),calc(100vw - 2 * var(--scn-gutter)))) / 2)}
}
@media (max-width:544px){
  body .scn-legal .scn-legal-table:has(tr > :nth-child(4)) :is(th,td){min-width:7rem}
}

/* ============================== 8. ZOEKPAGINA EN 404 (§10, QA-06, INC-18/19) ============================== */
/* Container zoals de rest; lijst en kop in een kolom van 760px (besluit 8) */
body.search .site-content > .ast-container,body.error404 .site-content > .ast-container{
  display:block;width:100%;max-width:var(--scn-container);margin-inline:auto;padding:var(--scn-section-y) var(--scn-gutter);box-sizing:border-box}
body.search .site .site-content #primary,body.error404 .site .site-content #primary{width:100%;max-width:none;margin:0;padding:0;float:none}
body.search .site .site-content #primary{max-width:var(--scn-list);margin-inline:auto}
body.search{background-color:var(--scn-cream)}
body.search .site-content .ast-archive-description{background:transparent!important;padding:0!important;margin:0 0 var(--scn-space-6)!important;border:0!important;text-align:left;max-width:none}
body.search .ast-archive-description .page-title{margin:0 0 1.5rem;color:var(--scn-ink)}
body.search .ast-archive-description .page-title span{font:inherit;color:inherit}
body.search .site-content .ast-archive-description p.scn-kicker{margin:0 0 .5rem!important;font-family:var(--scn-sans)!important;font-size:var(--scn-fs-eyebrow)!important;font-weight:600!important;line-height:1.4!important;letter-spacing:.12em;text-transform:uppercase;color:var(--scn-accent-text)!important}
body.search .site-main,body.search .ast-row{margin:0;padding:0;width:100%}
body.search .ast-row{display:flex;flex-direction:column;gap:var(--scn-space-4)}
body.search .ast-row::before,body.search .ast-row::after{display:none}
/* Resultaatkaart (§6 + §10) */
body.search .ast-row > article.ast-article-post{position:relative;width:100%;max-width:100%;margin:0;padding:1.5rem;float:none;
  background:var(--scn-card);border:1px solid var(--scn-card-border);border-radius:18px;box-shadow:none;transition:border-color .2s ease}
body.search .ast-row > article.ast-article-post:hover{border-color:var(--scn-accent)}
body.search .ast-row > article.ast-article-post:has(a:focus-visible){outline:2px solid var(--scn-focus);outline-offset:3px}
body.search article.ast-article-post .ast-article-inner,body.search article.ast-article-post .post-content{padding:0;margin:0;background:transparent;width:100%;border:0!important}
body.search article.ast-article-post .ast-blog-featured-section,body.search article.ast-article-post .entry-meta,
body.search article.ast-article-post .ast-blog-meta-container,body.search article.ast-article-post .read-more,
body.search article.ast-article-post .entry-content:empty{display:none!important}
body.search .page .entry-title,body.search article.ast-article-post .entry-title{display:block!important;margin:0 0 .5rem;padding:0;
  font:600 var(--scn-fs-h3)/1.3 var(--scn-serif);color:var(--scn-ink)}
body.search article.ast-article-post .entry-title a{color:var(--scn-ink);text-decoration:none}
body.search article.ast-article-post .entry-title a::after{content:"";position:absolute;inset:0;border-radius:inherit}
body.search article.ast-article-post:hover .entry-title a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}
body.search article.ast-article-post .entry-title a:focus-visible{outline:none!important}
body.search article.ast-article-post .ast-excerpt-container{margin:0}
body.search article.ast-article-post .ast-excerpt-container p{margin:0;font-size:1rem;line-height:1.65;color:var(--scn-muted);
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
body.search .ast-pagination{margin-top:var(--scn-space-6)}
/* Zoekformulier (kop zoekpagina, 0 resultaten, 404) */
.scn-search-form{display:flex;flex-wrap:nowrap;gap:.5rem;align-items:stretch;width:100%;max-width:36rem;margin:0}
.scn-search-form .scn-search-field{flex:1 1 auto;min-width:0;min-height:3rem;margin:0;padding:.75rem .875rem;font:400 1rem/1.4 var(--scn-sans);
  color:var(--scn-ink);background:var(--scn-field-bg);border:1px solid var(--scn-field-border);border-radius:10px;box-shadow:none}
.scn-search-form .scn-search-field:hover{border-color:var(--scn-muted)}
.scn-search-form .scn-search-field::-webkit-search-cancel-button{cursor:pointer}
body .scn-search-form .scn-search-submit{flex:0 0 auto}
@media (max-width:380px){.scn-search-form{flex-wrap:wrap}.scn-search-form .scn-search-field,body .scn-search-form .scn-search-submit{flex:1 1 100%;width:100%!important}}
/* 0 resultaten: één kaart (§10) */
.scn-search-empty,body.search .scn-search-empty{text-align:left;background:var(--scn-card);border:1px solid var(--scn-card-border);border-radius:18px;padding:1.5rem}
@media (max-width:544px){.scn-search-empty,body.search .ast-row > article.ast-article-post{padding:1.25rem}}
.scn-search-empty .scn-search-empty__msg{font-family:var(--scn-serif);font-size:var(--scn-fs-h3);font-weight:600;line-height:1.3;color:var(--scn-ink);margin:0 0 .75rem}
.scn-search-empty .scn-search-empty__links{margin:0 0 1.25rem;color:var(--scn-muted)}
.scn-search-empty .scn-search-empty__links a{color:var(--scn-accent-text);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}
.scn-search-empty .scn-search-empty__links a:hover{color:var(--scn-ink);text-decoration-thickness:2px}
.scn-search-empty .scn-search-empty__cta{margin:0}
/* 404: kop gelijk aan de andere tekstpagina's (kicker + Cormorant h1 + lead in de gecentreerde leeskolom, zoals juridisch) */
body.error404 .scn-404{text-align:left;max-width:var(--scn-measure);margin-inline:auto}
/* UI-review 7: geen extra ruimte boven de 404-kop, h1 op dezelfde hoogte als op de andere pagina's */
body.error404 section.error-404,body.error404 .error-404,
body.error404 .ast-404-layout-1{padding-top:0!important;margin-top:0!important} /* Astra 4.14 zet .ast-404-layout-1{margin:4em auto}; er is geen section.error-404 */
body.error404 .scn-404 .page-title{margin:0 0 1rem;color:var(--scn-ink)}
body.error404 .scn-404 .scn-lead{font-size:var(--scn-fs-lead);font-weight:400!important;line-height:1.6;color:var(--scn-muted);margin:0 0 1.5rem}

/* ============================== 9. FOOTER (§9, besluiten 1, 2, 6; INC-21/22) ============================== */
/* Bron van de HTML: Astra Footer HTML 1 (footer-html-1) en Copyright (footer-copyright-editor). Breakpoints 544/921. */
body .site-footer .scn-footer{font-size:1rem;line-height:1.65;color:var(--scn-muted)}
body .site-footer .scn-footer-inner{display:grid;grid-template-columns:1fr;gap:2rem;max-width:var(--scn-container-wide);margin:0 auto;
  padding:3rem var(--scn-gutter) 2rem}
@media (min-width:545px){body .site-footer .scn-footer-inner{grid-template-columns:1fr 1fr;gap:2.5rem;padding:3.5rem var(--scn-gutter) 2.5rem}
  body .site-footer .scn-footer-about{grid-column:1 / -1}}
@media (min-width:922px){body .site-footer .scn-footer-inner{grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2.5rem 3rem;padding:4rem var(--scn-gutter) 3rem}
  body .site-footer .scn-footer-about{grid-column:auto}}
body .site-footer .scn-footer-kicker,body .site-footer .scn-footer-label{display:flex;align-items:center;gap:.6rem;font-family:var(--scn-sans);font-size:var(--scn-fs-eyebrow);font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;line-height:1.4;color:var(--scn-accent-text);margin:0 0 .5rem}
body .site-footer .scn-footer-label{display:block;margin:0 0 .25rem}
body .site-footer .scn-footer .scn-footer-title{font:600 1.25rem/1.25 var(--scn-serif);color:var(--scn-ink);margin:0 0 .75rem}
body .site-footer .scn-footer .scn-footer-brand{font-size:1.75rem;line-height:1.2;margin:0 0 .75rem}
body .site-footer .scn-footer .scn-footer-text{font-size:1rem;line-height:1.65;font-weight:400;color:var(--scn-muted);max-width:36ch;margin:0 0 1rem}
body .site-footer .scn-footer .scn-footer-list li{margin:0}
body .site-footer .scn-footer a.scn-footer-link{display:inline-flex;align-items:center;min-height:2rem;font-size:1rem;font-weight:400;
  color:var(--scn-ink)!important;background:none;text-decoration:none}
body .site-footer .scn-footer a.scn-footer-link:hover{color:var(--scn-accent-text)!important;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}
body .site-footer .scn-footer a.scn-footer-btn{margin-top:.5rem}
@media (max-width:921px){body .site-footer .scn-footer a.scn-footer-link{min-height:2.75rem}}
@media (max-width:544px){body .site-footer .scn-footer a.scn-footer-btn{width:100%!important;max-width:22rem}
  body .site-footer .scn-footer a.scn-footer-link{width:100%}}
/* Onderbalk: regel 1 bedrijfsgegevens, regel 2 juridische links klein en onderstreept */
body .site-footer .site-below-footer-wrap[data-section] .ast-builder-grid-row{max-width:var(--scn-container-wide);margin-inline:auto;padding:0}
body .site-footer .ast-footer-copyright,body .site-footer .ast-footer-copyright p{font-family:var(--scn-sans);font-size:var(--scn-fs-small);line-height:1.6;color:var(--scn-muted);text-align:center}
body .site-footer .ast-builder-layout-element.ast-footer-copyright{width:100%;justify-content:center}
body .site-footer .ast-footer-copyright:not(.ast-builder-layout-element){display:flex;flex-direction:column;align-items:center;gap:.25rem;width:100%;padding:1.25rem var(--scn-gutter)}
body .site-footer .ast-footer-copyright p{margin:0}
body .site-footer .ast-footer-copyright a{color:var(--scn-muted);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}
body .site-footer .ast-footer-copyright a:hover{color:var(--scn-ink)}
body .site-footer .ast-footer-copyright .scn-copy-sep{padding:0 .35rem}
/* mobiel: links als nette rij met gap, geen losse scheidingspunt aan een regeleinde */
@media (max-width:544px){body .site-footer .ast-footer-copyright .scn-copy-links{display:flex;flex-wrap:wrap;justify-content:center;column-gap:1.25rem}
  body .site-footer .ast-footer-copyright .scn-copy-sep{display:none}}
@media (max-width:921px){body .site-footer .ast-footer-copyright .scn-copy-links a{display:inline-flex;align-items:center;min-height:2.75rem}}
/* Sticky balk (Home) mag de footer niet afdekken (§7.2, INC-22) */
body:has(.scn-sticky-cta) .site-footer{padding-bottom:var(--scn-sticky-h);background:var(--scn-bg)}
body:has(.scn-sticky-cta) #ast-scroll-top{bottom:calc(var(--scn-sticky-h) + 1rem)}
body .scn-lp .scn-sticky-cta,body .scn-sticky-cta{padding:.75rem 0} /* UI-ronde 2 punt 5: padding-inline 0 */

/* ============================== 10. BEWEGING ============================== */
@media (prefers-reduced-motion:reduce){
  body .scn-lp a.scn-btn,body .forminator-ui .forminator-button-submit,body .site-footer .scn-footer a,body.search article.ast-article-post{transition:none!important;transform:none!important}
}

/* ============================== 10. HERO-VIDEO: PAUZE/AFSPEELKNOP (deel C, WCAG 2.2.2) ============================== */
/* Knop wordt door scn-frontend.js in .scn-hero gezet (alleen als de video er is: niet bij reduced-motion en niet op <=768px). */
body .scn-hero{position:relative}
body .scn-hero .scn-hero-toggle{position:absolute;z-index:3;right:var(--scn-gutter);bottom:1.25rem;display:inline-flex;align-items:center;justify-content:center;
  width:3rem;height:3rem;min-height:0;margin:0;padding:0;border-radius:50%;cursor:pointer;
  background:rgba(42,40,37,.72);color:#fffcf8;border:1px solid rgba(255,252,248,.55);box-shadow:none;transition:background-color .2s ease,border-color .2s ease}
body .scn-hero .scn-hero-toggle svg{fill:currentColor;display:block}
body .scn-hero .scn-hero-toggle:hover{background:var(--scn-cta-hover);border-color:#fffcf8;color:#fffcf8}
body .scn-hero .scn-hero-toggle:focus{outline:none}
/* UI-ronde 2 punt 8: dubbele ring (licht op donker), werkt op elke videoframe */
body .scn-hero .scn-hero-toggle:focus-visible{outline:2px solid #fffcf8!important;outline-offset:2px!important;box-shadow:0 0 0 6px #1c1b19!important}
/* UI-ronde 2 punt 4: rechtsboven in de hero (binnen de vouw op 1440x900 en 1024x768); de knop bestaat alleen vanaf 769px */
@media (min-width:769px){body .scn-hero .scn-hero-toggle{top:1.25rem;bottom:auto}}
@media (min-width:922px){body .scn-hero .scn-hero-toggle{right:max(var(--scn-gutter),calc((100% - var(--scn-container)) / 2 + var(--scn-gutter)));top:1.5rem;bottom:auto}}

/* ============================== 11. UI-REVIEW RONDE 1 (deel C) ============================== */
/* 4: /contact/ link naar de FAQ onder de bouwer gecentreerd in de kolom; inline margin van pagina 210 overschrijven (pagina blijft gelijk) */
body .scn-contact2 .scn-c2-faq{margin:2rem auto 0!important}
/* 5a: gouden bovenrand footer over de volle breedte; inhoud op 390px op x = gutter */
body .site-footer .site-primary-footer-inner-wrap{padding-left:0!important;padding-right:0!important}
/* 5b: KvK- en btw-nummer niet afbreken (spans in footer-copyright-editor) */
body .site-footer .scn-copy-info .scn-nowrap{white-space:nowrap}
/* 6 + extra: 0-resultatenkaart, tekst onder de kop */
.scn-search-empty .scn-search-empty__text{margin:0 0 1rem;color:var(--scn-muted)}
.scn-search-empty .scn-search-empty__text a{color:var(--scn-accent-text);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}
.scn-search-empty .scn-search-empty__text a:hover{color:var(--scn-ink);text-decoration-thickness:2px}
/* B3-01: bij een geweigerd bestand geen verwarrende "0% van 99 bytes", alleen de foutmelding */
body .forminator-ui .forminator-uploaded-file.forminator-has_error .forminator-uploaded-file--size{display:none!important}

/* ============================== 12. UI-REVIEW RONDE 2 (01-10) ============================== */
/* 1: verborgen sticky balk is ook voor het toetsenbord en schermlezers weg; zichtbaarheid schakelt pas na de slide-out */
body .scn-sticky-cta:not(.is-on){visibility:hidden;transition:transform .3s ease,visibility 0s linear .3s}
body .scn-sticky-cta.is-on{visibility:visible;transition:transform .3s ease}
/* 2: links in lopende tekst overal gelijk (niet in donkere secties, daar blijft de bestaande lichte stijl) */
body :is(.scn-lp,.scn-contact2,.scn-fb) p a:not(.scn-btn):not(:is(.scn-hero,.scn-section.quiet,.scn-parallax-section,.scn-quiet,.scn-on-dark) a){
  color:var(--scn-accent-text)!important;text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:.18em!important;text-decoration-color:currentColor!important}
body :is(.scn-lp,.scn-contact2,.scn-fb) p a:not(.scn-btn):not(:is(.scn-hero,.scn-section.quiet,.scn-parallax-section,.scn-quiet,.scn-on-dark) a):hover{
  color:var(--scn-ink)!important;text-decoration-thickness:2px!important}
/* 3: menulinks bij toetsenbordfocus */
body .main-header-menu .menu-link:focus-visible{color:var(--scn-accent-text)!important;outline-offset:-3px!important}
/* 7: Forminator-verzendknop bij toetsenbordfocus */
body .forminator-ui .forminator-button-submit:focus-visible,body .scn-contact2 .forminator-ui .forminator-button-submit:focus-visible,
body .scn-fb .forminator-ui .forminator-button-submit:focus-visible{outline:2px solid var(--scn-ink)!important;outline-offset:3px!important;box-shadow:none!important}
/* 9: mobiel menu op kaartkleur i.p.v. #f9f9f9 */
body #ast-mobile-header .ast-mobile-header-content,body #ast-mobile-header .ast-mobile-header-content .main-header-menu,
body #ast-mobile-header .ast-builder-menu-mobile .main-navigation .main-header-menu,body #ast-mobile-header .ast-mobile-header-content .menu-item{background-color:var(--scn-card)!important}

/* ================================================================================================
   13. 1.3.1 QA FASE 5
   ================================================================================================ */
/* F5-06: bij prefers-reduced-motion schuift de sticky balk niet meer (direct aan/uit). Zonder die voorkeur ongewijzigd. */
@media (prefers-reduced-motion:reduce){
  body .scn-sticky-cta,body .scn-sticky-cta.is-on,body .scn-sticky-cta:not(.is-on){transition:none!important}
}

/* ============================== 11. BEDANKPAGINA'S (fase 6, 1.4.0) ==============================
   /offerte-verzonden/, /bericht-verzonden/, /melding-verzonden/: zelfde leeskolom als juridisch (.scn-legal),
   met .scn-thanks voor de bevestiging (lead i.p.v. de kleine grijze "Laatst bijgewerkt"-regel) en de links onderaan. */
body .scn-legal.scn-thanks > p.scn-kicker{margin:0 0 .5rem!important}
body .scn-legal.scn-thanks > h1 + p.scn-lead,body .scn-legal.scn-thanks > p.scn-lead{font-size:var(--scn-fs-lead);line-height:1.6;color:var(--scn-ink);margin:0 0 1rem}
body .scn-legal.scn-thanks > p.scn-thanks-mail,body .scn-legal.scn-thanks > p.scn-thanks-next{color:var(--scn-ink);margin:0 0 1rem}
body .scn-legal.scn-thanks .scn-thanks-hours{margin:0 0 .25rem}
body .scn-legal.scn-thanks .scn-thanks-links{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin:2.5rem 0 0}
body .scn-legal.scn-thanks .scn-thanks-links a.scn-btn-cta{color:var(--scn-cta-text)!important;text-decoration:none!important}

/* ============================== 12. UPLOADZONE PER BATCH (fase 6 B, 1.5.0) ==============================
   Zone in elke batchkaart van de offertebouwer (scn-frontend.js sectie 9). Zelfde uitstraling als het uploadveld (§ formulieren). */
body .scn-contact2 .scn-upl-src{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}
body .scn-contact2 .scn-upl-rules{font-size:var(--scn-fs-small);color:var(--scn-muted);margin:0 0 1rem}
body .scn-contact2 .scn-upl-zone{border-top:1px solid var(--scn-card-border);margin-top:1.1rem;padding-top:1rem}
body .scn-contact2 .scn-upl-zone[hidden]{display:none}
/* 1.5.2 UI-review fase 6 punt 6 + 1: zonelabel als h3, zelfde stijl als 'Bedrukkingen'; wint van .scn-contact2 h3 en p{color:var(--muted)!important} uit 210 */
body .scn-contact2 .scn-upl-label{font-family:var(--scn-serif);font-size:1.125rem;font-weight:600;line-height:1.3;color:var(--scn-ink)!important;margin:0 0 .25rem}
body .scn-contact2 .scn-upl-help{font-size:var(--scn-fs-small);color:var(--scn-muted);margin:0 0 .75rem}
body .scn-contact2 .scn-upl-drop{border:1.5px dashed var(--scn-field-border);border-radius:14px;background:var(--scn-field-bg);padding:1.2rem 1rem;text-align:center;color:var(--scn-muted)}
body .scn-contact2 .scn-upl-drop:hover,body .scn-contact2 .scn-upl-drop.is-over,body .scn-contact2 .scn-upl-drop:focus-within{border-color:var(--scn-accent-text);background:var(--scn-bg-warm)}
body .scn-contact2 .scn-upl-icon{display:block;width:1.5rem;height:1.5rem;margin:0 auto .25rem;color:var(--scn-accent-text)}
body .scn-contact2 .scn-upl-drop p{margin:.3rem 0 0;font-size:1rem}
body .scn-contact2 .scn-upl-pick{font:inherit;font-weight:600;color:var(--scn-accent-text);background:none;border:0;padding:.25rem 0;min-height:2.75rem;text-decoration:underline;text-underline-offset:.18em;cursor:pointer}
body .scn-contact2 .scn-upl-pick:hover{color:var(--scn-ink)}
body .scn-contact2 .scn-upl-pick:focus-visible{outline:2px solid var(--scn-focus);outline-offset:2px;border-radius:4px}
body .scn-contact2 .scn-upl-files{list-style:none;margin:.75rem 0 0;padding:0}
body .scn-contact2 .scn-upl-file{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .75rem;padding:.6rem .75rem;margin:0 0 .5rem;border:1px solid var(--scn-card-border);border-radius:10px;background:var(--scn-card)}
body .scn-contact2 .scn-upl-name{font-weight:600;color:var(--scn-ink);overflow-wrap:anywhere;flex:1 1 12rem}
body .scn-contact2 .scn-upl-meta{font-size:var(--scn-fs-small);color:var(--scn-muted)}
body .scn-contact2 .scn-upl-file.is-error{border-color:var(--scn-error)}
body .scn-contact2 .scn-upl-file.is-error .scn-upl-meta{color:var(--scn-error-text);font-weight:600;flex-basis:100%;order:3}
body .scn-contact2 .scn-upl-actions{display:flex;gap:.5rem;margin-left:auto}
body .scn-contact2 .scn-upl-live{font-size:var(--scn-fs-small);color:var(--scn-muted);margin:.5rem 0 0}
body .scn-contact2 .scn-upl-live:empty{margin:0}
body .scn-contact2 .scn-upl-zone.has-error .scn-upl-live{color:var(--scn-error-text)!important;font-weight:600;margin-top:.375rem}
/* bevestigingsdialoog batch verwijderen */
body .scn-dlg{max-width:min(28rem,calc(100vw - 2rem));border:1px solid var(--scn-card-border);border-radius:18px;padding:1.5rem;background:var(--scn-card);color:var(--scn-ink);font-family:var(--scn-sans)}
body .scn-dlg::backdrop{background:rgba(42,40,37,.45)}
body .scn-dlg h2{font:600 var(--scn-fs-lead)/1.3 var(--scn-sans);margin:0 0 .5rem;color:var(--scn-ink)}
body .scn-dlg p{margin:0 0 1.25rem;color:var(--scn-ink)}
body .scn-dlg .scn-dlg-actions{display:flex;flex-wrap:wrap;gap:.75rem}
body .scn-dlg .scn-dlg-no{display:inline-flex;align-items:center;min-height:3rem;padding:.75rem 1.5rem;border:1.5px solid var(--scn-ink);border-radius:999px;background:transparent;color:var(--scn-ink);font:500 var(--scn-fs-button)/1.25 var(--scn-sans);cursor:pointer}
body .scn-dlg .scn-dlg-no:hover{background:var(--scn-bg-warm)}
body .scn-dlg button:focus-visible{outline:2px solid var(--scn-focus);outline-offset:3px}
/* 1.5.2 UI-review fase 6 punt 4, 7, 8 */
body .scn-contact2 .scn-upl-drop p{max-width:none!important}
body .scn-contact2 .scn-upl-pick{padding-inline:.25rem}
body .scn-contact2 .scn-upl-pick{margin-inline-start:.375rem}
body .scn-legal.scn-thanks > h1{margin-bottom:1rem!important}
/* 1.5.4 ronde 6b (F6-01/L6-01): 'kies bestanden' is geen tabstop meer (tabindex -1); de focusring van het echte input type=file komt op het hele uploadveld, zoals bij de radio's */
body .forminator-ui .forminator-multi-upload:has(> input[type="file"]:focus-visible){outline:2px solid var(--scn-focus)!important;outline-offset:3px!important}
/* 1.5.4 footer-iconen (ronde 6b, scn-frontend.php sectie 18): mail = envelop + adres, Instagram = glyph met naam op de link.
   Klikvlak 44x44 (2.75rem) op alle breedtes; kleur = footerlinks (--scn-ink, hover --scn-accent-text); focusring = algemene footerfocus. */
body .site-footer .scn-footer a.scn-footer-mail{gap:.5rem;min-height:2.75rem}
body .site-footer .scn-footer a.scn-footer-mail .scn-footer-ico{flex:none;display:block;width:20px;height:20px}
body .site-footer .scn-footer a.scn-footer-ig{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;margin-inline-start:-.625rem;
  color:var(--scn-ink)!important;background:none;border-radius:999px;text-decoration:none}
body .site-footer .scn-footer a.scn-footer-ig .scn-footer-ico{display:block;width:24px;height:24px}
body .site-footer .scn-footer a.scn-footer-ig:hover{color:var(--scn-accent-text)!important;background:var(--scn-bg-warm)}
/* 1.5.4 bedankpagina's (ronde 6b): tweede link onderaan als secundaire knop (§3.2, zelfde waarden als .scn-btn-ghost) naast de primaire;
   op <= 544px onder elkaar, even breed (zoals de footerknop). */
body .scn-legal.scn-thanks .scn-thanks-links a.scn-btn-cta.scn-btn-ghost{background:transparent!important;color:var(--scn-ink)!important;border-color:var(--scn-ink)!important}
body .scn-legal.scn-thanks .scn-thanks-links a.scn-btn-cta.scn-btn-ghost:hover{background:var(--scn-bg-warm)!important;color:var(--scn-ink)!important;border-color:var(--scn-ink-dark)!important}
body .scn-legal.scn-thanks .scn-thanks-links a.scn-btn-cta.scn-btn-ghost:active{background:var(--scn-bg-warm)!important;transform:translateY(1px)}
@media (max-width:544px){body .scn-legal.scn-thanks .scn-thanks-links a.scn-btn-cta{width:100%;max-width:22rem}}

/* ================================================================================================================
   14. F7 (1.6.0, staging): cookiebanner mobiel, footerknop Cookie-instellingen, anker offerteformulier.
   Alleen presentatie; Complianz-instellingen en consent-logica zijn niet aangeraakt. Selectors via de eigen
   banner-class scn-banner (Complianz-instelling) en #cmplz-cookiebanner-container, zodat ze boven banner-1-optin.css winnen.
   ================================================================================================================ */
/* Banner op mobiel compact (390x844: 482px = 57% -> 249px = 29,5%): onderaan over de volle breedte, kleinere tekst,
   de drie knoppen naast elkaar (Accepteren en Weigeren blijven identiek, min. 44px hoog), geen lege kop/dividers. */
@media (max-width:600px){
body #cmplz-cookiebanner-container .cmplz-cookiebanner.scn-banner{padding:12px 16px 10px;row-gap:8px;gap:8px;bottom:0;left:0;right:0;width:100%;max-width:100%;border-radius:14px 14px 0 0;max-height:60vh;max-height:60dvh;overflow-y:auto}
body #cmplz-cookiebanner-container .cmplz-cookiebanner.scn-banner .cmplz-divider{display:none}
body #cmplz-cookiebanner-container .cmplz-cookiebanner.scn-banner .cmplz-title{font-size:1rem;line-height:1.3;margin:0}
body #cmplz-cookiebanner-container .cmplz-cookiebanner.scn-banner .cmplz-body,body #cmplz-cookiebanner-container .cmplz-cookiebanner.scn-banner .cmplz-message{font-size:.875rem;line-height:1.4}
body #cmplz-cookiebanner-container .cmplz-cookiebanner.scn-banner .cmplz-message p{margin:0 0 .25em}
body #cmplz-cookiebanner-container .cmplz-cookiebanner.scn-banner .cmplz-message p:last-child{margin-bottom:0}
body #cmplz-cookiebanner-container .cmplz-cookiebanner.scn-banner .cmplz-buttons{flex-direction:row;flex-wrap:nowrap;gap:8px}
body #cmplz-cookiebanner-container .cmplz-cookiebanner.scn-banner .cmplz-buttons .cmplz-btn{flex:1 1 0;min-width:0;width:auto;height:auto;min-height:44px;padding:6px 8px;font-size:.875rem;margin:0}
body #cmplz-cookiebanner-container .cmplz-cookiebanner.scn-banner .cmplz-links,body #cmplz-cookiebanner-container .cmplz-cookiebanner.scn-banner .cmplz-documents{font-size:.8125rem;line-height:1.3;margin:0}
}
/* Tot 425px verbergt Complianz de titel zelf al; de lege kop kost anders een rij plus gap */
@media (max-width:425px){body #cmplz-cookiebanner-container .cmplz-cookiebanner.scn-banner .cmplz-header{display:none}}
/* Footerknop "Cookie-instellingen" (scn-frontend.php sectie 20b): ziet eruit als de andere footerlinks */
body .site-footer .ast-footer-copyright .scn-copy-links button.scn-cookie-settings{all:unset;box-sizing:border-box;cursor:pointer;font:inherit;color:var(--scn-muted);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em;border-radius:2px}
body .site-footer .ast-footer-copyright .scn-copy-links button.scn-cookie-settings:hover{color:var(--scn-ink)}
body .site-footer .ast-footer-copyright .scn-copy-links button.scn-cookie-settings:focus-visible{outline:2px solid var(--scn-ink);outline-offset:3px}
@media (max-width:921px){body .site-footer .ast-footer-copyright .scn-copy-links button.scn-cookie-settings{display:inline-flex;align-items:center;min-height:2.75rem}}
/* Anker #scn-panel-offerte (knop-URL van de kerstpagina): de kop is niet sticky (gemeten 390 en 1440, position relative),
   dus alleen wat lucht boven het paneel; met de variabele aan te passen als er ooit een sticky kop komt. */
/* Rev d: links in de bannertekst (tekst van Backend) onderstrepen; zonder streep alleen kleur 2,24:1 t.o.v. de tekst (axe link-in-text-block). */
body #cmplz-cookiebanner-container .cmplz-message a{text-decoration:underline;text-underline-offset:.15em}
#scn-panel-offerte{scroll-margin-top:var(--scn-anchor-offset,1.5rem)}
/* Rev c: het offertepanel is statisch kort (titel, intro, lege #scn-builder; formulier staat elders en wordt door JS verplaatst).
   Bij binnenkomst via #scn-panel-offerte (kerstknoppen) vallen ankerscroll, bouwer en formulier in één frame: de footer stond in
   het vorige frame "in beeld" en schuift weg (CLS 0,41 op 1440 / 0,55 op 390). Zolang de bouwer leeg is één viewport reserveren;
   zonder anker valt de panelonderkant toch al onder de vouw. Zonder JS blijft de ruimte staan (formulier werkt dan sowieso niet). */
#scn-panel-offerte:has(> #scn-builder:empty){min-height:100vh}
