:root{
  --black:#050505;
  --white:#f4f2ec;
  --paper:#e9e6df;
  --blue:#009bd9;
  --yellow:#ffdc00;
  --orange:#e82e08;
  --red:var(--orange);
  --line:rgba(244,242,236,.22);
  --pad:clamp(20px,4vw,72px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--white);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
.site-header{position:fixed;z-index:30;top:0;left:0;right:0;height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad);mix-blend-mode:difference;color:white}
.brand{display:flex;align-items:center}.brand img{display:block;width:clamp(118px,10vw,165px);height:auto}
.main-nav{display:flex;align-items:center;gap:30px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.nav-cta{border:1px solid currentColor;padding:12px 16px}
.menu-toggle{display:none;background:none;border:0;color:inherit;font-weight:900}
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden}.hero-media{position:absolute;inset:0;background:url('https://cms.trimax.hr/images/WhatsApp_Image_2026-06-05_at_17.07.03.jpg') center/cover no-repeat;transform:scale(1.03)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.12) 55%,rgba(0,0,0,.32)),linear-gradient(0deg,rgba(0,0,0,.78),transparent 55%)}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:25% 25%;opacity:.18}
.hero-content{position:relative;z-index:2;width:100%;padding:150px var(--pad) 58px}.eyebrow,.section-kicker{font-size:11px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.hero h1{font-size:clamp(72px,14vw,210px);line-height:.72;letter-spacing:-.075em;margin:22px 0 62px;max-width:1200px}.hero h1 span{display:block}.hero h1 span:last-child{color:var(--orange)}.hero-bottom{display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid var(--line);padding-top:18px}.hero-bottom p{margin:0;font-size:clamp(16px,1.5vw,24px);line-height:1.15;font-weight:700}.arrow-link{display:inline-flex;gap:18px;align-items:center;font-size:12px;font-weight:900;letter-spacing:.08em}.arrow-link span{font-size:24px}.hero-index{position:absolute;z-index:3;right:var(--pad);top:120px;display:flex;gap:6px;font-size:11px;font-weight:900}
.manifesto{background:var(--paper);color:var(--black);padding:120px var(--pad)}.manifesto-copy{display:grid;grid-template-columns:1.45fr .55fr;gap:7vw;align-items:end}.big-copy{font-size:clamp(60px,9vw,140px);line-height:.78;letter-spacing:-.07em;font-weight:900;margin:48px 0}.big-copy em{font-style:normal;color:var(--orange)}.manifesto-text{font-size:clamp(18px,2vw,28px);line-height:1.1;font-weight:700;margin:0 0 58px}.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #aaa}.stat{padding:28px 20px 0 0;border-right:1px solid #aaa;min-height:180px}.stat:last-child{border-right:0}.stat strong{display:block;font-size:clamp(54px,7vw,110px);line-height:.8;letter-spacing:-.06em}.stat span{display:block;margin-top:24px;max-width:180px;text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.08em}
.discipline-strip{display:grid;grid-template-columns:repeat(3,1fr);min-height:66vh}.discipline{position:relative;overflow:hidden;padding:28px;display:flex;flex-direction:column;justify-content:space-between;background-color:#111;background-size:cover;background-position:center}.discipline:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.34);transition:.3s}.discipline:hover:before{background:rgba(0,0,0,.15)}.discipline span,.discipline h2{position:relative;z-index:1}.discipline-swim span{color:var(--blue)}.discipline-bike span{color:var(--yellow)}.discipline-run span{color:var(--orange)}.discipline h2{font-size:clamp(48px,6vw,100px);line-height:.8;letter-spacing:-.06em;margin:0}.discipline span{font-size:11px;font-weight:900}.discipline-swim{border-top:8px solid var(--blue);background-image:url('https://cms.trimax.hr/images/Photo_06.06.2026._10_01_18_1.jpg')}.discipline-bike{border-top:8px solid var(--yellow);background-image:url('https://cms.trimax.hr/images/WhatsApp_Image_2026-06-05_at_17.07.03.jpg')}.discipline-run{border-top:8px solid var(--orange);background-image:url('https://cms.trimax.hr/images/4Q1A6164.jpg')}
.feature{display:grid;grid-template-columns:1.35fr .65fr;min-height:85vh;background:var(--orange)}.feature-media{min-height:600px;background-size:cover;background-position:center}.feature-media.filip{background-image:url('https://cms.trimax.hr/images/WhatsApp_Image_2026-06-03_at_16.35.551.jpg');background-position:center 35%}.feature-copy{padding:100px var(--pad) 70px 55px;display:flex;flex-direction:column}.feature-place{font-size:clamp(100px,13vw,190px);font-weight:900;line-height:.72;letter-spacing:-.09em;margin:90px 0 30px}.feature h2{font-size:clamp(50px,6vw,90px);line-height:.78;letter-spacing:-.065em;margin:0 0 30px}.feature-copy>p:last-of-type{font-size:14px;font-weight:800;line-height:1.4;text-transform:uppercase}.arrow-link.dark{margin-top:auto;color:#000;border-top:1px solid rgba(0,0,0,.35);padding-top:18px;justify-content:space-between}
.news{background:var(--paper);color:#000;padding:120px var(--pad)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:50px}.section-head h2{font-size:clamp(60px,8vw,130px);letter-spacing:-.07em;line-height:.75;margin:22px 0 0}.news-grid{display:grid;grid-template-columns:1.35fr .825fr .825fr;gap:18px}.news-card{border-top:2px solid #111;padding-top:16px}.news-card-media{aspect-ratio:4/3;background:#ccc center/cover no-repeat;margin-bottom:18px;filter:grayscale(12%)}.news-card:first-child .news-card-media{aspect-ratio:16/12}.news-card-date{font-size:10px;font-weight:900;letter-spacing:.13em}.news-card h3{font-size:clamp(22px,2.5vw,38px);line-height:.95;letter-spacing:-.04em;margin:18px 0 12px}.news-card p{font-size:14px;line-height:1.45;color:#4a4a4a}.news-card a{display:block}
.join{position:relative;min-height:88vh;display:flex;align-items:center;overflow:hidden}.join-bg{position:absolute;inset:0;background:url('https://cms.trimax.hr/images/4Q1A6164.jpg') center/cover no-repeat;filter:grayscale(100%);transform:scale(1.02)}.join:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.25))}.join-content{position:relative;z-index:2;padding:120px var(--pad);max-width:950px}.section-kicker.light{color:#fff}.join h2{font-size:clamp(80px,13vw,190px);line-height:.72;letter-spacing:-.08em;margin:36px 0;color:var(--orange)}.join p{font-size:clamp(18px,2vw,26px);font-weight:700;max-width:540px}.join-button{display:inline-flex;align-items:center;gap:50px;margin-top:35px;background:var(--white);color:#000;padding:20px 24px;font-size:12px;font-weight:900;letter-spacing:.06em}.join-button span{font-size:21px}
.site-footer{padding:80px var(--pad) 35px;background:#000}.footer-brand{display:flex;justify-content:center}.footer-brand img{display:block;width:min(780px,78vw);height:auto}.footer-meta{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:70px;padding-top:18px;font-size:10px;font-weight:800;letter-spacing:.1em}
@media(max-width:800px){.site-header{height:70px}.menu-toggle{display:block}.main-nav{position:fixed;inset:70px 0 auto 0;background:#050505;padding:28px var(--pad);display:none;flex-direction:column;align-items:flex-start;mix-blend-mode:normal}.main-nav.open{display:flex}.hero-content{padding-top:120px}.hero h1{font-size:21vw;margin-bottom:42px}.hero-bottom{align-items:flex-start;gap:30px;flex-direction:column}.hero-index{display:none}.manifesto{padding-top:80px}.manifesto-copy{grid-template-columns:1fr}.manifesto-text{margin:0 0 20px}.stats{grid-template-columns:1fr}.stat{border-right:0;border-bottom:1px solid #aaa;min-height:140px}.discipline-strip{grid-template-columns:1fr}.discipline{min-height:54vh}.feature{grid-template-columns:1fr}.feature-copy{padding:70px var(--pad)}.feature-place{margin-top:55px}.news{padding-top:80px}.section-head{align-items:flex-start;gap:30px;flex-direction:column}.news-grid{grid-template-columns:1fr}.footer-meta{gap:16px;flex-direction:column}}
/* v0.2 — visual identity taken directly from the official Trimax logo */
.hero:after{content:"";position:absolute;z-index:2;left:0;right:0;bottom:0;height:6px;background:linear-gradient(90deg,var(--blue) 0 33.333%,var(--yellow) 33.333% 66.666%,var(--orange) 66.666%)}
.nav-cta:hover,.join-button:hover{background:var(--yellow);color:#000}
::selection{background:var(--yellow);color:#000}
/* v0.3 — logo-driven hero system */
.brand{background:rgba(0,0,0,.72);padding:10px 14px;border-radius:2px;mix-blend-mode:normal}
.brand img{width:clamp(145px,12vw,205px)}
.hero-mark{position:absolute;z-index:2;right:-3vw;top:17vh;width:min(40vw,620px);aspect-ratio:1;opacity:.92;pointer-events:none}
.hero-mark i{position:absolute;display:block;transform:rotate(-18deg);border-radius:999px;box-shadow:0 0 0 1px rgba(255,255,255,.04)}
.hero-mark .m1{width:56%;height:14%;right:0;top:4%;background:var(--blue)}
.hero-mark .m2{width:75%;height:14%;right:5%;top:26%;background:var(--yellow)}
.hero-mark .m3{width:94%;height:14%;right:10%;top:48%;background:var(--orange)}
.hero-wordmark{display:flex;align-items:center;gap:12px;margin-bottom:26px;font-size:11px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}
.hero-wordmark:before{content:"";width:54px;height:5px;background:linear-gradient(90deg,var(--blue) 0 33%,var(--yellow) 33% 66%,var(--orange) 66%)}
.hero h1 span:last-child{color:var(--white)}
.hero h1:after{content:"";display:block;width:clamp(150px,23vw,360px);height:10px;margin-top:30px;background:linear-gradient(90deg,var(--blue) 0 33.333%,var(--yellow) 33.333% 66.666%,var(--orange) 66.666%)}
.discipline h2{transition:transform .25s ease}.discipline:hover h2{transform:translateY(-8px)}
.identity-rule{height:10px;background:linear-gradient(90deg,var(--blue) 0 33.333%,var(--yellow) 33.333% 66.666%,var(--orange) 66.666%)}
@media(max-width:800px){.brand{padding:7px 9px}.brand img{width:132px}.hero-mark{width:72vw;right:-28vw;top:17vh;opacity:.72}.hero-wordmark{margin-bottom:18px}.hero h1:after{height:7px}}

/* v0.4 — premium sports-team polish + mobile */
.site-header{transition:background .25s ease,backdrop-filter .25s ease,height .25s ease}
.site-header.scrolled{mix-blend-mode:normal;background:rgba(5,5,5,.88);backdrop-filter:blur(14px);height:74px;border-bottom:1px solid rgba(255,255,255,.08)}
.main-nav a:not(.nav-cta){position:relative;padding:10px 0}.main-nav a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:3px;height:2px;background:var(--yellow);transition:right .2s ease}.main-nav a:not(.nav-cta):hover:after{right:0}
.hero-media{animation:heroZoom 14s ease-out both}@keyframes heroZoom{from{transform:scale(1.09)}to{transform:scale(1.03)}}
.hero-content{max-width:1600px}.hero h1{max-width:1350px;text-wrap:balance}.hero-bottom{max-width:1450px}.hero-bottom p{max-width:520px}
.hero-side-label{position:absolute;z-index:3;right:var(--pad);bottom:62px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:9px;font-weight:900;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.manifesto{position:relative}.manifesto:before{content:"PERFORMANCE / COMMUNITY / PROGRESS";position:absolute;right:var(--pad);top:42px;font-size:9px;font-weight:900;letter-spacing:.22em;color:#777}
.discipline{isolation:isolate}.discipline:after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(transparent,rgba(0,0,0,.72));z-index:0}.discipline h2{z-index:2}.discipline span{z-index:2}
.feature-copy{position:relative}.feature-copy:after{content:"PODIUM";position:absolute;right:24px;top:24px;font-size:10px;font-weight:900;letter-spacing:.2em;opacity:.65}
.news-card{transition:transform .2s ease}.news-card:hover{transform:translateY(-5px)}.news-card-media{overflow:hidden;transition:filter .25s ease,transform .25s ease}.news-card:hover .news-card-media{filter:grayscale(0);transform:scale(.99)}
.join-content{width:min(100%,1100px)}
@media(max-width:800px){
 body{font-size:16px}.site-header{padding:0 18px}.site-header.scrolled{height:64px}.main-nav{inset:64px 0 0 0;height:calc(100svh - 64px);padding:45px 24px;gap:10px}.main-nav a{font-size:clamp(28px,9vw,48px);letter-spacing:-.04em;line-height:1.05;text-transform:uppercase}.main-nav .nav-cta{margin-top:22px;font-size:16px;letter-spacing:.06em}
 .hero{min-height:92svh}.hero-media{background-position:58% center}.hero-content{padding:118px 20px 34px}.hero-wordmark{font-size:9px}.eyebrow{font-size:9px}.hero h1{font-size:20vw;line-height:.78;letter-spacing:-.07em;margin:18px 0 38px}.hero h1:after{margin-top:20px;width:58vw}.hero-bottom p{font-size:16px}.hero-bottom .arrow-link{font-size:11px}.hero-side-label{display:none}
 .manifesto{padding:76px 20px}.manifesto:before{display:none}.big-copy{font-size:18vw;line-height:.8;margin:35px 0}.manifesto-text{font-size:20px;line-height:1.18}.stat{padding:24px 0;min-height:0}.stat strong{font-size:21vw}.stat span{margin-top:12px}
 .discipline-strip{min-height:auto}.discipline{min-height:43svh;padding:20px}.discipline h2{font-size:19vw}.discipline-swim{background-position:center}.discipline-bike{background-position:58% center}.discipline-run{background-position:center}
 .feature-media{min-height:64svh}.feature-copy{padding:58px 20px 45px;min-height:58svh}.feature-place{font-size:32vw;margin:45px 0 22px}.feature h2{font-size:16vw}.feature-copy:after{right:20px;top:58px}
 .news{padding:75px 20px}.section-head h2{font-size:20vw}.news-grid{gap:45px}.news-card h3{font-size:32px}.news-card p{font-size:15px}.news-card-media,.news-card:first-child .news-card-media{aspect-ratio:16/10}
 .join{min-height:78svh}.join-content{padding:90px 20px}.join h2{font-size:22vw}.join p{font-size:19px}.join-button{width:100%;justify-content:space-between;gap:20px}
 .site-footer{padding:60px 20px 28px}.footer-brand img{width:88vw}.footer-meta{margin-top:45px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-media{animation:none}*{transition:none!important}}


/* v0.6 — Athletes / roster */
.desktop-nav a.active { opacity: 1; }
.roster-hero {
  min-height: 82vh; padding: 11rem 5vw 5rem; display:flex; flex-direction:column;
  justify-content:flex-end; position:relative; overflow:hidden; background:#070707;
}
.roster-hero:after {
  content:"TEAM"; position:absolute; right:-.03em; bottom:-.22em; font-size:clamp(9rem,28vw,31rem);
  font-weight:900; line-height:.8; letter-spacing:-.09em; color:rgba(255,255,255,.035); pointer-events:none;
}
.roster-hero h1 { margin:.2rem 0 1.5rem; font-size:clamp(5.5rem,15vw,14rem); line-height:.72; letter-spacing:-.075em; position:relative; z-index:1; }
.roster-hero h1 span { -webkit-text-stroke:1px rgba(255,255,255,.65); color:transparent; }
.roster-hero p { max-width:560px; font-size:clamp(1.1rem,2vw,1.55rem); color:#bdbdbd; position:relative; z-index:1; }
.roster-hero .identity-strokes { width:min(520px,80vw); margin-top:2.5rem; }
.roster { padding:8rem 5vw; background:#f2f2ef; color:#080808; }
.roster-head { display:grid; grid-template-columns:1.2fr .8fr; gap:4rem; align-items:end; margin:1.5rem 0 4rem; }
.roster-head h2 { margin:0; font-size:clamp(4rem,10vw,9rem); line-height:.78; letter-spacing:-.07em; }
.roster-head p { max-width:520px; font-size:1.05rem; line-height:1.6; }
.athlete-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:#b8b8b3; border:1px solid #b8b8b3; }
.athlete-card { min-height:620px; position:relative; overflow:hidden; background:#111; color:#fff; }
.athlete-feature { grid-column:span 2; min-height:760px; }
.athlete-photo { position:absolute; inset:0; }
.athlete-photo--placeholder { display:grid; place-items:center; background:linear-gradient(145deg,#202020,#080808); }
.athlete-photo--placeholder:before { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.82),transparent 65%); }
.athlete-photo--placeholder span { font-size:clamp(11rem,30vw,32rem); font-weight:900; letter-spacing:-.12em; color:rgba(255,255,255,.045); transform:translateX(-.05em); }
.athlete-no { position:absolute; top:1.5rem; right:1.5rem; font-size:.85rem; font-weight:800; }
.athlete-copy { position:absolute; left:2rem; bottom:2rem; z-index:2; }
.athlete-copy small { font-weight:800; letter-spacing:.16em; }
.athlete-copy h3 { margin:.5rem 0; font-size:clamp(3rem,7vw,6.5rem); line-height:.78; letter-spacing:-.06em; }
.athlete-copy p { margin:1rem 0 0; color:#c8c8c8; }
.roster-note { margin:2rem 0 0; max-width:760px; font-size:.9rem; opacity:.7; }
.roster-system { display:grid; grid-template-columns:1fr 1fr; gap:6rem; padding:8rem 5vw; background:#080808; color:#fff; align-items:end; }
.roster-system h2 { margin:1rem 0 0; font-size:clamp(4rem,9vw,8rem); line-height:.78; letter-spacing:-.07em; }
.roster-system h2 em { color:#ffdc00; font-style:normal; }
.roster-system > p { max-width:560px; font-size:1.15rem; line-height:1.7; color:#bbb; }
@media (max-width: 800px) {
  .roster-hero { min-height:72vh; padding-top:8rem; }
  .roster-head,.roster-system { grid-template-columns:1fr; gap:2rem; }
  .athlete-grid { grid-template-columns:1fr; }
  .athlete-feature { grid-column:auto; min-height:600px; }
  .athlete-card { min-height:540px; }
  .roster,.roster-system { padding:5rem 1.25rem; }
}


/* v0.6.1 — athletes hotfix */
.roster-hero{
  min-height:78svh;
  padding:clamp(8rem,11vh,10rem) var(--pad) clamp(3rem,7vh,5rem);
}
.roster-hero h1{
  font-size:clamp(4.5rem,11vw,10.5rem);
  line-height:.78;
  margin:.5rem 0 1.8rem;
  max-width:1050px;
}
.roster-hero p{
  font-size:clamp(1rem,1.45vw,1.35rem);
  line-height:1.35;
  max-width:580px;
}
.roster-hero:after{
  font-size:clamp(8rem,23vw,25rem);
  right:-.015em;
  bottom:-.18em;
}
.roster-identity-rule{
  width:min(520px,70vw);
  margin-top:2rem;
  flex:0 0 auto;
}
.athletes-page .main-nav a.active{
  opacity:1;
  color:var(--yellow);
}
@media (max-width:1000px){
  .roster-hero h1{font-size:clamp(4.5rem,14vw,8rem)}
}
@media (max-width:800px){
  .roster-hero{
    min-height:70svh;
    padding:7.5rem 20px 3.5rem;
  }
  .roster-hero h1{
    font-size:clamp(4.2rem,20vw,7rem);
    line-height:.78;
  }
  .roster-hero p{font-size:1rem}
  .roster-hero:after{
    font-size:42vw;
    bottom:-.08em;
  }
  .roster-identity-rule{width:75vw;height:7px}
}

/* v0.7 — system live status */
.news { position:relative; }
.news-status {
  display:inline-flex; align-items:center; gap:.5rem;
  margin:0 var(--pad) 1.25rem;
  padding:.48rem .72rem;
  border:1px solid rgba(0,0,0,.28);
  font-size:.68rem; font-weight:900; letter-spacing:.12em;
  text-transform:uppercase;
}
.news-status:before {
  content:""; width:.5rem; height:.5rem; border-radius:50%;
  background:#777;
}
.news-status[data-state="live"]:before { background:#16a34a; }
.news-status[data-state="fallback"]:before { background:#e82e08; }
@media (max-width:800px){ .news-status{margin-left:20px;margin-right:20px;} }

/* v0.9 — frontend article */
.article-shell{min-height:75vh;padding:10rem var(--pad) 7rem;background:#f2f2ef;color:#080808}
.article-back{display:inline-block;margin-bottom:4rem;color:#080808;text-decoration:none;font-size:.75rem;font-weight:900;letter-spacing:.12em}
.article-loading,.article-error{font-size:clamp(2rem,5vw,5rem);font-weight:900;letter-spacing:-.05em}
.article-kicker{font-size:.75rem;font-weight:900;letter-spacing:.14em;margin-bottom:1rem}
.article-content h1{max-width:1250px;margin:0 0 3rem;font-size:clamp(4rem,10vw,10rem);line-height:.82;letter-spacing:-.07em}
.article-hero{width:100%;aspect-ratio:16/8;background-size:cover;background-position:center;margin:0 0 4rem}
.article-body{max-width:900px;margin:0 auto;font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.75}
.article-body img{display:block;max-width:100%;height:auto;margin:2.5rem auto}
.article-body p{margin:0 0 1.4rem}
.article-body h2,.article-body h3{line-height:1;letter-spacing:-.035em;margin:2.5rem 0 1rem}
.article-body a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
@media(max-width:800px){
 .article-shell{padding:8rem 20px 5rem}
 .article-back{margin-bottom:2.5rem}
 .article-content h1{font-size:clamp(3.5rem,16vw,6rem)}
 .article-hero{aspect-ratio:4/3;margin-bottom:2.5rem}
}

/* v1.0 — TRIMAX editorial article system */
.article-page{background:#f1f1ee}
.article-page .site-header{background:rgba(7,7,7,.96)}
.article-shell{padding-top:clamp(9rem,13vw,12rem);padding-bottom:0}
.article-back{border-bottom:1px solid #111;padding-bottom:.3rem}
.article-meta-row{display:flex;justify-content:space-between;align-items:center;gap:2rem;border-top:1px solid rgba(0,0,0,.25);padding-top:1rem}
.article-date{font-size:.75rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.article-content h1{margin-top:2rem;margin-bottom:2.5rem;max-width:1180px;text-wrap:balance}
.article-lead{max-width:900px;margin:0 0 4rem;font-size:clamp(1.35rem,2.25vw,2.15rem);line-height:1.25;font-weight:650;letter-spacing:-.025em}
.article-hero{aspect-ratio:16/7;max-height:760px;background-color:#111}
.article-layout{display:grid;grid-template-columns:minmax(150px,1fr) minmax(0,900px) minmax(0,1fr);gap:3rem;margin-top:5rem}
.article-aside{grid-column:1;display:flex;flex-direction:column;align-items:flex-start;font-size:.72rem;font-weight:950;letter-spacing:.12em;line-height:1.8}
.article-aside span:nth-child(1){color:#009bd9}
.article-aside span:nth-child(2){color:#b49a00}
.article-aside span:nth-child(3){color:#e82e08}
.article-share{margin-top:3rem;display:flex;flex-direction:column;gap:.5rem}
.article-share small{opacity:.55}
.article-share button{appearance:none;border:0;border-bottom:1px solid #111;background:none;padding:.25rem 0;font:inherit;cursor:pointer;color:inherit}
.article-body{grid-column:2;margin:0;max-width:none;font-size:clamp(1.05rem,1.35vw,1.22rem);line-height:1.82}
.article-body > *:first-child{margin-top:0}
.article-body .article-first-paragraph{font-size:1.08em}
.article-body h1{font-size:clamp(2.5rem,5vw,4.5rem);margin:3.5rem 0 1.25rem}
.article-body h2{font-size:clamp(2.3rem,4.5vw,4rem);margin:4rem 0 1.25rem}
.article-body h3{font-size:clamp(1.7rem,3vw,2.6rem);margin:3rem 0 1rem}
.article-body ul,.article-body ol{padding-left:1.35em;margin:1.5rem 0 2rem}
.article-body li{margin:.5rem 0}
.article-body blockquote{margin:3.5rem 0;padding:1.5rem 0 1.5rem 2rem;border-left:7px solid #e82e08;font-size:clamp(1.5rem,2.7vw,2.3rem);font-weight:750;line-height:1.2;letter-spacing:-.025em}
.article-body figure{margin:3rem 0}
.article-body figcaption{margin-top:.6rem;font-size:.75rem;opacity:.62}
.article-body img{width:auto;max-width:100%;border-radius:0}
.article-body table{width:100%;border-collapse:collapse;margin:2.5rem 0;font-size:.9em}
.article-body th,.article-body td{padding:.85rem;border-bottom:1px solid rgba(0,0,0,.2);text-align:left}
.article-body iframe,.article-body video{max-width:100%}
.article-end-rule{display:grid;grid-template-columns:1fr 1fr 1fr;height:10px;margin:7rem calc(-1 * var(--pad)) 0}
.article-end-rule i:nth-child(1){background:#009bd9}.article-end-rule i:nth-child(2){background:#ffdc00}.article-end-rule i:nth-child(3){background:#e82e08}
.article-more{padding:6rem 0 7rem;display:flex;justify-content:space-between;align-items:flex-end;gap:3rem}
.article-more>a{color:#080808;text-decoration:none;font-size:clamp(3.5rem,8vw,8rem);font-weight:950;line-height:.76;letter-spacing:-.07em;text-align:right}
.article-more>a b{font-size:.45em;vertical-align:top}
@media(max-width:900px){
 .article-layout{grid-template-columns:1fr;margin-top:3rem}
 .article-aside{grid-column:1;flex-direction:row;gap:.7rem;align-items:center}
 .article-share{margin:0 0 0 auto}
 .article-share small{display:none}
 .article-body{grid-column:1}
 .article-hero{aspect-ratio:4/3}
 .article-end-rule{margin-top:4.5rem}
 .article-more{padding:4rem 0 5rem;display:block}
 .article-more>a{display:block;margin-top:2rem;text-align:left}
}
@media(max-width:600px){
 .article-meta-row{align-items:flex-start;flex-direction:column;gap:.6rem}
 .article-content h1{margin-top:1.5rem}
 .article-lead{margin-bottom:2.5rem}
 .article-layout{gap:2rem}
 .article-aside{flex-wrap:wrap}
 .article-share{width:100%;margin:.8rem 0 0}
 .article-body blockquote{padding-left:1.2rem;border-left-width:5px}
}

/* v1.0.1 — source / OS Gallery cleanup */
.article-body .trimax-native-gallery{
 display:grid!important;
 grid-template-columns:repeat(3,minmax(0,1fr))!important;
 gap:10px!important;
 width:100%!important;
 margin:3rem 0!important;
 height:auto!important;
}
.article-body .trimax-native-gallery img{
 display:block!important;width:100%!important;height:220px!important;
 object-fit:cover!important;margin:0!important;
}
.article-body .trimax-native-gallery a{display:block!important}
.article-body [class*="load-more"],.article-body [id*="load-more"]{display:none!important}
@media(max-width:700px){
 .article-body .trimax-native-gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .article-body .trimax-native-gallery img{height:160px!important}
}

.article-body .trimax-extracted-gallery{position:relative;padding-top:3rem}
.article-body .trimax-extracted-gallery:before{
 content:"GALERIJA";position:absolute;left:0;top:0;
 font-size:.72rem;font-weight:950;letter-spacing:.14em
}
.article-body .trimax-extracted-gallery a{overflow:hidden;background:#111}
.article-body .trimax-extracted-gallery img{transition:transform .35s ease}
.article-body .trimax-extracted-gallery a:hover img{transform:scale(1.025)}


/* TRIMAX Modern Gallery v1.1 */
.tmx-gallery-open{overflow:hidden}
.tmx-lightbox{
 position:fixed;inset:0;z-index:99999;background:rgba(5,5,5,.97);
 color:#fff;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;
 opacity:0;transition:opacity .18s ease;
}
.tmx-lightbox[hidden]{display:none}
.tmx-lightbox.is-open{opacity:1}
.tmx-lb-topbar{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;min-height:64px}
.tmx-lb-counter{font-size:.85rem;font-weight:900;letter-spacing:.12em}
.tmx-lb-actions{display:flex;gap:6px}
.tmx-lb-btn,.tmx-lb-nav,.tmx-lb-thumb{
 appearance:none;border:0;background:none;color:#fff;cursor:pointer
}
.tmx-lb-btn{width:44px;height:44px;font-size:1.7rem;border-radius:50%}
.tmx-lb-btn:hover,.tmx-lb-nav:hover{background:rgba(255,255,255,.1)}
.tmx-lb-stage{position:relative;display:grid;grid-template-columns:70px minmax(0,1fr) 70px;min-height:0;align-items:center}
.tmx-lb-media{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden;touch-action:none}
.tmx-lb-image{max-width:100%;max-height:100%;object-fit:contain;user-select:none;opacity:0;transition:opacity .15s ease,transform .18s ease;transform-origin:center center}
.tmx-lb-image.is-ready{opacity:1}
.tmx-lb-image.is-zoomed{cursor:grab}
.tmx-lb-image.is-zoomed:active{cursor:grabbing}
.tmx-lb-nav{width:54px;height:54px;border-radius:50%;font-size:3rem;line-height:1;justify-self:center;background:rgba(255,255,255,.06)}
.tmx-lb-caption{text-align:center;padding:10px 20px 6px;font-size:.8rem;opacity:.72;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tmx-lb-thumbs{display:flex;gap:8px;overflow-x:auto;padding:10px 22px 18px;scrollbar-width:none;justify-content:flex-start}
.tmx-lb-thumbs::-webkit-scrollbar{display:none}
.tmx-lb-thumb{flex:0 0 76px;height:56px;padding:0;opacity:.48;border:2px solid transparent;overflow:hidden}
.tmx-lb-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.tmx-lb-thumb.is-active{opacity:1;border-color:#fff}
.tmx-lb-spinner{position:absolute;width:34px;height:34px;border-radius:50%;border:3px solid rgba(255,255,255,.18);border-top-color:#fff;animation:tmxspin .7s linear infinite}
@keyframes tmxspin{to{transform:rotate(360deg)}}

.article-body .trimax-native-gallery a{position:relative;cursor:zoom-in}
.article-body .trimax-native-gallery a:after{
 content:"+";position:absolute;right:10px;bottom:10px;width:34px;height:34px;border-radius:50%;
 display:grid;place-items:center;background:rgba(0,0,0,.72);color:#fff;font-size:1.2rem;
 opacity:0;transform:scale(.9);transition:.18s ease
}
.article-body .trimax-native-gallery a:hover:after{opacity:1;transform:scale(1)}

@media(max-width:760px){
 .tmx-lb-stage{grid-template-columns:44px minmax(0,1fr) 44px}
 .tmx-lb-nav{width:38px;height:38px;font-size:2.2rem}
 .tmx-lb-topbar{padding:10px 12px}
 .tmx-lb-thumbs{padding:8px 10px 12px}
 .tmx-lb-thumb{flex-basis:62px;height:46px}
 .tmx-lb-caption{font-size:.72rem}
}


/* TRIMAX v1.2 — dedicated news index */
.news-page{background:#f1f1ee;color:#080808}
.news-index-hero{padding:clamp(10rem,14vw,13rem) var(--pad) 5rem;background:#080808;color:#fff}
.news-index-eyebrow{font-size:.72rem;font-weight:950;letter-spacing:.16em;margin-bottom:2rem}
.news-index-hero h1{margin:0;font-size:clamp(5rem,13vw,13rem);line-height:.74;letter-spacing:-.075em;font-weight:950}
.news-index-hero h1 span{color:#e82e08}
.news-index-hero-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:3rem;margin-top:4rem;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.22)}
.news-index-hero-foot p{margin:0;max-width:620px;font-size:clamp(1.1rem,1.6vw,1.35rem);line-height:1.45}
.news-index-status{font-size:.68rem;font-weight:900;letter-spacing:.12em;white-space:nowrap}

.news-index-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;padding:2rem var(--pad);border-bottom:1px solid rgba(0,0,0,.2);position:sticky;top:70px;z-index:20;background:rgba(241,241,238,.96);backdrop-filter:blur(14px)}
.news-search{display:flex;flex-direction:column;gap:.55rem;min-width:min(440px,55vw)}
.news-search span{font-size:.68rem;font-weight:950;letter-spacing:.13em}
.news-search input{width:100%;border:0;border-bottom:2px solid #080808;background:transparent;padding:.4rem 0 .65rem;font:inherit;font-size:1.1rem;outline:none}
.news-year-filter{display:flex;gap:.45rem;overflow-x:auto}
.news-year-filter button{appearance:none;border:1px solid #111;background:transparent;padding:.7rem .9rem;font-size:.7rem;font-weight:950;letter-spacing:.1em;cursor:pointer}
.news-year-filter button.is-active{background:#080808;color:#fff}

.news-index-content{padding:5rem var(--pad) 8rem}
.news-featured-card{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(350px,.65fr);min-height:590px;background:#0a0a0a;color:#fff;margin-bottom:7rem}
.news-featured-media{display:block;background:#151515 center/cover no-repeat;min-height:520px}
.news-featured-copy{padding:clamp(2rem,4vw,4.5rem);display:flex;flex-direction:column;justify-content:center}
.news-featured-meta{display:flex;justify-content:space-between;gap:1rem;font-size:.68rem;font-weight:900;letter-spacing:.12em;margin-bottom:2rem}
.news-featured-meta span{color:#ffdc00}
.news-featured-copy h2{font-size:clamp(3rem,5.2vw,6.5rem);line-height:.84;letter-spacing:-.06em;margin:0}
.news-featured-copy h2 a{color:#fff;text-decoration:none}
.news-featured-copy p{font-size:1.05rem;line-height:1.6;opacity:.75;margin:2rem 0 0}
.news-read-more{color:#fff;text-decoration:none;margin-top:2.5rem;font-size:.75rem;font-weight:950;letter-spacing:.12em}
.news-read-more b{font-size:1.4em}

.news-section-head{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #111;padding-top:1rem;margin-bottom:2rem;font-size:.7rem;font-weight:950;letter-spacing:.13em}
.news-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(0,0,0,.18)}
.news-index-card{background:#f1f1ee;min-width:0}
.news-index-card-media{position:relative;display:block;aspect-ratio:4/3;background:#151515 center/cover no-repeat;overflow:hidden}
.news-index-card-media:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.4),transparent 55%);opacity:.45;transition:.2s}
.news-index-card-media:hover:after{opacity:.2}
.news-index-card-media span{position:absolute;z-index:2;left:14px;bottom:10px;color:#fff;font-size:.7rem;font-weight:950;letter-spacing:.12em}
.news-index-card-copy{position:relative;padding:1.5rem 1.5rem 4.5rem;min-height:295px}
.news-index-card-copy time{font-size:.68rem;font-weight:850;letter-spacing:.1em;opacity:.58}
.news-index-card-copy h3{margin:.8rem 0 1rem;font-size:clamp(1.65rem,2.7vw,2.8rem);line-height:.94;letter-spacing:-.045em}
.news-index-card-copy h3 a{color:#080808;text-decoration:none}
.news-index-card-copy p{margin:0;line-height:1.55;opacity:.67;font-size:.92rem}
.news-index-card-arrow{position:absolute;right:1.5rem;bottom:1.25rem;color:#080808;text-decoration:none;font-size:2rem}
.news-empty{padding:7rem 0;text-align:center}
.news-empty strong{font-size:clamp(2.5rem,6vw,6rem);letter-spacing:-.05em}
.news-empty p{opacity:.6}
.news-index-stripe{display:grid;grid-template-columns:1fr 1fr 1fr;height:12px}
.news-index-stripe i:nth-child(1){background:#009bd9}.news-index-stripe i:nth-child(2){background:#ffdc00}.news-index-stripe i:nth-child(3){background:#e82e08}

@media(max-width:1000px){
 .news-featured-card{grid-template-columns:1fr}
 .news-featured-media{min-height:480px}
 .news-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
 .news-index-hero{padding-top:9rem}
 .news-index-hero h1{font-size:clamp(4.2rem,20vw,7rem)}
 .news-index-hero-foot{display:block;margin-top:3rem}
 .news-index-status{margin-top:1.5rem}
 .news-index-toolbar{top:60px;display:block;padding:1.2rem 20px}
 .news-search{min-width:0;width:100%}
 .news-year-filter{margin-top:1.2rem}
 .news-index-content{padding:3rem 20px 5rem}
 .news-featured-card{margin-bottom:4rem}
 .news-featured-media{min-height:320px}
 .news-featured-copy{padding:2rem}
 .news-index-grid{grid-template-columns:1fr}
 .news-index-card-copy{min-height:240px}
}

.home-all-news{display:inline-block;margin-top:2rem;color:inherit;text-decoration:none;font-size:.72rem;font-weight:950;letter-spacing:.12em;border-bottom:1px solid currentColor;padding-bottom:.35rem}

/* v1.2.1 — News archive load more */
.news-loadmore-wrap{display:flex;justify-content:center;padding-top:4rem}
.news-loadmore{
 appearance:none;border:2px solid #080808;background:transparent;color:#080808;
 min-width:260px;padding:1.15rem 1.5rem;font-size:.76rem;font-weight:950;
 letter-spacing:.12em;cursor:pointer;transition:.18s ease
}
.news-loadmore:hover{background:#080808;color:#fff}
.news-loadmore small{font-size:.62rem;opacity:.55;margin-left:.5rem}
.news-loadmore span{font-size:1.1rem;margin-left:.7rem}

/* v1.3.3 — dynamic source year filters */
.news-year-filter button{display:inline-flex;align-items:center;gap:.55rem}
.news-year-filter button small{
 display:inline-grid;place-items:center;min-width:1.65rem;height:1.25rem;padding:0 .3rem;
 background:rgba(0,0,0,.08);font-size:.58rem;font-weight:950;letter-spacing:0
}
.news-year-filter button.is-active small{background:rgba(255,255,255,.18)}


/* v1.3.4 — simplified news toolbar */
.news-index-toolbar{justify-content:flex-start}
.news-search{min-width:min(620px,75vw)}
@media(max-width:720px){
  .news-search{min-width:0;width:100%}
}


/* TRIMAX v1.4 — UPISI */
.join-page{background:#f1f1ee;color:#080808}
.join-hero{position:relative;background:#080808;color:#fff;padding:clamp(10rem,14vw,13rem) var(--pad) 5rem;overflow:hidden}
.join-kicker{font-size:.72rem;font-weight:950;letter-spacing:.16em;margin-bottom:2rem}
.join-hero-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.45fr);gap:5rem;align-items:end}
.join-hero h1{margin:0;font-size:clamp(5rem,12vw,12rem);line-height:.75;letter-spacing:-.075em;font-weight:950}
.join-hero h1 span{color:#ffdc00}
.join-hero-side{padding-bottom:1rem}
.join-hero-side p{font-size:clamp(1.15rem,1.7vw,1.45rem);line-height:1.45;margin:0 0 2.5rem;color:rgba(255,255,255,.78)}
.join-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;min-width:270px;padding:1.2rem 1.4rem;background:#fff;color:#080808;text-decoration:none;font-size:.75rem;font-weight:950;letter-spacing:.12em}
.join-primary b{font-size:1.5em}
.join-discipline-strip{position:absolute;left:0;right:0;bottom:0;height:10px;display:grid;grid-template-columns:1fr 1fr 1fr}
.join-discipline-strip i:nth-child(1){background:#009bd9}.join-discipline-strip i:nth-child(2){background:#ffdc00}.join-discipline-strip i:nth-child(3){background:#e82e08}

.join-choose,.join-faq{padding:7rem var(--pad)}
.join-section-intro{display:grid;grid-template-columns:.42fr 1fr;gap:4rem;align-items:start;margin-bottom:4rem}
.join-section-intro>span{font-size:.7rem;font-weight:950;letter-spacing:.13em;padding-top:.55rem}
.join-section-intro h2{margin:0;font-size:clamp(3.7rem,8vw,8rem);line-height:.78;letter-spacing:-.065em}

.join-paths{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#111}
.join-path{background:#f1f1ee;padding:clamp(2rem,4vw,4rem);min-height:660px;display:flex;flex-direction:column}
.join-path-top{display:flex;justify-content:space-between;font-size:.68rem;font-weight:950;letter-spacing:.13em}
.join-path-tag{border:1px solid currentColor;padding:.35rem .55rem}
.join-path h3{font-size:clamp(4.5rem,8vw,8rem);line-height:.72;letter-spacing:-.07em;margin:4rem 0 2rem}
.join-path-age h3{color:#009bd9}.join-path-race h3{color:#e82e08}
.join-path p{font-size:1.08rem;line-height:1.6;max-width:590px;margin:0 0 2rem}
.join-path ul{list-style:none;padding:0;margin:0 0 3rem;border-top:1px solid rgba(0,0,0,.2)}
.join-path li{padding:.75rem 0;border-bottom:1px solid rgba(0,0,0,.2);font-size:.78rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.join-path>a{margin-top:auto;color:#080808;text-decoration:none;font-size:.72rem;font-weight:950;letter-spacing:.1em;border-bottom:2px solid #080808;padding-bottom:.6rem;display:flex;justify-content:space-between}
.join-path>a b{font-size:1.4em}

.join-process{background:#0a0a0a;color:#fff;padding:7rem var(--pad)}
.join-section-intro-light h2{color:#fff}
.join-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.2)}
.join-steps article{background:#0a0a0a;padding:2.2rem;min-height:300px}
.join-steps article>span{font-size:.7rem;font-weight:950;letter-spacing:.13em;color:#ffdc00}
.join-steps h3{font-size:clamp(2rem,3vw,3.2rem);letter-spacing:-.04em;margin:3.5rem 0 1rem}
.join-steps p{color:rgba(255,255,255,.65);line-height:1.55;margin:0}

.join-medical{padding:6rem var(--pad);display:grid;grid-template-columns:100px 1fr .8fr;gap:3rem;align-items:center;background:#ffdc00;color:#080808}
.join-medical-mark{font-size:8rem;font-weight:950;line-height:.8}
.join-medical span{font-size:.68rem;font-weight:950;letter-spacing:.13em}
.join-medical h2{font-size:clamp(3.5rem,6vw,6rem);line-height:.78;letter-spacing:-.06em;margin:1rem 0 0}
.join-medical-copy{font-size:1.12rem;line-height:1.55}
.join-medical-copy p{margin:.4rem 0}

.join-faq-grid{max-width:1000px;margin-left:auto}
.join-faq details{border-top:1px solid #111}
.join-faq details:last-child{border-bottom:1px solid #111}
.join-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:2rem;padding:1.5rem 0;font-size:clamp(1.15rem,2vw,1.6rem);font-weight:800}
.join-faq summary::-webkit-details-marker{display:none}
.join-faq summary b{font-size:1.5rem;font-weight:400;transition:.2s}
.join-faq details[open] summary b{transform:rotate(45deg)}
.join-faq details p{max-width:760px;margin:0 0 1.8rem;line-height:1.6;opacity:.68}

.join-final{background:#e82e08;color:#fff;padding:7rem var(--pad);display:grid;grid-template-columns:.35fr 1fr;gap:3rem;align-items:end}
.join-final>span{font-size:.72rem;font-weight:950;letter-spacing:.14em;align-self:start}
.join-final h2{grid-column:2;margin:0;font-size:clamp(5rem,11vw,11rem);line-height:.73;letter-spacing:-.075em}
.join-final a{grid-column:2;margin-top:2rem;color:#fff;text-decoration:none;font-size:.78rem;font-weight:950;letter-spacing:.12em;border-top:1px solid rgba(255,255,255,.55);padding-top:1rem;display:flex;justify-content:space-between}
.join-final a b{font-size:1.6em}

@media(max-width:960px){
 .join-hero-grid{grid-template-columns:1fr;gap:3rem}
 .join-hero-side{max-width:650px}
 .join-section-intro{grid-template-columns:1fr;gap:1rem}
 .join-paths{grid-template-columns:1fr}
 .join-path{min-height:0}
 .join-steps{grid-template-columns:repeat(2,1fr)}
 .join-medical{grid-template-columns:70px 1fr}
 .join-medical-copy{grid-column:2}
 .join-final{grid-template-columns:1fr}
 .join-final h2,.join-final a{grid-column:1}
}
@media(max-width:650px){
 .join-hero{padding:9rem 20px 4rem}
 .join-hero h1{font-size:clamp(4.2rem,20vw,7rem)}
 .join-primary{min-width:0;width:100%}
 .join-choose,.join-faq,.join-process{padding:4.5rem 20px}
 .join-section-intro{margin-bottom:2.5rem}
 .join-path{padding:2rem}
 .join-path h3{margin:3rem 0 1.5rem}
 .join-steps{grid-template-columns:1fr}
 .join-steps article{min-height:220px}
 .join-medical{padding:4rem 20px;grid-template-columns:1fr;gap:1.5rem}
 .join-medical-mark{font-size:5rem}
 .join-medical-copy{grid-column:1}
 .join-final{padding:5rem 20px}
 .join-final h2{font-size:clamp(4.2rem,19vw,7rem)}
}


/* TRIMAX v1.5 — TRENERI */
.coaches-page{background:#f1f1ee;color:#080808}
.coaches-hero{position:relative;background:#080808;color:#fff;padding:clamp(10rem,14vw,13rem) var(--pad) 5rem}
.coaches-kicker{font-size:.72rem;font-weight:950;letter-spacing:.16em;margin-bottom:2rem}
.coaches-hero-grid{display:grid;grid-template-columns:1.5fr .5fr;gap:5rem;align-items:end}
.coaches-hero h1{font-size:clamp(5rem,11.5vw,11.5rem);line-height:.76;letter-spacing:-.075em;margin:0;font-weight:950}
.coaches-hero h1 span{color:#009bd9}
.coaches-hero p{font-size:clamp(1.15rem,1.7vw,1.45rem);line-height:1.5;color:rgba(255,255,255,.72);margin:0 0 1rem}
.coaches-lead{padding:7rem var(--pad);display:grid;grid-template-columns:.35fr 1fr .55fr;gap:3rem;align-items:start}
.coaches-lead>span,.coach-role{font-size:.7rem;font-weight:950;letter-spacing:.13em}
.coaches-lead h2{font-size:clamp(4rem,7.5vw,7.5rem);line-height:.78;letter-spacing:-.065em;margin:0}
.coaches-lead p{font-size:1.15rem;line-height:1.6;margin:0}
.coach-feature{padding:6rem var(--pad);display:grid;grid-template-columns:.3fr 1.05fr .55fr;gap:3rem;min-height:600px;align-items:start}
.coach-feature-dark{background:#0a0a0a;color:#fff}
.coach-feature-light{background:#ffdc00;color:#080808}
.coach-role span{display:block;margin-bottom:.6rem;opacity:.55}
.coach-name h2{font-size:clamp(4.5rem,9vw,9rem);line-height:.75;letter-spacing:-.075em;margin:0}
.coach-feature-dark .coach-name h2{color:#009bd9}
.coach-feature-light .coach-name h2{color:#080808}
.coach-copy{align-self:end}
.coach-copy p{line-height:1.6;opacity:.72}
.coach-copy .coach-big{font-size:1.45rem;line-height:1.35;font-weight:750;opacity:1}
.coach-copy a{display:flex;justify-content:space-between;color:inherit;text-decoration:none;border-top:1px solid currentColor;padding-top:1rem;margin-top:2rem;font-size:.75rem;font-weight:950;letter-spacing:.08em}
.coach-principles{background:#0a0a0a;color:#fff;padding:7rem var(--pad)}
.coach-principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.18)}
.coach-principle-grid article{background:#0a0a0a;padding:3rem;min-height:330px}
.coach-principle-grid span{font-size:.68rem;font-weight:950;letter-spacing:.12em}
.coach-principle-grid article:nth-child(1) span{color:#009bd9}
.coach-principle-grid article:nth-child(2) span{color:#ffdc00}
.coach-principle-grid article:nth-child(3) span{color:#e82e08}
.coach-principle-grid h3{font-size:clamp(2.5rem,4vw,4rem);letter-spacing:-.05em;margin:5rem 0 1rem}
.coach-principle-grid p{line-height:1.55;color:rgba(255,255,255,.65);max-width:340px}
.coaches-quote{padding:8rem var(--pad);background:#f1f1ee}
.coaches-quote>span{font-size:.7rem;font-weight:950;letter-spacing:.14em}
.coaches-quote blockquote{font-size:clamp(2.8rem,6vw,6rem);line-height:.94;letter-spacing:-.055em;font-weight:950;margin:3rem 0;max-width:1400px}
.coaches-quote p{font-size:.75rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
.coaches-final{background:#009bd9}
@media(max-width:960px){
 .coaches-hero-grid,.coaches-lead,.coach-feature{grid-template-columns:1fr}
 .coaches-hero-grid{gap:3rem}
 .coaches-hero p{max-width:650px}
 .coach-feature{min-height:0}
 .coach-copy{max-width:650px}
 .coach-principle-grid{grid-template-columns:1fr}
 .coach-principle-grid article{min-height:230px}
 .coach-principle-grid h3{margin-top:3rem}
}
@media(max-width:650px){
 .coaches-hero{padding:9rem 20px 4rem}
 .coaches-hero h1{font-size:clamp(4rem,19vw,7rem)}
 .coaches-lead,.coach-feature,.coach-principles,.coaches-quote{padding:4.5rem 20px}
 .coach-name h2{font-size:clamp(4rem,18vw,7rem)}
 .coach-principle-grid article{padding:2rem}
}


/* TRIMAX v1.6 — KONTAKT */
.contact-page{background:#f1f1ee;color:#080808}
.contact-hero{position:relative;background:#080808;color:#fff;padding:clamp(10rem,14vw,13rem) var(--pad) 5rem}
.contact-kicker{font-size:.72rem;font-weight:950;letter-spacing:.16em;margin-bottom:2rem}
.contact-hero-grid{display:grid;grid-template-columns:1.5fr .5fr;gap:5rem;align-items:end}
.contact-hero h1{font-size:clamp(5rem,12vw,12rem);line-height:.75;letter-spacing:-.075em;margin:0;font-weight:950}
.contact-hero h1 span{color:#e82e08}
.contact-hero-copy p{font-size:clamp(1.1rem,1.7vw,1.45rem);line-height:1.5;color:rgba(255,255,255,.75);margin:0 0 2rem}
.contact-hero-copy a{color:#fff;text-decoration:none;border-top:1px solid rgba(255,255,255,.5);padding-top:1rem;display:flex;justify-content:space-between;font-size:.72rem;font-weight:950;letter-spacing:.11em}
.contact-main,.contact-board{padding:7rem var(--pad)}
.contact-section-title{display:grid;grid-template-columns:.38fr 1fr;gap:3rem;margin-bottom:4rem}
.contact-section-title>span,.contact-club-title>span{font-size:.7rem;font-weight:950;letter-spacing:.13em;padding-top:.55rem}
.contact-section-title h2,.contact-club-title h2{font-size:clamp(4rem,7.5vw,7.5rem);line-height:.78;letter-spacing:-.065em;margin:0}
.contact-people{border-top:1px solid #111}
.contact-people article{display:grid;grid-template-columns:.12fr .88fr .55fr;gap:3rem;align-items:center;border-bottom:1px solid #111;padding:3rem 0}
.contact-person-no{font-size:.7rem;font-weight:950;opacity:.45}
.contact-people article span{font-size:.67rem;font-weight:950;letter-spacing:.13em}
.contact-people h3{font-size:clamp(3rem,6vw,6rem);line-height:.78;letter-spacing:-.06em;margin:1rem 0 0}
.contact-actions a{display:flex;align-items:end;justify-content:space-between;gap:1rem;color:#080808;text-decoration:none;border-top:1px solid #111;padding-top:1rem;font-size:1.15rem;font-weight:850}
.contact-actions small,.contact-data-grid small,.contact-cta-grid small{display:block;font-size:.62rem;letter-spacing:.12em;font-weight:950;opacity:.55}
.contact-actions b{font-size:1.4rem}
.contact-club{background:#009bd9;color:#080808;padding:7rem var(--pad)}
.contact-club-title{display:grid;grid-template-columns:.38fr 1fr;gap:3rem;margin-bottom:4rem}
.contact-data-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(0,0,0,.5);border-left:1px solid rgba(0,0,0,.5)}
.contact-data-grid>div{padding:2rem;border-right:1px solid rgba(0,0,0,.5);border-bottom:1px solid rgba(0,0,0,.5);min-height:180px}
.contact-data-grid strong{display:block;margin-top:2.5rem;font-size:1.2rem;line-height:1.45}
.contact-board-columns{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#111}
.contact-board-columns>div{background:#f1f1ee;padding:3rem}
.contact-board-columns h3{font-size:clamp(2rem,4vw,4rem);letter-spacing:-.05em;margin:0 0 3rem}
.contact-board dl{margin:0}
.contact-board dl div{display:grid;grid-template-columns:1fr 1.2fr;gap:1rem;padding:1rem 0;border-top:1px solid rgba(0,0,0,.22)}
.contact-board dt{font-size:.68rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase;opacity:.55}
.contact-board dd{margin:0;font-size:1.05rem;font-weight:800}
.contact-cta{background:#e82e08;color:#fff;padding:7rem var(--pad)}
.contact-cta>span{font-size:.7rem;font-weight:950;letter-spacing:.13em}
.contact-cta h2{font-size:clamp(4.5rem,9vw,9rem);line-height:.77;letter-spacing:-.07em;margin:2rem 0 4rem}
.contact-cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.5)}
.contact-cta-grid a{background:#e82e08;color:#fff;text-decoration:none;padding:2rem;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:end;font-size:1rem;font-weight:950;letter-spacing:.08em}
.contact-cta-grid small{grid-column:1/-1;opacity:.7}
.contact-cta-grid b{font-size:1.5rem}
@media(max-width:960px){
 .contact-hero-grid,.contact-section-title,.contact-club-title{grid-template-columns:1fr}
 .contact-people article{grid-template-columns:60px 1fr}
 .contact-actions{grid-column:2}
 .contact-data-grid{grid-template-columns:1fr 1fr}
 .contact-board-columns{grid-template-columns:1fr}
}
@media(max-width:650px){
 .contact-hero{padding:9rem 20px 4rem}
 .contact-hero h1{font-size:clamp(4.2rem,20vw,7rem)}
 .contact-main,.contact-club,.contact-board,.contact-cta{padding:4.5rem 20px}
 .contact-people article{grid-template-columns:1fr;gap:1rem}
 .contact-actions{grid-column:1}
 .contact-data-grid{grid-template-columns:1fr}
 .contact-data-grid>div{min-height:140px}
 .contact-board-columns>div{padding:2rem}
 .contact-board dl div{grid-template-columns:1fr}
 .contact-cta-grid{grid-template-columns:1fr}
}

/* v1.6.4 — protected coach e-mail links */
.contact-actions{display:grid;gap:.85rem}
.contact-actions .js-email span{font-size:1.05rem;font-weight:850;text-transform:none;letter-spacing:0}
.coach-copy .js-email{margin-top:.8rem}
.coach-copy .js-email small{font-size:.62rem;letter-spacing:.12em;font-weight:950;opacity:.55}
.coach-copy .js-email span{margin-left:auto;margin-right:.7rem;text-transform:none;letter-spacing:0}


/* TRIMAX v1.7 — SPORTAŠI */
.athletes-page{background:#f1f1ee;color:#080808}
.athletes-hero{position:relative;background:#080808;color:#fff;padding:clamp(10rem,14vw,13rem) var(--pad) 5rem}
.athletes-kicker{font-size:.72rem;font-weight:950;letter-spacing:.16em;margin-bottom:2rem}
.athletes-hero-grid{display:grid;grid-template-columns:1.5fr .5fr;gap:5rem;align-items:end}
.athletes-hero h1{font-size:clamp(5rem,11vw,11rem);line-height:.76;letter-spacing:-.075em;margin:0;font-weight:950}
.athletes-hero h1 span{color:#ffdc00}
.athletes-hero-copy p{font-size:clamp(1.1rem,1.7vw,1.45rem);line-height:1.5;color:rgba(255,255,255,.75);margin:0 0 2rem}
.athletes-hero-copy a{display:flex;justify-content:space-between;color:#fff;text-decoration:none;border-top:1px solid rgba(255,255,255,.5);padding-top:1rem;font-size:.72rem;font-weight:950;letter-spacing:.1em}

.athletes-stats{display:grid;grid-template-columns:repeat(4,1fr);background:#111;gap:1px}
.athletes-stats article{background:#f1f1ee;padding:2.5rem var(--pad);min-height:240px;display:flex;flex-direction:column;justify-content:space-between}
.athletes-stats strong{font-size:clamp(3.8rem,6vw,6rem);line-height:1;font-weight:950;letter-spacing:-.07em}
.athletes-stats span{font-size:.67rem;line-height:1.5;font-weight:950;letter-spacing:.1em}

.athletes-featured{padding:7rem var(--pad)}
.athletes-section-head{display:grid;grid-template-columns:.38fr 1fr;gap:3rem;margin-bottom:4rem}
.athletes-section-head>span{font-size:.7rem;font-weight:950;letter-spacing:.13em;padding-top:.55rem}
.athletes-section-head h2{font-size:clamp(4rem,7.5vw,7.5rem);line-height:.78;letter-spacing:-.065em;margin:0}
.featured-athletes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#111}
.featured-athlete{position:relative;min-height:650px;padding:2.5rem;display:flex;flex-direction:column;overflow:hidden;color:#080808}
.featured-blue{background:#009bd9}.featured-yellow{background:#ffdc00}.featured-red{background:#e82e08;color:#fff}
.featured-athlete-index{font-size:.68rem;font-weight:950;letter-spacing:.13em}
.featured-athlete-monogram{position:absolute;right:-.08em;top:.1em;font-size:clamp(10rem,19vw,19rem);font-weight:950;line-height:1;letter-spacing:-.11em;opacity:.12}
.featured-athlete-copy{margin-top:auto;position:relative;z-index:1}
.featured-athlete-copy small{font-size:.67rem;font-weight:950;letter-spacing:.12em}
.featured-athlete-copy h3{font-size:clamp(3.7rem,6.8vw,7rem);line-height:.74;letter-spacing:-.07em;margin:1rem 0 1.5rem}
.featured-athlete-copy p{max-width:360px;line-height:1.5;font-weight:650}

.athletes-roster{background:#0a0a0a;color:#fff;padding:7rem var(--pad)}
.athletes-section-head-light h2{color:#fff}
.athletes-roster-grid{border-top:1px solid rgba(255,255,255,.25)}
.athlete-row{display:grid;grid-template-columns:70px 1.15fr .8fr 100px;gap:2rem;align-items:center;padding:1.7rem 0;border-bottom:1px solid rgba(255,255,255,.22);transition:.2s}
.athlete-row:hover{padding-left:1rem;background:rgba(255,255,255,.035)}
.athlete-row-no{font-size:.65rem;font-weight:950;opacity:.5}
.athlete-row strong{font-size:clamp(1.8rem,3.1vw,3.2rem);letter-spacing:-.045em}
.athlete-row small{font-size:.66rem;font-weight:900;letter-spacing:.1em;color:rgba(255,255,255,.6)}
.athlete-row b{font-size:2rem;text-align:right;opacity:.18}

.athletes-culture{display:grid;grid-template-columns:.35fr 1fr;background:#ffdc00;padding:7rem var(--pad);gap:3rem}
.athletes-culture-label{font-size:.7rem;font-weight:950;letter-spacing:.13em}
.athletes-culture-copy h2{font-size:clamp(4.5rem,9vw,9rem);line-height:.76;letter-spacing:-.07em;margin:0}
.athletes-culture-copy h2 span{color:#e82e08}
.athletes-culture-copy p{font-size:1.2rem;line-height:1.6;max-width:700px;margin:3rem 0 0}

.athletes-path{background:#009bd9;padding:7rem var(--pad);display:grid;grid-template-columns:1fr .35fr;gap:4rem;align-items:end}
.athletes-path span{font-size:.7rem;font-weight:950;letter-spacing:.13em}
.athletes-path h2{font-size:clamp(4.5rem,8vw,8rem);line-height:.77;letter-spacing:-.07em;margin:2rem 0 0}
.athletes-path a{color:#080808;text-decoration:none;border-top:1px solid #080808;padding-top:1rem;display:flex;justify-content:space-between;font-size:.75rem;font-weight:950;letter-spacing:.1em}
.athletes-path a b{font-size:1.5rem}

@media(max-width:1000px){
 .athletes-hero-grid,.athletes-section-head,.athletes-culture{grid-template-columns:1fr}
 .athletes-stats{grid-template-columns:1fr 1fr}
 .featured-athletes-grid{grid-template-columns:1fr}
 .featured-athlete{min-height:470px}
 .featured-athlete-monogram{font-size:14rem}
 .athlete-row{grid-template-columns:55px 1fr 80px}
 .athlete-row small{grid-column:2}
 .athlete-row b{grid-column:3;grid-row:1/3}
 .athletes-path{grid-template-columns:1fr}
}
@media(max-width:650px){
 .athletes-hero{padding:9rem 20px 4rem}
 .athletes-hero h1{font-size:clamp(4rem,18vw,7rem)}
 .athletes-stats{grid-template-columns:1fr}
 .athletes-stats article{padding:2rem 20px;min-height:170px}
 .athletes-featured,.athletes-roster,.athletes-culture,.athletes-path{padding:4.5rem 20px}
 .featured-athlete{padding:2rem;min-height:430px}
 .athlete-row{grid-template-columns:45px 1fr}
 .athlete-row b{display:none}
 .athlete-row small{grid-column:2}
}


/* v1.7.1 — representation groups */
.rep-group{display:grid;grid-template-columns:.34fr 1fr;border-top:1px solid #111;margin-top:1px}
.rep-group-title{padding:2.5rem 2rem 2.5rem 0;display:flex;flex-direction:column;min-height:470px}
.rep-group-title>span{font-size:.67rem;font-weight:950;letter-spacing:.13em}
.rep-group-title>strong{font-size:clamp(2rem,3.2vw,3.3rem);line-height:.9;letter-spacing:-.05em;margin-top:2rem}
.rep-group-title>small{margin-top:auto;font-size:.64rem;font-weight:950;letter-spacing:.1em;opacity:.55}
.rep-athletes{display:grid;gap:1px;background:#111}
.rep-athletes-three{grid-template-columns:repeat(3,1fr)}
.rep-athletes-two{grid-template-columns:repeat(2,1fr)}
.rep-athlete{position:relative;padding:2rem;min-height:470px;display:flex;flex-direction:column;overflow:hidden}
.rep-athlete>b{position:absolute;right:-.06em;top:.02em;font-size:clamp(8rem,14vw,14rem);line-height:1;font-weight:950;letter-spacing:-.1em;opacity:.11}
.rep-athlete small{font-size:.63rem;font-weight:950;letter-spacing:.11em;position:relative}
.rep-athlete h3{font-size:clamp(2.8rem,5vw,5rem);line-height:.76;letter-spacing:-.065em;margin:auto 0 1.2rem;position:relative}
.rep-athlete p{font-size:.76rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase;line-height:1.45;margin:0;position:relative}
.rep-blue{background:#009bd9}.rep-yellow{background:#ffdc00}.rep-red{background:#e82e08;color:#fff}
.rep-group-dark{background:#0a0a0a;color:#fff;border-top-color:#0a0a0a;margin-left:calc(var(--pad) * -1);margin-right:calc(var(--pad) * -1);padding-left:var(--pad);padding-right:var(--pad)}
.rep-dark{background:#151515;color:#fff}
.rep-group-development{border-bottom:1px solid #111}
.rep-outline{background:#f1f1ee}
@media(max-width:1000px){
 .rep-group{grid-template-columns:1fr}
 .rep-group-title{min-height:0;padding:2.5rem 0}
 .rep-group-title>small{margin-top:2rem}
}
@media(max-width:720px){
 .rep-athletes-three,.rep-athletes-two{grid-template-columns:1fr}
 .rep-athlete{min-height:390px}
 .rep-group-dark{margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px}
}


/* TRIMAX v1.8 — PARTNERI */
.partners-page{background:#f2f2ef;color:#080808}
.partners-hero{background:#080808;color:#fff;padding:clamp(10rem,14vw,13rem) var(--pad) 5rem;position:relative}
.partners-kicker{font-size:.7rem;font-weight:950;letter-spacing:.15em}
.partners-hero h1{font-size:clamp(6rem,13vw,13rem);line-height:.72;letter-spacing:-.08em;margin:3rem 0 5rem}
.partners-hero h1 em{font-style:normal;color:#ffdc00}
.partners-intro{display:grid;grid-template-columns:.55fr 1fr;gap:5rem;border-top:1px solid rgba(255,255,255,.35);padding-top:2rem;margin-left:35%}
.partners-intro strong{font-size:.7rem;letter-spacing:.12em}
.partners-intro p{font-size:clamp(1.15rem,1.8vw,1.55rem);line-height:1.5;margin:0;color:rgba(255,255,255,.75)}
.partners-grid-section{padding:7rem var(--pad)}
.partners-section-head{display:grid;grid-template-columns:.35fr 1fr;gap:3rem;margin-bottom:4rem}
.partners-section-head>span{font-size:.68rem;font-weight:950;letter-spacing:.13em}
.partners-section-head h2{font-size:clamp(5rem,9vw,9rem);line-height:.74;letter-spacing:-.075em;margin:0}
.partners-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #111;border-left:1px solid #111}
.partner-card{position:relative;min-height:270px;padding:1.5rem;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid #111;border-bottom:1px solid #111;transition:.2s}
.partner-card:hover{background:#ffdc00}
.partner-no{font-size:.6rem;font-weight:950;opacity:.45}
.partner-name{font-size:clamp(1.55rem,2.5vw,2.7rem);font-weight:950;line-height:.88;letter-spacing:-.055em;overflow-wrap:anywhere}
.partner-card small{font-size:.58rem;font-weight:950;letter-spacing:.11em;opacity:.55}
.partners-quote{background:#009bd9;padding:7rem var(--pad)}
.partners-quote>span{font-size:.68rem;font-weight:950;letter-spacing:.13em}
.partners-quote blockquote{font-size:clamp(4.5rem,9vw,9rem);font-weight:950;line-height:.75;letter-spacing:-.075em;margin:4rem 0 0}
.partners-quote em{font-style:normal;color:#fff}
.partners-join{background:#ffdc00;padding:7rem var(--pad);display:grid;grid-template-columns:1fr .35fr;gap:5rem;align-items:end}
.partners-join span{font-size:.68rem;font-weight:950;letter-spacing:.13em}
.partners-join h2{font-size:clamp(4.5rem,8vw,8rem);line-height:.77;letter-spacing:-.07em;margin:2rem 0}
.partners-join p{max-width:680px;font-size:1.15rem;line-height:1.55}
.partners-join a{color:#080808;text-decoration:none;border-top:1px solid #080808;padding-top:1rem;display:flex;justify-content:space-between;font-size:.72rem;font-weight:950;letter-spacing:.1em}
.partners-join a b{font-size:1.5rem}
@media(max-width:1000px){
 .partners-intro{margin-left:0;grid-template-columns:1fr}
 .partners-section-head{grid-template-columns:1fr}
 .partners-grid{grid-template-columns:repeat(2,1fr)}
 .partners-join{grid-template-columns:1fr}
}
@media(max-width:600px){
 .partners-hero,.partners-grid-section,.partners-quote,.partners-join{padding-left:20px;padding-right:20px}
 .partners-hero h1{font-size:clamp(5rem,22vw,8rem)}
 .partners-grid{grid-template-columns:1fr}
 .partner-card{min-height:190px}
}


/* v1.8.1 — partner logo wall */
.partner-logo-stage{
  flex:1;min-height:150px;display:flex;align-items:center;justify-content:center;
  padding:1.4rem .8rem;margin:.5rem 0 1rem;background:#fff;overflow:hidden;
}
.partner-logo-stage img{
  display:block;max-width:88%;max-height:115px;width:auto;height:auto;object-fit:contain;
  filter:none;
}
.partner-logo-fallback{
  font-size:clamp(1.5rem,2.3vw,2.5rem);font-weight:950;line-height:.9;
  letter-spacing:-.05em;text-align:center;overflow-wrap:anywhere;
}
.partner-card:hover .partner-logo-stage{background:#fff}
.partner-card:hover .partner-logo-stage img{transform:scale(1.035)}
.partner-logo-stage img{transition:transform .2s ease}
@media(max-width:600px){
 .partner-logo-stage{min-height:130px}
 .partner-logo-stage img{max-height:95px}
}

/* v1.8.3 — structured SEO footer */
.footer-links{display:grid;grid-template-columns:1.15fr 1fr .8fr;gap:clamp(2.5rem,7vw,8rem);border-top:1px solid var(--line);margin-top:70px;padding-top:34px}
.footer-links-group{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.footer-links-title{display:block;margin-bottom:12px;color:#777;font-size:9px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.footer-links a{color:#fff;text-decoration:none;font-size:12px;font-weight:800;letter-spacing:.035em;line-height:1.45;transition:opacity .2s ease}
.footer-links a:hover{opacity:.58}.footer-links a span{display:inline-block;margin-left:4px;font-size:10px}
.footer-links + .footer-meta{margin-top:55px}
@media(max-width:800px){.footer-links{grid-template-columns:1fr;gap:38px;margin-top:45px;padding-top:28px}.footer-links + .footer-meta{margin-top:45px}.footer-links a{font-size:14px}}

/* v1.8.4 — native privacy page */
.privacy-page{background:#f2f2ef;color:#080808}
.privacy-hero{background:#080808;color:#fff;padding:clamp(10rem,14vw,13rem) var(--pad) 5rem}
.privacy-hero>span{font-size:.7rem;font-weight:950;letter-spacing:.15em}
.privacy-hero h1{font-size:clamp(5rem,11vw,11rem);line-height:.75;letter-spacing:-.075em;margin:3rem 0 0}
.privacy-hero h1 em{font-style:normal;color:#009bd9}
.privacy-content{padding:7rem var(--pad);display:grid;grid-template-columns:.3fr 1fr;gap:clamp(3rem,8vw,9rem)}
.privacy-content aside{font-size:.75rem;line-height:1.6}
.privacy-content aside>span{font-size:.62rem;font-weight:950;letter-spacing:.14em}
.privacy-copy section{display:grid;grid-template-columns:55px .45fr 1fr;gap:2rem;border-top:1px solid #111;padding:2rem 0 3.5rem}
.privacy-copy section>span{font-size:.65rem;font-weight:950}
.privacy-copy h2{font-size:clamp(1.8rem,3vw,3.2rem);line-height:.95;letter-spacing:-.045em;margin:0}
.privacy-copy p{font-size:1rem;line-height:1.7;margin:0;max-width:720px}
.privacy-copy a{color:inherit;font-weight:850}
@media(max-width:900px){.privacy-content{grid-template-columns:1fr}.privacy-copy section{grid-template-columns:40px 1fr}.privacy-copy p{grid-column:2}}
@media(max-width:600px){.privacy-hero,.privacy-content{padding-left:20px;padding-right:20px}.privacy-hero h1{font-size:clamp(4rem,18vw,6rem)}}


/* v1.8.5 — CLEAN FOOTER */
.site-footer{
  background:#050505;
  color:#fff;
  padding:0 var(--pad) 0;
  border-top:1px solid rgba(255,255,255,.16);
}

.site-footer .footer-links{
  display:grid;
  grid-template-columns:1.2fr 1fr .72fr;
  gap:clamp(3rem,7vw,8rem);
  margin:0;
  padding:clamp(3rem,5vw,4.5rem) 0 clamp(3.25rem,5vw,4.75rem);
  border-top:0;
}

.site-footer .footer-links-group{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:0;
}

.site-footer .footer-links-title{
  position:relative;
  display:block;
  width:100%;
  margin:0 0 1.45rem;
  padding:0 0 .85rem;
  color:rgba(255,255,255,.42);
  font-size:.64rem;
  font-weight:950;
  letter-spacing:.18em;
  text-transform:uppercase;
  border-bottom:1px solid rgba(255,255,255,.13);
}

.site-footer .footer-links-title::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-1px;
  width:34px;
  height:2px;
  background:#009bd9;
}

.site-footer .footer-links-group:nth-child(2) .footer-links-title::after{
  background:#ffdc00;
}
.site-footer .footer-links-group:nth-child(3) .footer-links-title::after{
  background:#e82e08;
}

.site-footer .footer-links a{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  width:auto;
  padding:.43rem 0;
  color:rgba(255,255,255,.92);
  font-size:.89rem;
  font-weight:760;
  letter-spacing:-.012em;
  line-height:1.35;
  text-decoration:none;
  transition:color .18s ease, transform .18s ease;
}

.site-footer .footer-links a::before{
  content:"";
  width:0;
  height:1px;
  background:currentColor;
  transition:width .18s ease;
  opacity:.7;
}

.site-footer .footer-links a:hover{
  color:#fff;
  transform:translateX(4px);
  opacity:1;
}

.site-footer .footer-links a:hover::before{
  width:12px;
}

.site-footer .footer-links a span{
  margin-left:.08rem;
  font-size:.72rem;
  opacity:.58;
  transform:translateY(-1px);
}

.site-footer .footer-meta{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  align-items:center;
  gap:1rem;
  margin:0;
  padding:1.35rem 0 1.5rem;
  border-top:1px solid rgba(255,255,255,.14);
  color:rgba(255,255,255,.65);
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.site-footer .footer-meta span:nth-child(2){text-align:center}
.site-footer .footer-meta span:nth-child(3){text-align:right}

@media(max-width:900px){
  .site-footer .footer-links{
    grid-template-columns:1fr 1fr;
    gap:3rem 4rem;
  }
  .site-footer .footer-links-group:first-child{
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    column-gap:1.5rem;
  }
  .site-footer .footer-links-group:first-child .footer-links-title{
    grid-column:1 / -1;
  }
}

@media(max-width:620px){
  .site-footer{
    padding-left:20px;
    padding-right:20px;
  }
  .site-footer .footer-links{
    grid-template-columns:1fr;
    gap:2.7rem;
    padding:2.7rem 0 3rem;
  }
  .site-footer .footer-links-group:first-child{
    grid-column:auto;
    display:flex;
  }
  .site-footer .footer-links-group:first-child .footer-links-title{
    grid-column:auto;
  }
  .site-footer .footer-links a{
    font-size:1rem;
    padding:.48rem 0;
  }
  .site-footer .footer-meta{
    grid-template-columns:1fr;
    gap:.45rem;
    padding:1.15rem 0 1.4rem;
  }
  .site-footer .footer-meta span:nth-child(2),
  .site-footer .footer-meta span:nth-child(3){
    text-align:left;
  }
}

/* v1.9 TRENINZI */
.training-page{background:#f2f2ef;color:#080808}.training-hero{background:#080808;color:#fff;padding:clamp(10rem,14vw,13rem) var(--pad) 6rem}.training-hero>span,.training-places>span,.training-when>span,.training-how>span,.training-join>span{font-size:.66rem;font-weight:950;letter-spacing:.15em}.training-hero h1{font-size:clamp(4.5rem,9.3vw,9.3rem);line-height:.78;letter-spacing:-.075em;margin:3rem 0 5rem}.training-hero h1 em{font-style:normal;color:#009bd9}.training-intro{display:grid;grid-template-columns:.45fr 1fr;gap:5rem;margin-left:28%;border-top:1px solid #555;padding-top:2rem}.training-intro strong{font-size:.7rem;letter-spacing:.13em}.training-intro p{font-size:clamp(1.15rem,1.8vw,1.55rem);line-height:1.55;margin:0;color:#bbb}.training-three{display:grid;grid-template-columns:repeat(3,1fr)}.training-three article{min-height:570px;padding:3rem clamp(2rem,3.5vw,4rem);display:flex;flex-direction:column}.training-three span{font-size:.62rem;font-weight:950;letter-spacing:.14em}.training-three h2{font-size:clamp(3.6rem,5.5vw,6.2rem);line-height:.78;letter-spacing:-.07em;margin:auto 0 2rem}.training-three p{line-height:1.6}.training-three .swim{background:#009bd9}.training-three .bike{background:#ffdc00}.training-three .run{background:#e82e08;color:#fff}.training-places{padding:7rem var(--pad)}.training-places h2{font-size:clamp(4.5rem,8vw,8rem);line-height:.77;letter-spacing:-.07em;margin:3rem 0 2rem}.training-places h2 em{font-style:normal;color:#009bd9}.places-lead{max-width:650px;font-size:1.1rem;line-height:1.6;margin-bottom:4rem}.place-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #111;border-left:1px solid #111}.place-grid article{min-height:300px;border-right:1px solid #111;border-bottom:1px solid #111;padding:2rem;display:flex;flex-direction:column}.place-grid small{font-size:.6rem;font-weight:950;letter-spacing:.14em;opacity:.55}.place-grid strong{font-size:clamp(2.8rem,5vw,5rem);line-height:.82;letter-spacing:-.06em;margin:auto 0}.place-grid b{font-size:.65rem;letter-spacing:.1em}.training-when{background:#ffdc00;padding:7rem var(--pad);display:grid;grid-template-columns:.3fr 1fr;gap:5rem}.training-when h2{font-size:clamp(5rem,9vw,9rem);line-height:.75;letter-spacing:-.075em;margin:0 0 3rem}.training-when p{font-size:clamp(1.15rem,1.8vw,1.5rem);line-height:1.55;max-width:800px}.training-when div>strong{display:block;border-top:1px solid #111;margin-top:3rem;padding-top:1.5rem;max-width:800px;line-height:1.55}.training-how{background:#080808;color:#fff;padding:7rem var(--pad)}.how-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:3rem;border-top:1px solid #444;border-left:1px solid #444}.how-grid article{min-height:330px;padding:2rem;border-right:1px solid #444;border-bottom:1px solid #444}.how-grid b{font-size:.6rem;opacity:.45}.how-grid h3{font-size:clamp(1.6rem,2.5vw,2.7rem);letter-spacing:-.04em;margin:7rem 0 1rem}.how-grid p{color:#aaa;line-height:1.55}.training-join{background:#009bd9;padding:7rem var(--pad)}.training-join h2{font-size:clamp(4.5rem,9vw,9rem);line-height:.75;letter-spacing:-.075em;margin:3rem 0}.training-join h2 em{font-style:normal;color:#fff}.training-join>div{display:grid;grid-template-columns:1fr .35fr;gap:4rem;align-items:end}.training-join p{font-size:1.35rem;font-weight:800}.training-join a{color:#080808;text-decoration:none;border-top:1px solid #080808;padding-top:1rem;display:flex;justify-content:space-between;font-size:.72rem;font-weight:950;letter-spacing:.1em}.training-join a b{font-size:1.5rem}@media(max-width:1000px){.training-intro{margin-left:0}.training-three{grid-template-columns:1fr}.training-three article{min-height:430px}.how-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.training-hero,.training-places,.training-when,.training-how,.training-join{padding-left:20px;padding-right:20px}.training-hero h1{font-size:clamp(3.5rem,16vw,6rem)}.training-intro,.training-when,.training-join>div{grid-template-columns:1fr;gap:2rem}.place-grid,.how-grid{grid-template-columns:1fr}.place-grid article{min-height:230px}.how-grid article{min-height:250px}.how-grid h3{margin-top:4rem}}


/* =========================================================
   v1.9.1 — MOBILE HORIZONTAL OVERFLOW FIX
   Keep the full-resolution logo asset; constrain it in CSS.
   ========================================================= */
html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

img,
svg,
video,
canvas,
iframe {
  max-width: 100%;
}

.site-header,
.site-header .brand,
.main-nav,
main,
section,
footer,
.footer-links,
.footer-meta {
  min-width: 0;
}

.site-header .brand {
  display: block;
  flex: 0 0 auto;
  max-width: 160px;
}

.site-header .brand img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 160px;
  object-fit: contain;
}

/* Long editorial words/headlines must never enlarge the viewport. */
.training-page h1,
.training-page h2,
.training-page h3,
.training-three article,
.place-grid article,
.how-grid article,
.training-intro,
.training-when > div,
.training-join > div,
.footer-links-group {
  min-width: 0;
  max-width: 100%;
}

@media (max-width: 760px) {
  html,
  body {
    overflow-x: hidden; /* fallback for browsers without overflow:clip */
  }

  .site-header {
    width: 100%;
    max-width: 100vw;
  }

  .site-header .brand {
    width: 112px !important;
    max-width: 112px !important;
  }

  .site-header .brand img {
    width: 112px !important;
    max-width: 112px !important;
    height: auto !important;
  }

  .main-nav {
    max-width: 100vw;
  }

  .training-page h1,
  .training-page h2,
  .training-page h3 {
    overflow-wrap: anywhere;
  }

  .training-three,
  .place-grid,
  .how-grid,
  .training-intro,
  .training-when,
  .training-join > div {
    width: 100%;
    max-width: 100%;
  }
}

@media (max-width: 390px) {
  .site-header .brand,
  .site-header .brand img {
    width: 102px !important;
    max-width: 102px !important;
  }
}


/* =========================================================
   v1.9.2 — MOBILE MENU: obvious, large tap target
   ========================================================= */
@media (max-width: 800px) {
  .menu-toggle {
    position: relative;
    z-index: 1002;
    display: inline-flex !important;
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 5px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: var(--yellow);
    color: #050505;
    cursor: pointer;
    mix-blend-mode: normal;
    box-shadow: 0 0 0 1px rgba(0,0,0,.08);
    -webkit-tap-highlight-color: transparent;
  }

  .menu-toggle span {
    display: block;
    width: 22px;
    height: 2px;
    flex: 0 0 2px;
    background: #050505;
    transform-origin: center;
    transition: transform .2s ease, opacity .2s ease;
  }

  .menu-toggle[aria-expanded="true"] span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
  }

  .menu-toggle[aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
  }

  .menu-toggle[aria-expanded="true"] span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
  }

  .site-header {
    z-index: 1000;
  }

  .main-nav {
    z-index: 1001;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 390px) {
  .menu-toggle {
    width: 46px;
    height: 46px;
    flex-basis: 46px;
  }
}


/* =========================================================
   v1.9.3 — DEFINITIVE MOBILE MENU PANEL
   The open navigation always owns its own opaque background.
   ========================================================= */
@media (max-width: 800px) {
  .site-header .main-nav {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 96px 24px 40px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    background: #050505 !important;
    background-color: #050505 !important;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    transform: translateX(100%);
    transition: transform .28s ease, opacity .18s ease, visibility 0s linear .28s;
    isolation: isolate;
  }

  .site-header .main-nav.open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateX(0) !important;
    transition: transform .28s ease, opacity .18s ease;
  }

  .site-header .main-nav::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
    background: #050505;
  }

  .site-header .main-nav a {
    position: relative;
    display: block !important;
    width: 100%;
    margin: 0 !important;
    padding: 12px 0 !important;
    color: #fff !important;
    font-size: clamp(2.15rem, 11vw, 4.25rem) !important;
    line-height: .9 !important;
    letter-spacing: -.055em !important;
    font-weight: 950 !important;
    text-decoration: none !important;
    white-space: normal !important;
    background: transparent !important;
  }

  .site-header .main-nav a.nav-cta {
    color: #ffdc00 !important;
    margin-top: 10px !important;
  }

  .site-header .brand,
  .site-header .menu-toggle {
    position: relative;
    z-index: 1003 !important;
  }

  .site-header .menu-toggle {
    background: #ffdc00 !important;
  }
}


/* =========================================================
   v1.9.4 — MOBILE MENU HARD FIX
   When menu is open, the page content is removed from view.
   ========================================================= */
@media (max-width: 800px) {
  body.menu-open {
    overflow: hidden !important;
  }

  body.menu-open > main,
  body.menu-open > footer {
    display: none !important;
  }

  body.menu-open .site-header {
    position: fixed !important;
    inset: 0 0 auto 0 !important;
    width: 100% !important;
    height: 86px !important;
    min-height: 86px !important;
    background: #050505 !important;
    z-index: 5000 !important;
  }

  body.menu-open .site-header .main-nav {
    position: fixed !important;
    top: 86px !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: calc(100dvh - 86px) !important;
    min-height: calc(100vh - 86px) !important;
    padding: 26px 24px 40px !important;
    margin: 0 !important;
    background: #050505 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    z-index: 4999 !important;
  }

  body.menu-open .site-header .main-nav::before {
    display: none !important;
  }

  body.menu-open .site-header .main-nav a {
    display: block !important;
    width: 100% !important;
    padding: 10px 0 !important;
    margin: 0 !important;
    font-size: clamp(2rem, 10vw, 3.6rem) !important;
    line-height: .92 !important;
    font-weight: 950 !important;
    letter-spacing: -.045em !important;
    color: #fff !important;
    text-decoration: none !important;
    position: static !important;
    transform: none !important;
    opacity: 1 !important;
    white-space: normal !important;
  }

  body.menu-open .site-header .main-nav a.nav-cta {
    color: #ffdc00 !important;
    margin-top: 8px !important;
  }

  body.menu-open .site-header .brand {
    position: absolute !important;
    left: 24px !important;
    top: 12px !important;
    width: 112px !important;
    max-width: 112px !important;
    z-index: 5001 !important;
  }

  body.menu-open .site-header .menu-toggle {
    position: absolute !important;
    top: 12px !important;
    right: 18px !important;
    z-index: 5002 !important;
  }
}

@media (max-width: 390px) {
  body.menu-open .site-header .brand {
    left: 18px !important;
    width: 102px !important;
    max-width: 102px !important;
  }

  body.menu-open .site-header .main-nav {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}


/* =========================================================
   v2.0 — KLUB
   ========================================================= */
.club-page{background:#f2f2ef;color:#080808}
.club-hero{background:#080808;color:#fff;padding:clamp(10rem,14vw,13rem) var(--pad) 6rem}
.club-hero>span,.club-story-label span,.club-system-head>span,.club-numbers>span,.club-people>span,.club-join>span{font-size:.66rem;font-weight:950;letter-spacing:.15em}
.club-hero h1{font-size:clamp(4.7rem,9.5vw,9.7rem);line-height:.77;letter-spacing:-.075em;margin:3rem 0 5rem}
.club-hero h1 em{font-style:normal;color:#009bd9}
.club-hero-copy{display:grid;grid-template-columns:.42fr 1fr;gap:5rem;margin-left:28%;border-top:1px solid rgba(255,255,255,.3);padding-top:2rem}
.club-hero-copy strong{font-size:.7rem;letter-spacing:.12em}
.club-hero-copy p{font-size:clamp(1.15rem,1.8vw,1.55rem);line-height:1.55;color:#bbb;margin:0}
.club-principles{display:grid;grid-template-columns:repeat(3,1fr)}
.club-principles article{min-height:470px;padding:3rem;display:flex;flex-direction:column}
.club-principles article span{font-size:.62rem;font-weight:950;letter-spacing:.14em}
.club-principles h2{font-size:clamp(4rem,6vw,6.7rem);line-height:.8;letter-spacing:-.07em;margin:auto 0 2rem}
.club-principles p{max-width:430px;line-height:1.6}
.club-principles .blue{background:#009bd9}.club-principles .yellow{background:#ffdc00}.club-principles .red{background:#e82e08;color:#fff}
.club-story{padding:7rem var(--pad);display:grid;grid-template-columns:.25fr 1fr;gap:5rem}
.club-story-main h2{font-size:clamp(4.2rem,8vw,8rem);line-height:.78;letter-spacing:-.07em;margin:0 0 4rem}
.club-story-main h2 em{font-style:normal;color:#e82e08}
.club-story-copy{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:1100px}
.club-story-copy p{font-size:1.08rem;line-height:1.7}
.club-system{background:#080808;color:#fff;padding:7rem var(--pad)}
.club-system-head{display:grid;grid-template-columns:.3fr 1fr;gap:4rem;align-items:end}
.club-system-head h2{font-size:clamp(4.2rem,8vw,8rem);line-height:.78;letter-spacing:-.07em;margin:0}
.club-system-grid{display:grid;grid-template-columns:repeat(2,1fr);margin-top:4rem;border-top:1px solid #444;border-left:1px solid #444}
.club-system-grid article{min-height:280px;border-right:1px solid #444;border-bottom:1px solid #444;padding:2rem;display:flex;flex-direction:column}
.club-system-grid b{font-size:.7rem;letter-spacing:.13em}
.club-system-grid p{color:#aaa;line-height:1.6;max-width:520px;margin:3rem 0}
.club-system-grid a{margin-top:auto;color:#fff;text-decoration:none;font-size:.68rem;font-weight:950;letter-spacing:.12em}
.club-numbers{background:#ffdc00;padding:7rem var(--pad)}
.club-numbers-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:3rem;border-top:1px solid #111}
.club-numbers-grid article{padding:2.5rem 2rem;border-right:1px solid #111}
.club-numbers-grid article:last-child{border-right:0}
.club-numbers-grid strong{display:block;font-size:clamp(6rem,11vw,11rem);line-height:.78;letter-spacing:-.08em}
.club-numbers-grid p{font-size:.72rem;font-weight:950;letter-spacing:.1em;line-height:1.45}
.club-people{padding:7rem var(--pad)}
.club-people-layout{display:grid;grid-template-columns:1fr .45fr;gap:5rem;align-items:end;margin-top:3rem}
.club-people h2{font-size:clamp(4.5rem,8.5vw,8.5rem);line-height:.77;letter-spacing:-.075em;margin:0}
.club-people h2 em{font-style:normal;color:#009bd9}
.club-people-layout p{font-size:1.08rem;line-height:1.65;margin-bottom:2.5rem}
.club-people-layout a{color:#080808;text-decoration:none;font-size:.7rem;font-weight:950;letter-spacing:.11em;border-top:1px solid #111;padding-top:1rem;display:block}
.club-join{background:#009bd9;padding:7rem var(--pad)}
.club-join h2{font-size:clamp(4.4rem,9vw,9rem);line-height:.76;letter-spacing:-.075em;margin:3rem 0}
.club-join h2 em{font-style:normal;color:#fff}
.club-join>div{display:grid;grid-template-columns:1fr .35fr;gap:4rem;align-items:end}
.club-join p{font-size:1.2rem;font-weight:800;max-width:700px}
.club-join a{color:#080808;text-decoration:none;border-top:1px solid #080808;padding-top:1rem;display:flex;justify-content:space-between;font-size:.72rem;font-weight:950;letter-spacing:.1em}
.club-join a b{font-size:1.5rem}
@media(max-width:1000px){.club-hero-copy{margin-left:0}.club-principles{grid-template-columns:1fr}.club-principles article{min-height:390px}.club-story,.club-system-head,.club-people-layout{grid-template-columns:1fr}.club-numbers-grid{grid-template-columns:1fr}.club-numbers-grid article{border-right:0;border-bottom:1px solid #111}.club-system-grid{grid-template-columns:1fr}}
@media(max-width:650px){.club-hero,.club-story,.club-system,.club-numbers,.club-people,.club-join{padding-left:20px;padding-right:20px}.club-hero h1{font-size:clamp(3.6rem,16vw,6rem)}.club-hero-copy,.club-story-copy,.club-join>div{grid-template-columns:1fr;gap:2rem}.club-principles article{padding:2rem 20px}.club-story{gap:2rem}.club-system-head{gap:2rem}.club-system-grid article{min-height:240px}.club-numbers-grid strong{font-size:7rem}}


/* =========================================================
   v2.0.1 — PARTNERI / LOCAL LOGOS FINAL POLISH
   ========================================================= */
.partners-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.partner-card{
  min-width:0;
  min-height:290px;
  padding:1.35rem;
}
.partner-logo-stage{
  width:100%;
  height:158px;
  min-height:158px;
  flex:0 0 158px;
  padding:20px 22px;
  margin:.8rem 0 1.15rem;
  background:#fff;
}
.partner-logo-stage img{
  width:auto;
  height:auto;
  max-width:84%;
  max-height:105px;
  object-fit:contain;
}

/* Individual optical sizing: same visual weight despite very different logo shapes. */
.partner-adidas .partner-logo-stage img{max-width:76%;max-height:88px}
.partner-carlsberg .partner-logo-stage img{max-width:84%;max-height:92px}
.partner-cta .partner-logo-stage img{max-width:72%;max-height:112px}
.partner-janaf .partner-logo-stage img{max-width:84%;max-height:92px}
.partner-knb .partner-logo-stage img{max-width:73%;max-height:100px}
.partner-oiv .partner-logo-stage img{max-width:86%;max-height:86px}
.partner-rotus .partner-logo-stage img{max-width:88%;max-height:82px}
.partner-swybrand .partner-logo-stage img{max-width:88%;max-height:75px}
.partner-tokic .partner-logo-stage img{max-width:84%;max-height:82px}
.partner-coca-cola .partner-logo-stage img{max-width:82%;max-height:82px}
.partner-red-bull .partner-logo-stage img{max-width:67%;max-height:106px}
.partner-vm2 .partner-logo-stage img{max-width:72%;max-height:118px}

.partner-card:hover .partner-logo-stage img{
  transform:scale(1.045);
}
.partner-card small{
  line-height:1.3;
}

@media(max-width:1150px){
  .partners-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:820px){
  .partners-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .partners-grid{grid-template-columns:1fr}
  .partner-card{min-height:225px}
  .partner-logo-stage{
    height:138px;
    min-height:138px;
    flex-basis:138px;
    padding:18px 20px;
  }
  .partner-logo-stage img{max-height:92px}
}


/* =========================================================
   v2.0.5 — ARTICLE HERO: SHOW COMPLETE IMAGE, NO CROPPING
   ========================================================= */
.article-hero{
  width:100%;
  height:auto;
  aspect-ratio:auto !important;
  max-height:none !important;
  margin:0 0 4rem;
  background:none !important;
  overflow:visible;
}
.article-hero img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:contain;
  object-position:center;
}
@media(max-width:900px){
  .article-hero{
    aspect-ratio:auto !important;
    margin-bottom:2.5rem;
  }
}


/* =========================================================
   v2.1.1 — SOCIAL PROFILES
   ========================================================= */
.footer-social{
  display:flex;
  flex-wrap:wrap;
  gap:.7rem 1.4rem;
  padding:0 5vw 1.6rem;
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:1.4rem;
}
.footer-social a{
  color:#fff;
  text-decoration:none;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  opacity:.72;
  transition:opacity .2s ease, transform .2s ease;
}
.footer-social a:hover,
.footer-social a:focus-visible{
  opacity:1;
  transform:translateY(-1px);
}

.contact-social{
  padding:7rem 5vw;
  background:#0a0a0a;
  color:#fff;
}
.contact-social-head{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
  gap:3rem;
  align-items:end;
  margin:1rem 0 3rem;
}
.contact-social-head h2{
  margin:0;
  font-size:clamp(3.2rem,7vw,7rem);
  line-height:.86;
  letter-spacing:-.055em;
}
.contact-social-head p{
  margin:0;
  color:#b7b7b7;
  font-size:1.05rem;
  line-height:1.7;
  max-width:580px;
}
.contact-social-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid rgba(255,255,255,.16);
  border-left:1px solid rgba(255,255,255,.16);
}
.contact-social-grid a{
  min-height:190px;
  padding:1.5rem;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  color:#fff;
  text-decoration:none;
  border-right:1px solid rgba(255,255,255,.16);
  border-bottom:1px solid rgba(255,255,255,.16);
  transition:background .2s ease, color .2s ease;
}
.contact-social-grid a span{
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.12em;
  opacity:.58;
}
.contact-social-grid a strong{
  font-size:clamp(1.25rem,2.2vw,2rem);
  line-height:1.05;
}
.contact-social-grid a em{
  font-style:normal;
  font-size:1.4rem;
  align-self:flex-end;
}
.contact-social-grid a:nth-child(1):hover,
.contact-social-grid a:nth-child(1):focus-visible{background:#009BD9;color:#000}
.contact-social-grid a:nth-child(2):hover,
.contact-social-grid a:nth-child(2):focus-visible{background:#FFDC00;color:#000}
.contact-social-grid a:nth-child(3):hover,
.contact-social-grid a:nth-child(3):focus-visible{background:#E82E08;color:#fff}

@media(max-width:800px){
  .footer-social{padding-left:20px;padding-right:20px}
  .contact-social{padding:5rem 1.25rem}
  .contact-social-head{grid-template-columns:1fr;gap:1.5rem}
  .contact-social-grid{grid-template-columns:1fr}
  .contact-social-grid a{min-height:145px}
}


/* v2.2.0 — global mobile overflow / oversized editorial headings hotfix */
@media (max-width: 800px) {
  html, body { width:100%; max-width:100%; overflow-x:clip; }

  main, section, header, footer,
  .site-header, .site-footer, .roster-hero, .roster, .roster-system,
  .manifesto, .feature, .news, .join, .article-shell,
  .news-index-hero, .news-index-content, .join-hero, .join-choose,
  .join-process, .join-medical, .join-faq, .join-final,
  .coaches-hero, .coaches-lead, .coach-feature, .coach-principles, .coaches-quote {
    max-width:100%; min-width:0;
  }

  h1, h2, h3, p, blockquote,
  .big-copy, .section-head h2, .roster-hero h1, .roster-head h2,
  .roster-system h2, .article-content h1, .article-more > a,
  .news-index-hero h1, .news-featured-copy h2, .join-hero h1,
  .join-section-intro h2, .join-path h3, .join-medical h2,
  .join-final h2, .coaches-hero h1, .coaches-lead h2,
  .coach-name h2, .coaches-quote blockquote {
    max-width:100%; overflow-wrap:anywhere; word-break:normal;
  }

  .roster-system h2 {
    font-size:clamp(3.15rem,15vw,5.25rem);
    line-height:.82;
    letter-spacing:-.065em;
  }

  .roster-system > p { max-width:100%; overflow-wrap:break-word; }
  img, video, iframe, svg { max-width:100%; }
}
