:root{
  --navy:#061a33;
  --navy2:#0b2d55;
  --blue:#0d4f86;
  --yellow:#f4b800;
  --yellow2:#ffd54d;
  --ink:#0b1320;
  --paper:#f5f7fb;
  --white:#ffffff;
  --muted:#6b7787;
  --shadow:0 30px 70px rgba(4,20,40,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:#06172d}
body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--paper);color:var(--ink);overflow-x:hidden}
a{color:inherit;text-decoration:none} img{max-width:100%;display:block}
.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.section{padding:110px 0}.section-dark{background:var(--navy);color:#fff}
.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:.78rem;font-weight:800;color:var(--yellow)}
.eyebrow.dark{color:#966d00}
h1,h2,h3,h4{font-family:"Barlow Condensed",sans-serif;margin:0;line-height:.92;text-transform:uppercase}
h1{font-size:clamp(4rem,8.8vw,8.8rem);font-weight:900;letter-spacing:-.03em}
h1 span{color:var(--yellow)}h2{font-size:clamp(3.1rem,6vw,6rem);font-weight:900;letter-spacing:-.025em}
h3{font-size:2rem}p{line-height:1.75;color:#4f5d6c}.section-dark p{color:#b9c5d3}.lead{font-size:1.2rem;font-weight:700;color:var(--ink)}
.site-header{position:fixed;z-index:100;top:0;left:0;right:0;transition:.35s ease;border-bottom:1px solid transparent}.site-header.scrolled{background:rgba(4,19,37,.9);backdrop-filter:blur(16px);border-color:rgba(255,255,255,.08)}
.nav-wrap{height:92px;width:min(1180px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px}.nav-side{display:flex;gap:34px;align-items:center}.nav-right{justify-content:flex-end}.nav-side a{color:#fff;font-size:.83rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;position:relative}.nav-side a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--yellow);transition:.3s}.nav-side a:hover:after{width:100%}.brand img{height:74px;width:auto;filter:drop-shadow(0 6px 14px rgba(0,0,0,.28))}.menu-toggle{display:none;background:none;border:0;width:46px;height:46px;padding:8px}.menu-toggle span{display:block;height:2px;background:#fff;margin:6px 0}.mobile-menu{display:none}
.hero{height:100svh;min-height:720px;position:relative;background:#020912;color:#fff}.hero-slide{position:absolute;inset:0;background-image:var(--bg);background-size:cover;background-position:center;opacity:0;visibility:hidden;transition:opacity .8s ease,visibility .8s}.hero-slide.active{opacity:1;visibility:visible}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,11,24,.84) 0%,rgba(3,18,35,.48) 47%,rgba(2,11,24,.18) 72%),linear-gradient(0deg,rgba(3,18,35,.38),transparent 45%)}.hero-overlay-strong{background:linear-gradient(90deg,rgba(2,11,24,.9),rgba(2,11,24,.5))}.hero-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-top:90px}.hero-content h2{font-size:clamp(4rem,8vw,8rem);max-width:800px}.hero-lead{font-size:clamp(1.05rem,1.5vw,1.35rem);color:#e8eff7;margin:20px 0 26px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.btn{min-height:52px;padding:0 26px;display:inline-flex;align-items:center;justify-content:center;text-transform:uppercase;font-weight:900;letter-spacing:.06em;font-size:.82rem;border:1px solid transparent;cursor:pointer;transition:.25s;font-family:Inter,sans-serif}.btn-primary{background:var(--yellow);color:#091424}.btn-primary:hover{transform:translateY(-2px);background:#ffd236}.btn-ghost{border-color:rgba(255,255,255,.45);color:#fff;background:rgba(255,255,255,.03)}.btn-ghost:hover{background:#fff;color:#061a33}.btn-dark{background:var(--navy);color:#fff}.countdown{display:flex;gap:18px;margin-top:46px}.countdown div{min-width:92px;padding:13px 14px;border-left:2px solid var(--yellow);background:rgba(7,27,52,.38);backdrop-filter:blur(8px)}.countdown strong{font-family:"Barlow Condensed";font-size:2.1rem;line-height:1;color:#fff}.countdown span{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:#cbd6e2;margin-top:4px}.hero-dots{position:absolute;z-index:3;right:5vw;bottom:80px;display:flex;gap:9px}.dot{width:26px;height:3px;border:0;background:rgba(255,255,255,.35);padding:0;cursor:pointer}.dot.active{background:var(--yellow);width:46px}.scroll-cue{position:absolute;left:50%;transform:translateX(-50%);bottom:34px;z-index:3;font-size:.67rem;text-transform:uppercase;letter-spacing:.18em;color:#cbd7e4}.scroll-cue span{color:var(--yellow);margin-left:8px}
.stats{padding:34px 0}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.12)}.stat-grid article{background:var(--navy);padding:28px 26px;display:flex;flex-direction:column}.stat-big{font-family:"Barlow Condensed";font-size:2.3rem;font-weight:900;color:var(--yellow);text-transform:uppercase}.stat-grid article>span:last-child{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#aebdcb;margin-top:5px}
.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:start}.section-copy h2{margin:12px 0 28px}.section-copy p{font-size:1.03rem}.word-strip{display:flex;gap:18px;flex-wrap:wrap;margin-top:36px}.word-strip span{font-family:"Barlow Condensed";font-size:2.4rem;font-weight:900;color:var(--navy);text-transform:uppercase}.word-strip span:nth-child(2){color:var(--yellow)}.mission-cards{display:grid;gap:18px}.mission-cards article{background:#fff;padding:30px 32px;border:1px solid #e5eaf0;box-shadow:0 20px 55px rgba(7,29,52,.06)}.mission-cards article>span{font-family:"Barlow Condensed";font-weight:900;font-size:1.6rem;color:var(--yellow)}.mission-cards h3{margin:8px 0 12px}.sarajevo-band{padding:130px 0;color:#fff;background:linear-gradient(90deg,rgba(3,18,35,.82),rgba(3,18,35,.32)),url('../img/hero/hero-main.jpg') center 53%/cover fixed}.sarajevo-band h2{margin:12px 0}.sarajevo-band p{font-size:1.2rem;color:#eef5fa}
.tournament-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:72px;align-items:center}.poster-card{background:#0c1f3c;padding:14px;box-shadow:var(--shadow);transform:rotate(-1deg)}.poster-card img{width:100%}.tournament-copy h2{margin:10px 0 8px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:28px 0}.info-grid article{background:#fff;border:1px solid #e2e8ef;padding:20px}.info-grid span{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;color:#718092;font-weight:800}.info-grid strong{display:block;margin-top:8px;line-height:1.45;color:#11223a}.benefit-box{border-left:4px solid var(--yellow);background:#fff7d8;padding:20px 22px;margin:0 0 28px}.benefit-box span{display:block;text-transform:uppercase;font-size:.65rem;font-weight:900;letter-spacing:.12em;color:#8a6800;margin-bottom:8px}.benefit-box strong{line-height:1.5}.section-heading{max-width:820px;margin-bottom:44px}.section-heading h2{margin-top:12px}.section-heading.center{text-align:center;margin-inline:auto}.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.category-card{min-height:240px;border:1px solid rgba(255,255,255,.12);padding:24px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.06));position:relative;overflow:hidden}.category-card:before{content:"";position:absolute;width:170px;height:170px;border-radius:50%;border:24px solid rgba(244,184,0,.08);right:-70px;top:-70px}.category-card span{font-family:"Barlow Condensed";font-size:3rem;font-weight:900;color:var(--yellow)}.category-card h3{font-size:1.35rem;margin-top:5px;color:#fff}.venue-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}.venue-copy h2{margin:12px 0 24px}.venue-image{box-shadow:var(--shadow);overflow:hidden}.venue-image img{width:100%;transition:.7s}.venue-image:hover img{transform:scale(1.025)}
.hotel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.hotel-card{background:#fff;box-shadow:0 18px 60px rgba(7,29,52,.08);overflow:hidden}.hotel-photo{height:250px;background-size:cover;background-position:50% 16%;transition:.6s}.hotel-photo-b{background-position:50% 72%}.hotel-photo-c{background-position:center}.hotel-card:hover .hotel-photo{transform:scale(1.035)}.hotel-body{padding:26px}.hotel-body>span{font-size:.67rem;text-transform:uppercase;letter-spacing:.13em;color:#8a6d09;font-weight:900}.hotel-body h3{margin:8px 0 10px}.text-link{border:0;background:none;padding:0;font-weight:900;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em;color:#0b3765;cursor:pointer}.result-box{display:flex;align-items:center;justify-content:space-between;gap:40px}.result-box h2{margin:10px 0 14px}.cta-band{background:linear-gradient(115deg,#08264a,#0b4377);color:#fff;padding:60px 0;border-top:4px solid var(--yellow)}.cta-band .container{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-band h2{font-size:clamp(3rem,5vw,5rem)}
.contact-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.contact-copy h2{margin:12px 0 28px}.contact-copy a{font-weight:800;color:#0b4178}.small{font-size:.84rem}.contact-form{background:#fff;padding:34px;box-shadow:var(--shadow)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:#5f6d7c;margin-bottom:16px}.contact-form input,.contact-form textarea{width:100%;margin-top:8px;border:1px solid #d9e0e8;background:#f9fbfd;padding:14px 15px;font:inherit;color:#172539;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:#2c69a0;box-shadow:0 0 0 3px rgba(44,105,160,.08)}.form-note{font-size:.82rem;margin:12px 0 0}.footer{background:#031226;color:#fff;padding:70px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .9fr .9fr;gap:48px}.footer h4{font-size:1rem;letter-spacing:.08em;color:var(--yellow);margin-bottom:14px}.footer a,.footer span{display:block;color:#b7c3d0;font-size:.88rem;margin:8px 0}.footer-brand img{height:118px;width:auto;margin-bottom:16px}.footer-brand p{max-width:320px;color:#9eacbb}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:40px;padding-top:18px;display:flex;justify-content:space-between;color:#7f90a2;font-size:.78rem}.whatsapp{position:fixed;right:22px;bottom:22px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;font-weight:900;z-index:80;box-shadow:0 10px 28px rgba(0,0,0,.25)}
.reveal-on-scroll{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal-on-scroll.in-view{opacity:1;transform:none}.reveal{animation:rise .8s both}.reveal:nth-child(2){animation-delay:.08s}.reveal:nth-child(3){animation-delay:.16s}.reveal:nth-child(4){animation-delay:.24s}.reveal:nth-child(5){animation-delay:.32s}@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.modal{position:fixed;inset:0;z-index:200;display:none}.modal.open{display:block}.modal-backdrop{position:absolute;inset:0;background:rgba(1,8,18,.78);backdrop-filter:blur(6px)}.modal-card{position:relative;z-index:2;width:min(900px,calc(100% - 30px));margin:7vh auto;background:#fff;display:grid;grid-template-columns:1.1fr .9fr;box-shadow:0 30px 90px rgba(0,0,0,.35)}.modal-photo img{height:100%;width:100%;object-fit:cover}.modal-body{padding:42px}.modal-close{position:absolute;right:12px;top:10px;border:0;background:#061a33;color:#fff;width:38px;height:38px;font-size:1.6rem;cursor:pointer}
@media (max-width:980px){.nav-side{display:none}.nav-wrap{grid-template-columns:1fr auto}.brand{justify-self:start}.menu-toggle{display:block;justify-self:end}.mobile-menu{position:absolute;top:92px;left:0;right:0;background:rgba(4,19,37,.97);padding:18px 20px 26px;border-top:1px solid rgba(255,255,255,.08)}.mobile-menu.open{display:grid}.mobile-menu a{padding:15px 0;border-bottom:1px solid rgba(255,255,255,.08);color:#fff;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.hero{min-height:690px}.hero-content{padding-top:80px}.countdown{gap:8px}.countdown div{min-width:74px}.stat-grid{grid-template-columns:1fr 1fr}.two-col,.tournament-grid,.venue-grid,.contact-grid{grid-template-columns:1fr}.category-grid{grid-template-columns:repeat(2,1fr)}.hotel-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.modal-card{grid-template-columns:1fr}.modal-photo{max-height:320px;overflow:hidden}}
@media (max-width:640px){.container{width:min(100% - 28px,1180px)}.section{padding:78px 0}.nav-wrap{height:76px;width:calc(100% - 28px)}.brand img{height:60px}.mobile-menu{top:76px}.hero{min-height:720px}.hero-content{justify-content:flex-end;padding-bottom:110px}.hero-slide{background-position:58% center}.hero-slide:first-child{background-position:48% center}.hero-overlay{background:linear-gradient(0deg,rgba(2,11,24,.92) 0%,rgba(2,11,24,.48) 56%,rgba(2,11,24,.25) 100%)}.eyebrow{font-size:.68rem}.hero-lead{max-width:90%;margin:14px 0 20px}.countdown{margin-top:26px;width:100%;display:grid;grid-template-columns:repeat(4,1fr)}.countdown div{min-width:0;padding:10px 8px}.countdown strong{font-size:1.65rem}.hero-dots{left:14px;right:auto;bottom:70px}.scroll-cue{display:none}.stat-grid{grid-template-columns:1fr 1fr}.stat-grid article{padding:20px 16px}.stat-big{font-size:1.8rem}.two-col{gap:40px}.word-strip{gap:10px}.word-strip span{font-size:1.8rem}.sarajevo-band{background-attachment:scroll;padding:90px 0}.info-grid{grid-template-columns:1fr}.category-grid{grid-template-columns:1fr}.category-card{min-height:150px}.hotel-grid{grid-template-columns:1fr}.result-box,.cta-band .container{flex-direction:column;align-items:flex-start}.field-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.whatsapp{right:14px;bottom:14px}.modal-body{padding:28px 24px}}
.regional-contacts{display:grid;gap:10px;margin-top:22px}.regional-contacts a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 0;border-bottom:1px solid #dce4ec}.regional-contacts span{font-size:.69rem;text-transform:uppercase;letter-spacing:.1em;color:#778493;font-weight:800}.regional-contacts strong{font-size:.94rem;color:#0b4178;white-space:nowrap}.is-disabled{opacity:.72;cursor:not-allowed}.hotel-card,.mission-cards article,.info-grid article{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.hotel-card:hover,.mission-cards article:hover,.info-grid article:hover{transform:translateY(-5px);box-shadow:0 24px 70px rgba(7,29,52,.12);border-color:rgba(13,79,134,.22)}.site-header.scrolled .brand img{height:62px}.brand img{transition:height .3s ease,transform .3s ease}.brand:hover img{transform:translateY(-2px)}.nav-side a{transition:color .2s ease}.nav-side a:hover{color:var(--yellow2)}.contact-copy>p:first-of-type{margin-bottom:8px}.footer a:hover{color:#fff}.whatsapp{font-size:0}.whatsapp:before{content:"✆";font-size:1.35rem}.results{position:relative;overflow:hidden}.results:before{content:"";position:absolute;width:440px;height:440px;border:80px solid rgba(244,184,0,.05);border-radius:50%;right:-180px;top:-180px}.result-box{position:relative;z-index:1}
@media(max-width:640px){.regional-contacts a{align-items:flex-start;flex-direction:column;gap:4px}.regional-contacts strong{white-space:normal}}

/* V3 refinements */
.btn-outline-dark{border-color:#17395f;color:#0b2d55;background:transparent}.btn-outline-dark:hover{background:#0b2d55;color:#fff;transform:translateY(-2px)}

.tournament-countdown{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.8fr);align-items:stretch;gap:1px;background:rgba(255,255,255,.12)}
.date-stat{background:var(--navy);padding:28px 30px;display:flex;flex-direction:column;justify-content:center}.stat-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;color:#aebdcb;font-weight:800;margin-bottom:8px}.date-stat .stat-big{font-size:2.6rem}
.countdown-strip{margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.12)}.countdown-strip div{min-width:0;border-left:0;background:var(--navy);backdrop-filter:none;padding:23px 18px;display:flex;flex-direction:column;justify-content:center}.countdown-strip strong{font-size:2.6rem;color:var(--yellow)}.countdown-strip span{color:#aebdcb}

.text-link{display:inline-flex;align-items:center;gap:5px;border:0;background:none;padding:0;font-weight:900;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em;color:#0b3765;cursor:pointer}.text-link:hover{color:#0d5d9d}

.regional-contacts{display:grid;gap:0;margin-top:22px}.contact-country{display:grid;grid-template-columns:minmax(150px,.8fr) 1.2fr;gap:20px;padding:14px 0;border-bottom:1px solid #dce4ec}.contact-country>span{font-size:.69rem;text-transform:uppercase;letter-spacing:.1em;color:#778493;font-weight:800;padding-top:2px}.contact-numbers{display:flex;gap:8px 16px;flex-wrap:wrap}.contact-numbers a{font-size:.94rem;color:#0b4178;font-weight:800}.contact-numbers a:hover{text-decoration:underline}

.whatsapp{left:22px;right:auto;bottom:22px}
.back-to-top{position:fixed;right:22px;bottom:22px;width:58px;height:58px;z-index:80;display:grid;place-items:center;opacity:0;visibility:hidden;transform:translateY(12px) scale(.94);transition:opacity .25s ease,visibility .25s ease,transform .25s ease;filter:drop-shadow(0 10px 20px rgba(0,0,0,.25))}.back-to-top.visible{opacity:1;visibility:visible;transform:none}.volleyball-icon{position:absolute;inset:0;width:100%;height:100%;transition:transform .35s ease}.ball-base{fill:var(--yellow);stroke:#07294d;stroke-width:3}.ball-line{fill:none;stroke:#0b4f86;stroke-width:4;stroke-linecap:round}.top-arrow{position:relative;z-index:2;color:#061a33;font-size:1.65rem;font-weight:900;line-height:1;transform:translateY(-1px)}.back-to-top:hover .volleyball-icon{transform:rotate(18deg) scale(1.05)}

.placeholder-page{min-height:100vh;background:linear-gradient(135deg,#031226,#0b3765);color:#fff;display:grid;place-items:center}.placeholder-wrap{width:min(760px,calc(100% - 40px));text-align:center;padding:70px 20px}.placeholder-wrap img{height:150px;width:auto;margin:0 auto 26px}.placeholder-wrap h1{font-size:clamp(3rem,8vw,6rem);margin:12px 0 20px}.placeholder-wrap p:not(.eyebrow){color:#c5d2df;max-width:620px;margin:0 auto 28px}

@media(max-width:980px){.tournament-countdown{grid-template-columns:1fr}.date-stat{text-align:center;align-items:center}.countdown-strip strong{font-size:2.25rem}}
@media(max-width:640px){.countdown-strip{grid-template-columns:repeat(2,1fr)}.countdown-strip div{padding:18px 12px}.date-stat .stat-big{font-size:2.1rem}.contact-country{grid-template-columns:1fr;gap:7px}.contact-numbers{flex-direction:column;gap:5px}.whatsapp{left:14px;right:auto;bottom:14px}.back-to-top{right:14px;bottom:14px;width:54px;height:54px}}

/* V4 refinements */
.hero-content .eyebrow{margin-bottom:22px}
.hero-content h1,.hero-content h2{margin-top:0}
@media(max-width:640px){.hero-content .eyebrow{margin-bottom:15px}}

.contact-hint{max-width:420px;color:#718092;font-size:.92rem;line-height:1.65}
.regional-contact-section{padding:30px 0 110px;background:#f3f6f9}
.regional-contact-section .section-heading{margin-bottom:32px}
.regional-contact-section .section-heading p{margin-top:14px;color:#708092}
.regional-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.regional-card{background:#fff;border:1px solid #e1e7ee;padding:26px 28px;box-shadow:0 14px 42px rgba(7,29,52,.06);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.regional-card:hover{transform:translateY(-4px);box-shadow:0 22px 55px rgba(7,29,52,.10);border-color:rgba(13,79,134,.20)}
.country-title{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.country-title h3{font-size:1.35rem;line-height:1;text-transform:uppercase;color:#102a49}
.flag{font-size:1.55rem;line-height:1}
.regional-card .contact-numbers{display:flex;gap:8px 18px;flex-wrap:wrap}
.regional-card .contact-numbers a{font-weight:800;color:#0b4f86;font-size:.95rem}
.regional-card .contact-numbers a:hover{text-decoration:underline}

.back-to-top{position:fixed;right:20px;bottom:20px;width:42px;height:42px;border-radius:50%;background:#082b52;border:1px solid rgba(255,255,255,.18);color:#fff;z-index:80;display:grid;place-items:center;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .22s ease,visibility .22s ease,transform .22s ease,background .22s ease;box-shadow:0 8px 22px rgba(0,0,0,.20);filter:none}
.back-to-top.visible{opacity:1;visibility:visible;transform:none}
.back-to-top:hover{background:#0c467d;transform:translateY(-2px)}
.back-to-top .top-arrow{position:static;font-size:1.05rem;font-weight:800;line-height:1;transform:none}

/* WhatsApp floating action removed in V4 */
.whatsapp{display:none!important}

@media(max-width:760px){
  .regional-contact-grid{grid-template-columns:1fr}
  .regional-contact-section{padding:18px 0 82px}
}
@media(max-width:640px){
  .back-to-top{right:12px;bottom:12px;width:38px;height:38px}
  .back-to-top .top-arrow{font-size:.95rem}
  .regional-card{padding:22px 20px}
  .country-title{align-items:flex-start;flex-wrap:wrap}
  .regional-card .contact-numbers{flex-direction:column;gap:7px}
}

/* V5 refinements: larger overlapping logo, drag/swipe hero, PNG flags */
.site-header{overflow:visible}
.nav-wrap{overflow:visible}
.brand{position:relative;z-index:3;align-self:start;display:flex;justify-content:center;pointer-events:auto}
.brand img{height:118px;margin-top:6px;max-width:none}
.site-header.scrolled .brand img{height:104px}

.hero{touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}
.hero.is-dragging{cursor:grabbing}
.hero.is-dragging .hero-content,.hero.is-dragging .hero-dots{pointer-events:none}
.hero-slide{will-change:opacity}

.flag-img{width:42px;height:28px;object-fit:cover;border-radius:3px;box-shadow:0 3px 10px rgba(6,26,51,.15);flex:0 0 auto}
.flag-pair{display:flex;align-items:center;gap:6px;flex:0 0 auto}
.country-title{gap:12px}

@media(max-width:980px){
  .brand{justify-self:start}
  .brand img{height:98px;margin-top:2px}
  .site-header.scrolled .brand img{height:90px}
}
@media(max-width:640px){
  .brand img{height:88px;margin-top:0}
  .site-header.scrolled .brand img{height:82px}
  .flag-img{width:38px;height:25px}
}

/* V8 — galerije sportskih dvorana */
.venue-heading{max-width:900px;margin-bottom:48px}
.venue-heading p{max-width:760px;margin:16px auto 0;color:#637184}
.venues-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.venue-card{background:#fff;border:1px solid #e1e7ee;box-shadow:0 18px 55px rgba(7,29,52,.08);overflow:hidden}
.venue-card-head{display:flex;align-items:baseline;gap:14px;padding:22px 24px 18px;border-bottom:1px solid #e6ebf0;background:linear-gradient(110deg,#fff,#f7f9fc)}
.venue-card-head span{font-family:"Barlow Condensed",sans-serif;font-size:1rem;font-weight:900;color:var(--yellow);letter-spacing:.08em}
.venue-card-head h3{font-size:2rem;color:#0a2748;letter-spacing:-.01em}
.venue-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;background:#071b34}
.venue-photo-grid img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center;display:block;transition:transform .55s ease,filter .55s ease;will-change:transform}
.venue-photo-grid img:hover{transform:scale(1.035);filter:saturate(1.04) contrast(1.02)}

@media(max-width:980px){
  .venues-grid{grid-template-columns:1fr;gap:24px}
  .venue-card-head{padding:20px 22px 17px}
}
@media(max-width:640px){
  .venue-heading{margin-bottom:34px;text-align:left!important}
  .venue-heading p{margin-left:0;margin-right:0}
  .venues-grid{gap:20px}
  .venue-card-head{padding:17px 16px 14px}
  .venue-card-head h3{font-size:1.65rem}
  .venue-photo-grid{gap:3px}
  .venue-photo-grid img{aspect-ratio:1/1}
}

/* V9 hotel image normalization + back-to-top */
.hotel-photo{height:auto;aspect-ratio:16/10;background-size:cover;background-position:center;transition:.6s;overflow:hidden}
.hotel-photo-b,.hotel-photo-c{background-position:center}
.hotel-card{height:100%;display:flex;flex-direction:column}
.hotel-body{display:flex;flex-direction:column;flex:1}
.hotel-body .text-link{margin-top:auto;padding-top:16px}
.back-to-top{background:var(--yellow)!important;color:#fff!important;border:0!important}
.back-to-top:hover{background:#ffd236!important;color:#fff!important}
.back-to-top .top-arrow{color:#fff!important}
@media(max-width:980px){.hotel-photo{aspect-ratio:16/9}}
@media(max-width:640px){.hotel-photo{aspect-ratio:16/10}}

/* Official flyer gallery inside Aktuelni turnir, directly below the main poster */
.tournament-poster-column{min-width:0}
.official-flyer{margin-top:22px}
.official-flyer-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:11px}
.official-flyer-head span{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:900;color:#0c1f3c}
.official-flyer-head small{font-size:.72rem;color:#718092}
.flyer-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.flyer-thumb{appearance:none;border:1px solid #d9e1e9;background:#fff;padding:0;cursor:pointer;overflow:hidden;aspect-ratio:3/4;box-shadow:0 7px 20px rgba(8,25,48,.08);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.flyer-thumb:hover,.flyer-thumb:focus-visible{transform:translateY(-3px);border-color:var(--yellow);box-shadow:0 12px 28px rgba(8,25,48,.15);outline:none}
.flyer-thumb img{width:100%;height:100%;display:block;object-fit:cover}

.flyer-lightbox{position:fixed;inset:0;z-index:500;display:none;align-items:center;justify-content:center;padding:20px}
.flyer-lightbox.open{display:flex}
.flyer-lightbox-backdrop{position:absolute;inset:0;background:rgba(1,7,16,.93);backdrop-filter:blur(5px)}
.flyer-lightbox-panel{position:relative;z-index:1;width:min(980px,100%);height:min(92vh,980px);display:flex;align-items:center;justify-content:center}
.flyer-lightbox-stage{height:100%;max-width:calc(100% - 128px);display:flex;align-items:center;justify-content:center}
.flyer-lightbox-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 28px 80px rgba(0,0,0,.5);user-select:none;-webkit-user-drag:none}
.flyer-lightbox-close{position:absolute;right:0;top:0;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(5,21,42,.82);color:#fff;font-size:2rem;line-height:1;cursor:pointer;z-index:3}
.flyer-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(5,21,42,.82);color:#fff;font-size:2.2rem;line-height:1;cursor:pointer;z-index:3}
.flyer-lightbox-prev{left:0}.flyer-lightbox-next{right:0}
.flyer-lightbox-counter{position:absolute;bottom:0;left:50%;transform:translateX(-50%);padding:7px 12px;border-radius:999px;background:rgba(5,21,42,.82);color:#fff;font-weight:800;font-size:.8rem;letter-spacing:.08em}
body.flyer-open{overflow:hidden}

@media (max-width:980px){
  .official-flyer{max-width:680px;margin:22px auto 0}
}
@media (max-width:640px){
  .official-flyer-head{align-items:flex-start;flex-direction:column;gap:3px}
  .flyer-thumbs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .flyer-lightbox{padding:12px}
  .flyer-lightbox-panel{height:94vh}
  .flyer-lightbox-stage{max-width:100%;height:calc(100% - 80px)}
  .flyer-lightbox-nav{top:auto;bottom:8px;transform:none;width:44px;height:44px}
  .flyer-lightbox-prev{left:calc(50% - 74px)}
  .flyer-lightbox-next{right:calc(50% - 74px)}
  .flyer-lightbox-close{right:4px;top:4px}
  .flyer-lightbox-counter{bottom:18px}
}

.footer-socials{display:flex;align-items:center;gap:12px;margin-top:16px}.footer .footer-socials a{width:40px;height:40px;margin:0;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;color:#fff;transition:.25s ease}.footer .footer-socials a:hover{background:var(--yellow);border-color:var(--yellow);color:#031226;transform:translateY(-2px)}.footer-socials svg{width:20px;height:20px;fill:currentColor;stroke:currentColor;stroke-width:1.8}.footer-socials svg rect,.footer-socials svg circle:not(.social-dot){fill:none}.footer-socials .social-dot{fill:currentColor;stroke:none}


/* V11 — mobilni header: bez logotipa na vrhu, tekstualni ELIT KUP nakon scrolla */
.mobile-wordmark{display:none}
@media(max-width:980px){
  .brand img{display:none!important}
  .brand{
    margin-top:0;
    align-self:center;
    min-height:1px;
    opacity:0;
    visibility:hidden;
    transform:translateY(-5px);
    transition:opacity .25s ease,transform .25s ease,visibility .25s ease;
  }
  .site-header.scrolled .brand{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
  }
  .mobile-wordmark{
    display:inline-flex;
    align-items:baseline;
    gap:6px;
    font-family:"Barlow Condensed",sans-serif;
    font-size:1.62rem;
    line-height:1;
    font-weight:900;
    letter-spacing:.035em;
    white-space:nowrap;
    filter:drop-shadow(0 3px 8px rgba(0,0,0,.24));
  }
  .mobile-wordmark-elit{
    color:#f7b900;
    text-shadow:1px 1px 0 #083b69,2px 2px 0 #061a33;
  }
  .mobile-wordmark-kup{color:#fff}
}
@media(max-width:640px){
  .mobile-wordmark{font-size:1.48rem;gap:5px}
}

/* V17 category refinements */
.category-groups{display:grid;gap:34px}.category-group{display:grid;gap:16px}.category-group-title{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.14)}.category-group-title span{font-family:"Barlow Condensed",sans-serif;font-size:1.7rem;font-weight:900;text-transform:uppercase;color:#fff}.category-group-title strong{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--yellow)}.category-grid-girls{grid-template-columns:repeat(4,1fr)}.category-grid-boys{grid-template-columns:repeat(3,1fr)}.category-card span{font-size:1.15rem;line-height:1.15}.category-card h3{font-size:1rem;line-height:1.35;margin-top:10px}.info-grid article strong{line-height:1.45}
@media(max-width:980px){.category-grid-girls,.category-grid-boys{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.category-grid-girls,.category-grid-boys{grid-template-columns:1fr}.category-group-title{align-items:flex-end}.category-group-title span{font-size:1.45rem}}

/* V18 category year layout */
.category-card{justify-content:flex-end}
.category-year{position:absolute;left:24px;right:24px;top:50%;transform:translateY(-58%);display:flex;flex-direction:column;align-items:center;text-align:center;z-index:1;line-height:1}
.category-year strong{font-family:"Barlow Condensed",sans-serif;font-size:clamp(3.8rem,5vw,5.5rem);font-weight:900;color:var(--yellow);line-height:.85}
.category-year span{font-family:"Barlow Condensed",sans-serif!important;font-size:1.15rem!important;font-weight:900;color:var(--yellow)!important;text-transform:uppercase;margin-top:10px;line-height:1!important}
.category-card h3{position:relative;z-index:2;margin-top:auto}
@media(max-width:640px){.category-card{min-height:230px}.category-year{left:20px;right:20px}.category-year strong{font-size:4.5rem}.category-year span{font-size:1.05rem!important}}

/* V28: hero image URLs resolved relative to CSS stylesheet */
.hero-slide[data-hero-image="main"]{background-image:url("../img/hero/hero-main.jpg")}
.hero-slide[data-hero-image="secondary"]{background-image:url("../img/hero/hero-secondary.jpg")}
.hero-slide[data-hero-image="third"]{background-image:url("../img/hero/hero-third.jpg")}

/* V31: rezultati + lista prijavljenih ekipa */
.results .result-clubs{margin-top:18px}
.results .result-clubs .btn{white-space:normal;text-align:center}
/* V31: lokacije dvorana */
.venue-card-head{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.venue-card-head h3{flex:1;min-width:0}
.venue-location{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;flex-shrink:0;padding:10px 14px;background:#ffc400;color:#071d36;text-decoration:none;font-size:.78rem;font-weight:800;letter-spacing:.055em;border-radius:3px;transition:background .2s,transform .2s}
.venue-location:hover{background:#ffd33a;transform:translateY(-2px)}
@media(max-width:540px){.venue-card-head{gap:8px}.venue-card-head h3{font-size:1.45rem}.venue-location{padding:9px 10px;font-size:.69rem}}

/* Separator between results and registered clubs */
.results .results-divider{height:4px;background:var(--yellow);width:100%;margin:38px 0;}
.results .result-clubs{margin-top:0;}
