/* SIK Gent - publieke site */
:root{
  --groen-1:#16402a; --groen-2:#1d5135; --groen-3:#2c6e49;
  --geel:#f2b705; --geel-licht:#ffc721;
  --inkt:#1c2a22; --gedempt:#5d6f64; --papier:#f7f4ec;
  --mint:#8fce9f; --lijn:rgba(255,255,255,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Mulish,system-ui,sans-serif;color:var(--inkt);background:var(--papier);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{text-decoration:none;color:inherit}
img{max-width:100%}
.kop{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.5px}

@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes popIn{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important}}

/* balk bovenaan */
.flash-balk{color:#1a2b1f;display:flex;align-items:center;justify-content:center;gap:14px;padding:9px 56px 9px 20px;position:relative;font-weight:700;font-size:14.5px}
.flash-balk .tag{background:#1a2b1f;color:var(--geel);font-family:'Barlow Condensed';font-weight:700;font-size:12px;letter-spacing:1px;text-transform:uppercase;padding:2px 9px;border-radius:3px}
.flash-balk a{text-decoration:underline;text-underline-offset:3px;font-weight:800}
.flash-balk button{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:rgba(26,43,31,.14);border:none;width:26px;height:26px;border-radius:50%;color:#1a2b1f;font-size:15px;cursor:pointer}

/* header */
.site-header{position:sticky;top:0;z-index:60;background:rgba(22,42,30,.97);backdrop-filter:blur(10px);border-bottom:1px solid var(--lijn)}
.site-header .binnen{max-width:1240px;margin:0 auto;padding:0 22px;height:72px;display:flex;align-items:center;gap:22px}
.logo-cirkel{width:46px;height:46px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(0,0,0,.3);overflow:hidden}
.logo-cirkel img{width:30px;height:auto}
.logo-tekst .naam{font-family:'Barlow Condensed';font-weight:800;font-size:21px;color:#fff;text-transform:uppercase;line-height:1}
.logo-tekst .sub{font-size:10px;letter-spacing:2.4px;color:var(--mint);text-transform:uppercase;font-weight:700;margin-top:1px}
.nav-desktop{display:flex;align-items:center;gap:2px;margin-left:auto}
.nav-desktop a{font-family:'Barlow Condensed';font-weight:600;font-size:16px;letter-spacing:.6px;text-transform:uppercase;color:#dceee2;padding:9px 12px;border-radius:8px}
.nav-desktop a:hover{background:rgba(255,255,255,.09);color:#fff}
.nav-acties{display:flex;align-items:center;gap:9px}
.knop-login{width:40px;height:40px;border-radius:8px;border:1px solid rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;color:#dceee2}
.knop-login:hover{background:rgba(255,255,255,.1)}
.knop-geel{background:var(--geel);color:#1a2b1f;font-family:'Barlow Condensed';font-weight:700;font-size:16px;letter-spacing:.6px;text-transform:uppercase;padding:10px 17px;border-radius:9px;box-shadow:0 6px 16px rgba(242,183,5,.35);display:inline-flex;align-items:center;gap:9px;border:none;cursor:pointer}
.knop-geel:hover{background:var(--geel-licht);transform:translateY(-1px)}
.nav-burger{display:none;margin-left:auto;width:44px;height:44px;border-radius:10px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);color:#fff;cursor:pointer;align-items:center;justify-content:center}
.mobile-panel{display:none;position:fixed;left:0;right:0;bottom:0;top:72px;background:#16402a;border-top:1px solid var(--lijn);padding:12px 16px 28px;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.mobile-panel a{display:block;font-family:'Barlow Condensed';font-weight:600;font-size:18px;text-transform:uppercase;color:#dceee2;padding:12px 6px;border-bottom:1px solid rgba(255,255,255,.07)}

/* hero */
.hero{position:relative;background:linear-gradient(120deg,#16402a 0%,#1d5135 48%,#2c6e49 100%);color:#fff;overflow:hidden;min-height:82vh;display:flex;align-items:center}
.hero .patroon{position:absolute;inset:0;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='0.12' stroke-width='1.4'%3E%3Cpath d='M0 40 Q40 14 80 40 T160 40'/%3E%3Cpath d='M0 80 Q40 54 80 80 T160 80'/%3E%3Cpath d='M0 120 Q40 94 80 120 T160 120'/%3E%3C/g%3E%3C/svg%3E")}
.hero-grid{position:relative;max-width:1240px;margin:0 auto;padding:64px 24px;display:grid;grid-template-columns:1.12fr .88fr;gap:48px;align-items:center;width:100%}
.hero-links{animation:fadeUp .7s ease both}
.kicker{display:inline-flex;align-items:center;gap:8px;background:rgba(242,183,5,.16);border:1px solid rgba(242,183,5,.4);color:#ffd95e;font-family:'Barlow Condensed';font-weight:700;letter-spacing:1.5px;text-transform:uppercase;font-size:13px;padding:6px 14px;border-radius:30px;margin-bottom:22px}
.kicker .stip{width:7px;height:7px;border-radius:50%;background:var(--geel)}
.hero h1{font-family:'Barlow Condensed';font-weight:800;font-size:clamp(44px,7vw,72px);line-height:.95;margin:0 0 20px;text-transform:uppercase;text-wrap:balance}
.hero p{font-size:clamp(16px,2.1vw,19px);line-height:1.55;color:#cfe6d8;max-width:520px;margin:0 0 30px;font-weight:500}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.knop-groot{background:var(--geel);color:#1a2b1f;font-family:'Barlow Condensed';font-weight:700;font-size:19px;letter-spacing:.7px;text-transform:uppercase;padding:15px 28px;border-radius:11px;box-shadow:0 10px 26px rgba(242,183,5,.4);display:inline-flex;align-items:center;gap:9px}
.knop-groot:hover{background:var(--geel-licht);transform:translateY(-2px)}
.knop-omlijnd{background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.32);color:#fff;font-family:'Barlow Condensed';font-weight:700;font-size:19px;letter-spacing:.7px;text-transform:uppercase;padding:15px 26px;border-radius:11px}
.knop-omlijnd:hover{background:rgba(255,255,255,.2)}
.hero-stats{display:flex;gap:30px;margin-top:40px;flex-wrap:wrap}
.hero-stats .cijfer{font-family:'Barlow Condensed';font-weight:800;font-size:34px;color:var(--geel);line-height:1}
.hero-stats .label{font-size:13px;color:#a9d3b8;font-weight:600}
.hero-stats .lijn{width:1px;background:rgba(255,255,255,.16)}
.hero-media{position:relative;animation:fadeUp .9s ease both}
.hero-foto{position:relative;border-radius:22px;overflow:hidden;aspect-ratio:4/5;background:linear-gradient(150deg,#bcd9c4,#7fae8c);box-shadow:0 28px 60px rgba(0,0,0,.4);border:5px solid rgba(255,255,255,.9)}
.hero-foto img{width:100%;height:100%;object-fit:cover;display:block}
.hero-kaartje{position:absolute;bottom:-22px;left:-22px;background:#fff;color:var(--inkt);border-radius:15px;padding:14px 18px;box-shadow:0 18px 40px rgba(0,0,0,.22);display:flex;align-items:center;gap:13px}
.hero-kaartje .icoon{width:46px;height:46px;border-radius:12px;background:#eaf4ee;display:flex;align-items:center;justify-content:center}

/* secties */
.sectie{max-width:1240px;margin:0 auto;padding:74px 24px}
.sectie-kop{max-width:640px;margin-bottom:38px}
.sectie-kicker{color:var(--groen-3);font-family:'Barlow Condensed';font-weight:700;letter-spacing:2px;text-transform:uppercase;font-size:14px;margin-bottom:8px}
.sectie-titel{font-family:'Barlow Condensed';font-weight:800;font-size:clamp(30px,4vw,44px);text-transform:uppercase;margin:0 0 12px;line-height:1}
.sectie-sub{color:var(--gedempt);font-size:16.5px;line-height:1.6;font-weight:500;margin:0}

/* quicklinks */
.quicklinks{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:-46px;position:relative;z-index:5}
.quicklink{background:#fff;border-radius:16px;padding:20px;display:flex;align-items:center;gap:14px;box-shadow:0 12px 30px rgba(28,42,34,.1);transition:transform .18s ease}
.quicklink:hover{transform:translateY(-3px)}
.quicklink .icoon{width:48px;height:48px;border-radius:13px;display:flex;align-items:center;justify-content:center;flex:none}
.quicklink .titel{font-weight:800;font-size:15px}
.quicklink .sub{font-size:12.5px;color:var(--gedempt);font-weight:600}

/* takken */
.takken-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tak-kaart{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 26px rgba(28,42,34,.09);display:flex;flex-direction:column;transition:transform .18s ease}
.tak-kaart:hover{transform:translateY(-4px)}
.tak-band{height:10px}
.tak-body{padding:22px 22px 20px;display:flex;flex-direction:column;gap:10px;flex:1}
.tak-naam{font-family:'Barlow Condensed';font-weight:800;font-size:26px;text-transform:uppercase;line-height:1}
.tak-leeftijd{display:inline-block;font-family:'Barlow Condensed';font-weight:700;font-size:13px;letter-spacing:1px;text-transform:uppercase;color:#fff;padding:3px 11px;border-radius:20px}
.tak-desc{color:var(--gedempt);font-size:14.5px;line-height:1.6;font-weight:500;flex:1}
.tak-links{display:flex;gap:10px;flex-wrap:wrap}
.tak-links a{font-family:'Barlow Condensed';font-weight:700;font-size:15px;letter-spacing:.5px;text-transform:uppercase;color:var(--groen-3)}
.tak-links a:hover{text-decoration:underline}
.tak-foto{height:150px;background:linear-gradient(150deg,#bcd9c4,#7fae8c)}
.tak-foto img{width:100%;height:100%;object-fit:cover;display:block}

/* agenda */
.agenda-lijst{display:grid;gap:12px}
.agenda-item{background:#fff;border-radius:15px;padding:16px 20px;display:flex;align-items:center;gap:18px;box-shadow:0 8px 20px rgba(28,42,34,.07)}
.agenda-datum{width:62px;text-align:center;flex:none}
.agenda-datum .dag{font-family:'Barlow Condensed';font-weight:800;font-size:30px;line-height:1}
.agenda-datum .mnd{font-family:'Barlow Condensed';font-weight:700;font-size:13px;letter-spacing:1.5px;color:var(--gedempt)}
.agenda-tak{font-family:'Barlow Condensed';font-weight:700;font-size:12.5px;letter-spacing:1px;text-transform:uppercase;color:#fff;padding:3px 10px;border-radius:20px;display:inline-block;margin-bottom:4px}
.agenda-titel{font-weight:800;font-size:16.5px}
.agenda-meta{font-size:13.5px;color:var(--gedempt);font-weight:600}
.agenda-knop{margin-left:auto}

/* nieuws */
.nieuws-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.nieuws-kaart{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 26px rgba(28,42,34,.09);display:flex;flex-direction:column;transition:transform .18s ease}
.nieuws-kaart:hover{transform:translateY(-4px)}
.nieuws-foto{height:170px;background:linear-gradient(150deg,#bcd9c4,#7fae8c)}
.nieuws-foto img{width:100%;height:100%;object-fit:cover;display:block}
.nieuws-body{padding:20px;display:flex;flex-direction:column;gap:8px;flex:1}
.nieuws-cat{align-self:flex-start;background:#eaf4ee;color:var(--groen-3);font-family:'Barlow Condensed';font-weight:700;font-size:12px;letter-spacing:1px;text-transform:uppercase;padding:3px 10px;border-radius:20px}
.nieuws-titel{font-family:'Barlow Condensed';font-weight:800;font-size:22px;text-transform:uppercase;line-height:1.05}
.nieuws-datum{font-size:12.5px;color:var(--gedempt);font-weight:700}
.nieuws-tekst{color:var(--gedempt);font-size:14px;line-height:1.6;font-weight:500;flex:1}

/* donkere band (kamp / verhuur) */
.band{background:linear-gradient(120deg,#16402a,#1d5135);color:#fff;border-radius:24px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr}
.band .inhoud{padding:44px 42px;display:flex;flex-direction:column;justify-content:center;gap:14px}
.band .media{min-height:300px;background:linear-gradient(150deg,#2c6e49,#1d5135);position:relative}
.band .media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.band h3{font-family:'Barlow Condensed';font-weight:800;font-size:clamp(28px,3.4vw,40px);text-transform:uppercase;margin:0;line-height:1}
.band p{color:#cfe6d8;font-size:15.5px;line-height:1.6;font-weight:500;margin:0}
.band .feiten{display:grid;gap:10px;margin-top:4px}
.band .feit{display:flex;align-items:center;gap:10px;font-size:14.5px;font-weight:600;color:#dceee2}

/* formulieren */
.formulier{background:#fff;border-radius:18px;padding:28px;box-shadow:0 12px 30px rgba(28,42,34,.1)}
.formulier h3{font-family:'Barlow Condensed';font-weight:800;font-size:24px;text-transform:uppercase;margin:0 0 4px}
.formulier .sub{font-size:13px;color:var(--gedempt);font-weight:600;margin-bottom:18px}
.veld{margin-bottom:14px}
.veld label{display:block;font-weight:800;font-size:13.5px;margin-bottom:5px}
.veld input,.veld select,.veld textarea{width:100%;padding:11px 13px;border:1.5px solid #e0dccd;border-radius:10px;font-family:inherit;font-size:14.5px;background:#fbfaf5}
.veld input:focus,.veld select:focus,.veld textarea:focus{outline:2px solid var(--groen-3);outline-offset:1px;border-color:var(--groen-3)}
.veld-rij{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.melding-ok{background:#eaf4ee;color:#1d5135;border:1.5px solid #bcd9c4;border-radius:12px;padding:13px 16px;font-weight:700;font-size:14.5px;margin-bottom:16px}
.melding-fout{background:#fdecec;color:#a02020;border:1.5px solid #f0c0c0;border-radius:12px;padding:13px 16px;font-weight:700;font-size:14.5px;margin-bottom:16px}
.split-2{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}

/* sponsors */
.sponsors-rij{display:flex;gap:22px;flex-wrap:wrap;align-items:center}
.sponsor{background:#fff;border-radius:14px;padding:16px 22px;box-shadow:0 8px 20px rgba(28,42,34,.07);display:flex;align-items:center;justify-content:center;min-width:140px;min-height:70px}
.sponsor img{max-height:46px;max-width:140px;object-fit:contain}
.sponsor span{font-weight:800;color:var(--gedempt)}

/* footer */
.site-footer{background:#122619;color:#c9dccf;margin-top:70px}
.footer-grid{max-width:1240px;margin:0 auto;padding:56px 24px 30px;display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1fr;gap:30px}
.site-footer h4{font-family:'Barlow Condensed';font-weight:700;font-size:17px;letter-spacing:1px;text-transform:uppercase;color:#fff;margin:0 0 14px}
.site-footer a:hover{color:#fff;text-decoration:underline}
.footer-lijst{display:grid;gap:9px;font-size:14.5px;font-weight:600}
.footer-onder{border-top:1px solid rgba(255,255,255,.09);padding:18px 24px;text-align:center;font-size:13px;font-weight:600;color:#8fa796}

/* popup */
.popup-achter{position:fixed;inset:0;background:rgba(12,24,17,.6);backdrop-filter:blur(3px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}
.popup{background:#fdfbf4;border-radius:22px;max-width:760px;width:100%;overflow:hidden;display:grid;grid-template-columns:1fr 1.2fr;box-shadow:0 30px 80px rgba(0,0,0,.4);animation:popIn .4s ease both}
.popup .media{min-height:300px;background:linear-gradient(150deg,#2c6e49,#1d5135);position:relative}
.popup .media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.popup .inhoud{padding:34px 32px;position:relative;display:flex;flex-direction:column;justify-content:center}
.popup .sluit{position:absolute;top:16px;right:16px;width:32px;height:32px;border-radius:50%;background:#f1ede2;border:none;cursor:pointer;font-size:16px;color:var(--gedempt);display:flex;align-items:center;justify-content:center}
.popup .label{display:inline-flex;align-self:flex-start;background:#fdeccc;color:#a07400;font-family:'Barlow Condensed';font-weight:700;letter-spacing:1px;text-transform:uppercase;font-size:12px;padding:5px 12px;border-radius:20px;margin-bottom:14px}
.popup h3{font-family:'Barlow Condensed';font-weight:800;font-size:30px;text-transform:uppercase;margin:0 0 12px;line-height:1}
.popup p{font-size:15px;line-height:1.6;color:var(--gedempt);margin:0 0 22px;font-weight:500}
.popup .cta{background:var(--groen-3);color:#fff;font-family:'Barlow Condensed';font-weight:700;font-size:18px;letter-spacing:.6px;text-transform:uppercase;padding:13px 22px;border-radius:11px;text-align:center}
.popup .cta:hover{background:#235c3c}
.popup .later{background:none;border:none;color:#94a399;font-size:13px;font-weight:600;margin-top:14px;cursor:pointer}

/* responsive */
@media (max-width:980px){
  .nav-desktop,.nav-acties{display:none}
  .nav-burger{display:flex}
}
@media (max-width:880px){
  .hero-grid{grid-template-columns:1fr}
  .hero-media{display:none}
  .quicklinks{grid-template-columns:1fr 1fr}
  .takken-grid,.nieuws-grid{grid-template-columns:1fr}
  .band,.popup,.split-2,.veld-rij{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .footer-grid{grid-template-columns:1fr}
  /* Snelkoppelingen op een telefoon: twee naast elkaar in plaats van vier
     volle balken onder elkaar. Het icoon gaat boven de tekst staan, zodat de
     kaartjes smal mogen zijn zonder dat de tekst in de knel komt. */
  .quicklinks{grid-template-columns:1fr 1fr;gap:11px;margin-top:-28px}
  .quicklink{flex-direction:column;align-items:flex-start;gap:10px;padding:15px 14px;border-radius:14px;
             box-shadow:0 8px 20px rgba(28,42,34,.09)}
  .quicklink .icoon{width:40px;height:40px;border-radius:12px}
  .quicklink .titel{font-size:15px;line-height:1.15}
  .quicklink .sub{font-size:11.5px;line-height:1.3;display:block;margin-top:2px}
}
@media (max-width:340px){
  .quicklinks{grid-template-columns:1fr}
  .quicklink{flex-direction:row;align-items:center}
}

/* ---- v2: opmaak, animaties, extra's ---- */
.opm-kop{font-family:'Barlow Condensed';font-weight:800;font-size:24px;text-transform:uppercase;margin:22px 0 8px;line-height:1;color:var(--groen-1)}
.opm-lijst{margin:8px 0 8px 4px;padding-left:20px}
.opm-lijst li{margin:4px 0;line-height:1.55}
.band .opm-kop{color:#fff}

.reveal{opacity:0;transform:translateY(26px);transition:opacity .6s ease,transform .6s ease}
.reveal.zichtbaar{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}

#naar-boven{position:fixed;right:20px;bottom:20px;width:46px;height:46px;border-radius:50%;background:var(--groen-3);color:#fff;border:none;font-size:19px;cursor:pointer;box-shadow:0 10px 26px rgba(22,64,42,.4);opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease;z-index:70}
#naar-boven.toon{opacity:1;pointer-events:auto}
#naar-boven:hover{transform:translateY(-3px);background:#235c3c}

/* hero-illustratie als er nog geen foto is */
.hero-illustratie{position:absolute;inset:0;display:block}

/* agenda: kleuraccent per tak */
.agenda-item{border-left:5px solid transparent}

/* takken: embleem */
.tak-embleem{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Barlow Condensed';font-weight:800;font-size:19px;flex:none;box-shadow:0 6px 14px rgba(28,42,34,.18)}

/* sponsors: kleur bij hover */
.sponsor img{filter:grayscale(1);opacity:.75;transition:filter .25s ease,opacity .25s ease}
.sponsor:hover img{filter:none;opacity:1}

/* golf-scheiding voor de footer */
.golf{display:block;width:100%;height:60px;margin-bottom:-1px}

/* flash-balk: lichte pulse op het label */
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
.flash-balk .tag{animation:pulse 2.6s ease-in-out infinite}

/* hero-stats: tellen visueel zwaarder */
.hero-stats > div{min-width:64px}

/* nieuws-kaart: leeslink */
.nieuws-lees{font-family:'Barlow Condensed';font-weight:700;font-size:15px;letter-spacing:.5px;text-transform:uppercase;color:var(--groen-3)}
.nieuws-kaart:hover .nieuws-lees{text-decoration:underline}
.hero-intro{font-size:clamp(16px,2.1vw,19px);line-height:1.55;color:#cfe6d8;max-width:520px;margin:0 0 30px;font-weight:500}
.hero-intro strong,.band-tekst strong{color:#fff}
.band-tekst{color:#cfe6d8;font-size:15.5px;line-height:1.6;font-weight:500}
.band-tekst .opm-lijst{color:#dceee2}

/* ---- v3: foto's, leiding, vzw, contact ---- */
.album-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.album-kaart{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 26px rgba(28,42,34,.09);transition:transform .18s ease;display:flex;flex-direction:column}
.album-kaart:hover{transform:translateY(-4px)}
.album-cover{height:190px;background:linear-gradient(150deg,#bcd9c4,#7fae8c);position:relative}
.album-cover img{width:100%;height:100%;object-fit:cover;display:block}
.album-aantal{position:absolute;right:12px;bottom:12px;background:rgba(18,38,25,.82);color:#fff;font-family:'Barlow Condensed';font-weight:700;font-size:13px;letter-spacing:.8px;text-transform:uppercase;padding:4px 11px;border-radius:20px}
.album-body{padding:16px 18px;display:flex;flex-direction:column;gap:4px}

.galerij{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.galerij-item{border-radius:13px;overflow:hidden;aspect-ratio:4/3;background:#e6e2d3;display:block}
.galerij-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}
.galerij-item:hover img{transform:scale(1.05)}

.lightbox{position:fixed;inset:0;background:rgba(10,20,14,.93);z-index:110;display:flex;align-items:center;justify-content:center;padding:30px}
.lightbox img{max-width:92vw;max-height:88vh;border-radius:10px;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.lightbox button{position:absolute;background:rgba(255,255,255,.12);border:none;color:#fff;cursor:pointer;border-radius:50%;width:46px;height:46px;font-size:20px;display:flex;align-items:center;justify-content:center}
.lightbox button:hover{background:rgba(255,255,255,.25)}
.lightbox .lb-sluit{top:18px;right:18px}
.lightbox .lb-vorige{left:14px;top:50%;transform:translateY(-50%)}
.lightbox .lb-volgende{right:14px;top:50%;transform:translateY(-50%)}

.leiding-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:14px}
.leiding-kaart{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 26px rgba(28,42,34,.09);display:flex;flex-direction:column}
.leiding-foto{height:200px;background:linear-gradient(150deg,#e6efe8,#cfe0d4);position:relative}
.leiding-foto img{width:100%;height:100%;object-fit:cover;display:block}
.leiding-initiaal{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'Barlow Condensed';font-weight:800;font-size:56px;color:#fff}
.leiding-body{padding:16px 18px;display:flex;flex-direction:column;gap:4px}
.leiding-naam{font-family:'Barlow Condensed';font-weight:800;font-size:21px;text-transform:uppercase;line-height:1}
.leiding-functie{font-size:12.5px;font-weight:800;color:#2c6e49;text-transform:uppercase;letter-spacing:.8px}
.leiding-tekst{color:#5d6f64;font-size:13.5px;line-height:1.55;font-weight:500;margin:4px 0 0}
.leiding-mail{font-size:12.5px;font-weight:700;color:#2c6e49;margin-top:6px;word-break:break-all}
.leiding-mail:hover{text-decoration:underline}

.kaartje-wit{background:#fff;border-radius:18px;padding:26px 28px;box-shadow:0 10px 26px rgba(28,42,34,.09);margin-top:22px}
.doc-lijst{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.doc-lijst li{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid #f0ecdf;padding-bottom:10px}
.doc-lijst a{font-weight:800;color:#1d5135}
.doc-lijst a:hover{color:#2c6e49;text-decoration:underline}

@media (max-width:880px){.album-grid,.leiding-grid{grid-template-columns:1fr 1fr}.galerij{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.album-grid,.leiding-grid{grid-template-columns:1fr}}

/* ============ v4: modern & strak, leesbaarheid, scroll-wauw ============ */

/* leesbaarheid: hoger contrast en rustiger tekstmaat */
:root{--gedempt:#44554b}
body{font-size:16px;line-height:1.65}
.sectie-sub{color:#3f5046;font-size:16.5px;line-height:1.7;max-width:62ch}
.tak-desc{color:#44554b;font-size:14.5px}
.nieuws-tekst{color:#44554b}
.agenda-meta{color:#54655b}
.band p,.band-tekst{color:#e4f0e9;font-size:16px;line-height:1.7}
.band .feit{color:#eef7f1;font-size:15px}
.hero p,.hero-intro{color:#dcefe4}
.site-footer{color:#d3e2d8}
.footer-onder{color:#9fb5a7}
.popup p,.popup-tekst{color:#4a5b51}
.leiding-tekst{color:#4a5b51}

/* iconen kleuren netjes mee en lijnen uit */
.ik{vertical-align:-3px;flex:none}
.tak-links a{display:inline-flex;align-items:center;gap:6px}
.feit{display:flex;align-items:center;gap:10px}
.doc-lijst a{display:inline-flex;align-items:center;gap:8px}
.leiding-mail{display:inline-flex;align-items:center;gap:6px}

/* laagorde: nooit meer overlappende balken */
.scroll-voortgang{position:fixed;top:0;left:0;right:0;height:4px;z-index:200;background:transparent;pointer-events:none}
.scroll-voortgang span{display:block;height:100%;width:0;background:linear-gradient(90deg,#f2b705,#ffc721);border-radius:0 3px 3px 0;transition:width .08s linear}
.site-header{z-index:90}
.mobile-panel{z-index:140}
#naar-boven{z-index:95}
.popup-achter{z-index:150}
.lightbox{z-index:160}
.quicklinks{position:relative;z-index:5}
.hero{isolation:isolate}
.hero .patroon{z-index:-1;will-change:transform}

/* hero: strakker en met scroll-hint */
.hero{min-height:88vh}
.hero h1{letter-spacing:.5px}
.hero-cta .knop-groot .pijltje,.cta-actie .pijltje,.knop-groen-omlijnd .pijltje{display:inline-block;transition:transform .2s ease}
.knop-groot:hover .pijltje,.cta-kaart:hover .cta-actie .pijltje,.knop-groen-omlijnd:hover .pijltje{transform:translateX(5px)}
.scroll-cue{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);width:28px;height:46px;border:2px solid rgba(255,255,255,.45);border-radius:16px;display:flex;justify-content:center;padding-top:8px}
.scroll-cue span{width:4px;height:9px;border-radius:3px;background:#f2b705;animation:cue 1.8s ease-in-out infinite}
@keyframes cue{0%,100%{transform:translateY(0);opacity:1}55%{transform:translateY(14px);opacity:.2}}
@media (prefers-reduced-motion:reduce){.scroll-cue span{animation:none}}
@media (max-width:880px){.scroll-cue{display:none}.hero{min-height:auto;padding:10px 0 60px}}

/* sectiekoppen met geel accent */
.sectie-titel{position:relative;padding-bottom:14px}
.sectie-titel::after{content:"";position:absolute;left:0;bottom:0;width:54px;height:5px;border-radius:4px;background:linear-gradient(90deg,#f2b705,#ffc721)}
.sectie{padding:84px 24px}

/* groene omlijnde knop op lichte achtergrond */
.knop-groen-omlijnd{display:inline-flex;align-items:center;gap:8px;border:2px solid #2c6e49;color:#1d5135;background:transparent;font-family:'Barlow Condensed';font-weight:700;font-size:17px;letter-spacing:.6px;text-transform:uppercase;padding:12px 22px;border-radius:11px;transition:background .15s ease,color .15s ease}
.knop-groen-omlijnd:hover{background:#2c6e49;color:#fff}

/* kaarten: iets meer diepte en leven */
.tak-kaart,.nieuws-kaart,.album-kaart,.leiding-kaart,.quicklink{border:1px solid rgba(28,42,34,.05)}
.tak-kaart:hover,.nieuws-kaart:hover,.album-kaart:hover{box-shadow:0 22px 44px rgba(22,64,42,.16);transform:translateY(-5px)}
.quicklink:hover{box-shadow:0 18px 36px rgba(22,64,42,.14)}

/* band: topografisch patroon voor kamp/verhuur-sfeer */
.band{position:relative}
.band::before{content:"";position:absolute;inset:0;opacity:.4;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='0.07' stroke-width='1.6'%3E%3Ccircle cx='40' cy='60' r='26'/%3E%3Ccircle cx='40' cy='60' r='44'/%3E%3Ccircle cx='40' cy='60' r='62'/%3E%3Ccircle cx='180' cy='170' r='22'/%3E%3Ccircle cx='180' cy='170' r='40'/%3E%3Ccircle cx='180' cy='170' r='58'/%3E%3C/g%3E%3C/svg%3E")}
.band .inhoud,.band .media{position:relative}

/* CTA-duo: de twee grote actiekaarten */
.cta-duo{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.cta-kaart{position:relative;display:flex;flex-direction:column;gap:10px;padding:42px 38px;border-radius:22px;background:linear-gradient(135deg,#1d5135,#2c6e49);color:#fff;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.cta-kaart::before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='0.09' stroke-width='1.4'%3E%3Cpath d='M0 40 Q40 14 80 40 T160 40'/%3E%3Cpath d='M0 90 Q40 64 80 90 T160 90'/%3E%3Cpath d='M0 140 Q40 114 80 140 T160 140'/%3E%3C/g%3E%3C/svg%3E")}
.cta-kaart.geel{background:linear-gradient(135deg,#f2b705,#e0a800);color:#1a2b1f}
.cta-kaart:hover{transform:translateY(-5px);box-shadow:0 26px 52px rgba(22,64,42,.28)}
.cta-kaart>*{position:relative}
.cta-icoon{width:58px;height:58px;border-radius:16px;background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;margin-bottom:6px}
.cta-kaart.geel .cta-icoon{background:rgba(26,43,31,.12)}
.cta-kicker{font-family:'Barlow Condensed';font-weight:700;font-size:14px;letter-spacing:1.6px;text-transform:uppercase;opacity:.85}
.cta-titel{font-family:'Barlow Condensed';font-weight:800;font-size:clamp(28px,3.2vw,38px);text-transform:uppercase;line-height:1}
.cta-tekst{font-size:15.5px;line-height:1.65;font-weight:500;opacity:.94;max-width:44ch}
.cta-actie{font-family:'Barlow Condensed';font-weight:700;font-size:17px;letter-spacing:.6px;text-transform:uppercase;margin-top:8px}

/* pagina-kop voor subpagina's (lid-worden, verhuur, …) */
.pagina-kop{background:linear-gradient(120deg,#16402a,#1d5135 55%,#2c6e49);color:#fff;padding:76px 24px 64px;position:relative;overflow:hidden}
.pagina-kop::before{content:"";position:absolute;inset:0;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='0.10' stroke-width='1.4'%3E%3Cpath d='M0 40 Q40 14 80 40 T160 40'/%3E%3Cpath d='M0 90 Q40 64 80 90 T160 90'/%3E%3Cpath d='M0 140 Q40 114 80 140 T160 140'/%3E%3C/g%3E%3C/svg%3E")}
.pagina-kop .binnen{max-width:1240px;margin:0 auto;position:relative}
.pagina-kop .sectie-kicker{color:#ffd95e}
.pagina-kop h1{font-family:'Barlow Condensed';font-weight:800;font-size:clamp(38px,6vw,60px);text-transform:uppercase;line-height:.98;margin:6px 0 14px}
.pagina-kop p{color:#dcefe4;font-size:17px;line-height:1.65;max-width:60ch;margin:0;font-weight:500}

/* stappen (lid worden) */
.stappen{display:grid;gap:16px;margin-top:18px}
.stap{display:flex;gap:16px;align-items:flex-start;background:#fff;border-radius:15px;padding:18px 20px;box-shadow:0 8px 20px rgba(28,42,34,.07);font-size:15px;line-height:1.6;color:#3f5046}
.stap-nr{flex:none;width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#f2b705,#e0a800);color:#1a2b1f;font-family:'Barlow Condensed';font-weight:800;font-size:19px;display:flex;align-items:center;justify-content:center}
.tak-mini-lijst{display:grid;gap:10px;margin-top:14px}
.tak-mini{display:flex;align-items:center;gap:12px;background:#fff;border-radius:12px;padding:10px 14px;box-shadow:0 6px 16px rgba(28,42,34,.06);font-size:14.5px}
.tak-mini strong{flex:1}

/* kenmerken (verhuur) */
.kenmerken{display:grid;gap:14px;margin-top:22px}
.kenmerk{display:flex;gap:16px;align-items:center;background:#fff;border-radius:15px;padding:16px 20px;box-shadow:0 8px 20px rgba(28,42,34,.07);font-size:15px;line-height:1.5;color:#3f5046}
.kenmerk-icoon{flex:none;width:46px;height:46px;border-radius:13px;background:#eaf4ee;color:#2c6e49;display:flex;align-items:center;justify-content:center}

/* agenda: netjes op mobiel, geen overlap */
.agenda-item{flex-wrap:wrap}
.agenda-knop{margin-left:auto}
@media (max-width:560px){.agenda-knop{margin-left:0;width:100%;justify-content:center;display:inline-flex}}

/* popup op mobiel: compact en scrollbaar */
@media (max-width:880px){
  .popup{grid-template-columns:1fr;max-height:88vh;overflow:auto}
  .popup .media{min-height:150px}
  .quicklinks{margin-top:18px}
  .cta-duo{grid-template-columns:1fr}
  .pagina-kop{padding:52px 20px 44px}
  .sectie{padding:56px 20px}
}

/* getrapte reveal: kinderen komen na elkaar binnen */
[data-stagger] .reveal{transition-duration:.55s}

/* nette scrollbar in huisstijl */
::-webkit-scrollbar{width:11px}
::-webkit-scrollbar-track{background:#efe9db}
::-webkit-scrollbar-thumb{background:#2c6e49;border-radius:6px;border:2px solid #efe9db}
::-webkit-scrollbar-thumb:hover{background:#1d5135}

/* focus zichtbaar voor toetsenbord */
a:focus-visible,button:focus-visible{outline:3px solid #f2b705;outline-offset:2px;border-radius:6px}

/* ============================================================
   v5: logo-upload, klikbare takkaarten, tak-detailpagina,
   inschrijf-iframe en de scoutskleur (#D10772) subtiel verwerkt
   ============================================================ */
:root{ --roze:#d10772; }

/* Logo netjes passend in de ronde header-cirkel */
.logo-cirkel img{width:auto;height:auto;max-width:38px;max-height:38px;border-radius:7px}

/* Geüploade foto in het ronde tak-embleem */
.tak-embleem{overflow:hidden}
.tak-embleem img{width:100%;height:100%;object-fit:cover;border-radius:50%}

/* Klikbare takkaart (volledige kaart is een link) */
.tak-kaart{position:relative}
.tak-kaart-link{position:absolute;inset:0;z-index:1;border-radius:inherit}
.tak-kaart .tak-body{position:relative;z-index:0}
.tak-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px}
.tak-links a.boven{position:relative;z-index:2}
.tak-meer{font-family:'Barlow Condensed';font-weight:700;font-size:14.5px;letter-spacing:.4px;text-transform:uppercase;color:var(--roze);margin-left:auto}
.tak-kaart:hover .tak-meer .pijltje{transform:translateX(3px);display:inline-block;transition:transform .18s ease}

/* Tak-detailpagina */
.tak-detail-kop{display:flex;align-items:center;gap:22px;padding:26px 30px;border-radius:22px;color:#fff;box-shadow:0 18px 40px rgba(28,42,34,.18)}
.tak-detail-kop h1{margin:0;font-family:'Barlow Condensed';font-weight:800;font-size:clamp(30px,5vw,42px);line-height:1;color:#fff;text-transform:uppercase}
.tak-detail-kop .formele{color:rgba(255,255,255,.85);font-weight:700;font-size:14px;margin-top:5px}
.tak-detail-leeftijd{display:inline-block;margin-top:10px;background:rgba(255,255,255,.22);color:#fff;font-family:'Barlow Condensed';font-weight:700;letter-spacing:.5px;padding:4px 13px;border-radius:20px;font-size:14px}

/* Inschrijf-iframe op de "Word lid"-pagina */
.inschrijf-frame{width:100%;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 26px rgba(28,42,34,.1);border:1px solid rgba(28,42,34,.06)}
.inschrijf-frame iframe{width:100%;height:1200px;border:0;display:block}

/* --- scoutskleur subtiel als accent naast het groen/geel --- */
.scroll-voortgang span{background:linear-gradient(90deg,var(--geel),var(--roze))}
.kicker .stip{background:var(--roze)}
.sectie-kicker::after{content:"";display:inline-block;width:20px;height:2px;background:var(--roze);vertical-align:middle;margin-left:9px;border-radius:2px;opacity:.65}
.pagina-kop .sectie-kicker::after{background:#ffd95e;opacity:.8}

/* ============================================================
   v6: tak-logo's, leiding-kaart in takken, hero-slideshow,
   uitklap-info, wachtlijst, steekkaart, VZW-leden en de
   scoutskleur (#D10772) wat prominenter
   ============================================================ */

/* Tak-embleem met logo: enkel het logo op wit, geen kleurvlak */
.tak-embleem.heeft-logo{background:#fff !important;border:2px solid #efe7db;box-shadow:0 4px 12px rgba(28,42,34,.12)}
.tak-embleem.heeft-logo img{object-fit:contain;padding:3px;border-radius:50%}

/* Leiding-wervingskaart in de takken-sectie */
.tak-kaart-leiding{outline:2px solid rgba(209,7,114,.16);outline-offset:-2px}
.tak-kaart-leiding .tak-embleem{color:#fff}
/* Leidingfoto in het ronde embleem (zoals de tak-logo's), niet als banner */
.lc-embleem{position:relative;overflow:hidden}
.lc-embleem img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}

/* Hero-slideshow */
.hero-slideshow{position:absolute;inset:0}
.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.1s ease}
.hero-slide.actief{opacity:1}

/* Uitklapbare tak-info (lid-worden) */
.tak-accordion{display:grid;gap:10px;margin-top:8px}
.tak-acc{background:#fff;border-radius:12px;box-shadow:0 6px 16px rgba(28,42,34,.06);overflow:hidden;border:1px solid rgba(28,42,34,.05)}
.tak-acc summary{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer;list-style:none;font-size:14.5px}
.tak-acc summary::-webkit-details-marker{display:none}
.tak-acc summary strong{flex:1}
.tak-acc-leeftijd{color:#6c7d72;font-weight:700;font-size:13px}
.tak-acc-pijl{color:var(--roze);transition:transform .2s ease;font-size:12px}
.tak-acc[open] .tak-acc-pijl{transform:rotate(180deg)}
.tak-acc-inhoud{padding:2px 14px 16px;color:#4a5b50;font-size:14px;line-height:1.6}
.tak-acc-formeel{font-size:12.5px;color:#6c7d72;font-weight:700;margin-bottom:6px}

/* Wachtlijst-melding op "Word lid" */
.wachtlijst-melding{display:flex;gap:18px;align-items:flex-start;background:linear-gradient(120deg,#fff,#fdeef6);border:1px solid rgba(209,7,114,.25);border-left:5px solid var(--roze);border-radius:16px;padding:22px 24px;box-shadow:0 10px 26px rgba(28,42,34,.08)}
.wachtlijst-melding h2{margin:0 0 6px;font-family:'Barlow Condensed';font-weight:800;font-size:24px;color:var(--groen-1)}
.wachtlijst-melding p{margin:0 0 8px;color:#4a5b50;font-weight:500;line-height:1.6}
.wl-icoon{color:var(--roze);flex:none;margin-top:2px}

/* Steekkaart-pagina */
.steek-tip{display:flex;gap:12px;align-items:center;background:#fdf7e6;border:1px solid #f0d98a;border-radius:12px;padding:14px 18px;margin-top:18px;color:#6b5600;font-weight:600;line-height:1.5}
.steek-tip svg{color:#e0a800;flex:none}
.steek-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:14px;margin-top:22px}
.steek-item{display:flex;gap:12px;align-items:flex-start;background:#fff;border-radius:14px;padding:16px;box-shadow:0 8px 20px rgba(28,42,34,.07);font-size:13.5px;line-height:1.5;color:#3f5046}
.steek-emoji{font-size:26px;flex:none;line-height:1}
.steek-waarschuwing{margin-top:26px;background:#fdeef2;border:1px solid rgba(209,7,114,.3);border-left:5px solid var(--roze);border-radius:14px;padding:20px 24px}
.steek-waarschuwing h2{display:flex;align-items:center;gap:9px;margin:0 0 10px;font-family:'Barlow Condensed';font-weight:800;font-size:22px;color:var(--groen-1)}
.steek-waarschuwing svg{color:var(--roze)}
.steek-waarschuwing ul{margin:8px 0;padding-left:20px;line-height:1.7;color:#4a5b50}
.steek-waarschuwing p{color:#4a5b50;line-height:1.6}

/* Steekkaart-check in het kampformulier */
.steek-check{background:#f7f4ec;border-radius:12px;padding:14px 16px;margin:8px 0 4px}
.steek-vraag{font-weight:700;display:block;margin-bottom:8px}
.steek-opties{display:flex;gap:20px;flex-wrap:wrap}
.steek-opties label{display:flex;align-items:center;gap:7px;font-weight:600;cursor:pointer}

/* Scoutskleur wat prominenter, maar binnen de eigen stijl van de site:
   een fijn roze randje bovenaan de personenkaarten en het accentlijntje
   bij de sectiekopjes (dat blijft groen). */
.leiding-kaart{border-top:3px solid var(--roze)}
.leiding-functie{color:var(--roze) !important}

/* Kledij-webshop */
.shop-tip{display:flex;gap:12px;align-items:center;background:#fdf7e6;border:1px solid #f0d98a;border-radius:12px;padding:14px 18px;color:#6b5600;font-weight:600;line-height:1.5}
.shop-tip svg{color:#e0a800;flex:none}
.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;margin-top:24px}
.shop-kaart{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 26px rgba(28,42,34,.09);border:1px solid rgba(28,42,34,.05);display:flex;flex-direction:column}
.shop-foto{height:180px;background:linear-gradient(150deg,#e6efe8,#cfe0d4);display:flex;align-items:center;justify-content:center;color:#9db4a6}
.shop-foto img{width:100%;height:100%;object-fit:cover;display:block}
.shop-body{padding:15px 16px;display:flex;flex-direction:column;gap:5px;flex:1}
.shop-naam{font-family:'Barlow Condensed';font-weight:800;font-size:19px;color:var(--groen-1)}
.shop-prijs{color:var(--roze);font-weight:800;font-size:16px}
.shop-desc{color:var(--gedempt);font-size:13.5px;line-height:1.5;font-weight:500;flex:1;margin:2px 0}
.shop-keuze{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.shop-keuze label{display:flex;flex-direction:column;font-size:12px;font-weight:700;color:#5d6f64;gap:3px}
.shop-keuze select,.shop-keuze input{padding:7px 9px;border:1px solid #d9e2dc;border-radius:8px;font:inherit;font-size:14px}
.shop-keuze input{width:72px}
.shop-betaal{font-size:13px;color:#5d6f64;font-weight:600;margin:14px 0 0;line-height:1.6}
.shop-betaal svg{color:var(--roze);vertical-align:-3px;margin-right:5px}

/* Verhuur: Kampas vs. website */
.verhuur-kanaal{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:26px}
.vk-blok{background:#fff;border-radius:16px;padding:22px 24px;box-shadow:0 10px 26px rgba(28,42,34,.08);border:1px solid rgba(28,42,34,.05)}
.vk-blok:first-child{border-top:4px solid var(--geel)}
.vk-blok:last-child{border-top:4px solid var(--roze)}
.vk-icoon{width:48px;height:48px;border-radius:13px;background:#eaf4ee;color:var(--groen-3);display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.vk-blok h3{font-family:'Barlow Condensed';font-weight:800;font-size:21px;margin:0 0 6px;color:var(--groen-1)}
.vk-blok p{color:#4a5b50;font-size:14.5px;line-height:1.6;font-weight:500;margin:0 0 14px}
@media(max-width:760px){.verhuur-kanaal{grid-template-columns:1fr}}
.kampas-agenda{background:#fff;border-radius:16px;padding:14px;box-shadow:0 10px 26px rgba(28,42,34,.08);border:1px solid rgba(28,42,34,.05);border-top:4px solid var(--roze);max-width:500px;margin-top:8px}
.kampas-agenda iframe{width:100%;height:520px;border:0;border-radius:10px;display:block;overflow:hidden}

/* FAQ - gegroepeerd, met categoriekleuren (--c per categorie) */
.faq-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}
.faq-chips a{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid rgba(28,42,34,.08);border-radius:30px;padding:8px 15px;font-family:'Barlow Condensed';font-weight:700;font-size:14.5px;letter-spacing:.3px;color:var(--c);box-shadow:0 4px 12px rgba(28,42,34,.06);transition:transform .15s ease,background .15s ease,color .15s ease}
.faq-chips a:hover{background:var(--c);color:#fff;transform:translateY(-2px)}
.faq-cat{margin-bottom:32px;scroll-margin-top:80px}
.faq-cat-kop{display:flex;align-items:center;gap:13px;margin:0 0 14px}
.faq-cat-icoon{width:44px;height:44px;border-radius:13px;background:var(--c);color:#fff;display:flex;align-items:center;justify-content:center;flex:none;box-shadow:0 8px 18px rgba(28,42,34,.16)}
.faq-cat-kop h2{margin:0;font-family:'Barlow Condensed';font-weight:800;font-size:25px;color:var(--groen-1);text-transform:uppercase;line-height:1}
.faq-lijst{display:grid;gap:11px}
.faq-item{background:#fff;border-radius:14px;box-shadow:0 8px 20px rgba(28,42,34,.06);border:1px solid rgba(28,42,34,.05);border-left:4px solid var(--c);overflow:hidden;transition:box-shadow .18s ease,transform .18s ease}
.faq-item:hover{box-shadow:0 16px 32px rgba(28,42,34,.13);transform:translateY(-2px)}
.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 20px;cursor:pointer;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-q{font-family:'Barlow Condensed';font-weight:700;font-size:19.5px;color:var(--groen-1);transition:color .15s ease}
.faq-item[open] .faq-q{color:var(--c)}
.faq-pijl{flex:none;width:28px;height:28px;border-radius:50%;background:var(--c);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1;transition:transform .2s ease}
.faq-item[open] .faq-pijl{transform:rotate(45deg)}
.faq-antwoord{padding:2px 20px 18px;color:#3f5046;font-size:15px;line-height:1.7}
.faq-antwoord a{color:var(--c);font-weight:700;text-decoration:underline}
.faq-antwoord ul{margin:8px 0;padding-left:20px}
.faq-antwoord strong{color:var(--groen-1)}
.faq-antwoord .opm-kop{font-size:18px;margin:14px 0 6px;color:var(--groen-1)}
.faq-cta{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;margin-top:38px;background:linear-gradient(120deg,#1d5135,#a3055a);border-radius:20px;padding:28px 32px;color:#fff;box-shadow:0 16px 38px rgba(28,42,34,.2)}
.faq-cta h2{font-family:'Barlow Condensed';font-weight:800;font-size:27px;margin:4px 0 4px;color:#fff;line-height:1}
.faq-cta p{margin:0;color:#f4e4ee;font-weight:500}

/* Klikbaar adres */
.adres-link{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.adres-link:hover{color:var(--roze);text-decoration:underline}

/* Nette footer-contactkolom met icoontjes */
.footer-contact a{display:inline-flex;align-items:center;gap:8px}
.footer-contact .adres-link{align-items:flex-start}
.footer-contact svg{flex:none;opacity:.85}
.footer-onder a{color:inherit;text-decoration:underline;font-weight:700}
.footer-onder a:hover{color:var(--geel-licht)}

/* Scoutskleur (#D10772) wat meer aanwezig - binnen de sitestijl */
.sectie-kicker{color:var(--roze)}
.sectie-kicker::after{display:none}
.knop-groen-omlijnd:hover{border-color:var(--roze);color:var(--roze)}
.quicklink:hover .titel{color:var(--roze)}
.nieuws-lees{color:var(--roze)}
.footer-lijst a:hover{color:var(--roze)}
.tak-links .tak-meer{color:var(--roze)}

/* Leidingpagina: aantrekkelijker */
.leiding-tak-kop{display:flex;align-items:center;gap:16px;color:#fff;padding:14px 20px;border-radius:14px;margin:34px 0 18px;box-shadow:0 10px 24px rgba(28,42,34,.15)}
.leiding-tak-kop h2{margin:0;font-family:'Barlow Condensed';font-weight:800;font-size:26px;color:#fff;text-transform:uppercase;line-height:1}
.leiding-tak-kop .tak-embleem{box-shadow:0 6px 14px rgba(0,0,0,.2)}
.leiding-tak-leeftijd{display:inline-block;margin-top:4px;background:rgba(255,255,255,.22);color:#fff;font-family:'Barlow Condensed';font-weight:700;padding:2px 11px;border-radius:20px;font-size:13px}
.leiding-foto img{position:relative;z-index:1}
.leiding-werving{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;margin-top:44px;background:linear-gradient(120deg,#1d5135,#a3055a);border-radius:20px;padding:30px 34px;color:#fff;box-shadow:0 16px 38px rgba(28,42,34,.2)}
.leiding-werving h2{font-family:'Barlow Condensed';font-weight:800;font-size:30px;margin:6px 0 8px;color:#fff;line-height:1}
.leiding-werving p{color:#f4e4ee;font-weight:500;line-height:1.6;margin:0;max-width:62ch}
.leiding-werving .lw-tekst{flex:1;min-width:260px}

/* ===== Huisregels & reglement ===== */
.hr-sectie{background:#fff;border-radius:16px;padding:22px 26px;box-shadow:0 8px 22px rgba(28,42,34,.07);border:1px solid rgba(28,42,34,.05);margin-top:18px}
.hr-kop{display:flex;align-items:center;gap:14px;margin-bottom:6px}
.hr-kop h2,.hr-kop h3{margin:0;font-family:'Barlow Condensed';font-weight:800;font-size:23px;color:var(--groen-1);text-transform:uppercase;line-height:1.05}
.hr-nr{flex:none;width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#1d5135,#2c6e49);color:#fff;font-family:'Barlow Condensed';font-weight:800;font-size:19px;display:flex;align-items:center;justify-content:center}
.hr-icoon{flex:none;width:38px;height:38px;border-radius:11px;background:#eaf4ee;color:var(--groen-3);display:flex;align-items:center;justify-content:center}
.hr-intro{color:#4a5b50;line-height:1.6;margin:6px 0 12px}
.hr-lijst{margin:8px 0 2px;padding-left:0;list-style:none}
.hr-lijst li{position:relative;padding:6px 0 6px 26px;color:#3f5047;line-height:1.6;border-bottom:1px solid #f0efe7}
.hr-lijst li:last-child{border-bottom:none}
.hr-lijst li::before{content:"";position:absolute;left:4px;top:14px;width:8px;height:8px;border-radius:50%;background:var(--geel)}
.hr-lijst strong{color:var(--groen-1)}

.hr-wifi{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:6px 0 14px}
.hr-wifi-kaart{background:#f7f4ec;border-radius:13px;padding:16px 18px;border:1px solid rgba(28,42,34,.06)}
.hr-wifi-tag{display:inline-block;background:var(--geel);color:#1a2b1f;font-family:'Barlow Condensed';font-weight:700;font-size:12px;letter-spacing:1px;text-transform:uppercase;padding:2px 10px;border-radius:20px}
.hr-wifi-tag-groen{background:var(--groen-3);color:#fff}
.hr-wifi-naam{font-family:'Barlow Condensed';font-weight:800;font-size:24px;color:var(--groen-1);margin:8px 0 4px}
.hr-wifi-kaart p{margin:0;color:#4a5b50;font-size:14.5px;line-height:1.5}

.hr-tabel-wrap{overflow-x:auto;background:#fff;border-radius:16px;box-shadow:0 8px 22px rgba(28,42,34,.07);border:1px solid rgba(28,42,34,.05);margin-top:18px}
.hr-tabel{width:100%;border-collapse:collapse;min-width:520px}
.hr-tabel th{background:var(--groen-1);color:#fff;font-family:'Barlow Condensed';font-weight:700;font-size:14px;letter-spacing:.6px;text-transform:uppercase;text-align:left;padding:12px 16px}
.hr-tabel td{padding:11px 16px;border-top:1px solid #eef0e9;color:#3f5047;line-height:1.4;vertical-align:top}
.hr-tabel tbody tr:hover{background:#faf8f1}
.hr-cat{font-family:'Barlow Condensed';font-weight:800;font-size:15px;text-transform:uppercase;color:var(--groen-1);background:#f4f7f2;border-top:2px solid #e2e8dd !important;white-space:nowrap;vertical-align:middle}
.hr-bedrag{font-weight:800;color:var(--roze);white-space:nowrap;text-align:right}
.hr-tabel-2 td:first-child{font-weight:700;color:var(--groen-1)}
.hr-note{display:flex;align-items:flex-start;gap:8px;margin-top:12px;color:#5d6f64;font-size:14px;line-height:1.5}
.hr-note svg{color:var(--roze);flex:none;margin-top:2px}
.hr-note strong{color:var(--groen-1)}

/* Verhuur: akkoordverklaring huisregels */
.hr-akkoord{display:flex;gap:12px;align-items:flex-start;background:#fdeef2;border:1px solid rgba(209,7,114,.28);border-radius:13px;padding:14px 16px;margin:6px 0 16px}
.hr-akkoord input[type=checkbox]{flex:none;width:20px;height:20px;margin-top:2px;accent-color:var(--roze);cursor:pointer}
.hr-akkoord label{font-size:14.5px;line-height:1.5;color:#3f5047;cursor:pointer}
.hr-akkoord a{color:var(--roze);font-weight:700;text-decoration:underline}
.form-kopje{font-family:'Barlow Condensed',sans-serif;font-weight:800;text-transform:uppercase;letter-spacing:.02em;font-size:16px;color:var(--groen-3);margin:20px 0 10px;padding-top:14px;border-top:1px solid #ece8db}
.form-kopje:first-of-type{margin-top:2px;padding-top:0;border-top:0}
.check-veld{display:flex;gap:10px;align-items:flex-start;font-weight:600;cursor:pointer}
.check-veld input[type=checkbox]{width:20px;height:20px;flex:none;margin-top:1px;accent-color:var(--groen-3);cursor:pointer}
.contact-blok.verborgen{display:none}
.contact-blok + .contact-blok{border-top:1px dashed #e5e1d4;margin-top:10px;padding-top:6px}
.contact-titel-rij{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:2px 0 8px}
.contact-titel{font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.02em;color:var(--gedempt)}
.contact-weg{background:none;border:0;color:var(--roze);font-weight:700;font-size:13px;cursor:pointer;padding:2px 4px;border-radius:6px}
.contact-weg:hover{background:#fdeef2;text-decoration:underline}

@media(max-width:600px){
  .hr-wifi{grid-template-columns:1fr}
  .hr-kop h2,.hr-kop h3{font-size:20px}
}

/* ===== Huisregels v12: kerncijfers, ankernav, sectie-inhoud ===== */
.hr-kern{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:6px 0 20px}
.hr-kern-kaart{background:linear-gradient(135deg,#16402a,#1d5135);color:#fff;border-radius:15px;padding:18px 16px;text-align:center;box-shadow:0 10px 24px rgba(28,42,34,.16)}
.hr-kern-cijfer{font-family:'Barlow Condensed';font-weight:800;font-size:30px;line-height:1;color:var(--geel-licht)}
.hr-kern-label{font-size:13px;font-weight:600;margin-top:6px;color:#e7efe9;line-height:1.35}
.hr-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}
.hr-nav a{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid rgba(28,42,34,.1);color:var(--groen-1);font-family:'Barlow Condensed';font-weight:700;font-size:14.5px;letter-spacing:.4px;text-transform:uppercase;padding:8px 14px;border-radius:30px;box-shadow:0 4px 12px rgba(28,42,34,.06);transition:transform .15s ease,border-color .15s ease}
.hr-nav a:hover{transform:translateY(-1px);border-color:var(--roze);color:var(--roze)}
.hr-nav a svg{color:var(--roze)}
.hr-body{color:#3f5047;line-height:1.65;font-size:15px}
.hr-body p{margin:0 0 10px}
.hr-body strong{color:var(--groen-1)}
.hr-body .opm-lijst{list-style:none;margin:6px 0 2px;padding-left:0}
.hr-body .opm-lijst li{position:relative;padding:6px 0 6px 26px;border-bottom:1px solid #f0efe7}
.hr-body .opm-lijst li:last-child{border-bottom:none}
.hr-body .opm-lijst li::before{content:"";position:absolute;left:4px;top:14px;width:8px;height:8px;border-radius:50%;background:var(--geel)}
.hr-body a{color:var(--groen-3);font-weight:700}

/* ===== Juridische pagina's (privacy & voorwaarden) ===== */
.juridisch{background:#fff;border-radius:18px;padding:30px 34px;box-shadow:0 10px 26px rgba(28,42,34,.08);border:1px solid rgba(28,42,34,.05);color:#3d4d44;font-size:15.5px;line-height:1.75}
.juridisch .opm-kop{font-family:'Barlow Condensed';font-weight:800;font-size:21px;text-transform:none;color:var(--groen-1);margin:26px 0 8px;padding-top:16px;border-top:2px solid #eef0e9;line-height:1.15}
.juridisch .opm-kop:first-child{margin-top:0;padding-top:0;border-top:none}
.juridisch strong{color:var(--groen-1)}
.juridisch a{color:var(--groen-3);font-weight:700;word-break:break-word}
.juridisch .opm-lijst{list-style:none;margin:8px 0;padding-left:0}
.juridisch .opm-lijst li{position:relative;padding:5px 0 5px 24px;line-height:1.6}
.juridisch .opm-lijst li::before{content:"";position:absolute;left:3px;top:13px;width:7px;height:7px;border-radius:50%;background:var(--roze)}

/* ===== VZW intro netter ===== */
.vzw-intro{background:#fff;border-radius:18px;padding:26px 30px;box-shadow:0 10px 26px rgba(28,42,34,.08);border:1px solid rgba(28,42,34,.05);color:#3d4d44;font-size:16px;line-height:1.75;max-width:820px}
.vzw-intro .opm-kop{font-family:'Barlow Condensed';font-weight:800;font-size:21px;text-transform:none;color:var(--groen-1);margin:24px 0 6px;padding-top:16px;border-top:2px solid #eef0e9;line-height:1.15}
.vzw-intro .opm-kop:first-child{margin-top:0;padding-top:0;border-top:none}
.vzw-intro strong{color:var(--groen-1)}
.vzw-intro a{color:var(--groen-3);font-weight:700}

/* ===== Cookiebanner ===== */
.cookie-balk{position:fixed;left:16px;right:16px;bottom:16px;z-index:120;background:#16402a;color:#fff;border-radius:15px;padding:16px 20px;box-shadow:0 16px 40px rgba(0,0,0,.28);display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:space-between;max-width:920px;margin:0 auto}
.cookie-balk .cookie-tekst{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;font-weight:500;flex:1;min-width:240px}
.cookie-balk .cookie-tekst svg{color:var(--geel-licht);flex:none;margin-top:1px}
.cookie-balk a{color:var(--geel-licht);font-weight:700;text-decoration:underline}
.cookie-balk .knop-geel{flex:none}
.cookie-balk[hidden]{display:none}

/* ===== 404 ===== */
.fout-404{max-width:640px;margin:20px auto;text-align:center;background:#fff;border-radius:22px;padding:44px 34px;box-shadow:0 16px 40px rgba(28,42,34,.1);border:1px solid rgba(28,42,34,.05)}
.fout-404-badge{width:82px;height:82px;border-radius:50%;margin:0 auto 6px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#16402a,#2c6e49);color:var(--geel-licht);box-shadow:0 10px 24px rgba(28,42,34,.18)}
.fout-404-code{font-family:'Barlow Condensed';font-weight:800;font-size:74px;line-height:1;color:var(--roze);letter-spacing:2px}
.fout-404 h1{font-family:'Barlow Condensed';font-weight:800;font-size:32px;color:var(--groen-1);margin:6px 0 10px;text-transform:uppercase}
.fout-404 p{color:#4a5b50;line-height:1.65;max-width:48ch;margin:0 auto}
.fout-404-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:26px;padding-top:22px;border-top:1px solid #eef0e9}
.fout-404-links a{display:inline-flex;align-items:center;gap:6px;color:var(--groen-1);font-family:'Barlow Condensed';font-weight:700;font-size:14.5px;letter-spacing:.4px;text-transform:uppercase;background:#f4f7f2;padding:7px 13px;border-radius:24px;transition:color .15s ease,background .15s ease}
.fout-404-links a:hover{color:#fff;background:var(--groen-3)}
.fout-404-links a svg{color:var(--roze)}
.fout-404-links a:hover svg{color:#fff}

@media(max-width:600px){
  .hr-kern{grid-template-columns:1fr 1fr}
  .fout-404-code{font-size:58px}
}

/* ===== Cookie-consent (kiezen: aanvaarden / weigeren / voorkeuren) ===== */
.cookie-knoppen{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ck-btn{font-family:'Barlow Condensed';font-weight:700;font-size:14.5px;letter-spacing:.5px;text-transform:uppercase;padding:9px 15px;border-radius:9px;border:1.5px solid rgba(255,255,255,.55);background:transparent;color:#fff;cursor:pointer;transition:border-color .15s ease,background .15s ease}
.ck-btn:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.cookie-modal{position:fixed;inset:0;z-index:130;background:rgba(18,28,20,.55);display:flex;align-items:center;justify-content:center;padding:16px}
.cookie-modal[hidden]{display:none}
.cookie-modal-kaart{position:relative;background:#fff;border-radius:18px;max-width:520px;width:100%;padding:28px 30px;box-shadow:0 24px 60px rgba(0,0,0,.32);max-height:88vh;overflow:auto}
.cookie-modal-kaart h3{font-family:'Barlow Condensed';font-weight:800;font-size:24px;color:var(--groen-1);margin:0 0 8px}
.cookie-modal-kaart p{color:#4a5b50;font-size:14.5px;line-height:1.6;margin:0 0 12px}
.cookie-modal-sluit{position:absolute;top:10px;right:14px;background:none;border:none;font-size:28px;line-height:1;color:#8a9a90;cursor:pointer}
.cookie-modal-sluit:hover{color:var(--groen-1)}
.ck-cat{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:14px 0;border-top:1px solid #eef0e9;cursor:pointer}
.ck-cat small{color:#5d6f64;font-weight:500;line-height:1.45;display:block;margin-top:2px}
.ck-cat strong{color:var(--groen-1)}
.ck-cat input{width:20px;height:20px;accent-color:var(--groen-3);flex:none;margin-top:2px}
.cookie-modal-acties{display:flex;justify-content:space-between;gap:10px;margin-top:18px;flex-wrap:wrap}
.cookie-modal-acties .ck-btn{border-color:rgba(28,42,34,.3);color:var(--groen-1)}
.cookie-modal-acties .ck-btn:hover{border-color:var(--groen-1);background:#f4f7f2}
.cookie-embed{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:300px;background:#f1f4ef;border:1px dashed rgba(28,42,34,.25);border-radius:12px;text-align:center;padding:22px;box-sizing:border-box}
.kampas-agenda .cookie-embed{min-height:480px}
.ck-embed-in{max-width:360px}
.ck-embed-in svg{color:var(--groen-3)}
.ck-embed-in p{color:#4a5b50;font-size:14px;line-height:1.55;margin:8px 0 14px}
.ck-embed-in strong{color:var(--groen-1)}
@media(max-width:600px){
  .cookie-balk{flex-direction:column;align-items:stretch}
  .cookie-knoppen{justify-content:stretch}
  .cookie-knoppen .ck-btn,.cookie-knoppen .knop-geel{flex:1;justify-content:center}
}

/* ===== Sticky footer: op korte pagina's (bv. /fotos) blijft de footer onderaan ===== */
body{display:flex;flex-direction:column;min-height:100vh}
.golf{margin-top:auto}

/* ===== VZW: intro als twee kaartjes naast elkaar ===== */
.vzw-kaarten{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:6px}
.vzw-kaart{background:#fff;border-radius:18px;padding:26px 28px;box-shadow:0 10px 26px rgba(28,42,34,.08);border:1px solid rgba(28,42,34,.05);border-top:4px solid var(--groen-3)}
.vzw-kaart:nth-child(even){border-top-color:var(--roze)}
.vzw-kaart-icoon{width:48px;height:48px;border-radius:14px;background:#eaf4ee;color:var(--groen-3);display:inline-flex;align-items:center;justify-content:center;margin-bottom:14px}
.vzw-kaart:nth-child(even) .vzw-kaart-icoon{background:#fdeef2;color:var(--roze)}
.vzw-kaart h3{font-family:'Barlow Condensed';font-weight:800;font-size:23px;color:var(--groen-1);margin:0 0 8px;line-height:1.1}
.vzw-kaart-body{color:#3f5047;line-height:1.7;font-size:15px}
.vzw-kaart-body p{margin:0 0 10px}
.vzw-kaart-body p:last-child{margin-bottom:0}
.vzw-kaart-body strong{color:var(--groen-1)}
.vzw-kaart-body a{color:var(--groen-3);font-weight:700}
@media(max-width:700px){.vzw-kaarten{grid-template-columns:1fr}}

/* ===== VZW-pagina: volledige make-over ===== */
.vzw-hero{background:linear-gradient(135deg,#16402a 0%,#1d5135 60%,#2c6e49 100%);color:#fff;padding:58px 0 98px;position:relative;overflow:hidden}
.vzw-hero .binnen{max-width:960px;margin:0 auto;padding:0 24px;position:relative;z-index:2}
.vzw-hero::before{content:"";position:absolute;right:-90px;top:-90px;width:300px;height:300px;border-radius:50%;background:rgba(255,255,255,.05);z-index:1}
.vzw-hero::after{content:"";position:absolute;right:110px;bottom:-70px;width:190px;height:190px;border-radius:50%;background:rgba(209,7,114,.16);z-index:1}
.vzw-hero-kicker{display:inline-flex;align-items:center;gap:9px;color:var(--geel-licht);font-family:'Barlow Condensed';font-weight:700;letter-spacing:2px;text-transform:uppercase;font-size:14px;margin-bottom:12px}
.vzw-hero-kicker .stip{width:8px;height:8px;border-radius:50%;background:var(--roze)}
.vzw-hero h1{font-family:'Barlow Condensed';font-weight:800;font-size:clamp(38px,6vw,58px);line-height:1;margin:0 0 14px;color:#fff;text-transform:uppercase}
.vzw-hero-lead{font-size:18px;line-height:1.6;max-width:660px;color:#e7efe9;font-weight:500;margin:0}
.vzw-body{padding-top:0}
.vzw-op-hero{margin-top:-66px;position:relative;z-index:3}

.vzw-rollen{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:10px}
.vzw-rol{background:#fff;border-radius:16px;padding:26px 22px;box-shadow:0 8px 22px rgba(28,42,34,.07);border:1px solid rgba(28,42,34,.05);text-align:center;transition:transform .18s ease,box-shadow .18s ease}
.vzw-rol:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(28,42,34,.12)}
.vzw-rol-icoon{width:58px;height:58px;border-radius:50%;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1d5135,#2c6e49);color:#fff}
.vzw-rol:nth-child(2) .vzw-rol-icoon{background:linear-gradient(135deg,#e0a800,#f2b705);color:#1a2b1f}
.vzw-rol:nth-child(3) .vzw-rol-icoon{background:linear-gradient(135deg,#d10772,#a3055a);color:#fff}
.vzw-rol h3{font-family:'Barlow Condensed';font-weight:800;font-size:21px;color:var(--groen-1);margin:0 0 8px}
.vzw-rol p{color:#4a5b50;font-size:14.5px;line-height:1.6;margin:0}

.vzw-werving{display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;margin-top:44px;background:linear-gradient(120deg,#1d5135,#a3055a);border-radius:22px;padding:32px 36px;color:#fff;box-shadow:0 16px 38px rgba(28,42,34,.2)}
.vzw-werving h2{font-family:'Barlow Condensed';font-weight:800;font-size:30px;margin:2px 0 8px;color:#fff;line-height:1.05}
.vzw-werving p{color:#f4e4ee;font-weight:500;line-height:1.6;margin:0;max-width:60ch}
.vzw-werving-tekst{flex:1;min-width:260px}
.vzw-werving .knop-geel{flex:none}
.vzw-werving .vzw-hero-kicker{color:#ffd9ec;margin-bottom:6px}
.vzw-werving .vzw-hero-kicker .stip{background:var(--geel-licht)}

@media(max-width:720px){
  .vzw-rollen{grid-template-columns:1fr}
  .vzw-op-hero{margin-top:-50px}
  .vzw-hero{padding:44px 0 84px}
}

/* ---- Winkel: winkelmand & afrekenen ---- */
.winkel-grid{display:grid;grid-template-columns:1fr;gap:26px;align-items:start;margin-top:8px}
@media(min-width:920px){.winkel-grid{grid-template-columns:1.55fr 1fr}}
.stap-kop{display:flex;align-items:center;gap:12px;margin:6px 0 16px}
.stap-kop h2{margin:0;font-family:'Barlow Condensed';font-weight:800;font-size:24px;text-transform:uppercase;color:var(--groen-1);line-height:1}
.shop-add{margin-top:12px;width:100%;justify-content:center}
.shop-kaart .shop-keuze select,.shop-kaart .shop-keuze input{background:#fbfcfb}
.mand{position:sticky;top:88px;margin-top:0}
.mand h2{font-family:'Barlow Condensed';font-weight:800;font-size:22px;text-transform:uppercase;color:var(--groen-1);margin:0 0 4px;display:flex;align-items:center;gap:9px}
.mand-badge{background:var(--roze);color:#fff;font-size:13px;min-width:22px;height:22px;border-radius:20px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px;font-family:Mulish;font-weight:800}
.mand-leeg{color:var(--gedempt);font-weight:500;font-size:14.5px;text-align:center;padding:22px 4px;line-height:1.6}
.mand-lijst{display:flex;flex-direction:column;margin-top:8px}
.mand-regel{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #eef0e9}
.mand-regel:last-child{border-bottom:none}
.mand-regel .info{flex:1;min-width:0}
.mand-naam{font-weight:800;color:var(--groen-1);font-size:15px;line-height:1.25}
.mand-maat{font-size:12.5px;color:var(--gedempt);font-weight:600;margin-top:2px}
.mand-prijs{font-weight:800;color:var(--roze);font-size:14px;white-space:nowrap}
.stepper{display:inline-flex;align-items:center;border:1px solid #d9e2dc;border-radius:9px;overflow:hidden}
.stepper button{width:30px;height:30px;border:none;background:#f3f6f1;color:var(--groen-2);font-size:18px;cursor:pointer;line-height:1;padding:0}
.stepper button:hover{background:#e6efe8}
.stepper span{min-width:32px;text-align:center;font-weight:700;font-size:14px}
.mand-weg{background:none;border:none;color:#b23b2e;cursor:pointer;font-size:19px;line-height:1;padding:2px 3px}
.mand-weg:hover{color:#8f2c22}
.mand-totaal{display:flex;justify-content:space-between;align-items:baseline;margin-top:16px;padding-top:14px;border-top:2px solid #eef0e9}
.mand-totaal .lbl{font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--gedempt);font-size:15px}
.mand-totaal .bedrag{font-family:'Barlow Condensed';font-weight:800;font-size:27px;color:var(--groen-1)}
.mand .shop-add{margin-top:16px}
.knop-geel.is-uit{opacity:.4;pointer-events:none;box-shadow:none}
.mand.flits{animation:mandflits .45s ease}
@keyframes mandflits{0%{box-shadow:0 0 0 0 rgba(242,183,5,.55)}100%{box-shadow:0 10px 26px rgba(28,42,34,.09)}}
.checkout-sam{background:#f3f6f1;border-radius:12px;padding:14px 16px;margin-bottom:18px;font-size:14.5px;color:var(--inkt)}
.checkout-sam .rij{display:flex;justify-content:space-between;gap:14px;padding:4px 0}
.checkout-sam .rij .q{color:var(--gedempt);font-weight:600}
.checkout-sam .tot{font-weight:800;border-top:1px solid #dde5df;margin-top:6px;padding-top:8px;color:var(--groen-1)}
.betaal-info{display:flex;gap:11px;align-items:flex-start;background:#eaf4ee;border-radius:11px;padding:13px 15px;color:#2c5340;font-weight:600;font-size:13.5px;line-height:1.55;margin:16px 0}
.betaal-info svg{color:var(--groen-3);flex:none;margin-top:1px}

/* Winkel: stap-voor-stap wizard */
.wizard-nav{list-style:none;display:flex;padding:0;margin:0 0 30px}
.wizard-nav li{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.wizard-nav li::before{content:"";position:absolute;top:18px;right:50%;width:100%;height:3px;background:#e0e6df;z-index:0}
.wizard-nav li:first-child::before{display:none}
.wizard-nav li.actief::before,.wizard-nav li.done::before{background:var(--groen-3)}
.wizard-nav .bol{position:relative;z-index:1;width:38px;height:38px;border-radius:50%;background:#e0e6df;color:#8a9a90;display:flex;align-items:center;justify-content:center;font-family:'Barlow Condensed';font-weight:800;font-size:19px;transition:background .2s,color .2s,box-shadow .2s}
.wizard-nav li.actief .bol{background:var(--groen-3);color:#fff;box-shadow:0 0 0 5px rgba(44,110,73,.16)}
.wizard-nav li.done .bol{background:var(--groen-3);color:#fff}
.wizard-nav .lbl{font-family:'Barlow Condensed';font-weight:700;font-size:14px;letter-spacing:.4px;text-transform:uppercase;color:#94a39a}
.wizard-nav li.actief .lbl,.wizard-nav li.done .lbl{color:var(--groen-1)}
.wizard-stap{display:none}
.wizard-stap.actief{display:block;animation:stapin .25s ease}
@keyframes stapin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.wizard-titel{font-family:'Barlow Condensed';font-weight:800;font-size:23px;text-transform:uppercase;color:var(--groen-1);margin:0 0 14px}
.wizard-acties{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;flex-wrap:wrap}
.js-add.toegevoegd{background:var(--groen-3);color:#fff}
@media(max-width:560px){.wizard-nav .lbl{font-size:11px}.wizard-acties{flex-direction:column-reverse;align-items:stretch}.wizard-acties .knop-geel,.wizard-acties .knop-groen-omlijnd{justify-content:center;width:100%}}

/* Tak-pagina: leidingskaarten netjes op maat, ook bij weinig leiders */
.sectie-vol{align-self:stretch;width:100%}
.leiding-grid.tak-leiding{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.leiding-grid.tak-leiding .leiding-kaart{width:100%;max-width:290px;margin:0 auto}
.leiding-grid.tak-leiding .leiding-foto{height:250px}
@media(max-width:560px){.leiding-grid.tak-leiding .leiding-kaart{max-width:100%}}

/* Fotoalbum: reacties (Facebook-stijl) */
.reacties{max-width:720px;margin-top:44px;border-top:1px solid #e6e0d0;padding-top:30px}
.reacties-tel{display:inline-block;background:#eaf4ee;color:var(--groen-3);font-size:16px;font-family:'Barlow Condensed';font-weight:800;border-radius:20px;padding:1px 12px;vertical-align:middle}
.reactie-form{background:#fff;border-radius:16px;padding:20px 22px;box-shadow:0 10px 26px rgba(28,42,34,.08);border:1px solid rgba(28,42,34,.05);margin-bottom:26px}
.reactie-prive{font-weight:500;color:var(--gedempt);font-size:12px}
.reactie-lijst{display:flex;flex-direction:column;gap:14px}
.reactie{display:flex;gap:14px;align-items:flex-start;background:#fff;border-radius:14px;padding:15px 17px;box-shadow:0 6px 16px rgba(28,42,34,.06);border:1px solid rgba(28,42,34,.05)}
.reactie-avatar{flex:none;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--groen-3),var(--groen-1));color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Barlow Condensed';font-weight:800;font-size:20px}
.reactie-inhoud{flex:1;min-width:0}
.reactie-kop{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.reactie-naam{font-weight:800;color:var(--groen-1);font-size:15.5px}
.reactie-datum{font-size:12.5px;color:var(--gedempt);font-weight:600}
.reactie-tekst{margin:4px 0 0;color:#3f5046;font-size:15px;line-height:1.55;font-weight:500;overflow-wrap:anywhere}
.reactie-weg{flex:none;align-self:center;background:#fdecec;border:none;color:#b23b2e;width:30px;height:30px;border-radius:8px;cursor:pointer;font-size:18px;line-height:1}
.reactie-weg:hover{background:#f8d7d7}

/* Steekkaart-wizard */
.skw{margin-top:8px}
.sk-kaart{margin-top:0;text-align:center}
.sk-stap-tel{font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;letter-spacing:1.5px;font-size:13px;color:var(--roze);margin-bottom:10px}
.sk-titel{font-family:'Barlow Condensed';font-weight:800;font-size:26px;color:var(--groen-1);line-height:1.12;margin:0 0 12px;text-transform:uppercase}
.sk-tekst{color:#3f5046;font-size:15.5px;line-height:1.65;text-align:left}
.sk-tekst p{margin:0 0 10px}
.sk-tekst p:last-child{margin-bottom:0}
.sk-tekst ul{margin:8px 0;padding-left:20px}
.sk-tekst strong{color:var(--groen-1)}
.sk-foto{border-radius:13px;overflow:hidden;margin:0 0 16px;max-height:340px}
.sk-foto img{width:100%;height:100%;object-fit:cover;display:block}
.sk-kaart .steek-waarschuwing{text-align:left}
.sk-start-kaart{padding-top:32px;padding-bottom:32px}
.sk-start-icoon{width:64px;height:64px;border-radius:50%;background:#eaf4ee;color:var(--groen-3);display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
.sk-start-sub{text-align:center;color:var(--gedempt);margin:0 auto 22px;max-width:46ch}
.sk-keuze{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.sk-keuze-knop{font-size:16px}
.sk-opnieuw{background:none;border:none;color:var(--gedempt);text-decoration:underline;font-weight:600;cursor:pointer;font-size:13.5px}
.sk-opnieuw:hover{color:var(--groen-3)}
.sk-knop-rij{margin:4px 0 20px;text-align:center}
.sk-cta{font-size:16px}
.sk-knop-hint{font-size:12.5px;color:var(--gedempt);font-weight:600;margin-top:8px}
@media(max-width:520px){.sk-keuze .sk-keuze-knop{width:100%;justify-content:center}.sk-cta{width:100%;justify-content:center}}
