:root{
  --wit:#ffffff; --zacht:#faf8f4; --lijn:#ece6da; --donker:#222420; --tekst:#55574f;
  --goud:#c4a173; --goud-donker:#a8844f; --max:1000px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Lora",Georgia,serif;color:var(--tekst);background:var(--wit);line-height:1.75;font-size:16px;font-weight:400}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;color:var(--donker);line-height:1.15;margin:0 0 .4em}
h1{font-size:clamp(2.1rem,4vw,2.8rem);text-transform:uppercase;letter-spacing:.04em}
h2{font-size:clamp(1.6rem,3vw,2.1rem);margin-top:1.8em;text-transform:uppercase;letter-spacing:.04em}
h3{font-size:1.4rem;margin-top:1.2em}
.sub{font-family:"Cormorant Garamond",Georgia,serif;color:var(--goud);font-size:1.35rem;line-height:1.35;margin:0 0 1em}
p{margin:0 0 1.1em}
a{color:var(--goud-donker)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}

/* kop: gecentreerde naam + menu */
header.kop{background:var(--wit);text-align:center;padding:46px 0 10px}
.merk{text-decoration:none;display:inline-block}
.merk b{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;font-size:clamp(2.6rem,6vw,4rem);letter-spacing:.06em;color:var(--donker);text-transform:uppercase;line-height:1}
.merk span{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:22px;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.3rem;color:var(--goud)}
.merk span::before,.merk span::after{content:"";width:22px;height:1px;background:var(--goud)}
nav.menu{margin-top:30px}
nav.menu ul{list-style:none;margin:0;padding:0;display:flex;justify-content:center;flex-wrap:wrap;gap:4px 6px}
nav.menu a{display:block;padding:6px 10px;text-decoration:none;color:var(--donker);font-family:"Josefin Sans",system-ui,sans-serif;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase}
nav.menu a:hover,nav.menu a.actief{color:var(--goud)}
.menuknop{display:none;margin:24px auto 0;background:none;border:1px solid var(--lijn);padding:8px 18px;font-family:"Josefin Sans",system-ui,sans-serif;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;color:var(--donker)}
@media(max-width:820px){
  .menuknop{display:inline-block}
  nav.menu{display:none;margin-top:12px}
  nav.menu.open{display:block}
  nav.menu ul{flex-direction:column}
}

/* foto onder de kop: binnen de kolom, niet schermbreed */
.beeld{max-width:var(--max);margin:40px auto 0;padding:0 28px}
.beeld div{height:clamp(240px,48vh,520px);background:#e9e4da center/cover no-repeat}
.beeld.klein div{height:clamp(180px,30vh,320px)}
.beeld div{background-position:70% 25%}  /* houdt het hele huis in beeld */

main{padding:56px 0 80px}

/* twee kolommen: titel links, tekst rechts */
.tweekolom{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start}
@media(max-width:760px){.tweekolom{grid-template-columns:1fr;gap:10px}}

.knop{display:inline-block;background:var(--goud);color:#fff;text-decoration:none;padding:12px 28px;font-family:"Josefin Sans",system-ui,sans-serif;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;margin:8px 10px 8px 0}
.knop:hover{background:var(--goud-donker)}
.knop.licht{background:transparent;color:var(--donker);border:1px solid var(--donker)}
.midden{text-align:center}

/* drie staande foto's */
.fotorij{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin:50px 0}
.fotorij img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}
@media(max-width:640px){.fotorij{grid-template-columns:1fr}}

.lijst{padding-left:18px}
.lijst li{margin:4px 0}

/* galerij */
.galerij{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.galerij button{border:0;padding:0;background:var(--lijn);cursor:zoom-in;overflow:hidden}
.galerij img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:opacity .2s}
.galerij button:hover img{opacity:.85}
@media(max-width:640px){.galerij{grid-template-columns:repeat(2,1fr);gap:10px}}
.lightbox{position:fixed;inset:0;background:rgba(255,255,255,.97);display:none;align-items:center;justify-content:center;z-index:50}
.lightbox.open{display:flex}
.lightbox img{max-width:90vw;max-height:86vh}
.lightbox button{position:absolute;background:none;border:0;color:var(--donker);font-size:2.4rem;cursor:pointer;padding:10px 18px}
.lb-sluit{top:10px;right:10px}.lb-vorige{left:6px}.lb-volgende{right:6px}

/* tabellen */
table{width:100%;border-collapse:collapse;margin:18px 0 8px;font-size:.95rem}
th,td{padding:12px 10px;border-bottom:1px solid var(--lijn);text-align:left}
th{font-family:"Josefin Sans",system-ui,sans-serif;font-weight:400;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--goud-donker);border-bottom:1px solid var(--goud)}
td:not(:first-child),th:not(:first-child){text-align:right;white-space:nowrap}
.scroll{overflow-x:auto}
.klein{font-size:.88rem;color:#8a8b84}

/* reviews */
.review{padding:24px 0;border-bottom:1px solid var(--lijn);text-align:center}
.review p{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.45rem;line-height:1.4;color:var(--donker);font-style:italic;margin:0 auto .5em;max-width:720px}
.review span{font-family:"Josefin Sans",system-ui,sans-serif;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--goud-donker)}
.score{display:flex;gap:40px;flex-wrap:wrap;justify-content:center;margin:20px 0 30px}
.score div{text-align:center}
.score b{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-size:2.4rem;color:var(--donker);font-weight:400}
.score span{font-family:"Josefin Sans",system-ui,sans-serif;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--goud-donker)}

/* tips */
.tips{display:grid;grid-template-columns:1fr 1fr;gap:10px 50px}
@media(max-width:760px){.tips{grid-template-columns:1fr}}
.tip h3{margin-top:1em;color:var(--donker)}

/* stappen */
ol.stappen{counter-reset:s;list-style:none;padding:0}
ol.stappen li{counter-increment:s;position:relative;padding:2px 0 16px 46px}
ol.stappen li::before{content:counter(s);position:absolute;left:0;top:-4px;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.9rem;color:var(--goud)}

dl.gegevens{display:grid;grid-template-columns:max-content 1fr;gap:8px 30px}
dl.gegevens dt{font-family:"Josefin Sans",system-ui,sans-serif;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--goud-donker);padding-top:4px}
dl.gegevens dd{margin:0}
@media(max-width:560px){dl.gegevens{grid-template-columns:1fr}dl.gegevens dd{margin-bottom:8px}}

footer{background:var(--zacht);border-top:1px solid var(--lijn);font-size:.88rem;padding:40px 0;text-align:center}
footer .wrap{display:flex;flex-direction:column;gap:6px;align-items:center}
footer b{font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;font-size:1.4rem;letter-spacing:.06em;text-transform:uppercase;color:var(--donker)}
footer .disclaimer{margin-top:14px;font-size:.8rem;color:#9a9b94}
