:root{--cream:#f7f1e7;--cream-dark:#eee2cf;--green:#54684a;--sage:#7c8c66;--gold:#b78e3e;--text:#3f4e39;--muted:#6f6a5b;--border:#d9cdb6;--secondary:#ece1cf}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--text);font-family:Lato,Arial,sans-serif;font-size:16px;line-height:1.6}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.container{width:min(100% - 32px,1280px);margin-inline:auto}.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}.site-header{position:sticky;top:0;z-index:50;width:100%;background:rgba(247,241,231,.95);border-bottom:1px solid rgba(217,205,182,.6);backdrop-filter:blur(8px)}.site-header .container{width:100%;max-width:none;padding-inline:clamp(24px,4vw,72px)}.header-inner{min-height:108px;display:flex;align-items:center;justify-content:flex-start;gap:0}.brand{display:flex;align-items:center;gap:16px;flex:none}.logo-mark{width:76px;height:76px;color:var(--green);flex:none;object-fit:contain}.brand-text{display:flex;flex-direction:column;line-height:1}.brand-title{font-family:"Cormorant Garamond",serif;font-size:31px;letter-spacing:.17em;color:var(--green);white-space:nowrap}.brand-subtitle{margin-top:8px;font-size:11px;letter-spacing:.28em;color:var(--muted);white-space:nowrap}.main-nav{display:flex;align-items:center;justify-content:flex-start;gap:clamp(18px,1.55vw,28px);margin-left:clamp(28px,3vw,58px);font-size:20px;font-weight:500;white-space:nowrap}.main-nav>a:not(.button){position:relative;padding:6px 0}.main-nav>a:not(.button)::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:.25s}.main-nav>a:hover::after,.main-nav>a.active::after{transform:scaleX(1)}.nav-button{margin-left:clamp(8px,1vw,18px);padding:15px 32px;font-size:19px;font-weight:500}.button{display:inline-block;background:var(--green);color:var(--cream);padding:13px 28px;border:1px solid var(--green);font-size:14px;letter-spacing:.03em;transition:.25s}.button:hover{background:var(--sage);border-color:var(--sage)}.button-secondary{background:rgba(247,241,231,.65);color:var(--green);border-color:var(--border)}.button-secondary:hover{background:var(--secondary);border-color:var(--gold)}.menu-button{display:none;width:44px;height:44px;border:1px solid var(--border);background:transparent;padding:10px}.menu-button span:not(.sr-only){display:block;height:1px;background:var(--green);margin:5px 0;transition:.25s}.hero{overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;min-height:620px}.hero-copy{position:relative;display:flex;flex-direction:column;justify-content:center;padding:70px 32px}.hero-ornament{position:absolute;left:-18px;top:50%;width:250px;height:auto;max-height:500px;object-fit:contain;transform:translateY(-50%);mix-blend-mode:multiply}h1,h2,h3{font-family:"Cormorant Garamond",serif;font-weight:300;color:var(--green);margin:0}.hero h1{font-size:76px;line-height:1.03}.script{font-family:"Dancing Script",cursive;color:var(--gold)}.hero-script{font-size:40px;margin:20px 0 0}.hero-intro{margin:28px 0 0;max-width:470px}.button-row{display:flex;gap:16px;margin-top:34px}.hero-image{position:relative;min-height:620px}.image-fade{position:absolute;inset:0;background:linear-gradient(90deg,var(--cream),rgba(247,241,231,.12),transparent)}.value-band{background:var(--sage);padding:56px 0}.values{display:grid;grid-template-columns:repeat(4,1fr)}.values article{text-align:center;padding:0 30px}.values article+article{border-left:1px solid rgba(247,241,231,.25)}.value-icon{display:block;color:var(--gold);font-size:44px;line-height:1}.values h3{font-size:28px;color:var(--cream);margin-top:20px}.values p{font-size:14px;color:rgba(247,241,231,.85);margin:14px 0 0}.about-grid{display:grid;grid-template-columns:42% 58%}.about-image{min-height:640px}.about-copy{display:flex;align-items:center;padding:70px 7%}.copy-inner{max-width:720px}.eyebrow{text-transform:uppercase;color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.28em;margin:0}.about h2,.section-heading h2{font-size:54px;margin-top:8px}.prose{font-size:14px;margin-top:28px}.prose p{margin:0 0 22px}.about .button{margin-top:12px}.experience{background:var(--cream-dark);padding:72px 0}.section-heading{text-align:center}.steps{list-style:none;padding:0;margin:52px 0 0;display:grid;grid-template-columns:repeat(5,1fr)}.steps li{text-align:center;padding:0 24px}.steps li+li{border-left:1px solid var(--border)}.step-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:auto;background:rgba(247,241,231,.72);border:1px solid rgba(217,205,182,.7);font-size:28px;color:var(--gold)}.steps p{font-size:13px;margin:20px 0 0}.cta-grid{display:grid;grid-template-columns:38% 32% 30%;min-height:280px}.cta-script,.cta-copy{display:flex;flex-direction:column;justify-content:center;padding:45px 9%}.cta-script p{font-size:31px;line-height:1.35;margin:0}.cta-copy{border-left:1px solid var(--border)}.cta-copy p{font-family:"Cormorant Garamond",serif;font-size:28px;color:var(--green);margin:0}.cta-copy .button{align-self:flex-start;margin-top:24px}.site-footer{background:var(--cream-dark)}.footer-main{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding-top:45px;padding-bottom:45px}.contact h2{font-family:Lato,sans-serif;font-size:14px;font-weight:700}.contact p{font-size:13px;margin:7px 0}.contact p::first-letter{color:var(--gold)}.contact a:hover{color:var(--gold)}.footer-bottom{background:var(--secondary);border-top:1px solid rgba(217,205,182,.7)}.footer-bottom .container{display:flex;justify-content:space-between;align-items:center;min-height:42px;font-size:12px;color:var(--muted)}.footer-bottom p{margin:0}.footer-bottom span{margin:0 8px}
@media(max-width:1280px){.main-nav{display:none;position:absolute;left:0;right:0;top:108px;margin-left:0;font-size:18px;background:var(--cream);padding:0 24px 24px;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid var(--border)}.main-nav.open{display:flex}.main-nav>a:not(.button){padding:13px 0;border-bottom:1px solid rgba(217,205,182,.55)}.nav-button{text-align:center;margin:18px 0 0;padding:14px 28px;font-size:18px}.menu-button{display:block}.hero h1{font-size:64px}.steps p{font-size:12px}}
@media(max-width:900px){.hero-grid,.about-grid{grid-template-columns:1fr}.hero-copy{padding:60px 24px}.hero-image{min-height:430px}.image-fade{background:linear-gradient(0deg,var(--cream),rgba(247,241,231,.08),transparent)}.values{grid-template-columns:1fr 1fr;gap:40px 0}.values article:nth-child(3){border-left:0}.about-image{min-height:480px}.about-copy{padding:55px 24px}.steps{grid-template-columns:1fr 1fr;gap:40px 0}.steps li:nth-child(odd){border-left:0}.cta-grid{grid-template-columns:1fr 1fr}.cta-image{grid-column:1/-1;min-height:260px}.footer-main{grid-template-columns:1fr;text-align:center}.footer-brand{justify-content:center}}
@media(max-width:600px){.container{width:min(100% - 24px,1280px)}.site-header .container{padding-inline:16px}.brand{gap:10px}.brand-title{font-size:21px}.brand-subtitle{font-size:8px;letter-spacing:.22em}.logo-mark{width:52px;height:52px}.header-inner{min-height:78px}.main-nav{top:78px}.hero-copy{padding:50px 12px}.hero-ornament{display:none}.hero h1{font-size:50px}.hero-script{font-size:31px}.button-row{flex-direction:column}.button{text-align:center}.hero-image{min-height:330px}.values{grid-template-columns:1fr}.values article+article{border-left:0;border-top:1px solid rgba(247,241,231,.25);padding-top:34px}.about-image{min-height:360px}.about h2,.section-heading h2{font-size:43px}.steps{grid-template-columns:1fr}.steps li+li{border-left:0;border-top:1px solid var(--border);padding-top:30px}.cta-grid{grid-template-columns:1fr}.cta-copy{border-left:0;border-top:1px solid var(--border)}.cta-image{grid-column:auto}.footer-bottom .container{flex-direction:column;justify-content:center;padding:9px 0;gap:4px}}

/* Sprint 1.2 — definitieve header-uitlijning */
@media (min-width:1281px){
  .header-inner{
    display:grid;
    grid-template-columns:minmax(320px,1fr) auto minmax(320px,1fr);
    align-items:center;
    min-height:108px;
    gap:32px;
  }
  .brand{justify-self:start;}
  .main-nav{
    justify-self:center;
    margin-left:0;
    gap:clamp(22px,1.7vw,34px);
    font-size:20px;
    font-weight:500;
  }
  .main-nav .nav-button{display:none;}
  .header-cta{
    display:inline-flex;
    justify-self:end;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:13px 30px;
    font-size:20px;
    font-weight:500;
    line-height:1.2;
    white-space:nowrap;
  }
  .menu-button{display:none;}
}
@media (max-width:1280px){
  .header-inner{justify-content:space-between;}
  .header-cta{display:none;}
}

/* Home sprint — roos links, tekst midden, praktijk rechts */
.hero-grid{
  width:100%;
  max-width:none;
  min-height:620px;
  display:grid;
  grid-template-columns:minmax(250px,22vw) minmax(500px,38vw) minmax(420px,1fr);
  padding-left:clamp(24px,4vw,72px);
}
.hero-visual{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:54px clamp(20px,2vw,38px) 54px 0;
}
.hero-ornament{
  position:static;
  width:min(100%,280px);
  height:auto;
  max-height:520px;
  object-fit:contain;
  transform:none;
  mix-blend-mode:multiply;
}
.hero-copy{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:70px clamp(30px,3vw,64px) 70px clamp(38px,4vw,76px);
}
.hero-image{
  min-height:620px;
}
@media(max-width:1280px){
  .hero-grid{
    grid-template-columns:minmax(220px,28vw) minmax(420px,1fr) minmax(360px,42vw);
    padding-left:24px;
  }
  .hero-copy{padding-inline:32px;}
}
@media(max-width:980px){
  .hero-grid{
    grid-template-columns:220px 1fr;
    padding-left:24px;
  }
  .hero-visual{padding:42px 20px 42px 0;}
  .hero-copy{padding:60px 24px;}
  .hero-image{grid-column:1/-1;min-height:430px;}
}
@media(max-width:700px){
  .hero-grid{grid-template-columns:1fr;padding:0;}
  .hero-visual{display:none;}
  .hero-copy{padding:50px 24px;}
  .hero-image{grid-column:auto;min-height:330px;}
}

/* Sprint 3.3 — USP-balk: expliciete flex-uitlijning over de volle breedte.
   Alleen deze sectie is aangepast; header en hero blijven onaangeroerd. */
@media (min-width: 901px){
  .value-band .container{
    width:100%;
    max-width:none;
    padding-inline:2.5vw;
  }
  .values{
    display:flex;
    justify-content:space-between;
    align-items:stretch;
    width:100%;
  }
  .values article{
    position:relative;
    flex:0 0 18%;
    width:18%;
    padding-inline:0;
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
  }
  /* De USP-items blijven op exact dezelfde horizontale posities.
     De scheidingslijnen staan nu halverwege de ruimte tussen twee items,
     waardoor icoon en tekst optisch midden tussen de lijnen staan. */
  .values article+article{
    border-left:0;
  }
  .values article:not(:last-child)::after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    right:-25.93%;
    width:1px;
    background:rgba(247,241,231,.25);
  }
  .values h3,
  .values p{
    width:100%;
    text-align:center;
  }
  .values h3{
    font-size:36px;
    line-height:1.12;
  }
  .values p{
    font-size:20px;
    line-height:1.45;
  }
  .value-icon{
    font-size:50px;
  }
}

/* Punt 4 v2 — Over Libra Soul: typografie nogmaals +5pt (totaal +10pt t.o.v. basis) */
.about .eyebrow{
  font-size:22px;
}
.about h2{
  font-size:64px;
}
.about .prose{
  font-size:24px;
}
.about .button{
  font-size:24px;
}
@media(max-width:600px){
  .about h2{
    font-size:53px;
  }
}

/* Punt 5 v1 — De LibraSoul Beleving: zelfde typografie en uitlijning als USP-balk (punt 3) */
@media (min-width: 901px){
  .experience .container{
    width:100%;
    max-width:none;
    padding-inline:2.5vw;
  }
  .experience .steps{
    display:flex;
    justify-content:space-between;
    align-items:stretch;
    width:100%;
    margin-top:52px;
  }
  .experience .steps li{
    position:relative;
    flex:0 0 17%;
    width:17%;
    padding-inline:0;
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
  }
  .experience .steps li+li{
    border-left:0;
  }
  .experience .steps li:not(:last-child)::after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    right:-23.5%;
    width:1px;
    background:var(--border);
  }
  .experience .steps p{
    width:100%;
    margin:20px 0 0;
    font-size:20px;
    line-height:1.45;
    text-align:center;
  }
  .experience .step-icon{
    font-size:34px;
  }
}

/* Punt 5 v2 — inhoud optisch centreren binnen ieder Beleving-blok.
   De blokposities en typografie blijven gelijk; alleen de scheidingslijnen
   staan exact halverwege de ruimte tussen twee flex-items. */
@media (min-width: 901px){
  .experience .steps li{
    text-align:center;
    align-items:center;
  }
  .experience .steps li:not(:last-child)::after{
    right:-11.03%;
  }
  .experience .steps p{
    width:100%;
    margin-left:auto;
    margin-right:auto;
    text-align:center;
  }
  .experience .step-icon{
    margin-left:auto;
    margin-right:auto;
  }
}

/* Punt 5 v3 — alle Beleving-blokken bovenaan uitlijnen.
   Alleen verticale uitlijning binnen punt 5; punten 1 t/m 4 blijven ongewijzigd. */
@media (min-width: 901px){
  .experience .steps li{
    justify-content:flex-start;
    align-self:stretch;
  }
  .experience .step-icon{
    flex:0 0 64px;
    width:64px;
    height:64px;
  }
}

/* Punt 5 v4 — iconen van alle Beleving-blokken exact op één horizontale lijn.
   Oorzaak: de basisregel .step-icon gebruikte margin:auto, waardoor verticale
   auto-marges binnen de flexkolom de iconen konden verschuiven. */
@media (min-width: 901px){
  .experience .steps{
    align-items:flex-start;
  }
  .experience .steps li{
    justify-content:flex-start;
    align-self:flex-start;
  }
  .experience .step-icon{
    margin:0 auto;
    flex:0 0 64px;
    width:64px;
    height:64px;
  }
}

/* Punt 5 v5 — alleen label 'Mijn aanbod' op 18px */
.experience .section-heading .eyebrow{
  font-size:18px;
}

/* Over mij pagina v1 — uitsluitend scoped op .about-page; homepage blijft ongewijzigd */
.about-page .about-story{
  position:relative;
  padding:72px 0 84px;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 18%, rgba(183,142,62,.07), transparent 24%),
    radial-gradient(circle at 92% 72%, rgba(124,140,102,.06), transparent 24%),
    var(--cream);
}
.about-page .about-story::after{
  content:"";
  position:absolute;
  right:-35px;
  bottom:120px;
  width:300px;
  height:380px;
  opacity:.16;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 50% 20%, transparent 0 48%, rgba(84,104,74,.45) 49% 50%, transparent 51%),
    linear-gradient(70deg, transparent 49.3%, rgba(84,104,74,.35) 49.8% 50.2%, transparent 50.7%);
  transform:rotate(-10deg);
}
.about-page .about-story-grid{
  display:grid;
  grid-template-columns:minmax(320px, 41%) minmax(0, 1fr);
  gap:clamp(48px,6vw,92px);
  align-items:stretch;
  max-width:1380px;
}
.about-page .about-story-photo{
  aspect-ratio:4 / 5;
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 18px 55px rgba(80,63,42,.08);
  background:var(--cream-dark);
}
.about-page .about-story-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 35%;
}
.about-page .about-story-intro{
  padding-top:12px;
  max-width:720px;
  display:flex;
  flex-direction:column;
  min-height:100%;
}
.about-page .about-story-intro .about-story-prose{
  margin-top:auto;
}
.about-page .about-story-intro .eyebrow{
  font-size:15px;
  margin-bottom:12px;
}
.about-page .about-story h1{
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(48px,4.25vw,72px);
  line-height:1.03;
  font-weight:400;
  color:var(--green);
  margin:0;
}
.about-page .about-divider{
  display:flex;
  align-items:center;
  gap:14px;
  margin:30px 0 32px;
  color:var(--gold);
}
.about-page .about-divider span{
  height:1px;
  flex:1;
  background:rgba(183,142,62,.7);
}
.about-page .about-divider b{
  font-size:20px;
  font-weight:400;
  line-height:1;
}
.about-page .about-story-prose,
.about-page .about-story-continuation{
  font-size:20px;
  line-height:1.75;
  color:#2f372d;
}
.about-page .about-story-prose p,
.about-page .about-story-continuation p{
  margin:0 0 28px;
}
.about-page .about-story-continuation{
  max-width:1380px;
  padding-top:50px;
  padding-right:min(18vw,260px);
}
.about-page .about-welcome{
  margin-top:44px !important;
  font-family:"Cormorant Garamond",serif;
  font-size:36px;
  line-height:1.2;
  color:var(--green);
  font-weight:500;
}
.about-page .about-signoff{
  font-family:"Dancing Script",cursive;
  font-size:34px;
  color:var(--gold);
  margin-top:8px !important;
}
@media(max-width:900px){
  .about-page .about-story{padding:46px 0 62px}
  .about-page .about-story-grid{grid-template-columns:1fr;gap:34px}
  .about-page .about-story-photo{width:min(100%,560px);aspect-ratio:4/5}
  .about-page .about-story-intro{padding-top:0;max-width:none;display:block;min-height:0}
  .about-page .about-story-intro .about-story-prose{margin-top:0}
  .about-page .about-story h1{font-size:clamp(44px,9vw,64px)}
  .about-page .about-story-continuation{padding-top:12px;padding-right:0}
  .about-page .about-story::after{display:none}
}
@media(max-width:600px){
  .about-page .about-story{padding-top:28px}
  .about-page .about-story-grid{gap:26px}
  .about-page .about-story-photo{border-radius:7px}
  .about-page .about-story-intro .eyebrow{font-size:13px}
  .about-page .about-story h1{font-size:42px}
  .about-page .about-story-prose,
  .about-page .about-story-continuation{font-size:18px;line-height:1.7}
  .about-page .about-story-prose p,
  .about-page .about-story-continuation p{margin-bottom:22px}
  .about-page .about-welcome{font-size:31px}
  .about-page .about-signoff{font-size:30px}
}

/* Over mij v3 — laatste regel van de tekstkolom gelijk met onderkant foto */
.about-page .about-story-intro .about-story-prose p:last-child{
  margin-bottom:0;
}


/* Golden Master v5 — CTA onder De LibraSoul Beleving */
.experience .experience-button-row{
  display:flex;
  justify-content:center;
  margin-top:46px;
}
.experience .experience-button-row .button{
  font-size:18px;
  padding:14px 30px;
}
@media(max-width:600px){
  .experience .experience-button-row{margin-top:34px;}
  .experience .experience-button-row .button{width:100%;max-width:320px;}
}

/* Belevingen v1 */
.experiences-page .experience-intro{padding:58px 0 72px;background:#f8f2e9}
.experiences-page .experience-intro-grid{display:grid;grid-template-columns:minmax(330px,42%) minmax(0,1fr);gap:clamp(50px,6vw,96px);align-items:start;max-width:1380px}
.experiences-page .experience-photo-stack{display:grid;gap:18px}
.experiences-page .experience-photo-stack img{display:block;width:100%;border-radius:9px;object-fit:cover;box-shadow:0 16px 45px rgba(80,63,42,.07)}
.experiences-page .experience-photo-stack img:first-child{aspect-ratio:3/2}.experiences-page .experience-photo-stack img:last-child{aspect-ratio:3/4;object-position:center 42%}
.experiences-page .experience-intro-copy{padding-top:8px;font-size:19px;line-height:1.68;color:#30372d}
.experiences-page .experience-intro-copy .eyebrow{font-size:15px;margin-bottom:10px}.experiences-page .experience-intro-copy h1{font-family:"Cormorant Garamond",serif;font-size:clamp(48px,4.2vw,70px);font-weight:400;line-height:1;color:var(--green);margin:0 0 13px}
.experiences-page .experience-intro-copy h2{font-family:"Dancing Script",cursive;font-size:clamp(31px,2.5vw,42px);font-weight:400;color:var(--gold);margin:0 0 28px}.experiences-page .experience-intro-copy p{margin:0 0 19px}.experiences-page .experience-soft-ending{font-family:"Dancing Script",cursive;font-size:29px;line-height:1.45;color:var(--green);margin-top:27px!important}
.experiences-page .experience-offers{padding:22px 0 80px;background:#fbf7f1}.experiences-page .experience-offers>.container{max-width:1460px}.experiences-page .experience-card{position:relative;display:grid;grid-template-columns:minmax(260px,34%) minmax(0,1fr);gap:clamp(35px,5vw,80px);padding:46px 48px 52px;margin:0 0 24px;border:1px solid rgba(177,145,97,.16);border-radius:13px;background:linear-gradient(110deg,rgba(244,229,216,.58),rgba(250,247,239,.9));box-shadow:0 10px 32px rgba(80,63,42,.035)}
.experiences-page .experience-card:nth-child(even){background:linear-gradient(110deg,rgba(235,239,225,.7),rgba(250,247,239,.92))}.experiences-page .experience-card-heading h2{font-family:"Cormorant Garamond",serif;font-size:38px;font-weight:500;color:var(--gold);margin:0 0 5px}.experiences-page .experience-card-heading h3{font-family:"Dancing Script",cursive;font-size:27px;font-weight:400;line-height:1.25;color:var(--green);margin:0 0 24px}.experiences-page .experience-card p{font-size:17px;line-height:1.65;color:#30372d;margin:0 0 17px}.experiences-page .experience-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 48px;padding-right:90px}.experiences-page .experience-features h4{font-family:"Cormorant Garamond",serif;font-size:23px;color:var(--gold);font-weight:600;margin:0 0 4px}.experiences-page .experience-note{font-family:"Dancing Script",cursive;font-size:25px!important;color:var(--green)!important;margin-top:24px!important}.experiences-page .experience-price{position:absolute;right:38px;bottom:28px;padding:8px 17px;border:1px solid var(--gold);border-radius:999px;font-family:"Cormorant Garamond",serif;font-size:27px;color:var(--gold);background:rgba(255,252,246,.75)}
@media(max-width:900px){.experiences-page .experience-intro-grid{grid-template-columns:1fr;gap:35px}.experiences-page .experience-photo-stack{grid-template-columns:1fr 1fr}.experiences-page .experience-photo-stack img:first-child,.experiences-page .experience-photo-stack img:last-child{aspect-ratio:4/3}.experiences-page .experience-card{grid-template-columns:1fr;padding:36px 30px 76px}.experiences-page .experience-features{padding-right:0}}
@media(max-width:600px){.experiences-page .experience-intro{padding:30px 0 48px}.experiences-page .experience-photo-stack{grid-template-columns:1fr;gap:12px}.experiences-page .experience-photo-stack img:first-child{aspect-ratio:3/2}.experiences-page .experience-photo-stack img:last-child{aspect-ratio:4/5}.experiences-page .experience-intro-copy{font-size:18px}.experiences-page .experience-intro-copy h1{font-size:43px}.experiences-page .experience-intro-copy h2{font-size:31px}.experiences-page .experience-card{padding:30px 22px 72px}.experiences-page .experience-card-heading h2{font-size:34px}.experiences-page .experience-features{grid-template-columns:1fr;gap:8px}.experiences-page .experience-price{right:22px;bottom:22px}}


/* Belevingen v3 — compactere fotokolom, exact gekoppeld aan teksthoogte */
@media (min-width: 901px){
  .experiences-page .experience-intro-grid{
    align-items:start;
  }
  .experiences-page .experience-photo-stack{
    display:grid;
    grid-template-rows:40% 60%;
    gap:12px;
    min-height:0;
  }
  .experiences-page .experience-photo-stack img,
  .experiences-page .experience-photo-stack img:first-child,
  .experiences-page .experience-photo-stack img:last-child{
    width:100%;
    height:100%;
    min-height:0;
    aspect-ratio:auto;
    object-fit:cover;
  }
  .experiences-page .experience-photo-stack img:first-child{
    object-position:center center;
  }
  .experiences-page .experience-photo-stack img:last-child{
    object-position:center 38%;
  }
}


/* Belevingen v4 — uitklapmenu Beleving + directe ankers */
.main-nav .nav-dropdown{position:relative;display:flex;align-items:center;align-self:stretch}
.main-nav .nav-dropdown-trigger{position:relative;padding:6px 0;display:flex;align-items:center;gap:5px}
.main-nav .nav-dropdown-trigger::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:.25s}
.main-nav .nav-dropdown-trigger:hover::after,.main-nav .nav-dropdown-trigger.active::after{transform:scaleX(1)}
.main-nav .nav-caret{font-size:15px;color:var(--gold);line-height:1;transform:translateY(-1px)}
.main-nav .nav-submenu{position:absolute;top:calc(100% - 2px);left:50%;transform:translateX(-50%) translateY(8px);min-width:190px;padding:10px 0;background:rgba(247,241,231,.98);border:1px solid rgba(217,205,182,.75);box-shadow:0 12px 28px rgba(63,78,57,.12);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:80}
.main-nav .nav-submenu a{display:block;padding:9px 20px;font-size:17px;color:var(--text);white-space:nowrap}
.main-nav .nav-submenu a:hover{color:var(--gold);background:rgba(238,226,207,.55)}
.main-nav .nav-dropdown:hover .nav-submenu,.main-nav .nav-dropdown:focus-within .nav-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.experiences-page .experience-card[id]{scroll-margin-top:128px}
@media(max-width:1280px){
  .main-nav .nav-dropdown{display:block;align-self:stretch;border-bottom:1px solid rgba(217,205,182,.55)}
  .main-nav .nav-dropdown-trigger{padding:13px 0;border-bottom:0!important;justify-content:space-between}
  .main-nav .nav-submenu{position:static;transform:none!important;min-width:0;padding:0 0 8px 18px;border:0;box-shadow:none;background:transparent;opacity:1;visibility:visible;pointer-events:auto}
  .main-nav .nav-submenu a{padding:7px 0;font-size:16px;color:var(--muted)}
  .experiences-page .experience-card[id]{scroll-margin-top:98px}
}
@media(max-width:600px){.experiences-page .experience-card[id]{scroll-margin-top:82px}}

/* Etherische oliën v1 — scoped op .oils-page; definitieve pagina's blijven ongewijzigd */
.oils-page .oils-story{
  position:relative;
  padding:72px 0 84px;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 18%, rgba(183,142,62,.07), transparent 24%),
    radial-gradient(circle at 92% 72%, rgba(124,140,102,.06), transparent 24%),
    var(--cream);
}
.oils-page .oils-story::after{
  content:"";
  position:absolute;
  right:-40px;
  top:270px;
  width:300px;
  height:390px;
  opacity:.12;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 50% 20%, transparent 0 48%, rgba(84,104,74,.45) 49% 50%, transparent 51%),
    linear-gradient(70deg, transparent 49.3%, rgba(84,104,74,.35) 49.8% 50.2%, transparent 50.7%);
  transform:rotate(-10deg);
}
.oils-page .oils-story-grid{
  display:grid;
  grid-template-columns:minmax(320px,41%) minmax(0,1fr);
  gap:clamp(48px,6vw,92px);
  align-items:stretch;
  max-width:1380px;
}
.oils-page .oils-story-photo{
  min-height:0;
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 18px 55px rgba(80,63,42,.08);
  background:var(--cream-dark);
}
.oils-page .oils-story-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 54%;
}
.oils-page .oils-story-intro{
  padding-top:12px;
  max-width:760px;
  display:flex;
  flex-direction:column;
  min-height:100%;
}
.oils-page .oils-story-intro .eyebrow{font-size:15px;margin-bottom:12px}
.oils-page .oils-story h1{
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(48px,4.25vw,72px);
  line-height:1.03;
  font-weight:400;
  color:var(--green);
  margin:0;
}
.oils-page .oils-subtitle{
  margin:12px 0 0;
  font-family:"Dancing Script",cursive;
  font-size:clamp(30px,2.5vw,42px);
  line-height:1.25;
  color:var(--gold);
}
.oils-page .oils-divider{display:flex;align-items:center;gap:14px;margin:28px 0 30px;color:var(--gold)}
.oils-page .oils-divider span{height:1px;flex:1;background:rgba(183,142,62,.7)}
.oils-page .oils-divider b{font-size:18px;font-weight:400;line-height:1}
.oils-page .oils-story-prose,
.oils-page .oils-story-continuation{font-size:20px;line-height:1.75;color:#2f372d}
.oils-page .oils-story-prose p{margin:0 0 26px}
.oils-page .oils-story-prose p:last-child{margin-bottom:0}
.oils-page .oils-story-continuation{max-width:1380px;padding-top:58px;position:relative;z-index:1}
.oils-page .oils-story-continuation>h2{
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(40px,3.4vw,56px);
  font-weight:400;
  color:var(--green);
  margin:0 0 30px;
}
.oils-page .oils-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.oils-page .oils-features article{
  padding:28px 30px;
  border:1px solid rgba(217,205,182,.55);
  background:rgba(255,255,255,.2);
  border-radius:10px;
}
.oils-page .oils-features h3{
  font-family:"Cormorant Garamond",serif;
  font-size:29px;
  line-height:1.2;
  font-weight:500;
  color:var(--green);
  margin:0 0 12px;
}
.oils-page .oils-features p{font-size:18px;line-height:1.7;margin:0}
.oils-page .oils-price-panel{
  margin-top:36px;
  padding:38px 42px;
  border-radius:10px;
  background:var(--cream-dark);
  border:1px solid rgba(217,205,182,.65);
}
.oils-page .oils-price-panel .eyebrow{font-size:14px;margin-bottom:8px}
.oils-page .oils-price-panel h2{
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(34px,3vw,48px);
  line-height:1.15;
  font-weight:500;
  color:var(--green);
  margin:0 0 20px;
}
.oils-page .oils-price-panel p{font-size:18px;line-height:1.7;margin:0 0 12px}
.oils-page .oils-closing{
  margin-top:24px!important;
  margin-bottom:0!important;
  font-family:"Dancing Script",cursive;
  font-size:31px!important;
  line-height:1.35!important;
  color:var(--gold);
}
@media(max-width:900px){
  .oils-page .oils-story{padding:46px 0 62px}
  .oils-page .oils-story-grid{grid-template-columns:1fr;gap:34px}
  .oils-page .oils-story-photo{width:min(100%,560px);aspect-ratio:4/5}
  .oils-page .oils-story-intro{padding-top:0;max-width:none;display:block;min-height:0}
  .oils-page .oils-story h1{font-size:clamp(44px,9vw,64px)}
  .oils-page .oils-story-continuation{padding-top:42px}
  .oils-page .oils-story::after{display:none}
}
@media(max-width:700px){.oils-page .oils-features{grid-template-columns:1fr}}
@media(max-width:600px){
  .oils-page .oils-story{padding-top:28px}
  .oils-page .oils-story-grid{gap:26px}
  .oils-page .oils-story-photo{border-radius:7px}
  .oils-page .oils-story-intro .eyebrow{font-size:13px}
  .oils-page .oils-story h1{font-size:42px}
  .oils-page .oils-subtitle{font-size:30px}
  .oils-page .oils-story-prose,.oils-page .oils-story-continuation{font-size:18px;line-height:1.7}
  .oils-page .oils-story-prose p{margin-bottom:22px}
  .oils-page .oils-features article{padding:23px 22px}
  .oils-page .oils-features h3{font-size:27px}
  .oils-page .oils-features p{font-size:17px}
  .oils-page .oils-price-panel{padding:28px 24px}
  .oils-page .oils-price-panel p{font-size:17px}
  .oils-page .oils-closing{font-size:28px!important}
}

/* Etherische oliën v2 — foto en rechtertekst uitgelijnd zoals Over mij */
@media (min-width: 901px){
  .oils-page .oils-story-photo{
    aspect-ratio:4 / 5;
  }
  .oils-page .oils-story-intro .oils-story-prose{
    margin-top:auto;
  }
}

/* Contact page v1 */
.contact-page .contact-page-section{padding:88px 0 96px;background:radial-gradient(circle at 88% 15%,rgba(179,138,69,.08),transparent 26%),var(--cream);min-height:62vh}.contact-page .contact-page-wrap{max-width:1120px}.contact-page .contact-page-wrap>h1{font-family:"Cormorant Garamond",serif;font-size:clamp(46px,5vw,70px);line-height:1.05;font-weight:300;color:var(--green);margin:8px 0 18px}.contact-page .contact-page-intro{font-family:"Cormorant Garamond",serif;font-size:27px;color:var(--green);margin:0 0 34px}.contact-page .contact-page-card{border:1px solid var(--border);background:rgba(255,255,255,.24);padding:38px 42px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 56px}.contact-page .contact-detail h2{font-size:15px;margin:0 0 5px;color:var(--text)}.contact-page .contact-detail p{margin:0;font-size:17px;line-height:1.65}.contact-page .contact-detail a:hover{color:var(--gold)}.contact-page .contact-appointment{grid-column:1/-1;justify-self:start;margin-top:8px}@media(max-width:700px){.contact-page .contact-page-section{padding:58px 0 68px}.contact-page .contact-page-card{grid-template-columns:1fr;padding:28px 24px;gap:22px}.contact-page .contact-page-intro{font-size:23px}.contact-page .contact-appointment{grid-column:auto}}

/* Lieve woorden v1 — zelfde visuele familie als de overige inhoudspagina's */
.kind-words-page .kind-words-section{
  min-height:62vh;
  padding:96px 0 108px;
  background:
    radial-gradient(circle at 88% 15%,rgba(179,138,69,.08),transparent 26%),
    radial-gradient(circle at 8% 88%,rgba(96,113,79,.06),transparent 28%),
    var(--cream);
}
.kind-words-page .kind-words-wrap{
  max-width:980px;
}
.kind-words-page .kind-words-wrap>.eyebrow{
  font-size:15px;
  margin-bottom:12px;
}
.kind-words-page .kind-words-wrap>h1{
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(50px,5vw,72px);
  line-height:1.04;
  font-weight:300;
  color:var(--green);
  margin:0;
}
.kind-words-page .kind-words-divider{
  display:flex;
  align-items:center;
  gap:14px;
  width:min(100%,520px);
  margin:28px 0 30px;
  color:var(--gold);
}
.kind-words-page .kind-words-divider span{
  height:1px;
  flex:1;
  background:rgba(183,142,62,.7);
}
.kind-words-page .kind-words-divider b{
  font-size:18px;
  font-weight:400;
  line-height:1;
}
.kind-words-page .kind-words-intro{
  max-width:760px;
  margin:0 0 34px;
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(25px,2.4vw,32px);
  line-height:1.45;
  color:var(--green);
}
@media(max-width:700px){
  .kind-words-page .kind-words-section{padding:60px 0 72px}
  .kind-words-page .kind-words-wrap>.eyebrow{font-size:13px}
  .kind-words-page .kind-words-wrap>h1{font-size:46px}
  .kind-words-page .kind-words-intro{font-size:24px}
}


/* Lieve woorden formulier v1 — scoped op .kind-words-page */
.kind-words-page .kind-words-section{padding-bottom:76px}
.kind-words-page .review-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:40px}
.kind-words-page .review-card{padding:30px 32px;border:1px solid rgba(217,205,182,.72);background:rgba(255,255,255,.28);border-radius:10px}
.kind-words-page .review-stars{color:var(--gold);font-size:21px;letter-spacing:.08em}.kind-words-page .review-stars span{color:rgba(183,142,62,.22)}
.kind-words-page .review-card blockquote{margin:18px 0 20px;font-family:"Cormorant Garamond",serif;font-size:24px;line-height:1.48;color:var(--green)}
.kind-words-page .review-author{margin:0;font-size:14px;color:var(--muted)}.kind-words-page .review-author span{color:var(--gold)}
.kind-words-page .review-empty{margin:28px 0 0;color:var(--muted);font-style:italic}
.kind-words-page .review-form-section{padding:84px 0 96px;background:var(--cream-dark);border-top:1px solid rgba(217,205,182,.65)}
.kind-words-page .review-form-layout{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.35fr);gap:clamp(52px,7vw,100px);align-items:start;max-width:1180px}
.kind-words-page .review-form-copy{position:sticky;top:142px}.kind-words-page .review-form-copy .eyebrow{font-size:14px}.kind-words-page .review-form-copy h2{font-size:clamp(42px,4vw,58px);line-height:1.06;margin:8px 0 24px}
.kind-words-page .review-form-copy p{font-size:18px;line-height:1.75;margin:0 0 20px}.kind-words-page .review-note{font-family:"Dancing Script",cursive;font-size:28px!important;line-height:1.35!important;color:var(--gold)}
.kind-words-page .review-form-card{padding:38px 42px;background:rgba(247,241,231,.78);border:1px solid rgba(217,205,182,.8);border-radius:10px;box-shadow:0 18px 50px rgba(63,78,57,.06)}
.kind-words-page .review-form{display:grid;gap:26px}.kind-words-page .form-field{display:grid;gap:9px;border:0;padding:0;margin:0;min-width:0}.kind-words-page .form-field>label,.kind-words-page .form-field>legend{font-size:15px;font-weight:700;color:var(--text)}
.kind-words-page .form-field>label>span,.kind-words-page .form-field>legend>span{color:var(--gold)}
.kind-words-page .form-field input[type="text"],.kind-words-page .form-field select,.kind-words-page .form-field textarea{width:100%;font:inherit;color:var(--text);background:#fffdf8;border:1px solid var(--border);border-radius:4px;padding:13px 14px;outline:none;transition:border-color .2s,box-shadow .2s}
.kind-words-page .form-field textarea{resize:vertical;min-height:170px}.kind-words-page .form-field input[type="text"]:focus,.kind-words-page .form-field select:focus,.kind-words-page .form-field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(183,142,62,.1)}
.kind-words-page .form-field small{font-size:12px;color:var(--muted);line-height:1.5}.kind-words-page .form-field small a{text-decoration:underline;text-decoration-color:rgba(183,142,62,.6);text-underline-offset:2px}
.kind-words-page .choice-field{gap:11px}.kind-words-page .choice-field label{display:flex;align-items:center;gap:9px;font-weight:400}.kind-words-page input[type="radio"],.kind-words-page input[type="checkbox"]{accent-color:var(--green)}
.kind-words-page .consent-field label{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:10px;font-weight:400;line-height:1.55}.kind-words-page .consent-field input{margin-top:5px}
.kind-words-page .rating-field{gap:8px}.kind-words-page .star-rating{display:flex;flex-direction:row-reverse;justify-content:flex-end;width:max-content}.kind-words-page .star-rating input{position:absolute;opacity:0;pointer-events:none}.kind-words-page .star-rating label{cursor:pointer;color:rgba(183,142,62,.24);font-size:36px;line-height:1;padding-right:5px;transition:color .15s,transform .15s}.kind-words-page .star-rating label:hover{transform:translateY(-1px)}
.kind-words-page .star-rating label:hover,.kind-words-page .star-rating label:hover~label,.kind-words-page .star-rating input:checked~label{color:var(--gold)}.kind-words-page .star-rating input:focus-visible+label{outline:2px solid var(--green);outline-offset:3px;border-radius:2px}
.kind-words-page .publication-name-field[hidden]{display:none}.kind-words-page .review-submit{justify-self:start;border-radius:0;cursor:pointer;font-family:inherit}.kind-words-page .required-note{font-size:12px;color:var(--muted);margin:-12px 0 0}
.kind-words-page .form-message{padding:18px 20px;margin:0 0 26px;border-radius:6px;font-size:14px;line-height:1.6}.kind-words-page .form-message ul{margin:8px 0 0;padding-left:20px}.kind-words-page .form-success{background:rgba(124,140,102,.12);border:1px solid rgba(84,104,74,.28);color:var(--green)}.kind-words-page .form-error{background:rgba(150,80,65,.07);border:1px solid rgba(150,80,65,.25);color:#74483f}
.kind-words-page .hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:900px){.kind-words-page .review-form-layout{grid-template-columns:1fr;gap:36px}.kind-words-page .review-form-copy{position:static}.kind-words-page .review-list{grid-template-columns:1fr}}
@media(max-width:600px){.kind-words-page .review-form-section{padding:58px 0 70px}.kind-words-page .review-form-card{padding:28px 22px}.kind-words-page .review-form-copy p{font-size:17px}.kind-words-page .review-note{font-size:26px!important}.kind-words-page .star-rating label{font-size:34px}}


/* Lokale test — foto Over Libra Soul rondom zacht vervaagd */
.about-image-soft{
  position:relative;
  overflow:hidden;
  background:var(--cream);
}
.about-image-soft > img{
  position:relative;
  z-index:0;
}
.about-image-edge-blur{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  -webkit-mask-image:radial-gradient(ellipse at center, transparent 0%, transparent 57%, rgba(0,0,0,.18) 68%, #000 100%);
  mask-image:radial-gradient(ellipse at center, transparent 0%, transparent 57%, rgba(0,0,0,.18) 68%, #000 100%);
}
.about-image-soft::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  box-shadow:inset 0 0 46px 22px var(--cream);
  opacity:.72;
}


/* Lokale test — portret Over mij rondom zacht vervaagd */
.about-page .about-story-photo-soft{
  position:relative;
  background:var(--cream);
}
.about-page .about-story-photo-soft > img{
  position:relative;
  z-index:0;
}
.about-page .about-story-photo-edge-blur{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  -webkit-mask-image:radial-gradient(ellipse at center, transparent 0%, transparent 57%, rgba(0,0,0,.18) 68%, #000 100%);
  mask-image:radial-gradient(ellipse at center, transparent 0%, transparent 57%, rgba(0,0,0,.18) 68%, #000 100%);
}
.about-page .about-story-photo-soft::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  box-shadow:inset 0 0 46px 22px var(--cream);
  opacity:.72;
}


/* Lokale test — foto's Belevingen en Etherische oliën rondom zacht vervaagd */
.experiences-page .experience-photo-soft,
.oils-page .oils-story-photo-soft{
  position:relative;
  overflow:hidden;
  background:var(--cream);
}
.experiences-page .experience-photo-soft{border-radius:9px;box-shadow:0 16px 45px rgba(80,63,42,.07)}
.experiences-page .experience-photo-soft:first-child{aspect-ratio:3/2}
.experiences-page .experience-photo-soft:last-child{aspect-ratio:3/4}
.experiences-page .experience-photo-soft > img,
.oils-page .oils-story-photo-soft > img{position:relative;z-index:0;width:100%;height:100%;object-fit:cover}
.experiences-page .experience-photo-soft:last-child > img{object-position:center 42%}
.experiences-page .experience-photo-edge-blur,
.oils-page .oils-story-photo-edge-blur{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  -webkit-mask-image:radial-gradient(ellipse at center,transparent 0%,transparent 57%,rgba(0,0,0,.18) 68%,#000 100%);
  mask-image:radial-gradient(ellipse at center,transparent 0%,transparent 57%,rgba(0,0,0,.18) 68%,#000 100%);
}
.experiences-page .experience-photo-soft::after,
.oils-page .oils-story-photo-soft::after{
  content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  box-shadow:inset 0 0 46px 22px var(--cream);opacity:.72;
}
@media(max-width:900px){
 .experiences-page .experience-photo-soft:first-child,.experiences-page .experience-photo-soft:last-child{aspect-ratio:4/3}
}
@media(max-width:600px){
 .experiences-page .experience-photo-soft:first-child{aspect-ratio:3/2}
 .experiences-page .experience-photo-soft:last-child{aspect-ratio:4/5}
}
