/* Custom overrides and enhancements beyond Tailwind */

/* Smooth focus styles */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible {
  outline: 2px solid #6fc77a;
  outline-offset: 2px;
  border-radius: 4px;
}

/* Selection color */
::selection {
  background-color: #a6dfaa;
  color: #102a43;
}

/* Custom scrollbar */
::-webkit-scrollbar {
  width: 8px;
}
::-webkit-scrollbar-track {
  background: #f5f5f4;
}
::-webkit-scrollbar-thumb {
  background: #9fb3c8;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #627d98;
}

/* Image loading placeholder */
img {
  background-color: #e5e7eb;
}

/* Subtle pattern overlay for navy sections */
.bg-navy-900::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 25% 25%, rgba(61, 168, 86, 0.03) 0%, transparent 50%),
                    radial-gradient(circle at 75% 75%, rgba(166, 223, 170, 0.03) 0%, transparent 50%);
  pointer-events: none;
}

/* Card hover lift */
.group:hover {
  transform: translateY(-2px);
  transition: transform 0.3s ease;
}

/* Button ripple-like effect */
button, a {
  position: relative;
  overflow: visible;
}

/* Reduced motion for scroll reveals */
@media (prefers-reduced-motion: reduce) {
  .reveal {
    opacity: 1 !important;
    transform: none !important;
  }
  html {
    scroll-behavior: auto;
  }
  .group:hover img {
    transform: none;
  }
}
