/* Hammers — componenten. Alles voor de huisstijl staat hier (plus tokens.css en fonts.css).
   Breakpoints = Elementor-Kit: 479 / 767 / 1024 / 1280 / 1536 / 1920. Prefix lh-.
   Elementor-regels (specificiteit 0,2,0): onze selectors beginnen met .e-con.lh-… of .elementor-widget.lh-… */

html { scroll-behavior: smooth; }
body { font-family: var(--lh-font); color: var(--lh-tekst); background: var(--lh-wit); -webkit-font-smoothing: antialiased; overflow-x: clip; }
img { max-width: 100%; height: auto; }
:focus-visible { outline: 3px solid var(--lh-geel); outline-offset: 2px; box-shadow: 0 0 0 5px var(--lh-navy); }
.lh-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
/* Paginakop: lange woorden afbreken met koppelteken (zoals live). Elementor heeft hier geen instelling voor. */
.lh-hero h1 { hyphens: auto; overflow-wrap: anywhere; }

/* ---------- Knoppen (Kit-knop = geel; varianten) ---------- */
.elementor-widget-button .elementor-button { transition: background .15s, color .15s, transform .15s; border: 2px solid var(--lh-geel); }
.elementor-widget-button .elementor-button:hover { border-color: var(--lh-navy); }
.elementor-widget-button .elementor-button-content-wrapper { gap: 8px; }

/* editor: geen verborgen content */

/* =====================================================================
   HEADER (live-parity): vaste kop, gecentreerd logo 123 px, pillen-menu eronder, mega-dropdown
   ===================================================================== */
/* mobiel: hamburger rechts, menu als navy paneel */

/* =====================================================================
   HERO-SLIDER HOME (live-parity): foto-kaart 1140×570, tekst linksonder, segmentbalk
   ===================================================================== */

/* JetEngine-grids: afstand via gap (niet via item-padding) */
.elementor .jet-listing-grid:has(> .swiper-lib) { margin: 0 !important; }
/* tekstkleur-herstel binnen donkere onderdelen (Kit-koppen zijn navy) */
.elementor-widget:not(:last-child) { margin-block-end: 0; }

/* =====================================================================
   HOMEPAGE (live-parity, waarden gemeten op 1440 px)
   ===================================================================== */
/* Sponsoren-balk */
@media (max-width: 767px) { .e-con.hs-sk > .hs-sk__kaart { padding: 28px 20px; } .hs-sk h2 { font-size: 40px; line-height: 40px; } }

/* =====================================================================
   FOOTER (live-parity)
   ===================================================================== */
.elementor-location-footer { margin: 0; }

.elementor .e-con { --gap: 0px; --padding-top: 0px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px; }

/* correcties n.a.v. numerieke vergelijking */

/* footer: eigen structuur (logo + Teams/Club/Fans), social bovenaan, hoofdsponsors eronder */

/* footer: hoofdsponsors subtiel onder Fans; copyrightregel links met border-top */

/* =====================================================================
   HEADER v2: menu-uitlijning, brede mega-dropdown in rijen, hover, scroll-gedrag (.is-scrolled)
   ===================================================================== */

/* ===== TABLET (768–1024; waarden gemeten op live bij 768) ===== */

/* =====================================================================
   PAGINAKOP v2 (live-parity) + WEDSTRIJDENPAGINA
   ===================================================================== */
/* tabs */
.e-con.lh-tabinhoud { padding: 0; }
/* maandkop en rijen */

.lhw-tabs .e-n-tab-title small { font: 900 italic 12px/12px var(--lh-font); margin-left: 4px; letter-spacing: .96px; }

/* ===== MOBIEL: header-correctie + paginakop + wedstrijdrijen (gemeten op live 390) ===== */
body { background: var(--lh-grijs-1); }

/* =====================================================================
   /STAND/ (live-parity) + eigen-team-rij op beide stand-tabellen
   ===================================================================== */
/* Vorm-bolletjes: HTML komt uit de thema-callbacks hammers_vormpil / hammers_vormdots (aantal wisselt), daarom hier. */
.lhs-vorm { display: flex; gap: 5px; }
.lhs-vorm i { width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: var(--lh-blauw); color: #fff; font: 900 italic 14px/14px var(--lh-font); font-style: italic; }
.lhs-vorm i.l { background: #9AA7BE; }
/* Gameday-vorm (callback hammers_vormrond): rondjes van 26 px met W/L — HTML uit een callback, dus geen Elementor-control */
.lh-vormrond { display: flex; gap: 6px; }
.lh-vormrond i { width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; background: var(--lh-blauw); color: #fff; font: italic 900 13px/26px var(--lh-font); }
.lh-vormrond i.l { background: #9AA7BE; }
.hs-l5 { display: inline-flex; gap: 4px; }
.hs-l5 i { width: 12px; height: 12px; border-radius: 50%; background: #16A34A; display: block; }
.hs-l5 i.l { background: #DC2626; }
/* submenu bereikbaar: geen gat tussen menu-item en paneel (onzichtbare brug als bovenrand van de container) */

/* Tekstblok uit de editor (seizoenkaart-artikel): koppen en lijst zitten ín de tekst, dus geen Elementor-instelling voor. */
.lh-tekstblok :is(h2, h3) { margin: 22px 0 8px; font: italic 900 22px/24.2px Barlow, sans-serif; text-transform: uppercase; color: var(--lh-navy); }
.lh-tekstblok :is(h2, h3):first-child { margin-top: 0; }
.lh-tekstblok ul { list-style: none; margin: 0 0 14px; padding: 0; }
.lh-tekstblok li { position: relative; margin: 0 0 8px; padding-left: 30px; }
.elementor-widget-text-editor.lh-tekstblok li { margin-left: 0; }   /* niet de algemene −20 px van lijsten in tekstblokken */
.lh-tekstblok li::before { content: ""; position: absolute; left: 0; top: .45em; width: 16px; height: 16px; border-radius: 50%; background: var(--lh-geel); }
.lh-tekstblok--geel li::before { box-shadow: inset 0 0 0 1px var(--lh-navy); }   /* op een geel vlak: bolletje met navy rand, zoals live */

/* ===== Nieuwsoverzicht =====
   Kaart en grid staan in Elementor/JetEngine (listing lh-nieuws-overzicht). Hier alleen:
   1. de variant: groot alleen op het eerste item van pagina 1 (over de volle breedte) — JetEngine kan het eerste item niet anders opmaken;
   2. filter en paginering: HTML uit de thema-shortcodes [lh_nieuwsfilter] en [lh_paginering] (links met actieve stand). */
.lh-nieuwsgrid .jet-listing-grid__item .lh-nk-groot { display: none; }
body:not(.paged) .lh-nieuwsgrid .jet-listing-grid__item:first-child { flex: 0 0 100%; max-width: 100%; }
body:not(.paged) .lh-nieuwsgrid .jet-listing-grid__item:first-child .lh-nk-groot { display: flex; }
body:not(.paged) .lh-nieuwsgrid .jet-listing-grid__item:first-child .lh-nk-klein { display: none; }
.lho-filter { display: flex; flex-wrap: wrap; gap: 8px; }
.lho-filter a { display: block; padding: 9px 18px; border: 2px solid var(--lh-navy); border-radius: 999px; font: italic 900 14px/14px Barlow, sans-serif; letter-spacing: .06em; text-transform: uppercase; color: var(--lh-navy); text-decoration: none; }
.lho-filter a.on, .lho-filter a:hover { background: var(--lh-navy); color: var(--lh-geel); }
.lho-pag { display: flex; justify-content: center; gap: 8px; }
.lho-pag a, .lho-pag span { display: flex; align-items: center; justify-content: center; min-width: 42px; height: 42px; padding: 0 14px; border: 2px solid var(--lh-navy); border-radius: 999px; font: italic 900 15px/15px Barlow, sans-serif; color: var(--lh-navy); text-decoration: none; }
.lho-pag .on, .lho-pag a:hover { background: var(--lh-navy); color: var(--lh-geel); }
.lho-pag .lho-pag__dots { border: 0; min-width: 0; padding: 0 2px; }

/* ===== Header: alleen wat Elementor niet native kan =====
   Alle opmaak (kleuren, typografie, marges, dropdown) staat in de widget-/containerinstellingen van de Header-template.
   Hier staat uitsluitend het scrollgedrag (class .is-scrolled komt uit hammers.js). */
.lh-hh { transition: background .3s, box-shadow .3s; }
.lh-hh .lh-logo, .lh-hh .lh-logo img { transition: width .4s cubic-bezier(.4,0,.2,1); }
@media (min-width: 768px) {
	.lh-hh.is-scrolled { background: var(--lh-navy) var(--lh-stip) 0 0 / 14px 14px; box-shadow: 0 8px 30px rgba(5,18,48,.35); }
	.lh-hh.is-scrolled .lh-hh__in { --padding-top: 15px; }
	.lh-hh.is-scrolled .lh-logo { position: absolute; left: calc(50% - 402px); top: 0; width: 80px; }
	.lh-hh.is-scrolled .lh-logo img { width: 80px; }
}
/* hamburger licht schuin zoals live (transform op alleen de knop kan niet in Elementor) */
.lh-hh .e-n-menu-toggle { transform: skewX(-8deg); }

/* ===== Home: hero-nieuwsslider — alleen wat Elementor niet kan =====
   Slide-opmaak (hoogte, radius, foto, tekst, typografie) staat in de listing 'Nieuws – hero-slide'. */
.lh-slide::before, .lh-verloop::before { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(to top, rgba(12,31,65,.96) 0%, rgba(12,31,65,.75) 28%, rgba(12,31,65,0) 62%); }   /* verloop met 3 stappen */
.lh-hero-news .jet-listing-grid__slider { border-radius: 20px; overflow: hidden; }
.lh-hero-news .jet-listing-grid { position: relative; }
.lh-hero-news .jet-engine-swiper-pagination-wrapper { position: absolute; left: 40px; right: 40px; bottom: 22px; top: auto; margin: 0; display: flex; gap: 8px; z-index: 4; width: auto; transform: none; }   /* stippen als balkjes */
.lh-hero-news .swiper-pagination-bullet { flex: 1 1 0; height: 4px; width: auto; margin: 0 !important; border-radius: 2px; opacity: 1; }   /* kleuren: instellingen van de listing-grid (Dots) */
@media (max-width: 767px) { .lh-hero-news .jet-engine-swiper-pagination-wrapper { left: 20px; right: 20px; bottom: 18px; } }
/* Lange woorden afbreken in de koppen waar live dat ook doet (Ticketverkoop, Seizoenkaart op home) — geen Elementor-instelling voor. */
.lh-afbreken .elementor-heading-title { overflow-wrap: break-word; }

/* Sponsorstrook home: constant doorschuiven (autoplay zonder pauze staat in de listing-instellingen; lineaire beweging kan niet in Elementor). */
.hs-spons .swiper-wrapper { transition-timing-function: linear !important; }

/* TIJDELIJK: oude tussenruimte voor listings op pagina's die nog niet naar Elementor-instellingen zijn omgezet.
   Verdwijnt per pagina zodra die is omgezet (home, header en footer gebruiken al de eigen Gap-instellingen van de listing). */
body:not(.home) .elementor:not(.elementor-location-header):not(.elementor-location-footer) .elementor-widget-jet-listing-grid:not(.lh-n) .jet-listing-grid__items:not(.swiper-wrapper) { margin: 0 !important; width: 100% !important; gap: var(--lh-gap); }
body:not(.home) .elementor:not(.elementor-location-header):not(.elementor-location-footer) .elementor-widget-jet-listing-grid:not(.lh-n) .jet-listing-grid__item { padding: 0 !important; }

/* Boxscore: naamkolom blijft staan bij horizontaal scrollen (mobiel). Elementor kent geen horizontaal sticky. */
.lh-bs-naam { position: sticky; left: 0; z-index: 1; }
/* Rij-hover: de rij zelf licht op via Elementor (hover-achtergrond); de vaste naamcel heeft een eigen achtergrond en moet mee kleuren. */
.lh-bs-rij:hover .lh-bs-naam { background-color: #12285A !important; }   /* !important: Elementor zet de celachtergrond met een specifiekere selector */

/* Berichttekst (Post Content-widget, .lh-artikel): alinea's en tussenkoppen komen uit de WP-editor;
   Elementor heeft daar geen instellingen voor (lettertype/kleur/grootte staan wél in de widget). */
.lh-artikel p { margin: 0 0 16px; max-width: 660px; }
.lh-artikel h2 { margin: 34px 0 14px; font: italic 900 31px/31.62px Barlow, sans-serif; text-transform: uppercase; color: var(--lh-navy); }
.lh-artikel h2::before { content: ""; display: block; width: 44px; height: 6px; margin-bottom: 12px; background: var(--lh-geel); }
.lh-artikel ul { margin: 0; padding-left: 40px; }
.lh-artikel a { text-decoration: underline; text-underline-offset: 3px; }
/* Citaat, tussenkop 3 en beeld uit de WP-editor (zoals live, eindronde 28-10). */
.lh-artikel blockquote { margin: 28px 0; padding: 6px 0 6px 22px; border-left: 6px solid var(--lh-geel); font: italic 600 22px/1.4 Barlow, sans-serif; color: var(--lh-navy); }
.lh-artikel blockquote p { margin: 0 0 12px; }
.lh-artikel blockquote p:last-child { margin-bottom: 0; }
.lh-artikel h3 { margin: 34px 0 12px; font: italic 900 21px/1.1 Barlow, sans-serif; text-transform: uppercase; color: var(--lh-navy); }
.lh-artikel img { max-width: 100%; height: auto; border-radius: 12px; }
.lh-artikel figure { margin: 24px 0; }
.lh-artikel figcaption, .lh-artikel .wp-caption-text { font-size: 14px; color: #51607C; margin-top: 8px; }
/* Kop met gelijkmatig verdeelde regels (Elementor heeft geen text-wrap-instelling). */
.lh-balans .elementor-heading-title { text-wrap: balance; }
/* Nieuwsbericht: ruimere alinea's dan het verslag (live: 20 px, volle breedte). */
.lh-artikel--ruim p { margin-bottom: 20px; max-width: 680px; }

/* Spelerskaart (.lh-speler): 3:4-verhouding (Elementor kent geen beeldverhouding voor containers),
   minimale breedte van het rugnummer, en het statpaneel dat bij hover omhoog schuift (Elementor heeft geen hover-zichtbaarheid). */
.e-con.lh-speler { aspect-ratio: 3 / 4; }
/* Videothumbnail (.lh-169): 16:9, afbeelding vult het vlak (YouTube-hqdefault is 4:3 met zwarte randen) — Elementor kent geen beeldverhouding voor containers */
.e-con.lh-169 { aspect-ratio: 16 / 9; }
.lh-169 .jet-listing-dynamic-image, .lh-169 .jet-listing-dynamic-image img { width: 100%; height: 100%; object-fit: cover; }
.lh-169 > .elementor-widget-jet-listing-dynamic-image { position: absolute; inset: 0; }
.lh-speler-nr .jet-listing-dynamic-field__content { min-width: 24px; }   /* badge minimaal 44 breed (24 + 2×10 padding), zoals live; JetEngine heeft geen min-breedte */
.lh-speler-stats { opacity: 0; transform: translateY(100%); transition: transform .5s ease-in-out, opacity .5s ease-in-out; pointer-events: none; }
.lh-speler:hover .lh-speler-stats, .lh-speler:focus-within .lh-speler-stats { opacity: 1; transform: none; pointer-events: auto; }
.lh-speler-info { transition: opacity .2s; }
.lh-speler:has(.lh-speler-stats):hover .lh-speler-info { opacity: 0; }
@media (max-width: 479px) { .lh-speler-nr .jet-listing-dynamic-field__content { min-width: 18px; } }   /* mobiel 38 breed */

/* Teamslider home (.lh-team-slider): desktop middelste speler groter, buren kleiner, randen vervagen naar navy (zoals live).
   Tablet en mobiel: geen schaal- of vervaageffect; mobiel één kaart met de buren zichtbaar in de rand. */
.lh-team-slider .jet-listing-grid__slider.swiper { overflow: visible; }
.lh-team-slider .jet-listing-grid__item.swiper-slide { margin: 0 !important; padding: 10px !important; position: relative; z-index: 1; }
@media (min-width: 1025px) {
	.lh-team-slider .jet-listing-grid__slider.swiper { clip-path: inset(-80px 0); }
	.lh-team-slider .jet-listing-grid__item.swiper-slide { transform: scale(.8); transition: transform .3s ease-in-out; }
	.lh-team-slider .jet-listing-grid__item.swiper-slide-active { transform: scale(1.2); z-index: 3; }
	.lh-team-slider .swiper-slide-active .lh-speler { box-shadow: 0 4px 10px rgb(0 0 0 / .2); }
	.lh-team-slider .jet-listing-grid__slider.swiper::before, .lh-team-slider .jet-listing-grid__slider.swiper::after { content: ""; position: absolute; top: 40px; bottom: 0; width: 25%; z-index: 10; pointer-events: none; }
	.lh-team-slider .jet-listing-grid__slider.swiper::before { left: 0; background: linear-gradient(to right, var(--lh-navy) 25%, #fff0); }
	.lh-team-slider .jet-listing-grid__slider.swiper::after { right: 0; background: linear-gradient(to left, var(--lh-navy) 25%, #fff0); }
}
@media (max-width: 767px) { .lh-team-slider .jet-listing-grid__item.swiper-slide { padding: 15px 10px !important; } }

/* Formulier "schuin" (partnerclub-seizoenkaart, zoals live): invoervelden licht schuin. Elementor heeft geen transform voor formuliervelden. */
.lh-form-schuin .elementor-field-textual:not(select) { transform: skewX(-7deg); }
/* Formulieren (klasse lh-form): veldpadding 13/16 zoals live — Elementor heeft geen padding-control voor velden; met regelhoogte 20,8 wordt een veld 51 px */
.lh-form .elementor-field-group .elementor-field-textual { padding: 13px 16px; }
/* Lijsten in tekstblokken springen 20 px minder in, zoals live (daar staat globaal li { margin-left: -20px }). Alleen tekst, niet menu's. */
.elementor-widget-text-editor li, .elementor-widget-theme-post-content li { margin-left: -20px; }
/* Logo-galerij (clinics "Powered by"): logo's naast elkaar en verticaal gecentreerd, ook op mobiel (zoals live). */
.lh-logogalerij .gallery { display: flex; align-items: center; }
/* Academy-teams: op desktop staan de tabknoppen onder de teamfoto (foto 233 px + 14 px ruimte); de foto zelf is absoluut gepositioneerd in Elementor. */
@media (min-width: 1025px) { .lh-teamtabs > .e-n-tabs > .e-n-tabs-heading { padding-top: 247px; } }
/* Sitemap (zoals live): items 20 px terug (lijst zelf: Elementor-instelling inspringing −20), subpagina's op één lijn met hun ouder. */
.elementor-widget-sitemap .elementor-sitemap-item { margin-left: -20px; }

/* Spelerspagina: SVG-grafiek en schotkaart (shortcodes in inc/speler.php; Elementor kan geen staafgrafiek of veldtekening maken).
   Maten en kleuren gelijk aan live. Kaders/tegels eromheen zijn Elementor; hier alleen de SVG-inhoud en de filterknoppen. */
.lh-vorm { display: block; width: 100%; max-width: 720px; height: auto; background: #fff; border: 1px solid #DDE3EE; border-radius: 16px; padding: 8px; box-sizing: border-box; }
.lh-vorm rect.w { fill: #265AA6; } .lh-vorm rect.l { fill: #9AA7BE; }
.lh-vorm .v { font: italic 900 15px "Barlow", Arial, sans-serif; fill: #0C1F41; text-anchor: middle; }
.lh-vorm .l1 { font: italic 900 12px "Barlow", Arial, sans-serif; fill: #0C1F41; text-anchor: middle; }
.lh-vorm .l2 { font: 500 10px "Barlow", Arial, sans-serif; fill: #51607C; text-anchor: middle; }
.lh-vorm .gem { stroke: #F0A800; stroke-width: 1.5; stroke-dasharray: 5 4; }
.lh-vorm .gemt { font: 600 11px "Barlow", Arial, sans-serif; fill: #8A6500; }
.lh-schotfilters { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 14px; }
.lh-schotfilters button { appearance: none; border: 2px solid #0C1F41; background: transparent; color: #0C1F41; border-radius: 999px; padding: 8px 16px; font: italic 900 14px/1 "Barlow", Arial, sans-serif; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.lh-schotfilters button.aan, .lh-schotfilters button:hover { background: #0C1F41; color: #F0E848; }
.lh-schotfilters button:focus-visible { outline: 3px solid #265AA6; outline-offset: 2px; }
.lh-schoten { display: grid; grid-template-columns: minmax(0, 520px) minmax(0, 1fr); gap: 22px; align-items: start; }
.lh-veld { display: block; width: 100%; height: auto; border-radius: 16px; }
.lh-veld .mk { fill: #F0E848; stroke: #051230; stroke-width: .8; }
.lh-veld .ms { fill: none; stroke: #9DB8E8; stroke-width: 1.2; stroke-linecap: round; }
.lh-zones { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.lh-zone { background: #fff; border: 1px solid #DDE3EE; border-radius: 14px; padding: 14px 16px; display: flex; flex-direction: column; gap: 4px; }
.lh-zone span { font: 600 11px/1.2 "Barlow", sans-serif; letter-spacing: .12em; text-transform: uppercase; color: #51607C; }
.lh-zone b { font: italic 900 28px/1 "Barlow", Arial, sans-serif; color: #265AA6; }
.lh-zone i { font-style: normal; font-size: 14px; color: #51607C; }
.lh-zone--tot { background: #0C1F41; border-color: #0C1F41; }
.lh-zone--tot span, .lh-zone--tot i { color: #9DB8E8; } .lh-zone--tot b { color: #F0E848; }
.lh-legenda { grid-column: 1 / -1; margin: 0; font-size: 14px; color: #51607C; display: flex; gap: 8px; align-items: center; }
.lh-legenda .mk { display: inline-block; width: 12px; height: 12px; border-radius: 50%; background: #F0E848; border: 1.5px solid #051230; }
.lh-legenda .ms { color: #51607C; margin-left: 8px; }
@media (max-width: 900px) { .lh-schoten { grid-template-columns: 1fr; } }

/* Gameday: knop 'Stem op de Hammer of the Game' alleen tijdens de wedstrijd (klasse is-live via /lh/v1/hotg-live) */
.lh-hotg-live { display: none; }
.lh-hotg-live.is-live { display: block; }
.lh-hotg-live .elementor-button-text::before { content: ""; display: inline-block; width: 10px; height: 10px; margin-right: 10px; border-radius: 50%; background: #D8232A; box-shadow: 0 0 0 0 rgba(216,35,42,.6); animation: lhpuls 1.6s infinite; }
@keyframes lhpuls { 70% { box-shadow: 0 0 0 10px rgba(216,35,42,0); } 100% { box-shadow: 0 0 0 0 rgba(216,35,42,0); } }
@media (prefers-reduced-motion: reduce) { .lh-hotg-live .elementor-button-text::before { animation: none; } }

/* Hammer of the Game-winnaarskaart (zijbalk wedstrijdverslag, spelerspagina): HTML uit de shortcode [hotg_winner] (hammers-koppeling, uitslag uit de stem-app),
   geen Elementor-widget, dus opmaak hier. Overgenomen uit de vroegere HOTG-plugin. */
.hotg-winner{background:#0C1F41;color:#fff;border-radius:16px;overflow:hidden;font-family:"Barlow",system-ui,sans-serif}
.hotg-winner p{margin:0}
.hotg-winner__hd{background:#F0E848;color:#051230;font:italic 900 16px/1 "Barlow",Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:11px 18px;display:flex;justify-content:space-between;gap:12px}
.hotg-winner__ph{aspect-ratio:4/3;background:#122a57 center 12%/cover no-repeat}
.hotg-winner__bd{padding:16px 18px 18px}
.hotg-winner__naam{font:italic 900 31px/1 "Barlow",Arial,sans-serif;text-transform:uppercase;overflow-wrap:anywhere}
.hotg-winner .hotg-winner__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;list-style:none;margin:14px 0 0;padding:14px 0 0;border-top:1px solid rgba(255,255,255,.14)}
.hotg-winner__stats li{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;font:600 11px/1 "Barlow",Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#9DB8E8}
.hotg-winner__stats b{font:italic 900 29px/1 "Barlow",Arial,sans-serif;letter-spacing:0;color:#fff}
.hotg-winner__stats li:last-child b{color:#F0E848}
.hotg-winner__fn{margin-top:14px!important;font-size:13px;line-height:1.4;color:#9DB8E8}
@media (max-width:900px){.hotg-winner__ph{max-height:300px}}
@media (max-width:620px){
	.hotg-winner{display:grid;grid-template-columns:132px 1fr;grid-template-areas:"hd hd" "ph bd"}
	.hotg-winner__hd{grid-area:hd;padding:9px 14px;font-size:14px}
	.hotg-winner__ph{grid-area:ph;aspect-ratio:auto;min-height:160px;max-height:none}
	.hotg-winner__bd{grid-area:bd;padding:12px 14px 14px;min-width:0}
	.hotg-winner__naam{font-size:25px}
	.hotg-winner .hotg-winner__stats{grid-template-columns:repeat(2,1fr);gap:10px 8px;margin-top:10px;padding-top:10px}
	.hotg-winner__stats b{font-size:25px}
	.hotg-winner__fn{display:none}
}
/* Verslag: de HOTG-winnaarskaart is een link naar de spelerspagina */
a.hotg-winner-link { display: block; color: inherit; text-decoration: none; }
a.hotg-winner-link:hover .hotg-winner { transform: translateY(-2px); }
a.hotg-winner-link:focus-visible { outline: 3px solid var(--lh-geel); outline-offset: 3px; }
/* Historie-tijdlijn (listing lh-mijlpaal): eerste jaartal geel (zoals live) en geen lege fotokolom bij mijlpalen zonder foto — Elementor kent geen 'eerste item'- of 'leeg'-voorwaarde */
.lh-tl-jaar .jet-listing-dynamic-field { justify-content: center; }   /* jaartal midden in de cirkel (JetEngine geeft 'Widget Items Alignment' alleen bij weergave 'inline') */
.jet-listing-grid__item:first-child .lh-tl-jaar .jet-listing-dynamic-field { background-color: var(--lh-geel) !important; }
.jet-listing-grid__item:first-child .lh-tl-jaar .jet-listing-dynamic-field__content { color: var(--lh-navy) !important; }
.e-con.lh-tl-foto:not(:has(img)) { display: none; }

/* Academy: wedstrijden/uitslagen in een scrollvak van ±6 rijen (rij 46–67 px, mobiel 76–94 px; 6 rijen ≈ 297 / 474 px). Elementor heeft geen max-hoogte voor containers/widgets. */
.elementor-widget.lh-scroll6 { max-height: 300px; overflow-y: auto; overscroll-behavior: contain; }
@media (max-width: 767px) { .elementor-widget.lh-scroll6 { max-height: 476px; } }

/* Zijbalk wedstrijdverslag: shortcode-widget van de Hammer of the Game-kaart weg als er (nog) geen uitslag is,
   anders telt de lege widget mee in de tussenruimte (Elementor kan een shortcode-widget niet verbergen op lege uitvoer). */
.lh-hotg-zijbalk:not(:has(.hotg-winner)) { display: none; }

/* Wedstrijdverslag zonder gekoppelde wedstrijd (oudere verslagen): geen scorekaart onder de foto → foto rondom afgerond,
   minder ruimte onderin en blauwe band iets onder de foto door (zoals live). Elementor kan niet reageren op een verborgen listing. */
.lh-verslag-kop:not(:has(.jet-listing-grid__item)) > .e-con-inner > .e-con:first-child { border-radius: 18px !important; padding-bottom: 28px !important; }   /* !important: Elementor zet radius/padding per element-ID */
.lh-verslag-kop:not(:has(.jet-listing-grid__item)) { padding-bottom: 26px !important; }
.lh-verslag-kop:not(:has(.jet-listing-grid__item)) > .e-con-inner > .e-con:nth-child(2) { display: none; }   /* lege scorekaart-houder (negatieve marge) */
