.elementor-kit-156{--e-global-color-primary:#22382D;--e-global-color-secondary:#67993D;--e-global-color-text:#22382D;--e-global-color-accent:#2B5436;--e-global-color-nacht:#142A1E;--e-global-color-zand:#F5F4EE;--e-global-color-wit:#FFFFFF;--e-global-color-lijnen:#E2DFD4;--e-global-color-gedempt:#6B6158;--e-global-color-opdonker:#FFFFFF;--e-global-color-sedumlicht:#86BC52;--e-global-color-meesters:#5F903A;--e-global-color-substraat:#917860;--e-global-color-slogan:#857A6F;--e-global-typography-primary-font-family:"Archivo";--e-global-typography-primary-font-weight:900;--e-global-typography-secondary-font-family:"Archivo";--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Archivo";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:500;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Archivo";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-line-height:1em;--e-global-typography-h1-font-family:"Archivo";--e-global-typography-h1-font-size:86px;--e-global-typography-h1-font-weight:900;--e-global-typography-h1-text-transform:uppercase;--e-global-typography-h1-line-height:0.96em;--e-global-typography-h1-letter-spacing:-0.01em;--e-global-typography-h2-font-family:"Archivo";--e-global-typography-h2-font-size:50px;--e-global-typography-h2-font-weight:900;--e-global-typography-h2-line-height:1.04em;--e-global-typography-h2-letter-spacing:-0.01em;--e-global-typography-h3-font-family:"Archivo";--e-global-typography-h3-font-size:24px;--e-global-typography-h3-font-weight:900;--e-global-typography-h3-line-height:1.15em;--e-global-typography-h3-letter-spacing:-0.01em;--e-global-typography-h4-font-family:"Archivo";--e-global-typography-h4-font-size:20px;--e-global-typography-h4-font-weight:900;--e-global-typography-h4-line-height:1.2em;--e-global-typography-h4-letter-spacing:-0.01em;--e-global-typography-intro-font-family:"Archivo";--e-global-typography-intro-font-size:19px;--e-global-typography-intro-font-weight:500;--e-global-typography-intro-line-height:1.6em;--e-global-typography-menu-font-family:"Archivo";--e-global-typography-menu-font-size:16px;--e-global-typography-menu-font-weight:700;--e-global-typography-menu-line-height:1.2em;--e-global-typography-label-font-family:"Archivo";--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:1.3em;--e-global-typography-label-letter-spacing:0.25em;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Arial, 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-156 button,.elementor-kit-156 input[type="button"],.elementor-kit-156 input[type="submit"],.elementor-kit-156 .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Arial, 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 );color:var( --e-global-color-wit );border-radius:999px 999px 999px 999px;padding:14px 28px 14px 28px;}.elementor-kit-156 button:hover,.elementor-kit-156 button:focus,.elementor-kit-156 input[type="button"]:hover,.elementor-kit-156 input[type="button"]:focus,.elementor-kit-156 input[type="submit"]:hover,.elementor-kit-156 input[type="submit"]:focus,.elementor-kit-156 .elementor-button:hover,.elementor-kit-156 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-wit );}.elementor-kit-156 e-page-transition{background-color:#FFBC7D;}.elementor-kit-156 a{color:var( --e-global-color-accent );}.elementor-kit-156 a:hover{color:var( --e-global-color-meesters );}.elementor-kit-156 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-h1-font-family ), Arial, sans-serif;font-size:var( --e-global-typography-h1-font-size );font-weight:var( --e-global-typography-h1-font-weight );text-transform:var( --e-global-typography-h1-text-transform );line-height:var( --e-global-typography-h1-line-height );letter-spacing:var( --e-global-typography-h1-letter-spacing );}.elementor-kit-156 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-h2-font-family ), Arial, sans-serif;font-size:var( --e-global-typography-h2-font-size );font-weight:var( --e-global-typography-h2-font-weight );line-height:var( --e-global-typography-h2-line-height );letter-spacing:var( --e-global-typography-h2-letter-spacing );}.elementor-kit-156 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-h3-font-family ), Arial, sans-serif;font-size:var( --e-global-typography-h3-font-size );font-weight:var( --e-global-typography-h3-font-weight );line-height:var( --e-global-typography-h3-line-height );letter-spacing:var( --e-global-typography-h3-letter-spacing );}.elementor-kit-156 h4{color:var( --e-global-color-primary );font-family:var( --e-global-typography-h4-font-family ), Arial, sans-serif;font-size:var( --e-global-typography-h4-font-size );font-weight:var( --e-global-typography-h4-font-weight );line-height:var( --e-global-typography-h4-line-height );letter-spacing:var( --e-global-typography-h4-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1160px;}.e-con{--container-max-width:1160px;--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-156{--e-global-typography-text-font-size:17px;--e-global-typography-accent-font-size:16px;--e-global-typography-h1-font-size:64px;--e-global-typography-h2-font-size:40px;--e-global-typography-h3-font-size:22px;--e-global-typography-h4-font-size:19px;--e-global-typography-intro-font-size:18px;--e-global-typography-menu-font-size:16px;--e-global-typography-label-font-size:13px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-156 h1{font-size:var( --e-global-typography-h1-font-size );line-height:var( --e-global-typography-h1-line-height );letter-spacing:var( --e-global-typography-h1-letter-spacing );}.elementor-kit-156 h2{font-size:var( --e-global-typography-h2-font-size );line-height:var( --e-global-typography-h2-line-height );letter-spacing:var( --e-global-typography-h2-letter-spacing );}.elementor-kit-156 h3{font-size:var( --e-global-typography-h3-font-size );line-height:var( --e-global-typography-h3-line-height );letter-spacing:var( --e-global-typography-h3-letter-spacing );}.elementor-kit-156 h4{font-size:var( --e-global-typography-h4-font-size );line-height:var( --e-global-typography-h4-line-height );letter-spacing:var( --e-global-typography-h4-letter-spacing );}.elementor-kit-156 button,.elementor-kit-156 input[type="button"],.elementor-kit-156 input[type="submit"],.elementor-kit-156 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-156{--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:15px;--e-global-typography-h1-font-size:42px;--e-global-typography-h2-font-size:30px;--e-global-typography-h3-font-size:20px;--e-global-typography-h4-font-size:18px;--e-global-typography-intro-font-size:17px;--e-global-typography-menu-font-size:17px;--e-global-typography-label-font-size:12px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-156 h1{font-size:var( --e-global-typography-h1-font-size );line-height:var( --e-global-typography-h1-line-height );letter-spacing:var( --e-global-typography-h1-letter-spacing );}.elementor-kit-156 h2{font-size:var( --e-global-typography-h2-font-size );line-height:var( --e-global-typography-h2-line-height );letter-spacing:var( --e-global-typography-h2-letter-spacing );}.elementor-kit-156 h3{font-size:var( --e-global-typography-h3-font-size );line-height:var( --e-global-typography-h3-line-height );letter-spacing:var( --e-global-typography-h3-letter-spacing );}.elementor-kit-156 h4{font-size:var( --e-global-typography-h4-font-size );line-height:var( --e-global-typography-h4-line-height );letter-spacing:var( --e-global-typography-h4-letter-spacing );}.elementor-kit-156 button,.elementor-kit-156 input[type="button"],.elementor-kit-156 input[type="submit"],.elementor-kit-156 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --sm-inkt:#22382D; --sm-nacht:#142A1E; --sm-drainage:#2B5436; --sm-sedum:#67993D; --sm-sedum-licht:#86BC52; --sm-meesters:#5F903A; --sm-substraat:#917860; --sm-slogan:#857A6F; --sm-slogan-tekst:#6B6158; --sm-zand:#F5F4EE; --sm-wit:#FFFFFF; --sm-lijn:#E2DFD4; --sm-font:Archivo; --sm-h1:clamp(42px, 6.2vw, 86px); --sm-h2:clamp(30px, 3.6vw, 50px); --sm-wrap:1160px; }
/* Start custom CSS *//* =========================================================
   Sedummeesters, custom CSS voor Site Settings
   Elementor > Site Settings > Custom CSS
   Kleuren en letters komen uit de Global Colors en Global Fonts.
   Layout (richting, gaten, padding, breedte) staat in de containers.
   ========================================================= */

/* ---------- Basis ---------- */
html { scroll-behavior: smooth; }
body { background-color: #fff; -webkit-font-smoothing: antialiased; }
.elementor-heading-title em { font-style: normal; color: var(--e-global-color-meesters, #5F903A); }
.e-con.sm-donker .elementor-heading-title em,
.sm-kaart-donker .elementor-heading-title em { color: var(--e-global-color-sedumlicht, #86BC52); }
.elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.elementor-widget-text-editor p { margin-top: 0; }

/* ---------- Secties ---------- */
.e-con.sm-zand { background-color: var(--e-global-color-zand, #F5F4EE); }
.e-con.sm-wit { background-color: #fff; }
.e-con.sm-donker { background-color: var(--e-global-color-nacht, #142A1E); color: #fff; }
.e-con.sm-donker .elementor-widget-heading .elementor-heading-title { color: #fff; }
.e-con.sm-donker .elementor-widget-text-editor { color: rgba(255,255,255,.88); }
.e-con.sm-donker .elementor-widget-text-editor a { color: var(--e-global-color-sedumlicht, #86BC52); }

/* Sedumrand bovenaan een donkere sectie of de footer */
.e-con.sm-sedumrand { position: relative; }
.e-con.sm-sedumrand::after {
  content: ""; position: absolute; left: 0; right: 0; top: -44px; height: 46px; z-index: 2; pointer-events: none;
  background: url("https://sedummeesters.nl/wp-content/uploads/2026/10/sedumrand-scheiding-nacht.png") repeat-x left bottom / auto 46px;
}

/* Scrollanimatie: alleen op hele secties, één keer */
.e-con.sm-anim.animated { animation-name: smOmhoog; animation-duration: .7s; animation-timing-function: cubic-bezier(.2,.7,.2,1); }
@keyframes smOmhoog { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }

/* ---------- Tekststijlen ---------- */
.elementor-widget.sm-intro-tekst { font-size: 19px; line-height: 1.6; }
.elementor-widget.sm-tekst-klein { font-size: 16px; line-height: 1.55; }
.elementor-widget.sm-label .elementor-heading-title,
.elementor-widget.sm-label { font-family: var(--e-global-typography-label-font-family, "Archivo"), Arial, sans-serif; font-weight: 600; font-size: 15px; line-height: 1.3; color: var(--e-global-color-sedumlicht, #86BC52); text-transform: none; letter-spacing: 0; }
.elementor-widget.sm-fotolabel { font-size: 12px; font-weight: 600; color: rgba(255,255,255,.6); }
.elementor-widget.sm-fotolabel-licht { font-size: 12px; font-weight: 600; color: var(--e-global-color-gedempt, #6B6158); }
@media (max-width: 767px) { .elementor-widget.sm-intro-tekst { font-size: 17px; } }

/* ---------- Knoppen: rond, pijl schuift er rechts uit en links weer in ---------- */
.elementor-widget-button.sm-knop .elementor-button,
.sm-form .e-form__buttons .elementor-button {
  display: inline-flex; align-items: center; gap: 14px;
  padding: 7px 7px 7px 26px; border-radius: 999px; border: 0;
  background-color: var(--e-global-color-accent, #2B5436); color: #fff;
  font-family: var(--e-global-typography-accent-font-family, "Archivo"), Arial, sans-serif;
  font-weight: 700; font-size: 16px; line-height: 1; white-space: nowrap;
  transition: background-color .25s ease, color .25s ease, box-shadow .25s ease;
}
.elementor-widget-button.sm-knop .elementor-button::after,
.sm-form .e-form__buttons .elementor-button::after {
  content: ""; flex: none; width: 40px; height: 40px; border-radius: 50%;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%232B5436' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 8h11M9 4l4 4-4 4'/%3E%3C/svg%3E") center / 16px 16px no-repeat;
  transition: background-color .25s ease;
}
.elementor-widget-button.sm-knop .elementor-button:hover,
.elementor-widget-button.sm-knop .elementor-button:focus,
.sm-form .e-form__buttons .elementor-button:hover { background-color: var(--e-global-color-primary, #22382D); color: #fff; }
.elementor-widget-button.sm-knop .elementor-button:hover::after,
.sm-form .e-form__buttons .elementor-button:hover::after,
.elementor-widget-button.sm-tekstlink .elementor-button:hover::after { animation: smPijl .55s cubic-bezier(.65,0,.25,1); }
@keyframes smPijl {
  0% { background-position: center; }
  45% { background-position: calc(50% + 30px) center; }
  46% { background-position: calc(50% - 30px) center; }
  100% { background-position: center; }
}

/* Lichtgroene knop, op donker */
.elementor-widget-button.sm-knop--licht .elementor-button { background-color: var(--e-global-color-sedumlicht, #86BC52); color: var(--e-global-color-nacht, #142A1E); }
.elementor-widget-button.sm-knop--licht .elementor-button::after {
  background-color: var(--e-global-color-nacht, #142A1E);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%2386BC52' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 8h11M9 4l4 4-4 4'/%3E%3C/svg%3E");
}
.elementor-widget-button.sm-knop--licht .elementor-button:hover,
.elementor-widget-button.sm-knop--licht .elementor-button:focus { background-color: #fff; color: var(--e-global-color-nacht, #142A1E); }

/* Knop met alleen een rand, op donker */
.elementor-widget-button.sm-knop--rand .elementor-button { background-color: transparent; color: #fff; box-shadow: inset 0 0 0 2px rgba(255,255,255,.55); }
.elementor-widget-button.sm-knop--rand .elementor-button::after {
  background-color: rgba(255,255,255,.16);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23FFFFFF' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 8h11M9 4l4 4-4 4'/%3E%3C/svg%3E");
}
.elementor-widget-button.sm-knop--rand .elementor-button:hover,
.elementor-widget-button.sm-knop--rand .elementor-button:focus { background-color: #fff; color: var(--e-global-color-nacht, #142A1E); box-shadow: none; }
.elementor-widget-button.sm-knop--rand .elementor-button:hover::after { background-color: var(--e-global-color-nacht, #142A1E); }

/* Tekstlink met pijl, zonder vlak */
.elementor-widget-button.sm-tekstlink .elementor-button {
  display: inline-flex; align-items: center; gap: 10px; padding: 0; border-radius: 0; border: 0;
  background: transparent; color: var(--e-global-color-accent, #2B5436);
  font-family: var(--e-global-typography-accent-font-family, "Archivo"), Arial, sans-serif; font-weight: 700; font-size: 16px; line-height: 1.2;
}
.elementor-widget-button.sm-tekstlink .elementor-button::after {
  content: ""; flex: none; width: 18px; height: 18px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%232B5436' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 8h11M9 4l4 4-4 4'/%3E%3C/svg%3E") center / 16px 16px no-repeat;
}
.elementor-widget-button.sm-tekstlink .elementor-button:hover { color: var(--e-global-color-primary, #22382D); background: transparent; }
.sm-footer .elementor-widget-button.sm-tekstlink .elementor-button { color: var(--e-global-color-sedumlicht, #86BC52); }
.sm-footer .elementor-widget-button.sm-tekstlink .elementor-button::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%2386BC52' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 8h11M9 4l4 4-4 4'/%3E%3C/svg%3E");
}

.elementor-button:focus-visible, .elementor-nav-menu a:focus-visible, .sm-faq .elementor-tab-title:focus-visible { outline: 3px solid var(--e-global-color-sedumlicht, #86BC52); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .elementor-button:hover::after { animation: none !important; }
  .e-con.sm-anim.animated { animation: none; }
}

/* ---------- Header ---------- */
.e-con.sm-header { background-color: #fff; border-bottom: 1px solid #ECEAE2; }
.e-con.sm-topbar { border-bottom: 1px solid #ECEAE2; }
.sm-topbar .elementor-widget-text-editor { font-size: 13px; font-weight: 600; color: var(--e-global-color-gedempt, #6B6158); }
.sm-topbar .elementor-widget-text-editor a { color: var(--e-global-color-primary, #22382D); text-decoration: none; font-weight: 700; }
.sm-topbar .elementor-widget-text-editor a.sm-mail { color: var(--e-global-color-gedempt, #6B6158); font-weight: 600; }
.sm-topbar .elementor-widget-text-editor a:hover { color: var(--e-global-color-meesters, #5F903A); }
.elementor-widget.sm-logo img { width: 300px; max-width: 100%; height: auto; display: block; }
.sm-footer .elementor-widget.sm-logo img { width: 300px; }
@media (max-width: 767px) { .elementor-widget.sm-logo img { width: 210px; } }

/* Hoofdmenu */
.elementor-widget-nav-menu.sm-nav .elementor-nav-menu--main .elementor-item {
  font-family: var(--e-global-typography-menu-font-family, "Archivo"), Arial, sans-serif; font-weight: 700; font-size: 16px;
  color: var(--e-global-color-primary, #22382D); padding: 10px 16px; fill: currentColor;
}
.elementor-widget-nav-menu.sm-nav .elementor-nav-menu--main .elementor-item:hover,
.elementor-widget-nav-menu.sm-nav .elementor-nav-menu--main .elementor-item.elementor-item-active { color: var(--e-global-color-meesters, #5F903A); }
.elementor-widget-nav-menu.sm-nav .elementor-menu-toggle {
  width: 48px; height: 48px; border-radius: 50%; border: 2px solid var(--e-global-color-primary, #22382D);
  background: #fff; color: var(--e-global-color-primary, #22382D); font-size: 22px;
}
.elementor-widget-nav-menu.sm-nav .elementor-menu-toggle svg { fill: var(--e-global-color-primary, #22382D); }
.elementor-widget-nav-menu.sm-nav .elementor-nav-menu--dropdown { background-color: #fff; border-top: 1px solid #ECEAE2; }
.elementor-widget-nav-menu.sm-nav .elementor-nav-menu--dropdown .elementor-item {
  font-family: var(--e-global-typography-menu-font-family, "Archivo"), Arial, sans-serif; font-weight: 700; font-size: 17px;
  color: var(--e-global-color-primary, #22382D); padding: 16px 24px; border-bottom: 1px solid #ECEAE2;
}
.elementor-widget-nav-menu.sm-nav .elementor-nav-menu--dropdown .elementor-item:hover,
.elementor-widget-nav-menu.sm-nav .elementor-nav-menu--dropdown .elementor-item.elementor-item-active { background-color: var(--e-global-color-zand, #F5F4EE); color: var(--e-global-color-primary, #22382D); }

/* ---------- Kaarten ---------- */
.e-con.sm-kaart-donker { background-color: var(--e-global-color-accent, #2B5436); border-radius: 6px; overflow: hidden; color: #fff; }
.e-con.sm-kaart-donker:nth-child(even) { background-color: var(--e-global-color-primary, #22382D); }
.sm-kaart-donker .elementor-widget-heading .elementor-heading-title { color: #fff; }
.sm-kaart-donker .elementor-widget-text-editor { color: rgba(255,255,255,.9); }
.e-con.sm-kaart { background-color: #fff; border-radius: 6px; overflow: hidden; }
.elementor-widget.sm-icoon img { width: 40px; height: 40px; display: block; }
.elementor-widget.sm-icoon-groot img { width: 48px; height: 48px; display: block; }
.elementor-widget.sm-kaartfoto img { width: 100%; height: 210px; object-fit: cover; display: block; }
.e-con.sm-kaartfoto-leeg { background-color: #E4E1D6; }
.elementor-widget.sm-foto img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 6px; display: block; }
.elementor-widget.sm-foto-breed img { width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; border-radius: 6px; display: block; }

/* Uitgelicht project: band over de foto */
.e-con.sm-band { background-color: rgba(20,42,30,.92); }
.e-con.sm-band .elementor-widget-heading .elementor-heading-title { color: #fff; }

/* Opbouw in lagen */
.e-con.sm-laag { border-bottom: 1px solid var(--e-global-color-lijnen, #E2DFD4); }
.e-con.sm-lagen { border-top: 1px solid var(--e-global-color-lijnen, #E2DFD4); }
.e-con.sm-balk-sedum { background-color: var(--e-global-color-secondary, #67993D); border-radius: 15px 15px 3px 3px; }
.e-con.sm-balk-substraat { background-color: var(--e-global-color-substraat, #917860); border-radius: 3px; }
.e-con.sm-balk-drainage { background-color: var(--e-global-color-accent, #2B5436); border-radius: 3px; }
.e-con.sm-balk-dak { background-color: var(--e-global-color-primary, #22382D); border-radius: 4px; }

/* Tekstblokken met een groene lijn erboven */
.e-con.sm-blok { border-top: 3px solid var(--e-global-color-secondary, #67993D); }

/* Lichte vlakken */
.e-con.sm-zandvlak { background-color: var(--e-global-color-zand, #F5F4EE); border-radius: 6px; }

/* ---------- Lijsten ---------- */
.sm-lijst ul { list-style: none; margin: 0; padding: 0; }
.sm-lijst li { position: relative; padding: 0 0 0 34px; margin: 0 0 14px; }
.sm-lijst li:last-child { margin-bottom: 0; }
.sm-lijst li::before {
  content: ""; position: absolute; left: 0; top: .2em; width: 20px; height: 20px; border-radius: 50%;
  background: var(--e-global-color-secondary, #67993D) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23FFFFFF' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5'/%3E%3C/svg%3E") center / 13px 13px no-repeat;
}
.sm-lijst li strong { color: var(--e-global-color-primary, #22382D); }

.sm-stappen ol { counter-reset: stap; list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--e-global-color-lijnen, #E2DFD4); }
.sm-stappen li { counter-increment: stap; position: relative; padding: 22px 0 22px 64px; border-bottom: 1px solid var(--e-global-color-lijnen, #E2DFD4); }
.sm-stappen li::before {
  content: counter(stap); position: absolute; left: 0; top: 20px; width: 40px; height: 40px; border-radius: 50%;
  border: 2px solid var(--e-global-color-accent, #2B5436); color: var(--e-global-color-accent, #2B5436);
  display: flex; align-items: center; justify-content: center; font-weight: 900; font-size: 16px; box-sizing: border-box;
}
.sm-stappen li strong { display: block; font-weight: 900; font-size: 19px; color: var(--e-global-color-primary, #22382D); margin-bottom: 4px; }

.sm-feiten ul { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--e-global-color-lijnen, #E2DFD4); }
.sm-feiten li { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 24px; padding: 14px 0; border-bottom: 1px solid var(--e-global-color-lijnen, #E2DFD4); }
.sm-feiten li strong { font-weight: 700; color: var(--e-global-color-primary, #22382D); }
.sm-feiten li span { text-align: right; }
.sm-feiten a { color: var(--e-global-color-accent, #2B5436); }

/* ---------- Veelgestelde vragen (accordeon) ---------- */
.sm-faq .elementor-accordion { border-top: 1px solid var(--e-global-color-lijnen, #E2DFD4); }
.sm-faq .elementor-accordion .elementor-accordion-item { border: 0; border-bottom: 1px solid var(--e-global-color-lijnen, #E2DFD4); }
.sm-faq .elementor-accordion .elementor-accordion-item + .elementor-accordion-item { border-top: 0; }
.sm-faq .elementor-accordion .elementor-tab-title { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 24px 0; border: 0; cursor: pointer; }
.sm-faq .elementor-accordion .elementor-accordion-icon { display: none; }
.sm-faq .elementor-accordion .elementor-accordion-title,
.sm-faq .elementor-accordion .elementor-tab-title a {
  font-family: var(--e-global-typography-primary-font-family, "Archivo"), Arial, sans-serif; font-weight: 900; font-size: 20px; line-height: 1.25;
  color: var(--e-global-color-primary, #22382D); text-decoration: none;
}
.sm-faq .elementor-accordion .elementor-tab-title::after {
  content: "+"; flex: none; box-sizing: border-box; width: 36px; height: 36px; border-radius: 50%;
  border: 2px solid var(--e-global-color-accent, #2B5436); color: var(--e-global-color-accent, #2B5436);
  display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 22px; line-height: 1;
  transition: transform .3s ease, background-color .25s ease, color .25s ease;
}
.sm-faq .elementor-accordion .elementor-tab-title.elementor-active::after { transform: rotate(45deg); background-color: var(--e-global-color-accent, #2B5436); color: #fff; }
.sm-faq .elementor-accordion .elementor-tab-content { padding: 0 48px 26px 0; border: 0; font-size: 17px; line-height: 1.65; color: var(--e-global-color-text, #22382D); }
@media (max-width: 767px) {
  .sm-faq .elementor-accordion .elementor-tab-content { padding-right: 0; }
  .sm-faq .elementor-accordion .elementor-accordion-title, .sm-faq .elementor-accordion .elementor-tab-title a { font-size: 18px; }
}

/* ---------- Formulier ---------- */
.sm-form .elementor-field-group .elementor-field-label { font-weight: 700; font-size: 15px; color: var(--e-global-color-primary, #22382D); margin-bottom: 6px; }
.sm-form .elementor-field-group .elementor-field-textual,
.sm-form .elementor-field-group .elementor-select-wrapper select {
  border: 1px solid var(--e-global-color-lijnen, #E2DFD4); border-radius: 6px; background-color: #fff;
  padding: 14px 16px; min-height: 52px; font-family: var(--e-global-typography-text-font-family, "Archivo"), Arial, sans-serif;
  font-size: 16px; font-weight: 500; color: var(--e-global-color-text, #22382D);
}
.sm-form .elementor-field-group .elementor-field-textual:focus,
.sm-form .elementor-field-group .elementor-select-wrapper select:focus { border-color: var(--e-global-color-accent, #2B5436); outline: 2px solid var(--e-global-color-sedumlicht, #86BC52); outline-offset: 0; }
.sm-form .elementor-field-type-upload .elementor-field { border: 1px dashed var(--e-global-color-lijnen, #E2DFD4); border-radius: 6px; padding: 14px; background: var(--e-global-color-zand, #F5F4EE); width: 100%; }
.sm-form .elementor-field-type-acceptance .elementor-field-subgroup label { font-size: 15px; }
.sm-form .elementor-field-type-acceptance a { color: var(--e-global-color-accent, #2B5436); }
.sm-form .e-form__buttons { margin-top: 8px; }
.sm-form .elementor-message { font-size: 15px; }

/* ---------- Footer ---------- */
.e-con.sm-footer { background-color: var(--e-global-color-nacht, #142A1E); color: rgba(255,255,255,.82); }
.sm-footer .elementor-widget-heading .elementor-heading-title { color: #fff; font-size: 17px; line-height: 1.2; text-transform: none; }
.sm-footer .elementor-widget-text-editor { color: rgba(255,255,255,.82); font-size: 15px; line-height: 1.6; }
.sm-footer .elementor-widget-text-editor a { color: rgba(255,255,255,.82); text-decoration: none; }
.sm-footer .elementor-widget-text-editor a:hover { color: #fff; }
.sm-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.e-con.sm-footer-bodem { border-top: 1px solid rgba(255,255,255,.14); }
.sm-footer-bodem .elementor-widget-text-editor { font-size: 13px; color: rgba(255,255,255,.62); }
.sm-footer-bodem .elementor-widget-text-editor a { color: rgba(255,255,255,.62); }

/* Lege HTML-widget toch tonen (schema) */
.elementor-widget-html.sm-schema { margin: 0; }
.sm-form .e-form__buttons .elementor-button { width: auto; flex-grow: 0; }
.sm-form .e-form__buttons { justify-content: flex-start; }/* End custom CSS */