/*
Theme Name: Klusconcierge Premium v5.18
Theme URI: https://klusconcierge.nl
Author: Klusconcierge
Description: Premium maatwerk WordPress-thema voor Klusconcierge.nl.
Version: 5.18
Text Domain: klusconcierge-premium
*/
:root{
 --navy:#071b3b;--navy-2:#0d2f63;--blue:#0d5bc7;--green:#86b63f;--green-dark:#6d9931;
 --ink:#172033;--muted:#667085;--line:#e6eaf0;--soft:#f6f8fb;--white:#fff;
 --shadow:0 18px 45px rgba(7,27,59,.09);--radius:18px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);line-height:1.65;background:#fff}
img{max-width:100%;height:auto}a{color:inherit}.container{width:min(1180px,92vw);margin:auto}
.topbar{background:linear-gradient(90deg,#07182f,#061326);color:#fff;font-size:13px}.topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:9px 0}.topbar-list{display:flex;gap:22px;flex-wrap:wrap}.tick{color:var(--green);font-weight:900}
.site-header{position:sticky;top:0;z-index:80;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 6px 18px rgba(7,27,59,.03)}
.header-inner{height:88px;display:flex;align-items:center;gap:26px}.brand{display:flex;align-items:center;text-decoration:none;margin-right:auto}.brand-name{font-size:30px;font-weight:950;letter-spacing:2px;color:var(--navy);line-height:.82}.brand-name small{display:block;font-size:13px;letter-spacing:3px}.roof{width:28px;height:28px;border-top:3px solid var(--green);border-right:3px solid var(--green);transform:rotate(-45deg);margin-left:8px}
.menu{display:flex;gap:24px;align-items:center}.menu a{text-decoration:none;color:var(--navy);font-weight:700;font-size:14px}.menu a:hover{color:var(--green-dark)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 20px;border-radius:7px;text-decoration:none;font-weight:850;font-size:13px;text-transform:uppercase;letter-spacing:.15px;border:1px solid transparent;cursor:pointer;transition:.2s}
.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--green);color:#fff}.btn-primary:hover{background:var(--green-dark)}.btn-blue{background:var(--blue);color:#fff}.btn-outline{background:#fff;color:var(--navy);border-color:var(--navy-2)}
.mobile-menu-btn{display:none;background:none;border:0;font-size:25px;color:var(--navy)}
.hero{min-height:545px;display:flex;align-items:center;background:
 linear-gradient(90deg,#fff 0%,#fff 39%,rgba(255,255,255,.75) 53%,rgba(255,255,255,.08) 73%),
 url('assets/hero-kia.jpg') center right/cover no-repeat}
.hero-copy{padding:70px 0;max-width:570px}.eyebrow{text-transform:uppercase;color:var(--blue);font-weight:900;letter-spacing:1.5px;font-size:13px}
.hero h1{font-size:58px;line-height:1.03;margin:10px 0 18px;color:var(--navy);letter-spacing:-1.5px}.hero h1 span{color:var(--green-dark)}
.lead{font-size:19px;color:var(--navy);font-weight:750}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:26px 0}.trust-row{display:flex;gap:24px;flex-wrap:wrap;color:var(--navy);font-size:13px;font-weight:800}.trust-row span:before{content:"✓";color:var(--green-dark);margin-right:6px}
.quick-services{padding:34px 0;border-bottom:1px solid var(--line)}.quick-grid{display:grid;grid-template-columns:repeat(5,1fr)}.quick-card{text-align:center;padding:12px 22px;border-right:1px solid var(--line)}.quick-card:last-child{border:0}.quick-card .icon{font-size:31px;color:var(--blue)}.quick-card h3{color:var(--navy);font-size:16px;margin:8px 0}.quick-card p{font-size:13px;color:var(--muted);margin:0 0 8px}.more{font-size:13px;font-weight:850;color:var(--green-dark);text-decoration:none}
.section{padding:72px 0}.soft{background:var(--soft)}.section-title{font-size:38px;line-height:1.15;color:var(--navy);margin:0 0 12px}.section-title span{color:var(--green-dark)}.section-intro{max-width:760px;color:var(--muted);margin-bottom:34px}
.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:24px}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.four-col{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:30px}.card.tint{background:linear-gradient(135deg,#fff,#f3f8e9)}.card.blue-tint{background:linear-gradient(135deg,#fff,#eef4ff)}.card h2,.card h3{color:var(--navy);margin-top:0}
.checklist{list-style:none;padding:0;margin:18px 0}.checklist li{position:relative;padding-left:25px;margin:9px 0}.checklist li:before{content:"✓";position:absolute;left:0;color:var(--green-dark);font-weight:900}
.service-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:25px;transition:.2s}.service-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.service-card h3{color:var(--navy)}.badge{display:inline-block;border-radius:999px;padding:5px 10px;background:#eef6e5;color:#50751f;font-size:12px;font-weight:850}
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.step{text-align:center}.step-icon{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;margin:0 auto 12px;background:#f2f5f9;border:1px solid var(--line);font-size:25px;position:relative}.step-icon b{position:absolute;left:-4px;bottom:-3px;width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-size:11px}.step h4{color:var(--navy);margin:0}.step p{color:var(--muted);font-size:12px}
.page-hero{padding:78px 0;background:linear-gradient(135deg,#edf4ff,#f7faef)}.page-hero h1{font-size:50px;line-height:1.08;margin:8px 0 12px;color:var(--navy)}.content{padding:62px 0}.content h2,.content h3{color:var(--navy)}
.area-grid{display:grid;grid-template-columns:.7fr 1.3fr .85fr;gap:22px}.mapbox{min-height:250px;border-radius:16px;background:radial-gradient(circle at 42% 45%,rgba(13,91,199,.18),transparent 30%),linear-gradient(135deg,#eaf2ff,#fafcff);border:1px solid #d8e4f7;position:relative;padding:28px;overflow:hidden}.pin{position:absolute;color:var(--blue);font-size:25px}.p1{left:29%;top:43%}.p2{left:55%;top:26%}.p3{left:53%;top:66%}.p4{left:75%;top:52%}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-row{display:flex;flex-direction:column;gap:7px}.form-row.full{grid-column:1/-1}.form-row input,.form-row textarea,.form-row select{border:1px solid #cdd5e1;border-radius:8px;padding:13px;font:inherit}.notice{padding:15px 18px;border-radius:8px;background:#eef7e4;border:1px solid #cfe4ad}.error{background:#fff0f0;border-color:#f1b6b6}
.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;background:none;border:0;text-align:left;padding:18px 0;font:inherit;font-weight:850;color:var(--navy);cursor:pointer;display:flex;justify-content:space-between}.faq-a{display:none;padding:0 0 18px;color:var(--muted)}.faq-item.open .faq-a{display:block}
.review{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}.stars{color:#f1b600;font-size:18px}.review cite{display:block;margin-top:12px;font-style:normal;font-weight:850;color:var(--navy)}
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.post-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.post-card img{width:100%;height:210px;object-fit:cover}.post-card-body{padding:22px}.post-card h3{margin-top:0}.post-meta{font-size:12px;color:var(--muted)}
.sticky-contact{position:fixed;right:18px;bottom:18px;z-index:90;display:flex;flex-direction:column;gap:10px}.sticky-contact a{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;text-decoration:none;color:#fff;box-shadow:0 10px 25px rgba(0,0,0,.16);font-size:22px}.wa{background:#21c063}.call{background:var(--blue)}
.site-footer{background:linear-gradient(90deg,#07182f,#061326);color:#dce5f2;padding:50px 0 20px}.footer-grid{display:grid;grid-template-columns:1.3fr repeat(4,1fr);gap:30px}.site-footer h4{color:#fff;margin-top:0}.site-footer a{display:block;color:#dce5f2;text-decoration:none;margin:7px 0;font-size:13px}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:28px;padding-top:16px;font-size:12px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
@media(max-width:980px){.menu{display:none;position:absolute;top:88px;left:0;right:0;background:#fff;padding:20px;box-shadow:var(--shadow);flex-direction:column;align-items:flex-start}.menu.open{display:flex}.mobile-menu-btn{display:block}.header-cta{display:none}.hero{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.76)),url('assets/hero-kia.jpg') center/cover}.hero h1{font-size:46px}.quick-grid,.three-col,.four-col,.post-grid{grid-template-columns:1fr 1fr}.two-col,.area-grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.topbar-list:first-child{display:none}.hero h1{font-size:38px}.quick-grid,.three-col,.four-col,.post-grid,.steps,.footer-grid,.form-grid{grid-template-columns:1fr}.quick-card{border-right:0;border-bottom:1px solid var(--line)}.page-hero h1{font-size:39px}.section{padding:52px 0}}

/* Klusconcierge Premium v1.1 brandbook fixes */
.brand-logo-img{display:block;width:142px;height:auto;object-fit:contain}
.site-footer .brand-logo-img{filter:brightness(0) invert(1);width:138px}
.brand-name,.roof{display:none!important}
@media(max-width:620px){.brand-logo-img{width:126px}}

/* v2.0 locked brandbook */
.brand-logo-img{display:block;width:150px;height:auto;object-fit:contain}
.site-footer .brand-logo-img{width:145px;filter:none;background:#fff;border-radius:4px;padding:5px}
@media(max-width:620px){.brand-logo-img{width:132px}}

/* v2.1 brandbook alignment fixes */
.brand{border:0!important;text-decoration:none!important;box-shadow:none!important;background:none!important}
.brand:after,.brand:before,.brand-logo-img:after,.brand-logo-img:before{display:none!important;content:none!important}
.brand-logo-img{border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important}
.site-header .brand,.site-header .brand:hover,.site-header .brand:focus{border-bottom:0!important;text-decoration:none!important}
.hero{
  background:
   linear-gradient(90deg,rgba(255,255,255,.03) 0%,rgba(255,255,255,.03) 35%,rgba(255,255,255,0) 56%),
   url('assets/hero-kia.jpg') 69% center/cover no-repeat!important;
  min-height:545px;
}
.quick-card .icon{height:58px;display:flex;align-items:center;justify-content:center;margin-bottom:8px}
.quick-card .icon img{width:48px;height:48px;object-fit:contain;display:block}
@media(max-width:980px){
 .hero{background:
   linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.74)),
   url('assets/hero-kia.jpg') 62% center/cover no-repeat!important}
}

/* Klusconcierge Premium v2.3 — definitive desktop/mobile hero */
.hero{
  background:#07182f;
  color:#fff;
  overflow:hidden;
}
.hero-layout{
  width:min(1180px,92vw);
  min-height:545px;
  margin:auto;
  display:grid;
  grid-template-columns:43% 57%;
  align-items:stretch;
}
.hero-copy{
  align-self:center;
  padding:52px 36px 48px 0;
  max-width:565px;
}
.hero h1{
  color:#fff;
  font-size:58px;
  line-height:1.03;
  letter-spacing:-1.5px;
  margin:0 0 18px;
}
.hero h1 span{color:var(--green)}
.hero .lead{
  color:#fff;
  font-size:19px;
  font-weight:750;
  line-height:1.45;
}
.hero-description{color:#fff;font-size:16px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:26px 0}
.hero-mobile-link{display:none}
.trust-row{
  display:flex;
  gap:24px;
  flex-wrap:wrap;
  color:#fff;
  font-size:13px;
  font-weight:800;
}
.trust-row span{color:#fff}
.trust-row span:before{
  content:"✓";
  color:var(--green);
  margin-right:6px;
  font-weight:900;
}
.hero-media{
  position:relative;
  min-width:0;
  overflow:hidden;
}
.hero-media:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(90deg,#07182f 0%,rgba(7,24,47,.72) 7%,rgba(7,24,47,.10) 25%,rgba(7,24,47,0) 42%);
}
.hero-media picture,
.hero-media img{
  display:block;
  width:100%;
  height:100%;
}
.hero-media img{
  object-fit:cover;
  object-position:57% 50%;
}

/* Tablet */
@media(max-width:980px){
  .site-header{position:relative}
  .hero-layout{
    width:100%;
    min-height:0;
    display:flex;
    flex-direction:column;
  }
  .hero-copy{
    width:min(92vw,720px);
    margin:0 auto;
    padding:36px 0 30px;
    max-width:none;
  }
  .hero-media{
    width:100%;
    height:auto;
  }
  .hero-media:before{display:none}
  .hero-media picture,
  .hero-media img{
    width:100%;
    height:auto;
  }
  .hero-media img{
    object-fit:contain;
    object-position:center;
  }
}

/* Phone — dedicated premium mobile composition */
@media(max-width:620px){
  .header-inner{height:88px}
  .hero{
    background:
      radial-gradient(circle at 78% 15%,rgba(28,74,127,.26),transparent 38%),
      linear-gradient(180deg,#07182f 0%,#092348 100%);
    padding:0 14px 18px;
  }
  .hero-layout{
    width:100%;
    display:flex;
    flex-direction:column;
  }
  .hero-copy{
    width:100%;
    margin:0;
    padding:34px 22px 24px;
  }
  .hero h1{
    font-size:46px;
    line-height:1.02;
    letter-spacing:-1px;
    margin:0 0 18px;
  }
  .hero h1 span{
    display:block;
    color:var(--green);
  }
  .hero .lead{
    font-size:18px;
    line-height:1.45;
    margin:0 0 18px;
  }
  .hero-description{
    font-size:16px;
    line-height:1.58;
    margin:0 0 24px;
  }
  .hero-actions{
    display:block;
    margin:0;
  }
  .hero-main-cta{
    width:100%;
    padding:16px 14px;
    font-size:14px;
  }
  .hero-secondary-cta{display:none}
  .hero-mobile-link{
    display:inline-block;
    margin:22px 0 24px;
    color:var(--green);
    text-decoration:none;
    font-weight:850;
    border-bottom:1px solid rgba(134,182,63,.65);
    padding-bottom:4px;
  }
  .trust-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:13px 14px;
    font-size:14px;
    margin-bottom:24px;
  }
  .hero-media{
    width:100%;
    border-radius:24px 24px 14px 14px;
    overflow:hidden;
    box-shadow:0 16px 34px rgba(0,0,0,.25);
    background:#07182f;
  }
  .hero-media picture,
  .hero-media img{
    display:block;
    width:100%;
    height:auto;
  }
  .hero-media img{
    object-fit:contain;
    object-position:center;
  }
}

/* Header logo must stay clean */
.site-header .brand,
.site-header .brand:hover,
.site-header .brand:focus{
  border:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
  text-decoration:none!important;
  background:transparent!important;
}
.site-header .brand-logo-img{
  display:block;
  width:150px;
  height:auto;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:0!important;
}

/* v2.31 unified brand refinements */
.hero-copy{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  border:0!important;
}
.hero-copy:before,.hero-copy:after{content:none!important;display:none!important}

.brand-step-icon{
  background:#fff!important;
  border:1px solid #dfe8d3!important;
  box-shadow:0 8px 22px rgba(7,27,59,.06);
}
.brand-step-icon img{width:34px;height:34px;display:block}
.step-num,.step-icon{color:var(--green-dark)}
.process-section .steps{position:relative}
.process-section .steps:before{
  content:"";position:absolute;top:30px;left:9%;right:9%;height:1px;background:#dfe6ed;z-index:0
}
.process-section .step{position:relative;z-index:1}

.audience-list{list-style:none;padding:0;margin:15px 0 0}
.audience-list li{display:flex;gap:13px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line)}
.audience-list li:last-child{border-bottom:0}
.audience-list img{width:31px;height:31px;flex:0 0 31px}
.audience-list span{display:flex;flex-direction:column}
.audience-list strong{color:var(--navy);font-size:14px}
.audience-list small{color:var(--muted);font-size:12px;line-height:1.45;margin-top:2px}

.mapbox-concrete{padding:0!important;background:none!important;border:0!important;min-height:0!important}
.mapbox-concrete img{width:100%;height:100%;min-height:250px;object-fit:cover;border-radius:16px;border:1px solid #d7e3f1;display:block}
.workarea-layout{display:grid;grid-template-columns:1.45fr .55fr;gap:28px;align-items:center;margin-bottom:36px}
.workarea-map img{width:100%;display:block;border-radius:18px;border:1px solid #d7e3f1}

.menu li{list-style:none;margin:0;padding:0}
.menu ul{margin:0;padding:0}
.mobile-menu-btn{cursor:pointer;position:relative;z-index:102}
@media(max-width:980px){
 .menu{
   display:none!important;
   position:absolute!important;
   z-index:101!important;
   top:88px!important;
   left:0!important;
   right:0!important;
   margin:0!important;
   padding:18px 4vw 24px!important;
   background:#fff!important;
   border-top:1px solid var(--line)!important;
   box-shadow:0 18px 35px rgba(7,27,59,.14)!important;
   flex-direction:column!important;
   align-items:stretch!important;
   gap:0!important;
 }
 .menu.open{display:flex!important}
 .menu li{width:100%;border-bottom:1px solid var(--line)}
 .menu li:last-child{border-bottom:0}
 .menu a{display:block!important;padding:14px 4px!important;font-size:16px!important}
 body.menu-open{overflow:hidden}
 .process-section .steps:before{display:none}
 .workarea-layout{grid-template-columns:1fr}
}
@media(max-width:620px){
 .hero-copy{background:transparent!important}
 .hero{background:linear-gradient(180deg,#07182f 0%,#092348 100%)!important}
}

.portfolio-hero{background:linear-gradient(135deg,#edf4ff,#f5f9ed)}
.portfolio-intro,.section-heading-row,.portfolio-cta{
 display:flex;align-items:center;justify-content:space-between;gap:28px
}
.portfolio-intro{padding:0 0 46px;border-bottom:1px solid var(--line)}
.portfolio-section{padding:54px 0 10px}
.portfolio-filters{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.portfolio-filter{border:1px solid #d5dde8;background:#fff;color:var(--navy);border-radius:999px;padding:8px 13px;font-weight:750;cursor:pointer}
.portfolio-filter.active,.portfolio-filter:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.portfolio-placeholder{height:210px;display:grid;place-items:center;background:linear-gradient(135deg,#f3f7fb,#eef5e7)}
.portfolio-placeholder img{width:70px;height:70px}
.portfolio-placeholder.compact{height:180px}
.post-image-link{display:block}
.post-card a{text-decoration:none}
.post-card[hidden]{display:none!important}
.section-brand-icon{width:62px;height:62px}
.empty-content{text-align:center;grid-column:1/-1}
.empty-content img{width:58px;height:58px}
.portfolio-cta{margin-top:30px}
@media(max-width:760px){
 .portfolio-intro,.section-heading-row,.portfolio-cta{align-items:flex-start;flex-direction:column}
 .portfolio-filters{justify-content:flex-start}
}

/* v2.33 approved circular work-area map */
.workarea-approved{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.workarea-approved picture,
.workarea-approved picture img{
  display:block;
  width:100%;
}
.workarea-approved picture img{
  border-radius:22px;
  border:1px solid #e1e8ef;
  background:#fff;
}
.workarea-approved.standalone{
  max-width:1000px;
  margin:0 auto 46px;
  text-align:center;
}
.workarea-approved.standalone h2{
  color:var(--navy);
  font-size:38px;
  margin-bottom:8px;
}
.workarea-places{
  color:var(--green-dark);
  font-size:20px;
  font-weight:800;
  margin:0 0 24px;
}
.outside-area-cta{
  margin-top:20px;
  padding:22px 24px;
  border:1px solid #dce7cc;
  border-radius:16px;
  background:linear-gradient(135deg,#f7faF2,#eef5e5);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  text-align:left;
}
.outside-area-cta h3{
  color:var(--navy);
  margin:0 0 6px;
}
.outside-area-cta p{
  margin:0;
  color:var(--muted);
  max-width:680px;
}
.outside-area-cta .btn{
  flex:0 0 auto;
}
@media(max-width:760px){
  .outside-area-cta{
    flex-direction:column;
    align-items:stretch;
  }
  .outside-area-cta .btn{
    width:100%;
  }
  .workarea-approved.standalone h2{
    font-size:30px;
  }
  .workarea-places{
    font-size:17px;
  }
}

/* v2.34 reliable navigation */
.desktop-menu{
  display:flex;
  align-items:center;
  gap:24px;
}
.desktop-menu a{
  color:var(--navy);
  text-decoration:none;
  font-size:14px;
  font-weight:700;
}
.desktop-menu a:hover{color:var(--green-dark)}
.desktop-services-menu{position:relative}
.desktop-services-menu>summary{display:flex;align-items:center;gap:5px;list-style:none;color:var(--navy);font-size:14px;font-weight:700;line-height:1.2;white-space:nowrap;cursor:pointer}
.desktop-services-menu>summary::-webkit-details-marker{display:none}
.desktop-services-menu>summary .services-chevron{display:block;width:14px;height:14px;flex:0 0 14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}
.desktop-services-menu[open]>summary,.desktop-services-menu>summary:hover{color:var(--green-dark)}
.desktop-services-menu[open]>summary .services-chevron{transform:rotate(180deg)}
.desktop-services-dropdown{position:absolute;z-index:210;top:calc(100% + 18px);left:-22px;width:320px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 45px rgba(7,27,59,.16)}
.desktop-services-dropdown:before{content:"";position:absolute;left:30px;top:-7px;width:12px;height:12px;background:#fff;border-left:1px solid var(--line);border-top:1px solid var(--line);transform:rotate(45deg)}
.desktop-menu .desktop-services-dropdown a{display:block;padding:10px 12px;border-radius:9px;line-height:1.35}
.desktop-menu .desktop-services-dropdown a:hover{background:#eff6e8;color:var(--green-dark)}
.desktop-services-dropdown small{display:block;margin-top:2px;color:var(--muted);font-size:11px;font-weight:600}

.mobile-nav{display:none;margin-left:auto;position:relative}
.mobile-nav>summary{
  list-style:none;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  cursor:pointer;
  color:var(--navy);
  font-size:28px;
  border:0;
  background:transparent;
}
.mobile-nav>summary::-webkit-details-marker{display:none}
.mobile-nav .menu-close-icon{display:none}
.mobile-nav[open] .menu-open-icon{display:none}
.mobile-nav[open] .menu-close-icon{display:inline}

.mobile-nav nav{
  position:absolute;
  z-index:200;
  top:58px;
  right:-4vw;
  width:100vw;
  background:#fff;
  box-shadow:0 18px 35px rgba(7,27,59,.16);
  border-top:1px solid var(--line);
  padding:10px 4vw 22px;
}
.mobile-nav nav a{
  display:block;
  padding:14px 4px;
  border-bottom:1px solid var(--line);
  color:var(--navy);
  text-decoration:none;
  font-size:16px;
  font-weight:750;
}
.mobile-nav nav a:last-child{border-bottom:0}
.mobile-services-menu{border-bottom:1px solid var(--line)}
.mobile-services-menu>summary{display:flex;align-items:center;justify-content:space-between;padding:14px 4px;list-style:none;color:var(--navy);font-size:16px;font-weight:750;cursor:pointer}
.mobile-services-menu>summary::-webkit-details-marker{display:none}
.mobile-services-menu>summary .services-chevron{display:block;width:16px;height:16px;flex:0 0 16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}
.mobile-services-menu[open]>summary .services-chevron{transform:rotate(180deg)}
.mobile-services-menu>div{padding:0 0 8px 14px;border-left:3px solid #eff6e8}
.mobile-nav nav .mobile-services-menu a{padding:11px 10px;border-bottom:0;font-size:14px;font-weight:650}
.mobile-nav nav .mobile-services-menu a:hover{background:#f6f9f2;color:var(--green-dark)}
.mobile-nav nav .mobile-nav-cta{
  margin-top:12px;
  padding:14px 16px;
  border-radius:7px;
  background:var(--green);
  color:#fff;
  text-align:center;
}

@media(max-width:980px){
  .desktop-menu{display:none!important}
  .mobile-nav{display:block}
  .header-cta{display:none!important}
  .header-inner{position:relative}
}

/* Hide obsolete JS-menu elements from older cached markup */
.mobile-menu-btn,.menu#primary-navigation{display:none!important}

/* v2.35 clean bus image, green handset and no cookie UI */
.hero-media{
  background:#07182f!important;
  padding:0!important;
  border:0!important;
}
.hero-media picture,
.hero-media img{
  margin:0!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  vertical-align:top!important;
}
@media(max-width:620px){
  .hero-media{
    border-radius:24px 24px 14px 14px!important;
    overflow:hidden!important;
  }
  .hero-media picture{line-height:0!important}
}
.sticky-contact a{
  width:54px;
  height:54px;
}
.sticky-contact svg{
  width:27px;
  height:27px;
  fill:none;
  stroke:#fff;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.sticky-contact .wa{background:#21c063!important}
.sticky-contact .call{background:var(--green)!important}

/* v2.36 portfolio fotografie */
.featured-projects{padding:48px 0 20px}
.featured-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.featured-project-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 12px 30px rgba(7,27,59,.07)}
.project-image-button{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}
.project-image-button img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.featured-project-body{padding:20px}
.project-category{display:inline-block;color:var(--green-dark);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.6px;margin-bottom:7px}
.featured-project-body h3{margin:0 0 8px;color:var(--navy);font-size:20px}
.featured-project-body p{margin:0;color:var(--muted);font-size:14px}
.featured-project-grid>article[hidden]{display:none}
.kcp-project-load-more{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:30px;text-align:center}
.kcp-project-load-more[hidden]{display:none}
.kcp-project-load-status{margin:0;color:var(--muted);font-size:13px}
.project-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(3,12,25,.92);padding:5vh 4vw;display:grid;place-items:center}
.project-lightbox[hidden]{display:none}
.project-lightbox img{max-width:min(1100px,92vw);max-height:82vh;border-radius:14px}
.project-lightbox p{color:#fff;margin:12px 0 0;font-weight:700}
.project-lightbox-close{position:absolute;top:18px;right:24px;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.35);color:#fff;font-size:30px;cursor:pointer}
@media(max-width:900px){.featured-project-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.featured-project-grid{grid-template-columns:1fr}}

/* v3.7 optionele voor- en nafoto's */
.project-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:#eef2f6;overflow:hidden}
.project-comparison.is-single{grid-template-columns:1fr}
.project-comparison figure{position:relative;margin:0;min-width:0}
.project-comparison img{display:block;width:100%;height:230px;object-fit:cover}
.project-photo-label{position:absolute;left:12px;bottom:12px;padding:5px 10px;border-radius:999px;background:rgba(7,27,59,.9);color:#fff;font-size:12px;font-weight:850;letter-spacing:.3px}
.project-comparison figure+figure{border-left:3px solid #fff}
.single-project{padding:62px 0 78px}.single-project-header{max-width:820px;margin-bottom:28px}.single-project-header h1{font-size:46px;line-height:1.1;margin:8px 0 12px;color:var(--navy)}
.single-project .project-comparison{border-radius:18px;box-shadow:var(--shadow);margin:28px 0}.single-project .project-comparison img{height:min(520px,55vw)}
.single-project-content{max-width:820px}.single-project-back{margin-top:34px}
@media(max-width:620px){.project-comparison{grid-template-columns:1fr}.project-comparison figure+figure{border-left:0;border-top:3px solid #fff}.project-comparison img{height:220px}.single-project-header h1{font-size:36px}.single-project .project-comparison img{height:auto;max-height:480px}}

/* v2.37 request form */
.request-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:28px;align-items:start}
.request-form-card{padding:28px}
.request-form{display:grid;gap:18px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.request-form label{display:grid;gap:7px;color:var(--navy);font-weight:750}
.request-form input,.request-form select,.request-form textarea{
  width:100%;
  border:1px solid #d6dde7;
  border-radius:10px;
  padding:13px 14px;
  font:inherit;
  background:#fff;
}
.request-form input:focus,.request-form select:focus,.request-form textarea:focus{
  outline:2px solid rgba(134,182,63,.28);
  border-color:var(--green);
}
.file-upload-label{
  border:1px dashed #b8c6d8;
  border-radius:12px;
  padding:18px;
  background:#f8fafc;
}
.file-upload-label small{font-weight:400;color:var(--muted)}
.file-preview{display:grid;gap:8px}
.file-preview-item{
  padding:9px 11px;
  border-radius:8px;
  background:#eef5e7;
  color:var(--navy);
  font-size:13px;
}
.privacy-check{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:10px!important;font-weight:500!important}
.privacy-check input{width:auto;margin-top:5px}
.request-submit{justify-self:start}
.form-message{padding:14px 16px;border-radius:10px;margin-bottom:20px}
.form-message.success{background:#edf7e4;color:#315c12;border:1px solid #cfe6bc}
.form-message.error{background:#fff0f0;color:#8b1e1e;border:1px solid #f0c6c6}
.request-info{position:sticky;top:110px}
@media(max-width:900px){
  .request-layout{grid-template-columns:1fr}
  .request-info{position:static}
}
@media(max-width:620px){
  .form-grid{grid-template-columns:1fr}
  .request-form-card{padding:20px}
  .request-submit{width:100%}
}

/* v2.39 definitive hero repair */
.hero{
  position:relative!important;
  display:block!important;
  min-height:570px!important;
  padding:0!important;
  overflow:hidden!important;
  color:#fff!important;
  background:
    linear-gradient(90deg,
      rgba(7,24,47,.96) 0%,
      rgba(7,24,47,.90) 24%,
      rgba(7,24,47,.55) 43%,
      rgba(7,24,47,.10) 62%,
      rgba(7,24,47,0) 78%
    ),
    url('assets/hero-bus-desktop.jpg') center center / cover no-repeat!important;
}

.hero-layout{
  width:min(1180px,92vw)!important;
  min-height:570px!important;
  margin:0 auto!important;
  display:block!important;
  position:relative!important;
}

.hero-copy{
  width:520px!important;
  max-width:46%!important;
  min-height:570px!important;
  padding:68px 0 48px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  position:relative!important;
  z-index:3!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
}

.hero h1{
  margin:0 0 22px!important;
  color:#fff!important;
  font-size:58px!important;
  line-height:1.03!important;
  letter-spacing:-1.4px!important;
  text-shadow:0 2px 12px rgba(0,0,0,.28)!important;
}

.hero h1 span{
  color:var(--green)!important;
}

.hero .lead{
  margin:0 0 14px!important;
  color:#fff!important;
  font-size:19px!important;
  line-height:1.45!important;
  font-weight:780!important;
  text-shadow:0 1px 7px rgba(0,0,0,.28)!important;
}

.hero-description{
  margin:0!important;
  color:#fff!important;
  font-size:16px!important;
  line-height:1.55!important;
  text-shadow:0 1px 7px rgba(0,0,0,.28)!important;
}

.hero-actions{
  display:flex!important;
  gap:14px!important;
  flex-wrap:wrap!important;
  margin:28px 0 22px!important;
}

.hero-actions .btn{
  min-height:48px!important;
}

.hero .btn-outline{
  background:rgba(255,255,255,.96)!important;
  color:var(--navy)!important;
  border-color:#fff!important;
}

.hero-mobile-link{
  display:none!important;
}

.trust-row{
  display:flex!important;
  gap:20px!important;
  flex-wrap:wrap!important;
  margin:0!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:800!important;
  text-shadow:0 1px 6px rgba(0,0,0,.3)!important;
}

.trust-row span{
  color:#fff!important;
}

.trust-row span:before{
  content:"✓"!important;
  color:var(--green)!important;
  margin-right:6px!important;
}

/* The image is already the desktop background; hide the duplicate media block. */
.hero-media{
  display:none!important;
}

@media(max-width:980px){
  .hero{
    min-height:0!important;
    padding:0 14px 18px!important;
    background:
      radial-gradient(circle at 75% 15%,rgba(35,81,139,.28),transparent 40%),
      linear-gradient(180deg,#07182f 0%,#092348 100%)!important;
  }

  .hero-layout{
    width:100%!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
  }

  .hero-copy{
    width:min(92vw,720px)!important;
    max-width:none!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:38px 8px 28px!important;
    display:block!important;
  }

  .hero h1{
    font-size:48px!important;
    line-height:1.03!important;
  }

  .hero-media{
    display:block!important;
    width:100%!important;
    margin:0!important;
    border-radius:24px 24px 14px 14px!important;
    overflow:hidden!important;
    background:#07182f!important;
    line-height:0!important;
  }

  .hero-media picture,
  .hero-media img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }

  .hero-media img{
    object-fit:contain!important;
    object-position:center center!important;
  }
}

@media(max-width:620px){
  .hero-copy{
    width:100%!important;
    padding:30px 14px 24px!important;
  }

  .hero h1{
    font-size:42px!important;
    letter-spacing:-.8px!important;
  }

  .hero .lead{
    font-size:17px!important;
  }

  .hero-description{
    font-size:16px!important;
  }

  .hero-actions{
    display:block!important;
    margin:24px 0 18px!important;
  }

  .hero-actions .btn{
    width:100%!important;
  }

  .hero-secondary-cta{
    display:none!important;
  }

  .hero-mobile-link{
    display:inline-block!important;
    color:var(--green)!important;
    font-weight:850!important;
    text-decoration:none!important;
    border-bottom:1px solid rgba(134,182,63,.7)!important;
    padding-bottom:4px!important;
    margin:0 0 22px!important;
  }

  .trust-row{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:12px 14px!important;
    font-size:13px!important;
    margin-bottom:2px!important;
  }
}

/* v2.4 favicon and footer logo fix */
.footer-logo-img{
  display:block;
  width:190px;
  max-width:100%;
  height:auto;
  object-fit:contain;
  background:transparent;
  border:0;
  box-shadow:none;
  margin:0 0 12px;
}
.site-footer .brand-logo-img{
  display:none!important;
}

/* v2.41 footer logo correction */
.footer-brand-block{min-width:0}
.footer-brand-link{
  display:inline-block;
  margin:0 0 14px;
  text-decoration:none;
}
.footer-logo-img{
  display:block!important;
  width:230px!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
}
.site-footer .footer-brand-block p{margin:8px 0}
.site-footer .footer-brand-block a{
  color:#fff;
  text-decoration:none;
}
.site-footer .footer-brand-block a:hover{color:var(--green)}
@media(max-width:620px){
  .footer-logo-img{width:200px!important}
}

/* v2.42 crisp footer logo and white topbar handset */
.topbar-phone{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#fff!important;
  text-decoration:none;
  font-weight:700;
}
.topbar-phone svg{
  width:17px;
  height:17px;
  fill:none;
  stroke:#fff;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  flex:0 0 auto;
}
.topbar-phone:hover{color:var(--green)!important}
.topbar-phone:hover svg{stroke:var(--green)}

.footer-logo-img{
  display:block!important;
  width:245px!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  image-rendering:auto!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
  opacity:1!important;
}
@media(max-width:620px){
  .footer-logo-img{width:215px!important}
}

/* v2.421 circular work-area image */
.workarea-approved picture img,
.mapbox-concrete img{
  border-radius:18px!important;
  object-fit:contain!important;
  background:#fff!important;
}

/* v2.43 */
.workarea-approved picture,.mapbox-concrete picture{display:block!important;margin-top:30px!important}
.workarea-approved picture img,.mapbox-concrete img{display:block!important;width:100%!important;height:auto!important;margin:0 auto!important;object-fit:contain!important;border-radius:18px!important;background:#fff!important}
.workarea-places{margin-bottom:28px!important}
.footer-logo-img{display:block!important;width:235px!important;height:auto!important}

/* v2.44 definitive footer and homepage workarea fixes */
.footer-logo-inline{
  display:block;
  width:235px;
  max-width:100%;
  height:auto;
  overflow:visible;
}


.workarea-home-section{
  padding:72px 0;
}
.workarea-heading{
  text-align:center;
  margin:0 auto 30px;
}
.workarea-kicker{
  margin:0 0 6px;
  color:var(--green-dark);
  font-size:18px;
  font-weight:850;
}
.workarea-heading h2{
  margin:0;
  color:var(--navy);
  font-size:38px;
  line-height:1.16;
}
.workarea-home-grid{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);
  gap:28px;
  align-items:start;
}
.workarea-map-card{
  min-width:0;
}
.workarea-map-card > img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  border-radius:18px;
  background:#fff;
  border:1px solid #e1e8ef;
}
.workarea-request-card{
  position:sticky;
  top:110px;
}
@media(max-width:900px){
  .workarea-home-grid{grid-template-columns:1fr}
  .workarea-request-card{position:static}
}
@media(max-width:620px){
  .workarea-heading h2{font-size:28px}
  .workarea-kicker{font-size:16px}
  .footer-logo-inline{width:205px}
}

/* v2.45 master work-area expansion */
.workarea-map-card > img,
.workarea-approved picture img,
.workarea-approved > img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  background:#fff;
}
.workarea-place-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:16px;
}
@media(max-width:980px){
  .workarea-place-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .workarea-place-grid{grid-template-columns:1fr}
}

/* v2.451 accurate map and calm approved work-area styling */
.approved-section-heading,
.workarea-approved.standalone{
  text-align:left!important;
  max-width:820px;
  margin:0 0 30px!important;
}
.approved-section-heading .badge,
.workarea-approved.standalone .badge{
  margin-bottom:12px;
}
.approved-section-heading .section-title,
.workarea-approved.standalone .section-title{
  margin:0 0 10px!important;
  font-size:38px!important;
  line-height:1.15!important;
  color:var(--navy)!important;
  letter-spacing:normal!important;
  text-transform:none!important;
}
.workarea-region-line{
  margin:0!important;
  max-width:760px!important;
  color:var(--muted)!important;
  font-size:18px!important;
  line-height:1.5!important;
  font-weight:600!important;
}
.workarea-home-section{
  background:#fff!important;
}
.workarea-map-card > img,
.workarea-approved picture img,
.workarea-approved > img{
  border:1px solid var(--line)!important;
  border-radius:18px!important;
  box-shadow:none!important;
}
@media(max-width:620px){
  .approved-section-heading .section-title,
  .workarea-approved.standalone .section-title{
    font-size:30px!important;
  }
  .workarea-region-line{
    font-size:16px!important;
  }
}

/* v2.452 approved realistic work-area map */
.workarea-map-card > img,
.workarea-approved picture img,
.workarea-approved > img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  background:#fff!important;
  border:1px solid var(--line)!important;
  border-radius:18px!important;
  box-shadow:none!important;
}

/* v2.455 — complete homepage restored; precise Belklus and map updates */
.belklus-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.belklus-actions .btn{min-height:48px}
.workarea-map-card > img,
.workarea-approved picture img,
.workarea-approved > img{
  width:75%!important;
  max-width:75%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  display:block!important;
}
@media(max-width:900px){
  .workarea-map-card > img,
  .workarea-approved picture img,
  .workarea-approved > img{
    width:82%!important;
    max-width:82%!important;
  }
}
@media(max-width:620px){
  .belklus-actions{display:grid;grid-template-columns:1fr}
  .belklus-actions .btn{width:100%}
  .workarea-map-card > img,
  .workarea-approved picture img,
  .workarea-approved > img{
    width:92%!important;
    max-width:92%!important;
  }
}

/* v2.456 — uniforme Belklus-knoppen */
.belklus-actions .btn{
  flex:1 1 280px;
  background:#fff!important;
  color:var(--navy)!important;
  border-color:var(--navy-2)!important;
}
.belklus-actions .btn:hover{
  background:#f6f8fb!important;
  color:var(--navy)!important;
}
.belklus-actions .btn u{
  text-underline-offset:3px;
  text-decoration-thickness:2px;
}

/* v2.457 — hero zonder blauwe fade */
.hero{
  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,.20) 0%,
      rgba(0,0,0,.14) 24%,
      rgba(0,0,0,.06) 42%,
      rgba(0,0,0,0) 62%
    ),
    url('assets/hero-bus-desktop.jpg') center center / cover no-repeat!important;
}

@media(max-width:980px){
  .hero{
    background:
      linear-gradient(
        180deg,
        rgba(0,0,0,.10) 0%,
        rgba(0,0,0,.03) 35%,
        rgba(0,0,0,0) 60%
      ),
      linear-gradient(180deg,#07182f 0%,#092348 100%)!important;
  }
}

/* v2.458 — footerlogo en transparante favicon */
.footer-logo-img{
  display:block!important;
  width:235px!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
}
@media(max-width:620px){
  .footer-logo-img{width:205px!important}
}

/* v2.459 — footerlogo zichtbaar op bestaand pad */
.footer-logo-img{
  display:block!important;
  width:235px!important;
  max-width:100%!important;
  height:auto!important;
  opacity:1!important;
  visibility:visible!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
}
@media(max-width:620px){
  .footer-logo-img{width:205px!important}
}

/* v2.51 — footerlogo definitief hersteld */
.footer-logo-img{
  display:block!important;
  width:220px!important;
  max-width:100%!important;
  height:auto!important;
  opacity:1!important;
  visibility:visible!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
}
@media(max-width:620px){
  .footer-logo-img{width:195px!important}
}

/* v2.53 — exact goedgekeurd footerlogo */
.footer-logo-img{
  display:block!important;
  width:205px!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  opacity:1!important;
  visibility:visible!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
}
@media(max-width:620px){
  .footer-logo-img{width:185px!important}
}

/* v2.54 — vaste transparante footerlogovariant */
.footer-logo-img{
  display:block!important;
  width:205px!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  opacity:1!important;
  visibility:visible!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
}
@media(max-width:620px){
  .footer-logo-img{width:185px!important}
}


/* v2.57 — Diensten Premium; uitsluitend dienstenpagina's */
.service-premium-hero{position:relative;overflow:hidden;background:#07172D;color:#fff;padding:72px 0 66px}
.service-premium-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 42%,rgba(134,182,63,.17),transparent 24%),linear-gradient(120deg,rgba(255,255,255,.025),transparent 48%);pointer-events:none}
.service-premium-hero-inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:48px}
.service-premium-copy{max-width:760px}.service-premium-badge{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.15)}
.service-premium-hero h1{color:#fff;font-size:clamp(38px,5vw,64px);line-height:1.04;margin:18px 0 18px;letter-spacing:-.035em}
.service-premium-hero p{font-size:clamp(18px,2vw,22px);line-height:1.6;color:rgba(255,255,255,.86);max-width:720px;margin:0}
.service-premium-actions{margin-top:28px}.service-hero-outline{color:#fff!important;border-color:rgba(255,255,255,.7)!important;background:transparent!important}
.service-hero-outline:hover{background:#fff!important;color:#07172D!important}
.service-premium-mark{width:190px;height:190px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);border-radius:36px;display:grid;place-items:center;transform:rotate(2deg)}
.service-premium-mark img{width:92px;height:92px;object-fit:contain;filter:brightness(0) invert(1);opacity:.92}
.service-switcher{background:#fff;padding:24px 0;border-bottom:1px solid var(--line)}
.service-switcher-details{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 14px 40px rgba(7,23,45,.07);overflow:hidden}
.service-switcher-details summary{list-style:none;cursor:pointer;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--navy);font-weight:800}
.service-switcher-details summary::-webkit-details-marker{display:none}.service-switcher-details summary small{display:block;color:var(--green-dark);font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:3px}
.service-switcher-chevron{font-size:28px;line-height:1;color:var(--green-dark);transition:transform .2s ease}.service-switcher-details[open] .service-switcher-chevron{transform:rotate(180deg)}
.service-switcher-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:0 16px 16px;gap:8px;border-top:1px solid var(--line)}
.service-switcher-menu a{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 14px;border-radius:12px;color:var(--navy);font-weight:700;text-decoration:none}
.service-switcher-menu a:hover,.service-switcher-menu a.is-current{background:#eff6e8;color:var(--green-dark)}
.service-premium-content{padding-top:58px;padding-bottom:62px}.service-premium-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:28px}
.service-premium-grid .service-card{height:100%;display:flex;flex-direction:column}.service-premium-grid .service-card .more{margin-top:auto;padding-top:18px}
.service-copy-grid{align-items:start}.service-copy-grid>div>p{font-size:17px;line-height:1.75}.service-copy-grid .card{position:sticky;top:110px}
.service-portfolio-cta{padding:58px 0;background:#f5f8fb}.service-portfolio-panel{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:38px 42px;border-radius:24px;background:#07172D;color:#fff;box-shadow:0 20px 55px rgba(7,23,45,.16)}
.service-portfolio-panel h2{color:#fff;margin:12px 0 8px}.service-portfolio-panel p{color:rgba(255,255,255,.78);margin:0;max-width:720px}.service-portfolio-panel .btn-outline{flex:0 0 auto;color:#fff!important;border-color:rgba(255,255,255,.7)!important;background:transparent!important}
.service-portfolio-panel .btn-outline:hover{background:#fff!important;color:#07172D!important}
.service-trust-strip{background:#fff;border-top:1px solid var(--line);padding:24px 0}.service-trust-items{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px 30px;color:var(--navy);font-weight:750}.service-trust-items span::first-letter{color:var(--green-dark)}
@media(max-width:900px){.service-premium-hero-inner{grid-template-columns:1fr}.service-premium-mark{display:none}.service-premium-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-portfolio-panel{align-items:flex-start;flex-direction:column}.service-copy-grid .card{position:static}}
@media(max-width:620px){.service-premium-hero{padding:52px 0 48px}.service-premium-actions{display:grid;grid-template-columns:1fr}.service-premium-actions .btn{width:100%}.service-switcher-menu{grid-template-columns:1fr}.service-premium-grid{grid-template-columns:1fr}.service-portfolio-panel{padding:28px 24px}.service-portfolio-panel .btn{width:100%}.service-trust-items{justify-content:flex-start}}


/* v2.58 — Kleine klussen CTA en premium Over ons */
.service-choice-card .badge{margin-bottom:10px}
.service-choice-card h2{margin-top:0}
.service-choice-actions{display:grid;gap:12px;margin-top:22px}
.service-choice-actions .btn{width:100%;justify-content:center}
.service-choice-actions .btn-outline{background:#fff!important;color:var(--navy)!important;border-color:var(--navy-2)!important}
.service-choice-actions .btn-outline:hover{background:#f3f6f9!important}

.about-premium-hero{position:relative;overflow:hidden;background:#07172D;color:#fff;padding:82px 0 76px}
.about-premium-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 79% 40%,rgba(134,182,63,.18),transparent 24%),linear-gradient(120deg,rgba(255,255,255,.025),transparent 52%);pointer-events:none}
.about-premium-hero-inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 230px;align-items:center;gap:52px}
.about-premium-hero-copy{max-width:850px}
.about-premium-badge{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.14)}
.about-premium-hero h1{color:#fff;font-size:clamp(42px,5vw,68px);line-height:1.03;letter-spacing:-.04em;margin:18px 0}
.about-premium-hero p{color:rgba(255,255,255,.86);font-size:clamp(18px,2vw,22px);line-height:1.68;max-width:820px;margin:0}
.about-premium-actions{margin-top:30px}
.about-hero-outline{color:#fff!important;border-color:rgba(255,255,255,.72)!important;background:transparent!important}
.about-hero-outline:hover{background:#fff!important;color:#07172D!important}
.about-premium-mark{width:210px;height:210px;border-radius:38px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.055);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(2deg)}
.about-premium-mark span{font-size:58px;line-height:1;font-weight:900;color:#fff}
.about-premium-mark small{margin-top:8px;color:#9bc84d;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}

.about-premium-content{padding-top:64px;padding-bottom:72px}
.about-values-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:46px;align-items:start}
.about-values-grid h2{font-size:clamp(30px,4vw,44px);line-height:1.15;margin:14px 0 0}
.about-values-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.about-values-list span{display:flex;align-items:flex-start;min-height:54px;padding:15px 17px;background:#fff;border:1px solid var(--line);border-radius:14px;color:var(--navy);font-weight:750;box-shadow:0 10px 28px rgba(7,23,45,.045)}
.about-values-list span::first-letter{color:var(--green-dark)}

.about-promise-panel{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:44px;margin-top:64px;padding:42px 44px;border-radius:26px;background:#07172D;color:#fff;box-shadow:0 22px 60px rgba(7,23,45,.16)}
.about-promise-panel h2{color:#fff;margin:13px 0 8px;font-size:clamp(30px,4vw,44px)}
.about-promise-lead{color:#9bc84d!important;font-weight:800;font-size:19px!important}
.about-promise-panel p{color:rgba(255,255,255,.82);font-size:17px;line-height:1.75;margin:0 0 14px}
.about-promise-panel p:last-child{margin-bottom:0}

.about-services-section{margin-top:70px}
.about-section-heading{max-width:800px;margin-bottom:30px}
.about-section-heading h2{font-size:clamp(32px,4vw,46px);margin:13px 0 10px}
.about-section-heading p{font-size:18px;line-height:1.7;color:var(--muted)}
.about-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.about-service-card{padding:30px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 14px 40px rgba(7,23,45,.055)}
.about-service-card h3{font-size:23px;margin:0 0 18px;color:var(--navy)}
.about-service-card .checklist{margin-bottom:0}

.about-audience-panel{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:26px;align-items:center;margin-top:58px;padding:32px 36px;border:1px solid var(--line);border-radius:22px;background:#f5f8fb}
.about-audience-panel p{font-size:18px;line-height:1.7;color:var(--navy);font-weight:700;margin:13px 0 0}
.about-response-card{padding:22px 24px;border-radius:16px;background:#fff;border:1px solid var(--line)}
.about-response-card strong{display:block;color:var(--navy);font-size:19px;margin-bottom:7px}
.about-response-card span{display:block;color:var(--muted);line-height:1.55}

@media(max-width:900px){
  .about-premium-hero-inner,.about-values-grid,.about-promise-panel,.about-audience-panel{grid-template-columns:1fr}
  .about-premium-mark{display:none}
}
@media(max-width:620px){
  .about-premium-hero{padding:54px 0 50px}
  .about-premium-actions{display:grid;grid-template-columns:1fr}
  .about-premium-actions .btn{width:100%}
  .about-values-list,.about-service-grid{grid-template-columns:1fr}
  .about-promise-panel{padding:30px 24px}
  .about-service-card{padding:24px}
  .about-audience-panel{padding:26px 22px}
}

/* v2.59 — premium fotohervo's op alle pagina's behalve Home */
.kcp-page-hero{position:relative;isolation:isolate;overflow:hidden;min-height:470px;background:#07172D;color:#fff;display:flex;align-items:center}
.kcp-page-hero:before{content:"";position:absolute;inset:0;z-index:-2;background-image:var(--kcp-hero-image);background-size:cover;background-position:center right}
.kcp-page-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,23,45,.98) 0%,rgba(7,23,45,.94) 31%,rgba(7,23,45,.72) 54%,rgba(7,23,45,.24) 78%,rgba(7,23,45,.10) 100%)}
.kcp-page-hero-inner{width:100%;padding-top:68px;padding-bottom:54px}
.kcp-page-hero-copy{max-width:680px}
.kcp-page-eyebrow{display:inline-flex;align-items:center;gap:9px;color:#9bc84d;font-size:13px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px}
.kcp-page-eyebrow:before{content:"";width:24px;height:3px;border-radius:999px;background:#8fbe3e}
.kcp-page-hero h1{color:#fff;font-size:clamp(40px,5vw,66px);line-height:1.04;letter-spacing:-.045em;margin:0 0 18px;text-wrap:balance}
.kcp-page-hero-copy>p{color:rgba(255,255,255,.88);font-size:clamp(17px,1.7vw,21px);line-height:1.62;max-width:650px;margin:0}
.kcp-page-actions{margin-top:27px}
.kcp-page-outline{color:#fff!important;border-color:rgba(255,255,255,.75)!important;background:rgba(7,23,45,.12)!important}
.kcp-page-outline:hover{background:#fff!important;color:#07172D!important}
.kcp-page-trust{display:flex;flex-wrap:wrap;gap:18px 28px;margin-top:38px;color:rgba(255,255,255,.83);font-size:12px;font-weight:750}
.kcp-page-trust span::first-letter{color:#9bc84d}
@media(max-width:760px){.kcp-page-hero{min-height:500px;align-items:flex-end}.kcp-page-hero:before{background-position:64% center}.kcp-page-hero:after{background:linear-gradient(180deg,rgba(7,23,45,.30) 0%,rgba(7,23,45,.72) 36%,rgba(7,23,45,.98) 72%)}.kcp-page-hero-inner{padding-top:180px;padding-bottom:42px}.kcp-page-actions{display:grid;grid-template-columns:1fr}.kcp-page-actions .btn{width:100%}.kcp-page-trust{gap:10px 18px;margin-top:27px}}


/* v2.60 — hero scherpte, uitsnede en uitlijning; geen overige wijzigingen */
@media(min-width:901px){
  .kcp-page-hero-inner{
    width:min(1180px,92vw)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  .kcp-page-hero:before{
    background-size:auto 100%!important;
    background-position:right center!important;
    background-repeat:no-repeat!important;
  }
}
@media(max-width:900px){
  .kcp-page-hero-inner{
    width:min(92vw,720px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  .kcp-page-hero:before{
    background-size:auto 100%!important;
    background-position:right center!important;
    background-repeat:no-repeat!important;
  }
}

/* v2.61 — uitsluitend Kleine klussen en Over ons */
.small-jobs-premium,.about-story{padding-top:62px;padding-bottom:76px}
.small-jobs-trust,.small-jobs-intro,.about-origin,.about-one-contact,.about-economical,.about-audience{
display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:42px;align-items:start}
.small-trust-grid,.about-benefits-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.small-trust-grid span,.about-benefits-list span{padding:15px 17px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--navy);font-weight:750;box-shadow:0 10px 28px rgba(7,23,45,.045)}
.small-jobs-intro,.about-one-contact,.about-economical{margin-top:62px}
.small-jobs-premium h2,.about-story h2{font-size:clamp(30px,4vw,44px);line-height:1.14;margin:13px 0 14px}
.small-jobs-intro p,.about-story p{font-size:17px;line-height:1.72;color:var(--muted)}
.small-jobs-explainer{padding:28px 30px;border-radius:20px;background:#07172D;color:#fff}
.small-jobs-explainer h3{color:#fff;margin-top:0}.small-jobs-explainer p{color:rgba(255,255,255,.82);margin-bottom:0}
.small-jobs-categories,.small-jobs-process,.small-jobs-faq,.about-self-specialist,.about-name,.about-timeline{margin-top:68px}
.small-jobs-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.small-jobs-card,.about-self-specialist article{padding:28px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 14px 40px rgba(7,23,45,.05)}
.small-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:24px}
.small-process-grid article{padding:28px;border-radius:19px;background:#f5f8fb;border:1px solid var(--line)}
.small-process-grid article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#86B63F;color:#07172D;font-weight:900}
.small-jobs-subscription,.small-jobs-final-cta,.about-manifest{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:center;margin-top:64px;padding:36px 38px;border-radius:24px}
.small-jobs-subscription{background:#f5f8fb;border:1px solid var(--line)}
.small-jobs-final-cta,.about-manifest{background:#07172D;color:#fff}
.small-jobs-final-cta h2,.about-manifest h2{color:#fff}.small-jobs-final-cta p,.about-manifest p{color:rgba(255,255,255,.82)}
.small-jobs-actions,.about-actions{display:grid;gap:11px}.small-jobs-actions .btn,.about-actions .btn{justify-content:center}
.small-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}
.small-faq-grid details{border:1px solid var(--line);border-radius:15px;background:#fff;padding:18px 20px}
.small-faq-grid summary{cursor:pointer;font-weight:800;color:var(--navy)}
.about-origin blockquote{margin:0;padding:34px 36px;border-radius:24px;background:#07172D;color:#fff;font-size:clamp(23px,3vw,34px);line-height:1.45;font-weight:800}
.about-self-specialist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.about-economical{padding:38px;border-radius:24px;background:#f5f8fb;border:1px solid var(--line)}
.about-name{max-width:900px;padding:42px;border-radius:24px;border:1px solid var(--line);background:#fff;box-shadow:0 16px 50px rgba(7,23,45,.06)}
.about-timeline-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:26px}
.about-timeline-grid article{padding:30px;border-radius:20px;background:#fff;border:1px solid var(--line)}
.about-timeline-grid article>span{color:#86B63F;font-weight:900;text-transform:uppercase}
.about-audience-tags{display:flex;flex-wrap:wrap;gap:11px}
.about-audience-tags span{padding:12px 15px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:750}
.about-manifest{grid-template-columns:minmax(0,1fr) 310px;padding:44px}
.about-manifest-lead{font-size:23px!important;font-weight:850;color:#9bc84d!important}
.about-manifest .btn-outline{color:#fff!important;border-color:rgba(255,255,255,.65)!important;background:transparent!important}
@media(max-width:900px){
.small-jobs-trust,.small-jobs-intro,.about-origin,.about-one-contact,.about-economical,.about-audience,
.small-jobs-subscription,.small-jobs-final-cta,.about-manifest{grid-template-columns:1fr}
.small-jobs-card-grid,.small-process-grid,.about-timeline-grid{grid-template-columns:1fr}}
@media(max-width:620px){
.small-trust-grid,.about-benefits-list,.small-faq-grid,.about-self-specialist{grid-template-columns:1fr}
.small-jobs-premium,.about-story{padding-top:42px;padding-bottom:54px}
.small-jobs-subscription,.small-jobs-final-cta,.about-manifest,.about-economical,.about-name{padding:27px 22px}}


/* v2.62 — uitsluitend Diensten en Kleine klussen rustiger en scherper */
.page-template-template-diensten .kcp-page-hero,
.page-template-template-kleine-klussen .kcp-page-hero{
  min-height:570px!important;
}
.page-template-template-diensten .kcp-page-hero h1,
.page-template-template-kleine-klussen .kcp-page-hero h1{
  font-size:58px!important;
  line-height:1.03!important;
  letter-spacing:-1.4px!important;
  max-width:570px!important;
  margin-bottom:18px!important;
}
.page-template-template-diensten .kcp-page-hero-copy>p,
.page-template-template-kleine-klussen .kcp-page-hero-copy>p{
  font-size:19px!important;
  line-height:1.45!important;
  max-width:570px!important;
  font-weight:650!important;
}
.page-template-template-diensten .kcp-page-eyebrow,
.page-template-template-kleine-klussen .kcp-page-eyebrow{
  font-size:12px!important;
  letter-spacing:1.2px!important;
  margin-bottom:13px!important;
}
.page-template-template-diensten .kcp-page-actions,
.page-template-template-kleine-klussen .kcp-page-actions{
  margin-top:24px!important;
}
.page-template-template-diensten .service-premium-content .section-heading-row h2{
  font-size:38px!important;
  line-height:1.15!important;
  letter-spacing:-.7px!important;
}
.page-template-template-diensten .service-premium-content .section-heading-row p{
  font-size:17px!important;
  line-height:1.65!important;
  max-width:720px!important;
}
.page-template-template-diensten .service-card h3{
  font-size:23px!important;
  line-height:1.25!important;
}
.page-template-template-diensten .service-card p{
  font-size:16px!important;
  line-height:1.65!important;
}
.page-template-template-kleine-klussen .small-jobs-premium h2{
  letter-spacing:-.6px!important;
}
@media(max-width:900px){
  .page-template-template-diensten .kcp-page-hero h1,
  .page-template-template-kleine-klussen .kcp-page-hero h1{
    font-size:48px!important;
  }
}
@media(max-width:620px){
  .page-template-template-diensten .kcp-page-hero h1,
  .page-template-template-kleine-klussen .kcp-page-hero h1{
    font-size:42px!important;
  }
}


/* v2.63 — uitsluitend Over ons-doelgroepuitlijning */
.page-template-template-over-ons .about-audience{
  margin-top:72px!important;
  padding-top:8px!important;
  display:grid!important;
  grid-template-columns:minmax(0,520px) minmax(0,1fr)!important;
  gap:56px!important;
  align-items:start!important;
}
.page-template-template-over-ons .about-audience>div:first-child{
  max-width:520px!important;
}
.page-template-template-over-ons .about-audience>div:first-child h2{
  margin-bottom:0!important;
}
.page-template-template-over-ons .about-audience-tags{
  align-content:start!important;
  align-items:flex-start!important;
  padding-top:2px!important;
}
@media(max-width:900px){
  .page-template-template-over-ons .about-audience{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }
}

/* v2.67 — Klusabonnement, officieel WhatsApp-icoon en compacte cookiemelding */
.sticky-contact .wa svg{width:27px;height:27px;display:block;fill:currentColor;stroke:none!important}

.page-template-template-abonnement .kcp-page-hero-copy>p{max-width:620px}
.kcp-subscription-page{padding-top:0}
.kcp-subscription-intro{background:var(--navy);color:#fff;padding:22px 0}
.kcp-subscription-intro .container{display:flex;align-items:center;gap:34px;justify-content:space-between}
.kcp-subscription-price{display:flex;align-items:baseline;gap:8px;white-space:nowrap}.kcp-subscription-price span{font-size:13px;font-weight:800}.kcp-subscription-price strong{font-size:34px;line-height:1;color:var(--green)}
.kcp-subscription-trust{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 22px;font-size:13px;font-weight:750}.kcp-subscription-trust span{white-space:nowrap}
.kcp-subscription-heading{margin-bottom:8px}.kcp-benefit-grid .service-card{height:100%}.kcp-benefit-icon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#eef6e5;color:var(--green-dark);font-size:23px;font-weight:900;margin-bottom:18px}
.kcp-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}.kcp-plan-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:30px;display:flex;flex-direction:column}.kcp-plan-card h3{font-size:28px;margin:0 0 6px}.kcp-plan-audience{color:var(--muted);min-height:78px}.kcp-plan-price{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;margin:8px 0 12px}.kcp-plan-price span,.kcp-plan-price small{font-size:13px;font-weight:750;color:var(--muted)}.kcp-plan-price strong{font-size:38px;line-height:1;color:var(--navy)}.kcp-plan-card .checklist{flex:1}.kcp-plan-card .btn{align-self:stretch}.kcp-plan-featured{border:2px solid var(--green);transform:translateY(-8px)}.kcp-plan-badge{position:absolute;top:-14px;right:22px;background:var(--green);color:#fff;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.4px}.kcp-plan-note{max-width:820px;margin:28px auto 0;text-align:center;color:var(--muted);font-size:13px}
.kcp-jobs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.kcp-job{position:relative;background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 18px 18px 45px;font-weight:800;color:var(--navy)}.kcp-job:before{content:"✓";position:absolute;left:18px;color:var(--green-dark);font-weight:950}
.kcp-subscription-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.kcp-subscription-step{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px}.kcp-subscription-step b{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;margin-bottom:16px}.kcp-subscription-step h3{margin:0 0 7px}.kcp-subscription-step p{margin:0;color:var(--muted)}
.kcp-subscription-faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:56px;align-items:start}.kcp-subscription-faq .section-intro{margin-bottom:0}.kcp-subscription-cta{background:var(--navy);color:#fff;padding:54px 0}.kcp-subscription-cta .container{display:flex;justify-content:space-between;align-items:center;gap:30px}.kcp-subscription-cta h2{color:#fff;max-width:760px;margin:7px 0 8px;font-size:38px;line-height:1.15}.kcp-subscription-cta p{margin:0;color:#dce5f2}
@media(max-width:980px){.kcp-subscription-intro .container{align-items:flex-start;flex-direction:column;gap:16px}.kcp-subscription-trust{justify-content:flex-start}.kcp-plan-grid{grid-template-columns:1fr}.kcp-plan-featured{transform:none}.kcp-jobs-grid,.kcp-subscription-steps{grid-template-columns:1fr 1fr}.kcp-subscription-faq{grid-template-columns:1fr;gap:24px}.kcp-subscription-cta .container{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.kcp-subscription-price{white-space:normal;flex-wrap:wrap}.kcp-subscription-price strong{font-size:30px}.kcp-subscription-trust{display:grid;grid-template-columns:1fr}.kcp-jobs-grid,.kcp-subscription-steps{grid-template-columns:1fr}.kcp-subscription-cta h2{font-size:31px}}


/* v3.1 — marketing, abonnementen, kleine en grotere klussen */
.kcp-home-inspection{background:#fff}.kcp-home-inspection .two-col{align-items:center}.kcp-home-inspection p{font-size:17px}.page-template-template-abonnement .kcp-plan-audience{min-height:118px}.page-template-template-abonnement .kcp-plan-card .checklist li{font-size:14px}.page-template-template-diensten .service-premium-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:980px){.page-template-template-diensten .service-premium-grid{grid-template-columns:1fr 1fr}.page-template-template-abonnement .kcp-plan-audience{min-height:0}}
@media(max-width:620px){.page-template-template-diensten .service-premium-grid{grid-template-columns:1fr}}

/* v4.1 — gecentreerde menuchevron en exact aangeleverde werkgebiedkaart */
.workarea-map-card > .workarea-map-v4-frame,
.workarea-approved > .workarea-map-v4-frame{
  position:relative;
  width:75%;
  max-width:75%;
  margin:30px auto 0;
  padding:0 0 .9%;
  overflow:visible;
  background:#fff;
  line-height:0;
}
.workarea-map-card > .workarea-map-v4-frame{margin-top:0}
.workarea-map-v4-frame > img{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  object-fit:contain!important;
  background:#fff!important;
}
.workarea-map-v4-frame::after{
  content:"";
  position:absolute;
  top:0;
  left:7.67%;
  width:82.46%;
  height:100%;
  border:2px solid #005a00;
  border-radius:50%;
  box-sizing:border-box;
  clip-path:inset(97.5% 0 0 0);
  pointer-events:none;
}
@media(max-width:900px){
  .workarea-map-card > .workarea-map-v4-frame,
  .workarea-approved > .workarea-map-v4-frame{width:82%;max-width:82%}
}

/* v4.1 — keuze-CTA, nette werkwijze en reviewcarrousel */
.kcp-home-choice .two-col{align-items:stretch}
.kcp-home-choice-card{display:flex;flex-direction:column;gap:4px}
.kcp-home-choice-section{display:grid;justify-items:start;gap:10px}
.kcp-home-choice-section h2,.kcp-home-choice-section p{margin:0}
.kcp-home-choice-divider{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.12em;margin:12px 0}
.kcp-home-choice-divider:before,.kcp-home-choice-divider:after{content:"";height:1px;background:var(--line);flex:1}
.kcp-home-choice-divider span{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#fff}
.kcp-home-choice-list{margin:2px 0 4px}
.kcp-home-choice-list li{font-size:14px;margin-bottom:5px}
.kcp-home-choice-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px}
.kcp-process-care{max-width:840px;margin:34px auto 0;padding:24px 28px;border:1px solid rgba(134,182,63,.45);border-radius:16px;background:linear-gradient(135deg,#fff,#f3f8e9);text-align:left;box-shadow:0 12px 28px rgba(7,23,45,.07)}
.kcp-process-care h3{margin:5px 0 8px;color:var(--navy)}
.kcp-process-care p{margin:0;color:var(--muted)}
.kcp-review-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}
.kcp-review-heading .section-title,.kcp-review-heading .section-intro{margin-bottom:0}
.kcp-review-carousel{position:relative}
.kcp-review-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:2px 2px 20px}
.kcp-review-track::-webkit-scrollbar{display:none}
.kcp-review-slide{display:flex;flex:0 0 calc((100% - 40px)/3);padding:0;overflow:hidden;scroll-snap-align:start;box-shadow:var(--shadow);flex-direction:column}
.kcp-review-image{display:block;width:100%;min-height:0;aspect-ratio:16/9;object-fit:cover;object-position:center center}
.kcp-review-slide.has-comparison{flex-direction:column}
.kcp-review-slide.has-comparison .kcp-review-comparison{flex:0 0 auto}
.kcp-review-slide.has-comparison .kcp-review-comparison-image{display:block;width:100%;min-height:0;aspect-ratio:16/10;object-fit:cover}
.kcp-review-body{display:flex;flex-direction:column;justify-content:center;padding:24px;min-width:0}
.kcp-review-body p{margin:10px 0 0}
.kcp-review-body cite span{color:var(--muted);font-weight:750}
.kcp-review-track>.notice{flex:1 0 100%}
.kcp-review-controls{display:flex;justify-content:center;gap:8px}
.kcp-review-controls[hidden]{display:none}
.kcp-review-controls button{min-width:44px;height:40px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--navy);font:inherit;font-weight:800;cursor:pointer}
.kcp-review-controls button:hover,.kcp-review-controls button:focus-visible{border-color:var(--green);outline:2px solid rgba(134,182,63,.25);outline-offset:2px}
@media(max-width:980px){.kcp-review-slide{flex-basis:calc((100% - 20px)/2)}.kcp-review-heading{align-items:flex-start}}
@media(max-width:620px){.kcp-home-choice-actions,.kcp-review-heading{align-items:stretch;flex-direction:column}.kcp-home-choice-actions .btn,.kcp-review-heading .btn{width:100%;text-align:center}.kcp-process-care{padding:21px}.kcp-review-slide{flex-basis:100%;flex-direction:column}.kcp-review-image{width:100%;height:auto;min-height:0}.kcp-review-body{padding:22px}}

/* v4.2 — juridische PDF-documenten */
.kcp-legal-document{display:grid;gap:22px}
.kcp-legal-document-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;border:1px solid var(--line);border-radius:16px;background:var(--soft)}
.kcp-legal-document-intro p{margin:0;color:var(--navy)}
.kcp-legal-pdf{display:block;width:100%;height:min(1050px,78vh);min-height:680px;border:1px solid var(--line);border-radius:16px;background:#f4f6f8}
.privacy-check .kcp-privacy-link{font-weight:800;color:var(--blue);text-decoration:underline;text-underline-offset:2px}
@media(max-width:620px){.kcp-legal-document-intro{align-items:stretch;flex-direction:column}.kcp-legal-document-intro .btn{width:100%;text-align:center}.kcp-legal-pdf{height:72vh;min-height:520px}}
@media(max-width:620px){
  .workarea-map-card > .workarea-map-v4-frame,
  .workarea-approved > .workarea-map-v4-frame{width:92%;max-width:92%}
}

/* v4.3 - toestemming beeldmateriaal */
.kcp-consent-layout{max-width:780px}
.kcp-consent-card{padding:30px}
.kcp-consent-form{gap:20px}
.kcp-consent-uses{display:grid;gap:10px;margin:0;padding:18px 20px 20px;border:1px solid var(--line);border-radius:14px;background:var(--soft)}
.kcp-consent-uses legend{padding:0 8px;color:var(--navy);font-weight:850}
.kcp-consent-uses label{display:flex;align-items:center;gap:11px;padding:11px 13px;border:1px solid #d6dde7;border-radius:10px;background:#fff;cursor:pointer}
.request-form .kcp-consent-uses input[type="checkbox"],.request-form .kcp-consent-confirmation input[type="checkbox"]{width:20px;height:20px;min-width:20px;flex:0 0 20px;margin:0;padding:0;accent-color:var(--green)}
.kcp-consent-note{margin:0;color:var(--muted);font-size:13px;line-height:1.6}
.kcp-consent-note a{font-weight:750;text-decoration:underline;text-underline-offset:2px}
.kcp-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:620px){.kcp-consent-card{padding:20px}}


/* v3.5 — formulieren, verbouwingsbegeleiding, expat service en Samen voor de buurt */
.kcp-feature-band{background:var(--navy);color:#fff}.kcp-feature-band h2,.kcp-feature-band h3{color:#fff}.kcp-feature-band p{color:#dce5f2}.kcp-feature-band .checklist li{color:#fff}
.kcp-contrast-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:center}.kcp-contrast-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:var(--shadow)}
.kcp-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.kcp-choice-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:27px;box-shadow:var(--shadow)}.kcp-choice-card h3{margin-top:0}.kcp-choice-card.highlight{border:2px solid var(--green)}
.kcp-form-help{margin:8px 0 12px;padding:14px 16px;border-radius:10px;background:#f1f6ec;color:var(--navy);font-size:14px;line-height:1.55}.kcp-form-tip{display:block;margin-top:8px;color:var(--muted);font-size:12px;line-height:1.5}
.kcp-expat-hero-note{display:inline-flex;gap:8px;align-items:center;background:#edf4ff;color:var(--navy);border-radius:999px;padding:7px 12px;font-size:12px;font-weight:850}.kcp-service-list{columns:2;column-gap:28px}.kcp-service-list li{break-inside:avoid;margin-bottom:9px}
.page-template-template-expat-service .kcp-page-hero-copy>p,.page-template-template-verbouwingsbegeleiding .kcp-page-hero-copy>p,.page-template-template-samen-voor-de-buurt .kcp-page-hero-copy>p{max-width:660px}
@media(max-width:900px){.kcp-contrast-grid,.kcp-choice-grid{grid-template-columns:1fr}.kcp-service-list{columns:1}}


/* v3.5 — transparante voorrijkosten */
.kcp-travel-fees{margin-top:24px}
.kcp-travel-fee-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}
.kcp-travel-fee{border:1px solid var(--line);border-radius:18px;padding:22px;background:#fff}
.kcp-travel-fee.highlight{background:var(--soft);border-color:rgba(134,182,63,.45)}
.kcp-travel-fee h3{margin-top:0}
.kcp-travel-fee .fee{font-size:28px;font-weight:850;color:var(--navy);display:block;margin:6px 0}
.kcp-travel-note{font-size:13px;color:var(--muted);margin-top:14px}
@media(max-width:700px){.kcp-travel-fee-grid{grid-template-columns:1fr}}


/* v3.6 — persoonlijke kennismaking Klusabonnement */
.kcp-good-conversation{background:#fff}.kcp-good-conversation-inner{max-width:980px;margin:0 auto}.kcp-good-conversation-lead{font-size:19px;line-height:1.7;color:var(--navy);max-width:820px}.kcp-good-conversation-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}.kcp-good-conversation-welcome{margin-top:28px;padding:30px;border-radius:22px;background:var(--navy);color:#fff}.kcp-good-conversation-welcome h3{color:#fff;margin-top:0}.kcp-good-conversation-welcome p{max-width:760px;color:rgba(255,255,255,.86)}.kcp-good-conversation-welcome .btn{margin-top:8px}.kcp-good-conversation-welcome small{display:block;margin-top:14px;color:rgba(255,255,255,.72)}@media(max-width:760px){.kcp-good-conversation-grid{grid-template-columns:1fr}.kcp-good-conversation-welcome{padding:24px}}

/* v4.4 — reviewoverzicht */
.kcp-reviews-page{background:#fff}
.kcp-reviews-heading{max-width:760px;margin-bottom:32px}
.kcp-reviews-heading .section-intro{margin-bottom:0}
.kcp-reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.kcp-review-card{display:flex;min-width:0;height:100%;padding:0;overflow:hidden;flex-direction:column;box-shadow:var(--shadow)}
.kcp-review-card-image{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--soft)}
.kcp-review-comparison{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden;background:var(--soft)}
.kcp-review-comparison.is-single{grid-template-columns:1fr}
.kcp-review-comparison-item{position:relative;min-width:0;margin:0;overflow:hidden}
.kcp-review-comparison .kcp-review-card-image{aspect-ratio:4/3}
.kcp-review-comparison-item figcaption{position:absolute;top:12px;left:12px;padding:5px 10px;border-radius:999px;background:rgba(7,27,59,.9);color:#fff;font-size:13px;font-weight:900;line-height:1;box-shadow:0 4px 14px rgba(7,27,59,.18)}
.kcp-review-card-body{display:flex;flex:1;min-width:0;padding:24px;flex-direction:column}
.kcp-review-card.no-image .kcp-review-card-body{min-height:260px}
.kcp-review-card-body .stars{line-height:1;letter-spacing:1px}
.kcp-review-card-body h3{margin:13px 0 0;font-size:20px;line-height:1.3}.kcp-review-card-body h3 a{text-decoration:none}
.kcp-review-card-body p{margin:14px 0 18px;color:var(--ink);line-height:1.65}
.kcp-review-card-body cite{margin-top:auto}
.kcp-review-card-body cite span{color:var(--muted);font-weight:750}
.kcp-review-detail-link{display:inline-block;margin-top:13px}
.kcp-reviews-empty{grid-column:1/-1}
.kcp-reviews-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:28px 32px;border-radius:14px;background:var(--navy);color:#fff}
.kcp-reviews-cta-after-ten{grid-column:2/-1}
.kcp-reviews-cta-end{grid-column:1/-1}
.kcp-reviews-cta h2{margin:0 0 3px;color:#fff;font-size:27px;line-height:1.2}
.kcp-reviews-cta p{margin:0;color:#dce5f2}
.kcp-reviews-cta .btn{flex:0 0 auto}
@media(max-width:980px){.kcp-reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kcp-reviews-cta-after-ten{grid-column:1/-1}}
@media(max-width:620px){.kcp-reviews-heading{margin-bottom:25px}.kcp-reviews-grid{grid-template-columns:1fr}.kcp-review-comparison{grid-template-columns:1fr}.kcp-review-comparison .kcp-review-card-image,.kcp-review-slide.has-comparison .kcp-review-comparison-image{aspect-ratio:16/9}.kcp-review-card-body{padding:22px}.kcp-review-card.no-image .kcp-review-card-body{min-height:0}.kcp-reviews-cta{align-items:stretch;padding:25px 22px;flex-direction:column}.kcp-reviews-cta h2{font-size:24px}.kcp-reviews-cta .btn{width:100%;text-align:center}}

/* v4.5 — doorbladerbare portfolio- en nieuwsarchieven */
.section-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex-wrap:wrap}
.featured-project-grid .featured-project-entry,.portfolio-grid .post-card,.kcp-archive-grid .post-card{height:100%}
.kcp-archive-page{padding-top:58px}
.kcp-archive-heading{margin-bottom:30px}
.kcp-archive-heading>div,.kcp-archive-heading:not(.section-heading-row){max-width:720px}
.kcp-archive-heading h2{margin:8px 0 10px;font-size:38px;line-height:1.15}
.kcp-archive-heading p{margin:0;color:var(--muted)}
.kcp-archive-grid{align-items:stretch}
.portfolio-filters a{text-decoration:none}
.kcp-pagination{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;margin:38px 0 10px}
.kcp-pagination .page-numbers{display:inline-grid;min-width:42px;height:42px;padding:0 12px;place-items:center;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--navy);font-weight:850;text-decoration:none}
.kcp-pagination .page-numbers:hover,.kcp-pagination .page-numbers:focus-visible,.kcp-pagination .page-numbers.current{border-color:var(--navy);background:var(--navy);color:#fff}
.kcp-pagination .page-numbers.dots{border-color:transparent;background:transparent;color:var(--muted)}
.kcp-archive-empty{margin-bottom:28px}

/* v4.5 — reviewdetail met klus, plaats en voor-/nafoto's */
.single-review-page{padding:58px 0 78px;background:#fff}
.single-review-container{max-width:1040px}
.single-review-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.single-review-summary .stars{font-size:23px;letter-spacing:2px}
.single-review-byline{margin:0;color:var(--navy)}
.single-review-byline span{color:var(--muted)}
.single-review-media{margin:0 0 28px;border-radius:18px;overflow:hidden;box-shadow:var(--shadow);background:var(--soft)}
.single-review-media .kcp-review-comparison-image,.single-review-media>.kcp-review-single-image{display:block;width:100%;height:min(500px,52vw);object-fit:cover}
.single-review-content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.single-review-content-grid>section:only-child,.single-review-content-grid>blockquote:only-child{grid-column:1/-1}
.single-review-job,.single-review-quote{height:100%;margin:0}
.single-review-job h2{margin:10px 0}
.single-review-job-text>:first-child{margin-top:0}.single-review-job-text>:last-child{margin-bottom:0}
.single-review-quote{display:flex;flex-direction:column;justify-content:center}
.single-review-quote p{margin:14px 0 18px;color:var(--navy);font-size:22px;line-height:1.55;font-weight:750}
.single-review-quote cite{color:var(--muted);font-style:normal;font-weight:850}
.single-review-cta,.single-news-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:30px}
.single-review-cta h2,.single-news-cta h2{margin-bottom:5px}.single-review-cta p,.single-news-cta p{margin:0;color:var(--muted)}
.single-review-back,.single-news-back{margin:28px 0 0}

/* v4.5 — leesbare artikelpagina's */
.single-news-page{padding:58px 0 78px}
.single-news-container{max-width:940px}
.single-news-meta{margin:0 0 22px;color:var(--muted);font-size:13px;font-weight:750}
.single-news-image{margin:0 0 34px;border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}
.single-news-image img{display:block;width:100%;max-height:560px;object-fit:cover}
.single-news-content{max-width:780px;color:var(--ink);font-size:17px}
.single-news-content h2{margin:38px 0 12px;color:var(--navy);font-size:30px;line-height:1.2}
.single-news-content h3{margin:30px 0 10px;color:var(--navy)}
.single-news-content li{margin:7px 0}

@media(max-width:760px){
  .section-heading-actions{justify-content:flex-start}
  .section-heading-actions .section-brand-icon{display:none}
  .kcp-archive-heading h2{font-size:32px}
  .single-review-content-grid{grid-template-columns:1fr}
  .single-review-content-grid>section:only-child,.single-review-content-grid>blockquote:only-child{grid-column:auto}
  .single-review-cta,.single-news-cta{align-items:flex-start;flex-direction:column}
  .single-review-media .kcp-review-comparison-image,.single-review-media>.kcp-review-single-image{height:auto;max-height:500px}
}
@media(max-width:620px){
  .kcp-archive-page,.single-review-page,.single-news-page{padding:44px 0 60px}
  .kcp-archive-heading h2{font-size:29px}
  .kcp-pagination .page-numbers{min-width:39px;height:39px;padding:0 10px}
  .single-review-summary{align-items:flex-start;flex-direction:column;gap:8px}
  .single-review-quote p{font-size:19px}
  .single-review-job,.single-review-quote{padding:23px}
  .single-review-cta .btn,.single-news-cta .btn{width:100%;text-align:center}
  .single-news-content{font-size:16px}
  .single-news-content h2{font-size:25px}
}

/* v4.51 — kluslijstboodschap en Werken bij Klusconcierge */
.kcp-home-hero-message{background:var(--navy);color:#fff;border-top:1px solid rgba(255,255,255,.12)}
.kcp-home-hero-message .container{display:flex;align-items:center;justify-content:center;min-height:82px;padding:17px 0;text-align:center}
.kcp-home-hero-message p{max-width:980px;margin:0;font-size:20px;line-height:1.45}
.kcp-home-hero-message strong{color:#a4cf5d}
.kcp-careers-page{background:linear-gradient(180deg,#fff 0,#f8fafc 100%)}
.kcp-careers-intro{max-width:780px;margin-bottom:30px;scroll-margin-top:120px}
.kcp-careers-intro .section-intro{margin-bottom:0}
.kcp-careers-routes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.kcp-career-route{display:flex;min-width:0;flex-direction:column}
.kcp-career-route h2{margin:12px 0 8px;font-size:29px;line-height:1.2}
.kcp-career-route>p{color:var(--muted)}
.kcp-career-route .checklist{flex:1}
.kcp-career-route .btn{align-self:flex-start;margin-top:8px}
.kcp-careers-values{display:grid;grid-template-columns:.85fr 1.15fr;gap:42px;align-items:center;margin-top:28px;background:var(--navy);color:#fff}
.kcp-careers-values h2{margin:8px 0 0;color:#fff;font-size:30px}
.kcp-careers-values .eyebrow{color:#a4cf5d}
.kcp-careers-values .checklist{margin:0;columns:2;column-gap:28px}
.kcp-careers-values .checklist li{break-inside:avoid;color:#fff}
.kcp-careers-values .checklist li:before{color:#a4cf5d}
.kcp-careers-form-section{display:grid;grid-template-columns:.72fr 1.28fr;gap:38px;align-items:start;margin-top:56px;scroll-margin-top:120px}
.kcp-careers-form-copy{position:sticky;top:130px}
.kcp-careers-form-copy p{color:var(--muted)}
.kcp-careers-form-card{min-width:0}
.kcp-join-route-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;border:0}
.kcp-join-route-options legend{grid-column:1/-1;margin-bottom:9px;color:var(--navy);font-weight:850}
.request-form .kcp-join-route-options label{display:flex;align-items:flex-start;gap:11px;padding:15px;border:1px solid #d6dde7;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.request-form .kcp-join-route-options label:hover{border-color:rgba(134,182,63,.75)}
.request-form .kcp-join-route-options label:has(input:checked){border-color:var(--green);background:#f6faef;box-shadow:0 0 0 2px rgba(134,182,63,.14)}
.request-form .kcp-join-route-options input{width:20px;height:20px;min-width:20px;margin:2px 0 0;padding:0;accent-color:var(--green)}
.kcp-join-route-options span{display:grid;gap:2px;min-width:0}
.kcp-join-route-options strong{color:var(--navy)}
.kcp-join-route-options small{color:var(--muted);font-weight:550;line-height:1.45}
@media(max-width:900px){
  .kcp-careers-form-section{grid-template-columns:1fr}
  .kcp-careers-form-copy{position:static}
  .kcp-careers-values{grid-template-columns:1fr;gap:20px}
}
@media(max-width:700px){
  .kcp-home-hero-message .container{min-height:0;padding:17px 4vw}
  .kcp-home-hero-message p{font-size:17px}
  .kcp-careers-routes,.kcp-join-route-options{grid-template-columns:1fr}
  .kcp-careers-values .checklist{columns:1}
  .kcp-career-route .btn{width:100%;text-align:center}
}

/* v4.61 — rustiger headerlogo, exact in verhouding op ieder scherm */
.site-header .header-inner{height:90px}
.site-header .brand{
  flex:0 0 auto;
  align-self:stretch;
  display:flex;
  align-items:center;
  width:160px;
  overflow:visible;
}
.site-header .brand-logo-img{
  display:block!important;
  width:160px!important;
  max-width:160px!important;
  height:auto!important;
  max-height:82px!important;
  object-fit:contain!important;
  object-position:left center!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
  filter:none!important;
  padding:0!important;
}
@media(max-width:1100px) and (min-width:981px){
  .site-header .brand{width:150px}
  .site-header .brand-logo-img{width:150px!important;max-width:150px!important;max-height:78px!important}
}
@media(max-width:980px){
  .site-header .header-inner{height:88px}
  .site-header .brand{width:150px}
  .site-header .brand-logo-img{width:150px!important;max-width:150px!important;max-height:78px!important}
}
@media(max-width:620px){
  .site-header .header-inner{height:82px}
  .site-header .brand{width:138px}
  .site-header .brand-logo-img{width:138px!important;max-width:138px!important;max-height:72px!important}
}

/* v4.62 — uitgebreider overzicht van werkzaamheden op Over ons */
.page-template-template-over-ons .about-self-specialist{
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);
  align-items:stretch;
}
.page-template-template-over-ons .about-self-specialist>article:first-child .checklist{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:30px;
  row-gap:2px;
}
.page-template-template-over-ons .about-self-specialist>article:first-child .checklist li{
  min-width:0;
  margin:7px 0;
}
@media(max-width:900px){
  .page-template-template-over-ons .about-self-specialist{grid-template-columns:1fr}
}
@media(max-width:680px){
  .page-template-template-over-ons .about-self-specialist>article:first-child .checklist{grid-template-columns:1fr}
}

/* v4.8 — duidelijker aanbod, contact en conversieblokken */
.desktop-menu{gap:14px}
.desktop-menu a,.desktop-services-menu>summary{font-size:13px}
.header-cta{max-width:210px;padding:11px 14px;font-size:11px;line-height:1.25;text-align:center}

.small-jobs-categories-first{margin-top:0}
.news-overview-action{display:flex;justify-content:center;margin-top:30px}

.footer-slogan{display:grid;gap:2px;margin-top:18px!important;font-size:18px;line-height:1.35}
.footer-slogan span{color:#fff}
.footer-slogan strong{color:var(--green);font-weight:850}
.footer-contact-block{margin-top:25px!important}
.footer-contact-block .footer-contact-label{display:inline-block;margin-bottom:4px;color:#fff}

.about-specialist-cta{margin-top:24px;padding:22px;border-radius:16px;background:#f1f7e8;border:1px solid rgba(134,182,63,.32)}
.about-specialist-cta h3{margin:0 0 9px;font-size:21px}
.about-specialist-cta p{font-size:14px;line-height:1.6}
.about-specialist-cta .btn{margin-top:5px}

.kcp-maintenance-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);gap:34px;align-items:start}
.kcp-preventive-maintenance .badge{margin-bottom:12px}
.kcp-preventive-maintenance h2{margin:0 0 12px;font-size:38px;line-height:1.15}
.kcp-maintenance-plan-note{margin-top:18px;color:var(--navy)}
.kcp-maintenance-grid aside{position:sticky;top:120px}
.kcp-maintenance-grid aside .btn{margin-top:10px}
.kcp-subscription-trust{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 20px;width:100%;text-align:center}
.kcp-subscription-trust span{white-space:normal}

.kcp-contact-page{padding-bottom:0;background:linear-gradient(180deg,#fff 0,#f8fafc 100%)}
.kcp-contact-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:34px;align-items:start}
.kcp-contact-options>h2,.kcp-contact-form-card>h2{margin:10px 0 10px;font-size:36px;line-height:1.15}
.kcp-contact-options>p{color:var(--muted);font-size:17px}
.kcp-contact-choice-grid{display:grid;gap:12px;margin:24px 0}
.kcp-contact-choice{display:grid;gap:2px;padding:17px 19px;border:1px solid var(--line);border-radius:14px;background:#fff;text-decoration:none;box-shadow:0 10px 28px rgba(7,27,59,.05);transition:.18s ease}
.kcp-contact-choice:hover{border-color:var(--green);transform:translateY(-1px)}
.kcp-contact-choice span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.4px}
.kcp-contact-choice strong{color:var(--navy);font-size:17px;overflow-wrap:anywhere}
.kcp-contact-trust-card{display:grid;gap:9px;margin-top:24px;padding:20px;border-radius:16px;background:#eef6e5;color:var(--navy);font-weight:750}
.kcp-contact-trust-card span::first-letter{color:var(--green-dark)}
.kcp-contact-form-card{scroll-margin-top:120px;padding:34px}
.kcp-contact-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:36px 0}
.kcp-contact-steps article{display:flex;align-items:center;gap:14px;padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff}
.kcp-contact-steps b{display:grid;flex:0 0 36px;width:36px;height:36px;place-items:center;border-radius:50%;background:var(--green);color:#fff}
.kcp-contact-steps p{display:flex;flex-direction:column;gap:4px;margin:0;color:var(--navy);font-weight:400;line-height:1.45}
.kcp-contact-steps p strong{font-weight:800}
.kcp-contact-steps p span{color:var(--muted);font-size:14px}
.kcp-contact-good-to-know{display:grid;grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr);gap:30px;align-items:center;margin:0 0 58px;padding:26px 30px;border:1px solid var(--line);border-radius:18px;background:#fff}
.kcp-contact-good-to-know h2{margin:8px 0 0;font-size:25px}
.kcp-contact-good-to-know p{margin:0 0 7px;color:var(--muted)}

@media(max-width:1240px){
  .desktop-menu,.header-cta{display:none!important}
  .mobile-nav{display:block}
  .header-inner{position:relative}
}
@media(max-width:900px){
  .kcp-maintenance-grid,.kcp-contact-layout{grid-template-columns:1fr}
  .kcp-maintenance-grid aside{position:static}
  .kcp-subscription-trust{grid-template-columns:repeat(2,minmax(0,1fr));text-align:left}
  .kcp-contact-steps{grid-template-columns:1fr}
  .kcp-contact-good-to-know{grid-template-columns:1fr;gap:12px}
}
@media(max-width:620px){
  .kcp-subscription-trust{grid-template-columns:1fr}
  .kcp-preventive-maintenance h2,.kcp-contact-options>h2,.kcp-contact-form-card>h2{font-size:30px}
  .kcp-contact-form-card{padding:23px 20px}
  .kcp-contact-good-to-know{padding:23px 20px}
  .news-overview-action .btn{width:100%;text-align:center}
}

/* v4.9.7 — rustiger dienstenoverzicht met één lijnstijl */
.quick-services{padding:42px 0;background:#f8fafc}
.quick-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.quick-card,.quick-card:last-child{display:flex;min-height:255px;flex-direction:column;align-items:center;padding:28px 24px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(7,27,59,.055)}
.quick-card .icon{width:70px;height:70px;margin:0 auto 17px;border:1px solid #dbe9cd;border-radius:50%;background:#eef6e5}
.quick-card .icon img{width:38px;height:38px}
.quick-card h3{margin:0 0 10px;color:var(--navy);font-size:21px;line-height:1.25}
.quick-card p{max-width:330px;margin:0 0 18px;color:var(--muted);font-size:15px;line-height:1.55}
.quick-card .more{margin-top:auto;font-size:14px}
@media(max-width:980px){.quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quick-card,.quick-card:last-child{padding:24px 17px}}
@media(max-width:760px){.quick-grid{grid-template-columns:1fr}.quick-card,.quick-card:last-child{min-height:0;padding:26px 22px}}

/* v4.99 — consistente uitlijning, prijsvergelijking en nieuwe samenwerkingsroute */
.hero-actions{display:grid!important;grid-template-columns:1fr!important;width:min(475px,100%)!important}
.hero-actions .btn{width:100%!important;min-width:0!important;white-space:normal!important;text-align:center!important}
.kcp-home-hero-message .kcp-slogan-white,.kcp-home-hero-message .kcp-slogan-green{display:block;font-weight:850}
.kcp-home-hero-message .kcp-slogan-white{color:#fff}
.kcp-home-hero-message .kcp-slogan-green{color:#a4cf5d}
.small-jobs-trust{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);align-items:start;margin-top:48px}
.small-jobs-trust>div:first-child{align-self:start;padding-top:0}
.small-jobs-price-link{grid-column:1/-1;margin:4px 0 0}
.kcp-careers-routes{grid-template-columns:repeat(3,minmax(0,1fr))}
.kcp-career-route .btn{width:100%;white-space:normal;text-align:center}
.kcp-careers-values .checklist{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,auto);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 28px;columns:auto}
.kcp-form-note{margin:0;color:var(--muted);font-size:13px;line-height:1.55}
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.kcp-partner-process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:26px 0}
.kcp-partner-process .card{padding:24px;box-shadow:0 10px 28px rgba(7,27,59,.05)}
.kcp-partner-process b{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--green);color:#fff}
.kcp-page-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.kcp-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.kcp-price-card{display:flex;min-width:0;flex-direction:column}
.kcp-price-card-featured{border:2px solid var(--green);transform:translateY(-8px)}
.kcp-price-total{margin:8px 0 0;color:var(--navy);font-size:38px;font-weight:950;line-height:1.1}
.kcp-price-card dl{margin:auto 0 0;padding-top:18px}
.kcp-price-card dl div{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-top:1px solid var(--line)}
.kcp-price-card dt{color:var(--muted)}.kcp-price-card dd{margin:0;text-align:right;color:var(--navy)}
.kcp-price-caveat{margin-top:24px;padding:22px 24px;border:1px solid var(--line);border-radius:16px;background:#fff}
.kcp-price-example{min-height:52px;color:var(--navy);font-weight:750}
.kcp-price-compact{display:flex;align-items:center;justify-content:space-between;gap:30px}.kcp-price-compact h2{margin:5px 0 8px}.kcp-price-compact p{margin:0;color:var(--muted)}
.kcp-quiet-link{color:inherit;text-decoration-color:rgba(95,152,38,.5);text-underline-offset:4px}
.kcp-quiet-link:hover{color:var(--green-dark)}
@media(max-width:1000px){.kcp-careers-routes,.kcp-partner-process{grid-template-columns:1fr 1fr}.kcp-price-grid{grid-template-columns:1fr}.kcp-price-card-featured{order:-1;transform:none}}

/* v5.14: explicitly opted-in, single-destination cards; native link behavior. */
.kcp-linked-card{position:relative;isolation:isolate;transition:border-color .2s,box-shadow .2s}
.kcp-linked-card .kcp-card-link{position:static}
.kcp-linked-card .kcp-card-link::after{content:"";position:absolute;inset:0;z-index:1;cursor:pointer;border-radius:14px}
.kcp-linked-card:hover,.kcp-linked-card:focus-within{border-color:var(--green-dark);box-shadow:0 0 0 2px var(--green-dark)}
.kcp-linked-card .kcp-card-link:focus-visible{outline:0}
.kcp-review-navigation{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;margin:0 0 28px;padding:14px 18px;border:1px solid var(--line);border-radius:14px;background:#fff;font-size:15px;font-weight:750}
.kcp-review-navigation a,.kcp-review-navigation span{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border-radius:8px;line-height:1.4;text-align:center}
.kcp-review-navigation a{color:var(--navy);text-decoration:none}
.kcp-review-navigation a:hover{background:#eef6e5;color:var(--green-dark)}
.kcp-review-navigation a:focus-visible{outline:3px solid var(--green-dark);outline-offset:3px}
.kcp-review-navigation .kcp-review-previous{justify-self:start}
.kcp-review-navigation .kcp-review-next{justify-self:end}
.kcp-review-navigation [aria-disabled]{color:var(--muted);font-weight:400}
.kcp-portfolio-reviews{margin-top:28px}
@media(max-width:620px){.kcp-review-navigation{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px;gap:6px;font-size:14px}.kcp-review-navigation .kcp-review-all{grid-column:1/-1;grid-row:2}.kcp-review-navigation .kcp-review-next{grid-column:2;grid-row:1}.kcp-review-navigation .kcp-review-previous,.kcp-review-navigation .kcp-review-next{justify-self:stretch}.kcp-portfolio-reviews .btn{width:100%;white-space:normal;text-align:center}}
@media(prefers-reduced-motion:reduce){.kcp-linked-card{transition:none}.kcp-linked-card:hover{transform:none}}

/* v5.13: human-readable HTML sitemap. */
.kcp-sitemap-page{padding:72px 0;background:var(--soft)}
.kcp-sitemap-heading{max-width:880px;margin-bottom:36px}
.kcp-sitemap-heading h1{margin:8px 0 12px;color:var(--navy);font-size:48px;line-height:1.08}
.kcp-sitemap-heading p{max-width:820px;margin:0;color:var(--muted);font-size:18px}
.kcp-sitemap-tree{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.kcp-sitemap-branch{min-width:0;padding:28px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 18px 44px rgba(7,27,59,.06)}
.kcp-sitemap-branch.is-wide{grid-column:1/-1}
.kcp-sitemap-branch h2{margin:0 0 18px;color:var(--navy);font-size:25px}
.kcp-sitemap-list{position:relative;margin:0;padding:0 0 0 22px;list-style:none;border-left:1px solid rgba(7,27,59,.18)}
.kcp-sitemap-list .kcp-sitemap-list{margin:9px 0 4px 5px}
.kcp-sitemap-list li{position:relative;margin:0;padding:6px 0 6px 14px}
.kcp-sitemap-list li::before{content:"";position:absolute;top:18px;left:-22px;width:21px;border-top:1px solid rgba(7,27,59,.18)}
.kcp-sitemap-list a{color:var(--navy);font-weight:700;text-decoration:none}
.kcp-sitemap-list a:hover,.kcp-sitemap-list a:focus{color:var(--green-dark);text-decoration:underline;text-underline-offset:3px}
.kcp-sitemap-group-label{color:var(--green-dark);font-weight:800}
@media(max-width:800px){.kcp-sitemap-page{padding:52px 0}.kcp-sitemap-heading h1{font-size:38px}.kcp-sitemap-tree{grid-template-columns:1fr}.kcp-sitemap-branch.is-wide{grid-column:auto}.kcp-sitemap-branch{padding:22px;border-radius:18px}}

/* v5.0 — nieuwe diensten, digitaal overzicht en schone hero's */
.small-jobs-scope{max-width:980px;margin:0 auto 34px;padding:22px 26px;border:1px solid #dfe7ee;border-left:4px solid var(--green);border-radius:16px;background:#f7faf2;color:var(--navy);font-size:1.08rem;line-height:1.65}
.about-benefits-list .about-digital-overview{grid-column:1/-1;display:flex;flex-direction:column;gap:5px;background:#eff6e8;border-color:#d7e7c6}
.about-benefits-list .about-digital-overview strong{font-size:16px}
.about-benefits-list .about-digital-overview small{color:var(--muted);font-size:13px;line-height:1.55;font-weight:600}
.kcp-v50-example-grid,.kcp-v50-season-grid{margin-top:28px}
.kcp-v50-example-grid .card,.kcp-v50-season-grid .card{height:100%}
.kcp-v50-season-grid .checklist{margin-bottom:0}
.kcp-page-hero-no-image:before{background-image:none;background:linear-gradient(135deg,#071b3b 0%,#0d2f63 100%)}
.page-template-template-tarieven .kcp-page-hero:before{background-position:center right}
.page-template-template-partnerdienst .kcp-page-hero:before{background-position:center right}
.page-template-template-middelgrote-klussen .kcp-page-hero:before{background-position:center}
.page-template-template-seizoensonderhoud .kcp-page-hero:before{background-position:center}
@media(max-width:620px){.about-benefits-list .about-digital-overview{grid-column:auto}.kcp-price-example{min-height:0}}
@media(max-width:760px){.small-jobs-trust,.kcp-careers-routes,.kcp-partner-process{grid-template-columns:1fr}.kcp-careers-values .checklist{grid-auto-flow:row;grid-template-columns:1fr;grid-template-rows:none}.kcp-price-compact{align-items:flex-start;flex-direction:column}.kcp-price-compact .btn,.kcp-page-actions .btn{width:100%}.kcp-home-hero-message .container{padding-top:20px;padding-bottom:20px}.kcp-home-hero-message .kcp-slogan-green{margin-top:5px}}

/* v5.16 — responsive hero delivery; existing composition and content retained. */
.hero{
  background:#07182f!important;
  isolation:isolate;
}
.hero>.hero-layout{
  position:relative!important;
  z-index:2!important;
}
.hero>.hero-media{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  width:100%!important;
  height:100%!important;
  border-radius:0!important;
  overflow:hidden!important;
  pointer-events:none;
}
.hero>.hero-media:before{
  display:block!important;
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(90deg,rgba(0,0,0,.20) 0%,rgba(0,0,0,.14) 24%,rgba(0,0,0,.06) 42%,rgba(0,0,0,0) 62%)!important;
}
.hero>.hero-media picture,
.hero>.hero-media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
}
.hero>.hero-media img{
  object-fit:cover!important;
  object-position:center center!important;
}

.kcp-page-hero:before{background-image:none!important;background:none!important}
.kcp-page-hero:after{z-index:1!important}
.kcp-page-hero-inner{position:relative;z-index:2}
.kcp-page-hero-media{position:absolute;inset:0;z-index:0;overflow:hidden;background:#07172d;pointer-events:none}
.kcp-page-hero-media picture{display:block;position:relative;width:100%;height:100%}
.kcp-page-hero-media img{display:block;position:absolute;top:0;right:0;width:auto;max-width:none;height:100%}
.kcp-page-hero-no-image:before{z-index:0;background:linear-gradient(135deg,#071b3b 0%,#0d2f63 100%)!important}

.kcp-legal-pdf-placeholder{display:grid;width:100%;height:min(1050px,78vh);min-height:680px;place-items:center;padding:24px;border:1px solid var(--line);border-radius:16px;background:#f4f6f8}
.kcp-legal-pdf-placeholder .btn{background:#fff;color:var(--navy);border-color:var(--navy)}
.kcp-legal-pdf-placeholder.is-loaded{padding:0;overflow:hidden;border:0}
.kcp-legal-pdf-placeholder.is-loaded .kcp-legal-pdf{display:block;width:100%;height:100%;min-height:0;border:0}

@media(max-width:980px){
  .hero{background:linear-gradient(180deg,rgba(0,0,0,.10) 0%,rgba(0,0,0,.03) 35%,rgba(0,0,0,0) 60%),linear-gradient(180deg,#07182f 0%,#092348 100%)!important}
  .hero>.hero-media{
    position:relative!important;
    inset:auto!important;
    z-index:1!important;
    height:auto!important;
    border-radius:24px 24px 14px 14px!important;
  }
  .hero>.hero-media:before{display:none!important}
  .hero>.hero-media picture,.hero>.hero-media img{height:auto!important}
  .hero>.hero-media img{object-fit:contain!important;object-position:center center!important}
}
@media(max-width:620px){
  .hero>.hero-media{aspect-ratio:1200/760}
  .hero>.hero-media picture,.hero>.hero-media img{height:100%!important}
  .hero>.hero-media img{object-fit:cover!important}
  .kcp-legal-pdf-placeholder{height:72vh;min-height:520px}
  .kcp-legal-pdf-placeholder .btn{width:100%;white-space:normal;text-align:center}
}
