/* Custom header scroll styles */
#header.scrolled {
  background-color: rgba(255, 255, 255, 0.95) !important;
  backdrop-filter: blur(8px);
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.1);
}

#header.scrolled nav a {
  color: hsl(var(--foreground)) !important;
}

#header.scrolled nav a:hover {
  color: hsl(var(--primary)) !important;
}

/* Fix Book Trial button to always be orange */
header button {
  background-color: hsl(var(--warm-orange)) !important;
  color: white !important;
  border-color: hsl(var(--warm-orange)) !important;
}

header button:hover {
  background-color: hsl(var(--warm-orange)) !important;
  opacity: 0.9;
  border-color: hsl(var(--warm-orange)) !important;
}

/* Language switcher styles */
#header.scrolled select {
  color: hsl(var(--foreground)) !important;
}

#header.scrolled select option {
  color: hsl(var(--foreground)) !important;
  background-color: white;
}

/* Language switcher transition effects */
#hero-title-text, #hero-subtitle-text, 
#programs-title, #team-title, #about-title, #contact-title {
  transition: opacity 0.3s ease-in-out;
}

/* Ensure mobile menu button is hidden on desktop */
@media (min-width: 768px) {
  #mobile-menu-btn {
    display: none !important;
  }
}

/* Mobile menu styling fixes */
#mobile-nav {
  background-color: white !important;
  backdrop-filter: none !important;
}

#mobile-nav.mobile-open {
  background-color: white !important;
  backdrop-filter: none !important;
}

/* ITF section aspect ratio fix */
.itf-aspect-ratio {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 35.71%; /* 320/896 = 0.3571 = 35.71% for 2.8:1 ratio */
}

.itf-aspect-ratio > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* ITF section overlay and text improvements */
.itf-aspect-ratio .bg-black\/60 {
  background-color: rgba(0, 0, 0, 0.3) !important;
}

.itf-aspect-ratio h3 {
  font-size: 1.25rem !important; /* 20px on mobile */
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8);
}

.itf-aspect-ratio p {
  font-size: 0.875rem !important; /* 14px on mobile */
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8);
}

@media (min-width: 1024px) {
  .itf-aspect-ratio h3 {
    font-size: 1.5rem !important; /* 24px on desktop */
  }
  
  .itf-aspect-ratio p {
    font-size: 1rem !important; /* 16px on desktop */
  }
}