/* ==========================================================================
   SoccerPlayer Consulting — gemeinsames Stylesheet
   Ersetzt die 24× duplizierten Inline-<style>-Blöcke. Farben, Fonts und
   Abstände laufen als CSS-Variablen — Design-Änderungen künftig an einer
   Stelle statt in jeder HTML-Datei einzeln.
   ========================================================================== */

:root{
  --c-black:#0A0A0A;
  --c-black-rgb:10,10,10;
  --c-pure-black:#000;
  --c-black-alt:#111;
  --c-offwhite:#F7F6F3;
  --c-offwhite-2:#F0EFEA;
  --c-white:#fff;
  --c-white-rgb:255,255,255;
  --c-gold:#B8973A;
  --c-gold-rgb:184,151,58;
  --c-gold-light:#D4B86A;
  --c-chip:#F2F0E8;

  --font-serif:'Cormorant Garamond',serif;
  --font-sans:'Montserrat',sans-serif;
  --font-body:'Inter',sans-serif;

  --container:1400px;
  --container-sub:1380px;
  --container-article:760px;

  --section-pad:120px 56px;
  --section-pad-tab:80px 32px;
  --section-pad-mob:56px 20px;
}

/* ── FONTS ── */
@font-face{font-family:'Cormorant Garamond';src:url('fonts/CormorantGaramond-Light.woff2') format('woff2'),url('fonts/CormorantGaramond-Light.ttf') format('truetype');font-weight:300;font-style:normal;font-display:swap;}
@font-face{font-family:'Cormorant Garamond';src:url('fonts/CormorantGaramond-Regular.woff2') format('woff2'),url('fonts/CormorantGaramond-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:'Cormorant Garamond';src:url('fonts/CormorantGaramond-Medium.woff2') format('woff2'),url('fonts/CormorantGaramond-Medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap;}
@font-face{font-family:'Cormorant Garamond';src:url('fonts/CormorantGaramond-LightItalic.woff2') format('woff2'),url('fonts/CormorantGaramond-LightItalic.ttf') format('truetype');font-weight:300;font-style:italic;font-display:swap;}
@font-face{font-family:'Cormorant Garamond';src:url('fonts/CormorantGaramond-Italic.woff2') format('woff2'),url('fonts/CormorantGaramond-Italic.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap;}
@font-face{font-family:'Cormorant Garamond';src:url('fonts/CormorantGaramond-MediumItalic.woff2') format('woff2'),url('fonts/CormorantGaramond-MediumItalic.ttf') format('truetype');font-weight:500;font-style:italic;font-display:swap;}
@font-face{font-family:'Inter';src:url('fonts/Inter_18pt-Regular.woff2') format('woff2'),url('fonts/Inter_18pt-Regular.ttf') format('truetype');font-weight:400;font-display:swap;}
@font-face{font-family:'Montserrat';src:url('fonts/Montserrat-Medium.woff2') format('woff2'),url('fonts/Montserrat-Medium.ttf') format('truetype');font-weight:500;font-display:swap;}
@font-face{font-family:'Montserrat';src:url('fonts/Montserrat-Bold.woff2') format('woff2'),url('fonts/Montserrat-Bold.ttf') format('truetype');font-weight:700;font-display:swap;}
@font-face{font-family:'Montserrat';src:url('fonts/Montserrat-ExtraBoldItalic.woff2') format('woff2'),url('fonts/Montserrat-ExtraBoldItalic.ttf') format('truetype');font-weight:800;font-style:italic;font-display:swap;}

/* ── RESET / BASE ── */
*{box-sizing:border-box;margin:0;padding:0;overflow-wrap:break-word;}
html,body{background:var(--c-black);color:var(--c-black);font-family:var(--font-body);font-size:15px;font-weight:400;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%;}
body.is-light{background:var(--c-offwhite);}
img{display:block;max-width:100%;}
a,button{cursor:pointer;color:inherit;text-decoration:none;}
em{font-style:italic;}
h1,h2,h3{font-weight:400;}

::-webkit-scrollbar{width:3px;}
::-webkit-scrollbar-track{background:var(--c-black);}
::-webkit-scrollbar-thumb{background:var(--c-gold);}

.skip-link{position:absolute;left:-9999px;top:0;background:var(--c-gold);color:var(--c-black);padding:14px 22px;z-index:999;font-family:var(--font-sans);font-size:13px;font-weight:500;}
.skip-link:focus{left:8px;top:8px;}

/* ── REVEAL-ON-SCROLL ── */
.rv{opacity:0;transform:translateY(22px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1);}
.rv.in{opacity:1;transform:none;}
.rv.d1{transition-delay:.1s;} .rv.d2{transition-delay:.2s;} .rv.d3{transition-delay:.3s;} .rv.d4{transition-delay:.4s;}
@keyframes rvIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.rv-stagger > *{opacity:0;}
.rv-stagger.in > *{opacity:1;animation:rvIn .7s cubic-bezier(.2,.7,.2,1) backwards;}
.rv-stagger.in > *:nth-child(2){animation-delay:.09s;}
.rv-stagger.in > *:nth-child(3){animation-delay:.18s;}
.rv-stagger.in > *:nth-child(4){animation-delay:.27s;}
.rv-stagger.in > *:nth-child(5){animation-delay:.36s;}
.rv-stagger.in > *:nth-child(6){animation-delay:.45s;}
.rv-stagger.in > *:nth-child(7){animation-delay:.54s;}
.rv-stagger.in > *:nth-child(8){animation-delay:.63s;}
.rv-stagger.in > *:nth-child(9){animation-delay:.72s;}
@media (prefers-reduced-motion:reduce){
  .rv,.rv-stagger > *{opacity:1!important;transform:none!important;transition:none!important;animation:none!important;}
  .club-track{animation:none!important;}
}

/* ── NAV ── */
nav{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(var(--c-black-rgb),.28);backdrop-filter:blur(14px);border-bottom:1px solid rgba(var(--c-white-rgb),.06);transition:background 300ms,border-color 220ms,box-shadow 220ms;}
nav.scrolled{background:rgba(var(--c-black-rgb),.92)!important;border-bottom-color:rgba(var(--c-white-rgb),.09);box-shadow:0 2px 24px rgba(0,0,0,.3);}
.nav-in{max-width:var(--container);margin:0 auto;padding:0 56px;height:72px;display:flex;align-items:center;justify-content:space-between;}
.nav-logo img{height:46px;}
.nav-links{display:flex;gap:36px;list-style:none;}
.nav-links a{font-family:var(--font-sans);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:rgba(var(--c-white-rgb),.62);transition:color 180ms;position:relative;padding-bottom:4px;}
.nav-links a:hover{color:var(--c-white);}
.nav-links a::after{content:'';position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--c-gold);transform:scaleX(0);transform-origin:left;transition:transform .28s ease;}
.nav-links a:hover::after,.nav-links a.active::after{transform:scaleX(1);}
.nav-links a.active{color:var(--c-gold);}
.nav-cta{font-family:var(--font-sans);font-size:11px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--c-black);background:var(--c-gold);padding:11px 24px;transition:background 180ms,transform .12s;}
.nav-cta:hover{background:var(--c-gold-light);transform:translateY(-1px);}

.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;background:none;border:none;padding:0;}
.nav-burger span{display:block;width:24px;height:2px;background:var(--c-white);transition:transform 220ms ease,opacity 220ms ease;}
.nav-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-burger.open span:nth-child(2){opacity:0;}
.nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mobile-menu{display:none;list-style:none;flex-direction:column;background:rgba(var(--c-black-rgb),.98);backdrop-filter:blur(12px);border-bottom:1px solid rgba(var(--c-white-rgb),.08);max-height:0;overflow:hidden;transition:max-height 280ms ease;}
.mobile-menu.open{max-height:460px;}
.mobile-menu li{border-top:1px solid rgba(var(--c-white-rgb),.06);}
.mobile-menu a{display:block;padding:16px 32px;font-family:var(--font-sans);font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:rgba(var(--c-white-rgb),.7);}
.mobile-menu a:hover{color:var(--c-gold);}

.lang-switch{display:flex;align-items:center;gap:6px;font-family:var(--font-sans);font-size:10.5px;font-weight:500;letter-spacing:.08em;margin-left:26px;}
.lang-switch a{color:rgba(var(--c-white-rgb),.4);transition:color 160ms;}
.lang-switch a.active{color:var(--c-white);}
.lang-switch a:hover{color:var(--c-gold);}
.lang-switch span{color:rgba(var(--c-white-rgb),.25);}
.mobile-lang{display:flex;gap:10px;padding:18px 32px;font-family:var(--font-sans);font-size:12px;font-weight:500;letter-spacing:.1em;}
.mobile-lang a{color:rgba(var(--c-white-rgb),.5);}
.mobile-lang a.active{color:var(--c-white);text-decoration:underline;text-decoration-color:var(--c-gold);}

/* ── BUTTONS ── */
.btn-gold{font-family:var(--font-sans);font-weight:500;font-size:11px;letter-spacing:.13em;text-transform:uppercase;background:var(--c-gold);color:var(--c-black);padding:17px 34px;transition:background 180ms,transform .12s;display:inline-block;}
.btn-gold:hover{background:var(--c-gold-light);transform:translateY(-1px);}
.btn-outline{font-family:var(--font-sans);font-weight:500;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--c-white);border:1px solid rgba(var(--c-white-rgb),.35);padding:16px 32px;transition:border-color 180ms,background 180ms;display:inline-block;}
.btn-outline:hover{border-color:var(--c-gold);background:rgba(var(--c-gold-rgb),.08);}
.btn-outline.on-light{color:var(--c-black);border-color:rgba(var(--c-black-rgb),.25);}
.btn-outline.on-light:hover{border-color:var(--c-gold);background:rgba(var(--c-gold-rgb),.08);}
.btn-primary{font-family:var(--font-sans);font-weight:500;font-size:11px;letter-spacing:.13em;text-transform:uppercase;background:var(--c-gold);color:var(--c-black);padding:16px 36px;transition:background 180ms,transform .12s;display:inline-block;}
.btn-primary:hover{background:var(--c-gold-light);transform:translateY(-1px);}
.btn-primary.on-light{background:var(--c-black);color:var(--c-white);}
.btn-primary.on-light:hover{background:var(--c-gold);}

.hov-gold:hover{color:var(--c-gold)!important;}
.hov-white:hover{color:var(--c-white)!important;}
.hov-gold-outline:hover{border-color:var(--c-gold)!important;background:rgba(var(--c-gold-rgb),.12)!important;}
.hov-gold-btn:hover{background:var(--c-gold-light)!important;transform:translateY(-1px)!important;}

/* ── HERO (homepage) ── */
.hero-eyebrow-row{display:inline-flex;align-items:center;gap:12px;margin-bottom:26px;}
.fifa-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid rgba(var(--c-gold-rgb),.5);background:rgba(var(--c-gold-rgb),.08);}
.fifa-chip svg{width:22px;height:16px;flex-shrink:0;}
.fifa-chip span{font-family:var(--font-sans);font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--c-chip);}
.hero-eyebrow{font-family:var(--font-sans);font-size:10.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold);}
.hero-h1{font-family:var(--font-serif);font-weight:300;font-size:clamp(34px,6.07vw,85px);line-height:1.05;color:var(--c-white);margin-bottom:30px;}
.hero-h1 em{color:var(--c-gold);}
.hero-sub{font-family:var(--font-body);font-size:17px;line-height:1.7;color:rgba(var(--c-white-rgb),.68);max-width:560px;margin-bottom:44px;}
.hero-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;}
.hero-scroll-hint{position:absolute;left:50%;bottom:24px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;}
.hero-scroll-hint span{font-family:var(--font-sans);font-size:9px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:rgba(var(--c-white-rgb),.45);}
.hero-scroll-hint div{width:1px;height:36px;background:linear-gradient(to bottom,rgba(var(--c-white-rgb),.85),transparent);box-shadow:0 0 6px 1px rgba(0,0,0,.4);}

/* ── STATS BAR ── */
.stats-bar{display:grid;grid-template-columns:repeat(4,1fr);background:var(--c-black-alt);border-top:1px solid rgba(var(--c-white-rgb),.08);border-bottom:1px solid rgba(var(--c-white-rgb),.08);}
.stat-item{min-width:0;padding:48px;border-right:1px solid rgba(var(--c-white-rgb),.07);}
.stat-item:last-child{border-right:none;}
.stat-n{font-family:var(--font-sans);font-weight:800;font-style:italic;font-size:clamp(16px,calc(3.3vw - 12.6px),42px);line-height:1;color:var(--c-white);white-space:nowrap;}
.stat-n sup{font-size:20px;color:var(--c-gold);vertical-align:super;}
.stat-l{font-family:var(--font-sans);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgba(var(--c-white-rgb),.42);margin-top:10px;}

/* ── SECTION CHROME ── */
.sec-eyebrow{font-family:var(--font-sans);font-size:10.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold);margin-bottom:18px;display:flex;align-items:center;gap:14px;}
.sec-eyebrow::before{content:'';display:block;width:28px;height:1px;background:var(--c-gold);flex-shrink:0;}
.sec-title{font-family:var(--font-serif);font-weight:300;font-size:clamp(34px,4vw,58px);line-height:1.1;}
.sec-title em{color:var(--c-gold);}
.sec-title-light{color:var(--c-white);}
.sec-title-dark{color:var(--c-black);}
.sec-head-row{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:56px;}

/* ── WARUM / WERTE (dark) ── */
.warum-section{background:var(--c-black);padding:var(--section-pad);}
.warum-statement{font-family:var(--font-serif);font-weight:300;font-size:clamp(30px,3.6vw,52px);line-height:1.2;color:var(--c-white);max-width:1000px;margin-top:8px;}
.warum-statement em{color:var(--c-gold);}
.warum-sub{font-family:var(--font-body);font-size:16px;color:rgba(var(--c-white-rgb),.6);line-height:1.85;max-width:1000px;margin-top:26px;}
.value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:72px;}
.value-card{min-width:0;background:rgba(var(--c-white-rgb),.03);border:1px solid rgba(var(--c-white-rgb),.07);padding:36px 28px;transition:background .25s,border-color .25s,transform .3s ease;}
.value-card:hover{background:rgba(var(--c-white-rgb),.06);border-color:rgba(var(--c-gold-rgb),.25);transform:translateY(-6px);}
.value-card svg{width:30px;height:30px;color:var(--c-gold);margin-bottom:22px;}
.value-card h3{font-family:var(--font-serif);font-weight:400;font-size:22px;color:var(--c-white);margin-bottom:10px;}
.value-card p{font-family:var(--font-body);font-size:12.5px;color:rgba(var(--c-white-rgb),.55);line-height:1.7;}

/* ── LEISTUNGEN (light, homepage grid) ── */
.svc-section{background:var(--c-offwhite);padding:var(--section-pad);}
.svc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;margin-top:60px;}
.svc-card{min-width:0;background:var(--c-white);border:1px solid rgba(var(--c-black-rgb),.07);padding:40px 34px;position:relative;overflow:hidden;transition:background .25s,border-color .25s,transform .3s ease,box-shadow .3s ease;}
.svc-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--c-gold);transform:scaleX(0);transform-origin:left;transition:transform .3s ease;}
.svc-card:hover{border-color:rgba(var(--c-gold-rgb),.4);transform:translateY(-6px);box-shadow:0 18px 40px rgba(var(--c-black-rgb),.08);}
.svc-card:hover::after{transform:scaleX(1);}
.svc-card svg{width:28px;height:28px;color:var(--c-gold);margin-bottom:20px;}
.svc-title{font-family:var(--font-serif);font-weight:400;font-size:22px;color:var(--c-black);margin-bottom:12px;}
.svc-text{font-family:var(--font-body);font-size:13px;color:rgba(var(--c-black-rgb),.6);line-height:1.7;}

/* ── KARRIEREWEG TIMELINE (dark) ── */
.timeline-section{background:var(--c-black);padding:var(--section-pad);overflow:hidden;}
.timeline-track{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:72px;position:relative;}
.timeline-track::before{content:'';position:absolute;top:15px;left:15px;right:5%;height:1px;background:rgba(var(--c-gold-rgb),.3);}
.tl-stage{position:relative;padding-top:48px;min-width:0;}
.tl-dot{position:absolute;top:0;left:0;width:30px;height:30px;border-radius:50%;background:var(--c-black);border:1.5px solid var(--c-gold);display:flex;align-items:center;justify-content:center;font-family:var(--font-sans);font-weight:700;font-size:12px;color:var(--c-gold);}
.tl-stage h4{font-family:var(--font-serif);font-weight:400;font-size:18px;color:var(--c-white);margin-bottom:8px;line-height:1.25;}
.tl-stage p{font-family:var(--font-body);font-size:11.5px;color:rgba(var(--c-white-rgb),.5);line-height:1.6;}

/* ── SPIELER / KLIENTEN (light) ── */
.players-section{background:var(--c-white);padding:var(--section-pad);}
.players-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:20px;}
.p-card{min-width:0;cursor:pointer;transition:transform .3s ease;}
.p-card:hover{transform:translateY(-6px);}
.p-img-wrap{aspect-ratio:3/4;overflow:hidden;background:var(--c-offwhite);position:relative;}
.p-img-wrap img{width:100%;height:100%;object-fit:cover;filter:grayscale(35%);transition:transform .55s ease,filter .45s;}
.p-card:hover .p-img-wrap img{transform:scale(1.05);filter:grayscale(5%);}
.p-img-wrap.init-avatar{display:flex;align-items:center;justify-content:center;background:var(--c-black);}
.p-img-wrap.init-avatar span{font-family:var(--font-serif);font-weight:400;font-size:clamp(30px,3.6vw,44px);color:var(--c-gold);letter-spacing:.02em;transition:transform .55s ease;}
.p-card:hover .p-img-wrap.init-avatar span{transform:scale(1.08);}
.p-info{padding:18px 0 0;}
.p-name-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;}
.p-value{font-family:var(--font-serif);font-size:15px;font-weight:300;color:rgba(var(--c-black-rgb),.42);flex-shrink:0;white-space:nowrap;}
.p-name{font-family:var(--font-serif);font-weight:400;font-size:17px;color:var(--c-black);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;}
.p-club{font-family:var(--font-body);font-size:12.5px;color:rgba(var(--c-black-rgb),.62);margin-top:5px;}
.p-meta{font-family:var(--font-sans);font-size:11px;color:rgba(var(--c-black-rgb),.4);letter-spacing:.08em;margin-top:4px;}
.p-tag{display:inline-block;margin-top:8px;font-family:var(--font-sans);font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--c-gold);border:1px solid rgba(var(--c-gold-rgb),.3);padding:3px 9px;}

/* ── NETZWERK (light) ── */
.network-section{position:relative;overflow:hidden;background:var(--c-offwhite-2);padding:var(--section-pad);}
.network-content{position:relative;z-index:1;}
.network-bg-map-wrap{position:absolute;inset:0;z-index:0;pointer-events:none;}
#network-bg-map path,#network-bg-map g{fill:rgba(10,10,10,.045);stroke:none;}
#network-bg-map #de,#network-bg-map #de path,
#network-bg-map #at,#network-bg-map #at path,
#network-bg-map #ch,#network-bg-map #ch path,
#network-bg-map #ee,#network-bg-map #ee path,
#network-bg-map #gb,#network-bg-map #gb path,
#network-bg-map #lu,#network-bg-map #lu path,
#network-bg-map #hr,#network-bg-map #hr path,
#network-bg-map #dk,#network-bg-map #dk path,
#network-bg-map #pl,#network-bg-map #pl path,
#network-bg-map #nl,#network-bg-map #nl path,
#network-bg-map #be,#network-bg-map #be path,
#network-bg-map #cz,#network-bg-map #cz path,
#network-bg-map #ua,#network-bg-map #ua path,
#network-bg-map #si,#network-bg-map #si path,
#network-bg-map #it,#network-bg-map #it path,
#network-bg-map #rs,#network-bg-map #rs path,
#network-bg-map #ba,#network-bg-map #ba path,
#network-bg-map #us,#network-bg-map #us path,
#network-bg-map #fr,#network-bg-map #fr path,
#network-bg-map #es,#network-bg-map #es path,
#network-bg-map #au,#network-bg-map #au path{fill:rgba(184,151,58,.22)!important;}

.club-marquee{overflow:hidden;padding:8px 0;-webkit-mask-image:linear-gradient(to right,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(to right,transparent,#000 10%,#000 90%,transparent);}
.club-track{display:flex;width:max-content;animation:clubScroll 75s linear infinite;}
.club-marquee:hover .club-track{animation-play-state:paused;}
.club-set{display:flex;align-items:center;gap:48px;padding-right:48px;flex-shrink:0;}
.club-item{transition:transform .3s ease;}
.club-item:hover{transform:translateY(-4px);}
@keyframes clubScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ── ERFOLGSGESCHICHTEN (light alt) ── */
.stories-section{background:var(--c-offwhite);padding:var(--section-pad);}
.stories-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:60px;}
.story-card{min-width:0;background:var(--c-black);padding:36px 32px;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease;}
.story-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(var(--c-black-rgb),.18);}
.story-card .story-tag{display:inline-block;font-family:var(--font-sans);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--c-black);background:var(--c-gold);padding:4px 10px;margin-bottom:20px;}
.story-card h3{font-family:var(--font-serif);font-weight:400;font-size:24px;line-height:1.2;color:var(--c-white);margin-bottom:14px;}
.story-card p{font-family:var(--font-body);font-size:13px;color:rgba(var(--c-white-rgb),.55);line-height:1.7;}
.story-card .story-link{display:inline-flex;align-items:center;gap:8px;margin-top:22px;font-family:var(--font-sans);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--c-gold);}

/* ── TEAM (white) ── */
.team-section{background:var(--c-white);padding:var(--section-pad);}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:56px 0;margin-top:60px;}
.team-card{min-width:0;padding:0 36px;border-left:1px solid rgba(var(--c-black-rgb),.12);text-align:center;}
.team-card:nth-child(3n+1){border-left:none;padding-left:0;}
.team-card:nth-child(3n){padding-right:0;}
.t-avatar{width:96px;height:96px;border-radius:50%;border:1.5px solid var(--c-gold);display:flex;align-items:center;justify-content:center;margin:0 auto 24px;transition:transform .4s ease;}
.team-card:hover .t-avatar{transform:scale(1.06);}
.t-avatar span{font-family:var(--font-serif);font-weight:400;font-size:30px;color:var(--c-gold);letter-spacing:.02em;line-height:1;text-align:center;display:block;transform:translateY(1px);}
.t-name{font-family:var(--font-serif);font-size:24px;font-weight:400;color:var(--c-black);}
.t-role{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--c-gold);font-weight:500;margin:6px 0 16px;min-height:1px;}
.t-quote{font-family:var(--font-serif);font-style:italic;font-size:14.5px;color:rgba(var(--c-black-rgb),.65);line-height:1.5;}
.t-langs{display:flex;gap:5px;flex-wrap:wrap;justify-content:center;margin-top:16px;}
.t-lang{font-family:var(--font-sans);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;background:var(--c-offwhite);color:rgba(var(--c-black-rgb),.5);padding:3px 8px;}

/* ── TESTIMONIALS (dark) ── */
.testi-section{background:var(--c-black);padding:var(--section-pad);}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:60px;}
.testi-card{min-width:0;background:rgba(var(--c-white-rgb),.03);border:1px solid rgba(var(--c-white-rgb),.07);padding:36px 30px;}
.testi-quote{font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:18px;line-height:1.5;color:var(--c-white);margin-bottom:20px;}
.testi-quote::before{content:'\201C';color:var(--c-gold);}
.testi-quote::after{content:'\201D';color:var(--c-gold);}
.testi-role{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:rgba(var(--c-white-rgb),.4);}

/* ── NEWS / AKTUELLES teaser (homepage, light alt) ── */
.transfers-section{background:var(--c-offwhite);padding:var(--section-pad);}
.n-card{min-width:0;transition:background .2s,transform .3s ease,box-shadow .3s ease;}
.n-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(var(--c-black-rgb),.1);}
.n-featured-row{display:grid;grid-template-columns:1.5fr 1fr;gap:2px;margin-bottom:2px;}
.n-small-row{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;}

/* n-tag: canonical mapping — same colors used on homepage teaser and on the
   full news page (the two builds had drifted: home swapped news/event). */
.n-tag{display:inline-block;font-family:var(--font-sans);font-size:9px;letter-spacing:.18em;text-transform:uppercase;padding:3px 8px;}
.n-tag.transfer{color:var(--c-white);background:var(--c-black);}
.n-tag.event{color:var(--c-white);background:var(--c-gold);}
.n-tag.news{color:var(--c-gold);background:transparent;border:1px solid rgba(var(--c-gold-rgb),.4);}
.n-tag.extension{color:var(--c-black);background:transparent;border:1px solid rgba(var(--c-black-rgb),.32);}
.n-tag.milestone{color:var(--c-gold);background:rgba(var(--c-gold-rgb),.14);}
.n-date{font-family:var(--font-sans);font-size:11px;color:rgba(var(--c-black-rgb),.35);letter-spacing:.06em;}

/* ── NEWS full page (grid list) ── */
.news-section{background:var(--c-white);padding:72px 56px 112px;}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;}
.n-card.n-card-flat{background:var(--c-white);padding:36px 40px;cursor:pointer;transition:background .2s,border-color .2s;border:1px solid rgba(var(--c-black-rgb),.14);}
.n-card.n-card-flat:hover{background:#f7f5f0;border-color:rgba(var(--c-gold-rgb),.4);transform:none;box-shadow:none;}
.n-title{font-family:var(--font-serif);font-weight:400;font-size:22px;line-height:1.18;color:var(--c-black);margin:16px 0 14px;}
.n-link{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:rgba(var(--c-black-rgb),.38);transition:color .18s;}
.n-link:hover{color:var(--c-gold);}

/* ── MODALS (shared: homepage stories/news + full news page) ── */
.modal-backdrop{position:fixed;inset:0;background:rgba(var(--c-black-rgb),.6);backdrop-filter:blur(3px);z-index:200;opacity:0;pointer-events:none;transition:opacity 220ms ease;display:flex;align-items:center;justify-content:center;padding:32px;}
.modal-backdrop.open{opacity:1;pointer-events:auto;}
.modal-box{background:var(--c-white);max-width:640px;width:100%;max-height:85vh;overflow-y:auto;padding:48px;position:relative;transform:translateY(14px);transition:transform 220ms ease;}
.modal-backdrop.open .modal-box{transform:translateY(0);}
.modal-close{position:absolute;top:20px;right:20px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(var(--c-black-rgb),.15);background:transparent;cursor:pointer;transition:all 140ms;}
.modal-close:hover{border-color:var(--c-gold);color:var(--c-gold);}
.modal-meta{display:flex;align-items:center;gap:12px;margin-bottom:22px;}
.modal-title{font-family:var(--font-serif);font-weight:400;font-size:30px;line-height:1.15;color:var(--c-black);margin-bottom:20px;}
.modal-body{font-family:var(--font-body);font-size:14.5px;line-height:1.85;color:rgba(var(--c-black-rgb),.6);}
.modal-body p+p{margin-top:16px;}

/* ── SOCIAL BAR ── */
.social-section{background:var(--c-black);padding:64px 56px;border-top:1px solid rgba(var(--c-white-rgb),.07);border-bottom:1px solid rgba(var(--c-white-rgb),.07);}
.social-row{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;}
.social-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(var(--c-white-rgb),.15);transition:all 140ms;}
.social-icon:hover{border-color:var(--c-gold);background:rgba(var(--c-gold-rgb),.1);}
.social-icon svg{width:19px;height:19px;color:rgba(var(--c-white-rgb),.75);}

/* ── CONTACT FORM (dark, homepage + kontakt.html dark variant) ── */
.contact-section{background:var(--c-black);padding:var(--section-pad);color:var(--c-white);}
.fi{font-family:var(--font-body);font-size:14px;color:var(--c-white);padding:13px 0 11px;border:none;border-bottom:1px solid rgba(var(--c-white-rgb),.18);background:transparent;width:100%;outline:none;transition:border-color 160ms;}
.fi::placeholder{color:rgba(var(--c-white-rgb),.28);}
.fi:focus{border-color:rgba(var(--c-white-rgb),.55);}
select.fi{-webkit-appearance:none;appearance:none;}
select.fi option{background:var(--c-black);}

/* light variant used on the standalone kontakt.html page */
.contact-section.on-light{background:var(--c-white);color:var(--c-black);}
.contact-section.on-light .fi{color:var(--c-black);border-bottom-color:rgba(var(--c-black-rgb),.18);}
.contact-section.on-light .fi::placeholder{color:rgba(var(--c-black-rgb),.32);}
.contact-section.on-light .fi:focus{border-bottom-color:rgba(var(--c-black-rgb),.55);}
.contact-section.on-light select.fi option{background:var(--c-white);}

/* ── SUBPAGE HEADER (service pages, klienten, news, kontakt, legal) ──
   Textured black surface: real film-grain noise (SVG feTurbulence, no
   external image needed), soft shifted-panel bands, feathered gold corner
   hairlines, scattered gold dust and a halftone dot cluster bottom-left. */
.page-header{background:var(--c-black);padding:180px 56px 76px;position:relative;overflow:hidden;}
.page-header::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background-repeat:no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,repeat;
  background-image:
    radial-gradient(ellipse 900px 520px at 88% -10%,rgba(var(--c-gold-rgb),.16),transparent 60%),
    linear-gradient(128deg,transparent 26%,rgba(var(--c-white-rgb),.05) 36%,rgba(var(--c-white-rgb),.05) 45%,transparent 55%),
    linear-gradient(128deg,transparent 55%,rgba(var(--c-white-rgb),.035) 64%,rgba(var(--c-white-rgb),.035) 73%,transparent 83%),
    linear-gradient(135deg,transparent calc(50% - 3px),rgba(var(--c-gold-rgb),.55) 50%,transparent calc(50% + 3px)),
    linear-gradient(135deg,transparent calc(50% - 3px),rgba(var(--c-gold-rgb),.3) 50%,transparent calc(50% + 3px)),
    radial-gradient(circle at 82% 15%,rgba(var(--c-gold-rgb),.95) 0 1.6px,transparent 2.6px),
    radial-gradient(circle at 91% 30%,rgba(var(--c-gold-rgb),.6) 0 .9px,transparent 1.8px),
    radial-gradient(circle at 74% 40%,rgba(var(--c-gold-rgb),.5) 0 1.2px,transparent 2.1px),
    radial-gradient(circle at 95% 9%,rgba(var(--c-gold-rgb),.6) 0 .7px,transparent 1.4px),
    url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='240'%20height='240'%3E%3Cfilter%20id='n'%3E%3CfeTurbulence%20type='fractalNoise'%20baseFrequency='0.8'%20numOctaves='3'%20stitchTiles='stitch'%20result='t'/%3E%3CfeColorMatrix%20in='t'%20type='matrix'%20values='0%200%200%200%201%20%200%200%200%200%200.9%20%200%200%200%200%200.65%20%200%200%200%200.11%200'/%3E%3C/filter%3E%3Crect%20width='100%25'%20height='100%25'%20filter='url%28%23n%29'/%3E%3C/svg%3E");
  background-position:0 0,0 0,0 0,-70px -70px,calc(100% + 70px) calc(100% + 70px),0 0,0 0,0 0,0 0,0 0;
  background-size:100% 100%,100% 100%,100% 100%,320px 320px,320px 320px,100% 100%,100% 100%,100% 100%,100% 100%,240px 240px;
  mix-blend-mode:normal;
}
.page-header::after{
  content:'';position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(var(--c-gold-rgb),.45) 1px,transparent 1.5px);
  background-size:11px 11px;
  -webkit-mask-image:radial-gradient(circle 240px at 6% 92%,#000 0%,transparent 72%);
  mask-image:radial-gradient(circle 240px at 6% 92%,#000 0%,transparent 72%);
}
.page-header-in{position:relative;max-width:var(--container-sub);margin:0 auto;}
.crumb{position:relative;font-family:var(--font-sans);font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:rgba(var(--c-white-rgb),.4);}
.crumb a{color:rgba(var(--c-white-rgb),.4);transition:color 140ms;}
.crumb a:hover{color:var(--c-gold);}
.crumb span{color:var(--c-gold);}

/* ── FILTER BAR (klienten / news) ── */
.filter-bar{background:var(--c-white);border-bottom:1px solid rgba(var(--c-black-rgb),.08);position:sticky;top:68px;z-index:40;}
.filter-in{max-width:var(--container-sub);margin:0 auto;padding:22px 56px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.filter-label{font-family:var(--font-sans);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:rgba(var(--c-black-rgb),.35);margin-right:8px;}
.f-chip{font-family:var(--font-sans);font-size:11px;letter-spacing:.08em;color:rgba(var(--c-black-rgb),.55);border:1px solid rgba(var(--c-black-rgb),.15);padding:8px 18px;transition:all 160ms;background:transparent;}
.f-chip:hover{border-color:var(--c-gold);color:var(--c-gold);}
.f-chip.active{background:var(--c-black);border-color:var(--c-black);color:var(--c-white);}
.f-count{margin-left:auto;font-family:var(--font-sans);font-size:10.5px;letter-spacing:.1em;color:rgba(var(--c-black-rgb),.35);text-transform:uppercase;}

/* ── ROSTER (full klienten page — reuses .players-grid/.p-card above) ── */
.roster-section{background:var(--c-white);padding:72px 56px 112px;}

/* ── SERVICE / ARTICLE PAGES (the 6 Leistungen subpages) ── */
.article-section{background:var(--c-white);padding:88px 56px 0;}
.article-in{max-width:var(--container-article);margin:0 auto;}
.lead{font-family:var(--font-serif);font-weight:400;font-size:clamp(24px,2.4vw,30px);line-height:1.5;color:var(--c-black);margin-bottom:34px;}
.body-p{font-family:var(--font-body);font-size:16px;line-height:1.9;color:rgba(var(--c-black-rgb),.62);margin-bottom:22px;}

.svc-list{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.svc-item{min-width:0;display:flex;gap:18px;align-items:flex-start;padding:22px;background:var(--c-offwhite);border:1px solid rgba(var(--c-black-rgb),.06);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;}
.svc-item:hover{transform:translateY(-4px);border-color:rgba(var(--c-gold-rgb),.4);box-shadow:0 14px 30px rgba(var(--c-black-rgb),.07);}
.svc-num{flex-shrink:0;width:34px;height:34px;border-radius:50%;background:var(--c-white);border:1.5px solid var(--c-gold);display:flex;align-items:center;justify-content:center;font-family:var(--font-serif);font-weight:500;font-size:14px;color:var(--c-gold);}
.svc-label{font-family:var(--font-body);font-size:14.5px;color:var(--c-black);line-height:1.45;padding-top:5px;}

.claim-band{background:var(--c-offwhite-2);padding:96px 56px;text-align:center;}
.claim-eyebrow{font-family:var(--font-sans);font-size:10.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--c-gold);margin-bottom:22px;}
.claim-text{font-family:var(--font-serif);font-weight:300;font-style:italic;font-size:clamp(26px,2.8vw,38px);line-height:1.35;color:var(--c-black);max-width:680px;margin:0 auto;}
.claim-text em{color:var(--c-gold);font-style:italic;}

/* related-services strip at the bottom of each service page — plain text links */
.related-section{background:var(--c-white);padding:8px 56px 96px;}
.related-in{max-width:var(--container-article);margin:0 auto;padding-top:48px;border-top:1px solid rgba(var(--c-black-rgb),.08);}
.related-grid{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px;}
.related-item{min-width:0;font-family:var(--font-sans);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:rgba(var(--c-black-rgb),.6);border:1px solid rgba(var(--c-black-rgb),.15);padding:11px 20px;transition:border-color 160ms,color 160ms,background 160ms;}
.related-item:hover{border-color:var(--c-gold);color:var(--c-black);background:rgba(var(--c-gold-rgb),.08);}

.cta-band{background:var(--c-black);padding:88px 56px;text-align:center;}
.cta-band h2{font-family:var(--font-serif);font-weight:300;font-size:clamp(30px,3.2vw,42px);color:var(--c-white);margin-bottom:24px;}
.cta-band em{color:var(--c-gold);}
/* light variant used on klienten.html / news.html */
.cta-band.on-light{background:var(--c-offwhite-2);}
.cta-band.on-light h2{color:var(--c-black);}

/* ── LEGAL PAGES (impressum / datenschutz) ── */
.legal-section{background:var(--c-white);padding:88px 56px 112px;}
.legal-in{max-width:var(--container-article);margin:0 auto;}
.legal-block,.legal-major{padding-bottom:36px;margin-bottom:36px;border-bottom:1px solid rgba(var(--c-black-rgb),.08);}
.legal-major{padding-bottom:44px;margin-bottom:44px;}
.legal-block:last-child,.legal-major:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0;}
.legal-h{font-family:var(--font-serif);font-weight:400;font-size:24px;color:var(--c-black);margin-bottom:16px;}
.legal-h2{font-family:var(--font-serif);font-weight:400;font-size:30px;color:var(--c-black);margin-bottom:22px;}
.legal-sub{font-family:var(--font-body);font-weight:600;font-size:15px;color:var(--c-black);margin:26px 0 10px;}
.legal-sub:first-of-type{margin-top:0;}
.legal-p{font-family:var(--font-body);font-size:14.5px;line-height:1.85;color:rgba(var(--c-black-rgb),.62);}
.legal-p + .legal-p{margin-top:14px;}
.legal-p a{color:var(--c-black);border-bottom:1px solid rgba(var(--c-black-rgb),.25);transition:color 140ms,border-color 140ms;word-break:break-all;}
.legal-p a:hover{color:var(--c-gold);border-color:var(--c-gold);}
.legal-ul{margin:14px 0 0;padding-left:20px;}
.legal-ul li{font-family:var(--font-body);font-size:14.5px;line-height:1.8;color:rgba(var(--c-black-rgb),.62);margin-bottom:10px;}
.legal-ul li::marker{color:var(--c-gold);}

/* ── FOOTER ── */
.footer-main{background:var(--c-pure-black);padding:64px 56px 28px;}

/* ── RESPONSIVE LINE BREAK HELPERS ── */
.mobile-hyphen{display:none;}
br.mobile-break{display:none;}

/* ── RESPONSIVE ── */
@media (max-width:1100px){
  .nav-in{padding:0 32px;}
  .nav-links{gap:20px;}
  .warum-section,.svc-section,.timeline-section,.players-section,.network-section,.stories-section,.team-section,.testi-section,.transfers-section,.contact-section{padding:var(--section-pad-tab);}
  .value-grid{grid-template-columns:repeat(2,1fr);}
  .players-grid{grid-template-columns:repeat(3,1fr);}
  .team-grid{grid-template-columns:repeat(2,1fr);gap:28px;}
  .team-card{border-left:none;padding:0;}
  .svc-grid{grid-template-columns:repeat(2,1fr);}
  .stories-grid,.testi-grid{grid-template-columns:1fr;}
  .timeline-track{grid-template-columns:repeat(3,1fr);row-gap:48px;}
  .timeline-track::before{display:none;}
  .news-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:860px){
  .nav-links{display:none;}
  .lang-switch{display:none;}
  .nav-cta{display:none;}
  .nav-burger{display:flex;}
  .mobile-menu{display:flex;}
  .stats-bar{grid-template-columns:repeat(2,1fr);}
  .stat-item{border-right:none;border-bottom:1px solid rgba(var(--c-white-rgb),.07);}
  .stat-item:nth-child(2n){border-right:none;}
  .svc-list{grid-template-columns:1fr;}
  .players-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:640px){
  .sec-head-row{flex-direction:column;align-items:flex-start!important;gap:18px;}
  .sec-head-row .btn-outline{padding:11px 20px;font-size:10px;margin-bottom:0!important;}
  .nav-in{padding:0 20px;height:60px;}
  .nav-logo img{height:36px;}
  .stat-item{padding:24px 16px;}
  .stat-n{font-size:clamp(20px,calc(6.7vw - 5px),32px);}
  #top{margin-top:0;}
  .hero-content{padding:72px 20px 36px!important;}
  .hero-content > div > .rv{margin-bottom:16px!important;}
  .hero-content > div > h1{margin-bottom:20px!important;}
  .hero-content > div > .rv.d2{font-size:14.5px!important;line-height:1.6!important;margin-bottom:30px!important;}
  .hero-stats-row{display:flex!important;width:100%;flex-wrap:nowrap;justify-content:space-between;padding-right:0!important;margin-top:40px!important;padding-top:24px!important;}
  .hero-stats-row > div{padding-right:12px!important;margin-right:12px!important;margin-bottom:0;}
  .hero-stats-row > div:last-child{padding-right:0!important;margin-right:0!important;}
  .hero-stats-row > div > div{font-size:13px!important;letter-spacing:.03em!important;}
  .hero-scroll-hint{position:relative!important;z-index:2;left:auto!important;bottom:auto!important;transform:none!important;margin:28px auto 28px;}
  section{padding-left:20px!important;padding-right:20px!important;}
  .warum-section,.svc-section,.timeline-section,.players-section,.network-section,.stories-section,.team-section,.testi-section,.transfers-section,.contact-section,.social-section{padding:var(--section-pad-mob);}
  .page-header,.filter-in,.roster-section,.news-section,.article-section,.claim-band,.cta-band,.related-section,.legal-section{padding-left:20px!important;padding-right:20px!important;}
  .sec-title{font-size:30px;}
  .mobile-hyphen{display:inline;}
  br.mobile-break{display:block;}
  .value-grid{grid-template-columns:1fr!important;gap:2px;margin-top:28px!important;}
  .svc-grid{margin-top:28px;grid-template-columns:1fr!important;}
  .svc-card{padding:16px 20px;cursor:pointer;}
  .svc-card:hover{transform:none;box-shadow:none;}
  .svc-title{font-size:17px;margin-bottom:0;display:flex;align-items:center;justify-content:space-between;}
  .svc-title::after{content:'+';font-family:var(--font-body);font-size:20px;font-weight:300;color:var(--c-gold);margin-left:12px;line-height:1;}
  .svc-card.open .svc-title::after{content:'\2212';}
  .svc-card svg{display:none;}
  .svc-text{font-size:12.5px;max-height:0;overflow:hidden;transition:max-height .35s ease,margin-top .35s ease;margin-top:0;}
  .svc-card.open .svc-text{max-height:240px;margin-top:10px;}
  .timeline-track{grid-template-columns:1fr!important;gap:0;}
  .tl-stage{padding-left:44px;padding-top:0;padding-bottom:32px;border-left:1px solid rgba(var(--c-gold-rgb),.3);margin-left:14px;}
  .tl-dot{top:-2px;left:-15px;}
  .players-grid{grid-template-columns:repeat(2,1fr)!important;gap:14px!important;}
  .p-info{padding-top:12px;}
  .p-name{font-size:14px;}
  .p-value{font-size:12px;}
  .p-club{font-size:11px;margin-top:3px;}
  .p-meta{font-size:9.5px;margin-top:3px;}
  .p-tag{font-size:8.5px;padding:2px 7px;margin-top:6px;}
  .p-img-wrap.init-avatar span{font-size:26px;}
  .stories-grid{grid-template-columns:1fr!important;}
  .team-grid{grid-template-columns:1fr!important;gap:32px;}
  .team-card{border-left:none;padding:0;}
  .testi-grid{grid-template-columns:1fr!important;}
  .n-featured-row{grid-template-columns:1fr!important;}
  .n-small-row{grid-template-columns:1fr!important;}
  .n-card{padding:24px 20px!important;}
  .n-card h3{font-size:24px!important;}
  .news-grid{grid-template-columns:1fr!important;}
  .contact-section > div{grid-template-columns:1fr!important;gap:32px!important;}
  .contact-section > div > div:last-child{padding-top:0!important;}
  .form-row-2{grid-template-columns:1fr!important;gap:20px!important;}
  .contact-section.on-light > div{padding-top:0!important;}
  footer > div > div:first-child{grid-template-columns:1fr!important;gap:32px!important;}
  .modal-box{padding:32px 24px;}
  .social-row{gap:12px;}
}
