
/* ---------- PODSTRANKA: sutaziaci ---------- */
.page-hero{
  position:relative;min-height:62svh;display:flex;align-items:flex-end;overflow:hidden;
  background:radial-gradient(120% 90% at 50% 0%, #1A1712 0%, var(--bg) 62%);
  padding-top:150px;padding-bottom:64px;
}
.page-hero .hero-smoke{opacity:.75}
.page-hero .hero-vignette{background:radial-gradient(90% 70% at 50% 45%, transparent 40%, rgba(11,10,8,.9) 100%)}
.page-hero .container{position:relative;z-index:5}
.page-hero h1{font-size:clamp(2.6rem,8vw,5.6rem);font-weight:700;color:var(--ink);text-shadow:0 10px 40px rgba(0,0,0,.6)}
.page-hero h1 .gold{color:var(--gold);text-shadow:0 0 46px rgba(244,175,0,.35)}
.page-hero .lead{margin-top:14px}
.page-hero .crumbs{
  display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;
  font-family:var(--font-head);font-weight:500;font-size:.78rem;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);
}
.page-hero .crumbs a{color:var(--muted);transition:color .3s}
.page-hero .crumbs a:hover{color:var(--gold)}
.page-hero .crumbs svg{color:var(--gold)}
.page-hero .hero-bigtext{top:12%;font-size:clamp(5rem,19vw,17rem)}

.poster-wrap{max-width:780px;margin-left:auto;margin-right:auto;position:relative}
.poster-frame{
  position:relative;overflow:hidden;border-radius:10px;box-shadow:var(--shadow);
  transform:rotate(-1deg);transition:transform .6s var(--ease);
}
.poster-wrap:hover .poster-frame{transform:rotate(0deg) scale(1.008)}
.poster-frame img{width:100%;height:auto}
.poster-wrap::after{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid var(--line);border-radius:10px;z-index:-1}
.poster-tag{
  position:absolute;top:-16px;right:22px;z-index:2;background:var(--gold);color:#171204;
  font-family:var(--font-head);font-weight:600;font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;
  padding:10px 18px;border-radius:3px;box-shadow:0 14px 34px rgba(0,0,0,.45);transform:rotate(2deg);
}

.roster{margin-top:74px}
.roster-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:34px}
.roster-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 44px;border-top:1px solid rgba(239,234,224,.09)}
.roster-row{
  display:flex;align-items:center;gap:14px;padding-top:16px;padding-bottom:16px;
  border-bottom:1px solid rgba(239,234,224,.09);
  transition:padding-left .4s var(--ease),background .4s var(--ease);
}
.roster-row:hover{padding-left:10px;background:rgba(244,175,0,.03)}
.roster-row svg{color:var(--gold);flex:0 0 auto}
.roster-row span{font-family:var(--font-head);font-weight:500;letter-spacing:.1em;text-transform:uppercase;font-size:.95rem}

.results{list-style:none;counter-reset:none;border-top:1px solid rgba(239,234,224,.09)}
.res-row{
  display:flex;align-items:center;gap:18px;padding-top:14px;padding-bottom:14px;
  border-bottom:1px solid rgba(239,234,224,.09);
  transition:padding-left .4s var(--ease),background .4s var(--ease);
}
.res-row:hover{padding-left:10px;background:rgba(244,175,0,.03)}
.res-pos{
  flex:0 0 auto;width:38px;height:38px;display:flex;align-items:center;justify-content:center;
  font-family:var(--font-head);font-weight:700;font-size:1rem;border-radius:5px;
  background:rgba(255,255,255,.05);color:var(--muted);border:1px solid rgba(239,234,224,.1);
}
.res-row.podium .res-pos{background:var(--gold);color:#171204;border-color:var(--gold)}
.res-name{font-family:var(--font-head);font-weight:500;letter-spacing:.08em;text-transform:uppercase;font-size:1rem}
.res-row.podium .res-name{color:var(--gold)}
.res-pts{margin-left:auto;color:var(--muted);font-size:.88rem;font-family:var(--font-head);letter-spacing:.1em;white-space:nowrap}
@media(max-width:1024px){.roster-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){
  .roster-grid{grid-template-columns:1fr}
  .page-hero{min-height:52svh;padding-top:120px;padding-bottom:48px}
  .poster-tag{right:10px}
}

/* ---------- GALÉRIA ---------- */
.gal-tabs{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:38px}
.gal-tab{
  display:inline-flex;align-items:center;gap:10px;cursor:pointer;
  font-family:var(--font-head);font-weight:600;font-size:.86rem;letter-spacing:.16em;text-transform:uppercase;
  padding:13px 24px;border-radius:6px;background:rgba(255,255,255,.03);
  border:1px solid rgba(239,234,224,.12);color:var(--muted);
  transition:color .35s var(--ease),border-color .35s var(--ease),background .35s var(--ease),transform .35s var(--ease);
}
.gal-tab:hover{color:var(--ink);border-color:rgba(244,175,0,.4);transform:translateY(-2px)}
.gal-tab.active{background:var(--gold);border-color:var(--gold);color:#171204}
.gal-tab .cnt{
  font-size:.72rem;padding:3px 9px;border-radius:20px;
  background:rgba(255,255,255,.07);color:inherit;letter-spacing:.08em;
}
.gal-tab.active .cnt{background:rgba(23,18,4,.16)}

.gal-panel{display:none}
.gal-panel.on{display:block}

.gal-meta{
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:26px;
  font-family:var(--font-head);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);
}
.gal-meta .dot{width:4px;height:4px;border-radius:50%;background:var(--gold)}

.gal-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));
  gap:14px;
}
.gal-item{
  position:relative;display:block;overflow:hidden;border-radius:8px;cursor:zoom-in;
  aspect-ratio:1/1;background:#151310;border:1px solid rgba(239,234,224,.07);
  opacity:0;transform:translateY(22px) scale(.98);
  transition:opacity .7s var(--ease),transform .7s var(--ease),border-color .4s var(--ease);
}
.gal-item.on{opacity:1;transform:none}
.gal-item img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .7s var(--ease),filter .5s var(--ease);
  filter:saturate(.92);
}
.gal-item:hover{border-color:rgba(244,175,0,.45)}
.gal-item:hover img{transform:scale(1.07);filter:saturate(1.06)}
.gal-item::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,transparent 55%,rgba(11,10,8,.55) 100%);
  opacity:0;transition:opacity .45s var(--ease);
}
.gal-item:hover::after{opacity:1}
.gal-item .zoom{
  position:absolute;right:12px;bottom:12px;z-index:2;width:34px;height:34px;border-radius:6px;
  display:grid;place-items:center;background:var(--gold);color:#171204;
  opacity:0;transform:translateY(8px);transition:opacity .4s var(--ease),transform .4s var(--ease);
}
.gal-item:hover .zoom{opacity:1;transform:none}

/* prázdny stav – pripravujeme */
.gal-empty{
  position:relative;overflow:hidden;border-radius:12px;text-align:center;
  border:1px solid var(--line);background:rgba(244,175,0,.04);
  padding:64px 32px;
}
.gal-empty .ico{
  width:66px;height:66px;margin:0 auto 24px;border-radius:12px;display:grid;place-items:center;
  background:rgba(244,175,0,.12);border:1px solid var(--line);color:var(--gold);
}
.gal-empty h3{font-size:clamp(1.3rem,3vw,1.9rem);color:var(--ink);margin-bottom:14px}
.gal-empty p{color:var(--muted);max-width:520px;margin-left:auto;margin-right:auto}
.gal-empty .pulse{
  display:inline-flex;align-items:center;gap:10px;margin-bottom:22px;
  font-family:var(--font-head);font-weight:600;font-size:.76rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold);padding:8px 16px;border-radius:30px;border:1px solid var(--line);background:rgba(244,175,0,.07);
}
.gal-empty .pulse i{
  width:8px;height:8px;border-radius:50%;background:var(--gold);
  animation:blip 1.6s ease-in-out infinite;
}
@keyframes blip{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(244,175,0,.5)}50%{opacity:.45;box-shadow:0 0 0 9px rgba(244,175,0,0)}}
.gal-empty .btn{margin-top:30px}

/* lightbox */
#lb{
  position:fixed;inset:0;z-index:200;display:none;
  background:rgba(6,6,5,.96);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
}
#lb.on{display:block}
#lb .lb-stage{
  position:absolute;inset:64px 20px 74px;display:flex;align-items:center;justify-content:center;
}
#lb img{
  max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;
  box-shadow:0 30px 90px rgba(0,0,0,.7);
  opacity:0;transform:scale(.97);transition:opacity .35s var(--ease),transform .35s var(--ease);
}
#lb img.ready{opacity:1;transform:none}
#lb .lb-bar{
  position:absolute;left:0;right:0;top:0;height:64px;display:flex;align-items:center;
  justify-content:space-between;padding-left:22px;padding-right:22px;
}
#lb .lb-count{
  font-family:var(--font-head);font-weight:600;font-size:.84rem;letter-spacing:.2em;color:var(--muted);
}
#lb .lb-count b{color:var(--gold)}
.lb-btn{
  width:46px;height:46px;border:1px solid rgba(239,234,224,.16);background:rgba(255,255,255,.04);
  border-radius:8px;color:var(--ink);display:grid;place-items:center;cursor:pointer;
  transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease);
}
.lb-btn:hover{background:var(--gold);color:#171204;border-color:var(--gold);transform:translateY(-2px)}
#lb .lb-prev,#lb .lb-next{
  position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;z-index:3;
}
#lb .lb-prev{left:18px}
#lb .lb-next{right:18px}
#lb .lb-prev:hover,#lb .lb-next:hover{transform:translateY(-50%) scale(1.06)}
#lb .lb-foot{
  position:absolute;left:0;right:0;bottom:0;height:74px;
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-head);font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);
  padding-left:20px;padding-right:20px;text-align:center;
}
@media(max-width:640px){
  .gal-grid{grid-template-columns:repeat(auto-fill,minmax(46%,1fr));gap:10px}
  #lb .lb-stage{inset:60px 10px 96px}
  #lb .lb-prev{left:10px;bottom:24px;top:auto;transform:none}
  #lb .lb-next{right:10px;bottom:24px;top:auto;transform:none}
  #lb .lb-prev:hover,#lb .lb-next:hover{transform:scale(1.06)}
  #lb .lb-foot{bottom:6px;height:40px}
  .gal-empty{padding:48px 22px}
}
