/* prestige sports - main styles */

/* reset */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
img, video { display:block; max-width:100%; }
a { text-decoration:none; color:inherit; }
button { background:none; border:none; cursor:pointer; font-family:inherit; }
ul { list-style:none; }
input, textarea, select { font-family:inherit; }

/* design tokens */
:root {
  --gold:     #C4A55A;
  --gold-lt:  #D4BB7A;
  --gold-dk:  #A8894A;
  --nav-h:    78px;
  --pad-x:    clamp(20px, 5vw, 80px);
  --pad-y:    clamp(56px, 8vw, 112px);
  --radius:   3px;
  --ease:     cubic-bezier(.4,0,.2,1);

  /* Dark mode (default) */
  --c-bg:     #080808;
  --c-s1:     #0f0f0f;
  --c-s2:     #161616;
  --c-s3:     #1e1e1e;
  --c-s4:     #252525;
  --c-t1:     #ffffff;
  --c-t2:     rgba(255,255,255,.72);
  --c-t3:     rgba(255,255,255,.42);
  --c-t4:     rgba(255,255,255,.18);
  --c-brd:    rgba(196,165,90,.1);
  --c-brd2:   rgba(196,165,90,.28);
  --c-nav:    rgba(8,8,8,.97);
  --c-overlay:rgba(8,8,8,.88);
}

/* light mode */
html.light {
  --gold:     #9a7c2e;
  --gold-lt:  #b89040;
  --gold-dk:  #7e641e;
  --c-bg:     #f8f7f2;
  --c-s1:     #f1f0eb;
  --c-s2:     #e9e8e2;
  --c-s3:     #dddcd7;
  --c-s4:     #d3d2cc;
  --c-t1:     #0a0905;
  --c-t2:     rgba(10,9,5,.70);
  --c-t3:     rgba(10,9,5,.44);
  --c-t4:     rgba(10,9,5,.16);
  --c-brd:    rgba(140,110,30,.16);
  --c-brd2:   rgba(140,110,30,.36);
  --c-nav:    rgba(248,247,242,.97);
  --c-overlay:rgba(248,247,242,.88);
}

html { scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body {
  font-family:'Montserrat', sans-serif;
  background:var(--c-bg);
  color:var(--c-t1);
  overflow-x:hidden;
  line-height:1.6;
  transition:background .3s, color .3s;
}

/* progress bar */
.progress-bar {
  position:fixed; top:0; left:0;
  height:3px; background:var(--gold);
  z-index:9999; width:0%;
  transition:width .08s linear;
  pointer-events:none;
}

/* typography utils */
.sec-label {
  font-size:clamp(9px,1vw,11px);
  font-weight:700; letter-spacing:5px;
  text-transform:uppercase; color:var(--gold);
  margin-bottom:14px; display:block;
}
.sec-title {
  font-family:'Barlow Condensed','Montserrat',sans-serif;
  font-size:clamp(32px,5.5vw,64px);
  font-weight:900; font-style:italic;
  line-height:.95; text-transform:uppercase; letter-spacing:-1px;
}
.sec-title .acc { color:var(--gold); }
.rule { width:48px; height:3px; background:var(--gold); margin:24px 0 32px; }
.divider { width:100%; height:1px; background:linear-gradient(90deg,transparent,var(--gold) 30%,var(--gold) 70%,transparent); opacity:.14; }

/* ── BUTTONS (PSV parallelogram style) ──────────── */
.btn {
  display:inline-flex; align-items:center; gap:10px;
  padding:14px 38px 14px 30px; font-size:11px; font-weight:700;
  letter-spacing:2px; text-transform:uppercase;
  border-radius:0; transition:all .25s var(--ease);
  -webkit-tap-highlight-color:transparent;
  clip-path:polygon(10px 0%, 100% 0%, calc(100% - 10px) 100%, 0% 100%);
}
.btn-gold { background:var(--gold); color:#0a0905; }
.btn-gold:hover { background:var(--gold-lt); transform:translateY(-2px); }
.btn-outline { border:1px solid var(--c-brd2); color:var(--gold); }
.btn-outline:hover { background:var(--gold); color:#0a0905; border-color:var(--gold); }
.btn-white { background:var(--c-t1); color:var(--c-bg); }
.btn-white:hover { background:var(--gold); transform:translateY(-2px); }

/* ══════════════════════════════════════════════════
   NAVIGATION - top bar
══════════════════════════════════════════════════ */
#nav {
  position:fixed; inset:0 0 auto 0;
  z-index:500; height:var(--nav-h);
  transition:background .3s, box-shadow .3s;
}
#nav.transparent { background:linear-gradient(to bottom,rgba(8,8,8,.8) 0%,transparent 100%); }
#nav.solid { background:var(--c-nav); box-shadow:0 1px 0 var(--c-brd); }

html.light #nav.transparent { background:linear-gradient(to bottom,rgba(248,247,242,.85) 0%,transparent 100%); }

/* Hero is always dark (video bg) - keep text white in light mode */
html.light .hero-title,
html.light .hero-sub { color:#fff; }

.nav-inner {
  max-width:1440px; margin:0 auto; height:100%;
  padding:0 var(--pad-x);
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
}
.nav-logo img { height:42px; width:auto; }
.nav-logo-wrap { justify-self:center; }
.nav-right-wrap { justify-self:end; display:flex; align-items:center; gap:16px; }

/* sound button */
.sound-btn {
  display:flex; align-items:center; gap:7px;
  background:none; border:none; cursor:pointer; padding:6px 10px;
  color:rgba(255,255,255,.4);
  transition:color .3s var(--ease);
  position:relative;
}
.sound-btn:hover { color:rgba(255,255,255,.85); }
.sound-btn.is-on  { color:var(--gold); }

.sound-bars {
  display:flex; align-items:flex-end; gap:2.5px;
  height:18px; flex-shrink:0;
}
.sound-bars .sb {
  width:3px;
  background:currentColor;
  border-radius:2px;
  transition:height .35s var(--ease), background .3s;
  will-change:height;
}
/* OFF state - flat */
.sound-bars .sb:nth-child(1) { height:4px; }
.sound-bars .sb:nth-child(2) { height:4px; }
.sound-bars .sb:nth-child(3) { height:4px; }
.sound-bars .sb:nth-child(4) { height:4px; }
.sound-bars .sb:nth-child(5) { height:4px; }

/* ON state - animated equalizer */
.sound-btn.is-on .sound-bars .sb:nth-child(1) { animation:sb1 .9s ease-in-out infinite alternate; }
.sound-btn.is-on .sound-bars .sb:nth-child(2) { animation:sb2 .7s ease-in-out infinite alternate .12s; }
.sound-btn.is-on .sound-bars .sb:nth-child(3) { animation:sb3 1.1s ease-in-out infinite alternate .05s; }
.sound-btn.is-on .sound-bars .sb:nth-child(4) { animation:sb4 .8s ease-in-out infinite alternate .2s; }
.sound-btn.is-on .sound-bars .sb:nth-child(5) { animation:sb5 .95s ease-in-out infinite alternate .08s; }

@keyframes sb1 { 0%{height:4px} 100%{height:14px} }
@keyframes sb2 { 0%{height:6px} 100%{height:18px} }
@keyframes sb3 { 0%{height:3px} 100%{height:11px} }
@keyframes sb4 { 0%{height:7px} 100%{height:16px} }
@keyframes sb5 { 0%{height:4px} 100%{height:13px} }

.sound-label {
  font-family:'Barlow Condensed',sans-serif;
  font-size:11px; font-weight:800;
  letter-spacing:2.5px; text-transform:uppercase;
  line-height:1;
}

/* Solid nav - darken idle text slightly less */
#nav.solid .sound-btn { color:rgba(255,255,255,.5); }
#nav.solid .sound-btn:hover { color:rgba(255,255,255,.9); }
#nav.solid .sound-btn.is-on { color:var(--gold); }

/* Hide label on small screens, keep bars */
@media (max-width:600px) { .sound-label { display:none; } }

.nav-cta-top {
  padding:10px 22px;
  background:var(--gold); color:#0a0905;
  font-size:10px; font-weight:800;
  letter-spacing:2px; text-transform:uppercase;
  border-radius:var(--radius);
  transition:background .2s, transform .2s;
  white-space:nowrap;
}
.nav-cta-top:hover { background:var(--gold-lt); transform:translateY(-1px); }

.nav-toggle {
  display:flex; flex-direction:column; gap:5px;
  z-index:520; position:relative; cursor:pointer; flex-shrink:0;
  width:44px; height:44px;
  align-items:center; justify-content:center;
  background:var(--gold); border-radius:2px;
}
.nav-toggle span {
  display:block; width:22px; height:2.5px;
  background:#0a0905; border-radius:1px;
  transition:all .35s var(--ease); transform-origin:center;
  pointer-events:none;
}
/* Hamburger → X when panel open */
.nav-toggle.open span:nth-child(1) { transform:translateY(7.5px) rotate(45deg); }
.nav-toggle.open span:nth-child(2) { opacity:0; transform:scaleX(0); }
.nav-toggle.open span:nth-child(3) { transform:translateY(-7.5px) rotate(-45deg); }

/* ══════════════════════════════════════════════════
   NAV PANEL - PSV-style left slide
══════════════════════════════════════════════════ */
.nav-panel-backdrop {
  position:fixed; inset:0;
  background:rgba(0,0,0,.55);
  z-index:488; opacity:0; pointer-events:none;
  transition:opacity .4s var(--ease);
}
.nav-panel-backdrop.open { opacity:1; pointer-events:all; }

.nav-panel {
  position:fixed; top:0; left:0; bottom:0; /* top overridden per page via has-ticker */
  width:min(400px,90vw);
  background:var(--c-s1);
  border-right:1px solid var(--c-brd);
  z-index:490;
  display:flex; flex-direction:column;
  transform:translateX(-100%);
  transition:transform .48s var(--ease);
  overflow-y:auto;
  scrollbar-width:none;
}
.nav-panel::-webkit-scrollbar { display:none; }
.nav-panel.open { transform:translateX(0); z-index:510; }

.nav-panel-head {
  height:var(--nav-h);
  display:flex; align-items:center; justify-content:space-between;
  padding:0 clamp(24px,4vw,44px);
  border-bottom:1px solid var(--c-brd);
  flex-shrink:0;
}
.nav-panel-head-logo img { height:36px; }

.nav-panel-close {
  width:40px; height:40px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  color:var(--c-t1); font-size:16px;
  border:1px solid var(--c-brd2);
  transition:background .2s, color .2s, border-color .2s;
}
.nav-panel-close:hover,
.nav-panel.open .nav-panel-close { color:var(--gold); border-color:var(--gold); }
.nav-panel-close:hover { background:var(--gold); color:#0a0905; }

.nav-panel-links {
  flex:1;
  padding:clamp(16px,3vw,32px) 0;
  display:flex; flex-direction:column;
}

.nav-panel-link {
  display:flex; align-items:center; justify-content:space-between;
  padding:clamp(14px,2vw,18px) clamp(24px,4vw,44px);
  font-family:'Barlow Condensed','Montserrat',sans-serif;
  font-size:clamp(28px,4.5vw,40px);
  font-weight:900; font-style:italic;
  text-transform:uppercase; letter-spacing:-0.5px;
  color:var(--c-t3);
  border-bottom:1px solid var(--c-brd);
  transition:color .2s, padding-left .2s, background .2s;
  position:relative;
}
.nav-panel-link:hover, .nav-panel-link.active {
  color:var(--c-t1); padding-left:calc(clamp(24px,4vw,44px) + 12px);
  background:var(--c-brd);
}
.nav-panel-link.active { color:var(--gold); }
.nav-panel-link .link-arrow { font-size:14px; color:var(--c-t3); transition:color .2s; }
.nav-panel-link:hover .link-arrow { color:var(--gold); }

/* Submenu */
.nav-panel-sub {
  display:none;
  flex-direction:column;
  background:var(--c-s2);
}
.nav-panel-sub.open { display:flex; }
.nav-panel-sub a {
  padding:10px clamp(24px,4vw,44px) 10px calc(clamp(24px,4vw,44px) + 16px);
  font-size:13px; font-weight:700;
  letter-spacing:1.5px; text-transform:uppercase;
  color:var(--c-t3);
  border-bottom:1px solid var(--c-brd);
  transition:color .2s, padding-left .2s;
}
.nav-panel-sub a:hover { color:var(--gold); padding-left:calc(clamp(24px,4vw,44px) + 24px); }

.nav-panel-bottom {
  padding:clamp(20px,3vw,32px) clamp(24px,4vw,44px);
  border-top:1px solid var(--c-brd);
  display:flex; flex-direction:column; gap:12px;
  flex-shrink:0;
}
.nav-panel-cta { width:100%; justify-content:center; font-size:11px; }

.nav-panel-controls {
  display:flex; align-items:center; justify-content:space-between;
  padding-top:12px;
  border-top:1px solid var(--c-brd);
}

.lang-toggle {
  display:flex; gap:2px;
  background:var(--c-s2);
  border:1px solid var(--c-brd);
  border-radius:var(--radius);
  padding:3px;
}
.lang-btn {
  padding:5px 9px;
  font-size:9px; font-weight:800; letter-spacing:1.5px;
  text-transform:uppercase; color:var(--c-t3);
  border-radius:2px; transition:all .2s;
}
.lang-btn.active {
  background:var(--gold); color:#0a0905;
}
.lang-btn:hover:not(.active) { color:var(--c-t1); }

.theme-toggle-btn {
  width:40px; height:40px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  border:1px solid var(--c-brd2); color:var(--gold); font-size:16px;
  transition:background .25s, color .25s, border-color .25s;
}
.theme-toggle-btn:hover { background:var(--gold); color:#0a0905; border-color:var(--gold); }

/* ticker */
.ticker {
  position:fixed; top:0; left:0; right:0;
  background:var(--gold); color:#0a0905;
  height:36px; overflow:hidden; z-index:600;
}
.ticker-track {
  display:flex; align-items:center; height:100%;
  white-space:nowrap; animation:ticker 40s linear infinite;
}
.ticker-track:hover { animation-play-state:paused; }
.ticker-item {
  display:inline-flex; align-items:center; gap:10px;
  font-size:10px; font-weight:800; letter-spacing:1.5px;
  text-transform:uppercase; padding:0 32px;
}
.ticker-item i { font-size:10px; opacity:.85; }
.ticker-sep { width:4px; height:4px; background:#0a0905; border-radius:50%; opacity:.4; flex-shrink:0; }
@keyframes ticker { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

/* nav + panel pushed down when ticker present */
body.has-ticker #nav { top:36px; }
body.has-ticker #progress-bar { top:36px; }
body.has-ticker #nav-panel { top:36px; }

/* page hero */
.page-hero {
  position:relative;
  height:clamp(300px, 38vh, 420px);
  padding-bottom:clamp(32px,4vw,52px);
  padding-left:var(--pad-x); padding-right:var(--pad-x);
  display:flex; align-items:flex-end; overflow:hidden;
}
.page-hero-bg { position:absolute; inset:0; background:var(--c-s2); overflow:hidden; }
/* De foto stond op 20% dekking met een verloop tot 85% zwart eroverheen.
   Samen was dat zo donker dat je niet meer zag wat er op de foto stond.
   Nu is de foto zichtbaar en zorgt het verloop alleen onderin nog voor
   genoeg contrast, want daar staat de titel. */
.page-hero-bg img { width:100%; height:100%; object-fit:cover; opacity:.5; filter:grayscale(20%); }
.page-hero-bg::after {
  content:''; position:absolute; inset:0;
  /* Twee lagen. Die vanaf links zorgt dat de titel altijd genoeg
     contrast heeft, ook op een lichte foto. Die van boven naar beneden
     laat de kop in de balk eronder overlopen. Rechts blijft de foto
     grotendeels open. */
  background:
    linear-gradient(to right, rgba(0,0,0,.78) 0%, rgba(0,0,0,.45) 38%, rgba(0,0,0,.12) 72%, rgba(0,0,0,.05) 100%),
    linear-gradient(to bottom, rgba(0,0,0,.22) 0%, rgba(0,0,0,.4) 50%, rgba(0,0,0,.68) 100%);
}
.page-hero-content { position:relative; z-index:1; max-width:1440px; margin:0 auto; width:100%; }
.page-hero-breadcrumb {
  font-size:11px; font-weight:600; letter-spacing:2px;
  text-transform:uppercase; color:var(--c-t3); margin-bottom:16px;
}
.page-hero-breadcrumb span { color:var(--gold); }

/* home hero */
.home-hero {
  position:relative; height:100svh; min-height:600px;
  display:flex; align-items:center; overflow:hidden;
}
.hero-video {
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; z-index:0;
}
.hero-overlay {
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(135deg,rgba(8,8,8,.9) 0%,rgba(8,8,8,.55) 50%,rgba(8,8,8,.9) 100%);
}
.hero-overlay::after {
  content:''; position:absolute; bottom:0; left:0; right:0; height:220px;
  background:linear-gradient(to top,var(--c-bg),transparent);
}
.hero-content {
  position:relative; z-index:2; padding:0 var(--pad-x);
  max-width:1440px; margin:0 auto; width:100%;
  text-align:center;
  display:flex; flex-direction:column; align-items:center;
}
.hero-tag {
  display:inline-flex; align-items:center; gap:12px;
  font-size:10px; font-weight:700; letter-spacing:5px;
  text-transform:uppercase; color:var(--gold); margin-bottom:clamp(16px,3vw,28px);
}
.hero-tag::before, .hero-tag::after {
  content:''; width:36px; height:1px; background:var(--gold);
}
.hero-title {
  font-family:'Barlow Condensed','Montserrat',sans-serif;
  font-size:clamp(72px,13vw,160px); font-weight:900; font-style:italic;
  line-height:.85; letter-spacing:-3px; text-transform:uppercase;
  margin-bottom:clamp(20px,2.5vw,32px);
}
.hero-title .acc { color:var(--gold); display:block; }
.hero-sub {
  font-size:clamp(13px,1.5vw,16px); font-weight:300; color:var(--c-t2);
  max-width:600px; margin-bottom:clamp(28px,4vw,48px); line-height:1.7; text-align:center;
}
.hero-actions { display:flex; gap:14px; flex-wrap:wrap; justify-content:center; }

.scroll-cue {
  position:absolute; bottom:36px; left:50%; transform:translateX(-50%);
  z-index:2; display:flex; flex-direction:column; align-items:center; gap:8px;
  color:var(--c-t3); font-size:8px; letter-spacing:3px; text-transform:uppercase;
}
.mouse { width:20px; height:32px; border:1.5px solid var(--c-t4); border-radius:10px; display:flex; justify-content:center; padding-top:5px; }
.wheel { width:2px; height:5px; background:var(--gold); border-radius:2px; animation:wheel 1.7s ease-in-out infinite; }
@keyframes wheel { 0%{opacity:1;transform:translateY(0)} 100%{opacity:0;transform:translateY(10px)} }

/* ══════════════════════════════════════════════════
   NEWS SLIDER - PSV trapezium style
══════════════════════════════════════════════════ */
.news-slider-section {
  background:var(--c-bg);
  border-top:1px solid var(--c-brd);
  border-bottom:1px solid var(--c-brd);
  padding:clamp(44px,6vw,80px) 0 0;
  overflow:hidden;
}
.news-slider-header {
  display:flex; align-items:center; justify-content:space-between;
  padding:0 var(--pad-x);
  margin-bottom:clamp(24px,3vw,40px);
}
.news-slider-header-left { display:flex; flex-direction:column; gap:4px; }
.slider-arrows { display:flex; gap:8px; align-items:center; }
.slider-arrow-btn {
  width:44px; height:44px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  border:1px solid var(--c-brd2); color:var(--gold); font-size:14px;
  transition:background .2s, color .2s, border-color .2s, opacity .2s;
  background:var(--c-s2);
}
.slider-arrow-btn:hover { background:var(--gold); color:#0a0905; border-color:var(--gold); }
.slider-arrow-btn:disabled { opacity:0; pointer-events:none; }

.news-slider-track {
  display:flex; gap:0;
  overflow-x:scroll; scrollbar-width:none;
  padding:0;
  scroll-behavior:smooth;
}
.news-slider-track::-webkit-scrollbar { display:none; }

.news-slide {
  flex-shrink:0;
  width:calc(33.33vw + 15px);
  height:clamp(400px, 46vw, 580px);
  position:relative;
  cursor:pointer;
  clip-path:polygon(7% 0%, 100% 0%, 93% 100%, 0% 100%);
  margin-right:-22px;
  z-index:1;
  transition:transform .4s var(--ease);
  overflow:hidden;
}
.news-slide:hover { transform:translateY(-8px) scale(1.02); z-index:4; }
.news-slide:last-child { margin-right:0; }

/* gold top-line reveal on hover */
.news-slide::after {
  content:''; position:absolute; top:0; left:7%; right:7%; height:3px;
  background:linear-gradient(90deg,transparent,var(--gold) 30%,var(--gold) 70%,transparent);
  opacity:0; transition:opacity .35s; z-index:5;
}
.news-slide:hover::after { opacity:1; }

.news-slide img {
  width:100%; height:100%; object-fit:cover;
  filter:brightness(.65);
  transition:filter .4s, transform .6s var(--ease);
  display:block;
}
.news-slide:hover img { filter:brightness(.85); transform:scale(1.05); }

.news-slide-overlay {
  position:absolute; inset:0;
  background:
    linear-gradient(to top, rgba(0,0,0,.95) 0%, rgba(0,0,0,.55) 35%, rgba(0,0,0,.05) 75%, transparent 100%),
    linear-gradient(135deg, rgba(196,165,90,.06) 0%, transparent 60%);
}

.news-slide-body {
  position:absolute; bottom:0; left:7%; right:7%;
  z-index:2; padding-bottom:clamp(20px,2.5vw,36px);
}
.news-slide-cat {
  font-size:8px; font-weight:800; letter-spacing:3px;
  text-transform:uppercase; color:var(--gold);
  display:inline-flex; align-items:center; gap:7px;
  margin-bottom:10px;
}
.news-slide-cat::before {
  content:''; width:20px; height:1px; background:var(--gold); display:block;
}
.news-slide-title {
  font-family:'Barlow Condensed', sans-serif;
  font-size:clamp(22px, 2.6vw, 42px);
  font-weight:900; font-style:italic;
  text-transform:uppercase;
  color:#fff; line-height:.9;
  letter-spacing:-1px;
  text-shadow:0 4px 24px rgba(0,0,0,.7);
  display:block;
  background:none; padding:0;
}

/* section wrappers */
.section { padding:var(--pad-y) var(--pad-x); }
.section-inner { max-width:1440px; margin:0 auto; }
.section-dark { background:var(--c-s2); }
.section-darker { background:var(--c-s1); }

.section-head {
  display:flex; align-items:flex-end; justify-content:space-between;
  flex-wrap:wrap; gap:16px; margin-bottom:clamp(32px,5vw,56px);
}

/* ── MEDIA SECTION (3-panel) ─────────────────────  */
.media-section {
  display:grid; grid-template-columns:1fr 1.8fr 1fr;
  min-height:480px;
  border-top:1px solid var(--c-brd);
  border-bottom:1px solid var(--c-brd);
}
.media-panel {
  padding:clamp(24px,3vw,44px);
  border-right:1px solid var(--c-brd);
  display:flex; flex-direction:column; background:var(--c-s1);
}
.media-panel:last-child { border-right:none; }
.media-panel-label {
  font-size:9px; font-weight:800; letter-spacing:5px;
  text-transform:uppercase; color:var(--gold); margin-bottom:24px;
  display:flex; align-items:center; gap:10px;
}
.media-panel-label::after { content:''; flex:1; height:1px; background:var(--c-brd2); }
.media-news-list { display:flex; flex-direction:column; gap:0; flex:1; }
.media-news-item {
  display:flex; flex-direction:column; padding:16px 0;
  border-bottom:1px solid var(--c-brd); cursor:pointer; transition:padding-left .2s;
}
.media-news-item:hover { padding-left:8px; }
.media-news-item-cat { font-size:8px; font-weight:800; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:6px; }
.media-news-item-title { font-size:clamp(12px,1.2vw,14px); font-weight:700; text-transform:uppercase; line-height:1.25; color:var(--c-t2); transition:color .2s; margin-bottom:6px; }
.media-news-item:hover .media-news-item-title { color:var(--gold); }
.media-news-item-date { font-size:9px; font-weight:600; color:var(--c-t3); letter-spacing:1px; }
.media-panel.featured { padding:0; position:relative; overflow:hidden; cursor:pointer; }
.media-panel.featured img { width:100%; height:100%; object-fit:cover; filter:brightness(.7); transition:transform .6s var(--ease), filter .35s; }
.media-panel.featured:hover img { transform:scale(1.04); filter:brightness(.85); }
.media-featured-overlay {
  position:absolute; inset:0;
  background:linear-gradient(to top, rgba(0,0,0,.97) 0%, rgba(0,0,0,.45) 45%, rgba(0,0,0,.1) 100%);
  display:flex; flex-direction:column; justify-content:flex-end;
  padding:clamp(24px,3vw,44px);
}
.media-featured-cat { font-size:9px; font-weight:800; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:12px; display:flex; align-items:center; gap:8px; }
.media-featured-cat::before { content:''; width:20px; height:1px; background:var(--gold); }
.media-featured-title { font-family:'Barlow Condensed','Montserrat',sans-serif; font-size:clamp(24px,3.5vw,44px); font-weight:900; font-style:italic; text-transform:uppercase; line-height:.95; letter-spacing:-1px; margin-bottom:16px; color:#ffffff; }
.media-featured-date { font-size:10px; font-weight:600; letter-spacing:1.5px; color:rgba(255,255,255,.4); text-transform:uppercase; }
.media-side-card { display:flex; flex-direction:column; cursor:pointer; flex:1; }
.media-side-card-img { aspect-ratio:16/9; overflow:hidden; margin-bottom:16px; border-radius:var(--radius); }
.media-side-card-img img { width:100%; height:100%; object-fit:cover; filter:brightness(.8); transition:transform .5s var(--ease), filter .3s; }
.media-side-card:hover .media-side-card-img img { transform:scale(1.05); filter:brightness(1); }
.media-side-card-cat { font-size:8px; font-weight:800; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:8px; }
.media-side-card-title { font-size:clamp(14px,1.5vw,17px); font-weight:800; text-transform:uppercase; line-height:1.2; color:var(--c-t2); margin-bottom:10px; transition:color .2s; }
.media-side-card:hover .media-side-card-title { color:var(--gold); }
.media-side-card-date { font-size:9px; font-weight:600; color:var(--c-t3); letter-spacing:1px; margin-top:auto; }
.media-all-link { display:inline-flex; align-items:center; gap:8px; font-size:9px; font-weight:800; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-top:20px; transition:gap .2s; }
.media-all-link:hover { gap:14px; }

/* deals strip */
.deals-strip { background:var(--c-s1); padding:clamp(48px,7vw,88px) 0; border-top:3px solid var(--gold); }
.deals-strip-inner { max-width:1440px; margin:0 auto; padding:0 var(--pad-x); }

/* deals carousel */
.deals-carousel-wrap {
  display:flex; align-items:center;
  gap:clamp(12px,2vw,28px);
  margin-top:clamp(28px,4vw,48px);
}
.deals-carousel-viewport { flex:1; overflow:hidden; }
.deals-carousel-track {
  display:flex;
  transition:transform .55s cubic-bezier(.4,0,.2,1);
  will-change:transform;
}
.deal-card-slide {
  flex:0 0 100%;
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.deal-card-slide .deal-card {
  flex:none; width:100%; max-width:none;
}
.deals-arrow {
  flex-shrink:0; width:44px; height:44px;
  background:var(--c-s3); border:1px solid var(--c-brd);
  color:var(--c-t1); font-size:13px; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  transition:background .2s, border-color .2s, color .2s;
  clip-path:polygon(4px 0%,100% 0%,calc(100% - 4px) 100%,0% 100%);
}
.deals-arrow:hover { background:var(--gold); border-color:var(--gold); color:#0a0905; }
.deals-dots {
  display:flex; justify-content:center; align-items:center;
  gap:10px; margin-top:24px;
}
.deals-dot {
  width:5px; height:5px; border-radius:50%;
  background:var(--c-brd); border:none; cursor:pointer; padding:0;
  transition:background .25s, transform .25s, width .25s;
}
.deals-dot.active { background:var(--gold); transform:scale(1); width:22px; border-radius:3px; }
.deals-timer-bar {
  height:2px; background:rgba(196,165,90,.18);
  margin-top:14px; border-radius:2px; overflow:hidden;
}
.deals-timer-fill {
  height:100%; width:0%; background:var(--gold);
  transition:width 15s linear;
}

/* legacy .deals-grid still used on deals.html */
.deals-grid {
  display:flex; gap:14px;
  overflow-x:auto; scroll-snap-type:x mandatory;
  scrollbar-width:none;
  margin:clamp(28px,4vw,48px) calc(-1 * var(--pad-x)) 0;
  padding:clamp(8px,1vw,12px) var(--pad-x);
  -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 5%,#000 95%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0%,#000 5%,#000 95%,transparent 100%);
}
.deals-grid::-webkit-scrollbar { display:none; }
.deal-card {
  flex:0 0 clamp(260px,30%,400px); scroll-snap-align:start;
  background:var(--c-s3); border:1px solid var(--c-brd); border-radius:var(--radius);
  overflow:hidden; transition:border-color .25s, transform .25s; cursor:pointer;
}
.deal-card:hover { border-color:var(--gold); transform:translateY(-4px); }
.deal-card-img { width:100%; aspect-ratio:3/2; overflow:hidden; position:relative; }
.deal-card-img img { width:100%; height:100%; object-fit:cover; object-position:top; filter:grayscale(20%) brightness(.8); transition:transform .5s var(--ease), filter .3s; }
.deal-card:hover .deal-card-img img { transform:scale(1.06); filter:none; }
.deal-card-clubs { position:absolute; bottom:0; left:0; right:0; background:linear-gradient(to top,rgba(0,0,0,.97),transparent); padding:20px 16px 12px; display:flex; align-items:center; gap:10px; font-size:10px; font-weight:800; letter-spacing:1.5px; text-transform:uppercase; color:rgba(255,255,255,.6); }
.deal-card-clubs .club-to { color:var(--gold); }
.deal-card-clubs i { font-size:8px; color:var(--gold); }
.deal-card-body { padding:16px 18px 20px; }
.deal-card-player { font-family:'Barlow Condensed','Montserrat',sans-serif; font-size:clamp(20px,2.5vw,28px); font-weight:900; font-style:italic; text-transform:uppercase; letter-spacing:-.5px; margin-bottom:6px; line-height:1; }
.deal-card-meta { font-size:9px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--c-t3); margin-bottom:10px; }
.deal-card-note { font-size:12px; font-weight:300; color:var(--c-t2); line-height:1.6; }

/* deals photo strip (homepage) */
.deals-photo-strip { margin-top:clamp(28px,4vw,44px); }
.deals-photo-track {
  display:flex; gap:12px;
  overflow-x:auto; scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch; scrollbar-width:none;
  cursor:grab; padding-bottom:6px;
}
.deals-photo-track::-webkit-scrollbar { display:none; }
.deals-photo-track:active { cursor:grabbing; }
.deals-photo-item {
  flex:0 0 clamp(200px,26vw,320px); aspect-ratio:3/4;
  border-radius:var(--radius); overflow:hidden;
  scroll-snap-align:start; position:relative;
  border:1px solid var(--c-brd); transition:border-color .25s;
}
.deals-photo-item:hover { border-color:var(--gold); }
.deals-photo-item img { width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.deals-photo-item:hover img { transform:scale(1.05); }
@media (max-width:600px) { .deals-photo-item { flex:0 0 72vw; } }

/* player cards */
.players-filter { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:clamp(28px,4vw,44px); }
.filter-search { margin-left:auto; position:relative; }
.filter-search input { background:var(--c-s3); border:1px solid var(--c-brd2); color:var(--c-t1); padding:10px 16px 10px 40px; border-radius:var(--radius); font-size:12px; width:220px; transition:border-color .2s; }
.filter-search input:focus { outline:none; border-color:var(--gold); }
.filter-search input::placeholder { color:var(--c-t3); }
.filter-search i { position:absolute; left:14px; top:50%; transform:translateY(-50%); color:var(--gold); font-size:12px; }
.filter-btn { padding:9px 20px; font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--c-t3); border:1px solid var(--c-t4); border-radius:var(--radius); transition:all .2s; }
.filter-btn:hover, .filter-btn.active { background:var(--gold); color:#0a0905; border-color:var(--gold); }
.players-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.player-card {
  position:relative; overflow:hidden; border-radius:var(--radius);
  background:var(--c-s3); aspect-ratio:3/4; cursor:pointer;
  transition:transform .35s var(--ease), box-shadow .35s;
}
.player-card:hover { transform:translateY(-6px); box-shadow:0 20px 40px rgba(0,0,0,.4); }
.player-card.hidden { display:none; }
.player-card-img { position:absolute; inset:0; overflow:hidden; }
.player-card-img img { width:100%; height:100%; object-fit:cover; object-position:top center; transition:transform .55s var(--ease), filter .35s; filter:grayscale(10%) brightness(.85); }
.player-card:hover .player-card-img img { transform:scale(1.08); filter:grayscale(0%) brightness(1); }
.player-card-overlay { position:absolute; inset:0; background:linear-gradient(to top, rgba(0,0,0,.95) 0%, rgba(0,0,0,.4) 40%, transparent 70%); z-index:1; transition:background .35s; }
.player-card:hover .player-card-overlay { background:linear-gradient(to top,rgba(0,0,0,.97) 0%, rgba(0,0,0,.6) 50%, rgba(0,0,0,.2) 100%); }
.player-card-pos { position:absolute; top:14px; right:14px; z-index:2; font-size:8px; font-weight:800; letter-spacing:2px; text-transform:uppercase; color:#0a0905; background:var(--gold); padding:4px 10px; border-radius:2px; }
.player-card-body { position:absolute; bottom:0; left:0; right:0; z-index:2; padding:20px 18px; }
.player-card-flag { width:20px; height:14px; margin-bottom:8px; object-fit:cover; border-radius:1px; box-shadow:0 1px 4px rgba(0,0,0,.5); }
.player-card-name { font-family:'Barlow Condensed','Montserrat',sans-serif; font-size:clamp(18px,2.2vw,24px); font-weight:900; font-style:italic; text-transform:uppercase; letter-spacing:-.3px; line-height:1.0; margin-bottom:6px; color:#ffffff; }
.player-card-club { font-size:10px; font-weight:600; letter-spacing:1.5px; text-transform:uppercase; color:rgba(255,255,255,.5); }
.player-card-more { margin-top:12px; padding-top:12px; border-top:1px solid rgba(196,165,90,.25); display:flex; align-items:center; justify-content:space-between; opacity:0; transform:translateY(8px); transition:opacity .3s, transform .3s; }
.player-card:hover .player-card-more { opacity:1; transform:translateY(0); }
.player-card-more span { font-size:9px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--gold); }
.player-card-more i { color:var(--gold); font-size:12px; }

/* featured players slider */
.feat-slider-wrap {
  position:relative;
  margin-top:clamp(28px,4vw,44px);
}
.players-slider {
  display:flex;
  gap:clamp(10px,1.5vw,16px);
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  padding:8px 0 28px;
  -webkit-overflow-scrolling:touch;
}
.players-slider::-webkit-scrollbar { display:none; }

/* Desktop: ~2 full cards + clear peek of 3rd */
.players-slider .player-card {
  flex:0 0 clamp(300px,41%,380px);
  scroll-snap-align:start;
}
@media (max-width:900px) {
  .players-slider .player-card { flex:0 0 clamp(260px,58%,360px); }
}
@media (max-width:600px) {
  /* Mobile: 1 full card + half peek = "1 per keer" */
  .players-slider .player-card { flex:0 0 calc(80% - 8px); }
}

/* Arrows */
.feat-arrow {
  display:flex; align-items:center; justify-content:center;
  position:absolute; top:50%; transform:translateY(calc(-50% - 14px));
  z-index:10; width:46px; height:46px;
  background:var(--gold); color:#0a0905;
  border:none; cursor:pointer; font-size:13px; font-weight:900;
  clip-path:polygon(6px 0%,100% 0%,calc(100% - 6px) 100%,0% 100%);
  transition:background .2s, opacity .25s;
}
.feat-arrow:hover  { background:var(--gold-lt); }
.feat-arrow:disabled { opacity:.22; pointer-events:none; }
.feat-prev { left:-8px; }
.feat-next { right:-8px; }

/* Dots */
.feat-dots { display:flex; justify-content:center; align-items:center; gap:8px; }
.feat-dot {
  height:5px; border-radius:3px; width:5px;
  background:rgba(255,255,255,.18); border:none; cursor:pointer; padding:0;
  transition:background .3s, width .3s;
}
.feat-dot.active { background:var(--gold); width:20px; }

/* Sound tooltip - auto-hint + click feedback */
.sound-tooltip {
  position:absolute; top:calc(100% + 12px); left:50%;
  transform:translateX(-50%) translateY(-5px);
  background:var(--c-s1); border:1px solid rgba(196,165,90,.45);
  color:var(--gold);
  font-family:'Barlow Condensed',sans-serif;
  font-size:11px; font-weight:800; letter-spacing:2px; text-transform:uppercase;
  padding:8px 18px; white-space:nowrap; pointer-events:none;
  opacity:0; transition:opacity .3s var(--ease), transform .3s var(--ease);
  clip-path:polygon(5px 0%,100% 0%,calc(100% - 5px) 100%,0% 100%);
  z-index:999;
  box-shadow:0 8px 24px rgba(0,0,0,.4);
}
/* Arrow pointing UP toward the button */
.sound-tooltip::before {
  content:'';
  position:absolute; bottom:100%; left:50%;
  transform:translateX(-50%);
  border:6px solid transparent;
  border-bottom-color:rgba(196,165,90,.45);
}
.sound-tooltip::after {
  content:'';
  position:absolute; bottom:100%; left:50%;
  transform:translateX(-50%) translateY(1px);
  border:5px solid transparent;
  border-bottom-color:var(--c-s1);
}
.sound-btn.tip-visible .sound-tooltip { opacity:1; transform:translateX(-50%) translateY(0); }

/* Mobile: anchor tooltip to right edge so it stays on screen */
@media (max-width:600px) {
  .sound-tooltip {
    left:auto; right:-10px;
    transform:translateY(-5px);
    white-space:nowrap;
  }
  .sound-btn.tip-visible .sound-tooltip { transform:translateY(0); }
  .sound-tooltip::before { left:auto; right:18px; transform:none; }
  .sound-tooltip::after  { left:auto; right:19px; transform:translateY(1px); }
}

/* player carousel */
.player-carousel-section {
  background:var(--c-bg); padding:clamp(48px,6vw,80px) 0;
  overflow:hidden; position:relative; border-bottom:1px solid var(--c-brd);
}
.player-carousel-section::before { content:''; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:800px; height:800px; background:radial-gradient(circle,var(--c-brd) 0%,transparent 60%); pointer-events:none; }
.carousel-header { text-align:center; margin-bottom:clamp(32px,4vw,56px); padding:0 var(--pad-x); }
.carousel-stage { position:relative; height:clamp(420px,55vw,580px); display:flex; align-items:center; justify-content:center; }
.carousel-item { position:absolute; transition:all .6s var(--ease); cursor:pointer; top:50%; }
.carousel-item.state-center { width:clamp(220px,22vw,300px); transform:translateY(-50%) translateX(-50%) scale(1); left:50%; opacity:1; z-index:3; }
.carousel-item.state-left { width:clamp(160px,16vw,220px); left:50%; transform:translateY(-50%) translateX(calc(-50% - clamp(200px,20vw,300px))) scale(1); opacity:.4; z-index:2; }
.carousel-item.state-right { width:clamp(160px,16vw,220px); left:50%; transform:translateY(-50%) translateX(calc(-50% + clamp(200px,20vw,300px))) scale(1); opacity:.4; z-index:2; }
.carousel-item.state-far-left { left:50%; width:clamp(120px,12vw,160px); transform:translateY(-50%) translateX(calc(-50% - clamp(340px,35vw,520px))) scale(1); opacity:0; z-index:1; pointer-events:none; }
.carousel-item.state-far-right { left:50%; width:clamp(120px,12vw,160px); transform:translateY(-50%) translateX(calc(-50% + clamp(340px,35vw,520px))) scale(1); opacity:0; z-index:1; pointer-events:none; }
.carousel-item-inner { position:relative; overflow:hidden; }
.carousel-item-inner img { width:100%; aspect-ratio:2/3; object-fit:cover; object-position:top center; display:block; transition:filter .4s; }
.carousel-item.state-center .carousel-item-inner img { filter:none; }
.carousel-item.state-left .carousel-item-inner img, .carousel-item.state-right .carousel-item-inner img { filter:grayscale(60%) brightness(.5); }
.carousel-item-overlay { position:absolute; inset:0; background:linear-gradient(to top, rgba(0,0,0,.97) 0%, rgba(0,0,0,.3) 50%, transparent 75%); }
.carousel-item.state-left .carousel-item-overlay, .carousel-item.state-right .carousel-item-overlay { background:rgba(0,0,0,.6); }
.carousel-item-info { position:absolute; bottom:0; left:0; right:0; padding:clamp(12px,2vw,20px); z-index:2; opacity:0; transform:translateY(8px); transition:opacity .35s, transform .35s; }
.carousel-item.state-center .carousel-item-info { opacity:1; transform:none; }
.carousel-item-pos { font-size:8px; font-weight:800; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:4px; }
.carousel-item-name { font-family:'Barlow Condensed','Montserrat',sans-serif; font-size:clamp(28px,4vw,48px); font-weight:900; font-style:italic; text-transform:uppercase; letter-spacing:-1px; line-height:.9; color:#ffffff; margin-bottom:4px; }
.carousel-item-club { font-size:9px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:rgba(255,255,255,.45); }
.carousel-item-badge { position:absolute; top:12px; right:12px; background:var(--gold); color:#0a0905; font-size:7px; font-weight:800; letter-spacing:2px; text-transform:uppercase; padding:4px 8px; opacity:0; transition:opacity .35s; }
.carousel-item.state-center .carousel-item-badge { opacity:1; }
.carousel-arrow { position:absolute; top:50%; transform:translateY(-50%); z-index:10; width:clamp(44px,5vw,60px); height:clamp(44px,5vw,60px); border:1px solid var(--c-brd2); border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--gold); font-size:clamp(14px,1.5vw,18px); transition:background .2s, border-color .2s; background:var(--c-overlay); backdrop-filter:blur(4px); cursor:pointer; }
.carousel-arrow:hover { background:var(--gold); color:#0a0905; border-color:var(--gold); }
.carousel-arrow.left { left:clamp(16px,4vw,60px); }
.carousel-arrow.right { right:clamp(16px,4vw,60px); }
.carousel-dots { display:flex; justify-content:center; gap:8px; margin-top:clamp(24px,3vw,36px); padding:0 var(--pad-x); }
.carousel-dot { width:24px; height:3px; background:var(--c-t4); border-radius:2px; transition:background .25s, width .25s; cursor:pointer; }
.carousel-dot.active { background:var(--gold); width:36px; }

/* player modal */
.modal-backdrop { position:fixed; inset:0; background:rgba(0,0,0,.92); z-index:900; display:flex; align-items:center; justify-content:center; padding:var(--pad-x); opacity:0; pointer-events:none; transition:opacity .3s; overflow-y:auto; }
.modal-backdrop.open { opacity:1; pointer-events:all; }
.modal { background:var(--c-s2); border-radius:4px; width:100%; max-width:900px; position:relative; display:grid; grid-template-columns:380px 1fr; overflow:hidden; transform:scale(.95) translateY(20px); transition:transform .35s var(--ease); border:1px solid var(--c-brd); }
.modal-backdrop.open .modal { transform:scale(1) translateY(0); }
.modal-photo { position:relative; min-height:480px; overflow:hidden; }
.modal-photo img { width:100%; height:100%; object-fit:cover; object-position:top; }
.modal-photo::after { content:''; position:absolute; inset:0; background:linear-gradient(to right, transparent 60%, var(--c-s2) 100%); }
.modal-body { padding:40px 36px; display:flex; flex-direction:column; }
.modal-close { position:absolute; top:16px; right:16px; z-index:10; width:36px; height:36px; background:rgba(0,0,0,.7); border-radius:50%; display:flex; align-items:center; justify-content:center; color:#ffffff; font-size:14px; transition:background .2s; }
.modal-close:hover { background:var(--gold); color:#0a0905; }
.modal-pos { font-size:9px; font-weight:800; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:10px; }
.modal-name { font-family:'Barlow Condensed','Montserrat',sans-serif; font-size:clamp(32px,4.5vw,52px); font-weight:900; font-style:italic; text-transform:uppercase; letter-spacing:-1px; line-height:.95; margin-bottom:6px; }
.modal-club { font-size:12px; font-weight:600; letter-spacing:2px; text-transform:uppercase; color:var(--c-t3); margin-bottom:24px; }
.modal-bio { font-size:14px; font-weight:300; color:var(--c-t2); line-height:1.75; margin-bottom:28px; }
.modal-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(60px,1fr)); gap:1px; background:var(--c-brd); border:1px solid var(--c-brd); border-radius:var(--radius); overflow:hidden; margin-bottom:20px; }
.stat-box { background:var(--c-s3); padding:14px 10px; text-align:center; }
.stat-box-num { font-family:'Barlow Condensed','Montserrat',sans-serif; font-size:clamp(20px,2.8vw,28px); font-weight:900; font-style:italic; color:var(--gold); line-height:1; margin-bottom:6px; }
.stat-box-lbl { font-size:9px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--c-t3); }
.modal-scout { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--c-brd); border:1px solid var(--c-brd); border-radius:var(--radius); overflow:hidden; margin-bottom:16px; }
.modal-scout-item { background:var(--c-s3); padding:11px 14px; }
.modal-scout-lbl { font-size:9px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--c-t3); margin-bottom:3px; }
.modal-scout-val { font-size:14px; font-weight:700; color:var(--c-t1); }
.modal-prev-wrap { margin-top:14px; }
.modal-prev-clubs { display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.club-tag { font-size:9px; font-weight:700; letter-spacing:1px; text-transform:uppercase; background:var(--c-s3); border:1px solid var(--c-brd); border-radius:2px; padding:4px 8px; color:var(--c-t2); }
.modal-flag { display:flex; align-items:center; gap:10px; color:var(--c-t3); font-size:12px; font-weight:600; letter-spacing:1px; text-transform:uppercase; }
.modal-flag img { width:24px; height:17px; border-radius:1px; }

/* stat strip */
.stat-strip { background:var(--c-s2); border-top:1px solid var(--c-brd); border-bottom:1px solid var(--c-brd); padding:clamp(40px,6vw,72px) var(--pad-x); }
.stat-strip-inner { max-width:1440px; margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); }
.strip-stat { text-align:center; padding:12px 20px; border-right:1px solid var(--c-brd); }
.strip-stat:last-child { border-right:none; }
.strip-num { font-family:'Barlow Condensed','Montserrat',sans-serif; font-size:clamp(36px,5.5vw,68px); font-weight:900; font-style:italic; color:var(--gold); line-height:1; margin-bottom:10px; letter-spacing:-2px; }
.strip-lbl { font-size:clamp(8px,1vw,10px); font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--c-t3); }

/* about split */
.about-split { display:grid; grid-template-columns:1fr 1fr; gap:clamp(40px,7vw,100px); align-items:center; }
.about-split.reverse { direction:rtl; }
.about-split.reverse > * { direction:ltr; }
.about-text { font-size:clamp(13px,1.4vw,15px); font-weight:300; color:var(--c-t2); line-height:1.85; }
.about-text p { margin-bottom:18px; }
.about-text p:last-child { margin-bottom:0; }
.about-text strong { color:var(--c-t1); font-weight:700; }
.about-img { position:relative; overflow:hidden; border-radius:var(--radius); }
.about-img img { width:100%; aspect-ratio:4/3; object-fit:cover; filter:brightness(.9); transition:transform .6s var(--ease); }
.about-img:hover img { transform:scale(1.04); }
.about-img-badge { position:absolute; bottom:24px; left:24px; background:var(--gold); color:#0a0905; padding:12px 20px; font-size:10px; font-weight:800; letter-spacing:2px; text-transform:uppercase; border-radius:2px; }

/* services grid */
.services-grid {
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:clamp(12px,1.5vw,20px);
}

.service-card {
  background:var(--c-s2); border:1px solid var(--c-brd);
  padding:clamp(28px,3.5vw,44px) clamp(24px,3vw,36px) clamp(24px,3vw,36px);
  position:relative; overflow:hidden;
  transition:border-color .35s var(--ease), transform .35s var(--ease), background .35s;
  cursor:default;
}
.service-card:hover {
  border-color:var(--gold); background:var(--c-s3);
  transform:translateY(-6px);
}

/* Animated gold top bar */
.service-card::before {
  content:''; position:absolute;
  top:0; left:0; width:0; height:2px;
  background:var(--gold);
  transition:width .4s var(--ease);
}
.service-card:hover::before { width:100%; }

/* Decorative diagonal corner slash */
.service-card::after {
  content:''; position:absolute;
  bottom:0; right:0;
  width:0; height:0;
  border-style:solid;
  border-width:0 0 28px 28px;
  border-color:transparent transparent var(--gold) transparent;
  opacity:.18; transition:opacity .35s, border-width .35s;
}
.service-card:hover::after { opacity:.6; border-width:0 0 38px 38px; }

/* Top image */
.service-card-img {
  margin: calc(-1 * clamp(28px,3.5vw,44px)) calc(-1 * clamp(24px,3vw,36px)) clamp(20px,2.5vw,28px);
  aspect-ratio:16/9; overflow:hidden;
}
.service-card-img img {
  width:100%; height:100%; object-fit:cover;
  filter:grayscale(25%) brightness(.7);
  transition:transform .55s var(--ease), filter .4s;
  display:block;
}
.service-card:hover .service-card-img img { transform:scale(1.06); filter:grayscale(0%) brightness(.85); }

/* Ghost number */
.service-card-num {
  position:absolute; top:-14px; right:14px;
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(80px,9vw,120px); font-weight:900; font-style:italic;
  color:rgba(255,255,255,.035); line-height:1;
  pointer-events:none; user-select:none;
  transition:color .4s;
}
.service-card:hover .service-card-num { color:rgba(196,165,90,.08); }

/* Icon container - PSV parallelogram shape */
.service-icon {
  width:clamp(46px,5vw,58px); height:clamp(46px,5vw,58px);
  background:rgba(196,165,90,.08); border:1px solid rgba(196,165,90,.22);
  clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);
  display:flex; align-items:center; justify-content:center;
  color:var(--gold); font-size:clamp(18px,2vw,22px);
  margin-bottom:clamp(18px,2.5vw,28px);
  transition:background .3s, transform .3s, color .3s;
}
.service-card:hover .service-icon {
  background:var(--gold); color:#0a0905;
  transform:scale(1.08) skewX(-1deg);
}

/* Title */
.service-title {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(18px,2.2vw,26px); font-weight:900; font-style:italic;
  text-transform:uppercase; letter-spacing:-.3px;
  color:var(--c-t1); line-height:1.05; margin-bottom:12px;
  transition:color .25s;
}
.service-card:hover .service-title { color:var(--gold); }

/* Description */
.service-text { font-size:clamp(12px,1.1vw,13.5px); font-weight:300; color:var(--c-t2); line-height:1.75; }

/* Arrow reveal */
.service-card-arrow {
  margin-top:clamp(14px,2vw,22px);
  display:flex; align-items:center; gap:8px;
  font-size:10px; font-weight:800; letter-spacing:2px;
  text-transform:uppercase; color:var(--gold);
  opacity:0; transform:translateX(-10px);
  transition:opacity .3s, transform .3s;
}
.service-card:hover .service-card-arrow { opacity:1; transform:translateX(0); }

/* video section */
.video-wrap {
  position:relative; width:100%; overflow:hidden;
  aspect-ratio:16/9; background:#000;
  border:1px solid var(--c-brd);
}
.video-wrap video { width:100%; height:100%; object-fit:cover; display:block; }
.video-wrap::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(to bottom, transparent 60%, rgba(0,0,0,.6) 100%);
  pointer-events:none;
}

/* ══════════════════════════════════════════════════
   DECORATIVE GOLD PATTERNS
══════════════════════════════════════════════════ */

/* Hero - fine diagonal lines across full hero (z-index 2, above overlay) */
.home-hero::before {
  content:'';
  position:absolute; inset:0; z-index:2; pointer-events:none;
  background:repeating-linear-gradient(
    -55deg,
    transparent 0, transparent 40px,
    rgba(196,165,90,.042) 40px, rgba(196,165,90,.042) 41px
  );
}
/* Hero - bright corner accent: top-right radiating lines */
.home-hero::after {
  content:'';
  position:absolute; top:0; right:0; z-index:2; pointer-events:none;
  width:min(640px,52vw); height:min(640px,72vh);
  background:repeating-linear-gradient(
    -55deg,
    transparent 0, transparent 28px,
    rgba(196,165,90,.11) 28px, rgba(196,165,90,.11) 29px
  );
  -webkit-mask-image:radial-gradient(ellipse at 100% 0%, black 0%, transparent 62%);
  mask-image:radial-gradient(ellipse at 100% 0%, black 0%, transparent 62%);
}

/* Stat strip - bold diagonal stripes */
.stat-strip { position:relative; overflow:hidden; }
.stat-strip::before {
  content:'';
  position:absolute; inset:0; pointer-events:none; z-index:0;
  background:repeating-linear-gradient(
    -58deg,
    transparent 0, transparent 24px,
    rgba(196,165,90,.07) 24px, rgba(196,165,90,.07) 25px
  );
}
.stat-strip-inner { position:relative; z-index:1; }

/* Deals strip - radial gold glow from both sides */
.deals-strip { position:relative; overflow:hidden; }
.deals-strip::before {
  content:'';
  position:absolute; inset:0; pointer-events:none; z-index:0;
  background:
    radial-gradient(ellipse at 96% 50%, rgba(196,165,90,.09) 0%, transparent 48%),
    radial-gradient(ellipse at 4% 50%, rgba(196,165,90,.06) 0%, transparent 38%);
}
.deals-strip-inner { position:relative; z-index:1; }

/* Process section (add class section-gold-lines) - diagonal texture */
.section-gold-lines { position:relative; overflow:hidden; }
.section-gold-lines::before {
  content:'';
  position:absolute; inset:0; pointer-events:none; z-index:0;
  background:repeating-linear-gradient(
    -58deg,
    transparent 0, transparent 34px,
    rgba(196,165,90,.055) 34px, rgba(196,165,90,.055) 35px
  );
}
.section-gold-lines .section-inner { position:relative; z-index:1; }

/* ── CTA SECTION - premium dark + vervaagde goud ── */
.cta-section {
  position:relative; overflow:hidden;
  background:#080704;
  padding:clamp(64px,9vw,110px) var(--pad-x);
  text-align:center;
  border-top:1px solid rgba(196,165,90,.12);
}
/* Vervaagde goud radial glow */
.cta-section::before {
  content:'';
  position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(ellipse 90% 70% at 50% 50%, rgba(196,165,90,.13) 0%, transparent 68%),
    radial-gradient(ellipse 50% 40% at 50% 100%, rgba(196,165,90,.07) 0%, transparent 60%);
}
/* Diagonal stripe texture */
.cta-section::after {
  content:'';
  position:absolute; inset:0; pointer-events:none;
  background:repeating-linear-gradient(
    -52deg, transparent 0, transparent 36px,
    rgba(196,165,90,.03) 36px, rgba(196,165,90,.03) 37px
  );
}

/* Ghost word */
.cta-ghost {
  position:absolute; inset:0;
  display:flex; align-items:center; justify-content:center;
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(100px,20vw,260px);
  font-weight:900; font-style:italic;
  text-transform:uppercase;
  color:rgba(196,165,90,.04);
  letter-spacing:-6px; line-height:1;
  pointer-events:none; user-select:none;
  white-space:nowrap;
}

/* Inner wrapper */
.cta-inner {
  position:relative; z-index:1;
  max-width:760px; margin:0 auto;
}

/* Gold label with lines */
.cta-label {
  display:inline-flex; align-items:center; gap:14px;
  font-size:10px; font-weight:800; letter-spacing:3px;
  text-transform:uppercase; color:var(--gold);
  margin-bottom:20px;
}
.cta-label::before,.cta-label::after {
  content:''; width:32px; height:1px; background:var(--gold); opacity:.7;
}

/* Title */
.cta-title {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(38px,7vw,88px);
  font-weight:900; font-style:italic;
  text-transform:uppercase; letter-spacing:-2px; line-height:.9;
  color:#fff; margin-bottom:18px;
}
.cta-title .acc { color:var(--gold); }

/* Subtitle */
.cta-sub {
  font-size:clamp(13px,1.2vw,15px); font-weight:300;
  color:rgba(255,255,255,.45); margin-bottom:36px; line-height:1.7;
}

/* Buttons row */
.cta-btns {
  display:flex; gap:14px; justify-content:center; flex-wrap:wrap;
}

/* Gold accent top-line */
.cta-inner::before {
  content:'';
  display:block; width:50px; height:2px;
  background:var(--gold); margin:0 auto 28px;
}

/* process steps */
.process-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(16px,2.5vw,36px); }
.process-step {
  background:var(--c-s2); border:1px solid var(--c-brd);
  border-top:3px solid var(--gold);
  padding:clamp(28px,3.5vw,44px); position:relative;
}
.process-num {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(52px,6vw,84px); font-weight:900; font-style:italic;
  color:var(--c-brd2); line-height:1; margin-bottom:14px;
}
.process-icon {
  width:46px; height:46px; background:var(--gold); border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  color:var(--black); font-size:17px; margin-bottom:18px;
}
.process-title {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(20px,2.2vw,28px); font-weight:900; font-style:italic;
  text-transform:uppercase; color:var(--c-t1); margin-bottom:10px;
}
.process-text { color:var(--c-t2); font-size:14px; line-height:1.75; }

/* network grid */
.network-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:2px; }
.network-item {
  background:var(--c-s2); border:1px solid var(--c-brd);
  padding:clamp(14px,1.8vw,22px) 10px; text-align:center;
  font-family:'Barlow Condensed',sans-serif; font-weight:800;
  text-decoration:none; display:block; cursor:pointer;
  font-style:italic; font-size:clamp(12px,1.3vw,16px);
  text-transform:uppercase; letter-spacing:.8px; color:var(--c-t2);
  transition:background .2s, color .2s, border-color .2s;
}
.network-item:hover { background:var(--c-s3); color:var(--gold); border-color:var(--c-brd2); }

/* featured deal fade carousel */
.feat-deal-section { overflow:hidden; }
.feat-deal-carousel {
  display:grid;
}
.feat-deal-slide {
  grid-column:1; grid-row:1;
  opacity:0; pointer-events:none;
  transition:opacity .9s ease;
}
.feat-deal-slide.active {
  opacity:1; pointer-events:auto;
}
.feat-deal-meta {
  display:flex; align-items:center; gap:20px;
  margin-top:32px; flex-wrap:wrap;
}
.feat-meta-lbl {
  font-size:9px; font-weight:700; letter-spacing:3px;
  text-transform:uppercase; color:rgba(255,255,255,.4); margin-bottom:6px;
}
.feat-meta-val {
  font-size:14px; font-weight:800; text-transform:uppercase; letter-spacing:1px;
}
.feat-meta-date {
  margin-left:auto;
  font-size:9px; font-weight:700; letter-spacing:3px;
  text-transform:uppercase; color:rgba(255,255,255,.3);
}
.feat-deal-dots {
  display:flex; gap:10px; margin-top:clamp(24px,3vw,36px);
}

/* deals page */
.deals-page-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:clamp(28px,4vw,48px); }

/* deals page carousel */
.dp-carousel-wrap {
  display:flex; align-items:flex-start;
  gap:clamp(12px,2vw,28px);
  margin-top:clamp(28px,4vw,48px);
}
.dp-carousel-viewport { flex:1; overflow:hidden; }
.dp-carousel-track {
  display:flex;
  transition:transform .55s cubic-bezier(.4,0,.2,1);
  will-change:transform;
}
.dp-slide {
  flex:0 0 100%;
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:clamp(12px,1.5vw,20px);
}
.deal-page-card { background:var(--c-s3); border:1px solid var(--c-brd); border-radius:var(--radius); overflow:hidden; transition:border-color .3s, transform .3s; }
.deal-page-card:hover { border-color:var(--gold); transform:translateY(-5px); }
.deal-page-card-img { position:relative; aspect-ratio:3/2; overflow:hidden; }
.deal-page-card-img img { width:100%; height:100%; object-fit:cover; object-position:top; filter:brightness(.75); transition:transform .5s var(--ease), filter .3s; }
.deal-page-card:hover .deal-page-card-img img { transform:scale(1.06); filter:brightness(.9); }
.deal-page-card-img-overlay { position:absolute; inset:0; background:linear-gradient(to top, rgba(0,0,0,.9) 0%, transparent 60%); display:flex; flex-direction:column; justify-content:flex-end; padding:16px; }
.deal-transfer-badge { display:inline-flex; align-items:center; gap:8px; background:var(--gold); color:#0a0905; padding:6px 12px; font-size:9px; font-weight:800; letter-spacing:2px; text-transform:uppercase; border-radius:2px; align-self:flex-start; }
.deal-page-card-body { padding:20px; }
.deal-page-name { font-family:'Barlow Condensed','Montserrat',sans-serif; font-size:clamp(22px,3vw,32px); font-weight:900; font-style:italic; text-transform:uppercase; line-height:1; margin-bottom:8px; }
.deal-clubs-row { display:flex; align-items:center; gap:10px; margin-bottom:12px; font-size:11px; font-weight:700; letter-spacing:1px; text-transform:uppercase; }
.deal-club-from { color:var(--c-t3); }
.deal-club-arrow { color:var(--gold); font-size:8px; }
.deal-club-to { color:var(--c-t1); }
.deal-page-note { font-size:13px; font-weight:300; color:var(--c-t2); line-height:1.65; margin-bottom:12px; }
.deal-page-date { font-size:9px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--c-t3); }

/* contact */
.contact-grid { display:grid; grid-template-columns:1fr 1.2fr; gap:clamp(40px,7vw,90px); align-items:start; }
.contact-form { display:flex; flex-direction:column; gap:14px; }
.form-group { display:flex; flex-direction:column; gap:6px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.form-group label { font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--gold); }
.form-group input, .form-group textarea, .form-group select { background:var(--c-s3); border:1px solid var(--c-brd2); color:var(--c-t1); padding:14px 16px; border-radius:var(--radius); font-size:13px; transition:border-color .2s; }
.form-group input:focus, .form-group textarea:focus, .form-group select:focus { outline:none; border-color:var(--gold); }
.form-group input::placeholder, .form-group textarea::placeholder { color:var(--c-t3); }
.form-group textarea { resize:vertical; min-height:140px; }
.form-group select option { background:var(--c-s2); }
.form-success { display:none; padding:16px 20px; background:var(--c-brd); border:1px solid var(--c-brd2); border-radius:var(--radius); color:var(--gold); font-size:13px; font-weight:600; }
.contact-info { display:flex; flex-direction:column; gap:32px; }
.contact-info-block { display:flex; gap:16px; align-items:flex-start; }
.contact-info-ico { width:44px; height:44px; flex-shrink:0; background:var(--c-brd); border:1px solid var(--c-brd2); border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--gold); font-size:15px; }
.contact-info-lbl { font-size:9px; font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--gold); margin-bottom:5px; }
.contact-info-val { font-size:13px; font-weight:300; color:var(--c-t2); line-height:1.6; }
.contact-map { margin-top:8px; border-radius:var(--radius); overflow:hidden; border:1px solid var(--c-brd); }
.contact-map iframe { display:block; width:100%; height:240px; filter:grayscale(60%) invert(1) hue-rotate(180deg); }
html.light .contact-map iframe { filter:grayscale(30%); }

/* footer */
.footer { background:var(--c-s2); border-top:1px solid var(--c-brd); padding:clamp(48px,7vw,80px) var(--pad-x) 32px; }
.footer-inner { max-width:1440px; margin:0 auto; }
.footer-top { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:48px; padding-bottom:48px; border-bottom:1px solid var(--c-t4); margin-bottom:32px; }
.footer-brand .footer-logo img { height:40px; margin-bottom:20px; }
.footer-brand-text { font-size:13px; font-weight:300; color:var(--c-t3); line-height:1.75; max-width:280px; margin-bottom:24px; }
.footer-socials { display:flex; gap:10px; }
.footer-socials a { width:36px; height:36px; border:1px solid var(--c-brd2); border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--gold); font-size:13px; transition:background .2s, color .2s; }
.footer-socials a:hover { background:var(--gold); color:#0a0905; }
.footer-col-title { font-size:10px; font-weight:800; letter-spacing:3px; text-transform:uppercase; color:var(--c-t1); margin-bottom:20px; }
.footer-col ul { display:flex; flex-direction:column; gap:10px; }
.footer-col ul a { font-size:13px; font-weight:300; color:var(--c-t3); transition:color .2s, padding-left .2s; }
.footer-col ul a:hover { color:var(--gold); padding-left:6px; }
.footer-bottom { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; }
.footer-copy { font-size:11px; color:var(--c-t3); }
.footer-legal { display:flex; gap:24px; }
.footer-legal a { font-size:11px; color:var(--c-t3); transition:color .2s; }
.footer-legal a:hover { color:var(--gold); }

/* news cards */
.news-grid {
  display:grid; grid-template-columns:repeat(3,1fr); gap:2px;
}
.news-grid.featured { grid-template-columns:1.8fr 1fr; gap:2px; }

.news-card {
  background:var(--c-s2); border:1px solid var(--c-brd);
  overflow:hidden; cursor:pointer;
  display:flex; flex-direction:column;
  transition:border-color .25s var(--ease), transform .25s var(--ease), box-shadow .25s;
}
.news-card:hover { border-color:var(--gold); transform:translateY(-4px); box-shadow:0 14px 36px rgba(0,0,0,.28); }

.news-card-img { overflow:hidden; aspect-ratio:16/9; flex-shrink:0; }
.news-card-img img {
  width:100%; height:100%; object-fit:cover;
  filter:brightness(.78) grayscale(8%);
  transition:transform .5s var(--ease), filter .35s; display:block;
}
.news-card:hover .news-card-img img { transform:scale(1.06); filter:brightness(1) grayscale(0%); }

.news-card-body { padding:clamp(14px,1.8vw,22px); display:flex; flex-direction:column; flex:1; }

.news-cat {
  font-size:8px; font-weight:800; letter-spacing:3px;
  text-transform:uppercase; color:var(--gold); display:block; margin-bottom:10px;
}
.news-title {
  font-family:'Barlow Condensed','Montserrat',sans-serif;
  font-size:clamp(15px,1.8vw,20px); font-weight:900; font-style:italic;
  text-transform:uppercase; letter-spacing:-.2px;
  color:var(--c-t1); line-height:1.1; margin-bottom:10px; transition:color .2s;
}
.news-card:hover .news-title { color:var(--gold); }
.news-excerpt { font-size:13px; font-weight:300; color:var(--c-t2); line-height:1.7; margin-bottom:14px; flex:1; }
.news-meta { font-size:9px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:var(--c-t3); display:flex; align-items:center; gap:8px; margin-top:auto; }
.news-meta i { color:var(--gold); font-size:8px; }

/* Featured large card */
.featured-card .news-card-img { aspect-ratio:16/10; }
.featured-card .news-title { font-size:clamp(22px,2.8vw,34px); }

/* Sidebar small cards */
.news-sidebar { display:flex; flex-direction:column; gap:2px; }
.news-sidebar .news-card { flex-direction:row; }
.news-sidebar .news-card .news-card-img { width:110px; min-width:110px; aspect-ratio:auto; height:100%; }
.news-sidebar .news-card .news-card-body { padding:12px 14px; }
.news-sidebar .news-card .news-title { font-size:clamp(12px,1.3vw,15px); }
.news-sidebar .news-card .news-excerpt { display:none; }

@media (max-width:900px) {
  .news-grid, .news-grid.featured { grid-template-columns:1fr; }
  .news-sidebar { gap:14px; }
  .news-sidebar .news-card { flex-direction:column; }
  .news-sidebar .news-card .news-card-img { width:100%; height:160px; }
}
@media (max-width:640px) {
  .news-grid { grid-template-columns:1fr; }
}

/* club pages */
.club-hero {
  position:relative; min-height:480px;
  display:flex; align-items:flex-end;
  padding:var(--nav-h) var(--pad-x) 64px;
  overflow:hidden;
}
.club-hero-bg { position:absolute; inset:0; }
.club-hero-bg img { width:100%; height:100%; object-fit:cover; filter:brightness(.25) grayscale(30%); }
.club-hero-bg::after { content:''; position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,.95) 0%,rgba(0,0,0,.4) 60%,transparent 100%); }
.club-hero-content { position:relative; z-index:1; max-width:1440px; margin:0 auto; width:100%; }
.club-badge {
  width:clamp(64px,8vw,100px); height:auto; margin-bottom:24px;
  filter:drop-shadow(0 4px 16px rgba(0,0,0,.6));
}
.club-name {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(48px,9vw,108px); font-weight:900; font-style:italic;
  text-transform:uppercase; letter-spacing:-3px; line-height:.85;
  margin-bottom:8px;
}
.club-league { font-size:11px; font-weight:700; letter-spacing:4px; text-transform:uppercase; color:var(--c-t3); }

/* Club initials badge */
.club-initials-badge {
  width:clamp(72px,9vw,110px); height:clamp(72px,9vw,110px);
  border-radius:4px; display:flex; align-items:center; justify-content:center;
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(22px,3vw,36px); font-weight:900; font-style:italic;
  color:#fff; margin-bottom:20px; letter-spacing:-1px;
  box-shadow:0 4px 24px rgba(0,0,0,.5);
  border:2px solid rgba(255,255,255,.15);
}

/* Club stats bar */
.club-stats-bar {
  display:flex; gap:clamp(20px,3vw,48px); flex-wrap:wrap;
  margin-top:clamp(20px,3vw,36px);
}
.club-stat-item { display:flex; flex-direction:column; gap:4px; }
.club-stat-num {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(26px,3.5vw,42px); font-weight:900; font-style:italic;
  color:var(--gold); line-height:1;
}
.club-stat-lbl { font-size:10px; font-weight:700; letter-spacing:2.5px; text-transform:uppercase; color:var(--c-t3); }

/* Club deals grid */
.club-deals-grid {
  display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:clamp(16px,2vw,24px);
  margin-top:clamp(24px,3vw,40px);
}
.club-deal-card {
  background:var(--c-s2); border:1px solid var(--c-brd); padding:20px;
  display:flex; gap:16px; align-items:center;
  transition:border-color .2s, transform .2s;
}
.club-deal-card:hover { border-color:var(--gold); transform:translateY(-3px); }
.club-deal-img {
  width:60px; height:60px; border-radius:2px; overflow:hidden; flex-shrink:0;
}
.club-deal-img img { width:100%; height:100%; object-fit:cover; }
.club-deal-name { font-weight:800; font-size:13px; text-transform:uppercase; letter-spacing:.5px; color:var(--c-t1); margin-bottom:4px; }
.club-deal-clubs { font-size:11px; color:var(--c-t3); display:flex; align-items:center; gap:6px; }
.club-deal-clubs .arrow { color:var(--gold); }
.club-deal-year { font-size:9px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:var(--c-t4); margin-top:6px; }

/* Club flag pill */
.club-country-pill {
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12);
  padding:6px 14px; margin-bottom:12px;
  font-size:9px; font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--c-t3);
}
.club-country-pill img { width:20px; height:15px; }

/* hero emblem */
.hero-emblem { margin-bottom:clamp(10px,1.5vw,16px); display:flex; justify-content:center; }
.hero-emblem img {
  height:clamp(40px,4.5vw,60px); width:auto;
  filter:drop-shadow(0 0 14px rgba(196,165,90,.45));
  animation:emblem-pulse 3s ease-in-out infinite;
}
@keyframes emblem-pulse {
  0%,100% { filter:drop-shadow(0 0 10px rgba(196,165,90,.35)); }
  50%     { filter:drop-shadow(0 0 22px rgba(196,165,90,.7)); }
}

/* page hero gold lines */
.page-hero::before {
  content:'';
  position:absolute; inset:0; z-index:0; pointer-events:none;
  background:repeating-linear-gradient(
    -55deg,
    transparent 0, transparent 40px,
    rgba(196,165,90,.045) 40px, rgba(196,165,90,.045) 41px
  );
}
.page-hero-content { position:relative; z-index:1; }

/* psv position sections */
.position-section { margin-bottom:clamp(48px,6vw,80px); }
.position-section-header {
  display:flex; align-items:baseline; gap:20px;
  padding-bottom:18px; margin-bottom:clamp(24px,3vw,36px);
  border-bottom:2px solid var(--c-brd);
  position:relative;
}
.position-section-header::after {
  content:''; position:absolute; bottom:-2px; left:0;
  width:56px; height:2px; background:var(--gold);
}
.position-section-num {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(44px,6vw,72px); font-weight:900; font-style:italic;
  color:var(--c-brd2); line-height:1; flex-shrink:0;
}
.position-section-title {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(22px,3.5vw,48px); font-weight:900; font-style:italic;
  text-transform:uppercase; color:var(--c-t1); letter-spacing:-1px;
}

/* psv player cards */
.players-psv-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.psv-card {
  background:var(--c-s2); border:1px solid var(--c-brd);
  overflow:hidden; cursor:pointer;
  transition:border-color .25s var(--ease), transform .25s var(--ease), box-shadow .25s;
}
.psv-card:hover { border-color:var(--gold); transform:translateY(-5px); box-shadow:0 16px 40px rgba(0,0,0,.35); }

.psv-card-img {
  position:relative; overflow:hidden;
  aspect-ratio:3/4;
}
.psv-card-img img {
  width:100%; height:100%;
  object-fit:cover; object-position:top center;
  filter:grayscale(10%) brightness(.85);
  transition:transform .5s var(--ease), filter .3s;
  display:block;
}
.psv-card:hover .psv-card-img img { transform:scale(1.07); filter:grayscale(0%) brightness(1); }
.psv-card-img::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(to top, rgba(0,0,0,.6) 0%, transparent 50%);
}
.psv-card-number {
  position:absolute; top:6px; left:10px; z-index:2;
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(44px,5.5vw,68px); font-weight:900; font-style:italic;
  color:rgba(255,255,255,.1); line-height:1; pointer-events:none;
  user-select:none;
}
.psv-card-pos-badge {
  position:absolute; top:10px; right:10px; z-index:2;
  background:var(--gold); color:#0a0905;
  font-size:7px; font-weight:800; letter-spacing:2px; text-transform:uppercase;
  padding:3px 8px; border-radius:2px;
}

.psv-card-body { padding:14px 16px 16px; }
.psv-card-flag {
  width:18px; height:13px; object-fit:cover;
  border-radius:1px; margin-bottom:7px; display:block;
  box-shadow:0 1px 3px rgba(0,0,0,.4);
}
.psv-card-name {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(15px,2vw,21px); font-weight:900; font-style:italic;
  text-transform:uppercase; letter-spacing:-.3px;
  color:var(--c-t1); line-height:1; margin-bottom:4px;
}
.psv-card-club {
  font-size:9px; font-weight:700; letter-spacing:1.5px;
  text-transform:uppercase; color:var(--c-t3); margin-bottom:12px;
}
.psv-card-stats {
  display:flex; gap:0;
  border-top:1px solid var(--c-brd); padding-top:10px;
}
.psv-card-stat {
  flex:1; text-align:center;
  border-right:1px solid var(--c-brd); padding:4px 0;
}
.psv-card-stat:last-child { border-right:none; }
.psv-card-stat-num {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(14px,1.8vw,19px); font-weight:900; font-style:italic;
  color:var(--gold); line-height:1; margin-bottom:3px;
}
.psv-card-stat-lbl {
  font-size:7px; font-weight:800; letter-spacing:1.5px;
  text-transform:uppercase; color:var(--c-t4);
}

/* scroll animations */
.reveal { opacity:0; transform:translateY(28px); transition:opacity .65s var(--ease), transform .65s var(--ease); }
.reveal.visible { opacity:1; transform:none; }
.reveal-delay-1 { transition-delay:.1s; }
.reveal-delay-2 { transition-delay:.2s; }
.reveal-delay-3 { transition-delay:.3s; }

/* responsive */
@media (max-width:1100px) {
  .players-psv-grid { grid-template-columns:repeat(3,1fr); }
  .players-grid { grid-template-columns:repeat(3,1fr); }
  .footer-top { grid-template-columns:1fr 1fr; gap:36px; }
  .modal { grid-template-columns:1fr; }
  /* Vaste hoogte + object-fit:cover sneed het hoofd eraf. Een verhouding
     laat de foto meeschalen met de schermbreedte, zodat de speler er
     altijd helemaal op staat. */
  .modal-photo { min-height:0; aspect-ratio:4/5; max-height:58svh; }
  .modal-photo img { object-position:center 15%; }
  .modal-photo::after { background:linear-gradient(to top, var(--c-s2) 0%, transparent 60%); }
  .media-section { grid-template-columns:1fr 1.4fr; }
  .media-panel:last-child { display:none; }
  .deals-grid .deal-card { flex:0 0 clamp(240px,42%,360px); }
  .deal-card-slide { grid-template-columns:repeat(2,1fr); }
  .deals-page-grid { grid-template-columns:1fr 1fr; }
  .dp-slide { grid-template-columns:repeat(2,1fr); }
  .dp-carousel-wrap .deals-arrow { display:none; }
}

@media (max-width:900px) {
  .news-grid, .news-grid.featured { grid-template-columns:1fr; }
  .news-grid.featured .news-card:first-child { grid-row:auto; }
  .about-split, .about-split.reverse { grid-template-columns:1fr; direction:ltr; }
  .services-grid { grid-template-columns:1fr 1fr; }
  .contact-grid { grid-template-columns:1fr; }
  .stat-strip-inner { grid-template-columns:1fr 1fr; }
  .strip-stat:nth-child(2) { border-right:none; }
  .strip-stat:nth-child(3), .strip-stat:nth-child(4) { border-top:1px solid var(--c-brd); }
  .process-grid { grid-template-columns:1fr; }
  .network-grid { grid-template-columns:repeat(3,1fr); }
  .footer-top { grid-template-columns:1fr 1fr; }
  .media-section { grid-template-columns:1fr; }
  .media-panel:first-child, .media-panel:last-child { display:none; }
  .media-panel.featured { min-height:380px; }
  .nav-cta-top { display:none; }
}

@media (max-width:640px) {
  /* Players-psv-grid → horizontal swipe */
  .players-psv-grid {
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    gap:12px;
    padding-bottom:20px;
    grid-template-columns:unset;
  }
  .players-psv-grid::-webkit-scrollbar { display:none; }
  .players-psv-grid .psv-card {
    flex:0 0 72vw;
    scroll-snap-align:start;
  }
  /* Players-grid (featured on homepage) */
  .players-grid { grid-template-columns:1fr 1fr; }
  .services-grid { grid-template-columns:1fr; }
  .network-grid { grid-template-columns:repeat(2,1fr); }
  .form-row { grid-template-columns:1fr; }
  .stat-strip-inner { grid-template-columns:1fr 1fr; }
  .footer-top { grid-template-columns:1fr; }
  .footer-bottom { flex-direction:column; text-align:center; }
  .filter-search { margin-left:0; width:100%; }
  .filter-search input { width:100%; }
  .players-filter { flex-direction:column; align-items:stretch; }
  .players-filter .filter-search { order:-1; }
  .deals-grid .deal-card { flex:0 0 clamp(220px,75vw,300px); }
  .deals-arrow { display:none; }
  .dp-slide { grid-template-columns:1fr; }
  .deal-card-slide { grid-template-columns:1fr; }
  .deal-card-slide .deal-card { max-width:100%; }
  .deals-page-grid { grid-template-columns:1fr; }
  .carousel-arrow { display:none; }
  .news-slide { width:clamp(220px, 72vw, 300px); height:clamp(280px,52vw,360px); }
}

@media (max-width:400px) {
  .players-grid { grid-template-columns:1fr; }
}

/* ── MOBILE SWIPE - nieuws + spelers ────────── */
@media (max-width:768px) {
  /* Nieuws reguliere grid → horizontaal swipen */
  #news-grid {
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    gap:14px;
    padding-bottom:20px;
    grid-template-columns:unset;
  }
  #news-grid::-webkit-scrollbar { display:none; }
  #news-grid .news-card {
    flex:0 0 clamp(260px,78vw,340px);
    scroll-snap-align:start;
  }

  /* Deals-grid peeking verbeteren op mobiel */
  .deals-grid {
    -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 3%,#000 92%,transparent 100%);
    mask-image:linear-gradient(to right,transparent 0%,#000 3%,#000 92%,transparent 100%);
  }
}


/* ══════════════════════════════════════════════════
   SERVICE PAGES - Individual service detail pages
══════════════════════════════════════════════════ */

.svc-steps { padding:clamp(56px,8vw,96px) var(--pad-x); background:var(--c-s1); }
.svc-steps-inner { max-width:1160px; margin:0 auto; }
.svc-steps-head { text-align:center; margin-bottom:clamp(36px,5vw,56px); }
.svc-steps-grid {
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:2px; background:rgba(196,165,90,.1);
  border:1px solid rgba(196,165,90,.1);
}
.svc-step {
  background:var(--c-bg); position:relative;
  padding:clamp(28px,3vw,40px) clamp(22px,2.5vw,32px);
  display:flex; flex-direction:column; gap:14px;
  transition:background .25s;
}
.svc-step:hover { background:var(--c-s2); }
.svc-step-num {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(52px,6vw,80px); font-weight:900; font-style:italic;
  color:rgba(196,165,90,.08); line-height:1;
  position:absolute; top:12px; right:16px; pointer-events:none;
}
.svc-step-icon {
  width:46px; height:46px; background:rgba(196,165,90,.07);
  border:1px solid rgba(196,165,90,.2);
  display:flex; align-items:center; justify-content:center;
  color:var(--gold); font-size:17px; flex-shrink:0;
}
.svc-step-title {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(18px,1.8vw,22px); font-weight:800;
  font-style:italic; text-transform:uppercase;
  letter-spacing:-.3px; color:var(--c-t1);
}
.svc-step-text { font-size:13px; line-height:1.8; color:var(--c-t2); }

.svc-benefits { background:#060503; padding:clamp(40px,6vw,72px) var(--pad-x); }
.svc-benefits-inner {
  max-width:1160px; margin:0 auto;
  display:grid; grid-template-columns:repeat(4,1fr); gap:1px;
  background:rgba(196,165,90,.1); border:1px solid rgba(196,165,90,.1);
}
.svc-benefit {
  background:#060503; padding:clamp(24px,3vw,36px) clamp(18px,2vw,28px);
  display:flex; flex-direction:column; gap:12px;
}
.svc-benefit-icon { color:var(--gold); font-size:24px; }
.svc-benefit-title {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(17px,1.8vw,21px); font-weight:800;
  font-style:italic; text-transform:uppercase; color:#fff;
}
.svc-benefit-text { font-size:12px; line-height:1.75; color:rgba(255,255,255,.4); }

.svc-nav-bar {
  display:flex; align-items:center; gap:10px;
  padding:14px var(--pad-x);
  font-size:11px; font-weight:700; letter-spacing:1.5px;
  text-transform:uppercase; color:var(--c-t3);
  background:var(--c-s1); border-bottom:1px solid var(--c-brd);
}
.svc-nav-bar a { color:var(--gold); }
.svc-nav-bar i { font-size:8px; }

.svc-other { padding:clamp(48px,6vw,72px) var(--pad-x); background:var(--c-bg); }
.svc-other-inner { max-width:1160px; margin:0 auto; }
.svc-other-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:clamp(28px,4vw,44px); }
.svc-other-card {
  border:1px solid var(--c-brd); padding:28px 24px;
  display:flex; flex-direction:column; gap:10px;
  transition:border-color .2s, background .2s; cursor:pointer;
  text-decoration:none; color:inherit;
}
.svc-other-card:hover { border-color:var(--gold); background:var(--c-s1); }
.svc-other-num { font-size:9px; font-weight:800; letter-spacing:2px; text-transform:uppercase; color:var(--gold); }
.svc-other-icon { color:var(--gold); font-size:20px; }
.svc-other-title { font-family:'Barlow Condensed',sans-serif; font-size:clamp(18px,1.8vw,22px); font-weight:800; font-style:italic; text-transform:uppercase; color:var(--c-t1); }
.svc-other-text { font-size:12px; color:var(--c-t2); line-height:1.65; }
.svc-other-arrow { margin-top:auto; font-size:11px; font-weight:700; color:var(--gold); letter-spacing:1px; text-transform:uppercase; display:flex; align-items:center; gap:8px; }

@media (max-width:900px) { .svc-steps-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:600px) { .svc-steps-grid { grid-template-columns:1fr; } .svc-benefits-inner { grid-template-columns:repeat(2,1fr); } .svc-other-grid { grid-template-columns:1fr; } }

/* ══════════════════════════════════════════════════
   ARTIKEL PAGE - Editorial news/scouting/partnership
══════════════════════════════════════════════════ */

.art-hero {
  position:relative; height:clamp(360px,48vh,500px); min-height:360px;
  overflow:hidden; display:flex; flex-direction:column; justify-content:flex-end;
}
.art-hero-img { position:absolute; inset:0; }
.art-hero-img img { width:100%; height:100%; object-fit:cover; object-position:top center; display:block; }
.art-hero-overlay {
  position:absolute; inset:0;
  background:linear-gradient(to top,rgba(4,3,2,.93) 0%,rgba(4,3,2,.55) 45%,rgba(4,3,2,.12) 100%);
}
.art-hero-content {
  position:relative; z-index:2;
  padding:calc(var(--nav-h) + 32px) var(--pad-x) 52px;
  max-width:1200px; margin:0 auto; width:100%;
}
.art-hero-meta { display:flex; align-items:center; gap:14px; margin-bottom:18px; }
.art-hero-cat {
  background:var(--gold); color:#0a0905;
  font-size:9px; font-weight:800; letter-spacing:2.5px;
  text-transform:uppercase; padding:5px 14px;
  clip-path:polygon(4px 0%,100% 0%,calc(100% - 4px) 100%,0% 100%);
}
.art-hero-date { color:rgba(255,255,255,.45); font-size:12px; display:flex; align-items:center; gap:6px; }
.art-hero-title {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(28px,4.2vw,54px); font-weight:900;
  font-style:italic; text-transform:uppercase;
  line-height:.92; letter-spacing:-1.5px; color:#fff; max-width:800px;
}

.art-section { padding:clamp(48px,7vw,88px) var(--pad-x); }
.art-body-inner {
  max-width:1160px; margin:0 auto;
  display:grid; grid-template-columns:1fr 280px;
  gap:clamp(40px,5vw,72px); align-items:start;
}
.art-lead {
  font-size:clamp(16px,1.7vw,19px); font-weight:400; line-height:1.8;
  color:var(--c-t1); border-left:3px solid var(--gold);
  padding-left:22px; margin-bottom:32px;
}
.art-paragraphs p { font-size:15px; line-height:1.9; color:var(--c-t2); margin-bottom:22px; }
.art-paragraphs h2 { font-size:26px; font-weight:800; line-height:1.25; color:var(--c-t1); margin:38px 0 16px; }
.art-paragraphs h3 { font-size:19px; font-weight:700; line-height:1.3; color:var(--gold); margin:30px 0 12px; }
.art-paragraphs h2:first-child, .art-paragraphs h3:first-child { margin-top:0; }
.art-paragraphs ul, .art-paragraphs ol { margin:0 0 22px; padding-left:24px; }
.art-paragraphs li { font-size:15px; line-height:1.8; color:var(--c-t2); margin-bottom:8px; }
.art-paragraphs strong { font-weight:700; color:var(--c-t1); }
.art-paragraphs em { font-style:italic; }
.art-paragraphs a { color:var(--gold); text-decoration:underline; }
.art-sidebar { position:sticky; top:calc(var(--nav-h) + 24px); display:flex; flex-direction:column; gap:16px; }
.art-info-box { background:var(--c-s1); border:1px solid var(--c-brd); padding:24px; }
.art-info-row { padding:12px 0; border-bottom:1px solid var(--c-brd); display:flex; flex-direction:column; gap:4px; }
.art-info-row:last-child { border-bottom:none; padding-bottom:0; }
.art-info-label { font-size:8px; font-weight:800; letter-spacing:2.5px; text-transform:uppercase; color:var(--gold); }
.art-info-value { font-size:13px; font-weight:600; color:var(--c-t1); }
.art-back-link {
  display:inline-flex; align-items:center; gap:8px;
  font-size:10px; font-weight:700; letter-spacing:2px;
  text-transform:uppercase; color:var(--gold); transition:gap .2s; padding:12px 0;
}
.art-back-link:hover { gap:14px; }

.art-related { padding:clamp(48px,6vw,72px) var(--pad-x); background:var(--c-s1); border-top:1px solid var(--c-brd); }
.art-related-inner { max-width:1160px; margin:0 auto; }
.art-related-head { display:flex; flex-direction:column; gap:4px; margin-bottom:clamp(24px,3vw,36px); }
.art-related-sublabel { font-size:9px; font-weight:800; letter-spacing:3px; text-transform:uppercase; color:var(--gold); }
.art-related-title {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(24px,3.5vw,42px); font-weight:900;
  font-style:italic; text-transform:uppercase; line-height:.95; color:var(--c-t1);
}
.art-related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }

@media (max-width:860px) {
  .art-body-inner { grid-template-columns:1fr; }
  .art-sidebar { position:static; flex-direction:row; flex-wrap:wrap; }
  .art-info-box { flex:1; min-width:240px; }
}
@media (max-width:768px)  { .art-related-grid { grid-template-columns:1fr; } }
@media (max-width:960px) and (min-width:769px) { .art-related-grid { grid-template-columns:repeat(2,1fr); } }


/* ══════════════════════════════════════════════════
   TRANSFER PAGE - Premium transfer announcement
══════════════════════════════════════════════════ */

/* ── Hero: full-screen cinematic split ── */
.tf-hero {
  position:relative; height:clamp(420px,58vh,600px); min-height:420px;
  overflow:hidden; display:flex; flex-direction:column; justify-content:flex-end;
  background:#050403;
}
.tf-hero-bg { position:absolute; inset:0; }
.tf-hero-bg img {
  width:100%; height:100%; object-fit:cover; object-position:top center;
  display:block; filter:brightness(.45);
  transform-origin:center; transition:transform 8s ease;
}
.tf-hero:hover .tf-hero-bg img { transform:scale(1.03); }
.tf-hero-overlay {
  position:absolute; inset:0;
  background:
    linear-gradient(to right, rgba(4,3,2,.97) 0%, rgba(4,3,2,.82) 40%, rgba(4,3,2,.2) 72%, rgba(4,3,2,.05) 100%),
    linear-gradient(to top, rgba(4,3,2,.9) 0%, transparent 45%);
}
.tf-hero::after {
  content:''; position:absolute; top:0; left:0; right:0; height:3px;
  background:linear-gradient(90deg,var(--gold) 0%,var(--gold) 55%,transparent 100%);
}
.tf-hero-content {
  position:relative; z-index:2;
  padding:calc(var(--nav-h) + 48px) var(--pad-x) clamp(48px,7vw,80px);
  max-width:1200px; margin:0 auto; width:100%;
  display:flex; flex-direction:column; justify-content:flex-end;
  height:100%;
}
.tf-hero-meta {
  display:flex; align-items:center; gap:16px; margin-bottom:20px;
}
.tf-hero-cat {
  display:inline-block; font-size:9px; font-weight:800; letter-spacing:3px;
  text-transform:uppercase; color:var(--gold); border:1px solid rgba(196,165,90,.5);
  padding:5px 16px;
}
.tf-hero-date { color:rgba(255,255,255,.35); font-size:12px; }
.tf-hero-title {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(34px,5.5vw,72px); font-weight:900;
  font-style:italic; text-transform:uppercase;
  line-height:.86; letter-spacing:-2.5px; color:#fff;
  max-width:780px; margin-bottom:clamp(28px,4vw,48px);
}

/* Clubs row inside hero */
.tf-hero-clubs {
  display:flex; align-items:center; gap:clamp(14px,2.5vw,28px); flex-wrap:wrap;
  padding-top:clamp(24px,3vw,36px);
  border-top:1px solid rgba(196,165,90,.2);
}
.tf-hero-club {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(20px,2.8vw,40px); font-weight:900;
  font-style:italic; text-transform:uppercase;
  letter-spacing:-1.5px; line-height:1;
}
.tf-club-from { color:rgba(255,255,255,.4); }
.tf-club-to   { color:var(--gold); }
.tf-hero-club-arrow {
  width:clamp(36px,4vw,52px); height:clamp(36px,4vw,52px);
  background:var(--gold); flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  color:#0a0905; font-size:clamp(14px,1.8vw,20px);
  clip-path:polygon(8px 0%,100% 0%,calc(100% - 8px) 100%,0% 100%);
}

/* ── Details band ── */
.tf-details-band {
  background:#0a0905;
  border-bottom:1px solid rgba(196,165,90,.12);
}
.tf-details-band-inner {
  max-width:1200px; margin:0 auto;
  padding:0 var(--pad-x);
  display:flex; align-items:stretch; flex-wrap:wrap;
}
.tf-band-stat {
  display:flex; flex-direction:column; gap:5px;
  padding:clamp(20px,3vw,32px) clamp(24px,3.5vw,48px) clamp(20px,3vw,32px) 0;
  min-width:140px;
}
.tf-band-stat:first-child { padding-left:0; }
.tf-band-divider {
  width:1px; background:rgba(196,165,90,.14);
  margin:0 clamp(24px,3.5vw,48px) 0 0;
  align-self:stretch;
}
.tf-band-label {
  font-size:8px; font-weight:800; letter-spacing:2.5px;
  text-transform:uppercase; color:var(--gold);
}
.tf-band-value {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(18px,2.2vw,30px); font-weight:800;
  font-style:italic; color:#fff; text-transform:uppercase; line-height:1;
}
.tf-agency-stamp {
  margin-left:auto; display:flex; align-items:center; gap:12px;
  padding:clamp(20px,3vw,32px) 0;
  border-left:1px solid rgba(196,165,90,.14);
  padding-left:clamp(24px,3.5vw,48px);
}
.tf-agency-stamp img { width:28px; opacity:.7; }
.tf-agency-stamp span {
  font-size:10px; font-weight:600; letter-spacing:1.5px;
  text-transform:uppercase; color:rgba(255,255,255,.4);
}

/* ── Portrait + article grid ── */
.tf-content {
  padding:clamp(56px,8vw,100px) var(--pad-x);
  background:var(--c-bg);
}
.tf-content-grid {
  max-width:1160px; margin:0 auto;
  display:grid; grid-template-columns:320px 1fr;
  gap:clamp(40px,6vw,80px); align-items:start;
}
.tf-portrait-col {
  position:sticky; top:calc(var(--nav-h) + 24px);
}
.tf-portrait-col img {
  width:100%; aspect-ratio:3/4; object-fit:cover;
  object-position:top center; display:block;
  filter:grayscale(8%) brightness(.92);
  border:1px solid rgba(196,165,90,.14);
}
.tf-article-col { display:flex; flex-direction:column; }
.tf-lead {
  font-size:clamp(16px,1.7vw,20px); font-weight:400; line-height:1.85;
  color:var(--c-t1); border-left:3px solid var(--gold);
  padding-left:22px; margin-bottom:36px;
}
.tf-body p { font-size:15px; line-height:1.95; color:var(--c-t2); margin-bottom:24px; }

/* ── Quote ── */
.tf-quote-section {
  background:#060503; padding:clamp(56px,7vw,96px) var(--pad-x);
  border-top:1px solid rgba(196,165,90,.1);
  border-bottom:1px solid rgba(196,165,90,.1);
  position:relative; overflow:hidden;
}
.tf-quote-section::before {
  content:'"'; position:absolute; top:-40px; left:50%; transform:translateX(-50%);
  font-family:Georgia,serif; font-size:clamp(200px,28vw,400px); line-height:1;
  color:rgba(196,165,90,.04); pointer-events:none; user-select:none;
}
.tf-quote-inner { max-width:780px; margin:0 auto; text-align:center; position:relative; z-index:1; }
.tf-quote-mark { display:none; }
.tf-quote-text {
  font-family:'Barlow Condensed',sans-serif;
  font-size:clamp(22px,3.2vw,46px); font-weight:800;
  font-style:italic; color:#fff; line-height:1.2;
}
.tf-quote-source {
  margin-top:28px; font-size:10px; font-weight:800;
  letter-spacing:3px; text-transform:uppercase; color:var(--gold);
  display:flex; align-items:center; justify-content:center; gap:10px;
}
.tf-quote-source::before, .tf-quote-source::after { content:''; width:32px; height:1px; background:var(--gold); }

/* ── Related ── */
.tf-related { padding:clamp(48px,6vw,72px) var(--pad-x); background:var(--c-s1); border-top:1px solid var(--c-brd); }
.tf-related-inner { max-width:1160px; margin:0 auto; }

/* ── Responsive ── */
@media (max-width:960px) {
  .tf-content-grid { grid-template-columns:1fr; }
  .tf-portrait-col { position:static; max-height:480px; overflow:hidden; }
  .tf-portrait-col img { aspect-ratio:16/9; object-position:top; }
  .tf-details-band-inner { flex-wrap:wrap; gap:0; }
  .tf-agency-stamp { margin-left:0; border-left:none; padding-left:0; border-top:1px solid rgba(196,165,90,.14); width:100%; padding-top:20px; padding-bottom:20px; }
}
@media (max-width:600px) {
  .tf-hero-clubs { gap:12px; }
  .tf-band-divider { display:none; }
  .tf-band-stat { padding-right:24px; min-width:120px; }
}

/* ── Spelersvenster op de telefoon ──────────────────────
   De laag eronder scrollt en centreerde het venster verticaal, waardoor
   je bovenaan al voorbij de foto begon en de sluitknop buiten beeld viel.
   Op smalle schermen wordt het daarom een volledig scherm dat bovenaan
   begint, met een sluitknop die blijft staan. */
@media (max-width:700px) {
  .modal-backdrop { align-items:flex-start; padding:0; }
  .modal {
    max-width:none; border:none; border-radius:0;
    min-height:100svh;
  }
  .modal-photo { aspect-ratio:1/1; max-height:none; }
  .modal-body { padding:26px 20px 40px; }
  .modal-close {
    position:fixed; top:14px; right:14px;
    width:44px; height:44px; font-size:16px;
  }
}
