/* Systeem: één typografie en spacing schaal voor alle landingspagina's. Laatst geladen. */
:root{--sp-sec:clamp(72px,10vw,140px);--sp-kop:clamp(36px,5vw,64px);--sp-blok:clamp(24px,3vw,40px);--gap:clamp(20px,2.4vw,32px);--pad-kaart:clamp(24px,2.6vw,36px)}
/* sectie ritme */
main section:is(.sec,.bt-sec){padding-block:var(--sp-sec)!important}
main section:is(.sec,.bt-sec)+section:is(.sec,.bt-sec):not(.grond){padding-top:calc(var(--sp-sec)*.8)!important}
.sec .kop{margin-bottom:var(--sp-kop)!important;max-width:820px}
.sec .kop.mid{margin-inline:auto}
.sec .kop h2+p,.sec .kop .h2+p{margin-top:20px!important}
/* titels */
main h2:not(.iphone *):not(.scherm *):not([class*="hv-"] *):not(.hero *),main .sec .h2{font-size:clamp(32px,4.6vw,56px)!important;line-height:1.07!important;letter-spacing:-.04em!important;font-weight:800!important;text-wrap:balance}
main h3:not(.iphone *):not(.scherm *):not([class*="hv-"] *):not(.cs-win *){font-size:clamp(21px,2vw,26px)!important;line-height:1.25!important;letter-spacing:-.025em!important;font-weight:800!important}
/* tekst */
main .kop p,main p.lead,main .lead{font-size:clamp(18px,1.5vw,20px)!important;line-height:1.55!important}
main p:not(.lead):not(.kop p):not(.iphone *):not(.scherm *):not([class*="hv-"] *):not(figcaption):not(small){font-size:17px;line-height:1.6}
main li:not(.iphone *):not(.scherm *){font-size:17px;line-height:1.55}
main h3+p,main h3+ul{margin-top:12px!important}
main p+p{margin-top:16px}
main ul>li+li{margin-top:14px}
/* kaarten krijgen lucht en een gelijke tussenruimte */
.sec [class*="grid"],.sec [class$="-g"],.sec [class*="-grid"]{gap:var(--gap)}
@media(max-width:700px){:root{--sp-sec:clamp(56px,14vw,80px)}main .sec h2{font-size:clamp(28px,8vw,36px)!important}}

/* mobiele titels: rustige maat, geen losse regels, pil breekt nooit midden in */
@media (max-width:700px){
 .bt-h1{font-size:clamp(31px,8.9vw,38px)!important;line-height:1.08!important;letter-spacing:-.04em!important;max-width:100%!important;text-wrap:balance;overflow-wrap:normal;hyphens:none}
 .bt-h1 em,.bt-kop h2 em{white-space:nowrap;padding:0 .18em .05em;margin:.06em 0;transform:rotate(-1deg)}
 html.js .bt-h1.zie em,html.js .bt-kop h2.zie em{transform:rotate(-1deg)}
}

/* home hero op gsm: vaste opbouw in 3 blokken, nooit zwevende woorden */
@media(max-width:700px){
 html body .v3h .hero .h1{display:block!important;text-align:center!important;font-size:11.4vw!important;line-height:.98!important}
 html body .v3h .hero .h1>.wissel{display:grid!important;width:100%!important;max-width:100%!important;margin:0!important;justify-items:center;overflow:hidden;position:relative!important}
 html body .v3h .hero .h1>.wissel>span,html body .v3h .hero .h1>.wissel .uit,html body .v3h .hero .h1>.wissel .aan{grid-area:1/1!important;position:static!important;left:auto!important;top:auto!important;width:auto!important;font-size:1em!important;line-height:inherit!important;padding:0!important;white-space:normal!important;text-align:center!important}
 html body .v3h .hero .h1>.wissel .aan.blauw,html body .v3h .hero .h1>.wissel:last-child .uit{display:block!important}
}
