/* Corporate Styles for CFI (cfi.aimharder.com) */

@layer utilities {
  .bg-radial-vignette {
    background: radial-gradient(circle at center, transparent 0%, rgba(0, 0, 0, 0.92) 100%);
  }
}

/* Base theme & smooth scroll */
html {
  color-scheme: dark;
}

body {
  background-color: #000000;
  color: #FFFFFF;
  font-family: 'Roboto', -apple-system, BlinkMacSystemFont, sans-serif;
  background-image: 
    radial-gradient(rgba(193, 14, 31, 0.04) 1px, transparent 0),
    radial-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 0);
  background-size: 32px 32px;
  background-position: 0 0, 16px 16px;
}

/* Headings font: Anton & Barlow Condensed */
h1, h2, h3, h4, h5, h6, .font-heading, .font-athletic {
  font-family: 'Anton', 'Barlow Condensed', sans-serif;
  letter-spacing: 0.03em;
}

/* Digital 7-Segment / Tech Display for WOD Timer */
.font-digital {
  font-family: 'Share Tech Mono', monospace;
  text-shadow: 0 0 20px rgba(193, 14, 31, 0.6);
}

/* Custom Corporate Red Glow & Accents */
.border-brand-red {
  border-color: #c10e1f;
}

.bg-brand-red {
  background-color: #c10e1f;
}

.hover\:bg-brand-redHover:hover {
  background-color: #a30b1a;
}

.text-brand-red {
  color: #c10e1f;
}

/* Tariff Cards with Overlay Image effect matching box visual identity */
.tariff-banner-card {
  position: relative;
  overflow: hidden;
  border-radius: 1.25rem;
  border: 1px solid #242933;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  background-color: #111317;
}

.tariff-banner-card:hover {
  transform: translateY(-6px);
  border-color: #c10e1f;
  box-shadow: 0 12px 30px -10px rgba(193, 14, 31, 0.35);
}

.tariff-banner-card img.bg-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.28;
  transition: transform 0.5s ease, opacity 0.5s ease;
}

.tariff-banner-card:hover img.bg-img {
  transform: scale(1.08);
  opacity: 0.42;
}

/* Slide Transition in Hero */
.hero-slide {
  transition: opacity 0.8s ease-in-out, transform 0.8s ease-in-out;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: #000000;
}

::-webkit-scrollbar-thumb {
  background: #242933;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #c10e1f;
}

/* Timer Mode Buttons */
.timer-mode-btn.active {
  background-color: #c10e1f;
  color: #FFFFFF;
  box-shadow: 0 0 15px rgba(193, 14, 31, 0.5);
}

/* Active tab in schedule */
.schedule-tab.active {
  background-color: #c10e1f;
  color: #FFFFFF;
  border-color: #c10e1f;
}

/* Active filter chip in schedule */
.filter-chip.active {
  background-color: #c10e1f;
  color: #FFFFFF;
  font-weight: 700;
}

/* Booking Radio selected highlight */
label.booking-option-card:has(input[type="radio"]:checked) {
  border-color: #c10e1f;
  background-color: rgba(193, 14, 31, 0.12);
}

/* Focus and input outlines */
input:focus, select:focus, textarea:focus {
  outline: none;
  border-color: #c10e1f;
  box-shadow: 0 0 0 2px rgba(193, 14, 31, 0.25);
}
