/* yog.tdgdigital.com — "Als thuiskomen." Avondstudio (nacht), linnen vloer (papier), lila muur (kalk), paars van matten en enso. */
@font-face{font-family:"Ibarra";src:url(/fonts/display.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:"Ibarra";src:url(/fonts/display-italic.woff2) format("woff2");font-weight:400 700;font-style:italic;font-display:swap}
@font-face{font-family:"Mulish";src:url(/fonts/tekst.woff2) format("woff2");font-weight:200 1000;font-display:swap}
@font-face{font-family:"Lato";src:url(/fonts/lato-300.woff2) format("woff2");font-weight:300;font-display:swap}
@font-face{font-family:"Lato";src:url(/fonts/lato-400.woff2) format("woff2");font-weight:400;font-display:swap}
:root{
  --nacht:#1c1520;--nacht-2:#2a2030;--inkt:#231b26;--inkt-zacht:#5a4f5e;
  --papier:#f4efe7;--wit:#fbf8f3;--kalk:#ebe4ee;--kalk-2:#e2d8e7;
  --lila:#c7a6ee;--paars:#6b22b0;--paars-diep:#36164f;--mat:#7a49a5;--mat-donker:#5f3586;
  --kaars:#f2b768;--lijn:rgba(35,27,38,.14);--lijn-licht:rgba(244,239,231,.2);
  --rand:clamp(1.15rem,5vw,5.5rem);--kophoogte:4.6rem;
  --display:"Ibarra",Georgia,serif;--tekst:"Mulish",system-ui,sans-serif;
  --zacht:cubic-bezier(.33,0,.15,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:var(--kophoogte)}
/* Brede schermen (Joost 2026-10-10): het 1440-ontwerp schaalt als geheel mee; geen px-plafonds op secties. */
@media (min-width:1440px){html{font-size:clamp(100%,1.1111vw,200%)}:where(button,input,select,textarea){font-size:.8333rem}}
body{margin:0;background:var(--papier);color:var(--inkt);font:400 1.0625rem/1.65 var(--tekst);font-variant-numeric:lining-nums}
img,video,svg{display:block;max-width:100%;height:auto}
[hidden]{display:none!important}
p,li,dd,dt,td{hyphens:auto;overflow-wrap:break-word}
h1,h2,h3{hyphens:manual;overflow-wrap:normal;text-wrap:balance;font-family:var(--display);font-weight:500;line-height:1.05;margin:0;letter-spacing:-.01em}
h1 em,h2 em,h3 em{font-style:italic;font-weight:400}
p{margin:0 0 1em}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.2em}
::selection{background:var(--lila);color:var(--nacht)}
:focus-visible{outline:2px solid var(--paars);outline-offset:3px;border-radius:2px}
a[href^=mailto],a[href^=tel]{hyphens:none;overflow-wrap:anywhere}
.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;z-index:300;background:var(--papier);padding:.5rem 1rem}
button{font:inherit;color:inherit}
.klein{font-size:.875rem;color:var(--inkt-zacht)}

/* ---------- woordmerk (Lato, zoals hun logo) */
.woordmerk{display:inline-flex;flex-direction:column;line-height:1;margin:0}
.wm-naam{font:300 1.55rem/1 "Lato",sans-serif;letter-spacing:.005em}
.wm-sub{font:400 .56rem/1 "Lato",sans-serif;letter-spacing:.12em;text-transform:uppercase;margin-top:.32rem;text-indent:.12em}
.woordmerk--groot .wm-naam{font-size:2.6rem}.woordmerk--groot .wm-sub{font-size:.86rem;margin-top:.5rem}

/* ---------- labels en knoppen */
.label{display:flex;align-items:baseline;gap:.55em;font:600 .82rem/1.3 var(--tekst);letter-spacing:.03em;margin:0 0 1.2rem;color:var(--paars)}
.label .ringje{width:1em;height:1em;flex:none;align-self:center;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
.knoppen{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.6rem;margin-top:1.8rem}
.knop{display:inline-flex;align-items:center;justify-content:center;min-height:3.1rem;padding:.7rem 1.6rem;border-radius:3rem;border:1px solid transparent;
  background:var(--paars);color:var(--wit);font:650 .98rem/1.2 var(--tekst);text-decoration:none;cursor:pointer;
  transition:background-color .3s,color .3s,transform .3s var(--zacht)}
.knop:hover{background:var(--paars-diep)}
.knop:active{transform:scale(.98)}
.knop--licht{background:var(--papier);color:var(--paars-diep)}.knop--licht:hover{background:var(--wit);color:var(--paars)}
.knop--rand{background:transparent;color:inherit;border-color:currentColor}.knop--rand:hover{background:var(--paars);border-color:var(--paars);color:var(--wit)}
.knop--klein{min-height:2.6rem;padding:.45rem 1.2rem;font-size:.92rem}
.knop-tekst{display:inline-flex;align-items:center;min-height:2.75rem;font-weight:650;text-decoration:underline;text-decoration-color:var(--lila);text-decoration-thickness:2px;text-underline-offset:.35em}
.knop-tekst:hover{text-decoration-color:currentColor}
.knop-tekst--licht{color:var(--papier)}

/* ---------- kop */
.kop{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;gap:1.5rem;height:var(--kophoogte);padding:0 var(--rand);
  background:rgba(244,239,231,.97);color:var(--inkt);border-bottom:1px solid var(--lijn);transition:background-color .4s,color .4s,border-color .4s,transform .45s var(--zacht)}
.kop--over{background:transparent;color:var(--papier);border-color:transparent}
.kop--over.kop--vast{background:rgba(244,239,231,.97);color:var(--inkt);border-color:var(--lijn)}
.kop--weg{transform:translateY(-100%)}
.kop-logo{display:flex;align-items:center;gap:.7rem;text-decoration:none;min-height:2.75rem;flex-shrink:0}
.kop-mark{width:2.9rem;height:2.9rem}
.kop-mark--licht,.kop--over:not(.kop--vast) .kop-mark--donker{display:none}
.kop--over:not(.kop--vast) .kop-mark--licht{display:block}
.kop-nav{margin-left:auto}
.kop-nav>ul{display:flex;gap:.2rem 1.6rem;list-style:none;margin:0;padding:0;align-items:center}
.kop-nav a,.nav-sub-knop{display:inline-flex;align-items:center;gap:.35rem;min-height:2.75rem;text-decoration:none;font-weight:600;font-size:.95rem;background:none;border:0;padding:0;cursor:pointer}
.kop-nav a[aria-current]{text-decoration:underline;text-decoration-color:var(--lila);text-decoration-thickness:2px;text-underline-offset:.4em}
.nav-sub-knop svg{width:.7rem;height:.5rem;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .3s}
.heeft-sub{position:relative}
.nav-sub{position:absolute;top:100%;left:-1.2rem;min-width:13rem;list-style:none;margin:0;padding:.6rem 0;background:var(--papier);color:var(--inkt);
  border-radius:.6rem;box-shadow:0 1.2rem 2.5rem -1rem rgba(28,21,32,.35);opacity:0;visibility:hidden;transform:translateY(.4rem);transition:opacity .25s,transform .25s,visibility 0s .25s}
.nav-sub a{display:flex;padding:.15rem 1.2rem;font-weight:500}
.nav-sub a:hover{color:var(--paars)}
.heeft-sub:hover .nav-sub,.heeft-sub:focus-within .nav-sub,.nav-sub-knop[aria-expanded=true]+.nav-sub{opacity:1;visibility:visible;transform:none;transition:opacity .25s,transform .25s}
.nav-sub-knop[aria-expanded=true] svg{transform:rotate(180deg)}
.nav-extra{display:none}
.kop-proef{flex-shrink:0}
.menu-knop{display:none;align-items:center;gap:.6rem;min-height:2.9rem;min-width:2.9rem;padding:0 .2rem;background:none;border:0;cursor:pointer;flex-shrink:0;font-weight:650;font-size:.95rem}
.menu-streep{position:relative;width:1.5rem;height:2px;background:currentColor;transition:background-color .2s}
.menu-streep::before,.menu-streep::after{content:"";position:absolute;left:0;width:100%;height:2px;background:currentColor;transition:transform .3s var(--zacht)}
.menu-streep::before{top:-.42rem}.menu-streep::after{top:.42rem}
@media (max-width:1099px){
  .menu-knop{display:inline-flex;margin-left:auto}
  .kop-proef{order:2}
  .menu-knop{order:3;margin-left:0}
  .kop-logo{margin-right:auto}
  .kop-nav{position:fixed;inset:0;z-index:-1;margin:0;padding:calc(var(--kophoogte) + 1.5rem) var(--rand) 2rem;background:var(--nacht);color:var(--papier);
    overflow-y:auto;opacity:0;visibility:hidden;transition:opacity .35s,visibility 0s .35s}
  .menu-open .kop-nav{opacity:1;visibility:visible;transition:opacity .35s}
  .menu-open .kop{color:var(--papier);background:transparent;border-color:transparent}
  .menu-open .kop-mark--donker{display:none}.menu-open .kop-mark--licht{display:block}
  .menu-open .menu-streep{background:transparent}
  .menu-open .menu-streep::before{transform:translateY(.42rem) rotate(45deg)}.menu-open .menu-streep::after{transform:translateY(-.42rem) rotate(-45deg)}
  .kop-nav>ul{flex-direction:column;align-items:flex-start;gap:0}
  .kop-nav>ul>li>a,.nav-sub-knop{font:500 clamp(1.9rem,7vw,2.8rem)/1.15 var(--display);min-height:3rem}
  .nav-sub-knop svg{display:none}
  .nav-sub{position:static;opacity:1;visibility:visible;transform:none;background:none;color:inherit;box-shadow:none;padding:0 0 .6rem 1rem;min-width:0}
  .nav-sub a{padding:0;font-size:1.05rem;min-height:2.75rem;color:var(--lila)}
  .nav-extra{display:flex;flex-direction:column;gap:.2rem;margin:2rem 0 0;font-size:.95rem}
  .nav-extra a{min-height:2.75rem;display:flex;align-items:center}
}
@media (max-width:520px){.kop{gap:.8rem}.wm-sub{display:none}.wm-naam{font-size:1.35rem}.kop-mark{width:2.6rem;height:2.6rem}.menu-woord{display:none}.kop-proef{padding:.45rem 1rem}}
@media (max-width:359px){.woordmerk:not(.woordmerk--groot){display:none}}

/* ---------- opening: de enso in één penseelstreek */
.opening{position:fixed;inset:0;z-index:200;display:none;place-items:center;background:var(--papier)}
.js .body-home .opening{display:grid}
.opening.klaar{opacity:0;visibility:hidden;transition:opacity 1.1s var(--zacht) .35s,visibility 0s 1.5s}
.opening-in{display:flex;flex-direction:column;align-items:center;gap:1.4rem;transform-origin:center}
.opening-logo{position:relative;width:min(27rem,76vw);aspect-ratio:880/732}
.opening-logo>*{position:absolute;inset:0;width:100%;height:100%}
.opening-streek{stroke-dasharray:1;stroke-dashoffset:1}
.opening.gaat .opening-streek{animation:penseel 1.5s var(--zacht) .15s forwards}
.opening-silh,.opening-woord{opacity:0}
.opening.gaat .opening-silh{animation:opkomen .8s ease 1.3s forwards}
.opening.gaat .opening-woord{animation:opkomen 1s ease 1.7s forwards}
.opening-over{position:absolute;right:var(--rand);bottom:calc(1.2rem + env(safe-area-inset-bottom));min-height:2.75rem;padding:0 .6rem;background:none;border:0;
  color:var(--inkt-zacht);font-size:.9rem;text-decoration:underline;text-underline-offset:.3em;cursor:pointer}
@keyframes penseel{to{stroke-dashoffset:0}}
@keyframes verschijn{to{opacity:1;transform:none}}
@keyframes opkomen{to{opacity:1}}

/* ---------- hero */
.hero{position:relative;height:min(100svh,60rem);min-height:34rem;background:var(--nacht);color:var(--papier);overflow:hidden;display:flex;align-items:flex-end}
.hero-media,.hero-media picture{position:absolute;inset:0}
.hero-poster,.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%}
.hero-video{opacity:0;transition:opacity 1.6s ease}
.hero-video.speelt{opacity:1}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(28,21,32,.9) 0,rgba(28,21,32,.45) 38%,rgba(28,21,32,.05) 62%,rgba(28,21,32,.4) 100%);pointer-events:none}
.hero-tekst{position:relative;z-index:1;padding:0 var(--rand) clamp(2.5rem,7svh,5rem);width:100%}
.hero-boven{font-weight:600;font-size:.95rem;letter-spacing:.02em;margin-bottom:1rem;color:var(--lila)}
.hero h1{font-size:clamp(2.9rem,min(15vw,11vw + 1rem),10.5rem);line-height:.92;font-weight:500;letter-spacing:-.02em}
.hero-bron{font:italic 400 clamp(1.05rem,1.6vw,1.35rem)/1.3 var(--display);margin:.9rem 0 0;color:rgba(244,239,231,.85)}
.hero .knoppen{margin-top:1.6rem}
.hero-nu{display:flex;align-items:baseline;gap:.6rem;margin:1.6rem 0 0;font-size:.95rem;color:rgba(244,239,231,.9)}
.vlam{width:.55rem;height:.55rem;border-radius:50%;background:var(--kaars);box-shadow:0 0 .8rem .2rem rgba(242,183,104,.55);flex:none;align-self:center;animation:vlam 2.8s ease-in-out infinite}
@keyframes vlam{50%{opacity:.6;transform:scale(.85)}}
@media (orientation:landscape) and (max-height:520px){.hero{min-height:100svh}.hero h1{font-size:min(11vw,24svh)}.hero-boven,.hero-bron{display:none}.hero .knoppen{margin-top:.8rem}.hero-nu{display:none}}

/* ---------- algemeen sectieritme */
section{position:relative}
.groot{font-size:clamp(2.8rem,7.2vw,7rem);line-height:.98}
h2{font-size:clamp(2.2rem,4.6vw,4.4rem)}
.lead{font-size:clamp(1.12rem,1.5vw,1.3rem);line-height:1.6}

/* welkom */
.verbind{padding:clamp(5rem,12vw,10rem) var(--rand);overflow:hidden}
.verbind-in{position:relative;z-index:1}
.verbind .groot{max-width:12ch}
.verbind-kol{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(2rem,6vw,7rem);margin-top:clamp(2.5rem,5vw,4.5rem);align-items:end}
.verbind-kol .lead{max-width:38em}
.citaat{margin:0;padding:0 0 .4rem;border-bottom:1px solid var(--lijn)}
.citaat p{font:italic 400 clamp(1.5rem,2.4vw,2.2rem)/1.2 var(--display);margin:0 0 .8rem}
.citaat cite{font-style:normal;font-size:.9rem;color:var(--inkt-zacht)}
@media (max-width:900px){.verbind-kol{grid-template-columns:1fr;align-items:start}}
.verbind-enso{position:absolute;right:-8vw;top:50%;width:min(52vw,46rem);transform:translateY(-50%) rotate(-12deg);opacity:.07;pointer-events:none}

/* ---------- de week: zeven matten */
.weeksectie{background:var(--kalk);padding:clamp(4.5rem,10vw,8.5rem) var(--rand)}
.weeksectie--pagina{padding-top:clamp(2rem,4vw,3rem)}
.weeksectie-kop{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1rem clamp(2rem,6vw,6rem);align-items:end;margin-bottom:clamp(2.5rem,5vw,4rem)}
.weeksectie-kop .label{grid-column:1/-1;margin-bottom:0}
.weeksectie-kop p:last-child{margin:0;max-width:34em}
.weeksectie-voet{display:flex;flex-wrap:wrap;gap:.4rem 2rem;margin:2.2rem 0 0}

.voel{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.4rem 2.5rem;align-items:center;padding:1.6rem 0 2.2rem;border-top:1px solid var(--lijn);margin-bottom:1.4rem}
.voel-vraag{font:500 clamp(1.4rem,2.2vw,1.9rem)/1.15 var(--display)}
.voel-baan{display:flex;align-items:center;gap:1.2rem}
.voel-pool{font-size:.86rem;font-weight:650;color:var(--inkt-zacht);white-space:nowrap}
.voel-advies{grid-column:2;margin:0;min-height:3.3em;font-size:1.02rem}
.voel-advies a{font-weight:650}
input[type=range]{-webkit-appearance:none;appearance:none;flex:1;min-width:0;height:2.75rem;background:transparent;cursor:pointer;margin:0;touch-action:pan-y}
input[type=range]::-webkit-slider-runnable-track{height:.42rem;border-radius:1rem;background:linear-gradient(90deg,var(--lila),var(--mat) 55%,var(--paars-diep))}
input[type=range]::-moz-range-track{height:.42rem;border-radius:1rem;background:linear-gradient(90deg,var(--lila),var(--mat) 55%,var(--paars-diep))}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:1.9rem;height:1.9rem;margin-top:-.74rem;border-radius:50%;background:var(--wit);border:2px solid var(--paars);box-shadow:0 .3rem .8rem rgba(54,22,79,.25)}
input[type=range]::-moz-range-thumb{width:1.9rem;height:1.9rem;border-radius:50%;background:var(--wit);border:2px solid var(--paars);box-shadow:0 .3rem .8rem rgba(54,22,79,.25)}

.week{position:relative;--dagkol:8.5rem}
.week-schaal{position:relative;height:1.6rem;margin-left:var(--dagkol);font-size:.75rem;color:var(--inkt-zacht);font-variant-numeric:tabular-nums}
.week-schaal span{position:absolute;left:var(--s);transform:translateX(-50%)}
.week-schaal span:first-child{transform:none}.week-schaal span:last-child{transform:translateX(-100%)}
.week-matten{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}
.mat{display:grid;grid-template-columns:var(--dagkol) minmax(0,1fr);align-items:center}
.mat-dag{margin:0;font:500 1.35rem/1 var(--display);display:flex;flex-direction:column;gap:.25rem}
.mat-dag-kort{display:none}
.mat-dag small{font:650 .72rem/1 var(--tekst);color:var(--paars);letter-spacing:.03em}
.mat-vlak{position:relative;height:3.9rem;border-radius:.45rem;color:var(--wit);
  background:repeating-linear-gradient(90deg,rgba(255,255,255,0) 0 7px,rgba(255,255,255,.035) 7px 9px),
             repeating-linear-gradient(0deg,rgba(0,0,0,0) 0 3px,rgba(0,0,0,.05) 3px 4px),var(--mat);
  box-shadow:inset 0 -2px 0 rgba(0,0,0,.12)}
.js .mat-vlak{clip-path:inset(0 100% 0 0 round .45rem)}
.js .mat.in .mat-vlak{clip-path:inset(0 0 0 0 round .45rem);transition:clip-path 1.25s var(--zacht) calc(var(--i)*.09s)}
.mat-rol{position:absolute;top:-.18rem;bottom:-.18rem;left:0;width:1.15rem;border-radius:.6rem;opacity:0;pointer-events:none;
  background:linear-gradient(90deg,var(--mat-donker),#8f62b8 45%,var(--mat-donker))}
.js .mat-rol{opacity:1}
.js .mat.in .mat-rol{left:calc(100% - 1.15rem);opacity:0;transition:left 1.25s var(--zacht) calc(var(--i)*.09s),opacity .4s ease calc(var(--i)*.09s + 1.1s)}
.mat-nu{display:none;position:absolute;top:-.35rem;bottom:-.35rem;left:var(--nu);width:2px;background:var(--kaars);border-radius:2px;z-index:2;pointer-events:none}
.mat-nu::before{content:"";position:absolute;top:-.25rem;left:50%;width:.5rem;height:.5rem;margin-left:-.25rem;border-radius:50%;background:var(--kaars);box-shadow:0 0 .6rem rgba(242,183,104,.8)}
.mat.vandaag .mat-nu{display:block}
.mat-lessen{list-style:none;margin:0;padding:0;position:absolute;inset:0}
.mat-lessen li{position:absolute;top:.35rem;bottom:.35rem;left:var(--s);width:var(--w);padding:0 1px}
.les-blok{display:flex;flex-direction:column;justify-content:center;width:100%;height:100%;padding:.2rem .55rem;border:0;border-radius:.3rem;cursor:pointer;text-align:left;
  background:rgba(255,255,255,.14);color:var(--wit);overflow:hidden;transition:background-color .35s,color .35s,opacity .35s,transform .35s var(--zacht)}
.les-blok:hover{background:rgba(255,255,255,.26)}
.les-tijd{font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums;opacity:.85;white-space:nowrap}
.les-tot{font-weight:500}
.les-naam{font-size:.8rem;font-weight:650;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.les-naam-vol{display:none}
.les-seizoen{font-weight:500;opacity:.8}
.week.kiest .les-blok{opacity:.32}
.week.kiest .les-blok.past{opacity:1;background:var(--wit);color:var(--paars-diep)}
.les-blok[aria-pressed=true]{outline:2px solid var(--kaars);outline-offset:1px;opacity:1}
.week-detail{margin-top:1.4rem;padding:1.4rem 1.6rem;background:var(--wit);border-radius:.6rem;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem 2rem;align-items:center}
.week-detail h3{font-size:1.7rem}
.week-detail p{margin:.3rem 0 0}
.week-detail .knoppen{margin:0}

/* lijstweergave: telefoon/tablet en de smalle "Wanneer?"-kolom op lespagina's */
.week--lijst{--dagkol:0}
.week--lijst .week-schaal{display:none}
.week--lijst .mat{display:block}
.week--lijst .mat-dag{flex-direction:row;align-items:baseline;gap:.6rem;margin-bottom:.45rem;font-size:1.2rem}
.week--lijst .mat-vlak{height:auto;padding:.35rem}
.week--lijst .mat-lessen{position:static;display:grid;gap:.3rem}
.week--lijst .mat-lessen li{position:static;padding:0;width:auto}
.week--lijst .les-blok{flex-direction:row;justify-content:flex-start;align-items:baseline;gap:.7rem;min-height:2.9rem;padding:.45rem .7rem}
.week--lijst .les-naam{white-space:normal;font-size:.95rem}
.week--lijst .les-naam-kort{display:none}.week--lijst .les-naam-vol{display:inline}
.week--lijst .les-tijd{font-size:.85rem;min-width:6.5rem}
.week--lijst .mat-nu{display:none!important}
.week--lijst .mat.vandaag .mat-vlak{box-shadow:inset 0 0 0 2px var(--kaars)}
.week--lijst .week-detail{grid-template-columns:1fr;margin:.6rem 0 0}
@media (max-width:1199px){
  .week{--dagkol:0}
  .week-schaal{display:none}
  .week-matten{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem 1rem}
  .mat{display:block}
  .mat-dag{flex-direction:row;align-items:baseline;gap:.6rem;margin-bottom:.45rem;font-size:1.2rem}
  .mat-vlak{height:auto;padding:.35rem}
  .mat-lessen{position:static;display:grid;gap:.3rem}
  .mat-lessen li{position:static;padding:0;width:auto}
  .les-blok{flex-direction:row;justify-content:flex-start;align-items:baseline;gap:.7rem;min-height:2.9rem;padding:.45rem .7rem}
  .les-naam{white-space:normal;font-size:.9rem}
  .les-naam-kort{display:none}.les-naam-vol{display:inline}
  .les-tijd{font-size:.82rem;min-width:3rem}.les-tot{display:none}
  .mat-nu{display:none!important}
  .mat.vandaag .mat-vlak{box-shadow:inset 0 0 0 2px var(--kaars)}
  .week-detail{grid-template-columns:1fr;margin:.6rem 0 0;grid-column:1/-1}
  .voel{grid-template-columns:1fr}.voel-advies{grid-column:1}
}
@media (min-width:900px) and (max-width:1199px){.week-matten{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:560px){.week-matten{grid-template-columns:1fr}.voel-pool{font-size:.78rem;white-space:normal;max-width:4.5rem;line-height:1.2}.voel-baan{gap:.7rem}}

/* ---------- lesvormen */
.lessen{padding:clamp(5rem,11vw,9rem) var(--rand)}
.lessen-kop{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:1rem clamp(2rem,6vw,6rem);align-items:end;margin-bottom:clamp(3rem,6vw,5rem)}
.lessen-kop .label{grid-column:1/-1;margin:0}.lessen-kop p:last-child{margin:0}
.lv-lijst{list-style:none;margin:0;padding:0;display:grid;gap:clamp(3rem,6vw,5.5rem)}
.lv{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(1.8rem,5vw,5.5rem);align-items:center}
.lv--om{grid-template-columns:minmax(0,7fr) minmax(0,4fr)}
.lv--om .lv-beeld{order:2}
.lv:nth-child(3n+2) .lv-beeld{width:82%;justify-self:end}.lv--om:nth-child(3n+2) .lv-beeld{justify-self:start}
.lv-beeld{display:block;overflow:hidden;border-radius:.4rem}
.lv-beeld img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;transition:transform 1.4s var(--zacht)}
.lv-beeld:hover img{transform:scale(1.03)}
.lv-tekst{max-width:36rem}
.lv--om .lv-tekst{justify-self:end}
.lv h3{font-size:clamp(2.4rem,5vw,4.6rem);margin-bottom:.9rem}
.lv h3 a{text-decoration:none}.lv h3 a:hover{color:var(--paars)}
.lv-kort{font-size:1.12rem}
.lv-tijden{font-weight:650;font-variant-numeric:tabular-nums;margin:.9rem 0 .4rem}
.lv-ook{font-size:.95rem;color:var(--inkt-zacht)}
.lv-ook a{color:var(--inkt);font-weight:650}
.lv-meer{display:inline-flex;align-items:center;min-height:2.75rem;font-weight:650;text-decoration-color:var(--lila);text-decoration-thickness:2px}
.yy{display:flex;align-items:center;gap:.8rem;max-width:22rem;font-size:.78rem;font-weight:650;color:var(--inkt-zacht);margin:1rem 0}
.yy-baan{position:relative;flex:1;height:1px;background:currentColor;opacity:.6}
.yy-baan i{position:absolute;left:var(--yy);top:50%;width:.8rem;height:.8rem;margin:-.4rem 0 0 -.4rem;border-radius:50%;background:var(--paars);box-shadow:0 0 0 4px rgba(107,34,176,.15)}
.yy--klein{max-width:16rem;margin:.6rem 0}
@media (max-width:760px){
  .lv,.lv--om{grid-template-columns:1fr}
  .lv--om .lv-beeld{order:0}
  .lv .lv-beeld,.lv:nth-child(3n+2) .lv-beeld{width:78%;justify-self:start}
  .lv--om .lv-beeld,.lv--om:nth-child(3n+2) .lv-beeld{justify-self:end}
  .lv--om .lv-tekst{justify-self:start}
  .lessen-kop,.weeksectie-kop{grid-template-columns:1fr}
}

/* ---------- adem */
.adem{background:var(--nacht);color:var(--papier);min-height:min(100svh,56rem);display:grid;place-items:center;padding:clamp(5rem,10vw,8rem) var(--rand);overflow:hidden;text-align:center}
.adem-media{position:absolute;inset:0}
.adem-media img,.adem-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 70%}
.adem-media video{opacity:0;transition:opacity 1.6s}.adem-media video.speelt{opacity:1}
.adem::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 45%,rgba(28,21,32,.55),rgba(28,21,32,.85) 70%);pointer-events:none}
.adem-in{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}
.adem .label{color:var(--lila)}
.adem-cirkel{position:relative;width:min(19rem,70vw);aspect-ratio:1;margin:2rem 0 1.8rem;display:grid;place-items:center}
.adem-cirkel img{position:absolute;inset:0;width:100%;height:100%;transform:scale(.72) rotate(0deg);transition:transform 4s cubic-bezier(.45,0,.55,1),opacity 1s;opacity:.9}
.adem.in-adem .adem-cirkel img{transform:scale(1) rotate(8deg)}
.adem-woord{position:relative;margin:0;max-width:13rem;font:italic 400 clamp(1.3rem,2.6vw,1.8rem)/1.2 var(--display)}
.adem-uitleg{margin:1rem 0 0;font-size:.9rem;color:rgba(244,239,231,.7)}
.adem-noot{margin:1.6rem 0 0;max-width:30rem;color:rgba(244,239,231,.75);font-size:.95rem}

/* ---------- Debbie (kort, home) */
.debbie-kort{padding:clamp(5rem,11vw,9rem) var(--rand)}
.debbie-kort-in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,7vw,7rem);align-items:center}
.debbie-foto{margin:0;border-radius:12rem 12rem .4rem .4rem;overflow:hidden}
.debbie-foto img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:50% 40%}
.debbie-tekst h2{margin-bottom:1.6rem;font-style:italic;font-weight:400}
.debbie-tekst>p{max-width:36em}
.jaren{list-style:none;margin:2.2rem 0 1.4rem;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;border-top:1px solid var(--lijn)}
.jaren li{padding-top:1rem;display:flex;flex-direction:column;gap:.3rem}
.jaren b{font:500 clamp(2rem,3.6vw,3.2rem)/1 var(--display);color:var(--paars)}
.jaren span{font-size:.9rem;color:var(--inkt-zacht);line-height:1.4}
@media (max-width:800px){.debbie-kort-in{grid-template-columns:1fr}.debbie-foto{max-width:24rem}}
@media (max-width:480px){.jaren{grid-template-columns:1fr;gap:0}.jaren li{flex-direction:row;align-items:baseline;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--lijn)}.jaren b{min-width:4.2rem}}

/* ---------- tarieven: strippenkaart */
.tarief{background:var(--kalk);padding:clamp(5rem,11vw,9rem) var(--rand)}
.tarief--pagina{padding-top:clamp(1.5rem,3vw,2.5rem)}
.tarief--prive{background:var(--papier)}
.tarief-kop{margin-bottom:clamp(2.5rem,5vw,4rem)}
.tarief-kop p:last-child{margin:.8rem 0 0;font-size:1.1rem}
.kaart-tabs{display:flex;flex-wrap:wrap;gap:.2rem 1.6rem;border-bottom:1px solid var(--lijn);margin-bottom:clamp(2rem,5vw,3.5rem)}
.kaart-tab{min-height:2.9rem;padding:0;background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;font-weight:650;color:var(--inkt-zacht);cursor:pointer}
.kaart-tab[aria-selected=true]{color:var(--paars-diep);border-color:var(--paars)}
.kaart-stage{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);align-items:center}
.kaart{perspective:1400px}
.kaart-voor{position:relative;aspect-ratio:1.62;background:var(--wit);border-radius:1rem;padding:clamp(1.1rem,2.6vw,2rem);display:flex;flex-direction:column;
  box-shadow:0 2.5rem 4rem -2rem rgba(54,22,79,.45),0 .2rem .6rem rgba(54,22,79,.08);transform:rotate(-2.5deg);transition:transform .6s var(--zacht);
  background-image:radial-gradient(circle at 92% 12%,rgba(199,166,238,.35),transparent 40%)}
.kaart.draait .kaart-voor{animation:draai .7s var(--zacht)}
@keyframes draai{50%{transform:rotate(-2.5deg) rotateY(90deg) scale(.96)}}
.kaart-kop{display:flex;align-items:center;gap:.7rem}
.kaart-kop img{width:clamp(2.4rem,4vw,3.4rem);height:auto}
.kaart-kop .wm-naam{font-size:clamp(1.1rem,1.8vw,1.5rem)}.kaart-kop .wm-sub{font-size:.5rem}
.kaart-soort{margin:0 0 0 auto;font:italic 400 clamp(1.1rem,2vw,1.6rem)/1 var(--display);color:var(--paars)}
.kaart-voor-wie{margin:.6rem 0 0;font:italic 400 clamp(1rem,1.8vw,1.35rem)/1.2 var(--display)}
.kaart-gaten{list-style:none;margin:auto 0;padding:0;display:grid;grid-template-columns:repeat(var(--kol,6),minmax(0,1fr));gap:clamp(.3rem,1vw,.7rem);justify-items:center}
.kaart-gaten li{width:min(100%,2.3rem);aspect-ratio:1;border-radius:50%;border:2px solid var(--lila);opacity:0;transform:scale(.6)}
.kaart-gaten.toon li{opacity:1;transform:none;transition:opacity .35s,transform .45s var(--zacht);transition-delay:calc(var(--j)*35ms)}
.kaart-gaten li.proef{background:radial-gradient(circle,var(--paars) 0 32%,transparent 34%)}
.kaart-feiten{display:flex;gap:1.6rem;margin:0;border-top:1px solid var(--lijn);padding-top:.7rem}
.kaart-feiten div{display:flex;flex-direction:column}
.kaart-feiten dt{font-size:.68rem;font-weight:700;color:var(--inkt-zacht);letter-spacing:.03em}
.kaart-feiten dd{margin:0;font:500 clamp(1rem,1.8vw,1.35rem)/1.2 var(--display);white-space:nowrap}
.kaart-feiten div:last-child{margin-left:auto;text-align:right}
.kaart-feiten div:last-child dd{color:var(--paars);font-size:clamp(1.2rem,2.2vw,1.8rem)}
.kaart-uitleg{display:flex;flex-direction:column;align-items:flex-start}
.kaart-som{font-size:1.1rem;min-height:3.4em}
.kaart-som b{font-weight:750}
.schakel{display:inline-flex;align-items:center;gap:.8rem;min-height:2.9rem;cursor:pointer;font-weight:650;margin:.4rem 0 1rem}
.schakel input{position:absolute;opacity:0;width:1px;height:1px}
.schakel-knop{position:relative;width:3rem;height:1.7rem;border-radius:1rem;background:var(--kalk-2);border:1px solid var(--lijn);transition:background-color .3s}
.schakel-knop::after{content:"";position:absolute;top:.17rem;left:.2rem;width:1.25rem;height:1.25rem;border-radius:50%;background:var(--wit);box-shadow:0 .1rem .3rem rgba(0,0,0,.2);transition:transform .3s var(--zacht)}
.schakel input:checked+.schakel-knop{background:var(--paars)}
.schakel input:checked+.schakel-knop::after{transform:translateX(1.25rem)}
.schakel input:focus-visible+.schakel-knop{outline:2px solid var(--paars);outline-offset:3px}
.kaart-cadeau{display:grid;grid-template-columns:1fr 1fr;gap:.8rem 1rem;margin-bottom:1.4rem}
.kaart-cadeau p{grid-column:1/-1;margin:0;font-size:.95rem;color:var(--inkt-zacht)}
.kaart-cadeau label{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;font-weight:700}
select{-webkit-appearance:none;appearance:none;padding-right:2.4rem!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23a98bd0' stroke-width='1.6'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right .9rem center!important;background-size:.75rem!important}
input[type=text],input[type=email],input:not([type]),select,textarea{font:inherit;font-size:1rem;width:100%;min-height:2.9rem;padding:.55rem .8rem;border-radius:.4rem;border:1px solid var(--lijn);background:var(--wit);color:var(--inkt)}
.kaart-uitleg .klein{margin-top:1rem}
.prive{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);align-items:center;margin-top:clamp(5rem,10vw,8rem)}
.tarief--prive .prive{margin-top:0}
.prive-beeld{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:.4rem}
.prive h3{font-size:clamp(2rem,3.6vw,3.2rem);margin-bottom:1rem}
.prive-aanbod{font-size:1.1rem}
@media (max-width:860px){.kaart-stage,.prive{grid-template-columns:1fr}.kaart-voor{transform:rotate(-1.5deg)}}
@media (max-width:420px){.kaart-feiten{gap:.9rem}.kaart-cadeau{grid-template-columns:1fr}.kaart-kop .woordmerk{display:none}}

/* ---------- proefles */
.proef{background:var(--paars-diep);color:var(--papier);padding:clamp(5rem,11vw,9rem) var(--rand)}
.proef-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.5rem,7vw,7rem)}
.proef .label{color:var(--lila)}
.proef h2{font-size:clamp(2.6rem,5.6vw,5.4rem);margin-bottom:1.6rem}
.proef-tekst p{max-width:32em}
.proef-adres{margin-top:2rem;color:var(--lila);font-weight:650}
.proef-form{display:grid;gap:1.2rem;align-content:start}
.veld{display:grid;gap:.35rem;border:0;margin:0;padding:0;min-width:0}
.veld>span,.veld>legend{font-size:.82rem;font-weight:700;letter-spacing:.02em;padding:0}
.proef input,.proef select{background:rgba(255,255,255,.07);border-color:rgba(244,239,231,.3);color:var(--papier)}
.proef select option{color:var(--inkt)}
.proef-keuzes{display:grid;gap:.35rem;margin-top:.35rem}
.proef-keuze{display:flex;flex-wrap:wrap;align-items:center;min-width:0;gap:.8rem;min-height:2.9rem;padding:.4rem .9rem;border-radius:.4rem;border:1px solid rgba(244,239,231,.25);cursor:pointer}
.proef-keuze input{accent-color:var(--lila);width:1.1rem;height:1.1rem;margin:0}
.proef-keuze:has(input:checked){border-color:var(--lila);background:rgba(199,166,238,.14)}
.proef-keuze small{margin-left:auto;color:var(--lila);font-size:.8rem}
.proef-fout{margin:0;min-height:1.4em;color:#ffc9b8;font-weight:650}
.proef-noot{color:rgba(244,239,231,.7)}
.proef .knop{justify-self:start}
@media (max-width:860px){.proef-in{grid-template-columns:minmax(0,1fr)}}

/* ---------- paginakoppen */
.pk{padding:calc(var(--kophoogte) + clamp(3rem,8vw,6.5rem)) var(--rand) clamp(2.5rem,6vw,5rem);display:grid;gap:clamp(2rem,6vw,6rem);align-items:end}
.pk--beeld{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;padding-bottom:clamp(3rem,6vw,5rem)}
.pk h1{font-size:clamp(3rem,7.4vw,7.4rem);line-height:.96}
.pk-intro{font-size:clamp(1.1rem,1.6vw,1.35rem);max-width:34em;margin-top:1.6rem}
.pk-beeld{margin:0;border-radius:14rem 14rem .4rem .4rem;overflow:hidden;max-height:calc(100svh - var(--kophoogte) - 3rem)}
.pk-beeld img{width:100%;height:100%;aspect-ratio:3/4;object-fit:cover;object-position:50% 40%}
.pk--404{min-height:70svh;align-content:center}
@media (max-width:800px){.pk--beeld{grid-template-columns:1fr}.pk-beeld{max-width:26rem}}

/* lespagina */
.les-kop{padding:calc(var(--kophoogte) + clamp(2rem,5vw,4rem)) var(--rand) clamp(3rem,6vw,5rem);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);align-items:center;min-height:min(100svh,58rem)}
.kruimel{font-size:.9rem;color:var(--inkt-zacht);margin-bottom:1.6rem}
.kruimel a{display:inline-flex;align-items:center;min-height:2.75rem}
.les-kop h1{font-size:clamp(3.2rem,7.6vw,7.6rem);line-height:.95;margin-bottom:1.4rem}
.les-kort{font-size:clamp(1.15rem,1.7vw,1.4rem);max-width:28em}
.les-volgende{display:flex;align-items:baseline;gap:.6rem;font-weight:650;margin:1.2rem 0 0}
.les-kop-beeld{margin:0;border-radius:.4rem;overflow:hidden;height:min(calc(100svh - var(--kophoogte) - 5rem),48rem)}
.les-kop-beeld img{width:100%;height:100%;object-fit:cover}
.les-body{padding:clamp(4rem,9vw,7rem) var(--rand);background:var(--kalk)}
.les-body-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(2.5rem,7vw,7rem)}
.les-wat h2,.les-wanneer h2{font-size:clamp(2rem,3.4vw,3rem);margin-bottom:1.4rem}
.les-wat p{font-size:1.08rem;max-width:36em}
.les-noot{padding-top:1rem;border-top:1px solid var(--lijn)}
.les-wanneer .week-matten{grid-template-columns:1fr}
.les-wanneer .klein{margin-top:1rem}
.les-extra{padding:clamp(4.5rem,10vw,8rem) var(--rand)}
.les-extra-in{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(2.5rem,7vw,7rem);align-items:center}
.les-extra-in--beeld{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
.les-extra h2{margin-bottom:1.4rem}
.les-extra-tekst p{max-width:36em}
.les-extra-beeld{margin:0;border-radius:.4rem;overflow:hidden}
.les-extra-beeld img{width:100%;aspect-ratio:4/5;height:auto;object-fit:cover}
.les-wanneer-los{margin-top:1.2rem}
.blijf{background:var(--wit);border-radius:.8rem;padding:clamp(1.6rem,3vw,2.6rem);display:flex;flex-direction:column;align-items:center;text-align:center}
.blijf h3{font-size:2.2rem;font-style:italic;font-weight:400;margin-bottom:.6rem}
.blijf p{max-width:24rem}
.blijf-keuze{display:flex;gap:.5rem}
.blijf-keuze button{min-height:2.75rem;min-width:3.6rem;padding:0 .8rem;border-radius:.4rem;border:1px solid var(--lijn);background:none;cursor:pointer;font-weight:650}
.blijf-keuze button[aria-pressed=true]{background:var(--paars);border-color:var(--paars);color:var(--wit)}
.blijf-cirkel{position:relative;width:12rem;margin:1.4rem 0}
.blijf-cirkel svg{width:100%;height:auto;aspect-ratio:1;transform:rotate(-90deg)}
.blijf-baan{fill:none;stroke:var(--kalk-2);stroke-width:5}
.blijf-vol{fill:none;stroke:var(--paars);stroke-width:5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1}
.blijf-tijd{position:absolute;inset:0;display:grid;place-items:center;margin:0;font:500 2.4rem/1 var(--display);font-variant-numeric:tabular-nums}
.buren{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center;padding:2.5rem var(--rand);border-top:1px solid var(--lijn)}
.buur{display:flex;flex-direction:column;text-decoration:none;min-height:2.75rem}
.buur small{font-size:.82rem;color:var(--inkt-zacht);font-weight:650}
.buur span{font:500 clamp(1.4rem,2.6vw,2.2rem)/1.1 var(--display)}
.buur:hover span{color:var(--paars)}
.buur--s{text-align:right;align-items:flex-end}
.buren-alles{font-weight:650;min-height:2.75rem;display:inline-flex;align-items:center}
@media (max-width:860px){.les-kop{grid-template-columns:1fr;min-height:0;gap:1.6rem;padding-top:calc(var(--kophoogte) + 1rem)}.les-kop-beeld{height:auto;max-height:40svh;order:-1}.les-kop-beeld img{aspect-ratio:16/10;height:100%;max-height:40svh;object-position:50% 70%}.les-kop .kruimel{margin-bottom:.4rem}.les-kop h1{margin-bottom:.8rem}
  .les-body-in,.les-extra-in,.les-extra-in--beeld{grid-template-columns:minmax(0,1fr)}.les-wanneer .week-matten{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px) and (orientation:landscape){.les-kop-beeld img{aspect-ratio:16/9}}
@media (max-width:560px){.les-wanneer .week-matten{grid-template-columns:1fr}.buren{grid-template-columns:1fr 1fr}.buren-alles{grid-column:1/-1;grid-row:2;justify-self:center}}

/* rooster op een rij, tarieventabel, verhaal, contact, tekst */
.rl,.tl,.verhaal,.ct,.tekstpagina,.studio{padding:clamp(4rem,9vw,7rem) var(--rand)}
.rl h2,.tl h2,.ct h2,.studio h2{font-size:clamp(1.9rem,3.2vw,2.8rem);margin-bottom:1.6rem}
.rl-dagen{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:2rem 3rem}
.rl-dag h3{font-size:1.5rem;margin-bottom:.6rem}
.rl-dag ul{list-style:none;margin:0;padding:0}
.rl-dag li{display:grid;grid-template-columns:7.2rem 1fr;gap:.6rem;padding:.55rem 0;border-top:1px solid var(--lijn);font-variant-numeric:tabular-nums}
.rl-dag li span{white-space:nowrap}
.rl-voet{margin-top:2.5rem;color:var(--inkt-zacht)}
.tl-in{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(2.5rem,7vw,7rem)}
.tl-tabel{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;margin-bottom:1rem}
.tl-tabel th,.tl-tabel td{text-align:left;padding:.75rem .6rem .75rem 0;border-bottom:1px solid var(--lijn);vertical-align:baseline}
.tl-tabel thead th{font-size:.78rem;font-weight:700;color:var(--inkt-zacht)}
.tl-tabel td:last-child,.tl-tabel th:last-child{text-align:right;white-space:nowrap;padding-right:0}
.tl-tabel tbody th{font:500 1.25rem/1.2 var(--display)}
.tl-aanvraag{list-style:none;margin:0;padding:0}
.tl-aanvraag li{display:grid;grid-template-columns:1fr auto;gap:.2rem 1rem;padding:.8rem 0;border-bottom:1px solid var(--lijn)}
.tl-aanvraag b{font:500 1.25rem/1.2 var(--display)}
.tl-aanvraag span{grid-column:1;grid-row:2;font-size:.92rem;color:var(--inkt-zacht)}
.tl-aanvraag em{grid-column:2;grid-row:1;font-style:normal;font-size:.9rem;color:var(--paars);font-weight:650}
@media (max-width:620px){.tl-tabel thead{display:none}.tl-tabel tr{display:grid;grid-template-columns:1fr auto;padding:.7rem 0;border-bottom:1px solid var(--lijn)}
  .tl-tabel th,.tl-tabel td{border:0;padding:0}.tl-tabel td:nth-child(2),.tl-tabel td:nth-child(3){grid-column:1;font-size:.9rem;color:var(--inkt-zacht)}
  .tl-tabel td:last-child{grid-column:2;grid-row:1}}
@media (max-width:860px){.tl-in{grid-template-columns:1fr}}
@media (max-width:1199px){.rl{display:none}}
.verhaal-in{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(2.5rem,7vw,7rem)}
.verhaal-tekst p{font-size:clamp(1.08rem,1.4vw,1.22rem);max-width:36em}
.verhaal-tekst p:first-child::first-letter{font:500 4.2em/.8 var(--display);float:left;margin:.06em .1em 0 0;color:var(--paars)}
.verhaal-opl h2{font-size:1.5rem;margin-bottom:1rem}
.verhaal-opl ul{list-style:none;margin:0;padding:0}
.verhaal-opl li{padding:.75rem 0;border-top:1px solid var(--lijn);display:flex;flex-direction:column}
.verhaal-opl b{font:500 1.25rem/1.2 var(--display)}
.verhaal-opl span{font-size:.92rem;color:var(--inkt-zacht)}
.studio{background:var(--kalk)}
.studio-fotos{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:1rem;margin-top:2rem;align-items:end}
.studio-fotos figure{margin:0;border-radius:.4rem;overflow:hidden}
.studio-fotos img{width:100%;height:auto}
@media (max-width:800px){.verhaal-in,.studio-fotos{grid-template-columns:1fr}}
.ct-in{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(2.5rem,7vw,7rem)}
.ct-form{display:grid;gap:1.1rem;align-content:start}
.ct-form .knop{justify-self:start}
.ct-form .proef-fout{color:#b3261e}
.ct-adres{font:500 clamp(1.6rem,2.6vw,2.2rem)/1.2 var(--display)}
.ct-adres span{font:italic 400 .8em var(--display);color:var(--paars)}
.ct-dl{margin:2rem 0 0}
.ct-dl div{display:grid;grid-template-columns:6rem 1fr;gap:1rem;padding:.6rem 0;border-top:1px solid var(--lijn)}
.ct-dl dt{font-size:.85rem;font-weight:700;color:var(--inkt-zacht)}
.ct-dl dd{margin:0}
.ct-dl a{display:inline-flex;align-items:center;min-height:2.75rem;margin:-.6rem 0}
@media (max-width:860px){.ct-in{grid-template-columns:1fr}}
.tekstpagina-in{max-width:44rem}
.tekstpagina h2{font-size:clamp(1.8rem,3vw,2.6rem);margin:2.5rem 0 1rem}
.tekstpagina h2:first-child{margin-top:0}

/* ---------- voet */
.voet{background:var(--nacht);color:var(--papier);padding:clamp(4rem,8vw,6rem) var(--rand) 2rem}
.voet-in{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:2.5rem clamp(2rem,5vw,5rem)}
.voet-merk img{width:5.5rem;height:auto;margin-bottom:1rem}
.voet-citaat{margin:1.8rem 0 0;font:italic 400 1.25rem/1.35 var(--display);max-width:22rem;color:rgba(244,239,231,.85)}
.voet-citaat span{display:block;font:400 .82rem var(--tekst);margin-top:.4rem;color:var(--lila)}
.voet h2{font:700 .82rem/1.3 var(--tekst);letter-spacing:.03em;color:var(--lila);margin-bottom:1rem}
.voet-kol p{margin:0 0 1rem}
.voet-kol a{display:inline-flex;align-items:center;min-height:2.75rem;margin:-.45rem 0;text-decoration-color:rgba(244,239,231,.35)}
.voet-kol ul{list-style:none;margin:0;padding:0;columns:2;column-gap:1.5rem}
.voet-kol li a{min-height:2.75rem;margin:0}
.voet-onder{display:flex;flex-wrap:wrap;gap:.4rem 2rem;justify-content:space-between;align-items:center;margin:4rem 0 0;padding-top:1.4rem;border-top:1px solid var(--lijn-licht);font-size:.82rem;color:rgba(244,239,231,.65)}
.voet-onder a{display:inline-flex;align-items:center;min-height:2.75rem}
@media (max-width:860px){.voet-in{grid-template-columns:1fr 1fr}.voet-merk{grid-column:1/-1}}
@media (max-width:520px){.voet-in{grid-template-columns:1fr}.voet-kol ul{columns:1}}

/* ---------- inloop */
.js .rv{opacity:0;transform:translateY(1.6rem);transition:opacity 1.1s var(--zacht),transform 1.1s var(--zacht)}
.js .rv.in{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}
  .js .mat-vlak{clip-path:none}.js .mat-rol{display:none}.opening{display:none!important}}
@media print{.kop,.opening,.proef,.adem,.voet{display:none}}
