:root{
  --bg:#f7f3ec;
  --bg-soft:#fffdf8;
  --paper:#fffaf3;
  --ink:#18202b;
  --muted:#5c626b;
  --gold:#b88746;
  --gold-dark:#9b6e34;
  --line:#e7ded1;
  --shadow:0 24px 70px rgba(24,32,43,.12);
  --shadow-soft:0 12px 36px rgba(24,32,43,.08);
  --max:1240px;
  --font-body:"Segoe UI",Inter,Arial,sans-serif;
  --font-heading:"Aptos Display","Segoe UI Variable Display","Segoe UI",Inter,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.container{width:min(calc(100% - 64px),var(--max));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,248,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(231,222,209,.86)}
.header-inner{height:104px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:inline-flex;align-items:center;min-width:190px}.brand img{width:182px;height:auto}
.main-nav{display:flex;align-items:center;gap:34px;font-size:13px;font-weight:850;letter-spacing:.075em;text-transform:uppercase;color:var(--ink)}
.main-nav a{position:relative;padding:18px 0}.main-nav a.active,.main-nav a:hover{color:var(--gold)}.main-nav a.active:after,.main-nav a:hover:after{content:"";position:absolute;left:0;right:0;bottom:9px;height:2px;background:var(--gold)}
.header-actions{display:flex;align-items:center;gap:16px}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);padding:11px 14px;font-weight:850;color:var(--ink);letter-spacing:.05em;text-transform:uppercase}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:54px;padding:15px 26px;border:1px solid var(--gold);font-size:13px;line-height:1;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transition:transform .3s cubic-bezier(0.22, 1, 0.36, 1),box-shadow .3s cubic-bezier(0.22, 1, 0.36, 1),background .25s ease;white-space:nowrap;cursor:pointer}.btn svg{width:21px;height:21px;stroke-width:1.8}.btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft)}
.btn-primary{background:var(--gold);color:white}.btn-outline{background:transparent;border-color:#d8c8b4;color:var(--ink)}.btn-light{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}
.eyebrow{display:inline-flex;gap:14px;align-items:center;margin-bottom:20px;color:var(--gold);font-size:14px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.eyebrow:after{content:"";display:block;width:46px;height:2px;background:var(--gold);opacity:.85}
h1,h2,h3{font-family:var(--font-heading);color:var(--ink);line-height:1.08;margin:0 0 24px;letter-spacing:0;font-weight:760}h1{font-size:clamp(42px,5vw,64px)}h2{font-size:clamp(32px,3.7vw,48px)}h3{font-size:26px;letter-spacing:0;font-weight:750}p{margin:0 0 24px;color:var(--muted);font-size:17px}.lead{font-size:19px;color:#444b55;max-width:720px}
.icon{display:inline-grid;place-items:center;color:var(--gold);flex:none}.icon svg,.card-icon svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.card-icon svg{width:28px;height:28px}
.hero{overflow:hidden;background:linear-gradient(110deg,var(--bg-soft) 0 49%,transparent 49.1%);position:relative}.hero:before{content:"";position:absolute;left:-170px;top:90px;width:510px;height:510px;border:1px solid rgba(184,135,70,.10);border-radius:50%}.hero-grid{position:relative;display:grid;grid-template-columns:1fr 1.08fr;gap:68px;align-items:center;min-height:calc(100svh - 104px);padding:48px 0 76px}.hero-copy{max-width:650px}.hero-copy h1{max-width:720px}.hero-usps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:38px 0 34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.hero-usps>div{padding:24px 18px;text-align:center;border-right:1px solid var(--line)}.hero-usps>div:last-child{border-right:0}.hero-usps strong{display:block;margin-top:12px;font-size:12px;line-height:1.35;text-transform:uppercase;letter-spacing:.06em}.hero-usps .icon svg{width:48px;height:48px}.actions{display:flex;gap:18px;flex-wrap:wrap}.hero-image{position:relative;height:640px;overflow:hidden;box-shadow:var(--shadow);background:#ddd;clip-path:polygon(8% 0,100% 0,100% 100%,0 100%)}.hero-image img,.hero-image video{width:100%;height:100%;object-fit:cover;filter:saturate(.95) contrast(1.02)}.hero-image video{display:block}
.about-photo,.zorg-image{position:relative}
.background-video-badge{position:absolute;top:18px;left:18px;padding:9px 14px;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;background:rgba(24,32,43,.88);color:#fff;border-radius:999px;box-shadow:0 12px 32px rgba(0,0,0,.18);pointer-events:none;z-index:2}
.section{padding:98px 0}.section-alt{background:rgba(255,253,248,.76);border-block:1px solid var(--line)}.section-head{margin-bottom:42px}.section-head.center{text-align:center}.section-head.center h2,.section-head.center p{margin-inline:auto}.center{text-align:center;margin-top:36px}.card-grid{display:grid;gap:22px}.card-grid.four{grid-template-columns:repeat(4,1fr)}.card-grid.three{grid-template-columns:repeat(3,1fr)}.card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-soft);overflow:hidden;transition:.2s ease}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card>img{width:100%;height:220px;object-fit:cover}.card-content{padding:28px}.service-card .card-content{position:relative;padding-top:44px}.card-icon{position:absolute;top:-28px;left:28px;width:58px;height:58px;border-radius:50%;background:var(--paper);border:1px solid var(--line);display:grid;place-items:center;color:var(--gold);box-shadow:var(--shadow-soft)}.card h3{
  font-size:23px;
  line-height:1.14;
  font-weight:760;
  margin-bottom:14px;
  overflow-wrap:break-word;
  word-break:normal;
}
.card p{font-size:15.5px;margin-bottom:20px}.card a{color:var(--gold);font-size:13px;font-weight:850;letter-spacing:.06em}.card a:after{content:" →"}.kicker{display:block;margin-bottom:8px;color:var(--gold);font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.usp-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:28px;background:var(--bg-soft);border:1px solid var(--line);box-shadow:var(--shadow-soft)}.usp-item{display:flex;align-items:center;gap:18px;padding:22px 24px;border-right:1px solid var(--line)}.usp-item:last-child{border-right:0}.usp-item .icon svg{width:48px;height:48px}.usp-item strong{display:block;font-size:13px;line-height:1.35;text-transform:uppercase;letter-spacing:.06em}.usp-item span{display:block;color:var(--muted);font-size:13px;margin-top:4px}.split-card{display:grid;grid-template-columns:.95fr 1.05fr;gap:54px;align-items:center;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-soft);padding:56px}.split-card img{height:500px;width:100%;object-fit:cover}.cta-section{padding:78px 0;background:var(--ink);color:#fff}.cta-section h2{color:#fff}.cta-section p{color:rgba(255,255,255,.72)}.cta-grid{display:grid;grid-template-columns:1fr auto;gap:42px;align-items:center}
.page-hero{padding:88px 0 68px;background:linear-gradient(135deg,var(--bg-soft),var(--bg));border-bottom:1px solid var(--line);position:relative;overflow:hidden}.page-hero:before{content:"";position:absolute;right:-160px;top:-220px;width:500px;height:500px;border-radius:50%;border:1px solid rgba(184,135,70,.12)}.page-hero .container{position:relative}.page-hero h1{max-width:930px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.process-grid article,.simple-card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-soft);padding:34px}.process-grid span{display:block;color:rgba(184,135,70,.35);font-family:var(--font-heading);font-size:46px;font-weight:760;line-height:1;margin-bottom:18px}.process-grid h3,.simple-card h3{font-size:25px;font-weight:740}.simple-card .icon{margin-bottom:16px}
.about-hero{display:grid;grid-template-columns:1.05fr .95fr;min-height:calc(100svh - 104px);background:var(--bg-soft);border-bottom:1px solid var(--line)}.about-photo{min-height:680px;overflow:hidden}.about-photo img,.about-photo video{width:100%;height:100%;object-fit:cover}.about-copy{padding:90px min(8vw,110px);align-self:center}.about-copy h1{font-size:clamp(40px,4.4vw,60px)}.mini-card{display:flex;align-items:center;gap:20px;max-width:560px;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-soft);padding:24px;margin-top:26px}.mini-card strong{display:block;font-weight:820}.mini-card span{display:block;color:var(--muted);font-size:15px}.more-projects{margin-top:22px}
.zorg-hero{padding:68px 0 78px;background:var(--bg-soft)}
.zorg-grid{
  display:grid;
  grid-template-columns:minmax(360px,.95fr) minmax(360px,1fr) minmax(300px,.78fr);
  gap:34px;
  align-items:center;
}
.zorg-copy{padding-right:0;min-width:0}
.zorg-copy h1{
  font-size:clamp(38px,4vw,56px);
  line-height:1.08;
  max-width:520px;
}
.zorg-copy p{max-width:500px}
.zorg-image{height:620px;overflow:hidden;box-shadow:var(--shadow);perspective:900px}
.zorg-image img,.zorg-image video{height:100%;width:100%;object-fit:cover}
.zorg-anim-wrap{height:100%;overflow:hidden;display:grid;position:relative}
.zorg-anim-wrap::after{content:none}
.zorg-anim-wrap > *{grid-area:1/1/2/2}
.feature-panel{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);padding:26px;min-width:0}.feature-row{display:flex;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}.feature-row:first-child{padding-top:0}.feature-row:last-child{border-bottom:0;padding-bottom:0}.feature-row .icon{width:58px;height:58px;border-radius:50%;background:#f4ede4}.feature-row .icon svg{width:34px;height:34px}.feature-row strong{display:block;margin-bottom:4px;font-weight:900}.feature-row span{color:var(--muted);font-size:14px}
.contact-hero{padding:86px 0 96px;background:linear-gradient(102deg,var(--bg-soft) 0 56%,#f3eee6 56.2%)}.contact-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:90px;align-items:center}.contact-copy h1{font-size:clamp(52px,6vw,82px)}.contact-buttons{display:flex;gap:18px;flex-wrap:wrap;margin-top:44px}.contact-buttons .btn svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}.contact-panel{background:rgba(255,250,243,.72);padding:36px 46px;box-shadow:var(--shadow-soft)}.info-list{display:grid}.info-row{display:grid;grid-template-columns:78px 1fr;gap:22px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line)}.info-row .icon{width:70px;height:70px;border-radius:50%;background:#f4ede4}.info-row .icon svg{width:36px;height:36px}.info-row strong{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:14px;margin-bottom:5px}.info-row a,.info-row span{font-size:20px;color:var(--ink)}.instagram-row{display:flex;align-items:center;gap:26px;padding-top:28px;font-weight:850}.instagram-row .icon svg{width:42px;height:42px}.form-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:58px}.contact-form{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-soft);padding:34px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.contact-form .full{grid-column:1/-1}.contact-form input,.contact-form textarea{border:1px solid var(--line);background:#fff;padding:15px 16px;color:var(--ink);font:inherit;outline:none;text-transform:none;letter-spacing:0}.contact-form textarea{min-height:150px;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold)}
.site-footer{background:#111820;color:#fff;padding:64px 0 26px}.site-footer .brand img{width:170px}.footer-grid{display:grid;grid-template-columns:1.2fr .75fr .85fr .85fr;gap:46px}.site-footer h3{font-family:var(--font-body);color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:18px}.site-footer a,.site-footer p,.site-footer .footer-muted{display:block;color:rgba(255,255,255,.72);font-size:15px;margin-bottom:9px}.site-footer a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:42px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.55);font-size:13px}
@media(max-width:1120px){.main-nav{gap:22px}.header-actions .btn{display:none}.menu-toggle{display:inline-flex}.main-nav{display:none;position:absolute;top:84px;left:24px;right:24px;z-index:80;flex-direction:column;align-items:flex-start;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);padding:20px}.main-nav.open{display:flex}.header-inner{height:88px}.brand img{width:154px}.hero-grid,.about-hero,.zorg-grid,.contact-grid,.form-wrap,.split-card,.cta-grid{grid-template-columns:1fr}.hero-image{height:520px;clip-path:none}.about-photo{min-height:460px}.about-copy{padding:62px min(7vw,80px)}.card-grid.four{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}.zorg-image{height:480px}.footer-grid{grid-template-columns:1fr 1fr}.usp-strip{grid-template-columns:repeat(2,1fr)}.usp-item:nth-child(2){border-right:0}.usp-item:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:720px){.container{width:min(calc(100% - 30px),var(--max))}.section{padding:66px 0}.hero{background:var(--bg-soft)}.hero-grid{min-height:auto;padding:40px 0 58px;gap:36px}h1{font-size:44px}h2{font-size:37px}.lead{font-size:17px}.hero-usps,.card-grid.four,.card-grid.three,.process-grid,.usp-strip,.footer-grid{grid-template-columns:1fr}.hero-usps>div{border-right:0;border-bottom:1px solid var(--line)}.hero-usps>div:last-child{border-bottom:0}.btn{width:100%}.actions,.contact-buttons{width:100%}.card>img{height:210px}.usp-item{border-right:0;border-bottom:1px solid var(--line)}.usp-item:last-child{border-bottom:0}.split-card{padding:28px}.split-card img{height:320px}.cta-grid{gap:24px}.about-copy{padding:44px 15px}.about-photo{min-height:360px}.zorg-copy{padding-right:0}.zorg-image{height:360px}.feature-panel{padding:22px}.contact-hero{padding:56px 0;background:var(--bg-soft)}.contact-grid{gap:40px}.contact-panel{padding:24px}.info-row{grid-template-columns:54px 1fr;gap:16px}.info-row .icon{width:52px;height:52px}.info-row .icon svg{width:28px;height:28px}.info-row a,.info-row span{font-size:17px}.contact-form{grid-template-columns:1fr;padding:24px}.footer-bottom{flex-direction:column}.page-hero{padding:62px 0 46px}.project-filter{flex-wrap:nowrap;overflow-x:auto;gap:10px;margin-bottom:22px;padding:0 0 10px;scroll-snap-type:x proximity}.project-filter .filter-btn{flex:0 0 auto;min-width:max-content;scroll-snap-align:start}.zorg-anim-wrap{animation:none !important;transform:none !important}.zorg-anim-wrap::after{animation:none !important;opacity:0 !important}}

@media(max-width:720px){
  .site-footer{
    padding:22px 0 14px;
  }

  .site-footer .brand img{
    display:none;
  }

  .footer-grid{
    grid-template-columns:1fr 1fr;
    gap:18px 20px;
  }

  .footer-brand,
  .footer-grid > div:last-child{
    grid-column:1/-1;
  }

  .footer-brand p{
    max-width:34em;
    font-size:13.5px;
    line-height:1.55;
    margin-bottom:0;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }

  .site-footer h3{
    font-size:11px;
    margin-bottom:10px;
    letter-spacing:.12em;
  }

  .site-footer a,
  .site-footer p,
  .site-footer .footer-muted{
    font-size:13.5px;
    line-height:1.35;
    margin-bottom:6px;
  }

  .footer-grid > div:nth-child(3){
    display:grid;
    grid-template-columns:1fr 1fr;
    column-gap:16px;
  }

  .footer-grid > div:nth-child(3) h3{
    grid-column:1/-1;
  }

  .site-footer .footer-muted{
    display:none;
  }

  .footer-grid > div:last-child{
    display:flex;
    flex-wrap:wrap;
    gap:6px 16px;
    padding-top:2px;
    border-top:1px solid rgba(255,255,255,.1);
  }

  .footer-grid > div:last-child h3{
    flex:0 0 100%;
    margin-bottom:2px;
  }

  .footer-grid > div:last-child a,
  .footer-grid > div:last-child .footer-muted{
    margin-bottom:0;
  }

  .footer-bottom{
    gap:5px;
    margin-top:16px;
    padding-top:12px;
    font-size:11.5px;
  }
}

/* Vastgoed Zorgplan redesign, aansluitend op Home en Over ons */
.zorg-hero{
  padding:88px 0 96px;
  background:var(--bg-soft);
  border-bottom:1px solid var(--line);
}

.zorg-hero-split{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:64px;
  align-items:center;
}

.zorg-copy{
  max-width:560px;
  padding-right:0;
}

.zorg-copy h1{
  font-size:clamp(42px,4.6vw,64px);
  line-height:1.07;
  max-width:540px;
  margin-bottom:28px;
}

.zorg-copy p{
  max-width:510px;
  margin-bottom:30px;
}

.zorg-image{
  height:640px;
  overflow:hidden;
  box-shadow:var(--shadow);
}

.zorg-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.zorg-mini{
  margin-top:22px;
  max-width:520px;
}

.zorg-features-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:22px;
}

.zorg-features-grid .simple-card{
  height:100%;
}

.zorg-features-grid .simple-card h3{
  font-size:21px;
  line-height:1.18;
  font-weight:740;
  margin-bottom:12px;
}

.zorg-features-grid .simple-card p{
  font-size:15px;
  margin-bottom:0;
}

@media(max-width:1200px){
  .zorg-hero-split{
    grid-template-columns:1fr;
    gap:42px;
  }

  .zorg-image{
    height:460px;
  }

  .zorg-features-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:720px){
  .zorg-copy h1{
    font-size:38px;
  }

  .zorg-image{
    height:360px;
  }

  .zorg-features-grid{
    grid-template-columns:1fr;
  }
}

/* Projecten pagina verbetering */
.projects-grid .project-card{
  height:100%;
}

.projects-grid .card-content{
  min-width:0;
}

.projects-grid .project-card h3{
  font-size:22px;
  line-height:1.16;
  font-weight:740;
  overflow-wrap:break-word;
  hyphens:auto;
}

.project-detail-section{
  scroll-margin-top:110px;
}

.project-detail-grid{
  display:grid;
  gap:28px;
}

.project-detail-card{
  display:grid;
  grid-template-columns:360px 1fr;
  gap:34px;
  align-items:center;
  background:var(--paper);
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
  padding:28px;
  scroll-margin-top:130px;
}

.project-detail-card img{
  width:100%;
  height:260px;
  object-fit:cover;
}

.project-detail-card h3{
  font-size:28px;
  line-height:1.12;
  font-weight:750;
  margin-bottom:14px;
}

.project-detail-card p{
  margin-bottom:16px;
}

.project-detail-card ul{
  margin:0;
  padding-left:20px;
  color:var(--muted);
  font-size:15.5px;
  line-height:1.8;
}

@media(max-width:900px){
  .project-detail-card{
    grid-template-columns:1fr;
    padding:22px;
  }

  .project-detail-card img{
    height:230px;
  }

  .project-detail-card h3{
    font-size:27px;
  }
}

/* Diensten pagina verdieping */
.diensten-grid .service-card{
  height:100%;
}

.service-detail-section{
  scroll-margin-top:110px;
}

.service-detail-grid{
  display:grid;
  gap:30px;
}

.service-detail-card{
  display:grid;
  grid-template-columns:390px 1fr;
  gap:38px;
  align-items:center;
  background:var(--paper);
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
  padding:30px;
  scroll-margin-top:130px;
}

.service-detail-card img{
  width:100%;
  height:290px;
  object-fit:cover;
}

.service-detail-card h3{
  font-size:34px;
  margin-bottom:14px;
}

.service-detail-card p{
  margin-bottom:16px;
}

.service-detail-card ul{
  margin:0 0 22px;
  padding-left:20px;
  color:var(--muted);
  font-size:15.5px;
  line-height:1.8;
}

.service-detail-card .btn{
  width:auto;
}

@media(max-width:900px){
  .service-detail-card{
    grid-template-columns:1fr;
    padding:22px;
  }

  .service-detail-card img{
    height:230px;
  }

  .service-detail-card h3{
    font-size:28px;
  }
}

/* Horizontale swipe rails voor diensten en projecten */
.swipe-track{
  display:flex !important;
  grid-template-columns:none !important;
  gap:24px;
  overflow-x:auto;
  overflow-y:visible;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  scrollbar-color:rgba(184,135,70,.48) rgba(216,200,180,.25);
  padding:4px 4px 18px;
  margin-inline:-4px;
}

.swipe-track::-webkit-scrollbar{
  height:8px;
}

.swipe-track::-webkit-scrollbar-track{
  background:rgba(216,200,180,.24);
}

.swipe-track::-webkit-scrollbar-thumb{
  background:rgba(184,135,70,.52);
  border-radius:999px;
}

.swipe-track > *{
  flex:0 0 clamp(286px,31vw,370px);
  min-width:0;
  scroll-snap-align:start;
  scroll-snap-stop:always;
}

.diensten-grid.swipe-track > .service-card,
.projects-grid.swipe-track > .project-card{
  height:auto;
}

.service-detail-grid.swipe-track,
.project-detail-grid.swipe-track{
  gap:28px;
}

.service-detail-grid.swipe-track > .service-detail-card,
.project-detail-grid.swipe-track > .project-detail-card{
  flex-basis:min(100%,980px);
  width:min(100%,980px);
}

.swipe-controls{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin:-14px 0 14px;
}

.project-filter + .swipe-controls{
  margin-top:18px;
}

.swipe-button{
  display:inline-grid;
  place-items:center;
  width:44px;
  height:44px;
  border:1px solid #d8c8b4;
  background:rgba(255,250,243,.78);
  color:var(--ink);
  font-size:21px;
  line-height:1;
  cursor:pointer;
  transition:transform .22s var(--ease-premium),box-shadow .22s var(--ease-premium),border-color .22s ease,color .22s ease,opacity .22s ease;
}

.swipe-button:hover{
  transform:translateY(-1px);
  border-color:var(--gold);
  color:var(--gold-dark);
  box-shadow:0 12px 28px rgba(24,32,43,.08);
}

.swipe-button:disabled{
  opacity:.36;
  cursor:default;
  transform:none;
  box-shadow:none;
}

@media(max-width:900px){
  .swipe-track{
    gap:18px;
    padding-bottom:16px;
  }

  .swipe-track > *{
    flex-basis:min(86vw,380px);
  }

  .service-detail-grid.swipe-track > .service-detail-card,
  .project-detail-grid.swipe-track > .project-detail-card{
    flex-basis:min(88vw,560px);
    width:min(88vw,560px);
  }

  .swipe-controls{
    margin:-8px 0 12px;
  }
}

/* Contactformulier typografie zachter maken */
.contact-form input,
.contact-form textarea{
  font-family:var(--font-body);
  font-size:16px;
  font-weight:400;
  line-height:1.55;
  letter-spacing:0;
}

.contact-form textarea{
  font-weight:400;
}

.contact-form label{
  font-size:12px;
  font-weight:800;
  letter-spacing:.09em;
}

.contact-form .btn{
  font-weight:850;
  grid-column:1/-1;
  justify-self:start;
  max-width:100%;
}

@media(max-width:720px){
  .contact-form input,
  .contact-form textarea{
    font-size:16px;
  }
}

/* Extra functionaliteit v9: formulierselects, projectfilter en FAQ */
.contact-form select{
  border:1px solid var(--line);
  background:#fff;
  padding:15px 16px;
  color:var(--ink);
  font:inherit;
  font-size:16px;
  font-weight:400;
  line-height:1.55;
  outline:none;
  width:100%;
}

.contact-form select:focus{
  border-color:var(--gold);
}

.callback-section{
  background:var(--bg);
}

.project-filter{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin:0 0 34px;
}

.filter-btn{
  border:1px solid var(--line);
  background:var(--paper);
  color:var(--ink);
  padding:12px 18px;
  font-size:12px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
  transition:.2s ease;
}

.filter-btn:hover,
.filter-btn.active{
  background:var(--gold);
  border-color:var(--gold);
  color:#fff;
}

.project-card[hidden]{
  display:none;
}

.faq-list{
  max-width:900px;
  margin:0 auto;
  display:grid;
  gap:14px;
}

.faq-list details{
  background:var(--paper);
  border:1px solid var(--line);
  box-shadow:0 10px 28px rgba(24,32,43,.045);
  padding:0;
}

.faq-list summary{
  cursor:pointer;
  list-style:none;
  padding:19px 24px;
  font-weight:650;
  color:#242b35;
  display:flex;
  justify-content:space-between;
  gap:24px;
}

.faq-list summary::-webkit-details-marker{
  display:none;
}

.faq-list summary:after{
  content:"+";
  color:var(--gold);
  font-size:20px;
  font-weight:700;
  line-height:1;
}

.faq-list details[open] summary:after{
  content:"−";
}

.faq-list details p{
  padding:0 24px 22px;
  margin:0;
}

/* v10 premium animaties en micro-interacties */
:root{
  --ease-premium:cubic-bezier(.22,1,.36,1);
  --ease-soft:cubic-bezier(.2,.8,.2,1);
  --ease-classic:cubic-bezier(.19,1,.22,1);
}

body{
  overflow-x:hidden;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible{
  outline:3px solid rgba(184,135,70,.42);
  outline-offset:4px;
}

.site-header{
  animation:header-drop .82s var(--ease-classic) both;
  transition:background-color .32s ease,border-color .32s ease,box-shadow .32s ease;
}

.site-header.is-scrolled{
  background:rgba(255,253,248,.97);
  border-bottom-color:rgba(216,200,180,.92);
  box-shadow:0 12px 34px rgba(24,32,43,.055);
}

.site-header:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--gold),#d9b77e,var(--gold),transparent);
  transform:scaleX(var(--scroll-progress,0));
  transform-origin:left center;
  opacity:.86;
  transition:opacity .25s ease;
}

.main-nav a:after{
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .34s var(--ease-classic),background-color .25s ease;
}

.main-nav a.active:after,
.main-nav a:hover:after{
  transform:scaleX(1);
}

.hero-copy > .eyebrow,
.hero-copy h1,
.hero-copy .lead,
.hero-copy .actions,
.page-hero .container > *,
.contact-copy > .eyebrow,
.contact-copy h1,
.contact-copy .lead,
.contact-buttons,
.about-copy > .eyebrow,
.about-copy h1,
.about-copy p,
.about-copy .mini-card,
.zorg-copy > *{
  animation:fade-up 1.05s var(--ease-premium) both;
}

.hero-copy h1,
.page-hero .container > h1,
.contact-copy h1,
.about-copy h1,
.zorg-copy h1{animation-delay:.08s}
.hero-copy .lead,
.page-hero .container > .lead,
.contact-copy .lead,
.about-copy p,
.zorg-copy p{animation-delay:.16s}
.hero-copy .actions,
.contact-buttons,
.about-copy .mini-card,
.zorg-copy .actions,
.zorg-copy .zorg-mini{animation-delay:.24s}

.hero-usps > div{
  animation:fade-up .98s var(--ease-premium) both;
}
.hero-usps > div:nth-child(1){animation-delay:.18s}
.hero-usps > div:nth-child(2){animation-delay:.26s}
.hero-usps > div:nth-child(3){animation-delay:.34s}
.hero-usps > div:nth-child(4){animation-delay:.42s}

.hero-image,
.contact-panel,
.zorg-image{
  animation:image-reveal 1.18s var(--ease-premium) .18s both;
  transform-origin:center;
}

body[data-page="vastgoed"] .zorg-image{
  animation:none;
  transform:none;
}

body[data-page="vastgoed"] .zorg-image:before{
  animation:none;
  opacity:0;
}

@media(min-width:901px){
  .hero-image img,
  .hero-image video{
    height:calc(100% + 28px);
    margin-top:-14px;
    animation:none;
    transform:translate3d(0,var(--image-shift,0px),0) scale(1.015);
    transform-origin:center;
    transition:transform .25s ease,filter .7s ease;
    will-change:transform;
  }

  body[data-page="vastgoed"] .zorg-image img,
  body[data-page="vastgoed"] .zorg-image video{
    height:100%;
    margin-top:0;
    animation:none;
    transform:none;
    transition:none;
    will-change:auto;
  }
}

.reveal{
  opacity:0;
  transform:translate3d(0,14px,0);
  transition:opacity 1.15s var(--ease-classic),transform 1.15s var(--ease-classic);
  will-change:opacity,transform;
}

.reveal-left{transform:translate3d(-18px,0,0)}
.reveal-right{transform:translate3d(18px,0,0)}
.reveal-up{transform:translate3d(0,16px,0)}
.reveal.is-visible{
  opacity:1;
  transform:translate3d(0,0,0);
}

.stagger > .reveal:nth-child(2){transition-delay:.06s}
.stagger > .reveal:nth-child(3){transition-delay:.12s}
.stagger > .reveal:nth-child(4){transition-delay:.18s}
.stagger > .reveal:nth-child(5){transition-delay:.24s}
.stagger > .reveal:nth-child(6){transition-delay:.30s}

.eyebrow:after{
  transform:scaleX(.45);
  transform-origin:left center;
  transition:transform .72s var(--ease-premium);
}

.is-visible .eyebrow:after,
.hero .eyebrow:after,
.page-hero .eyebrow:after,
.contact-hero .eyebrow:after,
.about-hero .eyebrow:after,
.zorg-hero .eyebrow:after{
  transform:scaleX(1);
}

.btn{
  position:relative;
  overflow:hidden;
  --magnet-x:0px;
  --magnet-y:0px;
  transition:transform .34s var(--ease-classic),box-shadow .34s var(--ease-classic),background-color .32s ease,border-color .32s ease,color .32s ease;
}

.btn-primary{
  box-shadow:0 10px 28px rgba(155,110,52,.12);
}

.btn-primary:before{
  content:"";
  position:absolute;
  inset:-45% auto -45% -60%;
  width:36%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);
  transform:translateX(-120%) skewX(-18deg);
  transition:transform .9s var(--ease-classic);
}

.btn-primary:hover:before{
  transform:translateX(430%) skewX(-18deg);
}

.btn-primary:hover{
  background:var(--gold-dark);
  border-color:var(--gold-dark);
  box-shadow:0 16px 34px rgba(155,110,52,.2);
}

.btn-outline:hover{
  background:rgba(184,135,70,.08);
  border-color:rgba(184,135,70,.52);
  color:var(--ink);
}

.btn-light:hover{
  background:rgba(255,255,255,.1);
  border-color:rgba(255,255,255,.58);
}

.card,
.simple-card,
.process-grid article,
.project-detail-card,
.service-detail-card,
.feature-panel,
.contact-panel,
.contact-form,
.faq-list details{
  transition:transform .34s var(--ease-premium),box-shadow .34s var(--ease-premium),border-color .34s ease,opacity .24s ease;
}

.card:hover,
.simple-card:hover,
.process-grid article:hover,
.project-detail-card:hover{
  transform:translateY(-5px) perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));
  box-shadow:0 24px 58px rgba(24,32,43,.13);
  border-color:rgba(184,135,70,.28);
}

.card > img,
.project-detail-card img,
.service-detail-card img,
.split-card img{
  transition:transform .7s var(--ease-premium),filter .7s ease;
}

.card:hover > img,
.project-detail-card:hover img,
.split-card:hover img{
  transform:scale(1.025);
  filter:saturate(1) contrast(1.03);
}

.project-filter{
  align-items:center;
}

.filter-btn{
  --magnet-x:0px;
  --magnet-y:0px;
  border-radius:0;
  transition:transform .24s var(--ease-premium),box-shadow .24s var(--ease-premium),background-color .24s ease,border-color .24s ease,color .24s ease;
}

.filter-btn:hover{
  transform:translate3d(var(--magnet-x),var(--magnet-y),0) translateY(-1px);
  box-shadow:0 10px 24px rgba(24,32,43,.08);
}

.filter-btn.active{
  background:linear-gradient(180deg,#c39558,var(--gold));
  border-color:#c39558;
  color:#fff;
  box-shadow:0 12px 30px rgba(184,135,70,.22);
}

.project-card[data-category]{
  transition:opacity .24s ease,transform .24s var(--ease-premium),box-shadow .34s var(--ease-premium),border-color .34s ease;
}

.project-card.is-filtering-out{
  opacity:0;
  transform:scale(.985);
  pointer-events:none;
}

.project-card[hidden]{
  display:none !important;
}

.faq-list details{
  overflow:hidden;
  transition:transform .3s var(--ease-classic),box-shadow .3s var(--ease-classic),border-color .3s ease;
}

.faq-list details[open]{
  transform:translateY(-1px);
  box-shadow:0 16px 38px rgba(24,32,43,.075);
  border-color:rgba(184,135,70,.24);
}

.faq-list summary{
  transition:color .25s ease,background-color .25s ease;
}

.faq-list summary:hover{
  color:var(--gold-dark);
  background:rgba(184,135,70,.045);
}

.faq-list summary:after{
  transition:transform .3s var(--ease-premium),color .3s ease;
}

.faq-list details[open] summary:after{
  content:"-";
  transform:rotate(180deg);
}

.faq-list details p{
  opacity:0;
  transform:translateY(-6px);
  transition:opacity .28s ease,transform .28s var(--ease-premium);
}

.faq-list details[open] p{
  opacity:1;
  transform:translateY(0);
}

/* v11 cinematic polish: meer diepte zonder drukke beweging */
.hero,
.page-hero,
.cta-section{
  isolation:isolate;
}

.hero:after,
.page-hero:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(118deg,transparent 0 48%,rgba(255,255,255,.42) 52%,rgba(184,135,70,.14) 54%,transparent 66%),
    linear-gradient(180deg,rgba(255,255,255,.44),transparent 52%);
  transform:translateX(-26%);
  animation:hero-light-sweep 1.35s var(--ease-classic) .18s both;
  opacity:.72;
}

.hero-grid,
.page-hero .container{
  z-index:1;
}

.hero-image,
.about-photo,
.zorg-image,
.split-card,
.card,
.simple-card,
.process-grid article,
.project-detail-card,
.service-detail-card,
.feature-panel,
.contact-panel,
.contact-form,
.faq-list details{
  position:relative;
  isolation:isolate;
}

.tilt-react{
  --spot-x:50%;
  --spot-y:50%;
  --tilt-x:0deg;
  --tilt-y:0deg;
  transform-style:preserve-3d;
}

.hero-image{
  box-shadow:0 32px 90px rgba(24,32,43,.18),0 0 0 1px rgba(255,255,255,.36) inset;
}

.about-photo{
  box-shadow:0 20px 58px rgba(24,32,43,.10);
}

.about-photo img{
  transform:none !important;
  transition:filter .9s ease;
}

.hero-image:before,
.zorg-image:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(112deg,transparent 0 42%,rgba(255,255,255,.18) 49%,rgba(184,135,70,.07) 52%,transparent 64%);
  transform:translateX(-120%) skewX(-8deg);
  animation:image-sheen 2.6s var(--ease-classic) .62s both;
}

.hero-image:after,
.about-photo:after,
.zorg-image:after{
  content:"";
  position:absolute;
  inset:18px;
  z-index:2;
  pointer-events:none;
  border:1px solid rgba(255,255,255,.36);
  opacity:.72;
}

.about-photo:after{
  inset:0;
  border:0;
  background:
    radial-gradient(circle at 35% 46%,rgba(255,217,154,.20),rgba(255,217,154,.10) 20%,transparent 43%),
    linear-gradient(90deg,rgba(255,238,204,.10),transparent 54%);
  mix-blend-mode:soft-light;
  opacity:.9;
}

.hero-copy h1,
.page-hero h1,
.contact-copy h1,
.about-copy h1,
.zorg-copy h1{
  text-shadow:0 18px 48px rgba(24,32,43,.10);
}

.card:before,
.simple-card:before,
.process-grid article:before,
.project-detail-card:before,
.feature-panel:before,
.contact-panel:before,
.contact-form:before,
.faq-list details:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at var(--spot-x,50%) var(--spot-y,50%),rgba(255,255,255,.72),rgba(255,255,255,.16) 24%,transparent 48%),
    linear-gradient(135deg,rgba(255,255,255,.34),transparent 36%,rgba(184,135,70,.10));
  opacity:0;
  transition:opacity .42s var(--ease-premium);
}

.card:hover:before,
.simple-card:hover:before,
.process-grid article:hover:before,
.project-detail-card:hover:before,
.feature-panel:hover:before,
.contact-panel:hover:before,
.contact-form:focus-within:before,
.faq-list details:hover:before{
  opacity:1;
}

.card > *,
.simple-card > *,
.process-grid article > *,
.project-detail-card > *,
.feature-panel > *,
.contact-panel > *,
.contact-form > *,
.faq-list details > *{
  position:relative;
  z-index:2;
}

.card > img,
.project-detail-card img{
  z-index:0;
}

.service-detail-card{
  overflow:hidden;
}

.service-detail-card:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(105deg,transparent 0 38%,rgba(255,255,255,.46) 48%,rgba(184,135,70,.12) 52%,transparent 64%);
  opacity:0;
  transform:translateX(-125%) skewX(-10deg);
}

.service-detail-card.is-visible:before{
  animation:detail-sheen 1.05s var(--ease-classic) .22s both;
}

.service-detail-card > *{
  position:relative;
  z-index:1;
}

.service-detail-card.reveal img{
  opacity:0;
  transform:scale(1.045);
  clip-path:inset(0 0 0 18%);
}

.service-detail-card.reveal.is-visible img{
  animation:detail-image-reveal .95s var(--ease-classic) .08s both;
}

.btn{
  box-shadow:0 10px 26px rgba(24,32,43,.045);
}

.btn:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(110deg,transparent 0 38%,rgba(255,255,255,.28) 48%,transparent 58%);
  transform:translateX(-120%) skewX(-18deg);
  transition:transform .8s var(--ease-classic);
}

.btn:hover{
  transform:translate3d(var(--magnet-x),var(--magnet-y),0) translateY(-3px) scale(1.008);
  box-shadow:0 18px 42px rgba(24,32,43,.12);
}

.btn:hover:after{
  transform:translateX(130%) skewX(-18deg);
}

.hero-usps > div{
  transition:background-color .3s ease,transform .36s var(--ease-premium);
}

.hero-usps > div:hover{
  background:rgba(255,255,255,.52);
  transform:translateY(-3px);
}

.hero-usps .icon{
  transition:transform .42s var(--ease-premium),color .3s ease;
}

.hero-usps > div:hover .icon{
  color:var(--gold-dark);
  transform:translateY(-2px) scale(1.08);
}

.cta-section{
  position:relative;
  overflow:hidden;
}

.cta-section:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(115deg,transparent 0 52%,rgba(184,135,70,.18) 52.4%,transparent 68%),
    linear-gradient(180deg,rgba(255,255,255,.06),transparent);
  transform:translateX(-18%);
  animation:cta-glow-in 1.1s var(--ease-classic) both;
}

.cta-grid{
  position:relative;
  z-index:1;
}

html.motion-seen .hero-copy > .eyebrow,
html.motion-seen .hero-copy h1,
html.motion-seen .hero-copy .lead,
html.motion-seen .hero-copy .actions,
html.motion-seen .page-hero .container > *,
html.motion-seen .contact-copy > .eyebrow,
html.motion-seen .contact-copy h1,
html.motion-seen .contact-copy .lead,
html.motion-seen .contact-buttons,
html.motion-seen .about-copy > .eyebrow,
html.motion-seen .about-copy h1,
html.motion-seen .about-copy p,
html.motion-seen .about-copy .mini-card,
html.motion-seen .zorg-copy > *,
html.motion-seen .hero-usps > div,
html.motion-seen .hero-image,
html.motion-seen .contact-panel,
html.motion-seen .zorg-image{
  animation:none !important;
}

html.motion-seen .hero:after,
html.motion-seen .page-hero:after,
html.motion-seen .cta-section:before,
html.motion-seen .hero-image:before,
html.motion-seen .zorg-image:before,
html.motion-seen .service-detail-card:before{
  animation:none !important;
  opacity:0 !important;
}

html.motion-seen .reveal,
html.motion-seen .service-detail-card.reveal img{
  opacity:1 !important;
  transform:none !important;
  clip-path:none !important;
  transition:none !important;
}

@media(max-width:720px){
  .site-header{
    position:sticky;
  }

  .header-inner{
    height:86px;
  }

  .brand{
    min-width:0;
  }

  .brand img{
    width:148px;
  }

  .hero{
    background:
      linear-gradient(180deg,var(--bg-soft) 0%,var(--bg) 100%);
  }

  .hero:before{
    left:-170px;
    top:112px;
    width:390px;
    height:390px;
    opacity:.58;
  }

  .hero:after,
  .page-hero:after{
    opacity:.34;
  }

  .hero-grid{
    display:flex;
    flex-direction:column;
    min-height:auto;
    gap:26px;
    padding:28px 0 46px;
  }

  .hero-copy{
    display:contents;
  }

  .hero-copy > .eyebrow{
    order:1;
    width:100%;
    margin-bottom:0;
    font-size:12px;
    gap:12px;
    letter-spacing:.11em;
  }

  .hero-copy h1{
    order:2;
    width:100%;
    max-width:360px;
    margin-bottom:-4px;
    font-size:clamp(36px,10.4vw,42px);
    line-height:1.04;
    letter-spacing:0;
  }

  .hero-copy .lead{
    order:3;
    width:100%;
    max-width:360px;
    margin-bottom:0;
    font-size:16px;
    line-height:1.62;
  }

  .hero-copy .actions{
    order:4;
    gap:12px;
    margin-top:0;
  }

  .hero-image{
    order:5;
    width:100%;
    height:auto;
    aspect-ratio:4 / 3.15;
    margin-top:4px;
    box-shadow:0 18px 48px rgba(24,32,43,.12);
  }

  .hero-image:after{
    inset:10px;
  }

  .hero-usps{
    order:6;
    width:100%;
    grid-template-columns:repeat(2,1fr);
    gap:0;
    margin:2px 0 0;
    border:1px solid var(--line);
    background:rgba(255,253,248,.72);
  }

  .hero-usps > div{
    min-height:126px;
    padding:19px 12px 17px;
    border-right:1px solid var(--line);
    border-bottom:1px solid var(--line);
  }

  .hero-usps > div:nth-child(2n){
    border-right:0;
  }

  .hero-usps > div:nth-last-child(-n+2){
    border-bottom:0;
  }

  .hero-usps .icon svg{
    width:38px;
    height:38px;
  }

  .hero-usps strong{
    margin-top:10px;
    font-size:10.5px;
    line-height:1.28;
    letter-spacing:.055em;
  }

  .hero .btn{
    min-height:50px;
  }
}

@media(max-width:1120px){
  .main-nav{
    display:flex;
    top:88px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translate3d(0,-10px,0);
    transition:opacity .32s ease,transform .38s var(--ease-classic),visibility .38s;
  }

  .main-nav.open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translate3d(0,0,0);
  }

  .main-nav a{
    opacity:0;
    transform:translateY(6px);
    transition:opacity .28s ease,transform .36s var(--ease-classic),color .2s ease;
  }

  .main-nav.open a{
    opacity:1;
    transform:translateY(0);
  }

  .main-nav.open a:nth-child(2){transition-delay:.04s}
  .main-nav.open a:nth-child(3){transition-delay:.08s}
  .main-nav.open a:nth-child(4){transition-delay:.12s}
  .main-nav.open a:nth-child(5){transition-delay:.16s}
}

@media(max-width:720px){
  .hero-image,
  .contact-panel,
  .about-photo,
  .zorg-image{
    animation-duration:.65s;
  }

  .hero-image img,
  .about-photo img,
  .zorg-image img{
    animation:none;
  }

  .reveal{
    transform:translate3d(0,18px,0);
  }

  .hero-image:after,
  .zorg-image:after{
    inset:12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  * {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }

  body[data-page="vastgoed"] .zorg-image,
  body[data-page="vastgoed"] .zorg-image img,
  body[data-page="vastgoed"] .zorg-image video,
  body[data-page="vastgoed"] .zorg-anim-wrap,
  body[data-page="vastgoed"] .zorg-anim-wrap::before,
  body[data-page="vastgoed"] .zorg-anim-wrap::after {
    animation: none !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
  }

  .service-detail-card.reveal img{
    opacity:1 !important;
    transform:none !important;
    clip-path:none !important;
  }
}

@keyframes header-drop{
  from{opacity:0;transform:translate3d(0,-12px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}

@keyframes fade-up{
  from{opacity:0;transform:translate3d(0,22px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}

@keyframes image-reveal{
  from{opacity:0;transform:scale(.985)}
  to{opacity:1;transform:scale(1)}
}

@keyframes slow-premium-scale{
  from{transform:scale(1)}
  to{transform:scale(1.035)}
}

@keyframes hero-light-sweep{
  from{opacity:0;transform:translateX(-34%)}
  to{opacity:.72;transform:translateX(0)}
}

@keyframes image-sheen{
  0%{opacity:0;transform:translateX(-120%) skewX(-8deg)}
  26%{opacity:.88}
  100%{opacity:0;transform:translateX(120%) skewX(-8deg)}
}

@keyframes detail-sheen{
  0%{opacity:0;transform:translateX(-125%) skewX(-10deg)}
  24%{opacity:.9}
  100%{opacity:0;transform:translateX(125%) skewX(-10deg)}
}

@keyframes detail-image-reveal{
  from{opacity:0;transform:scale(1.045);clip-path:inset(0 0 0 18%)}
  to{opacity:1;transform:scale(1);clip-path:inset(0)}
}

@keyframes cta-glow-in{
  from{opacity:0;transform:translateX(-24%)}
  to{opacity:1;transform:translateX(0)}
}

@media(max-width:720px){
  .project-filter{
    flex-wrap:nowrap;
    overflow-x:auto;
    gap:10px;
    margin-bottom:22px;
    padding:0 0 10px;
    scroll-snap-type:x proximity;
  }

  .project-filter .filter-btn{
    flex:0 0 auto;
    min-width:max-content;
    scroll-snap-align:start;
  }
}

/* Compact mobiel menu en contactpagina */
@media(max-width:720px){
  .main-nav{
    top:72px !important;
    left:auto !important;
    right:15px !important;
    width:min(220px,calc(100vw - 30px)) !important;
    padding:8px !important;
    gap:0 !important;
    background:rgba(255,250,243,.96) !important;
    border:1px solid rgba(216,200,180,.9) !important;
    box-shadow:0 18px 42px rgba(24,32,43,.13) !important;
  }

  .main-nav a{
    width:100%;
    padding:9px 11px !important;
    font-size:11px;
    line-height:1.2;
    border-bottom:1px solid rgba(231,222,209,.78);
  }

  .main-nav a:last-child{
    border-bottom:0;
  }

  .main-nav a.active:after,
  .main-nav a:hover:after{
    display:none;
  }

  .main-nav a.active{
    color:var(--gold-dark);
    background:rgba(184,135,70,.07);
  }

  body[data-page="contact"] .contact-hero{
    padding:30px 0 28px !important;
    background:var(--bg-soft) !important;
  }

  body[data-page="contact"] .contact-grid{
    gap:22px !important;
  }

  body[data-page="contact"] .contact-copy h1{
    font-size:clamp(27px,7.6vw,30px) !important;
    line-height:1.08;
    margin-bottom:12px;
  }

  body[data-page="contact"] .contact-copy .lead{
    font-size:14.5px !important;
    line-height:1.55 !important;
    margin-bottom:0;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }

  body[data-page="contact"] .contact-buttons{
    display:grid !important;
    grid-template-columns:1fr 1fr;
    gap:8px !important;
    margin-top:18px !important;
  }

  body[data-page="contact"] .contact-buttons .btn{
    min-height:42px;
    padding:12px 10px;
    font-size:10.5px;
    letter-spacing:.055em;
  }

  body[data-page="contact"] .contact-panel{
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
  }

  body[data-page="contact"] .info-list{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }

  body[data-page="contact"] .info-row{
    display:block !important;
    padding:10px !important;
    min-width:0;
    border:1px solid var(--line) !important;
    background:rgba(255,250,243,.68);
  }

  body[data-page="contact"] .info-row .icon{
    display:none !important;
  }

  body[data-page="contact"] .info-row strong{
    font-size:10px;
    margin-bottom:3px;
    line-height:1.2;
  }

  body[data-page="contact"] .info-row a,
  body[data-page="contact"] .info-row span{
    font-size:12.5px !important;
    line-height:1.35;
    overflow-wrap:anywhere;
  }

  body[data-page="contact"] .instagram-row{
    display:none !important;
  }

  body[data-page="contact"] .section{
    padding:26px 0 !important;
  }

  body[data-page="contact"] .form-wrap{
    grid-template-columns:minmax(0,1fr) !important;
    gap:14px !important;
    min-width:0;
  }

  body[data-page="contact"] .form-wrap > *,
  body[data-page="contact"] .contact-form > *{
    min-width:0;
  }

  body[data-page="contact"] .form-wrap h2{
    font-size:25px;
    line-height:1.08;
    margin-bottom:8px;
  }

  body[data-page="contact"] .form-wrap p{
    font-size:14.5px;
    line-height:1.45;
    margin-bottom:0;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }

  body[data-page="contact"] .contact-form{
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
    padding:14px !important;
    box-shadow:none !important;
    width:100%;
    max-width:100%;
    min-width:0;
  }

  body[data-page="contact"] .contact-form label{
    gap:6px;
    font-size:10.5px;
  }

  body[data-page="contact"] .contact-form input,
  body[data-page="contact"] .contact-form select{
    min-height:40px;
    padding:8px 10px !important;
    font-size:14.5px !important;
    min-width:0;
  }

  body[data-page="contact"] .contact-form textarea{
    min-height:74px !important;
    padding:8px 10px !important;
    font-size:14.5px !important;
    min-width:0;
  }

  body[data-page="contact"] .contact-form .btn{
    width:100%;
    min-height:42px;
    padding:12px 10px;
    font-size:10.5px;
    letter-spacing:.055em;
    white-space:normal;
  }
}

/* Compacte mobiele homepage: sneller naar de inhoud, minder loze hoogte. */
@media(max-width:720px){
  .header-inner{
    height:72px !important;
  }

  .brand img{
    width:132px !important;
  }

  .menu-toggle{
    padding:10px 13px;
    font-size:12px;
    min-height:38px;
  }

  .hero-grid{
    gap:14px !important;
    padding:16px 0 24px !important;
  }

  .hero-copy > .eyebrow{
    font-size:11px !important;
    margin-bottom:0 !important;
  }

  .hero-copy h1{
    max-width:320px !important;
    font-size:clamp(28px,8vw,32px) !important;
    line-height:1.06 !important;
    margin-bottom:0 !important;
  }

  .hero-copy .lead{
    max-width:335px !important;
    font-size:14px !important;
    line-height:1.5 !important;
  }

  .hero-copy .actions{
    display:grid !important;
    grid-template-columns:1fr 1fr;
    gap:10px !important;
  }

  .hero-copy .btn,
  .cta-section .btn{
    min-height:42px;
    padding:12px 10px;
    font-size:10.5px;
    letter-spacing:.055em;
  }

  .hero-image{
    aspect-ratio:16 / 9.4 !important;
    margin-top:0 !important;
    box-shadow:0 12px 34px rgba(24,32,43,.10) !important;
  }

  .hero-usps{
    display:none !important;
  }

  .section{
    padding:42px 0 !important;
  }

  .section-head{
    margin-bottom:22px;
  }

  .section-head h2{
    font-size:30px;
    margin-bottom:12px;
  }

  .section-head p{
    font-size:14.5px;
    line-height:1.55;
    margin-bottom:0;
  }

  .split-card{
    padding:18px !important;
    gap:18px !important;
  }

  .split-card h2{
    font-size:28px;
    margin-bottom:12px;
  }

  .split-card p{
    font-size:14.5px;
    line-height:1.55;
    margin-bottom:16px;
  }

  .split-card img{
    height:auto !important;
    aspect-ratio:16 / 10;
  }

  .cta-section{
    padding:42px 0 !important;
  }

  .cta-grid{
    gap:16px !important;
  }

  .cta-grid .actions{
    display:grid !important;
    grid-template-columns:1fr 1fr;
    gap:10px !important;
  }

  .cta-section .eyebrow{
    margin-bottom:14px;
  }

  .cta-section h2{
    font-size:28px;
    margin-bottom:12px;
  }

  .cta-section p{
    font-size:15px;
    line-height:1.55;
    margin-bottom:4px;
  }
}


/* v13: hero logo image needs breathing room from the diagonal white edge */
.hero-image img{object-position:42% center;}

/* v13: slightly tighter desktop nav spacing */
@media(min-width:1121px){.main-nav{gap:34px;}}


/* v14: contactpagina zakelijker en compacter */
body[data-page="contact"] .contact-hero{
  padding:64px 0 72px;
  background:linear-gradient(105deg,var(--bg-soft) 0 61%,#f3eee6 61.2%);
}

body[data-page="contact"] .contact-grid{
  grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);
  gap:64px;
  align-items:start;
}

body[data-page="contact"] .contact-copy{
  max-width:620px;
}

body[data-page="contact"] .contact-copy h1{
  font-size:clamp(42px,4.8vw,64px);
  line-height:1.04;
  max-width:560px;
  margin-bottom:22px;
}

body[data-page="contact"] .contact-copy .lead{
  max-width:560px;
  font-size:18px;
  line-height:1.7;
}

body[data-page="contact"] .contact-buttons{
  gap:12px;
  margin-top:30px;
}

body[data-page="contact"] .contact-buttons .btn{
  min-height:48px;
  padding:13px 22px;
}

body[data-page="contact"] .contact-panel{
  background:rgba(255,250,243,.82);
  border:1px solid var(--line);
  box-shadow:0 18px 46px rgba(24,32,43,.06);
  padding:28px 34px;
}

body[data-page="contact"] .info-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:34px;
  row-gap:0;
}

body[data-page="contact"] .info-row{
  display:block;
  padding:18px 0;
  border-bottom:1px solid rgba(231,222,209,.9);
}

body[data-page="contact"] .info-row .icon{
  display:none;
}

body[data-page="contact"] .info-row strong{
  display:block;
  margin-bottom:6px;
  color:var(--gold-dark);
  font-size:12px;
  letter-spacing:.11em;
}

body[data-page="contact"] .info-row a,
body[data-page="contact"] .info-row span{
  display:block;
  font-size:18px;
  line-height:1.42;
  overflow-wrap:anywhere;
}

body[data-page="contact"] .form-wrap{
  align-items:start;
}

@media(max-width:1120px){
  body[data-page="contact"] .contact-grid{
    grid-template-columns:1fr;
    gap:34px;
  }
  body[data-page="contact"] .contact-panel{
    max-width:none;
  }
}

@media(max-width:720px){
  body[data-page="contact"] .contact-hero{
    padding:34px 0 32px !important;
    background:var(--bg-soft) !important;
  }

  body[data-page="contact"] .contact-copy h1{
    font-size:clamp(32px,9vw,40px) !important;
    max-width:10em;
  }

  body[data-page="contact"] .contact-copy .lead{
    display:block !important;
    -webkit-line-clamp:unset !important;
    font-size:15.5px !important;
  }

  body[data-page="contact"] .contact-panel{
    padding:16px !important;
    background:rgba(255,250,243,.86) !important;
    border:1px solid var(--line) !important;
    box-shadow:none !important;
  }

  body[data-page="contact"] .info-list{
    grid-template-columns:1fr !important;
    gap:0 !important;
  }

  body[data-page="contact"] .info-row{
    padding:12px 0 !important;
    border:0 !important;
    border-bottom:1px solid var(--line) !important;
    background:transparent !important;
  }

  body[data-page="contact"] .info-row:last-child{
    border-bottom:0 !important;
  }

  body[data-page="contact"] .info-row a,
  body[data-page="contact"] .info-row span{
    font-size:15px !important;
  }
}
/* Stop bewegende hero/vastgoed foto */
.hero img,
.hero-image img,
.hero-visual img,
.vastgoed-hero img,
.vastgoed-image img,
.poster-image img,
.image-frame img {
  animation: none !important;
  transform: none !important;
  transition: none !important;
  will-change: auto !important;
}

body[data-page="vastgoed"] .zorg-image,
body[data-page="vastgoed"] .zorg-image img,
body[data-page="vastgoed"] .zorg-image video,
body[data-page="vastgoed"] .zorg-anim-wrap{
  animation:none !important;
  transform:none !important;
  transition:none !important;
  will-change:auto !important;
}

body[data-page="vastgoed"] .zorg-image:before,
body[data-page="vastgoed"] .zorg-anim-wrap::after{
  content:none !important;
  animation:none !important;
  transform:none !important;
  opacity:0 !important;
}

/* v15: premium WhatsApp-overlay */
:root{
  --clt-safe-bottom:env(safe-area-inset-bottom, 0px);
  --clt-safe-right:env(safe-area-inset-right, 0px);
}

html,
body{
  max-width:100%;
  overflow-x:hidden;
}

.clt-contact-assist{
  position:fixed;
  top:0;
  left:0;
  width:0;
  height:0;
  max-width:0;
  overflow:visible;
  z-index:90;
  pointer-events:none;
}

.clt-whatsapp-overlay{
  --clt-widget-size:50px;
  --clt-widget-open-width:268px;
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
  background:rgba(255,255,255,.48);
  border:1px solid rgba(231,222,209,.48);
  box-shadow:0 14px 34px rgba(24,32,43,.09);
  color:var(--ink);
  position:fixed;
  right:clamp(18px,2vw,30px);
  bottom:clamp(22px,3vw,44px);
  box-sizing:border-box;
  width:var(--clt-widget-size);
  height:var(--clt-widget-size);
  max-width:calc(100vw - 32px);
  z-index:90;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  padding:0;
  border-radius:999px;
  overflow:visible;
  pointer-events:none;
  transition:width .34s cubic-bezier(.22,1,.36,1),background-color .24s ease,border-color .24s ease,box-shadow .24s ease;
}

.clt-whatsapp-overlay.is-open{
  width:min(var(--clt-widget-open-width),calc(100vw - 32px));
  background:rgba(255,255,255,.52);
  border-color:rgba(214,201,183,.72);
  box-shadow:0 16px 40px rgba(24,32,43,.11);
}

.clt-whatsapp-info-toggle,
.clt-whatsapp-action{
  appearance:none;
  border:0;
  padding:0;
  border-radius:50%;
  background:rgba(255,255,255,.54);
  color:var(--ink);
  display:grid;
  place-items:center;
  cursor:pointer;
  pointer-events:auto;
}

.clt-whatsapp-info-toggle{
  position:absolute;
  left:0;
  top:0;
  width:var(--clt-widget-size);
  height:var(--clt-widget-size);
  border:1px solid rgba(231,222,209,.48);
  box-shadow:0 10px 26px rgba(24,32,43,.09),inset 0 0 0 6px rgba(255,255,255,.12);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
}

.clt-whatsapp-info-toggle:hover,
.clt-whatsapp-action:hover{
  background:rgba(255,255,255,.68);
}

.clt-info-mark{
  font-family:Georgia,"Times New Roman",serif;
  font-size:22px;
  font-style:italic;
  font-weight:650;
  line-height:1;
  color:rgba(24,32,43,.64);
}

.clt-status-pin{
  position:absolute;
  right:9px;
  top:8px;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#b88746;
  box-shadow:0 0 0 3px rgba(255,255,255,.42);
}

.clt-whatsapp-overlay.is-available .clt-status-pin{
  background:#5eba6a;
}

.clt-whatsapp-panel{
  width:100%;
  min-width:0;
  height:100%;
  display:flex;
  align-items:center;
  gap:11px;
  padding:5px 6px 5px calc(var(--clt-widget-size) + 12px);
  opacity:0;
  transform:translateX(14px);
  visibility:hidden;
  pointer-events:none;
  transition:opacity .24s ease,transform .34s cubic-bezier(.22,1,.36,1),visibility .24s ease;
}

.clt-whatsapp-overlay.is-open .clt-whatsapp-panel{
  opacity:1;
  transform:translateX(0);
  visibility:visible;
}

.clt-whatsapp-copy{
  flex:1 1 auto;
  min-width:0;
  display:grid;
  gap:3px;
  line-height:1.1;
}

.clt-whatsapp-copy strong{
  color:var(--ink);
  font-size:14px;
  font-weight:850;
  letter-spacing:0;
}

.clt-whatsapp-status{
  display:flex;
  align-items:center;
  gap:6px;
  color:var(--muted);
  font-size:12.5px;
  font-weight:760;
  white-space:nowrap;
}

.clt-status-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#b88746;
  flex:none;
}

.clt-whatsapp-overlay.is-available .clt-status-dot{
  background:#5eba6a;
}

.clt-whatsapp-action{
  width:40px;
  height:40px;
  flex:0 0 40px;
  color:#279660;
  box-shadow:0 8px 22px rgba(24,32,43,.08);
}

.clt-whatsapp-icon{
  display:grid;
  place-items:center;
  width:21px;
  height:21px;
  color:currentColor;
  flex:none;
}

.clt-whatsapp-icon svg{
  width:21px;
  height:21px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.55;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.clt-whatsapp-hint{
  position:absolute;
  right:0;
  bottom:calc(100% + 8px);
  max-width:calc(100vw - 40px);
  padding:8px 10px;
  border:1px solid rgba(231,222,209,.72);
  border-radius:999px;
  background:rgba(255,253,248,.9);
  box-shadow:0 10px 26px rgba(24,32,43,.11);
  color:var(--ink);
  font-size:12px;
  font-weight:760;
  line-height:1.1;
  opacity:0;
  pointer-events:none;
  transform:translateY(4px);
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
  visibility:hidden;
  white-space:nowrap;
}

.clt-whatsapp-overlay.is-hint .clt-whatsapp-hint{
  opacity:1;
  transform:translateY(0);
  visibility:visible;
}

@supports not ((backdrop-filter:blur(12px)) or (-webkit-backdrop-filter:blur(12px))){
  .clt-whatsapp-overlay,
  .clt-whatsapp-info-toggle,
  .clt-whatsapp-action{
    background:rgba(255,253,248,.94);
  }
}

@media(max-width:720px){
  .clt-contact-assist{
    z-index:90;
  }

  .clt-whatsapp-overlay{
    --clt-widget-size:44px;
    --clt-widget-open-width:252px;
    top:var(--clt-wa-y, calc(100svh - 82px));
    right:max(14px,var(--clt-safe-right));
    bottom:auto;
    width:var(--clt-widget-size);
    height:var(--clt-widget-size);
    max-width:calc(100vw - 28px);
    touch-action:none;
    box-shadow:0 12px 28px rgba(24,32,43,.09);
  }

  .clt-whatsapp-overlay.is-open{
    width:min(var(--clt-widget-open-width),calc(100vw - 28px));
  }

  .clt-whatsapp-overlay.is-dragging .clt-whatsapp-info-toggle{
    background:rgba(255,255,255,.78);
    border-color:rgba(184,135,70,.38);
    box-shadow:0 14px 34px rgba(24,32,43,.16);
  }

  .clt-whatsapp-info-toggle{
    width:var(--clt-widget-size);
    height:var(--clt-widget-size);
    touch-action:none;
  }

  .clt-info-mark{
    font-size:21px;
  }

  .clt-status-pin{
    right:7px;
    top:6px;
    width:6px;
    height:6px;
  }

  .clt-whatsapp-panel{
    gap:8px;
    padding:5px 5px 5px calc(var(--clt-widget-size) + 9px);
  }

  .clt-whatsapp-copy strong{
    font-size:13px;
  }

  .clt-whatsapp-status{
    gap:5px;
    font-size:11.5px;
  }

  .clt-whatsapp-action{
    width:36px;
    height:36px;
    flex-basis:36px;
  }

  .clt-whatsapp-icon,
  .clt-whatsapp-icon svg{
    width:19px;
    height:19px;
  }

  .clt-whatsapp-hint{
    right:4px;
  }

}

@media(prefers-reduced-motion:reduce){
  .clt-whatsapp-overlay,
  .clt-whatsapp-hint{
    animation:none !important;
    transition:none !important;
  }
}

/* v16: horizontal scan rails where repeated content was making pages too long */
.swipe-controls{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  min-height:44px;
  margin:-12px 0 16px;
}

.swipe-controls::before{
  content:"";
  flex:1 1 auto;
  height:1px;
  background:linear-gradient(90deg,rgba(184,135,70,.34),rgba(231,222,209,.78),transparent);
}

.swipe-button{
  width:44px;
  height:44px;
  border-radius:50%;
  background:rgba(255,250,243,.82);
  color:var(--ink);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}

.swipe-button svg{
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.swipe-track{
  position:relative;
  gap:26px;
  scroll-padding-inline:6px;
  padding:8px 6px 24px;
  margin-inline:-6px;
  scrollbar-color:rgba(184,135,70,.55) rgba(216,200,180,.18);
}

.swipe-track::after{
  content:"";
  flex:0 0 clamp(8px,2vw,24px);
}

.swipe-track > .card,
.swipe-track > .simple-card,
.process-rail.swipe-track > article,
.service-detail-grid.swipe-track > .service-detail-card,
.project-detail-grid.swipe-track > .project-detail-card{
  flex-shrink:0;
}

.diensten-grid.swipe-track > .service-card{
  flex-basis:clamp(292px,30vw,362px);
}

.projects-grid.swipe-track > .project-card{
  flex-basis:clamp(292px,28vw,350px);
}

.value-grid.swipe-track > .simple-card,
.zorg-features-grid.swipe-track > .simple-card,
.process-rail.swipe-track > article{
  flex-basis:clamp(278px,27vw,330px);
}

.service-detail-grid.swipe-track > .service-detail-card,
.project-detail-grid.swipe-track > .project-detail-card{
  flex-basis:clamp(760px,74vw,1000px);
  width:clamp(760px,74vw,1000px);
}

.service-detail-grid.swipe-track > .service-detail-card{
  align-items:stretch;
}

.service-detail-grid.swipe-track > .service-detail-card img,
.project-detail-grid.swipe-track > .project-detail-card img{
  height:100%;
  min-height:280px;
}

.process-rail.swipe-track > article,
.value-grid.swipe-track > .simple-card,
.zorg-features-grid.swipe-track > .simple-card{
  min-height:250px;
}

.swipe-track > .card,
.swipe-track > .simple-card,
.process-rail.swipe-track > article{
  height:auto;
}

.swipe-track > .reveal,
.swipe-track > .reveal.is-visible{
  opacity:1;
  transform:none;
}

.swipe-track > .service-detail-card.reveal img,
.swipe-track > .service-detail-card.reveal.is-visible img{
  opacity:1;
  transform:none;
  clip-path:none;
  animation:none;
}

@media(hover:hover) and (pointer:fine){
  .swipe-track{
    cursor:grab;
  }

  .swipe-track:active{
    cursor:grabbing;
  }
}

@media(max-width:900px){
  .swipe-controls{
    margin:-6px 0 10px;
  }

  .swipe-controls::before{
    min-width:42px;
  }

  .swipe-button{
    width:40px;
    height:40px;
  }

  .swipe-button svg{
    width:19px;
    height:19px;
  }

  .swipe-track{
    gap:16px;
    padding:4px 0 16px;
    margin-inline:0;
    scroll-padding-inline:0;
    scrollbar-width:none;
  }

  .swipe-track::-webkit-scrollbar{
    width:0;
    height:0;
    display:none;
  }

  .diensten-grid.swipe-track > .service-card,
  .projects-grid.swipe-track > .project-card,
  .value-grid.swipe-track > .simple-card,
  .zorg-features-grid.swipe-track > .simple-card,
  .process-rail.swipe-track > article{
    flex-basis:min(84vw,380px);
  }

  .service-detail-grid.swipe-track > .service-detail-card,
  .project-detail-grid.swipe-track > .project-detail-card{
    flex-basis:min(88vw,560px);
    width:min(88vw,560px);
  }

  .service-detail-grid.swipe-track > .service-detail-card img,
  .project-detail-grid.swipe-track > .project-detail-card img{
    height:230px;
    min-height:0;
  }

  .process-rail.swipe-track > article,
  .value-grid.swipe-track > .simple-card,
  .zorg-features-grid.swipe-track > .simple-card{
    min-height:220px;
  }
}

@media(max-width:720px){
  .swipe-controls{
    min-height:38px;
    gap:8px;
  }

  .swipe-controls::before{
    background:linear-gradient(90deg,rgba(184,135,70,.28),rgba(231,222,209,.52));
  }

  .swipe-button{
    width:38px;
    height:38px;
  }

  .swipe-track{
    gap:14px;
    padding-bottom:14px;
  }
}

/* Keep primary homepage LCP candidates visible from the first paint. */
body[data-page="home"] .hero-copy h1,
body[data-page="home"] .hero-image{
  animation:none !important;
  opacity:1 !important;
  transform:none !important;
}
