/* =========================================================
   LION RC-DRIFT TEAM
   Brand palette taken from supplied logo:
   Black #050505 · Green #11A32D · Yellow #FFF600 · White
   ========================================================= */

:root{
  --black:#050505;
  --black-2:#090b0a;
  --panel:#0d100e;
  --green:#11a32d;
  --green-bright:#18c43a;
  --yellow:#fff600;
  --white:#f7f7f5;
  --muted:#9ca19d;
  --line:rgba(255,255,255,.12);
  --max:1280px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{
  margin:0;background:var(--black);color:var(--white);
  font-family:Inter,Arial,sans-serif;overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
button{font:inherit}
.container{width:min(calc(100% - 80px),var(--max));margin:auto}
.section-dark{background:var(--black)}

.noise{
  position:fixed;inset:-50%;z-index:100;pointer-events:none;opacity:.025;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ---------- STICKY MENU ---------- */
.site-header{
  position:fixed;top:0;left:0;right:0;z-index:90;
  height:92px;transition:height .3s ease,background .3s ease,box-shadow .3s ease;
  background:linear-gradient(180deg,rgba(0,0,0,.55),transparent);
}
.site-header.scrolled{
  height:72px;
  background:rgba(3,5,4,.92);
  backdrop-filter:blur(16px);
  box-shadow:0 10px 35px rgba(0,0,0,.45);
  border-bottom:1px solid rgba(17,163,45,.22);
}
.header-inner{
  width:min(calc(100% - 80px),var(--max));height:100%;margin:auto;
  display:flex;align-items:center;gap:38px;
}
.brand{display:block;width:152px;flex:0 0 152px}
.brand img{display:block;width:100%;height:auto}
.nav{display:flex;gap:28px;margin:auto;align-items:center}
.nav a{
  position:relative;padding:12px 0;font-size:10px;font-weight:800;
  letter-spacing:.1em;opacity:.82;transition:.2s;
}
.nav a:after{
  content:"";position:absolute;left:0;right:100%;bottom:4px;height:2px;
  background:var(--green);box-shadow:0 0 10px rgba(17,163,45,.6);transition:.25s;
}
.nav a:hover,.nav a.active{opacity:1}
.nav a:hover:after,.nav a.active:after{right:0}
.socials{display:flex;gap:14px;font-size:9px;font-weight:800}
.socials a{opacity:.7}
.socials a:hover{color:var(--green);opacity:1}
.menu-toggle{display:none}

/* ---------- COMMON ---------- */
.eyebrow{
  margin:0 0 20px;font-size:10px;letter-spacing:.17em;font-weight:800;color:#d9dbd8;
}
.eyebrow span{
  display:inline-block;width:28px;height:2px;background:var(--green);
  vertical-align:middle;margin-right:9px;box-shadow:0 0 8px rgba(17,163,45,.5);
}
h1,h2{
  font-family:"Barlow Condensed",sans-serif;
  text-transform:uppercase;font-style:italic;font-weight:900;
  letter-spacing:-.04em;line-height:.82;
}
h2{font-size:clamp(52px,5.2vw,78px);margin:0 0 25px}
h2 em{color:var(--green);font-style:italic}
p{line-height:1.75}

/* ---------- HERO ---------- */
.hero{
  min-height:780px;height:100vh;max-height:980px;position:relative;
  display:flex;align-items:center;overflow:hidden;
  background:#020302;
}
.hero-bg{
  position:absolute;inset:-9%;background-image:url("assets/hero-bg.jpg");
  background-size:cover;background-position:center 40%;
  filter:grayscale(1) contrast(1.1) brightness(.58);
  will-change:transform;
}
.hero-tint{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.73) 43%,rgba(0,0,0,.25) 100%),
    linear-gradient(180deg,rgba(0,0,0,.4),transparent 35%,rgba(0,0,0,.7));
}
.hero-tint:after{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 68% 52%,rgba(17,163,45,.16),transparent 34%);
}
.hero-grid{
  position:absolute;inset:0;opacity:.13;
  background-image:linear-gradient(rgba(17,163,45,.28) 1px,transparent 1px),
                    linear-gradient(90deg,rgba(17,163,45,.28) 1px,transparent 1px);
  background-size:80px 80px;
  mask-image:linear-gradient(90deg,#000,transparent 72%);
}
.hero-content{position:relative;z-index:2;padding-top:70px}
.hero h1{font-size:clamp(82px,10vw,155px);margin:0 0 28px}
.hero h1 em{color:var(--green);display:inline-block}
.hero-lead{max-width:510px;color:#d1d4d1;font-size:14px}
.hero-actions{display:flex;align-items:center;gap:28px;margin-top:32px}
.btn{
  min-height:50px;padding:0 21px;display:inline-flex;align-items:center;gap:28px;
  border:1px solid var(--white);font-size:10px;font-weight:800;letter-spacing:.08em;
  transition:.25s;
}
.btn b{font-size:18px}
.btn-green{
  background:var(--green);border-color:var(--green);color:#fff;
  box-shadow:0 0 0 rgba(17,163,45,0);
}
.btn-green:hover{
  background:var(--green-bright);border-color:var(--green-bright);
  transform:translateY(-2px);box-shadow:0 12px 35px rgba(17,163,45,.22);
}
.video-link{display:flex;align-items:center;gap:12px;font-size:8px;font-weight:800;letter-spacing:.08em}
.play{
  width:44px;height:44px;border:1px solid #fff;border-radius:50%;
  display:grid;place-items:center;font-size:10px;padding-left:2px;
}
.hero-badge{
  position:absolute;right:6%;bottom:11%;z-index:2;
  width:130px;height:130px;border:2px solid var(--green);border-radius:50%;
  display:grid;place-items:center;text-align:center;
  font:800 18px/.82 "Barlow Condensed";font-style:italic;
  transform:rotate(-12deg);background:rgba(0,0,0,.4);
  box-shadow:0 0 35px rgba(17,163,45,.12);
}
.hero-badge b{color:var(--green)}
.scroll{
  position:absolute;right:5%;bottom:35px;z-index:3;font-size:8px;
  letter-spacing:.16em;font-weight:800;display:flex;flex-direction:column;
  align-items:center;gap:7px
}
.scroll b{font-size:22px;font-weight:400;color:var(--green)}

/* ---------- ABOUT ---------- */
.about{position:relative;min-height:670px;padding:125px 0;overflow:hidden}
.about-bg{
  position:absolute;inset:-8%;background:url("assets/about-bg.jpg") center 20%/cover no-repeat;
  filter:grayscale(1) brightness(.32);opacity:.52;will-change:transform
}
.about:before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(5,5,5,.12),rgba(5,5,5,.92) 70%);
}
.about-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;gap:100px}
.about-copy{max-width:590px}
.about p{font-size:13px;color:#bfc3bf;max-width:570px}
.marker{
  display:inline-block;margin-top:12px;font:27px/.8 "Permanent Marker",cursive;
  transform:rotate(-4deg)
}
.marker span{color:var(--green);font-size:23px}
.feature-list{align-self:center;border-left:1px solid var(--line);padding-left:40px}
.feature{display:flex;gap:20px;padding:18px 0}
.feature strong{width:34px;color:var(--green);font-size:28px;text-align:center}
.feature b{display:block;font-size:11px;letter-spacing:.06em}
.feature small{display:block;color:#858b87;font-size:10px;margin-top:5px}

/* ---------- EVENTS ---------- */
.section-photo{position:relative;overflow:hidden}
.events{min-height:620px;display:flex;align-items:center}
.events-bg,.contact-bg{
  position:absolute;inset:-20% -8%;background-size:cover;background-repeat:no-repeat;
  filter:grayscale(1) contrast(1.08) brightness(.58);will-change:transform
}
.events-bg{background-image:url("assets/events-bg.jpg");background-position:center 22%}
.contact-bg{background-image:url("assets/contact-bg.jpg")}
.section-overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(5,5,5,.95),rgba(5,5,5,.52) 57%,rgba(5,5,5,.3)),
             linear-gradient(0deg,rgba(5,5,5,.5),transparent);
}
.events-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 430px;gap:80px;align-items:center}
.events p,.contact p{max-width:540px;color:#c0c4c1;font-size:13px}
.event-card{
  padding:13px 22px;background:rgba(4,5,4,.9);border:1px solid rgba(17,163,45,.28);
  backdrop-filter:blur(9px);box-shadow:0 20px 70px rgba(0,0,0,.45)
}
.event-card article{display:flex;gap:17px;padding:18px 0;border-bottom:1px solid var(--line)}
.event-card time{
  width:50px;text-align:center;border:1px solid rgba(17,163,45,.6);padding:7px 2px;
  flex:0 0 50px
}
.event-card time b{display:block;color:var(--green);font:800 22px "Barlow Condensed"}
.event-card time span{font-size:8px;font-weight:800;color:#9ba19c}
.event-card article>div>b{font-size:10px}
.event-card small{display:block;color:#777d79;font-size:9px;line-height:1.6;margin-top:6px}
.event-all{display:block;text-align:right;padding:17px 0 4px;font-size:8px;font-weight:800;color:var(--green)}
.event-card--empty{
  text-align:center;padding:52px 32px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:14px;min-height:230px
}
.event-card--empty strong{
  font:900 italic 27px/.9 "Barlow Condensed";text-transform:uppercase;color:var(--green)
}
.event-card--empty p{
  font-size:11px;color:#9ca19d;line-height:1.7;margin:0;max-width:280px
}

/* ---------- COMPETITIONS ---------- */
.stats{padding:55px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.stats-grid>div{padding:10px 25px;border-right:1px solid var(--line)}
.stats-grid>div:last-child{border-right:0}
.stats span{color:var(--green);font:700 13px "Barlow Condensed"}
.stats b{display:block;font:900 italic 37px "Barlow Condensed";margin:3px 0}
.stats small{font-size:9px;color:#747a76}

/* ---------- GALLERY ---------- */
.gallery{padding:110px 0 120px}
.gallery-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}
.gallery-head>div:first-child{max-width:390px}
.gallery-nav{display:flex;gap:8px}
.gallery-nav button{
  width:44px;height:44px;background:transparent;border:1px solid var(--line);
  color:#fff;cursor:pointer;transition:.2s
}
.gallery-nav button:hover{border-color:var(--green);color:var(--green)}
.gallery-track{display:flex;gap:16px;overflow:hidden}
.gallery figure{flex:0 0 calc((100% - 48px)/4);margin:0}
.photo{
  height:330px;background-size:cover;background-position:center;
  background-repeat:no-repeat;filter:grayscale(1);transition:.5s;position:relative
}
.photo:before{
  content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.65))
}
.photo:after{
  content:"";position:absolute;left:0;bottom:0;width:30%;height:3px;background:var(--green);
  transform:scaleX(0);transform-origin:left;transition:.35s
}
.gallery figure:hover .photo{filter:grayscale(.2);transform:scale(1.02)}
.gallery figure:hover .photo:after{transform:scaleX(1)}
.photo-1{background-image:url("assets/gallery-01.jpg")}
.photo-2{background-image:url("assets/gallery-02.jpg")}
.photo-3{background-image:url("assets/gallery-03.jpg")}
.photo-4{background-image:url("assets/gallery-04.jpg")}
.photo-5{background-image:url("assets/gallery-05.jpg")}
.photo-6{background-image:url("assets/gallery-06.jpg")}
.photo-7{background-image:url("assets/gallery-07.jpg")}
.photo-8{background-image:url("assets/gallery-08.jpg");background-position:center 30%}
.photo-9{background-image:url("assets/gallery-09.jpg")}
.photo-10{background-image:url("assets/gallery-10.jpg")}
.photo-11{background-image:url("assets/gallery-11.jpg");background-color:#111}
.gallery figcaption{font:700 11px "Barlow Condensed";letter-spacing:.1em;color:#aeb2ae;padding-top:12px}

/* ---------- SPONSORS ---------- */
.sponsors{position:relative;padding:110px 0 95px;overflow:hidden;border-top:1px solid var(--line)}
.sponsors:before{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 80% 20%,rgba(17,163,45,.09),transparent 30%);
}
.lion-watermark{
  position:absolute;right:-20px;top:10px;font:900 italic 260px/.8 "Barlow Condensed";
  color:transparent;-webkit-text-stroke:1px rgba(17,163,45,.06);pointer-events:none
}
.sponsors .container{position:relative;z-index:2}
.sponsors-head{
  display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:50px
}
.sponsors-head>p{color:#aeb3ae;font-size:13px;max-width:500px;margin:0}
.sponsor-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  border-left:1px solid var(--line);border-top:1px solid var(--line)
}
.sponsor{
  min-height:155px;display:flex;align-items:center;justify-content:center;
  flex-direction:column;gap:12px;border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);position:relative;overflow:hidden;transition:.3s
}
.sponsor:before{
  content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 45%,rgba(17,163,45,.12));
  transform:translateX(-100%);transition:.35s
}
.sponsor:hover{background:#0b100c}
.sponsor:hover:before{transform:translateX(0)}
.sponsor span{
  position:relative;font:900 italic 31px/.8 "Barlow Condensed";text-align:center
}
.sponsor small{position:relative;font-size:8px;letter-spacing:.17em;color:#6d746f}
.sponsor-cta{
  margin-top:25px;padding-top:25px;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;align-items:center
}
.sponsor-cta span{font-size:9px;font-weight:800;letter-spacing:.12em;color:#8c928d}
.sponsor-cta a{font-size:10px;font-weight:800;color:var(--green)}
.sponsor-cta b{font-size:17px;margin-left:15px}
.sponsor-grid.sponsor-grid--single{
  grid-template-columns:1fr;max-width:300px;margin:0 auto;
  border-left:0;border-top:0
}
.sponsor-grid.sponsor-grid--single .sponsor{
  border:1px solid var(--line);min-height:190px;gap:16px
}
.sponsor-logo-chip{
  background:#fff;padding:16px 24px;display:flex;align-items:center;justify-content:center;
  width:100%;max-width:210px
}
.sponsor-logo-chip img{display:block;width:100%;height:auto}

/* ---------- CONTACT ---------- */
.contact{min-height:600px;display:flex;align-items:center}
.contact-bg{background-position:center bottom}
.contact .section-overlay{
  background:linear-gradient(90deg,rgba(5,5,5,.96),rgba(5,5,5,.32) 82%),
             linear-gradient(0deg,rgba(5,5,5,.5),transparent)
}
.contact-content{position:relative;z-index:2;display:grid;grid-template-columns:1.2fr .8fr;gap:100px;align-items:center}
.contact h2{font-size:clamp(58px,6.2vw,92px);margin-bottom:24px}
.contact-points{border-left:1px solid var(--line);padding-left:40px}
.contact-points>div{display:flex;gap:18px;margin:24px 0}
.contact-points b{font-size:25px;color:var(--green)}
.contact-points strong{font-size:10px;display:block}
.contact-points small{display:block;color:#777d79;font-size:9px;margin-top:5px}
.contact-points--inline{
  border-left:0;padding-left:0;margin-top:34px;padding-top:26px;
  border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px 34px
}
.contact-points--inline>div{margin:0;flex:1 1 200px}

/* ---------- JOIN FORM ---------- */
.join-card{
  padding:32px 32px 30px;background:rgba(4,5,4,.9);border:1px solid rgba(17,163,45,.28);
  backdrop-filter:blur(9px);box-shadow:0 20px 70px rgba(0,0,0,.45)
}
.join-card h3{
  font:900 italic 25px/.9 "Barlow Condensed";text-transform:uppercase;
  margin:0 0 22px;color:#fff
}
.join-card h3 em{color:var(--green);font-style:italic}
.field{margin-bottom:16px}
.field label{
  display:block;font-size:9px;font-weight:800;letter-spacing:.1em;
  color:#9ca19d;margin-bottom:7px
}
.field input{
  width:100%;padding:12px 14px;background:rgba(255,255,255,.04);
  border:1px solid var(--line);color:#fff;font:13px Inter,Arial,sans-serif;transition:.2s
}
.field input:focus{outline:none;border-color:var(--green);background:rgba(17,163,45,.06)}
.field input::placeholder{color:#5c625e}
.join-form .g-recaptcha{margin:6px 0 20px;transform-origin:left top}
/* reCAPTCHA je skrytá (nie odstránená) - kým nie je nastavený reálny site key.
   Ak chceš checkbox opäť zobraziť, vymaž/zakomentuj toto pravidlo nižšie. */
.join-form .g-recaptcha{display:none !important}
.email-link{color:var(--green);font-weight:700;transition:.2s}
.email-link:hover{color:var(--green-bright);text-decoration:underline}
.join-note{margin:0 0 18px;font-size:9px;color:#6d746f;line-height:1.6}
.join-form .btn{width:100%;justify-content:center}

/* ---------- FOOTER ---------- */
footer{background:#030403;border-top:1px solid var(--line);padding:35px 0 18px}
.footer-grid{display:grid;grid-template-columns:150px 1fr 130px;align-items:center;gap:30px}
.footer-brand{width:140px}
.footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;font-size:8px;font-weight:800}
.footer-links i{font-style:normal;color:var(--green)}
.copyright{text-align:right;color:#555;font-size:8px;margin:28px 40px 0}

/* ---------- MOBILE ---------- */
@media(max-width:980px){
  .container{width:min(calc(100% - 36px),var(--max))}
  .site-header{height:78px}
  .header-inner{width:calc(100% - 36px)}
  .brand{width:134px;flex-basis:134px}
  .socials{display:none}
  .menu-toggle{
    margin-left:auto;display:flex;width:35px;height:35px;border:0;background:transparent;
    flex-direction:column;align-items:flex-end;justify-content:center;gap:5px;cursor:pointer;z-index:4
  }
  .menu-toggle span{display:block;height:2px;background:#fff;transition:.25s}
  .menu-toggle span:nth-child(1){width:25px}
  .menu-toggle span:nth-child(2){width:18px}
  .menu-toggle span:nth-child(3){width:25px}
  .menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .menu-toggle.open span:nth-child(2){opacity:0}
  .menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .nav{
    position:fixed;top:0;right:0;bottom:0;width:min(320px,82vw);
    margin:0;padding:105px 35px 35px;display:flex;flex-direction:column;
    align-items:flex-start;gap:5px;background:rgba(4,6,5,.97);
    border-left:1px solid rgba(17,163,45,.25);
    transform:translateX(100%);transition:transform .3s ease;
  }
  .nav.open{transform:translateX(0)}
  .nav a{font-size:14px;padding:12px 0}
  .hero{min-height:720px}
  .hero h1{font-size:76px}
  .hero-content{padding-top:95px}
  .about{padding:85px 0}
  .about-grid,.events-grid,.contact-content{grid-template-columns:1fr;gap:50px}
  .about-bg{opacity:.22}
  .feature-list{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}
  .events{padding:90px 0}
  .stats-grid{grid-template-columns:1fr 1fr}
  .stats-grid>div:nth-child(2){border-right:0}
  .gallery{padding:85px 0}
  .gallery figure{flex-basis:75%}
  .sponsors{padding:85px 0}
  .sponsors-head{grid-template-columns:1fr;gap:20px}
  .sponsor-grid{grid-template-columns:1fr 1fr}
  .contact{padding:85px 0}
  .contact-points{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}
  .footer-grid{grid-template-columns:1fr;text-align:center}
  .footer-brand{margin:auto}
  .copyright{text-align:center;margin:25px 0 0}
}
@media(max-width:560px){
  .hero h1{font-size:58px}
  .hero-actions{flex-direction:column;align-items:flex-start}
  .hero-badge{width:90px;height:90px;font-size:13px;right:6%;bottom:9%}
  .events-grid{gap:35px}
  .event-card{padding:8px 14px}
  .gallery-head{align-items:flex-start;flex-direction:column;gap:25px}
  .gallery figure{flex-basis:88%}
  .sponsor-grid{grid-template-columns:1fr}
  .sponsor{min-height:125px}
  .sponsor-cta{align-items:flex-start;gap:18px;flex-direction:column}
  .join-card{padding:24px 20px}
}
