.elementor-21147 .elementor-element.elementor-element-zn48029a{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-945a2d8{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-dde09d3{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-0ad969c{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-90ccd97{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-412a8e9{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-dd0fd19 .elementor-button-content-wrapper{flex-direction:row;}.elementor-21147 .elementor-element.elementor-element-c533f51 .elementor-button-content-wrapper{flex-direction:row;}.elementor-21147 .elementor-element.elementor-element-4a913bd .elementor-button-content-wrapper{flex-direction:row;}.elementor-21147 .elementor-element.elementor-element-5e8fdd0{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-675c51f{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-c6f758a{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-78553d5{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-aeb066b{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-b25d490{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-9af4fe5{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-c7f612f{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-7732f9b{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-0b24109{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-e9043f5{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-89eb155{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-daab783{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-4ff2851{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-e6f5d45{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-d8f640b{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-9e39dbf{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-37db382{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-238d99a{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-b9245f8{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21147 .elementor-element.elementor-element-2a1f572{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS *//* knop-widget: wikkels tellen niet mee; kit- en Elementor-knopstijl uit, het ontwerp bepaalt */
.elementor .zvn .elementor-widget.zvn-b,.elementor .zvn .elementor-widget.zvn-b>.elementor-widget-container,.elementor .zvn .zvn-b .elementor-button-wrapper,
.elementor .zvn .zvn-b .elementor-button-content-wrapper,.elementor .zvn .zvn-b .elementor-button-text{display:contents}
.elementor .zvn .zvn-b .elementor-button{background:none;border:0;border-radius:0;padding:0;margin:0;box-shadow:none;font:inherit;line-height:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;fill:currentColor;text-align:inherit;transition:inherit;display:inline;width:auto;min-height:0}
.elementor .zvn .zvn-b .elementor-button-icon{display:contents;font-size:inherit;margin:0}

.zvn{
  
  --white: #ffffff;
  --black: #000000;
  --gold: #df9a14;
  --gold-hover: #dfa03c;
  --navy: #2b2567;
  --navy-deep: #1f1a4c;
  --green: #6a9a31;
  --green-light: #77ab37;
  --teal: #0089ac;
  --grey-soft: #dfe5e8;
  --pink: #d30f4e;
  --terracotta: #d34c1c;
  --blue: #006db7;
  --blue-light: #0079cf;
  --blue-hover: #1652a1;

  --text: #333333;
  --text-muted: #575e62;
  --line: #a8a8a8;
  --line-soft: #e9ebec;

  --sh-1: 0 1px 2px rgba(24,22,60,.06), 0 4px 14px -8px rgba(24,22,60,.18);
  --sh-2: 0 2px 6px rgba(24,22,60,.06), 0 18px 42px -24px rgba(24,22,60,.34);

  --font-body: "Raleway Light", "Raleway", sans-serif;
  --font-bold: "Raleway Bold", "Raleway", sans-serif;
  --font-head: "Raleway", "Raleway Light", sans-serif;

  --container: 1180px;
  --radius-btn: 10px;
  --radius-card: 25px;
}
.zvn *,.zvn *::before,.zvn *::after{ box-sizing: border-box; }
.zvn{ -webkit-text-size-adjust: 100%; }
.zvn{
  margin: 0;
  font-family: var(--font-body);
  font-size: 18px;
  font-weight: 300;
  line-height: 1.5;
  color: var(--text);
  background: var(--white);
  overflow-x: hidden;
}
.zvn img{ max-width: 100%; height: auto; display: block; border: 0; }
.zvn a{ color: inherit; text-decoration: none; }
.zvn ul,.zvn ol{ margin: 0; padding: 0; list-style: none; }
.zvn h1,.zvn h2,.zvn h3,.zvn h4,.zvn h5{ margin: 0; font-weight: 600; }
.zvn h1{ font-family: var(--font-bold); }
.zvn h2{ font-family: var(--font-bold); font-weight: 700; }
.zvn h3,.zvn h4,.zvn h5{ font-family: var(--font-bold); }
.zvn p{ margin: 0 0 1em; }
.zvn p:is(:last-child:not(:where(.nb-t0)),:where(.elementor-widget:last-child>.elementor-widget-container>.nb-t0)){ margin-bottom: 0; }
.zvn .container{
  width: 100%;
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 20px;
}
.zvn .sr-only{
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0);
  white-space: nowrap; border: 0;
}
.zvn .btn{
  display: inline-block;
  font-family: var(--font-bold);
  font-size: 18px;
  line-height: 1;
  color: var(--white);
  background: var(--gold);
  border: 0;
  border-radius: var(--radius-btn);
  padding: 10px 20px;
  cursor: pointer;
  transition: background-color .2s ease;
}
.zvn .btn:hover{ background: var(--gold-hover); }
.zvn .btn--blue{ background: var(--blue); }
.zvn .btn--blue:hover{ background: var(--blue-light); }
.zvn .btn--green{ background: var(--green); }
.zvn .btn--green:hover{ background: var(--green-light); }
.zvn .btn--navy{ background: var(--navy); }
.zvn .btn--navy:hover{ background: #3a3990; }
.zvn .btn--teal{ background: var(--teal); }
.zvn .btn--teal:hover{ background: #00a5c7; }
.zvn .btn--terracotta{ background: var(--terracotta); }
.zvn .btn--terracotta:hover{ background: #e05c2a; }
.zvn .btn--white{
  background: var(--white);
  color: var(--black);
  font-family: var(--font-bold);
}
.zvn .btn--white:hover{ background: #f2f2f2; }
.zvn .btn--ghost-gold{
  background: var(--white);
  color: var(--gold);
  border-radius: 5px;
  padding: 15px 26px;
  font-family: var(--font-head);
  font-weight: 600;
  font-size: 17px;
}
.zvn .btn--ghost-gold:hover{ background: #fdf6ea; }
.zvn .topbar{
  border-bottom: 1px solid var(--line);
  background: var(--white);
}
.zvn .topbar__inner{
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 42px;
}
.zvn .topbar__list{
  display: flex;
  align-items: center;
  gap: 30px;
}
.zvn .topbar__list a{
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-size: 14px;
  color: var(--text-muted);
}
.zvn .topbar__list a:hover{ color: var(--pink); }
.zvn .topbar__list svg{ width: 15px; height: 15px; fill: var(--text-muted); flex: none; }
.zvn .topbar__list li:is(:first-child:not(:where(.nb-t0)),:where(.elementor-widget:first-child>.elementor-widget-container>.nb-t0)) svg{ transform: scaleX(-1); }
.zvn .topbar__social{
  display: flex;
  align-items: center;
  gap: 14px;
}
.zvn .topbar__social svg{ width: 24px; height: 24px; fill: #a8a7a5; }
.zvn .topbar__social a:hover svg{ fill: var(--pink); }
.zvn .masthead{ background: var(--white); }
.zvn .masthead__inner{
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 94px;
  gap: 40px;
}
.zvn .masthead__logo img{ width: 268px; height: auto; }
.zvn .nav ul{
  display: flex;
  align-items: center;
}
.zvn .nav li{ position: relative; }
.zvn .nav ul li a{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 20px;
  font-size: 17px;
  color: var(--black);
  white-space: nowrap;
}
.zvn .nav ul li a:hover{ color: var(--gold); }
.zvn .nav .caret{ width: 9px; height: 9px; fill: currentColor; }
.zvn .nav ul li.is-active a{ color: var(--gold); }
.zvn .nav__sub a.is-current{ color: var(--gold); font-family: var(--font-bold); font-weight: 700; }
.zvn .nav__sub--nieuwbouw a:hover,.zvn .nav__sub--nieuwbouw a.is-current{ color: var(--green); }
.zvn .nav__sub--zakelijk a:hover,.zvn .nav__sub--zakelijk a.is-current{ color: var(--teal); }
.zvn .nav__sub--ontwikkeling a:hover,.zvn .nav__sub--ontwikkeling a.is-current{ color: var(--terracotta); }
.zvn.theme-nieuwbouw   .nav ul li.is-active a{ color: var(--green); }
.zvn.theme-zakelijk    .nav ul li.is-active a{ color: var(--teal); }
.zvn.theme-ontwikkeling .nav ul li.is-active a{ color: var(--terracotta); }
.zvn.theme-overons     .nav ul li.is-active a{ color: var(--navy); }
.zvn .nav__sub{
  position: absolute;
  top: 100%;
  left: 10px;
  min-width: 210px;
  background: var(--white);
  box-shadow: 0 6px 18px rgba(0, 0, 0, .12);
  border-radius: 6px;
  padding: 8px 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s;
  z-index: 40;
}
.zvn .nav li:hover .nav__sub{ opacity: 1; visibility: visible; transform: translateY(0); }
.zvn .nav__sub a{
  display: block;
  padding: 9px 20px;
  font-size: 17px;
  color: var(--text-muted);
}
.zvn .nav__sub a:hover{ color: var(--gold); }
.zvn .nav-toggle-input{ display: none; }
.zvn .sub-toggle-input,.zvn .sub-toggle{ display: none; }
.zvn .nav-toggle{
  display: none;
  background: none;
  border: 0;
  padding: 8px;
  cursor: pointer;
}
.zvn .nav-toggle svg{ width: 28px; height: 28px; fill: var(--navy); }
.zvn .hero-band{
  position: relative;
  background: var(--gold);
}
.zvn .hero-band--green{ background: var(--green); }
.zvn .hero-band--teal{ background: var(--teal); }
.zvn .hero-band--terracotta{ background: var(--terracotta); }
.zvn .hero-band--navy{ background: var(--navy); }
.zvn .hero-band__inner{
  position: relative;
  display: flex;
  align-items: center;
  column-gap: 48px;
  min-height: 422px;
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 20px;
}
.zvn .hero-band__actions{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 15px;
  width: 560px;
  flex: none;
  position: relative;
  z-index: 3;
}
.zvn .hero-band__media{
  position: relative;
  flex: 1 1 520px;
  width: auto;
  min-width: 300px;
  max-width: 640px;
  align-self: center;
  aspect-ratio: 570 / 422;
  height: auto;
  background-size: cover;
  background-position: center;
}
.zvn .hero-band__media::before{
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/04/Header-masker-wonen-v3.png");
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  pointer-events: none;
}
.zvn .hero-band--green .hero-band__media::before{
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/07/Header-masker-nieuwbouw.png");
}
.zvn .hero-band--teal .hero-band__media::before{
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/07/header-mask-zakelijk.png");
}
.zvn .hero-band--terracotta .hero-band__media::before{
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2025/08/Header-masker-project-v3.png");
}
.zvn .hero-band--navy .hero-band__media::before{
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/mask-overons-zvn.png");
}
.zvn .hero-band__badge{
  position: absolute;
  z-index: 2;
}
.zvn .hero-band__badge img{ width: 100%; height: auto; }
.zvn .hero-band__badge--top{ top: 47px; left: -170px; width: 252px; }
.zvn .hero-band__badge--bottom{ top: 291px; left: -36px; width: 163px; }
@media (max-width: 1100px) {.zvn .hero-band__badge--top{ left: 12px; top: 20px; width: clamp(140px, 30%, 200px); }
.zvn .hero-band__badge--bottom{ left: 14px; right: auto; top: auto; bottom: 20px; width: clamp(96px, 20%, 140px); }}
.zvn .hero-photo{
  position: relative;
  min-height: 300px;
  display: flex;
  align-items: center;
  background-color: var(--navy);
  background-size: cover;
  background-position: center 40%;
  background-repeat: no-repeat;
  padding: 64px 0 72px;
  --hero-tint: var(--navy-deep);
}
.zvn .hero-photo::before{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,
    color-mix(in oklab, var(--hero-tint) 88%, transparent) 0%,
    color-mix(in oklab, var(--hero-tint) 55%, transparent) 55%,
    color-mix(in oklab, var(--hero-tint) 18%, transparent) 100%);
}
.zvn .hero-photo .container{ position: relative; z-index: 2; width: 100%; }
.zvn .hero-photo h1{
  font-family: var(--font-bold);
  font-size: clamp(30px, 3.4vw, 40px);
  font-weight: 700;
  line-height: 1.14;
  color: var(--white);
  max-width: 14em;
}
.zvn .hero-photo__sub{
  color: var(--white);
  font-size: 16px;
  line-height: 1.55;
  max-width: 34em;
  margin: 12px 0 22px;
}
.zvn .hero-photo__actions{ display: flex; gap: 10px; flex-wrap: wrap; }
.zvn .hero-photo__actions .pill{ font-size: 19px; padding: 14px 22px; white-space: nowrap; flex: none; }
.zvn .hero-photo__actions .pill svg{ width: 17px; height: 17px; }
.zvn .pill--green{ background: var(--green); color: var(--white); }
.zvn .pill--green:hover{ background: var(--green-light); }
.zvn .pill--teal{ background: var(--teal); color: var(--white); }
.zvn .pill--teal:hover{ background: #00a5c7; }
.zvn .pill--terracotta{ background: var(--terracotta); color: var(--white); }
.zvn .pill--terracotta:hover{ background: #e05c2a; }
.zvn .pill--gold{ background: var(--gold); color: var(--white); }
.zvn .pill--gold:hover{ background: var(--gold-hover); }
.zvn.theme-nieuwbouw .hero-photo{ --hero-tint: color-mix(in oklab, var(--green) 55%, var(--navy-deep)); }
.zvn.theme-zakelijk .hero-photo{ --hero-tint: color-mix(in oklab, var(--teal) 55%, var(--navy-deep)); }
.zvn.theme-ontwikkeling .hero-photo{ --hero-tint: color-mix(in oklab, var(--terracotta) 50%, var(--navy-deep)); }
.zvn.theme-wonen .hero-photo{ --hero-tint: color-mix(in oklab, var(--gold) 38%, var(--navy-deep)); }
.zvn .hero-photo--top{ background-position: top center; }
.zvn .hero-photo--cover{ background-size: cover; }
.zvn .hero-photo__inner{
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 20px;
  height: 100%;
  display: flex;
  align-items: center;
}
.zvn .hero-photo__shape{
  width: 456px;
  height: 354px;
  padding: 60px 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/05/shape-yellow-white.svg");
  background-size: 82%;
  background-position: center;
  background-repeat: no-repeat;
}
.zvn .hero-photo__shape--green{
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/07/shape-green-white.svg");
}
.zvn .hero-photo__shape--blue{
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/07/shape-blue-white.svg");
}
.zvn .hero-photo__shape h1{
  font-family: var(--font-head);
  font-size: 35px;
  font-weight: 600;
  line-height: 38px;
  color: var(--white);
  text-align: center;
}
.zvn .section{ padding: 70px 0; }
.zvn .section--tight{ padding: 45px 0; }
.zvn .section--flush-top{ padding-top: 0; }
.zvn .section__title{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  line-height: 1.2;
  color: var(--navy);
  margin-bottom: 30px;
}
.zvn .section__title--gold{ color: var(--gold); }
.zvn .section__title--green{ color: var(--green); }
.zvn .section__title--teal{ color: var(--teal); }
.zvn .section__title--white{ color: var(--white); }
.zvn .lead{
  font-size: 22px;
  line-height: 1.5;
  color: var(--text);
}
.zvn .rich p{ font-size: 18px; line-height: 27px; margin-bottom: 22px; }
.zvn .rich ul{ margin: 0 0 22px; padding-left: 22px; }
.zvn .rich li{
  position: relative;
  font-size: 18px;
  line-height: 30px;
  padding-left: 18px;
}
.zvn .rich li::before{
  content: "•";
  position: absolute;
  left: 0;
  color: var(--gold);
}
.zvn .media-row{
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 64px;
  align-items: center;
  padding: 32px 0;
}
.zvn .media-row--reverse{ grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.zvn .media-row .media-row__media{
  width: 100%;
  max-width: none;
  height: auto;
  aspect-ratio: 425 / 422;
}
.zvn .media-row .media-row__media .photo,.zvn .media-row .media-row__media .frame{ width: 100%; height: 100%; }
.zvn .media-row--reverse .media-row__media{ order: 2; }
.zvn .media-row--reverse .media-row__body{ order: 1; }
.zvn .media-row__media{
  position: relative;
  width: 369px;
  height: 369px;
}
.zvn .media-row__media img.photo{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.zvn .media-row__media img.frame{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  pointer-events: none;
}
.zvn .shape-photo{
  width: 310px;
  height: 310px;
  object-fit: cover;
  -webkit-mask-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/04/shape_blue.svg");
  mask-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/04/shape_blue.svg");
  -webkit-mask-size: 95%;
  mask-size: 95%;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}
.zvn .shape-photo--yellow{
  -webkit-mask-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/04/shape_yellow.svg");
  mask-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/04/shape_yellow.svg");
}
.zvn .property-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}
.zvn .property-slider{ position: relative; }
.zvn .property-slider__track{
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 60px) / 3);
  gap: 30px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  padding: 6px 0 16px;
  scrollbar-width: none;
}
.zvn .property-slider__track::-webkit-scrollbar{ display: none; }
.zvn .property-slider__track *{ scroll-snap-align: start; }
.zvn .property-slider__nav{
  position: absolute;
  top: 84px;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 50%;
  background: var(--white);
  box-shadow: 0 3px 12px rgba(0, 0, 0, .14);
  cursor: pointer;
  padding: 0;
  z-index: 3;
}
.zvn .property-slider__nav::after{
  content: "";
  position: absolute;
  top: 14px;
  width: 10px;
  height: 10px;
  border-top: 2px solid var(--navy);
  border-left: 2px solid var(--navy);
}
.zvn .property-slider__nav--prev{ left: -50px; }
.zvn .property-slider__nav--prev::after{ left: 16px; transform: rotate(-45deg); }
.zvn .property-slider__nav--next{ right: -50px; }
.zvn .property-slider__nav--next::after{ right: 16px; transform: rotate(135deg); }
.zvn .property-slider__nav img{ display: none; }
@media (max-width: 1300px) {.zvn .property-slider__nav--prev{ left: 6px; }
.zvn .property-slider__nav--next{ right: 6px; }}
.zvn .property{
  position: relative;
  background: var(--white);
  border-radius: var(--radius-card);
  box-shadow: 0 2px 12px rgba(0, 0, 0, .08);
  overflow: hidden;
  display: block;
  transition: transform .2s ease, box-shadow .2s ease;
}
.zvn .property:hover{ transform: translateY(-4px); box-shadow: 0 8px 22px rgba(0, 0, 0, .12); }
.zvn .property__media{
  position: relative;
  height: 200px;
  border-radius: var(--radius-card) var(--radius-card) 0 0;
  overflow: hidden;
}
.zvn .property__media img{ width: 100%; height: 100%; object-fit: cover; }
.zvn .property__label{
  position: absolute;
  top: 14px;
  left: 14px;
  background: var(--blue);
  color: var(--white);
  font-family: var(--font-bold);
  font-weight: 700;
  font-size: 12px;
  line-height: 1;
  letter-spacing: .02em;
  padding: 10px 14px;
  border-radius: var(--radius-btn);
}
.zvn .property__label--sold{ background: #c25330; }
.zvn .property__label--rent{ background: var(--blue-light); }
.zvn .property__body{ padding: 12px 20px 20px; }
.zvn .property__city{
  font-family: var(--font-body);
  font-size: 18px;
  font-weight: 300;
  color: #898989;
  margin: 0;
  text-transform: uppercase;
}
.zvn .property__street{
  font-size: 18px;
  font-weight: 500;
  color: var(--black);
  margin: 2px 0 8px;
}
.zvn .property__price{
  font-size: 15px;
  color: var(--text);
  margin: 0 0 10px;
}
.zvn .property__specs{
  display: flex;
  align-items: center;
  gap: 16px;
  font-size: 12px;
  color: var(--text);
}
.zvn .property__specs span{ display: inline-block; white-space: nowrap; }
.zvn .property__specs svg{ width: 14px; height: 14px; fill: var(--black); vertical-align: -2px; margin-right: 5px; }
.zvn .property__specs sup{ font-size: 9px; line-height: 0; vertical-align: super; }
.zvn .stories{
  position: relative;
  background-color: var(--navy);
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/07/header-wide-zakelijk-3.jpg");
  background-size: cover;
  background-position: center;
  padding: 80px 0;
}
.zvn .stories::before{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(41, 40, 110, .86);
}
.zvn .stories .container{ position: relative; z-index: 2; }
.zvn .stories__title{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  color: var(--white);
}
.zvn .stories__sub{
  font-size: 22px;
  color: var(--white);
  margin: 14px 0 40px;
}
.zvn .stories__grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}
.zvn .story{
  background: #f7f7f7;
  border-radius: 2rem;
  overflow: hidden;
  box-shadow: 1px 1px 7px 1px rgba(0, 0, 0, .04);
  display: flex;
  flex-direction: column;
}
.zvn .story__media{ position: relative; height: 220px; }
.zvn .story__media img{ width: 100%; height: 100%; object-fit: cover; }
.zvn .story__media h3{
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 16px;
  font-family: var(--font-head);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.35;
  color: var(--white);
  text-shadow: 0 1px 6px rgba(0, 0, 0, .5);
}
.zvn .story__body{ padding: 22px 24px 26px; display: flex; flex-direction: column; flex: 1; }
.zvn .story__stars{ display: flex; gap: 4px; margin-bottom: 14px; }
.zvn .story__stars svg{ width: 18px; height: 18px; fill: var(--gold); }
.zvn .story__quote{ font-size: 17px; line-height: 1.55; color: var(--text); margin-bottom: 22px; }
.zvn .story__link{
  margin-top: auto;
  font-size: 17px;
  color: var(--text);
  text-decoration: underline;
}
.zvn .stories__cta{ text-align: center; margin-top: 44px; }
.zvn .teaser{
  display: grid;
  grid-template-columns: 433px 1fr;
  gap: 60px;
  align-items: center;
  padding: 75px 0;
}
.zvn .teaser__media{
  position: relative;
  min-height: 425px;
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/06/foto-10.jpg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.zvn .teaser__media::before{
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-teal.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.zvn .teaser__bubble{
  position: absolute;
  top: -10px;
  left: -47px;
  width: 191px;
  min-height: 186px;
  padding: 56px 28px 32px;
  text-align: center;
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/05/shape_green.svg");
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  color: var(--white);
  font-size: 25px;
  line-height: 28px;
  z-index: 2;
}
.zvn .teaser__bubble strong{ font-family: var(--font-bold); font-weight: 700; }
.zvn .wave-cta{
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/05/inster_bg_pink.svg");
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  min-height: 333px;
  display: flex;
  align-items: center;
  padding: 90px 0 40px;
}
.zvn .wave-cta--blue{ background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/07/instert_bg_blue.svg"); }
.zvn .wave-cta--darkblue{ background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2025/07/inster_bg_darkblue.svg"); }
.zvn .wave-cta__inner{
  display: flex;
  align-items: center;
  gap: 45px;
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 20px;
  width: 100%;
}
.zvn .wave-cta__avatar{
  width: 219px;
  height: 219px;
  flex: none;
  object-fit: cover;
  -webkit-mask-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/04/shape_blue.svg");
  mask-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/04/shape_blue.svg");
  -webkit-mask-size: 100%;
  mask-size: 100%;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}
.zvn .wave-cta h2{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  color: var(--white);
  margin-bottom: 18px;
}
.zvn .wave-cta p{
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 22px;
  color: var(--white);
}
.zvn .wave-cta p a{ text-decoration: underline; }
.zvn .wave-cta svg{ width: 30px; height: 30px; fill: var(--white); flex: none; }
.zvn .quote-band{
  background-size: cover;
  background-position: top center;
  min-height: 517px;
  display: flex;
  align-items: flex-start;
  padding: 90px 0;
}
.zvn .quote-band__inner{ max-width: var(--container); margin: 0 auto; padding: 0 20px; width: 100%; }
.zvn .quote-band h2{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--white);
  max-width: 720px;
  text-shadow: 0 2px 10px rgba(0, 0, 0, .35);
}
.zvn .quote-band__name{
  font-family: var(--font-head);
  font-size: 22px;
  font-weight: 500;
  color: var(--white);
  margin-top: 10px;
  text-shadow: 0 2px 10px rgba(0, 0, 0, .35);
}
.zvn .quote-band .btn{ margin-top: 22px; }
.zvn .social-card{
  display: grid;
  grid-template-columns: 350px 1fr;
  gap: 60px;
  align-items: center;
  border: 1px solid var(--pink);
  border-radius: 22px;
  padding: 10px 60px 10px 0;
  overflow: hidden;
}
.zvn .social-card__media{ padding: 14px 0 0 60px; }
.zvn .social-card h2{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  color: var(--navy);
  margin-bottom: 14px;
}
.zvn .social-card__links{ display: flex; gap: 14px; margin-top: 20px; }
.zvn .social-card__links svg{ width: 28px; height: 28px; fill: var(--pink); }
.zvn .wave-top{
  background: var(--white);
  padding: 80px 0 60px;
  color: var(--text);
}
.zvn .wave-top h2{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  color: var(--navy);
  margin-bottom: 16px;
}
.zvn .wave-top h1{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  color: var(--navy);
  margin-bottom: 16px;
}
.zvn .wave-top p{ font-size: 18px; line-height: 1.5; max-width: 800px; margin-bottom: 24px; }
.zvn .block-list{ color: var(--white); }
.zvn .block-list--green{ background: var(--white); }
.zvn .block-list--terracotta{ background: var(--terracotta); }
.zvn .block-list--navy{ background: var(--navy); }
.zvn .block-list__item{
  display: grid;
  grid-template-columns: 370px 1fr;
  gap: 80px;
  align-items: center;
  padding: 60px 0;
  border-top: 1px solid rgba(255, 255, 255, .35);
}
.zvn .block-list__item:is(:first-child:not(:where(.nb-t0)),:where(.elementor-widget:first-child>.elementor-widget-container>.nb-t0)){ border-top: 0; }
.zvn .block-list__item h2{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  color: var(--white);
  margin-bottom: 16px;
}
.zvn .block-list__item p{ font-size: 18px; line-height: 1.5; margin-bottom: 24px; }
.zvn .block-list__item img{
  width: 310px;
  height: 310px;
  object-fit: cover;
  -webkit-mask-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/04/shape_blue.svg");
  mask-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/04/shape_blue.svg");
  -webkit-mask-size: 95%;
  mask-size: 95%;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}
.zvn .team{ background: var(--navy); color: var(--white); }
.zvn .team__member{
  display: grid;
  grid-template-columns: 370px 1fr;
  gap: 80px;
  align-items: center;
  padding: 55px 0;
  border-top: 1px solid rgba(255, 255, 255, .25);
}
.zvn .team__member--reverse{ grid-template-columns: 1fr 370px; }
.zvn .team__member h2{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  color: var(--white);
  margin-bottom: 16px;
}
.zvn .team__member p{ font-size: 18px; line-height: 30px; color: var(--white); }
.zvn .form-card{
  background: var(--white);
  border-radius: 22px;
  padding: 34px 38px 38px;
  box-shadow: 0 6px 26px rgba(0, 0, 0, .08);
}
.zvn .form-card h2,.zvn .form-card h3{
  font-family: var(--font-head);
  font-size: 24px;
  font-weight: 500;
  color: var(--text);
  margin-bottom: 20px;
}
.zvn .form-grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.zvn .form-grid .full{ grid-column: 1 / -1; }
.zvn .field{
  width: 100%;
  font-family: var(--font-body);
  font-size: 17px;
  color: var(--text);
  background: var(--white);
  border: 1px solid #d9d9d9;
  border-radius: 6px;
  padding: 13px 16px;
}
.zvn .field::placeholder{ color: #9b9b9b; }
.zvn .field:focus{ outline: 2px solid var(--gold); outline-offset: 1px; }
.zvn textarea.field{ min-height: 110px; resize: vertical; }
.zvn .check{
  display: flex;
  align-items: flex-start;
  gap: 9px;
  font-size: 16px;
  margin: 16px 0;
}
.zvn .form-note{
  font-size: 12px;
  line-height: 1.5;
  color: var(--text-muted);
  text-align: center;
  margin-top: 14px;
}
.zvn .form-note a{ color: var(--pink); }
.zvn .form-usps{
  display: flex;
  justify-content: center;
  gap: 34px;
  margin-top: 18px;
  font-size: 16px;
}
.zvn .form-usps span{ display: inline-flex; align-items: center; gap: 8px; }
.zvn .form-usps svg{ width: 17px; height: 17px; fill: var(--gold); }
.zvn .footer-contact{ background: var(--gold); padding: 90px 0; }
.zvn .footer-contact__inner{
  display: grid;
  grid-template-columns: 1fr 620px;
  gap: 80px;
  align-items: start;
}
.zvn .footer-contact h2{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  line-height: 1.2;
  color: var(--white);
  margin-bottom: 16px;
}
.zvn .footer-contact__intro{ color: var(--white); font-size: 18px; line-height: 27px; }
.zvn .footer-contact__list{ margin: 34px 0 40px; display: flex; flex-direction: column; gap: 16px; }
.zvn .footer-contact__list a{
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-size: 18px;
  color: var(--white);
}
.zvn .footer-contact__list a:hover{ text-decoration: underline; }
.zvn .footer-contact__list svg{ width: 18px; height: 18px; fill: var(--white); flex: none; }
.zvn .footer-stats{ display: flex; gap: 26px; flex-wrap: wrap; }
.zvn .footer-stats div{
  background: rgba(255, 255, 255, .18);
  border-radius: 12px;
  padding: 20px 34px;
  text-align: center;
  color: var(--white);
  white-space: nowrap;
}
.zvn .footer-stats h3{ font-family: var(--font-head); font-size: 32px; font-weight: 600; }
.zvn .footer-stats p{ font-size: 16px; margin: 4px 0 0; }
.zvn .footer-links{ background: var(--white); padding: 60px 0; }
.zvn .footer-links__grid{
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 30px;
}
.zvn .footer-links h4{
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 300;
  color: var(--text);
  margin-bottom: 22px;
  white-space: nowrap;
}
.zvn .footer-links h4 strong{ font-family: var(--font-bold); font-weight: 700; }
.zvn .footer-links li{ margin-bottom: 6px; }
.zvn .footer-links a{ font-size: 18px; color: var(--text-muted); }
.zvn .footer-links a:hover{ color: var(--gold); }
.zvn .footer-legal{
  border-top: 1px solid #e6e6e6;
  padding: 12px 0;
  background: var(--white);
}
.zvn .footer-legal__inner{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}
.zvn .footer-legal a{ font-size: 16px; color: var(--text-muted); margin-right: 22px; }
.zvn .footer-legal__logos{ display: flex; align-items: center; gap: 26px; flex-wrap: wrap; }
.zvn .footer-legal__logos img{ height: 26px; width: auto; }
.zvn .footer-bar{ background: var(--navy); color: var(--white); padding: 16px 0; }
.zvn .footer-bar__inner{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
}
.zvn .footer-bar__brand{ font-size: 20px; text-align: left; align-self: center; margin: 0; }
.zvn .footer-bar__brand strong{ font-family: var(--font-bold); font-weight: 700; }
.zvn .footer-bar__regions{ font-size: 13px; line-height: 1.6; text-align: left; }
.zvn .float-cta{
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 60;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  background: var(--gold);
  color: var(--white);
  font-family: var(--font-bold);
  font-size: 18px;
  padding: 16px 24px;
  border-radius: 12px;
  box-shadow: 0 6px 20px rgba(0, 0, 0, .18);
}
.zvn .float-cta:hover{ background: var(--gold-hover); }
.zvn .float-cta svg{ width: 22px; height: 22px; fill: var(--white); }
.zvn .faq{ border-top: 1px solid #e3e3e3; }
.zvn .faq__item{ border-bottom: 1px solid #e3e3e3; }
.zvn .faq__item summary{
  list-style: none;
  cursor: pointer;
  padding: 22px 40px 22px 0;
  position: relative;
  font-family: var(--font-bold);
  font-size: 20px;
  color: var(--navy);
}
.zvn .faq__item summary::-webkit-details-marker{ display: none; }
.zvn .faq__item summary::after{
  content: "";
  position: absolute;
  right: 8px;
  top: 30px;
  width: 10px; height: 10px;
  border-right: 2px solid var(--gold);
  border-bottom: 2px solid var(--gold);
  transform: rotate(45deg);
  transition: transform .2s ease;
}
.zvn .faq__item[open] summary::after{ transform: rotate(-135deg); }
.zvn .faq__body{ padding: 0 0 24px; }
.zvn .faq__body p{ font-size: 18px; line-height: 28px; }
.zvn .news-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 34px; }
.zvn .news-card{
  background: var(--white);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 2px 14px rgba(0, 0, 0, .08);
  display: flex;
  flex-direction: column;
}
.zvn .news-card__media{ height: 210px; }
.zvn .news-card__media img{ width: 100%; height: 100%; object-fit: cover; }
.zvn .news-card__body{ padding: 22px 24px 26px; display: flex; flex-direction: column; flex: 1; }
.zvn .news-card__tags{ display: flex; gap: 8px; margin-bottom: 12px; }
.zvn .news-card__tags span{
  font-size: 12px;
  text-transform: lowercase;
  color: var(--white);
  background: var(--gold);
  border-radius: 20px;
  padding: 4px 12px;
}
.zvn .news-card h3{
  font-family: var(--font-head);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.35;
  color: var(--navy);
  margin-bottom: 14px;
}
.zvn .news-card a.more{ margin-top: auto; font-size: 17px; color: var(--gold); text-decoration: underline; }
.zvn .review-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }
.zvn .review{
  background: #f7f7f7;
  border-radius: 20px;
  padding: 26px 28px 30px;
  display: flex;
  flex-direction: column;
}
.zvn .review__stars{ display: flex; gap: 4px; margin-bottom: 14px; }
.zvn .review__stars svg{ width: 18px; height: 18px; fill: var(--gold); }
.zvn .review p{ font-size: 17px; line-height: 1.55; }
.zvn .review__meta{ margin-top: 18px; font-size: 15px; color: var(--text-muted); }
.zvn .score-band{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 60px;
  background: var(--grey-soft);
  border-radius: 20px;
  padding: 34px 40px;
  margin-bottom: 50px;
}
.zvn .score-band div{ text-align: center; }
.zvn .score-band h3{ font-family: var(--font-head); font-size: 40px; font-weight: 600; color: var(--navy); }
.zvn .score-band p{ font-size: 16px; margin: 4px 0 0; color: var(--text); }
.zvn .contact-grid{ display: grid; grid-template-columns: 1fr 480px; gap: 50px; align-items: start; }
.zvn .contact-tile{
  display: flex;
  align-items: center;
  gap: 22px;
  background: var(--white);
  border-radius: 16px;
  box-shadow: 0 4px 18px rgba(0, 0, 0, .08);
  padding: 24px 28px;
  margin-bottom: 20px;
}
.zvn .contact-tile svg{ width: 34px; height: 34px; fill: var(--navy); flex: none; }
.zvn .contact-tile h3{ font-family: var(--font-bold); font-size: 18px; color: var(--text); }
.zvn .contact-tile p{ font-size: 17px; color: var(--text); margin: 2px 0 0; }
.zvn .map-embed{
  width: 100%;
  height: 340px;
  border: 0;
  border-radius: 16px;
  background: var(--grey-soft);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--navy);
  font-size: 17px;
}
.zvn .check-hero{
  background-size: cover;
  background-position: center;
  padding: 70px 0 90px;
  position: relative;
}
.zvn .check-hero::before{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0, 0, 0, .55) 0%, rgba(0, 0, 0, .25) 100%);
}
.zvn .check-hero .container{ position: relative; z-index: 2; }
.zvn .check-hero__grid{ display: grid; grid-template-columns: 1fr 520px; gap: 60px; align-items: start; }
.zvn .check-hero__pills{ display: flex; gap: 12px; margin-bottom: 22px; }
.zvn .check-hero__pills span{
  background: rgba(255, 255, 255, .9);
  color: var(--navy);
  font-family: var(--font-bold);
  font-size: 14px;
  border-radius: 20px;
  padding: 8px 16px;
}
.zvn .check-hero h1{
  font-family: var(--font-head);
  font-size: 44px;
  font-weight: 600;
  line-height: 1.15;
  color: var(--white);
  margin-bottom: 18px;
}
.zvn .check-hero__intro{ font-size: 20px; line-height: 1.5; color: var(--white); max-width: 560px; }
.zvn .check-hero .form-card p{ color: var(--text); font-size: 17px; line-height: 26px; }
.zvn .check-hero .form-card .form-note{ color: var(--text-muted); font-size: 12px; line-height: 1.5; }
.zvn .check-hero__stats{ display: flex; gap: 26px; margin-top: 34px; }
.zvn .check-hero__stats div{
  background: rgba(255, 255, 255, .16);
  border-radius: 12px;
  padding: 18px 32px;
  color: var(--white);
  text-align: center;
}
.zvn .check-hero__stats h3{ font-family: var(--font-head); font-size: 30px; font-weight: 600; }
.zvn .check-hero__stats div p{ font-size: 15px; margin-top: 4px; color: var(--white); max-width: none; }
@media (max-width: 1180px) {.zvn .teaser{ grid-template-columns: 400px 1fr; gap: 50px; }
.zvn .footer-contact__inner{ grid-template-columns: 1fr 1fr; gap: 50px; }
.zvn .check-hero__grid{ grid-template-columns: 1fr 460px; gap: 40px; }
.zvn .contact-grid{ grid-template-columns: 1fr 400px; }}
@media (max-width: 1024px) {.zvn .stories__grid{ grid-template-columns: repeat(2, 1fr); }
.zvn .property-grid{ grid-template-columns: repeat(2, 1fr); }
.zvn .news-grid{ grid-template-columns: repeat(2, 1fr); }
.zvn .review-grid{ grid-template-columns: repeat(2, 1fr); }
.zvn .footer-links__grid{ grid-template-columns: repeat(3, 1fr); row-gap: 40px; }
.zvn .nav{ display: none; }
.zvn .nav-toggle{ display: block; }
.zvn .nav-toggle-input:checked ~ .nav{
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: var(--white);
    box-shadow: 0 10px 24px rgba(0, 0, 0, .12);
    padding: 12px 20px 20px;
    z-index: 50;
  }
.zvn .nav-toggle-input:checked ~ .nav ul{ flex-direction: column; align-items: stretch; }
.zvn .nav-toggle-input:checked ~ .nav .nav__sub{
    position: static;
    opacity: 1;
    visibility: visible;
    transform: none;
    box-shadow: none;
    padding: 0 0 8px 18px;
    display: none;
  }
.zvn .nav-toggle-input:checked ~ .nav .sub-toggle-input:checked + .sub-toggle + .nav__sub{ display: block; }
.zvn .nav-toggle-input:checked ~ .nav ul li{ position: relative; }
.zvn .nav-toggle-input:checked ~ .nav .sub-toggle{
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    right: 0;
    width: 46px;
    height: 46px;
    cursor: pointer;
  }
.zvn .nav-toggle-input:checked ~ .nav .sub-toggle svg{ width: 13px; height: 13px; fill: var(--navy); transition: transform .18s ease; }
.zvn .nav-toggle-input:checked ~ .nav .sub-toggle-input:checked + .sub-toggle svg{ transform: rotate(180deg); }
.zvn .nav-toggle-input:checked ~ .nav ul li a .caret{ display: none; }
.zvn .masthead__inner{ position: relative; }}
@media (max-width: 1180px) {.zvn .property-slider__nav--prev{ left: 6px; }
.zvn .property-slider__nav--next{ right: 6px; }}
@media (max-width: 1000px) {.zvn .property-slider__track{ grid-auto-columns: calc((100% - 30px) / 2); }}
@media (max-width: 860px) {.zvn .hero-band__inner{ flex-direction: column; align-items: stretch; height: auto; padding: 36px 20px 0; }
.zvn .hero-band__actions{ width: 100%; }
.zvn .hero-band__media{
    align-self: stretch;
    width: auto;
    margin: 46px 0 40px;
    height: 260px;
    border-radius: 24px;
  }
.zvn .hero-band__media{ border-radius: 24px; overflow: visible; }
.zvn .hero-band__media::before{ display: none; }
.zvn .hero-band__media{ -webkit-mask-image: none; mask-image: none; }
.zvn .hero-band__badge--top{ width: 130px; top: -30px; left: 0; }
.zvn .hero-band__badge--bottom{ width: 92px; top: auto; bottom: -26px; left: auto; right: 10px; }
.zvn .property-slider__track{ grid-auto-columns: 84%; }
.zvn .property-slider__nav{ top: 70px; }
.zvn .media-row,.zvn .media-row--reverse,.zvn .teaser,.zvn .block-list__item,.zvn .team__member,.zvn .contact-grid,.zvn .check-hero__grid,.zvn .social-card,.zvn .footer-contact__inner,.zvn .footer-bar__inner{ grid-template-columns: 1fr; gap: 36px; }
.zvn .media-row--reverse .media-row__media{ order: 0; }
.zvn .media-row--reverse .media-row__body{ order: 0; }
.zvn .media-row .media-row__media{ width: 100%; max-width: 369px; height: auto; aspect-ratio: 425 / 422; }
.zvn .social-card{ padding: 0 0 30px; }
.zvn .social-card__media{ padding: 0; }
.zvn .footer-bar__brand{ text-align: left; }
.zvn .hero-photo__shape{ width: 100%; max-width: 456px; padding: 60px 70px; }
.zvn .check-hero h1{ font-size: 34px; }}
@media (max-width: 640px) {.zvn .topbar__list{ gap: 16px; }
.zvn .topbar__list a span{ display: none; }
.zvn .property-grid,.zvn .stories__grid,.zvn .news-grid,.zvn .review-grid{ grid-template-columns: 1fr; }
.zvn .teaser__media{ min-height: 300px; }
.zvn .teaser__bubble{ left: -10px; width: 150px; min-height: 146px; padding: 42px 22px 26px; font-size: 20px; line-height: 24px; }
.zvn .wave-cta__inner{ flex-direction: column; align-items: flex-start; gap: 24px; }
.zvn .wave-cta__avatar{ width: 150px; height: 150px; }
.zvn .wave-cta p{ font-size: 18px; }
.zvn .quote-band{ min-height: 380px; padding: 60px 0; }
.zvn .quote-band h2{ font-size: 24px; }
.zvn .block-list__item img,.zvn .shape-photo{ width: 100%; max-width: 310px; height: auto; aspect-ratio: 1; }
.zvn .footer-links__grid{ grid-template-columns: repeat(2, 1fr); }
.zvn .form-grid{ grid-template-columns: 1fr; }
.zvn .section{ padding: 45px 0; }
.zvn .section__title,.zvn .stories__title,.zvn .wave-cta h2,.zvn .footer-contact h2{ font-size: 26px; }
.zvn .hero-photo{ height: 320px; }
.zvn .hero-photo__shape h1{ font-size: 28px; line-height: 32px; }
.zvn .float-cta{ right: 12px; bottom: 12px; font-size: 16px; padding: 13px 18px; }
.zvn .footer-legal__inner{ flex-direction: column; align-items: flex-start; gap: 18px; }
.zvn .score-band{ flex-direction: column; gap: 22px; }}
.zvn{ --container: 1344px; }
.zvn h1{ font-weight: 700; }
.zvn .section__title{
  font-family: var(--font-bold);
  font-size: 30px;
  font-weight: 700;
  color: var(--navy);
  letter-spacing: -.01em;
  line-height: 1.26;
}
.zvn h1.section__title,.zvn .section__title--h1{
  font-size: 40px;
  font-weight: 700;
  line-height: 1.14;
}
.zvn .section__title--gold,.zvn .section__title--green,.zvn .section__title--teal{ color: var(--navy); }
.zvn .section__title--white{ color: var(--white); font-weight: 400; }
.zvn .btn,.zvn .btn--gold,.zvn .btn--green,.zvn .btn--navy,.zvn .btn--teal,.zvn .btn--terracotta,.zvn .btn--blue{
  background: var(--blue);
  color: var(--white);
  font-family: var(--font-head);
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  padding: 14px 22px;
  border-radius: var(--radius-btn);
  box-shadow: none;
}
.zvn .btn:hover{ background: var(--blue-hover); color: var(--white); }
.zvn .btn--white,.zvn .btn--on-dark{
  background: var(--white);
  color: var(--navy);
  box-shadow: var(--sh-1);
}
.zvn .btn--white:hover,.zvn .btn--on-dark:hover{ background: var(--gold-hover); color: var(--navy); }
.zvn .masthead__cta{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex: none;
  white-space: nowrap;
  background: var(--blue);
  color: var(--white);
  font-family: var(--font-head);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  padding: 10px 17px;
  border-radius: 999px;
}
.zvn .masthead__cta::after{
  content: "";
  width: 6px; height: 6px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
  opacity: .85;
}
.zvn .masthead__cta:hover{ background: var(--blue-hover); box-shadow: var(--sh-1); }
.zvn .masthead__inner{ gap: 24px; }
.zvn .nav{ margin-left: auto; }
@media (max-width: 1024px) {.zvn .masthead__cta{ display: none; }}
.zvn .hero-band__inner{ justify-content: space-between; }
.zvn .hero-band__intro{
  flex: 1 1 360px;
  width: auto;
  min-width: 0;
  max-width: 560px;
  position: relative;
  z-index: 3;
  color: var(--navy);
  padding: 44px 0;
}
.zvn .hero-band__intro h1{
  font-size: clamp(30px, 3.4vw, 40px);
  font-weight: 700;
  line-height: 1.14;
  letter-spacing: -.01em;
  margin-bottom: 16px;
  color: var(--navy);
}
.zvn .hero-band__intro p{
  font-size: 17px;
  line-height: 1.5;
  max-width: 420px;
  margin-bottom: 26px;
}
.zvn .hero-band__intro p.snel-label,.zvn .snel-label{
  font-family: var(--font-head);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .16em;
  line-height: 1.3;
  text-transform: uppercase;
  opacity: .6;
  margin-bottom: 12px;
}
.zvn .snel-nav{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 28px;
}
.zvn .snel-nav a{
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 2px;
  border-bottom: 1px solid rgba(43, 37, 103, .28);
  font-family: var(--font-bold);
  font-size: 15px;
  font-weight: 700;
  color: var(--navy);
}
.zvn .snel-nav a::after{
  content: "";
  margin-left: auto;
  width: 7px; height: 7px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
  opacity: .8;
  transition: transform .18s ease;
}
.zvn .snel-nav a:hover::after{ transform: rotate(-45deg) translate(2px, 2px); }
.zvn .snel-nav__icon{
  width: 34px; height: 34px;
  flex: none;
  border-radius: 50%;
  background: var(--white);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: var(--sh-1);
}
.zvn .snel-nav__icon svg{ width: 15px; height: 15px; fill: var(--navy); }
.zvn .snel-nav{ display: flex; flex-wrap: wrap; gap: 8px; }
.zvn .snel-nav a{
  padding: 8px 14px;
  border-bottom: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, .55);
  color: var(--navy);
  font-size: 14px;
  gap: 8px;
}
.zvn .snel-nav a::after{ margin-left: 4px; width: 6px; height: 6px; }
.zvn .snel-nav__icon{ display: none; }
.zvn .hero-band__intro{ padding: 36px 0; }
.zvn .hero-band__inner{ min-height: 0; }
.zvn .hero-band--gold .hero-band__intro,.zvn .hero-band--navy .hero-band__intro,.zvn .hero-band--terracotta .hero-band__intro,.zvn .hero-band--teal .hero-band__intro,.zvn .hero-band--green .hero-band__intro{ color: var(--white); }
.zvn .hero-band--gold .hero-band__intro h1,.zvn .hero-band--navy .hero-band__intro h1,.zvn .hero-band--terracotta .hero-band__intro h1,.zvn .hero-band--teal .hero-band__intro h1,.zvn .hero-band--green .hero-band__intro h1{ color: var(--white); }
.zvn .hero-band--gold .snel-nav a,.zvn .hero-band--navy .snel-nav a,.zvn .hero-band--terracotta .snel-nav a,.zvn .hero-band--teal .snel-nav a,.zvn .hero-band--green .snel-nav a{
  color: var(--navy);
  border-bottom-color: transparent;
}
@media (max-width: 860px) {.zvn .hero-band__intro{ width: 100%; max-width: none; padding: 48px 0 8px; }
.zvn .snel-nav{ grid-template-columns: 1fr; }}
.zvn .property{
  border-radius: 14px;
  box-shadow: var(--sh-1);
  padding: 14px;
}
.zvn .property:hover{ box-shadow: var(--sh-2); }
.zvn .property__media{
  height: 196px;
  border-radius: 10px;
}
.zvn .property__label{
  top: 10px;
  left: 10px;
  background: var(--navy);
  font-size: 11px;
  letter-spacing: .06em;
  padding: 8px 12px;
  border-radius: 8px;
}
.zvn .property__label--rent{ background: var(--pink); }
.zvn .property__label--sold{ background: var(--pink); }
.zvn .property__label--none{ display: none; }
.zvn .property__body{ padding: 14px 6px 6px; }
.zvn .property__city{
  font-size: 14px;
  color: var(--text-muted);
  text-transform: capitalize;
}
.zvn .property__street{
  font-family: var(--font-bold);
  font-size: 17px;
  font-weight: 700;
  color: var(--navy);
  margin: 2px 0 12px;
}
.zvn .property__pricelabel{
  font-family: var(--font-bold);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--text-muted);
  margin: 0 0 3px;
}
.zvn .property__price{
  font-family: var(--font-bold);
  font-size: 19px;
  font-weight: 700;
  color: var(--navy);
  margin: 0 0 14px;
  white-space: nowrap;
}
.zvn .property__specs{
  border-top: 1px solid var(--line-soft);
  padding-top: 12px;
  gap: 14px;
  font-size: 13px;
  font-family: var(--font-bold);
  font-weight: 600;
  color: var(--navy);
}
.zvn .property__specs svg{ fill: var(--blue); }
.zvn .energy{
  display: inline-block;
  font-family: var(--font-bold);
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  color: var(--white);
  border-radius: 4px;
  padding: 4px 7px;
  background: var(--gold);
}
.zvn .energy--ab{ background: var(--green); }
.zvn .energy--cd{ background: var(--gold); }
.zvn .energy--ef{ background: #ef7900; }
.zvn .energy--g{ background: var(--pink); }
.zvn .property-slider__track{
  grid-auto-columns: calc((100% - 66px) / 4);
  gap: 22px;
}
@media (max-width: 1180px) {.zvn .property-slider__track{ grid-auto-columns: calc((100% - 40px) / 3); }}
@media (max-width: 860px)  {.zvn .property-slider__track{ grid-auto-columns: 84%; }}
.zvn .stories{ background-image: none; padding: 70px 0 80px; }
.zvn .stories::before{ display: none; }
.zvn .stories__title{ font-family: var(--font-bold); font-weight: 700; font-size: 30px; margin-bottom: 40px; }
.zvn .story{
  background: var(--white);
  border-radius: 14px;
  padding: 12px;
  box-shadow: var(--sh-1);
}
.zvn .story__media{ height: 190px; border-radius: 10px; overflow: hidden; }
.zvn .story__title{
  font-family: var(--font-bold);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
  color: var(--navy);
  margin: 14px 6px 10px;
}
.zvn .story__body{ padding: 0 6px 10px; }
.zvn .story__stars{ margin-bottom: 10px; }
.zvn .story__stars svg{ width: 15px; height: 15px; }
.zvn .story__quote{ font-size: 15px; line-height: 1.55; margin-bottom: 16px; }
.zvn .story__link{
  font-family: var(--font-bold);
  font-size: 14px;
  font-weight: 700;
  color: var(--navy);
}
.zvn .aanbod-band{
  position: relative;
  margin-top: 60px;
  padding: 90px 0 70px;
  background: var(--white);
  color: var(--navy);
}
.zvn .aanbod-band::before{
  content: "";
  position: absolute;
  left: 0; right: 0;
  top: -78px;
  height: 80px;
  background: inherit;
  clip-path: ellipse(75% 100% at 50% 100%);
}
.zvn .aanbod-band--navy{ background: var(--navy); color: var(--white); }
.zvn .aanbod-band__title{
  font-family: var(--font-bold);
  font-size: 30px;
  font-weight: 700;
  color: inherit;
  margin-bottom: 30px;
}
.zvn .aanbod-band .property-slider__track{ padding-bottom: 8px; }
.zvn .aanbod-band::before{ display: none; }
.zvn .aanbod-band,.zvn .aanbod-band--navy,.zvn .aanbod-band--green,.zvn .aanbod-band--teal,.zvn .aanbod-band--terracotta{
  background: color-mix(in oklab, var(--grey-soft) 42%, var(--white));
  color: var(--navy);
}
.zvn .aanbod-band__title{ color: var(--navy); }
.zvn .aanbod-band .property-grid{
  grid-template-columns: repeat(auto-fit, minmax(0, 427px));
  justify-content: start;
}
.zvn .energy--cd{ color: var(--navy); }
.zvn .field{ border-radius: 10px; }
.zvn .field:focus{ outline: 2px solid var(--blue); }
.zvn .btn--submit{ width: 100%; justify-content: center; text-align: center; display: block; }
.zvn .form-usps svg{ fill: var(--green); }
.zvn .form-note a{ color: var(--blue); }
.zvn .chips{ display: flex; gap: 10px; margin-bottom: 26px; }
.zvn .chips a{
  font-family: var(--font-bold);
  font-size: 14px;
  font-weight: 600;
  color: var(--navy);
  border: 1px solid var(--grey-soft);
  border-radius: 999px;
  padding: 9px 18px;
}
.zvn .chips a:hover{ border-color: var(--blue); color: var(--blue); }
.zvn .news-card{ border-radius: 14px; box-shadow: var(--sh-1); padding: 12px; }
.zvn .news-card__media{ border-radius: 10px; overflow: hidden; }
.zvn .news-card__body{ padding: 16px 8px 10px; }
.zvn .news-card a.more{
  font-family: var(--font-bold);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--gold);
  text-decoration: none;
}
.zvn .news-card a.more::before{
  content: "";
  display: inline-block;
  width: 6px; height: 6px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
  margin-right: 8px;
  vertical-align: 1px;
}
.zvn .contact-hero{
  position: relative;
  background: var(--navy);
  background-size: cover;
  background-position: center 30%;
  padding: 64px 0 72px;
}
.zvn .contact-hero::before{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(31, 26, 76, .92) 0%, rgba(31, 26, 76, .55) 55%, rgba(31, 26, 76, .18) 100%);
}
.zvn .contact-hero .container{ position: relative; z-index: 2; }
.zvn .contact-hero h1{
  font-size: clamp(30px, 3.4vw, 40px);
  font-weight: 700;
  line-height: 1.14;
  color: var(--white);
  max-width: 480px;
  margin-bottom: 12px;
}
.zvn .contact-hero p{ color: var(--white); font-size: 16px; line-height: 1.55; max-width: 420px; margin-bottom: 24px; }
.zvn .contact-hero__actions{ display: flex; gap: 10px; flex-wrap: wrap; }
.zvn .pill{
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-family: var(--font-bold);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  padding: 12px 18px;
  border-radius: 999px;
}
.zvn .pill svg{ width: 14px; height: 14px; fill: currentColor; }
.zvn .pill[href^="tel:"] svg{ transform: scaleX(-1); }
.zvn .pill--blue{ background: var(--blue); color: var(--white); }
.zvn .pill--blue:hover{ background: var(--blue-hover); }
.zvn .pill--white{ background: var(--white); color: var(--navy); }
.zvn .pill--white:hover{ background: var(--gold-hover); }
.zvn .info-cards{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.zvn .info-card{
  border: 1px solid var(--line-soft);
  border-radius: 14px;
  padding: 26px 28px 24px;
  background: var(--white);
}
.zvn .info-card__icon{
  width: 40px; height: 40px;
  border-radius: 50%;
  border: 1px solid var(--grey-soft);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
}
.zvn .info-card__icon svg{ width: 16px; height: 16px; fill: var(--blue); }
.zvn .info-card h3{ font-family: var(--font-bold); font-size: 20px; font-weight: 700; color: var(--navy); margin-bottom: 4px; }
.zvn .info-card__value{ font-family: var(--font-bold); font-size: 16px; font-weight: 700; color: var(--navy); margin: 0 0 4px; }
.zvn .info-card__note{ font-size: 14px; color: var(--text-muted); margin: 0 0 14px; }
.zvn .info-card__link{ font-family: var(--font-bold); font-size: 14px; font-weight: 700; color: var(--blue); }
.zvn .info-card__link::after{
  content: "";
  display: inline-block;
  width: 6px; height: 6px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
  margin-left: 7px;
  vertical-align: 1px;
}
.zvn .contact-split{ display: grid; grid-template-columns: 1fr 440px; gap: 26px; align-items: start; }
.zvn .panel{
  border: 1px solid var(--line-soft);
  border-radius: 14px;
  background: var(--white);
  padding: 28px 30px;
}
.zvn .panel h2{ font-family: var(--font-bold); font-size: 22px; font-weight: 700; color: var(--navy); margin-bottom: 6px; }
.zvn .panel .sub{ font-size: 15px; color: var(--text-muted); margin-bottom: 22px; }
.zvn .field-label{ display: block; font-family: var(--font-bold); font-size: 13px; font-weight: 700; color: var(--navy); margin: 0 0 6px; }
.zvn .panel--navy{
  background: var(--navy);
  border: 0;
  color: var(--white);
}
.zvn .panel--navy h3{ font-family: var(--font-bold); font-size: 18px; color: var(--white); margin-bottom: 16px; }
.zvn .check-list{ display: flex; flex-direction: column; gap: 12px; margin-bottom: 22px; }
.zvn .check-list span{ display: flex; gap: 10px; font-size: 15px; line-height: 1.45; }
.zvn .check-list svg{ width: 15px; height: 15px; fill: var(--green-light); flex: none; margin-top: 3px; }
.zvn .stat-tiles{ display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.zvn .stat-tiles div{
  background: rgba(255, 255, 255, .12);
  border-radius: 10px;
  padding: 14px 16px;
}
.zvn .stat-tiles h4{ font-family: var(--font-bold); font-size: 22px; font-weight: 700; color: var(--white); }
.zvn .stat-tiles p{ font-size: 13px; color: rgba(255, 255, 255, .85); margin: 3px 0 0; }
.zvn .avatar-row{ display: flex; margin: 6px 0 12px; }
.zvn .avatar-row img{
  width: 38px; height: 38px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--white);
  margin-right: -8px;
}
.zvn .map-band{ position: relative; }
.zvn .map-band img.map{ width: 100%; height: 380px; object-fit: cover; display: block; }
.zvn .map-band__card{
  position: absolute;
  top: 50%;
  right: 8%;
  transform: translateY(-50%);
  background: var(--white);
  border-radius: 14px;
  box-shadow: var(--sh-2);
  padding: 24px 28px;
  max-width: 300px;
}
.zvn .map-band__card h3{ font-family: var(--font-bold); font-size: 17px; color: var(--navy); margin-bottom: 8px; }
.zvn .map-band__card p{ font-size: 15px; color: var(--text); margin-bottom: 10px; }
.zvn .gold-slot{
  background: var(--gold);
  text-align: center;
  padding: 34px 20px;
}
.zvn .gold-slot h2{ font-family: var(--font-bold); font-size: 24px; font-weight: 700; color: var(--navy); }
.zvn .gold-slot p{ font-size: 14px; color: var(--navy); margin: 4px 0 0; }
.zvn .wcheck-hero{ background: var(--gold); padding: 64px 0 72px; }
.zvn .wcheck-hero__grid{ display: grid; grid-template-columns: 1fr 520px; gap: 60px; align-items: start; }
.zvn .wcheck-hero h1{
  font-size: clamp(30px, 3.4vw, 40px);
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 14px;
}
.zvn .wcheck-hero__intro{ font-size: 17px; line-height: 1.55; color: var(--navy); max-width: 480px; }
.zvn .wcheck-hero__stats{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; max-width: 420px; margin-top: 28px; }
.zvn .wcheck-hero__stats div{
  background: var(--white);
  border-radius: 12px;
  padding: 18px 22px;
  text-align: center;
  box-shadow: var(--sh-1);
}
.zvn .wcheck-hero__stats h3{ font-family: var(--font-bold); font-size: 26px; font-weight: 700; color: var(--navy); }
.zvn .wcheck-hero__stats p{ font-size: 14px; color: var(--text-muted); margin: 4px 0 0; }
.zvn .makelaar-note{
  display: flex;
  gap: 14px;
  align-items: flex-start;
  background: var(--white);
  border-radius: 12px;
  box-shadow: var(--sh-1);
  padding: 16px 20px;
  max-width: 420px;
  margin-top: 16px;
}
.zvn .makelaar-note img{ width: 44px; height: 44px; border-radius: 50%; object-fit: cover; flex: none; }
.zvn .makelaar-note h4{ font-family: var(--font-bold); font-size: 15px; color: var(--navy); }
.zvn .makelaar-note .rol{ font-size: 12px; color: var(--text-muted); margin: 0 0 6px; }
.zvn .makelaar-note p{ font-size: 14px; line-height: 1.45; color: var(--text); margin: 0; }
.zvn .stepper{ display: flex; align-items: center; gap: 10px; margin-bottom: 20px; }
.zvn .stepper span{
  width: 26px; height: 26px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-bold);
  font-size: 13px;
  flex: none;
}
.zvn .stepper .is-actief{ border: 2px solid var(--green); color: var(--green); }
.zvn .stepper .is-rest{ border: 1px solid var(--grey-soft); color: var(--text-muted); }
.zvn .stepper hr{ flex: 1; border: 0; border-top: 1px solid var(--grey-soft); margin: 0; }
.zvn .wcheck-usps{ display: flex; flex-direction: column; gap: 10px; margin-top: 18px; }
.zvn .wcheck-usps span{ display: flex; gap: 10px; font-size: 15px; color: var(--text); }
.zvn .wcheck-usps svg{ width: 15px; height: 15px; fill: var(--gold); flex: none; margin-top: 3px; }
.zvn .quote-overlay{
  position: relative;
}
.zvn .quote-overlay img.bg{ width: 100%; height: 460px; object-fit: cover; object-position: center 25%; display: block; }
.zvn .quote-overlay__card{
  position: absolute;
  top: 44px;
  left: max(20px, calc((100% - var(--container)) / 2 + 20px));
  background: var(--navy);
  color: var(--white);
  border-radius: 14px;
  padding: 26px 30px;
  max-width: 380px;
}
.zvn .quote-overlay__card p{ font-size: 17px; line-height: 1.5; margin-bottom: 12px; }
.zvn .quote-overlay__card .naam{ font-size: 13px; color: rgba(255, 255, 255, .8); margin: 0; }
.zvn .archief-kop{
  font-size: clamp(28px, 3vw, 36px);
  font-weight: 700;
  color: var(--navy);
  margin: 40px 0 20px;
}
.zvn .filterbar{ display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.zvn .filterbar__zoek{
  display: inline-flex;
  align-items: center;
  gap: 9px;
  border: 1px solid var(--grey-soft);
  border-radius: 999px;
  padding: 0 16px;
  height: 40px;
  min-width: 230px;
  color: var(--text-muted);
  font-size: 14px;
}
.zvn .filterbar__zoek svg{ width: 13px; height: 13px; fill: var(--text-muted); }
.zvn .filterbar__chip{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 40px;
  padding: 0 16px;
  border: 1px solid var(--grey-soft);
  border-radius: 999px;
  font-family: var(--font-bold);
  font-size: 14px;
  font-weight: 600;
  color: var(--navy);
  background: var(--white);
}
.zvn .filterbar__chip::after{
  content: "";
  width: 6px; height: 6px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translate(-1px, -1px);
  opacity: .7;
}
.zvn .filterbar__chip:hover{ border-color: var(--blue); color: var(--blue); }
.zvn .sorteer-rij{
  display: flex;
  justify-content: flex-end;
  border-bottom: 1px solid var(--line-soft);
  padding: 14px 0;
  margin-bottom: 26px;
}
.zvn .sorteer-rij span{ font-size: 14px; color: var(--text-muted); }
.zvn .woning-grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
  align-items: stretch;
}
.zvn .woning-grid .property{ display: flex; flex-direction: column; }
.zvn .woning-grid .property__media{ height: 172px; }
.zvn .woning-grid .property__body{ display: flex; flex-direction: column; flex: 1; }
.zvn .woning-grid .property__specs{ margin-top: auto; }
.zvn .promo-tile{
  background: var(--gold);
  border-radius: 14px;
  padding: 26px 24px;
  color: var(--navy);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.zvn .promo-tile__icon{
  width: 40px; height: 40px;
  border-radius: 50%;
  background: var(--white);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 34px;
}
.zvn .promo-tile__icon svg{ width: 16px; height: 16px; fill: var(--navy); }
.zvn.theme-nieuwbouw .promo-tile{ background: var(--green); color: var(--white); }
.zvn.theme-zakelijk .promo-tile{ background: var(--teal); color: var(--white); }
.zvn.theme-ontwikkeling .promo-tile{ background: var(--terracotta); color: var(--white); }
.zvn .promo-tile h3{ font-family: var(--font-bold); font-size: 19px; font-weight: 700; margin-bottom: 10px; }
.zvn .promo-tile p{ font-size: 14px; line-height: 1.5; margin-bottom: 20px; }
.zvn .promo-tile .btn--white{ margin-bottom: 22px; }
.zvn .promo-tile__voet{ display: flex; align-items: center; gap: 10px; font-size: 13px; margin-top: auto; }
.zvn .promo-tile__voet .avatar-row img{ width: 28px; height: 28px; border-width: 1.5px; }
@media (max-width: 1180px) {.zvn .woning-grid{ grid-template-columns: repeat(3, 1fr); }}
@media (max-width: 900px)  {.zvn .woning-grid{ grid-template-columns: repeat(2, 1fr); }}
@media (max-width: 600px)  {.zvn .woning-grid{ grid-template-columns: 1fr; }}
.zvn .hypo-kaart{
  border: 1px solid var(--pink);
  border-radius: 16px;
  padding: 34px 40px;
  display: grid;
  grid-template-columns: 1fr 120px;
  gap: 40px;
  align-items: center;
}
.zvn .hypo-kaart h2{ font-family: var(--font-bold); font-size: 26px; font-weight: 700; color: var(--blue); margin-bottom: 12px; }
.zvn .blob-link{
  position: absolute;
  top: -6px;
  left: -26px;
  width: 108px;
  height: 104px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/04/shape_pink.svg");
  background-size: 100% 100%;
  color: var(--white);
  font-size: 15px;
  text-align: center;
  text-decoration: underline;
  z-index: 3;
}
.zvn .footer-contact h2{ font-family: var(--font-bold); font-weight: 700; }
.zvn .footer-contact .form-card h2,.zvn .footer-contact .form-card h3{ color: var(--navy); font-size: 24px; }
.zvn .wave-cta h2{ font-family: var(--font-bold); font-weight: 700; }
.zvn .stories__title{ color: var(--white); }
.zvn .block-list__item h2,.zvn .wave-top h2,.zvn .team__member h2{ font-weight: 400; }
.zvn .quote-band h2{ font-weight: 400; font-size: 28px; }
.zvn .section--hairline{ border-top: 1px solid var(--line-soft); }
.zvn .stories__intro{ color: rgba(255, 255, 255, .88); font-size: 16px; line-height: 1.55; max-width: 520px; margin: -22px 0 28px; }
.zvn .stories__stats{ display: flex; gap: 14px; margin-bottom: 38px; flex-wrap: wrap; }
.zvn .stories__stats div{
  background: rgba(255, 255, 255, .1);
  border-radius: 10px;
  padding: 14px 24px;
  min-width: 150px;
}
.zvn .stories__stats h3{ font-family: var(--font-bold); font-size: 20px; font-weight: 700; color: var(--white); }
.zvn .stories__stats p{ font-size: 13px; color: rgba(255, 255, 255, .82); margin: 2px 0 0; }
.zvn .stories__grid--drie{ grid-template-columns: repeat(3, 1fr); }
@media (max-width: 720px) {.zvn .stories__grid,.zvn .stories__grid--drie{
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: none;
    grid-auto-columns: 84%;
    gap: 30px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    margin: 0 -20px;
    padding: 4px 20px 16px;
  }
.zvn .stories__grid::-webkit-scrollbar,.zvn .stories__grid--drie::-webkit-scrollbar{ display: none; }
.zvn .stories__grid *{ scroll-snap-align: start; }}
.zvn .stories{ background-color: color-mix(in oklab, var(--grey-soft) 42%, var(--white)); }
.zvn .stories__title{ color: var(--navy); }
.zvn .stories__sub{ color: var(--text); }
.zvn .stories__intro{ color: var(--text); }
.zvn .stories__stats div{
  background: color-mix(in oklab, var(--blue) 14%, var(--white));
  border-radius: 14px;
}
.zvn .stories__stats h3{ color: var(--navy); }
.zvn .stories__stats p{ color: #5c5c5c; }
@media (max-width: 1024px) {.zvn .stories__grid--drie{ grid-template-columns: repeat(2, 1fr); }}
@media (max-width: 640px)  {.zvn .stories__grid--drie{ grid-template-columns: 1fr; }}
.zvn .block-list--green .block-list__item h2,.zvn .block-list--green .block-list__item p{ color: #202527; }
.zvn .block-list--green .block-list__item h2{ font-family: var(--font-bold); font-weight: 700; }
.zvn .block-list--green .block-list__item{ border-top-color: rgba(43, 37, 103, .18); }
.zvn .block-list--green .block-list__item h2{ color: var(--navy); }
.zvn .block-list--green .block-list__item p{ color: #333; }
.zvn .block-list--plain{ background: var(--white); color: var(--text); }
.zvn .block-list--plain .block-list__item{ border-top-color: var(--line-soft); }
.zvn .block-list--plain .block-list__item h2{ color: var(--navy); font-family: var(--font-bold); font-weight: 700; }
.zvn .block-list--plain .block-list__item p{ color: var(--text-muted); }
.zvn .faq{ border-top: 0; }
.zvn .faq__item{
  border: 1px solid var(--line-soft);
  border-radius: 10px;
  margin-bottom: 12px;
}
.zvn .faq__item summary{ padding: 18px 46px 18px 20px; font-size: 17px; }
.zvn .faq__item summary::after{ right: 20px; top: 25px; border-color: var(--navy); }
.zvn .faq__body{ padding: 0 20px 20px; }
.zvn .faq__body p{ font-size: 16px; line-height: 26px; }
.zvn .topbar__proof{ margin-left: auto; margin-right: 18px; font-size: 13px; color: var(--text-muted); white-space: nowrap; }
.zvn .topbar__proof strong{ font-family: var(--font-bold); color: var(--navy); }
.zvn .topbar__proof .sep{ margin: 0 7px; opacity: .6; }
@media (max-width: 900px) {.zvn .topbar__proof{ display: none; }}
.zvn.theme-zakelijk .media-row__media img.frame{ display: none; }
.zvn .footer-contact{
  position: relative;
  background-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/07/header-wide-overons-1.jpg");
  background-size: cover;
  background-position: center;
}
.zvn .footer-contact::before{
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(43, 37, 103, .55);
}
.zvn .footer-contact .container{ position: relative; z-index: 1; }
.zvn .footer-contact__inner{
  grid-template-columns: minmax(0, 1fr) 560px;
  gap: 72px;
  align-items: center;
}
.zvn .footer-contact .form-card{ order: 0; }
.zvn .footer-contact h2,.zvn .footer-contact__intro,.zvn .footer-contact__list a,.zvn .footer-contact__list li{ color: var(--white); }
.zvn .footer-contact__list svg{ fill: var(--white); }
.zvn .footer-contact .form-card h2{ color: var(--navy); }
.zvn .footer-contact .footer-stats{ display: none; }
.zvn .footer-contact__team{ display: flex; gap: 20px; margin: 28px 0 0; }
.zvn .footer-contact__team figure{ margin: 0; text-align: center; }
.zvn .footer-contact__team img{
  width: 84px;
  height: 84px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid var(--white);
}
.zvn .footer-contact__team figcaption{
  font-family: var(--font-bold);
  font-size: 16px;
  font-weight: 700;
  color: var(--white);
  margin-top: 8px;
}
.zvn .footer-contact__list{ margin-top: 28px; }
@media (max-width: 1180px) {.zvn .footer-contact__inner{ grid-template-columns: minmax(0, 1fr) minmax(0, 440px); gap: 48px; }}
@media (max-width: 860px) {.zvn .footer-contact__inner{ grid-template-columns: 1fr; gap: 36px; }
.zvn .footer-contact .form-card{ order: 0; }
.zvn .footer-contact__team{ gap: 14px; }
.zvn .footer-contact__team img{ width: 68px; height: 68px; }}
.zvn .footer-contact--green{ background-color: var(--green); }
.zvn .footer-contact--teal{ background-color: var(--teal); }
.zvn .footer-contact--terracotta{ background-color: var(--terracotta); }
.zvn{ --section-y: 84px; }
.zvn .section,.zvn .stories,.zvn .block-list,.zvn .footer-contact,.zvn .aanbod-band,.zvn .quote-band,.zvn .wave-top,.zvn .wave-cta{
  padding-top: var(--section-y);
  padding-bottom: var(--section-y);
}
.zvn .aanbod-band{ padding-top: calc(var(--section-y) + 20px); margin-top: 0; }
.zvn .wave-cta{ padding-top: calc(var(--section-y) + 20px); }
.zvn .ontwikkel-band + .wave-cta,.zvn .projecten-band + .wave-cta,.zvn .diensten-band + .wave-cta,.zvn .taxatie-band + .wave-cta,.zvn .teamband + .wave-cta,.zvn .wens-band + .wave-cta,.zvn .block-list + .wave-cta,.zvn .quote-band + .wave-cta,.zvn .stories + .wave-cta,.zvn .aanbod-band + .wave-cta{ margin-top: var(--section-y); }
.zvn .section--flush-top{ padding-top: 0; }
.zvn .section--tight{ padding-top: calc(var(--section-y) * .66); padding-bottom: calc(var(--section-y) * .66); }
.zvn .section + .section{ padding-top: 0; }
.zvn .media-row:not(.media-row--panel){ padding-top: 0; padding-bottom: 0; }
.zvn .media-row + .media-row{ margin-top: var(--section-y); }
@media (max-width: 1024px) {.zvn{ --section-y: 64px; }}
@media (max-width: 860px) {.zvn{ --section-y: 52px; }}
.zvn .rich .intro-panel__eyebrow,.zvn .intro-panel__eyebrow{
  font-family: var(--font-bold);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--navy);
  margin-bottom: 6px;
}
.zvn .intro-panel__media{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  align-self: center;
}
.zvn .intro-panel__media img{
  width: 100%;
  aspect-ratio: 3 / 4;
  object-fit: cover;
  border-radius: var(--radius-card);
}
.zvn .intro-panel__media img:is(:first-child:not(:where(.nb-t0)),:where(.elementor-widget:first-child>.elementor-widget-container>.nb-t0)){ transform: translateY(-24px); }
.zvn .intro-panel__media img:is(:last-child:not(:where(.nb-t0)),:where(.elementor-widget:last-child>.elementor-widget-container>.nb-t0)){ transform: translateY(24px); }
.zvn .media-row--panel{
  background: color-mix(in oklab, var(--grey-soft) 42%, var(--white));
  border-radius: var(--radius-card);
  padding: 44px 48px;
  gap: 48px;
}
.zvn .media-row:not(.media-row--panel){ padding-top: 0; padding-bottom: 0; }
.zvn .media-row + .media-row{ margin-top: var(--section-y); }
.zvn .media-row__media--plain .photo{ border-radius: var(--radius-card); }
.zvn .media-row__media img.frame{ display: none; }
.zvn .media-row__media .photo{
  -webkit-mask-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/04/shape_blue.svg");
  mask-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/04/shape_blue.svg");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}
.zvn .media-row--panel .media-row__media img.frame{ display: none; }
.zvn .media-row--panel .media-row__media .photo{ border-radius: var(--radius-card); }
.zvn .credentials--2plus1 li:is(:nth-child(2):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(2)>.elementor-widget-container>.nb-t0)){ margin-right: auto; }
.zvn .credentials--2plus1 li:is(:nth-child(3):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3)>.elementor-widget-container>.nb-t0)){ flex-basis: 100%; max-width: fit-content; }
.zvn .taken-grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.zvn .taken-kaart{
  background: var(--white);
  border-radius: 16px;
  padding: 20px 24px;
  font-size: 17px;
  line-height: 1.5;
  color: var(--navy);
  box-shadow: 0 2px 10px rgba(0, 0, 0, .05);
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.zvn .taken-kaart::before{
  content: "";
  flex: none;
  width: 14px;
  height: 14px;
  margin-top: 5px;
  border-radius: 0;
  background: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/cropped-favicon-32x32-1.png") center / contain no-repeat;
}
@media (max-width: 860px) {.zvn .taken-grid{ grid-template-columns: 1fr; }}
.zvn .diensten-band{
  background: color-mix(in oklab, var(--grey-soft) 42%, var(--white));
  padding-top: var(--section-y);
  padding-bottom: var(--section-y);
}
.zvn .diensten-grid{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.zvn .diensten-kaart{
  background: var(--white);
  border-radius: var(--radius-card);
  padding: 14px 14px 26px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, .06);
  display: flex;
  flex-direction: column;
}
.zvn .diensten-kaart__media{ height: 200px; border-radius: 14px; overflow: hidden; }
.zvn .diensten-kaart__media img{ width: 100%; height: 100%; object-fit: cover; }
.zvn .diensten-kaart h3{
  font-family: var(--font-bold);
  font-size: 22px;
  font-weight: 700;
  color: var(--navy);
  margin: 18px 12px 10px;
}
.zvn .diensten-kaart p{ font-size: 16px; line-height: 1.6; margin: 0 12px 18px; }
.zvn .diensten-kaart__link{
  margin: auto 12px 0;
  font-family: var(--font-bold);
  font-size: 15px;
  font-weight: 700;
  color: var(--navy);
}
.zvn .credentials{ list-style: none; margin: 24px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.zvn .rich .credentials{ padding-left: 0; }
.zvn .rich .credentials li::before{ content: none; }
.zvn .rich .credentials li,.zvn .credentials li{
  font-family: var(--font-bold);
  font-size: 14px;
  font-weight: 700;
  color: var(--navy);
  background: color-mix(in oklab, var(--teal) 20%, var(--white));
  border-radius: 999px;
  padding: 8px 16px;
}
@media (max-width: 1024px) {.zvn .diensten-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }}
@media (max-width: 860px) {.zvn .media-row--panel{ padding: 28px 24px; gap: 24px; }
.zvn .intro-panel__media img:is(:first-child:not(:where(.nb-t0)),:where(.elementor-widget:first-child>.elementor-widget-container>.nb-t0)),.zvn .intro-panel__media img:is(:last-child:not(:where(.nb-t0)),:where(.elementor-widget:last-child>.elementor-widget-container>.nb-t0)){ transform: none; }
.zvn .diensten-grid{ grid-template-columns: 1fr; }}
.zvn .btn--gold{ background: var(--gold); }
.zvn .btn--gold:hover{ background: var(--gold-hover); }
.zvn .btn--green{ background: var(--green); }
.zvn .btn--green:hover{ background: var(--green-light); }
.zvn .btn--navy{ background: var(--navy); }
.zvn .btn--navy:hover{ background: #3a3990; }
.zvn .btn--teal{ background: var(--teal); }
.zvn .btn--teal:hover{ background: #00a5c7; }
.zvn .btn--terracotta{ background: var(--terracotta); }
.zvn .btn--terracotta:hover{ background: #e05c2a; }
.zvn.theme-zakelijk .media-row--panel .media-row__media img.frame,.zvn .media-row--panel .media-row__media img.frame{ display: none; }
.zvn .section__title,.zvn .section__title--gold,.zvn .section__title--green,.zvn .section__title--teal,.zvn .hypo-kaart h2{ color: var(--navy); }
@media (max-width: 860px) {.zvn .teaser{
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 28px !important;
  }
.zvn .teaser__body{ order: 1; }
.zvn .teaser__media{ order: 2; min-height: 300px; }
.zvn .teaser__bubble{ left: 0 !important; }}
@media (max-width: 720px) {.zvn .hypo-kaart{
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 24px !important;
    justify-items: start;
    padding: 28px 24px;
  }}
@media (max-width: 720px) {.zvn .stories--grid .stories__grid,.zvn .stories--grid .stories__grid--drie{
    display: grid !important;
    grid-auto-flow: row !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-auto-columns: auto !important;
    gap: 20px !important;
    overflow-x: visible !important;
    margin: 0 !important;
    padding: 0 !important;
  }}
@media (max-width: 720px) {.zvn .footer-links__grid{
    grid-template-columns: minmax(0, 1fr) !important;
    row-gap: 32px !important;
  }
.zvn .footer-bar__inner{
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
  }
.zvn .footer-legal__inner{ flex-direction: column; align-items: flex-start; gap: 18px; }
.zvn .footer-legal__logos{ gap: 18px; }}
.zvn .masthead__cta,.zvn .pill,.zvn .float-cta,.zvn .snel-nav a,.zvn .chips a,.zvn .filterbar__zoek,.zvn .filterbar__chip{ border-radius: var(--radius-btn); }
.zvn .promo-tile{ background: var(--navy); color: var(--white); }
.zvn .promo-tile__icon{ background: var(--white); }
.zvn .promo-tile__icon svg{ fill: var(--navy); }
.zvn.theme-nieuwbouw .promo-tile{ background: color-mix(in oklab, var(--green) 30%, var(--navy)); }
.zvn.theme-zakelijk .promo-tile{ background: color-mix(in oklab, var(--teal) 30%, var(--navy)); }
.zvn.theme-ontwikkeling .promo-tile{ background: color-mix(in oklab, var(--terracotta) 28%, var(--navy)); }
.zvn.theme-nieuwbouw .promo-tile,.zvn.theme-zakelijk .promo-tile,.zvn.theme-ontwikkeling .promo-tile{ color: var(--white); }
.zvn .promo-tile p{ font-size: 15px; color: var(--white); }
.zvn .promo-tile__voet{ font-size: 14px; color: var(--white); }
.zvn .promo-tile .btn--white{ background: var(--white); color: var(--navy); }
.zvn .rich .check-list{ list-style: none; padding-left: 0; }
.zvn .rich .check-list li{
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding-left: 0;
  list-style: none;
}
.zvn .rich .check-list li::before,.zvn .rich .check-list li::marker{ content: none; }
.zvn .rich .check-list li svg{ flex: none; width: 17px; height: 17px; margin-top: 4px; fill: var(--gold); }
.zvn .rich .check-list li span{ display: inline; font-size: 17px; line-height: 1.55; }
.zvn.theme-nieuwbouw .rich .check-list li svg{ fill: var(--green); }
.zvn.theme-zakelijk .rich .check-list li svg{ fill: var(--teal); }
.zvn.theme-ontwikkeling .rich .check-list li svg{ fill: var(--terracotta); }
.zvn .media-row:not(.media-row--panel) .media-row__media img.frame{ display: block !important; }
.zvn .media-row__media:not(.media-row__media--plain) img.photo,.zvn .teamkaart--kader .teamkaart__media img.photo,.zvn .teaser__media{
  -webkit-mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-vorm.png") center / contain no-repeat;
  mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-vorm.png") center / contain no-repeat;
}
.zvn .media-row--panel .media-row__media:not(.media-row__media--plain) img.frame{ display: block !important; }
.zvn .media-row--panel .media-row__media:not(.media-row__media--plain){ aspect-ratio: 425 / 422; }
.zvn .property__city{ text-transform: capitalize !important; }
/* ==========================================================================
   zvn-extra: aanpassingen bovenop het ontwerp, uit de feedback van Zaat
   (punten 17-09, feedback 21-09 en de meeting van 24-09-2026).
   bouw.py plakt dit achter de afgeschermde ontwerp-CSS. Alles staat
   al onder .zvn, dus hier niet opnieuw scopen.
   ========================================================================== */

/* De Elementor-containers om de blokken heen mogen niets toevoegen. */
.zvn-blok, .zvn-slot { --gap: 0px; --padding-top: 0px; --padding-bottom: 0px; }
.zvn-blok .elementor-widget-html, .zvn-slot .elementor-widget { margin: 0 !important; width: 100%; }
.zvn-blok .zvn { font-size: 18px; }

/* 1. Eén knopvorm: rechthoek met afgeronde hoeken, ook voor de pillen in
      de hero (punten 17-09: "call to action buttons overal zelfde"). */
.zvn .pill { border-radius: var(--radius-btn, 10px); }

/* 2. WhatsApp naast bellen en mailen (meeting 24-09). */
.zvn .pill--app svg { width: 16px; height: 16px; }
.zvn .hero-photo__actions { flex-wrap: wrap; }

/* 3. De twee foto's in het intropaneel op één lijn (meeting 24-09). */
.zvn .intro-panel__media img:is(:first-child:not(:where(.nb-t0)),:where(.elementor-widget:first-child>.elementor-widget-container>.nb-t0)),
.zvn .intro-panel__media img:is(:last-child:not(:where(.nb-t0)),:where(.elementor-widget:last-child>.elementor-widget-container>.nb-t0)) { transform: none; }

/* 4. Vijfhoekfoto's minder saai: een dunne lijn in basisblauw die net
      verspringt ten opzichte van de gekleurde rand, zoals in de
      advertentie van Hét Gemeente Nieuws. Basisblauw is volgens de
      merkhandleiding het speelse kader achter fotovormen; de rand zelf
      houdt de kleur van de afdeling. */
.zvn .media-row__media:not(.media-row__media--plain) { overflow: visible; isolation: isolate; }
.zvn .media-row__media:not(.media-row__media--plain) img.frame {
  transform: rotate(7deg) scale(1.07);
  transform-origin: 50% 50%;
}
.zvn .media-row__media:not(.media-row__media--plain):has(img.frame)::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--navy, #2b2567);
  -webkit-mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-geel.png") center / contain no-repeat;
  mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-geel.png") center / contain no-repeat;
  transform: rotate(-9deg) scale(1.04);
  pointer-events: none;
  z-index: 2;
}
.zvn .media-row__media img.frame { z-index: 3; }

/* 5. Kaarten die geen link hebben, horen er ook niet klikbaar uit te zien. */
.zvn a[href="#"] { cursor: default; }

/* 6. De aanbodlaag (zv-aanbod.js, verhalen()) herkent klantverhalen en
      zet hun sectie op vlak navy met een witte kop. Op de nieuwe
      pagina's regelt het ontwerp dat zelf, dus hier terug naar neutraal. */
.zv2 .zvVerhalen:has(.zvn) { background: transparent !important; padding: 0 !important; }
.zv2 .zvVerhalen .zvn h2 { color: inherit !important; font-size: inherit !important; line-height: inherit !important; margin: 0 !important; }
.zv2 .zvVerhalen .zvn .stories__title { color: var(--navy) !important; font-size: 30px !important; line-height: 1.2 !important; margin-bottom: 40px !important; }
.zv2 .zvVerhalen .zvn .stories--grid .stories__stats h3 { color: var(--navy); }

/* 7. waardePagina() in zv-aanbod.js hangt een makelaarsblok onder de kop.
      Het nieuwe ontwerp heeft dat blok al in de hero. */
.zv2 .zvn-blok .zvWieBelt { display: none !important; }

/* 8. Op 1440 px dezelfde lijnen als header en footer: inhoud van 48 px
      tot 1392 px (de laag gebruikt min(100% - 96px, 1440px)). Het ontwerp
      had 1344 px plus 20 px binnenmarge, dus stond alles 20 px naar binnen. */
.zvn { --container: 1384px; }

/* 9. Beweging (zvn-extra.js): rustig invliegen en reageren op de muis. */
.zvn .zvn-in { opacity: 0; transform: translateY(26px); transition: opacity .7s cubic-bezier(.22,.61,.36,1), transform .7s cubic-bezier(.22,.61,.36,1); }
.zvn .zvn-in.zvn-zichtbaar { opacity: 1; transform: none; }
@media (hover: hover) {
  .zvn .media-row__media:not(.media-row__media--plain) img.photo { transition: transform .6s cubic-bezier(.22,.61,.36,1); }
  .zvn .media-row__media:not(.media-row__media--plain):hover img.photo { transform: scale(1.035); }
  .zvn .intro-panel__media img, .zvn .story__media img, .zvn .diensten-kaart__media img, .zvn .projecten-kaart img { transition: transform .6s cubic-bezier(.22,.61,.36,1); }
  .zvn .intro-panel__media img:hover { transform: translateY(-6px); }
  .zvn .story:hover .story__media img, .zvn .diensten-kaart:hover .diensten-kaart__media img, .zvn .projecten-kaart:hover img { transform: scale(1.05); }
  .zvn .story__media, .zvn .diensten-kaart__media { overflow: hidden; }
  .zvn .btn, .zvn .pill { transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease; }
  .zvn .btn:hover, .zvn .pill:hover { transform: translateY(-2px); box-shadow: 0 10px 22px -12px rgba(24,22,60,.5); }
}
@media (prefers-reduced-motion: reduce) {
  .zvn .zvn-in { opacity: 1; transform: none; transition: none; }
  .zvn *, .zvn *::after { transition: none !important; }
}

/* 10. Lange Nederlandse woorden (nieuwbouwinschrijving) mogen op smalle
       schermen afbreken in plaats van de kolom breder te duwen. */
.zvn h1, .zvn h2, .zvn h3 { overflow-wrap: break-word; }
@media (max-width: 600px) { .zvn h1, .zvn h2, .zvn h3 { hyphens: auto; -webkit-hyphens: auto; hyphenate-limit-chars: 14 6 6; -webkit-hyphenate-limit-before: 6; -webkit-hyphenate-limit-after: 6; } }
.zvn .media-row *, .zvn [class*="__grid"] *, .zvn .contact-split * { min-width: 0; }

/* ==========================================================================
   zvn-wow: de nieuwe onderdelen (ontwerp/blokken/*.html).
   De vijfhoek uit het logo is overal de drager: tegels, pins, portretten.
   Alles staat al onder .zvn; bouw.py scoped dit bestand niet opnieuw.
   ========================================================================== */
.zvn { --vijfhoek: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-vorm.png"); --ease: cubic-bezier(.22,.61,.36,1); }
.zvn .wow-eyebrow { font-family: var(--font-bold); font-weight: 700; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; color: var(--accent, var(--gold)); margin: 0 0 12px; }
.zvn.theme-nieuwbouw { --accent: var(--green); }
.zvn.theme-zakelijk { --accent: var(--teal); }
.zvn.theme-ontwikkeling { --accent: var(--terracotta); }

/* ---------------------------------------------------------------- vier werelden */
.zvn .werelden { padding: 110px 0 100px; background: #fff; }
.zvn .werelden__kop { max-width: 760px; margin-bottom: 48px; }
.zvn .werelden__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.zvn .wereld { --kleur: var(--gold); position: relative; display: flex; flex-direction: column; min-height: 330px; padding: 34px 28px 30px; border-radius: 25px; background: #f4f6f7; overflow: hidden; isolation: isolate; color: var(--navy); transition: color .45s var(--ease), transform .45s var(--ease), box-shadow .45s var(--ease); }
.zvn .wereld--nieuwbouw { --kleur: var(--green); }
.zvn .wereld--zakelijk { --kleur: var(--teal); }
.zvn .wereld--ontwikkeling { --kleur: var(--terracotta); }
.zvn .wereld__vorm { position: absolute; z-index: -1; right: -46px; top: -46px; width: 170px; height: 170px; background: var(--kleur); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(-14deg); transition: transform .8s var(--ease); }
.zvn .wereld__nr { font-family: var(--font-bold); font-weight: 700; font-size: 15px; color: #fff; position: absolute; top: 26px; right: 30px; }
.zvn .wereld h3 { font-family: var(--font-bold); font-weight: 700; font-size: 30px; line-height: 1.1; margin: 78px 0 14px; color: inherit; }
.zvn .wereld p { font-size: 17px; line-height: 1.5; margin: 0 0 24px; color: inherit; opacity: .85; }
.zvn .wereld__pijl { margin-top: auto; font-family: var(--font-bold); font-weight: 700; font-size: 15px; display: inline-flex; align-items: center; gap: 8px; }
.zvn .wereld__pijl::after { content: "\2192"; transition: transform .3s var(--ease); }
.zvn .wereld:hover, .zvn .wereld:focus-visible { color: #fff; transform: translateY(-6px); box-shadow: 0 28px 50px -30px rgba(24,22,60,.6); }
.zvn .wereld:hover .wereld__vorm, .zvn .wereld:focus-visible .wereld__vorm { transform: rotate(18deg) scale(5.2); }
.zvn .wereld:hover .wereld__pijl::after { transform: translateX(5px); }

/* ---------------------------------------------------------------- bewijsband */
.zvn .bewijs { background: var(--navy); color: #fff; padding: 70px 0 0; position: relative; overflow: hidden; }
.zvn .bewijs::before { content: ""; position: absolute; left: -120px; bottom: -160px; width: 460px; height: 460px; background: rgba(255,255,255,.05); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(20deg); }
.zvn .bewijs__grid { display: grid; grid-template-columns: 200px repeat(4, minmax(0, 1fr)); gap: 30px; align-items: center; position: relative; }
.zvn .zegel { position: relative; width: 180px; height: 180px; }
.zvn .zegel__ring { position: absolute; inset: 0; width: 100%; height: 100%; animation: zvn-draai 22s linear infinite; }
.zvn .zegel__ring text { fill: #fff; font-family: var(--font-bold); font-weight: 700; font-size: 15.5px; letter-spacing: .18em; text-transform: uppercase; }
.zvn .zegel__logo { position: absolute; left: 50%; top: 50%; width: 98px; height: auto; transform: translate(-50%, -50%); }
@keyframes zvn-draai { to { transform: rotate(360deg); } }
.zvn .bewijs__cijfer { border-left: 1px solid rgba(255,255,255,.18); padding-left: 26px; }
.zvn .bewijs__cijfer h3 { font-family: var(--font-bold); font-weight: 700; font-size: 54px; line-height: 1; color: #fff; margin: 0 0 8px; font-variant-numeric: tabular-nums; }
.zvn .bewijs__cijfer p { margin: 0; font-size: 16px; color: rgba(255,255,255,.78); }
.zvn .bewijs__logos { margin-top: 60px; background: #fff; border-radius: 25px 25px 0 0; display: flex; justify-content: space-around; align-items: center; gap: 30px; padding: 26px 40px; flex-wrap: wrap; }
.zvn .bewijs__logos img { height: 34px; width: auto; filter: grayscale(1); opacity: .75; transition: filter .3s, opacity .3s; }
.zvn .bewijs__logos img:hover { filter: none; opacity: 1; }

/* ---------------------------------------------------------------- werkgebied */
.zvn .werkgebied { padding: 110px 0; background: linear-gradient(180deg, #fff 0%, #f4f6f7 100%); overflow: hidden; }
.zvn .werkgebied__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 60px; align-items: center; }
.zvn .werkgebied__hint { font-family: var(--font-bold); font-weight: 700; font-size: 15px; color: var(--navy); margin: 30px 0 12px; }
.zvn .kaart-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.zvn .kaart-chip { font-family: var(--font-bold); font-weight: 600; font-size: 15px; color: var(--navy); background: #fff; border: 1px solid #dfe5e8; border-radius: 10px; padding: 8px 14px; transition: background .2s, color .2s, border-color .2s, transform .2s; }
.zvn .kaart-chip:hover, .zvn .kaart-chip.is-actief { background: var(--navy); color: #fff; border-color: var(--navy); transform: translateY(-2px); }
.zvn .werkgebied__kaart { position: relative; }
.zvn .kaart { width: 100%; height: auto; display: block; overflow: visible; }
.zvn .kaart-ring { fill: none; stroke: var(--navy); stroke-opacity: .16; stroke-width: 1.5; stroke-dasharray: 4 7; }
.zvn .kaart-ring--binnen { fill: rgba(223,154,20,.08); stroke: var(--gold); stroke-opacity: .5; }
.zvn .kaart-km { font-family: var(--font-bold); font-size: 12px; fill: var(--navy); fill-opacity: .45; letter-spacing: .08em; }
.zvn .kaart-puls { fill: var(--gold); opacity: .35; transform-box: fill-box; transform-origin: center; animation: zvn-puls 2.6s var(--ease) infinite; }
@keyframes zvn-puls { 0% { transform: scale(.6); opacity: .5; } 100% { transform: scale(3.4); opacity: 0; } }
.zvn .kaart-pin { cursor: pointer; }
.zvn .kaart-pin__vorm { fill: var(--navy); stroke: #fff; stroke-width: 2; transition: transform .3s var(--ease), fill .3s; transform-box: fill-box; transform-origin: center; }
.zvn .kaart-pin text { font-family: var(--font-bold); font-weight: 700; font-size: 15px; fill: var(--navy); paint-order: stroke; stroke: #fff; stroke-width: 4px; stroke-linejoin: round; transition: fill .3s; }
.zvn .kaart-pin--hq .kaart-pin__vorm { fill: var(--gold); transform: scale(1.9); }
.zvn .kaart-pin--hq text { font-size: 18px; }
.zvn .kaart-pin--stil { cursor: default; }
.zvn .kaart-pin--stil .kaart-pin__vorm { fill: #91989c; }
.zvn .kaart-pin--stil text { fill: #91989c; font-weight: 400; }
.zvn a:hover .kaart-pin .kaart-pin__vorm, .zvn .kaart-pin.is-actief .kaart-pin__vorm { fill: var(--pink); transform: scale(1.7) rotate(18deg); }
.zvn a:hover .kaart-pin text, .zvn .kaart-pin.is-actief text { fill: var(--pink); }
.zvn .werkgebied__kantoor { position: absolute; left: 51%; top: 36%; transform: translate(-50%, -150%); background: #fff; border-radius: 12px; padding: 10px 14px; box-shadow: var(--sh-2); font-size: 13px; line-height: 1.35; white-space: nowrap; pointer-events: none; }
.zvn .werkgebied__kantoor strong { display: block; color: var(--navy); font-family: var(--font-bold); }
.zvn .werkgebied__kantoor span { color: var(--text-muted); }

/* ---------------------------------------------------------------- team-teaser */
.zvn .teamteaser { padding: 110px 0; background: #fff; overflow: hidden; }
.zvn .teamteaser__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 60px; align-items: center; }
.zvn .gezichten { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px 10px; padding: 0; margin: 0; }
.zvn .gezicht { --kleur: var(--gold); position: relative; list-style: none; aspect-ratio: 1; display: flex; align-items: center; justify-content: center; }
.zvn .gezicht:is(:nth-child(3n+2):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3n+2)>.elementor-widget-container>.nb-t0)) { transform: translateY(34px); }
.zvn .gezicht--green { --kleur: var(--green); } .zvn .gezicht--magenta { --kleur: var(--pink); } .zvn .gezicht--teal { --kleur: var(--teal); }
.zvn .gezicht--terracotta { --kleur: var(--terracotta); } .zvn .gezicht--navy { --kleur: var(--navy); }
.zvn .gezicht__vorm { position: absolute; inset: 2%; background: var(--kleur); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(calc(var(--i) * 37deg)); transition: transform .7s var(--ease); }
.zvn .gezicht img { position: relative; width: 84% !important; height: 84% !important; object-fit: cover; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transition: transform .5s var(--ease); }
.zvn .gezicht__naam { position: absolute; bottom: 4%; left: 50%; transform: translate(-50%, 8px); background: var(--kleur); color: #fff; font-family: var(--font-bold); font-weight: 700; font-size: 14px; padding: 6px 12px; border-radius: 10px; opacity: 0; transition: opacity .3s, transform .3s var(--ease); }
.zvn .gezicht:hover .gezicht__vorm { transform: rotate(calc(var(--i) * 37deg + 40deg)) scale(1.06); }
.zvn .gezicht:hover img { transform: scale(1.05); }
.zvn .gezicht:hover .gezicht__naam { opacity: 1; transform: translate(-50%, 0); }

/* ---------------------------------------------------------------- snelle waardecheck */
.zvn .snelcheck { padding: 30px 0 110px; background: #fff; }
.zvn .snelcheck__kaart { position: relative; overflow: hidden; isolation: isolate; border-radius: 25px; background: var(--gold); color: #fff; display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); gap: 40px; align-items: center; padding: 60px 64px; }
.zvn .snelcheck__vorm { position: absolute; z-index: -1; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .snelcheck__vorm--a { width: 420px; height: 420px; right: -110px; top: -150px; background: rgba(255,255,255,.14); transform: rotate(-18deg); animation: zvn-zweef 9s ease-in-out infinite alternate; }
.zvn .snelcheck__vorm--b { width: 200px; height: 200px; left: -60px; bottom: -110px; background: var(--pink); opacity: .9; transform: rotate(24deg); animation: zvn-zweef 11s ease-in-out infinite alternate-reverse; }
@keyframes zvn-zweef { to { translate: 0 -18px; rotate: 12deg; } }
.zvn .snelcheck .wow-eyebrow { color: #fff; opacity: .9; }
.zvn .snelcheck h2 { font-family: var(--font-bold); font-weight: 700; font-size: 40px; line-height: 1.1; color: #fff; margin: 0 0 14px; }
.zvn .snelcheck__tekst p { font-size: 19px; line-height: 1.55; color: #fff; font-family: var(--font-head); font-weight: 500; max-width: 520px; }
.zvn .snelcheck__form { background: #fff; border-radius: 20px; padding: 26px; display: grid; gap: 14px; box-shadow: 0 30px 60px -30px rgba(24,22,60,.55); }
.zvn .snelcheck__form label span { display: block; font-family: var(--font-bold); font-weight: 700; font-size: 14px; color: var(--navy); margin-bottom: 6px; }
.zvn .snelcheck__form input { width: 100%; font: inherit; font-size: 16px; color: var(--text); border: 1px solid #d3d7da; border-radius: 10px; padding: 13px 14px; background: #fff; }
.zvn .snelcheck__form input:focus { outline: none; border-color: var(--blue); box-shadow: 0 0 0 3px rgba(0,109,183,.15); }
.zvn .snelcheck__form .btn { width: 100%; text-align: center; padding: 15px 20px; background: var(--blue); }
.zvn .snelcheck__form .btn:hover { background: var(--blue-hover); }

/* ---------------------------------------------------------------- vijfhoeklijnen die meedraaien met scrollen */
.zvn .media-row__media:not(.media-row__media--plain) img.frame { transform: rotate(calc(7deg - var(--zvn-rot, 0deg))) scale(1.07); }
.zvn .media-row__media:not(.media-row__media--plain):has(img.frame)::after { transform: rotate(calc(-9deg + var(--zvn-rot, 0deg))) scale(1.04); }

/* ---------------------------------------------------------------- responsive */
@media (max-width: 1100px) {
  .zvn .werelden__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .zvn .bewijs__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .zvn .zegel { grid-column: 1 / -1; margin: 0 auto; }
  .zvn .werkgebied__grid, .zvn .teamteaser__grid, .zvn .snelcheck__kaart { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .zvn .werelden, .zvn .werkgebied, .zvn .teamteaser { padding: 70px 0; }
  .zvn .werelden__grid { grid-template-columns: 1fr; }
  .zvn .wereld { min-height: 0; }
  .zvn .wereld h3 { margin-top: 56px; font-size: 26px; }
  .zvn .bewijs__cijfer h3 { font-size: 40px; }
  .zvn .bewijs__cijfer { padding-left: 16px; }
  .zvn .snelcheck__kaart { padding: 40px 22px; }
  .zvn .snelcheck h2 { font-size: 30px; }
  .zvn .werkgebied__kantoor { display: none; }
  .zvn .gezichten { gap: 10px 6px; }
  .zvn .kaart-pin text { font-size: 25px; stroke-width: 6px; }
  .zvn .kaart-pin--hq text { font-size: 28px; }
  .zvn .kaart-pin__vorm { transform: scale(1.5); }
  .zvn .kaart-km { font-size: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .zvn .zegel__ring, .zvn .kaart-puls, .zvn .snelcheck__vorm { animation: none !important; }
}

/* ================================================================ ronde 2: de leuke dingen */

/* ---------- wie helpt jou? */
.zvn .wiehelpt { margin-top: 26px; }
.zvn .wiehelpt__vraag { font-family: var(--font-bold); font-weight: 700; font-size: 15px; color: var(--navy); margin: 0 0 10px; }
.zvn .wiehelpt__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.zvn .wiehelpt__chip { all: unset; box-sizing: border-box; cursor: pointer; font-family: var(--font-bold) !important; font-weight: 600; font-size: 15px; color: var(--navy) !important; background: #f4f6f7 !important; border: 1px solid #dfe5e8 !important; border-radius: 10px !important; padding: 9px 15px !important; transition: background .2s, color .2s, transform .2s; }
.zvn .wiehelpt__chip:hover { transform: translateY(-2px); }
.zvn .wiehelpt__chip.is-actief { background: var(--navy) !important; color: #fff !important; border-color: var(--navy) !important; }
.zvn .wiehelpt__chip:focus-visible { outline: 3px solid var(--blue); outline-offset: 2px; }
.zvn .wiehelpt__kaart { margin-top: 16px; display: flex; gap: 16px; align-items: center; background: #fff; border-radius: 18px; padding: 14px 18px 14px 14px; box-shadow: var(--sh-2); animation: zvn-pop .45s var(--ease); }
.zvn .wiehelpt__kaart[hidden] { display: none; }
.zvn .wiehelpt__foto { width: 74px !important; height: 74px !important; object-fit: cover; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; flex: none; }
.zvn .wiehelpt__tekst { margin: 0 0 8px; font-size: 17px; color: var(--text); }
.zvn .wiehelpt__tekst strong { color: var(--navy); font-family: var(--font-bold); }
.zvn .wiehelpt__acties { display: flex; gap: 10px; flex-wrap: wrap; margin: 0; }
.zvn .wiehelpt__acties a { font-family: var(--font-bold); font-weight: 700; font-size: 14px; padding: 9px 14px; border-radius: 10px; }
.zvn .wiehelpt__app { background: var(--blue); color: #fff !important; }
.zvn .wiehelpt__app:hover { background: var(--blue-hover); }
.zvn .wiehelpt__bel { background: #f4f6f7; color: var(--navy) !important; }
@keyframes zvn-pop { from { opacity: 0; transform: translateY(10px) scale(.97); } to { opacity: 1; transform: none; } }
.zvn .teamteaser__link { font-family: var(--font-bold); font-weight: 700; font-size: 15px; color: var(--blue); }
.zvn .gezichten.is-kiezend .gezicht { opacity: .28; filter: grayscale(.8); transition: opacity .35s, filter .35s, transform .45s var(--ease); }
.zvn .gezichten.is-kiezend .gezicht.is-gekozen { opacity: 1; filter: none; transform: scale(1.12); z-index: 2; }
.zvn .gezichten.is-kiezend .gezicht.is-gekozen .gezicht__naam { opacity: 1; transform: translate(-50%, 0); }
.zvn .gezichten.is-kiezend .gezicht:is(:nth-child(3n+2):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3n+2)>.elementor-widget-container>.nb-t0)).is-gekozen { transform: translateY(34px) scale(1.12); }

/* ---------- Benji gluurt */
.zvn .gezichten-wrap { position: relative; }
.zvn .benji { all: unset; position: absolute; right: -10px; bottom: -120px; width: 120px; height: 120px; cursor: pointer; transform: translateY(40px) rotate(-8deg); transition: transform .5s var(--ease); z-index: 3; }
.zvn .benji img { width: 100% !important; height: 100% !important; object-fit: contain; }
.zvn .benji:hover, .zvn .benji.is-wakker { transform: translateY(-6px) rotate(6deg); }
.zvn .benji:focus-visible { outline: 3px solid var(--blue); border-radius: 50%; }
.zvn .benji__ballon { position: absolute; right: 90%; bottom: 80%; width: 230px; background: var(--navy); color: #fff; font-size: 14px; line-height: 1.45; padding: 12px 14px; border-radius: 16px 16px 4px 16px; opacity: 0; transform: translateY(8px) scale(.9); transform-origin: bottom right; transition: opacity .3s, transform .3s var(--ease); pointer-events: none; }
.zvn .benji.is-wakker .benji__ballon { opacity: 1; transform: none; }
.zvn .teamteaser { padding-bottom: 150px; }

/* ---------- de sleutelroute */
.zvn .route { --kleur: var(--gold); padding: 110px 0; background: #fff; }
.zvn .route__kop { max-width: 720px; margin-bottom: 50px; }
.zvn .route__baan { position: relative; display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 0 28px; }
.zvn .route__lijn { position: relative; grid-row: 1; grid-column: 1; }
.zvn .route__lijn::before { content: ""; position: absolute; left: 50%; top: 24px; bottom: 24px; width: 4px; margin-left: -2px; background: repeating-linear-gradient(to bottom, #dfe5e8 0 10px, transparent 10px 18px); border-radius: 2px; }
.zvn .route__vulling { position: absolute; left: 50%; top: 24px; width: 4px; margin-left: -2px; height: calc((100% - 48px) * var(--zvn-route, 0)); background: var(--kleur); border-radius: 2px; }
.zvn .route__huis { position: absolute; left: 50%; top: calc(24px + (100% - 48px) * var(--zvn-route, 0)); width: 58px; height: 58px; margin: -29px 0 0 -29px; background: var(--kleur); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; display: flex; align-items: center; justify-content: center; transform: rotate(calc(var(--zvn-route, 0) * 360deg)); }
.zvn .route__huis svg { width: 26px; height: 26px; fill: #fff; transform: rotate(calc(var(--zvn-route, 0) * -360deg)); }
.zvn .route__stappen { grid-row: 1; grid-column: 2; list-style: none; margin: 0; padding: 0; display: grid; gap: 22px; }
.zvn .route__stap { display: flex; gap: 20px; align-items: flex-start; background: #f4f6f7; border-radius: 20px; padding: 24px 26px; transition: background .4s, box-shadow .4s, transform .4s var(--ease); }
.zvn .route__stap h3 { font-family: var(--font-bold); font-weight: 700; font-size: 21px; color: var(--navy); margin: 0 0 6px; }
.zvn .route__stap p { margin: 0; font-size: 17px; line-height: 1.5; color: var(--text); }
.zvn .route__nr { flex: none; width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; font-family: var(--font-bold); font-weight: 700; font-size: 15px; color: var(--navy); background: #fff; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transition: background .4s, color .4s; }
.zvn .route__nr svg { width: 22px; height: 22px; }
.zvn .route__stap.is-bereikt { background: #fff; box-shadow: var(--sh-2); transform: translateX(6px); }
.zvn .route__stap.is-bereikt .route__nr { background: var(--kleur); color: #fff; }
.zvn .route__stap--sleutel.is-bereikt { background: var(--navy); }
.zvn .route__stap--sleutel.is-bereikt h3, .zvn .route__stap--sleutel.is-bereikt p { color: #fff; }

/* ---------- plaatsnamen-ticker */
.zvn .ticker { background: var(--gold); overflow: hidden; padding: 22px 0; transform: rotate(-1.2deg); margin: -10px -20px 0; position: relative; z-index: 2; }
.zvn .ticker__band { display: flex; width: max-content; animation: zvn-tik 55s linear infinite; }
.zvn .ticker:hover .ticker__band { animation-play-state: paused; }
.zvn .ticker__rij { display: flex; align-items: center; gap: 28px; padding-right: 28px; }
.zvn .ticker a { font-family: var(--font-bold); font-weight: 700; font-size: 34px; line-height: 1; color: #fff; white-space: nowrap; transition: color .2s; }
.zvn .ticker a:hover { color: var(--navy); }
.zvn .ticker__vorm { width: 22px; height: 22px; flex: none; background: var(--navy); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .ticker__vorm:is(:nth-of-type(3n):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3n)>.elementor-widget-container>.nb-t0)) { background: var(--pink); }
.zvn .ticker__vorm:is(:nth-of-type(3n+1):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3n+1)>.elementor-widget-container>.nb-t0)) { background: #fff; }
@keyframes zvn-tik { to { transform: translateX(-50%); } }

/* ---------- 25 jaar confetti */
.zvn .confetti { position: absolute; inset: 0; pointer-events: none; }
.zvn .confetti i { position: absolute; left: var(--x); top: var(--y); width: var(--s); height: var(--s); border-radius: 50%; opacity: .85; animation: zvn-confetti 7s ease-in-out var(--d) infinite alternate; }
.zvn .confetti .c-gold { background: var(--gold); } .zvn .confetti .c-pink { background: var(--pink); }
.zvn .confetti .c-teal { background: var(--teal); } .zvn .confetti .c-green { background: var(--green); }
.zvn .confetti .c-white { background: #fff; opacity: .5; }
@keyframes zvn-confetti { to { transform: translate(8px, -22px) scale(1.2); } }

/* ---------- onze etalage (Figma) */
.zvn .etalage { display: grid; grid-template-columns: 360px minmax(0, 1fr); gap: 0; align-items: center; }
.zvn .etalage__kaart { position: relative; z-index: 2; background: var(--gold); color: #fff; border-radius: 25px; padding: 46px 38px 40px; margin-right: -60px; box-shadow: 0 30px 60px -30px rgba(24,22,60,.5); overflow: visible; }
.zvn .etalage__kaart h2 { font-family: var(--font-bold); font-weight: 700; font-size: 38px; line-height: 1.05; color: #fff; margin: 0 0 14px; }
.zvn .etalage__kaart p { color: #fff; font-size: 17px; font-weight: 500; margin: 0 0 26px; }
.zvn .etalage__vorm { position: absolute; right: -30px; top: -34px; width: 90px; height: 90px; background: var(--pink); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(18deg); animation: zvn-zweef 7s ease-in-out infinite alternate; }
.zvn .etalage__rail { min-width: 0; padding-left: 90px; }
.zvn .section--etalage .zv-home { margin-top: 0; }

/* ---------- stickers (Figma) */
.zvn .sticker { position: relative; display: inline-flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; width: 190px; height: 190px; padding: 26px; line-height: 1.2; color: #fff; isolation: isolate; transform: rotate(-8deg); transition: transform .5s var(--ease); }
.zvn .sticker::before { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--sticker, var(--blue)); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .sticker span { font-size: 14px; }
.zvn .sticker strong { font-family: var(--font-bold); font-weight: 700; font-size: 18px; display: block; margin-top: 4px; }
.zvn .sticker--blauw { --sticker: var(--blue); position: absolute; right: -80px; bottom: -110px; z-index: 3; }
.zvn a.sticker:hover { transform: rotate(6deg) scale(1.06); }
.zvn .sticker--magenta { --sticker: var(--pink); width: 150px; height: 150px; flex: none; transform: rotate(10deg); }
.zvn .sticker--magenta strong { font-size: 22px; margin: 0; } .zvn .sticker--magenta span { font-size: 14px; }
.zvn .stories__kopwrap { display: flex; justify-content: space-between; align-items: center; gap: 30px; }
.zvn .stories__kopwrap .stories__title { margin-bottom: 30px; }
.zvn .stories__kopwrap .sticker { animation: zvn-wiebel 4s ease-in-out infinite; }
@keyframes zvn-wiebel { 0%,100% { transform: rotate(10deg); } 50% { transform: rotate(-4deg) scale(1.04); } }

@media (max-width: 1100px) {
  .zvn .etalage { grid-template-columns: 1fr; }
  .zvn .etalage__kaart { margin: 0 0 30px; }
  .zvn .etalage__rail { padding-left: 0; }
  .zvn .sticker--blauw { right: 10px; bottom: -80px; width: 150px; height: 150px; }
}
@media (max-width: 640px) {
  .zvn .route__baan { grid-template-columns: 40px minmax(0,1fr); gap: 0 14px; }
  .zvn .route__huis { width: 42px; height: 42px; margin: -21px 0 0 -21px; }
  .zvn .route__stap { padding: 18px; gap: 14px; }
  .zvn .ticker a { font-size: 24px; }
  .zvn .stories__kopwrap .sticker { display: none; }
  .zvn .sticker--blauw { position: relative; right: auto; bottom: auto; margin: 20px 0 -60px auto; display: flex; }
  .zvn .benji { width: 90px; height: 90px; bottom: -95px; }
  .zvn .benji__ballon { width: 190px; }
}
@media (prefers-reduced-motion: reduce) {
  .zvn .ticker__band, .zvn .confetti i, .zvn .etalage__vorm, .zvn .stories__kopwrap .sticker { animation: none !important; }
}
.zvn .benji { background: none !important; border: 0 !important; padding: 0 !important; box-shadow: none !important; min-height: 0 !important; }
/* verfijning: scherpe vijfhoek in de ticker, sticker vrij van de eerste woning */
.zvn .ticker__vorm { -webkit-mask: none; mask: none; clip-path: polygon(50% 0, 100% 38%, 81% 100%, 19% 100%, 0 38%); width: 24px; height: 23px; }
.zvn .ticker__vorm:is(:nth-of-type(2n):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(2n)>.elementor-widget-container>.nb-t0)) { transform: rotate(18deg); }
@media (min-width: 1101px) { .zvn .sticker--blauw { right: auto; left: -46px; bottom: -150px; width: 170px; height: 170px; } }
.zvn .section--etalage { padding-bottom: 150px; }

/* ---------- contactblok onderaan (vervangt het gouden footerblok op de nieuwe pagina's) */
.zvn .zvcontact { --kleur: var(--accent, var(--gold)); position: relative; overflow: hidden; isolation: isolate; background: var(--kleur); color: #fff; padding: 110px 0 120px; }
.zvn .zvcontact .confetti .c-navy { background: var(--navy); }
.zvn .zvcontact__vorm { position: absolute; z-index: -1; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .zvcontact__vorm--a { width: 520px; height: 520px; left: -170px; bottom: -230px; background: rgba(255,255,255,.12); transform: rotate(14deg); animation: zvn-zweef 12s ease-in-out infinite alternate; }
.zvn .zvcontact__vorm--b { width: 300px; height: 300px; right: 34%; top: -150px; background: rgba(43,37,103,.14); transform: rotate(-22deg); animation: zvn-zweef 9s ease-in-out infinite alternate-reverse; }
.zvn .zvcontact__grid { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); gap: 70px; align-items: center; }
.zvn .zvcontact .wow-eyebrow { color: #fff; opacity: .9; }
.zvn .zvcontact h2 { font-family: var(--font-bold); font-weight: 700; font-size: 44px; line-height: 1.08; color: #fff; margin: 0 0 16px; max-width: 620px; }
.zvn .zvcontact__intro { font-size: 19px; line-height: 1.55; color: #fff; font-weight: 500; max-width: 560px; margin: 0 0 30px; }
.zvn .zvcontact__team { display: flex; align-items: center; margin: 0 0 34px; padding: 0; }
.zvn .zvcontact__team li { list-style: none; position: relative; width: 74px; height: 74px; margin-right: -12px; transition: transform .35s var(--ease); }
.zvn .zvcontact__team li img { width: 100% !important; height: 100% !important; object-fit: cover; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(calc(var(--i) * 23deg - 30deg)); }
.zvn .zvcontact__team li span { position: absolute; left: 50%; bottom: -26px; transform: translateX(-50%); font-family: var(--font-bold); font-size: 13px; font-weight: 700; opacity: 0; transition: opacity .25s; white-space: nowrap; }
.zvn .zvcontact__team li:hover { transform: translateY(-8px); z-index: 2; }
.zvn .zvcontact__team li:hover span { opacity: 1; }
.zvn .zvcontact__plus a { display: flex; align-items: center; justify-content: center; width: 74px; height: 74px; background: var(--navy); color: #fff; font-family: var(--font-bold); font-weight: 700; font-size: 18px; clip-path: polygon(50% 0, 100% 38%, 81% 100%, 19% 100%, 0 38%); }
.zvn .zvcontact__routes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; max-width: 620px; }
.zvn .zvcontact__route { display: flex; gap: 14px; align-items: center; background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.28); border-radius: 16px; padding: 14px 16px; color: #fff !important; transition: background .25s, transform .25s var(--ease); }
.zvn .zvcontact__route:hover { background: #fff; color: var(--navy) !important; transform: translateY(-3px); }
.zvn .zvcontact__route small { display: block; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; opacity: .8; }
.zvn .zvcontact__route span:is(:last-child:not(:where(.nb-t0)),:where(.elementor-widget:last-child>.elementor-widget-container>.nb-t0)) { font-family: var(--font-bold); font-weight: 700; font-size: 16px; line-height: 1.3; }
.zvn .zvcontact__ico { flex: none; width: 42px; height: 42px; display: flex; align-items: center; justify-content: center; background: #fff; color: var(--kleur); clip-path: polygon(50% 0, 100% 38%, 81% 100%, 19% 100%, 0 38%); }
.zvn .zvcontact__route:hover .zvcontact__ico { background: var(--kleur); color: #fff; }
.zvn .zvcontact__ico svg { width: 19px; height: 19px; margin-top: 3px; }
.zvn .zvcontact__kaart { position: relative; background: #fff; color: var(--text); border-radius: 25px; padding: 40px 36px 30px; box-shadow: 0 40px 80px -40px rgba(24,22,60,.6); }
.zvn .zvcontact__kaart h3 { font-family: var(--font-bold); font-weight: 700; font-size: 26px; color: var(--navy); margin: 0 0 20px; }
.zvn .zvcontact__sticker { position: absolute; right: -40px; top: -60px; width: 130px; height: 130px; padding: 18px; }
.zvn .zvcontact__sticker strong { font-size: 22px; }
.zvn .zvcontact__klein { font-size: 13px; color: var(--text-muted); margin: 14px 0 0; }
/* het verhuisde Elementor-formulier in onze stijl */
.zvn :is(.zvcontact__form, .contact-split .zvn-plek) .elementor-form .elementor-field-group { margin-bottom: 12px !important; }
.zvn :is(.zvcontact__form, .contact-split .zvn-plek) .elementor-field-textual, .zvn :is(.zvcontact__form, .contact-split .zvn-plek) textarea, .zvn :is(.zvcontact__form, .contact-split .zvn-plek) select { font-family: var(--font-body) !important; font-size: 16px !important; color: var(--text) !important; background: #f4f6f7 !important; border: 1px solid transparent !important; border-radius: 12px !important; padding: 13px 15px !important; min-height: 0 !important; transition: border-color .2s, background .2s; }
.zvn :is(.zvcontact__form, .contact-split .zvn-plek) .elementor-field-textual:focus, .zvn :is(.zvcontact__form, .contact-split .zvn-plek) textarea:focus { background: #fff !important; border-color: var(--blue) !important; box-shadow: 0 0 0 3px rgba(0,109,183,.15) !important; outline: none !important; }
.zvn :is(.zvcontact__form, .contact-split .zvn-plek) .elementor-field-label { font-family: var(--font-bold) !important; font-weight: 700 !important; font-size: 14px !important; color: var(--navy) !important; }
.zvn :is(.zvcontact__form, .contact-split .zvn-plek) .elementor-button { width: 100% !important; justify-content: center; background: var(--blue) !important; color: #fff !important; font-family: var(--font-bold) !important; font-weight: 700 !important; font-size: 17px !important; border-radius: 12px !important; padding: 16px 20px !important; border: 0 !important; transition: background .2s, transform .2s !important; }
.zvn :is(.zvcontact__form, .contact-split .zvn-plek) .elementor-button:hover { background: var(--blue-hover) !important; transform: translateY(-2px); }
.zvn :is(.zvcontact__form, .contact-split .zvn-plek) .elementor-field-type-acceptance label, .zvn :is(.zvcontact__form, .contact-split .zvn-plek) .elementor-field-option label { font-size: 14px !important; color: var(--text) !important; }
.zvn :is(.zvcontact__form, .contact-split .zvn-plek) .elementor-widget-container { padding: 0 !important; background: none !important; }
/* pas als het formulier echt verhuisd is, gaat het oude gouden blok weg */
@media (max-width: 1100px) {
  .zvn .zvcontact__grid { grid-template-columns: 1fr; gap: 50px; }
  .zvn .zvcontact__sticker { right: 10px; }
}
@media (max-width: 640px) {
  .zvn .zvcontact { padding: 70px 0 80px; }
  .zvn .zvcontact h2 { font-size: 31px; }
  .zvn .zvcontact__routes { grid-template-columns: 1fr; }
  .zvn .zvcontact__kaart { padding: 32px 20px 24px; }
  .zvn .zvcontact__team li, .zvn .zvcontact__plus a { width: 58px; height: 58px; }
  .zvn .zvcontact__sticker { width: 104px; height: 104px; top: -54px; right: -4px; }
  .zvn .zvcontact__sticker strong { font-size: 17px; } .zvn .zvcontact__sticker span { font-size: 11px; }
}
.zvn .route--green { --kleur: var(--green); } .zvn .route--teal { --kleur: var(--teal); } .zvn .route--terracotta { --kleur: var(--terracotta); }
.zvn .route--green .wow-eyebrow { color: var(--green); } .zvn .route--teal .wow-eyebrow { color: var(--teal); } .zvn .route--terracotta .wow-eyebrow { color: var(--terracotta); }
/* ---------- ronde 3: stickers op de citaatbanden, ticker in afdelingskleur, 'je bent hier' */
.zvn .quote-band__card { position: relative; }
.zvn .sticker--quote { position: absolute; right: -58px; top: -64px; width: 138px; height: 138px; padding: 18px; animation: zvn-wiebel 5s ease-in-out infinite; }
.zvn .sticker--quote span { font-size: 13px; } .zvn .sticker--quote strong { font-size: 19px; margin-top: 2px; }
.zvn .ticker { background: var(--accent, var(--gold)); }
.zvn.theme-ontwikkeling .ticker__vorm:is(:nth-of-type(3n+2):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3n+2)>.elementor-widget-container>.nb-t0)), .zvn.theme-zakelijk .ticker__vorm:is(:nth-of-type(3n+2):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3n+2)>.elementor-widget-container>.nb-t0)), .zvn.theme-nieuwbouw .ticker__vorm:is(:nth-of-type(3n+2):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3n+2)>.elementor-widget-container>.nb-t0)) { background: var(--navy); }
.zvn .wereld.is-hier::before { content: "Je bent hier"; position: absolute; left: 28px; top: 30px; font-family: var(--font-bold); font-weight: 700; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; background: var(--navy); color: #fff; padding: 5px 9px; border-radius: 8px; }
@media (max-width: 640px) { .zvn .sticker--quote { right: 6px; top: -70px; width: 112px; height: 112px; } .zvn .sticker--quote strong { font-size: 16px; } }

/* ---------- mobiele actiebalk */
.zvn-balk { display: none; }
@media (max-width: 767px) {
  .zvn-balk { position: fixed; z-index: 9990; left: 12px; right: 12px; bottom: calc(12px + env(safe-area-inset-bottom)); display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 6px; padding: 6px; background: rgba(255,255,255,.96); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-radius: 18px; box-shadow: 0 16px 40px -12px rgba(24,22,60,.45); transition: transform .35s cubic-bezier(.22,.61,.36,1), opacity .35s; font-family: var(--font-bold, "Raleway"), sans-serif; }
  .zvn-balk.is-weg { transform: translateY(140%); opacity: 0; }
  .zvn-balk a { display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 7px 4px 6px; border-radius: 13px; color: var(--navy, #2b2567) !important; font-size: 12px; font-weight: 700; text-decoration: none; }
  .zvn-balk a.is-hoofd { background: var(--blue, #006db7); color: #fff !important; }
  .zvn-balk__ico { width: 30px; height: 30px; display: flex; align-items: center; justify-content: center; background: var(--accent, var(--gold, #df9a14)); color: #fff; clip-path: polygon(50% 0, 100% 38%, 81% 100%, 19% 100%, 0 38%); }
  .zvn-balk a.is-hoofd .zvn-balk__ico { background: #fff; color: var(--blue, #006db7); }
  .zvn-balk__ico svg { width: 15px; height: 15px; margin-top: 3px; }
  body:has(.zvn-balk) { padding-bottom: 84px; }
}

/* ================================================================ ronde 4: feedback 24-09 avond */

/* ---------- één vorm overal: de organische vijfhoek uit het logo (geen scherpe polygonen meer) */
.zvn .zvcontact__plus a, .zvn .zvcontact__ico, .zvn .ticker__vorm, .zvn-balk__ico {
  clip-path: none !important;
  -webkit-mask: var(--vijfhoek, url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-vorm.png")) center / contain no-repeat !important;
  mask: var(--vijfhoek, url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-vorm.png")) center / contain no-repeat !important;
}
.zvn .ticker__vorm:is(:nth-of-type(2n):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(2n)>.elementor-widget-container>.nb-t0)) { transform: none; }
/* teamgezichten in het contactblok: allemaal even groot, rechtop, +4 in dezelfde vorm en maat */
.zvn .zvcontact__team { gap: 6px; }
.zvn .zvcontact__team li { width: 72px; height: 72px; margin-right: 0; }
.zvn .zvcontact__team li img { transform: none; }
.zvn .zvcontact__plus a { width: 72px; height: 72px; font-size: 17px; }
.zvn .zvcontact__team li span { bottom: -22px; }

/* ---------- teaser-badge buiten het masker */
.zvn .teaser__wrap { position: relative; }
.zvn .teaser__wrap .teaser__media { min-height: 425px; }
.zvn .teaser__wrap .teaser__bubble { position: absolute; top: -10px; left: -30px; z-index: 2; }
@media (max-width: 767px) { .zvn .teaser__wrap .teaser__media { min-height: 300px; } .zvn .teaser__wrap .teaser__bubble { left: 0; } }

/* ---------- hero: foto loopt op desktop door tot de rand van het scherm */
@media (min-width: 1101px) {
  .zvn .hero-band__inner { padding-right: 0; }
  .zvn .hero-band__media { max-width: none; flex: 1 1 56%; margin-right: calc((min(100vw, var(--container)) - 100vw) / 2); align-self: stretch; aspect-ratio: auto; min-height: 480px; }
}

/* ---------- snelkoppelingen in de hero als tegels met een vijfhoek-icoon */
.zvn .hero-band .snel-nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; max-width: 560px; }
.zvn .hero-band .snel-nav a { display: flex !important; align-items: center; gap: 10px; padding: 10px 12px !important; min-height: 54px; background: rgba(255,255,255,.16) !important; border: 1px solid rgba(255,255,255,.4) !important; border-radius: 14px !important; color: #fff !important; font-family: var(--font-bold); font-weight: 700; font-size: 15px; line-height: 1.2; transition: background .25s, color .25s, transform .25s var(--ease), box-shadow .25s; }
.zvn .hero-band .snel-nav a::after, .zvn .hero-band .snel-nav a::before { display: none !important; }
.zvn .hero-band .snel-nav a:hover { background: #fff !important; color: var(--navy) !important; transform: translateY(-3px); box-shadow: 0 14px 26px -16px rgba(24,22,60,.6); }
.zvn .snel-ico { flex: none; width: 34px; height: 34px; display: flex; align-items: center; justify-content: center; background: #fff; color: var(--accent, var(--gold)); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transition: background .25s, color .25s; }
.zvn .hero-band--gold .snel-ico { color: var(--gold); } .zvn .hero-band--green .snel-ico { color: var(--green); }
.zvn .hero-band--teal .snel-ico { color: var(--teal); } .zvn .hero-band--terracotta .snel-ico { color: var(--terracotta); } .zvn .hero-band--navy .snel-ico { color: var(--navy); }
.zvn .hero-band .snel-nav a:hover .snel-ico { background: var(--navy); color: #fff; }
.zvn .snel-ico svg { width: 17px; height: 17px; margin-top: 2px; }
.zvn .hero-band .snel-label { opacity: .9 !important; }
@media (max-width: 767px) {
  .zvn .hero-band__intro h1 { font-size: 32px !important; line-height: 1.12 !important; }
  .zvn .hero-band .snel-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .zvn .hero-band .snel-nav a { min-height: 50px; font-size: 14px; padding: 8px 10px !important; }
  .zvn .snel-ico { width: 30px; height: 30px; }
}

/* ---------- vier werelden: op mobiel een swipe-slider met een kier van de volgende */
@media (max-width: 767px) {
  .zvn .werelden__grid { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; margin: 0 -20px; padding: 6px 20px 18px; scrollbar-width: none; }
  .zvn .werelden__grid::-webkit-scrollbar { display: none; }
  .zvn .wereld { flex: 0 0 78%; scroll-snap-align: start; min-height: 290px; }
  .zvn .werelden__dots { display: flex; gap: 8px; justify-content: center; margin-top: 6px; }
  .zvn .werelden__dots span { width: 9px; height: 9px; border-radius: 50%; background: #d3d7da; transition: background .3s, width .3s; }
  .zvn .werelden__dots span.is-actief { width: 26px; border-radius: 5px; background: var(--navy); }
}
@media (min-width: 768px) { .zvn .werelden__dots { display: none; } }

/* ---------- onze etalage op mobiel en tablet */
@media (max-width: 1100px) {
  .zvn .section--etalage { padding-bottom: 70px; }
  .zvn .etalage__kaart { margin: 0 0 24px; padding: 34px 26px 30px; display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 18px; align-items: end; }
  .zvn .etalage__kaart h2, .zvn .etalage__kaart p { grid-column: 1 / -1; }
  .zvn .etalage__kaart .btn { justify-self: start; }
  .zvn .etalage__kaart .sticker--blauw { position: relative; left: auto; right: auto; bottom: auto; margin: -40px -10px -70px 0; width: 132px; height: 132px; padding: 16px; }
  .zvn .etalage__kaart .sticker--blauw span { font-size: 11px; } .zvn .etalage__kaart .sticker--blauw strong { font-size: 14px; }
  .zvn .etalage__vorm { width: 64px; height: 64px; right: 18px; top: -26px; }
}
@media (max-width: 640px) { .zvn .etalage__kaart h2 { font-size: 31px; } }

/* ---------- 25-jaar-band op mobiel en tablet */
@media (max-width: 1100px) {
  .zvn .bewijs { padding-top: 56px; }
  .zvn .bewijs__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 16px; }
  .zvn .zegel { grid-column: 1 / -1; justify-self: center; width: 160px; height: 160px; }
  .zvn .bewijs__cijfer { border-left: 0; padding: 18px 16px; background: rgba(255,255,255,.07); border-radius: 18px; }
  .zvn .bewijs__cijfer h3 { font-size: 42px; }
  .zvn .bewijs__logos { display: grid; grid-template-columns: repeat(3, 1fr); justify-items: center; gap: 18px 12px; padding: 22px 16px; margin-top: 40px; }
  .zvn .bewijs__logos img { height: 26px; max-width: 100%; }
}
@media (max-width: 400px) { .zvn .bewijs__cijfer h3 { font-size: 36px; } .zvn .bewijs__cijfer p { font-size: 14px; } }

/* ---------- echte kaart (Leaflet + CARTO Voyager), vijfhoek-pins */
.zvn .werkgebied__map { width: 100%; aspect-ratio: 6 / 5; border-radius: 25px; overflow: hidden; background: #e9ebec; box-shadow: var(--sh-2); position: relative; z-index: 1; }
.zvn .werkgebied__map .leaflet-container { font-family: var(--font-body); }
.zvn .werkgebied__kantoor { position: absolute; left: 18px; bottom: 18px; top: auto; transform: none; z-index: 500; pointer-events: auto; display: block; background: #fff; border-radius: 16px; padding: 12px 16px; box-shadow: var(--sh-2); font-size: 13px; line-height: 1.35; white-space: nowrap; color: var(--text) !important; transition: transform .25s var(--ease); }
.zvn .werkgebied__kantoor:hover { transform: translateY(-3px); }
.zvn .werkgebied__kantoor em { display: block; font-style: normal; font-family: var(--font-bold); font-weight: 700; color: var(--blue); margin-top: 4px; }
.zvn .kpin { position: relative; display: block; width: 0; height: 0; }
.zvn .kpin i { position: absolute; left: -12px; top: -12px; width: 24px; height: 24px; background: var(--navy); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transition: transform .3s var(--ease), background .3s; filter: drop-shadow(0 2px 3px rgba(0,0,0,.25)); }
.zvn .kpin b { position: absolute; left: 16px; top: -10px; font-family: var(--font-bold); font-weight: 700; font-size: 14px; color: var(--navy); white-space: nowrap; text-shadow: 0 0 3px #fff, 0 0 3px #fff, 0 0 6px #fff; transition: color .3s; }
.zvn .kpin--hq i { left: -21px; top: -21px; width: 42px; height: 42px; background: var(--gold); }
.zvn .kpin--hq b { left: 26px; top: -12px; font-size: 17px; }
.zvn .kpin--hq::before { content: ""; position: absolute; left: -26px; top: -26px; width: 52px; height: 52px; border-radius: 50%; background: var(--gold); opacity: .35; animation: zvn-puls 2.6s var(--ease) infinite; }
.zvn .leaflet-marker-icon:hover .kpin i, .zvn .kpin.is-actief i { background: var(--pink); transform: scale(1.35) rotate(18deg); }
.zvn .leaflet-marker-icon:hover .kpin b, .zvn .kpin.is-actief b { color: var(--pink); }
.zvn .leaflet-control-attribution { font-size: 10px; }
.zvn .leaflet-bar a { border-radius: 10px !important; }
.zvn .leaflet-control-zoom { border: 0 !important; box-shadow: var(--sh-1) !important; border-radius: 12px !important; overflow: hidden; }
@media (max-width: 767px) { .zvn .werkgebied__map { aspect-ratio: 4 / 5; } .zvn .kpin b { font-size: 12px; } }
.zvn .werkgebied__map .leaflet-tile-pane { filter: grayscale(.9) contrast(.92) brightness(1.06); }
.zvn .kpin--links b { left: auto; right: 16px; }
.zvn .kpin--boven b { left: 0; transform: translateX(-50%); top: -36px; }
.zvn .kpin--onder b { left: 0; transform: translateX(-50%); top: 14px; }

/* ---------- klantverhalen als strakke slider in de merkvorm */
.zvn .verhalen { background: #f4f6f7; padding: 110px 0 90px; overflow: hidden; }
.zvn .verhalen__grid { display: grid; grid-template-columns: 340px minmax(0, 1fr); gap: 50px; align-items: start; }
.zvn .verhalen__kop { position: relative; padding-top: 10px; }
.zvn .verhalen__kop .section__title { font-size: 36px; line-height: 1.12; }
.zvn .verhalen__sticker { position: relative; margin: 24px 0 0 -6px; animation: zvn-wiebel 4s ease-in-out infinite; }
.zvn .verhalen__nav { display: flex; gap: 10px; margin-top: 26px; }
.zvn .verhalen__knop { all: unset; box-sizing: border-box; cursor: pointer; width: 56px !important; height: 56px !important; display: flex !important; align-items: center; justify-content: center; background: var(--navy) !important; color: #fff !important; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transition: background .2s, transform .2s; padding: 0 !important; border: 0 !important; }
.zvn .verhalen__knop:hover { background: var(--blue) !important; transform: scale(1.06); }
.zvn .verhalen__knop:disabled { opacity: .3; cursor: default; transform: none; }
.zvn .verhalen__knop svg { width: 22px; height: 22px; margin-top: 3px; }
.zvn .verhalen__baan { display: flex; gap: 22px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-left: 0; padding: 30px 60px 30px 4px; margin: -30px calc((min(100vw, var(--container)) - 100vw) / 2 - 20px) -30px 0; scrollbar-width: none; outline: none; }
.zvn .verhalen__baan::-webkit-scrollbar { display: none; }
.zvn .verhaal { --kleur: var(--gold); flex: 0 0 330px; scroll-snap-align: start; position: relative; display: flex; flex-direction: column; background: #fff; border-radius: 25px; padding: 26px 26px 24px; color: var(--text) !important; box-shadow: 0 2px 6px rgba(24,22,60,.05); transition: transform .4s var(--ease), box-shadow .4s var(--ease); }
.zvn .verhaal:hover { transform: translateY(-6px); box-shadow: 0 30px 50px -30px rgba(24,22,60,.45); }
.zvn .verhaal--green { --kleur: var(--green); } .zvn .verhaal--magenta { --kleur: var(--pink); } .zvn .verhaal--teal { --kleur: var(--teal); }
.zvn .verhaal__foto { position: relative; display: block; width: 128px; height: 128px; margin-bottom: 18px; }
.zvn .verhaal__vorm { position: absolute; inset: -8px; background: var(--kleur); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(-12deg); transition: transform .6s var(--ease); }
.zvn .verhaal__foto img { position: relative; width: 100% !important; height: 100% !important; object-fit: cover; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .verhaal:hover .verhaal__vorm { transform: rotate(14deg) scale(1.05); }
.zvn .verhaal__sterren { display: flex; gap: 3px; margin-bottom: 12px; }
.zvn .verhaal__sterren svg { width: 16px; height: 16px; fill: var(--gold); }
.zvn .verhaal__quote { position: relative; margin: 0 0 18px; padding: 0; font-family: var(--font-head); font-weight: 500; font-size: 19px; line-height: 1.45; color: var(--navy); border: 0; }
.zvn .verhaal__quote::before { content: "\201C"; position: absolute; left: -4px; top: -46px; font-family: Georgia, serif; font-size: 90px; line-height: 1; color: var(--kleur); opacity: .9; }
.zvn .verhaal__titel { font-family: var(--font-bold); font-weight: 700; font-size: 15px; color: var(--text-muted); margin-top: auto; }
.zvn .verhaal__lees { margin-top: 12px; font-family: var(--font-bold); font-weight: 700; font-size: 15px; color: var(--blue); display: inline-flex; gap: 6px; align-items: center; }
.zvn .verhaal__lees::after { content: "\2192"; transition: transform .3s var(--ease); }
.zvn .verhaal:hover .verhaal__lees::after { transform: translateX(5px); }
.zvn .verhaal--meer { background: var(--navy); color: #fff !important; justify-content: center; overflow: hidden; isolation: isolate; min-height: 360px; }
.zvn .verhaal--meer strong { font-family: var(--font-bold); font-size: 28px; line-height: 1.1; color: #fff; margin-bottom: 10px; }
.zvn .verhaal--meer span { color: rgba(255,255,255,.85); font-size: 16px; }
.zvn .verhaal--meer .verhaal__lees { color: #fff; }
.zvn .verhaal__meer-vorm { position: absolute; z-index: -1; right: -70px; top: -70px; width: 220px; height: 220px; background: var(--pink); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(20deg); transition: transform .8s var(--ease); }
.zvn .verhaal--meer:hover .verhaal__meer-vorm { transform: rotate(50deg) scale(1.15); }
.zvn .verhalen__voortgang { height: 4px; background: #dfe5e8; border-radius: 2px; margin-top: 40px; overflow: hidden; }
.zvn .verhalen__voortgang span { display: block; height: 100%; width: var(--zvn-voortgang, 25%); background: var(--navy); border-radius: 2px; transition: width .2s; }
@media (max-width: 1100px) {
  .zvn .verhalen__grid { grid-template-columns: 1fr; gap: 26px; }
  .zvn .verhalen__kop { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; column-gap: 16px; }
  .zvn .verhalen__kop .wow-eyebrow, .zvn .verhalen__kop .section__title { grid-column: 1 / -1; }
  .zvn .verhalen__sticker { display: none; }
  .zvn .verhalen__nav { margin-top: 0; grid-column: 2; grid-row: 3; }
  .zvn .verhalen__baan { margin: -30px -20px; padding: 30px 20px; scroll-padding-left: 20px; }
}
@media (max-width: 640px) {
  .zvn .verhalen { padding: 70px 0 60px; }
  .zvn .verhalen__kop .section__title { font-size: 28px; }
  .zvn .verhalen__nav { display: none; }
  .zvn .verhaal { flex: 0 0 82%; }
  .zvn .verhaal__quote { font-size: 17px; }
}

/* ---------- waardecheck-pop-up rechtsonder */
.zvn-pop { display: none; }
@media (min-width: 768px) {
  .zvn-pop { display: block; position: fixed; right: 24px; bottom: 24px; z-index: 9980; background: none !important; overflow: visible !important; font-size: 16px; pointer-events: none; }
  .zvn-pop * { pointer-events: auto; }
  .zvn-pop__pil { all: unset; box-sizing: border-box; cursor: pointer; display: inline-flex !important; align-items: center; gap: 10px; padding: 12px 18px 12px 12px !important; background: var(--blue) !important; color: #fff !important; font-family: var(--font-bold) !important; font-weight: 700; font-size: 15px !important; border-radius: 14px !important; box-shadow: 0 16px 34px -14px rgba(0,60,120,.7); transform: translateY(140%); opacity: 0; transition: transform .5s cubic-bezier(.34,1.4,.64,1), opacity .4s, background .2s; }
  .zvn-pop__pil:hover { background: var(--blue-hover) !important; }
  .zvn-pop__pilvorm { width: 26px; height: 26px; background: var(--gold); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; animation: zvn-wiebel 3.5s ease-in-out infinite; }
  .zvn-pop.is-zichtbaar .zvn-pop__pil { transform: none; opacity: 1; }
  .zvn-pop.is-open .zvn-pop__pil { transform: translateY(140%); opacity: 0; pointer-events: none; }
  .zvn-pop__kaart { position: absolute; right: 0; bottom: 0; width: 340px; background: #fff; border-radius: 22px; padding: 26px 24px 22px; box-shadow: 0 30px 70px -24px rgba(24,22,60,.55); overflow: hidden; isolation: isolate; transform: translateY(24px) scale(.94); transform-origin: bottom right; opacity: 0; visibility: hidden; transition: transform .45s cubic-bezier(.34,1.3,.64,1), opacity .3s, visibility 0s .45s; }
  .zvn-pop.is-open .zvn-pop__kaart { transform: none; opacity: 1; visibility: visible; transition: transform .45s cubic-bezier(.34,1.3,.64,1), opacity .3s, visibility 0s; }
  .zvn-pop.is-weg { opacity: 0; transform: translateY(20px); transition: opacity .3s, transform .3s; }
  .zvn-pop.is-weg * { pointer-events: none !important; }
  .zvn-pop__vorm { position: absolute; z-index: -1; right: -50px; top: -60px; width: 160px; height: 160px; background: var(--accent, var(--gold)); opacity: .16; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(18deg); }
  .zvn-pop__sluit { all: unset; position: absolute; top: 12px; right: 12px; width: 32px !important; height: 32px !important; display: flex !important; align-items: center; justify-content: center; border-radius: 10px !important; background: #f4f6f7 !important; color: var(--navy) !important; font-size: 22px !important; line-height: 1; cursor: pointer; }
  .zvn-pop__sluit:hover { background: #e9ebec !important; }
  .zvn-pop__kop { font-family: var(--font-bold); font-weight: 700; font-size: 22px; line-height: 1.15; color: var(--navy); margin: 0 36px 8px 0; }
  .zvn-pop__tekst { font-size: 15px; line-height: 1.5; color: var(--text); margin: 0 0 16px; }
  .zvn-pop__form { display: grid; gap: 8px; margin: 0; }
  .zvn-pop__form input { font: inherit; font-size: 15px; border: 1px solid #d3d7da; border-radius: 10px; padding: 11px 12px; background: #fff; color: var(--text); width: 100%; }
  .zvn-pop__form input:focus { outline: none; border-color: var(--blue); box-shadow: 0 0 0 3px rgba(0,109,183,.15); }
  .zvn-pop__knop { all: unset; box-sizing: border-box; display: block !important; text-align: center; cursor: pointer; background: var(--blue) !important; color: #fff !important; font-family: var(--font-bold) !important; font-weight: 700; font-size: 15px !important; padding: 13px 16px !important; border-radius: 12px !important; transition: background .2s; }
  .zvn-pop__knop:hover { background: var(--blue-hover) !important; }
}
@media (prefers-reduced-motion: reduce) { .zvn-pop__pil, .zvn-pop__kaart { transition: none !important; } .zvn-pop__pilvorm { animation: none; } }

/* ---------- persoonlijke teampagina's */
.zvn .persoon { --kleur: var(--gold); position: relative; overflow: hidden; isolation: isolate; background: var(--kleur); color: #fff; padding: 70px 0 90px; }
.zvn .persoon--green { --kleur: var(--green); } .zvn .persoon--magenta { --kleur: var(--pink); } .zvn .persoon--teal { --kleur: var(--teal); }
.zvn .persoon--terracotta { --kleur: var(--terracotta); } .zvn .persoon--navy { --kleur: var(--navy); }
.zvn .persoon__bg { position: absolute; z-index: -1; left: -140px; bottom: -220px; width: 560px; height: 560px; background: rgba(255,255,255,.1); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(16deg); }
.zvn .persoon__grid { display: grid; grid-template-columns: minmax(0, 1fr) 460px; gap: 60px; align-items: center; }
.zvn .persoon__terug { display: inline-block; font-family: var(--font-bold); font-weight: 700; font-size: 14px; color: #fff !important; opacity: .85; margin-bottom: 26px; }
.zvn .persoon__terug:hover { opacity: 1; text-decoration: underline; }
.zvn .persoon .wow-eyebrow { color: #fff; opacity: .9; }
.zvn .persoon h1 { font-family: var(--font-bold); font-weight: 700; font-size: clamp(40px, 5vw, 64px); line-height: 1.02; color: #fff; margin: 0 0 14px; letter-spacing: -.01em; }
.zvn .persoon__rol { font-size: 21px; font-weight: 500; line-height: 1.4; color: #fff; margin: 0 0 22px; max-width: 30em; }
.zvn .persoon__feiten { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 30px; padding: 0; }
.zvn .persoon__feiten li { list-style: none; font-family: var(--font-bold); font-weight: 700; font-size: 14px; background: rgba(255,255,255,.18); border: 1px solid rgba(255,255,255,.35); border-radius: 10px; padding: 8px 12px; }
.zvn .persoon__acties { display: flex; flex-wrap: wrap; gap: 10px; }
.zvn .persoon__knop { display: inline-flex; align-items: center; gap: 9px; font-family: var(--font-bold); font-weight: 700; font-size: 15px; padding: 13px 18px; border-radius: 12px; background: #fff; color: var(--navy) !important; transition: transform .2s, box-shadow .2s; }
.zvn .persoon__knop svg { width: 17px; height: 17px; }
.zvn .persoon__knop--app { background: var(--blue); color: #fff !important; }
.zvn .persoon__knop:hover { transform: translateY(-2px); box-shadow: 0 12px 24px -14px rgba(0,0,0,.5); }
.zvn .persoon__beeld { position: relative; width: 100%; aspect-ratio: 1; }
.zvn .persoon__vorm { position: absolute; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .persoon__vorm--a { inset: -4%; background: #fff; opacity: .95; transform: rotate(calc(-10deg + var(--zvn-rot, 0deg))); }
.zvn .persoon__vorm--b { inset: -9%; background: var(--navy); opacity: .9; transform: rotate(calc(14deg - var(--zvn-rot, 0deg))); z-index: -1; }
.zvn .persoon--navy .persoon__vorm--b { background: var(--gold); }
.zvn .persoon__beeld img { position: relative; width: 100% !important; height: 100% !important; object-fit: cover; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .persoon__sticker { position: absolute; right: -10px; bottom: 4%; width: 140px; height: 140px; padding: 18px; animation: zvn-wiebel 4.5s ease-in-out infinite; }
.zvn .persoon__sticker strong { font-size: 24px; } .zvn .persoon__sticker span { font-size: 12px; }
.zvn .persoon--magenta .persoon__sticker { --sticker: var(--navy); }
.zvn .persoon-bio { padding: 100px 0 60px; background: #fff; }
.zvn .persoon-bio__grid { display: grid; grid-template-columns: 340px minmax(0, 1fr); gap: 60px; }
.zvn .persoon-bio__tekst p { font-size: 19px; line-height: 1.65; color: var(--text); margin: 0 0 18px; max-width: 42em; }
.zvn .persoon-bio__tekst p:is(:first-child:not(:where(.nb-t0)),:where(.elementor-widget:first-child>.elementor-widget-container>.nb-t0)) { font-family: var(--font-head); font-weight: 500; font-size: 24px; line-height: 1.45; color: var(--navy); }
.zvn .persoon-helpt { padding: 60px 0; background: #fff; }
.zvn .helpt__rij { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 14px; margin-top: 26px; }
.zvn .helpt { position: relative; overflow: hidden; isolation: isolate; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 24px 24px; min-height: 96px; border-radius: 20px; background: #f4f6f7; font-family: var(--font-bold); font-weight: 700; font-size: 20px; color: var(--navy) !important; transition: color .35s, transform .35s var(--ease); }
.zvn .helpt__vorm { position: absolute; z-index: -1; right: -40px; top: -40px; width: 110px; height: 110px; background: var(--accent, var(--gold)); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(-14deg); transition: transform .7s var(--ease); }
.zvn .helpt:hover { color: #fff !important; transform: translateY(-4px); }
.zvn .helpt:hover .helpt__vorm { transform: rotate(20deg) scale(6); }
.zvn .helpt__pijl { position: relative; font-size: 22px; transition: transform .3s; }
.zvn .helpt:hover .helpt__pijl { transform: translateX(4px); }
.zvn .collegas { padding: 60px 0 110px; background: #fff; }
.zvn .collegas__rij { display: flex; flex-wrap: wrap; gap: 18px 14px; margin-top: 26px; }
.zvn .collega { --kleur: var(--gold); position: relative; display: flex; flex-direction: column; align-items: center; width: 118px; color: var(--navy) !important; }
.zvn .collega--green { --kleur: var(--green); } .zvn .collega--magenta { --kleur: var(--pink); } .zvn .collega--teal { --kleur: var(--teal); }
.zvn .collega--terracotta { --kleur: var(--terracotta); } .zvn .collega--navy { --kleur: var(--navy); }
.zvn .collega__vorm { position: absolute; top: -4px; width: 112px; height: 112px; background: var(--kleur); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(-12deg); transition: transform .5s var(--ease); }
.zvn .collega img { position: relative; width: 100px !important; height: 100px !important; margin-top: 2px; object-fit: cover; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transition: transform .4s var(--ease); }
.zvn .collega__naam { margin-top: 12px; font-family: var(--font-bold); font-weight: 700; font-size: 15px; }
.zvn .collega:hover .collega__vorm { transform: rotate(20deg) scale(1.06); }
.zvn .collega:hover img { transform: translateY(-4px); }
@media (max-width: 1100px) {
  .zvn .persoon__grid { grid-template-columns: 1fr; gap: 40px; }
  .zvn .persoon__beeld { max-width: 380px; margin: 0 auto; order: -1; }
  .zvn .persoon-bio__grid { grid-template-columns: 1fr; gap: 16px; }
}
@media (max-width: 640px) {
  .zvn .persoon { padding: 40px 0 60px; }
  .zvn .persoon__beeld { max-width: 280px; }
  .zvn .persoon__sticker { width: 104px; height: 104px; right: -14px; } .zvn .persoon__sticker strong { font-size: 18px; }
  .zvn .persoon__rol { font-size: 18px; }
  .zvn .persoon__knop { flex: 1 1 auto; justify-content: center; }
  .zvn .persoon-bio { padding: 60px 0 30px; }
  .zvn .persoon-bio__tekst p:is(:first-child:not(:where(.nb-t0)),:where(.elementor-widget:first-child>.elementor-widget-container>.nb-t0)) { font-size: 20px; }
  .zvn .collega { width: calc(33.3% - 10px); } .zvn .collega__vorm { width: 92px; height: 92px; } .zvn .collega img { width: 82px !important; height: 82px !important; }
}
.zvn .gezicht__link { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: inherit !important; }
.zvn .wiehelpt__meer { background: none !important; color: var(--blue) !important; padding: 9px 4px !important; }
.zvn .smoel-dialog__link { font-family: var(--font-bold); font-weight: 700; color: var(--blue) !important; }
.zvn .zvcontact__persoon { display: block; width: 100%; height: 100%; color: #fff !important; }
.zvn .verhaal__quote { padding-top: 30px; }
.zvn .verhaal__quote::before { top: -14px; font-size: 72px; }
@media (max-width: 767px) {
  .zvn .kpin i { left: -8px; top: -8px; width: 16px; height: 16px; }
  .zvn .kpin b { display: none; }
  .zvn .kpin--hq i { left: -15px; top: -15px; width: 30px; height: 30px; }
  .zvn .kpin--hq b { display: block; left: 20px; top: -10px; font-size: 15px; }
  .zvn .kpin--hq::before { left: -19px; top: -19px; width: 38px; height: 38px; }
  .zvn .kpin.is-actief b { display: block; }
}

/* ================================================================ ronde 5: de 25-jaaradvertentie als leidraad */

/* ---------- subpagina-hero: foto in de grote vijfhoek, twee kleurlijnen, confetti */
.zvn .hero-ad { --kleur: var(--accent, var(--gold)); position: relative; overflow: hidden; isolation: isolate; padding: 56px 0 64px;
  background: linear-gradient(180deg, #fff 0%, #fff 55%, color-mix(in srgb, var(--kleur) 12%, #fff) 100%); }
.zvn .hero-ad .confetti { z-index: -1; }
.zvn .hero-ad .confetti .c-navy { background: var(--navy); }
.zvn .hero-ad__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 520px); gap: 60px; align-items: center; }
.zvn .hero-ad h1 { font-family: var(--font-bold); font-weight: 700; font-size: clamp(36px, 4.4vw, 58px); line-height: 1.04; letter-spacing: -.012em; color: var(--navy); margin: 0 0 18px; }
.zvn .hero-ad .hero-photo__sub { font-size: 20px; line-height: 1.5; color: var(--text); font-weight: 400; max-width: 32em; margin: 0 0 28px; }
.zvn .hero-ad .hero-photo__actions { display: flex; flex-wrap: wrap; gap: 10px; }
.zvn .hero-ad .pill { font-size: 16px; padding: 14px 20px; box-shadow: 0 10px 22px -14px rgba(24,22,60,.45); }
.zvn .hero-ad .pill--white { background: #fff; color: var(--navy); border: 1px solid #dfe5e8; }
.zvn .hero-ad__beeld { position: relative; width: 100%; aspect-ratio: 1; }
.zvn .hero-ad__beeld img { position: relative; z-index: 2; width: 100% !important; height: 100% !important; object-fit: cover; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .hero-ad__ring { position: absolute; inset: 0; z-index: 3; -webkit-mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-geel.png") center / contain no-repeat; mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-geel.png") center / contain no-repeat; pointer-events: none; }
.zvn .hero-ad__ring--a { background: var(--kleur); transform: rotate(calc(8deg + var(--zvn-rot, 0deg))) scale(1.09); }
.zvn .hero-ad__ring--b { background: var(--pink); transform: rotate(calc(-11deg - var(--zvn-rot, 0deg))) scale(1.05); }
.zvn.theme-zakelijk .hero-ad__ring--b, .zvn.theme-nieuwbouw .hero-ad__ring--b { background: var(--navy); }
@media (max-width: 1100px) { .zvn .hero-ad__grid { grid-template-columns: minmax(0, 1fr) 380px; gap: 40px; } }
@media (max-width: 767px) {
  .zvn .hero-ad { padding: 26px 0 44px; }
  .zvn .hero-ad__grid { grid-template-columns: 1fr; gap: 26px; }
  .zvn .hero-ad__beeld { order: -1; width: 78%; max-width: 320px; margin: 0 auto; }
  .zvn .hero-ad h1 { font-size: 34px; }
  .zvn .hero-ad .hero-photo__sub { font-size: 17px; }
  .zvn .hero-ad .pill { flex: 1 1 auto; justify-content: center; }
}

/* ---------- vijfhoekfoto's op de pagina's: twee kleurlijnen zoals in de advertentie */
.zvn .media-row__media:not(.media-row__media--plain):has(img.frame)::before {
  content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: var(--pink);
  -webkit-mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-geel.png") center / contain no-repeat;
  mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-geel.png") center / contain no-repeat;
  transform: rotate(calc(-16deg - var(--zvn-rot, 0deg))) scale(1.1);
}
.zvn.theme-zakelijk .media-row__media:has(img.frame)::before, .zvn.theme-nieuwbouw .media-row__media:has(img.frame)::before { background: var(--gold); }

/* ---------- opsommingen: het vijfhoekje uit het logo (feedback 21-09) */
.zvn .check-list li svg, .zvn .check-list span svg { display: none !important; }
.zvn .check-list li, .zvn .check-list span { position: relative; padding-left: 30px !important; }
.zvn .check-list li::before, .zvn .check-list span::before {
  content: ""; position: absolute; left: 0; top: .38em; width: 15px; height: 15px; background: var(--accent, var(--gold));
  -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat;
}
.zvn .check-list li:is(:nth-child(3n+2):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3n+2)>.elementor-widget-container>.nb-t0))::before, .zvn .check-list span:is(:nth-child(3n+2):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3n+2)>.elementor-widget-container>.nb-t0))::before { transform: rotate(24deg); }
.zvn .check-list li:is(:nth-child(3n):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3n)>.elementor-widget-container>.nb-t0))::before, .zvn .check-list span:is(:nth-child(3n):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3n)>.elementor-widget-container>.nb-t0))::before { transform: rotate(-18deg); }
.zvn .panel--navy .check-list span::before, .zvn .zvcontact .check-list li::before { background: var(--gold); }
.zvn .check-list li::before, .zvn .check-list span::before { content: "" !important; display: block !important; }
/* twee lijnen zoals de advertentie: afdelingskleur (de rand) en magenta; de navy lijn eraf */
.zvn .media-row__media:not(.media-row__media--plain):has(img.frame)::after { display: none; }
/* confetti bij de foto houden, niet door de tekst */
@media (min-width: 768px) { .zvn .hero-ad .confetti { left: 52%; } }
@media (max-width: 767px) { .zvn .hero-ad .confetti { bottom: 58%; } }

/* ---------- plaatspagina's (/makelaar-<plaats /) */
.zvn .plaats-hero { position: relative; overflow: hidden; isolation: isolate; padding: 56px 0 70px; background: linear-gradient(180deg, #fff 0%, #fff 50%, #fbf3e3 100%); }
.zvn .plaats-hero__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 560px); gap: 60px; align-items: center; }
.zvn .plaats-hero h1 { font-family: var(--font-bold); font-weight: 700; font-size: clamp(38px, 4.6vw, 60px); line-height: 1.02; color: var(--navy); margin: 0 0 18px; letter-spacing: -.012em; }
.zvn .plaats-hero__intro p { font-size: 18px; line-height: 1.6; color: var(--text); margin: 0 0 12px; max-width: 36em; }
.zvn .plaats-hero__feiten { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 24px; padding: 0; }
.zvn .plaats-hero__feiten li { list-style: none; display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-bold); font-weight: 700; font-size: 14px; color: var(--navy); background: #fff; border: 1px solid #e9ebec; border-radius: 10px; padding: 8px 12px; box-shadow: var(--sh-1); }
.zvn .plaats-hero__feiten li::before { content: ""; width: 12px; height: 12px; background: var(--gold); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .plaats-hero__feiten li:is(:nth-child(2):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(2)>.elementor-widget-container>.nb-t0))::before { background: var(--pink); } .zvn .plaats-hero__feiten li:is(:nth-child(3):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3)>.elementor-widget-container>.nb-t0))::before { background: var(--teal); }
.zvn .plaats-hero .hero-photo__actions { display: flex; flex-wrap: wrap; gap: 10px; }
.zvn .plaats-hero .pill--white { background: #fff; color: var(--navy); border: 1px solid #dfe5e8; }
.zvn .plaats-hero__noot { font-style: italic; color: var(--text-muted); margin: 18px 0 0; font-size: 15px; }
.zvn .plaats-hero__kaart { position: relative; }
.zvn .plaats-hero__kaart .werkgebied__map { aspect-ratio: 1 / 1; border-radius: 28px; box-shadow: 0 30px 60px -34px rgba(24,22,60,.55); }
.zvn .plaats-hero__kaart::before { content: ""; position: absolute; inset: -18px; z-index: 0; background: var(--gold); opacity: .9; -webkit-mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-geel.png") center / 100% 100% no-repeat; mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-geel.png") center / 100% 100% no-repeat; transform: rotate(-4deg); pointer-events: none; }
.zvn .plaats-hero__kaart::after { content: ""; position: absolute; inset: -30px; z-index: 0; background: var(--pink); -webkit-mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-geel.png") center / 100% 100% no-repeat; mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-geel.png") center / 100% 100% no-repeat; transform: rotate(5deg); pointer-events: none; }
.zvn .plaats-hero__label { position: absolute; right: -14px; top: -18px; z-index: 600; background: var(--pink); color: #fff; font-family: var(--font-bold); font-weight: 700; font-size: 18px; padding: 10px 16px; border-radius: 12px; transform: rotate(4deg); box-shadow: var(--sh-2); }
.zvn .plaats-diensten__kop { max-width: 760px; margin-bottom: 30px; }
.zvn .plaats-diensten__rij { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.zvn .plaats-dienst { --kleur: var(--gold); position: relative; overflow: hidden; isolation: isolate; display: flex; flex-direction: column; justify-content: flex-end; min-height: 170px; padding: 24px; border-radius: 22px; background: #f4f6f7; color: var(--navy) !important; transition: color .35s, transform .35s var(--ease); }
.zvn .plaats-dienst--green { --kleur: var(--green); } .zvn .plaats-dienst--magenta { --kleur: var(--pink); } .zvn .plaats-dienst--teal { --kleur: var(--teal); }
.zvn .plaats-dienst__vorm { position: absolute; z-index: -1; right: -30px; top: -30px; width: 110px; height: 110px; background: var(--kleur); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(-12deg); transition: transform .7s var(--ease); }
.zvn .plaats-dienst strong { font-family: var(--font-bold); font-size: 24px; }
.zvn .plaats-dienst span:is(:last-child:not(:where(.nb-t0)),:where(.elementor-widget:last-child>.elementor-widget-container>.nb-t0)) { font-size: 15px; opacity: .8; }
.zvn .plaats-dienst:hover { color: #fff !important; transform: translateY(-4px); }
.zvn .plaats-dienst:hover .plaats-dienst__vorm { transform: rotate(20deg) scale(6); }
.zvn .plaats-quote { padding: 40px 0 70px; }
.zvn .plaats-quote__kaart { position: relative; background: var(--navy); color: #fff; border-radius: 28px; padding: 56px 60px; overflow: visible; }
.zvn .plaats-quote blockquote { margin: 0 0 12px; border: 0; padding: 0; font-family: var(--font-head); font-weight: 500; font-size: clamp(26px, 3vw, 38px); line-height: 1.25; color: #fff; max-width: 22em; }
.zvn .plaats-quote p { margin: 0; color: rgba(255,255,255,.8); font-weight: 600; }
.zvn .plaats-quote .sticker--quote { right: 40px; top: -54px; }
.zvn .plaats-brochure__kaart { position: relative; overflow: hidden; isolation: isolate; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 50px; align-items: center; background: #f4f6f7; border-radius: 28px; padding: 56px; }
.zvn .plaats-brochure__vorm { position: absolute; z-index: -1; right: -90px; bottom: -120px; width: 340px; height: 340px; background: var(--gold); opacity: .15; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(18deg); }
.zvn .plaats-brochure .check-list li { font-size: 17px; margin-bottom: 10px; color: var(--navy); font-weight: 500; }
.zvn .plaats-brochure .zvn-plek { margin-top: 18px; }
.zvn .plaats-waarom__grid { display: grid; grid-template-columns: 360px minmax(0, 1fr); gap: 60px; }
.zvn .plaats-waarom .rich h3 { font-family: var(--font-bold); font-size: 22px; color: var(--navy); margin: 30px 0 8px; }
.zvn .plaats-faq__lijst { display: grid; gap: 10px; margin-top: 24px; max-width: 900px; }
.zvn .plaats-faq__item { background: #f4f6f7; border-radius: 16px; padding: 0 22px; transition: background .25s; }
.zvn .plaats-faq__item[open] { background: #fff; box-shadow: inset 0 0 0 2px var(--gold); }
.zvn .plaats-faq__item summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 0; font-family: var(--font-bold); font-weight: 700; font-size: 18px; color: var(--navy); }
.zvn .plaats-faq__item summary::-webkit-details-marker { display: none; }
.zvn .plaats-faq__item summary::after { content: ""; flex: none; width: 26px; height: 26px; background: var(--gold); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transition: transform .35s; }
.zvn .plaats-faq__item[open] summary::after { transform: rotate(72deg); background: var(--pink); }
.zvn .plaats-faq__item div { padding: 0 0 20px; font-size: 17px; line-height: 1.6; color: var(--text); }
@media (max-width: 1100px) {
  .zvn .plaats-hero__grid { grid-template-columns: 1fr; gap: 50px; }
  .zvn .plaats-hero__kaart { max-width: 560px; }
  .zvn .plaats-diensten__rij { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .zvn .plaats-brochure__kaart, .zvn .plaats-waarom__grid { grid-template-columns: 1fr; gap: 20px; }
}
@media (max-width: 640px) {
  .zvn .plaats-hero { padding: 30px 0 50px; }
  .zvn .plaats-hero h1 { font-size: 36px; }
  .zvn .plaats-hero__kaart::after { inset: -14px; } .zvn .plaats-hero__kaart::before { inset: -8px; }
  .zvn .plaats-hero__label { right: 6px; font-size: 15px; }
  .zvn .plaats-hero .pill { flex: 1 1 auto; justify-content: center; }
  .zvn .plaats-dienst { min-height: 130px; padding: 18px; } .zvn .plaats-dienst strong { font-size: 20px; }
  .zvn .plaats-quote__kaart { padding: 44px 24px 34px; }
  .zvn .plaats-brochure__kaart { padding: 34px 22px; }
  .zvn .plaats-faq__item summary { font-size: 16px; }
}
/* eigen formulier in het contactblok: oude gouden footerblok weg */

/* ================================================================ ronde 6: taxeren en de mobiele hero */

/* ---------- keuzehulp: wat heb jij nodig? */
.zvn .tkeuze { background: #f4f6f7; }
.zvn .tkeuze__kop { max-width: 780px; margin-bottom: 28px; }
.zvn .tkeuze__opties { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.zvn .tkeuze__optie { all: unset; box-sizing: border-box; cursor: pointer; display: flex !important; flex-direction: column; gap: 14px; padding: 22px 20px !important; min-height: 138px; background: #fff !important; border: 2px solid transparent !important; border-radius: 20px !important; font-family: var(--font-bold) !important; font-weight: 700; font-size: 18px !important; line-height: 1.25; color: var(--navy) !important; box-shadow: 0 2px 6px rgba(24,22,60,.05); transition: transform .3s var(--ease), border-color .3s, box-shadow .3s; }
.zvn .tkeuze__optie:hover { transform: translateY(-4px); box-shadow: 0 20px 40px -26px rgba(24,22,60,.5); }
.zvn .tkeuze__optie.is-actief { border-color: var(--gold) !important; box-shadow: 0 20px 40px -26px rgba(24,22,60,.5); }
.zvn .tkeuze__optie:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
.zvn .tkeuze__ico { width: 46px; height: 46px; display: flex; align-items: center; justify-content: center; background: var(--gold); color: #fff; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transition: transform .45s var(--ease); }
.zvn .tkeuze__optie:is(:nth-child(2):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(2)>.elementor-widget-container>.nb-t0)) .tkeuze__ico { background: var(--pink); } .zvn .tkeuze__optie:is(:nth-child(3):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3)>.elementor-widget-container>.nb-t0)) .tkeuze__ico { background: var(--teal); } .zvn .tkeuze__optie:is(:nth-child(4):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(4)>.elementor-widget-container>.nb-t0)) .tkeuze__ico { background: var(--green); }
.zvn .tkeuze__optie.is-actief .tkeuze__ico, .zvn .tkeuze__optie:hover .tkeuze__ico { transform: rotate(24deg) scale(1.06); }
.zvn .tkeuze__ico svg { width: 21px; height: 21px; margin-top: 3px; }
.zvn .tkeuze__resultaat { margin-top: 16px; }
.zvn .tkeuze__leeg { margin: 6px 0 0; color: var(--text-muted); font-size: 15px; }
.zvn .tkeuze__resultaat:has(.tkeuze__uitkomst:not([hidden])) .tkeuze__leeg { display: none; }
.zvn .tkeuze__uitkomst { position: relative; background: var(--navy); color: #fff; border-radius: 22px; padding: 30px 32px; animation: zvn-pop .45s var(--ease); overflow: hidden; isolation: isolate; }
.zvn .tkeuze__uitkomst::after { content: ""; position: absolute; z-index: -1; right: -60px; top: -60px; width: 200px; height: 200px; background: var(--gold); opacity: .25; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(18deg); }
.zvn .tkeuze__label { display: inline-block; font-family: var(--font-bold); font-weight: 700; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; background: var(--gold); color: #fff; padding: 5px 10px; border-radius: 8px; margin-bottom: 12px; }
.zvn .tkeuze__uitkomst h3 { font-family: var(--font-bold); font-weight: 700; font-size: 28px; color: #fff; margin: 0 0 8px; }
.zvn .tkeuze__uitkomst p { color: rgba(255,255,255,.88); font-size: 17px; max-width: 44em; margin: 0 0 18px; }
.zvn .tkeuze__uitkomst .btn { background: #fff; color: var(--navy); }
/* taxatie tegenover verkoopopinie */
.zvn .tvs { display: grid; grid-template-columns: minmax(0, 1fr) 70px minmax(0, 1fr); align-items: center; margin-top: 50px; }
.zvn .tvs__kaart { position: relative; overflow: hidden; isolation: isolate; background: #fff; border-radius: 24px; padding: 34px 32px; height: 100%; }
.zvn .tvs__vorm { position: absolute; z-index: -1; right: -40px; top: -40px; width: 130px; height: 130px; background: var(--gold); opacity: .18; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(-12deg); }
.zvn .tvs__kaart--opinie .tvs__vorm { background: var(--pink); }
.zvn .tvs__kaart h3 { font-family: var(--font-bold); font-weight: 700; font-size: 26px; color: var(--navy); margin: 0 0 16px; }
.zvn .tvs__kaart dl { margin: 0; display: grid; gap: 4px; }
.zvn .tvs__kaart dt { font-family: var(--font-bold); font-weight: 700; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--text-muted); margin-top: 10px; }
.zvn .tvs__kaart dd { margin: 0; font-size: 17px; line-height: 1.5; color: var(--text); }
.zvn .tvs__of { justify-self: center; z-index: 2; width: 64px; height: 64px; display: flex; align-items: center; justify-content: center; background: var(--navy); color: #fff; font-family: var(--font-bold); font-weight: 700; font-size: 18px; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; margin: 0 -18px; }

/* ---------- waardefactoren en keurmerken */
.zvn .factoren__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 60px; align-items: center; }
.zvn .factoren__rij { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; padding: 0; margin: 0; }
.zvn .factor { --kleur: var(--gold); position: relative; list-style: none; display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; }
.zvn .factor--green { --kleur: var(--green); } .zvn .factor--magenta { --kleur: var(--pink); } .zvn .factor--teal { --kleur: var(--teal); } .zvn .factor--terracotta { --kleur: var(--terracotta); }
.zvn .factor__vorm { position: absolute; top: 0; left: 50%; width: 96px; height: 96px; margin-left: -48px; background: var(--kleur); opacity: .16; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(calc(var(--i) * 31deg)); transition: transform .6s var(--ease), opacity .4s; }
.zvn .factor__ico { position: relative; width: 96px; height: 96px; display: flex; align-items: center; justify-content: center; color: var(--kleur); }
.zvn .factor__ico svg { width: 36px; height: 36px; transition: transform .4s var(--ease); }
.zvn .factor__naam { font-family: var(--font-bold); font-weight: 700; font-size: 16px; color: var(--navy); }
.zvn .factor:hover .factor__vorm { opacity: 1; transform: rotate(calc(var(--i) * 31deg + 40deg)) scale(1.05); }
.zvn .factor:hover .factor__ico { color: #fff; } .zvn .factor:hover .factor__ico svg { transform: scale(1.1); }
.zvn .keurmerk { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 56px; }
.zvn .keurmerk__item { display: flex; align-items: center; gap: 16px; background: #f4f6f7; border-radius: 18px; padding: 18px 20px; font-size: 15px; line-height: 1.45; color: var(--text); }
.zvn .keurmerk__item img { height: 34px; width: auto; flex: none; }
.zvn .keurmerk__item strong { color: var(--navy); }
.zvn .keurmerk__getal { flex: none; width: 58px; height: 58px; display: flex; align-items: center; justify-content: center; background: var(--gold); color: #fff; font-family: var(--font-bold); font-weight: 700; font-size: 18px; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
@media (max-width: 1100px) {
  .zvn .tkeuze__opties { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .zvn .factoren__grid { grid-template-columns: 1fr; gap: 30px; }
  .zvn .keurmerk { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .zvn .tkeuze__optie { min-height: 118px; font-size: 16px !important; padding: 18px 16px !important; }
  .zvn .tkeuze__uitkomst { padding: 26px 22px; } .zvn .tkeuze__uitkomst h3 { font-size: 23px; }
  .zvn .tvs { grid-template-columns: 1fr; }
  .zvn .tvs__of { margin: -18px auto; }
  .zvn .factoren__rij { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 20px; }
  .zvn .factor__vorm, .zvn .factor__ico { width: 78px; height: 78px; } .zvn .factor__vorm { margin-left: -39px; }
}

/* ---------- hero van home en hubs op mobiel: foto in de vijfhoek met twee lijnen */
.zvn .hero-band__media--vorm { position: relative; }
.zvn .hero-band__media--vorm img.hero-band__foto { position: absolute; inset: 0; width: 100% !important; height: 100% !important; object-fit: cover; z-index: 0; }
.zvn .hero-band__media--vorm::before { z-index: 1; }
.zvn .hero-band__media--vorm .hero-band__badge { z-index: 4; }
.zvn .hero-band__ring { display: none; }
@media (max-width: 1100px) {
  .zvn .hero-band__media--vorm { height: auto !important; aspect-ratio: 1 !important; width: min(100%, 440px) !important; margin: 40px auto 46px !important; border-radius: 0 !important; background: none !important; }
  .zvn .hero-band__media--vorm img.hero-band__foto { -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; border-radius: 0; }
  .zvn .hero-band__ring { display: block; position: absolute; inset: 0; z-index: 3; pointer-events: none; -webkit-mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-geel.png") center / contain no-repeat; mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-geel.png") center / contain no-repeat; }
  .zvn .hero-band__ring--a { background: #fff; transform: rotate(8deg) scale(1.08); }
  .zvn .hero-band__ring--b { background: var(--navy); transform: rotate(-10deg) scale(1.04); }
  .zvn .hero-band--navy .hero-band__ring--b { background: var(--gold); }
  .zvn .hero-band__media--vorm .hero-band__badge--top { left: -6px !important; top: -14px !important; width: clamp(110px, 32%, 150px) !important; }
  .zvn .hero-band__media--vorm .hero-band__badge--bottom { right: -4px !important; left: auto !important; bottom: -6px !important; top: auto !important; width: clamp(84px, 24%, 118px) !important; }
}
.zvn .taxatie-kaart__head img { border-radius: 0 !important; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
@media (min-width: 1101px) {
  .zvn .hero-band__intro { flex: 0 0 min(500px, 40%) !important; max-width: min(500px, 40%) !important; }
  .zvn .hero-band__media { flex: 1 1 auto !important; min-width: 0 !important; }
  .zvn .hero-band__media--vorm .hero-band__badge--top { left: -96px !important; }
  .zvn .hero-band__media--vorm .hero-band__badge--bottom { left: 40px !important; }
  .zvn .hero-band .snel-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1300px) { .zvn .hero-band .snel-nav { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1101px) { .zvn .hero-band__media--vorm .hero-band__badge--top { left: -60px !important; } }

/* ---------- chatkaart: vervangt het oude magenta golfblok 'Wat kan ik voor je doen?' */
.zvn .chatkaart { padding: 30px 0 90px; background: #fff; }
.zvn .chatkaart__kaart { position: relative; overflow: hidden; isolation: isolate; display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 46px; align-items: center; background: #F7D9DB; border-radius: 30px; padding: 44px 56px; }
.zvn .chatkaart__kaart::after { content: ""; position: absolute; z-index: -1; right: -80px; bottom: -120px; width: 320px; height: 320px; background: rgba(211,15,78,.1); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(20deg); }
.zvn .chatkaart__foto { position: relative; display: block; width: 240px; height: 240px; }
.zvn .chatkaart__foto img { position: relative; z-index: 2; width: 100% !important; height: 100% !important; object-fit: cover; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transition: transform .5s var(--ease); }
.zvn .chatkaart__ring { position: absolute; inset: 0; z-index: 3; pointer-events: none; -webkit-mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-geel.png") center / contain no-repeat; mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-rand-geel.png") center / contain no-repeat; transition: transform .7s var(--ease); }
.zvn .chatkaart__ring--a { background: var(--pink); transform: rotate(-9deg) scale(1.08); }
.zvn .chatkaart__ring--b { background: var(--accent, var(--gold)); transform: rotate(8deg) scale(1.13); }
.zvn .chatkaart__foto:hover .chatkaart__ring--a { transform: rotate(-24deg) scale(1.1); }
.zvn .chatkaart__foto:hover .chatkaart__ring--b { transform: rotate(22deg) scale(1.15); }
.zvn .chatkaart__foto:hover img { transform: scale(1.03); }
.zvn .chatkaart__gesprek { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.zvn .chatkaart__bubbel { position: relative; background: #fff; border-radius: 22px 22px 22px 6px; box-shadow: 0 14px 30px -20px rgba(24,22,60,.45); }
.zvn .chatkaart__bubbel--tekst { padding: 24px 28px; max-width: 620px; }
.zvn .chatkaart__bubbel--tekst::before { content: ""; position: absolute; left: -12px; bottom: 0; width: 22px; height: 22px; background: #fff; clip-path: polygon(100% 0, 100% 100%, 0 100%); }
.zvn .chatkaart__wie { margin: 0 0 6px; font-family: var(--font-bold); font-weight: 700; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--pink); }
.zvn .chatkaart__bubbel h2 { font-family: var(--font-bold); font-weight: 700; font-size: clamp(24px, 2.4vw, 32px); line-height: 1.15; color: var(--navy); margin: 0 0 8px; }
.zvn .chatkaart__bubbel p:is(:last-child:not(:where(.nb-t0)),:where(.elementor-widget:last-child>.elementor-widget-container>.nb-t0)) { margin: 0; font-size: 17px; color: var(--text); }
.zvn .chatkaart__bubbel a { color: var(--blue); font-weight: 700; }
.zvn .chatkaart__acties { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.zvn .chatkaart__knop { display: inline-flex; align-items: center; font-family: var(--font-bold); font-weight: 700; font-size: 15px; padding: 13px 18px; border-radius: 12px; background: #fff; color: var(--navy) !important; transition: transform .2s, box-shadow .2s; }
.zvn .chatkaart__knop--app { background: var(--blue); color: #fff !important; }
.zvn .chatkaart__knop:hover { transform: translateY(-2px); box-shadow: 0 12px 22px -14px rgba(24,22,60,.5); }
.zvn .chatkaart__link { font-family: var(--font-bold); font-weight: 700; font-size: 15px; color: var(--navy) !important; margin-left: 6px; }
.zvn .chatkaart__link:hover { text-decoration: underline; }
/* typ-animatie: eerst drie puntjes, dan de tekst */
.zvn .chatkaart__bubbel--typen { display: none; padding: 16px 20px; gap: 6px; }
.zvn .chatkaart__bubbel--typen i { width: 8px; height: 8px; border-radius: 50%; background: #bdc2c6; animation: zvn-typ 1s ease-in-out infinite; }
.zvn .chatkaart__bubbel--typen i:is(:nth-child(2):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(2)>.elementor-widget-container>.nb-t0)) { animation-delay: .15s; } .zvn .chatkaart__bubbel--typen i:is(:nth-child(3):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3)>.elementor-widget-container>.nb-t0)) { animation-delay: .3s; }
@keyframes zvn-typ { 0%, 100% { transform: translateY(0); opacity: .5; } 50% { transform: translateY(-5px); opacity: 1; } }
.zvn .chatkaart.is-wacht .chatkaart__bubbel--typen { display: inline-flex; }
.zvn .chatkaart.is-wacht .chatkaart__bubbel--tekst, .zvn .chatkaart.is-wacht .chatkaart__acties { opacity: 0; transform: translateY(10px); }
.zvn .chatkaart__bubbel--tekst, .zvn .chatkaart__acties { transition: opacity .5s var(--ease), transform .5s var(--ease); }
@media (max-width: 900px) {
  .zvn .chatkaart__kaart { grid-template-columns: 1fr; gap: 26px; padding: 34px 24px; justify-items: center; }
  .zvn .chatkaart__foto { width: 180px; height: 180px; }
}
@media (max-width: 640px) {
  .zvn .chatkaart { padding: 10px 0 60px; }
  .zvn .chatkaart__bubbel--tekst { padding: 20px; }
  .zvn .chatkaart__acties { width: 100%; }
  .zvn .chatkaart__knop { flex: 1 1 auto; justify-content: center; }
  .zvn .chatkaart__link { width: 100%; text-align: center; margin: 4px 0 0; }
}
@media (prefers-reduced-motion: reduce) { .zvn .chatkaart__bubbel--typen i { animation: none; } }

/* ================================================================ ronde 7: alles gelijk getrokken */

/* ---------- vast kenmerk: het vijfhoekje voor elk eyebrow-kopje */
.zvn :is(.wow-eyebrow, .intro-panel__eyebrow) { display: inline-flex !important; align-items: center; gap: 8px; }
.zvn :is(.wow-eyebrow, .intro-panel__eyebrow)::before { content: ""; flex: none; width: 11px; height: 11px; background: currentColor; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .intro-panel__eyebrow { color: var(--accent, var(--gold)) !important; }

/* ---------- intropaneel: een rustige vijfhoek in de hoek */
.zvn .intro-panel { position: relative; overflow: hidden; isolation: isolate; }
.zvn .intro-panel::after { content: ""; position: absolute; z-index: -1; left: -70px; bottom: -110px; width: 260px; height: 260px; background: var(--accent, var(--gold)); opacity: .08; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(16deg); }

/* ---------- alle kaarten met foto: dezelfde familie als de verhaalkaarten */
.zvn :is(.project-kaart, .projecten-kaart, .diensten-kaart, .ontwikkel-kaart) {
  position: relative; overflow: hidden; isolation: isolate; background: #fff !important; border: 0 !important; border-radius: 24px !important;
  box-shadow: 0 2px 8px rgba(24,22,60,.06) !important; transition: transform .4s var(--ease), box-shadow .4s var(--ease) !important;
}
.zvn :is(.project-kaart, .projecten-kaart, .diensten-kaart, .ontwikkel-kaart):hover { transform: translateY(-6px); box-shadow: 0 30px 50px -30px rgba(24,22,60,.5) !important; }
.zvn :is(.project-kaart__media, .projecten-kaart__media, .diensten-kaart__media, .ontwikkel-kaart__media) { overflow: hidden; border-radius: 18px; margin: 10px 10px 0; }
.zvn :is(.project-kaart__media, .projecten-kaart__media, .diensten-kaart__media, .ontwikkel-kaart__media) img { transition: transform .7s var(--ease) !important; }
.zvn :is(.project-kaart, .projecten-kaart, .diensten-kaart, .ontwikkel-kaart):hover :is(.project-kaart__media, .projecten-kaart__media, .diensten-kaart__media, .ontwikkel-kaart__media) img { transform: scale(1.06); }
.zvn :is(.project-kaart, .projecten-kaart, .diensten-kaart, .ontwikkel-kaart)::after {
  content: ""; position: absolute; z-index: 2; right: 22px; top: 22px; width: 38px; height: 38px; background: var(--accent, var(--gold));
  -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(-12deg); transition: transform .5s var(--ease); pointer-events: none;
}
.zvn :is(.project-kaart, .projecten-kaart, .diensten-kaart, .ontwikkel-kaart):hover::after { transform: rotate(24deg) scale(1.12); }
.zvn .project-kaart__plaats { display: inline-flex !important; align-items: center; gap: 7px; font-family: var(--font-bold); font-weight: 700; font-size: 12px !important; letter-spacing: .12em; text-transform: uppercase; color: var(--accent, var(--gold)) !important; }
.zvn .project-kaart__plaats::before { content: ""; width: 10px; height: 10px; background: currentColor; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn :is(.project-kaart__link, .projecten-kaart__link, .diensten-kaart__link, .ontwikkel-kaart__link) { display: inline-flex !important; align-items: center; gap: 8px; font-family: var(--font-bold); font-weight: 700; color: var(--blue) !important; }
.zvn :is(.projecten-kaart__link, .diensten-kaart__link, .ontwikkel-kaart__link)::after { content: "\2192"; transition: transform .3s var(--ease); }
.zvn :is(.project-kaart, .projecten-kaart, .diensten-kaart, .ontwikkel-kaart):hover :is(.projecten-kaart__link, .diensten-kaart__link, .ontwikkel-kaart__link)::after { transform: translateX(5px); }

/* ---------- partnerkaarten */
.zvn .partner-kaart { position: relative; overflow: hidden; isolation: isolate; border-radius: 22px !important; border: 0 !important; background: #fff !important; box-shadow: 0 2px 8px rgba(24,22,60,.06) !important; transition: transform .4s var(--ease), box-shadow .4s var(--ease) !important; }
.zvn .partner-kaart::after { content: ""; position: absolute; z-index: -1; right: -40px; bottom: -50px; width: 140px; height: 140px; background: var(--gold); opacity: .1; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(18deg); transition: transform .6s var(--ease), opacity .4s; }
.zvn .partner-kaart:hover { transform: translateY(-4px); box-shadow: 0 26px 44px -30px rgba(24,22,60,.5) !important; }
.zvn .partner-kaart:hover::after { transform: rotate(40deg) scale(1.2); opacity: .18; }
.zvn .partner-kaart__sub { color: var(--accent, var(--gold)) !important; }

/* ---------- 'onze diepste wens' als citaat met sticker */
.zvn .wens-band { position: relative; overflow: hidden; isolation: isolate; }
.zvn .wens-band::after { content: ""; position: absolute; z-index: -1; right: 6%; top: 50%; width: 180px; height: 180px; margin-top: -90px; background: var(--pink); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(14deg); animation: zvn-zweef 9s ease-in-out infinite alternate; opacity: .9; }
.zvn .wens-band__quote { font-family: var(--font-head) !important; font-weight: 500 !important; font-size: clamp(26px, 3vw, 40px) !important; max-width: 20em; }
@media (max-width: 767px) { .zvn .wens-band::after { width: 110px; height: 110px; right: -30px; } }

/* ---------- klantverhalen-overzicht (Beoordelingen): kaarten uit de loop in dezelfde stijl */
.zvn .stories--grid .zvVerhaalKaart a, .zvn .stories--grid .e-loop-item .e-con { border-radius: 24px !important; box-shadow: 0 2px 8px rgba(24,22,60,.06) !important; transition: transform .4s var(--ease), box-shadow .4s var(--ease) !important; }
.zvn .stories--grid .zvVerhaalKaart:hover a, .zvn .stories--grid .e-loop-item:hover .e-con { transform: translateY(-6px); box-shadow: 0 30px 50px -30px rgba(24,22,60,.5) !important; }
.zvn .stories--grid .zvVerhaalBeeld img { border-radius: 18px !important; transition: transform .7s var(--ease) !important; }
.zvn .stories--grid .zvVerhaalKaart:hover .zvVerhaalBeeld img { transform: scale(1.05); }
.zvn .stories--grid .zvVerhaalQuote, .zvn .stories--grid .zvVerhaalQuote * { font-family: var(--font-head) !important; font-weight: 500 !important; color: var(--navy) !important; }
.zvn .stories--grid .zvVerhaalLink, .zvn .stories--grid .zvVerhaalLink * { color: var(--blue) !important; font-weight: 700 !important; }

/* ---------- nieuwsoverzicht: kaarten en filterknoppen */
.zvn .elementor-widget-loop-grid .e-loop-item { border-radius: 22px; overflow: hidden; transition: transform .4s var(--ease), box-shadow .4s var(--ease); }
.zvn .elementor-widget-loop-grid .e-loop-item:hover { transform: translateY(-6px); box-shadow: 0 30px 50px -30px rgba(24,22,60,.5); }
.zvn .elementor-widget-loop-grid .e-loop-item img { transition: transform .7s var(--ease); }
.zvn .elementor-widget-loop-grid .e-loop-item:hover img { transform: scale(1.05); }
.zvn .elementor-widget-taxonomy-filter .e-filter-item { border-radius: 10px !important; font-family: var(--font-bold) !important; font-weight: 700 !important; padding: 9px 16px !important; border: 1px solid #dfe5e8 !important; background: #fff !important; color: var(--navy) !important; display: inline-flex !important; align-items: center; gap: 8px; }
.zvn .elementor-widget-taxonomy-filter .e-filter-item::before { content: ""; width: 10px; height: 10px; background: var(--gold); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .elementor-widget-taxonomy-filter .e-filter-item[aria-pressed="true"] { background: var(--navy) !important; color: #fff !important; border-color: var(--navy) !important; }
/* pop-up: kop mag afbreken */
.zvn-pop__kop { white-space: normal !important; overflow-wrap: break-word; font-size: 20px !important; }
/* waardecheckpagina: merkvorm in de gouden hero, portret in de vijfhoek */
.zvn .wcheck-hero { position: relative; overflow: hidden; isolation: isolate; }
.zvn .wcheck-hero::before { content: ""; position: absolute; z-index: -1; left: -140px; bottom: -200px; width: 520px; height: 520px; background: rgba(255,255,255,.12); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(14deg); }
.zvn .wcheck-hero::after { content: ""; position: absolute; z-index: -1; right: 38%; top: -70px; width: 180px; height: 180px; background: var(--pink); opacity: .85; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(-18deg); animation: zvn-zweef 10s ease-in-out infinite alternate; }
.zvn :is(.makelaar-note img, .avatar-row img) { border-radius: 0 !important; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .wcheck-hero__stats div, .zvn .stat-tiles div { border-radius: 16px !important; }
/* contactpagina: iconen in de vijfhoek */
.zvn .info-card__icon { border-radius: 0 !important; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .info-card { border-radius: 22px !important; transition: transform .35s var(--ease), box-shadow .35s var(--ease); }
.zvn .info-card:hover { transform: translateY(-4px); box-shadow: 0 24px 40px -28px rgba(24,22,60,.5); }
@media (max-width: 767px) { .zvn .wcheck-hero::after { width: 110px; height: 110px; right: -20px; top: -40px; } }
/* ================================================================ ronde 8: blogoverzicht */
.zvn .blogo__balk{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;flex-wrap:wrap;margin-bottom:22px}
.zvn .blogo__balk .section__title{margin:0}
.zvn .blogo__zoek{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #dfe5e8;border-radius:16px;padding:6px 16px;min-width:min(360px,100%);transition:border-color .2s,box-shadow .2s}
.zvn .blogo__zoek:focus-within{border-color:var(--navy,#2B2567);box-shadow:0 18px 40px -28px rgba(24,22,60,.55)}
.zvn .blogo__zoek-ico{flex:none;width:20px;height:20px;background:#2B2567;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") center/contain no-repeat}
.zvn .blogo__zoek input{flex:1;min-width:0;border:0 !important;outline:0 !important;box-shadow:none !important;background:transparent !important;font:inherit;font-size:17px !important;padding:11px 0 !important;color:#202527 !important}
.zvn .blogo__chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:34px}
.zvn .blogo__chip{all:unset;cursor:pointer;display:inline-flex !important;align-items:center;gap:8px;font-weight:700 !important;font-size:14px !important;color:#2B2567 !important;background:#fff !important;border:1px solid #dfe5e8 !important;border-radius:10px !important;padding:9px 14px !important;transition:background .2s,color .2s,border-color .2s}
.zvn .blogo__chip::before{content:"";width:10px;height:10px;background:#DF9A14;-webkit-mask:var(--vijfhoek) center/contain no-repeat;mask:var(--vijfhoek) center/contain no-repeat}
.zvn .blogo__chip b{font-weight:700;opacity:.5}
.zvn .blogo__chip:hover{border-color:#2B2567 !important}
.zvn .blogo__chip.is-actief{background:#2B2567 !important;color:#fff !important;border-color:#2B2567 !important}
.zvn .blogo__chip.is-actief::before{background:#fff}
.zvn .blogo__leeg{text-align:center;padding:40px 20px}
.zvn .blogo__leeg h3{color:#2B2567;font-size:26px;margin:0 0 8px}
/* de kaarten zelf: Elementor-posts in de nieuwe stijl */
.zvn .blogo .elementor-posts-container{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:26px !important}
.zvn .blogo .elementor-post{--k:#DF9A14;margin:0 !important;width:auto !important;transition:transform .45s cubic-bezier(.22,.61,.36,1)}
.zvn .blogo .elementor-post:is(:nth-child(4n+2):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(4n+2)>.elementor-widget-container>.nb-t0)){--k:#D30F4E}.zvn .blogo .elementor-post:is(:nth-child(4n+3):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(4n+3)>.elementor-widget-container>.nb-t0)){--k:#0089AC}.zvn .blogo .elementor-post:is(:nth-child(4n+4):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(4n+4)>.elementor-widget-container>.nb-t0)){--k:#6A9A31}
.zvn .blogo .elementor-post.is-weg{display:none !important}
.zvn .blogo .elementor-post__card{position:relative;isolation:isolate;height:100%;display:flex !important;flex-direction:column;background:#f4f6f7 !important;border:0 !important;border-radius:24px !important;box-shadow:none !important;overflow:hidden;transition:background .35s,box-shadow .35s}
.zvn .blogo .elementor-post__card::after{content:"";position:absolute;z-index:2;right:-28px;bottom:-28px;width:92px;height:92px;background:var(--k);opacity:.16;-webkit-mask:var(--vijfhoek) center/contain no-repeat;mask:var(--vijfhoek) center/contain no-repeat;transform:rotate(-12deg);transition:transform .6s cubic-bezier(.22,.61,.36,1),opacity .4s;pointer-events:none}
.zvn .blogo .elementor-post:hover{transform:translateY(-6px)}
.zvn .blogo .elementor-post:hover .elementor-post__card{background:#fff !important;box-shadow:0 30px 50px -34px rgba(24,22,60,.55) !important}
.zvn .blogo .elementor-post:hover .elementor-post__card::after{opacity:.95;transform:rotate(18deg) scale(1.15)}
.zvn .blogo .elementor-post__thumbnail__link{display:block;margin:0 !important;width:100% !important}
.zvn .blogo .elementor-post__thumbnail{position:relative !important;padding-bottom:0 !important;aspect-ratio:16/10;overflow:hidden;border-radius:0 !important}
.zvn .blogo .elementor-post__thumbnail img{position:absolute !important;inset:0;width:100% !important;height:100% !important;object-fit:cover;transform:none !important;left:0 !important;top:0 !important;transition:transform .8s cubic-bezier(.22,.61,.36,1) !important}
.zvn .blogo .elementor-post:hover .elementor-post__thumbnail img{transform:scale(1.05) !important}
.zvn .blogo .elementor-post__text{position:relative;z-index:3;display:flex;flex-direction:column;flex:1;padding:22px 24px 24px !important;margin:0 !important}
.zvn .blogo .elementor-post__title,.zvn .blogo .elementor-post__title a{font-family:'Raleway',sans-serif !important;font-weight:700 !important;font-size:20px !important;line-height:1.25 !important;color:#2B2567 !important;margin:0 0 10px !important;letter-spacing:0 !important}
.zvn .blogo .elementor-post__excerpt p{font-size:15px !important;line-height:1.55 !important;color:#454b4f !important;margin:0 0 16px !important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.zvn .blogo .elementor-post__read-more{margin-top:auto;font-weight:700 !important;font-size:14px !important;color:#006DB7 !important;text-transform:none !important;letter-spacing:0 !important}
.zvn .blogo .elementor-post__read-more::after{content:" \2192";transition:margin .3s}
.zvn .blogo .elementor-post:hover .elementor-post__read-more::after{margin-left:4px}
.zvn .blogo .elementor-post__meta-data{border:0 !important;padding:0 !important;margin:0 !important;position:absolute;z-index:4;top:16px;left:16px}
.zvn .blogo .elementor-post__meta-data span{display:inline-block;background:#fff;color:#2B2567 !important;font-weight:700 !important;font-size:12px !important;letter-spacing:.06em;text-transform:uppercase;padding:7px 11px;border-radius:9px;box-shadow:0 10px 24px -16px rgba(24,22,60,.6)}
.zvn .blogo .elementor-post__badge,.zvn .blogo .elementor-post__avatar{display:none !important}
/* uitgelicht: het nieuwste artikel groot */
.zvn .blogo .elementor-post.is-uitgelicht{grid-column:1/-1}
.zvn .blogo .is-uitgelicht .elementor-post__card{display:grid !important;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);background:#C8D6EF !important}
.zvn .blogo .is-uitgelicht .elementor-post__thumbnail{aspect-ratio:auto;height:100%;min-height:380px}
.zvn .blogo .is-uitgelicht .elementor-post__text{justify-content:center;padding:48px 52px !important}
.zvn .blogo .is-uitgelicht .elementor-post__text::before{content:"Nieuwste artikel";align-self:flex-start;margin-bottom:16px;background:#DF9A14;color:#fff;font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding:6px 11px;border-radius:8px}
.zvn .blogo .is-uitgelicht .elementor-post__title,.zvn .blogo .is-uitgelicht .elementor-post__title a{font-size:clamp(26px,2.6vw,38px) !important;line-height:1.1 !important}
.zvn .blogo .is-uitgelicht .elementor-post__excerpt p{font-size:17px !important;-webkit-line-clamp:4}
.zvn .blogo .is-uitgelicht .elementor-post__card::after{width:220px;height:220px;right:-60px;bottom:-70px;background:#2B2567;opacity:.12}
.zvn .blogo .is-uitgelicht .elementor-post__meta-data{top:22px;left:22px}
.zvn .blogo .elementor-pagination,.zvn .blogo .e-load-more-anchor,.zvn .blogo .elementor-button-wrapper{display:none !important}
@media(max-width:1024px){.zvn .blogo .elementor-posts-container{grid-template-columns:repeat(2,minmax(0,1fr)) !important}.zvn .blogo .is-uitgelicht .elementor-post__card{grid-template-columns:1fr}.zvn .blogo .is-uitgelicht .elementor-post__thumbnail{min-height:0;aspect-ratio:16/9}.zvn .blogo .is-uitgelicht .elementor-post__text{padding:32px 30px !important}}
@media(max-width:767px){.zvn .blogo .elementor-posts-container{grid-template-columns:1fr !important;gap:18px !important}.zvn .blogo__balk{gap:18px}.zvn .blogo__zoek{min-width:100%}.zvn .blogo__chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -20px 26px;padding:0 20px}.zvn .blogo__chips::-webkit-scrollbar{display:none}.zvn .blogo__chip{flex:none}.zvn .blogo .is-uitgelicht .elementor-post__text{padding:26px 22px !important}}
/* ================================================================ ronde 9: Waardecheck-pagina */
.zvn .wc2 { position: relative; overflow: hidden; isolation: isolate; background: linear-gradient(180deg, #fdf6e8 0%, #fff 100%); padding: 72px 0 88px; }
.zvn .wc2__vorm { position: absolute; z-index: -1; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; pointer-events: none; }
.zvn .wc2__vorm--a { width: 560px; height: 560px; right: -170px; top: -200px; background: rgba(223,154,20,.14); transform: rotate(-14deg); }
.zvn .wc2__vorm--b { width: 150px; height: 150px; left: 42%; bottom: -60px; background: var(--gold); transform: rotate(20deg); opacity: .9; }
.zvn .wc2__grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,540px); gap: 72px; align-items: start; }
.zvn .wc2 h1 { font-family: var(--font-bold); font-weight: 700; font-size: clamp(38px, 4.8vw, 64px); line-height: 1.02; letter-spacing: -.015em; color: var(--navy); margin: 0 0 18px; }
.zvn .wc2__intro { font-size: 19px; line-height: 1.55; color: var(--navy); opacity: .85; max-width: 34em; margin: 0 0 34px; }
.zvn .wc2__stappen { list-style: none; margin: 0 0 34px; padding: 0; display: grid; gap: 4px; counter-reset: none; }
.zvn .wc2__stappen li { position: relative; display: flex; gap: 18px; align-items: flex-start; padding: 14px 0; margin: 0; }
.zvn .wc2__stappen li::before { display: none !important; }
.zvn .wc2__stappen li:not(:last-child)::after { content: ""; position: absolute; left: 21px; top: 60px; bottom: -8px; width: 2px; background: repeating-linear-gradient(180deg, rgba(43,37,103,.25) 0 5px, transparent 5px 10px); }
.zvn .wc2__nr { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; background: var(--navy); color: #fff; font-family: var(--font-bold); font-weight: 700; font-size: 18px; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .wc2__stappen li:is(:nth-child(2):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(2)>.elementor-widget-container>.nb-t0)) .wc2__nr { background: var(--gold); }
.zvn .wc2__stappen li:is(:nth-child(3):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3)>.elementor-widget-container>.nb-t0)) .wc2__nr { background: #6A9A31; }
.zvn .wc2__stappen strong { display: block; font-family: var(--font-bold); font-weight: 700; font-size: 19px; color: var(--navy); margin: 8px 0 3px; }
.zvn .wc2__stappen span:not(.wc2__nr) { display: block; font-size: 16px; line-height: 1.5; color: #454b4f; }
.zvn .wc2__onder { display: flex; flex-wrap: wrap; align-items: center; gap: 22px 34px; padding-top: 26px; border-top: 1px solid rgba(43,37,103,.12); }
.zvn .wc2__stats { display: flex; gap: 12px; }
.zvn .wc2__stats div { position: relative; overflow: hidden; isolation: isolate; background: #fff; border-radius: 18px; padding: 14px 18px; min-width: 150px; box-shadow: 0 18px 40px -30px rgba(24,22,60,.5); }
.zvn .wc2__stats div::after { content: ""; position: absolute; z-index: -1; right: -16px; top: -16px; width: 50px; height: 50px; background: var(--gold); opacity: .35; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(14deg); }
.zvn .wc2__stats h3 { margin: 0; font-family: var(--font-bold); font-weight: 700; font-size: 28px; line-height: 1; color: var(--navy); }
.zvn .wc2__stats p { margin: 6px 0 0; font-size: 14px; color: #454b4f; }
.zvn .wc2__wie { display: flex; align-items: center; gap: 14px; }
.zvn .wc2__koppen { display: flex; flex: none; }
.zvn .wc2__koppen img { width: 52px; height: 52px; object-fit: cover; border-radius: 0; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .wc2__koppen img + img { margin-left: -12px; }
.zvn .wc2__wie p { margin: 0; font-size: 15px; line-height: 1.4; color: #454b4f; max-width: 17em; }
.zvn .wc2__wie strong { display: block; color: var(--navy); font-family: var(--font-bold); }
/* formulierkaart */
.zvn .wc2__kaart { position: relative; background: #fff; border-radius: 28px; padding: 34px 34px 26px; box-shadow: 0 40px 80px -44px rgba(24,22,60,.55), 0 2px 6px rgba(24,22,60,.05); }
.zvn .wc2__kaart::before { content: ""; position: absolute; top: -18px; right: 30px; width: 54px; height: 54px; background: var(--gold); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(12deg); }
.zvn .wc2__kop h2 { font-family: var(--font-bold); font-weight: 700; font-size: 26px; line-height: 1.15; color: var(--navy); margin: 0 0 6px; }
.zvn .wc2__kop p { margin: 0 0 22px; font-size: 15px; color: #6b7277; }
.zvn .wc2__recaptcha { margin: 14px 0 0; font-size: 11px; line-height: 1.45; color: #9aa1a6; }
.zvn .wc2__recaptcha a { color: inherit; text-decoration: underline; }
.zvn .wc2__form .elementor-widget-container { padding: 0 !important; background: none !important; box-shadow: none !important; }
.zvn .wc2__form .elementor-form-fields-wrapper { row-gap: 14px !important; margin: 0 -6px !important; }
.zvn .wc2__form .elementor-field-group { padding: 0 6px !important; margin-bottom: 0 !important; }
.zvn .wc2__form .elementor-field-label { font-family: var(--font-bold) !important; font-weight: 700 !important; font-size: 14px !important; color: var(--navy) !important; margin-bottom: 6px !important; padding: 0 !important; }
.zvn .wc2__form .elementor-mark-required .elementor-field-label::after { color: var(--gold) !important; }
.zvn .wc2__form :is(.elementor-field-textual, select) { font-family: var(--font-body) !important; font-size: 16px !important; color: var(--text) !important; background: #f4f6f7 !important; border: 1px solid transparent !important; border-radius: 12px !important; padding: 14px 16px !important; min-height: 52px !important; box-shadow: none !important; transition: border-color .2s, background .2s, box-shadow .2s; }
.zvn .wc2__form :is(.elementor-field-textual, select):focus { background: #fff !important; border-color: var(--blue) !important; box-shadow: 0 0 0 3px rgba(0,109,183,.15) !important; outline: none !important; }
.zvn .wc2__form .elementor-select-wrapper::before { color: var(--navy) !important; right: 16px !important; }
.zvn .wc2__form .elementor-select-wrapper select { padding-right: 40px !important; cursor: pointer; }
/* stappenbalk */
.zvn .wc2__form .e-form__indicators { display: flex !important; align-items: center; gap: 10px; margin: 0 0 22px !important; padding: 0 6px !important; }
.zvn .wc2__form .e-form__indicators__indicator { flex: none !important; display: flex !important; flex-direction: row !important; align-items: center; gap: 9px; margin: 0 !important; padding: 0 !important; }
.zvn .wc2__form .e-form__indicators__indicator__number { width: 30px !important; height: 30px !important; border: 0 !important; border-radius: 0 !important; margin: 0 !important; background: #e9ebec !important; color: #6b7277 !important; font-family: var(--font-bold) !important; font-weight: 700 !important; font-size: 13px !important; display: flex !important; align-items: center; justify-content: center; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transition: background .3s, color .3s; }
.zvn .wc2__form .e-form__indicators__indicator--state-active .e-form__indicators__indicator__number { background: var(--navy) !important; color: #fff !important; }
.zvn .wc2__form .e-form__indicators__indicator--state-completed .e-form__indicators__indicator__number { background: #6A9A31 !important; color: #fff !important; }
.zvn .wc2__form .e-form__indicators__indicator__label { margin: 0 !important; font-size: 14px !important; font-weight: 600 !important; color: #6b7277 !important; white-space: nowrap; }
.zvn .wc2__form .e-form__indicators__indicator--state-active .e-form__indicators__indicator__label { color: var(--navy) !important; }
.zvn .wc2__form .e-form__indicators__indicator__separator { flex: 1 1 auto !important; height: 2px !important; min-width: 20px; margin: 0 !important; background: #e9ebec !important; border-radius: 2px; }
.zvn .wc2__form .e-form__indicators__indicator--state-completed + .e-form__indicators__indicator__separator, .zvn .wc2__form .e-form__indicators__indicator__separator:has(+ .e-form__indicators__indicator--state-active) { background: #6A9A31 !important; }
/* knoppen */
.zvn .wc2__form .e-form__buttons { display: flex !important; gap: 10px; flex-wrap: nowrap; margin-top: 6px !important; }
.zvn .wc2__form .e-form__buttons__wrapper { flex: 1 1 auto; padding: 0 !important; margin: 0 !important; width: auto !important; }
.zvn .wc2__form .elementor-field-type-previous { flex: 0 0 auto !important; }
.zvn .wc2__form .elementor-button { width: 100% !important; justify-content: center; background: var(--blue) !important; color: #fff !important; font-family: var(--font-bold) !important; font-weight: 700 !important; font-size: 17px !important; border: 0 !important; border-radius: 12px !important; padding: 16px 22px !important; min-height: 54px; transition: background .2s, transform .2s !important; }
.zvn .wc2__form .elementor-button:hover { background: var(--blue-hover) !important; transform: translateY(-2px); }
.zvn .wc2__form .elementor-field-type-previous .elementor-button { background: #f4f6f7 !important; color: var(--navy) !important; }
.zvn .wc2__form .elementor-field-type-previous .elementor-button:hover { background: #e9ebec !important; }
.zvn .wc2__form .elementor-field-type-next .elementor-button::after, .zvn .wc2__form .elementor-field-type-submit .elementor-button-text::after { content: " \2192"; }
/* de 'Bijna klaar'-melding van stap 2 in huisstijl */
.zvn .wc2__form .mk-callout { position: relative; overflow: hidden; isolation: isolate; background: #fdf6e8 !important; border: 0 !important; border-radius: 16px !important; padding: 16px 18px !important; box-shadow: none !important; }
.zvn .wc2__form .mk-callout .mk-icon { color: var(--gold) !important; }
.zvn .wc2__form .mk-callout .mk-title { font-family: var(--font-bold) !important; color: var(--navy) !important; font-size: 16px !important; }
.zvn .wc2__form .mk-callout .mk-text { color: #454b4f !important; font-size: 14px !important; }
.zvn .wc2__form .elementor-message { font-size: 15px !important; border-radius: 12px; }
/* op deze pagina is de Waardecheck het enige formulier: het footercontactblok gaat weg */
body:has(.zvn .wc2) .elementor-location-footer .zvf-contact { display: none !important; }
@media (max-width: 1100px) {
  .zvn .wc2__grid { grid-template-columns: 1fr; gap: 44px; }
  .zvn .wc2__kaart { max-width: 640px; }
}
@media (max-width: 767px) {
  .zvn .wc2 { padding: 40px 0 56px; }
  .zvn .wc2__intro { font-size: 17px; margin-bottom: 26px; }
  .zvn .wc2__kaart { padding: 26px 20px 20px; border-radius: 22px; }
  .zvn .wc2__kaart::before { width: 40px; height: 40px; top: -14px; right: 22px; }
  .zvn .wc2__kop h2 { font-size: 22px; }
  .zvn .wc2__form .elementor-field-group.elementor-col-50 { width: 100% !important; }
  .zvn .wc2__stats div { min-width: 0; flex: 1; }
  .zvn .wc2__stats { width: 100%; }
  .zvn .wc2__vorm--b { display: none; }
}
.zvn .wc2__form .elementor-form-fields-wrapper { row-gap: 0 !important; }
.zvn .wc2__form .elementor-field-group:not(.elementor-field-type-step):not(.elementor-field-type-recaptcha_v3) { margin-bottom: 16px !important; }
.zvn .wc2__form .e-form__buttons { padding: 0 6px !important; margin-bottom: 0 !important; }
.zvn .wc2__form :is(.mk-callout, .elementor-field-group, .e-form__step):focus, .zvn .wc2__form :is(.mk-callout, .elementor-field-group, .e-form__step):focus-visible { outline: none !important; }
.zvn .wc2__form .elementor-field-type-html { margin-bottom: 18px !important; }
/* mobiel en tablet: formulier direct onder kop en intro, stappen en bewijs daarna */
@media (max-width: 1100px) {
  .zvn .wc2__grid { gap: 0; }
  .zvn .wc2__tekst { display: contents; }
  .zvn .wc2__tekst .wow-eyebrow { order: 1; }
  .zvn .wc2 h1 { order: 2; }
  .zvn .wc2__intro { order: 3; }
  .zvn .wc2__kaart { order: 4; margin-bottom: 40px; }
  .zvn .wc2__stappen { order: 5; }
  .zvn .wc2__onder { order: 6; }
}
/* ================================================================ ronde 9: contactpagina */
.zvn .ct2 { padding-top: 72px; }
.zvn .ct2-kanalen { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 16px; margin-bottom: 56px; }
.zvn .ct2-kanaal { --k: var(--gold); position: relative; overflow: hidden; isolation: isolate; display: flex; flex-direction: column; background: #f4f6f7; border-radius: 24px; padding: 26px 24px 24px; color: var(--text) !important; text-decoration: none !important; transition: transform .35s var(--ease), box-shadow .35s var(--ease), background .35s; }
.zvn .ct2-kanaal--green { --k: #6A9A31; } .zvn .ct2-kanaal--teal { --k: #0089AC; } .zvn .ct2-kanaal--magenta { --k: #D30F4E; }
.zvn .ct2-kanaal::after { content: ""; position: absolute; z-index: -1; right: -40px; bottom: -44px; width: 130px; height: 130px; background: var(--k); opacity: .12; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(18deg); transition: transform .6s var(--ease), opacity .4s; }
.zvn .ct2-kanaal:hover { background: #fff; transform: translateY(-5px); box-shadow: 0 30px 50px -34px rgba(24,22,60,.5); }
.zvn .ct2-kanaal:hover::after { opacity: .28; transform: rotate(40deg) scale(1.2); }
.zvn .ct2-kanaal__ico { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; margin-bottom: 18px; background: var(--k); color: #fff; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .ct2-kanaal__ico svg { width: 20px; height: 20px; fill: currentColor; }
.zvn .ct2-kanaal__kop { font-weight: 700; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: #6b7277; margin-bottom: 6px; }
.zvn .ct2-kanaal strong { font-family: var(--font-bold); font-weight: 700; font-size: 20px; line-height: 1.25; color: var(--navy); margin-bottom: 6px; overflow-wrap: anywhere; }
.zvn .ct2-kanaal__noot { font-size: 15px; line-height: 1.5; color: #454b4f; margin-bottom: 16px; }
.zvn .ct2-kanaal__link { margin-top: auto; font-weight: 700; font-size: 15px; color: var(--blue); }
.zvn .ct2-kanaal__link::after { content: " \2192"; transition: margin .3s; }
.zvn .ct2-kanaal:hover .ct2-kanaal__link::after { margin-left: 4px; }
.zvn .ct2-split { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,420px); gap: 40px; align-items: start; }
.zvn .ct2-form { position: relative; background: #fff; border: 1px solid #e6e9ec; border-radius: 28px; padding: 40px; }
.zvn .ct2-form h2 { font-family: var(--font-bold); font-weight: 700; font-size: clamp(28px, 2.6vw, 36px); line-height: 1.1; color: var(--navy); margin: 0 0 10px; }
.zvn .ct2-form__sub { font-size: 17px; line-height: 1.55; color: #454b4f; margin: 0 0 26px; max-width: 46ch; }
.zvn .ct2-form__note { margin: 16px 0 0; font-size: 11px; line-height: 1.45; color: #9aa1a6; }
.zvn .ct2-form__note a { color: inherit; text-decoration: underline; }
.zvn .ct2-form .elementor-widget-container { padding: 0 !important; background: none !important; box-shadow: none !important; }
.zvn .ct2-form .elementor-form-fields-wrapper { row-gap: 0 !important; margin: 0 -6px !important; }
.zvn .ct2-form .elementor-field-group { padding: 0 6px !important; }
.zvn .ct2-form .elementor-field-group:not(.elementor-field-type-recaptcha_v3) { margin-bottom: 16px !important; }
.zvn .ct2-form .elementor-field-label { font-family: var(--font-bold) !important; font-weight: 700 !important; font-size: 14px !important; color: var(--navy) !important; margin-bottom: 6px !important; padding: 0 !important; }
.zvn .ct2-form :is(.elementor-field-textual, select, textarea) { font-family: var(--font-body) !important; font-size: 16px !important; color: var(--text) !important; background: #f4f6f7 !important; border: 1px solid transparent !important; border-radius: 12px !important; padding: 14px 16px !important; min-height: 52px; box-shadow: none !important; transition: border-color .2s, background .2s, box-shadow .2s; }
.zvn .ct2-form :is(.elementor-field-textual, textarea):focus { background: #fff !important; border-color: var(--blue) !important; box-shadow: 0 0 0 3px rgba(0,109,183,.15) !important; outline: none !important; }
.zvn .ct2-form .elementor-field-type-acceptance label, .zvn .ct2-form .elementor-field-option label { font-size: 15px !important; color: var(--text) !important; }
.zvn .ct2-form .elementor-button { width: 100% !important; justify-content: center; background: var(--blue) !important; color: #fff !important; font-family: var(--font-bold) !important; font-weight: 700 !important; font-size: 17px !important; border: 0 !important; border-radius: 12px !important; padding: 16px 22px !important; min-height: 54px; transition: background .2s, transform .2s !important; }
.zvn .ct2-form .elementor-button:hover { background: var(--blue-hover) !important; transform: translateY(-2px); }
.zvn .ct2-form .elementor-button-text::after { content: " \2192"; }
.zvn .ct2-zij { display: grid; gap: 16px; position: sticky; top: 110px; }
.zvn .ct2-navy { position: relative; overflow: hidden; isolation: isolate; background: var(--navy); color: #fff; border-radius: 28px; padding: 32px 30px; }
.zvn .ct2-navy::after { content: ""; position: absolute; z-index: -1; right: -60px; top: -60px; width: 200px; height: 200px; background: rgba(255,255,255,.06); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(-12deg); }
.zvn .ct2-navy__label { display: inline-block; margin: 0 0 12px; background: var(--gold); color: #fff; font-weight: 700; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; padding: 6px 10px; border-radius: 8px; }
.zvn .ct2-navy__tijd { margin: 0 0 22px; font-size: 17px; line-height: 1.5; color: rgba(255,255,255,.8); }
.zvn .ct2-navy__tijd strong { display: block; font-family: var(--font-bold); font-size: 26px; color: #fff; }
.zvn .ct2-navy__lijst { list-style: none; margin: 0 0 22px; padding: 18px 0 0; border-top: 1px solid rgba(255,255,255,.14); display: grid; gap: 12px; }
.zvn .ct2-navy__lijst li { display: flex; gap: 10px; align-items: flex-start; margin: 0; padding: 0; font-size: 15px; line-height: 1.45; color: #fff; }
.zvn .ct2-navy__lijst li::before { display: none !important; }
.zvn .ct2-navy__lijst svg { flex: none; width: 18px; height: 18px; margin-top: 2px; fill: var(--gold); color: var(--gold); }
.zvn .ct2-navy__stats { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.zvn .ct2-navy__stats div { background: rgba(255,255,255,.08); border-radius: 16px; padding: 14px 16px; }
.zvn .ct2-navy__stats h4 { margin: 0; font-family: var(--font-bold); font-size: 26px; line-height: 1; color: #fff; }
.zvn .ct2-navy__stats p { margin: 6px 0 0; font-size: 13px; color: rgba(255,255,255,.75); }
.zvn .ct2-wie { background: #f4f6f7; border-radius: 24px; padding: 22px 24px; }
.zvn .ct2-wie__koppen { display: flex; margin-bottom: 12px; }
.zvn .ct2-wie__koppen img { width: 50px; height: 50px; object-fit: cover; border-radius: 0; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .ct2-wie__koppen img + img { margin-left: -10px; }
.zvn .ct2-wie p { margin: 0; font-size: 15px; line-height: 1.45; color: #454b4f; }
.zvn .ct2-wie strong { display: block; color: var(--navy); font-family: var(--font-bold); font-size: 17px; margin-bottom: 2px; }
@media (max-width: 1100px) {
  .zvn .ct2-kanalen { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .zvn .ct2-split { grid-template-columns: 1fr; }
  .zvn .ct2-zij { position: static; grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
  .zvn .ct2 { padding-top: 40px; }
  .zvn .ct2-kanalen { gap: 10px; margin-bottom: 36px; }
  .zvn .ct2-kanaal { padding: 20px 16px 18px; border-radius: 20px; }
  .zvn .ct2-kanaal strong { font-size: 16px; }
  .zvn .ct2-kanaal__noot { font-size: 13px; }
  .zvn .ct2-kanaal__ico { width: 40px; height: 40px; margin-bottom: 14px; }
  .zvn .ct2-form { padding: 26px 20px; border-radius: 22px; }
  .zvn .ct2-form .elementor-field-group.elementor-col-50 { width: 100% !important; }
  .zvn .ct2-zij { grid-template-columns: 1fr; }
}
/* ================================================================ ronde 10: oudere pagina's in de nieuwe stijl (maak_oud.py) */
.zvn .oud-tekst { max-width: 820px; }
.zvn .oud-tekst h2 { font-family: var(--font-bold); font-weight: 700; font-size: clamp(24px, 2.4vw, 32px); color: var(--navy); margin: 0 0 14px; }
.zvn .oud-tekst h3 { font-family: var(--font-bold); font-weight: 700; font-size: 20px; color: var(--navy); margin: 1.4em 0 .4em; }
.zvn .oud-knop { margin-top: 22px; }
.zvn .oud-plek { margin-top: 32px; }
.zvn .oud-kaarten { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.zvn .oud-kaart { --k: var(--gold); position: relative; overflow: hidden; isolation: isolate; background: #f4f6f7; border-radius: 24px; padding: 26px 24px; }
.zvn .oud-kaart:is(:nth-child(4n+2):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(4n+2)>.elementor-widget-container>.nb-t0)) { --k: #6A9A31; } .zvn .oud-kaart:is(:nth-child(4n+3):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(4n+3)>.elementor-widget-container>.nb-t0)) { --k: #0089AC; } .zvn .oud-kaart:is(:nth-child(4n+4):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(4n+4)>.elementor-widget-container>.nb-t0)) { --k: #D30F4E; }
.zvn .oud-kaart::before { content: ""; display: block; width: 40px; height: 40px; margin-bottom: 16px; background: var(--k); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; }
.zvn .oud-kaart::after { content: ""; position: absolute; z-index: -1; right: -36px; bottom: -40px; width: 120px; height: 120px; background: var(--k); opacity: .12; -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(18deg); }
.zvn .oud-kaart h3 { font-family: var(--font-bold); font-weight: 700; font-size: 20px; color: var(--navy); margin: 0 0 8px; }
.zvn .oud-kaart p { font-size: 16px; line-height: 1.55; color: #454b4f; margin: 0 0 10px; }
.zvn .oud-kaart .oud-knop { margin-top: 12px; }
.zvn .oud-quote { position: relative; overflow: hidden; isolation: isolate; margin: 0; background: #F7D9DB; border-radius: 28px; padding: 48px; }
.zvn .oud-quote::after { content: ""; position: absolute; z-index: -1; right: -60px; top: -60px; width: 220px; height: 220px; background: rgba(211,15,78,.1); -webkit-mask: var(--vijfhoek) center / contain no-repeat; mask: var(--vijfhoek) center / contain no-repeat; transform: rotate(14deg); }
.zvn .oud-quote blockquote { margin: 0 0 14px; font-family: var(--font-bold); font-weight: 700; font-size: clamp(24px, 2.4vw, 34px); line-height: 1.2; color: var(--navy); border: 0; padding: 0; }
.zvn .oud-quote blockquote::before { content: "\201C"; } .zvn .oud-quote blockquote::after { content: "\201D"; }
.zvn .oud-quote figcaption { font-weight: 700; font-size: 15px; color: #D30F4E; }
@media (max-width: 767px) { .zvn .oud-quote { padding: 28px 22px; border-radius: 22px; } }

.zvn .media-row .media-row__media .photo img, .zvn .media-row .media-row__media .frame img{ width: 100%; height: 100%; }
.zvn .media-row__media .photo img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.zvn .media-row__media .frame img{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  pointer-events: none;
}
.zvn.theme-zakelijk .media-row__media .frame img{ display: none; }
.zvn .media-row__media--plain .photo img{ border-radius: var(--radius-card); }
.zvn .media-row__media .frame img{ display: none; }
.zvn .media-row__media .photo img{
  -webkit-mask-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/04/shape_blue.svg");
  mask-image: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2024/04/shape_blue.svg");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}
.zvn .media-row--panel .media-row__media .frame img{ display: none; }
.zvn .media-row--panel .media-row__media .photo img{ border-radius: var(--radius-card); }
.zvn.theme-zakelijk .media-row--panel .media-row__media .frame img, .zvn .media-row--panel .media-row__media .frame img{ display: none; }
.zvn .media-row:not(.media-row--panel) .media-row__media .frame img{ display: block !important; }
.zvn .media-row__media:not(.media-row__media--plain) .photo img, .zvn .teamkaart--kader .teamkaart__media .photo img{
  -webkit-mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-vorm.png") center / contain no-repeat;
  mask: url("https://zaatvastgoed.marketingkenners.nl/wp-content/uploads/2026/09/1x1-mask-vorm.png") center / contain no-repeat;
}
.zvn .media-row--panel .media-row__media:not(.media-row__media--plain) .frame img{ display: block !important; }
.zvn .media-row__media:not(.media-row__media--plain) .frame img{
  transform: rotate(7deg) scale(1.07);
  transform-origin: 50% 50%;
}
.zvn .media-row__media .frame img{ z-index: 3; }
@media (hover: hover){.zvn .media-row__media:not(.media-row__media--plain) .photo img{ transition: transform .6s cubic-bezier(.22,.61,.36,1); }
.zvn .media-row__media:not(.media-row__media--plain):hover .photo img{ transform: scale(1.035); }}
/* ---------------------------------------------------------------- vijfhoeklijnen die meedraaien met scrollen */
.zvn .media-row__media:not(.media-row__media--plain) .frame img{ transform: rotate(calc(7deg - var(--zvn-rot, 0deg))) scale(1.07); }
.zvn .zvn-h.zvn-h1, .zvn .zvn-h.zvn-h2, .zvn .zvn-h.zvn-h3, .zvn .zvn-h.zvn-h4, .zvn .zvn-h.zvn-h5{ margin: 0; font-weight: 600; }
.zvn .zvn-h.zvn-h1{ font-family: var(--font-bold); }
.zvn .zvn-h.zvn-h2{ font-family: var(--font-bold); font-weight: 700; }
.zvn .zvn-h.zvn-h3, .zvn .zvn-h.zvn-h4, .zvn .zvn-h.zvn-h5{ font-family: var(--font-bold); }
.zvn .hero-photo .zvn-h.zvn-h1{
  font-family: var(--font-bold);
  font-size: clamp(30px, 3.4vw, 40px);
  font-weight: 700;
  line-height: 1.14;
  color: var(--white);
  max-width: 14em;
}
.zvn .hero-photo__shape .zvn-h.zvn-h1{
  font-family: var(--font-head);
  font-size: 35px;
  font-weight: 600;
  line-height: 38px;
  color: var(--white);
  text-align: center;
}
.zvn .section__title .elementor-heading-title{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  line-height: 1.2;
  color: var(--navy);
  margin-bottom: 30px;
}
.zvn .story__media .zvn-h.zvn-h3{
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 16px;
  font-family: var(--font-head);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.35;
  color: var(--white);
  text-shadow: 0 1px 6px rgba(0, 0, 0, .5);
}
.zvn .wave-cta .zvn-h.zvn-h2{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  color: var(--white);
  margin-bottom: 18px;
}
.zvn .quote-band .zvn-h.zvn-h2{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--white);
  max-width: 720px;
  text-shadow: 0 2px 10px rgba(0, 0, 0, .35);
}
.zvn .social-card .zvn-h.zvn-h2{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  color: var(--navy);
  margin-bottom: 14px;
}
.zvn .wave-top .zvn-h.zvn-h2{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  color: var(--navy);
  margin-bottom: 16px;
}
.zvn .wave-top .zvn-h.zvn-h1{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  color: var(--navy);
  margin-bottom: 16px;
}
.zvn .block-list__item .zvn-h.zvn-h2{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  color: var(--white);
  margin-bottom: 16px;
}
.zvn .team__member .zvn-h.zvn-h2{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  color: var(--white);
  margin-bottom: 16px;
}
.zvn .form-card .zvn-h.zvn-h2, .zvn .form-card .zvn-h.zvn-h3{
  font-family: var(--font-head);
  font-size: 24px;
  font-weight: 500;
  color: var(--text);
  margin-bottom: 20px;
}
.zvn .footer-contact .zvn-h.zvn-h2{
  font-family: var(--font-head);
  font-size: 32px;
  font-weight: 600;
  line-height: 1.2;
  color: var(--white);
  margin-bottom: 16px;
}
.zvn .footer-stats .zvn-h.zvn-h3{ font-family: var(--font-head); font-size: 32px; font-weight: 600; }
.zvn .footer-links .zvn-h.zvn-h4{
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 300;
  color: var(--text);
  margin-bottom: 22px;
  white-space: nowrap;
}
.zvn .news-card .zvn-h.zvn-h3{
  font-family: var(--font-head);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.35;
  color: var(--navy);
  margin-bottom: 14px;
}
.zvn .score-band .zvn-h.zvn-h3{ font-family: var(--font-head); font-size: 40px; font-weight: 600; color: var(--navy); }
.zvn .contact-tile .zvn-h.zvn-h3{ font-family: var(--font-bold); font-size: 18px; color: var(--text); }
.zvn .check-hero .zvn-h.zvn-h1{
  font-family: var(--font-head);
  font-size: 44px;
  font-weight: 600;
  line-height: 1.15;
  color: var(--white);
  margin-bottom: 18px;
}
.zvn .check-hero__stats .zvn-h.zvn-h3{ font-family: var(--font-head); font-size: 30px; font-weight: 600; }
@media (max-width: 860px){.zvn .check-hero .zvn-h.zvn-h1{ font-size: 34px; }}
@media (max-width: 640px){.zvn .quote-band .zvn-h.zvn-h2{ font-size: 24px; }
.zvn .section__title .elementor-heading-title, .zvn .wave-cta .zvn-h.zvn-h2, .zvn .footer-contact .zvn-h.zvn-h2{ font-size: 26px; }
.zvn .hero-photo__shape .zvn-h.zvn-h1{ font-size: 28px; line-height: 32px; }}
.zvn .zvn-h.zvn-h1{ font-weight: 700; }
.zvn .section__title .elementor-heading-title{
  font-family: var(--font-bold);
  font-size: 30px;
  font-weight: 700;
  color: var(--navy);
  letter-spacing: -.01em;
  line-height: 1.26;
}
.zvn .section__title .elementor-heading-title{
  font-size: 40px;
  font-weight: 700;
  line-height: 1.14;
}
.zvn .hero-band__intro .zvn-h.zvn-h1{
  font-size: clamp(30px, 3.4vw, 40px);
  font-weight: 700;
  line-height: 1.14;
  letter-spacing: -.01em;
  margin-bottom: 16px;
  color: var(--navy);
}
.zvn .hero-band--gold .hero-band__intro .zvn-h.zvn-h1, .zvn .hero-band--navy .hero-band__intro .zvn-h.zvn-h1, .zvn .hero-band--terracotta .hero-band__intro .zvn-h.zvn-h1, .zvn .hero-band--teal .hero-band__intro .zvn-h.zvn-h1, .zvn .hero-band--green .hero-band__intro .zvn-h.zvn-h1{ color: var(--white); }
.zvn .contact-hero .zvn-h.zvn-h1{
  font-size: clamp(30px, 3.4vw, 40px);
  font-weight: 700;
  line-height: 1.14;
  color: var(--white);
  max-width: 480px;
  margin-bottom: 12px;
}
.zvn .info-card .zvn-h.zvn-h3{ font-family: var(--font-bold); font-size: 20px; font-weight: 700; color: var(--navy); margin-bottom: 4px; }
.zvn .panel .zvn-h.zvn-h2{ font-family: var(--font-bold); font-size: 22px; font-weight: 700; color: var(--navy); margin-bottom: 6px; }
.zvn .panel--navy .zvn-h.zvn-h3{ font-family: var(--font-bold); font-size: 18px; color: var(--white); margin-bottom: 16px; }
.zvn .stat-tiles .zvn-h.zvn-h4{ font-family: var(--font-bold); font-size: 22px; font-weight: 700; color: var(--white); }
.zvn .map-band__card .zvn-h.zvn-h3{ font-family: var(--font-bold); font-size: 17px; color: var(--navy); margin-bottom: 8px; }
.zvn .gold-slot .zvn-h.zvn-h2{ font-family: var(--font-bold); font-size: 24px; font-weight: 700; color: var(--navy); }
.zvn .wcheck-hero .zvn-h.zvn-h1{
  font-size: clamp(30px, 3.4vw, 40px);
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 14px;
}
.zvn .wcheck-hero__stats .zvn-h.zvn-h3{ font-family: var(--font-bold); font-size: 26px; font-weight: 700; color: var(--navy); }
.zvn .makelaar-note .zvn-h.zvn-h4{ font-family: var(--font-bold); font-size: 15px; color: var(--navy); }
.zvn .promo-tile .zvn-h.zvn-h3{ font-family: var(--font-bold); font-size: 19px; font-weight: 700; margin-bottom: 10px; }
.zvn .hypo-kaart .zvn-h.zvn-h2{ font-family: var(--font-bold); font-size: 26px; font-weight: 700; color: var(--blue); margin-bottom: 12px; }
.zvn .footer-contact .zvn-h.zvn-h2{ font-family: var(--font-bold); font-weight: 700; }
.zvn .footer-contact .form-card .zvn-h.zvn-h2, .zvn .footer-contact .form-card .zvn-h.zvn-h3{ color: var(--navy); font-size: 24px; }
.zvn .wave-cta .zvn-h.zvn-h2{ font-family: var(--font-bold); font-weight: 700; }
.zvn .block-list__item .zvn-h.zvn-h2, .zvn .wave-top .zvn-h.zvn-h2, .zvn .team__member .zvn-h.zvn-h2{ font-weight: 400; }
.zvn .quote-band .zvn-h.zvn-h2{ font-weight: 400; font-size: 28px; }
.zvn .stories__stats .zvn-h.zvn-h3{ font-family: var(--font-bold); font-size: 20px; font-weight: 700; color: var(--white); }
.zvn .stories__stats .zvn-h.zvn-h3{ color: var(--navy); }
.zvn .block-list--green .block-list__item .zvn-h.zvn-h2{ color: #202527; }
.zvn .block-list--green .block-list__item .zvn-h.zvn-h2{ font-family: var(--font-bold); font-weight: 700; }
.zvn .block-list--green .block-list__item .zvn-h.zvn-h2{ color: var(--navy); }
.zvn .block-list--plain .block-list__item .zvn-h.zvn-h2{ color: var(--navy); font-family: var(--font-bold); font-weight: 700; }
.zvn .footer-contact .zvn-h.zvn-h2{ color: var(--white); }
.zvn .footer-contact .form-card .zvn-h.zvn-h2{ color: var(--navy); }
.zvn .diensten-kaart .zvn-h.zvn-h3{
  font-family: var(--font-bold);
  font-size: 22px;
  font-weight: 700;
  color: var(--navy);
  margin: 18px 12px 10px;
}
.zvn .section__title .elementor-heading-title, .zvn .hypo-kaart .zvn-h.zvn-h2{ color: var(--navy); }
.zv2 .zvVerhalen .zvn .zvn-h.zvn-h2{ color: inherit !important; font-size: inherit !important; line-height: inherit !important; margin: 0 !important; }
.zv2 .zvVerhalen .zvn .stories--grid .stories__stats .zvn-h.zvn-h3{ color: var(--navy); }
/* 10. Lange Nederlandse woorden (nieuwbouwinschrijving) mogen op smalle
       schermen afbreken in plaats van de kolom breder te duwen. */
.zvn .zvn-h.zvn-h1, .zvn .zvn-h.zvn-h2, .zvn .zvn-h.zvn-h3{ overflow-wrap: break-word; }
@media (max-width: 600px){.zvn .zvn-h.zvn-h1, .zvn .zvn-h.zvn-h2, .zvn .zvn-h.zvn-h3{ hyphens: auto; -webkit-hyphens: auto; hyphenate-limit-chars: 14 6 6; -webkit-hyphenate-limit-before: 6; -webkit-hyphenate-limit-after: 6; }}
.zvn .wereld .zvn-h.zvn-h3{ font-family: var(--font-bold); font-weight: 700; font-size: 30px; line-height: 1.1; margin: 78px 0 14px; color: inherit; }
.zvn .bewijs__cijfer .zvn-h.zvn-h3{ font-family: var(--font-bold); font-weight: 700; font-size: 54px; line-height: 1; color: #fff; margin: 0 0 8px; font-variant-numeric: tabular-nums; }
.zvn .snelcheck .zvn-h.zvn-h2{ font-family: var(--font-bold); font-weight: 700; font-size: 40px; line-height: 1.1; color: #fff; margin: 0 0 14px; }
@media (max-width: 640px){.zvn .wereld .zvn-h.zvn-h3{ margin-top: 56px; font-size: 26px; }
.zvn .bewijs__cijfer .zvn-h.zvn-h3{ font-size: 40px; }
.zvn .snelcheck .zvn-h.zvn-h2{ font-size: 30px; }}
.zvn .route__stap .zvn-h.zvn-h3{ font-family: var(--font-bold); font-weight: 700; font-size: 21px; color: var(--navy); margin: 0 0 6px; }
.zvn .route__stap--sleutel.is-bereikt .zvn-h.zvn-h3{ color: #fff; }
.zvn .etalage__kaart .zvn-h.zvn-h2{ font-family: var(--font-bold); font-weight: 700; font-size: 38px; line-height: 1.05; color: #fff; margin: 0 0 14px; }
.zvn .zvcontact .zvn-h.zvn-h2{ font-family: var(--font-bold); font-weight: 700; font-size: 44px; line-height: 1.08; color: #fff; margin: 0 0 16px; max-width: 620px; }
.zvn .zvcontact__kaart .zvn-h.zvn-h3{ font-family: var(--font-bold); font-weight: 700; font-size: 26px; color: var(--navy); margin: 0 0 20px; }
@media (max-width: 640px){.zvn .zvcontact .zvn-h.zvn-h2{ font-size: 31px; }}
@media (max-width: 767px){.zvn .hero-band__intro .zvn-h.zvn-h1{ font-size: 32px !important; line-height: 1.12 !important; }}
.zvn .etalage__kaart .zvn-h.zvn-h2{ grid-column: 1 / -1; }
@media (max-width: 640px){.zvn .etalage__kaart .zvn-h.zvn-h2{ font-size: 31px; }}
.zvn .bewijs__cijfer .zvn-h.zvn-h3{ font-size: 42px; }
@media (max-width: 400px){.zvn .bewijs__cijfer .zvn-h.zvn-h3{ font-size: 36px; }}
.zvn .verhalen__kop .section__title .elementor-heading-title{ font-size: 36px; line-height: 1.12; }
@media (max-width: 1100px){.zvn .verhalen__kop .section__title .elementor-heading-title{ grid-column: 1 / -1; }}
@media (max-width: 640px){.zvn .verhalen__kop .section__title .elementor-heading-title{ font-size: 28px; }}
.zvn .persoon .zvn-h.zvn-h1{ font-family: var(--font-bold); font-weight: 700; font-size: clamp(40px, 5vw, 64px); line-height: 1.02; color: #fff; margin: 0 0 14px; letter-spacing: -.01em; }
.zvn .hero-ad .zvn-h.zvn-h1{ font-family: var(--font-bold); font-weight: 700; font-size: clamp(36px, 4.4vw, 58px); line-height: 1.04; letter-spacing: -.012em; color: var(--navy); margin: 0 0 18px; }
@media (max-width: 767px){.zvn .hero-ad .zvn-h.zvn-h1{ font-size: 34px; }}
.zvn .plaats-hero .zvn-h.zvn-h1{ font-family: var(--font-bold); font-weight: 700; font-size: clamp(38px, 4.6vw, 60px); line-height: 1.02; color: var(--navy); margin: 0 0 18px; letter-spacing: -.012em; }
.zvn .plaats-waarom .rich .zvn-h.zvn-h3{ font-family: var(--font-bold); font-size: 22px; color: var(--navy); margin: 30px 0 8px; }
@media (max-width: 640px){.zvn .plaats-hero .zvn-h.zvn-h1{ font-size: 36px; }}
.zvn .tkeuze__uitkomst .zvn-h.zvn-h3{ font-family: var(--font-bold); font-weight: 700; font-size: 28px; color: #fff; margin: 0 0 8px; }
.zvn .tvs__kaart .zvn-h.zvn-h3{ font-family: var(--font-bold); font-weight: 700; font-size: 26px; color: var(--navy); margin: 0 0 16px; }
@media (max-width: 640px){.zvn .tkeuze__uitkomst .zvn-h.zvn-h3{ font-size: 23px; }}
.zvn .chatkaart__bubbel .zvn-h.zvn-h2{ font-family: var(--font-bold); font-weight: 700; font-size: clamp(24px, 2.4vw, 32px); line-height: 1.15; color: var(--navy); margin: 0 0 8px; }
.zvn .blogo__balk .section__title .elementor-heading-title{margin:0}
.zvn .blogo__leeg .zvn-h.zvn-h3{color:#2B2567;font-size:26px;margin:0 0 8px}
.zvn .wc2 .zvn-h.zvn-h1{ font-family: var(--font-bold); font-weight: 700; font-size: clamp(38px, 4.8vw, 64px); line-height: 1.02; letter-spacing: -.015em; color: var(--navy); margin: 0 0 18px; }
.zvn .wc2__stats .zvn-h.zvn-h3{ margin: 0; font-family: var(--font-bold); font-weight: 700; font-size: 28px; line-height: 1; color: var(--navy); }
.zvn .wc2__kop .zvn-h.zvn-h2{ font-family: var(--font-bold); font-weight: 700; font-size: 26px; line-height: 1.15; color: var(--navy); margin: 0 0 6px; }
@media (max-width: 767px){.zvn .wc2__kop .zvn-h.zvn-h2{ font-size: 22px; }}
.zvn .wc2 .zvn-h.zvn-h1{ order: 2; }
.zvn .ct2-form .zvn-h.zvn-h2{ font-family: var(--font-bold); font-weight: 700; font-size: clamp(28px, 2.6vw, 36px); line-height: 1.1; color: var(--navy); margin: 0 0 10px; }
.zvn .ct2-navy__stats .zvn-h.zvn-h4{ margin: 0; font-family: var(--font-bold); font-size: 26px; line-height: 1; color: #fff; }
.zvn .oud-tekst .zvn-h.zvn-h2{ font-family: var(--font-bold); font-weight: 700; font-size: clamp(24px, 2.4vw, 32px); color: var(--navy); margin: 0 0 14px; }
.zvn .oud-tekst .zvn-h.zvn-h3{ font-family: var(--font-bold); font-weight: 700; font-size: 20px; color: var(--navy); margin: 1.4em 0 .4em; }
.zvn .oud-kaart .zvn-h.zvn-h3{ font-family: var(--font-bold); font-weight: 700; font-size: 20px; color: var(--navy); margin: 0 0 8px; }
.zvn .hero-photo__actions .pill .elementor-button.elementor-button{ font-size: 19px; padding: 14px 22px; white-space: nowrap; flex: none; }
.zvn .pill--teal .elementor-button.elementor-button{ background: var(--teal); color: var(--white); }
.zvn .pill--teal:hover .elementor-button.elementor-button{ background: #00a5c7; }
.zvn .pill .elementor-button.elementor-button{
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-family: var(--font-bold);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  padding: 12px 18px;
  border-radius: 999px;
}
.zvn .pill--white .elementor-button.elementor-button{ background: var(--white); color: var(--navy); }
.zvn .pill--white:hover .elementor-button.elementor-button{ background: var(--gold-hover); }
.zvn .pill .elementor-button.elementor-button{ border-radius: var(--radius-btn); }
ook voor de pillen in
      de hero (punten 17-09: "call to action buttons overal zelfde"). */
.zvn .pill .elementor-button.elementor-button{ border-radius: var(--radius-btn, 10px); }
@media (hover: hover){.zvn .pill .elementor-button.elementor-button{ transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.zvn .pill:hover .elementor-button.elementor-button{ transform: translateY(-2px); box-shadow: 0 10px 22px -12px rgba(24,22,60,.5); }}
.zvn .hero-ad .pill .elementor-button.elementor-button{ font-size: 16px; padding: 14px 20px; box-shadow: 0 10px 22px -14px rgba(24,22,60,.45); }
.zvn .hero-ad .pill--white .elementor-button.elementor-button{ background: #fff; color: var(--navy); border: 1px solid #dfe5e8; }
@media (max-width: 767px){.zvn .hero-ad .pill .elementor-button.elementor-button{ flex: 1 1 auto; justify-content: center; }}
.zvn .plaats-hero .pill--white .elementor-button.elementor-button{ background: #fff; color: var(--navy); border: 1px solid #dfe5e8; }
@media (max-width: 640px){.zvn .plaats-hero .pill .elementor-button.elementor-button{ flex: 1 1 auto; justify-content: center; }}

/* ---------- Elementor-opbouw (elementor_native.py): de containers en widgets gedragen zich als de oorspronkelijke HTML */
.elementor .e-con.nb-c{--position:static;--flex-wrap-mobile:nowrap;--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--gap:0px;--row-gap:0px;--column-gap:0px;--width:auto;--container-max-width:none;min-width:0}
.elementor .elementor-element{--kit-widget-spacing:0px}
/* Trustindex gekoppeld: de vaste reviewkaarten ernaast wijken */
.elementor .nb-ti:has(.nb-ti-aan) ~ .nbd-nb-reviews{display:none}
/* Snippets: de wikkels van de Shortcode-widget tellen niet mee in de indeling, het blok staat er zoals in de html */
.elementor .elementor-widget-shortcode.nb-component,.elementor .nb-component>.elementor-widget-container,.elementor .nb-component .elementor-shortcode{display:contents}

.elementor .elementor-widget-heading .elementor-heading-title{line-height:inherit}
.elementor .elementor-widget-image img{display:block;max-width:100%}
.elementor .nb-knop .elementor-button{background:none;padding:0;border-radius:0;font:inherit;line-height:inherit}
.elementor .elementor-widget-button.nb-knop .elementor-button{width:100%}
.elementor .elementor-widget-button.nb-knop .elementor-button-content-wrapper{justify-content:center}
.elementor .elementor-widget-icon-list .elementor-icon-list-icon i{color:var(--accent);font-size:15px}
/* Pijltje in lopende tekst (was een svg) */
.nb-pijl{display:inline-block;font-weight:600;line-height:1;transition:transform .2s ease}
a:hover .nb-pijl{transform:translateX(3px)}
/* Vragen: elke vraag is een eigen Accordeon-widget, in de kaartopmaak van de site */
.elementor .nb-faq .elementor-toggle{border:0}
.elementor .nb-faq .elementor-toggle-item{background:var(--surface-2);border:0;border-radius:14px}
.elementor .nb-faq .elementor-tab-title{display:flex;align-items:center;gap:15px;min-height:84px;padding:15px 20px 15px 30px;border:0;flex-direction:row-reverse;justify-content:space-between}
.elementor .nb-faq .elementor-toggle-title{font-family:var(--kop);font-weight:700;font-size:18px;letter-spacing:-.01em;line-height:1.3;color:var(--ink)}
.elementor .nb-faq .elementor-toggle .elementor-tab-title .elementor-toggle-icon{flex:none;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:8px;background:var(--surface);color:var(--ink);float:none;text-align:center}
.elementor .nb-faq .elementor-toggle-item{margin:0}
.elementor .nb-faq .elementor-toggle .elementor-tab-title .elementor-toggle-icon{float:none;margin:0;order:2}
.elementor .nb-faq .elementor-toggle-icon>span{align-items:center;justify-content:center;width:100%;height:100%}
.elementor .nb-faq .elementor-tab-title:not(.elementor-active) .elementor-toggle-icon-closed,.elementor .nb-faq .elementor-tab-title.elementor-active .elementor-toggle-icon-opened{display:flex}
.elementor .nb-faq .elementor-tab-title{flex-direction:row}
.elementor .nb-faq .elementor-toggle-title{order:1;flex:1}
.elementor .nb-faq .elementor-toggle-icon :is(i,svg){font-size:13px;width:13px;height:13px;fill:currentColor}
.elementor .nb-faq .elementor-tab-title a{color:inherit;text-decoration:none}
.elementor .nb-faq .elementor-toggle-icon svg,.elementor .nb-faq .elementor-toggle-icon i{width:18px;height:18px;font-size:16px}
.elementor .nb-faq .elementor-tab-content{padding:0 30px 26px;font-size:17px;line-height:1.6;color:var(--muted);border:0}
@media (max-width:767px){.elementor .nb-faq .elementor-tab-title{min-height:64px;padding:14px 15px 14px 20px}.elementor .nb-faq .elementor-toggle-title{font-size:16px}
 .elementor .nb-faq .elementor-toggle-icon{width:36px;height:36px}.elementor .nb-faq .elementor-tab-content{padding:0 20px 20px;font-size:15px}}
.elementor .nb-component{width:100%}
.elementor .nb-linkknop .elementor-button{background:none;padding:0;border-radius:0;color:inherit;font:inherit;line-height:inherit;min-height:0;box-shadow:none}
.elementor .nb-linkknop .elementor-button-content-wrapper,.elementor .nb-knop .elementor-button-content-wrapper{gap:8px;align-items:center}
.elementor .nb-linkknop .elementor-button-icon,.elementor .nb-knop .elementor-button-icon{margin:0;display:inline-flex;font-size:18px}
.elementor .nb-linkknop .elementor-button-icon svg,.elementor .nb-knop .elementor-button-icon svg{fill:currentColor;width:18px;height:18px}
.elementor .nb-linkknop .elementor-button-icon svg{color:var(--accent);fill:var(--accent)}
.elementor .elementor-widget-icon .elementor-icon svg{fill:currentColor}
.elementor .elementor-widget-star-rating .elementor-star-rating i{font-style:normal}
.elementor .elementor-widget-icon-list .elementor-icon-list-icon{display:inline-flex;align-items:center}
.elementor .elementor-widget-icon-list .elementor-icon-list-text{color:inherit}


/* ---------- Zaat native (zvnative.py) */
.elementor .zvn-component-plek,.elementor .zvn-component-plek>.elementor-widget-container,.elementor .zvn-component-plek .elementor-template,
.elementor .zvn-component-plek .elementor-template>.elementor,.elementor .zvn-component-plek .e-con.zvn-component-wikkel,
.elementor .zvn-component-plek .zvn-component,.elementor .zvn-component-plek .zvn-component>.elementor-widget-container{display:contents}
.elementor .zvn.e-con{--display:block;display:block;--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px}
/* tekst en beeld: de Elementor-wikkels tellen niet mee, het element staat er zoals in het ontwerp */
.elementor .zvn .elementor-widget.zvn-t,.elementor .zvn .elementor-widget.zvn-t>.elementor-widget-container,
.elementor .zvn .elementor-widget.zvn-i,.elementor .zvn .elementor-widget.zvn-i>.elementor-widget-container{display:contents}
/* kop-widget: wikkel telt niet mee; de kop erft van de wikkel met de ontwerpklassen */
.elementor .zvn .elementor-widget.zvn-h,.elementor .zvn .elementor-widget.zvn-h>.elementor-widget-container{display:contents}
.elementor .zvn .zvn-h .elementor-heading-title{line-height:inherit;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit;text-align:inherit}
/* verborgen tot een script het toont (hidden-kenmerk) */
.elementor .zvn [hidden]{display:none !important}
/* de kit mag de opmaak van het ontwerp niet overschrijven */
.elementor .zvn .elementor-widget-text-editor{color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit}

.e-con.e-flex:where(.zvn .topbar__inner){flex-direction:row}
.e-con.e-flex:where(.zvn .topbar__list){flex-direction:row}
.e-con.e-flex:where(.zvn .topbar__list a){flex-direction:row}
.e-con.e-flex:is(.zvn .topbar__list svg){flex:none}
.e-con.e-flex:where(.zvn .topbar__social){flex-direction:row}
.e-con.e-flex:where(.zvn .masthead__inner){flex-direction:row}
.e-con.e-flex:where(.zvn .nav ul){flex-direction:row}
.e-con.e-flex:where(.zvn .nav ul li a){flex-direction:row}
.e-con.e-flex:where(.zvn .hero-band__inner){flex-direction:row}
.e-con.e-flex:is(.zvn .hero-band__actions){flex-direction:column;flex:none}
.e-con.e-flex:is(.zvn .hero-band__media){flex:1 1 520px}
.e-con.e-flex:where(.zvn .hero-photo){flex-direction:row}
.e-con.e-flex:where(.zvn .hero-photo__actions){flex-direction:row}
.e-con.e-flex:is(.zvn .hero-photo__actions .pill){flex:none}
.e-con.e-flex:where(.zvn .hero-photo__inner){flex-direction:row}
.e-con.e-flex:where(.zvn .hero-photo__shape){flex-direction:row}
.e-con.e-flex:where(.zvn .property__specs){flex-direction:row}
.e-con.e-flex:is(.zvn .story){flex-direction:column}
.e-con.e-flex:is(.zvn .story__body){flex-direction:column;flex:1}
.e-con.e-flex:where(.zvn .story__stars){flex-direction:row}
.e-con.e-flex:where(.zvn .wave-cta){flex-direction:row}
.e-con.e-flex:where(.zvn .wave-cta__inner){flex-direction:row}
.e-con.e-flex:is(.zvn .wave-cta__avatar){flex:none}
.e-con.e-flex:where(.zvn .wave-cta p){flex-direction:row}
.e-con.e-flex:is(.zvn .wave-cta svg){flex:none}
.e-con.e-flex:where(.zvn .quote-band){flex-direction:row}
.e-con.e-flex:where(.zvn .social-card__links){flex-direction:row}
.e-con.e-flex:where(.zvn .check){flex-direction:row}
.e-con.e-flex:where(.zvn .form-usps){flex-direction:row}
.e-con.e-flex:where(.zvn .form-usps span){flex-direction:row}
.e-con.e-flex:is(.zvn .footer-contact__list){flex-direction:column}
.e-con.e-flex:where(.zvn .footer-contact__list a){flex-direction:row}
.e-con.e-flex:is(.zvn .footer-contact__list svg){flex:none}
.e-con.e-flex:where(.zvn .footer-stats){flex-direction:row}
.e-con.e-flex:where(.zvn .footer-legal__inner){flex-direction:row}
.e-con.e-flex:where(.zvn .footer-legal__logos){flex-direction:row}
.e-con.e-flex:where(.zvn .float-cta){flex-direction:row}
.e-con.e-flex:is(.zvn .news-card){flex-direction:column}
.e-con.e-flex:is(.zvn .news-card__body){flex-direction:column;flex:1}
.e-con.e-flex:where(.zvn .news-card__tags){flex-direction:row}
.e-con.e-flex:is(.zvn .review){flex-direction:column}
.e-con.e-flex:where(.zvn .review__stars){flex-direction:row}
.e-con.e-flex:where(.zvn .score-band){flex-direction:row}
.e-con.e-flex:where(.zvn .contact-tile){flex-direction:row}
.e-con.e-flex:is(.zvn .contact-tile svg){flex:none}
.e-con.e-flex:where(.zvn .map-embed){flex-direction:row}
.e-con.e-flex:where(.zvn .check-hero__pills){flex-direction:row}
.e-con.e-flex:where(.zvn .check-hero__stats){flex-direction:row}
.e-con.e-flex:is(.zvn .masthead__cta){flex:none}
.e-con.e-flex:where(.zvn .masthead__cta){flex-direction:row}
.e-con.e-flex:is(.zvn .hero-band__intro){flex:1 1 360px}
.e-con.e-flex:where(.zvn .snel-nav a){flex-direction:row}
.e-con.e-flex:is(.zvn .snel-nav__icon){flex:none}
.e-con.e-flex:where(.zvn .snel-nav__icon){flex-direction:row}
.e-con.e-flex:where(.zvn .snel-nav){flex-direction:row}
.e-con.e-flex:where(.zvn .chips){flex-direction:row}
.e-con.e-flex:where(.zvn .contact-hero__actions){flex-direction:row}
.e-con.e-flex:where(.zvn .pill){flex-direction:row}
.e-con.e-flex:where(.zvn .info-card__icon){flex-direction:row}
.e-con.e-flex:is(.zvn .check-list){flex-direction:column}
.e-con.e-flex:where(.zvn .check-list span){flex-direction:row}
.e-con.e-flex:is(.zvn .check-list svg){flex:none}
.e-con.e-flex:where(.zvn .avatar-row){flex-direction:row}
.e-con.e-flex:where(.zvn .makelaar-note){flex-direction:row}
.e-con.e-flex:is(.zvn .makelaar-note img){flex:none}
.e-con.e-flex:where(.zvn .stepper){flex-direction:row}
.e-con.e-flex:is(.zvn .stepper span){flex:none}
.e-con.e-flex:where(.zvn .stepper span){flex-direction:row}
.e-con.e-flex:is(.zvn .stepper hr){flex:1}
.e-con.e-flex:is(.zvn .wcheck-usps){flex-direction:column}
.e-con.e-flex:where(.zvn .wcheck-usps span){flex-direction:row}
.e-con.e-flex:is(.zvn .wcheck-usps svg){flex:none}
.e-con.e-flex:where(.zvn .filterbar){flex-direction:row}
.e-con.e-flex:where(.zvn .filterbar__zoek){flex-direction:row}
.e-con.e-flex:where(.zvn .filterbar__chip){flex-direction:row}
.e-con.e-flex:where(.zvn .sorteer-rij){flex-direction:row}
.e-con.e-flex:is(.zvn .woning-grid .property){flex-direction:column}
.e-con.e-flex:is(.zvn .woning-grid .property__body){flex-direction:column;flex:1}
.e-con.e-flex:is(.zvn .promo-tile){flex-direction:column}
.e-con.e-flex:where(.zvn .promo-tile__icon){flex-direction:row}
.e-con.e-flex:where(.zvn .promo-tile__voet){flex-direction:row}
.e-con.e-flex:where(.zvn .blob-link){flex-direction:row}
.e-con.e-flex:where(.zvn .stories__stats){flex-direction:row}
.e-con.e-flex:where(.zvn .footer-contact__team){flex-direction:row}
.e-con.e-flex:is(.zvn .credentials--2plus1 li:is(:nth-child(3):not(:where(.nb-t0)),:where(.elementor-widget:nth-child(3)>.elementor-widget-container>.nb-t0))){flex-basis:100%}
.e-con.e-flex:where(.zvn .taken-kaart){flex-direction:row}
.e-con.e-flex:is(.zvn .diensten-kaart){flex-direction:column}
.e-con.e-flex:where(.zvn .credentials){flex-direction:row}
.e-con.e-flex:where(.zvn .rich .check-list li){flex-direction:row}
.e-con.e-flex:is(.zvn .rich .check-list li svg){flex:none}
.e-con.e-flex:is(.zvn .wereld){flex-direction:column}
.e-con.e-flex:where(.zvn .wereld__pijl){flex-direction:row}
.e-con.e-flex:where(.zvn .bewijs__logos){flex-direction:row}
.e-con.e-flex:where(.zvn .kaart-chips){flex-direction:row}
.e-con.e-flex:where(.zvn .gezicht){flex-direction:row}
.e-con.e-flex:where(.zvn .wiehelpt__chips){flex-direction:row}
.e-con.e-flex:where(.zvn .wiehelpt__kaart){flex-direction:row}
.e-con.e-flex:is(.zvn .wiehelpt__foto){flex:none}
.e-con.e-flex:where(.zvn .wiehelpt__acties){flex-direction:row}
.e-con.e-flex:where(.zvn .route__huis){flex-direction:row}
.e-con.e-flex:where(.zvn .route__stap){flex-direction:row}
.e-con.e-flex:is(.zvn .route__nr){flex:none}
.e-con.e-flex:where(.zvn .route__nr){flex-direction:row}
.e-con.e-flex:where(.zvn .ticker__band){flex-direction:row}
.e-con.e-flex:where(.zvn .ticker__rij){flex-direction:row}
.e-con.e-flex:is(.zvn .ticker__vorm){flex:none}
.e-con.e-flex:is(.zvn .sticker){flex-direction:column}
.e-con.e-flex:is(.zvn .sticker--magenta){flex:none}
.e-con.e-flex:where(.zvn .stories__kopwrap){flex-direction:row}
.e-con.e-flex:where(.zvn .zvcontact__team){flex-direction:row}
.e-con.e-flex:where(.zvn .zvcontact__plus a){flex-direction:row}
.e-con.e-flex:where(.zvn .zvcontact__route){flex-direction:row}
.e-con.e-flex:is(.zvn .zvcontact__ico){flex:none}
.e-con.e-flex:where(.zvn .zvcontact__ico){flex-direction:row}
.e-con.e-flex:where(.zvn .hero-band .snel-nav a){flex-direction:row}
.e-con.e-flex:is(.zvn .snel-ico){flex:none}
.e-con.e-flex:where(.zvn .snel-ico){flex-direction:row}
.e-con.e-flex:where(.zvn .verhalen__nav){flex-direction:row}
.e-con.e-flex:where(.zvn .verhalen__knop){flex-direction:row}
.e-con.e-flex:where(.zvn .verhalen__baan){flex-direction:row}
.e-con.e-flex:is(.zvn .verhaal){flex:0 0 330px;flex-direction:column}
.e-con.e-flex:where(.zvn .verhaal__sterren){flex-direction:row}
.e-con.e-flex:where(.zvn .verhaal__lees){flex-direction:row}
.e-con.e-flex:where(.zvn .persoon__feiten){flex-direction:row}
.e-con.e-flex:where(.zvn .persoon__acties){flex-direction:row}
.e-con.e-flex:where(.zvn .persoon__knop){flex-direction:row}
.e-con.e-flex:where(.zvn .helpt){flex-direction:row}
.e-con.e-flex:where(.zvn .collegas__rij){flex-direction:row}
.e-con.e-flex:is(.zvn .collega){flex-direction:column}
.e-con.e-flex:where(.zvn .gezicht__link){flex-direction:row}
.e-con.e-flex:where(.zvn .hero-ad .hero-photo__actions){flex-direction:row}
.e-con.e-flex:where(.zvn .plaats-hero__feiten){flex-direction:row}
.e-con.e-flex:where(.zvn .plaats-hero__feiten li){flex-direction:row}
.e-con.e-flex:where(.zvn .plaats-hero .hero-photo__actions){flex-direction:row}
.e-con.e-flex:is(.zvn .plaats-dienst){flex-direction:column}
.e-con.e-flex:where(.zvn .plaats-faq__item summary){flex-direction:row}
.e-con.e-flex:is(.zvn .tkeuze__optie){flex-direction:column}
.e-con.e-flex:where(.zvn .tkeuze__ico){flex-direction:row}
.e-con.e-flex:where(.zvn .tvs__of){flex-direction:row}
.e-con.e-flex:is(.zvn .factor){flex-direction:column}
.e-con.e-flex:where(.zvn .factor__ico){flex-direction:row}
.e-con.e-flex:where(.zvn .keurmerk__item){flex-direction:row}
.e-con.e-flex:is(.zvn .keurmerk__item img){flex:none}
.e-con.e-flex:is(.zvn .keurmerk__getal){flex:none}
.e-con.e-flex:where(.zvn .keurmerk__getal){flex-direction:row}
.e-con.e-flex:is(.zvn .chatkaart__gesprek){flex-direction:column}
.e-con.e-flex:where(.zvn .chatkaart__acties){flex-direction:row}
.e-con.e-flex:where(.zvn .chatkaart__knop){flex-direction:row}
.e-con.e-flex:where(.zvn .chatkaart.is-wacht .chatkaart__bubbel--typen){flex-direction:row}
.e-con.e-flex:where(.zvn :is(.wow-eyebrow, .intro-panel__eyebrow)){flex-direction:row}
.e-con.e-flex:where(.zvn .project-kaart__plaats){flex-direction:row}
.e-con.e-flex:where(.zvn :is(.project-kaart__link, .projecten-kaart__link, .diensten-kaart__link, .ontwikkel-kaart__link)){flex-direction:row}
.e-con.e-flex:where(.zvn .elementor-widget-taxonomy-filter .e-filter-item){flex-direction:row}
.e-con.e-flex:where(.zvn .blogo__balk){flex-direction:row}
.e-con.e-flex:where(.zvn .blogo__zoek){flex-direction:row}
.e-con.e-flex:is(.zvn .blogo__zoek-ico){flex:none}
.e-con.e-flex:is(.zvn .blogo__zoek input){flex:1}
.e-con.e-flex:where(.zvn .blogo__chips){flex-direction:row}
.e-con.e-flex:where(.zvn .blogo__chip){flex-direction:row}
.e-con.e-flex:is(.zvn .blogo .elementor-post__card){flex-direction:column}
.e-con.e-flex:is(.zvn .blogo .elementor-post__text){flex-direction:column;flex:1}
.e-con.e-flex:where(.zvn .wc2__stappen li){flex-direction:row}
.e-con.e-flex:is(.zvn .wc2__nr){flex:none}
.e-con.e-flex:where(.zvn .wc2__nr){flex-direction:row}
.e-con.e-flex:where(.zvn .wc2__onder){flex-direction:row}
.e-con.e-flex:where(.zvn .wc2__stats){flex-direction:row}
.e-con.e-flex:where(.zvn .wc2__wie){flex-direction:row}
.e-con.e-flex:is(.zvn .wc2__koppen){flex:none}
.e-con.e-flex:where(.zvn .wc2__koppen){flex-direction:row}
.e-con.e-flex:where(.zvn .wc2__form .e-form__indicators){flex-direction:row}
.e-con.e-flex:is(.zvn .wc2__form .e-form__indicators__indicator){flex:none !important;flex-direction:row !important}
.e-con.e-flex:where(.zvn .wc2__form .e-form__indicators__indicator__number){flex-direction:row}
.e-con.e-flex:is(.zvn .wc2__form .e-form__indicators__indicator__separator){flex:1 1 auto !important}
.e-con.e-flex:where(.zvn .wc2__form .e-form__buttons){flex-direction:row}
.e-con.e-flex:is(.zvn .wc2__form .e-form__buttons__wrapper){flex:1 1 auto}
.e-con.e-flex:is(.zvn .wc2__form .elementor-field-type-previous){flex:0 0 auto !important}
.e-con.e-flex:is(.zvn .ct2-kanaal){flex-direction:column}
.e-con.e-flex:where(.zvn .ct2-kanaal__ico){flex-direction:row}
.e-con.e-flex:where(.zvn .ct2-navy__lijst li){flex-direction:row}
.e-con.e-flex:is(.zvn .ct2-navy__lijst svg){flex:none}
.e-con.e-flex:where(.zvn .ct2-wie__koppen){flex-direction:row}
.e-con.e-flex:is(.zvn .hero-photo__actions .pill .elementor-button.elementor-button){flex:none}
.e-con.e-flex:where(.zvn .pill .elementor-button.elementor-button){flex-direction:row}
@media (max-width: 1024px) {.e-con.e-flex:is(.zvn .nav-toggle-input:checked ~ .nav ul){flex-direction:column}
.e-con.e-flex:where(.zvn .nav-toggle-input:checked ~ .nav .sub-toggle){flex-direction:row}}
@media (max-width: 860px) {.e-con.e-flex:is(.zvn .hero-band__inner){flex-direction:column}}
@media (max-width: 640px) {.e-con.e-flex:is(.zvn .wave-cta__inner){flex-direction:column}
.e-con.e-flex:is(.zvn .footer-legal__inner){flex-direction:column}
.e-con.e-flex:is(.zvn .score-band){flex-direction:column}}
@media (max-width: 720px) {.e-con.e-flex:is(.zvn .footer-legal__inner){flex-direction:column}}
@media (max-width: 640px) {.e-con.e-flex:where(.zvn .sticker--blauw){flex-direction:row}}
@media (max-width: 767px) {.e-con.e-flex:is(.zvn-balk a){flex-direction:column}
.e-con.e-flex:where(.zvn-balk__ico){flex-direction:row}}
@media (min-width: 1101px) {.e-con.e-flex:is(.zvn .hero-band__media){flex:1 1 56%}}
@media (max-width: 767px) {.e-con.e-flex:where(.zvn .werelden__grid){flex-direction:row}
.e-con.e-flex:is(.zvn .wereld){flex:0 0 78%}
.e-con.e-flex:where(.zvn .werelden__dots){flex-direction:row}}
@media (max-width: 640px) {.e-con.e-flex:is(.zvn .verhaal){flex:0 0 82%}}
@media (min-width: 768px) {.e-con.e-flex:where(.zvn-pop__pil){flex-direction:row}
.e-con.e-flex:where(.zvn-pop__sluit){flex-direction:row}}
@media (max-width: 640px) {.e-con.e-flex:is(.zvn .persoon__knop){flex:1 1 auto}}
@media (max-width: 767px) {.e-con.e-flex:is(.zvn .hero-ad .pill){flex:1 1 auto}}
@media (max-width: 640px) {.e-con.e-flex:is(.zvn .plaats-hero .pill){flex:1 1 auto}}
@media (min-width: 1101px) {.e-con.e-flex:is(.zvn .hero-band__intro){flex:0 0 min(500px, 40%) !important}
.e-con.e-flex:is(.zvn .hero-band__media){flex:1 1 auto !important}}
@media (max-width: 640px) {.e-con.e-flex:is(.zvn .chatkaart__knop){flex:1 1 auto}}
@media(max-width:767px){.e-con.e-flex:is(.zvn .blogo__chip){flex:none}}
@media (max-width: 767px) {.e-con.e-flex:is(.zvn .wc2__stats div){flex:1}}
@media (max-width: 767px){.e-con.e-flex:is(.zvn .hero-ad .pill .elementor-button.elementor-button){flex:1 1 auto}}
@media (max-width: 640px){.e-con.e-flex:is(.zvn .plaats-hero .pill .elementor-button.elementor-button){flex:1 1 auto}}
.elementor .zvn .e-con.nb-c.hero-band__inner{width:100%}
.elementor .zvn .e-con.nb-c.hero-photo__inner{width:100%}
.elementor .zvn .e-con.nb-c.persoon__beeld{width:100%}

.elementor .elementor-element.nbx-82888c7{align-self:flex-start}
.elementor .elementor-element.nbx-557a029{align-self:flex-start}
.elementor .elementor-element.nbx-19ac177{align-self:flex-start}
.elementor .elementor-element.nbx-a8145c6{align-self:flex-start}
.elementor .elementor-element.nbx-2897517{align-self:flex-start}
.elementor .elementor-element.nbx-e6fe956{align-self:flex-start}
.elementor .elementor-element.nbx-a09b7f5{align-self:flex-start}
.elementor .elementor-element.nbx-f6da4fa{align-self:flex-start}
.elementor .elementor-element.nbx-b84828e{align-self:flex-start}
.elementor .elementor-element.nbx-a971361{align-self:flex-start}
.elementor .elementor-element.nbx-f930405{align-self:flex-start}
.elementor .elementor-element.nbx-f5d3a42{align-self:flex-start}
.elementor .elementor-element.nbx-161bbe0{align-self:flex-start}
.elementor .elementor-element.nbx-03160ae{align-self:flex-start}
.elementor .elementor-element.nbx-93afa2c{align-self:flex-start}
.elementor .elementor-element.nbx-58f14f9{align-self:flex-start}
.elementor .elementor-element.nbx-f9b2bcb{align-self:flex-start}
.elementor .elementor-element.nbx-a2465d4{align-self:flex-start}
.elementor .elementor-element.nbx-2bfd01b{align-self:flex-start}
.elementor .elementor-element.nbx-aab5d5f{align-self:flex-start}
.elementor .elementor-element.nbx-f4d7c73{align-self:flex-start}
.elementor .elementor-element.nbx-41941b9{align-self:flex-start}
.elementor .elementor-element.nbx-9a474c6{align-self:flex-start}
.elementor .elementor-element.nbx-bfc02ec{align-self:flex-start}
.elementor .elementor-element.nbx-8d86fdc{align-self:flex-start}
.elementor .elementor-element.nbx-43013c4{align-self:flex-start}
.elementor .elementor-element.nbx-609d668{align-self:flex-start}
.elementor .elementor-element.nbx-e0ffc54{align-self:flex-start}
.elementor .elementor-element.nbx-a1577bc{align-self:flex-start}
.elementor .elementor-element.nbx-2d590ba{align-self:flex-start}
.elementor .elementor-element.nbx-8229ba5{align-self:flex-start}
.elementor .elementor-element.nbx-2bbd892{margin-top:28px}
.elementor .elementor-element.nbx-325f5ef{margin-left:auto;margin-right:auto;width:100%}
.elementor .elementor-element.nbx-e60b8eb{margin-top:26px}
.elementor .e-con.nbx-c6f3707{max-width:760px;text-align:center}
.elementor .elementor-element.nbx-1ea8d0f{align-self:flex-start}
.elementor .elementor-element.nbx-dff70c5{align-self:flex-start}
.elementor .e-con.nbx-7e13baa{align-self:flex-start}
.elementor .elementor-element.nbx-a98b18f{align-self:flex-start}
.elementor .elementor-element.nbx-b5cd39b{align-self:flex-start}
.elementor .elementor-element.nbx-73c5151{align-self:flex-start}
.elementor .elementor-element.nbx-48cfda4{align-self:flex-start}
.elementor .elementor-element.nbx-af5d2fb{align-self:flex-start}
.elementor .elementor-element.nbx-1bfa754{align-self:flex-start}
.elementor .elementor-element.nbx-ff2151e{align-self:flex-start}
.elementor .elementor-element.nbx-32b8a34{align-self:flex-start}
.elementor .elementor-element.nbx-132af94{align-self:flex-start}
.elementor .elementor-element.nbx-525267d{align-self:flex-start}
.elementor .elementor-element.nbx-522c948{align-self:flex-start}
.elementor .elementor-element.nbx-0315146{align-self:flex-start}
.elementor .elementor-element.nbx-f32e32c{align-self:flex-start}
.elementor .elementor-element.nbx-85e8636{align-self:flex-start}
.elementor .elementor-element.nbx-c3d1503{align-self:flex-start}
.elementor .elementor-element.nbx-59688ae{align-self:flex-start}
.elementor .elementor-element.nbx-2028fea{align-self:flex-start}
.elementor .elementor-element.nbx-2c3a6d1{align-self:flex-start}
.elementor .elementor-element.nbx-abd02fd{align-self:flex-start}
.elementor .elementor-element.nbx-e12583c{align-self:flex-start}
.elementor .elementor-element.nbx-e5f4e95{align-self:flex-start}
.elementor .elementor-element.nbx-70c32ce{align-self:flex-start}
.elementor .elementor-element.nbx-a6481db{align-self:flex-start}
.elementor .elementor-element.nbx-4bb791d{align-self:flex-start}
.elementor .elementor-element.nbx-aa24800{align-self:flex-start}
.elementor .elementor-element.nbx-d5316c7{align-self:flex-start}
.elementor .elementor-element.nbx-fed462b{align-self:flex-start}
.elementor .elementor-element.nbx-e80f522{align-self:flex-start}
.elementor .elementor-element.nbx-18715a8{align-self:flex-start}
.elementor .elementor-element.nbx-655885d{align-self:flex-start}/* End custom CSS */