:root {
  --body-bg: #05070c;
  --header-bg: rgba(5,7,12,0.85);
  --banner-bg: #05070c;
  --btn-bg: #ffd700;
  --btn-hover: #ffe85c;
  --btn-text: #05070c;
  --secondary-accent: #0fffa0;
  --slots-bg: rgba(255,255,255,0.02);
  --slots-font: #fff;
  --footer-bg: #03040a;
  --font-color: #e0e0e0;
  --font-muted: #a0a0b0;
  --glass-bg: rgba(255,255,255,0.03);
  --glass-border: rgba(255,255,255,0.07);
  --card-shadow: 0 15px 50px rgba(0,0,0,0.7);
  --gold-gradient: linear-gradient(135deg,#ffd700 0%,#ffb800 50%,#ffa500 100%);
  --gold-tint-low: rgba(255,215,0,0.03);
  --gold-tint-mid: rgba(255,215,0,0.1);
  --orange-tint-low: rgba(255,170,0,0.02);
  --green-tint-low: rgba(0,255,136,0.02);
  --bg-gradient-bottom: #05070c;
  --shadow-soft: 0 10px 25px rgba(0,0,0,0.35);
}

/* Базовые стили */
body {
  margin:0;
  padding:0;
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  font-size:16px;
  font-weight:400;
  line-height:1.6;
  background-color:var(--body-bg);
  color:var(--font-color);
  -webkit-font-smoothing:antialiased;
  min-height:100vh;
  position:relative;
}

body.overflow-hidden {
  overflow:hidden !important;
  height:100vh;
}

/* Эффекты фона */
.premium-bg-effects {
  position:fixed;
  top:0; left:0;
  width:100%;
  height:100%;
  z-index:-1;
  overflow:hidden;
  background-color:var(--body-bg);
}

.bg-pattern-layer {
  position:absolute;
  top:0; left:0;
  width:100%; height:100%;
  background-repeat:repeat;
  background-size:800px;
  opacity:0;
  transition:opacity 1.5s ease;
  z-index:2;
  mix-blend-mode:overlay;
  pointer-events:none;
}

body.bg-pattern-loaded .bg-pattern-layer {
  background-image:url('../../../themes/aviamastersBG/assets/img/pattern_luxury.png');
  opacity:0.5;
}

/* Световые эффекты */
.light-source-layer {
  position:absolute;
  top:0; left:0;
  width:100%; height:100%;
  z-index:1;
  filter:blur(80px);
  opacity:0.6;
}
.ambient-light {
  position:absolute;
  border-radius:50%;
  will-change:transform,opacity;
}
.light-1 { top:20%; left:20%; width:60vw; height:60vw;
  background:radial-gradient(circle, rgba(255,215,0,0.2) 0%, transparent 70%);
  animation: float-pulse 15s infinite ease-in-out;
}
.light-2 { bottom:-10%; right:-10%; width:70vw; height:70vw;
  background:radial-gradient(circle, rgba(255,140,0,0.12) 0%, transparent 60%);
  animation: float-drift 20s infinite linear;
}
.light-3 { top:50%; left:50%; width:150%; height:200px;
  background:linear-gradient(90deg, transparent, rgba(255,215,0,0.08), transparent);
  transform:translate(-50%,-50%) rotate(-45deg);
  animation: light-wave-sweep 12s infinite linear;
}

@keyframes float-pulse { 0%,100% {transform:translate(0,0) scale(1); opacity:0.5;} 50% {transform:translate(5%,10%) scale(1.1); opacity:0.8;} }
@keyframes float-drift { 0%{transform:rotate(0deg) translate(0,0);} 50%{transform:rotate(10deg) translate(-5%,-5%);} 100%{transform:rotate(0deg) translate(0,0);} }
@keyframes light-wave-sweep { 0%{transform:translate(-50%,-50%) rotate(-45deg) translateY(100vh);opacity:0;} 20%{opacity:1;} 80%{opacity:1;} 100%{transform:translate(-50%,-50%) rotate(-45deg) translateY(-100vh);opacity:0;} }

/* Заголовки и тексты */
.section-title h2, .offer-title h1 {
  background: linear-gradient(135deg, #fff 0%, #ffd700 50%, #ffb800 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: shine 5s linear infinite;
}
@keyframes shine { to { background-position: 200% center; } }

/* Кнопки */
.btn {
  position: relative;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height:48px;
  padding:0 24px;
  transition: all .4s cubic-bezier(.175,.885,.32,1.275);
  font-family: inherit;
  cursor: pointer;
  border: none;
  text-decoration: none;
  z-index:1;
  border-radius:50px;
}

.btn.register-btn, .offer .btn {
  background: var(--gold-gradient);
  color: #1a1a2e !important;
  font-weight:800;
  text-transform:uppercase;
  box-shadow: 0 6px 20px rgba(0,0,0,0.3), inset 0 1px 1px rgba(255,255,255,0.4), 0 0 20px rgba(255,215,0,0.25);
  border:1px solid rgba(255,255,255,0.1);
}
.btn.register-btn:hover, .offer .btn:hover {
  transform:translateY(-2px) scale(1.05);
  box-shadow:0 10px 30px rgba(0,0,0,0.4), 0 0 40px rgba(255,215,0,0.4);
}

.btn.login-btn {
  background: rgba(255,255,255,0.1);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,0.2);
  color:#fff !important;
  font-weight:600;
}
.btn.login-btn:hover {
  background: rgba(255,255,255,0.12);
  border-color: rgba(255,215,0,0.4);
  color: var(--btn-bg) !important;
}

.btn:before {
  content:'';
  position:absolute;
  top:0; left:-150%;
  width:50%; height:100%;
  background:linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.4) 50%, rgba(255,255,255,0) 100%);
  transform:skewX(-25deg);
  transition:none;
  z-index:2;
  pointer-events:none;
}
.btn.register-btn:before, .offer .btn:before {
  animation: liquid-shine 4s infinite linear;
}
@keyframes liquid-shine {0%{left:-150%;}20%{left:150%;}100%{left:150%;}}

/* Слоты и карточки */
.slots-item {
  background: var(--glass-bg);
  border:1px solid var(--glass-border);
  border-radius:16px;
  overflow:hidden;
  transition: all .4s cubic-bezier(.175,.885,.32,1.275);
  position:relative;
  box-shadow: var(--card-shadow);
}
.slots-item:hover {
  transform:translateY(-8px);
  box-shadow:0 20px 50px rgba(0,0,0,0.5);
  border-color: rgba(255,215,0,0.3);
  z-index:10;
}

/* Footer */
.footer {
  background-color: var(--footer-bg);
  padding:80px 0 40px;
  margin-top:80px;
  border-top:1px solid rgba(255,215,0,0.15);
  box-shadow:0 -10px 40px rgba(0,0,0,0.5);
}

/* Мобильная навигация */
.mobile-wrap {
  max-width:450px;
  width:100%;
  height:100vh;
  background: linear-gradient(to bottom, rgba(5,7,12,0.96), rgba(5,7,12,0.98)), url('//aviamasters-bgaming.com/wp-content/themes/aviamastersBG/assets/img/pattern_luxury.png');
  background-size:320px;
  box-shadow:-5px 0 20px rgba(0,0,0,0.5);
  position:fixed;
  top:0;
  right:-100vw;
  z-index:1100;
  border-left:1px solid rgba(255,215,0,0.1);
  transition:0.3s cubic-bezier(.4,0,.2,1);
}
.mobile-wrap.active { right:0; transition:0.3s; }

/* Адаптивные кнопки hamburger */
.mobile-btn { display:flex; justify-content:center; align-items:center; width:48px; height:48px; cursor:pointer; border-radius:50%; background: rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1); transition:all .3s cubic-bezier(.4,0,.2,1); }
.mobile-btn.active .inner:before { transform:rotate(45deg); background-color: var(--btn-bg); }
.mobile-btn.active .inner:after { transform:rotate(-45deg); background-color: var(--btn-bg); }

/* Плавные hover эффекты */
a:hover, .btn:hover, .slots-item:hover, .footer-link-btn:hover {
  transition: all 0.3s ease;
}