/* Modelpagina's in richting C. Laadt na c.css. */
.kruimel{font-size:.86rem;color:var(--zacht);margin-bottom:18px}
.kruimel a{text-decoration:none;color:var(--zacht)}
.kruimel a:hover{color:var(--petrol)}
.m-hero{padding:clamp(34px,5vw,60px) 0 clamp(60px,8vw,90px);background:radial-gradient(1000px 480px at 90% 0%,#eef5dc 0%,rgba(238,245,220,0) 60%),var(--creme)}
.m-hero .wrap{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(30px,5vw,64px);align-items:center}
.m-hero h1{font-size:clamp(2.4rem,4.8vw,3.9rem);line-height:1.04;letter-spacing:-.03em;margin:20px 0}
.m-hero h1 span{color:var(--groen-donker)}
.m-hero .lead{font-size:1.15rem;color:var(--zacht);max-width:540px}
.prijsregel{display:flex;align-items:baseline;gap:12px;margin:26px 0 4px;flex-wrap:wrap}
.prijsregel b{font-size:2.2rem;font-weight:800;color:var(--petrol);line-height:1}
.prijsregel span{color:var(--zacht);font-size:.95rem}
.m-hero .acties{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 18px}
.mozaiek{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:12px;height:clamp(360px,42vw,560px)}
.mozaiek img{width:100%;height:100%;object-fit:cover;border-radius:var(--r)}
.mozaiek img:first-child{grid-row:1/3;border-radius:var(--r-l)}
@media(max-width:980px){.m-hero .wrap{grid-template-columns:1fr}.mozaiek{height:auto;grid-template-rows:auto}.mozaiek img:first-child{aspect-ratio:4/3.4}.mozaiek img{aspect-ratio:1}}
@media(max-width:520px){.m-hero .acties .knop{width:100%}}

.feitenbalk{background:var(--wit);border-block:1px solid var(--lijn)}
.feitenbalk .wrap{display:grid;grid-template-columns:repeat(5,1fr)}
.feitenbalk .wrap>div{padding:24px 18px;border-left:1px solid var(--lijn)}
.feitenbalk .wrap>div:first-child{border-left:0;padding-left:0}
.feitenbalk b{display:block;font-size:1.35rem;font-weight:800;color:var(--petrol);line-height:1.15}
.feitenbalk span{font-size:.86rem;color:var(--zacht)}
@media(max-width:900px){.feitenbalk .wrap{grid-template-columns:repeat(2,1fr)}.feitenbalk .wrap>div{border-left:0;padding-left:0;border-top:1px solid var(--lijn)}.feitenbalk .wrap>div:nth-child(-n+2){border-top:0}}

.blok{padding:clamp(80px,10vw,130px) 0}
.blok.zand{background:var(--zand);border-radius:48px}
.blok.mist{background:var(--mist)}
.vierluik{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.vierluik>div{background:var(--wit);border-radius:var(--r);padding:24px;box-shadow:var(--schaduw)}
.vierluik .ic{width:44px;height:44px;border-radius:13px;background:var(--groen-zacht);color:var(--groen-donker);display:grid;place-items:center;margin-bottom:16px}
.vierluik .ic svg{width:22px;height:22px}
.vierluik b{display:block;font-size:1.05rem;margin-bottom:6px;line-height:1.3}
.vierluik p{font-size:.93rem;color:var(--zacht);line-height:1.5}
@media(max-width:980px){.vierluik{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.vierluik{grid-template-columns:1fr}}

.plan-paneel{display:none}
.plan-paneel.actief{display:block;animation:in .45s ease}
.plankaart{background:var(--wit);border-radius:var(--r-l);padding:clamp(16px,3vw,34px);box-shadow:var(--schaduw)}
.plankaart img{width:100%;height:auto;border-radius:8px}
.plan-onder{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:20px}
.plan-onder p{font-weight:600;color:var(--petrol)}
.ruimtes{display:flex;gap:8px;flex-wrap:wrap}
.ruimtes span{font-size:.84rem;font-weight:600;background:var(--mist);color:var(--petrol);padding:6px 12px;border-radius:999px}
.planscroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:700px){.planscroll img{min-width:640px}}

.binnen{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:260px 260px;gap:12px}
.binnen img{width:100%;height:100%;object-fit:cover;border-radius:var(--r)}
.binnen img:first-child{grid-row:1/3;border-radius:var(--r-l)}
.binnen img:last-child{grid-column:2/4}
@media(max-width:860px){.binnen{grid-template-columns:1fr 1fr;grid-template-rows:auto}.binnen img{aspect-ratio:4/3}.binnen img:first-child{grid-row:auto;grid-column:1/3}.binnen img:last-child{grid-column:1/3}}
.bijschrift{margin-top:14px;font-size:.86rem;color:var(--zacht)}

.comfort{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,80px);align-items:center}
.comfort h2{font-size:clamp(2rem,4vw,3rem)}
.comfort .intro{margin-top:18px;color:var(--zacht);font-size:1.1rem}
.drieregels{display:grid;gap:14px}
.drieregels>div{display:flex;gap:16px;background:var(--wit);border-radius:var(--r);padding:22px;box-shadow:var(--schaduw)}
.drieregels .ic{width:46px;height:46px;border-radius:14px;background:var(--petrol);color:var(--groen);display:grid;place-items:center;flex:none}
.drieregels .ic svg{width:22px;height:22px}
.drieregels b{display:block;margin-bottom:3px}
.drieregels p{font-size:.94rem;color:var(--zacht);line-height:1.5}
@media(max-width:900px){.comfort{grid-template-columns:1fr}}

.pakketten{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.pakket{background:var(--wit);border-radius:var(--r-l);padding:30px 28px;box-shadow:var(--schaduw);display:flex;flex-direction:column;position:relative}
.pakket.uitgelicht{background:var(--petrol);color:#fff;box-shadow:var(--schaduw-l);transform:translateY(-10px)}
.pakket .naam{font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--groen-donker)}
.pakket.uitgelicht .naam{color:var(--groen)}
.pakket h3{font-size:1.35rem;margin:10px 0 8px}
.pakket .voorwie{font-size:.95rem;color:var(--zacht);min-height:3em}
.pakket.uitgelicht .voorwie{color:rgba(255,255,255,.75)}
.pakket .bedrag{margin:22px 0 20px;padding:18px 0;border-block:1px solid #edf0ec}
.pakket.uitgelicht .bedrag{border-color:rgba(255,255,255,.15)}
.pakket .bedrag small{display:block;font-size:.8rem;color:var(--zacht)}
.pakket.uitgelicht .bedrag small{color:rgba(255,255,255,.7)}
.pakket .bedrag b{font-size:1.9rem;font-weight:800;color:var(--petrol)}
.pakket.uitgelicht .bedrag b{color:#fff}
.pakket .bedrag b.klein{font-size:1.25rem}
.pakket ul{list-style:none;padding:0;margin:0 0 20px;display:grid;gap:10px;font-size:.95rem}
.pakket li{display:flex;gap:10px;line-height:1.45}
.pakket li svg{width:18px;height:18px;flex:none;margin-top:3px;color:var(--groen-donker)}
.pakket.uitgelicht li svg{color:var(--groen)}
.pakket .let{margin-top:auto;font-size:.85rem;color:var(--zacht);background:var(--creme);border-radius:12px;padding:12px 14px}
.pakket.uitgelicht .let{background:rgba(255,255,255,.08);color:rgba(255,255,255,.8)}
.lint{position:absolute;top:-13px;left:28px;background:var(--groen);color:var(--petrol-nacht);font-size:.78rem;font-weight:700;padding:6px 13px;border-radius:999px}
.opties{margin-top:30px;display:flex;align-items:center;gap:10px 14px;flex-wrap:wrap;justify-content:center}
.opties b{font-size:.92rem;color:var(--petrol)}
.opties span{font-size:.86rem;background:var(--wit);border:1px solid var(--lijn);padding:7px 13px;border-radius:999px;color:var(--tekst)}
@media(max-width:980px){.pakketten{grid-template-columns:1fr;max-width:540px;margin-inline:auto}.pakket.uitgelicht{transform:none}}

.taak{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.taak>div{border-radius:var(--r-l);padding:clamp(24px,3vw,36px)}
.taak .wij{background:var(--petrol);color:#fff}
.taak .jij{background:var(--wit);box-shadow:var(--schaduw)}
.taak h3{font-size:1.3rem;margin-bottom:6px}
.taak .sub{font-size:.95rem;margin-bottom:20px}
.taak .wij .sub{color:rgba(255,255,255,.7)}
.taak .jij .sub{color:var(--zacht)}
.taak ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.taak li{display:flex;gap:12px;line-height:1.45}
.taak li svg{width:20px;height:20px;flex:none;margin-top:2px}
.taak .wij li svg{color:var(--groen)}
.taak .jij li svg{color:var(--petrol)}
@media(max-width:800px){.taak{grid-template-columns:1fr}}

.bouw{background:var(--petrol-nacht);color:#fff;padding:clamp(80px,10vw,130px) 0;overflow:hidden}
.bouw .label{color:var(--groen)}
.bouw .kop-sectie p{color:rgba(255,255,255,.75)}
.bouw-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:clamp(24px,4vw,50px);align-items:center}
.film{position:relative;border-radius:var(--r-l);overflow:hidden;aspect-ratio:16/10;display:grid;place-items:center}
.film img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.8) brightness(.55)}
.film .knopje{position:relative;width:88px;height:88px;border-radius:50%;background:var(--groen);display:grid;place-items:center}
.film .knopje::after{content:"";border-left:24px solid var(--petrol-nacht);border-top:15px solid transparent;border-bottom:15px solid transparent;margin-left:6px}
.film small{position:absolute;left:20px;bottom:18px;font-size:.88rem;background:rgba(11,45,54,.7);padding:7px 12px;border-radius:999px}
.tijdlijn{list-style:none;margin:0;padding:0}
.tijdlijn li{display:grid;grid-template-columns:28px 1fr;gap:16px;padding-bottom:26px;position:relative}
.tijdlijn li::before{content:"";width:16px;height:16px;border-radius:50%;background:var(--groen);margin-top:5px}
.tijdlijn li::after{content:"";position:absolute;left:7px;top:26px;bottom:0;width:2px;background:rgba(255,255,255,.15)}
.tijdlijn li:last-child::after{display:none}
.tijdlijn li.straks::before{background:transparent;border:2px solid rgba(255,255,255,.45)}
.tijdlijn b{display:block;font-size:1.05rem}
.tijdlijn span{font-size:.93rem;color:rgba(255,255,255,.7)}
@media(max-width:900px){.bouw-grid{grid-template-columns:1fr}}

.citaatband{padding:clamp(60px,8vw,90px) 0}
.citaatband .wrap{display:grid;grid-template-columns:auto 1fr;gap:30px;align-items:center;max-width:980px}
.citaatband img{width:110px;height:110px;border-radius:50%;object-fit:cover}
.citaatband blockquote{margin:0;font-size:clamp(1.3rem,2.4vw,1.75rem);font-weight:600;line-height:1.38;color:var(--petrol)}
.citaatband cite{display:block;font-style:normal;font-size:.95rem;font-weight:500;color:var(--zacht);margin-top:12px}
@media(max-width:600px){.citaatband .wrap{grid-template-columns:1fr}}

.wl-vol{background:var(--petrol-nacht);color:#fff;padding:clamp(80px,10vw,130px) 0;overflow:hidden;position:relative}
.wl-vol::before{content:"";position:absolute;width:760px;height:760px;left:-260px;top:-240px;border-radius:50%;background:radial-gradient(circle,rgba(138,184,39,.16),rgba(138,184,39,0) 65%)}
.wl-vol .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(30px,5vw,70px);align-items:start;position:relative}
.wl-vol .label{color:var(--groen)}
.wl-vol h2{font-size:clamp(2.2rem,4.4vw,3.3rem)}
.wl-vol .intro{margin-top:18px;color:rgba(255,255,255,.8);font-size:1.08rem}
.teller{display:flex;align-items:center;gap:18px;margin:30px 0 10px}
.teller strong{font-size:clamp(4.2rem,8vw,6rem);line-height:.85;font-weight:800;color:var(--groen)}
.teller span{color:rgba(255,255,255,.85);line-height:1.35}
.teller span b{display:block;color:#fff;font-size:1.15rem}
.minidorp{display:grid;grid-template-columns:repeat(10,1fr);gap:6px;max-width:360px;margin:12px 0 28px}
.minidorp i{aspect-ratio:1;border-radius:5px;background:rgba(138,184,39,.16);border:1px solid rgba(138,184,39,.4)}
.minidorp i.weg{background:#fff;border-color:#fff}
.beloftes{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.beloftes li{display:flex;gap:12px;color:rgba(255,255,255,.9)}
.beloftes svg{width:20px;height:20px;color:var(--groen);flex:none;margin-top:3px}
.formulier{background:var(--wit);color:var(--tekst);border-radius:var(--r-l);padding:clamp(24px,3.5vw,42px);box-shadow:0 40px 80px -30px rgba(0,0,0,.5)}
.formulier h3{font-size:1.5rem}
.formulier .uitleg{color:var(--zacht);font-size:.95rem;margin:6px 0 22px}
.formulier form{display:grid;gap:14px}
.formulier .groep{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--groen-donker);margin-top:8px}
.formulier label{display:grid;gap:6px;font-size:.88rem;font-weight:600}
.formulier input,.formulier select,.formulier textarea{font:inherit;font-size:.97rem;padding:13px 15px;border-radius:12px;border:1.5px solid var(--lijn);background:var(--creme);color:var(--tekst);width:100%}
.formulier textarea{min-height:84px;resize:vertical}
.formulier input:focus,.formulier select:focus,.formulier textarea:focus{outline:none;border-color:var(--groen);box-shadow:0 0 0 4px rgba(138,184,39,.2)}
.formulier .twee{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:end}
.vraag{font-size:.88rem;font-weight:600;margin-bottom:6px}
.keuzes{display:flex;gap:8px;flex-wrap:wrap}
.keuzes label{display:block;cursor:pointer;position:relative}
.keuzes input{position:absolute;opacity:0;width:1px;height:1px}
.keuzes span{display:inline-block;padding:10px 15px;border-radius:999px;border:1.5px solid var(--lijn);background:var(--creme);font-weight:600;font-size:.9rem;transition:background .15s,border-color .15s,color .15s}
.keuzes input:checked+span{background:var(--petrol);border-color:var(--petrol);color:#fff}
.keuzes input:focus-visible+span{box-shadow:0 0 0 4px rgba(138,184,39,.3)}
.formulier .akkoord{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:.85rem;color:var(--zacht)}
.formulier .akkoord input{width:auto;margin-top:3px;accent-color:var(--petrol)}
.formulier .knop{width:100%;margin-top:6px}
.formulier .klein{font-size:.82rem;color:var(--zacht);text-align:center}
@media(max-width:980px){.wl-vol .wrap{grid-template-columns:1fr}}
@media(max-width:560px){.formulier .twee{grid-template-columns:1fr}}

.formulier .voortgang{display:flex;gap:6px;margin-bottom:6px}
.formulier .voortgang i{height:5px;flex:1;border-radius:9px;background:var(--mist);display:block}
.formulier .voortgang i.aan{background:var(--groen)}
.formulier .stap-tel{font-size:.82rem;font-weight:700;color:var(--groen-tekst);margin:0 0 4px}
.stap-p{display:grid;gap:14px}
.stap-p[hidden]{display:none}
.stap-knoppen{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-top:6px}
.stap-knoppen .knop{flex:1}
.stap-knoppen .terug{background:none;border:0;font:inherit;font-weight:700;color:var(--petrol);cursor:pointer;padding:12px 8px;text-decoration:underline}
.zonadvies{margin-top:22px;background:var(--groen-zacht);border-radius:var(--r);padding:16px 20px;line-height:1.55}
.zonadvies b{color:var(--petrol)}
.pil-status{margin-left:8px;background:var(--creme);box-shadow:inset 0 0 0 1.5px var(--groen)}
.beeldnoot{font-size:.9rem;color:var(--zacht);margin:10px 0 16px;max-width:560px}
@media(max-width:900px){.feitenbalk .wrap>div:last-child:nth-child(odd){grid-column:1/-1}}
