/* ============================================================
   De Kwelpiepers in cijfers
   ============================================================ */
.cijfers-body{background:var(--blue-950)}

.cf-kop{position:relative;padding:clamp(8rem,16vh,11rem) 0 clamp(3rem,7vh,4.5rem);overflow:hidden}
.cf-kop h1{
  font-family:var(--font-display);text-transform:uppercase;
  font-size:clamp(2.2rem,6.4vw,5.4rem);line-height:1;margin:.9rem 0 1.2rem;
}
.cf-kop .lead{max-width:52ch}

/* de grote getallen bovenaan */
.cf-groot{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-top:2.4rem}
.cf-groot div{
  padding:1.1rem 1.2rem;border-radius:16px;
  background:linear-gradient(160deg,rgba(27,58,245,.2),rgba(6,10,43,.4));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);
}
.cf-groot b{
  display:block;font-family:var(--font-display);color:var(--yellow);line-height:1;
  font-size:clamp(1.8rem,3.6vw,2.9rem);
}
.cf-groot span{display:block;margin-top:.45rem;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55)}

.cf-tussenkop{
  margin:2.6rem 0 1.2rem;font-family:var(--font-display);text-transform:uppercase;
  font-size:clamp(1.05rem,2vw,1.4rem);color:rgba(255,255,255,.75);letter-spacing:.02em;
}

/* ---- staafgrafieken ---- */
.cf-grafiek{
  margin-top:1.6rem;padding:clamp(1rem,2.4vw,1.8rem) clamp(.8rem,2vw,1.6rem) .9rem;
  border-radius:20px;background:rgba(255,255,255,.04);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
.panel-blue .cf-grafiek{background:rgba(6,10,43,.22)}
.cf-plot{position:relative}
.cf-lijnen{position:absolute;inset:0 0 30px;display:flex;flex-direction:column;justify-content:space-between}
.cf-lijnen i{display:block;height:1px;background:rgba(255,255,255,.08)}
.cf-staven{
  position:relative;display:flex;align-items:flex-end;gap:clamp(2px,.7vw,10px);
  height:clamp(190px,30vh,300px);padding-bottom:30px;
}
.cf-kolom{
  flex:1;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;
  height:100%;position:relative;border-radius:8px;transition:background .2s;
}
.cf-kolom:hover,.cf-kolom:focus-visible{background:rgba(255,255,255,.06);outline:none}
.cf-paar{display:flex;align-items:flex-end;gap:2px;width:100%;height:100%;justify-content:center}
.cf-balk{
  display:block;width:100%;max-width:22px;height:0;border-radius:5px 5px 2px 2px;
  background:linear-gradient(180deg,var(--yellow),#ffae00);
  transition:height .9s cubic-bezier(.22,1,.36,1);
}
.cf-balk.foto{background:rgba(255,255,255,.24);max-width:9px;transition-delay:.12s}
.panel-blue .cf-balk{background:linear-gradient(180deg,var(--yellow),#ffc400)}
.cf-kolom.hoogste .cf-balk{background:linear-gradient(180deg,#fff,var(--yellow));box-shadow:0 0 18px rgba(255,224,27,.5)}
.cf-getal{
  position:absolute;top:-2px;font-size:.64rem;font-weight:800;color:rgba(255,255,255,.55);
  opacity:0;transition:opacity .2s;pointer-events:none;
}
.cf-kolom:hover .cf-getal,.cf-kolom:focus-visible .cf-getal,.cf-kolom.hoogste .cf-getal{opacity:1;color:#fff}
.cf-label{
  position:absolute;bottom:-22px;font-size:.62rem;letter-spacing:.02em;
  color:rgba(255,255,255,.45);white-space:nowrap;
}
.cf-kolom.hoogste .cf-label{color:var(--yellow);font-weight:700}
.cf-uitleg{
  display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;margin:.9rem 0 0;
  font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.5);
}
.cf-uitleg .vlek{display:inline-block;width:11px;height:11px;border-radius:3px;background:var(--yellow);margin-right:.45rem;vertical-align:-1px}
.cf-uitleg .vlek.licht{background:rgba(255,255,255,.3)}
@media (max-width:640px){
  .cf-label{font-size:.5rem;transform:rotate(-52deg);transform-origin:top center;bottom:2px}
  .cf-balk.foto{display:none}
}

/* ---- woorden ---- */
.cf-woorden{
  display:grid;gap:.5rem;margin-top:1.6rem;padding:clamp(.9rem,2vw,1.4rem);
  border-radius:20px;background:rgba(255,255,255,.04);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
.cf-woord{
  display:grid;grid-template-columns:minmax(120px,auto) 1fr auto;align-items:center;gap:.9rem;
  padding:.55rem .9rem;border-radius:12px;background:rgba(255,255,255,.05);
}
.cf-woord b{font-family:var(--font-display);color:var(--yellow);font-size:1.05rem}
.cf-woord .staaf{height:10px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden}
.cf-woord .staaf i{display:block;height:100%;width:0;border-radius:99px;background:var(--yellow);transition:width 1s cubic-bezier(.22,1,.36,1)}
.cf-woord span{color:rgba(255,255,255,.65);font-size:.85rem;white-space:nowrap}

.cf-wolk{
  display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;align-items:baseline;justify-content:center;
  padding:clamp(1.2rem,3vw,2rem);border-radius:20px;
  background:radial-gradient(120% 120% at 50% 0,rgba(27,58,245,.22),rgba(255,255,255,.03));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
.cf-wolk span{
  font-family:var(--font-display);text-transform:uppercase;line-height:1;
  color:rgba(255,255,255,.85);transition:color .2s,transform .2s;cursor:default;
}
.cf-wolk span:hover{color:var(--yellow);transform:translateY(-3px)}

/* ---- wist je dat ---- */
.cf-kaarten{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:1.6rem}
.cf-kaart{
  padding:1.3rem;border-radius:18px;background:var(--blue-900);color:#fff;
  box-shadow:0 18px 44px rgba(6,10,43,.24);
}
.cf-kaart .kicker{color:var(--yellow)}
.cf-kaart b{
  display:block;margin:.6rem 0 .3rem;font-family:var(--font-display);
  font-size:clamp(1.3rem,2.4vw,1.8rem);line-height:1.05;
}
.cf-kaart p{margin:0;color:rgba(255,255,255,.7);font-size:.9rem}
.cf-kaart a{color:var(--yellow);font-weight:700}

@media (prefers-reduced-motion:reduce){
  .cf-balk,.cf-woord .staaf i{transition:none}
}

/* snel naar een onderdeel */
.springknoppen{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:2.2rem}
#perjaar,#maanden,#verslagen,#records{scroll-margin-top:84px}

/* ---------- het kleurenpalet per jaar ---------- */
.cf-palet{display:grid;gap:.35rem}
.cf-jaarstreep{
  display:grid;grid-template-columns:3.4rem minmax(0,1fr);gap:.8rem;align-items:center;
  padding:.25rem .4rem;border-radius:10px;color:#fff;
  transition:background .2s var(--ease),transform .2s var(--ease);
}
.cf-jaarstreep:hover{background:rgba(255,255,255,.08);transform:translateX(3px)}
.cf-jaarnaam{font-family:var(--font-display);font-size:.86rem;color:rgba(255,255,255,.65)}
.cf-jaarstreep:hover .cf-jaarnaam{color:var(--yellow)}
.cf-streep{
  display:block;height:clamp(16px,2.4vh,26px);border-radius:6px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
}
@media (max-width:520px){
  .cf-jaarstreep{grid-template-columns:2.8rem minmax(0,1fr);gap:.5rem}
}
