@font-face{font-family:Inter;src:url(../fonts/inter.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{--nacht:#0e2130;--nacht2:#16334a;--lime:#d8f25a;--creme:#f4f0e7;--creme2:#e9e3d5;--inkt:#10202b;--grijs:#9fb3c2}
*{box-sizing:border-box;margin:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:Inter,system-ui,sans-serif;background:var(--creme);color:var(--inkt);line-height:1.5}
a{color:inherit;text-decoration:none}

.stage{height:340vh;background:var(--nacht)}
.vast{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;color:#fff;
  background:radial-gradient(90% 90% at 72% 42%,#1c4058 0%,var(--nacht) 62%)}
canvas{position:absolute;inset:0;width:100%;height:100%;display:block}

.nav{position:fixed;z-index:20;top:0;left:0;right:0;color:#fff;transition:background .25s}
.nav.balk{background:rgba(14,33,48,.92);backdrop-filter:blur(10px)}
.nav-in{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1280px;margin:auto;padding:20px 40px;transition:padding .25s}
.nav.balk .nav-in{padding-top:12px;padding-bottom:12px}
.merk{display:block;flex:none}
.merk img{display:block;width:auto;height:38px}
.menu{display:flex;gap:30px;font-size:15px;color:#d5e0e8;white-space:nowrap}
.menu a:hover{color:#fff}
.knop-rand{border:1px solid rgba(255,255,255,.35);border-radius:99px;padding:9px 18px;font-size:14px}
.knop-rand:hover{background:rgba(255,255,255,.1)}

.tekst{position:absolute;z-index:2;left:0;right:0;top:0;bottom:0;max-width:1280px;margin:auto;padding:0 40px;display:flex;flex-direction:column;justify-content:center;pointer-events:none}
.tekst>*{pointer-events:auto;max-width:600px}
.intro{opacity:0;transform:translateY(14px);animation:op .9s .9s ease-out forwards}
@keyframes op{to{opacity:1;transform:none}}
.label{display:inline-flex;align-items:center;gap:9px;font-size:14px;color:#d5e0e8;margin-bottom:18px}
.label b{width:7px;height:7px;border-radius:50%;background:var(--lime)}
h1{font-size:clamp(40px,5.6vw,76px);line-height:1.04;letter-spacing:-.035em;font-weight:500;margin-bottom:20px}
h1 em{font-style:normal;color:var(--lime)}
.onder{font-size:18px;color:#d5e0e8;max-width:500px;margin-bottom:28px}

.check{display:grid;grid-template-columns:1fr 1fr auto;background:#fff;color:var(--inkt);border-radius:20px;padding:8px;max-width:680px!important;box-shadow:0 24px 60px rgba(0,0,0,.28)}
.veld{padding:8px 14px;border-right:1px solid #e6e2d8;min-width:0}
.veld:nth-of-type(2){border-right:0}
.veld label{display:block;font-size:12px;font-weight:600;color:#5a6b78}
.veld input,.veld select{width:100%;border:0;background:none;font:inherit;font-size:15px;color:var(--inkt);padding:2px 0;outline:0;min-width:0}
.veld:focus-within{background:#f6f3ea;border-radius:12px}
.check button{border:0;border-radius:14px;background:var(--lime);color:var(--inkt);font:inherit;font-weight:600;padding:0 22px;cursor:pointer;min-height:48px}
.check button:hover{background:#e5fb7d}

.scroll{position:absolute;z-index:2;left:50%;bottom:20px;transform:translateX(-50%);font-size:13px;color:var(--grijs)}

.lev{position:absolute;z-index:2;left:0;right:0;top:13vh;text-align:center;padding:0 24px;opacity:0;pointer-events:none}
.lev h2{font-size:clamp(28px,3.8vw,50px);line-height:1.1;letter-spacing:-.03em;font-weight:500;margin-bottom:10px}
.lev p{color:#d5e0e8;font-size:17px;max-width:560px;margin:auto}

.chip{position:absolute;z-index:2;left:0;top:0;padding:10px 18px;border-radius:99px;background:#fff;color:var(--inkt);font-size:15px;font-weight:600;white-space:nowrap;opacity:0;box-shadow:0 12px 30px rgba(0,0,0,.3);will-change:transform}
.chip.meer{background:var(--lime)}


.skip{position:absolute;left:-999px;z-index:30;background:#fff;color:var(--inkt);padding:10px 16px;border-radius:8px}
.skip:focus{left:12px;top:12px}
.menu-knop{display:none;background:none;border:0;padding:10px 6px;cursor:pointer}
.menu-knop span{display:block;width:22px;height:2px;background:#fff;margin:5px 0}
:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
section[id]{scroll-margin-top:62px}
.js .kom{opacity:0;transform:translateY(22px);transition:opacity .7s ease-out,transform .7s ease-out}
.js .kom.zien{opacity:1;transform:none}

.blok{max-width:1200px;margin:auto;padding:104px 40px}
.kop-rij{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:48px}
.kop-rij p{font-size:18px;align-self:end}
.blok h2,.lp-band h2,.wie h2,.reken h2,.slot h2{font-size:clamp(32px,4vw,52px);line-height:1.08;letter-spacing:-.03em;font-weight:500}
.knop{display:inline-block;background:var(--lime);color:var(--inkt);font-weight:600;border-radius:14px;padding:14px 24px;transition:background .2s,transform .2s}
.knop:hover{background:#e5fb7d;transform:translateY(-2px)}

.kaarten{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.kaart{border-radius:26px;padding:28px;min-height:330px;display:flex;flex-direction:column;background:var(--creme2)}
.js .kaart.zien{transition:opacity .7s,transform .3s}
.kaart:hover{transform:translateY(-6px)}
.kaart.a{background:var(--nacht);color:#fff}
.kaart.b{background:var(--lime)}
.kaart h3{font-size:24px;letter-spacing:-.02em;font-weight:500;margin:auto 0 8px}
.anim{width:100%;max-width:220px;height:auto;margin:0 auto 18px;display:block;overflow:visible}
.samen circle{fill:#afd4f0;animation:naar 3.4s ease-in-out infinite}
.samen .kern{fill:var(--lime);animation:klop 3.4s ease-in-out infinite;transform-origin:100px 60px}
.samen .s1{--x:70px;--y:40px}.samen .s2{--x:-70px;--y:36px}.samen .s3{--x:78px;--y:-38px}.samen .s4{--x:-76px;--y:-36px}.samen .s5{--x:0px;--y:50px}.samen .s6{--x:-4px;--y:-52px}
@keyframes naar{0%,12%{transform:none;opacity:1}55%,80%{transform:translate(var(--x),var(--y));opacity:0}100%{transform:none;opacity:1}}
@keyframes klop{0%,45%{transform:scale(.8)}60%{transform:scale(1.35)}100%{transform:scale(.8)}}
.keuze path{fill:none;stroke:rgba(16,32,43,.3);stroke-width:2}
.keuze .gekozen{stroke:var(--inkt);stroke-width:3;stroke-dasharray:146;animation:route 3.4s ease-in-out infinite}
.keuze circle{fill:var(--inkt)}
@keyframes route{0%{stroke-dashoffset:146}55%,100%{stroke-dashoffset:0}}
.munt circle,.munt path{fill:none;stroke:var(--inkt);stroke-width:3;stroke-linecap:round}
.munt circle{stroke-dasharray:6 8;animation:draai 14s linear infinite;transform-origin:100px 60px}
@keyframes draai{to{transform:rotate(360deg)}}

.reken{background:var(--nacht);color:#fff;padding:104px 40px;background-image:radial-gradient(70% 90% at 80% 40%,#1c4058 0%,transparent 70%)}
.reken-in{max-width:1200px;margin:auto;display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:center}
.reken-uitleg{font-size:18px;color:#d5e0e8;margin:16px 0 32px;max-width:520px}
.schuif{display:grid;grid-template-columns:1fr auto;gap:8px 16px;margin-bottom:22px}
.schuif label{font-size:15px;color:#d5e0e8}
.schuif output{font-weight:600;font-variant-numeric:tabular-nums}
.schuif input{grid-column:1/-1;appearance:none;-webkit-appearance:none;width:100%;height:6px;border-radius:9px;margin:6px 0;cursor:pointer;
  background:linear-gradient(90deg,var(--lime) var(--v,0%),rgba(255,255,255,.16) var(--v,0%))}
.schuif input::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:#fff;border:5px solid var(--lime);box-shadow:0 0 18px rgba(216,242,90,.55)}
.schuif input::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#fff;border:5px solid var(--lime);box-shadow:0 0 18px rgba(216,242,90,.55)}
.uitkomst{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:28px;padding:32px}
.stippen{display:grid;grid-template-columns:repeat(14,1fr);gap:7px;margin-bottom:28px}
.stippen i{aspect-ratio:1;border-radius:50%;background:rgba(255,255,255,.1);transition:background .3s,box-shadow .3s}
.stippen i.aan{background:var(--lime);box-shadow:0 0 10px rgba(216,242,90,.6)}
.uit-label{color:#d5e0e8;font-size:15px}
.bedrag{font-size:clamp(52px,6.4vw,80px);line-height:1.05;letter-spacing:-.035em;font-weight:500;color:var(--lime);font-variant-numeric:tabular-nums}
.uit-sub{color:#d5e0e8;margin:6px 0 22px}
.uit-sub strong{color:#fff;font-weight:600}
.voetnoot{font-size:13px;color:var(--grijs);margin-top:16px}

.stappen{position:relative;max-width:760px;margin-left:auto}
.lijn{position:absolute;left:23px;top:24px;bottom:60px;width:2px;background:var(--creme2)}
.lijn i{display:block;width:100%;height:0;background:linear-gradient(#a9cf6c,#2f6d78);box-shadow:0 0 12px rgba(120,190,130,.8)}
.stap{position:relative;display:flex;gap:24px;padding-bottom:44px;opacity:.45;transition:opacity .4s}
.stap:last-of-type{padding-bottom:0}
.stap.aan{opacity:1}
.stap>span{flex:none;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--creme2);font-weight:600;transition:background .4s,box-shadow .4s}
.stap.aan>span{background:var(--lime);box-shadow:0 0 22px rgba(170,205,90,.75)}
.stap h3{font-size:24px;letter-spacing:-.02em;font-weight:500;margin-bottom:4px}
.stap p{font-size:17px}

.wie{background:var(--creme2);overflow:hidden}
.band{padding:22px 0;background:var(--nacht);color:#fff;overflow:hidden}
.band-in{display:flex;width:max-content;gap:44px;animation:band 34s linear infinite;font-size:20px;letter-spacing:-.01em}
.band-in span::after{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--lime);margin-left:44px;vertical-align:middle}
@keyframes band{to{transform:translateX(-50%)}}
.wie-in{max-width:1200px;margin:auto;padding:88px 40px 104px}
.tegels{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.tegel{position:relative;overflow:hidden;background:var(--nacht);color:#fff;border-radius:22px;padding:52px 24px 24px;min-height:170px;display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate}
.tegel::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .25s;background:radial-gradient(220px circle at var(--x,50%) var(--y,50%),rgba(169,207,108,.6),transparent 70%)}
.tegel:hover::before{opacity:1}
.tegel::after{content:"\2192";position:absolute;top:18px;right:22px;font-size:22px;color:var(--lime);transition:transform .25s}
.tegel:hover::after{transform:translateX(5px)}
.tegel h3{font-size:21px;letter-spacing:-.02em;font-weight:500}
.tegel p{font-size:15px;color:#d5e0e8}

.vraag-lijst{max-width:820px;margin-left:auto}
details{border-bottom:1px solid #d9d2c1}
summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;font-size:20px;letter-spacing:-.01em;font-weight:500;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:4px;top:15px;font-size:26px;font-weight:400;transition:transform .2s}
details[open] summary::after{transform:rotate(45deg)}
details p{padding:0 40px 20px 0;font-size:17px}

.slot{position:relative;overflow:hidden;background:linear-gradient(var(--nacht) 35%,#0a1823);color:#fff;text-align:center;padding:96px 24px 72px}
.slot-gloed{position:absolute;left:50%;top:34%;width:520px;height:520px;margin:-260px;border-radius:50%;background:radial-gradient(circle,rgba(190,225,120,.28),transparent 68%);animation:adem 4.5s ease-in-out infinite}
@keyframes adem{50%{opacity:.55;transform:scale(1.08)}}
.slot>*:not(.slot-gloed){position:relative}
.slot-schicht{display:inline-block;width:auto;height:90px;margin-bottom:16px}
.slot p{font-size:18px;color:#d5e0e8;margin:12px 0 26px}

.voet{background:#0a1823;color:#d5e0e8;padding:64px 40px 48px;font-size:15px}
.voet-in{max-width:1200px;margin:auto;display:grid;grid-template-columns:40% 1fr 1fr;gap:40px}
.voet .merk{margin-bottom:14px}
.voet .merk img{height:42px}
.voet h3{color:#fff;font-size:15px;font-weight:600;margin-bottom:12px}
.voet-in>div>a:not(.merk){display:block;padding:4px 0}
.voet-in>div>a:not(.merk):hover{color:#fff}
.voet-onder{max-width:1200px;margin:40px auto 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 32px;font-size:14px;color:#a9bac6}
.voet-onder a:hover{color:#fff}

.aanvraag{position:relative;overflow:hidden;overflow:clip;background:var(--nacht);color:#fff;padding:128px 40px 88px;background-image:radial-gradient(70% 80% at 18% 30%,#1c4058 0%,transparent 70%)}
.aanvraag-schicht{position:absolute;left:-6%;bottom:-16%;width:620px;height:620px;fill:rgba(169,207,108,.07);pointer-events:none}
.aanvraag-in{position:relative;max-width:1200px;margin:auto;display:grid;grid-template-columns:1fr minmax(0,620px);grid-template-rows:auto 1fr;grid-template-areas:"kop form" "punten form";gap:32px 72px}
.aanvraag-kop{grid-area:kop}
.aanvraag-kop p{font-size:18px;color:#d5e0e8;max-width:480px}
.aanvraag-kop p+p{margin-top:14px}
.aanvraag-kop .knop{margin-top:28px}
.aanvraag-smal{background-image:radial-gradient(70% 80% at 18% 30%,#1c4058 0%,transparent 70%),linear-gradient(var(--nacht) 45%,#0a1823)}
.aanvraag-smal .aanvraag-in{display:block;max-width:720px}
.punten{grid-area:punten;list-style:none;padding:0;color:#d5e0e8;max-width:480px}
.punten li{position:relative;padding:0 0 12px 22px}
.punten li::before{content:"";position:absolute;left:2px;top:9px;width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 12px rgba(216,242,90,.6)}
.formulier{grid-area:form;background:#fff;color:var(--inkt);border-radius:28px;padding:32px;box-shadow:0 24px 60px rgba(0,0,0,.28);min-width:0}
.voortgang{position:sticky;z-index:1;top:60px;background:#fff;margin:-12px 0 12px;padding:12px 0 10px}
.voortgang[hidden]{display:none}
.voortgang p{font-size:13px;font-weight:600;color:#3f505c;margin-bottom:6px;font-variant-numeric:tabular-nums}
.voortgang-balk{height:6px;border-radius:9px;background:var(--creme2);overflow:hidden}
.voortgang-balk i{display:block;width:0;height:100%;border-radius:9px;background:linear-gradient(90deg,#a9cf6c,#2f6d78);transition:width .35s ease-out}
.voortgang.vol .voortgang-balk i{box-shadow:0 0 12px rgba(120,190,130,.8)}
.fveld{scroll-margin-top:130px}
.velden{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fveld{min-width:0}
.fveld.breed{grid-column:1/-1}
.fveld label{display:block;font-size:14px;font-weight:600;color:#3f505c;margin-bottom:5px}
.fveld input,.fveld select,.fveld textarea{width:100%;border:1px solid #cfc8b8;border-radius:12px;background:#fff;font:inherit;font-size:16px;color:var(--inkt);padding:11px 13px;min-height:48px}
.fveld textarea{resize:vertical;display:block}
.fveld select{appearance:none;-webkit-appearance:none;padding-right:42px;cursor:pointer;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%2310202b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 16px center/12px 8px}
.fveld input::placeholder,.fveld textarea::placeholder{color:#6c7a85}
.fveld input:focus,.fveld select:focus,.fveld textarea:focus{outline:2px solid var(--nacht);outline-offset:0;border-color:var(--nacht)}
.fveld small{display:block;font-size:13px;color:#3f505c;margin-top:4px}
.fveld small[hidden]{display:none}
.formulier a{text-decoration:underline}
.formulier .knop{width:100%;border:0;font:inherit;font-weight:600;cursor:pointer;margin-top:20px;min-height:52px}
.formulier .knop:focus-visible{outline-color:var(--nacht)}
.klein{font-size:13px;color:#5a6b78;margin-top:14px}
.melding{background:#fdecea;color:#8a1f14;border-radius:12px;padding:12px 14px;margin-bottom:18px;font-size:15px}
.hp{position:absolute;left:-9999px;height:1px;overflow:hidden}
.uitleg{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.uitleg article{background:var(--creme2);border-radius:22px;padding:26px}
.uitleg h3{font-size:21px;letter-spacing:-.02em;font-weight:500;margin-bottom:8px}

.lp-kop{position:relative;overflow:hidden;overflow:clip;background:var(--nacht);color:#fff;padding:136px 40px 88px;background-image:radial-gradient(70% 80% at 18% 30%,#1c4058 0%,transparent 70%)}
.lp-kop-in{position:relative;max-width:1200px;margin:auto;display:grid;grid-template-columns:1fr minmax(0,480px);gap:72px;align-items:center}
.kruimel{display:flex;flex-wrap:wrap;font-size:14px;color:#d5e0e8;margin-bottom:22px}
.kruimel a:hover{color:#fff}
.kruimel>*+*::before{content:"/";margin:0 9px;color:var(--grijs)}
.lp-intro{font-size:19px;color:#d5e0e8;max-width:540px;margin-bottom:28px}
.lp-los{font-size:14px;color:#d5e0e8;margin-top:16px}
.kort{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:28px;padding:30px}
.kort h2{font-size:22px;letter-spacing:-.02em;font-weight:500;margin-bottom:12px}
.kort dl>div{display:grid;grid-template-columns:1fr 1.15fr;gap:16px;padding:11px 0;border-top:1px solid rgba(255,255,255,.12);font-size:15px}
.kort dt{color:#d5e0e8}
.kort dd{margin:0;font-weight:600}
.voetnoot.donker{color:#5a6b78}
.oordeel{margin-top:14px;padding-top:14px;border-top:1px solid #d3cbb9}
.oordeel b{font-weight:600}
.wie-maat{font-weight:600;margin-bottom:8px}
.uitleg.twee{grid-template-columns:repeat(2,1fr)}
.lp-band{background:var(--creme2)}
.lp-band-in{max-width:1200px;margin:auto;padding:88px 40px}
.lp-band .uitleg article{background:var(--creme)}
.lp-band .oordeel{border-color:#d9d2c1}
.lp-slot-info{max-width:1200px;margin:auto;padding:0 40px 104px;display:grid;grid-template-columns:1fr 1fr;gap:64px}
.lp-slot-info h2{font-size:24px;letter-spacing:-.02em;font-weight:500;margin-bottom:10px}
.lp-namen{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.lp-namen>*{background:var(--creme2);border-radius:99px;padding:8px 15px;font-size:15px}
.lp-namen a{background:var(--nacht);color:#fff}
.uitleg p a{text-decoration:underline}
.blok>.voetnoot{max-width:760px;margin-top:20px}
.bronnen{padding-left:20px;font-size:15px}
.bronnen li{padding:3px 0}
.bronnen a{text-decoration:underline}

.kort ul{list-style:none;padding:0;margin:0}
.kort li{padding:12px 0;border-top:1px solid rgba(255,255,255,.14);font-size:15px;color:#fff}
.uitleg article[id]{scroll-margin-top:96px}
.regels{max-width:760px;margin:auto;padding:80px 40px 104px}
.regels h2{font-size:27px;line-height:1.2;letter-spacing:-.02em;font-weight:500;margin:44px 0 12px}
.regels h2:first-child{margin-top:0}
.regels p,.regels ul{font-size:17px;margin-bottom:14px}
.regels ul{padding-left:22px}
.regels li{margin-bottom:6px}
.regels a{text-decoration:underline}
@media (max-width:1120px){
  .nav-in,.nav.balk .nav-in{padding:12px 20px;gap:12px}.menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--nacht);flex-direction:column;gap:0;padding:8px 20px 20px}.menu.open{display:flex}.menu a{padding:12px 0;font-size:17px;color:#fff}.menu-knop{display:block}.knop-rand{padding:8px 13px;font-size:13px;white-space:nowrap}
}
@media (max-width:820px){
  .stage{height:auto}
  .vast{position:relative;height:auto;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:68px 20px 48px;background:radial-gradient(120% 340px at 50% 150px,#1c4058 0%,var(--nacht) 70%)}
  .vast>canvas{position:relative;inset:auto;flex:0 0 calc(100% + 40px);width:calc(100% + 40px);height:clamp(170px,24svh,260px);margin:0 -20px;-webkit-mask-image:linear-gradient(transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(transparent,#000 14%,#000 86%,transparent)}
  .tekst{position:relative;inset:auto;flex:0 0 100%;padding:0;margin:0}
  .intro{animation-delay:.1s;animation-duration:.5s}
  .label{display:none}
  h1{font-size:38px;margin-bottom:12px}
  .onder{font-size:16px;margin-bottom:16px}
  .check{grid-template-columns:1fr 1fr;gap:0;border-radius:18px}
  .veld{border-right:0;border-bottom:1px solid #e6e2d8}
  .check button{grid-column:1/-1;margin-top:8px}
  .scroll{display:none}
  .lev{position:relative;top:auto;flex:0 0 100%;padding:0;margin-top:40px;opacity:1;pointer-events:auto}
  .lev h2{font-size:26px}.lev p{font-size:15px;margin-bottom:10px}
  .chip{position:static;padding:7px 13px;font-size:13px;opacity:1;box-shadow:none;will-change:auto}
}
@media (max-width:560px){.velden{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.nav .merk img{height:40px}}
@media (max-width:980px){.tegels{grid-template-columns:repeat(2,1fr)}.reken-in{grid-template-columns:1fr;gap:40px}}
@media (max-width:820px){
  .blok{padding:68px 20px}.kop-rij{grid-template-columns:1fr;gap:12px;margin-bottom:32px}.kop-rij p{font-size:17px}
  .aanvraag{padding:92px 20px 56px}
  .aanvraag-in{grid-template-columns:minmax(0,1fr);grid-template-rows:none;grid-template-areas:"kop" "form" "punten";gap:24px}
  .aanvraag-kop p{font-size:16px}.formulier{padding:20px;border-radius:22px}.uitleg{grid-template-columns:1fr}
  .aanvraag-schicht{width:420px;height:420px}
  .kaarten{grid-template-columns:1fr}.kaart{min-height:0}.anim{max-width:170px}.kaart h3{margin-top:8px}
  .reken{padding:68px 20px}.uitkomst{padding:22px}
  .wie-in{padding:60px 20px 68px}.tegel{min-height:130px;padding:48px 18px 18px}.tegel h3{font-size:18px}.tegel p{font-size:14px}
  .stappen,.vraag-lijst{margin-left:0}.stap{gap:16px}
  .band-in{font-size:17px}summary{font-size:18px}
  .lp-kop{padding:100px 20px 56px}.lp-kop-in{grid-template-columns:minmax(0,1fr);gap:32px}.lp-intro{font-size:17px}.kort{padding:22px;border-radius:22px}
  .uitleg.twee{grid-template-columns:1fr}.lp-band-in{padding:60px 20px}.lp-slot-info{grid-template-columns:1fr;gap:40px;padding:0 20px 68px}
  .voet{padding:52px 20px 40px}.voet-in{grid-template-columns:1fr 1fr;gap:28px}.voet-in>div:first-child{grid-column:1/-1}
}
@media (prefers-reduced-motion:reduce){
  .voortgang-balk i{transition:none}
  html{scroll-behavior:auto}.intro{animation:none;opacity:1;transform:none}
  .js .kom{opacity:1;transform:none;transition:none}
  .samen circle,.samen .kern,.keuze .gekozen,.munt circle,.band-in,.slot-gloed{animation:none}
  .keuze .gekozen{stroke-dashoffset:0}.samen circle:not(.kern){opacity:.9}
}

/* Waarschuwing op de contactpagina */
.waarschuwing{grid-area:punten;max-width:480px;background:rgba(216,242,90,.08);border:1px solid rgba(216,242,90,.4);border-radius:22px;padding:24px}
.waarschuwing h2{font-size:21px;letter-spacing:-.02em;font-weight:500;color:var(--lime);margin-bottom:8px}
.waarschuwing p{font-size:15px;color:#e4ebf0}
.waarschuwing p+p{margin-top:10px}
.aanvraag-kop p a{text-decoration:underline}
.lp-kop-smal{padding-bottom:56px}
#over .lp-namen{margin-top:20px}

/* Toegankelijkheid: icoon naast Adviesgesprek, opties schuiven als strook onder de navigatie open */
.nav-rechts{display:flex;align-items:center;gap:10px}
.a11y-knop{position:relative;flex:none;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:none;color:#fff;display:grid;place-items:center;cursor:pointer;transition:background .2s,color .2s}
.a11y-knop:hover{background:rgba(255,255,255,.1)}
.a11y-knop svg{width:21px;height:21px}
.a11y-knop[aria-expanded=true]{background:var(--lime);border-color:var(--lime);color:var(--nacht)}
.a11y-knop.actief::after{content:"";position:absolute;top:0;right:0;width:9px;height:9px;border-radius:50%;background:var(--lime)}
.a11y-paneel{position:absolute;top:100%;left:0;right:0;background:var(--nacht);border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(216,242,90,.45);box-shadow:0 24px 50px rgba(0,0,0,.35);max-height:calc(100vh - 70px);overflow:auto;animation:a11y-in .22s ease-out}
.a11y-paneel[hidden]{display:none}
@keyframes a11y-in{from{opacity:0;transform:translateY(-10px)}}
.a11y-in{max-width:1280px;margin:auto;padding:28px 40px 32px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);gap:40px;align-items:center}
#a11y-titel{font-size:26px;line-height:1.15;letter-spacing:-.02em;font-weight:500;color:#fff;margin-bottom:14px}
.a11y-acties{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px}
.a11y-acties a,.a11y-acties button{border:0;background:none;padding:0;font:inherit;color:#d5e0e8;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.a11y-acties a:hover,.a11y-acties button:hover{color:#fff}
.a11y-opties{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.a11y-optie{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:18px 20px;border:1px solid rgba(255,255,255,.16);border-radius:22px;background:rgba(255,255,255,.05);font:inherit;color:#fff;text-align:left;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.a11y-optie:hover{border-color:rgba(255,255,255,.4)}
.a11y-optie:focus-visible{outline-color:#fff}
.a11y-voorbeeld{font-size:34px;line-height:1;font-weight:500;letter-spacing:-.02em}
[data-a11y=contrast] .a11y-voorbeeld{background:#fff;color:#000;border-radius:8px;padding:4px 8px}
[data-a11y=grote-tekst] .a11y-voorbeeld{font-size:46px;margin-top:-6px;margin-bottom:-6px}
[data-a11y=dyslexie] .a11y-voorbeeld{font-family:Lexend,system-ui,sans-serif;font-weight:400}
.a11y-tekst b{display:block;font-size:17px;font-weight:600;line-height:1.3}
.a11y-tekst small{display:block;color:#b9c9d5;font-size:14px;line-height:1.35}
.a11y-stand{position:absolute;top:18px;right:20px;font-size:13px;font-weight:600;color:#b9c9d5}
.a11y-stand::after{content:"Uit"}
.a11y-optie[aria-checked=true]{background:var(--lime);border-color:var(--lime);color:var(--nacht)}
.a11y-optie[aria-checked=true] small,.a11y-optie[aria-checked=true] .a11y-stand{color:var(--nacht)}
.a11y-optie[aria-checked=true] .a11y-stand::after{content:"Aan"}
.a11y-optie[aria-checked=true][data-a11y=contrast] .a11y-voorbeeld{background:var(--nacht);color:#fff}
@media (prefers-reduced-motion:reduce){.a11y-paneel{animation:none}}
@media (max-width:1120px){.a11y-in{grid-template-columns:minmax(0,1fr);gap:18px;padding:22px 20px 24px}}
@media (max-width:820px){.nav-rechts{gap:6px}.a11y-knop{width:36px;height:36px}.a11y-knop svg{width:19px;height:19px}
  .a11y-opties{grid-template-columns:minmax(0,1fr);gap:8px}
  .a11y-optie{flex-direction:row;align-items:center;gap:14px;padding:12px 14px;border-radius:16px;padding-right:48px}
  .a11y-voorbeeld{width:48px;text-align:center;font-size:26px;flex:none}[data-a11y=grote-tekst] .a11y-voorbeeld{font-size:34px;margin:0}
  .a11y-stand{top:50%;right:14px;transform:translateY(-50%)}}

@font-face{font-family:Lexend;src:url(/fonts/lexend.woff2) format("woff2");font-weight:300 700;font-display:swap}
html.a11y-dyslexie body,html.a11y-dyslexie h1,html.a11y-dyslexie h2,html.a11y-dyslexie h3{font-family:Lexend,system-ui,sans-serif}
html.a11y-grote-tekst main>section:not(.stage),html.a11y-grote-tekst .voet,html.a11y-grote-tekst .tekst{zoom:1.18}
html.a11y-contrast{--inkt:#000;--creme:#fff;--creme2:#fff;--nacht:#000;--lime:#eaff60;--grijs:#fff}
html.a11y-contrast .voet{background:#000;color:#fff}
html.a11y-contrast .lp-intro,html.a11y-contrast .lp-los,html.a11y-contrast .onder,html.a11y-contrast .aanvraag-kop p,html.a11y-contrast .slot p,html.a11y-contrast .tegel p,html.a11y-contrast .kort dt,html.a11y-contrast .punten,html.a11y-contrast .waarschuwing p{color:#fff}
html.a11y-contrast .voetnoot.donker,html.a11y-contrast .klein,html.a11y-contrast .fveld label,html.a11y-contrast .fveld small,html.a11y-contrast .veld label{color:#000}
html.a11y-contrast main a:not(.knop):not(.tegel):not(.kaart),html.a11y-contrast .voet a{text-decoration:underline;text-underline-offset:2px}
html.a11y-contrast .uitleg article,html.a11y-contrast .kaart,html.a11y-contrast .formulier,html.a11y-contrast .fveld input,html.a11y-contrast .fveld select,html.a11y-contrast .fveld textarea,html.a11y-contrast .lp-namen>*{border:2px solid #000}
html.a11y-contrast .tegel,html.a11y-contrast .kort,html.a11y-contrast .waarschuwing{border:2px solid #fff}

/* Korte pagina's: footer blijft onderaan, het donkere formulierdeel groeit mee */
body{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:1fr auto}
main:has(>.aanvraag:last-child){display:flex;flex-direction:column}
main>.aanvraag:last-child{flex:1}

.kaart-meer{margin-top:10px}
.kaart-meer a{font-weight:600;text-decoration:underline;text-underline-offset:3px}
.lp-band .voetnoot a,.lp-slot-info a{text-decoration:underline}
.lp-band+.lp-slot-info,.reken+.lp-slot-info{padding-top:80px}
@media (max-width:820px){.lp-band+.lp-slot-info,.reken+.lp-slot-info{padding-top:56px}}
.bedankt-video{position:relative;aspect-ratio:16/9;margin:24px 0;border-radius:18px;overflow:hidden;background:var(--nacht)}
.bedankt-video>*{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bedankt-video img{display:block;width:100%;height:100%;object-fit:cover}
.bedankt-video-poster{display:none}
.bedankt-video.stil .bedankt-video-poster{display:block}.bedankt-video.stil .bedankt-video-film{display:none}
.bedankt-stappen{margin:0 0 14px 20px;color:#d5e0e8;font-size:18px}
.bedankt-stappen li+li{margin-top:6px}
.aanvraag-kop strong{color:#fff;font-weight:600}
@media (max-width:820px){.bedankt-stappen{font-size:16px}}
@media (max-width:700px){.bedankt-video{aspect-ratio:4/5}}
@media (prefers-reduced-motion:reduce){.bedankt-video-poster{display:block}.bedankt-video-film{display:none}}
.aanvraag-kop .bedankt-weekend{max-width:none;margin-top:18px;background:rgba(216,242,90,.08);border:1px solid rgba(216,242,90,.4);border-radius:16px;padding:14px 18px;font-size:16px}
html.a11y-contrast .bedankt-weekend{border:2px solid #fff}
