/* ============================================================
   SHIFT & LIFT — huisstijl uit logo en flyer
   Zwart #060606 · Oranje #F26A00 · Crème #F8E8D8 · Wit #F3F3F2
   ============================================================ */
:root{
  --ink:#060606;
  --ink-2:#101010;
  --ink-3:#1c1c1c;
  --orange:#f26a00;
  --orange-hot:#ff7a18;
  --orange-deep:#c04f00;
  --cream:#f8e8d8;
  --paper:#f3f3f2;
  --white:#ffffff;
  --line:#e0e0dd;
  --muted:#5d5d5a;
  --muted-dark:#a3a3a0;
  --hdr:64px;
  --pad:20px;
  --maxw:1160px;
  --r:4px;
  --display:'Barlow Condensed','Oswald','Arial Narrow','Liberation Sans Narrow','DejaVu Sans Condensed',sans-serif;
  --body:'Barlow', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{background:#060606; -webkit-text-size-adjust:100%; scroll-behavior:smooth; scroll-padding-top:calc(var(--hdr) + 12px)}
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:var(--body); font-size:17px; line-height:1.62;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
img{max-width:100%; height:auto; display:block}
a{color:inherit}
h1,h2,h3,h4{
  font-family:var(--display); font-weight:800; text-transform:uppercase;
  line-height:.94; letter-spacing:.005em; margin:0;
}
p{margin:0 0 1em}
p:last-child{margin-bottom:0}

.wrap{width:100%; max-width:var(--maxw); margin:0 auto; padding:0 var(--pad)}
.section{padding:64px 0}
.section--tight{padding:48px 0}
.dark{background:var(--ink); color:var(--cream)}
.dark p{color:#c9c6c2}

.eyebrow{
  font-family:var(--display); font-weight:700; text-transform:uppercase;
  font-size:19px; letter-spacing:.02em; color:var(--orange); margin:0 0 10px;
}
h2.h-sec{font-size:clamp(31px,7.6vw,50px); max-width:16ch}
.lede{font-size:clamp(16px,4.2vw,19px); max-width:62ch; color:var(--muted); margin-top:16px}
.dark .lede{color:#bfbcb8}

/* ---------- focus + toegankelijkheid ---------- */
:focus-visible{outline:3px solid var(--orange); outline-offset:3px; border-radius:2px}
.dark :focus-visible{outline-color:#ffa257}
.skip{
  position:absolute; left:-9999px; top:0; background:var(--orange); color:#fff;
  padding:12px 18px; z-index:999; font-weight:700;
}
.skip:focus{left:0}
.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ---------- logo lockup ---------- */
.lockup{display:inline-flex; align-items:center; gap:9px; text-decoration:none; line-height:1}
.lockup .mark{
  width:34px; height:34px; flex:none;
  background:url("data:image/png;base64,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") center/contain no-repeat;
}
.lockup .word{
  font-family:var(--display); font-weight:800; font-style:italic;
  font-size:26px; letter-spacing:-.005em; color:var(--cream); text-transform:uppercase;
  white-space:nowrap;
}
.lockup .word i{font-style:italic; color:var(--orange)}

/* ---------- header ---------- */
.header{
  position:fixed; inset:0 0 auto 0; height:var(--hdr); z-index:80;
  background:#060606; backdrop-filter:saturate(140%) blur(10px);
  border-bottom:1px solid #232323;
}
.header .bar{display:flex; align-items:center; justify-content:space-between; height:var(--hdr); gap:14px}
.nav{display:none}
.nav a{
  text-decoration:none; color:#d6d3cf; font-weight:600; font-size:15.5px;
  padding:8px 2px; border-bottom:2px solid transparent; transition:color .15s, border-color .15s;
}
.nav a:hover{color:#fff; border-bottom-color:var(--orange)}
.header .hdr-cta{display:none}

.burger{
  appearance:none; background:transparent; border:1px solid #3a3a3a; border-radius:var(--r);
  width:44px; height:40px; display:grid; place-items:center; cursor:pointer; padding:0;
}
.burger span{display:block; width:20px; height:2px; background:var(--cream); position:relative}
.burger span::before,.burger span::after{content:""; position:absolute; left:0; width:20px; height:2px; background:var(--cream); transition:transform .2s}
.burger span::before{top:-6px}
.burger span::after{top:6px}
.burger[aria-expanded="true"] span{background:transparent}
.burger[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg)}
.burger[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg)}

.mobmenu{
  position:fixed; top:var(--hdr); left:0; right:0; z-index:79;
  background:var(--ink-2); border-bottom:1px solid #262626;
  display:none; padding:8px var(--pad) 20px;
}
.mobmenu.open{display:block}
.mobmenu a{
  display:block; text-decoration:none; color:var(--cream); font-family:var(--display);
  font-weight:700; text-transform:uppercase; font-size:24px; letter-spacing:.01em;
  padding:13px 0; border-bottom:1px solid #262626;
}
.mobmenu a:last-of-type{border-bottom:0}

/* ---------- knoppen ---------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  font-family:var(--display); font-weight:800; text-transform:uppercase;
  text-decoration:none; cursor:pointer; border:0; border-radius:var(--r);
  letter-spacing:.015em; transition:transform .12s ease, box-shadow .18s ease, background .18s ease;
}
.btn:active{transform:translateY(1px)}
.btn-wa{
  background:linear-gradient(180deg,var(--orange-hot),var(--orange) 55%,var(--orange-deep));
  color:#fff; font-size:20px; padding:15px 26px;
  box-shadow:0 6px 0 rgba(0,0,0,.28), 0 10px 26px rgba(242,106,0,.28);
}
.btn-wa:hover{box-shadow:0 6px 0 rgba(0,0,0,.28), 0 14px 34px rgba(242,106,0,.45)}
.btn-ghost{
  background:transparent; color:var(--cream); border:2px solid #454545;
  font-size:18px; padding:12px 22px;
}
.btn-ghost:hover{border-color:var(--orange); color:#fff}
.btn-dark{background:var(--ink); color:#fff; font-size:19px; padding:14px 24px}
.btn-dark:hover{background:#1f1f1f}
.wa-ico{width:22px; height:22px; flex:none}

/* ============================================================
   HERO — de prijsindicatie-knop is hier het belangrijkste element
   ============================================================ */
.hero{
  position:relative; background:var(--ink); color:var(--cream);
  min-height:100vh; min-height:100svh;
  display:grid; align-content:center;
  padding:calc(var(--hdr) + 26px) 0 40px; overflow:hidden;
}
/* snelheidsstrepen uit de flyer */
.streaks{position:absolute; inset:0; pointer-events:none; opacity:.55}
.streaks i{
  position:absolute; height:2px; left:-30%;
  background:linear-gradient(90deg,transparent,rgba(242,106,0,.85),transparent);
  transform:translateX(-100%);
  animation:streak 1.1s cubic-bezier(.2,.7,.2,1) forwards;
}
.streaks i:nth-child(1){top:22%; width:60%; animation-delay:.15s}
.streaks i:nth-child(2){top:41%; width:85%; animation-delay:.28s; opacity:.5}
.streaks i:nth-child(3){top:63%; width:45%; animation-delay:.4s; opacity:.35}
.streaks i:nth-child(4){top:80%; width:70%; animation-delay:.5s; opacity:.25}
@keyframes streak{to{transform:translateX(160%)}}
.hero::after{
  content:""; position:absolute; right:-25%; top:-30%; width:80%; height:120%;
  background:radial-gradient(circle at center, rgba(242,106,0,.20), transparent 62%);
  pointer-events:none;
}
.hero .wrap{position:relative; z-index:2}

.trustline{
  display:inline-flex; align-items:center; gap:9px; text-decoration:none;
  background:rgba(255,255,255,.06); border:1px solid #2e2e2e; border-radius:100px;
  padding:6px 14px 6px 10px; font-size:14px; font-weight:600; color:#e6e2de; margin-bottom:20px;
}
.trustline:hover{border-color:var(--orange)}
.stars{color:var(--orange); letter-spacing:1px; font-size:13px}

h1.hero-h{
  font-size:clamp(42px,12.5vw,86px); color:#fff; letter-spacing:-.008em;
}
h1.hero-h em{font-style:normal; color:var(--orange); display:block}

/* ---------- pagina-hero voor diensten en steden ---------- */
.stadshero{
  position:relative;
  background:var(--ink);
  color:var(--cream);
  padding:calc(var(--hdr) + 24px) 0 56px;
  overflow:hidden;
}
.stadshero::after{
  content:""; position:absolute; right:-20%; top:-35%; width:75%; height:130%;
  background:radial-gradient(circle at center, rgba(242,106,0,.18), transparent 62%);
  pointer-events:none;
}
.stadshero .wrap{position:relative; z-index:2}
.stadshero .kruimels{
  display:flex; flex-wrap:wrap; align-items:center; gap:7px;
  margin:0 0 24px; font-size:14px; line-height:1.4; color:#aaa7a3;
}
.stadshero .kruimels a{color:#d6d3cf; text-decoration:none; border-bottom:1px solid #4a4744}
.stadshero .stad-h1{
  color:#fff; max-width:18ch;
}
.stadshero .hero-sub{
  color:#c4c1bd; max-width:62ch; margin-top:18px;
}
.stadshero .cta-hero{margin-top:26px}
.stadshero .hero-note{color:#aaa7a3}
.stadshero .hero-note a{color:#d6d3cf}
.hero-sub{
  font-size:clamp(16.5px,4.4vw,20px); color:#c4c1bd; margin:18px 0 0; max-width:40ch;
}

/* de knop */
.cta-block{margin-top:30px}
.cta-kicker{
  font-family:var(--display); font-weight:700; text-transform:uppercase;
  font-size:17px; color:#a09c98; margin:0 0 10px; letter-spacing:.02em;
}
.cta-hero{
  position:relative; display:flex; width:100%; max-width:480px;
  align-items:center; justify-content:center; gap:14px;
  text-decoration:none; border-radius:6px; padding:22px 24px;
  background:linear-gradient(180deg,var(--orange-hot) 0%,var(--orange) 40%,var(--orange-deep) 100%);
  color:#fff; box-shadow:0 8px 0 rgba(0,0,0,.35), 0 18px 40px rgba(242,106,0,.34);
  transition:transform .14s ease, box-shadow .2s ease;
  overflow:hidden; isolation:isolate;
}
.cta-hero .txt{display:flex; flex-direction:column; align-items:flex-start; line-height:1}
.cta-hero .big{
  font-family:var(--display); font-weight:800; text-transform:uppercase;
  font-size:clamp(26px,7vw,34px); letter-spacing:.01em;
}
.cta-hero .small{font-size:14px; font-weight:600; line-height:1.3; margin-top:6px; text-transform:none; font-family:var(--body); text-shadow:0 1px 2px rgba(0,0,0,.4)}
.cta-hero .wa-ico{width:38px; height:38px}
/* zachte "adem" zodat de knop opvalt zonder schreeuwerig te zijn */
.cta-hero::before{
  content:""; position:absolute; inset:-3px; border-radius:8px; z-index:-1;
  background:var(--orange); filter:blur(14px); opacity:.35;
  animation:breathe 3.4s ease-in-out infinite;
}
@keyframes breathe{0%,100%{opacity:.28; transform:scale(.99)} 50%{opacity:.6; transform:scale(1.02)}}
/* glans die één keer over de knop loopt bij hover */
.cta-hero::after{
  content:""; position:absolute; top:0; bottom:0; width:45%; left:-60%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.32),transparent);
  transform:skewX(-18deg); transition:left .55s ease;
}
.cta-hero:hover{transform:translateY(-2px); box-shadow:0 10px 0 rgba(0,0,0,.35), 0 22px 50px rgba(242,106,0,.5)}
.cta-hero:hover::after{left:120%}
.cta-hero:active{transform:translateY(3px); box-shadow:0 4px 0 rgba(0,0,0,.35), 0 10px 24px rgba(242,106,0,.3)}

.cta-call{
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  width:100%; max-width:480px; margin-top:12px;
  background:transparent; color:var(--cream); text-decoration:none;
  font-weight:700; font-size:15px; letter-spacing:.01em;
  border:1.5px solid #4a4a4a; border-radius:6px; padding:12px 18px;
  transition:border-color .15s ease, color .15s ease, background .15s ease;
}
.cta-call svg{flex:none; color:var(--orange)}
.cta-call:hover{border-color:var(--orange); color:#fff; background:rgba(242,106,0,.08)}

.cta-second{
  display:inline-flex; align-items:center; gap:8px; margin-top:18px;
  color:#b8b4b0; text-decoration:none; font-weight:600; font-size:16px;
  border-bottom:1px solid #3d3d3d; padding-bottom:3px;
}
.cta-second:hover{color:#fff; border-bottom-color:var(--orange)}
.hero-note{margin-top:16px; font-size:14.5px; color:#8d8985}
.hero-note a{color:#c9c6c2}

/* ---------- USP-band (oranje band uit de flyer) ---------- */
.usp{
  background:var(--orange); color:#180a00; position:relative;
  clip-path:polygon(0 34px, 100% 0, 100% 100%, 0 100%);
  margin-top:-34px; padding:56px 0 34px;
}
.usp-grid{display:grid; gap:22px}
.usp-item{display:flex; gap:12px; align-items:flex-start}
.usp-item svg{flex:none; margin-top:3px}
.usp-item h3{font-size:22px; letter-spacing:.01em; color:#160800}
.usp-item p{font-size:15.5px; line-height:1.45; margin:4px 0 0; color:#3a1a00; font-weight:500}

/* ---------- diensten ---------- */
.svc{display:grid; gap:0; margin-top:34px; border-top:1px solid var(--line)}
.svc-item{
  display:flex; gap:16px; align-items:flex-start;
  padding:22px 4px; border-bottom:1px solid var(--line);
  border-left:3px solid transparent; padding-left:14px;
  transition:border-left-color .18s ease, background .18s ease;
}
.svc-item:hover{border-left-color:var(--orange); background:var(--white)}
.svc-ico{
  flex:none; width:46px; height:46px; display:grid; place-items:center;
  background:var(--ink); border-radius:var(--r);
}
.svc-item h3{font-size:24px; margin-bottom:5px}
.svc-item p{font-size:15.5px; line-height:1.5; color:var(--muted); margin:0}
.svc-more{
  margin-top:28px; padding:22px; background:var(--ink); color:var(--cream);
  border-radius:var(--r); display:grid; gap:14px;
}
.svc-more h3{font-size:24px; color:#fff}
.svc-more a{
  color:var(--orange); font-weight:700; text-decoration:none;
  border-bottom:2px solid var(--orange); align-self:start;
}
.svc-more a:hover{color:#fff; border-bottom-color:#fff}

/* ---------- werkwijze ---------- */
.steps{display:grid; gap:0; margin-top:34px; counter-reset:s}
.step{padding:26px 0; border-top:2px solid var(--ink)}
.step:last-child{border-bottom:2px solid var(--ink)}
.step-n{
  font-family:var(--display); font-weight:800; font-size:44px; line-height:1;
  color:var(--orange-deep); display:block; margin-bottom:8px;
}
.step h3{font-size:26px; margin-bottom:8px}
.step p{color:var(--muted); font-size:16px; margin:0; max-width:52ch}

/* ---------- prijzen ---------- */
.price-card{
  background:var(--ink); color:var(--cream); border-radius:var(--r);
  padding:34px 24px; position:relative; overflow:hidden;
}
.price-card::before{
  content:""; position:absolute; right:-40px; top:-40px; width:180px; height:180px;
  background:radial-gradient(circle,rgba(242,106,0,.28),transparent 66%);
}
.price-card h2{position:relative; font-size:clamp(28px,7vw,44px); color:#fff; max-width:15ch}
.price-card p{position:relative; margin-top:16px; max-width:56ch}
.price-points{list-style:none; padding:0; margin:24px 0 0; display:grid; gap:12px; position:relative}
.price-points li{display:flex; gap:11px; align-items:flex-start; font-weight:600; color:#e8e5e1; font-size:16px}
.price-points svg{flex:none; margin-top:4px}

/* ---------- waarom ---------- */
.why{display:grid; gap:0; margin-top:32px}
.why-item{padding:20px 0 20px 18px; border-left:3px solid var(--orange)}
.why-item + .why-item{margin-top:6px}
.why-item h3{font-size:23px; margin-bottom:6px}
.why-item p{color:var(--muted); font-size:15.5px; margin:0; max-width:52ch}

/* ---------- reviews ---------- */
.rev-head{display:flex; flex-wrap:wrap; gap:18px; align-items:flex-end; justify-content:space-between}
.rev-score{display:flex; align-items:center; gap:12px; background:var(--white); border:1px solid var(--line); border-radius:var(--r); padding:12px 16px}
.rev-score .num{font-family:var(--display); font-weight:800; font-size:38px; line-height:1}
.rev-score .meta{font-size:13.5px; color:var(--muted); line-height:1.35}
.rev-rail{
  display:grid; grid-auto-flow:column; grid-auto-columns:82%; gap:14px;
  overflow-x:auto; scroll-snap-type:x mandatory; margin-top:26px;
  padding-bottom:12px; scrollbar-width:thin;
}
.rev{
  scroll-snap-align:start; background:var(--white); border:1px solid var(--line);
  border-radius:var(--r); padding:20px; display:flex; flex-direction:column;
}
.rev .stars{font-size:16px; margin-bottom:10px}
.rev blockquote{margin:0 0 14px; font-size:16.5px; line-height:1.55}
.rev cite{font-style:normal; font-size:13.5px; color:var(--muted); margin-top:auto}
.rev-link{display:inline-flex; align-items:center; gap:7px; margin-top:20px; font-weight:700; color:var(--ink); text-decoration:none; border-bottom:2px solid var(--orange); padding-bottom:2px}
.rev-link:hover{color:var(--orange)}

/* ---------- FAQ ---------- */
.faq{margin-top:30px; border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{
  cursor:pointer; list-style:none; padding:20px 44px 20px 0; position:relative;
  font-family:var(--display); font-weight:700; text-transform:uppercase;
  font-size:22px; line-height:1.12;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:""; position:absolute; right:8px; top:26px; width:14px; height:14px;
  border-right:3px solid var(--orange); border-bottom:3px solid var(--orange);
  transform:rotate(45deg); transition:transform .2s ease;
}
.faq details[open] summary::after{transform:rotate(-135deg); top:30px}
.faq .ans{padding:0 0 22px; color:var(--muted); font-size:16px; max-width:64ch}

/* ---------- grote CTA ---------- */
.bigcta{
  background:var(--ink); color:#fff; position:relative; overflow:hidden;
  padding:70px 0; text-align:left;
}
.bigcta::before{
  content:""; position:absolute; inset:0;
  background:radial-gradient(ellipse at 15% 0%, rgba(242,106,0,.32), transparent 58%);
}
.bigcta .wrap{position:relative}
.bigcta h2{font-size:clamp(32px,8.5vw,58px); color:#fff; max-width:14ch}
.bigcta p{margin-top:16px; color:#c4c1bd; max-width:50ch; font-size:17px}
.bigcta .cta-hero{margin-top:26px}
.bigcta .alt{margin-top:18px; font-size:15.5px; color:#9c9894}
.bigcta .alt a{color:var(--cream); font-weight:600}

/* ---------- footer ---------- */
.footer{background:#000; color:#9a9793; padding:52px 0 0; font-size:15px}
.footer .cols{display:grid; gap:34px}
.footer h4{font-size:19px; color:var(--cream); margin-bottom:12px; letter-spacing:.02em}
.footer a{color:#c2bfbb; text-decoration:none}
.footer a:hover{color:var(--orange)}
.footer ul{list-style:none; padding:0; margin:0; display:grid; gap:9px}
.f-tag{margin-top:14px; max-width:34ch; color:#8b8884}
.legal{border-top:1px solid #1c1c1c; margin-top:40px; padding:20px 0 34px; font-size:13.5px; color:#8a8783}
.legal .row{display:flex; flex-wrap:wrap; gap:8px 18px; justify-content:space-between}
.todo{color:#807d79; font-style:italic}
.legal details{margin-top:14px}
.legal summary{cursor:pointer; color:#c2bfbb; font-weight:600}
.legal details p{margin-top:10px; max-width:70ch; line-height:1.6}

/* ---------- vaste mobiele balk ---------- */
.dock{
  position:fixed; left:0; right:0; bottom:0; z-index:70;
  background:#060606; backdrop-filter:blur(10px);
  border-top:1px solid #242424;
  padding:10px var(--pad) calc(10px + env(safe-area-inset-bottom));
  display:flex; gap:10px; align-items:center;
  transform:translateY(115%); transition:transform .28s cubic-bezier(.2,.8,.2,1);
}
.dock.show{transform:translateY(0)}
.dock .btn-wa{flex:1; font-size:19px; padding:14px 16px; box-shadow:0 4px 0 rgba(0,0,0,.3)}
/* ---------- belknop met label + vangnet ---------- */
.dock .call{
  flex:none; width:66px; min-height:52px; display:flex; flex-direction:column;
  align-items:center; justify-content:center; gap:2px;
  border:1px solid #3a3a3a; border-radius:var(--r); color:var(--cream);
  text-decoration:none; padding:6px 4px;
}
.dock .call b{
  font-family:var(--display); font-weight:700; text-transform:uppercase;
  font-size:13px; letter-spacing:.02em; line-height:1;
}
.dock .call:hover{border-color:var(--orange); color:var(--orange)}
.dock .btn-wa{font-size:18px; padding:14px 12px}

.beltoast{
  position:fixed; left:12px; right:12px; z-index:90;
  bottom:calc(84px + env(safe-area-inset-bottom));
  background:var(--ink-2); border:1px solid #333; border-radius:6px;
  box-shadow:0 12px 40px rgba(0,0,0,.5);
  padding:14px 14px 14px 16px; display:flex; align-items:center; gap:12px;
  color:var(--cream); font-size:15.5px;
}
.beltoast[hidden]{display:none}
.beltoast .nr{flex:1; line-height:1.35}
.beltoast .nr a{color:#fff; font-weight:700; text-decoration:none; border-bottom:2px solid var(--orange); white-space:nowrap}
.beltoast .nr small{display:block; color:#8d8985; font-size:13px}
.beltoast button{
  font-family:var(--display); font-weight:700; text-transform:uppercase; font-size:15px;
  background:var(--orange); color:#fff; border:0; border-radius:var(--r);
  padding:9px 13px; cursor:pointer; flex:none;
}
.beltoast button.dicht{background:transparent; color:#9a9793; font-size:22px; padding:4px 8px; line-height:1}
@media (min-width:900px){
  .beltoast{left:auto; right:20px; bottom:20px; max-width:400px}
}
@media (max-width:899px){ .footer .legal{padding-bottom:96px} }

/* ---------- responsive ---------- */
@media (min-width:640px){
  :root{--pad:28px}
  .usp-grid{grid-template-columns:1fr 1fr; gap:26px 30px}
  .rev-rail{grid-auto-columns:52%}
  .price-card{padding:44px 40px}
}
@media (min-width:900px){
  :root{--hdr:76px; --pad:36px}
  body{font-size:18px}
  .section{padding:96px 0}
  .section--tight{padding:72px 0}
  .nav{display:flex; gap:26px; align-items:center}
  .header .hdr-cta{display:inline-flex}
  .burger{display:none}
  .mobmenu{display:none !important}
  .dock{display:none}
  .lockup .mark{width:40px; height:40px}
  .lockup .word{font-size:30px}
  .usp{clip-path:polygon(0 52px, 100% 0, 100% 100%, 0 100%); margin-top:-52px; padding:78px 0 46px}
  .usp-grid{grid-template-columns:repeat(4,1fr)}
  .hero{min-height:88vh; min-height:88svh}
  .hero-grid{display:grid; grid-template-columns:1.15fr .85fr; gap:60px; align-items:center}
  .svc{grid-template-columns:1fr 1fr; column-gap:36px}
  .steps{grid-template-columns:repeat(3,1fr); column-gap:34px}
  .step{border-bottom:2px solid var(--ink)}
  .why{grid-template-columns:1fr 1fr; column-gap:40px; row-gap:4px}
  .why-item + .why-item{margin-top:0}
  .rev-rail{grid-auto-flow:row; grid-template-columns:repeat(2,1fr); overflow:visible}
  .footer .cols{grid-template-columns:1.3fr 1fr 1fr 1fr 1fr}
  .bigcta{padding:104px 0}
  .bigcta .cta-hero{max-width:520px}
}
@media (min-width:1100px){
  .rev-rail{grid-template-columns:repeat(4,1fr)}
}

@media (max-width:899px){
  .stadshero{padding-top:calc(var(--hdr) + 22px); padding-bottom:44px}
  .stadshero .kruimels{margin-bottom:20px}
  .stadshero .stad-h1{font-size:clamp(40px,11.5vw,62px)}
}

/* korte schermen: hero compacter zodat de knop altijd zichtbaar blijft */
@media (max-height:700px) and (max-width:899px){
  .hero{padding-top:calc(var(--hdr) + 14px); padding-bottom:26px}
  h1.hero-h{font-size:clamp(34px,9.4vw,48px)}
  .hero-sub{margin-top:13px; font-size:15.5px; line-height:1.45}
  .cta-hero{padding:18px 20px}
  .cta-block{margin-top:22px}
  .trustline{margin-bottom:14px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none !important; transition:none !important}
  .streaks{display:none}
}

/* ---------- werkgebied: provincie-overzicht ---------- */
.prov-grid{
  display:grid; grid-template-columns:1fr; gap:22px; margin-top:26px;
}
@media (min-width:700px){ .prov-grid{grid-template-columns:1fr 1fr} }
@media (min-width:1000px){ .prov-grid{grid-template-columns:1fr 1fr 1fr} }
.prov-blok h3{
  font-family:var(--display,'Barlow Condensed','Arial Narrow',sans-serif);
  font-weight:800; text-transform:uppercase; font-size:18px; letter-spacing:.01em;
  color:var(--ink); margin:0 0 10px; padding-bottom:8px; border-bottom:2px solid var(--orange);
}
.prov-lijst{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:7px}
.prov-lijst li{font-size:15px; color:var(--muted)}
.prov-lijst li strong{color:var(--ink); font-weight:600}
.prov-lijst li a{color:var(--ink); text-decoration:none; display:inline-flex; align-items:center; gap:6px}
.prov-lijst li a::after{content:'→'; color:var(--orange); font-weight:700}
.prov-lijst li a:hover strong{color:var(--orange)}

/* dienst-titels die naar een eigen pagina linken */
.svc-item h3 a{color:inherit; text-decoration:none; border-bottom:2px solid transparent}
.svc-item h3 a:hover{border-bottom-color:var(--orange)}
