:root{
  --bg:#080a08;
  --panel:#101410;
  --panel-2:#161b16;
  --text:#f7f8f5;
  --muted:#b9c0b5;
  --green:#48bd39;
  --green-dark:#278521;
  --gold:#e3c21a;
  --gold-soft:#f4df68;
  --line:#283027;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}
a{color:inherit;text-decoration:none}
img{display:block;width:100%}
.container{width:min(calc(100% - 32px),var(--max));margin-inline:auto}
.header{position:sticky;top:0;z-index:50;background:rgba(8,10,8,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:11px;font-weight:900;letter-spacing:.08em}
.brand-logo{width:52px;height:52px;object-fit:contain;flex:0 0 auto}
.navlinks{display:flex;gap:22px;align-items:center;font-size:14px;font-weight:700;color:#d5d8d2}
.navlinks a{position:relative}.navlinks a:hover,.navlinks a.active{color:#fff}.navlinks a.active:after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:2px;background:var(--gold)}
.menu-btn{display:none;background:none;border:0;color:#fff;font-size:28px}
.hero{position:relative;min-height:720px;display:grid;align-items:end;overflow:hidden}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.35) 55%,rgba(0,0,0,.18) 100%),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.82) 100%)}
.hero img{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center 40%}
.hero-content{position:relative;z-index:2;padding:92px 0 72px;max-width:850px}
.kicker{text-transform:uppercase;letter-spacing:.18em;font-size:13px;font-weight:900;color:var(--gold-soft);display:flex;align-items:center;gap:10px}
.kicker::before{content:"";width:42px;height:3px;background:var(--green)}
h1{font-size:clamp(58px,9vw,116px);line-height:.86;margin:18px 0 24px;letter-spacing:-.055em}
.hero p{font-size:clamp(18px,2.1vw,25px);max-width:700px;color:#edf0ea;margin:0 0 30px}
.actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:999px;border:1px solid #fff;font-weight:800;font-size:14px;transition:.2s ease}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:var(--green);border-color:var(--green);color:#071006}.btn.primary:hover{background:#5bd34d}
.btn.gold{background:var(--gold);border-color:var(--gold);color:#171300}.btn.ghost{background:rgba(0,0,0,.28)}
.section{padding:88px 0}.section.alt{background:#f1f2ed;color:#101510}.section.dark2{background:#0d110d}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px}
.section-head h2{font-size:clamp(36px,5vw,64px);line-height:.95;letter-spacing:-.04em;margin:0}.section-head p{max-width:600px;margin:0;color:#c5cbc1}.alt .section-head p{color:#596057}
.grid{display:grid;gap:18px}.team-grid{grid-template-columns:repeat(3,1fr)}
.card{background:var(--panel);border:1px solid var(--line);border-radius:24px;overflow:hidden;transition:transform .2s ease,border-color .2s ease}.card:hover{transform:translateY(-3px);border-color:#3b4738}
.card-media{aspect-ratio:4/3;overflow:hidden;background:#222}.card-media img{height:100%;object-fit:cover;transition:transform .35s ease}.card:hover .card-media img{transform:scale(1.025)}
.card-body{padding:20px}.card .age{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:var(--gold-soft);font-weight:900}.card h3{font-size:25px;margin:5px 0 6px;line-height:1.1}.card p{margin:0;color:#aeb5aa;font-size:14px}.alt .card{background:#fff;border-color:#d7d9d2;color:#111}.alt .card p{color:#666}
.card-link{display:inline-flex;margin-top:15px;font-size:13px;font-weight:900;color:var(--green);align-items:center;gap:7px}.card-link:after{content:"→"}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}.split img{border-radius:28px;aspect-ratio:4/3;object-fit:cover}.copy h2{font-size:clamp(42px,5vw,72px);line-height:.95;letter-spacing:-.045em;margin:0 0 24px}.copy p{font-size:18px;color:#ccd0c8;margin:0 0 16px}.alt .copy p{color:#444}
.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px}.stat{border-top:1px solid #c9cec4;padding-top:14px}.stat strong{display:block;font-size:30px}.stat span{font-size:13px;color:#666}
.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-card .card-body{display:flex;justify-content:space-between;gap:18px;align-items:center}.gallery-card small{color:#8c9488}.arrow{width:42px;height:42px;border-radius:999px;background:var(--green);color:#071006;display:grid;place-items:center;font-size:20px;flex:0 0 auto}
.moment-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-template-rows:250px 250px;gap:14px}.moment{border-radius:22px;overflow:hidden;position:relative}.moment img{height:100%;object-fit:cover}.moment:first-child{grid-row:1/3}.moment:nth-child(4){grid-column:2/4}.moment:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.45))}
.photo-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.photo-strip img{height:260px;object-fit:cover;border-radius:18px}
.page-hero{padding:110px 0 54px;background:radial-gradient(circle at 80% 10%,rgba(72,189,57,.12),transparent 30%),linear-gradient(180deg,#151a15,#080a08)}.page-hero h1{font-size:clamp(50px,8vw,94px);margin:0 0 18px}.page-hero p{max-width:760px;font-size:20px;color:#c7cec3}
.filter{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 30px}.pill{padding:10px 16px;border-radius:999px;border:1px solid #333b32;background:#111511;color:#ddd;font-weight:700;font-size:13px;cursor:pointer}.pill.active{background:var(--gold);color:#181400;border-color:var(--gold)}
.season-block{padding:28px;border-radius:24px;border:1px solid var(--line);background:var(--panel);margin-bottom:18px}.season-block h3{font-size:28px;margin:0 0 16px}.season-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.season-list div{padding:14px 0;border-top:1px solid #293029;color:#ddd}
.contact-card{padding:36px;border-radius:28px;background:linear-gradient(145deg,#153015,#0d110d);border:1px solid #315131}.contact-card h2{font-size:48px;margin:0 0 16px}.contact-lines{display:grid;gap:12px;font-size:19px}.contact-lines span{color:#a9b4a4;display:block;font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}
.footer{border-top:1px solid #222822;padding:34px 0 46px;color:#aab1a6}.footer-inner{display:flex;justify-content:space-between;gap:30px;align-items:center}.footer strong{color:#fff}.footer a:hover{color:var(--gold-soft)}
.note{padding:16px 18px;border-radius:16px;background:#171b17;border:1px dashed #444d42;color:#adb5a8;font-size:14px}
@media(max-width:900px){.team-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.hero{min-height:640px}.navlinks{display:none;position:absolute;top:76px;left:0;right:0;background:#080a08;border-bottom:1px solid #222822;padding:22px 16px;flex-direction:column;align-items:flex-start}.navlinks.open{display:flex}.menu-btn{display:block}.moment-grid{grid-template-columns:1fr 1fr;grid-template-rows:300px 220px 220px}.moment:first-child{grid-column:1/3;grid-row:auto}.moment:nth-child(4){grid-column:auto}.photo-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.container{width:min(calc(100% - 22px),var(--max))}.brand span{font-size:14px}.brand-logo{width:46px;height:46px}.hero{min-height:590px}.hero-content{padding-bottom:44px}.team-grid,.gallery-grid,.season-list{grid-template-columns:1fr}.section{padding:64px 0}.section-head{display:block}.section-head p{margin-top:14px}.stat-row{grid-template-columns:1fr}.footer-inner{align-items:flex-start;flex-direction:column}.contact-card{padding:24px}.contact-card h2{font-size:38px}.moment-grid{display:grid;grid-template-columns:1fr;grid-template-rows:none}.moment,.moment:first-child,.moment:nth-child(4){grid-column:auto;grid-row:auto;height:250px}.photo-strip{grid-template-columns:1fr 1fr}.photo-strip img{height:190px}}

/* 2026 feedback update */
.hero-slideshow{isolation:isolate}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.1s ease;z-index:0}
.hero-slide.active{opacity:1}
.hero-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.hero-slideshow::after{z-index:1}
.hero-title{white-space:nowrap;font-size:clamp(52px,7.4vw,106px);line-height:.92;letter-spacing:-.055em}
.hero-dots{position:absolute;z-index:3;right:max(16px,calc((100vw - var(--max))/2));bottom:36px;display:flex;gap:8px}
.hero-dots span{width:28px;height:3px;border-radius:999px;background:rgba(255,255,255,.35);transition:.3s ease}
.hero-dots span.active{background:var(--gold);width:46px}
.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.info-card{padding:30px;border:1px solid var(--line);border-radius:24px;background:var(--panel)}.info-card h3{font-size:30px;margin:12px 0 8px}.info-card p{color:var(--muted);margin:0;max-width:540px}.info-icon{font-size:34px}.league-card{position:relative;overflow:hidden}.league-mini-logo{width:76px;height:76px;object-fit:contain;background:#fff;border-radius:18px;padding:8px}
.age-guide-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}.age-guide-copy h2{font-size:clamp(44px,5vw,70px);line-height:.95;margin:14px 0 20px;letter-spacing:-.04em}.age-guide-copy p{font-size:18px;color:#555;max-width:500px}.age-range-badge{display:inline-flex;gap:14px;align-items:center;margin-top:18px;font-size:28px;font-weight:900;color:#111;border:1px solid #cfd2ca;padding:12px 18px;border-radius:999px;background:#fff}.age-range-badge span{color:var(--green);font-size:34px}.age-chart-frame{background:#fff;border-radius:28px;padding:14px;border:1px solid #d7d9d2}.age-chart-frame img{border-radius:18px;max-height:740px;object-fit:contain;background:#e6bd11}
.social-section{background:linear-gradient(135deg,#0a0d0a,#121812)}.social-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.social-card{padding:34px;border-radius:26px;border:1px solid #2a3229;background:#101510}.social-card h2{font-size:clamp(34px,4vw,52px);line-height:1;margin:9px 0 14px;letter-spacing:-.035em}.social-card p{color:#bfc6bb;max-width:520px;margin:0 0 24px}.social-label{font-size:12px;font-weight:900;letter-spacing:.16em;color:var(--gold-soft)}.league-social{display:grid;grid-template-columns:120px 1fr;gap:24px;align-items:center}.league-logo{width:110px;height:110px;object-fit:contain;border-radius:20px;background:#fff;padding:9px}.light-social{background:#fff;color:#111;border-color:#d8dbd4}.light-social p{color:#555}.league-contact{display:grid;grid-template-columns:110px 1fr;gap:22px;align-items:center}
.season-cta{display:flex;justify-content:space-between;align-items:center;gap:26px;padding:28px;border:1px solid #d5d8d0;background:#fff;border-radius:24px}.season-cta h3{font-size:32px;margin:8px 0 4px}.season-cta p{margin:0;color:#666}.season-chip{display:inline-block;background:#dff4dc;color:#176c13;border-radius:999px;padding:6px 10px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.dark-stats .stat{border-color:#293029}.dark-stats .stat span{color:#a8b0a4}
.season-selector-section{padding-bottom:44px}.season-selector{display:grid;grid-template-columns:1fr 1fr;gap:16px}.season-option{text-align:left;padding:24px;border-radius:22px;border:1px solid var(--line);background:#101410;color:#fff;cursor:pointer;display:grid;gap:6px;transition:.2s ease}.season-option:hover{border-color:#4a5747;transform:translateY(-2px)}.season-option.active{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}.season-option span{color:var(--gold-soft);font-weight:900;text-transform:uppercase;letter-spacing:.14em;font-size:11px}.season-option strong{font-size:25px}.season-option small{color:#98a093}.season-panel{padding-top:40px}.muted-panel{background:#0d110d}.season-panel-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.season-panel-head h2{font-size:48px;margin:10px 0 4px}.season-panel-head p{margin:0;color:#aeb5aa}.archive-placeholder{border:1px dashed #495147;border-radius:26px;padding:42px;max-width:820px}.archive-placeholder h2{font-size:46px;margin:12px 0}.archive-placeholder p{color:#aeb5aa}.season-timeline{display:grid;gap:18px}.season-block.archived{opacity:.82}.season-block.current-season{border-color:#3d7d36}.season-block.future-season{border-style:dashed}
@media(max-width:900px){.age-guide-wrap,.social-grid,.info-grid{grid-template-columns:1fr}.league-social,.league-contact{grid-template-columns:90px 1fr}.season-cta,.season-panel-head{align-items:flex-start;flex-direction:column}.hero-title{white-space:normal}.hero-dots{right:22px}.season-selector{grid-template-columns:1fr}}
@media(max-width:620px){.hero-title{font-size:clamp(48px,18vw,76px);line-height:.9}.hero-dots{bottom:18px}.league-social,.league-contact{grid-template-columns:1fr}.league-logo{width:90px;height:90px}.age-chart-frame{padding:8px}.social-card,.info-card{padding:24px}.season-option strong{font-size:21px}.archive-placeholder{padding:26px}.archive-placeholder h2{font-size:36px}.footer-links{flex-direction:column;gap:7px}}

/* Feedback update: clean league crest + separate Instagram cards */
.league-mini-logo,.league-logo,.league-logo-clean{background:transparent!important;padding:0!important;border-radius:0!important;object-fit:contain}
.league-logo-clean{width:86px;height:96px;flex:0 0 auto}
.instagram-grid{align-items:stretch}
.instagram-card{display:flex;flex-direction:column;min-height:310px}
.instagram-card-top{display:flex;align-items:center;gap:18px;margin-bottom:12px}
.instagram-logo{width:48px;height:48px;object-fit:contain;flex:0 0 auto}
.instagram-card h2{margin:5px 0 0}
.instagram-card p{flex:1}
.instagram-card .btn{align-self:flex-start}
.league-social-card .instagram-card-top{gap:14px}
@media(max-width:620px){.instagram-card-top{align-items:flex-start;flex-wrap:wrap}.league-logo-clean{width:72px;height:82px}.instagram-logo{width:42px;height:42px}}

.club-social-logo{width:62px;height:62px;object-fit:contain;flex:0 0 auto}.instagram-card-top h2{margin:0;font-size:28px;line-height:1.05}
@media(max-width:620px){.club-social-logo{width:54px;height:54px}.instagram-card-top h2{font-size:24px}}

/* V4 polish: logo sizing, hero rotation, club moments, season galleries */
.hero-slideshow .hero-slide:nth-child(1) img{object-position:center 42%}
.hero-slideshow .hero-slide:nth-child(2) img{object-position:center 48%}
.hero-slideshow .hero-slide:nth-child(3) img{object-position:center 45%}
.hero-slideshow .hero-slide:nth-child(4) img{object-position:center 46%}
.hero-slideshow .hero-slide:nth-child(5) img{object-position:center 44%}

.moment-one img{object-position:center 48%}
.moment-two img{object-position:center 42%}
.moment-three img{object-position:center 52%}
.moment-four img{object-position:center 48%}

.instagram-card-top{display:grid;grid-template-columns:58px 58px minmax(0,1fr);align-items:center;gap:14px}
.instagram-logo,.club-social-logo,.league-logo-clean{width:58px!important;height:58px!important;object-fit:contain!important;flex:0 0 auto}
.instagram-card-top h2{min-width:0}

.gallery-age-group{margin:30px 0 38px}
.gallery-age-label{font-size:13px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-soft);margin-bottom:12px}
.gallery-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.gallery-team-link{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--line);border-radius:18px;background:var(--panel);transition:transform .2s ease,border-color .2s ease,background .2s ease}
.gallery-team-link:hover{transform:translateY(-2px);border-color:#4b5848;background:#141a14}
.gallery-team-link img{width:48px;height:48px;object-fit:contain}
.gallery-team-link span{font-size:18px;font-weight:800}
.gallery-team-link b{font-size:13px;color:var(--gold-soft);white-space:nowrap}
.tournament-block{margin-top:54px;padding-top:34px;border-top:1px solid var(--line)}
.tournament-block h2{font-size:36px;margin:8px 0 22px}

@media(max-width:900px){
  .gallery-link-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .instagram-card-top{grid-template-columns:48px 48px minmax(0,1fr);gap:10px}
  .instagram-logo,.club-social-logo,.league-logo-clean{width:48px!important;height:48px!important}
  .gallery-team-link{grid-template-columns:44px minmax(0,1fr);gap:12px}
  .gallery-team-link img{width:44px;height:44px}
  .gallery-team-link b{grid-column:2;white-space:normal}
  .hero-slideshow .hero-slide img{object-position:center center}
}

/* Gallery team identity logos: preserve original gallery layout, normalize crest size. */
.gallery-team-link > img {
  width: 52px;
  height: 52px;
  object-fit: contain;
  flex: 0 0 52px;
}


/* Gallery cards: team photo above the original team title/link treatment. */
.gallery-team-link{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  padding:0 0 16px;
  overflow:hidden;
}
.gallery-team-photo{
  width:100%!important;
  height:220px!important;
  object-fit:cover!important;
  object-position:center 42%;
  display:block;
  border-radius:17px 17px 0 0;
}
.gallery-team-meta{
  display:flex;
  align-items:center;
  gap:12px;
  padding:15px 18px 8px;
}
.gallery-team-logo{
  width:48px!important;
  height:48px!important;
  object-fit:contain!important;
  flex:0 0 48px;
}
.gallery-team-meta span{
  font-size:18px;
  font-weight:800;
  min-width:0;
}
.gallery-team-link>b{
  padding:0 18px;
  font-size:13px;
  color:var(--gold-soft);
  white-space:nowrap;
}
.gallery-team-link[href*="1yAz-Rk"] .gallery-team-photo,
.gallery-team-link[href*="1jd9DA9"] .gallery-team-photo{object-position:center 46%}
.gallery-team-link[href*="14L2uOL"] .gallery-team-photo,
.gallery-team-link[href*="1fg-a1h"] .gallery-team-photo{object-position:center 42%}
.gallery-team-link[href*="1iSHF-m"] .gallery-team-photo,
.gallery-team-link[href*="1i6j1CU"] .gallery-team-photo{object-position:center 40%}
.gallery-team-link[href*="1SHfkeE"] .gallery-team-photo,
.gallery-team-link[href*="1pPSiWa"] .gallery-team-photo{object-position:center 43%}
.gallery-team-link[href*="1TlpPAc"] .gallery-team-photo,
.gallery-team-link[href*="1ViiSsX"] .gallery-team-photo{object-position:center 44%}
.gallery-team-link[href*="1Tk0H-Z"] .gallery-team-photo,
.gallery-team-link[href*="1-UaMEq"] .gallery-team-photo{object-position:center 38%}
.gallery-team-link[href*="1HJupQY"] .gallery-team-photo{object-position:center 42%}
.gallery-team-link[href*="1sr2z4f"] .gallery-team-photo,
.gallery-team-link[href*="1PlNK9g"] .gallery-team-photo{object-position:center 40%}
.gallery-team-link[href*="10QQ0nA"] .gallery-team-photo,
.gallery-team-link[href*="1x4x9xk"] .gallery-team-photo{object-position:center 40%}
@media(max-width:620px){
  .gallery-team-photo{height:190px!important}
  .gallery-team-meta{padding:14px 15px 8px}
  .gallery-team-link>b{padding:0 15px}
  .gallery-team-logo{width:44px!important;height:44px!important;flex-basis:44px}
}


/* V7 feedback: language menu, natural gallery photos, tournament text, contacts, and club moments */
.language-control{display:flex;align-items:center;gap:8px;margin-left:4px;color:#d5d8d2;font-size:12px;font-weight:800;letter-spacing:.05em}
.language-control span{white-space:nowrap}
.language-select{appearance:auto;background:#111611;color:#fff;border:1px solid #3a4438;border-radius:10px;padding:7px 9px;font:inherit;font-size:12px;cursor:pointer}
.language-select:focus{outline:2px solid var(--gold);outline-offset:2px}

/* Let gallery photos keep their real aspect ratio instead of cropping players. */
.gallery-team-photo{height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;background:#0b0e0b}
.gallery-team-link{align-self:start}

/* Christmas tournament cards: balanced, readable title/link sizing. */
.tournament-block .gallery-team-link{padding:18px 20px;min-height:92px;justify-content:center;gap:7px;overflow:visible}
.tournament-block .gallery-team-link span{font-size:18px;line-height:1.2;font-weight:800}
.tournament-block .gallery-team-link b{padding:0;font-size:13px;line-height:1.25;white-space:normal}

/* Club moments use the photos' 4:3 shape so action isn't chopped away. */
.moment-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;gap:14px}
.moment,.moment:first-child,.moment:nth-child(4){grid-column:auto;grid-row:auto;aspect-ratio:4/3}
.moment img{width:100%;height:100%;object-fit:cover;object-position:center}
.moment-four img{object-position:center 45%}

/* Coach contact details. */
.coach-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}
.coach-contact{padding:20px;border:1px solid #315131;border-radius:18px;background:rgba(255,255,255,.035);display:flex;flex-direction:column;gap:5px}
.coach-contact strong{font-size:24px;line-height:1.15}
.contact-role,.contact-note{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:850;color:#a9b4a4}
.contact-note{color:var(--gold-soft);margin-top:3px}
.coach-contact a{font-size:20px;font-weight:750;margin-top:4px}
.coach-contact a:hover{color:var(--gold-soft)}

/* Matching club/league Instagram identity cards on Contact. */
.club-contact,.league-contact{display:grid;grid-template-columns:110px minmax(0,1fr);gap:22px;align-items:center}
.contact-social-logo{width:96px;height:96px;object-fit:contain;justify-self:center}

@media(max-width:900px){
  .navlinks.open .language-control{width:100%;justify-content:space-between;border-top:1px solid #252b24;padding-top:14px;margin-top:4px}
}
@media(max-width:620px){
  .coach-contact-grid{grid-template-columns:1fr}
  .club-contact,.league-contact{grid-template-columns:82px minmax(0,1fr)}
  .contact-social-logo{width:76px;height:76px}
  .tournament-block .gallery-team-link{min-height:82px;padding:16px 17px}
  .tournament-block .gallery-team-link span{font-size:17px}
  .moment-grid{grid-template-columns:1fr}
  .moment,.moment:first-child,.moment:nth-child(4){aspect-ratio:4/3;height:auto}
}


/* V8 mobile-first hero carousel and compact social cards */
.hero-slideshow{background:#070907}
.hero-slide{overflow:hidden}
.hero-slide::before{
  content:"";
  position:absolute;
  inset:-24px;
  background-image:var(--slide-bg);
  background-size:cover;
  background-position:center;
  filter:blur(22px) brightness(.48) saturate(.88);
  transform:scale(1.08);
  opacity:.72;
}
.hero-slide img{
  z-index:1;
  width:min(58vw,760px);
  left:auto;
  right:0;
  object-fit:contain;
  object-position:center;
}
.hero-controls{
  position:absolute;
  z-index:4;
  right:max(18px,calc((100vw - var(--max))/2));
  bottom:24px;
  display:flex;
  align-items:center;
  gap:6px;
  padding:5px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(5,8,5,.66);
  backdrop-filter:blur(10px);
}
.hero-arrow{
  width:34px;
  height:34px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.10);
  color:#fff;
  font-size:25px;
  line-height:1;
  cursor:pointer;
  display:grid;
  place-items:center;
  padding:0 0 2px;
}
.hero-arrow:hover,.hero-arrow:focus-visible{background:var(--gold);color:#0a0c09;outline:none}
.hero-counter{min-width:48px;text-align:center;font-size:11px;font-weight:800;color:#eef1eb;letter-spacing:.03em}

/* Prevent long Instagram labels/handles from widening the mobile page. */
.instagram-card,.light-social{min-width:0}
.instagram-card .btn,.light-social .btn{max-width:100%;white-space:normal;text-align:center;overflow-wrap:anywhere}
.light-social h2{max-width:100%;overflow-wrap:anywhere;word-break:normal}

@media(max-width:900px){
  .hero-slide::before{display:none}
  .hero-slide img{width:100%;left:0;right:0;object-fit:cover;object-position:center center}
}

@media(max-width:620px){
  .hero{min-height:660px;align-items:end}
  .hero::after{background:linear-gradient(180deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.22) 34%,rgba(0,0,0,.86) 100%)}
  .hero-content{padding:0 0 78px;max-width:none}
  .hero-title{font-size:clamp(44px,14vw,62px);line-height:.92;white-space:nowrap;letter-spacing:-.05em}
  .hero p{font-size:17px;line-height:1.35;margin-bottom:22px;max-width:360px}
  .hero-controls{right:14px;bottom:16px;padding:4px;gap:4px}
  .hero-arrow{width:32px;height:32px;font-size:23px}
  .hero-counter{min-width:43px;font-size:10px}

  .instagram-card{min-height:0;padding:22px}
  .instagram-card p{flex:none;margin-bottom:18px}
  .instagram-card-top{margin-bottom:10px}
  .instagram-card-top h2{font-size:clamp(21px,6.4vw,27px);overflow-wrap:anywhere}
  .instagram-card .btn{font-size:15px;padding:13px 18px}

  .club-contact,.league-contact{grid-template-columns:64px minmax(0,1fr);gap:14px;padding:22px}
  .contact-social-logo{width:58px;height:58px}
  .light-social h2{font-size:clamp(24px,7vw,31px);line-height:1.02;letter-spacing:-.035em;margin:6px 0 12px}
  .light-social p{font-size:16px;line-height:1.45;margin-bottom:18px}
  .light-social .btn{font-size:14px;padding:13px 16px}
}

@media(max-width:390px){
  .hero-title{font-size:43px}
  .club-contact,.league-contact{grid-template-columns:52px minmax(0,1fr);gap:12px;padding:18px}
  .contact-social-logo{width:48px;height:48px}
  .light-social h2{font-size:23px}
}


/* V9: responsive hero with paired desktop/mobile crops. */
.hero-slide picture{position:absolute;inset:0;display:block;z-index:1}
.hero-slide picture img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center center!important}
.hero-slide::before{display:none!important}
@media(min-width:901px){
  .hero{min-height:clamp(560px,47vw,720px)}
  .hero-slide picture img{object-fit:cover!important;object-position:center 50%!important}
  .hero-content{max-width:760px}
}
@media(max-width:900px){
  .hero-slide picture img{object-fit:cover!important;object-position:center center!important}
}

/* Contact page: both Instagram handles use exactly the same size and stay on one line. */
.light-social .contact-instagram-handle{
  font-size:clamp(22px,2.4vw,36px)!important;
  line-height:1!important;
  letter-spacing:-.045em!important;
  white-space:nowrap!important;
  overflow:visible!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  max-width:none!important;
}
@media(max-width:620px){
  .light-social .contact-instagram-handle{font-size:clamp(18px,4.7vw,21px)!important;letter-spacing:-.05em!important}
}
@media(max-width:390px){.light-social .contact-instagram-handle{font-size:18px!important}}


/* V10: matching team identity, joining callout, and mobile-friendly FAQ. */
.team-name-row{display:flex;align-items:center;gap:10px;margin:4px 0 2px}.team-name-row img{width:34px;height:34px;object-fit:contain;flex:0 0 34px}.team-name-row h3{margin:0!important}
.join-section{padding-top:10px}.join-card{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:34px 38px;border-radius:24px;background:linear-gradient(135deg,#13281c,#1d3b29);color:#fff}.join-card h2{margin:5px 0 10px}.join-card p{max-width:760px;margin:0;color:#dce7df;line-height:1.6}.join-card .btn{flex:0 0 auto}
.faq-list{display:grid;gap:10px;max-width:980px;margin:0 auto}.faq-list details{border:1px solid rgba(20,34,25,.14);border-radius:16px;background:#fff;overflow:hidden}.faq-list summary{cursor:pointer;list-style:none;padding:19px 54px 19px 20px;font-weight:800;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:'+';position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:25px;font-weight:500}.faq-list details[open] summary::after{content:'−'}.faq-list details p{margin:0;padding:0 20px 20px;line-height:1.6;color:#50584f}.faq-list details[open] summary{padding-bottom:10px}
@media(max-width:620px){.team-name-row{gap:8px}.team-name-row img{width:30px;height:30px;flex-basis:30px}.join-card{display:block;padding:26px 22px}.join-card .btn{margin-top:20px;width:100%;text-align:center}.faq-list summary{padding:17px 48px 17px 17px;font-size:15px}.faq-list details p{padding:0 17px 17px;font-size:14px}.faq-list summary::after{right:17px}}

/* V11 FAQ page */
.faq-page-section{padding-top:32px}
.faq-list{max-width:1040px}
.faq-list details{background:#fff;border-color:rgba(20,34,25,.16);box-shadow:0 7px 22px rgba(0,0,0,.06)}
.faq-list summary{color:#172018;background:#fff}
.faq-list summary::after{color:#172018}
.faq-list details p{color:#4b554d;background:#fff}
.faq-list details[open] summary{color:#0f5f32}
@media(max-width:620px){.faq-page-section{padding-top:18px}.faq-list{gap:9px}.faq-list summary{color:#172018}.faq-list summary::after{color:#172018}}
