.elementor-kit-6{--e-global-color-primary:#1B4D3E;--e-global-color-secondary:#E0294F;--e-global-color-text:#122E26;--e-global-color-accent:#DCEDE3;--e-global-color-groendonker:#143B30;--e-global-color-framboosdonker:#C21F42;--e-global-color-zachtgroen:#EEF6F1;--e-global-color-gedempt:#4E6A60;--e-global-color-rand:#D9E3DE;--e-global-color-achtergrond:#FFFFFF;--e-global-color-wit:#FFFFFF;--e-global-color-roze:#F6708B;--e-global-color-citaatgedempt:#CFDCD5;--e-global-color-witgedempt:#FFFFFFB8;--e-global-color-succes:#1F7A4D;--e-global-color-succesbg:#E6F3EC;--e-global-color-fout:#B3261E;--e-global-typography-primary-font-family:"Quicksand";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Quicksand";--e-global-typography-secondary-font-weight:500;--e-global-typography-text-font-family:"Nunito";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:28px;--e-global-typography-accent-font-family:"Nunito";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-line-height:24px;--e-global-typography-kop1-font-family:"Quicksand";--e-global-typography-kop1-font-size:52px;--e-global-typography-kop1-font-weight:700;--e-global-typography-kop1-line-height:1.154em;--e-global-typography-kop2-font-family:"Quicksand";--e-global-typography-kop2-font-size:40px;--e-global-typography-kop2-font-weight:700;--e-global-typography-kop2-line-height:1.2em;--e-global-typography-kop3-font-family:"Quicksand";--e-global-typography-kop3-font-size:24px;--e-global-typography-kop3-font-weight:700;--e-global-typography-kop3-line-height:1.333em;--e-global-typography-kop4-font-family:"Quicksand";--e-global-typography-kop4-font-size:20px;--e-global-typography-kop4-font-weight:700;--e-global-typography-kop4-line-height:1.4em;--e-global-typography-kopklein-font-family:"Quicksand";--e-global-typography-kopklein-font-size:28px;--e-global-typography-kopklein-font-weight:700;--e-global-typography-kopklein-line-height:1.25em;--e-global-typography-kopgroot-font-family:"Quicksand";--e-global-typography-kopgroot-font-size:clamp(28px, 3.2vw, 40px);--e-global-typography-kopgroot-font-weight:700;--e-global-typography-kopgroot-line-height:1.2em;--e-global-typography-kopgroottekst-font-family:"Quicksand";--e-global-typography-kopgroottekst-font-size:clamp(28px, 3.2vw, 40px);--e-global-typography-kopgroottekst-font-weight:700;--e-global-typography-kopgroottekst-line-height:1.2em;--e-global-typography-kopstatement-font-family:"Quicksand";--e-global-typography-kopstatement-font-size:clamp(32px, 4vw, 48px);--e-global-typography-kopstatement-font-weight:700;--e-global-typography-kopstatement-line-height:1.15em;--e-global-typography-kopdienst-font-family:"Quicksand";--e-global-typography-kopdienst-font-size:clamp(28px, 3vw, 36px);--e-global-typography-kopdienst-font-weight:700;--e-global-typography-kopdienst-line-height:1.2em;--e-global-typography-kopxl-font-family:"Quicksand";--e-global-typography-kopxl-font-size:clamp(32px, 4.2vw, 60px);--e-global-typography-kopxl-font-weight:700;--e-global-typography-kopxl-line-height:1.1em;--e-global-typography-slogan-font-family:"Quicksand";--e-global-typography-slogan-font-size:clamp(34px, 5.5vw, 64px);--e-global-typography-slogan-font-weight:700;--e-global-typography-slogan-line-height:1.08em;--e-global-typography-sloganmenu-font-family:"Quicksand";--e-global-typography-sloganmenu-font-size:30px;--e-global-typography-sloganmenu-font-weight:700;--e-global-typography-sloganmenu-line-height:36px;--e-global-typography-getal-font-family:"Quicksand";--e-global-typography-getal-font-size:clamp(56px, 7vw, 96px);--e-global-typography-getal-font-weight:700;--e-global-typography-getal-line-height:1em;--e-global-typography-getalklein-font-family:"Quicksand";--e-global-typography-getalklein-font-size:clamp(28px, 3vw, 40px);--e-global-typography-getalklein-font-weight:700;--e-global-typography-getalklein-line-height:1em;--e-global-typography-citaat-font-family:"Quicksand";--e-global-typography-citaat-font-size:40px;--e-global-typography-citaat-font-weight:500;--e-global-typography-citaat-line-height:1.2em;--e-global-typography-citaatkaart-font-family:"Quicksand";--e-global-typography-citaatkaart-font-size:24px;--e-global-typography-citaatkaart-font-weight:500;--e-global-typography-citaatkaart-line-height:32px;--e-global-typography-lead-font-family:"Nunito";--e-global-typography-lead-font-size:20px;--e-global-typography-lead-font-weight:400;--e-global-typography-lead-line-height:32px;--e-global-typography-heroin-font-family:"Nunito";--e-global-typography-heroin-font-size:clamp(18px, 1.6vw, 20px);--e-global-typography-heroin-font-weight:400;--e-global-typography-heroin-line-height:1.6em;--e-global-typography-ui-font-family:"Nunito";--e-global-typography-ui-font-size:16px;--e-global-typography-ui-font-weight:400;--e-global-typography-ui-line-height:24px;--e-global-typography-uivet-font-family:"Nunito";--e-global-typography-uivet-font-size:16px;--e-global-typography-uivet-font-weight:600;--e-global-typography-uivet-line-height:24px;--e-global-typography-klein-font-family:"Nunito";--e-global-typography-klein-font-size:14px;--e-global-typography-klein-font-weight:400;--e-global-typography-klein-line-height:20px;--e-global-typography-kleinvet-font-family:"Nunito";--e-global-typography-kleinvet-font-size:14px;--e-global-typography-kleinvet-font-weight:600;--e-global-typography-kleinvet-line-height:20px;--e-global-typography-label-font-family:"Nunito";--e-global-typography-label-font-size:13px;--e-global-typography-label-font-weight:600;--e-global-typography-label-text-transform:uppercase;--e-global-typography-label-line-height:16px;--e-global-typography-label-letter-spacing:0.08em;--e-global-typography-kolomtitel-font-family:"Nunito";--e-global-typography-kolomtitel-font-size:13px;--e-global-typography-kolomtitel-font-weight:700;--e-global-typography-kolomtitel-text-transform:uppercase;--e-global-typography-kolomtitel-line-height:16px;--e-global-typography-kolomtitel-letter-spacing:0.08em;--e-global-typography-badge-font-family:"Nunito";--e-global-typography-badge-font-size:13px;--e-global-typography-badge-font-weight:700;--e-global-typography-badge-line-height:20px;--e-global-typography-menugroot-font-family:"Nunito";--e-global-typography-menugroot-font-size:18px;--e-global-typography-menugroot-font-weight:700;--e-global-typography-menugroot-line-height:24px;--e-global-typography-teken-font-family:"Quicksand";--e-global-typography-teken-font-size:72px;--e-global-typography-teken-font-weight:700;--e-global-typography-teken-line-height:40px;--e-global-typography-tekenkaart-font-family:"Quicksand";--e-global-typography-tekenkaart-font-size:72px;--e-global-typography-tekenkaart-font-weight:700;--e-global-typography-tekenkaart-line-height:56px;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:var( --e-global-color-primary );}.elementor-kit-6 a:hover{color:var( --e-global-color-groendonker );}.elementor-kit-6 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-kop1-font-family ), Sans-serif;font-size:var( --e-global-typography-kop1-font-size );font-weight:var( --e-global-typography-kop1-font-weight );line-height:var( --e-global-typography-kop1-line-height );}.elementor-kit-6 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-kop2-font-family ), Sans-serif;font-size:var( --e-global-typography-kop2-font-size );font-weight:var( --e-global-typography-kop2-font-weight );line-height:var( --e-global-typography-kop2-line-height );}.elementor-kit-6 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-kop3-font-family ), Sans-serif;font-size:var( --e-global-typography-kop3-font-size );font-weight:var( --e-global-typography-kop3-font-weight );line-height:var( --e-global-typography-kop3-line-height );}.elementor-kit-6 h4{color:var( --e-global-color-primary );font-family:var( --e-global-typography-kop4-font-family ), Sans-serif;font-size:var( --e-global-typography-kop4-font-size );font-weight:var( --e-global-typography-kop4-font-weight );line-height:var( --e-global-typography-kop4-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1152px;}.e-con{--container-max-width:1152px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-6{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-6 h1{font-size:var( --e-global-typography-kop1-font-size );line-height:var( --e-global-typography-kop1-line-height );}.elementor-kit-6 h2{font-size:var( --e-global-typography-kop2-font-size );line-height:var( --e-global-typography-kop2-line-height );}.elementor-kit-6 h3{font-size:var( --e-global-typography-kop3-font-size );line-height:var( --e-global-typography-kop3-line-height );}.elementor-kit-6 h4{font-size:var( --e-global-typography-kop4-font-size );line-height:var( --e-global-typography-kop4-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{--e-global-typography-kop1-font-size:36px;--e-global-typography-kop1-line-height:1.222em;--e-global-typography-kop2-font-size:30px;--e-global-typography-kop2-line-height:1.267em;--e-global-typography-kopklein-font-size:30px;--e-global-typography-kopklein-line-height:1.267em;--e-global-typography-kopgroot-font-size:30px;--e-global-typography-kopgroot-line-height:1.267em;--e-global-typography-kopstatement-font-size:30px;--e-global-typography-kopstatement-line-height:1.267em;--e-global-typography-kopxl-font-size:36px;--e-global-typography-kopxl-line-height:1.222em;--e-global-typography-citaat-font-size:24px;--e-global-typography-citaat-line-height:32px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-6 h1{font-size:var( --e-global-typography-kop1-font-size );line-height:var( --e-global-typography-kop1-line-height );}.elementor-kit-6 h2{font-size:var( --e-global-typography-kop2-font-size );line-height:var( --e-global-typography-kop2-line-height );}.elementor-kit-6 h3{font-size:var( --e-global-typography-kop3-font-size );line-height:var( --e-global-typography-kop3-line-height );}.elementor-kit-6 h4{font-size:var( --e-global-typography-kop4-font-size );line-height:var( --e-global-typography-kop4-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --e-gv-d7227b3:#1B4D3E; --e-gv-74af946:#143B30; --e-gv-9107392:#E0294F; --e-gv-0114e35:#C21F42; --e-gv-f9ffb68:#DCEDE3; --e-gv-f808d9d:#EEF6F1; --e-gv-f73b014:#122E26; --e-gv-5ac0e8d:#4E6A60; --e-gv-ee1cb74:#D9E3DE; --e-gv-0ba9bbe:#FFFFFF; --e-gv-a971f18:#FFFFFF; --e-gv-02e7016:#F6708B; --e-gv-2272bb5:#CFDCD5; --e-gv-57976ef:#1F7A4D; --e-gv-9058a3d:#E6F3EC; --e-gv-088bf98:#B3261E; --e-gv-9c80859:Quicksand; --e-gv-fbd97cc:Nunito; --e-gv-abf5e30:52px; --e-gv-934852d:36px; --e-gv-cfa674a:40px; --e-gv-83137e3:30px; --e-gv-0242767:24px; --e-gv-8380655:20px; --e-gv-711e22a:20px; --e-gv-c663a7c:18px; --e-gv-24e866a:16px; --e-gv-b7c7dd1:14px; --e-gv-3b99ffb:13px; --e-gv-7423530:6px; --e-gv-66c0019:12px; --e-gv-9a89478:16px; --e-gv-a286c78:999px; --e-gv-e7af179:1200px; --e-gv-876c0b9:720px; --e-gv-16e03d4:24px; --e-gv-5071a88:24px; --e-gv-cdc8db5:clamp(48px, 7vw, 88px); --e-gv-6442841:clamp(56px, 8vw, 104px); --e-gv-180f2dc:clamp(32px, 5vw, 72px); }
/* Start custom CSS *//* ==========================================================================
   Wyke · site-brede stijl voor de klassieke widgets
   Kleuren:     Site-instellingen > Globale kleuren      -> var(--e-global-color-…)
   Lettertypes: Site-instellingen > Globale lettertypes  -> var(--e-global-typography-…)
   Hier staan alleen vorm, ruimte en effecten. Een klasse koppel je aan een widget
   of container via Geavanceerd > CSS-klassen.
   ========================================================================== */

/* ---------- Maten ---------- */
:root { --radius-klein: 6px; --radius-midden: 12px; --radius-groot: 16px; --radius-rond: 999px; --container-marge: 24px; --grid-ruimte: 24px; --sectie-ruimte: clamp(48px, 7vw, 88px); --sectie-ruimte-groot: clamp(56px, 8vw, 104px); --kolom-ruimte: clamp(32px, 5vw, 72px); --ease: cubic-bezier(.2, .7, .2, 1); }

/* ---------- Basis ---------- */
html { scroll-behavior: smooth; }
[id] { scroll-margin-top: 104px; }
:focus-visible { outline: 3px solid color-mix(in srgb, var(--e-global-color-primary) 35%, transparent); outline-offset: 3px; }
::selection { background: var(--e-global-color-accent); color: var(--e-global-color-text); }
h1.elementor-heading-title, h2.elementor-heading-title, h3.elementor-heading-title { text-wrap: balance; }
p.elementor-heading-title, .elementor-widget-text-editor { text-wrap: pretty; }
.elementor-widget-text-editor p, .elementor-widget-text-editor ul { margin: 0; }
.elementor-widget-text-editor p + p { margin-top: 16px; }
.elementor-widget-text-editor a, p.elementor-heading-title a { text-decoration: underline; text-underline-offset: 3px; }
.accent-tekst strong { color: var(--e-global-color-secondary); font-weight: 700; }
.sterk-donker strong { color: var(--e-global-color-text); font-weight: 700; }

/* Kleine label boven een kop, met een lijntje erachter */
.eyebrow .elementor-heading-title { display: flex; align-items: center; gap: 12px; }
.eyebrow .elementor-heading-title::after { content: ""; flex: none; width: 96px; height: 1px; background: currentColor; }

/* ---------- Secties ---------- */
.e-con.sectie { --padding-top: var(--sectie-ruimte); --padding-right: var(--container-marge); --padding-bottom: var(--sectie-ruimte); --padding-left: var(--container-marge); }
.e-con.sectie-groot { --padding-top: var(--sectie-ruimte-groot); --padding-right: var(--container-marge); --padding-bottom: var(--sectie-ruimte-groot); --padding-left: var(--container-marge); }
.e-con.sectie.zonder-boven, .e-con.sectie-groot.zonder-boven { --padding-top: 0px; }
.e-con.sectie.zonder-onder, .e-con.sectie-groot.zonder-onder { --padding-bottom: 0px; }
/* Pagina's zonder fotohero: ruimte onder de zwevende header */
.e-con.ruimte-header { --padding-top: clamp(128px, 14vw, 160px); }

/* Blokken met een vaste maximale breedte en ruimte eronder */
.e-con.intro { max-width: 640px; margin-bottom: 40px; }
.e-con.kop-rij { margin-bottom: 40px; }

/* ---------- Fotohero ---------- */
.e-con.hero { --min-height: 560px; --padding-top: clamp(136px, 14vw, 168px); --padding-right: var(--container-marge); --padding-bottom: clamp(56px, 7vw, 88px); --padding-left: var(--container-marge); overflow: hidden; background-color: var(--e-global-color-primary); }
.e-con:is(.hero, .fotoband)::before { content: ""; position: absolute; inset: 0; z-index: 1; width: auto; height: auto; opacity: 1; mix-blend-mode: normal; border: 0; border-radius: 0; background: linear-gradient(90deg, color-mix(in srgb, var(--e-global-color-primary) 94%, transparent) 0%, color-mix(in srgb, var(--e-global-color-primary) 82%, transparent) 50%, color-mix(in srgb, var(--e-global-color-primary) 40%, transparent) 100%); }
.e-con:is(.hero, .fotoband) > .e-con-inner, .e-con:is(.hero, .fotoband) > .e-con { position: relative; z-index: 2; }
.e-con.hero-tekst { max-width: 660px; }

/* ---------- Knoppen ---------- */
.elementor-widget-button .elementor-button { text-decoration: none; vertical-align: top; }
.elementor-widget-button, .elementor-widget-button .elementor-button-wrapper { line-height: 0; }
/* Hoofdknop: framboos, lichtgroene vulling bij hover, witte bol met pijl */
.elementor-widget-button.knop-primair .elementor-button { position: relative; isolation: isolate; display: inline-flex; align-items: center; gap: 12px; height: 48px; padding: 0 6px 0 24px; border: 0; border-radius: var(--radius-rond); background-color: var(--e-global-color-secondary); color: var(--e-global-color-wit); fill: currentColor; font-family: var(--e-global-typography-accent-font-family), sans-serif; font-size: var(--e-global-typography-accent-font-size); font-weight: var(--e-global-typography-accent-font-weight); line-height: var(--e-global-typography-accent-line-height); white-space: nowrap; overflow: hidden; cursor: pointer; transition: color 380ms var(--ease); }
.elementor-widget-button.knop-primair .elementor-button:hover, .elementor-widget-button.knop-primair .elementor-button:focus { color: var(--e-global-color-text); }
.elementor-widget-button.knop-primair .elementor-button::before { content: ""; position: absolute; z-index: -1; right: 6px; top: 6px; width: 36px; height: 36px; border-radius: 50%; background: var(--e-global-color-accent); transition: transform 570ms var(--ease); }
.elementor-widget-button.knop-primair .elementor-button:hover::before, .elementor-widget-button.knop-primair .elementor-button:focus::before { transform: scale(15); }
.elementor-widget-button.knop-primair .elementor-button::after { content: ""; flex: none; width: 36px; height: 36px; border-radius: 50%; background: var(--e-global-color-wit); transition: transform 380ms var(--ease); }
.elementor-widget-button.knop-primair .elementor-button:hover::after { transform: translateX(2px); }
.elementor-widget-button.knop-primair .elementor-button .elementor-button-content-wrapper::after { content: ""; position: absolute; z-index: 1; right: 15px; top: 15px; width: 18px; height: 18px; background-color: var(--e-global-color-secondary); -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik01IDEyaDE0Ii8+PHBhdGggZD0ibTEyIDUgNyA3LTcgNyIvPjwvc3ZnPg==") center / contain no-repeat; mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik01IDEyaDE0Ii8+PHBhdGggZD0ibTEyIDUgNyA3LTcgNyIvPjwvc3ZnPg==") center / contain no-repeat; transform: rotate(-45deg); transition: transform 380ms var(--ease); }
.elementor-widget-button.knop-primair .elementor-button:hover .elementor-button-content-wrapper::after { transform: translateX(2px) rotate(0deg); }
.elementor-widget-button.knop-op-licht .elementor-button::before { background: var(--e-global-color-wit); }
.elementor-widget-button.knop-blok, .elementor-widget-button.knop-blok .elementor-button-wrapper, .elementor-widget-button.knop-outline-blok, .elementor-widget-button.knop-outline-blok .elementor-button-wrapper { width: 100%; }
.elementor-widget-button.knop-blok .elementor-button { display: flex; width: 100%; justify-content: space-between; }
.elementor-widget-button.knop-blok .elementor-button:hover::before { transform: scale(24); }
/* Spookknop: witte rand op een foto, vult zich wit bij hover */
.elementor-widget-button.knop-ghost .elementor-button { display: inline-flex; align-items: center; gap: 10px; height: 48px; padding: 0 24px; border: 0; border-radius: var(--radius-rond); box-shadow: inset 0 0 0 2px var(--e-global-color-wit); color: var(--e-global-color-wit); font-family: var(--e-global-typography-accent-font-family), sans-serif; font-size: var(--e-global-typography-accent-font-size); font-weight: var(--e-global-typography-accent-font-weight); line-height: var(--e-global-typography-accent-line-height); white-space: nowrap; cursor: pointer; background-color: transparent; background-image: linear-gradient(var(--e-global-color-wit), var(--e-global-color-wit)); background-repeat: no-repeat; background-position: 0 0; background-size: 0% 100%; transition: background-size 380ms var(--ease), color 380ms var(--ease); }
.elementor-widget-button.knop-ghost .elementor-button:hover, .elementor-widget-button.knop-ghost .elementor-button:focus { background-size: 100% 100%; color: var(--e-global-color-text); }
.elementor-widget-button.knop-ghost .elementor-button::after { content: ""; flex: none; width: 18px; height: 18px; background-color: currentColor; -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik01IDEyaDE0Ii8+PHBhdGggZD0ibTEyIDUgNyA3LTcgNyIvPjwvc3ZnPg==") center / contain no-repeat; mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik01IDEyaDE0Ii8+PHBhdGggZD0ibTEyIDUgNyA3LTcgNyIvPjwvc3ZnPg==") center / contain no-repeat; }
.elementor-widget-button.zonder-pijl .elementor-button::after { display: none; }
/* Omlijnde knop */
.elementor-widget-button.knop-outline .elementor-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 11px 28px; border: 1px solid var(--e-global-color-primary); border-radius: var(--radius-rond); background-color: transparent; color: var(--e-global-color-primary); font-family: var(--e-global-typography-accent-font-family), sans-serif; font-size: var(--e-global-typography-accent-font-size); font-weight: var(--e-global-typography-accent-font-weight); line-height: var(--e-global-typography-accent-line-height); font-weight: 600; white-space: nowrap; cursor: pointer; transition: background-color 150ms var(--ease), color 150ms var(--ease); }
.elementor-widget-button.knop-outline .elementor-button:hover { background-color: var(--e-global-color-primary); color: var(--e-global-color-wit); }
.elementor-widget-button.knop-outline-blok .elementor-button { display: flex; width: 100%; }
/* Tekstlink met pijl */
.elementor-widget-button.tekstlink .elementor-button { display: inline-flex; align-items: center; gap: 8px; padding: 4px 0; border: 0; border-radius: 0; background: none; color: var(--e-global-color-primary); font-family: var(--e-global-typography-accent-font-family), sans-serif; font-size: var(--e-global-typography-accent-font-size); font-weight: var(--e-global-typography-accent-font-weight); line-height: var(--e-global-typography-accent-line-height); white-space: nowrap; cursor: pointer; }
.elementor-widget-button.tekstlink .elementor-button::after { content: ""; flex: none; width: 18px; height: 18px; background-color: currentColor; -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik01IDEyaDE0Ii8+PHBhdGggZD0ibTEyIDUgNyA3LTcgNyIvPjwvc3ZnPg==") center / contain no-repeat; mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik01IDEyaDE0Ii8+PHBhdGggZD0ibTEyIDUgNyA3LTcgNyIvPjwvc3ZnPg==") center / contain no-repeat; transition: transform 380ms var(--ease); }
.elementor-widget-button.tekstlink .elementor-button:hover { text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 2px; color: var(--e-global-color-primary); }
.elementor-widget-button.tekstlink .elementor-button:hover::after { transform: translateX(4px); }
/* Telefoonlink */
.elementor-widget-button.telefoonlink .elementor-button { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0; border: 0; border-radius: 0; background: none; color: var(--e-global-color-text); font-family: var(--e-global-typography-text-font-family), sans-serif; font-weight: 600; font-size: var(--e-global-typography-ui-font-size); line-height: var(--e-global-typography-ui-line-height); cursor: pointer; }
.elementor-widget-button.telefoonlink .elementor-button::before { content: ""; flex: none; width: 18px; height: 18px; background-color: currentColor; -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMiAxNi45MnYzYTIgMiAwIDAgMS0yLjE4IDIgMTkuNzkgMTkuNzkgMCAwIDEtOC42My0zLjA3IDE5LjUgMTkuNSAwIDAgMS02LTYgMTkuNzkgMTkuNzkgMCAwIDEtMy4wNy04LjY3QTIgMiAwIDAgMSA0LjExIDJoM2EyIDIgMCAwIDEgMiAxLjcyIDEyLjg0IDEyLjg0IDAgMCAwIC43IDIuODEgMiAyIDAgMCAxLS40NSAyLjExTDguMDkgOS45MWExNiAxNiAwIDAgMCA2IDZsMS4yNy0xLjI3YTIgMiAwIDAgMSAyLjExLS40NSAxMi44NCAxMi44NCAwIDAgMCAyLjgxLjdBMiAyIDAgMCAxIDIyIDE2LjkyeiIvPjwvc3ZnPg==") center / contain no-repeat; mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMiAxNi45MnYzYTIgMiAwIDAgMS0yLjE4IDIgMTkuNzkgMTkuNzkgMCAwIDEtOC42My0zLjA3IDE5LjUgMTkuNSAwIDAgMS02LTYgMTkuNzkgMTkuNzkgMCAwIDEtMy4wNy04LjY3QTIgMiAwIDAgMSA0LjExIDJoM2EyIDIgMCAwIDEgMiAxLjcyIDEyLjg0IDEyLjg0IDAgMCAwIC43IDIuODEgMiAyIDAgMCAxLS40NSAyLjExTDguMDkgOS45MWExNiAxNiAwIDAgMCA2IDZsMS4yNy0xLjI3YTIgMiAwIDAgMSAyLjExLS40NSAxMi44NCAxMi44NCAwIDAgMCAyLjgxLjdBMiAyIDAgMCAxIDIyIDE2LjkyeiIvPjwvc3ZnPg==") center / contain no-repeat; }
.elementor-widget-button.telefoonlink .elementor-button:hover { text-decoration: underline; color: var(--e-global-color-text); }
/* Contactregel: telefoon, e-mail of adres met icoon */
.elementor-widget-button.contactregel .elementor-button { display: inline-flex; align-items: flex-start; gap: 12px; padding: 0; border: 0; border-radius: 0; background: none; color: var(--e-global-color-text); font-family: var(--e-global-typography-text-font-family), sans-serif; font-weight: 600; font-size: var(--e-global-typography-ui-font-size); line-height: var(--e-global-typography-ui-line-height); text-align: left; cursor: pointer; }
.elementor-widget-button.contactregel .elementor-button:hover { text-decoration: underline; color: var(--e-global-color-text); }
.contactregel .elementor-heading-title { display: flex; align-items: flex-start; gap: 12px; }
.contactregel :is(.elementor-button, .elementor-heading-title)::before { margin-top: 2px; background-color: var(--e-global-color-primary) !important; }
/* Iconen voor knoppen en korte teksten */
.icoon-telefoon { --icoon: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMiAxNi45MnYzYTIgMiAwIDAgMS0yLjE4IDIgMTkuNzkgMTkuNzkgMCAwIDEtOC42My0zLjA3IDE5LjUgMTkuNSAwIDAgMS02LTYgMTkuNzkgMTkuNzkgMCAwIDEtMy4wNy04LjY3QTIgMiAwIDAgMSA0LjExIDJoM2EyIDIgMCAwIDEgMiAxLjcyIDEyLjg0IDEyLjg0IDAgMCAwIC43IDIuODEgMiAyIDAgMCAxLS40NSAyLjExTDguMDkgOS45MWExNiAxNiAwIDAgMCA2IDZsMS4yNy0xLjI3YTIgMiAwIDAgMSAyLjExLS40NSAxMi44NCAxMi44NCAwIDAgMCAyLjgxLjdBMiAyIDAgMCAxIDIyIDE2LjkyeiIvPjwvc3ZnPg=="); } .icoon-mail { --icoon: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxyZWN0IHdpZHRoPSIyMCIgaGVpZ2h0PSIxNiIgeD0iMiIgeT0iNCIgcng9IjIiLz48cGF0aCBkPSJtMjIgNy04Ljk3IDUuN2ExLjk0IDEuOTQgMCAwIDEtMi4wNiAwTDIgNyIvPjwvc3ZnPg=="); } .icoon-pin { --icoon: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMCAxMGMwIDYtOCAxMi04IDEycy04LTYtOC0xMmE4IDggMCAwIDEgMTYgMFoiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjEwIiByPSIzIi8+PC9zdmc+"); }
:is(.icoon-telefoon, .icoon-mail, .icoon-pin) :is(.elementor-button, .elementor-heading-title)::before { content: ""; flex: none; width: 20px; height: 20px; background-color: currentColor; -webkit-mask: var(--icoon) center / contain no-repeat; mask: var(--icoon) center / contain no-repeat; }

/* ---------- Beeld ---------- */
.elementor-widget-image.beeld img { display: block; width: 100%; height: auto; object-fit: cover; border-radius: var(--radius-groot); background-color: var(--e-global-color-zachtgroen); }
.elementor-widget-image.beeld-midden img { border-radius: var(--radius-midden); }
.elementor-widget-image.ratio-4-5 img { aspect-ratio: 4 / 5; }
.elementor-widget-image.ratio-4-3 img { aspect-ratio: 4 / 3; }
.elementor-widget-image.ratio-3-2 img { aspect-ratio: 3 / 2; }
.elementor-widget-image.ratio-16-9 img { aspect-ratio: 16 / 9; }
.elementor-widget-image.ratio-21-9 img { aspect-ratio: 21 / 9; }
@media (max-width: 767px) { .elementor-widget-image.ratio-21-9 img { aspect-ratio: 16 / 10; } }

/* ---------- Kaarten en vlakken ---------- */
.e-con.kaart { --padding-top: clamp(24px, 3vw, 32px); --padding-right: clamp(24px, 3vw, 32px); --padding-bottom: clamp(24px, 3vw, 32px); --padding-left: clamp(24px, 3vw, 32px); background-color: var(--e-global-color-achtergrond); border: 1px solid var(--e-global-color-rand); border-radius: var(--radius-groot); }
.e-con.stapkaart { --padding-top: 32px; --padding-right: 32px; --padding-bottom: 32px; --padding-left: 32px; background-color: var(--e-global-color-achtergrond); border: 1px solid var(--e-global-color-rand); border-radius: var(--radius-groot); }
.e-con.stat { --padding-top: clamp(24px, 4vw, 40px); --padding-right: clamp(24px, 4vw, 40px); --padding-bottom: clamp(24px, 4vw, 40px); --padding-left: clamp(24px, 4vw, 40px); background-color: var(--e-global-color-achtergrond); border: 1px solid var(--e-global-color-rand); border-radius: var(--radius-groot); }
.e-con.balk { height: 20px; border-radius: var(--radius-rond); }
.e-con.zacht-paneel { --padding-top: clamp(24px, 3vw, 32px); --padding-right: clamp(24px, 3vw, 32px); --padding-bottom: clamp(24px, 3vw, 32px); --padding-left: clamp(24px, 3vw, 32px); background-color: var(--e-global-color-zachtgroen); border-radius: var(--radius-groot); }
.e-con.cta-paneel { --padding-top: clamp(32px, 5vw, 56px); --padding-right: clamp(32px, 5vw, 56px); --padding-bottom: clamp(32px, 5vw, 56px); --padding-left: clamp(32px, 5vw, 56px); background-color: var(--e-global-color-accent); color: var(--e-global-color-text); border-radius: var(--radius-groot); }
.e-con.formulier { --padding-top: 40px; --padding-right: 40px; --padding-bottom: 40px; --padding-left: 40px; background-color: var(--e-global-color-achtergrond); border: 1px solid var(--e-global-color-rand); border-radius: var(--radius-groot); }
@media (max-width: 767px) { .e-con.formulier { --padding-top: 24px; --padding-right: 24px; --padding-bottom: 24px; --padding-left: 24px; } }
.e-con.melding { --padding-top: 20px; --padding-right: 24px; --padding-bottom: 20px; --padding-left: 24px; border: 1px solid var(--e-global-color-secondary); border-radius: var(--radius-midden); background-color: var(--e-global-color-zachtgroen); }
/* Rijen met een lijn erboven; de laatste ook met een lijn eronder */
.e-con.lijn-rij { --padding-top: 16px; --padding-right: 0px; --padding-bottom: 16px; --padding-left: 0px; border-top: 1px solid var(--e-global-color-rand); }
.e-con.tijdlijn-rij { --padding-top: 16px; --padding-right: 0px; --padding-bottom: 16px; --padding-left: 0px; border-top: 1px solid var(--e-global-color-rand); }
.e-con:is(.lijn-rij, .tijdlijn-rij):last-child { border-bottom: 1px solid var(--e-global-color-rand); }
.e-con.feit { --padding-top: 16px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px; border-top: 1px solid var(--e-global-color-rand); }

/* Ronde en pilvormige labels (koppen met een vlak) */
.elementor-widget.badge { align-self: flex-start; width: auto; padding: 2px 10px; border-radius: var(--radius-rond); background-color: var(--e-global-color-accent); }
.elementor-widget:is(.nummer, .avatar) { flex: none; display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; background-color: var(--e-global-color-accent); }
.elementor-widget.nummer .elementor-heading-title { line-height: 1; }
.elementor-widget.avatar .elementor-heading-title { line-height: 1; }
.e-con.stap { --e-con-grid-template-columns: 48px 1fr; }

/* Lijsten in een teksteditor */
.vinkjes ul { display: flex; flex-direction: column; gap: 10px; padding: 0; list-style: none; }
.vinkjes li { display: flex; gap: 12px; align-items: flex-start; }
.vinkjes li::before { content: ""; flex: none; width: 20px; height: 20px; margin-top: 2px; background-color: var(--e-global-color-secondary); -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMCA2IDkgMTdsLTUtNSIvPjwvc3ZnPg==") center / contain no-repeat; mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMCA2IDkgMTdsLTUtNSIvPjwvc3ZnPg==") center / contain no-repeat; }
.vinkjes.vinkjes-groot ul { gap: 16px; }
.vinkjes.vinkjes-groot li::before { margin-top: 4px; background-color: var(--e-global-color-primary); }
.onderwerpen ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 10px; padding: 0; list-style: none; }
.onderwerpen li { display: flex; gap: 12px; align-items: flex-start; padding: 14px 16px; border-radius: var(--radius-midden); background-color: var(--e-global-color-zachtgroen); }
.onderwerpen li::before { content: ""; flex: none; width: 18px; height: 18px; margin-top: 3px; background-color: var(--e-global-color-primary); -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMCA2IDkgMTdsLTUtNSIvPjwvc3ZnPg==") center / contain no-repeat; mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMCA2IDkgMTdsLTUtNSIvPjwvc3ZnPg==") center / contain no-repeat; }
.chips ul { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; list-style: none; }
.chips li { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: var(--radius-rond); background-color: var(--e-global-color-achtergrond); }
.chips li::before { content: ""; flex: none; width: 16px; height: 16px; background-color: var(--e-global-color-primary); -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMCA2IDkgMTdsLTUtNSIvPjwvc3ZnPg==") center / contain no-repeat; mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMCA2IDkgMTdsLTUtNSIvPjwvc3ZnPg==") center / contain no-repeat; }

/* ---------- Citaten ---------- */
.e-con.citaat { max-width: 760px; margin-left: auto; margin-right: auto; text-align: center; }
.elementor-widget.citaat-teken { height: 28px; }
.e-con.persoon { text-align: left; }
.e-con.citaat-kaart { border: 1px solid var(--e-global-color-rand); border-radius: var(--radius-groot); background-color: var(--e-global-color-achtergrond); overflow: hidden; }
.elementor-widget.citaat-kaart-teken { display: flex; justify-content: center; padding: 38px 0 0; background-color: var(--e-global-color-accent); text-align: center; }
@media (max-width: 767px) { .elementor-widget.citaat-kaart-teken { justify-content: flex-start; min-height: 56px; padding: 22px 24px 0; } }
.e-con.citaat-kaart-inhoud { --padding-top: 32px; --padding-right: 40px; --padding-bottom: 32px; --padding-left: 40px; }
@media (max-width: 767px) { .e-con.citaat-kaart-inhoud { --padding-top: 24px; --padding-right: 24px; --padding-bottom: 24px; --padding-left: 24px; } }

/* ---------- Blogoverzicht (Loop Grid) ---------- */
.blog-loop .elementor-pagination { display: flex; justify-content: center; gap: 16px; margin-top: 48px; }
.blog-loop .elementor-pagination .page-numbers.prev, .blog-loop .elementor-pagination .page-numbers.next { display: inline-flex; align-items: center; padding: 11px 28px; border: 1px solid var(--e-global-color-primary); border-radius: var(--radius-rond); color: var(--e-global-color-primary); font-family: var(--e-global-typography-accent-font-family), sans-serif; font-size: var(--e-global-typography-accent-font-size); font-weight: var(--e-global-typography-accent-font-weight); line-height: var(--e-global-typography-accent-line-height); font-weight: 600; text-decoration: none; transition: background-color 150ms var(--ease), color 150ms var(--ease); }
.blog-loop .elementor-pagination .page-numbers.prev:hover, .blog-loop .elementor-pagination .page-numbers.next:hover { background-color: var(--e-global-color-primary); color: var(--e-global-color-wit); }
.blog-loop .elementor-pagination .page-numbers:not(.prev):not(.next) { display: none; }

/* ---------- Fotogalerij ---------- */
.e-con.galerij { display: block; columns: 4 150px; column-gap: 16px; }
.e-con.galerij > .elementor-widget { margin-bottom: 16px; break-inside: avoid; }

/* ---------- Blog ---------- */
.e-con.blogkaart-beeld { aspect-ratio: 16 / 10; border-radius: var(--radius-midden); overflow: hidden; background-color: var(--e-global-color-zachtgroen); }
.e-con.blogkaart-beeld .elementor-widget-image, .e-con.blogkaart-beeld .elementor-widget-image a { display: block; width: 100%; height: 100%; }
.e-con.blogkaart-beeld img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 300ms var(--ease); }
.e-con.blogkaart-beeld img:hover { transform: scale(1.02); }
.blogkaart-titel .elementor-heading-title a { color: inherit; text-decoration: none; transition: color 150ms ease; }
.blogkaart-titel .elementor-heading-title a:hover { color: var(--e-global-color-groendonker); }
.elementor-widget.lees-verder { margin-top: auto; }
.artikel-inhoud { font-family: var(--e-global-typography-text-font-family), sans-serif; font-size: var(--e-global-typography-text-font-size); line-height: var(--e-global-typography-text-line-height); color: var(--e-global-color-text); }
.artikel-inhoud p { margin: 0 0 24px; }
.artikel-inhoud h2 { margin: 48px 0 16px; font-family: var(--e-global-typography-primary-font-family), sans-serif; font-weight: 700; font-size: var(--e-global-typography-kop2-font-size); line-height: 1.2; color: var(--e-global-color-primary); }
.artikel-inhoud h3 { margin: 32px 0 8px; font-family: var(--e-global-typography-primary-font-family), sans-serif; font-weight: 700; font-size: var(--e-global-typography-kop3-font-size); line-height: 1.333; color: var(--e-global-color-primary); }
.artikel-inhoud ul { margin: 0 0 24px; padding-left: 1.4em; list-style: disc; }
.artikel-inhoud ol { margin: 0 0 24px; padding-left: 1.4em; }
.artikel-inhoud li { margin: 0 0 8px; }
.artikel-inhoud li::marker { color: var(--e-global-color-primary); }
.artikel-inhoud a { color: var(--e-global-color-primary); text-underline-offset: 3px; text-decoration-thickness: 1px; }
.artikel-inhoud blockquote { margin: 32px 0; padding: 24px 32px; border: 0; border-radius: var(--radius-groot); background: var(--e-global-color-zachtgroen); font-family: var(--e-global-typography-primary-font-family), sans-serif; font-weight: 500; font-size: 24px; line-height: 32px; }
.artikel-inhoud blockquote p { margin: 0; }
.artikel-inhoud figure { margin: 32px 0; }
.artikel-inhoud img { width: 100%; height: auto; border-radius: var(--radius-midden); }
/* Kruimelpad */
.kruimel .elementor-heading-title { display: flex; align-items: center; gap: 8px; }
.kruimel .elementor-heading-title a { color: var(--e-global-color-primary); text-decoration: none; }
.kruimel .elementor-heading-title a:hover { text-decoration: underline; text-underline-offset: 4px; }
.kruimel .elementor-heading-title::after { content: ""; flex: none; width: 14px; height: 14px; background-color: currentColor; -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Im05IDE4IDYtNi02LTYiLz48L3N2Zz4=") center / contain no-repeat; mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Im05IDE4IDYtNi02LTYiLz48L3N2Zz4=") center / contain no-repeat; }
.elementor-widget.kruimel-huidig { min-width: 0; }
.kruimel-huidig .elementor-heading-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
/* Categorie in de bloghero: alleen zichtbaar als er een categorie is */
.elementor-widget.categorie-chip { align-self: flex-start; width: auto; padding: 4px 14px; border-radius: var(--radius-rond); background-color: color-mix(in srgb, var(--e-global-color-wit) 16%, transparent); }
.elementor-widget.categorie-chip:has(.elementor-heading-title:empty) { display: none; }
/* Privacytekst: koppen en alinea's in één teksteditor */
.lange-tekst h2 { margin: 40px 0 16px; font-family: var(--e-global-typography-primary-font-family), sans-serif; font-size: var(--e-global-typography-kopklein-font-size); font-weight: var(--e-global-typography-kopklein-font-weight); line-height: var(--e-global-typography-kopklein-line-height); color: var(--e-global-color-primary); }
.lange-tekst h2:first-child { margin-top: 24px; }
.lange-tekst p { margin: 0; }
.lange-tekst p + p { margin-top: 16px; }

/* ---------- Footer ---------- */
.e-con.footer-hoofd { --padding-top: 24px; --padding-right: var(--container-marge); --padding-bottom: clamp(40px, 6vw, 64px); --padding-left: var(--container-marge); }
.e-con.footer-kaart { --flex-grow: 1; --flex-shrink: 1; --flex-basis: 320px; max-width: 420px; }
.e-con.footer-merk { --flex-grow: 1; --flex-shrink: 1; --flex-basis: 520px; --padding-top: 16px; min-width: 0; }
.e-con.footer-kolommen { --flex-grow: 1; --flex-shrink: 1; --flex-basis: 320px; min-width: 0; }
.e-con.footer-balk { --padding-top: 16px; --padding-right: var(--container-marge); --padding-bottom: 16px; --padding-left: var(--container-marge); }
/* Elementor zet max-width van widgets in containers vast op 100%; daarom een breedte */
.elementor .e-con .elementor-widget.footer-slogan { width: min(100%, 560px, calc(100vw - 508px)); }
@media (max-width: 1024px) { .elementor .e-con .elementor-widget.footer-slogan { width: min(100%, 560px); } }
.e-con.fotoband { --min-height: clamp(240px, 30vw, 380px); --padding-top: 40px; --padding-right: var(--container-marge); --padding-bottom: clamp(32px, 5vw, 64px); --padding-left: var(--container-marge); overflow: hidden; background-color: var(--e-global-color-primary); }
.e-con.footer-kaart { position: relative; z-index: 3; --padding-top: 32px; --padding-right: 32px; --padding-bottom: 32px; --padding-left: 32px; margin-top: -240px; border-radius: var(--radius-groot); background-color: var(--e-global-color-achtergrond); color: var(--e-global-color-text); box-shadow: 0 2px 4px rgba(30, 20, 10, 0.04), 0 12px 32px rgba(30, 20, 10, 0.08); }
@media (max-width: 1024px) { .e-con.footer-kaart { margin-top: 0; } }
.e-con.kaart-voet { --padding-top: 16px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px; border-top: 1px solid var(--e-global-color-rand); }
.footer-logo img { display: block; width: 100%; height: auto; }
.beeldmerk-klein img { display: block; width: auto; height: 22px; max-width: none; }
.linkedin-pil .elementor-heading-title a { display: inline-block; padding: 6px 14px; border: 1px solid color-mix(in srgb, var(--e-global-color-wit) 50%, transparent); border-radius: var(--radius-rond); color: var(--e-global-color-wit); text-decoration: none; }
.linkedin-pil .elementor-heading-title a:hover { color: var(--e-global-color-wit); background-color: color-mix(in srgb, var(--e-global-color-wit) 12%, transparent); }
.linkedin-pil .elementor-heading-title a:focus-visible { color: var(--e-global-color-wit); }
/* Links in de onderbalk. Kleur bij hover en focus staat er uitdrukkelijk bij: anders worden ze donkergroen op donkergroen. */
.balk-link .elementor-heading-title a { color: var(--e-global-color-wit); text-decoration: none; transition: color 150ms ease; }
.balk-link .elementor-heading-title a:hover { color: var(--e-global-color-wit); text-decoration: underline; }
.balk-link .elementor-heading-title a:focus-visible { color: var(--e-global-color-wit); text-decoration: underline; }
.balk-link.hover-framboos .elementor-heading-title a:hover { color: var(--e-global-color-secondary); }

/* ---------- Pagina Binnenkort online ---------- */
.e-con.binnenkort { --min-height: 100svh; overflow: hidden; }
.e-con.binnenkort-tekst { position: relative; z-index: 2; --padding-top: clamp(24px, 4vw, 56px); --padding-right: clamp(24px, 5vw, 72px); --padding-bottom: clamp(24px, 4vw, 56px); --padding-left: clamp(24px, 5vw, 72px); }
@media (max-width: 1024px) { .e-con.binnenkort-tekst { position: static; --padding-top: 28px; --padding-right: 24px; --padding-bottom: 32px; --padding-left: 24px; } .elementor-widget.adres-gedempt { margin-top: auto; } }
.e-con.binnenkort-foto { margin: 16px; border-radius: var(--radius-groot); overflow: hidden; background-color: var(--e-global-color-groendonker); }
.e-con.binnenkort-foto::before { content: none; }
@media (max-width: 1024px) {
  .e-con.binnenkort-foto { order: -1; --width: auto; height: clamp(260px, 46svh, 560px); margin: 12px 12px 0; }
  .e-con.binnenkort-foto::before { content: ""; position: absolute; inset: 0; z-index: 1; width: auto; height: auto; opacity: 1; border: 0; border-radius: 0; background: linear-gradient(180deg, color-mix(in srgb, var(--e-global-color-primary) 72%, transparent) 0%, color-mix(in srgb, var(--e-global-color-primary) 0%, transparent) 46%); }
}
@media (max-width: 767px) { .e-con.binnenkort-foto { height: clamp(220px, 36svh, 420px); } }
.e-con.binnenkort-logo { position: relative; align-self: flex-start; line-height: 0; }
@media (max-width: 1024px) { .e-con.binnenkort-logo { position: absolute; top: 28px; left: 28px; z-index: 3; } }
.binnenkort-logo img { display: block; width: auto; height: 34px; max-width: none; }
@media (max-width: 1024px) { .binnenkort-logo img { height: 26px; } }
.binnenkort-logo .elementor-widget.logo-op-foto { position: absolute; top: 0; left: 0; opacity: 0; }
@media (max-width: 1024px) { .binnenkort-logo .elementor-widget.logo-op-groen { opacity: 0; } .binnenkort-logo .elementor-widget.logo-op-foto { opacity: 1; } }
.elementor-widget.status-pil { align-self: flex-start; width: auto; padding: 6px 14px; border-radius: var(--radius-rond); background-color: color-mix(in srgb, var(--e-global-color-wit) 14%, transparent); }
.status-pil .elementor-heading-title { display: flex; align-items: center; gap: 8px; }
.status-pil .elementor-heading-title::before { content: ""; flex: none; width: 8px; height: 8px; border-radius: 50%; background-color: var(--e-global-color-roze); }

/* ---------- Header ---------- */
.e-con.header-vast { position: fixed; top: 0; left: 0; right: 0; z-index: 60; --width: 100%; max-width: 1232px; margin: 0 auto; --padding-top: 16px; --padding-right: 16px; --padding-bottom: 0px; --padding-left: 16px; pointer-events: none; }
@media (max-width: 1024px) { .e-con.header-vast { z-index: 10000; } }
.e-con.header-balk { pointer-events: auto; height: 72px; --padding-top: 0px; --padding-right: 12px; --padding-bottom: 0px; --padding-left: 28px; border-radius: var(--radius-rond); background-color: var(--e-global-color-achtergrond); color: var(--e-global-color-text); box-shadow: 0 10px 30px rgba(30, 20, 10, 0.12); }
.e-con.header-acties { margin-left: auto; flex-shrink: 0; }
.e-con.menu-houder { flex-shrink: 0; }
@media (max-width: 1024px) { .e-con.header-balk { height: 60px; --padding-top: 0px; --padding-right: 8px; --padding-bottom: 0px; --padding-left: 20px; } }
.e-con.logo-link { position: relative; flex-shrink: 0; line-height: 0; }
.elementor-widget:is(.logo-kleur, .logo-wit) img { display: block; width: auto; height: 34px; max-width: none; }
.elementor-widget.logo-wit { position: absolute; top: 0; left: 0; opacity: 0; }
@media (max-width: 1024px) { .elementor-widget:is(.logo-kleur, .logo-wit) img { height: 26px; } }
.elementor-widget-button.header-telefoon .elementor-button { display: inline-flex; align-items: center; gap: 8px; height: 48px; padding: 0 18px; border: 0; border-radius: var(--radius-rond); background-color: var(--hb-zacht, var(--e-global-color-zachtgroen)); color: inherit; font-family: var(--e-global-typography-text-font-family), sans-serif; font-weight: 600; font-size: 15px; line-height: 20px; white-space: nowrap; transition: background-color 200ms ease; }
.elementor-widget-button.header-telefoon .elementor-button:hover, .elementor-widget-button.header-telefoon .elementor-button:focus { background-color: var(--hb-actief, var(--e-global-color-accent)); color: inherit; }
@media (max-width: 1024px) { .elementor-widget-button.header-telefoon .elementor-button { width: 44px; height: 44px; padding: 0; gap: 0; justify-content: center; font-size: 0; background-color: transparent; } }

/* Header: doorzichtig boven een fotohero (wit logo), wit zodra er gescrold is (logo in kleur).
   Werkt in browsers met scroll-animaties; in andere browsers blijft de header altijd wit. */
@keyframes wyke-header {
  from { background-color: transparent; color: var(--e-global-color-wit); box-shadow: 0 10px 30px rgba(30, 20, 10, 0); --hb-zacht: color-mix(in srgb, var(--e-global-color-wit) 14%, transparent); --hb-actief: color-mix(in srgb, var(--e-global-color-wit) 16%, transparent); --hb-hover: color-mix(in srgb, var(--e-global-color-wit) 8%, transparent); --hb-rand: color-mix(in srgb, var(--e-global-color-wit) 55%, transparent); }
  to { background-color: var(--e-global-color-achtergrond); color: var(--e-global-color-text); box-shadow: 0 10px 30px rgba(30, 20, 10, 0.12); --hb-zacht: var(--e-global-color-zachtgroen); --hb-actief: var(--e-global-color-accent); --hb-hover: color-mix(in srgb, var(--e-global-color-accent) 50%, transparent); --hb-rand: var(--e-global-color-rand); }
}
@keyframes wyke-logo-wit { from { opacity: 1; } to { opacity: 0; } }
@keyframes wyke-logo-kleur { from { opacity: 0; } to { opacity: 1; } }
@supports (animation-timeline: scroll()) {
  body:has(.elementor > .hero) .elementor-location-header .logo-wit { animation: wyke-logo-wit 1ms linear both; animation-timeline: scroll(root block); animation-range: 0px 48px; }
  body:has(.elementor > .hero) .elementor-location-header .logo-kleur { animation: wyke-logo-kleur 1ms linear both; animation-timeline: scroll(root block); animation-range: 0px 48px; }
  body:has(.elementor > .hero) .elementor-location-header .header-balk { animation: wyke-header 1ms linear both; animation-timeline: scroll(root block); animation-range: 0px 48px; }
}

/* Menuknop (tablet en mobiel): streepjes en 'Menu'; open: kruis en 'Sluiten' */
.elementor-widget-button.menuknop .elementor-button { position: relative; display: inline-flex; align-items: center; height: 44px; padding: 0 16px 0 44px; border: 0; border-radius: var(--radius-rond); overflow: hidden; background-color: transparent; background-image: linear-gradient(currentColor, currentColor); background-repeat: no-repeat; background-position: 14px 50%; background-size: 20px 2px; box-shadow: inset 0 0 0 1.5px var(--hb-rand, var(--e-global-color-rand)); color: inherit; font-family: var(--e-global-typography-text-font-family), sans-serif; font-size: 15px; line-height: 24px; font-weight: 700; white-space: nowrap; cursor: pointer; transition: background-color 380ms var(--ease), background-size 380ms var(--ease); }
.elementor-widget-button.menuknop .elementor-button:hover, .elementor-widget-button.menuknop .elementor-button:focus { color: inherit; background-size: 14px 2px; }
.elementor-widget-button.menuknop .elementor-button::before, .elementor-widget-button.menuknop .elementor-button::after { content: ""; position: absolute; left: 14px; width: 20px; height: 2px; border-radius: 2px; background-color: currentColor; transition: transform 380ms var(--ease); }
.elementor-widget-button.menuknop .elementor-button::before { top: calc(50% - 7px); }
.elementor-widget-button.menuknop .elementor-button::after { top: calc(50% + 5px); }
.elementor-widget-button.menuknop .elementor-button .elementor-button-text { display: grid; }
.elementor-widget-button.menuknop .elementor-button .elementor-button-text span { grid-area: 1 / 1; display: block; transition: transform 380ms var(--ease); }
.elementor-widget-button.menuknop .elementor-button .elementor-button-text span:last-child { transform: translateY(200%); }
body.dialog-prevent-scroll .elementor-location-header .header-balk, body.dialog-prevent-scroll .elementor-location-header .logo-wit, body.dialog-prevent-scroll .elementor-location-header .logo-kleur { animation: none !important; }
body.dialog-prevent-scroll .elementor-widget-button.menuknop .elementor-button { background-color: var(--e-global-color-primary); box-shadow: inset 0 0 0 1.5px var(--e-global-color-primary); color: var(--e-global-color-wit); background-size: 0px 2px; transition: background-color 380ms var(--ease), color 380ms var(--ease), box-shadow 380ms var(--ease), background-size 380ms var(--ease); }
body.dialog-prevent-scroll .elementor-widget-button.menuknop .elementor-button::before { transform: translateY(6px) rotate(45deg); }
body.dialog-prevent-scroll .elementor-widget-button.menuknop .elementor-button::after { transform: translateY(-6px) rotate(-45deg); }
body.dialog-prevent-scroll .elementor-widget-button.menuknop .elementor-button .elementor-button-text span:first-child { transform: translateY(-200%); }
body.dialog-prevent-scroll .elementor-widget-button.menuknop .elementor-button .elementor-button-text span:last-child { transform: translateY(0); }

/* ---------- Mobiel menu (popup) ---------- */
.e-con.mobiel-menu { --min-height: 100svh; background-color: var(--e-global-color-achtergrond); }
.e-con.menu-foto { flex-shrink: 0; height: clamp(220px, 34vh, 300px); overflow: hidden; background-color: var(--e-global-color-primary); }
.e-con.menu-foto::before { content: ""; position: absolute; inset: 0; z-index: 1; width: auto; height: auto; opacity: 1; border: 0; border-radius: 0; background: linear-gradient(0deg, color-mix(in srgb, var(--e-global-color-primary) 94%, transparent) 0%, color-mix(in srgb, var(--e-global-color-primary) 40%, transparent) 55%, color-mix(in srgb, var(--e-global-color-primary) 0%, transparent) 100%); }
.elementor-widget.menu-slogan { position: absolute; z-index: 2; left: 24px; right: 24px; bottom: 20px; }
.e-con.menu-links { --padding-top: 16px; --padding-right: 24px; --padding-bottom: 16px; --padding-left: 24px; }
.e-con.menu-voet { margin-top: auto; --padding-top: 8px; --padding-right: 24px; --padding-bottom: 32px; --padding-left: 24px; }
.elementor-widget.sluitlink { position: absolute; bottom: 4px; left: 24px; }
.elementor-widget-button.sluitlink .elementor-button { padding: 2px 10px; border: 0; border-radius: var(--radius-rond); background-color: var(--e-global-color-achtergrond); color: var(--e-global-color-text); font-family: var(--e-global-typography-text-font-family), sans-serif; font-size: var(--e-global-typography-klein-font-size); line-height: 20px; font-weight: 700; opacity: 0; pointer-events: none; }
.elementor-widget-button.sluitlink .elementor-button:focus-visible { opacity: 1; pointer-events: auto; }
@media (min-width: 1025px) {
  .elementor-popup-modal:has(.mobiel-menu) { display: none !important; }
  body.dialog-prevent-scroll:has(.elementor-popup-modal .mobiel-menu) { overflow: visible !important; max-height: none !important; }
}/* End custom CSS */