/* Additional global styles for Applied AI */

/* Ensure container-max has padding on all pages */
section:not(.hero) .container-max,
.container-max {
  padding-left: 1rem;
  padding-right: 1rem;
}

@media (min-width: 992px) {
  section:not(.hero) .container-max,
  .container-max {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

/* Ensure sections have proper spacing */
section {
  position: relative;
}

/* Fix for main content padding with fixed navbar */
.main-content {
  padding-top: 4rem;
  min-height: 100vh;
}

/* Homepage with hero doesn't need top padding */
.template-homepage .main-content,
body.template-homepage main.main-content {
  padding-top: 0 !important;
}

/* Navbar adjustments */
.navbar-adaptive {
  height: 4rem;
  /* Reset all backgrounds to ensure clean slate */
  background: none;
  background-color: transparent;
  background-image: none;
}

/* Override DaisyUI navbar defaults more specifically */
.navbar.navbar-adaptive {
  /* Remove all default DaisyUI backgrounds */
  background: none !important;
  background-color: transparent !important;
  background-image: none !important;
  /* Remove any default shadows or borders */
  box-shadow: none !important;
  border: none !important;
}

/* Picasso blue state for hero pages - blends with hero section */
.navbar.navbar-adaptive.navbar-transparent {
  background-color: #0a1628 !important;
  background: #0a1628 !important;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  border: none;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

/* Solid state for non-hero pages */
.navbar.navbar-adaptive.navbar-solid {
  background-color: rgba(255, 255, 255, 0.98) !important;
  background: rgba(255, 255, 255, 0.98) !important;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border: none;
  border-bottom: 1px solid rgba(229, 231, 235, 0.8);
}

/* Scrolled state - applies to both hero and non-hero pages when scrolled */
.navbar.navbar-adaptive.navbar-scrolled {
  background-color: rgba(255, 255, 255, 0.98) !important;
  background: rgba(255, 255, 255, 0.98) !important;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border: none;
  border-bottom: 1px solid rgba(229, 231, 235, 0.8);
}

/* White/silver text for Picasso blue navbar on hero pages */
.navbar-adaptive.navbar-transparent .navbar-link,
.navbar-adaptive.navbar-transparent a:not(.btn) {
  color: rgba(248, 248, 246, 0.9) !important;
  text-decoration: none !important;
  font-weight: 500;
  transition: color 0.3s ease;
}

/* Brighter on hover */
.navbar-adaptive.navbar-transparent:hover .navbar-link,
.navbar-adaptive.navbar-transparent:hover a:not(.btn),
.navbar-adaptive.navbar-transparent .navbar-link:hover,
.navbar-adaptive.navbar-transparent a:not(.btn):hover {
  color: white !important;
}

/* Smooth transition for scrolled state */
.navbar-adaptive.navbar-solid .navbar-link,
.navbar-adaptive.navbar-solid a:not(.btn),
.navbar-adaptive.navbar-scrolled .navbar-link,
.navbar-adaptive.navbar-scrolled a:not(.btn) {
  transition: color 0.3s ease;
}

/* Dropdown menu - controlled by JavaScript */
.navbar-adaptive .dropdown-menu {
  /* Positioned and styled, visibility controlled by hidden class */
}

/* Arrow rotation handled by JavaScript */
.dropdown-arrow {
  transition: transform 0.2s ease;
}

/* Dropdown trigger button - remove default button styling */
#what-we-do-trigger {
  background: none;
  border: none;
  font-size: inherit;
  font-family: inherit;
}

/* Dropdown items with dark text on white background */
.navbar-adaptive a.dropdown-item {
  color: #374151 !important;
}

.navbar-adaptive a.dropdown-item:hover {
  color: #111827 !important;
  background-color: #f3f4f6 !important;
}

/* Dark text for solid/scrolled navbar - but not for buttons or active links */
.navbar-adaptive.navbar-solid .navbar-link:not(.active),
.navbar-adaptive.navbar-solid a:not(.btn):not(.active),
.navbar-adaptive.navbar-scrolled .navbar-link:not(.active),
.navbar-adaptive.navbar-scrolled a:not(.btn):not(.active) {
  color: #374151 !important;
  text-decoration: none !important;
  font-weight: 500;
}

/* Keep Contact button white text always */
.navbar-adaptive .btn {
  color: white !important;
}

/* Remove all link decorations */
.navbar-adaptive a:hover,
.navbar-adaptive a:focus {
  text-decoration: none !important;
}

/* Remove focus rings */
.navbar-adaptive a:focus,
.navbar-adaptive button:focus {
  outline: none !important;
  box-shadow: none !important;
}

/* Active navigation link styles - with higher specificity */
.navbar-adaptive .navbar-link.active,
.navbar-adaptive.navbar-solid .navbar-link.active,
.navbar-adaptive.navbar-scrolled .navbar-link.active {
  background-color: #374151 !important; /* neutral-700 */
  color: white !important;
}

/* Active state for transparent navbar (hero pages) */
.navbar-adaptive.navbar-transparent .navbar-link.active {
  background-color: rgba(255, 255, 255, 0.2) !important;
  color: white !important;
}

/* Hover states for active links */
.navbar-adaptive .navbar-link.active:hover,
.navbar-adaptive.navbar-solid .navbar-link.active:hover,
.navbar-adaptive.navbar-scrolled .navbar-link.active:hover {
  background-color: #1f2937 !important; /* neutral-800 */
  color: white !important;
}

.navbar-adaptive.navbar-transparent .navbar-link.active:hover {
  background-color: rgba(255, 255, 255, 0.3) !important;
  color: white !important;
}

/* Mobile menu styles */
#mobile-menu-panel {
  background-color: white;
}

#mobile-menu-panel a {
  color: #374151;
}

#mobile-menu-panel a:hover {
  color: #111827;
  background-color: #f3f4f6;
}

/* Fix vertical alignment for small buttons */
.btn-sm {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}

/* Ensure consistent vertical centering for all button sizes */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
}
