/* Lago Rosa Apartment. Kleuren uit het logo (flamingo, zand, crème) en de kunstwand in het
   appartement; blauw en rood op verzoek van Roy (02-11) vervangen door warm bruin en oud roze. Contrast op zout:
   inkt 13.2:1, roos-diep 4.8:1, wit op roos-diep 5.0:1, wit op inkt 13.6:1. */
:root{
  --zout:#FFFBF7; --creme:#FBF1E9; --blush:#F9E4DF; --flamingo:#E4A6A4; --roos:#C98D93; --roos-diep:#9A5F68;
  --zand:#BFA27E; --inkt:#3A2A2D; --inkt-zacht:#6F5A5D; --oranje:#E8893C;
  --p1:#FEF3EF; --p2:#FADCD6; --p3:#F5C2BE; --p4:#EC9FA2;
  --kop:"Gilda Display",Georgia,serif; --tekst:"Jost","Avenir Next",Avenir,sans-serif;
  --breed:76rem; --smal:40rem; --rand:clamp(1rem,4vw,3rem); --lucht:clamp(3.5rem,8vw,7rem);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:5.5rem}
body{margin:0;background:var(--zout);color:var(--inkt);font:400 1.0625rem/1.65 var(--tekst);overflow-wrap:break-word}
img{display:block;max-width:100%;height:auto}
h1,h2,h3{font-family:var(--kop);font-weight:400;line-height:1.15;margin:0;text-wrap:balance}
h1{font-size:clamp(2rem,3.4vw,3rem)} h2{font-size:clamp(1.7rem,2.6vw,2.4rem)} h3{font-size:1.4rem}
p{margin:0 0 1em} p:last-child{margin-bottom:0}
a{color:var(--roos-diep);text-underline-offset:.18em}
a:hover{color:var(--inkt)}
:focus-visible{outline:3px solid var(--oranje);outline-offset:2px;border-radius:2px}
.wrap{max-width:var(--breed);margin-inline:auto;padding-inline:var(--rand)}
.overslaan{position:absolute;left:-999px;top:0;background:var(--inkt);color:#fff;padding:.6rem 1rem;z-index:50}
.overslaan:focus{left:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.lucht{padding-block:var(--lucht)}
.smal{max-width:var(--smal)}
.klein{font-size:.95rem;color:var(--inkt-zacht)}

/* Knoppen */
.knop{display:inline-flex;align-items:center;gap:.55rem;background:var(--roos-diep);color:#fff;border:0;border-radius:999px;padding:.8rem 1.5rem;font:500 1.0625rem/1.2 var(--tekst);text-decoration:none;cursor:pointer;transition:background .15s}
.knop:hover{background:var(--inkt);color:#fff}
.knop:active{transform:translateY(1px)}
.knop svg{width:1.2em;height:1.2em;flex:none;fill:currentColor}
.knop[aria-disabled=true]{background:#DDD5D2;color:#5E504E;pointer-events:none}
.knop-licht{background:#fff;color:var(--inkt)}
.knop-licht:hover{background:var(--blush);color:var(--inkt)}
.lijnlink{font-weight:500;color:var(--inkt);text-decoration-color:var(--flamingo);text-decoration-thickness:2px}

/* Kop */
.kop{position:sticky;top:0;z-index:30;background:var(--zout);border-bottom:1px solid var(--blush)}
.kop .wrap{display:flex;align-items:center;gap:1.5rem;min-height:4.5rem}
.merk{flex:none;display:block}
.merk img{height:44px;width:auto}
.menu{order:2;margin-left:auto;display:flex;align-items:center;gap:clamp(.9rem,2vw,1.8rem)}
.menu a{color:var(--inkt);text-decoration:none;font-weight:500;padding:.4rem 0;white-space:nowrap}
.menu a:hover{color:var(--roos-diep)}
.menu a[aria-current=page]{box-shadow:inset 0 -2px 0 var(--roos)}
.taalknop{order:3;display:inline-flex;align-items:center;gap:.5rem;min-height:2.6rem;padding:.3rem .9rem .3rem .6rem;border:1px solid var(--zand);border-radius:999px;color:var(--inkt);text-decoration:none;font-weight:500;font-size:.98rem;white-space:nowrap;flex:none}
.taalknop:hover{background:var(--blush);color:var(--inkt)}
.vlag{width:1.5rem;height:1rem;border-radius:2px;display:block;box-shadow:0 0 0 1px rgba(58,42,45,.15)}
.menuknop{display:none;background:none;border:1px solid var(--zand);border-radius:999px;color:var(--inkt);font:500 1rem var(--tekst);padding:.45rem 1.05rem;cursor:pointer}
@media (max-width:980px){
  .menuknop{display:block;margin-left:0;min-height:2.75rem}
  .taalknop{margin-left:auto;order:0}
  .menuknop{order:1}
  .menu{display:none;position:absolute;left:0;right:0;top:100%;background:var(--zout);flex-direction:column;align-items:flex-start;gap:.2rem;padding:.8rem var(--rand) 1.4rem;border-bottom:1px solid var(--blush)}
  .menu.open{display:flex}
  .menu a{font-size:1.15rem}
  .menu a{padding:.7rem 0;width:100%}
}

/* Opening */
.opening{position:relative;height:min(calc(100dvh - 4.5rem),46rem);min-height:32rem;display:flex;align-items:flex-end}
.opening picture,.opening>picture img{position:absolute;inset:0;width:100%;height:100%}
.opening picture img{object-fit:cover;object-position:50% 45%;width:100%;height:100%}
.opening-paneel{position:relative;width:min(34rem,100%);background:var(--zout);padding:2.1rem clamp(1.3rem,3vw,2.6rem) 2.3rem;margin-left:max(var(--rand),calc((100vw - var(--breed))/2 + var(--rand)))}
.streep{height:5px;background:var(--roos)}
.opening-paneel .streep{position:absolute;inset:-5px 0 auto}
.opening-paneel p{font-size:1.15rem;margin:.75rem 0 1.25rem}
.opening-regel{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap}
.vanaf{color:var(--inkt-zacht)}
.stempel{position:absolute;right:max(var(--rand),calc((100vw - var(--breed))/2 + var(--rand)));bottom:-3.5rem;width:12.5rem;height:12.5rem;border-radius:50%;background:var(--creme);display:grid;place-items:center;box-shadow:0 0 0 6px var(--zout);animation:stempel 1.1s cubic-bezier(.2,.8,.2,1) .35s both}
.stempel img{width:80%}
@keyframes stempel{from{opacity:0;transform:translateY(2.2rem) rotate(-8deg) scale(.92)}to{opacity:1;transform:none}}
@media (max-width:760px){
  .opening{height:auto;min-height:0;display:block}
  .opening picture{position:relative;display:block;height:62vw;min-height:15rem;max-height:24rem}
  .opening-paneel{margin:0;width:100%;padding-top:1.7rem}
  .stempel{display:none}
}

/* Intro */
.intro .wrap{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:start}
.intro-tekst{font-size:1.2rem}
.feiten{margin:0;display:grid;grid-template-columns:auto 1fr}
.feiten dt,.feiten dd{margin:0;padding:.62rem 0;border-top:1px solid var(--p3)}
.feiten dt{color:var(--inkt-zacht);padding-right:1.5rem}
.feiten dd{font-weight:500}
@media (max-width:820px){.intro .wrap{grid-template-columns:1fr}}

/* Binnen */
.binnen-kop{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap;margin-bottom:1.8rem}
.mozaiek{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(.6rem,1.2vw,1rem)}
.mozaiek figure{margin:0}
.mozaiek img{width:100%;height:100%;object-fit:cover}
.mozaiek figure{position:relative;overflow:hidden}
.mozaiek figcaption{position:absolute;left:0;bottom:0;background:var(--zout);padding:.25rem .8rem;font-size:.95rem}
.m-a{grid-column:span 7;aspect-ratio:7/4.1}.m-b{grid-column:span 5;aspect-ratio:5/4.1}
.m-c{grid-column:span 4;aspect-ratio:4/3.4}.m-d{grid-column:span 4;aspect-ratio:4/3.4}.m-e{grid-column:span 4;aspect-ratio:4/3.4}
@media (max-width:640px){.m-a{grid-column:span 12;aspect-ratio:16/10}.m-b,.m-c,.m-d,.m-e{grid-column:span 6;aspect-ratio:1/1}.mozaiek figcaption{font-size:.88rem;padding:.15rem .55rem}}

/* Agendaband */
.band{background:var(--inkt);color:#fff;padding-block:var(--lucht)}
.band h2{color:#fff}
.band-kop{display:grid;grid-template-columns:1.4fr 1fr;gap:2rem;align-items:end;margin-bottom:2.2rem}
.band-kop p{color:#EADCDA;margin:0}
.band-kop strong{color:#fff;font-weight:500}
.maanden{display:grid;grid-template-columns:repeat(12,1fr);gap:4px;list-style:none;margin:0 0 2rem;padding:0}
.maanden a{display:flex;flex-direction:column;justify-content:flex-end;min-height:7.5rem;padding:.55rem .5rem;color:var(--inkt);text-decoration:none;line-height:1.2;transition:transform .15s}
.maanden a:hover{transform:translateY(-4px);color:var(--inkt)}
.maanden b{font-weight:500}
.maanden span{font-size:.92rem}
.t-1{background:var(--p1)}.t-2{background:var(--p2)}.t-3{background:var(--p3)}.t-4{background:var(--p4)}
.maanden .t-4{min-height:10.5rem}.maanden .t-2{min-height:8.8rem}
.maanden{align-items:end}
@media (max-width:820px){.band-kop{grid-template-columns:1fr}.maanden{grid-template-columns:repeat(6,1fr)}.maanden a,.maanden .t-2,.maanden .t-4{min-height:5.2rem;padding:.4rem}.maanden span{font-size:.85rem}}

.band-onder{display:flex;justify-content:space-between;align-items:center;gap:1.2rem 3rem;flex-wrap:wrap}
.band-onder p{color:#EADCDA;max-width:42rem;margin:0}

/* Terras */
.terrasband{position:relative;display:flex;align-items:flex-end;min-height:clamp(24rem,44vw,36rem)}
.terrasband picture,.terrasband img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.terrasband-tekst{position:relative;background:var(--inkt);color:#fff;padding:1.6rem clamp(1.3rem,3vw,2.4rem);margin:0 0 clamp(1.5rem,3vw,3rem) max(var(--rand),calc((100vw - var(--breed))/2 + var(--rand)));max-width:30rem}
.terrasband-tekst p{margin:.5rem 0 0;color:#F0E4E1}
@media (max-width:640px){.terrasband{display:block;min-height:0}.terrasband picture{position:relative;display:block;height:62vw}.terrasband picture img{position:absolute}.terrasband-tekst{margin:0;max-width:none}}

/* Golf */
.golfblok .wrap{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(1.5rem,5vw,4.5rem);align-items:center}
.golfblok h2{margin-bottom:.7rem}
.poster img{border:7px solid #CFA877;box-shadow:0 14px 28px -18px rgba(58,42,45,.5);width:100%;transition:transform .25s}
.poster:hover img{transform:translateY(-4px)}
@media (max-width:820px){.golfblok .wrap{grid-template-columns:1fr}}
.golf-intro{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(1.5rem,5vw,4.5rem);align-items:start}
.golf-intro h2{margin-bottom:.7rem}
.redenen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem clamp(1.2rem,3vw,2.5rem)}
.redenen h3{font-size:1.25rem;margin-bottom:.25rem}
.banen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(1.5rem,5vw,4.5rem);margin-top:1rem}
.baan{border-top:1px solid var(--p3);padding:1rem 0 1.2rem;scroll-margin-top:6rem}
.baan:target{background:var(--blush)}
.baan h3{margin-bottom:.1rem}
.k-tijd{color:var(--roos-diep);font-weight:500;margin:0 0 .35rem}
@media (max-width:760px){.golf-intro,.banen{grid-template-columns:1fr}.redenen{grid-template-columns:1fr}}

/* Kaart */
.kaart-sectie{background:var(--creme);padding-block:var(--lucht)}
.kaart-kop{max-width:var(--smal);margin-bottom:1.3rem}
.kaart-kop p{margin:.4rem 0 0}
.k-filters,.k-chips{display:flex;flex-wrap:wrap;gap:.45rem}
.k-filters{margin-bottom:1rem}
.k-filters button,.k-chips button{min-height:2.75rem;background:#fff;border:1px solid var(--zand);border-radius:999px;padding:.35rem 1rem;font:400 1rem/1.2 var(--tekst);color:var(--inkt);cursor:pointer}
.k-filters button{font-weight:500}
.k-filters button[aria-pressed=true]{background:var(--inkt);border-color:var(--inkt);color:#fff}
.k-chips button[hidden]{display:none}
.k-chips button[aria-pressed=true]{background:var(--p3);border-color:var(--roos)}
.k-opzet{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(1.2rem,3vw,2.5rem);align-items:start}
.k-kaartvlak{position:relative;aspect-ratio:1/1;overflow:hidden;background:#BCD8EA url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='30'%3E%3Cpath d='M4 15q7-7 14 0t14 0' fill='none' stroke='%23fff' stroke-opacity='.55' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");border:7px solid #fff;box-shadow:0 14px 28px -20px rgba(58,42,45,.5)}
.k-svg{position:absolute;inset:0;width:100%;height:100%}
.k-land,.k-land path{fill:#F6E7D2;stroke:#D8BC97;stroke-width:1.5;vector-effect:non-scaling-stroke}
.k-lagune{fill:var(--flamingo);stroke:#D98C8D;stroke-width:1;vector-effect:non-scaling-stroke}
.pin{position:absolute;width:2.75rem;height:2.75rem;margin:-1.375rem 0 0 -1.375rem;padding:0;background:none;border:0;cursor:pointer;z-index:2}
.pin[hidden]{display:none}
.pin::after{content:"";position:absolute;left:50%;top:50%;width:1rem;height:1rem;margin:-.5rem 0 0 -.5rem;border-radius:50%;background:var(--roos-diep);box-shadow:0 0 0 2.5px #fff}
.pin.aan{z-index:4}
.pin.aan::after{width:1.35rem;height:1.35rem;margin:-.675rem 0 0 -.675rem;background:var(--oranje)}
.pin span{display:none;position:absolute;left:calc(50% + .95rem);top:50%;transform:translateY(-50%);background:var(--inkt);color:#fff;font:500 .86rem/1.2 var(--tekst);padding:.22rem .5rem;white-space:nowrap;border-radius:3px;pointer-events:none}
.pin.links span{left:auto;right:calc(50% + .95rem)}
.pin.aan span,.pin:hover span{display:block}
.pin-thuis{width:3rem;height:3rem;margin:-1.5rem 0 0 -1.5rem;cursor:default;z-index:3;pointer-events:none}
.pin-thuis::after{display:none}
.pin-thuis img{width:100%;height:100%;border-radius:50%;box-shadow:0 0 0 3px var(--roos-diep);object-fit:cover}
.pin-thuis span{display:block;background:var(--roos-diep);top:auto;bottom:-1.25rem;left:50%;transform:translateX(-50%);font-size:.78rem}
.pin-thuis.links span{left:50%;right:auto}
.k-plek{position:absolute;transform:translate(-50%,-50%);font:500 .84rem/1 var(--tekst);color:#7C6A52;white-space:nowrap;pointer-events:none;z-index:1}
.k-plek.meer{color:var(--roos-diep)}
.k-bron{font-size:.8rem;color:var(--inkt-zacht);margin:.4rem 0 0}
.k-chips{margin-bottom:1rem}
.k-kaart{background:#fff}
.k-kaart[hidden]{display:none}
.k-kaart img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:50% 45%}
.k-kaart>div{padding:1rem 1.2rem 1.3rem}
.k-kaart h3{margin-bottom:.15rem}
@media (max-width:820px){.k-opzet{grid-template-columns:1fr}.k-kaartvlak{aspect-ratio:1/1.02}}

/* Tegels en overzichten */
.tegels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem clamp(.8rem,2vw,1.6rem);margin-top:1rem}
.tegel{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:.8rem;align-items:start;background:#fff;padding:.6rem;color:var(--inkt);text-decoration:none;box-shadow:0 8px 18px -16px rgba(58,42,45,.5)}
.tegel:hover{color:var(--inkt);background:var(--blush)}
.tegel img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}
.tegel-tekst{display:block;min-width:0}
.tegel b{display:block;font:400 1.15rem/1.2 var(--kop);margin-bottom:.1rem}
.tegel .k-tijd{display:block;font-size:.9rem;margin:0 0 .2rem}
.tegel-zin{display:block;font-size:.95rem;line-height:1.35;color:var(--inkt-zacht)}
@media (max-width:980px){.tegels{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.tegels{grid-template-columns:1fr}}
.hubgroep{margin-bottom:clamp(2.5rem,5vw,4rem);scroll-margin-top:6rem}
.pillen{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:1rem 0 0;padding:0}
.pillen a{display:block;background:#fff;border:1px solid var(--zand);border-radius:999px;padding:.5rem .95rem;color:var(--inkt);text-decoration:none;min-height:2.75rem;line-height:1.5}
.pillen a:hover{background:var(--blush)}
.golfblok-klein{display:grid;grid-template-columns:minmax(0,10rem) minmax(0,1fr);gap:clamp(1rem,4vw,2.5rem);align-items:center;margin-bottom:clamp(2.5rem,5vw,4rem)}
.golfblok-klein h2{margin-bottom:.4rem}
.kruimels{display:flex;flex-wrap:wrap;gap:.2rem .45rem;font-size:.95rem;color:var(--inkt-zacht);margin:0 0 .7rem}
.kruimels a{color:var(--inkt-zacht);padding:.2rem 0}
.plaats-feiten{display:flex;flex-wrap:wrap;gap:.3rem 1.6rem;margin:.8rem 0 0;padding:.6rem 0;border-block:1px solid var(--p3)}
.plaats-feiten div{display:flex;gap:.4rem}
.plaats-feiten dt{color:var(--inkt-zacht)}
.plaats-feiten dt:empty{display:none}
.plaats-feiten dd{margin:0;font-weight:500}
.plaats-faq{margin-top:2.2rem}
.ook h2{margin-bottom:.2rem}

/* Plaatspagina */
.plaats{display:grid;grid-template-columns:minmax(0,24rem) minmax(0,1fr);gap:clamp(1.5rem,5vw,4.5rem);padding-block:clamp(1.5rem,4vw,3.5rem) var(--lucht);align-items:start}
.plaats-beeld{position:sticky;top:6rem}
.plaats-beeld img{border:7px solid #CFA877;box-shadow:0 14px 28px -18px rgba(58,42,45,.5);width:100%}
.plaats-kort{font-size:1.2rem;margin:.8rem 0 1rem}
.terug{margin:0 0 .5rem}
.terug a{color:var(--inkt-zacht)}
.plaats-tips h2{font-size:1.25rem;margin-bottom:.3rem}
.ook{background:var(--creme);padding-block:clamp(2rem,4vw,3.5rem)}
@media (max-width:820px){.plaats{grid-template-columns:1fr}.plaats-beeld{position:static}.plaats-beeld img{aspect-ratio:4/3;object-fit:cover}.plaats{padding-top:1rem}}

/* Veelgestelde vragen */
.faq{max-width:46rem}
.faq h2{margin-bottom:1rem}
.faq details{border-top:1px solid var(--p3)}
.faq details:last-child{border-bottom:1px solid var(--p3)}
.faq summary{cursor:pointer;padding:.85rem 0;font-weight:500;min-height:2.75rem}
.faq p{padding-bottom:1rem}

/* Mobiele balk */
.mobielbalk{display:none}
@media (max-width:760px){
  body{padding-bottom:4.75rem}
  .mobielbalk{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;gap:.5rem;align-items:center;background:var(--zout);border-top:1px solid var(--p3);padding:.55rem var(--rand) calc(.55rem + env(safe-area-inset-bottom));box-shadow:0 -8px 20px -14px rgba(58,42,45,.4)}
  .mobielbalk .knop{flex:1;justify-content:center;min-height:2.9rem;padding-inline:.8rem}
  .mobielbalk .knop-licht{flex:0 0 auto;border:1px solid var(--zand)}
  .balk-agenda{justify-content:space-between;min-height:4.1rem}
  .balk-agenda span{font-weight:500}
  .balk-agenda .knop{flex:0 0 auto}
}

/* Vragen */
.vragen{background:var(--blush)}
.vragen .wrap{display:flex;justify-content:space-between;align-items:center;gap:1.5rem 3rem;flex-wrap:wrap;padding-block:clamp(2.5rem,5vw,4rem)}
.vragen p{margin:.4rem 0 0}
.vragen-knoppen{display:flex;flex-wrap:wrap;gap:.7rem}
.vragen .knop-licht{border:1px solid var(--zand)}
.knop svg.ig{fill:none;stroke:currentColor;stroke-width:2}
.knop svg.ig .stip{fill:currentColor;stroke:none}

/* Voet */
.voet{background:var(--creme);padding-block:3rem 2rem}
.voet .wrap{display:grid;grid-template-columns:auto 1fr auto;gap:2rem clamp(2rem,6vw,5rem);align-items:start}
.voet img{width:9.5rem}
.voet ul{list-style:none;margin:0;padding:0;columns:2;column-gap:3rem}
.voet li{margin-bottom:.3rem}
.voet a{color:var(--inkt)}
.voet-onder{grid-column:1/-1;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.95rem;color:var(--inkt-zacht);border-top:1px solid var(--p3);padding-top:1rem;margin:0}
.voet-onder a{color:var(--inkt-zacht)}
@media (max-width:760px){.voet .wrap{grid-template-columns:minmax(0,1fr)}.voet ul{column-gap:1rem}.voet li{overflow-wrap:anywhere}}

/* Paginakop */
.paginakop{position:relative;height:clamp(17rem,38vw,27rem);display:flex;align-items:flex-end}
.paginakop picture,.paginakop picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.paginakop-paneel{position:relative;background:var(--zout);padding:1.5rem clamp(1.3rem,3vw,2.6rem) .4rem;margin-left:max(var(--rand),calc((100vw - var(--breed))/2 + var(--rand)));width:min(40rem,calc(100% - var(--rand)))}
.paginakop-paneel .streep{position:absolute;inset:-5px 0 auto}
.paginakop-paneel p{margin:.5rem 0 0;font-size:1.1rem}
@media (max-width:640px){.paginakop{height:auto;display:block}.paginakop picture{position:relative;display:block;height:52vw}.paginakop-paneel{margin:0;width:100%}}
.paginakop{overflow:hidden}
@media (min-width:641px){.paginakop picture img.flamingos{transform:scale(1.4);transform-origin:0 66%}}
.lijf{padding-block:clamp(2.5rem,5vw,4.5rem) var(--lucht)}

/* Appartement */
.kamer{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(1.5rem,4vw,4rem);align-items:center;margin-bottom:clamp(3rem,6vw,5.5rem)}
.kamer.om{grid-template-columns:1fr 1.5fr}
.kamer.om .kamer-beeld{order:2}
.kamer-beeld{display:grid;gap:.7rem;grid-template-columns:repeat(2,1fr)}
.kamer-beeld img{width:100%;aspect-ratio:3/2;object-fit:cover}
.kamer-beeld img:first-child:last-child,.kamer-beeld img.vol{grid-column:1/-1;aspect-ratio:16/9}
.kamer h2{margin-bottom:.7rem}
@media (max-width:820px){.kamer,.kamer.om{grid-template-columns:1fr}.kamer.om .kamer-beeld{order:0}}
.voorzieningen{columns:3 14rem;column-gap:3rem;list-style:none;margin:1.5rem 0 0;padding:0}
.voorzieningen li{break-inside:avoid;padding:.42rem 0;border-top:1px solid var(--p3)}

/* Plattegrond */
.plan-sectie{margin-bottom:clamp(3.5rem,7vw,6rem)}
.plan-sectie>p{margin:.4rem 0 1.4rem}
.plan{display:grid;grid-template-columns:minmax(0,23rem) minmax(0,1fr);gap:1.4rem clamp(1.5rem,5vw,4.5rem);align-items:start}
.plan-svg{width:100%;height:auto;display:block}
.pl-ruimte{cursor:pointer}
.pl-ruimte polygon{transition:fill .15s}
.pl-binnen polygon{fill:var(--p1)}
.pl-terras polygon,.pl-berging polygon{fill:#F4E8D8}
.pl-ruimte:hover polygon{fill:var(--p3)}
.pl-ruimte.aan polygon{fill:var(--p4)}
.pl-ruimte text{font:500 19px var(--tekst);fill:var(--inkt);text-anchor:middle;pointer-events:none}
.pl-hal{fill:#fff}
.pl-meubel{fill:none;stroke:var(--inkt);stroke-opacity:.28;stroke-width:1.5;pointer-events:none}
.pl-muur{fill:none;stroke:var(--inkt);stroke-width:7;stroke-linejoin:miter;pointer-events:none}
.pl-open{fill:none;stroke:#fff;stroke-width:4;pointer-events:none}
.plan-kant{min-width:0}
.plan-kiezers{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.2rem}
.plan-kiezers button{background:none;border:1px solid var(--zand);border-radius:999px;padding:.3rem .85rem;font:400 .98rem var(--tekst);color:var(--inkt);cursor:pointer}
.plan-kiezers button:hover{background:var(--blush)}
.plan-kiezers button.aan{background:var(--inkt);border-color:var(--inkt);color:#fff}
.plan-toon[hidden]{display:none}
.plan-foto{position:relative;margin-bottom:1rem}
.groot{width:100%;aspect-ratio:16/10;object-fit:cover}
.inzetten{position:absolute;right:.7rem;bottom:.7rem;display:flex;gap:.4rem}
.inzet{width:4.6rem;height:3.4rem;padding:0;border:3px solid #fff;background:#fff;cursor:pointer;box-shadow:0 3px 10px rgba(58,42,45,.3);opacity:.95}
.inzet img{width:100%;height:100%;object-fit:cover;display:block}
.inzet.aan{border-color:var(--oranje);opacity:1}
.plan-toon h3{margin-bottom:.35rem}
@media (max-width:760px){
  .plan{grid-template-columns:32% minmax(0,1fr);gap:.8rem}
  .plan-kant,.plan-beeld,.plan-toon{display:contents}
  .plan-toon[hidden]{display:none}
  .plan-kiezers{grid-column:1/-1;margin:0;order:-3}
  .plan-kiezers button{min-height:2.75rem}
  .plan-foto{grid-column:1/-1;order:-2;margin:0}
  .plan-svg{grid-column:1;order:-1}
  .plan-uitleg{grid-column:2;order:-1}
  .pl-ruimte text{display:none}
  .groot{aspect-ratio:4/3}
  .inzetten{position:static;margin-top:.45rem;flex-wrap:wrap}
  .inzet{width:4.1rem;height:4.1rem;box-shadow:none;border-color:var(--blush)}
  .plan-uitleg h3{font-size:1.2rem}
  .plan-uitleg p{font-size:1rem}
}

/* Agenda */
.agenda-opzet{display:grid;grid-template-columns:minmax(0,1fr) 22.5rem;gap:clamp(1.5rem,3vw,3rem);align-items:start}
@media (max-width:1040px){.agenda-opzet{grid-template-columns:1fr}}
@media (max-width:760px){.ag-nav button{min-height:2.9rem;flex:1}.ag-cel{min-height:3.5rem}.teller button{width:2.75rem;height:2.75rem}.merk img{height:36px}}
@media (max-width:430px){.taalknop span{display:none}.taalknop{padding:.3rem .6rem}.merk img{height:32px}.kop .wrap{gap:.6rem}}
.ag-nav{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:1rem}
.ag-nav button{background:none;border:1px solid var(--zand);border-radius:999px;color:var(--inkt);font:500 1rem var(--tekst);padding:.5rem 1rem;cursor:pointer}
.ag-nav button:hover:not(:disabled){background:var(--blush)}
.ag-nav button:disabled{opacity:.4;cursor:default}
.ag-maanden{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,2.5vw,2rem)}
@media (max-width:760px){.ag-maanden{grid-template-columns:1fr}.ag-maanden .ag-maand:nth-child(2){display:none}}
.ag-maand h3{font-size:1.35rem;margin-bottom:.6rem;text-transform:capitalize}
.ag-rooster{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.ag-dag{font-size:.82rem;color:var(--inkt-zacht);text-align:center;padding-bottom:.2rem}
.ag-cel{appearance:none;border:0;margin:0;background:var(--p1);color:var(--inkt);min-height:3.3rem;padding:.3rem 0;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.15;font:500 1.02rem/1.15 var(--tekst);cursor:pointer;position:relative}
.ag-cel small{font-size:.74rem;font-weight:400}
.ag-cel.t-2{background:var(--p2)}.ag-cel.t-3{background:var(--p3)}.ag-cel.t-4{background:var(--p4)}
.ag-cel:hover:not(:disabled){box-shadow:inset 0 0 0 2px var(--inkt)}
.ag-cel:disabled{cursor:default}
.ag-cel.voorbij{background:transparent;color:#B5A6A3;font-weight:400}
.ag-cel.voorbij small{visibility:hidden}
.ag-cel.bezet{background:repeating-linear-gradient(135deg,#F1ECE8 0 5px,#E4DBD6 5px 10px);color:#6B5956;font-weight:400}
.ag-cel.bezet small{visibility:hidden}
.ag-cel.vertrekdag{cursor:pointer}
.ag-cel.bereik{box-shadow:inset 0 0 0 2px var(--inkt)}
.ag-cel.begin,.ag-cel.eind{background:var(--inkt);color:#fff}
.ag-cel.begin small,.ag-cel.eind small{visibility:visible}
.ag-legenda{display:flex;flex-wrap:wrap;gap:.3rem 1.1rem;list-style:none;margin:1rem 0 0;padding:0;font-size:.95rem}
.ag-legenda li{display:flex;align-items:center;gap:.45rem}
.ag-legenda i{width:1.1rem;height:1.1rem;display:block;border:1px solid rgba(58,42,45,.12)}
.ag-legenda .i-bezet{background:repeating-linear-gradient(135deg,#F1ECE8 0 3px,#DACFC9 3px 6px)}
.ag-melding{min-height:1.6em;margin:.7rem 0 0;color:var(--roos-diep);font-weight:500}
.aanvraag{background:var(--creme)}
.aanvraag-in{padding:1.5rem 1.4rem 1.6rem}
.aanvraag h2{font-size:1.55rem;margin-bottom:.6rem}
.reken{margin:.8rem 0;display:grid;grid-template-columns:1fr auto;gap:.15rem .8rem}
.reken dt,.reken dd{margin:0}
.reken dd{text-align:right;font-variant-numeric:tabular-nums}
.reken .tot{border-top:1px solid var(--zand);margin-top:.35rem;padding-top:.35rem;font-weight:600}
.personen{display:flex;align-items:center;justify-content:space-between;margin:.8rem 0;padding-block:.5rem;border-block:1px solid var(--p3)}
.teller{display:flex;align-items:center;gap:.7rem}
.teller button{width:2.25rem;height:2.25rem;border-radius:50%;border:1px solid var(--zand);background:#fff;color:var(--inkt);font:500 1.2rem/1 var(--tekst);cursor:pointer}
.teller button:disabled{opacity:.35;cursor:default}
.bericht{background:#fff;border-radius:.2rem 1rem 1rem 1rem;padding:.7rem .9rem;margin:1rem 0;font-size:.98rem;line-height:1.45;box-shadow:0 1px 1px rgba(58,42,45,.14)}
.bericht-label{font-size:.9rem;color:var(--inkt-zacht);margin:1rem 0 -.6rem}
.aanvraag .knop{width:100%;justify-content:center}
.wisknop{background:none;border:0;padding:.6rem 0 0;font:400 .95rem var(--tekst);color:var(--inkt-zacht);text-decoration:underline;cursor:pointer}
.prijzen{margin-top:clamp(3rem,6vw,5rem);display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(2rem,5vw,5rem)}
@media (max-width:820px){.prijzen{grid-template-columns:1fr}}
.tabel{width:100%;border-collapse:collapse;margin-top:1rem}
.tabel th,.tabel td{text-align:left;padding:.55rem 0;border-top:1px solid var(--p3);font-weight:400;vertical-align:top}
.tabel th{padding-right:1rem}
.tabel td:last-child{text-align:right;white-space:nowrap;font-weight:500}
.tabel .sub th,.tabel .sub td{color:var(--inkt-zacht);border-top:0;padding-top:0;font-weight:400}
.prijzen h3{margin-top:1.8rem}

/* Omgeving */
.tipnav{display:flex;flex-wrap:wrap;gap:.4rem .6rem;list-style:none;padding:0;margin:0 0 3rem}
.tipnav a{display:block;border:1px solid var(--zand);border-radius:999px;padding:.3rem .95rem;color:var(--inkt);text-decoration:none}
.tipnav a:hover{background:var(--blush)}
.tipblok{display:grid;grid-template-columns:minmax(0,17rem) minmax(0,1fr);gap:clamp(1.5rem,5vw,4.5rem);align-items:start;margin-bottom:clamp(3.5rem,7vw,6rem);scroll-margin-top:6rem}
.tipblok-beeld{position:sticky;top:6rem}
.tipblok-beeld img{border:7px solid #CFA877;box-shadow:0 14px 28px -18px rgba(58,42,45,.5);width:100%}
.tipblok h2{margin-bottom:.9rem}
.tips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6rem clamp(1.5rem,3vw,3rem);margin-top:1.2rem}
.tips h3{font-size:1.25rem;margin-bottom:.3rem}
.tips .breed{grid-column:1/-1}
.tips ul,.lijst{margin:.2rem 0 0;padding-left:1.1rem}
@media (max-width:820px){.tipblok{grid-template-columns:1fr}.tipblok-beeld{position:static;max-width:15rem}.tips{grid-template-columns:1fr}}

/* Tekstpagina */
.proza{max-width:var(--smal)}
.proza h2{margin:2.4rem 0 .7rem;font-size:1.65rem}
.proza h2:first-child{margin-top:0}
.proza ul{padding-left:1.1rem}
.proza li{margin-bottom:.35rem}

.niet-js{background:var(--blush);padding:1rem 1.2rem}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
}

/* Linkpagina voor de bio op Instagram (/bio): één kaart, telefoon eerst. */
body.bio{background:var(--blush);min-height:100vh;padding:0}
.bio-kaart{max-width:30rem;margin-inline:auto;background:var(--zout);min-height:100vh;box-shadow:0 0 0 1px var(--p2)}
.bio-foto{position:relative;aspect-ratio:5/4;overflow:visible}
.bio-foto>img{width:100%;height:100%;object-fit:cover}
.bio-taal{position:absolute;top:1rem;right:1rem;background:rgba(255,251,247,.92);border-color:transparent}
.bio-stempel{position:absolute;left:50%;bottom:-3.4rem;transform:translateX(-50%);width:7.5rem;height:7.5rem;border-radius:50%;background:var(--creme);display:grid;place-items:center;box-shadow:0 0 0 5px var(--zout);z-index:2}
.bio-stempel img{width:84%}
.bio .streep{position:relative;z-index:1}
.bio-lijf{padding:4.2rem 1.25rem 1.5rem;text-align:center;display:flex;flex-direction:column;gap:.75rem}
.bio-lijf h1{font-size:2rem}
.bio-sub{color:var(--inkt-zacht);margin:0 auto .25rem;max-width:24rem;text-wrap:balance}
.bio-vrij{display:inline-flex;align-self:center;align-items:center;gap:.5rem;background:var(--creme);border-radius:999px;padding:.45rem 1rem;font-size:.98rem;margin:0 0 .5rem}
.bio-zon{width:.8rem;height:.8rem;border-radius:50%;background:var(--oranje);box-shadow:0 0 0 4px rgba(232,137,60,.18)}
.bio-knop{justify-content:center;width:100%;padding-block:1rem}
.bio-knop.knop-licht{box-shadow:inset 0 0 0 1.5px var(--roos)}
.bio-links{list-style:none;margin:.75rem 0 0;padding:0;display:grid;gap:.6rem;text-align:left}
.bio-links a{display:flex;align-items:center;gap:.9rem;padding:.55rem .75rem .55rem .55rem;border-radius:1rem;background:#fff;color:var(--inkt);text-decoration:none;box-shadow:0 1px 0 var(--p2)}
.bio-links a:hover{background:var(--p1)}
.bio-beeld{flex:none;width:4rem;height:4rem;border-radius:.7rem;overflow:hidden;border:3px solid var(--zand)}
.bio-beeld img{width:100%;height:100%;object-fit:cover}
.bio-links strong{display:block;font-weight:500;font-size:1.06rem}
.bio-links span span{display:block;font-size:.92rem;color:var(--inkt-zacht);line-height:1.35}
.bio-pijl{flex:none;width:1.1rem;height:1.1rem;margin-left:auto;fill:none;stroke:var(--roos-diep);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.bio-site{align-self:center;margin-top:.75rem}
.bio-voet{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.88rem;color:var(--inkt-zacht);border-top:1px solid var(--p3);padding-top:1rem;margin-top:1rem}
.bio-voet a{color:var(--inkt-zacht)}
