/*
Theme Name:   VZQ-K Racing (Astra child)
Theme URI:    https://dklatt.nl/
Description:  Child theme van Astra met de VZQ-K Racing huisstijl: helmkleuren (fluor limegroen + kobaltblauw) op blauwzwart, condensed racing-typografie en een kant-en-klare startpagina-template voor Djayden Klatt. Werkt samen met Elementor, Spectra en The Events Calendar.
Author:       Gemaakt voor Djayden Klatt / VZQ-K Racing
Template:     astra
Version:      2.8.1
Requires PHP: 7.4
Text Domain:  vzqk
*/

/* ============================================================
   1. HUISSTIJL-TOKENS
   Kleuren komen uit Djayden's helm: fluor limegroen, kobaltblauw
   en het vlamoranje uit het helmdessin.
   Pas hier aan en de hele site verandert mee.
   ============================================================ */
:root{
    --vzqk-void:#070A12;
    --vzqk-carbon:#0D1322;
    --vzqk-carbon-2:#131B2C;
    --vzqk-line:#243049;
    --vzqk-line-soft:#1A2337;
    --vzqk-text:#EDF1F8;
    --vzqk-muted:#93A1BC;
    --vzqk-lime:#C8F02A;
    --vzqk-lime-soft:#DCF96E;
    --vzqk-blue:#2547E6;
    --vzqk-blue-soft:#6B86FF;
    --vzqk-flame:#FF5A1E;
    --vzqk-on-accent:#0A0F1C;
    --vzqk-display:"Antonio","Arial Narrow",Impact,sans-serif;
    --vzqk-body:"Barlow","Helvetica Neue",Arial,sans-serif;
    --vzqk-mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace;
    --vzqk-gut:clamp(18px,5vw,64px);
    --vzqk-maxw:1180px;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    margin:0;
    background:var(--vzqk-void);
    color:var(--vzqk-text);
    font-family:var(--vzqk-body);
    font-size:17px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  img{max-width:100%;display:block}
  a{color:inherit}
  h1,h2,h3{font-family:var(--vzqk-display);font-weight:700;text-wrap:balance;margin:0;line-height:.98;text-transform:uppercase;letter-spacing:.01em}
  p{margin:0 0 1em}
  :focus-visible{outline:3px solid var(--vzqk-lime);outline-offset:3px}

  .vzqk-wrap{max-width:var(--vzqk-maxw);margin:0 auto;padding-inline:var(--vzqk-gut)}
  .vzqk-eyebrow{
    font-family:var(--vzqk-mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;
    color:var(--vzqk-lime);display:inline-flex;align-items:center;gap:.6em;margin:0 0 .9rem;
  }
  .vzqk-eyebrow::before{content:"";width:26px;height:3px;background:var(--vzqk-lime);transform:skewX(-24deg)}
  .vzqk-sec{padding-block:clamp(64px,9vw,124px);position:relative}
  .vzqk-sec-head{max-width:62ch;margin-bottom:clamp(28px,4vw,48px)}
  .vzqk-sec-head h2{font-size:clamp(2.1rem,6vw,3.6rem)}
  .vzqk-sec-head p{color:var(--vzqk-muted);margin-top:1rem;font-size:1.05rem}
  .vzqk-lede{color:var(--vzqk-muted)}

  /* ---------- ticker ---------- */
  .vzqk-ticker{
    background:var(--vzqk-blue);color:#fff;font-family:var(--vzqk-mono);font-weight:600;
    font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;
    padding:9px var(--vzqk-gut);display:flex;gap:1.4rem;align-items:center;justify-content:center;
    flex-wrap:wrap;text-align:center;
  }
  .vzqk-ticker .vzqk-dot{width:7px;height:7px;border-radius:50%;background:var(--vzqk-lime);display:inline-block;animation:blip 2s infinite}
  @keyframes blip{0%,100%{opacity:1}50%{opacity:.25}}

  /* ---------- nav ---------- */
  .vzqk-nav{
    position:sticky;top:0;z-index:50;background:rgba(7,10,18,.86);
    backdrop-filter:blur(14px);border-bottom:1px solid var(--vzqk-line-soft);
  }
  .vzqk-nav-in{display:flex;align-items:center;gap:1.4rem;height:68px}
  .vzqk-brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;margin-right:auto}
  .vzqk-brand .vzqk-mark{
    width:38px;height:38px;background:var(--vzqk-lime);display:grid;place-items:center;
    transform:skewX(-10deg);font-family:var(--vzqk-display);font-size:1.15rem;color:var(--vzqk-on-accent);font-weight:700;
  }
  .vzqk-brand .vzqk-mark span{transform:skewX(10deg)}
  .vzqk-brand b{font-family:var(--vzqk-display);font-size:1.22rem;letter-spacing:.02em;text-transform:uppercase;line-height:1}
  .vzqk-brand small{display:block;font-family:var(--vzqk-mono);font-size:.6rem;letter-spacing:.2em;color:var(--vzqk-muted);text-transform:uppercase;margin-top:3px}
  .vzqk-links{display:flex;gap:1.5rem}
  .vzqk-links a{
    font-family:var(--vzqk-mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;
    text-decoration:none;color:var(--vzqk-muted);padding-block:4px;border-bottom:2px solid transparent;transition:.18s;
  }
  .vzqk-links a:hover{color:var(--vzqk-text);border-color:var(--vzqk-lime)}
  @media (max-width:940px){.vzqk-links{display:none}}

  .vzqk-btn{
    display:inline-flex;align-items:center;gap:.6em;text-decoration:none;
    font-family:var(--vzqk-mono);font-size:.76rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
    padding:.85em 1.5em;transform:skewX(-10deg);border:1px solid transparent;transition:.18s;white-space:nowrap;
  }
  .vzqk-btn>*{transform:skewX(10deg)}
  .vzqk-btn-solid{background:var(--vzqk-lime);color:var(--vzqk-on-accent)}
  .vzqk-btn-solid:hover{background:var(--vzqk-lime-soft)}
  .vzqk-btn-ghost{border-color:var(--vzqk-line);color:var(--vzqk-text)}
  .vzqk-btn-ghost:hover{border-color:var(--vzqk-lime);color:var(--vzqk-lime)}

  /* ---------- hero ---------- */
  .vzqk-hero{position:relative;overflow:hidden;padding-block:clamp(38px,5vw,68px) clamp(84px,10vw,140px)}
  .vzqk-hero-photo{
    position:absolute;inset:0;z-index:0;pointer-events:none;
    /* achtergrondfoto wordt via functions.php ingeladen */
    background-size:cover;background-position:68% 34%;
  }
  .vzqk-hero-photo::after{
    content:"";position:absolute;inset:0;
    background:
      linear-gradient(90deg,var(--vzqk-void) 12%,rgba(7,10,18,.86) 38%,rgba(7,10,18,.34) 66%,rgba(7,10,18,.64) 100%),
      linear-gradient(180deg,rgba(7,10,18,.50) 0%,rgba(7,10,18,.12) 26%,rgba(7,10,18,.90) 96%);
  }
  @media (max-width:900px){
    .vzqk-hero-photo{background-position:50% 28%;opacity:.55}
    .vzqk-hero-photo::after{background:linear-gradient(180deg,rgba(7,10,18,.72) 0%,rgba(7,10,18,.88) 55%,var(--vzqk-void) 100%)}
  }
  .vzqk-hero::before{
    content:"";position:absolute;inset:0;z-index:1;
    background:
      radial-gradient(880px 520px at 82% 6%,rgba(37,71,230,.26),transparent 66%),
      radial-gradient(620px 420px at 10% 90%,rgba(200,240,42,.11),transparent 62%),
      repeating-linear-gradient(115deg,rgba(255,255,255,.030) 0 1px,transparent 1px 22px);
    pointer-events:none;
  }
  .vzqk-hero::after{
    content:"";position:absolute;left:-10%;right:-10%;bottom:-1px;height:110px;z-index:1;
    background:var(--vzqk-void);transform:skewY(-2.6deg);transform-origin:bottom left;
  }
  .vzqk-hero-in{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr);gap:clamp(32px,5vw,64px);align-items:end}
  @media (max-width:900px){.vzqk-hero-in{grid-template-columns:1fr;align-items:start}}
  .vzqk-ghost{
    position:absolute;right:-3%;top:auto;bottom:4%;font-family:var(--vzqk-display);font-weight:700;
    font-size:clamp(9rem,26vw,22rem);line-height:.8;color:transparent;
    -webkit-text-stroke:1px rgba(237,241,248,.055);text-stroke:1px rgba(237,241,248,.055);
    z-index:1;pointer-events:none;user-select:none;letter-spacing:-.02em;
  }
  .vzqk-hero-title{font-size:clamp(2.7rem,8.2vw,6.1rem);line-height:.96;letter-spacing:-.005em}
  /* Antonio is een smalle displayletter met hoge stokken en een J met staart.
     Onder 0.95 raken de regels elkaar. Niet verder verlagen. */
  .vzqk-hero-title .vzqk-thin{font-weight:400;color:var(--vzqk-muted)}
  .vzqk-hero-title .vzqk-hl{color:var(--vzqk-lime)}
  .vzqk-hero-title{text-shadow:0 2px 24px rgba(7,10,18,.75)}
  .vzqk-hero-kicker{
    font-family:var(--vzqk-mono);font-size:.78rem;letter-spacing:.24em;text-transform:uppercase;
    color:var(--vzqk-muted);margin:0 0 1.4rem;display:flex;gap:.8rem;flex-wrap:wrap;align-items:center;
  }
  .vzqk-hero-kicker b{color:var(--vzqk-text);font-weight:600}
  .vzqk-hero-kicker{margin-bottom:1.1rem}
  .vzqk-hero .vzqk-pitch{max-width:50ch;color:var(--vzqk-muted);font-size:1.05rem;margin-top:1.3rem}
  .vzqk-hero-cta{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:1.6rem}
  .vzqk-fade-up{animation:fadeUp .7s cubic-bezier(.2,.7,.3,1) both}
  .vzqk-d1{animation-delay:.05s}.vzqk-d2{animation-delay:.15s}.vzqk-d3{animation-delay:.25s}.vzqk-d4{animation-delay:.35s}
  @keyframes fadeUp{from{opacity:.001;transform:translateY(16px)}to{opacity:1;transform:none}}

  /* next race card */
  .vzqk-racecard{
    background:linear-gradient(160deg,rgba(19,27,44,.70),rgba(13,19,34,.78));
    backdrop-filter:blur(12px) saturate(115%);-webkit-backdrop-filter:blur(12px) saturate(115%);
    border:1px solid var(--vzqk-line);border-left:4px solid var(--vzqk-blue);
    padding:1.6rem 1.5rem;position:relative;
  }
  .vzqk-racecard .vzqk-lbl{font-family:var(--vzqk-mono);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--vzqk-lime);margin-bottom:.9rem}
  .vzqk-racecard h3{font-size:1.9rem;margin-bottom:.35rem}
  .vzqk-racecard .vzqk-meta{font-family:var(--vzqk-mono);font-size:.8rem;color:var(--vzqk-muted);letter-spacing:.05em}
  .vzqk-countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-top:1.4rem;border-top:1px solid var(--vzqk-line);padding-top:1.2rem}
  .vzqk-cd{text-align:center}
  .vzqk-cd b{display:block;font-family:var(--vzqk-mono);font-size:1.55rem;font-weight:600;font-variant-numeric:tabular-nums;line-height:1}
  .vzqk-cd span{font-family:var(--vzqk-mono);font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:var(--vzqk-muted)}

  /* ---------- stats ---------- */
  .vzqk-stats{border-block:1px solid var(--vzqk-line-soft);background:linear-gradient(180deg,rgba(37,71,230,.10),transparent)}
  .vzqk-stats-in{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--vzqk-line-soft)}
  @media (max-width:760px){.vzqk-stats-in{grid-template-columns:repeat(2,1fr)}}
  .vzqk-stat{background:var(--vzqk-void);padding:1.7rem 1.2rem}
  .vzqk-stat b{display:block;font-family:var(--vzqk-display);font-size:clamp(2.2rem,5vw,3rem);line-height:.9;font-variant-numeric:tabular-nums}
  .vzqk-stat b i{font-style:normal;color:var(--vzqk-lime);font-size:.55em;vertical-align:.25em;margin-left:.1em}
  .vzqk-stat span{display:block;font-family:var(--vzqk-mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--vzqk-muted);margin-top:.7rem}

  /* ---------- over ---------- */
  .vzqk-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,5vw,68px);align-items:start}
  @media (max-width:860px){.vzqk-split{grid-template-columns:1fr}}
  .vzqk-factlist{list-style:none;margin:0;padding:0;border-top:1px solid var(--vzqk-line-soft)}
  .vzqk-factlist li{display:flex;gap:1rem;justify-content:space-between;padding:.85rem 0;border-bottom:1px solid var(--vzqk-line-soft);font-family:var(--vzqk-mono);font-size:.82rem}
  .vzqk-factlist li span:first-child{color:var(--vzqk-muted);letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;padding-top:.15em}
  .vzqk-factlist li span:last-child{text-align:right}
  .vzqk-quote{
    border-left:3px solid var(--vzqk-lime);padding:.2rem 0 .2rem 1.4rem;margin:2rem 0 0;
    font-family:var(--vzqk-display);font-size:clamp(1.4rem,3.2vw,2rem);line-height:1.05;text-transform:uppercase;
  }
  .vzqk-quote cite{display:block;font-family:var(--vzqk-mono);font-size:.7rem;letter-spacing:.18em;color:var(--vzqk-muted);font-style:normal;margin-top:.9rem;text-transform:uppercase}

  /* ---------- team ---------- */
  .vzqk-team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
  @media (max-width:860px){.vzqk-team-grid{grid-template-columns:1fr}}
  .vzqk-driver{
    position:relative;background:var(--vzqk-carbon);border:1px solid var(--vzqk-line-soft);
    padding:1.6rem 1.4rem 1.4rem;overflow:hidden;transition:.22s;
  }
  .vzqk-driver::after{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--vzqk-line);transition:.22s}
  .vzqk-driver:hover{border-color:var(--vzqk-line);transform:translateY(-3px)}
  .vzqk-driver:hover::after{background:var(--vzqk-lime)}
  .vzqk-driver .vzqk-num{font-family:var(--vzqk-mono);font-size:.68rem;letter-spacing:.2em;color:var(--vzqk-lime)}
  .vzqk-driver-head{display:flex;gap:1rem;align-items:center;margin-bottom:1.1rem}
  .vzqk-driver-photo{
    flex:0 0 auto;width:78px;height:78px;border-radius:50%;overflow:hidden;
    background:var(--vzqk-carbon-2);border:1px solid var(--vzqk-line);transition:.22s;
  }
  .vzqk-driver-photo img{width:100%;height:100%;object-fit:cover;display:block}
  .vzqk-driver:hover .vzqk-driver-photo{border-color:var(--vzqk-lime)}
  .vzqk-driver-head h3{margin:.3rem 0 .35rem;font-size:1.4rem}
  .vzqk-driver-head .vzqk-role{margin-bottom:0}
  @media (max-width:400px){.vzqk-driver-photo{width:64px;height:64px}}
  .vzqk-driver h3{font-size:1.65rem;margin:.7rem 0 .5rem}
  .vzqk-driver .vzqk-role{font-family:var(--vzqk-mono);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--vzqk-muted);margin-bottom:1rem}
  .vzqk-driver p{font-size:.95rem;color:var(--vzqk-muted);margin:0}

  /* ---------- resultaten (timing tower) ---------- */
  .vzqk-tower{border:1px solid var(--vzqk-line-soft);background:var(--vzqk-carbon);overflow-x:auto}
  .vzqk-timing{width:100%;border-collapse:collapse;font-family:var(--vzqk-mono);font-size:.84rem;min-width:620px}
  .vzqk-timing th{
    text-align:left;font-weight:500;font-size:.63rem;letter-spacing:.18em;text-transform:uppercase;
    color:var(--vzqk-muted);padding:.9rem 1rem;border-bottom:1px solid var(--vzqk-line);background:var(--vzqk-carbon-2);white-space:nowrap;
  }
  .vzqk-timing td{padding:.78rem 1rem;border-bottom:1px solid var(--vzqk-line-soft);white-space:nowrap;font-variant-numeric:tabular-nums}
  .vzqk-timing tr:last-child td{border-bottom:0}
  .vzqk-timing tbody tr:hover{background:rgba(200,240,42,.055)}
  .vzqk-pos{display:inline-grid;place-items:center;min-width:2.4em;padding:.2em .45em;font-weight:600;background:var(--vzqk-line);color:var(--vzqk-text)}
  .vzqk-pos.vzqk-p1{background:var(--vzqk-lime);color:var(--vzqk-on-accent)}
  .vzqk-pos.vzqk-p2,.vzqk-pos.vzqk-p3{background:rgba(37,71,230,.32);color:var(--vzqk-blue-soft)}
  .vzqk-fl{color:var(--vzqk-flame);font-size:.7rem;letter-spacing:.1em}
  .vzqk-timing td.vzqk-circuit{font-family:var(--vzqk-body);font-weight:600;letter-spacing:.01em}
  .vzqk-timing td.vzqk-muted{color:var(--vzqk-muted)}
  .vzqk-tower-foot{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:center;margin-top:1.1rem;font-family:var(--vzqk-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--vzqk-muted)}

  /* ---------- agenda ---------- */
  .vzqk-round{
    display:grid;grid-template-columns:auto 1fr auto;gap:clamp(14px,3vw,32px);align-items:center;
    padding:1.35rem 0;border-bottom:1px solid var(--vzqk-line-soft);transition:.2s;
  }
  .vzqk-round:first-child{border-top:1px solid var(--vzqk-line-soft)}
  .vzqk-round:hover{background:linear-gradient(90deg,rgba(200,240,42,.07),transparent);padding-inline:.8rem}
  .vzqk-round .vzqk-date{font-family:var(--vzqk-mono);font-size:.78rem;letter-spacing:.1em;color:var(--vzqk-lime);min-width:6.5em;font-variant-numeric:tabular-nums}
  .vzqk-round h3{font-size:clamp(1.15rem,3vw,1.6rem)}
  .vzqk-round .vzqk-sub{font-family:var(--vzqk-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--vzqk-muted);margin-top:.35rem}
  .vzqk-round .vzqk-time{font-family:var(--vzqk-mono);font-size:.76rem;color:var(--vzqk-muted);white-space:nowrap}
  @media (max-width:640px){.vzqk-round{grid-template-columns:1fr;gap:.5rem}.vzqk-round .vzqk-time{text-align:left}}

  /* ---------- media ---------- */
  .vzqk-shots{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}
  @media (max-width:860px){.vzqk-shots{grid-template-columns:repeat(2,1fr)}}
  .vzqk-shot{
    position:relative;aspect-ratio:4/3;max-width:100%;overflow:hidden;border:1px solid var(--vzqk-line-soft);
    background:
      linear-gradient(135deg,rgba(37,71,230,.30),rgba(200,240,42,.13) 48%,transparent 72%),
      repeating-linear-gradient(115deg,rgba(255,255,255,.035) 0 1px,transparent 1px 14px),
      var(--vzqk-carbon);
    display:grid;place-items:end start;padding:.9rem;
  }
  .vzqk-shot span{
    position:relative;z-index:2;font-family:var(--vzqk-mono);font-size:.62rem;
    letter-spacing:.14em;text-transform:uppercase;color:var(--vzqk-muted);line-height:1.5;
  }
  /* Foto gevuld: bijschrift als balk onderlangs, zodat hij nooit wegvalt */
  .vzqk-shot.vzqk-has-img{padding:0;display:block;position:relative}
  .vzqk-shot.vzqk-has-img img{width:100%;height:100%;object-fit:cover;display:block}
  .vzqk-shot.vzqk-has-img span{
    position:absolute;left:0;right:0;bottom:0;
    padding:1.6rem .9rem .7rem;
    color:var(--vzqk-text);line-height:1.5;
    background:linear-gradient(to top,rgba(7,10,18,.92) 0%,rgba(7,10,18,.72) 45%,rgba(7,10,18,0) 100%);
  }

  /* ---------- sponsors ---------- */
  .vzqk-sponsors{background:var(--vzqk-carbon);border-block:1px solid var(--vzqk-line-soft);position:relative;overflow:hidden}
  .vzqk-sponsors::before{
    content:"";position:absolute;inset:0;
    background:repeating-linear-gradient(115deg,rgba(255,255,255,.022) 0 1px,transparent 1px 26px);pointer-events:none;
  }
  .vzqk-logo-wall{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--vzqk-line-soft);border:1px solid var(--vzqk-line-soft)}
  @media (max-width:760px){.vzqk-logo-wall{grid-template-columns:1fr}}
  .vzqk-logo{background:var(--vzqk-carbon);padding:1.3rem;text-decoration:none;transition:.2s;display:block}
  .vzqk-logo:hover{background:var(--vzqk-carbon-2)}
  /* De plaat achter een sponsorlogo is standaard donker: logo's die je van
     een bedrijf krijgt zijn vaak wit of grijstint, gemaakt voor een donkere
     achtergrond. Heeft een sponsor juist een donker logo, zet dan per sponsor
     "logo op een witte ondergrond" aan (Aanpassen → 14 · Sponsorenpagina). */
  .vzqk-logo .vzqk-plate{
    display:grid;place-items:center;background:var(--vzqk-carbon-2);
    border:1px solid var(--vzqk-line-soft);
    padding:1.1rem;margin-bottom:1.1rem;min-height:104px;transition:.2s;
  }
  .vzqk-logo:hover .vzqk-plate{background:var(--vzqk-void);border-color:var(--vzqk-line)}
  .vzqk-logo .vzqk-plate.vzqk-licht{background:#F4F7FC;border-color:#F4F7FC}
  .vzqk-logo:hover .vzqk-plate.vzqk-licht{background:#fff;border-color:#fff}
  .vzqk-logo .vzqk-plate img{max-height:64px;width:auto;object-fit:contain}
  .vzqk-logo b{display:block;font-family:var(--vzqk-display);font-size:1.3rem;text-transform:uppercase;letter-spacing:.01em}
  .vzqk-logo .vzqk-desc{display:block;font-family:var(--vzqk-mono);font-size:.66rem;letter-spacing:.1em;color:var(--vzqk-muted);margin-top:.5rem;text-transform:uppercase;line-height:1.5}

  .vzqk-tiers{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:clamp(28px,4vw,44px)}
  @media (max-width:1000px){.vzqk-tiers{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:560px){.vzqk-tiers{grid-template-columns:1fr}}
  .vzqk-tier{
    background:var(--vzqk-void);border:1px solid var(--vzqk-line-soft);padding:1.5rem 1.3rem;
    display:flex;flex-direction:column;gap:1rem;position:relative;transition:.22s;
  }
  .vzqk-tier:hover{border-color:var(--vzqk-line);transform:translateY(-3px)}
  .vzqk-tier .vzqk-tname{font-family:var(--vzqk-display);font-size:1.5rem;text-transform:uppercase;line-height:1}
  .vzqk-tier .vzqk-price{font-family:var(--vzqk-mono);font-size:1.55rem;font-weight:600;font-variant-numeric:tabular-nums;line-height:1}
  .vzqk-tier .vzqk-price small{display:block;font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--vzqk-muted);font-weight:400;margin-top:.5rem}
  .vzqk-tier ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem;font-size:.9rem;color:var(--vzqk-muted);flex:1}
  .vzqk-tier li{display:flex;gap:.6rem;line-height:1.4}
  .vzqk-tier li::before{content:"";flex:0 0 auto;width:10px;height:2px;background:var(--vzqk-lime);margin-top:.66em;transform:skewX(-24deg)}
  .vzqk-tier.vzqk-feature{border-color:var(--vzqk-lime);background:linear-gradient(170deg,rgba(200,240,42,.10),var(--vzqk-void) 60%)}
  .vzqk-tier .vzqk-flag{
    position:absolute;top:0;right:0;background:var(--vzqk-lime);color:var(--vzqk-on-accent);
    font-family:var(--vzqk-mono);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;padding:.35em .7em;font-weight:600;
  }
  .vzqk-note{
    margin-top:1.4rem;border:1px dashed var(--vzqk-line);padding:1rem 1.2rem;
    font-family:var(--vzqk-mono);font-size:.76rem;color:var(--vzqk-muted);letter-spacing:.04em;line-height:1.7;
  }
  .vzqk-note b{color:var(--vzqk-text)}

  /* ---------- cta ---------- */
  .vzqk-cta{position:relative;overflow:hidden;text-align:center}
  .vzqk-cta::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(760px 420px at 50% 0%,rgba(37,71,230,.30),transparent 68%),radial-gradient(420px 260px at 50% 8%,rgba(200,240,42,.10),transparent 70%);pointer-events:none;
  }
  .vzqk-cta h2{font-size:clamp(2.4rem,8vw,5rem);position:relative}
  .vzqk-cta p{max-width:48ch;margin:1.2rem auto 2rem;color:var(--vzqk-muted);position:relative}
  .vzqk-cta .vzqk-hero-cta{justify-content:center;position:relative}

  /* ---------- footer ---------- */
  .vzqk-site{border-top:1px solid var(--vzqk-line-soft);padding-block:2.6rem;background:var(--vzqk-carbon)}
  .vzqk-foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem}
  @media (max-width:760px){.vzqk-foot-grid{grid-template-columns:1fr}}
  .vzqk-site h4{font-family:var(--vzqk-mono);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--vzqk-lime);margin:0 0 1rem}
  .vzqk-site ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
  .vzqk-site a{text-decoration:none;color:var(--vzqk-muted);font-size:.9rem}
  .vzqk-site a:hover{color:var(--vzqk-text)}
  .vzqk-copy{margin-top:2.4rem;padding-top:1.4rem;border-top:1px solid var(--vzqk-line-soft);font-family:var(--vzqk-mono);font-size:.68rem;letter-spacing:.1em;color:var(--vzqk-muted);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;text-transform:uppercase}

  @media (prefers-reduced-motion:reduce){
    *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  }

/* ============================================================
   6. ASTRA / ELEMENTOR / EVENTS CALENDAR — huisstijl doortrekken
   Zorgt dat de rest van de site dezelfde kleuren krijgt als de
   startpagina, ook in blokken die door Elementor zijn gemaakt.
   ============================================================ */
body,
.ast-container,
#page{
  background-color:var(--vzqk-void);
  color:var(--vzqk-text);
}
body{font-family:var(--vzqk-body)}

h1,h2,h3,h4,.entry-title,.ast-single-post .entry-title{
  font-family:var(--vzqk-display);
  text-transform:uppercase;
  letter-spacing:.01em;
  color:var(--vzqk-text);
}

a{color:var(--vzqk-lime)}
a:hover,a:focus{color:var(--vzqk-lime-soft)}

/* Astra header/footer */
.site-header,
.ast-primary-header-bar,
.ast-header-break-point .site-header{
  background-color:rgba(7,10,18,.94)!important;
  border-bottom:1px solid var(--vzqk-line-soft);
}
.main-header-menu a,
.ast-header-break-point .main-header-menu a{
  color:var(--vzqk-muted)!important;
  font-family:var(--vzqk-mono);
  font-size:.78rem;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.main-header-menu a:hover,
.main-header-menu .current-menu-item > a{color:var(--vzqk-text)!important}
.site-footer,.ast-small-footer{
  background-color:var(--vzqk-carbon)!important;
  color:var(--vzqk-muted);
  border-top:1px solid var(--vzqk-line-soft);
}

/* Knoppen (Astra, Elementor, Contact Form 7) */
/* Let op: géén kale `button`-selector. Die raakt ook de uitklappijlen in het
   menu, sluitknoppen en plugin-bediening — die horen geen limegroen blok te
   worden. Alleen echte actieknoppen krijgen de huisstijl. */
.ast-button,.button,
button[type="submit"],
input[type="submit"],
.wp-block-button__link,
.elementor-button{
  background-color:var(--vzqk-lime)!important;
  color:var(--vzqk-on-accent)!important;
  border-color:var(--vzqk-lime)!important;
  font-family:var(--vzqk-mono);
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
  border-radius:0!important;
}
.ast-button:hover,.button:hover,
button[type="submit"]:hover,input[type="submit"]:hover,
.wp-block-button__link:hover,.elementor-button:hover{
  background-color:var(--vzqk-lime-soft)!important;
  border-color:var(--vzqk-lime-soft)!important;
}

/* Formuliervelden (Contact Form 7) */
input[type="text"],input[type="email"],input[type="tel"],input[type="url"],textarea,select{
  background:var(--vzqk-carbon-2);
  border:1px solid var(--vzqk-line);
  color:var(--vzqk-text);
  border-radius:0;
  font-family:var(--vzqk-body);
}
input:focus,textarea:focus,select:focus{
  border-color:var(--vzqk-lime);
  outline:2px solid rgba(200,240,42,.25);
}

/* The Events Calendar */
.tribe-common,
.tribe-events,
.tribe-common .tribe-common-h1,
.tribe-common .tribe-common-h2,
.tribe-common .tribe-common-h3,
.tribe-common .tribe-common-b1,
.tribe-common .tribe-common-b2{color:var(--vzqk-text)}
.tribe-events .tribe-events-calendar-list__event-title a{color:var(--vzqk-text)}
.tribe-events .tribe-events-calendar-list__event-title a:hover{color:var(--vzqk-lime)}
.tribe-events .tribe-events-calendar-list__event-date-tag-daynum,
.tribe-events .tribe-events-calendar-month__day-date{color:var(--vzqk-lime)}
.tribe-common .tribe-common-c-btn,
.tribe-events .tribe-events-c-subscribe-dropdown__button{
  background-color:var(--vzqk-lime);
  color:var(--vzqk-on-accent);
  border-radius:0;
}
.tribe-events-calendar-list__event-row{border-bottom:1px solid var(--vzqk-line-soft)}

/* Berichten / raceverslagen */
.ast-article-post,.ast-article-single{
  background:var(--vzqk-carbon);
  border:1px solid var(--vzqk-line-soft);
}
blockquote{
  border-left:3px solid var(--vzqk-lime);
  background:var(--vzqk-carbon);
  padding:1rem 1.4rem;
  font-family:var(--vzqk-body);
}
hr,.wp-block-separator{border-color:var(--vzqk-line-soft)}
::selection{background:var(--vzqk-lime);color:var(--vzqk-on-accent)}

/* ============================================================
   7. STARTPAGINA — full-bleed binnen Astra
   Astra zet alle pagina-inhoud in .ast-container met een vaste
   breedte en padding. Voor de startpagina zetten we die uit,
   zodat de hero en de gekleurde secties echt van rand tot rand
   lopen. Geldt alleen op pagina's met de template "VZQ-K Startpagina".
   ============================================================ */
.vzqk-startpagina #content,
.vzqk-startpagina .site-content{
  padding-top:0!important;
  padding-bottom:0!important;
}
.vzqk-startpagina #content .ast-container,
.vzqk-startpagina .site-content > .ast-container{
  max-width:100%!important;
  width:100%!important;
  padding-left:0!important;
  padding-right:0!important;
  display:block!important;
}
.vzqk-startpagina #primary,
.vzqk-startpagina .content-area,
.vzqk-startpagina .ast-article-single,
.vzqk-startpagina .entry-content{
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  max-width:100%!important;
}
/* Paginatitel en meta verbergen — de hero is de titel. */
.vzqk-startpagina .entry-header,
.vzqk-startpagina .ast-single-post-order,
.vzqk-startpagina .post-navigation,
.vzqk-startpagina .ast-author-details{display:none!important}
/* Astra's sidebar staat uit op deze template. */
.vzqk-startpagina #secondary{display:none!important}

/* ============================================================
   8. AGENDAPAGINA
   ============================================================ */
.vzqk-pagehead{position:relative;overflow:hidden;padding-block:clamp(36px,5vw,64px) clamp(44px,6vw,80px)}
.vzqk-pagehead::before{
  content:"";position:absolute;inset:0;z-index:0;
  background-size:cover;background-position:62% 32%;opacity:.5;
}
.vzqk-pagehead::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(90deg,var(--vzqk-void) 14%,rgba(7,10,18,.88) 42%,rgba(7,10,18,.55) 72%,rgba(7,10,18,.8) 100%),
    linear-gradient(180deg,rgba(7,10,18,.55) 0%,rgba(7,10,18,.18) 35%,var(--vzqk-void) 100%);
}
.vzqk-pagehead-in{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:clamp(28px,4vw,56px);align-items:end}
@media (max-width:900px){.vzqk-pagehead-in{grid-template-columns:1fr;align-items:start}}
.vzqk-pagehead h1{font-size:clamp(2.4rem,7vw,4.6rem);line-height:.98;text-shadow:0 2px 22px rgba(7,10,18,.7)}
.vzqk-pagehead p.vzqk-lede{max-width:52ch;margin-top:1.2rem;font-size:1.05rem}

/* maandkop in de kalender */
.vzqk-month{
  display:flex;align-items:center;gap:1rem;margin:clamp(26px,3vw,40px) 0 .2rem;
  font-family:var(--vzqk-mono);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--vzqk-lime);
}
.vzqk-month::after{content:"";flex:1;height:1px;background:var(--vzqk-line-soft)}
.vzqk-month:first-of-type{margin-top:0}

/* races die al gereden zijn */
.vzqk-past{display:grid;gap:1px;background:var(--vzqk-line-soft);border:1px solid var(--vzqk-line-soft)}
.vzqk-past-row{
  background:var(--vzqk-carbon);display:grid;grid-template-columns:7.5em 1fr auto;gap:1rem;align-items:center;
  padding:.85rem 1.1rem;font-family:var(--vzqk-mono);font-size:.82rem;color:var(--vzqk-muted);
}
.vzqk-past-row b{font-family:var(--vzqk-body);font-size:.95rem;font-weight:600;color:var(--vzqk-text)}
.vzqk-past-row .vzqk-date{color:var(--vzqk-muted);font-variant-numeric:tabular-nums}
.vzqk-past-row a{text-decoration:none}
.vzqk-past-row a:hover b{color:var(--vzqk-lime)}
@media (max-width:640px){.vzqk-past-row{grid-template-columns:1fr;gap:.3rem}}

/* abonneren */
.vzqk-subscribe{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(18px,3vw,40px);align-items:center;
  background:var(--vzqk-carbon);border:1px solid var(--vzqk-line-soft);border-left:4px solid var(--vzqk-blue);
  padding:clamp(1.2rem,3vw,2rem);
}
@media (max-width:760px){.vzqk-subscribe{grid-template-columns:1fr}}
.vzqk-subscribe h3{font-size:1.5rem;margin-bottom:.5rem}
.vzqk-subscribe p{color:var(--vzqk-muted);margin:0;font-size:.95rem;max-width:56ch}
.vzqk-subscribe .vzqk-hero-cta{margin-top:0}

/* lege staat */
.vzqk-empty{
  border:1px dashed var(--vzqk-line);padding:1.4rem;color:var(--vzqk-muted);
  font-family:var(--vzqk-mono);font-size:.82rem;
}

/* Racetitels zijn links, maar horen niet limegroen te zijn — pas bij hover. */
.vzqk-round h3 a,
.vzqk-past-row a,
.vzqk-past-row a b{color:var(--vzqk-text);text-decoration:none}
.vzqk-round h3 a:hover,
.vzqk-past-row a:hover b{color:var(--vzqk-lime)}

/* ============================================================
   9. RESULTATEN, BERICHTEN, GALLERIJ, SPONSORPAKKETTEN
   ============================================================ */

/* --- seizoensblokken op de resultatenpagina --- */
.vzqk-season{margin-bottom:clamp(34px,5vw,58px)}
.vzqk-season-head{display:flex;align-items:baseline;gap:1.2rem;flex-wrap:wrap;margin-bottom:1rem}
.vzqk-season-head h2{font-size:clamp(1.8rem,4vw,2.6rem)}
.vzqk-season-head span{
  font-family:var(--vzqk-mono);font-size:.72rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--vzqk-muted);
}
.vzqk-timing td.vzqk-circuit a{color:var(--vzqk-text);text-decoration:none;border-bottom:1px solid var(--vzqk-line)}
.vzqk-timing td.vzqk-circuit a:hover{color:var(--vzqk-lime);border-color:var(--vzqk-lime)}

/* --- raceverslagen --- */
.vzqk-postgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
@media (max-width:980px){.vzqk-postgrid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.vzqk-postgrid{grid-template-columns:1fr}}
.vzqk-post{
  background:var(--vzqk-carbon);border:1px solid var(--vzqk-line-soft);
  display:flex;flex-direction:column;overflow:hidden;transition:.22s;position:relative;
}
.vzqk-post::after{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--vzqk-line);transition:.22s;z-index:2}
.vzqk-post:hover{transform:translateY(-3px)}
.vzqk-post:hover::after{background:var(--vzqk-lime)}
.vzqk-post-beeld{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--vzqk-carbon-2)}
.vzqk-post-beeld img{width:100%;height:100%;object-fit:cover;display:block;transition:.4s}
.vzqk-post:hover .vzqk-post-beeld img{transform:scale(1.04)}
.vzqk-post-leeg{
  display:block;width:100%;height:100%;
  background:
    linear-gradient(135deg,rgba(37,71,230,.28),rgba(200,240,42,.12) 55%,transparent 80%),
    repeating-linear-gradient(115deg,rgba(255,255,255,.035) 0 1px,transparent 1px 14px),
    var(--vzqk-carbon-2);
}
.vzqk-post-body{padding:1.3rem;display:flex;flex-direction:column;gap:.6rem;flex:1}
.vzqk-post-datum{font-family:var(--vzqk-mono);font-size:.68rem;letter-spacing:.16em;color:var(--vzqk-lime)}
.vzqk-post h3{font-size:1.3rem;line-height:1.02}
.vzqk-post h3 a{color:var(--vzqk-text);text-decoration:none}
.vzqk-post:hover h3 a{color:var(--vzqk-lime)}
.vzqk-post p{color:var(--vzqk-muted);font-size:.95rem;margin:0;flex:1}
.vzqk-post-meer{
  font-family:var(--vzqk-mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--vzqk-lime);text-decoration:none;margin-top:.2rem;
}

/* --- paginering --- */
.vzqk-paging{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;margin-top:clamp(28px,4vw,48px)}
.vzqk-paging .page-numbers{
  display:inline-block;padding:.6em 1em;border:1px solid var(--vzqk-line-soft);
  font-family:var(--vzqk-mono);font-size:.76rem;letter-spacing:.1em;color:var(--vzqk-muted);text-decoration:none;
}
.vzqk-paging .page-numbers:hover{border-color:var(--vzqk-lime);color:var(--vzqk-lime)}
.vzqk-paging .page-numbers.current{background:var(--vzqk-lime);border-color:var(--vzqk-lime);color:var(--vzqk-on-accent)}

/* --- pagina-inhoud uit de editor (gallerij, sponsoren, pakketten) --- */
.vzqk-inhoud{color:var(--vzqk-muted);font-size:1.02rem}
.vzqk-inhoud h2,.vzqk-inhoud h3{color:var(--vzqk-text);margin:1.8em 0 .6em}
.vzqk-inhoud h2{font-size:clamp(1.7rem,4vw,2.4rem)}
.vzqk-inhoud h3{font-size:1.35rem}
.vzqk-inhoud p{margin:0 0 1em;max-width:70ch}
.vzqk-inhoud a{color:var(--vzqk-lime)}
.vzqk-inhoud img{height:auto}

/* galerijblokken van WordPress en Spectra */
.vzqk-inhoud .wp-block-gallery,
.vzqk-inhoud .uagb-gallery__outer-wrap{gap:.8rem}
.vzqk-inhoud .wp-block-gallery .wp-block-image,
.vzqk-inhoud .uagb-gallery__item{
  border:1px solid var(--vzqk-line-soft);overflow:hidden;background:var(--vzqk-carbon);
}
.vzqk-inhoud .wp-block-gallery .wp-block-image img,
.vzqk-inhoud .uagb-gallery__item img{
  display:block;width:100%;height:100%;object-fit:cover;transition:.4s;
}
.vzqk-inhoud .wp-block-gallery .wp-block-image:hover img,
.vzqk-inhoud .uagb-gallery__item:hover img{transform:scale(1.04)}
.vzqk-inhoud figcaption{
  font-family:var(--vzqk-mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--vzqk-muted);padding:.5rem .2rem 0;
}

/* --- veelgestelde vragen --- */
.vzqk-faq{display:grid;gap:1px;background:var(--vzqk-line-soft);border:1px solid var(--vzqk-line-soft)}
.vzqk-faq-item{background:var(--vzqk-carbon)}
.vzqk-faq-item summary{
  cursor:pointer;list-style:none;padding:1.1rem 1.3rem;
  font-family:var(--vzqk-body);font-weight:600;color:var(--vzqk-text);
  display:flex;justify-content:space-between;gap:1rem;align-items:center;
}
.vzqk-faq-item summary::-webkit-details-marker{display:none}
.vzqk-faq-item summary::after{
  content:"+";font-family:var(--vzqk-mono);color:var(--vzqk-lime);font-size:1.2rem;line-height:1;flex:0 0 auto;
}
.vzqk-faq-item[open] summary::after{content:"–"}
.vzqk-faq-item summary:hover{color:var(--vzqk-lime)}
.vzqk-faq-item > div{padding:0 1.3rem 1.2rem;color:var(--vzqk-muted);max-width:72ch}

/* ============================================================
   10. BERICHTEN — losse pagina van een raceverslag
   ============================================================ */

/* Astra zet zijn eigen achtergrondkleur op body en op het artikelvlak.
   Die is licht; de site is donker. Hier winnen we dat terug. */
body,
body.wp-singular,
.ast-separate-container,
.ast-plain-container,
#page,
#content,
.ast-article-single,
.ast-article-post,
.ast-separate-container .ast-article-single,
.ast-separate-container .ast-article-post{
  background-color:var(--vzqk-void)!important;
  color:var(--vzqk-text);
}

.vzqk-bericht .vzqk-pagehead{padding-block:clamp(30px,4vw,52px) clamp(40px,5vw,70px)}
.vzqk-bericht .vzqk-pagehead h1{font-size:clamp(2rem,5.4vw,3.7rem)}
.vzqk-bericht-meta{
  font-family:var(--vzqk-mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--vzqk-muted);margin-top:1.2rem;display:flex;gap:1rem;flex-wrap:wrap;align-items:center;
}
.vzqk-bericht-meta b{color:var(--vzqk-lime);font-weight:600}

/* de tekst van het verslag zelf */
.vzqk-artikel{max-width:74ch;margin-inline:auto}
.vzqk-artikel p{margin:0 0 1.25em;color:var(--vzqk-muted);font-size:1.06rem;line-height:1.75}
.vzqk-artikel h2{font-size:clamp(1.6rem,3.6vw,2.3rem);margin:1.8em 0 .5em;color:var(--vzqk-text)}
.vzqk-artikel h3{font-size:1.35rem;margin:1.6em 0 .45em;color:var(--vzqk-text)}
.vzqk-artikel strong{color:var(--vzqk-text)}
.vzqk-artikel a{color:var(--vzqk-lime)}
.vzqk-artikel ul,.vzqk-artikel ol{color:var(--vzqk-muted);padding-left:1.3em;margin:0 0 1.25em}
.vzqk-artikel li{margin-bottom:.45em}
.vzqk-artikel img,.vzqk-artikel figure{max-width:100%;height:auto}
.vzqk-artikel figure{margin:2rem 0}
.vzqk-artikel figcaption{
  font-family:var(--vzqk-mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--vzqk-muted);padding-top:.6rem;
}
.vzqk-artikel blockquote{
  border-left:3px solid var(--vzqk-lime);background:var(--vzqk-carbon);
  padding:1.1rem 1.4rem;margin:2rem 0;color:var(--vzqk-text);
}
.vzqk-artikel .wp-block-image{margin:2rem 0}
.vzqk-artikel hr{border:0;border-top:1px solid var(--vzqk-line-soft);margin:2.5rem 0}

/* Spectra-containers in oude berichten mogen hun eigen achtergrond loslaten */
.vzqk-artikel .wp-block-uagb-container{
  background-color:transparent!important;padding-inline:0!important;
}

/* vorige / volgende */
.vzqk-postnav{
  display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--vzqk-line-soft);
  border:1px solid var(--vzqk-line-soft);margin-top:clamp(32px,5vw,56px);
}
@media (max-width:640px){.vzqk-postnav{grid-template-columns:1fr}}
.vzqk-postnav a{
  background:var(--vzqk-carbon);padding:1.2rem 1.3rem;text-decoration:none;display:block;transition:.2s;
}
.vzqk-postnav a:hover{background:var(--vzqk-carbon-2)}
.vzqk-postnav span{
  display:block;font-family:var(--vzqk-mono);font-size:.66rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--vzqk-lime);margin-bottom:.5rem;
}
.vzqk-postnav b{color:var(--vzqk-text);font-weight:600;font-size:1rem;line-height:1.3;display:block}
.vzqk-postnav .vzqk-next{text-align:right}
@media (max-width:640px){.vzqk-postnav .vzqk-next{text-align:left}}

/* ============================================================
   11. FOTO GALLERY (10Web / BWG) IN DE HUISSTIJL
   De plugin levert zijn eigen lichte vormgeving mee, met inline
   stijlen. Daarom staat hier !important: anders wint de plugin.
   Klassenamen krijgen een nummer mee (bwg-item0, bwg-item1, ...),
   vandaar de [class*=""]-selectors.
   ============================================================ */

.bwg_container,
[class*="bwg_container"]{
  background:transparent!important;
  color:var(--vzqk-text)!important;
}

/* laadvlakken en beeldhouders — waren wit */
[class*="bwg_loading_div"],
[class*="bwg_loading_"],
[class*="bwg_slideshow_image_wrap"],
[class*="bwg_gridlet"],
[class*="bwg_slideshow_image_container"]{
  background-color:var(--vzqk-void)!important;
}

/* de tegels */
[class*="bwg-extended-item"],
[class*="bwg-item"],
[class*="bwg_album_thumb"],
[class*="bwg_thumbnail"] .bwg-item,
.bwg-masonry-thumbnails .bwg-item{
  background-color:var(--vzqk-carbon)!important;
  border-color:var(--vzqk-line-soft)!important;
}

[class*="bwg-extended-item"]{
  border:1px solid var(--vzqk-line-soft)!important;
  transition:.22s;
}
[class*="bwg-extended-item"]:hover{
  border-color:var(--vzqk-lime)!important;
  transform:translateY(-2px);
}

/* titels en bijschriften — waren zwart */
[class*="bwg_title_spun"],
[class*="bwg_title"],
[class*="bwg-title"],
[class*="bwg_album_title"],
.bwg-item .bwg-title1,
.bwg-item .bwg-title2{
  color:var(--vzqk-text)!important;
  font-family:var(--vzqk-body)!important;
  text-shadow:none!important;
}
[class*="bwg_description"],
[class*="bwg-description"],
.bwg-item .bwg-description1,
.bwg-item .bwg-description2{
  color:var(--vzqk-muted)!important;
  font-family:var(--vzqk-body)!important;
}

/* overlay bij hover over een foto */
[class*="bwg_image_info"],
[class*="bwg-item0"] > [class*="bwg-item1"]{
  background-color:rgba(7,10,18,.82)!important;
}

/* knoppen, zoekbalk en sorteren */
.bwg_container input[type="text"],
.bwg_container input[type="search"],
.bwg_container select,
[class*="bwg_search_input"],
[class*="bwg_order_"],
[class*="bwg_tag_select"]{
  background-color:var(--vzqk-carbon-2)!important;
  color:var(--vzqk-text)!important;
  border:1px solid var(--vzqk-line)!important;
  border-radius:0!important;
}
[class*="bwg_search_container"],
[class*="bwg_search_loupe_container"],
[class*="bwg_search_reset_container"]{
  background-color:var(--vzqk-carbon-2)!important;
  color:var(--vzqk-muted)!important;
  border-color:var(--vzqk-line)!important;
}
.bwg_container .bwg_load_more,
[class*="bwg_load_btn"],
[class*="bwg_load_more"]{
  background-color:var(--vzqk-lime)!important;
  color:var(--vzqk-on-accent)!important;
  border:0!important;
  font-family:var(--vzqk-mono)!important;
  letter-spacing:.12em;
  text-transform:uppercase;
}

/* paginering onder de galerij */
[class*="bwg_nav_cont"]{color:var(--vzqk-muted)!important}
[class*="bwg_nav_cont"] a,
[class*="tablenav-pages"] a,
[class*="bwg_page_link"]{color:var(--vzqk-muted)!important;text-decoration:none}
[class*="bwg_nav_cont"] a:hover{color:var(--vzqk-lime)!important}
[class*="bwg_current_page"]{
  background-color:var(--vzqk-carbon-2)!important;
  color:var(--vzqk-text)!important;
  border:1px solid var(--vzqk-line)!important;
}

/* het vergrote beeld (lightbox) */
[class*="bwg_image_wrap"],
.bwg_lightbox,
#spider_popup_wrap,
.bwg_popup_image_spun,
.bwg_popup_image_spun1,
.bwg_popup_image_spun2{
  background-color:var(--vzqk-void)!important;
}
.bwg_image_title,
.bwg_image_description,
[class*="bwg_ctrl_btn"],
[class*="bwg_image_count"]{
  color:var(--vzqk-text)!important;
}

/* bolletjes en pijlen van de diavoorstelling */
[class*="bwg_slideshow_dots_"]{
  background-color:var(--vzqk-line)!important;
  border-radius:50%!important;
}
[class*="bwg_slideshow_dots_active"]{background-color:var(--vzqk-lime)!important}
[class*="bwg_slideshow_left"],
[class*="bwg_slideshow_right"],
[class*="bwg_slideshow_play_pause"]{color:var(--vzqk-text)!important}

/* geen dubbele kaders binnen onze eigen inhoudsbreedte */
.vzqk-inhoud .bwg_container{margin-block:0!important}

/* ============================================================
   12. CONTACTPAGINA + CONTACT FORM 7
   ============================================================ */
.vzqk-contact-grid{
  display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);
  gap:clamp(28px,4vw,56px);align-items:start;
}
@media (max-width:900px){.vzqk-contact-grid{grid-template-columns:1fr}}

.vzqk-contact-kaart{
  background:var(--vzqk-carbon);border:1px solid var(--vzqk-line-soft);
  border-left:4px solid var(--vzqk-blue);padding:1.4rem;margin-bottom:1rem;
}
.vzqk-contact-kaart .vzqk-lbl{
  font-family:var(--vzqk-mono);font-size:.66rem;letter-spacing:.2em;
  text-transform:uppercase;color:var(--vzqk-lime);margin-bottom:.7rem;
}
.vzqk-contact-kaart h3{font-size:1.35rem;margin-bottom:.5rem}
.vzqk-contact-kaart p{color:var(--vzqk-muted);font-size:.95rem;margin:0 0 1rem}
.vzqk-contact-kaart .vzqk-btn{margin-top:.2rem}

/* --- het formulier --- */
.wpcf7{max-width:640px}
.wpcf7 form{display:grid;gap:1.1rem}
.wpcf7 p{margin:0}
.wpcf7 label{
  display:block;font-family:var(--vzqk-mono);font-size:.7rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--vzqk-muted);margin-bottom:.5rem;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="url"],
.wpcf7 input[type="number"],
.wpcf7 input[type="date"],
.wpcf7 select,
.wpcf7 textarea{
  width:100%;
  background:var(--vzqk-carbon-2);
  border:1px solid var(--vzqk-line);
  border-radius:0;
  color:var(--vzqk-text);
  font-family:var(--vzqk-body);
  font-size:1rem;
  padding:.85rem 1rem;
  transition:.18s;
}
.wpcf7 textarea{min-height:170px;resize:vertical}
.wpcf7 input:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus{
  border-color:var(--vzqk-lime);
  outline:2px solid rgba(200,240,42,.22);
  outline-offset:0;
  background:var(--vzqk-carbon);
}
.wpcf7 ::placeholder{color:var(--vzqk-muted);opacity:.7}

/* verstuurknop in de huisstijl */
.wpcf7 input[type="submit"],
.wpcf7 .wpcf7-submit{
  justify-self:start;
  background:var(--vzqk-lime);
  color:var(--vzqk-on-accent);
  border:0;border-radius:0;
  font-family:var(--vzqk-mono);font-weight:600;
  font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;
  padding:.95em 1.8em;
  transform:skewX(-10deg);
  cursor:pointer;transition:.18s;
}
.wpcf7 input[type="submit"]:hover{background:var(--vzqk-lime-soft)}

/* meldingen */
.wpcf7 .wpcf7-response-output{
  border:1px solid var(--vzqk-line)!important;
  border-left:4px solid var(--vzqk-lime)!important;
  background:var(--vzqk-carbon);
  color:var(--vzqk-text);
  margin:0!important;padding:1rem 1.2rem!important;
  font-family:var(--vzqk-body);
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output{border-left-color:var(--vzqk-flame)!important}
.wpcf7 .wpcf7-not-valid-tip{
  color:var(--vzqk-flame);
  font-family:var(--vzqk-mono);font-size:.72rem;letter-spacing:.06em;margin-top:.4rem;
}
.wpcf7 .wpcf7-not-valid{border-color:var(--vzqk-flame)!important}
.wpcf7 .wpcf7-spinner{background-color:var(--vzqk-lime)}

/* akkoordvinkje */
.wpcf7 .wpcf7-acceptance label,
.wpcf7 .wpcf7-checkbox label,
.wpcf7 .wpcf7-radio label{
  display:flex;gap:.7rem;align-items:flex-start;
  font-family:var(--vzqk-body);font-size:.92rem;letter-spacing:0;
  text-transform:none;color:var(--vzqk-muted);
}
.wpcf7 input[type="checkbox"],
.wpcf7 input[type="radio"]{accent-color:var(--vzqk-lime);width:18px;height:18px;margin-top:.15rem}

/* reCAPTCHA-badge niet over de knop */
.grecaptcha-badge{z-index:5}

/* ==========================================================================
   13 · 404-pagina
   ========================================================================== */

.vzqk-404-foto{
  margin:0;border:1px solid var(--vzqk-line);background:var(--vzqk-carbon);
  padding:.6rem;box-shadow:0 24px 60px rgba(7,10,18,.55);
  transform:rotate(-1.2deg);
}
.vzqk-404-foto img{
  display:block;width:100%;height:auto;
  filter:saturate(1.05) contrast(1.04);
}
.vzqk-404-foto figcaption{
  font-family:var(--vzqk-mono);font-size:.7rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--vzqk-muted);
  padding:.8rem .3rem .2rem;
}
@media (max-width:900px){
  .vzqk-404-foto{transform:none;margin-top:2rem}
}

/* --- het zoekveld --- */
.vzqk-zoek{
  display:flex;gap:.8rem;flex-wrap:wrap;align-items:stretch;
  max-width:620px;margin-bottom:clamp(32px,4vw,52px);
}
.vzqk-zoek input[type="search"]{
  flex:1 1 240px;min-width:0;
  background:var(--vzqk-carbon)!important;
  border:1px solid var(--vzqk-line)!important;
  border-left:3px solid var(--vzqk-lime)!important;
  color:var(--vzqk-text)!important;
  font-family:var(--vzqk-body);font-size:1rem;
  padding:.95rem 1.1rem;border-radius:0!important;
  -webkit-appearance:none;appearance:none;
}
.vzqk-zoek input[type="search"]::placeholder{color:var(--vzqk-muted)}
.vzqk-zoek input[type="search"]:focus{
  outline:none;border-color:var(--vzqk-lime)!important;
  box-shadow:0 0 0 3px rgba(200,240,42,.18);
}
.vzqk-zoek .vzqk-btn{flex:0 0 auto;align-self:stretch;display:flex;align-items:center}

/* --- de snelkoppelingen --- */
.vzqk-404-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(14px,2vw,20px);
}
@media (max-width:1000px){.vzqk-404-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.vzqk-404-grid{grid-template-columns:1fr}}
.vzqk-404-kaart{
  position:relative;display:flex;flex-direction:column;text-decoration:none;
  background:var(--vzqk-carbon);border:1px solid var(--vzqk-line-soft);
  border-top:3px solid var(--vzqk-blue);
  padding:1.5rem 1.4rem 1.3rem;
  transition:border-color .2s ease,transform .2s ease,background .2s ease;
}
.vzqk-404-kaart:hover,
.vzqk-404-kaart:focus-visible{
  border-top-color:var(--vzqk-lime);background:var(--vzqk-carbon-2);
  transform:translateY(-3px);
}
.vzqk-404-kaart .vzqk-num{
  display:block;font-family:var(--vzqk-mono);font-size:.68rem;
  letter-spacing:.2em;color:var(--vzqk-lime);margin-bottom:.7rem;
}
.vzqk-404-kaart h3{
  font-family:var(--vzqk-display);font-size:1.3rem;line-height:1.05;
  color:var(--vzqk-text);margin:0 0 .5rem;text-transform:uppercase;
}
.vzqk-404-kaart p{
  color:var(--vzqk-muted);font-size:.92rem;margin:0 0 1.2rem;line-height:1.5;
}
.vzqk-404-kaart .vzqk-post-meer{margin-top:auto}

/* --- Astra's eigen 404 en zoekresultaten donker houden --- */
body.error404,
body.search,
body.error404 #page,
body.search #page,
body.error404 #content,
body.search #content{
  background-color:var(--vzqk-void)!important;color:var(--vzqk-text);
}

/* ==========================================================================
   14 · Zoekresultaten
   ========================================================================== */

.vzqk-post-datum .vzqk-soort{
  display:inline-block;margin-right:.7rem;padding:.18em .55em;
  background:var(--vzqk-blue);color:var(--vzqk-text);
  font-family:var(--vzqk-mono);font-size:.62rem;letter-spacing:.14em;
  text-transform:uppercase;vertical-align:.08em;
}
.vzqk-zoekpagina .vzqk-pagehead h1{
  overflow-wrap:anywhere;   /* een lange zoekterm mag het kader niet breken */
}
.vzqk-zoekpagina .vzqk-pagehead-in{grid-template-columns:minmax(0,1fr)}

/* ==========================================================================
   15 · Astra's eigen overzichtspagina's
   --------------------------------------------------------------------------
   Zoekresultaten, categorie-, tag-, auteur- en datumarchieven krijgen bij
   Astra een lichte kaart (.ast-article-inner, #F1F1F1). Op onze donkere
   achtergrond leest dat als een rij witte blokken.

   search.php neemt de zoekpagina over, maar de archieven laat het thema
   bewust aan Astra. Dit blok zorgt dat die er dan tenminste bij horen.
   ========================================================================== */

body.search,
body.archive,
body.blog,
body.search #page, body.archive #page, body.blog #page,
body.search #content, body.archive #content, body.blog #content,
body.search .site-content, body.archive .site-content, body.blog .site-content{
  background-color:var(--vzqk-void)!important;
  color:var(--vzqk-text);
}

/* de losse resultaatkaarten */
body.search .ast-article-inner,
body.archive .ast-article-inner,
body.blog .ast-article-inner,
body.search .ast-article-post,
body.archive .ast-article-post,
body.blog .ast-article-post,
body.search .ast-separate-container .ast-article-post,
body.archive .ast-separate-container .ast-article-post{
  background-color:var(--vzqk-carbon)!important;
  border:1px solid var(--vzqk-line-soft);
  border-top:3px solid var(--vzqk-blue);
  color:var(--vzqk-text);
}

/* de kop boven een archief ("Zoekresultaten voor:", "Categorie: …") */
body.search .ast-archive-description,
body.archive .ast-archive-description{
  background-color:var(--vzqk-carbon-2)!important;
  border:1px solid var(--vzqk-line-soft);
  border-left:4px solid var(--vzqk-lime);
  color:var(--vzqk-text);
}
body.search .ast-archive-description .page-title,
body.archive .ast-archive-description .page-title{
  font-family:var(--vzqk-display);text-transform:uppercase;
  color:var(--vzqk-text);letter-spacing:.01em;
}
body.search .ast-archive-description p,
body.archive .ast-archive-description p{color:var(--vzqk-muted)}

/* titels, teksten en metaregels in die kaarten */
body.search .entry-title a, body.archive .entry-title a, body.blog .entry-title a,
body.search .entry-title, body.archive .entry-title, body.blog .entry-title{
  font-family:var(--vzqk-display);text-transform:uppercase;
  color:var(--vzqk-text);text-decoration:none;
}
body.search .entry-title a:hover,
body.archive .entry-title a:hover,
body.blog .entry-title a:hover{color:var(--vzqk-lime)}

body.search .entry-content, body.archive .entry-content, body.blog .entry-content,
body.search .entry-summary, body.archive .entry-summary, body.blog .entry-summary,
body.search .entry-meta, body.archive .entry-meta, body.blog .entry-meta,
body.search .post-meta, body.archive .post-meta, body.blog .post-meta,
body.search .ast-excerpt-container, body.archive .ast-excerpt-container{
  color:var(--vzqk-muted);
}
body.search .entry-meta a, body.archive .entry-meta a, body.blog .entry-meta a,
body.search .post-meta a, body.archive .post-meta a, body.blog .post-meta a{
  color:var(--vzqk-muted);
}
body.search .entry-meta a:hover,
body.archive .entry-meta a:hover,
body.blog .entry-meta a:hover{color:var(--vzqk-lime)}

body.search .read-more a, body.archive .read-more a, body.blog .read-more a,
body.search .ast-button, body.archive .ast-button{
  color:var(--vzqk-lime);font-family:var(--vzqk-mono);
  font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;
}

/* Astra's eigen zoekformulier en paginering op deze pagina's */
body.search .search-form input[type="search"],
body.archive .search-form input[type="search"],
body.blog .search-form input[type="search"],
body.search input.search-field,
body.archive input.search-field{
  background:var(--vzqk-carbon)!important;
  border:1px solid var(--vzqk-line)!important;
  border-left:3px solid var(--vzqk-lime)!important;
  color:var(--vzqk-text)!important;border-radius:0!important;
}
body.search .ast-pagination .page-numbers,
body.archive .ast-pagination .page-numbers,
body.blog .ast-pagination .page-numbers{
  background:transparent!important;border:1px solid var(--vzqk-line-soft)!important;
  color:var(--vzqk-muted)!important;font-family:var(--vzqk-mono);
  font-size:.76rem;letter-spacing:.1em;border-radius:0!important;
}
body.search .ast-pagination .page-numbers.current,
body.archive .ast-pagination .page-numbers.current,
body.blog .ast-pagination .page-numbers.current{
  background:var(--vzqk-lime)!important;border-color:var(--vzqk-lime)!important;
  color:var(--vzqk-on-accent)!important;
}

/* Onze eigen search.php heeft dit alles niet nodig — die tekent zijn eigen
   kaarten. Zet Astra's overblijfselen daar dus uit. */
body.vzqk-zoekpagina .ast-archive-description{display:none}


/* ==========================================================================
   16 · Het mobiele menu
   --------------------------------------------------------------------------
   Astra tekent het uitklapmenu op een witte kaart met lichte regels. Op onze
   donkere site stond daar bijna-witte tekst op bijna-wit (contrast 1,0 — dus
   onleesbaar). Gemeten op 13 september 2026; na dit blok is het 16,4.
   ========================================================================== */

/* de uitklapkaart zelf */
.ast-mobile-header-content,
.ast-mobile-header-wrap .main-header-bar-navigation,
.ast-mobile-popup-drawer .ast-mobile-popup-inner,
#ast-hf-mobile-menu{
  background-color:var(--vzqk-carbon)!important;
  border-top:1px solid var(--vzqk-line)!important;
}

/* de menuregels */
#ast-hf-mobile-menu .menu-link,
.ast-mobile-header-content .menu-link,
.ast-mobile-popup-drawer .menu-link{
  background-color:transparent!important;
  color:var(--vzqk-text)!important;
  border-bottom:1px solid var(--vzqk-line-soft)!important;
  font-family:var(--vzqk-display)!important;
  text-transform:uppercase!important;
  letter-spacing:.02em!important;
}

#ast-hf-mobile-menu .menu-item:hover > .menu-link,
#ast-hf-mobile-menu .current-menu-item > .menu-link,
#ast-hf-mobile-menu .current_page_item > .menu-link,
.ast-mobile-header-content .current-menu-item > .menu-link{
  background-color:var(--vzqk-carbon-2)!important;
  color:var(--vzqk-lime)!important;
}

/* submenu's een niveau dieper en rustiger */
#ast-hf-mobile-menu .sub-menu,
.ast-mobile-header-content .sub-menu{background-color:var(--vzqk-void)!important}

#ast-hf-mobile-menu .sub-menu .menu-link,
.ast-mobile-header-content .sub-menu .menu-link{
  color:var(--vzqk-muted)!important;
  padding-left:2rem!important;
  font-family:var(--vzqk-body)!important;
  font-size:.95rem!important;
  text-transform:none!important;
  letter-spacing:0!important;
}

/* --------------------------------------------------------------------------
   De uitklappijl naast een menu-item met submenu.

   Let op: Astra tekent er TWEE per item.
     1. <span class="dropdown-menu-toggle ast-header-navigation-arrow">
        binnen de link  — die gebruikt Astra op desktop.
     2. <button class="ast-menu-toggle"> naast de link
        — die gebruikt Astra op mobiel.
   Astra verbergt er zelf steeds één per schermbreedte. Zet je hier
   `display` met !important, dan komen ze op desktop allebei in beeld en
   zie je een dubbele pijl.

   Daarom staat dit hele blok binnen de mobiele breedte, op dezelfde grens
   die Astra aanhoudt (921 px). Op desktop raken we `display` niet aan.
   -------------------------------------------------------------------------- */
@media (max-width:921px){
  .ast-menu-toggle{
    background:transparent!important;
    background-color:transparent!important;
    border:0!important;
    box-shadow:none!important;
    color:var(--vzqk-muted)!important;
    padding:0!important;
    margin:0!important;
    width:2.75rem!important;
    min-width:0!important;
    inset-block:0!important;
    height:auto!important;
    min-height:0!important;
    font-size:1rem!important;
    line-height:1!important;
    font-family:inherit!important;
    letter-spacing:normal!important;
    text-transform:none!important;
    border-radius:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .ast-menu-toggle svg{
    width:13px!important;height:13px!important;fill:currentColor!important;
  }
  .ast-menu-toggle:hover,
  .ast-menu-toggle:focus,
  .menu-item.ast-submenu-expanded > .ast-menu-toggle{
    background:transparent!important;
    color:var(--vzqk-lime)!important;
  }
}

/* Op desktop alleen de kleur en het formaat van Astra's eigen pijl,
   zonder display aan te raken. */
@media (min-width:922px){
  .ast-header-navigation-arrow .ast-arrow-svg,
  .dropdown-menu-toggle .ast-arrow-svg{
    width:11px!important;height:11px!important;
    fill:currentColor!important;
  }
  .main-header-menu .ast-menu-toggle{
    background:transparent!important;
    border:0!important;
    color:var(--vzqk-muted)!important;
  }
}

/* de hamburgerknop zelf blijft wél opvallen — dat is de hoofdbediening */
.menu-toggle.main-header-menu-toggle,
.ast-mobile-menu-trigger-minimal,
.ast-mobile-menu-trigger-fill{
  background-color:var(--vzqk-lime)!important;
  color:var(--vzqk-on-accent)!important;
  border-radius:0!important;
}
.menu-toggle.main-header-menu-toggle .ast-mobile-svg{fill:currentColor!important}

/* ==========================================================================
   17 · Eigen pagina-inhoud (Elementor en blok-editor)
   --------------------------------------------------------------------------
   Elementor zet zijn eigen tekstkleur (#364151) op alles wat je in Elementor
   bouwt. Op onze donkere achtergrond gaf dat een contrast van 1,79 — de
   sponsorenpagina was daardoor praktisch onleesbaar. Norm is 4,5.

   Dit blok pakt alleen wat binnen .vzqk-inhoud staat, dus alleen de pagina's
   met een VZQ-K sjabloon. Elementor-pagina's zonder sjabloon blijven ongemoeid.
   ========================================================================== */

.vzqk-inhoud,
.vzqk-inhoud p,
.vzqk-inhoud li,
.vzqk-inhoud span,
.vzqk-inhoud em,
.vzqk-inhoud .elementor-widget-container,
.vzqk-inhoud .elementor-widget-text-editor,
.vzqk-inhoud .wp-block-media-text__content,
.vzqk-inhoud .wp-block-media-text__content p{
  color:var(--vzqk-muted)!important;
}

.vzqk-inhoud h1,.vzqk-inhoud h2,.vzqk-inhoud h3,
.vzqk-inhoud h4,.vzqk-inhoud h5,.vzqk-inhoud h6,
.vzqk-inhoud b,.vzqk-inhoud strong,
.vzqk-inhoud .elementor-heading-title{
  color:var(--vzqk-text)!important;
}

/* Losse links in de pagina-inhoud worden limegroen — maar knoppen niet.
   Een knop heeft al een limegroen vlak; limegroene letters daarop leveren
   contrast 1,0 op, dus onleesbaar. Vandaar de uitsluitingen. */
.vzqk-inhoud a:not(.vzqk-btn):not(.elementor-button):not(.wp-block-button__link):not(.wp-element-button):not(.ast-button):not(.button){
  color:var(--vzqk-lime)!important;
  text-decoration-color:rgba(200,240,42,.4);
}

/* en voor de zekerheid: knoptekst in de pagina-inhoud altijd donker */
.vzqk-inhoud a.wp-block-button__link,
.vzqk-inhoud a.wp-element-button,
.vzqk-inhoud a.ast-button,
.vzqk-inhoud a.button,
.vzqk-inhoud .wp-block-button a{
  color:var(--vzqk-on-accent)!important;
}

/* citaten van Djayden bij de sponsoren */
.vzqk-inhoud blockquote,
.vzqk-inhoud .wp-block-quote{
  border-left:3px solid var(--vzqk-lime)!important;
  background:var(--vzqk-carbon-2);
  padding:1.1rem 1.3rem!important;
  margin:1.4rem 0!important;
  font-style:normal;
}
.vzqk-inhoud blockquote p,
.vzqk-inhoud .wp-block-quote p,
.vzqk-inhoud blockquote em{
  color:var(--vzqk-text)!important;
  font-size:1.02rem!important;
  line-height:1.6;
}
.vzqk-inhoud blockquote cite{
  display:block;margin-top:.7rem;
  font-family:var(--vzqk-mono);font-size:.72rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--vzqk-lime);font-style:normal;
}

/* logo's van sponsoren komen vaak als donkere PNG op transparant:
   een lichte kaart eronder houdt ze leesbaar */
.vzqk-inhoud .wp-block-media-text__media img,
.vzqk-inhoud figure.is-sponsorlogo img{
  background:#FFFFFF;padding:.9rem;border-radius:2px;
}
