/* kc-blocks v1 01-11-2026 (programme G2, row PG2-1). Shared component classes for the Group 1-4 builds (season camp list, camp price row, what-to-expect, trust line, price trio, organiser facts).
   Every class is new and prefixed .kc-b- ; no existing markup uses them, so this file changes nothing on any page until a later module prints these classes. Uses only tokens from kc-tokens-01-11.css.
   Kill switch and undo: same as kc-tokens-01-11.css. */
.kc-b-section { margin: var(--kc-space-3) 0; }
.kc-b-card { border: 1px solid var(--kc-navy); border-radius: var(--kc-radius); background: var(--kc-white); color: var(--kc-ink); padding: var(--kc-space-2); }
.kc-b-chip { display: inline-flex; align-items: center; min-height: var(--kc-tap); padding: 0 14px; border: 1px solid var(--kc-line); border-radius: var(--kc-radius-pill); background: var(--kc-white); color: var(--kc-ink); text-decoration: none; }
.kc-b-chips { display: flex; flex-wrap: wrap; gap: var(--kc-space); }
.kc-b-chips--sticky { position: sticky; top: 0; z-index: 5; background: var(--kc-white); padding: var(--kc-space) 0; }
.kc-b-btn { display: inline-flex; align-items: center; justify-content: center; min-height: var(--kc-tap); padding: 0 var(--kc-space-3); border-radius: var(--kc-radius); background: var(--kc-accent); color: var(--kc-accent-ink); font-weight: 600; text-decoration: none; }
.kc-b-link { color: var(--kc-link); }
.kc-b-muted { color: var(--kc-muted); }
.kc-b-price { font-weight: 600; color: var(--kc-ink); }
.kc-b-note { font-size: 14px; color: var(--kc-muted); margin: var(--kc-space) 0 0; }
.kc-b-row { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--kc-space); padding: var(--kc-space) 0; border-bottom: 1px solid var(--kc-line); }
