/* Custom Styles for Milstain Fitness Gym Ushuaia */
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Barlow+Condensed:ital,wght@0,400;0,600;0,700;0,800;0,900;1,700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');

:root {
  --color-bg-main: #0a0c10;
  --color-bg-card: #121620;
  --color-bg-card-hover: #19202e;
  --color-neon-yellow: #e2f518;
  --color-neon-lime: #ccff00;
  --color-emerald-accent: #059669;
  --color-text-main: #f8fafc;
  --color-text-muted: #94a3b8;
}

body {
  font-family: 'Plus Jakarta Sans', sans-serif;
  background-color: var(--color-bg-main);
  color: var(--color-text-main);
  overflow-x: hidden;
  scroll-behavior: smooth;
}

h1, h2, h3, h4, .font-heading, .font-condensed {
  font-family: 'Oswald', 'Barlow Condensed', sans-serif;
  text-transform: uppercase;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 10px;
}
::-webkit-scrollbar-track {
  background: #0a0c10;
}
::-webkit-scrollbar-thumb {
  background: #1e293b;
  border-radius: 5px;
  border: 2px solid #0a0c10;
}
::-webkit-scrollbar-thumb:hover {
  background: var(--color-neon-yellow);
}

/* Custom Glassmorphism */
.glass-nav {
  background: rgba(10, 12, 16, 0.9);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.glass-card {
  background: rgba(18, 22, 32, 0.8);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.glass-card:hover {
  border-color: rgba(226, 245, 24, 0.4);
  transform: translateY(-4px);
  box-shadow: 0 14px 35px -10px rgba(226, 245, 24, 0.18);
}

/* Neon Text Glow */
.text-glow-yellow {
  text-shadow: 0 0 20px rgba(226, 245, 24, 0.4);
}

.glow-btn-yellow {
  box-shadow: 0 0 25px rgba(226, 245, 24, 0.35);
  transition: all 0.3s ease;
}
.glow-btn-yellow:hover {
  box-shadow: 0 0 35px rgba(226, 245, 24, 0.6);
  transform: translateY(-2px);
}

/* Pulse animation for live badge */
@keyframes pulse-glow {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.6;
    transform: scale(1.15);
  }
}

.pulse-dot {
  animation: pulse-glow 2s infinite ease-in-out;
}

/* Hero Background Image - Clear Gym Photo + Rubber Tile Atmosphere */
.hero-gym-bg {
  position: relative;
  background-color: #0a0c10;
}

.hero-gym-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url('https://images.unsplash.com/photo-1534438327276-14e5300c3a48?auto=format&fit=crop&w=1920&q=80');
  background-size: cover;
  background-position: center 30%;
  filter: blur(2px) brightness(0.4) contrast(1.1);
  transform: scale(1.02);
  z-index: 0;
}

.hero-gradient-overlay {
  position: relative;
  z-index: 1;
  background: radial-gradient(circle at 40% 30%, rgba(226, 245, 24, 0.12) 0%, rgba(10, 12, 16, 0.7) 55%, rgba(10, 12, 16, 0.96) 90%);
}

/* Grid Pattern (Technical Gym Rubber Tile Grid) */
.grid-pattern {
  background-size: 50px 50px;
  background-image: 
    linear-gradient(to right, rgba(255, 255, 255, 0.04) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
}

/* Tab active state transition */
.tab-btn {
  transition: all 0.25s ease-in-out;
}

.tab-btn.active {
  background-color: var(--color-neon-yellow);
  color: #000000;
  font-weight: 800;
  box-shadow: 0 4px 20px rgba(226, 245, 24, 0.35);
}

/* Custom Input Styling */
.form-input {
  background: rgba(15, 23, 42, 0.7);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: #fff;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.form-input:focus {
  outline: none;
  border-color: var(--color-neon-yellow);
  box-shadow: 0 0 0 3px rgba(226, 245, 24, 0.15);
}
