/* vechtsportschool-lessen: de vijf lessen als waaier van hoezen (React Bits Pro album-rail, origineel)
   met een meebladerend paneel; de kop via React Bits Pro ascii-ripple (origineel). */
.msm-vechtsportschool-lessen{--vl-p:var(--m-primary,#b83a2d);--vl-bg:var(--m-bg,#e8e4dc);--vl-ink:var(--m-ink,#171a18);--vl-s:var(--m-surface,#f4f1ea);--vl-mu:var(--m-muted,#5f625c);--vl-a:var(--m-accent2,#8c6b43);--vl-l:var(--m-line,#cfc9bd);--vl-fd:var(--m-font-display,"Archivo","Segoe UI",system-ui,sans-serif);--vl-fb:var(--m-font-body,"IBM Plex Sans","Segoe UI",system-ui,sans-serif);--vl-soft:color-mix(in srgb,var(--vl-s) 72%,transparent);--vl-ease:cubic-bezier(.22,1,.36,1);position:relative;scroll-margin-top:112px;padding:clamp(64px,9vw,120px) 0;background:var(--vl-ink);color:var(--vl-s);font-family:var(--vl-fb);font-size:16px;line-height:1.55}
.msm-vechtsportschool-lessen *,.msm-vechtsportschool-lessen *::before,.msm-vechtsportschool-lessen *::after{box-sizing:border-box}
.msm-vechtsportschool-lessen .vl-wrap{width:min(1200px,100% - 32px);margin-inline:auto}
.msm-vechtsportschool-lessen .vl-head{max-width:760px;margin-bottom:clamp(24px,3.5vw,40px)}
.msm-vechtsportschool-lessen .vl-kicker{margin:0 0 14px;font-family:var(--vl-fd);font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,var(--vl-p) 55%,var(--vl-s))}
.msm-vechtsportschool-lessen .vl-ripple{position:relative;margin:0 0 18px}
.msm-vechtsportschool-lessen .vl-title{margin:0;font-family:var(--vl-fd);font-weight:700;font-size:clamp(2rem,4.4vw,3.4rem);line-height:1.05;letter-spacing:-.02em;text-wrap:balance}
.msm-vechtsportschool-lessen .vl-ripple-field{position:absolute;left:0;top:0;visibility:hidden;pointer-events:none}
.msm-vechtsportschool-lessen .vl-ripple.is-rippling .vl-title{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.msm-vechtsportschool-lessen .vl-ripple.is-rippling .vl-ripple-field{position:relative;visibility:visible;pointer-events:auto}
/* Originele CSS van ascii-ripple (gescoped); touch-action pan-y zodat de pagina boven de kop blijft scrollen. */
.msm-vechtsportschool-lessen .ascii-ripple{position:relative;width:100%;height:100%;overflow:hidden;user-select:none;touch-action:pan-y}
.msm-vechtsportschool-lessen .ascii-ripple__canvas{position:absolute;inset:0;display:block;width:100%;height:100%}
.msm-vechtsportschool-lessen .vl-intro{margin:0;max-width:62ch;color:var(--vl-soft);font-size:clamp(16px,1.3vw,18px)}

.msm-vechtsportschool-lessen .vl-show{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(20px,3vw,48px);align-items:center}
.msm-vechtsportschool-lessen .vl-show[hidden]{display:none}
.msm-vechtsportschool-lessen .vl-rail{position:relative;height:clamp(440px,44vw,560px);color:var(--vl-s)}
.msm-vechtsportschool-lessen .vl-rail-host{position:absolute;inset:0}
.msm-vechtsportschool-lessen .vl-poster{position:absolute;left:50%;top:8%;width:auto;height:56%;aspect-ratio:1;transform:translateX(-50%);object-fit:cover;border-radius:14px;box-shadow:0 18px 50px -20px rgb(0 0 0 / .7);transition:opacity .3s var(--vl-ease)}
.msm-vechtsportschool-lessen .vl-rail.is-live .vl-poster{opacity:0}
/* Originele CSS van album-rail (gescoped). */
.msm-vechtsportschool-lessen .album-rail{position:relative;width:100%;height:100%;min-height:420px;overflow:hidden;outline:none}
.msm-vechtsportschool-lessen .album-rail:focus-visible{outline:2px solid color-mix(in oklch,currentColor 35%,transparent);outline-offset:-2px}
.msm-vechtsportschool-lessen .album-rail:focus-visible{outline-color:var(--vl-p)}

.msm-vechtsportschool-lessen .vl-panel{container-type:inline-size;min-width:0}
.msm-vechtsportschool-lessen .vl-count{margin:0 0 8px;font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--vl-soft)}
.msm-vechtsportschool-lessen .vl-word{margin:0;font-family:var(--vl-fd);font-weight:700;font-size:clamp(40px,11cqi,92px);line-height:.95;letter-spacing:-.035em;text-transform:uppercase;overflow-wrap:anywhere}
.msm-vechtsportschool-lessen .vl-sub{margin:8px 0 0;font-family:var(--vl-fd);font-weight:600;font-size:18px;color:color-mix(in srgb,var(--vl-p) 45%,var(--vl-s))}
.msm-vechtsportschool-lessen .vl-sub[hidden]{display:none}
.msm-vechtsportschool-lessen .vl-times{display:inline-block;margin:16px 0 0;padding:6px 10px;border:1px solid color-mix(in srgb,var(--vl-s) 28%,transparent);border-radius:2px;font-size:14px;font-weight:500}
.msm-vechtsportschool-lessen .vl-text{margin:16px 0 0;max-width:46ch;color:color-mix(in srgb,var(--vl-s) 86%,transparent);font-size:clamp(16px,1.25vw,17.5px)}
.msm-vechtsportschool-lessen .vl-gear{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:22px 0 0;max-width:460px}
.msm-vechtsportschool-lessen .vl-gear img,.msm-vechtsportschool-lessen .vl-item-gear img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;padding:8%;border-radius:4px;background:var(--vl-bg)}
.msm-vechtsportschool-lessen .vl-btn{display:inline-flex;align-items:center;min-height:44px;margin-top:24px;padding:10px 18px;border:1px solid var(--vl-p);border-radius:4px;background:var(--vl-p);color:var(--vl-s);font:600 15px/1.2 var(--vl-fb);text-decoration:none;transition:background-color .18s var(--vl-ease)}
.msm-vechtsportschool-lessen .vl-btn:hover{background:color-mix(in srgb,var(--vl-p) 86%,var(--vl-s))}
.msm-vechtsportschool-lessen .vl-btn:focus-visible{outline:2px solid var(--vl-s);outline-offset:3px}

.msm-vechtsportschool-lessen .vl-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));gap:18px;margin:0;padding:0;list-style:none}
.msm-vechtsportschool-lessen .vl-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:18px;padding:14px;border:1px solid color-mix(in srgb,var(--vl-s) 16%,transparent);border-radius:4px}
.msm-vechtsportschool-lessen .vl-photo{margin:0}
.msm-vechtsportschool-lessen .vl-photo img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:4px}
.msm-vechtsportschool-lessen .vl-name{margin:0;font-family:var(--vl-fd);font-weight:700;font-size:22px;line-height:1.1}
.msm-vechtsportschool-lessen .vl-item-times{margin:6px 0 0;font-size:14px;font-weight:500;color:var(--vl-soft)}
.msm-vechtsportschool-lessen .vl-item-text{margin:10px 0 0;font-size:15px;color:color-mix(in srgb,var(--vl-s) 86%,transparent)}
.msm-vechtsportschool-lessen .vl-item-gear{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.msm-vechtsportschool-lessen.is-enhanced .vl-list{display:none}
.msm-vechtsportschool-lessen .vl-bow{margin:clamp(28px,4vw,44px) 0 0;padding-top:18px;border-top:1px solid color-mix(in srgb,var(--vl-s) 18%,transparent);font-family:var(--vl-fd);font-weight:600;font-size:clamp(17px,1.6vw,21px);color:var(--vl-s)}

@media (max-width:900px){
.msm-vechtsportschool-lessen .vl-show{grid-template-columns:1fr}
.msm-vechtsportschool-lessen .vl-rail{height:440px}
}
@media (max-width:520px){
.msm-vechtsportschool-lessen .vl-item{grid-template-columns:1fr}
.msm-vechtsportschool-lessen .vl-rail{height:420px}
}
@media (prefers-reduced-motion:reduce){
.msm-vechtsportschool-lessen .vl-poster,.msm-vechtsportschool-lessen .vl-btn{transition:none}
}
