/* Bedrijfsakoestiek - huisstijl. Papier, inkt, viltgroen. Lijnen in plaats van schaduwen. */
@font-face{font-family:"Hanken";src:url(/assets/fonts/hanken.woff2) format("woff2");font-weight:300 800;font-style:normal;font-display:swap}
@font-face{font-family:"Hanken";src:url(/assets/fonts/hanken-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Newsreader";src:url(/assets/fonts/newsreader.woff2) format("woff2");font-weight:300 600;font-style:normal;font-display:swap}
@font-face{font-family:"Newsreader";src:url(/assets/fonts/newsreader-italic.woff2) format("woff2");font-weight:300 500;font-style:italic;font-display:swap}
:root{
  --papier:#F4F2EE;--wit:#FBFAF8;--steen:#EAE6DF;--lijn:#D6D1C7;--lijn-zacht:#E4E0D8;
  --inkt:#1B1E20;--grafiet:#4D5358;--grijs:#767C80;
  --vilt:#2E4A3F;--vilt-donker:#22372F;--vilt-licht:#8FB3A3;--vilt-vlak:#E3EAE5;
  --rood:#9A3B2C;
  --sans:"Hanken",system-ui,-apple-system,"Segoe UI",sans-serif;--serif:"Newsreader",Georgia,serif;
  --wrap:1240px;--tekst:700px;--r:2px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--papier);color:var(--inkt);font:400 17.5px/1.65 var(--sans);font-feature-settings:"ss01","tnum" 0;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--vilt);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--inkt)}
h1,h2,h3,h4{font-family:var(--sans);color:var(--inkt);margin:0}
h1{font-weight:500;font-size:clamp(2.2rem,4.4vw,3.9rem);line-height:1.04;letter-spacing:-.025em}
h2{font-weight:600;font-size:clamp(1.45rem,2.2vw,1.85rem);line-height:1.18;letter-spacing:-.015em}
h3{font-weight:600;font-size:1.18rem;line-height:1.3}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
.sr{position:absolute;left:-9999px}.sr:focus{left:16px;top:16px;z-index:99;background:var(--wit);padding:8px 12px}
.label{display:block;font:600 12.5px/1.2 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--grafiet);margin-bottom:14px}
.label.stil{color:var(--grijs)}
.klein{font-size:14px;color:var(--grafiet)}
.lead{font-family:var(--serif);font-weight:400;font-size:clamp(1.2rem,1.7vw,1.42rem);line-height:1.45;color:var(--inkt);max-width:38em}
.meta{font-size:14px;color:var(--grijs);margin-top:18px}
.hp{position:absolute!important;left:-9999px!important}

/* servicebalk en kop */
.servicebalk{background:var(--inkt);color:#C9CCC9;font-size:13.5px}
.servicebalk .wrap{display:flex;justify-content:space-between;gap:20px;padding-top:8px;padding-bottom:8px}
.servicebalk nav{display:flex;gap:22px}.servicebalk a{color:#E6E8E5;text-decoration:none}.servicebalk a:hover{color:#fff;text-decoration:underline}
.kop{background:var(--papier);border-bottom:1px solid var(--lijn);position:sticky;top:0;z-index:40}
.kop .wrap{display:flex;align-items:center;gap:28px;height:76px}
.merk img{width:226px;height:auto}
.kop nav{flex:1}
.hoofdmenu{list-style:none;margin:0;padding:0;display:flex;gap:4px;justify-content:center}
.hoofdmenu>li{position:relative}
.hoofdmenu>li>a{display:block;white-space:nowrap;padding:26px 11px;color:var(--inkt);text-decoration:none;font-size:15.5px;font-weight:500}
.hoofdmenu>li>a:hover,.hoofdmenu>li>a[aria-current]{color:var(--vilt)}
.hoofdmenu>li>a[aria-current]{box-shadow:inset 0 -2px 0 var(--vilt)}
.uitklap{position:absolute;left:-8px;top:100%;background:var(--wit);border:1px solid var(--lijn);min-width:270px;padding:10px 0;display:none}
.heeft-sub:hover .uitklap,.heeft-sub:focus-within .uitklap{display:block}
.uitklap ul{list-style:none;margin:0;padding:0}.uitklap a{display:block;padding:7px 20px;color:var(--inkt);text-decoration:none;font-size:15px}
.uitklap a:hover{background:var(--vilt-vlak)}
.kop-knoppen{display:flex;gap:10px}
.alleen-mobiel{display:none}
.menuknop{display:none;background:none;border:0;width:44px;height:44px;padding:10px;cursor:pointer}
.menuknop span{display:block;height:1.5px;background:var(--inkt);margin:6px 0}

/* knoppen */
.knop{display:inline-flex;align-items:center;gap:10px;padding:13px 20px;border:1px solid var(--inkt);color:var(--inkt);background:transparent;
  font:600 15.5px/1 var(--sans);text-decoration:none;border-radius:var(--r);cursor:pointer;transition:background .25s,color .25s;white-space:nowrap}
.knop:hover{background:var(--inkt);color:var(--papier)}
.knop.vol,.knop.donker{background:var(--inkt);color:var(--papier)}.knop.vol:hover,.knop.donker:hover{background:var(--vilt);border-color:var(--vilt);color:#fff}
.knop.licht{background:var(--papier);border-color:var(--papier);color:var(--inkt)}.knop.licht:hover{background:#fff}
.knop.rand-licht{border-color:#9BA3A0;color:var(--papier)}.knop.rand-licht:hover{background:var(--papier);color:var(--inkt)}
.knop.rand{background:transparent}
.knop.klein{padding:10px 15px;font-size:14.5px}
.knop .pijl{width:16px;height:10px}
.knoppen{display:flex;flex-wrap:wrap;gap:12px}

/* kruimel */
.kruimel{padding-top:22px}.kruimel ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;font-size:13.5px;color:var(--grijs)}
.kruimel li+li::before{content:"/";margin-right:6px;color:var(--lijn)}.kruimel a{color:var(--grafiet);text-decoration:none}.kruimel a:hover{text-decoration:underline}

/* paginakoppen */
.paginakop{padding:34px 0 46px}
.paginakop .pk-tekst{max-width:860px}
.paginakop h1{margin-bottom:22px}
.paginakop.met-beeld .wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:end}
.paginakop.met-beeld figure{margin:0}.paginakop.met-beeld img{width:100%;aspect-ratio:4/3;object-fit:cover}
.paginakop.beeldkop{padding-top:18px}
.paginakop.beeldkop figure{margin:0 0 40px}.paginakop.beeldkop img{width:100%;height:clamp(260px,42vw,520px);object-fit:cover}
.paginakop.tekstkop{border-bottom:1px solid var(--lijn);margin-bottom:46px}

/* artikel */
.artikel{display:grid;gap:64px;padding-bottom:70px}
.artikel.met-zijkaart{grid-template-columns:minmax(0,var(--tekst)) 320px;justify-content:space-between}
.artikel.met-toc{grid-template-columns:250px minmax(0,var(--tekst));justify-content:start;gap:72px}
.zijkaart{align-self:start;position:sticky;top:100px;border-top:3px solid var(--inkt);background:var(--wit);padding:24px 24px 22px}
.zijkaart p{font-size:15.5px;line-height:1.55}.zijkaart .knop{width:100%;justify-content:space-between;margin-bottom:10px}
.zk-prijs{border-bottom:1px solid var(--lijn);padding-bottom:16px;margin-bottom:16px}
.zk-prijs .bedrag{display:block;font:400 2.1rem/1.1 var(--serif);margin:4px 0}
.inhoudsopgave{align-self:start;position:sticky;top:100px;font-size:14.5px}
.inhoudsopgave ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--lijn)}
.inhoudsopgave li a{display:block;padding:6px 0 6px 16px;color:var(--grafiet);text-decoration:none;margin-left:-1px;border-left:2px solid transparent}
.inhoudsopgave li a:hover,.inhoudsopgave li a.actief{color:var(--inkt);border-left-color:var(--vilt)}
.toc-cta{margin-top:28px;padding-top:18px;border-top:1px solid var(--lijn)}.toc-cta p{margin:0 0 6px;color:var(--grafiet)}
.artikelbeeld{margin:0 0 34px}.artikelbeeld img{width:100%}

.tekst h2{margin:2.2em 0 .7em;scroll-margin-top:100px}
.tekst p a,.tekst li a,.tekst td a{color:inherit;text-decoration-color:#B9B3A8}
.tekst p a:hover,.tekst li a:hover,.tekst td a:hover{color:var(--vilt);text-decoration-color:var(--vilt)}
.tekst h3{margin:1.6em 0 .5em}
.tekst ul,.tekst ol{padding-left:1.2em;margin:0 0 1.1em}.tekst li{margin-bottom:.35em}
.tekst ul li::marker{color:var(--vilt)}
.tekst table{width:100%;border-collapse:collapse;font-size:15.5px;margin:0 0 1.4em;background:var(--wit)}
.tekst th,.tekst td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--lijn-zacht);vertical-align:top}
.tekst thead th{border-bottom:1.5px solid var(--inkt);font-weight:600;font-size:14px;background:var(--papier)}
.tabel-scroll{overflow-x:auto;margin:0 0 1.4em}.tabel-scroll table{margin:0}
.r{text-align:right!important;white-space:nowrap}
.reken{font-family:var(--serif);font-size:1.15rem;border-left:2px solid var(--vilt);padding:4px 0 4px 18px;color:var(--inkt)}
.tabelnoot{font-size:13.5px;color:var(--grafiet);margin-top:-.6em}

.kortblok{margin-bottom:2em}
.kortblok.plat{font-size:1.06rem;margin:0 0 1.6em}
.kortblok .label{display:inline;font:700 1em/1 var(--sans);letter-spacing:0;text-transform:none;color:var(--inkt);margin:0 .35em 0 0}
.kortblok .label::after{content:":"}
.kortblok p{display:inline;font-size:1.06rem;line-height:1.6;margin:0}

.tussenblok{display:flex;justify-content:space-between;align-items:center;gap:24px;background:var(--steen);padding:22px 24px;margin:2.2em 0}
.tussenblok p{margin:0;font-weight:500}.tussenblok .klein{display:block;font-weight:400;margin-top:4px}

.faq-blok{margin-top:3em}
.faq details{border-top:1px solid var(--lijn)}.faq details:last-child{border-bottom:1px solid var(--lijn)}
.faq summary{cursor:pointer;list-style:none;padding:16px 36px 16px 0;font-weight:600;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:6px;top:24px;width:10px;height:10px;border-right:1.5px solid var(--inkt);border-bottom:1.5px solid var(--inkt);transform:rotate(45deg);transition:transform .25s}
.faq details[open] summary::after{transform:rotate(-135deg);top:28px}
.faq .antwoord{padding:0 0 16px;color:var(--grafiet)}

/* rekenblok en nagalmcurve */
.rekenblok{margin:2em 0;background:var(--wit);border-top:3px solid var(--vilt);padding:22px 24px 8px}
.rekenblok figcaption{font-weight:600;font-size:1.08rem;margin-bottom:14px}.rekenblok figcaption .label{margin-bottom:6px;color:var(--vilt)}
.rekenblok-kern{display:grid;grid-template-columns:1fr 320px;gap:24px;align-items:center;margin-bottom:16px}
.rekenblok dl{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px;margin:0}
.rekenblok dt{font-size:13px;color:var(--grafiet)}.rekenblok dd{margin:0;font:400 1.7rem/1.1 var(--serif)}
.rekenblok tr.som td{font-weight:600;border-top:1.5px solid var(--inkt);border-bottom:0}
.rekenblok .bijschrift{font-size:13.5px;color:var(--grafiet)}
.nagalmcurve{width:100%;height:auto;font:500 14px var(--sans)}
.nagalmcurve .rooster line{stroke:var(--lijn);stroke-width:1}
.nagalmcurve .as text{fill:var(--grijs)}
.nagalmcurve .voor{fill:none;stroke:var(--grafiet);stroke-width:1.6;stroke-dasharray:4 3}
.nagalmcurve .na{fill:none;stroke:var(--vilt);stroke-width:2.4}
.nagalmcurve .l-voor{fill:var(--grafiet);font-weight:600}.nagalmcurve .l-na{fill:var(--vilt);font-weight:700}

/* prijslijst */
.prijslijst td .klein{display:block}.prijslijst .bedrag{font:400 1.25rem/1.2 var(--serif);display:block}
.prijslijst td a{font-weight:600;color:var(--inkt)}

/* verwant, silo, slotband */
.verwant{padding:10px 32px 40px}
.verwant h2{margin-bottom:18px}
.verwant ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--inkt)}
.verwant li a{display:block;padding:18px 26px 22px 0;color:var(--inkt);text-decoration:none;font-weight:600;font-size:1.06rem;line-height:1.3;height:100%}
.verwant li+li a{padding-left:26px;border-left:1px solid var(--lijn)}
.verwant li a .label{margin-bottom:8px}.verwant .lees{display:block;font-weight:400;font-size:14.5px;color:var(--grafiet);margin-top:8px;line-height:1.5}
.verwant li a:hover{color:var(--vilt)}
.silo{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;padding-top:34px;padding-bottom:50px;border-top:1px solid var(--lijn)}
.silo ul{list-style:none;margin:0;padding:0;columns:2;column-gap:28px}.silo-kol+.silo-kol ul{columns:1}
.silo li{break-inside:avoid;margin-bottom:6px;font-size:15px}.silo a{color:var(--inkt);text-decoration:none}.silo a:hover{color:var(--vilt);text-decoration:underline}
.slotband{background:var(--vilt-donker);color:var(--papier);padding:56px 0}
.slotband .wrap{display:flex;justify-content:space-between;align-items:center;gap:40px}
.slot-zin{font:400 clamp(1.3rem,2vw,1.7rem)/1.35 var(--serif);max-width:30em;margin:0}

/* voet */
.voet{background:var(--inkt);color:#BFC4C2;font-size:15px;padding:64px 0 28px}
.voet .kolommen{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr;gap:36px}
.voet h4{color:var(--papier);font-size:14px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px}
.voet ul{list-style:none;margin:0;padding:0}.voet li{margin-bottom:7px}
.voet a{color:#E2E5E3;text-decoration:none}.voet a:hover{color:#fff;text-decoration:underline}
.voet-merk img{width:226px;margin-bottom:18px}.voet .klein{color:#9EA5A2}
.voet .onder{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #33383B;margin-top:46px;padding-top:20px;font-size:13.5px;color:#9EA5A2}
.mobiel-cta{display:none}

/* ===== HOME ===== */
.h-held{padding:40px 0 0}
.h-held .h-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:56px;align-items:end}
.h-held h1{font-size:clamp(2.5rem,5vw,4.6rem);margin-bottom:26px}
.h-held .lead{margin-bottom:30px}
.h-noot{font-size:14.5px;color:var(--grafiet);margin:18px 0 0;max-width:34em}
.h-held figure{margin:0}.h-held figure img{width:100%;aspect-ratio:5/4;object-fit:cover}
.h-held figcaption{font-size:13px;color:var(--grafiet);padding-top:10px}
.h-feiten{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--inkt);margin-top:56px}
.h-feiten div{padding:20px 24px 24px 0}.h-feiten div+div{padding-left:24px;border-left:1px solid var(--lijn)}
.h-feiten b{display:block;font:400 2.3rem/1.05 var(--serif);margin-bottom:6px}.h-feiten span{font-size:14.5px;color:var(--grafiet)}
.sectie{padding:96px 0}
.sectie h2{margin-bottom:18px}.sectie-kop h2{margin-bottom:0}
.sectie.steen{background:var(--steen)}.sectie.wit{background:var(--wit)}
.sectie-kop{display:grid;grid-template-columns:1fr 1.25fr;gap:56px;margin-bottom:44px;align-items:end}
.sectie-kop p{margin:0;color:var(--grafiet)}
.h-meting{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center}
.h-meting figure{margin:0}.h-meting img{width:100%;aspect-ratio:4/3;object-fit:cover}
.stappen{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--inkt)}
.stappen li{padding:22px 24px 10px 0}.stappen li+li{padding-left:24px;border-left:1px solid var(--lijn)}
.stappen .nr{font:400 2.6rem/1 var(--serif);color:var(--vilt);display:block;margin-bottom:14px}
.stappen h3{margin-bottom:8px}.stappen p{font-size:15.5px;color:var(--grafiet)}.stappen .duur{font-size:13.5px;color:var(--inkt);font-weight:600}
.h-curve{display:grid;grid-template-columns:1fr 1.15fr;gap:64px;align-items:center}
.h-curve .nagalmcurve{background:var(--wit);padding:18px 14px 6px}
.ruimte-raster{display:grid;grid-template-columns:repeat(12,1fr);gap:28px}
.ruimte-raster a{display:block;color:var(--inkt);text-decoration:none}
.ruimte-raster a:hover h3{color:var(--vilt)}
.ruimte-raster img{width:100%;object-fit:cover;margin-bottom:14px;transition:opacity .35s}
.ruimte-raster a:hover img{opacity:.9}
.ruimte-raster .groot{grid-column:span 7}.ruimte-raster .groot img{aspect-ratio:16/10}
.ruimte-raster .middel{grid-column:span 5}.ruimte-raster .middel img{aspect-ratio:4/3.3}
.ruimte-raster .klein3{grid-column:span 4}.ruimte-raster .klein3 img{aspect-ratio:4/3}
.ruimte-raster p{font-size:15px;color:var(--grafiet);margin:6px 0 0}
.lijstkolommen{display:grid;grid-template-columns:repeat(3,1fr);gap:0 48px}
.lijstkolommen ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--inkt)}
.lijstkolommen li{border-bottom:1px solid var(--lijn)}.lijstkolommen li a{display:flex;justify-content:space-between;gap:14px;padding:13px 0;color:var(--inkt);text-decoration:none}
.lijstkolommen li a:hover{color:var(--vilt)}.lijstkolommen li a span{color:var(--grafiet);font-size:14.5px;white-space:nowrap}
.citaat-norm{font:400 clamp(1.4rem,2.3vw,2rem)/1.35 var(--serif);max-width:28em}
.tweedeling{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.smal-kop{max-width:760px;margin-bottom:36px}.smal-kop p{color:var(--grafiet)}
.smal-faq{max-width:860px}.smal-faq h2{margin-bottom:10px}
.lijstkolommen h3{font-size:1.05rem;margin-bottom:12px}

/* formulieren */
.formulier-wrap{display:grid;grid-template-columns:minmax(0,680px) 340px;gap:64px;justify-content:space-between;padding-bottom:80px}
.formulier{background:var(--wit);border-top:3px solid var(--inkt);padding:30px 32px 34px}
.formulier fieldset{border:0;margin:0;padding:0}
.formulier legend,.formulier .stap-kop{font-weight:600;font-size:1.3rem;margin-bottom:18px;padding:0}
.stappenbalk{list-style:none;margin:0 0 26px;padding:0;display:flex;gap:6px;counter-reset:s}
.stappenbalk li{flex:1;font-size:13px;color:var(--grijs);border-top:3px solid var(--lijn);padding-top:8px;counter-increment:s}
.stappenbalk li::before{content:counter(s) ". "}
.stappenbalk li.actief{color:var(--inkt);border-top-color:var(--inkt)}.stappenbalk li.klaar{color:var(--vilt);border-top-color:var(--vilt)}
.veld{margin-bottom:18px}
.veld label,.veld .vraag{display:block;font-weight:600;font-size:15px;margin-bottom:6px}
.veld .opt{font-weight:400;color:var(--grijs)}
.veld input[type=text],.veld input[type=email],.veld input[type=tel],.veld input[type=number],.veld select,.veld textarea{
  width:100%;font:400 16px var(--sans);padding:12px 13px;border:1px solid #BDB7AC;background:#fff;border-radius:var(--r);color:var(--inkt)}
.veld textarea{min-height:120px;resize:vertical}
.veld input:focus,.veld select:focus,.veld textarea:focus{outline:2px solid var(--vilt);outline-offset:1px;border-color:var(--vilt)}
.veld .hulp{font-size:13.5px;color:var(--grafiet);margin:6px 0 0}
.veld .fout{display:none;color:var(--rood);font-size:14px;margin:6px 0 0}
.veld.is-fout input,.veld.is-fout select,.veld.is-fout textarea{border-color:var(--rood)}
.veld.is-fout .fout{display:block}
.twee{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.keuzes{display:flex;flex-wrap:wrap;gap:8px}
.keuze{position:relative}.keuze input{position:absolute;opacity:0}
.keuze span{display:inline-block;padding:10px 14px;border:1px solid #BDB7AC;background:#fff;font-size:15px;cursor:pointer;border-radius:var(--r)}
.keuze input:checked+span{background:var(--inkt);border-color:var(--inkt);color:var(--papier)}
.keuze input:focus-visible+span{outline:2px solid var(--vilt);outline-offset:2px}
.form-knoppen{display:flex;justify-content:space-between;gap:12px;margin-top:24px}
.akkoord{display:flex;gap:10px;align-items:flex-start;font-size:15px}.akkoord input{margin-top:5px}
.adres-wrap{position:relative}
.adres-suggesties{position:absolute;z-index:20;left:0;right:0;top:100%;margin:2px 0 0;padding:0;list-style:none;background:#fff;border:1px solid var(--lijn);max-height:260px;overflow:auto}
.adres-suggesties li{padding:10px 13px;cursor:pointer;font-size:15px}.adres-suggesties li:hover,.adres-suggesties li:focus{background:var(--vilt-vlak)}
.foto-rij{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.foto-melding{font-size:13.5px;color:var(--grafiet);margin:6px 0 0}
.foto-kaart{margin:0;position:relative;width:84px}.foto-kaart img{width:84px;height:64px;object-fit:cover}
.foto-pdf{width:84px;height:64px;display:flex;align-items:center;justify-content:center;background:var(--steen);font-size:12px;font-weight:700}
.foto-kaart button{position:absolute;top:2px;right:2px;background:var(--inkt);color:#fff;border:0;width:20px;height:20px;line-height:20px;padding:0;cursor:pointer;font-size:13px}
.melding{padding:14px 16px;background:#F6E9E6;border-left:3px solid var(--rood);margin-top:16px;display:none}.melding.zichtbaar{display:block}
.formulier-zij{align-self:start}
.formulier-zij h2{font-size:1.25rem;margin-bottom:12px}
.formulier-zij ol{padding-left:1.1em}.formulier-zij li{margin-bottom:10px;font-size:15.5px}
.bonregel{display:flex;justify-content:space-between;border-bottom:1px solid var(--lijn);padding:10px 0;font-size:15.5px}
.bonregel.totaal{font-weight:700;border-bottom:1.5px solid var(--inkt)}

/* rekenhulp */
.rekenhulp{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--wit);border-top:3px solid var(--inkt)}
.rekenhulp .invoer{padding:28px 30px}
.rekenhulp .uitkomst{background:var(--vilt-donker);color:var(--papier);padding:28px 30px}
.rekenhulp .uitkomst dl{display:grid;grid-template-columns:1fr auto;gap:10px 18px;margin:0 0 20px}
.rekenhulp .uitkomst dt{color:#C7D3CD;font-size:15px}.rekenhulp .uitkomst dd{margin:0;font:400 1.5rem/1.1 var(--serif);text-align:right}
.rekenhulp .uitkomst .groot{font-size:3rem}
.rekenhulp .uitkomst .nagalmcurve .rooster line{stroke:#3F5A50}.rekenhulp .uitkomst .nagalmcurve .as text{fill:#AFC2B9}
.rekenhulp .uitkomst .nagalmcurve .voor{stroke:#C9CCC9}.rekenhulp .uitkomst .nagalmcurve .na{stroke:#B9D6C8}
.rekenhulp .uitkomst .nagalmcurve .l-voor{fill:#E4E6E3}.rekenhulp .uitkomst .nagalmcurve .l-na{fill:#B9D6C8}
.rekenhulp .oordeel{border-top:1px solid #47625A;padding-top:14px;margin-bottom:18px;font-size:15.5px}
.opp-rij{display:grid;grid-template-columns:1.2fr 1.4fr .8fr;gap:8px;align-items:end;margin-bottom:10px}
.opp-rij label{font-size:13.5px;font-weight:600}
.rekenhulp select,.rekenhulp input[type=number]{width:100%;font:400 15.5px var(--sans);padding:10px;border:1px solid #BDB7AC;background:#fff}

/* reveal */
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .85s cubic-bezier(.22,.61,.36,1),transform .85s cubic-bezier(.22,.61,.36,1)}
.js .reveal.zichtbaar{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none}}

/* alle-paginas en hubs */
.hub-lijst{display:grid;grid-template-columns:repeat(3,1fr);gap:0 40px;border-top:1px solid var(--inkt)}
.hub-lijst a{display:block;padding:18px 0 20px;border-bottom:1px solid var(--lijn);color:var(--inkt);text-decoration:none}
.hub-lijst a b{display:block;font-size:1.08rem;margin-bottom:4px}.hub-lijst a span{font-size:14.5px;color:var(--grafiet)}
.hub-lijst a:hover b{color:var(--vilt)}
.hub-lijst .prijs{font-family:var(--serif);color:var(--inkt);font-size:1.05rem;display:block;margin-top:8px}

@media (max-width:1100px){
  .hoofdmenu>li>a{padding:26px 8px;font-size:15px}
  .uit-tablet{display:none}
  .artikel.met-zijkaart{grid-template-columns:minmax(0,1fr) 280px;gap:40px}
  .voet .kolommen{grid-template-columns:1fr 1fr 1fr}
  .voet-merk{grid-column:1/-1}
}
@media (max-width:960px){
  body{font-size:17px}
  .wrap{padding:0 20px}
  .kop nav,.kop-knoppen{display:none}
  .menuknop{display:block;margin-left:auto}
  .kop.open nav{display:block;position:absolute;left:0;right:0;top:76px;background:var(--papier);border-bottom:1px solid var(--lijn);max-height:calc(100vh - 76px);overflow:auto;padding:8px 20px 24px}
  .kop.open .hoofdmenu{flex-direction:column}.kop.open .hoofdmenu>li>a{padding:14px 0;border-bottom:1px solid var(--lijn-zacht)}
  .kop.open .uitklap{display:none!important}
  .kop.open .alleen-mobiel{display:flex;flex-direction:column;gap:10px;padding-top:18px}.kop.open .alleen-mobiel .knop{justify-content:center;padding:14px}.kop.open .alleen-mobiel>a:last-child{padding:8px 0;color:var(--inkt)}
  .servicebalk .wrap>span{display:none}.servicebalk nav{gap:16px;flex-wrap:wrap}
  .paginakop.met-beeld .wrap,.h-held .h-grid,.h-meting,.h-curve,.sectie-kop,.tweedeling,.formulier-wrap,.rekenhulp,.rekenblok-kern{grid-template-columns:1fr;gap:28px}
  .artikel.met-zijkaart,.artikel.met-toc{grid-template-columns:1fr;gap:36px}
  .inhoudsopgave{display:none}
  .zijkaart{position:static}
  .h-feiten,.stappen{grid-template-columns:1fr 1fr}
  .h-feiten div:nth-child(3),.stappen li:nth-child(3){padding-left:0;border-left:0}
  .h-feiten div,.stappen li{border-bottom:1px solid var(--lijn)}
  .ruimte-raster .groot,.ruimte-raster .middel,.ruimte-raster .klein3{grid-column:span 12}
  .lijstkolommen,.hub-lijst{grid-template-columns:1fr}
  .lijstkolommen>div+div{margin-top:40px}
  .verwant ul{grid-template-columns:1fr}.verwant li+li a{padding-left:0;border-left:0;border-top:1px solid var(--lijn)}
  .silo{grid-template-columns:1fr;gap:24px}
  .slotband .wrap{flex-direction:column;align-items:flex-start}
  .sectie{padding:64px 0}
  .tussenblok{flex-direction:column;align-items:flex-start}
  .mobiel-cta{display:block;position:fixed;left:16px;bottom:16px;z-index:50;background:var(--inkt);color:var(--papier);padding:13px 18px;font-weight:600;text-decoration:none;border-radius:var(--r);transition:opacity .3s}
  .mobiel-cta.verborgen{opacity:0;pointer-events:none}
  .voet .kolommen{grid-template-columns:1fr 1fr}
  .voet{padding-bottom:90px}
}
@media (max-width:600px){
  .twee,.h-feiten,.stappen{grid-template-columns:1fr}
  .h-feiten div,.h-feiten div+div,.stappen li,.stappen li+li{padding-left:0;border-left:0}
  .formulier{padding:22px 18px 26px}
  .silo ul{columns:1}
  .opp-rij{grid-template-columns:1fr 1fr}
  .opp-rij>div:first-child{grid-column:1/-1}
  .merk img{width:190px}
  .voet .kolommen{grid-template-columns:1fr}
  .voet .onder{flex-direction:column}
}
@media print{.kop,.servicebalk,.voet,.mobiel-cta,.zijkaart,.slotband,.silo,.tussenblok,.inhoudsopgave{display:none!important}body{background:#fff}}
