/* Custom styles — minimal, additive to Tailwind */

/* Smooth scroll */
html {
  scroll-behavior: smooth;
}

/* Selection color */
::selection {
  background: #B8E6D9;
  color: #0B1D3A;
}

/* Mobile menu transitions */
#mobile-menu {
  transition: transform 0.3s ease;
}

#mobile-menu.open {
  transform: translateX(0);
}

/* Link hover underline animation */
a.mobile-link {
  position: relative;
}

a.mobile-link::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 1px;
  background: #B8E6D9;
  transition: width 0.25s ease;
}

a.mobile-link:hover::after {
  width: 100%;
}

/* Nav scroll state */
.nav-scrolled {
  box-shadow: 0 1px 0 rgba(11, 29, 58, 0.06);
}

/* Form focus ring */
input:focus,
textarea:focus {
  box-shadow: 0 0 0 3px rgba(184, 230, 217, 0.3);
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  .group img {
    transition: none;
  }
  .group:hover img {
    transform: none;
  }
}

/* Subtle line decorations */
.section-line {
  width: 40px;
  height: 1px;
  background: #B8E6D9;
}
</style>
