:root{
  /* Huisstijl Logopedie Elise | Brand board aug 2026 */
  --forest:#013533;      /* primair donkergroen */
  --forest-dk:#012422;   /* hover / diepere vlakken */
  --flame:#E34C18;       /* accent, grafisch */
  --flame-dp:#D04516;    /* accent op knoppen, WCAG AA met wit */
  --flame-dk:#B53C13;    /* hover */
  --sun:#FED176;         /* zacht accent */
  --cream:#F7DEC0;       /* vlak */
  --sand:#E3DDD1;        /* vlak */
  --ink:#2F241D;         /* bodytekst */
  /* afgeleid, staat niet op het brand board */
  --paper:#FBF7F1;       /* pagina-achtergrond */
  --muted:#6B5B4E;       /* secundaire tekst */
  --white:#FFFFFF;
  --line:rgba(47,36,29,.12);
  --shadow:0 24px 50px -26px rgba(1,53,51,.42);--shadow-sm:0 10px 26px -16px rgba(1,53,51,.34);
  /* typeschaal, verhouding ~1.18 vanaf 1rem */
  --fs-3xs:.76rem;--fs-2xs:.86rem;--fs-xs:.94rem;--fs-s:1rem;--fs-m:1.14rem;
  --fs-l:1.36rem;--fs-xl:1.6rem;--fs-2xl:2rem;
  --fs-h1:clamp(2.5rem,4.9vw,3.7rem);--fs-h2:clamp(2.2rem,4.6vw,3.35rem);--fs-h3:1.58rem;
  --fs-quote:clamp(1.7rem,3.6vw,2.45rem);--fs-review:clamp(1.14rem,1.9vw,1.36rem);
  --serif:'Cormorant Garamond',Georgia,serif;
  --r:26px;
  /* 12-koloms raster. Container 1400 minus 2x40 padding = 1320 inhoud.
     12 kolommen van 88 + 11 goten van 24 = 1320. Span-breedtes: 88n + 24(n-1). */
  --wrap:1400px;--pad:40px;--gap:24px;--col:88px;
  --w4:424px;--w5:536px;--w6:648px;--w7:760px;--w8:872px;--w9:984px;--w10:1096px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Instrument Sans',system-ui,sans-serif;background:var(--paper);color:var(--ink);line-height:1.62;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,.display{font-family:var(--serif);font-weight:600;line-height:1.08;letter-spacing:-.004em}
h2,h3{font-family:var(--serif);font-weight:600;line-height:1.14;letter-spacing:0}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.eyebrow{font-size:var(--fs-2xs);font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--forest);display:inline-flex;align-items:center;gap:.6rem}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--flame);border-radius:2px}
.squig{display:inline-block;position:relative}
.squig svg{position:absolute;left:-2%;bottom:-.14em;width:104%;height:.34em;overflow:visible}
.squig path{stroke:var(--flame);stroke-width:5;fill:none;stroke-linecap:round;stroke-dasharray:400;stroke-dashoffset:400;animation:draw 1.1s ease .3s forwards}
@keyframes draw{to{stroke-dashoffset:0}}
.btn{display:inline-flex;align-items:center;gap:.5rem;justify-content:center;font-family:'Instrument Sans',sans-serif;font-weight:600;font-size:var(--fs-s);padding:.9rem 1.6rem;border-radius:100px;border:1.5px solid transparent;cursor:pointer;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s,background .2s;white-space:nowrap}
.btn-primary{background:var(--flame-dp);color:#fff}
.btn-primary:hover{background:var(--flame-dk);transform:translateY(-3px);box-shadow:0 14px 30px -14px rgba(181,60,19,.6)}
.btn-accent{background:var(--sun);color:var(--ink)}
.btn-accent:hover{background:#FFDF9C;transform:translateY(-3px);box-shadow:0 14px 30px -14px rgba(0,0,0,.45)}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--forest);color:var(--forest);transform:translateY(-3px)}
.btn-arrow::after{content:"→";transition:transform .2s}
.btn-arrow:hover::after{transform:translateX(4px)}
header{position:sticky;top:0;z-index:60;background:rgba(251,247,241,.82);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:74px}
.brand{display:flex;align-items:center;gap:.65rem;font-family:var(--serif);font-weight:500;text-transform:uppercase;letter-spacing:.14em;font-size:1.02rem;color:var(--ink);white-space:nowrap}
.brand .mark{width:30px;height:30px;flex:0 0 auto}
.nav-links{display:flex;align-items:center;gap:2.1rem}
.nav-links a{font-size:var(--fs-xs);font-weight:500;color:var(--muted);transition:color .15s}
.nav-links a:hover{color:var(--forest)}
.nav-right{display:flex;align-items:center;gap:1.15rem}
.nav-right .btn-primary{padding:.55rem 1.15rem;font-size:var(--fs-xs)}
.cbtn{position:relative}
.cbtn>.btn-primary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .22s;margin-left:.15rem}
.cbtn>.btn-primary[aria-expanded="true"]::after{transform:translateY(1px) rotate(-135deg)}
.cmenu{position:absolute;top:calc(100% + 12px);right:0;width:308px;background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:0 30px 60px -28px rgba(1,53,51,.5);padding:10px;z-index:80;transform-origin:top right}
.cmenu[hidden]{display:none}
.cmenu.is-open{animation:cpop .2s cubic-bezier(.22,.61,.36,1)}
@keyframes cpop{from{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:none}}
.cmenu a{position:relative;display:flex;align-items:center;gap:.85rem;padding:13px 14px;border-radius:14px;color:var(--ink);transition:background .16s,color .16s}
.cmenu a:hover,.cmenu a:focus-visible{background:rgba(1,53,51,.06);color:var(--forest)}
.cmenu a:focus-visible{outline:2px solid var(--forest);outline-offset:-2px}
.cmenu a>svg{flex:0 0 auto;color:var(--forest)}
.cm-t{display:flex;flex-direction:column;min-width:0}
.cm-t b{font-size:var(--fs-xs);font-weight:600;line-height:1.25}
.cm-t small{font-size:var(--fs-3xs);color:var(--muted);line-height:1.3;margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cm-a{margin-left:auto;flex:0 0 auto;width:7px;height:7px;border-right:2px solid var(--flame);border-top:2px solid var(--flame);transform:rotate(45deg) translateX(-3px);opacity:0;transition:opacity .18s,transform .18s}
.cmenu a:hover .cm-a,.cmenu a:focus-visible .cm-a{opacity:1;transform:rotate(45deg) translateX(0)}
.burger{display:none;width:46px;height:46px;border:1px solid var(--line);background:var(--white);border-radius:14px;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0}
.burger span{display:block;width:19px;height:2px;background:var(--forest);border-radius:2px;transition:transform .25s,opacity .18s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mnav{display:none}
.live{display:inline-flex;align-items:center;gap:.62rem;background:var(--forest);color:#fff;border-radius:100px;padding:.48rem 1.05rem .48rem .9rem;font-size:var(--fs-2xs);font-weight:600;box-shadow:0 12px 26px -16px rgba(1,53,51,.8);margin-bottom:1.15rem}
.live .pulse{position:relative;width:9px;height:9px;border-radius:50%;background:#3FCF9E;flex:0 0 auto}
.live .pulse::before{content:"";position:absolute;inset:-5px;border-radius:50%;background:#3FCF9E;opacity:.45;animation:ping 2.4s cubic-bezier(0,0,.2,1) infinite}
@keyframes ping{0%{transform:scale(.55);opacity:.5}70%{transform:scale(1.6);opacity:0}100%{transform:scale(1.6);opacity:0}}
@media (max-width:960px){
  .burger{display:flex}
  .mnav{display:block;position:fixed;inset:0;z-index:70;background:var(--paper);overflow-y:auto;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s}
  .mnav.open{opacity:1;visibility:visible}
  .mnav .wrap{display:flex;flex-direction:column;min-height:100dvh;padding-bottom:28px}
  .mnav-top{display:flex;align-items:center;justify-content:space-between;height:74px;flex:0 0 auto}
  .mnav-close{width:46px;height:46px;border:1px solid var(--line);background:var(--white);border-radius:14px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--forest);padding:0}
  .mnav-links{padding-top:10px}
  .mnav-links{display:flex;flex-direction:column}
  .mnav-links a{position:relative;display:flex;align-items:center;min-height:58px;font-size:var(--fs-m);font-weight:500;color:var(--ink);border-bottom:1px solid var(--line);transition:color .16s ease,padding-left .18s ease}
  .mnav-links a::before{content:"";position:absolute;z-index:-1;inset:3px -12px;border-radius:12px;background:var(--forest);opacity:0;transition:opacity .18s ease}
  .mnav-links a::after{content:"";position:absolute;right:4px;width:8px;height:8px;border-right:2px solid var(--flame);border-top:2px solid var(--flame);transform:rotate(45deg) translateX(-4px);opacity:0;transition:opacity .18s ease,transform .18s ease}
  .mnav-links a:hover,.mnav-links a:active,.mnav-links a:focus-visible{color:var(--forest);padding-left:10px}
  .mnav-links a:hover::before,.mnav-links a:active::before,.mnav-links a:focus-visible::before{opacity:.055}
  .mnav-links a:hover::after,.mnav-links a:active::after,.mnav-links a:focus-visible::after{opacity:1;transform:rotate(45deg) translateX(0)}
  .mnav-lang{padding-top:22px}
  .mnav-contact{margin-top:auto;padding-top:22px}
  .mnav-ct{display:block;font-size:var(--fs-3xs);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
  .cmenu.is-static{position:static;width:auto;padding:6px;box-shadow:none;background:var(--white);border-radius:20px;margin-bottom:12px}
  .cmenu.is-static a{padding:14px}
  .cmenu.is-static .cm-a{opacity:1;transform:rotate(45deg)}
  .mnav-lang .lang a{font-size:var(--fs-2xs);padding:.5rem .9rem}
  .mnav-contact .btn{min-height:56px;justify-content:center;width:100%;color:#fff}
}
.floaty{position:absolute;background:#fff;border:1px solid var(--line);border-radius:100px;padding:.4rem .85rem;font-size:var(--fs-2xs);font-weight:600;box-shadow:var(--shadow-sm);z-index:2;display:inline-flex;align-items:center;gap:.4rem}
.floaty b{color:var(--flame-dk)}
.anim{animation:bob 7s ease-in-out infinite}
.anim2{animation:bob 8.5s ease-in-out infinite .8s}
.anim3{animation:bob 6.4s ease-in-out infinite .4s}
@keyframes bob{0%,100%{transform:translateY(0) rotate(var(--rot,0deg))}50%{transform:translateY(-13px) rotate(var(--rot,0deg))}}
@keyframes morph{0%,100%{border-radius:46% 54% 57% 43%/48% 42% 58% 52%}50%{border-radius:58% 42% 44% 56%/54% 58% 42% 46%}}
.hero{position:relative;padding:70px 0 96px;overflow:hidden}
.hero-grid{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);align-items:center;z-index:1}
.hero-copy{grid-column:1/span 6}
.hero-stage{grid-column:8/span 5}
.hero h1{font-size:var(--fs-h1);margin:1.1rem 0 0;max-width:20ch;text-wrap:balance}
.hero h1 em{font-style:italic;color:var(--forest)}
.hero .sub{font-size:var(--fs-m);color:var(--muted);margin:1.7rem 0 2.1rem;max-width:44ch}
.hero-cta{display:flex;gap:1rem;flex-wrap:wrap}
.elise-mini{position:absolute;bottom:16px;left:-18px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1rem 1.25rem;display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;box-shadow:var(--shadow);z-index:3;max-width:284px}
.elise-mini p{font-size:var(--fs-2xs);line-height:1.32;color:var(--muted)}
.elise-mini .mini-name{font-family:var(--serif);font-weight:600;font-size:1.6rem;line-height:1.1;color:var(--forest);margin-bottom:.15rem}
.hero-portrait{position:relative;max-width:var(--w5);margin-left:auto}
.hero-portrait .portrait{width:100%}
.mini-link{display:inline-flex;align-items:center;gap:.35rem;font-size:var(--fs-2xs);font-weight:600;color:var(--flame-dp);border-bottom:1px solid rgba(208,69,22,.35);padding-bottom:1px;transition:color .15s,border-color .15s}
.mini-link::after{content:"\2192";transition:transform .2s}
.mini-link:hover{color:var(--forest);border-color:var(--forest)}
.mini-link:hover::after{transform:translateX(3px)}
.sound-row{margin:36px 0 32px;position:relative;z-index:1}
.sr-label{display:block;font-size:var(--fs-2xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.sr-cards{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}
.sound-row .floaty{position:static;animation:none;padding:.55rem 1.05rem;font-size:var(--fs-xs);transition:transform .2s,box-shadow .2s}
.sound-row .floaty:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.story-portrait{margin-top:34px;width:196px;aspect-ratio:1;border-radius:50%;overflow:hidden;box-shadow:0 0 0 8px var(--cream),0 16px 34px -22px rgba(1,53,51,.5)}
.story-portrait img{width:100%;height:100%;object-fit:cover;display:block}
.lang{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:var(--white)}
.lang a{font-size:var(--fs-3xs);font-weight:700;letter-spacing:.06em;padding:.34rem .62rem;color:var(--muted);transition:color .15s,background .15s}
.lang a[aria-current="true"]{background:var(--forest);color:#fff}
.lang a:not([aria-current="true"]):hover{color:var(--forest);background:rgba(1,53,51,.07)}
section.blk{position:relative;padding:100px 0;overflow:hidden}
.sec-head{max-width:56ch;margin-bottom:52px}
.sec-head.center{margin-left:auto;margin-right:auto;text-align:center}
.sec-head.center .eyebrow{justify-content:center}
.sec-head h2{font-size:var(--fs-h2);margin-top:.9rem}
.sec-head p{color:var(--muted);font-size:var(--fs-m);margin-top:.9rem}
.help .sec-head{max-width:none}
.help .sec-head p{max-width:66ch}
.wave{display:block;width:100%;height:70px}
.empathy{background:var(--cream)}
.worry{display:grid;grid-template-columns:1fr 1fr;gap:16px var(--gap);margin-top:8px;position:relative;z-index:1}
.worry li{list-style:none;display:flex;gap:.85rem;align-items:flex-start;font-size:var(--fs-m);padding:.5rem 0}
.worry li .tick{flex:0 0 auto;width:26px;height:26px;border-radius:50%;background:var(--white);display:flex;align-items:center;justify-content:center;margin-top:2px;box-shadow:var(--shadow-sm)}
.worry li .tick::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--forest)}
.empathy .close{font-family:var(--serif);font-weight:600;font-size:1.62rem;color:var(--forest);margin-top:42px;max-width:48ch;position:relative;z-index:1}
.how{background:var(--paper);padding-bottom:30px}
.help{background:var(--cream)}
.portrait{position:relative;aspect-ratio:4/4.6;border-radius:60% 40% 42% 58%/48% 52% 48% 52%;background:linear-gradient(160deg,var(--cream),var(--sand));overflow:hidden;box-shadow:var(--shadow);animation:morph 18s ease-in-out infinite}
.portrait svg.av{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:94%;height:auto}
.meet{background:var(--sand)}
.meet-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);align-items:center;position:relative;z-index:1}
.meet-grid>*:first-child{grid-column:1/span 4}
.meet-grid>*:last-child{grid-column:6/span 7}
.meet-grid>*:last-child p{max-width:58ch}
.meet-portrait{width:100%;aspect-ratio:1;border-radius:50%;overflow:hidden;box-shadow:0 0 0 10px var(--cream),0 22px 46px -26px rgba(1,53,51,.5)}
.meet-portrait img{width:100%;height:100%;object-fit:cover;display:block}
.meet h2{font-size:var(--fs-h2);margin-top:.9rem}
.meet .lead{font-size:var(--fs-m);color:var(--ink);margin:1.2rem 0 1rem}
.meet p.body{color:var(--muted);font-size:var(--fs-s);margin-bottom:1.4rem}
.meet-link{border-bottom-color:rgba(208,69,22,.4)}
.sign{font-family:var(--serif);font-style:italic;font-weight:600;font-size:1.5rem;color:var(--forest);margin-top:1.2rem;line-height:1.2}
.sign small{display:block;font-family:'Instrument Sans',system-ui,sans-serif;font-style:normal;font-weight:500;font-size:var(--fs-2xs);color:var(--muted);letter-spacing:.02em;margin-top:.35rem}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap);position:relative;z-index:1}
.card{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:34px 30px;box-shadow:var(--shadow-sm);transition:transform .25s cubic-bezier(.34,1.4,.64,1),box-shadow .25s}
.card:hover{transform:translateY(-6px) rotate(-.4deg);box-shadow:var(--shadow)}
.card .ic{width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:var(--cream);margin-bottom:18px}
.card h3{font-size:var(--fs-h3);margin-bottom:.55rem}
.card p{color:var(--muted);font-size:var(--fs-s)}
.gallery{background:var(--paper);padding-top:36px}
.gal-head{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:end;margin-bottom:38px}
.gal-head .sec-head{margin-bottom:0}
.gal-nav{display:flex;gap:12px}
.gal-nav button{width:54px;height:54px;border-radius:50%;background:var(--forest);border:1px solid var(--forest);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 10px 22px -12px rgba(1,53,51,.6);transition:transform .2s,background .2s,border-color .2s,opacity .2s}
.gal-nav button:hover:not(:disabled){background:var(--flame-dp);border-color:var(--flame-dp);transform:translateY(-2px)}
.gal-nav button:disabled{background:transparent;border-color:var(--line);color:var(--muted);box-shadow:none;opacity:.55;cursor:default}
.slider{--gut:calc(max(0px,(100vw - var(--wrap))/2) + var(--pad));display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;margin-left:calc(-1 * var(--gut));margin-right:calc(-1 * var(--gut));padding:0 var(--gut) 26px;scroll-padding-left:var(--gut);overflow-y:hidden}
.slider::-webkit-scrollbar{display:none}
.slide{position:relative;flex:0 0 auto;width:520px;aspect-ratio:4/3;border-radius:18px;overflow:hidden;scroll-snap-align:start;box-shadow:var(--shadow-sm);margin:0}
.slide.wide{width:693px;aspect-ratio:16/9}
.slide img{width:100%;height:100%;object-fit:cover;display:block}
.slide figcaption{position:absolute;left:0;right:0;bottom:0;padding:70px 22px 20px;color:#fff;font-weight:600;font-size:var(--fs-s);line-height:1.3;background:linear-gradient(to top,rgba(1,53,51,.82),rgba(1,53,51,.35) 45%,rgba(1,53,51,0))}
.dots{display:flex;gap:7px;margin-top:6px}
.dots button{width:8px;height:8px;border-radius:999px;border:0;padding:0;background:rgba(47,36,29,.22);cursor:pointer;transition:width .25s,background .25s}
.dots button.on{width:22px;background:var(--flame)}
@media (max-width:960px){.gal-head{grid-template-columns:1fr}.gal-nav{display:none}.slide{width:78vw}.slide.wide{width:104vw}}
@media (max-width:560px){.slider{--gut:22px}.how{padding-bottom:22px}.gallery{padding-top:26px}}

.pull{position:relative;background:var(--forest);color:#fff;text-align:center;overflow:hidden}
.pull .wrap{padding:84px 40px;position:relative;z-index:1}
.pull p{font-family:var(--serif);font-weight:500;font-style:normal;font-size:var(--fs-quote);line-height:1.4;max-width:30ch;margin:0 auto;letter-spacing:-.01em}
.pull .qmark{display:block;font-family:var(--serif);font-weight:600;font-size:4rem;line-height:.4;color:var(--sun);margin:0 auto .35rem;height:2.2rem}
.why{background:var(--paper)}
.process{background:var(--sand)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap);position:relative;z-index:1}
.step{position:relative;background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px 22px;box-shadow:var(--shadow-sm);transition:transform .25s}
.step:hover{transform:translateY(-5px)}
.step .n{font-family:var(--serif);font-weight:600;font-size:1.2rem;font-weight:600;color:#fff;background:var(--flame-dp);width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.step:nth-child(2) .n{background:var(--forest)}.step:nth-child(3) .n{background:var(--sun);color:var(--ink)}.step:nth-child(4) .n{background:var(--forest-dk)}
.step h3{font-size:1.36rem;margin-bottom:.45rem}
.step p{color:var(--muted);font-size:var(--fs-s)}
.cta-band{margin-top:36px;background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:30px 34px;display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;box-shadow:var(--shadow-sm);position:relative;z-index:1}
.cta-band h3{font-size:var(--fs-h3);margin-bottom:.3rem}
.cta-band p{color:var(--muted);font-size:var(--fs-s);max-width:46ch}
.cta-band .acts{display:flex;gap:.8rem;flex-wrap:wrap}
@media (max-width:760px){.cta-band{padding:26px 22px}.cta-band .acts{width:100%}.cta-band .acts .btn{flex:1 1 auto}}
.symptoms{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:6px var(--gap);margin:26px 0 26px}
.symptoms li{display:flex;gap:.8rem;align-items:flex-start;font-size:var(--fs-m);padding:.42rem 0;color:var(--ink)}
.symptoms li .tick{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:var(--cream);display:flex;align-items:center;justify-content:center;margin-top:4px}
.symptoms li .tick::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--flame)}
.lead-q{font-family:var(--serif);font-weight:600;font-size:1.62rem;line-height:1.3;color:var(--forest);max-width:44ch;margin:-18px 0 42px;position:relative;z-index:1}
.lead-q em{font-style:italic}
.sub-h{font-family:var(--serif);font-weight:600;font-size:var(--fs-xl);color:var(--forest);margin:0 0 18px;position:relative;z-index:1}
.help-body{max-width:var(--w7);position:relative;z-index:1}
.help-body p{color:var(--muted);font-size:var(--fs-s);margin-bottom:1rem;max-width:66ch}
.help-body p.dark{color:var(--ink);font-weight:500}
.help-body p:last-child{margin-bottom:0}
.help .sound-row{margin:30px 0 46px}
.help .symptoms{margin:0 0 6px}
.how .cards{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1100px) and (min-width:761px){.how .cards{grid-template-columns:1fr 1fr}}
/* op mobiel worden de kaartrijen een swipe-slider, dat scheelt veel hoogte */
@media (max-width:760px){
  .cards{--gut:40px;display:flex;grid-template-columns:none;gap:14px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;
    margin-left:calc(-1 * var(--gut));margin-right:calc(-1 * var(--gut));padding:6px var(--gut) 22px;scroll-padding-left:var(--gut)}
  .cards::-webkit-scrollbar{display:none}
  .cards>.card{flex:0 0 auto;width:min(78vw,320px);scroll-snap-align:start;padding:26px 24px}
  .cards>.card:hover{transform:none}
  .card .ic{width:46px;height:46px;border-radius:14px;margin-bottom:14px}
  .swipe-hint{display:block;font-size:var(--fs-3xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:2px}
}
@media (min-width:761px){.swipe-hint{display:none}}
@media (max-width:560px){.cards{--gut:22px}}
.story{background:var(--sand)}
.story-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);align-items:start}
.story-side{grid-column:1/span 4}
.story-wrap{grid-column:6/span 7}
.story-side{position:sticky;top:112px}
.story-side h2{font-size:var(--fs-h2);margin:.9rem 0 0}
.story-wrap{max-width:none}
.story p.story-lead{font-family:var(--serif);font-weight:600;font-size:1.72rem;line-height:1.28;color:var(--forest);margin-bottom:1.25rem;max-width:38ch}
.story p{color:var(--muted);font-size:var(--fs-s);margin-bottom:1rem;max-width:66ch}
.story p.dark{color:var(--ink)}
.story blockquote{font-family:var(--serif);font-weight:600;font-size:1.5rem;line-height:1.3;color:var(--forest);border-left:3px solid var(--flame);padding-left:22px;margin:1.8rem 0}
.story-body{position:relative;overflow:hidden;transition:max-height .65s cubic-bezier(.22,.61,.36,1)}
.story-wrap.is-clamped .story-body{max-height:540px}
.story-wrap.is-clamped .story-body::after{content:"";position:absolute;left:0;right:0;bottom:0;height:190px;background:linear-gradient(to bottom,rgba(227,221,209,0) 0%,rgba(227,221,209,.75) 55%,var(--sand) 100%);pointer-events:none}
.story-more{display:none;align-items:center;gap:.55rem;margin-top:1.4rem;background:transparent;border:1px solid var(--forest);color:var(--forest);font:inherit;font-size:var(--fs-xs);font-weight:600;padding:13px 24px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.story-wrap.has-toggle .story-more{display:inline-flex}
.story-more:hover{background:var(--forest);color:#fff;transform:translateY(-2px)}
.story-more .chev{width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .25s}
.story-more[aria-expanded="true"] .chev{transform:translateY(1px) rotate(-135deg)}
@media (max-width:900px){.story-grid{grid-template-columns:1fr;gap:24px}.story-wrap.is-clamped .story-body{max-height:780px}.story-grid>.story-side,.story-grid>.story-wrap{grid-column:1/-1}.story-side{position:static}.story-side blockquote{margin-top:1.5rem}}
section.blk.costs{background:var(--cream);padding-bottom:46px}
.cost-body{max-width:var(--w10)}
.cost-cols{display:grid;grid-template-columns:1fr 1fr;gap:6px var(--gap);align-items:start}
.cost-body p{color:var(--muted);font-size:var(--fs-s);margin-bottom:0}
.cost-body p b{color:var(--ink);font-weight:600}
.cost-body p.lead{font-family:var(--serif);font-weight:600;font-size:1.72rem;line-height:1.28;color:var(--forest);margin-bottom:1.6rem;max-width:48ch}
.cost-body p.lead b{color:var(--forest);font-weight:600}
@media (max-width:760px){.symptoms{grid-template-columns:1fr;gap:2px}.cost-cols{grid-template-columns:1fr;gap:1rem}}
.tmn{background:var(--paper)}
.quote-card{position:relative;background:var(--sun);border-radius:34px;padding:56px 54px;max-width:var(--w9);margin:0 auto;text-align:center;overflow:hidden}
.rev-stack{display:grid;align-items:center}
.rev-stack figure{grid-area:1/1;margin:0;opacity:0;visibility:hidden;transition:opacity .8s cubic-bezier(.22,.61,.36,1),visibility .8s cubic-bezier(.22,.61,.36,1)}
.rev-stack figure.is-active{opacity:1;visibility:visible}
.rev-note{text-align:center;color:var(--muted);font-size:var(--fs-3xs);margin-top:18px}
.quote-card blockquote{font-weight:500;font-size:var(--fs-review);line-height:1.5;color:var(--ink);margin:0 0 22px;text-wrap:pretty}
.quote-card figcaption{font-style:normal;font-weight:600;font-size:var(--fs-xs);color:var(--forest-dk);letter-spacing:.01em}
section.blk.faq-sec{background:var(--cream);padding-top:46px}
.faq{max-width:var(--w10);margin:0;position:relative;z-index:1}
.faq-group+.faq-group{margin-top:46px}
.faq-cat{font-family:var(--serif);font-weight:600;font-size:var(--fs-xl);color:var(--forest);margin:0 0 18px;display:flex;align-items:center;gap:.75rem}
.faq-cat::after{content:"";flex:1;height:1px;background:var(--line)}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap);align-items:start}
.faq-grid details{margin-bottom:0}
@media (max-width:880px){.faq-grid{grid-template-columns:1fr}.faq-group+.faq-group{margin-top:34px}}
details{background:var(--white);border:1px solid var(--line);border-radius:18px;margin-bottom:14px;padding:0 26px;box-shadow:var(--shadow-sm);transition:box-shadow .2s}
details[open]{box-shadow:var(--shadow)}
summary{list-style:none;cursor:pointer;padding:22px 0;font-weight:600;font-size:var(--fs-m);display:flex;justify-content:space-between;align-items:center;gap:1rem}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:var(--fs-xl);color:var(--forest);font-weight:400;transition:transform .25s}
details[open] summary::after{transform:rotate(135deg)}
details p{color:var(--muted);padding:0 0 24px;font-size:var(--fs-s)}
details p a{color:var(--forest);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;font-weight:600}
details p a:hover{color:var(--flame-dp)}
.final-acts{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap;position:relative;z-index:1}
.btn-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.38)}
.btn-light:hover{border-color:#fff;background:rgba(255,255,255,.09);transform:translateY(-3px)}
.final-card.contact{text-align:left}
.final-card.contact{display:grid;grid-template-columns:.92fr 1.08fr;gap:56px;align-items:start;padding:56px 54px}
.fc-intro h2{margin:0;max-width:16ch}
.final-card .fc-intro p{margin:1.4rem 0 1.9rem;max-width:44ch;font-size:var(--fs-m)}
.fc-alt{display:flex;flex-direction:column;gap:.65rem;position:relative;z-index:1}
.fc-alt a{font-size:var(--fs-xs);color:var(--sun);border-bottom:1px solid rgba(254,209,118,.35);align-self:flex-start;padding-bottom:2px;transition:color .15s,border-color .15s}
.fc-alt a:hover{color:#fff;border-color:#fff}
.fc-form{position:relative;z-index:1;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);border-radius:26px;padding:30px 28px;text-align:left}
.ff-row{margin-bottom:14px}
.ff-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fc-form label{display:block;font-size:var(--fs-3xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.72);margin-bottom:6px}
.fc-form input,.fc-form textarea{width:100%;font-family:inherit;font-size:var(--fs-s);color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);border-radius:14px;padding:12px 14px;transition:border-color .15s,background .15s}
.fc-form textarea{resize:vertical;min-height:104px}
.fc-form input::placeholder,.fc-form textarea::placeholder{color:rgba(255,255,255,.4)}
.fc-form input:focus,.fc-form textarea:focus{outline:none;border-color:var(--sun);background:rgba(255,255,255,.13)}
.fc-form input:user-invalid,.fc-form textarea:user-invalid{border-color:#F3A38A}
.ff-submit{width:100%;margin-top:6px}
.final-card .ff-note{font-size:var(--fs-3xs);color:rgba(255,255,255,.6);margin:1rem 0 0;line-height:1.45}
.final-card .ff-status{font-size:var(--fs-xs);color:var(--sun);margin:0}
.final-card .ff-status:not(:empty){margin-top:.7rem}
.final-card.photo .final-acts{justify-content:flex-start}
@media (max-width:860px){.final-card.contact{grid-template-columns:1fr;gap:30px;padding:34px 22px;text-align:left}.ff-grid{grid-template-columns:1fr}.fc-form{padding:24px 20px}.fc-intro h2,.fc-intro p{max-width:none}
 .final-card.split .final-acts,.final-card.photo .final-acts{justify-content:center}}
.final{padding:104px 0}
.final-card{position:relative;background:var(--forest);color:#fff;border-radius:38px;padding:76px 44px;text-align:center;box-shadow:var(--shadow);overflow:hidden}
.final-card .av{position:relative;z-index:1;display:block;width:88px;height:88px;border-radius:50%;overflow:hidden;margin:0 auto 20px;background:transparent;border:0;box-shadow:0 0 0 4px var(--cream)}
.final-card .av svg{width:100%;height:auto;position:absolute;bottom:-8px;left:0}
.final-card h2{position:relative;z-index:1;font-family:var(--serif);font-weight:600;letter-spacing:0;font-size:var(--fs-h2);margin:0}
.final-card p{position:relative;z-index:1;color:rgba(255,255,255,.8);font-size:var(--fs-m);margin:0}
.final-card .btn{position:relative;z-index:1}
footer{background:var(--sand);border-top:0;padding:64px 0 0}
.foot{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gap);align-items:start}
.foot>*:nth-child(1){grid-column:1/span 5}
.foot>*:nth-child(2){grid-column:7/span 3}
.foot>*:nth-child(3){grid-column:10/span 3}
.foot .brand{margin-bottom:.9rem}
.foot p{color:var(--muted);font-size:var(--fs-xs);max-width:38ch}
.foot h4{font-size:var(--fs-3xs);letter-spacing:.14em;text-transform:uppercase;color:var(--forest);margin-bottom:1rem;font-weight:600}
.foot ul{list-style:none}
.foot li{margin-bottom:0}
.foot a{color:var(--muted);font-size:var(--fs-xs);transition:color .15s}
.foot li a{display:flex;align-items:center;gap:.75rem;min-height:48px}
.foot a:hover{color:var(--forest)}
.foot .contact .icb{width:36px;height:36px;flex:0 0 auto;border-radius:50%;background:transparent;border:1px solid transparent;display:flex;align-items:center;justify-content:center;color:var(--forest);opacity:.5;transition:background .2s,border-color .2s,opacity .2s}
.foot .contact a:hover .icb,.foot .contact a:focus-visible .icb{background:var(--white);border-color:var(--line);opacity:1}
.socials{display:flex;gap:10px;margin-top:18px}
.socials a{width:46px;height:46px;border-radius:50%;background:transparent;border:1px solid rgba(47,36,29,.18);display:flex;align-items:center;justify-content:center;color:var(--forest);opacity:.62;transition:background .2s,border-color .2s,opacity .2s,transform .2s}
.socials a:hover,.socials a:focus-visible{background:var(--white);border-color:var(--forest);opacity:1;transform:translateY(-2px)}
.foot .contact svg{flex:0 0 auto}
.certs{display:flex;align-items:stretch;gap:14px;margin-top:1.6rem;flex-wrap:wrap}
.cert{display:flex;align-items:center;gap:10px;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:10px 14px}
.cert img{display:block;height:34px;width:auto}
.cert.kp img{height:46px}
.cert span{font-size:var(--fs-3xs);line-height:1.25;color:var(--muted);max-width:22ch}
.foot-bottom{margin-top:52px;border-top:1px solid rgba(47,36,29,.14);padding:22px 0 30px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}
.foot-bottom p,.foot-bottom a{font-size:var(--fs-2xs);color:var(--muted)}
.foot-bottom nav{display:flex;gap:6px 22px;flex-wrap:wrap}
.foot-bottom nav a{display:inline-flex;align-items:center;min-height:44px}
.foot-bottom a{text-decoration:underline;text-underline-offset:2px}
@media (max-width:860px){.foot{grid-template-columns:1fr;gap:36px}.foot>*:nth-child(1),.foot>*:nth-child(2),.foot>*:nth-child(3){grid-column:1/-1}.foot-bottom{flex-direction:column;align-items:flex-start}}
.js .rev{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.js .rev.in{opacity:1;transform:none}
.rev.d1{transition-delay:.08s}.rev.d2{transition-delay:.16s}.rev.d3{transition-delay:.24s}
.portrait img.av-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.av img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block}
@media (max-width:960px){
  .hero-grid{grid-template-columns:1fr;gap:44px}
  .hero-grid>.hero-copy,.hero-grid>.hero-stage,.meet-grid>*:first-child,.meet-grid>*:last-child{grid-column:1/-1}
  .meet-grid{grid-template-columns:1fr;gap:40px}
  .meet-portrait{max-width:300px;margin:0 auto}
  .steps{grid-template-columns:1fr}
  .hero-portrait{max-width:360px;margin:0 auto}
  .nav-links{display:none}
}
@media (max-width:560px){
  .wrap{padding:0 22px}
  .worry,.symptoms{column-gap:0}
  .hero{padding:40px 0 64px}
  section.blk{padding:70px 0}
  .final-card,.quote-card{padding:38px 26px}
  .nav-right .btn-primary{display:none}
  .nav-right .lang{display:none}
  .brand{font-size:.92rem;letter-spacing:.11em}
  .elise-mini{left:-8px;max-width:236px;bottom:-3%}
  .steps{gap:18px}
}
@media (prefers-reduced-motion:reduce){
  .rev-stack figure{transition:none}
  *{animation:none!important;scroll-behavior:auto}
  .js .rev{opacity:1;transform:none;transition:none}
  .squig path{stroke-dashoffset:0}
}

/* Contactblok: terugvalweergave als er nog geen Gravity Form gekoppeld is */
.fc-fallback{display:flex;flex-direction:column;justify-content:center;min-height:200px}
.final-card .ff-fallback-lead{font-size:var(--fs-m);color:#fff;margin:0 0 .8rem}
.fc-fallback a{color:var(--sun);border-bottom:1px solid rgba(254,209,118,.35)}
.fc-fallback a:hover{color:#fff;border-color:#fff}

/* Gravity Forms binnen het groene contactblok */
.final-card .gform_wrapper{position:relative;z-index:1;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);border-radius:26px;padding:30px 28px;text-align:left}
.final-card .gform_wrapper form{margin:0}
.final-card .gform_wrapper .gform_fields{display:grid;grid-template-columns:1fr;gap:14px}
.final-card .gform_wrapper .gfield_label{display:block;font-size:var(--fs-3xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.72);margin-bottom:6px}
.final-card .gform_wrapper .gfield_required{color:var(--sun)}
.final-card .gform_wrapper input[type=text],
.final-card .gform_wrapper input[type=email],
.final-card .gform_wrapper input[type=tel],
.final-card .gform_wrapper textarea{width:100%;font-family:inherit;font-size:var(--fs-s);color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);border-radius:14px;padding:12px 14px;transition:border-color .15s,background .15s}
.final-card .gform_wrapper textarea{resize:vertical;min-height:104px}
.final-card .gform_wrapper input::placeholder,
.final-card .gform_wrapper textarea::placeholder{color:rgba(255,255,255,.4)}
.final-card .gform_wrapper input:focus,
.final-card .gform_wrapper textarea:focus{outline:none;border-color:var(--sun);background:rgba(255,255,255,.13)}
.final-card .gform_wrapper .gform_footer{margin:18px 0 0;padding:0}
.final-card .gform_wrapper .gform_button{width:100%;display:inline-flex;align-items:center;justify-content:center;font-family:'Instrument Sans',system-ui,sans-serif;font-weight:600;font-size:var(--fs-s);padding:.9rem 1.6rem;border-radius:100px;border:0;cursor:pointer;background:var(--sun);color:var(--ink);transition:transform .2s,box-shadow .2s}
.final-card .gform_wrapper .gform_button:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.final-card .gform_wrapper .gfield_description,
.final-card .gform_wrapper .gform_validation_errors,
.final-card .gform_wrapper .validation_message{font-size:var(--fs-3xs);color:#F3A38A;margin-top:6px}
.final-card .gform_confirmation_message{position:relative;z-index:1;color:#fff;font-size:var(--fs-m);background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);border-radius:26px;padding:30px 28px}
@media (max-width:860px){.final-card .gform_wrapper{padding:24px 20px}}

/* Gravity Forms 3.0 draait het Orbital-thema. Losse regels verliezen het van dat thema,
   de eigen variabelen van dat thema niet. Vandaar deze overschrijving. */
.final-card .gform_wrapper{
  --gf-ctrl-placeholder-color:rgba(255,255,255,.62);
  --gf-ctrl-placeholder-font-size:var(--fs-s);
  --gf-ctrl-btn-bg-color-primary:var(--sun);
  --gf-ctrl-btn-bg-color-hover-primary:#FFDF9C;
  --gf-ctrl-btn-bg-color-focus-primary:var(--sun);
  --gf-ctrl-btn-color-primary:var(--ink);
  --gf-ctrl-btn-color-hover-primary:var(--ink);
  --gf-ctrl-btn-color-focus-primary:var(--ink);
  --gf-ctrl-btn-border-color-primary:transparent;
  --gf-ctrl-btn-border-color-hover-primary:transparent;
  --gf-ctrl-btn-border-color-focus-primary:transparent;
  --gf-ctrl-btn-border-radius:100px;
  --gf-ctrl-btn-font-size:var(--fs-s);
  --gf-ctrl-btn-font-weight:600;
  --gf-ctrl-btn-padding-x:26px;
  --gf-ctrl-btn-size:52px;
  --gf-ctrl-btn-size-md:52px;
}
.final-card .gform_wrapper .gform_footer .gform_button{
  width:100%!important;min-height:52px;border:0!important;border-radius:100px!important;
  background:var(--sun)!important;color:var(--ink)!important;
  font-family:'Instrument Sans',system-ui,sans-serif!important;font-weight:600!important;
  font-size:var(--fs-s)!important;cursor:pointer;
  transition:transform .2s,box-shadow .2s,background .2s;
}
.final-card .gform_wrapper .gform_footer .gform_button:hover{
  background:#FFDF9C!important;transform:translateY(-2px);box-shadow:var(--shadow);
}
.final-card .gform_wrapper input::placeholder,
.final-card .gform_wrapper textarea::placeholder{
  color:rgba(255,255,255,.62)!important;opacity:1;
}