@font-face{font-family:Poppins;font-weight:600;font-display:swap;src:url(../fonts/poppins-600.woff2) format("woff2")}
@font-face{font-family:Poppins;font-weight:800;font-display:swap;src:url(../fonts/poppins-800.woff2) format("woff2")}
/* PF-KLUS-900X-20261012 — tegelkleuren uit het PandFix-logo als ontwerpelement */
:root{--blauw:#0E5F8F;--blauw-d:#0A4A70;--blauw-l:#E8F1F7;--oranje:#E85D24;--oranje-d:#C64A1B;--oranje-dd:#A93D14;--oranje-l:#FDF0EA;--ink:#16202B;--tekst:#2E3A48;--grijs:#566273;--lijn:#DCE3EA;--bg:#fff;--bg2:#F5F7FA;--r:14px;--max:1160px;
 --t-b:#0E5F8F;--t-o:#E8502E;--t-g:#F5A623;--t-t:#13A89A;--kop:Poppins,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:88px}
@media (max-width:980px){html{scroll-padding-bottom:84px}}
body{margin:0;font:400 1.0625rem/1.7 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--tekst);background:var(--bg);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--blauw)}
a:hover{color:var(--blauw-d)}
:focus-visible{outline:3px solid var(--oranje);outline-offset:3px;border-radius:4px}
main:focus{outline:0}
h1,h2,h3{font-family:var(--kop);color:var(--ink);line-height:1.2;margin:0 0 .6em;font-weight:800;letter-spacing:-.01em}
h1{font-size:clamp(1.85rem,5.2vw,3rem);letter-spacing:-.025em}
h2{font-size:clamp(1.45rem,3.6vw,2.1rem);letter-spacing:-.02em}
h3{font-size:1.15rem;font-weight:600}
p{margin:0 0 1em}
ul{padding-left:1.2em}
figure{margin:0}
.wrap{max-width:var(--max);margin:0 auto;padding:0 16px}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:10px 14px;border-radius:8px;z-index:100}
.skip:focus{left:8px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.demo-balk{background:var(--ink);color:#fff;font-size:.8rem;text-align:center;padding:6px 16px}
/* header */
.kop{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--lijn)}
.kop .wrap{display:flex;align-items:center;gap:16px;min-height:68px}
.merk{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);margin-right:auto;font-family:var(--kop)}
.merk svg{width:44px;height:44px;flex:none}
.merk b{font-weight:800;font-size:1.2rem;line-height:1.1;display:block}
.merk b span{color:#0E5F8F}
.merk small{display:block;font-size:.72rem;color:var(--grijs);font-weight:600;line-height:1.2}
.nav{display:flex;gap:4px;align-items:center}
.nav a,.menu summary,.knop,.label,.oog,.chip,.faq summary,.pijl-link{font-family:var(--kop)}
.nav a{text-decoration:none;color:var(--ink);font-weight:600;font-size:.95rem;padding:8px 10px;border-radius:8px}
.nav a:hover,.nav a[aria-current=page]{background:var(--blauw-l);color:var(--blauw)}
.kop-bel{display:none;align-items:center;gap:14px}
.kop-tel{display:inline-flex;align-items:center;gap:6px;font-family:var(--kop);font-weight:600;color:var(--ink);text-decoration:none;font-size:.95rem;white-space:nowrap}
.kop-tel svg{width:18px;height:18px;color:var(--blauw)}
.kop-tel:hover{color:var(--blauw)}
.menu{display:none}
@media (max-width:980px){
 .nav{display:none}
 .menu{display:block;position:static}
 .menu summary{list-style:none;cursor:pointer;font-weight:600;color:var(--ink);border:1px solid var(--lijn);border-radius:10px;padding:8px 12px;display:flex;gap:8px;align-items:center;min-height:44px}
 .menu summary::-webkit-details-marker{display:none}
 .menu summary svg{width:20px;height:20px}
 .menu[open] .menu-paneel{display:block}
 .menu-paneel{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--lijn);box-shadow:0 12px 24px rgba(22,32,43,.12);padding:8px 16px 16px;max-height:calc(100vh - 80px);overflow-y:auto}
 .menu-paneel a{display:block;padding:12px 4px;border-bottom:1px solid var(--lijn);text-decoration:none;color:var(--ink);font-weight:600;font-family:var(--kop)}
 .menu-paneel .knop{margin-top:14px;border:0;display:flex;color:#fff}
 .menu-paneel .knop:hover{color:#fff;background:var(--oranje-dd)}
}
@media (min-width:981px){.kop-bel{display:inline-flex}}
@media (min-width:981px) and (max-width:1120px){.kop-tel{display:none}}
/* knoppen */
.knop{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 20px;border-radius:12px;font-weight:600;font-size:1rem;text-decoration:none;border:2px solid transparent;line-height:1.2;text-align:center;transition:background .15s,color .15s,border-color .15s,transform .15s,box-shadow .15s}
.knop:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(22,32,43,.12)}
.knop svg{width:20px;height:20px;flex:none}
.knop-oranje{background:var(--oranje-d);color:#fff}
.knop-oranje:hover{background:var(--oranje-dd);color:#fff}
.knop-blauw{background:var(--blauw);color:#fff}
.knop-blauw:hover{background:var(--blauw-d);color:#fff}
.knop-rand{border-color:var(--blauw);color:var(--blauw);background:#fff}
.knop-rand:hover{background:var(--blauw-l)}
.knop-wa{background:#1B7F45;color:#fff}
.knop-wa:hover{background:#156536;color:#fff}
.knoppen{display:flex;flex-wrap:wrap;gap:10px}
.pijl-link{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--blauw);text-decoration:none}
.pijl-link:hover{text-decoration:underline}
.pijl{width:18px;height:18px;flex:none;transition:transform .2s ease}
a:hover .pijl,.kaart:hover .pijl{transform:translateX(3px)}
/* eyebrow met 2x2-tegelblokje (zoals het logo) */
.oog{display:flex;align-items:center;gap:10px;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--grijs);margin-bottom:10px}
.oog::before{content:"";width:8px;height:8px;border-radius:2px;background:var(--t-b);box-shadow:11px 0 0 var(--t-o),0 11px 0 var(--t-g),11px 11px 0 var(--t-t);margin:0 14px 11px 0;flex:none}
/* hero */
.hero{background:linear-gradient(180deg,var(--blauw-l),#fff);padding:28px 0 40px}
.hero-grid{display:grid;gap:18px}
.hero h1{max-width:14ch;margin-bottom:0}
.hero p.lead{font-size:1.1rem;max-width:34em;margin-bottom:18px}
.lead{color:var(--grijs)}
.hero-foto{border-radius:20px;overflow:hidden;box-shadow:0 18px 40px rgba(14,95,143,.18);aspect-ratio:16/9;max-height:220px}
.hero-foto img{width:100%;height:100%;object-fit:cover}
.hero-noot{font-size:.9rem;color:var(--grijs);margin:12px 0 0;max-width:34em}
.alleen-breed{display:none}
.label{display:inline-block;background:var(--oranje-l);color:var(--oranje-dd);font-weight:600;font-size:.85rem;padding:4px 12px;border-radius:999px;margin-bottom:14px}
.vinkjes{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-wrap:wrap;gap:8px 18px}
.vinkjes li{display:flex;gap:8px;align-items:center;font-weight:600;color:var(--ink);font-size:.95rem;font-family:var(--kop)}
.vinkjes a{color:var(--ink)}
.vinkjes svg{width:20px;height:20px;color:var(--oranje);flex:none}
@media (min-width:880px){
 .hero{padding:56px 0 64px}
 .hero-grid{grid-template-columns:1.1fr 1fr;grid-template-areas:"kop foto" "rest foto";column-gap:40px;row-gap:20px}
 .hero-kop{grid-area:kop;align-self:end}.hero-rest{grid-area:rest;align-self:start}
 .hero-foto{grid-area:foto;align-self:center;aspect-ratio:4/3;max-height:none}
 .alleen-breed{display:inline}
}
/* snelkeuze */
.snelkeuze{padding:6px 0 10px}
.snel-titel{font-size:1rem;font-weight:600;color:var(--grijs);margin-bottom:10px;letter-spacing:0}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border-radius:999px;border:1.5px solid var(--lijn);background:#fff;color:var(--ink);text-decoration:none;font-weight:600;font-size:.93rem;transition:border-color .15s,background .15s,transform .15s}
.chip:hover{border-color:var(--oranje-d);background:var(--oranje-l);color:var(--ink);transform:translateY(-1px)}
.chip-licht{min-height:40px}
/* secties */
.sectie{padding:52px 0}
.sectie-grijs{background:var(--bg2)}
.intro{max-width:44em;margin-bottom:28px}
.intro p{color:var(--grijs);font-size:1.05rem}
.kaarten{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}
.kaart{background:#fff;border:1px solid var(--lijn);border-top:3px solid var(--t-b);border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--tekst);display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}
.kaart.k-o{border-top-color:var(--t-o)}.kaart.k-g{border-top-color:var(--t-g)}.kaart.k-t{border-top-color:var(--t-t)}
.kaart:hover{box-shadow:0 12px 28px rgba(22,32,43,.12);transform:translateY(-2px);color:var(--tekst)}
.kaart img{aspect-ratio:3/2;object-fit:cover;width:100%}
.kaart div{padding:14px 16px 18px}
.kaart h3{margin:0 0 4px;font-size:1.05rem}
.kaart p{margin:0;font-size:.92rem;color:var(--grijs);line-height:1.5}
.kaart-alle{background:var(--ink);border-color:var(--ink);border-top-color:var(--t-g);color:#E6ECF2;justify-content:center}
.kaart-alle h3{color:#fff;font-size:1.25rem}
.kaart-alle p{color:#C9D3DE}
.kaart-alle .pijl-link{color:#fff;margin-top:12px}
.kaart-alle:hover{color:#E6ECF2}
.tegeltjes{display:grid;grid-template-columns:14px 14px;gap:4px;margin-bottom:14px}
.tegeltjes i{width:14px;height:14px;border-radius:4px;background:var(--t-b)}
.tegeltjes i:nth-child(2){background:var(--t-o)}.tegeltjes i:nth-child(3){background:var(--t-g)}.tegeltjes i:nth-child(4){background:var(--t-t)}
@media (max-width:559px){
 .kaarten{gap:10px}
 .kaart{display:grid;grid-template-columns:96px 1fr;align-items:center;border-top-width:1px;border-left:4px solid var(--t-b)}
 .kaart.k-o{border-left-color:var(--t-o)}.kaart.k-g{border-left-color:var(--t-g)}.kaart.k-t{border-left-color:var(--t-t)}
 .kaart img{width:96px;height:96px;aspect-ratio:1;align-self:stretch;height:100%;min-height:96px}
 .kaart div{padding:10px 14px}
 .kaart h3{font-size:1rem}
 .kaart p{font-size:.86rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 .kaart-alle{display:block;border-left-color:var(--t-g)}
 .kaart-alle div{padding:16px}
 .kaart-alle .tegeltjes{display:none}
}
.stappen{list-style:none;padding:0;margin:0;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));counter-reset:stap}
.stappen li{background:#fff;border:1px solid var(--lijn);border-radius:var(--r);padding:22px 20px;counter-increment:stap;position:relative}
.stappen li::before{content:counter(stap);display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:var(--t-b);color:#fff;font-family:var(--kop);font-weight:800;font-size:1.2rem;margin-bottom:12px}
.stappen li:nth-child(4n+2)::before{background:var(--t-o);color:#fff}
.stappen li:nth-child(4n+3)::before{background:var(--t-g);color:var(--ink)}
.stappen li:nth-child(4n+4)::before{background:var(--t-t);color:var(--ink)}
.stappen h3{margin-bottom:6px}
.stappen p{margin:0;color:var(--grijs);font-size:.95rem}
.twee{display:grid;gap:28px;align-items:start}
@media (min-width:880px){.twee{grid-template-columns:1fr 1fr;gap:40px}.twee-breed{grid-template-columns:1.4fr 1fr}}
.foto{border-radius:var(--r);overflow:hidden;position:relative}
.foto img{width:100%;object-fit:cover}
.kop-foto img{aspect-ratio:4/3}
.fotolabel{position:absolute;left:10px;bottom:10px;background:rgba(22,32,43,.78);color:#fff;font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px;line-height:1.5}
.eigen-werk{margin-top:18px}
.eigen-werk img{aspect-ratio:4/5;max-height:520px;object-position:center 55%}
.eigen-werk .fotolabel{background:var(--t-t);color:var(--ink)}
/* twee eigen werkfoto's naast elkaar */
.duo{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.duo .foto img{aspect-ratio:3/4;max-height:520px;object-position:center 60%}
.duo figcaption{position:absolute;left:8px;bottom:8px;right:8px;background:rgba(22,32,43,.78);color:#fff;font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px;width:max-content;max-width:calc(100% - 16px)}
/* galerij */
.galerij{display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}
.galerij figure{border-radius:var(--r);overflow:hidden;background:var(--bg2)}
.galerij img{aspect-ratio:4/3;object-fit:cover;width:100%}
.galerij figcaption{font-size:.85rem;color:var(--grijs);padding:8px 12px}
@media (max-width:759px){
 .galerij{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px;margin:0 -16px;padding-left:16px;padding-right:16px;scroll-padding:16px}
 .galerij figure{flex:0 0 78%;scroll-snap-align:start}
}
/* compacte lijst met miniatuur */
.rel-lijst{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.rel-lijst a{display:grid;grid-template-columns:64px 1fr 20px;gap:14px;align-items:center;padding:8px 12px 8px 8px;border:1px solid var(--lijn);border-radius:12px;background:#fff;text-decoration:none;color:var(--tekst);transition:border-color .15s,box-shadow .15s}
.rel-lijst a:hover{border-color:var(--blauw);box-shadow:0 6px 16px rgba(22,32,43,.08)}
.rel-lijst img{width:64px;height:64px;object-fit:cover;border-radius:8px}
.rel-lijst b{display:block;font-family:var(--kop);font-weight:600;color:var(--ink);font-size:.98rem;line-height:1.3}
.rel-lijst small{display:block;color:var(--grijs);font-size:.85rem;line-height:1.4;margin-top:2px}
.rel-lijst .pijl{color:var(--blauw)}
.pop-lijst{list-style:none;padding:0;margin:0;display:grid;gap:2px}
.pop-lijst li{border-bottom:1px solid var(--lijn)}
.pop-lijst .pijl-link{display:flex;justify-content:space-between;padding:12px 2px;min-height:44px}
@media (min-width:760px){.pop-breed{grid-template-columns:repeat(3,1fr);column-gap:28px}}
.lijst{list-style:none;padding:0;margin:0 0 1em}
.lijst li{position:relative;padding:8px 0 8px 32px;border-bottom:1px solid var(--lijn)}
.lijst li:last-child{border-bottom:0}
.lijst li::before{content:"";position:absolute;left:0;top:13px;width:20px;height:20px;border-radius:6px;background:var(--oranje-l) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C64A1B' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center/14px no-repeat}
.blok{background:#fff;border:1px solid var(--lijn);border-radius:var(--r);padding:22px 20px}
.zuster{display:grid;gap:14px;align-items:center;background:var(--bg2);border:1px solid var(--lijn);border-left:4px solid var(--t-b);border-radius:16px;padding:22px 20px}
.zuster h2{font-size:1.2rem;margin-bottom:.3em}
.zuster p{margin:0;color:var(--grijs);max-width:52em}
@media (min-width:880px){.zuster{grid-template-columns:1fr auto;gap:28px;padding:26px 32px}}
.cta-eind{text-align:center;background:var(--oranje-l);border-radius:20px;padding:36px 20px}
.cta-eind p{max-width:36em;margin:0 auto 18px}
.cta-eind .knoppen{justify-content:center}
/* faq */
.faq details{border:1px solid var(--lijn);border-radius:12px;background:#fff;margin-bottom:10px;transition:border-color .2s}
.faq details[open]{border-color:var(--oranje-d)}
.faq summary{cursor:pointer;padding:16px 48px 16px 18px;font-weight:600;color:var(--ink);list-style:none;position:relative;min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:1.5rem;line-height:1;color:var(--oranje-d);font-weight:400;transition:transform .2s ease}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq details p{padding:0 18px 16px;margin:0;color:var(--tekst)}
/* broodkruimel */
.kruimel{font-size:.85rem;color:var(--grijs);padding:4px 16px 0}
.kruimel ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:4px}
.kruimel li+li::before{content:"›";margin-right:4px;color:var(--grijs)}
.kruimel a{color:var(--grijs);display:inline-flex;align-items:center;min-height:44px;min-width:44px;justify-content:center}  /* TIKDOEL-44-20261012 */
.kruimel li{display:flex;align-items:center}
.pagina-kop{padding:22px 0 34px;background:linear-gradient(180deg,var(--blauw-l),#fff)}
.pagina-kop p.lead{font-size:1.08rem;max-width:42em}
/* werkgebied */
.provincies{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}
.provincies h3{margin-bottom:6px}
.provincies p{margin:0;color:var(--grijs);font-size:.93rem}
/* contactkaarten */
.contact-opties{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.contact-opties .blok{display:flex;flex-direction:column}
.contact-opties .blok p{color:var(--grijs);flex:1}
.contact-opties .knop{word-break:break-all}
.tekst{max-width:46em}
.tekst h2{margin-top:1.4em}
.tekst h2:first-child,.tekst .oog+h2{margin-top:0}
/* footer */
.voet{background:var(--ink);color:#C9D3DE;padding:44px 0 110px;font-size:.93rem}
.voet a{color:#fff;text-decoration:none}
.voet a:hover{text-decoration:underline;color:#fff}
.voet-grid{display:grid;gap:28px;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}
.voet h2{color:#fff;font-size:1rem;margin-bottom:10px}
.voet ul{list-style:none;padding:0;margin:0}
.voet li{padding:3px 0}
.voet-onder{border-top:1px solid #33414F;margin-top:32px;padding-top:18px;display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between}
.voet-onder a{color:#C9D3DE}
.voet .merk{color:#fff}
.voet .merk small{color:#AEB9C5}
.voet .merk b span{color:#7FC3EA}
@media (max-width:759px){.voet li{padding:0}.voet li a{display:inline-flex;align-items:center;padding:10px 0;min-height:44px}}
@media (min-width:981px){.voet{padding-bottom:44px}}
/* mobiele actiebalk */
.actiebalk{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--lijn);box-shadow:0 -6px 18px rgba(22,32,43,.08)}
.actiebalk .knop{min-height:46px;padding:8px 6px;font-size:.88rem;gap:6px;white-space:nowrap}
.actiebalk .knop:hover{transform:none}
@media (min-width:981px){.actiebalk{display:none}}
.klein{font-size:.85rem;color:var(--grijs)}
.extra-link{margin-top:12px;font-size:.95rem}
@media (max-width:559px){.hero .knoppen .knop,.pagina-kop .knoppen .knop{width:100%}}
/* rustige beweging bij binnenkomst (alleen met JS; zonder JS is alles gewoon zichtbaar) */
.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease;transition-delay:calc(var(--i,0) * 60ms)}
.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.reveal,.js .reveal{opacity:1;transform:none;transition:none}}
/* compacter op mobiel: stappen naast hun nummer, klussenlijsten en footerdiensten in twee kolommen */
@media (max-width:559px){
 .stappen{gap:10px}
 .stappen li{display:grid;grid-template-columns:42px 1fr;column-gap:14px;padding:16px}
 .stappen li::before{grid-row:span 2;margin:0}
 .stappen h3{font-size:1.05rem;margin:2px 0 4px}
 .pop-lijst{grid-template-columns:1fr 1fr;column-gap:14px}
 .pop-lijst .pijl-link{font-size:.93rem}
 .sectie{padding:40px 0}
}
@media (max-width:759px){.voet-grid>div:nth-child(2) ul{display:grid;grid-template-columns:1fr 1fr;column-gap:14px}.voet-grid>div:nth-child(2) li a{font-size:.88rem}}
/* QA 12-10: tikdoelen minstens 44px (pijl-links, chips, menu, voetregel) */
.pijl-link{min-height:44px}
.chip-licht{min-height:44px}
.nav a{min-height:44px;display:inline-flex;align-items:center}
.voet-onder a{display:inline-flex;align-items:center;min-height:44px}
.kop-tel{min-height:44px;display:inline-flex;align-items:center}
/* PF-KLUS-RANDSTAD-ENERGIE-20261012 — kerncijfers, werkgebiedkaart, energie-onderdeel */
.kerncijfers{background:#fff;border:1px solid var(--lijn);border-radius:var(--r);padding:20px;box-shadow:0 10px 30px rgba(22,32,43,.06)}
.kerncijfers h2{margin-bottom:12px}
.kerncijfers dl{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;margin:0}
.kerncijfers dl div{border-top:3px solid var(--t-b);padding-top:8px}
.kerncijfers dl div:nth-child(4n+2){border-color:var(--t-o)}.kerncijfers dl div:nth-child(4n+3){border-color:var(--t-g)}.kerncijfers dl div:nth-child(4n+4){border-color:var(--t-t)}
.kerncijfers dt{font-size:.8rem;color:var(--grijs);line-height:1.3}
.kerncijfers dd{margin:2px 0 0;font:800 1.25rem/1.2 var(--kop);color:var(--ink)}
.kerncijfers dd small{display:block;font:400 .75rem/1.3 system-ui,sans-serif;color:var(--grijs)}
.bj{margin:16px 0 0}
.bj-titel{font-size:.85rem;font-weight:600;color:var(--ink);margin:0 0 6px}
.bj-balk{display:flex;height:14px;border-radius:7px;overflow:hidden;background:var(--bg2)}
.bj-balk span{display:block;height:100%}
.bj-legenda{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.78rem;color:var(--grijs)}
.bj-legenda i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}
.bron{font-size:.75rem;color:var(--grijs);line-height:1.45;margin:14px 0 0}
.klus-waarom{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.klus-waarom a{display:grid;grid-template-columns:44px 1fr 20px;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--lijn);border-radius:14px;background:#fff;text-decoration:none;color:var(--tekst)}
.klus-waarom a:hover{border-color:var(--blauw)}
.klus-waarom .ri{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--t-b);color:#fff}
.klus-waarom li:nth-child(4n+2) .ri{background:var(--oranje-d)}.klus-waarom li:nth-child(4n+3) .ri{background:var(--t-g);color:var(--ink)}.klus-waarom li:nth-child(4n+4) .ri{background:var(--t-t);color:var(--ink)}
.klus-waarom .ri svg{width:24px;height:24px}
.klus-waarom b{display:block;font:600 1rem/1.3 var(--kop);color:var(--ink)}
.klus-waarom small{display:block;color:var(--grijs);font-size:.88rem;line-height:1.45;margin-top:2px}
.klus-waarom .pijl{width:18px;height:18px;color:var(--blauw)}
.wijken{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:0 0 22px}
.wijken li{background:var(--bg2);border-radius:999px;padding:4px 12px;font-size:.88rem;color:var(--tekst)}
.door-links{display:grid;gap:10px;margin-top:22px}
.door-kaart{display:grid;grid-template-columns:44px 1fr 20px;gap:12px;align-items:center;padding:14px 16px;border-radius:14px;background:var(--blauw-l);color:var(--ink);text-decoration:none;line-height:1.4}
.door-kaart b{display:block;font:600 1rem/1.3 var(--kop)}
.door-kaart span span{font-size:.88rem;color:var(--tekst)}
.door-kaart .ri{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--t-b);color:#fff}
.door-kaart .ri svg{width:24px;height:24px}
.door-kaart:hover{background:#d9e8f3;color:var(--ink)}
.door-kaart .pijl{width:18px;height:18px;color:var(--blauw)}
.rs-kaart{background:linear-gradient(90deg,#E6F1F8 0,#F3F8FB 22%,#fff 46%);border:1px solid var(--lijn);border-radius:var(--r);padding:12px;margin:0}
.rs-kaart svg{width:100%;height:auto;display:block}
.rs-kaart a circle{transition:r .15s}
.rs-kaart a:hover circle,.rs-kaart a:focus circle{stroke:var(--ink);stroke-width:2}
.rs-kaart text{font:600 var(--fs,15px)/1 var(--kop,system-ui),sans-serif;fill:var(--ink);paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round;pointer-events:none}
.rs-legenda{display:flex;flex-wrap:wrap;gap:6px 16px;list-style:none;padding:0;margin:10px 4px 0;font-size:.85rem;color:var(--grijs)}
.rs-legenda i{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:6px;vertical-align:-1px}
.regio{margin:0 0 26px}
.regio h3{font-size:1.02rem;margin-bottom:10px;color:var(--grijs)}
.prov-kop{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.prov-kop small{color:var(--grijs);font-size:.9rem}
.e-rij{display:flex;flex-wrap:wrap;gap:8px}
.e-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:6px 14px 6px 6px;border-radius:999px;border:1.5px solid var(--lijn);background:#fff;color:var(--ink);text-decoration:none;font:600 .93rem/1.2 var(--kop)}
.e-chip .ri{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--t-g);color:var(--ink)}
.e-chip .ri svg{width:18px;height:18px}
.e-chip:hover{border-color:var(--oranje-d);background:var(--oranje-l);color:var(--ink)}
.e-band{display:grid;gap:18px;align-items:center}
@media (min-width:880px){.e-band{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}
.e-band h2{margin-bottom:.3em}
.e-band p{margin:0 0 .6em}
.e-tekst h2{margin-top:1.4em}
.e-tekst h2:first-child{margin-top:0}
.e-tekst ul{margin:0 0 1em}
.e-tekst li{margin-bottom:.35em}
.keuzehulp{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));list-style:none;padding:0;margin:0}
.keuzehulp li{background:#fff;border:1px solid var(--lijn);border-radius:var(--r);padding:18px 18px 16px;display:flex;flex-direction:column}
.keuzehulp h3{font-size:1.02rem;line-height:1.4}
.keuzehulp p{color:var(--tekst);font-size:.95rem;flex:1}
.keuzehulp .chips{gap:6px}
.keuzehulp .chip{min-height:44px;font-size:.88rem;padding:6px 12px}
.e-tegels{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}
.e-tegel{display:grid;grid-template-columns:48px 1fr;gap:4px 14px;align-items:start;padding:18px;border:1px solid var(--lijn);border-radius:var(--r);background:#fff;color:var(--tekst);text-decoration:none}
.e-tegel:hover{border-color:var(--blauw);color:var(--tekst)}
.e-tegel .ri{grid-row:span 2;display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--t-b);color:#fff}
.e-tegel:nth-child(4n+2) .ri{background:var(--oranje-d)}.e-tegel:nth-child(4n+3) .ri{background:var(--t-g);color:var(--ink)}.e-tegel:nth-child(4n+4) .ri{background:var(--t-t);color:var(--ink)}
.e-tegel .ri svg{width:26px;height:26px}
.e-tegel h3{margin:2px 0 0;font-size:1.05rem}
.e-tegel p{margin:0;font-size:.9rem;color:var(--grijs);line-height:1.5}
.e-stappen li p{margin:0}
.pfe-kaart{background:#0B2233;color:#DCE6EF;border-radius:var(--r);padding:20px}
.pfe-kaart h2{color:#fff}
.pfe-kaart a{color:#9FD3F2}
.bronnen{font-size:.88rem;color:var(--grijs)}
.bronnen ul{padding-left:1.1em;margin:.4em 0 0}
.bronnen li{margin-bottom:.3em}
.prijsblok{margin-top:18px}
/* kopregel met 7 menu-items: nooit afbreken; telefoonnummer wijkt eerder (staat ook als knop in de actiebalk en footer) */
.nav a,.kop-bel .knop{white-space:nowrap}
.merk{flex:none}
@media (min-width:981px){.nav{gap:0}.nav a{padding:8px 7px}.kop .wrap{gap:10px}.kop-bel{gap:10px}}
@media (min-width:981px) and (max-width:1320px){.kop-tel{display:none}}
@media (min-width:981px) and (max-width:1120px){.nav a{font-size:.88rem;padding:8px 5px}.merk small{display:none}}
/* SEO-PLAATS-UNIEK-20261012 — "Wat <plaats> anders maakt" */
.vg-lijst{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.vg-lijst li{line-height:1.5}
.vg-lijst b{color:var(--ink)}
.vg-lijst small{color:var(--dim,#374151)}

/* PF-KLUS-ONTWERP-20261012 — kaart met provinciegebieden, ligging op plaatspagina's, gemeente zoeken, energie-zijkolom */
.rs-kaart text.rs-zee{font-style:italic;font-weight:500;fill:#6E9BB8;stroke:none;letter-spacing:.3em}
.rs-kaart text.rs-nadruk{font-weight:800;font-size:calc(var(--fs) * 1.35)}
.rs-kaart a:focus-visible{outline:none}.rs-kaart a:focus-visible circle{stroke:var(--ink);stroke-width:2.5}
.rs-ligging{margin:4px 0 14px;padding:8px}
.stad-foto{overflow:visible}.stad-foto img{border-radius:var(--r)}.stad-foto .sfeer{margin-left:2px}
.gm-zoek{display:none;margin:22px 0 14px;max-width:520px}
.js .gm-zoek{display:block}
.gm-zoek label{display:block;font:700 .95rem/1.3 var(--kop);color:var(--ink);margin-bottom:8px}
.gm-veld{position:relative}
.gm-veld .ico{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--oranje-d);pointer-events:none}
.gm-veld input{width:100%;min-height:52px;padding:12px 16px 12px 44px;border:1.5px solid var(--lijn);border-radius:14px;background:#fff;font-family:inherit;font-size:1rem;font-weight:500;color:var(--ink);box-shadow:0 6px 18px rgba(22,32,43,.06)}
.gm-veld input:focus{outline:none;border-color:var(--blauw);box-shadow:0 0 0 3px rgba(14,95,143,.18)}
.gm-uit{margin:8px 2px 0;font-size:.92rem;color:var(--tekst);min-height:1.4em}
.gm-uit a{font-weight:600}
.gm-prov[hidden],.gm-prov .regio[hidden],.gm-prov .chip[hidden]{display:none!important}
.e-tegel{grid-template-rows:auto 1fr auto;transition:border-color .15s,box-shadow .15s,transform .15s}
.e-tegel:hover{box-shadow:0 10px 24px rgba(22,32,43,.08);transform:translateY(-2px)}
.e-tegel .e-meer{grid-column:2;display:inline-flex;align-items:center;gap:6px;margin-top:10px;font:600 .9rem/1 var(--kop);color:var(--blauw)}
.e-tegel .e-meer .pijl{width:16px;height:16px}
.e-tegel-cta{background:#16202B;border-color:#16202B;color:#DCE6EF}
.e-tegel-cta h3{color:#fff}.e-tegel-cta p{color:#B9C6D3}.e-tegel-cta .e-meer{color:#FFC27A}
.e-tegel-cta .ri{background:var(--oranje-d)!important;color:#fff!important}
.e-tegel-cta:hover{border-color:#16202B;color:#DCE6EF}
.e-zij .e-tegels{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}
.e-aanvraag{margin-top:18px;background:var(--oranje-l,#FFF1EA);border:1px solid #F6D3C5;border-radius:var(--r);padding:20px}
.e-aanvraag p{margin:.3em 0 14px;color:var(--tekst);font-size:.95rem}
.e-aanvraag .knoppen{margin:0}
@media (min-width:880px){.e-zij{align-self:stretch}.e-aanvraag{position:sticky;top:96px}}
@media (prefers-reduced-motion:reduce){.e-tegel,.e-tegel:hover{transition:none;transform:none}}
@media (min-width:560px) and (max-width:879px){.kop-foto img{aspect-ratio:16/9;max-height:380px;object-fit:cover}}

/* PF-KLUS-LOGO-20261010 — bewegend PandFix-merkteken met klus-iconen */
.pfk-mk{display:block;flex:0 0 auto;transform-box:fill-box;transform-origin:center;transition:transform .3s ease}
.pfk-mk .t{transform-box:fill-box;transform-origin:center;animation:pfkPop .55s cubic-bezier(.34,1.56,.64,1) both}
.pfk-mk .t1{animation-delay:.05s}.pfk-mk .t2{animation-delay:.15s}.pfk-mk .t3{animation-delay:.25s}.pfk-mk .t4{animation-delay:.35s}
.pfk-mk .hamer{transform-box:fill-box;transform-origin:50% 92%;animation:pfkTik 4.2s ease-in-out 1.4s infinite}
a:hover .pfk-mk,a:focus-visible .pfk-mk{transform:rotate(-5deg) scale(1.05)}
@keyframes pfkPop{from{opacity:0;transform:scale(.35) rotate(-10deg)}to{opacity:1;transform:none}}
@keyframes pfkTik{0%,84%,100%{transform:rotate(0)}88%{transform:rotate(-18deg)}92%{transform:rotate(7deg)}96%{transform:rotate(-3deg)}}
@media (prefers-reduced-motion:reduce){.pfk-mk *{animation:none!important}.pfk-mk{transition:none}}
