/* ============================================================
   Verbelen Racing — thema, afgeleid van de partnerpagina
   Zelfde letters (Anton / Barlow / Barlow Condensed), kleuren en ritme.
   Niet geladen op partners.html (die heeft dit al zelf).
   ============================================================ */
:root{
  --nacht:#0A0A0A; --wit:#EDEDE4; --fluo:#D9FF00;
  --grijs:#C4C4B6; --lijn:#33332b; --pit:#141412;
  --display:"Anton","Bebas Neue",Impact,"Arial Narrow",sans-serif;
  --body:"Barlow",system-ui,-apple-system,"Segoe UI",sans-serif;
  --label:"Barlow Condensed","Arial Narrow",system-ui,sans-serif;
  --rand:max(clamp(16px,4vw,40px), calc((100% - 1180px) / 2));
}
body{font-family:var(--body);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}

/* koppen zoals op de partnerpagina */
h1,h2,h3{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:.005em;line-height:.95;text-wrap:balance}
h1 .geel,h2 .geel{color:var(--fluo)}

/* labels: fluo 'eyebrow' zonder dambordje ervoor */
.label{font-family:var(--label)!important;font-weight:600;font-size:.82rem!important;letter-spacing:.14em!important;color:var(--fluo)!important}
.label::before{display:none!important}

/* lopende tekst: Barlow, rustig en goed leesbaar */
.lees{font-family:var(--body)!important;line-height:1.6!important;color:var(--wit)}
.lees b{font-weight:600}

/* header: zelfde menu-stijl als de partnerpagina */
.cockpit{background:linear-gradient(180deg,rgba(10,10,10,.92),rgba(10,10,10,.55) 70%,transparent)}
.cockpit-nav a{font-family:var(--label)!important;font-weight:600;font-size:.82rem!important;letter-spacing:.14em!important;
  color:var(--wit)!important;opacity:.85;padding-bottom:4px}
.cockpit-nav a:hover{opacity:1;color:var(--fluo)!important}
.cockpit-nav a.hier{color:var(--fluo)!important;opacity:1;background:none!important;border-bottom:2px solid var(--fluo);padding-bottom:4px}
.menuknop{font-family:var(--label);font-weight:700;letter-spacing:.14em;font-size:.85rem;border-color:var(--fluo)}
.wm-lijst a{font-family:var(--display)!important;font-weight:400!important;text-transform:uppercase}
.subnav a{font-family:var(--label)!important;font-weight:600;letter-spacing:.14em!important;font-size:.8rem!important}

/* knoppen: identiek aan .btn op de partnerpagina */
.vr-knop{font-family:var(--label);font-weight:700;letter-spacing:.1em;font-size:.95rem;padding:15px 22px}
.vr-knop.klein{font-size:.85rem;padding:11px 16px}
.stille-link{font-family:var(--label)!important;font-weight:600;letter-spacing:.14em!important;font-size:.85rem!important;color:var(--wit)!important;
  border-bottom:2px solid var(--fluo);background:none!important;padding-bottom:3px!important}
.stille-link:hover{color:var(--fluo)!important;letter-spacing:.14em!important}

/* ritme: één kolom van max. 1180px, ruime witruimte tussen blokken */
#praktisch,#werelden,#instagram,#welkom,
#overzicht,#kalender,#terugblik,#pers,#wadisda,#circuits,#info,.volgbalk-wrap,
#vloot,
#albums,#zo-bestel-je,#aanvraag,#filters,main#events,
#producten,
footer#contact{padding-left:var(--rand)!important;padding-right:var(--rand)!important;max-width:none!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box}
#praktisch,#werelden,#instagram,#welkom,
#overzicht,#kalender,#terugblik,#pers,#wadisda,#circuits,#info,
#vloot,#albums,#aanvraag,#producten{padding-top:clamp(64px,9vw,112px)!important;padding-bottom:clamp(40px,6vw,72px)!important}
.doek .tekst,.held .tekst,.uitgang .tekst{padding-left:var(--rand)!important;padding-right:var(--rand)!important}

/* kaarten en panelen: 'pit'-grijs met dunne lijn */
.vr-kaart,.vr-stappen li,.vr-toggle,.vr-nodig li,#bestelling .bs-doos,#bestelpaneel{background:var(--pit)}
.vr-kaart{border-color:var(--lijn)}
.vr-kaart .vr-k-titel{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(22px,2.2vw,28px);line-height:1}
.vr-kaart .vr-k-label,.vr-kaart .vr-k-actie,.vr-status,.vr-wie,.vr-toggle button{font-family:var(--label);font-weight:600;letter-spacing:.12em}
.vr-kaart .vr-k-label{color:var(--fluo)}
.vr-stappen li::before{font-family:var(--display);font-weight:400;font-style:normal}

/* racenummers als plaatjes, zoals #55 / #155 op de partnerpagina */
.vr-plaat{font-family:var(--display);font-weight:400}

/* footer */
footer#contact{border-top:1px solid var(--lijn)}

/* hero-titels: Anton is hoger, dus iets kleiner en breder laten lopen */
.doek .tekst{max-width:none!important}
.doek h1{font-size:clamp(52px,8vw,112px)!important;line-height:.92!important;max-width:16ch}
.doek .lees,.doek .onderregel{max-width:56ch}

/* ============ homepage: duidelijke volgorde ============ */
.held .intro{font-family:var(--body);font-size:clamp(17px,1.9vw,21px);line-height:1.5;color:var(--wit);
  max-width:46ch;margin:18px auto 0;text-shadow:0 2px 18px rgba(0,0,0,.6)}
.held .onder{opacity:.8;margin-top:10px}
.sectiekop{font-size:clamp(36px,5.6vw,68px);margin:14px 0 4vh}
#piloten,#agenda,#routes{padding-left:var(--rand)!important;padding-right:var(--rand)!important}
#piloten{padding-top:clamp(64px,9vw,112px);padding-bottom:clamp(24px,4vw,48px)}
.pil-raster{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr))}
.pil{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);background:var(--pit);border:1px solid var(--lijn)}
.pil img{width:100%;height:100%;object-fit:cover;min-height:320px;display:block}
.pil-tekst{padding:22px clamp(16px,2.4vw,28px) 22px}
.pil h3{font-size:clamp(26px,2.8vw,36px);display:flex;align-items:center;gap:12px;margin:0 0 14px}
.pil dl{display:grid;grid-template-columns:max-content 1fr;gap:9px 16px;margin:0 0 6px;font-size:15.5px;line-height:1.45}
.pil dt{font-family:var(--label);font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;color:var(--fluo);padding-top:2px}
.pil dd{margin:0;color:var(--wit)}
.pil .stille-link{margin-top:12px}
@media(max-width:560px){.pil{grid-template-columns:1fr}.pil img{height:300px;min-height:0;object-position:50% 25%}}
.woordjes{margin-top:2.4vh}
.woordenlijst{display:grid;grid-template-columns:max-content 1fr;gap:8px 18px;max-width:820px;margin:8px 0 0;
  padding:18px 20px;background:var(--pit);border:1px solid var(--lijn);font-size:15px;line-height:1.45}
.woordenlijst dt{font-family:var(--label);font-weight:700;letter-spacing:.08em;color:var(--fluo)}
.woordenlijst dd{margin:0}
#agenda{padding-top:clamp(40px,6vw,72px);padding-bottom:clamp(24px,4vw,48px)}
.agenda-raster{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));margin-top:2vh}
#agenda .vr-kaart{min-height:0}
#welkom{max-width:none!important;text-align:left!important;padding-top:clamp(64px,9vw,112px)!important;padding-bottom:clamp(28px,4vw,48px)!important}
#welkom::after{display:none!important}
#welkom .lees{font-size:clamp(17px,1.8vw,20px)!important;max-width:60ch;color:var(--wit)}
#routes{padding-top:clamp(64px,9vw,112px);padding-bottom:clamp(40px,6vw,72px)}
.routes-raster{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr))}
.route-kaart{position:relative;display:flex;align-items:flex-end;min-height:380px;overflow:hidden;border:1px solid var(--lijn);
  color:var(--wit);text-decoration:none;background:var(--pit)}
.route-kaart>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.45)}
.rk-binnen{position:relative;z-index:1;display:flex;flex-direction:column;gap:10px;padding:clamp(18px,3vw,30px)}
.rk-titel{font-family:var(--display);text-transform:uppercase;font-size:clamp(28px,3.4vw,44px);line-height:1}
.rk-tekst{font-size:16px;line-height:1.5;max-width:44ch}
a.route-kaart:hover{border-color:var(--fluo)}
.route-kaart .vr-knop{align-self:flex-start}

/* leesbaarheid kleine teksten */
.label{font-size:.88rem!important}
.cockpit-nav a{font-size:.9rem!important;letter-spacing:.1em!important}
.subnav a{font-size:.86rem!important;letter-spacing:.1em!important}
.vr-kaart .vr-k-label,.vr-kaart .vr-k-actie{font-size:.82rem}
#welkom p{margin-left:0!important;margin-right:0!important}
.feiten{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:1px;background:var(--lijn);
  border:1px solid var(--lijn);margin:0 0 4vh}
.feiten div{background:var(--pit);padding:14px 16px}
.feiten dt{font-family:var(--label);font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;color:var(--fluo);margin-bottom:4px}
.feiten dd{margin:0;font-size:15.5px;line-height:1.4;color:var(--wit)}
.video-noot{font-size:14px;color:var(--grijs);margin:10px 0 0}

/* homepage: de hero laat zien dat er meer komt */
.held{min-height:88svh!important}
.scrollhint{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:8px;
  font-family:var(--label);font-weight:600;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;color:var(--wit);text-decoration:none;opacity:.9}
.scrollhint i{display:block;width:2px;height:34px;background:linear-gradient(var(--fluo),transparent);animation:scrollval 1.8s ease-in-out infinite}
@keyframes scrollval{0%{transform:scaleY(.3);transform-origin:top;opacity:0}40%{opacity:1}100%{transform:scaleY(1);transform-origin:top;opacity:0}}
@media(prefers-reduced-motion:reduce){.scrollhint i{animation:none}}
@media(max-height:640px){.scrollhint{display:none}}
#piloten{padding-top:clamp(32px,4vw,52px)!important}
@media(min-width:900px){.held{min-height:82svh!important}}
.ig-verslag{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:start;margin-top:8px;padding-top:12px;border-top:1px solid var(--lijn)}
.ig-verslag img{width:96px;height:96px;object-fit:cover}
.ig-verslag p{margin:4px 0 6px;font-size:15px;line-height:1.45;color:var(--wit)}

/* ============ Instagram-blok ============ */
#instagram .ig-wrap{max-width:none!important;width:100%}
.igw-kop{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:flex-end;justify-content:space-between;margin:12px 0 22px}
.igw-titel{font-size:clamp(34px,5vw,62px);margin:0}
.igw-sub{margin:8px 0 0;color:var(--grijs);font-size:15px}
.igw-sub a{color:var(--wit);text-decoration:none;border-bottom:2px solid var(--fluo)}
.igw-knoppen{display:flex;gap:10px;flex-wrap:wrap}
.igw-raster{display:grid;gap:10px;grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr}
.igp{position:relative;display:block;overflow:hidden;background:var(--pit);aspect-ratio:1;color:var(--wit);text-decoration:none}
.igp.groot{grid-column:span 2;grid-row:span 2}
.igp img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.igp:hover img,.igp:focus-visible img{transform:scale(1.05)}
.igp::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(10,10,10,.92));opacity:0;transition:opacity .3s}
.igp.groot::after{opacity:1}
.igp:hover::after,.igp:focus-visible::after{opacity:1}
.igp-tekst{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:14px 16px;display:flex;flex-direction:column;gap:5px;
  font-size:14px;line-height:1.4;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}
.igp-tekst b{font-family:var(--label);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.75rem;color:var(--fluo)}
.igp.groot .igp-tekst{opacity:1;transform:none;padding:22px 24px;font-size:16px}
.igp:hover .igp-tekst,.igp:focus-visible .igp-tekst{opacity:1;transform:none}
.igp-reel{position:absolute;top:10px;right:10px;z-index:1;width:30px;height:30px;display:grid;place-items:center;font-size:11px;
  background:var(--fluo);color:var(--nacht);transform:skewX(-14deg)}
@media(max-width:820px){
  .igw-raster{grid-template-columns:repeat(2,1fr)}
  .igw-raster{grid-auto-rows:auto}
  .igp.groot{grid-column:span 2;grid-row:auto}
  .igp:not(.groot) .igp-tekst{display:none}
}
.wd-raster{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));margin:3vh 0 2vh}
.wd-ep{display:flex;flex-direction:column;gap:6px;color:var(--wit);text-decoration:none}
.wd-beeld{position:relative;aspect-ratio:9/16;background:var(--pit);border:1px solid var(--lijn);overflow:hidden}
.wd-beeld img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.wd-ep:hover .wd-beeld img{transform:scale(1.05)}
.wd-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) skewX(-14deg);width:46px;height:46px;display:grid;place-items:center;background:var(--fluo);color:var(--nacht)}
.wd-duur{position:absolute;right:8px;bottom:8px;background:rgba(10,10,10,.8);font-size:12px;padding:2px 6px}
.wd-nr{font-family:var(--label);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.75rem;color:var(--fluo)}
.wd-titel{font-family:var(--display);text-transform:uppercase;font-size:20px;line-height:1.05}
.wd-leeg{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
  background:repeating-linear-gradient(135deg,#141412 0 14px,#191916 14px 28px);font-family:var(--display);font-size:22px;color:var(--wit)}
.wd-leeg b{font-weight:400;font-size:44px;color:var(--fluo);line-height:1}
.wd-leeg+.wd-play{top:auto;bottom:16px}
.wd-raster{grid-template-columns:repeat(auto-fill,minmax(min(46%,170px),1fr))}
.wd-play{left:auto!important;top:auto!important;right:10px;bottom:10px;transform:skewX(-14deg)!important;width:38px!important;height:38px!important}
.wd-leeg+.wd-play{bottom:10px}
.wd-raster{grid-template-columns:repeat(auto-fill,minmax(min(46%,150px),1fr))}
@media(max-width:700px){
  .wd-raster{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px;margin-right:-20px;-webkit-overflow-scrolling:touch}
  .wd-ep{flex:0 0 42%;scroll-snap-align:start}
}
/* WADISDA: klein, één rij om door te scrollen */
.wd-raster{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;padding-bottom:8px;scrollbar-width:thin}
.wd-ep{flex:0 0 108px!important;scroll-snap-align:start;gap:4px}
.wd-beeld img.wd-dim{filter:brightness(.35) saturate(.6)}
.wd-leeg{background:none!important;font-size:13px!important;z-index:1}
.wd-leeg b{font-size:26px!important}
.wd-play{width:26px!important;height:26px!important;font-size:10px;right:6px;bottom:6px;z-index:2}
.wd-nr{font-size:.62rem!important;letter-spacing:.1em}
.wd-titel{font-size:15px!important}
.wd-duur{display:none}
.wd-home{margin-top:3.5vh;padding-top:2.5vh;border-top:1px solid var(--lijn)}
.wd-intro{font-size:16px;line-height:1.5;margin:0 0 12px;max-width:70ch}
#piloten #wadisda.wd-home{padding:0!important;margin-top:28px;padding-top:22px!important;max-width:none}
#pers h2{font-size:clamp(34px,5vw,60px)!important;margin:12px 0 3vh!important}
/* smalle routebalk foto's / steun */
#routes{padding-top:clamp(40px,6vw,72px)!important;padding-bottom:clamp(24px,4vw,48px)!important}
.routebalk{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--lijn);background:var(--pit)}
.rb-deel{display:flex;flex-direction:column;gap:6px;padding:20px 24px;color:var(--wit);text-decoration:none}
.rb-deel+.rb-deel{border-left:1px solid var(--lijn)}
a.rb-deel:hover{background:#1a1a17}
.rb-tekst{font-size:16px;line-height:1.45}
.rb-tekst b{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:22px;letter-spacing:.01em;margin-right:4px}
.rb-pijl,.rb-links a{font-family:var(--label);font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:.82rem;color:var(--fluo);text-decoration:none}
.rb-links{display:flex;gap:22px;flex-wrap:wrap}
@media(max-width:700px){.routebalk{grid-template-columns:1fr}.rb-deel+.rb-deel{border-left:0;border-top:1px solid var(--lijn)}}

/* ============ agenda-kaarten: beeld, datum, plaats ============ */
.ag-kaart{position:relative;overflow:hidden;min-height:320px!important;padding:24px 26px!important;justify-content:space-between;border-color:var(--lijn)!important}
.ag-kaart .ag-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;filter:brightness(.42) saturate(.9);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.ag-kaart::after{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(10,10,10,.85),rgba(10,10,10,.25) 75%)}
a.ag-kaart:hover .ag-bg,.ag-kaart:hover .ag-bg{transform:scale(1.04)}
.ag-kaart>*:not(.ag-bg){position:relative;z-index:1}
.ag-boven{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ag-aftel{font-family:var(--label);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.85rem;color:var(--wit)}
.ag-midden{display:flex;align-items:center;gap:22px;margin:18px 0}
.ag-datum{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--fluo);color:var(--nacht);
  padding:10px 16px 8px;transform:skewX(-10deg);min-width:96px}
.ag-datum b{font-family:var(--display);font-weight:400;font-size:44px;line-height:1}
.ag-datum i{font-style:normal;font-family:var(--label);font-weight:700;letter-spacing:.2em;text-transform:uppercase;font-size:.9rem}
.ag-kaart .vr-k-titel{font-size:clamp(26px,2.8vw,38px)!important}
.ag-kaart .vr-k-tekst{color:var(--wit);font-size:16px;display:block;margin-top:6px}
.ag-daarna{display:block;margin-top:12px;font-size:14.5px;color:var(--grijs)}
.ag-daarna b{color:var(--wit);font-weight:600}
.ag-p{flex:none;font-family:var(--display);font-size:clamp(84px,9vw,128px);line-height:.85;color:var(--fluo);font-style:italic;letter-spacing:-.02em}
.ag-p i{font-size:.5em;vertical-align:top;margin-right:2px}
@media(max-width:560px){.ag-midden{gap:14px}.ag-datum{min-width:78px;padding:8px 12px 6px}.ag-datum b{font-size:34px}.ag-p{font-size:76px}}
.ag-p{display:flex;align-items:flex-start}
.ag-p i{font-size:.42em;margin:.12em .04em 0 0;vertical-align:baseline}
/* familiepagina: kleinere openingsfoto, kaarten komen hoger */
.hero{min-height:0!important;height:clamp(300px,52svh,560px)!important}
.hero>img{object-position:50% 62%}
#team{padding-top:clamp(36px,5vw,64px)!important}
/* familie: verhaalblokken compacter, altijd met beeld */
.hoofdstuk{padding-top:clamp(32px,4vw,52px)!important;padding-bottom:clamp(32px,4vw,52px)!important}
.hoofdstuk.met-beeld{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,38%);column-gap:clamp(24px,4vw,56px);align-items:start}
.hoofdstuk.met-beeld>*{grid-column:1}
.hoofdstuk.met-beeld>.hs-beeld{grid-column:2;grid-row:1/span 3;margin:0;align-self:start;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--rand,rgba(255,255,255,.1))}
.hs-beeld img{width:100%;height:100%;object-fit:cover;display:block}
.hoofdstuk.met-beeld>details{grid-column:1/-1}
@media (max-width:720px){
 .hoofdstuk.met-beeld{grid-template-columns:1fr}
 .hoofdstuk.met-beeld>.hs-beeld{grid-column:1;grid-row:auto;aspect-ratio:16/10;min-height:0;margin:18px 0 6px}
}
/* racekalender: terugblik compacter, slot-band kleiner */
.r-grid{grid-template-columns:repeat(auto-fill,minmax(min(230px,100%),1fr))!important;gap:14px!important;align-items:start}
.r-kaart .beeld{aspect-ratio:16/9!important}
.r-kaart .body{padding:12px 14px 14px!important}
.r-kaart .uitslag{font-size:16px!important}
a.uitgang[href="#info"]{min-height:0!important;height:clamp(220px,32svh,320px)}
a.uitgang[href="#info"] .tekst{padding-bottom:clamp(24px,5vh,44px)!important}
a.uitgang[href="#info"] h2{font-size:clamp(26px,4vw,48px)!important}
/* familie: Liz & Lex — foto | tekst | toen-nu, gelijke hoogte */
.lid-grid:has(.tn-kolom){grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr);gap:clamp(20px,3vw,44px);align-items:center}
.lid-grid:has(.tn-kolom)>img{aspect-ratio:4/5;height:auto;max-height:none;object-fit:cover;object-position:35% 50%;-webkit-mask-image:none;mask-image:none}
.tn-kolom .toennu{max-width:none;width:100%}
.tn-kolom .tn-tip{margin-top:8px}
@media(max-width:860px){
 .lid-grid:has(.tn-kolom){grid-template-columns:1fr 1fr;row-gap:20px;column-gap:12px}
 .lid-grid:has(.tn-kolom)>div:not(.tn-kolom){grid-column:1/-1;grid-row:1}
}
#team{padding-bottom:clamp(28px,4vw,48px)!important}
#docu{padding-top:clamp(28px,4vw,48px)!important;padding-bottom:clamp(32px,4vw,52px)!important}
/* familie: Lou, Hannelore, Sven — compacte foto naast de tekst */
.lid-grid:not(:has(.tn-kolom)){grid-template-columns:minmax(0,340px) minmax(0,560px);gap:clamp(24px,4vw,56px);align-items:center}
.lid-grid:not(:has(.tn-kolom))>img{aspect-ratio:4/5;height:auto;max-height:none;object-fit:cover;-webkit-mask-image:none;mask-image:none}
@media(max-width:860px){
 .lid-grid:not(:has(.tn-kolom)){grid-template-columns:1fr}
 .lid-grid:not(:has(.tn-kolom))>img{aspect-ratio:4/3}
}
.lid{padding-top:clamp(36px,5vw,64px)!important;padding-bottom:clamp(36px,5vw,64px)!important}
/* afsluitbanden onderaan pagina's: compact */
a.uitgang{min-height:0!important;height:clamp(240px,38svh,360px)!important;align-items:center!important}
a.uitgang .tekst{padding:0 6vw!important}
a.uitgang img{object-position:50% 30%}
a.uitgang .quote{font-size:clamp(18px,2vw,26px)!important;max-width:40ch!important;margin-bottom:14px!important;line-height:1.15!important}
a.uitgang h2{font-size:clamp(26px,4vw,48px)!important}
/* terugblik als carrousel */
.r-carrousel{position:relative}
.r-carrousel .r-grid{display:flex!important;gap:14px!important;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px;align-items:stretch}
.r-carrousel .r-grid::-webkit-scrollbar{display:none}
.r-carrousel .r-kaart{flex:0 0 clamp(220px,24%,290px);scroll-snap-align:start;display:flex;flex-direction:column;text-align:left}
.r-pijl{position:absolute;top:calc(50% - 22px);z-index:3;width:44px;height:44px;border:1px solid var(--fluo,#D9FF00);background:rgba(11,11,12,.85);color:var(--fluo,#D9FF00);font-size:20px;cursor:pointer;transform:translateY(-50%)}
.r-pijl.vorige{left:-12px}.r-pijl.volgende{right:-12px}
.r-pijl:disabled{opacity:0;pointer-events:none}
.r-pijl:hover{background:var(--fluo,#D9FF00);color:#0b0b0c}
@media(max-width:700px){.r-pijl{display:none}.r-carrousel .r-kaart{flex-basis:72%}}
/* racekalender: info als tegels, secties dichter op elkaar */
#terugblik,#circuits{padding-top:clamp(36px,5vw,64px)!important;padding-bottom:clamp(36px,5vw,64px)!important}
#info{max-width:1400px!important;padding-top:clamp(24px,3vw,40px)!important;padding-bottom:clamp(48px,6vw,80px)!important}
.info-tegels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}
.it{background:var(--paneel,#161616);border:1px solid var(--lijn,rgba(255,255,255,.1));border-top:3px solid var(--fluo,#D9FF00);padding:22px 20px;display:flex;flex-direction:column;gap:10px}
.it svg{width:30px;height:30px;color:var(--fluo,#D9FF00)}
.it h3{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(22px,2vw,28px);line-height:1;letter-spacing:.01em;margin:4px 0 0}
.it p{font-family:var(--body);font-size:15px;line-height:1.5;color:var(--grijs,#c4c4b6);margin:0}
.it .lbl{font-family:var(--label);font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;color:#0b0b0c}
.it .lbl.geel{background:var(--fluo,#D9FF00)}.it .lbl.oranje{background:transparent;color:#f0b429;border:1px solid rgba(240,180,41,.55)}
.it-link{margin-top:auto;font-family:var(--label);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--fluo,#D9FF00);text-decoration:none}
.it-knoppen{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
.it-knoppen a{font-family:var(--label);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--fluo,#D9FF00);border:1px solid var(--fluo,#D9FF00);padding:7px 10px;text-decoration:none}
.it-knoppen a:hover{background:var(--fluo,#D9FF00);color:#0b0b0c}
@media(max-width:1000px){.info-tegels{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.info-tegels{grid-template-columns:1fr}}
/* garage: vloot als pitlane */
#vloot{padding-top:clamp(40px,6vw,80px)!important;padding-bottom:clamp(40px,6vw,80px)!important}
#vloot h2{margin-bottom:clamp(20px,3vw,36px)!important}
.pitlane{display:grid;gap:12px}
.pl-podium{position:relative;overflow:hidden;height:clamp(340px,52svh,520px);background:#0e0e0f;border:1px solid rgba(241,237,228,.13)}
.pl-foto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;cursor:pointer;animation:plIn .7s cubic-bezier(.2,.7,.2,1)}
.pl-foto.grijs{filter:grayscale(.6) brightness(.8)}
@keyframes plIn{from{opacity:0;transform:scale(1.04)}to{opacity:1;transform:none}}
.pl-schaduw{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(11,11,12,.92) 0%,rgba(11,11,12,.6) 38%,transparent 70%)}
.pl-nr{position:absolute;right:clamp(14px,3vw,32px);top:clamp(6px,2vw,18px);font-family:var(--display);font-size:clamp(70px,11vw,150px);line-height:1;color:transparent;-webkit-text-stroke:1.5px rgba(216,240,0,.7);pointer-events:none}
.pl-nr i{font-style:normal;font-size:.3em;-webkit-text-stroke:0;color:rgba(241,237,228,.5);margin-left:4px}
.pl-tekst{position:absolute;left:clamp(18px,4vw,48px);bottom:clamp(18px,4vw,44px);max-width:min(460px,80%);animation:plTekst .6s .1s both cubic-bezier(.2,.7,.2,1)}
@keyframes plTekst{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.pl-tekst .badge{position:static!important;display:inline-block;margin-bottom:10px}
.pl-tekst h3{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(32px,5vw,62px);line-height:.95;margin:0;transform:skewX(-6deg);transform-origin:left}
.pl-meta{font-family:var(--label);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--fluo,#D9FF00);margin-top:10px}
.pl-tekst p{font-family:var(--body);font-size:15px;line-height:1.5;color:var(--wit);margin:10px 0 14px}
.pl-knop{font-family:var(--label);font-size:12px;letter-spacing:.18em;text-transform:uppercase;background:var(--fluo,#D9FF00);color:#0b0b0c;border:0;padding:11px 16px;cursor:pointer}
.pl-boxen{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.pl-box{position:relative;padding:0;border:1px solid rgba(241,237,228,.13);background:#141415;color:var(--wit);cursor:pointer;overflow:hidden;aspect-ratio:4/3;text-align:left;transition:border-color .3s,transform .3s}
.pl-box img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.45) grayscale(.5);transition:filter .4s}
.pl-box:hover img,.pl-box.aan img{filter:none}
.pl-box.weg img{filter:brightness(.35) grayscale(1)}
.pl-box.aan{border-color:var(--fluo,#D9FF00);transform:translateY(-3px)}
.pl-box.aan::after{content:'';position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--fluo,#D9FF00)}
.pl-boxnr{position:absolute;top:6px;left:8px;font-family:var(--label);font-size:10px;letter-spacing:.2em;color:var(--fluo,#D9FF00);z-index:2}
.pl-boxnaam{position:absolute;left:8px;right:8px;bottom:8px;font-family:var(--display);text-transform:uppercase;font-size:14px;line-height:1.05;z-index:2;text-shadow:0 1px 6px rgba(0,0,0,.8)}
@media(max-width:860px){
 .pl-boxen{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-top:4px}
 .pl-boxen::-webkit-scrollbar{display:none}
 .pl-box{flex:0 0 120px;scroll-snap-align:start}
 .pl-podium{height:auto;min-height:440px}
 .pl-schaduw{background:linear-gradient(180deg,transparent 20%,rgba(11,11,12,.95) 72%)}
 .pl-tekst{max-width:none;right:18px}
}
#vloot h2{font-size:clamp(26px,3.6vw,46px)!important}
/* foto's nooit gezichten afsnijden: Lou, Hannelore, Sven tonen de volledige foto */
.lid-grid:not(:has(.tn-kolom))>img{aspect-ratio:auto!important;width:auto!important;max-width:100%;height:auto!important;max-height:72svh;object-fit:contain!important;margin:0 auto;display:block}
@media(max-width:860px){.lid-grid:not(:has(.tn-kolom))>img{aspect-ratio:auto!important;max-height:75svh}}
.lid-grid:has(.tn-kolom)>img[src*="06-liz"]{object-position:50% 22%}
.lid-grid:has(.tn-kolom)>img[src*="08-lex"]{object-position:38% 40%}
.hs-beeld img{object-position:50% 28%}
@media(max-width:720px){.hoofdstuk.met-beeld>.hs-beeld{aspect-ratio:auto!important}.hoofdstuk.met-beeld>.hs-beeld img{height:auto;max-height:65svh;object-fit:contain}}
/* ===== garage: de vloot in boxen ===== */
.garage{position:relative;padding:clamp(34px,5vw,56px) clamp(10px,2vw,22px) 18px;
  background:linear-gradient(180deg,#151517 0%,#0f0f10 60%,#0b0b0c 100%);border:1px solid rgba(241,237,228,.08);overflow:hidden}
.garage::before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.5;
  background:repeating-linear-gradient(90deg,transparent 0 119px,rgba(255,255,255,.025) 119px 120px),repeating-linear-gradient(0deg,transparent 0 59px,rgba(255,255,255,.02) 59px 60px)}
/* TL-lampen die aanflikkeren */
.g-lampen{position:absolute;top:12px;left:0;right:0;display:flex;justify-content:space-around;pointer-events:none}
.g-lampen i{display:block;width:clamp(70px,14vw,180px);height:6px;border-radius:3px;background:#2a2a2c}
.garage.open .g-lampen i{animation:tl 1.4s steps(1) forwards}
.garage.open .g-lampen i:nth-child(2){animation-delay:.25s}.garage.open .g-lampen i:nth-child(3){animation-delay:.1s}.garage.open .g-lampen i:nth-child(4){animation-delay:.4s}
@keyframes tl{0%{background:#2a2a2c}10%{background:#f4f6ff;box-shadow:0 0 18px 4px rgba(230,240,255,.6)}18%{background:#2a2a2c;box-shadow:none}30%{background:#f4f6ff;box-shadow:0 0 18px 4px rgba(230,240,255,.6)}36%{background:#2a2a2c;box-shadow:none}50%,100%{background:#f4f6ff;box-shadow:0 0 26px 6px rgba(230,240,255,.55),0 40px 120px 30px rgba(230,240,255,.07)}}
.g-boxen{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(8px,1.2vw,14px)}
.g-box{position:relative;aspect-ratio:5/4;padding:0;border:0;cursor:pointer;overflow:hidden;color:var(--wit);text-align:left;
  background:radial-gradient(120% 80% at 50% 0%,rgba(255,255,255,.07),transparent 60%),#121214;
  box-shadow:inset 0 0 0 1px rgba(241,237,228,.08),inset 0 10px 0 0 #1c1c1e}
.g-box::before{content:'';position:absolute;left:0;right:0;top:0;height:8px;z-index:4;
  background:repeating-linear-gradient(-45deg,#D9FF00 0 10px,#111 10px 20px)}
.g-nr{position:absolute;top:16px;left:12px;z-index:3;font-family:var(--label);font-size:11px;letter-spacing:.22em;color:var(--fluo,#D9FF00)}
.g-wand{position:absolute;top:14%;left:0;right:0;text-align:center;font-family:var(--display);font-size:clamp(46px,7vw,96px);line-height:1;
  color:transparent;-webkit-text-stroke:1.5px rgba(241,237,228,.13);letter-spacing:.02em;transform:skewX(-8deg)}
.g-vloer{position:absolute;left:0;right:0;bottom:0;height:38%;
  background:linear-gradient(180deg,#1b1b1d,#0d0d0e);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.g-vloer::before,.g-vloer::after{content:'';position:absolute;bottom:0;width:4px;height:100%;background:rgba(217,255,0,.55);transform-origin:bottom}
.g-vloer::before{left:6%;transform:skewX(22deg)}.g-vloer::after{right:6%;transform:skewX(-22deg)}
.g-auto{position:absolute;left:50%;bottom:16%;width:78%;max-height:62%;object-fit:contain;object-position:50% 100%;transform:translateX(-50%);z-index:2;
  filter:drop-shadow(0 14px 10px rgba(0,0,0,.75));transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.g-box.klein .g-auto{width:62%}
.g-box:hover .g-auto,.g-box:focus-visible .g-auto{transform:translateX(-50%) translateY(4px) scale(1.07)}
.g-box.weg .g-auto{filter:grayscale(1) brightness(.7) drop-shadow(0 14px 10px rgba(0,0,0,.75))}
.g-tape{position:absolute;left:-10%;right:-10%;top:46%;z-index:3;text-align:center;transform:rotate(-12deg);
  background:repeating-linear-gradient(-45deg,#D9FF00 0 14px,#111 14px 28px);color:transparent;height:26px}
.g-tape::after{content:'VERKOCHT';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#111;color:#D9FF00;
  font-family:var(--label);font-size:12px;letter-spacing:.3em;padding:3px 12px}
.g-bord{position:absolute;top:30px;right:12px;z-index:3;font-family:var(--label);font-size:11px;letter-spacing:.22em;text-transform:uppercase;padding:5px 9px;transform:rotate(4deg);
  box-shadow:0 4px 10px rgba(0,0,0,.5)}
.g-bord::before{content:'';position:absolute;left:50%;top:-12px;width:1px;height:12px;background:rgba(241,237,228,.4)}
.g-bord.koop{background:#D9FF00;color:#0b0b0c}.g-bord.nieuw{background:#f1ede4;color:#0b0b0c}
.g-plaat{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:8px 12px 10px;background:linear-gradient(180deg,transparent,rgba(8,8,9,.92) 45%)}
.g-plaat b{display:block;font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(16px,1.6vw,22px);line-height:1}
.g-plaat i{display:block;font-style:normal;font-family:var(--label);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--grijs,#b9b6ab);margin-top:4px}
/* rolpoort */
.g-poort{position:absolute;inset:0;z-index:5;pointer-events:none;
  background:repeating-linear-gradient(180deg,#3a3a3d 0 10px,#2b2b2e 10px 12px,#232325 12px 14px);
  box-shadow:inset 0 -6px 0 #D9FF00;transform-origin:top;transition:transform 1.1s cubic-bezier(.65,0,.25,1) calc(.35s + var(--i)*.14s)}
.garage.open .g-poort{transform:scaleY(.04)}
.g-tip{position:relative;margin:12px 0 0;font-family:var(--label);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--grijs,#b9b6ab);text-align:center}
@media(max-width:1000px){.g-boxen{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){
 .g-boxen{grid-template-columns:repeat(2,minmax(0,1fr))}
 .g-box{aspect-ratio:4/4.2}
 .g-wand{font-size:44px;top:16%}
 .g-auto{width:88%;bottom:20%}
 .g-box.klein .g-auto{width:72%}
 .g-plaat i{display:none}
 .g-bord{top:28px;font-size:9.5px}
}
.g-auto{bottom:25%!important;max-height:56%!important}
.g-box.vrij{text-decoration:none;display:block}
.g-box.vrij .g-wand{-webkit-text-stroke:1.5px rgba(217,255,0,.35);font-size:clamp(70px,9vw,120px);top:8%}
.g-box.vrij:hover .g-wand{-webkit-text-stroke-color:rgba(217,255,0,.8)}
.g-box.vrij .g-plaat i{color:var(--fluo,#D9FF00)}
@media(max-width:640px){.g-auto{bottom:27%!important}}
.g-auto{width:86%!important;max-height:60%!important}.g-box.klein .g-auto{width:66%!important}
