:root{--black:#090806;--black-2:#12100d;--black-3:#1b1813;--gold:#d5ad63;--gold-dark:#a77a30;--cream:#f6f0e4;--white:#fffdf8;--muted:#b8afa0;--ink:#1b1813;--line:rgba(213,173,99,.26);--shadow:0 24px 70px rgba(0,0,0,.36);--serif:Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--black);color:var(--white);font-family:var(--sans);line-height:1.65}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%;max-width:100%}button,input,textarea{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:200;top:8px;left:8px;padding:10px 16px;transform:translateY(-150%);background:#fff;color:#000}.skip-link:focus{transform:none}
.site-header{position:fixed;z-index:50;inset:0 0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;padding:16px clamp(20px,5vw,76px);background:linear-gradient(180deg,rgba(5,4,3,.96),transparent);transition:.25s}.site-header.scrolled{border-bottom:1px solid var(--line);background:rgba(8,7,5,.97);box-shadow:0 8px 30px rgba(0,0,0,.3)}.brand{display:grid;width:max-content;font:1rem/1 var(--serif);letter-spacing:.08em;text-transform:uppercase}.brand strong{margin-top:4px;color:var(--gold);font-size:1.14rem}.site-header nav{display:flex;gap:clamp(20px,3vw,42px);font-size:.88rem;font-weight:700;letter-spacing:.04em}.site-header nav a{transition:.2s}.site-header nav a:hover{color:var(--gold)}.header-action{justify-self:end;padding:10px 18px;border:1px solid var(--gold);color:var(--gold);font-size:.84rem;font-weight:800}.menu-toggle{display:none}
.hero{position:relative;isolation:isolate;display:flex;min-height:100vh;align-items:center;padding:150px clamp(22px,7vw,110px) 110px;overflow:hidden}.hero>img{position:absolute;z-index:-2;inset:0;height:100%;object-fit:cover}.hero::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(3,3,2,.94),rgba(3,3,2,.58) 52%,rgba(3,3,2,.18)),linear-gradient(0deg,rgba(3,3,2,.8),transparent 50%)}.hero-content{max-width:790px}.eyebrow{margin:0 0 18px;color:var(--gold);font-size:.72rem;font-weight:850;letter-spacing:.22em;text-transform:uppercase}.hero h1{margin:0 0 25px;font:400 clamp(4rem,9vw,8rem)/.88 var(--serif);letter-spacing:-.045em}.hero h1 em{color:var(--gold);font-weight:400}.hero-content>p:not(.eyebrow){max-width:590px;color:#ddd5c8;font-size:clamp(1rem,1.6vw,1.24rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-flex;min-height:52px;align-items:center;justify-content:center;border:0;padding:0 23px;cursor:pointer;font-weight:800;transition:.2s}.primary{background:linear-gradient(135deg,#e2bf79,#ae7d31);color:#100e0a}.primary:hover{filter:brightness(1.08);transform:translateY(-2px)}.secondary{border:1px solid rgba(255,255,255,.48);background:rgba(255,255,255,.05)}.scroll-hint{position:absolute;bottom:32px;left:clamp(22px,7vw,110px);display:flex;gap:15px;align-items:center;color:#c7beaf;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}.scroll-hint span{color:var(--gold);font-size:1.2rem}
.section{padding:clamp(76px,10vw,140px) clamp(22px,7vw,110px)}h2{margin:0 0 24px;font:400 clamp(2.6rem,5vw,5.2rem)/1.02 var(--serif);letter-spacing:-.035em}.intro{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(45px,8vw,130px);background:var(--cream);color:var(--ink)}.intro-title{position:sticky;top:120px;align-self:start}.intro .eyebrow{color:var(--gold-dark)}.intro-copy{max-width:660px}.intro-copy p{color:#5e584e}.intro-copy p:first-child{color:var(--ink);font:1.3rem/1.55 var(--serif)}.gold-link{display:inline-block;margin-top:12px;color:#8b6327;font-weight:800}
.pricing{background:radial-gradient(circle at 90% 5%,#282116 0,transparent 30%),var(--black)}.section-heading{max-width:820px;margin-bottom:58px}.section-heading>p:last-child{color:var(--muted)}.group-title{display:flex;align-items:center;gap:18px;margin:0 0 24px;font:400 1.5rem var(--serif)}.group-title::after{content:"";height:1px;flex:1;background:var(--line)}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.price-card{position:relative;display:flex;min-height:390px;flex-direction:column;padding:30px;border:1px solid var(--line);background:linear-gradient(145deg,#1a1713,#0e0d0b)}.price-card.featured{border-color:var(--gold)}.badge{position:absolute;top:0;right:0;padding:7px 11px;background:var(--gold);color:#111;font-size:.66rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.duration{margin:0;color:var(--white);font:400 1.7rem var(--serif)}.price{margin:14px 0 22px;color:var(--gold);font:400 3.3rem var(--serif)}.on-request{margin:14px 0 22px;color:var(--gold);font-weight:800}.price-card ul{margin:0 0 28px;padding-left:20px;color:#c8c0b2}.price-card li{margin-bottom:8px}.price-card>a{margin-top:auto;color:var(--gold);font-size:.86rem;font-weight:800}.arrangements-title{margin-top:65px}.arrangement-prices{list-style:none;padding:0!important}.arrangement-prices li{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:8px 0}.arrangement-prices span{color:var(--gold)}.price-card>p:last-child{color:#c8c0b2}.price-note{margin:28px 0 0;color:var(--muted);font-size:.86rem}
.gallery{background:var(--cream);color:var(--ink)}.gallery .eyebrow{color:var(--gold-dark)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:280px;gap:12px}.gallery-grid figure{margin:0;overflow:hidden}.gallery-grid .wide{grid-column:span 2}.gallery-grid img{height:100%;object-fit:cover;filter:saturate(.88);transition:transform .5s,filter .5s}.gallery-grid figure:hover img{transform:scale(1.035);filter:saturate(1)}
.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(45px,8vw,120px);background:var(--black-2)}.contact-copy>p:not(.eyebrow){max-width:520px;color:var(--muted)}.contact-details{margin-top:36px}.contact-details p{margin:0 0 18px}.contact-details span{display:block;color:var(--gold);font-size:.68rem;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.contact-details a{font-weight:750}.contact form{display:grid;grid-template-columns:1fr 1fr;gap:17px;padding:clamp(22px,4vw,38px);border:1px solid var(--line);background:var(--cream);color:var(--ink);box-shadow:var(--shadow)}.field{display:grid;align-content:start;gap:6px}.full{grid-column:1/-1}label{font-size:.86rem;font-weight:750}input,textarea{width:100%;border:1px solid #a79d8c;border-radius:0;padding:13px;background:#fff;color:#1a1713}input{min-height:50px}textarea{resize:vertical}input:focus,textarea:focus,a:focus-visible,button:focus-visible{outline:3px solid rgba(213,173,99,.55);outline-offset:2px}.field-error{min-height:1.2em;color:#a11b32;font-size:.76rem}[aria-invalid="true"]{border-color:#a11b32}.consent{display:flex;gap:9px;align-items:flex-start;font-weight:500}.consent input{width:19px;min-height:19px}.consent a{text-decoration:underline}.honeypot{position:absolute;left:-10000px}.form-status{margin:0;font-weight:750}.form-status.success{color:#17643a}.form-status.error{color:#a11b32}
footer{display:grid;grid-template-columns:1.4fr 1fr .8fr;gap:50px;padding:70px clamp(22px,7vw,110px) 24px;border-top:1px solid var(--line);background:#050504}footer>div{display:grid;align-content:start;gap:8px}footer h2{margin:0 0 12px;color:var(--gold);font:800 .72rem var(--sans);letter-spacing:.16em;text-transform:uppercase}footer p,footer a,footer button{color:#aaa194;font-size:.86rem}footer button{border:0;padding:0;background:none;text-align:left;cursor:pointer}.footer-brand{color:#fff;font:1.15rem var(--serif);text-transform:uppercase}.footer-brand strong{display:block;color:var(--gold)}.footer-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:28px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);color:#756e64;font-size:.76rem}.tds-credit{display:inline-flex;align-items:center;gap:10px;color:#8c8478}.tds-credit img{width:92px;height:auto;border-radius:4px;opacity:.88}
.cookie-banner{position:fixed;z-index:100;inset:auto 16px 16px;max-width:720px;margin:auto;padding:25px;border:1px solid var(--gold);background:#11100e;box-shadow:var(--shadow)}.cookie-banner[hidden],.cookie-settings[hidden]{display:none}.cookie-banner h2{font-size:1.7rem}.cookie-banner p{color:var(--muted);font-size:.88rem}.cookie-banner p a{text-decoration:underline}.cookie-actions{display:flex;flex-wrap:wrap;gap:8px}.outline{border:1px solid var(--gold);background:transparent;color:var(--gold)}.text-button{background:transparent;color:#fff}.cookie-settings{display:grid;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.cookie-settings label{display:flex;gap:8px;align-items:center}.cookie-settings input{width:18px;min-height:18px}.cookie-settings small{margin-left:auto;color:var(--muted)}
.legal,.not-found{width:min(820px,calc(100% - 36px));min-height:calc(100vh - 70px);margin:35px auto;padding:clamp(35px,7vw,75px);border:1px solid var(--line);background:var(--cream);color:var(--ink)}.legal h1,.not-found h1{font:400 clamp(3rem,7vw,5.5rem)/1 var(--serif)}.legal h2{margin-top:38px;font-size:1.6rem}.legal a{color:#875e23;text-decoration:underline}.not-found{display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
@media(max-width:900px){.site-header{grid-template-columns:1fr auto}.header-action{display:none}.menu-toggle{display:grid;width:44px;height:44px;place-content:center;gap:5px;border:1px solid var(--line);background:rgba(0,0,0,.35)}.menu-toggle span:not(.sr-only){width:20px;height:2px;background:var(--gold)}.site-header nav{position:fixed;inset:76px 14px auto;display:none;flex-direction:column;gap:0;padding:10px;border:1px solid var(--line);background:#100f0d}.site-header nav.open{display:flex}.site-header nav a{padding:13px;border-bottom:1px solid var(--line)}.intro,.contact{grid-template-columns:1fr}.intro-title{position:static}.price-grid{grid-template-columns:1fr}.price-card{min-height:0}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid .wide{grid-column:span 1}footer{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.hero{min-height:760px;padding-top:120px}.hero h1{font-size:clamp(3.4rem,18vw,5.1rem)}.hero-actions .button{width:100%}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:230px}.contact form{grid-template-columns:1fr}.full{grid-column:auto}footer{grid-template-columns:1fr}.footer-bottom{grid-column:auto;align-items:flex-start;flex-direction:column}.tds-credit img{width:82px}.cookie-banner{inset:auto 7px 7px;padding:18px}.cookie-actions .button{width:100%}.cookie-settings small{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
.brand{display:block;width:230px;font:inherit;letter-spacing:0;text-transform:none}.brand img{height:68px;object-fit:contain;object-position:left center}.footer-logo{display:block;width:240px}.footer-logo img{height:auto}select{width:100%;min-height:50px;border:1px solid #a79d8c;border-radius:0;padding:13px;background:#fff;color:#1a1713;font:inherit}select:focus{outline:3px solid rgba(213,173,99,.55);outline-offset:2px}.subpage-header{background:rgba(8,7,5,.97)}.page-hero{padding:190px clamp(22px,7vw,110px) 100px;background:radial-gradient(circle at 85% 15%,#302718 0,transparent 30%),var(--black)}.page-hero h1{margin:0 0 24px;font:400 clamp(3.8rem,8vw,7.5rem)/.92 var(--serif);letter-spacing:-.04em}.page-hero h1 em{color:var(--gold);font-weight:400}.page-hero>p:last-child{max-width:620px;color:var(--muted);font-size:1.1rem}.page-gallery{padding-top:60px}.home-gallery{margin-bottom:30px}.dark-button{border:1px solid var(--ink);background:var(--ink);color:#fff}.contact-cta{text-align:center;background:radial-gradient(circle at 50% 0,#292116 0,transparent 40%),var(--black)}.contact-cta h2{max-width:850px;margin-inline:auto}.contact-cta>p:not(.eyebrow){max-width:620px;margin:0 auto 28px;color:var(--muted)}
.brand{width:clamp(230px,22vw,310px)}.brand img{height:clamp(70px,7vw,92px)}.site-header{min-height:92px}.waterpoort-feature{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(24px,5vw,70px);align-items:center;background:linear-gradient(135deg,#080705 0,#12100c 48%,#21190f 100%);overflow:hidden}.waterpoort-feature figure{position:relative;margin:0;min-height:clamp(320px,48vw,620px);border:1px solid rgba(213,173,99,.28);box-shadow:var(--shadow);overflow:hidden}.waterpoort-feature figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.28) 100%);pointer-events:none}.waterpoort-feature img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.92) contrast(1.02)}.waterpoort-copy{max-width:560px}.waterpoort-copy h2{margin:0 0 18px;font:400 clamp(2.5rem,5vw,5.6rem)/.95 var(--serif);letter-spacing:-.04em}.waterpoort-copy p:not(.eyebrow){color:var(--muted);font-size:clamp(1rem,1.4vw,1.18rem)}
@media(max-width:900px){.site-header{min-height:82px}.brand{width:clamp(220px,48vw,280px)}.brand img{height:clamp(64px,12vw,78px)}.site-header nav{inset:86px 14px auto}.waterpoort-feature{grid-template-columns:1fr;padding-top:70px}.waterpoort-copy{max-width:720px}.waterpoort-feature figure{min-height:420px;order:-1}.section{padding-left:clamp(18px,5vw,46px);padding-right:clamp(18px,5vw,46px)}}
@media(max-width:560px){.site-header{min-height:76px;padding:10px 16px}.brand{width:min(70vw,255px)}.brand img{height:62px}.site-header nav{inset:78px 10px auto}.hero{min-height:680px;padding-top:105px}.hero-content{width:100%}.hero h1{font-size:clamp(3.1rem,16vw,4.6rem)}.hero-content>p:not(.eyebrow){font-size:1rem}.hero-actions{gap:10px}.intro,.pricing,.gallery,.contact,.contact-cta,.waterpoort-feature{padding-top:64px;padding-bottom:64px}.waterpoort-feature{gap:24px}.waterpoort-feature figure{min-height:310px;margin-inline:-6px}.waterpoort-copy h2{font-size:clamp(2.35rem,12vw,3.7rem)}.price-card{padding:24px}.price-card .price{font-size:3rem}.section-heading h2,.contact-cta h2{font-size:clamp(2.5rem,12vw,4.2rem)}}


/* Schone mobiele hero-correctie: tekst onder elkaar, zonder smalle beeldstrook */
@media (max-width: 900px) {
  .hero {
    display: flex !important;
    min-height: auto !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    padding: 132px clamp(22px, 7vw, 34px) 72px !important;
    background: #050504 !important;
  }

  .hero > img,
  .hero::after,
  .scroll-hint {
    display: none !important;
  }

  .hero-content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .hero .eyebrow {
    max-width: 300px !important;
    margin-bottom: 14px !important;
    font-size: .68rem !important;
    line-height: 1.8 !important;
    letter-spacing: .22em !important;
  }

  .hero h1 {
    max-width: 100% !important;
    margin: 0 0 22px !important;
    font-size: clamp(3.1rem, 15vw, 4.4rem) !important;
    line-height: .96 !important;
    letter-spacing: -.045em !important;
  }

  .hero-content > p:not(.eyebrow) {
    max-width: 100% !important;
    font-size: 1.05rem !important;
    line-height: 1.65 !important;
  }

  .hero-actions {
    display: grid !important;
    width: 100% !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    margin-top: 28px !important;
  }

  .hero-actions .button {
    width: 100% !important;
    min-height: 58px !important;
  }
}

@media (max-width: 420px) {
  .hero {
    padding-top: 118px !important;
  }

  .hero h1 {
    font-size: clamp(2.85rem, 15vw, 3.9rem) !important;
  }

  .hero-content > p:not(.eyebrow) {
    font-size: 1rem !important;
  }

  .brand {
    width: min(66vw, 230px) !important;
  }

  .brand img {
    height: 58px !important;
  }

  .menu-toggle {
    width: 58px !important;
    height: 58px !important;
  }
}
