/* ============================================================
   ElitePlay — World-Class Premium Sports Gaming Platform
   Custom CSS Design System v2.0
   ============================================================ */

/* ===== CSS CUSTOM PROPERTIES ===== */
:root {
  --gold-50:  #FFFDE7;
  --gold-100: #FFD54F;
  --gold-200: #FFC107;
  --gold-300: #F4B400;
  --gold-400: #F59E0B;
  --gold-glow: rgba(255,193,7,0.35);
  --gold-glow-strong: rgba(255,193,7,0.6);
  --dark-50:  #2a2a2a;
  --dark-100: #1e1e1e;
  --dark-200: #161616;
  --dark-300: #111111;
  --dark-400: #080808;
  --dark-500: #050505;
  --purple:   #8B5CF6;
  --purple-light: #a78bfa;
  --purple-glow:  rgba(139,92,246,0.35);
  --orange:   #F97316;
  --orange-glow:  rgba(249,115,22,0.3);
  --blue-neon: #06B6D4;
  --blue-glow: rgba(6,182,212,0.3);
  --red-neon:  #EF4444;
  --green-neon: #22C55E;
  --glass-bg:  rgba(255,255,255,0.028);
  --glass-bg-hover: rgba(255,255,255,0.055);
  --glass-border: rgba(255,193,7,0.1);
  --glass-border-hover: rgba(255,193,7,0.28);
  --blur-lg:   blur(24px);
  --blur-md:   blur(16px);
  --blur-sm:   blur(8px);
  --ease-smooth: cubic-bezier(0.25,0.46,0.45,0.94);
  --ease-bounce: cubic-bezier(0.34,1.56,0.64,1);
  --ease-out:   cubic-bezier(0.0,0.0,0.2,1);
  --t-fast:  all 0.2s ease;
  --t-med:   all 0.35s var(--ease-smooth);
  --t-slow:  all 0.5s var(--ease-smooth);
  --t-bounce: all 0.5s var(--ease-bounce);
}

/* ===== BASE RESET ===== */
*,*::before,*::after { box-sizing: border-box; margin:0; padding:0; }
html { scroll-behavior: smooth; overflow-x: hidden; font-size: 16px; }
body {
  background: var(--dark-400);
  color: #fff;
  font-family: 'Inter', sans-serif;
  line-height: 1.65;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
img { max-width:100%; height:auto; display:block; }
a { text-decoration:none; color:inherit; }
ul,ol { list-style:none; }
button { cursor:pointer; border:none; background:none; font-family:inherit; color:inherit; }
input,textarea { font-family:inherit; }

/* ===== SCROLLBAR ===== */
::-webkit-scrollbar { width:5px; }
::-webkit-scrollbar-track { background:var(--dark-400); }
::-webkit-scrollbar-thumb { background:linear-gradient(180deg,var(--gold-200),var(--gold-300)); border-radius:3px; }
::-webkit-scrollbar-thumb:hover { background:var(--gold-100); }

/* ===== SCROLL PROGRESS ===== */
#scroll-progress {
  position:fixed; top:0; left:0; height:3px; width:0%;
  background:linear-gradient(90deg,var(--purple),var(--gold-200),var(--orange));
  z-index:9999;
  box-shadow:0 0 12px var(--gold-glow), 0 0 24px rgba(255,193,7,0.15);
  transition:width 0.08s linear;
}

/* ===== LOADING SCREEN ===== */
#loader {
  position:fixed; inset:0;
  background:var(--dark-500);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  z-index:99999;
  transition:opacity 0.9s ease, visibility 0.9s ease;
}
#loader.hidden { opacity:0; visibility:hidden; pointer-events:none; }

.loader-rings {
  position:relative; width:130px; height:130px;
  display:flex; align-items:center; justify-content:center;
  margin-bottom:2.5rem;
}
.lr {
  position:absolute; border-radius:50%; border-style:solid;
  border-color:transparent; animation:spin-cw linear infinite;
}
.lr-1 { width:130px;height:130px; border-top-color:var(--gold-200); border-width:2.5px; animation-duration:1.4s; }
.lr-2 { width:105px;height:105px; border-right-color:var(--purple); border-width:2px; animation-duration:1s; animation-direction:reverse; }
.lr-3 { width:82px;height:82px; border-bottom-color:var(--blue-neon); border-width:2px; animation-duration:1.7s; }

.loader-logo-img {
  width:100px; height:100px; border-radius:50%; object-fit:cover;
  position:relative; z-index:2;
  border:2px solid rgba(255,193,7,0.4);
  box-shadow:0 0 40px rgba(255,193,7,0.4), 0 0 80px rgba(255,193,7,0.15);
  animation:logo-glow-pulse 2s ease-in-out infinite;
}

.loader-tagline {
  font-family:'Rajdhani',sans-serif;
  font-size:0.75rem; letter-spacing:0.3em; text-transform:uppercase;
  color:rgba(255,255,255,0.35); margin-bottom:2.5rem;
}
.loader-bar { width:260px; height:2px; background:rgba(255,255,255,0.07); border-radius:2px; overflow:hidden; }
.loader-fill {
  height:100%; width:0%;
  background:linear-gradient(90deg,var(--purple),var(--gold-200),var(--orange));
  border-radius:2px; box-shadow:0 0 8px var(--gold-glow);
  transition:width 0.04s linear;
}
.loader-pct {
  margin-top:0.75rem;
  font-family:'Orbitron',sans-serif; font-size:0.7rem; letter-spacing:0.25em;
  color:rgba(255,255,255,0.35);
}

/* ===== PARTICLE CANVAS ===== */
#particle-canvas {
  position:fixed; top:0; left:0; width:100%; height:100%;
  pointer-events:none; z-index:0;
}

/* ===== MOUSE GLOW ===== */
#mouse-glow {
  position:fixed; width:700px; height:700px; border-radius:50%;
  background:radial-gradient(circle,rgba(255,193,7,0.05) 0%,transparent 70%);
  pointer-events:none; z-index:1;
  transform:translate(-50%,-50%);
  transition:left 0.12s ease, top 0.12s ease;
}

/* ===== NAVBAR ===== */
#navbar {
  position:fixed; top:0; left:0; right:0; z-index:1000;
  height:78px; padding:0 2.5rem;
  display:flex; align-items:center; justify-content:space-between;
  transition:var(--t-med);
}
#navbar.scrolled {
  background:rgba(8,8,8,0.94);
  backdrop-filter:var(--blur-lg); -webkit-backdrop-filter:var(--blur-lg);
  border-bottom:1px solid rgba(255,193,7,0.08);
  box-shadow:0 4px 40px rgba(0,0,0,0.6);
}
.nav-logo {
  font-family:'Orbitron',sans-serif; font-size:1.45rem; font-weight:900;
  letter-spacing:0.04em; display:flex; align-items:center; gap:0.75rem;
  text-decoration:none;
}
.nav-logo-icon-wrap {
  position:relative; width:64px; height:64px;
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.nav-logo-img {
  width:56px; height:56px; border-radius:50%; object-fit:cover;
  border:2px solid rgba(255,193,7,0.5);
  box-shadow:0 0 22px rgba(255,193,7,0.45), 0 0 44px rgba(255,193,7,0.15);
  position:relative; z-index:2;
  transition:transform 0.4s var(--ease-bounce), box-shadow 0.4s ease;
}
.nav-logo:hover .nav-logo-img {
  transform:scale(1.08) rotate(6deg);
  box-shadow:0 0 38px rgba(255,193,7,0.65), 0 0 72px rgba(255,193,7,0.22);
}
.nav-logo-ring {
  position:absolute; inset:-5px; border-radius:50%;
  border:2px solid rgba(255,193,7,0.35);
  animation:spin-cw 6s linear infinite;
  border-top-color:var(--gold-200);
  border-right-color:transparent;
}
.nav-logo-ring::before {
  content:''; position:absolute; width:6px; height:6px; border-radius:50%;
  background:var(--gold-200); box-shadow:0 0 10px var(--gold-glow);
  top:-4px; left:50%; transform:translateX(-50%);
}
.nav-brand-text {
  display:flex; flex-direction:column; line-height:1.1;
}
.nav-brand-main {
  font-family:'Orbitron',sans-serif; font-size:1.05rem; font-weight:900;
  letter-spacing:0.05em; color:#fff;
}
.nav-brand-sub {
  font-family:'Rajdhani',sans-serif; font-size:0.6rem; font-weight:600;
  letter-spacing:0.18em; color:rgba(255,193,7,0.6); text-transform:uppercase;
  margin-top:1px;
}
.nav-logo .g, .nav-brand-main .g { color:var(--gold-200); }
.nav-links {
  display:flex; align-items:center; gap:2.25rem;
}
.nav-links a {
  font-size:0.82rem; font-weight:600; letter-spacing:0.07em; text-transform:uppercase;
  color:rgba(255,255,255,0.65); position:relative; transition:color 0.25s ease;
}
.nav-links a::after {
  content:''; position:absolute; bottom:-5px; left:0; width:0; height:2px;
  background:linear-gradient(90deg,var(--gold-200),var(--gold-300));
  border-radius:1px; box-shadow:0 0 8px var(--gold-glow);
  transition:width 0.3s var(--ease-smooth);
}
.nav-links a:hover { color:#fff; }
.nav-links a:hover::after { width:100%; }
.nav-actions { display:flex; align-items:center; gap:0.85rem; }
.btn-nav-login {
  padding:0.45rem 1.2rem; font-size:0.82rem; font-weight:600; letter-spacing:0.05em;
  border-radius:8px; border:1px solid rgba(255,255,255,0.12);
  color:rgba(255,255,255,0.75); transition:var(--t-fast);
}
.btn-nav-login:hover { color:#fff; border-color:rgba(255,193,7,0.35); box-shadow:0 0 12px rgba(255,193,7,0.15); }
.btn-nav-join {
  padding:0.48rem 1.4rem; font-size:0.82rem; font-weight:700; letter-spacing:0.07em;
  text-transform:uppercase; color:#000;
  background:linear-gradient(135deg,var(--gold-100),var(--gold-200),var(--gold-300));
  border-radius:9px; box-shadow:0 0 20px rgba(255,193,7,0.25);
  transition:var(--t-med); position:relative; overflow:hidden;
}
.btn-nav-join:hover {
  transform:translateY(-2px);
  box-shadow:0 0 35px rgba(255,193,7,0.45), 0 6px 20px rgba(0,0,0,0.4);
}
.nav-lang {
  display:flex; align-items:center; gap:0.35rem;
  font-size:0.78rem; color:rgba(255,255,255,0.5); cursor:pointer;
  padding:0.38rem 0.7rem; border-radius:7px;
  border:1px solid rgba(255,255,255,0.07);
  transition:var(--t-fast);
}
.nav-lang:hover { color:#fff; border-color:rgba(255,193,7,0.25); }
.nav-hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; padding:4px; }
.nav-hamburger span {
  display:block; width:24px; height:2px; background:#fff;
  border-radius:2px; transition:var(--t-med);
}
.nav-hamburger.open span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.nav-hamburger.open span:nth-child(2) { opacity:0; transform:translateX(-8px); }
.nav-hamburger.open span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

/* Mobile menu — hidden on desktop, slides down on mobile */
@media (min-width:769px) {
  .mobile-nav { display:none !important; }
}
.mobile-nav {
  position:fixed; top:78px; left:0; right:0;
  background:rgba(8,8,8,0.97); backdrop-filter:var(--blur-lg);
  border-bottom:1px solid rgba(255,193,7,0.08);
  padding:1.5rem 2rem 2rem; z-index:998;
  max-height:0; overflow:hidden;
  transition:max-height 0.4s var(--ease-smooth);
}
.mobile-nav.open { max-height:500px; }
.mobile-nav .nav-links { flex-direction:column; align-items:flex-start; gap:1.2rem; }
.mobile-nav .nav-links a { font-size:1rem; }
.mobile-nav .nav-actions { margin-top:1.5rem; flex-direction:column; width:100%; gap:0.75rem; }
.mobile-nav .btn-nav-login,
.mobile-nav .btn-nav-join { text-align:center; width:100%; padding:0.75rem; }

/* ===== TYPOGRAPHY ===== */
.font-orbitron { font-family:'Orbitron',sans-serif; }
.font-rajdhani { font-family:'Rajdhani',sans-serif; }

.gold-text {
  background:linear-gradient(135deg,var(--gold-100) 0%,var(--gold-200) 50%,var(--gold-300) 100%);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.gold-shimmer {
  background:linear-gradient(90deg,var(--gold-300) 0%,var(--gold-100) 30%,var(--gold-200) 60%,var(--gold-100) 80%,var(--gold-300) 100%);
  background-size:300% auto;
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
  animation:shimmer 5s linear infinite;
}
.purple-text {
  background:linear-gradient(135deg,#c4b5fd,var(--purple));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.blue-text {
  background:linear-gradient(135deg,#67e8f9,var(--blue-neon));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}

/* ===== SECTION LAYOUT ===== */
.section-py { padding-top:110px; padding-bottom:110px; }
.section-py-sm { padding-top:70px; padding-bottom:70px; }
.container { max-width:1300px; margin:0 auto; padding:0 2rem; }
.section-head { text-align:center; margin-bottom:4.5rem; }

.badge-pill {
  display:inline-flex; align-items:center; gap:0.5rem;
  padding:0.38rem 1rem;
  background:rgba(255,193,7,0.07); border:1px solid rgba(255,193,7,0.18);
  border-radius:100px;
  font-family:'Rajdhani',sans-serif; font-size:0.75rem; font-weight:700;
  letter-spacing:0.18em; text-transform:uppercase; color:var(--gold-200);
}
.badge-pill .dot {
  width:6px; height:6px; background:var(--gold-200); border-radius:50%;
  box-shadow:0 0 6px var(--gold-glow); animation:dot-pulse 2s infinite;
}
.badge-pill .live-dot { background:var(--green-neon); box-shadow:0 0 8px rgba(34,197,94,0.6); }

.section-title {
  font-family:'Orbitron',sans-serif;
  font-size:clamp(1.85rem,3.5vw,3.2rem);
  font-weight:900; line-height:1.1; letter-spacing:-0.015em;
}
.section-sub {
  font-family:'Rajdhani',sans-serif;
  font-size:clamp(1rem,1.5vw,1.2rem); font-weight:400;
  color:rgba(255,255,255,0.55); line-height:1.75; letter-spacing:0.02em;
}
.divider-gold {
  width:56px; height:3px; margin:1rem auto 0;
  background:linear-gradient(90deg,var(--gold-200),var(--gold-300));
  border-radius:2px; box-shadow:0 0 10px var(--gold-glow);
}

/* ===== BUTTONS ===== */
.btn-primary {
  display:inline-flex; align-items:center; gap:0.5rem;
  padding:0.88rem 2.1rem;
  font-family:'Rajdhani',sans-serif; font-size:0.95rem; font-weight:700;
  letter-spacing:0.09em; text-transform:uppercase; color:#000;
  background:linear-gradient(135deg,var(--gold-100),var(--gold-200),var(--gold-300));
  border-radius:12px; position:relative; overflow:hidden;
  box-shadow:0 0 28px rgba(255,193,7,0.28), 0 4px 20px rgba(0,0,0,0.3);
  transition:var(--t-slow);
}
.btn-primary::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,0.15),transparent);
  opacity:0; transition:opacity 0.3s ease;
}
.btn-primary:hover {
  transform:translateY(-4px) scale(1.02);
  box-shadow:0 0 45px rgba(255,193,7,0.5), 0 10px 35px rgba(0,0,0,0.4);
}
.btn-primary:hover::after { opacity:1; }
.btn-primary:active { transform:translateY(-1px) scale(0.99); }

.btn-secondary {
  display:inline-flex; align-items:center; gap:0.5rem;
  padding:0.88rem 2.1rem;
  font-family:'Rajdhani',sans-serif; font-size:0.95rem; font-weight:700;
  letter-spacing:0.09em; text-transform:uppercase; color:#fff;
  background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.14);
  border-radius:12px; overflow:hidden; backdrop-filter:blur(10px);
  transition:var(--t-slow);
}
.btn-secondary:hover {
  transform:translateY(-4px);
  border-color:rgba(255,193,7,0.35); color:var(--gold-100);
  box-shadow:0 0 22px rgba(255,193,7,0.18), 0 10px 35px rgba(0,0,0,0.35);
  background:rgba(255,193,7,0.05);
}

/* ===== GLASS CARDS ===== */
.glass {
  background:var(--glass-bg);
  backdrop-filter:var(--blur-md); -webkit-backdrop-filter:var(--blur-md);
  border:1px solid var(--glass-border); border-radius:18px;
  transition:var(--t-slow);
}
.glass:hover {
  background:var(--glass-bg-hover); border-color:var(--glass-border-hover);
  box-shadow:0 16px 50px rgba(0,0,0,0.45), inset 0 1px 0 rgba(255,255,255,0.06);
  transform:translateY(-5px);
}
.glass-purple {
  background:rgba(139,92,246,0.045);
  border:1px solid rgba(139,92,246,0.18); border-radius:18px;
  backdrop-filter:var(--blur-md); transition:var(--t-slow);
}
.glass-purple:hover { border-color:rgba(139,92,246,0.4); box-shadow:0 0 30px var(--purple-glow); transform:translateY(-4px); }

/* ===== HERO ===== */
.hero-section {
  min-height:100vh; padding-top:78px; position:relative;
  display:flex; align-items:center; overflow:hidden;
}
.hero-bg {
  position:absolute; inset:0; z-index:0;
  background:
    radial-gradient(ellipse 65% 55% at 70% 50%,rgba(255,193,7,0.055) 0%,transparent 58%),
    radial-gradient(ellipse 45% 45% at 15% 35%,rgba(139,92,246,0.05) 0%,transparent 50%),
    radial-gradient(ellipse 40% 50% at 50% 90%,rgba(6,182,212,0.04) 0%,transparent 50%),
    linear-gradient(180deg,var(--dark-400) 0%,var(--dark-500) 100%);
}
.hero-grid {
  position:absolute; inset:0; z-index:0;
  background-image:
    linear-gradient(rgba(255,193,7,0.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,193,7,0.025) 1px,transparent 1px);
  background-size:70px 70px;
  mask-image:radial-gradient(ellipse at 50% 60%,black 35%,transparent 75%);
}

.hero-badge {
  display:inline-flex; align-items:center; gap:0.5rem; margin-bottom:1.75rem;
  padding:0.45rem 1rem;
  background:rgba(255,193,7,0.08); border:1px solid rgba(255,193,7,0.22);
  border-radius:100px;
  font-family:'Rajdhani',sans-serif; font-size:0.78rem; font-weight:700;
  letter-spacing:0.18em; text-transform:uppercase; color:var(--gold-200);
}
.hero-badge .live-dot {
  width:8px; height:8px; background:var(--green-neon); border-radius:50%;
  box-shadow:0 0 8px rgba(34,197,94,0.7); animation:dot-pulse 1.6s infinite;
}
.hero-h1 {
  font-family:'Orbitron',sans-serif;
  font-size:clamp(2.8rem,5.5vw,5.5rem);
  font-weight:900; line-height:1.0; letter-spacing:-0.025em;
  margin-bottom:1.5rem;
}
.hero-h1 .word-block { display:block; overflow:hidden; }
.hero-h1 .inner { display:inline-block; }
.hero-sub {
  font-size:1.05rem; color:rgba(255,255,255,0.58);
  line-height:1.85; max-width:540px; margin-bottom:2.75rem;
}
.hero-ctas { display:flex; align-items:center; gap:1.25rem; flex-wrap:wrap; }
.hero-stats {
  display:flex; flex-wrap:wrap; gap:2.5rem; margin-top:3.5rem;
  padding-top:2rem; border-top:1px solid rgba(255,255,255,0.07);
}
.hero-stat-num {
  font-family:'Orbitron',sans-serif; font-size:1.9rem; font-weight:900; line-height:1;
}
.hero-stat-lbl { font-size:0.78rem; color:rgba(255,255,255,0.42); letter-spacing:0.06em; margin-top:0.25rem; }

/* Hero Image Area */
.hero-img-wrap {
  position:relative; display:flex; align-items:center; justify-content:center;
}
.ring-outer {
  position:absolute; width:540px; height:540px; border-radius:50%;
  border:1px solid rgba(255,193,7,0.07); animation:spin-cw 22s linear infinite;
}
.ring-outer::before, .ring-outer::after {
  content:''; position:absolute; width:10px; height:10px; border-radius:50%;
  background:var(--gold-200); box-shadow:0 0 12px var(--gold-glow);
}
.ring-outer::before { top:8px; left:50%; transform:translateX(-50%); }
.ring-outer::after { bottom:8px; right:50%; transform:translateX(50%); }
.ring-mid {
  position:absolute; width:440px; height:440px; border-radius:50%;
  border:1px dashed rgba(139,92,246,0.18); animation:spin-cw 16s linear infinite reverse;
}
.ring-inner {
  position:absolute; width:350px; height:350px; border-radius:50%;
  border:1px solid rgba(6,182,212,0.1); animation:spin-cw 10s linear infinite;
}
.hero-photo {
  width:370px; height:370px; border-radius:50%; overflow:hidden; position:relative; z-index:2;
  border:3px solid rgba(255,193,7,0.18);
  box-shadow:0 0 70px rgba(255,193,7,0.12), 0 0 140px rgba(139,92,246,0.06);
}
.hero-photo img { width:100%; height:100%; object-fit:cover; object-position:center top; }

.float-el {
  position:absolute; z-index:3; animation:float-y 3.5s ease-in-out infinite;
}
.float-el:nth-child(even) { animation:float-y 4.2s ease-in-out infinite reverse; }
.float-badge {
  padding:0.55rem 1rem; border-radius:12px;
  font-family:'Rajdhani',sans-serif; font-size:0.8rem; font-weight:700;
  display:flex; align-items:center; gap:0.4rem; white-space:nowrap;
  backdrop-filter:var(--blur-sm);
}
.fb-gold { background:rgba(255,193,7,0.1); border:1px solid rgba(255,193,7,0.28); color:var(--gold-200); }
.fb-purple { background:rgba(139,92,246,0.1); border:1px solid rgba(139,92,246,0.28); color:#c4b5fd; }
.fb-blue { background:rgba(6,182,212,0.1); border:1px solid rgba(6,182,212,0.28); color:var(--blue-neon); }
.fb-green { background:rgba(34,197,94,0.1); border:1px solid rgba(34,197,94,0.28); color:var(--green-neon); }
.fb-red { background:rgba(239,68,68,0.1); border:1px solid rgba(239,68,68,0.28); color:#f87171; }

/* ===== TRUSTED BY ===== */
.trusted-section {
  padding:48px 0; overflow:hidden;
  border-top:1px solid rgba(255,255,255,0.04);
  border-bottom:1px solid rgba(255,255,255,0.04);
}
.marquee-outer { overflow:hidden; position:relative; }
.marquee-outer::before,
.marquee-outer::after {
  content:''; position:absolute; top:0; bottom:0; width:160px; z-index:2; pointer-events:none;
}
.marquee-outer::before { left:0; background:linear-gradient(90deg,var(--dark-400),transparent); }
.marquee-outer::after { right:0; background:linear-gradient(-90deg,var(--dark-400),transparent); }
.marquee-track {
  display:flex; gap:3.5rem; width:max-content; animation:marquee 28s linear infinite;
}
.marquee-track.rev { animation:marquee-rev 33s linear infinite; }
.m-item {
  display:flex; align-items:center; gap:0.65rem; white-space:nowrap;
  font-family:'Orbitron',sans-serif; font-size:0.82rem; font-weight:700;
  letter-spacing:0.12em; text-transform:uppercase; color:rgba(255,255,255,0.25);
  transition:color 0.3s ease;
}
.m-item i { font-size:1.1rem; color:rgba(255,193,7,0.25); transition:color 0.3s ease; }
.m-item:hover { color:rgba(255,255,255,0.65); }
.m-item:hover i { color:var(--gold-200); }
.m-sep { color:rgba(255,193,7,0.15); font-size:0.6rem; }

/* ===== ABOUT ===== */
.about-img-wrap { position:relative; }
.about-img-main {
  width:100%; border-radius:24px; overflow:hidden;
  border:1px solid rgba(255,193,7,0.1);
  box-shadow:0 30px 80px rgba(0,0,0,0.5);
}
.about-img-main img { width:100%; height:100%; object-fit:cover; }
.about-stat-float {
  position:absolute; padding:1rem 1.25rem; border-radius:14px;
  backdrop-filter:var(--blur-md);
}

/* Timeline */
.timeline { display:flex; flex-direction:column; gap:0; }
.tl-item { position:relative; padding-left:2.25rem; padding-bottom:2rem; }
.tl-item:last-child { padding-bottom:0; }
.tl-item::before {
  content:''; position:absolute; left:0.42rem; top:1.4rem; bottom:0; width:1px;
  background:linear-gradient(180deg,rgba(255,193,7,0.3),transparent);
}
.tl-item:last-child::before { display:none; }
.tl-dot {
  position:absolute; left:0; top:0.3rem; width:14px; height:14px; border-radius:50%;
  background:linear-gradient(135deg,var(--gold-200),var(--gold-300));
  box-shadow:0 0 10px var(--gold-glow), 0 0 20px rgba(255,193,7,0.1);
}
.tl-year {
  font-family:'Orbitron',sans-serif; font-size:0.72rem; font-weight:700;
  color:var(--gold-200); letter-spacing:0.12em; margin-bottom:0.2rem;
}
.tl-title { font-family:'Rajdhani',sans-serif; font-size:1rem; font-weight:700; margin-bottom:0.25rem; }
.tl-desc { font-size:0.855rem; color:rgba(255,255,255,0.48); line-height:1.65; }

/* ===== WHY CHOOSE ===== */
.why-card {
  padding:2rem 1.75rem; border-radius:20px;
  background:rgba(255,255,255,0.025); border:1px solid rgba(255,255,255,0.055);
  position:relative; overflow:hidden; transition:var(--t-slow); cursor:default;
}
.why-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg,transparent,var(--accent-color,var(--gold-200)),transparent);
  opacity:0; transition:opacity 0.4s ease;
}
.why-card::after {
  content:''; position:absolute; inset:0; opacity:0;
  background:radial-gradient(ellipse at top left,rgba(255,193,7,0.04),transparent 70%);
  transition:opacity 0.4s ease;
}
.why-card:hover { transform:translateY(-10px) scale(1.01); border-color:rgba(255,255,255,0.1); background:rgba(255,255,255,0.045); box-shadow:0 25px 70px rgba(0,0,0,0.55); }
.why-card:hover::before, .why-card:hover::after { opacity:1; }
.wi {
  width:52px; height:52px; border-radius:14px;
  display:flex; align-items:center; justify-content:center; font-size:1.35rem;
  margin-bottom:1.3rem; transition:transform 0.35s var(--ease-bounce);
}
.why-card:hover .wi { transform:scale(1.12) rotate(-6deg); }
.wt { font-family:'Rajdhani',sans-serif; font-size:1.1rem; font-weight:700; margin-bottom:0.55rem; letter-spacing:0.02em; }
.wd { font-size:0.875rem; color:rgba(255,255,255,0.48); line-height:1.7; }

/* ===== FEATURES ===== */
.feat-card {
  padding:1.65rem; border-radius:16px;
  background:rgba(255,255,255,0.02); border:1px solid rgba(255,255,255,0.055);
  display:flex; align-items:flex-start; gap:1.15rem;
  transition:var(--t-med); position:relative; overflow:hidden;
}
.feat-card::before {
  content:''; position:absolute; left:0; top:0; bottom:0; width:3px;
  background:linear-gradient(180deg,var(--feat-color,var(--gold-200)),transparent);
  opacity:0; transition:opacity 0.35s ease;
  border-radius:0 2px 2px 0;
}
.feat-card:hover { border-color:rgba(255,193,7,0.18); background:rgba(255,193,7,0.02); transform:translateX(5px); box-shadow:-5px 0 25px rgba(255,193,7,0.07); }
.feat-card:hover::before { opacity:1; }
.fi { width:46px; height:46px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:1.2rem; flex-shrink:0; }
.fn { font-family:'Rajdhani',sans-serif; font-size:1rem; font-weight:700; margin-bottom:0.35rem; }
.fd { font-size:0.84rem; color:rgba(255,255,255,0.46); line-height:1.6; }
.live-tag {
  display:inline-flex; align-items:center; gap:0.28rem;
  padding:0.18rem 0.55rem;
  background:rgba(34,197,94,0.1); border:1px solid rgba(34,197,94,0.2);
  border-radius:100px; font-size:0.68rem; font-weight:700; color:var(--green-neon);
  letter-spacing:0.1em; text-transform:uppercase; margin-top:0.45rem;
}

/* ===== SPORTS CARDS ===== */
.sport-card {
  position:relative; border-radius:18px; overflow:hidden; cursor:pointer;
  transition:var(--t-slow); aspect-ratio:3/4;
  border:1px solid rgba(255,255,255,0.04);
}
.sport-card img { width:100%; height:100%; object-fit:cover; transition:transform 0.7s var(--ease-smooth); }
.sport-card:hover img { transform:scale(1.1); }
.sport-overlay {
  position:absolute; inset:0;
  background:linear-gradient(0deg,rgba(0,0,0,0.92) 0%,rgba(0,0,0,0.25) 55%,transparent 100%);
  display:flex; flex-direction:column; justify-content:flex-end;
  padding:1.35rem; transition:var(--t-med);
}
.sport-card:hover .sport-overlay { background:linear-gradient(0deg,rgba(0,0,0,0.97) 0%,rgba(255,193,7,0.04) 55%,transparent 100%); }
.sport-ico { font-size:1.9rem; margin-bottom:0.35rem; transition:transform 0.3s ease; }
.sport-card:hover .sport-ico { transform:scale(1.15); }
.sport-name { font-family:'Orbitron',sans-serif; font-size:0.88rem; font-weight:700; letter-spacing:0.05em; margin-bottom:0.2rem; }
.sport-meta { font-size:0.73rem; color:rgba(255,255,255,0.45); }
.sport-pin {
  position:absolute; top:0.8rem; right:0.8rem;
  width:34px; height:34px; border-radius:9px;
  background:rgba(255,193,7,0.12); border:1px solid rgba(255,193,7,0.25);
  display:flex; align-items:center; justify-content:center;
  font-size:0.75rem; color:var(--gold-200);
  opacity:0; transform:scale(0.7) rotate(-15deg);
  transition:var(--t-bounce);
}
.sport-card:hover .sport-pin { opacity:1; transform:scale(1) rotate(0deg); }
.sport-glow-border {
  position:absolute; inset:0; border-radius:18px;
  border:2px solid transparent;
  background:linear-gradient(var(--dark-400),var(--dark-400)) padding-box,
             linear-gradient(135deg,transparent 30%,rgba(255,193,7,0.35),transparent 70%) border-box;
  opacity:0; transition:opacity 0.4s ease; pointer-events:none;
}
.sport-card:hover .sport-glow-border { opacity:1; }

/* ===== STATISTICS ===== */
.stats-bg {
  position:absolute; inset:0;
  background:linear-gradient(135deg,rgba(139,92,246,0.03),rgba(255,193,7,0.03));
  border-top:1px solid rgba(255,255,255,0.04);
  border-bottom:1px solid rgba(255,255,255,0.04);
}
.stat-box { text-align:center; padding:2.5rem 1.5rem; }
.stat-num {
  font-family:'Orbitron',sans-serif; font-size:clamp(2.2rem,4vw,3.3rem); font-weight:900; line-height:1;
  margin-bottom:0.45rem;
}
.stat-lbl { font-family:'Rajdhani',sans-serif; font-size:0.88rem; font-weight:600; color:rgba(255,255,255,0.42); letter-spacing:0.1em; text-transform:uppercase; margin-bottom:1.5rem; }
.prog-track { width:100%; height:3px; background:rgba(255,255,255,0.06); border-radius:2px; overflow:hidden; }
.prog-fill { height:100%; width:0; border-radius:2px; transition:width 1.8s cubic-bezier(0.25,0.46,0.45,0.94); }

/* ===== VIDEO ===== */
.video-wrap {
  position:relative; border-radius:22px; overflow:hidden; background:#000;
  box-shadow:0 0 0 1px rgba(255,193,7,0.08), 0 0 100px rgba(255,193,7,0.07), 0 50px 120px rgba(0,0,0,0.7);
}
.video-overlay-layer {
  position:absolute; inset:0; z-index:2;
  background:rgba(0,0,0,0.45);
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1rem;
  cursor:pointer; transition:opacity 0.5s ease;
}
.video-overlay-layer.hidden { opacity:0; pointer-events:none; }
.play-ring {
  width:86px; height:86px; border-radius:50%; position:relative;
  display:flex; align-items:center; justify-content:center;
  background:rgba(255,193,7,0.1); border:2px solid rgba(255,193,7,0.35);
  box-shadow:0 0 50px rgba(255,193,7,0.18);
  animation:glow-pulse 2.5s infinite; transition:var(--t-med);
}
.play-ring:hover { transform:scale(1.1); background:rgba(255,193,7,0.18); box-shadow:0 0 70px rgba(255,193,7,0.3); }
.play-ring i { font-size:1.9rem; color:var(--gold-200); margin-left:5px; }
.play-ripple {
  position:absolute; inset:-12px; border-radius:50%;
  border:2px solid rgba(255,193,7,0.2);
  animation:ripple-ring 2s ease-out infinite;
}
.video-label { font-family:'Rajdhani',sans-serif; font-size:0.9rem; font-weight:700; color:rgba(255,255,255,0.6); letter-spacing:0.12em; text-transform:uppercase; }
.vid-frame { width:100%; aspect-ratio:16/9; display:block; border:none; }
.vid-border-glow {
  position:absolute; inset:-2px; border-radius:24px; z-index:-1;
  background:linear-gradient(90deg,var(--gold-200),var(--purple),var(--blue-neon),var(--gold-200));
  background-size:300% 100%; animation:border-move 5s linear infinite;
}

/* ===== GALLERY ===== */
.gallery-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-template-rows:repeat(2,240px);
  gap:14px;
}
.g-item { border-radius:14px; overflow:hidden; position:relative; cursor:pointer; }
.g-item.big { grid-column:span 2; grid-row:span 2; }
.g-item img { width:100%; height:100%; object-fit:cover; transition:transform 0.7s var(--ease-smooth); }
.g-item:hover img { transform:scale(1.08); }
.g-over {
  position:absolute; inset:0;
  background:linear-gradient(0deg,rgba(0,0,0,0.75),transparent);
  opacity:0; transition:opacity 0.4s ease;
  display:flex; align-items:flex-end; padding:1.25rem;
}
.g-item:hover .g-over { opacity:1; }
.g-tag { font-family:'Rajdhani',sans-serif; font-size:0.8rem; font-weight:700; color:var(--gold-200); letter-spacing:0.1em; text-transform:uppercase; }
.g-plus {
  position:absolute; top:50%; left:50%; transform:translate(-50%,-50%) scale(0.8);
  width:42px; height:42px; border-radius:50%;
  background:rgba(255,255,255,0.15); border:2px solid rgba(255,255,255,0.3);
  display:flex; align-items:center; justify-content:center; font-size:1rem;
  opacity:0; transition:var(--t-bounce);
}
.g-item:hover .g-plus { opacity:1; transform:translate(-50%,-50%) scale(1); }

/* ===== TESTIMONIALS ===== */
.testi-card {
  padding:1.85rem 2rem; border-radius:18px;
  background:rgba(255,255,255,0.025); border:1px solid rgba(255,255,255,0.07);
  position:relative; overflow:hidden; height:100%;
}
.testi-card::before {
  content:'\201C'; position:absolute; top:-0.5rem; left:1.25rem;
  font-size:7rem; font-family:Georgia,serif;
  color:rgba(255,193,7,0.06); line-height:1; pointer-events:none;
}
.t-stars { display:flex; gap:0.22rem; margin-bottom:0.9rem; color:var(--gold-200); font-size:0.88rem; }
.t-text { font-size:0.93rem; line-height:1.8; color:rgba(255,255,255,0.7); margin-bottom:1.4rem; }
.t-author { display:flex; align-items:center; gap:0.75rem; }
.t-avatar { width:44px; height:44px; border-radius:50%; object-fit:cover; border:2px solid rgba(255,193,7,0.2); }
.t-name { font-family:'Rajdhani',sans-serif; font-weight:700; font-size:0.98rem; }
.t-role { font-size:0.79rem; color:rgba(255,255,255,0.38); }
.t-win { margin-left:auto; text-align:right; }
.t-win-num { font-family:'Orbitron',sans-serif; font-size:1rem; font-weight:700; color:var(--gold-200); }
.t-win-lbl { font-size:0.7rem; color:rgba(255,255,255,0.35); }

.swiper-pagination-bullet { background:rgba(255,255,255,0.3) !important; opacity:1 !important; }
.swiper-pagination-bullet-active { background:var(--gold-200) !important; box-shadow:0 0 8px var(--gold-glow) !important; }
.swiper-button-next,.swiper-button-prev {
  color:var(--gold-200) !important; background:rgba(255,193,7,0.08) !important;
  border:1px solid rgba(255,193,7,0.2) !important; width:44px !important; height:44px !important;
  border-radius:50% !important; transition:var(--t-fast) !important;
}
.swiper-button-next::after,.swiper-button-prev::after { font-size:0.95rem !important; font-weight:700 !important; }
.swiper-button-next:hover,.swiper-button-prev:hover { background:rgba(255,193,7,0.18) !important; box-shadow:0 0 15px var(--gold-glow) !important; }

/* ===== ACHIEVEMENTS ===== */
.ach-card {
  padding:1.85rem 1.5rem; border-radius:16px; text-align:center;
  background:rgba(255,255,255,0.02); border:1px solid rgba(255,255,255,0.055);
  transition:var(--t-med);
}
.ach-card:hover { border-color:rgba(255,193,7,0.2); background:rgba(255,193,7,0.02); transform:translateY(-5px); box-shadow:0 15px 50px rgba(0,0,0,0.45); }
.ach-icon { font-size:2.4rem; margin-bottom:0.65rem; display:block; filter:drop-shadow(0 0 10px rgba(255,193,7,0.25)); }
.trust-badge {
  display:flex; align-items:center; gap:0.75rem;
  padding:0.7rem 1.2rem; border-radius:12px;
  background:rgba(255,255,255,0.018); border:1px solid rgba(255,255,255,0.055);
  transition:var(--t-fast);
}
.trust-badge:hover { border-color:rgba(255,193,7,0.15); background:rgba(255,193,7,0.018); }
.tb-icon { font-size:1.5rem; color:var(--gold-200); }
.tb-name { font-family:'Rajdhani',sans-serif; font-size:0.92rem; font-weight:700; }
.tb-desc { font-size:0.76rem; color:rgba(255,255,255,0.38); }

/* ===== NEWS ===== */
.news-card {
  border-radius:18px; overflow:hidden;
  background:rgba(255,255,255,0.02); border:1px solid rgba(255,255,255,0.055);
  transition:var(--t-slow); display:flex; flex-direction:column;
  /* No data-aos — cards are always visible so images always render */
  opacity:1 !important; transform:none;
}
.news-card:hover { transform:translateY(-7px); border-color:rgba(255,193,7,0.15); box-shadow:0 25px 65px rgba(0,0,0,0.55); }
.nc-img { height:210px; overflow:hidden; position:relative; }
.nc-img img { width:100%; height:100%; object-fit:cover; transition:transform 0.7s ease; }
.news-card:hover .nc-img img { transform:scale(1.07); }
.nc-tag {
  position:absolute; top:1rem; left:1rem;
  padding:0.28rem 0.7rem; border-radius:100px; font-size:0.7rem; font-weight:700;
  letter-spacing:0.1em; text-transform:uppercase;
  background:rgba(255,193,7,0.15); border:1px solid rgba(255,193,7,0.3); color:var(--gold-200);
}
.nc-body { padding:1.5rem; flex:1; }
.nc-date { font-size:0.78rem; color:rgba(255,255,255,0.32); margin-bottom:0.65rem; display:flex; align-items:center; gap:0.35rem; }
.nc-title { font-family:'Rajdhani',sans-serif; font-size:1.05rem; font-weight:700; line-height:1.45; margin-bottom:0.65rem; color:#fff; transition:color 0.3s ease; }
.news-card:hover .nc-title { color:var(--gold-200); }
.nc-excerpt { font-size:0.85rem; color:rgba(255,255,255,0.42); line-height:1.7; }
.nc-foot {
  display:flex; align-items:center; justify-content:space-between;
  padding:0.9rem 1.5rem; border-top:1px solid rgba(255,255,255,0.045);
  font-size:0.8rem; color:rgba(255,255,255,0.35);
}
.nc-read { color:var(--gold-200); font-weight:700; font-family:'Rajdhani',sans-serif; font-size:0.82rem; letter-spacing:0.08em; text-transform:uppercase; display:flex; align-items:center; gap:0.3rem; }

/* ===== FAQ ===== */
.faq-item {
  border:1px solid rgba(255,255,255,0.055); border-radius:14px;
  overflow:hidden; margin-bottom:0.75rem; transition:border-color 0.3s ease;
}
.faq-item.open { border-color:rgba(255,193,7,0.2); box-shadow:0 0 20px rgba(255,193,7,0.04); }
.faq-q {
  display:flex; align-items:center; justify-content:space-between;
  padding:1.2rem 1.4rem; cursor:pointer; gap:1rem;
  font-family:'Rajdhani',sans-serif; font-size:1.02rem; font-weight:700; letter-spacing:0.02em;
  transition:color 0.3s ease;
}
.faq-item.open .faq-q { color:var(--gold-200); }
.faq-ico {
  width:30px; height:30px; border-radius:8px; flex-shrink:0;
  background:rgba(255,255,255,0.045); border:1px solid rgba(255,255,255,0.07);
  display:flex; align-items:center; justify-content:center; font-size:0.8rem;
  transition:var(--t-med);
}
.faq-item.open .faq-ico {
  background:rgba(255,193,7,0.1); border-color:rgba(255,193,7,0.28); color:var(--gold-200);
  transform:rotate(45deg);
}
.faq-a { max-height:0; overflow:hidden; transition:max-height 0.42s var(--ease-smooth),padding 0.42s ease; }
.faq-item.open .faq-a { max-height:280px; }
.faq-a-inner { padding:0 1.4rem 1.2rem; font-size:0.89rem; color:rgba(255,255,255,0.52); line-height:1.8; }

/* ===== DOWNLOAD APP ===== */
.download-section { position:relative; overflow:hidden; }
.dl-bg {
  position:absolute; inset:0;
  background:radial-gradient(ellipse 55% 65% at 80% 50%,rgba(255,193,7,0.045) 0%,transparent 60%),
             radial-gradient(ellipse 45% 45% at 20% 50%,rgba(139,92,246,0.045) 0%,transparent 55%);
}
.app-store-btn {
  display:inline-flex; align-items:center; gap:0.8rem;
  padding:0.75rem 1.5rem; border-radius:13px;
  background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.1);
  transition:var(--t-med); cursor:pointer;
}
.app-store-btn:hover { border-color:rgba(255,193,7,0.25); background:rgba(255,193,7,0.04); transform:translateY(-3px); }
.asb-ico { font-size:1.8rem; }
.asb-small { font-size:0.68rem; color:rgba(255,255,255,0.45); margin-bottom:0.1rem; }
.asb-name, .asb-store { font-family:'Rajdhani',sans-serif; font-size:1.05rem; font-weight:700; }
.qr-box {
  width:115px; height:115px; border-radius:14px; background:#fff; padding:8px;
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
  box-shadow:0 0 30px rgba(255,193,7,0.12);
}
.qr-inner {
  width:100%; height:100%; display:grid; grid-template-columns:repeat(7,1fr); grid-template-rows:repeat(7,1fr); gap:1px;
}
.qr-cell { background:var(--dark-400); border-radius:1px; }
.qr-cell.on { background:#111; }
.phone-wrap { position:relative; width:240px; margin:0 auto; }
.phone-body {
  border-radius:38px; background:linear-gradient(145deg,#1c1c1c,#090909);
  border:2px solid rgba(255,193,7,0.12); padding:14px;
  aspect-ratio:9/19; position:relative; overflow:hidden;
  box-shadow:0 50px 120px rgba(0,0,0,0.75), 0 0 60px rgba(255,193,7,0.06);
}
.phone-notch {
  position:absolute; top:14px; left:50%; transform:translateX(-50%);
  width:75px; height:22px; background:var(--dark-400);
  border-radius:0 0 12px 12px; z-index:5;
}
.phone-screen {
  width:100%; height:100%; border-radius:26px;
  background:linear-gradient(145deg,var(--dark-300),var(--dark-400));
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:0.7rem;
  overflow:hidden; position:relative;
}
.phone-screen-glow {
  position:absolute; width:120%; height:50%; top:-5%; left:-10%;
  background:radial-gradient(ellipse,rgba(255,193,7,0.05),transparent 70%);
}
.ps-logo { font-family:'Orbitron',sans-serif; font-size:1rem; font-weight:900; }
.ps-sub { font-size:0.6rem; color:rgba(255,255,255,0.4); letter-spacing:0.12em; text-transform:uppercase; }
.phone-glow-wrap {
  position:absolute; inset:-30px; border-radius:60px;
  background:radial-gradient(ellipse,rgba(255,193,7,0.07),transparent 70%);
  z-index:-1; animation:float-y 4s ease-in-out infinite;
}

/* ===== NEWSLETTER ===== */
.newsletter-section { position:relative; }
.nl-bg {
  position:absolute; inset:0;
  background:linear-gradient(135deg,rgba(255,193,7,0.03),rgba(139,92,246,0.03),rgba(6,182,212,0.03));
  border-top:1px solid rgba(255,193,7,0.07); border-bottom:1px solid rgba(255,193,7,0.07);
}
.nl-form {
  display:flex; max-width:480px; margin:2rem auto 0;
  background:rgba(255,255,255,0.035); border:1px solid rgba(255,255,255,0.1);
  border-radius:12px; overflow:hidden; transition:border-color 0.3s ease;
}
.nl-form:focus-within { border-color:rgba(255,193,7,0.28); box-shadow:0 0 22px rgba(255,193,7,0.08); }
.nl-input {
  flex:1; padding:0.95rem 1.2rem; background:transparent; border:none; outline:none;
  color:#fff; font-size:0.93rem; font-family:'Inter',sans-serif;
}
.nl-input::placeholder { color:rgba(255,255,255,0.28); }
.nl-btn {
  padding:0.75rem 1.4rem; color:#000; font-weight:700; font-size:0.85rem;
  font-family:'Rajdhani',sans-serif; letter-spacing:0.08em; text-transform:uppercase;
  background:linear-gradient(135deg,var(--gold-200),var(--gold-300)); border:none; cursor:pointer;
  transition:var(--t-fast);
}
.nl-btn:hover { background:linear-gradient(135deg,var(--gold-100),var(--gold-200)); }

/* ===== FOOTER ===== */
footer {
  background:var(--dark-500);
  border-top:1px solid rgba(255,255,255,0.035);
  position:relative; overflow:hidden;
}
footer::before {
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,193,7,0.25),transparent);
}
.foot-desc { font-size:0.88rem; color:rgba(255,255,255,0.38); line-height:1.8; max-width:270px; }
.foot-social { display:flex; gap:0.65rem; margin-top:1.5rem; }
.soc-btn {
  width:37px; height:37px; border-radius:9px;
  background:rgba(255,255,255,0.035); border:1px solid rgba(255,255,255,0.07);
  display:flex; align-items:center; justify-content:center; font-size:0.88rem;
  color:rgba(255,255,255,0.45); cursor:pointer; transition:var(--t-med);
}
.soc-btn:hover { background:rgba(255,193,7,0.08); border-color:rgba(255,193,7,0.28); color:var(--gold-200); transform:translateY(-3px); box-shadow:0 0 14px rgba(255,193,7,0.12); }
.foot-h { font-family:'Rajdhani',sans-serif; font-size:0.76rem; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; color:var(--gold-200); margin-bottom:1.25rem; }
.foot-links { display:flex; flex-direction:column; gap:0.58rem; }
.foot-links a { font-size:0.87rem; color:rgba(255,255,255,0.4); transition:var(--t-fast); }
.foot-links a:hover { color:var(--gold-100); padding-left:5px; }
.foot-bar {
  margin-top:3rem; padding:1.4rem 2rem; border-top:1px solid rgba(255,255,255,0.04);
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:0.75rem;
}
.foot-copy { font-size:0.78rem; color:rgba(255,255,255,0.28); }
.foot-legal { display:flex; gap:1.5rem; flex-wrap:wrap; }
.foot-legal a { font-size:0.78rem; color:rgba(255,255,255,0.28); transition:color 0.3s ease; }
.foot-legal a:hover { color:rgba(255,255,255,0.55); }

/* ===== KEYFRAME ANIMATIONS ===== */
@keyframes logo-glow-pulse {
  0%,100%{box-shadow:0 0 30px rgba(255,193,7,0.35),0 0 70px rgba(255,193,7,0.12);}
  50%{box-shadow:0 0 55px rgba(255,193,7,0.6),0 0 110px rgba(255,193,7,0.22);}
}
@keyframes spin-cw { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }
@keyframes dot-pulse { 0%,100%{transform:scale(1);opacity:1} 50%{transform:scale(1.5);opacity:0.65} }
@keyframes float-y { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-16px)} }
@keyframes float-y2 { 0%,100%{transform:translateY(-5px) rotate(0deg)} 50%{transform:translateY(10px) rotate(3deg)} }
@keyframes shimmer { 0%{background-position:-200% center} 100%{background-position:200% center} }
@keyframes glow-pulse { 0%,100%{box-shadow:0 0 20px rgba(255,193,7,0.2)} 50%{box-shadow:0 0 45px rgba(255,193,7,0.4), 0 0 80px rgba(255,193,7,0.12)} }
@keyframes marquee { from{transform:translateX(0)} to{transform:translateX(-50%)} }
@keyframes marquee-rev { from{transform:translateX(-50%)} to{transform:translateX(0)} }
@keyframes border-move { 0%{background-position:0% 50%} 50%{background-position:100% 50%} 100%{background-position:0% 50%} }
@keyframes ripple-ring { 0%{transform:scale(0.9);opacity:0.5} 100%{transform:scale(1.7);opacity:0} }
@keyframes streak { 0%{transform:translateX(-120%) skewX(-20deg);opacity:0} 5%,15%{opacity:0.4} 20%{transform:translateX(120%) skewX(-20deg);opacity:0} 100%{opacity:0} }
@keyframes fade-up { from{opacity:0;transform:translateY(28px)} to{opacity:1;transform:translateY(0)} }
@keyframes fade-in { from{opacity:0} to{opacity:1} }
@keyframes scale-in { from{opacity:0;transform:scale(0.88)} to{opacity:1;transform:scale(1)} }
@keyframes gradient-x { 0%,100%{background-position:0% 50%} 50%{background-position:100% 50%} }
@keyframes coin-toss { 0%{transform:rotateY(0) translateY(0)} 50%{transform:rotateY(180deg) translateY(-12px)} 100%{transform:rotateY(360deg) translateY(0)} }

/* Light streaks */
.light-streak {
  position:absolute; height:2px;
  background:linear-gradient(90deg,transparent,rgba(255,193,7,0.45),transparent);
  animation:streak 9s linear infinite; pointer-events:none; border-radius:2px;
}

/* Floating coins */
.floating-coin {
  width:28px; height:28px; border-radius:50%; position:absolute; z-index:3;
  background:linear-gradient(135deg,var(--gold-100),var(--gold-300));
  display:flex; align-items:center; justify-content:center;
  font-size:0.7rem; font-weight:900; color:#000;
  box-shadow:0 0 14px rgba(255,193,7,0.45);
  animation:coin-toss 4.5s ease-in-out infinite;
}

/* ===== REVEAL ANIMATIONS ===== */
[data-reveal] { opacity:0; transform:translateY(25px); transition:opacity 0.7s ease,transform 0.7s ease; }
[data-reveal].is-visible { opacity:1; transform:translateY(0); }
[data-reveal-delay="100"] { transition-delay:0.1s; }
[data-reveal-delay="200"] { transition-delay:0.2s; }
[data-reveal-delay="300"] { transition-delay:0.3s; }
[data-reveal-delay="400"] { transition-delay:0.4s; }
[data-reveal-delay="500"] { transition-delay:0.5s; }
[data-reveal-delay="600"] { transition-delay:0.6s; }

/* ===== 3D TILT ===== */
.tilt-wrap { transform-style:preserve-3d; }

/* ===== MISC UTILITIES ===== */
.text-gold { color:var(--gold-200); }
.text-gold-l { color:var(--gold-100); }
.text-muted { color:rgba(255,255,255,0.48); }
.text-dim { color:rgba(255,255,255,0.3); }
.border-faint { border-color:rgba(255,255,255,0.06); }
.z-base { z-index:2; position:relative; }

/* Gradient BG overlays */
.grad-purple-right {
  background:linear-gradient(135deg,transparent 50%,rgba(139,92,246,0.04));
}
.divider-line { width:100%; height:1px; background:linear-gradient(90deg,transparent,rgba(255,255,255,0.07),transparent); }

/* Animated gradient borders */
.anim-border {
  position:relative;
}
.anim-border::before {
  content:''; position:absolute; inset:-1px; border-radius:inherit; z-index:-1;
  background:linear-gradient(var(--angle,0deg),var(--gold-200),var(--purple),var(--blue-neon),var(--gold-200));
  opacity:0.35; animation:spin-cw 4s linear infinite;
}

/* ===== RESPONSIVE ===== */
@media (max-width:1024px) {
  .ring-outer { width:420px; height:420px; }
  .ring-mid { width:340px; height:340px; }
  .ring-inner { width:270px; height:270px; }
  .hero-photo { width:290px; height:290px; }
  .gallery-grid { grid-template-columns:1fr 1fr; grid-template-rows:auto; }
  .g-item.big { grid-column:span 2; grid-row:span 1; height:280px; }
  .g-item { height:200px; }
}

@media (max-width:768px) {
  .nav-links,.nav-lang { display:none; }
  .nav-hamburger { display:flex; }
  #navbar { padding:0 1.25rem; }
  .hero-section { padding:100px 0 60px; }
  .hero-photo { width:240px; height:240px; }
  .ring-outer { width:330px; height:330px; }
  .ring-mid { width:265px; height:265px; }
  .ring-inner { width:210px; height:210px; }
  .gallery-grid { grid-template-columns:1fr 1fr; gap:10px; }
  .g-item.big { grid-column:span 2; grid-row:span 1; height:210px; }
  .g-item { height:140px; }
  .section-py { padding-top:75px; padding-bottom:75px; }
  .phone-wrap { width:200px; }
  .foot-bar { flex-direction:column; text-align:center; }
}

@media (max-width:640px) {
  .container { padding:0 1rem; }
  .hero-section { min-height:auto; }
  .nl-form { flex-direction:column; border-radius:12px; }
  .nl-btn { border-radius:0 0 10px 10px; }
  .gallery-grid .g-item:nth-child(n+5) { display:none; }
  .hero-ctas { flex-direction:column; align-items:flex-start; }
  .hero-stats { gap:1.5rem; }
  .foot-legal { justify-content:center; }
}
