/*!
Theme Name: EveryOne
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: EveryOne
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

EveryOne is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Leo Vegas Casino – orange & maroon theme (logo colors) */
:root {
    --rc-bg: #1f120d;
    --rc-surface: #8B3A3A;
    --rc-surface-2: #A84848;
    --rc-text: #ffffff;
    --rc-link: #F5A623;
    --rc-accent: #E85C0C;
    --rc-accent-hover: #FFB347;
    --rc-focus: rgba(232, 92, 12, 0.55);
}

body {
    background-color: var(--rc-bg) !important;
    color: var(--rc-text) !important;
    padding-top: 100px !important; /* offset for fixed header so headings don't sit under it */
}

/* Extra top spacing so first heading is clearly below the header on all pages */
.page-content.page-section,
#page-text.page-section {
    padding-top: 1.5rem !important;
}

.header,
.header .menu-item-has-children .sub-menu {
    background-color: var(--rc-bg) !important;
}

.header {
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.35) !important;
}

.footer {
    background-color: #1a0f0a !important;
}

.main-text-content a,
.page-text a {
    color: var(--rc-link) !important;
}

.main-text-content a:hover,
.page-text a:hover {
    color: var(--rc-accent-hover) !important;
}

/* Tables: white text on dark backgrounds */
.main-text-content table th,
.main-text-content table td,
.page-text table th,
.page-text table td {
    color: #ffffff !important;
}
/* Responsible gambling tables have explicit white bg – keep black text there */
.responsible-gambling table th,
.responsible-gambling table td {
    color: #000000 !important;
}

#page-text .main-text-content table.banking-table th,
#page-text .main-text-content table.banking-table td {
    color: #ffffff !important;
}

body.banner-background .screen-content {
    background: transparent !important;
}

.offer-title,
.offer-desc {
    color: var(--rc-text) !important;
}

.btn,
.btn.btn-primary,
.btn.btn-danger,
.btn.offer-btn,
.header .btn-danger {
    background-color: var(--rc-accent) !important;
    color: #ffffff !important;
}

.btn:hover,
.btn.btn-primary:hover,
.btn.btn-danger:hover,
.btn.offer-btn:hover,
.header .btn-danger:hover {
    background-color: var(--rc-accent-hover) !important;
}

.btn:focus,
.btn:focus-visible,
.header .btn-danger:focus-visible,
.btn.btn-primary:focus-visible,
.btn.btn-danger:focus-visible,
.btn.offer-btn:focus-visible {
    outline: 2px solid var(--rc-focus) !important;
    outline-offset: 2px;
}

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

/* LV_R91_STYLES_V1 — appended by R91 rebuild */

/* ===== Leo Constellation Star Map — Hero ===== */
.lv-hero {
  position: relative;
  min-height: 580px;
  background: linear-gradient(135deg, #1a0804 0%, #2d1008 40%, #1a0a04 100%);
  overflow: hidden;
  display: flex;
  align-items: center;
  padding: 60px 0 60px;
}

.lv-hero__stars-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}

/* Twinkling stars field */
.lv-star-dot {
  position: absolute;
  border-radius: 50%;
  background: #fff;
  animation: lv-twinkle var(--dur, 3s) ease-in-out infinite;
  animation-delay: var(--delay, 0s);
  opacity: 0.7;
}

@keyframes lv-twinkle {
  0%, 100% { opacity: 0.2; transform: scale(0.8); }
  50%       { opacity: 1;   transform: scale(1.3); }
}

/* Leo constellation lines */
.lv-constellation {
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  width: 340px;
  height: 340px;
}

.lv-constellation svg {
  width: 100%;
  height: 100%;
  animation: lv-constellation-glow 4s ease-in-out infinite;
}

@keyframes lv-constellation-glow {
  0%, 100% { filter: drop-shadow(0 0 6px rgba(255, 180, 0, 0.5)); }
  50%       { filter: drop-shadow(0 0 18px rgba(255, 220, 80, 0.9)); }
}

.lv-hero__inner {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  align-items: center;
  gap: 40px;
}

.lv-hero__text {
  flex: 1;
  max-width: 560px;
}

.lv-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255,180,0,0.15);
  border: 1px solid rgba(255,180,0,0.4);
  border-radius: 100px;
  padding: 6px 16px;
  font-size: 13px;
  font-weight: 600;
  color: #ffd700;
  letter-spacing: 0.05em;
  margin-bottom: 20px;
  animation: lv-badge-shimmer 3s ease-in-out infinite;
}

@keyframes lv-badge-shimmer {
  0%, 100% { box-shadow: 0 0 0 0 rgba(255,180,0,0); }
  50%       { box-shadow: 0 0 16px 4px rgba(255,180,0,0.25); }
}

.lv-hero__h1 {
  font-size: clamp(32px, 4.5vw, 52px);
  font-weight: 800;
  line-height: 1.1;
  color: #fff;
  margin: 0 0 16px;
  text-shadow: 0 2px 20px rgba(0,0,0,0.4);
}

.lv-hero__h1 span.lv-gold {
  background: linear-gradient(90deg, #ffd700, #ffb300, #ffd700);
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: lv-gold-sweep 3s linear infinite;
}

@keyframes lv-gold-sweep {
  0%   { background-position: 0% center; }
  100% { background-position: 200% center; }
}

.lv-hero__subtitle {
  font-size: 18px;
  color: rgba(255,255,255,0.8);
  margin: 0 0 32px;
  line-height: 1.5;
}

.lv-hero__subtitle strong {
  color: #4dff91;
  font-weight: 700;
}

.lv-hero__btns {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.lv-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, #ff8c00, #ffb300);
  color: #000;
  font-weight: 800;
  font-size: 15px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 14px 28px;
  border-radius: 10px;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  transition: filter 0.2s;
  box-shadow: 0 4px 20px rgba(255,140,0,0.45);
  will-change: background-position;
  transform: translateZ(0);
}
.lv-btn-primary:hover { filter: brightness(1.12); }

.lv-btn-secondary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, #6b1e1e, #8b3a3a);
  color: #fff;
  font-weight: 700;
  font-size: 15px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 14px 28px;
  border-radius: 10px;
  text-decoration: none;
  transition: filter 0.2s;
  box-shadow: 0 4px 20px rgba(107,30,30,0.5);
  transform: translateZ(0);
}
.lv-btn-secondary:hover { filter: brightness(1.15); }

.lv-hero__right {
  flex-shrink: 0;
  width: 340px;
  position: relative;
}

/* ===== Live Winners Ticker ===== */
.lv-winners {
  background: linear-gradient(90deg, #1a0a04, #2d1005, #1a0a04);
  border-top: 1px solid rgba(255,180,0,0.2);
  border-bottom: 1px solid rgba(255,180,0,0.2);
  padding: 14px 0;
  overflow: hidden;
  position: relative;
}

.lv-winners__label {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  background: linear-gradient(135deg, #ff8c00, #ffb300);
  color: #000;
  font-weight: 800;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  display: flex;
  align-items: center;
  padding: 0 16px;
  z-index: 2;
  white-space: nowrap;
}

.lv-winners__track {
  display: flex;
  gap: 0;
  animation: lv-winners-scroll 32s linear infinite;
  padding-left: 140px;
}

@keyframes lv-winners-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.lv-winner-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  padding: 0 28px;
  font-size: 14px;
  color: rgba(255,255,255,0.85);
}

.lv-winner-item .lv-win-name { color: #ffd700; font-weight: 700; }
.lv-winner-item .lv-win-game { color: rgba(255,255,255,0.6); }
.lv-winner-item .lv-win-amount { color: #4dff91; font-weight: 800; }
.lv-winner-dot { color: rgba(255,180,0,0.4); font-size: 10px; }

/* ===== Casino Tour Section ===== */
.lv-tour {
  background: linear-gradient(180deg, #160804 0%, #1f120d 100%);
  padding: 60px 0;
  position: relative;
  overflow: hidden;
}

.lv-tour::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,180,0,0.4), transparent);
}

.lv-tour__inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}

.lv-tour__heading {
  text-align: center;
  font-size: clamp(24px, 3vw, 36px);
  font-weight: 800;
  color: #fff;
  margin: 0 0 8px;
}

.lv-tour__heading span {
  background: linear-gradient(90deg, #ffd700, #ffb300);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.lv-tour__sub {
  text-align: center;
  color: rgba(255,255,255,0.6);
  margin: 0 0 40px;
  font-size: 16px;
}

.lv-tour__cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

@media (max-width: 900px) {
  .lv-tour__cards { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 520px) {
  .lv-tour__cards { grid-template-columns: 1fr; }
  .lv-hero__inner { flex-direction: column; }
  .lv-hero__right { width: 100%; }
  .lv-constellation { width: 240px; height: 240px; right: 0; }
}

.lv-tour-card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,180,0,0.15);
  border-radius: 16px;
  padding: 28px 20px;
  text-align: center;
  transition: transform 0.2s, border-color 0.2s, box-shadow 0.2s;
  position: relative;
  overflow: hidden;
}

.lv-tour-card::before {
  content: '';
  position: absolute;
  top: 0; left: 50%;
  transform: translateX(-50%);
  width: 60%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,180,0,0.6), transparent);
}

.lv-tour-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255,180,0,0.4);
  box-shadow: 0 12px 32px rgba(0,0,0,0.3), 0 0 24px rgba(255,180,0,0.1);
}

.lv-tour-card__icon {
  font-size: 42px;
  margin-bottom: 16px;
  filter: drop-shadow(0 0 8px rgba(255,180,0,0.4));
}

.lv-tour-card__num {
  font-size: 28px;
  font-weight: 900;
  color: #ffd700;
  margin-bottom: 4px;
}

.lv-tour-card__label {
  font-size: 14px;
  color: rgba(255,255,255,0.7);
  font-weight: 500;
}

.lv-tour__cta {
  text-align: center;
  margin-top: 36px;
}

/* ===== Secondary Hero Shared ===== */
.lv-sec-hero {
  background: linear-gradient(135deg, #2d1005 0%, #1a0804 60%, #0a0502 100%);
  padding: 72px 0 64px;
  position: relative;
  overflow: hidden;
  margin-bottom: 0;
}

.lv-sec-hero__inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  align-items: center;
  gap: 48px;
}

.lv-sec-hero__text {
  flex: 1;
  max-width: 560px;
}

.lv-sec-hero__h1 {
  font-size: clamp(28px, 3.5vw, 44px);
  font-weight: 800;
  color: #fff;
  margin: 0 0 16px;
  line-height: 1.15;
}

.lv-sec-hero__h1 .lv-gold {
  background: linear-gradient(90deg, #ffd700, #ffb300, #ffd700);
  background-size: 200%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: lv-gold-sweep 3s linear infinite;
}

.lv-sec-hero__sub {
  font-size: 17px;
  color: rgba(255,255,255,0.75);
  margin: 0 0 28px;
  line-height: 1.6;
}

.lv-sec-hero__right {
  flex-shrink: 0;
  width: 300px;
}

@media (max-width: 900px) {
  .lv-sec-hero__inner { flex-direction: column; }
  .lv-sec-hero__right { width: 100%; max-width: 360px; }
  .lv-constellation { position: relative; top: auto; right: auto; transform: none; margin: 0 auto; }
}

/* ===== MOCKUP 1: Leo Zodiac Circle (Bonuses/Welcome Offer) ===== */
.lv-zodiac-mockup {
  position: relative;
  width: 280px;
  height: 280px;
  margin: 0 auto;
}

.lv-zodiac-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid rgba(255,180,0,0.3);
  animation: lv-zodiac-spin 18s linear infinite;
}

.lv-zodiac-ring--inner {
  inset: 20px;
  border-color: rgba(255,140,0,0.25);
  animation-direction: reverse;
  animation-duration: 12s;
}

@keyframes lv-zodiac-spin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

.lv-zodiac-center {
  position: absolute;
  inset: 40px;
  border-radius: 50%;
  background: radial-gradient(circle at 40% 35%, rgba(232,92,12,0.18) 0%, rgba(42,14,6,0.95) 70%);
  border: 1px solid rgba(255,180,0,0.2);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 16px;
}

.lv-zodiac-center__amount {
  font-size: 30px;
  font-weight: 900;
  color: #ffd700;
  line-height: 1;
  margin-bottom: 4px;
}

.lv-zodiac-center__label {
  font-size: 11px;
  color: rgba(255,255,255,0.65);
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.lv-zodiac-dot {
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ffd700;
  box-shadow: 0 0 6px 2px rgba(255,180,0,0.7);
}

/* ===== MOCKUP 2: Mane Wind Ripple (Login Page) ===== */
.lv-mane-mockup {
  position: relative;
  width: 280px;
  height: 280px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lv-mane-wave {
  position: absolute;
  border-radius: 50% 60% 55% 65% / 60% 50% 65% 55%;
  border: 1.5px solid rgba(255,180,0,0.4);
  animation: lv-mane-ripple var(--mane-dur, 3s) ease-in-out infinite;
  animation-delay: var(--mane-delay, 0s);
}

@keyframes lv-mane-ripple {
  0%, 100% { transform: scale(1) rotate(0deg); opacity: 0.8; }
  50%       { transform: scale(1.06) rotate(4deg); opacity: 0.4; }
}

.lv-mane-core {
  width: 110px;
  height: 110px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, #ff8c00, #c44800);
  box-shadow: 0 0 30px rgba(255,100,0,0.6), inset 0 0 20px rgba(255,200,0,0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 48px;
  position: relative;
  z-index: 2;
  animation: lv-mane-pulse 2.5s ease-in-out infinite;
}

@keyframes lv-mane-pulse {
  0%, 100% { box-shadow: 0 0 30px rgba(255,100,0,0.6), inset 0 0 20px rgba(255,200,0,0.3); }
  50%       { box-shadow: 0 0 50px rgba(255,140,0,0.9), inset 0 0 30px rgba(255,200,0,0.5); }
}

.lv-mane-login-card {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(42,14,6,0.95);
  border: 1px solid rgba(255,180,0,0.3);
  border-radius: 10px;
  padding: 10px 20px;
  text-align: center;
  white-space: nowrap;
  font-size: 13px;
  color: #fff;
  z-index: 3;
}

.lv-mane-login-card strong { color: #ffd700; display: block; font-size: 15px; }

/* ===== MOCKUP 3: Vegas Neon Sign Flicker (Download Page) ===== */
.lv-neon-mockup {
  position: relative;
  width: 260px;
  height: 320px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.lv-neon-sign {
  position: relative;
  background: rgba(20,8,4,0.9);
  border: 2px solid rgba(255,80,0,0.5);
  border-radius: 16px;
  padding: 24px 20px;
  text-align: center;
  animation: lv-neon-flicker 6s step-end infinite;
  box-shadow: 0 0 20px rgba(255,80,0,0.4), inset 0 0 30px rgba(255,80,0,0.05);
}

@keyframes lv-neon-flicker {
  0%,2%,4%,96%,100% { opacity: 1; box-shadow: 0 0 20px rgba(255,80,0,0.4), 0 0 40px rgba(255,100,0,0.2); }
  1%,3%             { opacity: 0.7; }
  50%,52%           { opacity: 0.92; box-shadow: 0 0 30px rgba(255,100,0,0.6), 0 0 60px rgba(255,120,0,0.3); }
  51%               { opacity: 0.6; }
}

.lv-neon-text-top {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.3em;
  color: rgba(255,180,100,0.7);
  margin-bottom: 8px;
}

.lv-neon-main {
  font-size: 34px;
  font-weight: 900;
  color: #ff8c00;
  text-shadow: 0 0 8px #ff8c00, 0 0 20px rgba(255,100,0,0.7);
  line-height: 1;
  margin-bottom: 4px;
}

.lv-neon-sub {
  font-size: 13px;
  color: rgba(255,255,255,0.6);
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.lv-neon-divider {
  width: 80%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,140,0,0.5), transparent);
  margin: 10px auto;
}

.lv-neon-badge {
  display: inline-block;
  background: rgba(255,140,0,0.15);
  border: 1px solid rgba(255,140,0,0.4);
  border-radius: 6px;
  padding: 5px 12px;
  font-size: 12px;
  color: #ffd700;
  font-weight: 700;
  letter-spacing: 0.05em;
  margin-top: 8px;
}

.lv-neon-dots {
  display: flex;
  gap: 6px;
  justify-content: center;
  margin-top: 16px;
}

.lv-neon-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #ff8c00;
  animation: lv-neon-dot-seq 1.2s ease-in-out infinite;
}
.lv-neon-dot:nth-child(2) { animation-delay: 0.2s; }
.lv-neon-dot:nth-child(3) { animation-delay: 0.4s; }
@keyframes lv-neon-dot-seq {
  0%,80%,100% { transform: scale(0.8); opacity: 0.4; }
  40%          { transform: scale(1.3); opacity: 1; }
}

/* ===== MOCKUP 4: Pride Paw Print Trail (Bonuses page) ===== */
.lv-pawtrail-mockup {
  position: relative;
  width: 280px;
  height: 300px;
  margin: 0 auto;
}

.lv-paw {
  position: absolute;
  font-size: 28px;
  animation: lv-paw-appear var(--paw-dur, 2s) ease-in-out infinite;
  animation-delay: var(--paw-delay, 0s);
  opacity: 0;
  filter: drop-shadow(0 0 6px rgba(255,140,0,0.8));
}

@keyframes lv-paw-appear {
  0%     { opacity: 0; transform: scale(0.5) rotate(-10deg); }
  20%    { opacity: 1; transform: scale(1.1) rotate(0deg); }
  70%    { opacity: 0.7; }
  100%   { opacity: 0; transform: scale(0.9) rotate(5deg); }
}

.lv-pawtrail-card {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(42,14,6,0.97);
  border: 1px solid rgba(255,180,0,0.35);
  border-radius: 12px;
  padding: 14px 22px;
  text-align: center;
  white-space: nowrap;
}

.lv-pawtrail-card__amount {
  font-size: 26px;
  font-weight: 900;
  color: #ffd700;
  line-height: 1;
}

.lv-pawtrail-card__label {
  font-size: 12px;
  color: rgba(255,255,255,0.6);
  margin-top: 4px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

/* ===== Savanna Sunset Mockup (Welcome Offer) ===== */
.lv-savanna-mockup {
  position: relative;
  width: 300px;
  height: 300px;
  margin: 0 auto;
  border-radius: 20px;
  overflow: hidden;
}

.lv-savanna-sky {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, #ff6a00 0%, #ee0979 40%, #4a0080 100%);
  animation: lv-sky-pulse 6s ease-in-out infinite;
}

@keyframes lv-sky-pulse {
  0%, 100% { filter: brightness(1); }
  50%       { filter: brightness(1.15); }
}

.lv-savanna-sun {
  position: absolute;
  top: 50px;
  left: 50%;
  transform: translateX(-50%);
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: radial-gradient(circle, #fff9c4, #ffcc00);
  box-shadow: 0 0 30px 10px rgba(255,200,0,0.5);
  animation: lv-sun-rise 6s ease-in-out infinite;
}

@keyframes lv-sun-rise {
  0%, 100% { top: 50px; box-shadow: 0 0 30px 10px rgba(255,200,0,0.5); }
  50%       { top: 40px; box-shadow: 0 0 50px 18px rgba(255,200,0,0.7); }
}

.lv-savanna-ground {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 100px;
  background: linear-gradient(180deg, #8b4513 0%, #4a2008 100%);
  clip-path: ellipse(110% 100% at 50% 100%);
}

.lv-savanna-card {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0,0,0,0.75);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255,200,0,0.4);
  border-radius: 12px;
  padding: 12px 24px;
  text-align: center;
  white-space: nowrap;
  z-index: 2;
}

.lv-savanna-card__bonus {
  font-size: 22px;
  font-weight: 900;
  color: #ffd700;
}

.lv-savanna-card__sub {
  font-size: 11px;
  color: rgba(255,255,255,0.7);
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

/* ===== Lion Roar Soundwave Mockup (Login Page) ===== */
.lv-soundwave-mockup {
  position: relative;
  width: 280px;
  height: 220px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(25,8,4,0.6);
  border: 1px solid rgba(255,140,0,0.2);
  border-radius: 20px;
  overflow: hidden;
  padding: 20px;
}

.lv-wave-bars {
  display: flex;
  align-items: center;
  gap: 4px;
  height: 120px;
}

.lv-wave-bar {
  width: 5px;
  border-radius: 3px;
  background: linear-gradient(180deg, #ff8c00, #ffd700);
  animation: lv-wave-bar-anim var(--wb-dur, 0.8s) ease-in-out infinite alternate;
  animation-delay: var(--wb-delay, 0s);
  box-shadow: 0 0 6px rgba(255,140,0,0.4);
}

@keyframes lv-wave-bar-anim {
  from { transform: scaleY(0.1); }
  to   { transform: scaleY(1); }
}

.lv-soundwave-label {
  position: absolute;
  bottom: 14px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 12px;
  color: rgba(255,255,255,0.6);
  text-transform: uppercase;
  letter-spacing: 0.2em;
  white-space: nowrap;
}

/* ===== Utility ===== */
@media (max-width: 700px) {
  .lv-hero { min-height: auto; padding: 50px 0 40px; }
  .lv-hero__right { display: none; }
  .lv-constellation { display: none; }
  .lv-tour__cards { grid-template-columns: repeat(2, 1fr); }
  .lv-sec-hero__right { display: none; }
}

/* /LV_R91_STYLES_V1 */


