/* 15-componenten.css – vaste huisstijl en bouwblokken voor hubs en landingspagina's (v0.14.0)
   Typografie: H1 40/800 · H2 28/800 · H3 18/700 · tekst 17/1.65 (Manrope)
   Witruimte: 56 px tussen blokken · 24 px binnen een blok · 12 px kop→tekst (mobiel 40/20/12)

   Gebruik op een nieuwe hub:
   - buitenste wrapper: class "bs-home bs-dorp bc-page" (bs-home zet de pagina op volle breedte, zonder zijbalk en uitgelichte afbeelding)
   - bouwblokken binnen een sectie in <div class="bc"> … </div>
   - GEEN eigen <style> meer in de pagina-inhoud; afwijkingen eerst hier toevoegen, zodat alle hubs gelijk blijven.

   Bouwblokken (class → wat):
   bc-bar        balk onder de hero (bv. bloeistatus + link)
   bc-keys       groene label-pillen ("In het kort")
   bc-facts      feitenkaartjes (small = label)
   bc-mosaic     fotomozaïek, 5 foto's met figcaption
   bc-lg/bc-list/bc-row   lijst met tijd · naam · prijs · pijl (tribunes, tickets); bc-fri/bc-sat = gekleurde dagkop (bc-lday)
   bc-tl         tijdlijn/programma met foto (.ph), datum (.d), links (.l); .main = uitgelicht
   bc-tbl        tabel (kolom met class s verdwijnt op mobiel)
   bc-tips       tipkaartjes; bc-split = tekst + foto naast elkaar
   bc-band       groene band (dagtocht/CTA) met vinkjeslijst
   bc-reach      kaarten met foto (bereikbaarheid e.d.)
   bc-links      linktegels (Alles over …)
   bc-btns/bc-btn(.alt)   knoppen
   bc-note       kleine toelichting/bron
*/

:root{--bs-g:#163D35;--bs-r:#C60068;--bs-z:#E9DFCF;--bs-c:#F7F3EC;--bs-space-l:56px;--bs-space-s:24px;--bs-space-xs:12px}
@media(max-width:600px){:root{--bs-space-l:40px;--bs-space-s:20px}}

/* FAQ (Yoast FAQ-blok) – overal dezelfde opmaak: vraag als H3, antwoord als lopende tekst */
.schema-faq .schema-faq-section{margin:0;padding:0}
.schema-faq .schema-faq-question{display:block;font-family:Manrope,Arial,sans-serif;font-size:18px;font-weight:700;line-height:1.35;color:var(--bs-g);margin:0 0 6px}
.schema-faq .schema-faq-answer{font-size:17px;line-height:1.65;margin:0 0 1.5em}
.schema-faq .schema-faq-section:last-child .schema-faq-answer{margin-bottom:0}
@media(max-width:600px){.schema-faq .schema-faq-question{font-size:17px}.schema-faq .schema-faq-answer{font-size:16px}}

/* ---------- Hub-pagina's (pagina's én berichten): volle breedte, geen zijbalk, geen uitgelichte afbeelding ---------- */
.wrapper-main:has(.bs-home)>aside{display:none !important}
.wrapper-main:has(.bs-home)>#content,.wrapper-main:has(.bs-home)>.content{width:100% !important;float:none !important;margin:0 !important}
.wrapper-main:has(.bs-home) .post-cover{display:none !important}

/* Lopende tekst in hubs */
.bs-home.bs-dorp .bs-section p:not(.bs-card-text):not(.bs-eyebrow):not(.bs-hero-text):not(.bs-date):not(.bs-event-text):not(.bs-more):not(.bs-disclosure),.bs-home.bs-dorp .schema-faq-answer{font-size:17px;line-height:1.65}
.bs-home.bs-dorp .bs-section p a{color:#C60068;text-decoration:underline;text-underline-offset:2px}
@media(max-width:780px){.bs-hero .bs-hero-panel{padding-bottom:64px!important}}

/* Weer/bloei-balk */
.bsx .bsx-in{justify-content:space-between!important;align-items:center!important}
.bsx .bsx-meta{margin-left:auto}
.bsx .bsx-src{margin:8px 4px 0!important;font-size:12px!important;opacity:.65;color:#163D35}
.bsx .bsx-src:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#2fa36b;margin-right:6px;vertical-align:1px}

/* ---------- Basis bouwblokken ---------- */
.bc{--g:#163D35;--r:#C60068;--z:#E9DFCF;--c:#F7F3EC;color:var(--g)}
.bc *{box-sizing:border-box}
.bc ul,.bc li{list-style:none!important;margin-left:0!important;padding-left:0!important}
.bc li::marker{content:none}

/* Balk onder de hero */
.bc-bar{max-width:1060px;margin:22px auto 0;padding:0 16px}
.bc-bar-in{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;background:#fff;border:1px solid var(--z);border-radius:14px;padding:12px 16px;font-size:15px}
.bc-bar b{font-weight:800}
.bc-bar a{color:var(--r);font-weight:700;text-decoration:none;margin-left:auto}

/* Feitenkaartjes en labels */
.bc-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:18px 0 0!important}
.bc-facts li{background:#fff;border:1px solid var(--z);border-radius:14px;padding:14px 16px!important;font-size:15px;line-height:1.45}
.bc-facts small{display:block;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--r);margin-bottom:4px}
.bc-facts a{color:var(--g);font-weight:700}
.bc-keys{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0!important}
.bc-keys li{background:var(--g);color:#fff;border-radius:999px;padding:6px 12px!important;font-size:13px;font-weight:700}

/* Lijst met tijden en prijzen (tribunes, tickets) */
.bc-lday{font-weight:800;font-size:15px;padding:8px 12px;border-radius:10px;margin:0 0 8px!important}
.bc-fri .bc-lday{background:#E6E9F5;color:#1f2a52}
.bc-sat .bc-lday{background:#FBE7EF}
.bc-lg+.bc-lg{margin-top:16px}
.bc-list{display:grid;gap:6px;margin:0!important}
.bc-row{display:grid;grid-template-columns:52px minmax(0,1fr) auto 14px;gap:10px;align-items:center;background:#fff;border:1px solid var(--z);border-radius:12px;padding:10px 14px;text-decoration:none!important;color:var(--g)!important}
.bc-row:hover{border-color:var(--r)}
.bc-t{font-weight:800;text-align:right;font-variant-numeric:tabular-nums}
.bc-n{font-weight:800;line-height:1.3}
.bc-n small{display:block;font-weight:400;font-size:14px;color:#5b6b65}
.bc-p{font-weight:800;color:var(--r)}
.bc-go{color:var(--r);font-weight:800}
.bc-new{display:inline-block;background:var(--r);color:#fff;font-size:10px;font-weight:800;border-radius:999px;padding:2px 7px;margin-left:6px;vertical-align:2px;text-transform:uppercase}
@media(min-width:782px){.bc-row{grid-template-columns:64px minmax(0,1fr) auto 14px;padding:12px 18px}.bc-n{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:12px}.bc-n small{display:inline;font-size:15px}}

/* Knoppen */
.bc-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.bc-btn{display:inline-block;background:var(--r);color:#fff!important;font-weight:800;border-radius:10px;padding:12px 18px;text-decoration:none!important}
.bc-btn.alt{background:#fff;color:var(--g)!important;border:2px solid var(--g)}

/* Tijdlijn / programma */
.bc-tl{display:grid;gap:10px;margin:0!important}
.bc-tl li{display:grid;grid-template-columns:120px minmax(0,1fr);gap:14px;background:#fff;border:1px solid var(--z);border-radius:14px;padding:14px 16px!important}
.bc-tl .d{font-weight:800;line-height:1.3}
.bc-tl .d small{display:block;font-weight:600;font-size:13px;color:#6b7b75}
.bc-tl h3{margin:0 0 4px!important;font-size:18px!important}
.bc-tl p{margin:0!important;font-size:15px!important;line-height:1.5!important}
.bc-tl .l{margin-top:6px!important;font-weight:700}
.bc-tl .l a{color:var(--r);margin-right:14px}
.bc-tl .main{border:2px solid var(--r)}
@media(max-width:600px){.bc-tl li{grid-template-columns:1fr;gap:4px}}

/* Tabel */
.bc-tbl{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden;font-size:15px}
.bc-tbl th,.bc-tbl td{padding:10px 14px;border-bottom:1px solid var(--z);text-align:left;vertical-align:top}
.bc-tbl th{background:var(--g);color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.04em}
.bc-tbl td:first-child{font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums}
.bc-note{font-size:13px!important;color:#6b7b75!important;margin-top:8px!important}

/* Tips */
.bc-tips{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin:0!important}
.bc-tips li{background:#fff;border:1px solid var(--z);border-radius:14px;padding:14px 16px!important;font-size:15px;line-height:1.5}
.bc-tips b{display:block;margin-bottom:2px}

/* Groene band */
.bc-band{background:var(--g);color:#fff;border-radius:18px;padding:26px 24px}
.bc-band h2{color:#fff!important;margin-top:0!important}
.bc-band p{color:#fff!important}
.bc-band small{display:block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#9fd4bd;margin-bottom:6px}
.bc-band ul{display:grid;gap:6px;margin:12px 0 0!important}
.bc-band li{font-size:16px;color:#fff}
.bc-band li:before{content:"✓ ";color:#9fd4bd;font-weight:800}

/* Linktegels */
.bc-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:8px;margin:0!important}
.bc-links a{display:block;background:#fff;border:1px solid var(--z);border-radius:12px;padding:12px 14px;color:var(--g)!important;font-weight:700;text-decoration:none!important}
.bc-links a small{display:block;font-weight:400;font-size:14px;color:#5b6b65}
.bc-links a:hover{border-color:var(--r)}
.bc-dates{max-width:520px}

/* Fotomozaïek */
.bc-mosaic{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:200px 200px;gap:10px}
.bc-mosaic figure{position:relative;margin:0!important;border-radius:16px;overflow:hidden}
.bc-mosaic figure:first-child{grid-row:1/3}
.bc-mosaic img{width:100%;height:100%;object-fit:cover;display:block;max-width:none}
.bc-mosaic figcaption{position:absolute;left:0;right:0;bottom:0;padding:22px 12px 10px;background:linear-gradient(transparent,rgba(0,0,0,.65));color:#fff;font-size:13px;font-weight:700;line-height:1.3}
@media(max-width:700px){.bc-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:220px 140px 140px}.bc-mosaic figure:first-child{grid-column:1/3;grid-row:auto}.bc-mosaic figure:nth-child(n+6){display:none}}

/* Tijdlijn met foto */
.bc-tl li{grid-template-columns:150px minmax(0,1fr)!important;align-items:start}
.bc-tl .ph{width:150px;height:110px;border-radius:12px;overflow:hidden;margin:0 0 8px}
.bc-tl .ph img{width:100%;height:100%;object-fit:cover;display:block;max-width:none}
@media(max-width:600px){.bc-tl li{grid-template-columns:96px minmax(0,1fr)!important;gap:12px!important}.bc-tl .ph{width:96px;height:96px}}

/* Kaarten met foto (bereikbaarheid) */
.bc-reach{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin:0!important}
.bc-reach li{background:#fff;border:1px solid var(--z);border-radius:16px;overflow:hidden;padding:0!important}
.bc-reach .ph{height:150px}
.bc-reach .ph img{width:100%;height:100%;object-fit:cover;display:block;max-width:none}
.bc-reach .tx{padding:14px 16px}
.bc-reach h3{margin:0 0 6px!important;font-size:18px!important}
.bc-reach p{margin:0 0 6px!important;font-size:15px!important;line-height:1.5!important}
.bc-reach a{color:var(--r);font-weight:700}
@media(max-width:600px){.bc-reach .ph{height:120px}}

/* Tekst + foto naast elkaar */
.bc-split{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:stretch}
.bc-split>div>p{margin:0 0 var(--S,24px)!important}
.bc-split .ph{border-radius:16px;overflow:hidden;height:auto;min-height:0}
.bc-split .ph img{width:100%;height:100%;object-fit:cover;display:block;max-width:none}
.bc-split .bc-tips{grid-template-columns:1fr 1fr!important;gap:12px!important}
.bc-split .bc-tips li{padding:16px 18px!important}
@media(max-width:780px){.bc-split{grid-template-columns:1fr}.bc-split .ph{height:200px}.bc-split .bc-tips{grid-template-columns:1fr!important}}

/* ---------- Vaste witruimte op hubs (bc-page) ---------- */
.bc-page{--S:24px;--L:28px;--box:48px}
@media(max-width:600px){.bc-page{--S:20px;--L:20px;--box:32px}}
.bc-page section.bs-section{padding-top:var(--L)!important;padding-bottom:var(--L)!important;margin-top:0!important;margin-bottom:0!important}
.bc-page section.bs-section.bs-events{padding-top:var(--box)!important;padding-bottom:var(--box)!important;margin-top:var(--L)!important;margin-bottom:var(--L)!important}
.bc-page .bc-bar{margin-top:var(--S)!important;margin-bottom:var(--L)}
.bc-page section.bs-section h2{margin:0 0 12px!important}
.bc-page section.bs-section .bs-section-head{margin:0 0 12px!important;align-items:baseline}
.bc-page section.bs-section .bs-section-head h2{margin:0!important}
.bc-page section.bs-section .bs-section-head .bs-more{margin:0!important}
.bc-page section.bs-section>p,.bc-page section.bs-section>.wp-block-group__inner-container>p{margin-top:0!important;margin-bottom:0!important}
.bc-page section.bs-section>p+p,.bc-page section.bs-section>.wp-block-group__inner-container>p+p{margin-top:12px!important}
.bc-page section.bs-section .bc{margin-top:var(--S)!important}
.bc-page section.bs-section .bc+p,.bc-page section.bs-section .wp-block-group+p,.bc-page section.bs-section .bs-grid+p{margin-top:var(--S)!important}
.bc-page section.bs-section>.bc.bc-band:first-child,.bc-page section.bs-section .bc-band{margin-top:0!important}
.bc-page section.bs-section .bs-grid{margin-top:var(--S)!important}
.bc-page section.bs-section .schema-faq{margin-top:var(--S)!important}
.bc-page .bs-uitjes .bs-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))!important}
.bc .bc-btns{margin-top:var(--S,20px)!important}
.bc .bc-note{margin-top:12px!important}
.bc-lg+.bc-lg{margin-top:var(--S,16px)!important}
.bc-tl p.l{margin-top:8px!important}
.bc-tl h3{margin:0 0 6px!important}
.bc-page .schema-faq-answer{margin:0 0 1.5em!important}
.bc-page .schema-faq-section:last-child .schema-faq-answer{margin-bottom:0!important}

/* Kaarten (bs-card) op hubs: foto 200 px, titel en tekst met vaste binnenruimte */
.bc-page .bs-card{display:flex;flex-direction:column}
.bc-page .bs-card>.wp-block-group__inner-container{display:flex;flex-direction:column;height:100%}
.bc-page .bs-card .bs-card-img{margin:0!important;height:auto!important;line-height:0}
.bc-page .bs-card .bs-card-img img{margin:0!important;height:200px!important;width:100%;object-fit:cover;display:block}
.bc-page .bs-card .bs-card-title{margin:16px 18px 6px!important;padding:0!important}
.bc-page .bs-card .bs-card-text{margin:0 18px 18px!important;padding:0!important}

/* Mobiel */
@media(max-width:600px){
.bc-tbl .s{display:none}
.bc-tbl td,.bc-tbl th{padding:8px 12px}
.bc-facts{grid-template-columns:1fr 1fr;gap:8px}
.bc-facts li{padding:10px 12px!important;font-size:14px}
.bc-links{grid-template-columns:1fr 1fr}
.bc-links a{padding:10px 12px;font-size:14px}
.bc-links a small{font-size:12px}
.bc-tl li{padding:12px 14px!important}
.bc-tl p{font-size:14px!important}
.bc-tips li{font-size:14px;padding:12px 14px!important}
.bc-page .bs-uitjes .bs-grid{grid-template-columns:1fr!important;gap:8px!important}
.bc-page .bs-uitjes .bs-card{display:block;padding:10px!important}
.bc-page .bs-uitjes .bs-card>.wp-block-group__inner-container{display:grid!important;height:auto;grid-template-columns:88px minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:12px;align-items:start}
.bc-page .bs-uitjes .bs-card .bs-card-img{grid-row:1/3;margin:0!important}
.bc-page .bs-uitjes .bs-card .bs-card-img img{width:88px!important;height:88px!important;object-fit:cover;border-radius:10px}
.bc-page .bs-uitjes .bs-card .bs-card-title{margin:2px 0 2px!important;font-size:16px!important;padding:0!important}
.bc-page .bs-uitjes .bs-card .bs-card-text{margin:0!important;padding:0!important;font-size:14px!important}
}
