/* Unplug & Breathe — Custom Styles */

/* Smooth scrolling */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 4rem;
}

/* Breathing animation for the hero circle */
.breath-animation {
  animation: breathe 6s ease-in-out infinite;
}

@keyframes breathe {
  0%, 100% {
    transform: scale(1);
    opacity: 0.4;
  }
  50% {
    transform: scale(1.3);
    opacity: 0.8;
  }
}

/* Subtle background gradient for hero */
.breath-bg {
  background: radial-gradient(ellipse at 50% 40%, rgba(182, 196, 162, 0.25) 0%, rgba(254, 253, 251, 0) 70%);
}

/* Navbar shadow on scroll */
.nav-scrolled {
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.06), 0 1px 2px -1px rgba(0, 0, 0, 0.06);
}

/* Form focus states */
input:focus,
textarea:focus {
  box-shadow: 0 0 0 3px rgba(149, 166, 126, 0.15);
}

/* Smooth section transitions */
section {
  position: relative;
}

/* Wave divider (optional, between sections) */
.wave-divider {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}

.wave-divider svg {
  display: block;
  width: 100%;
  height: 40px;
}

/* Mobile menu transition */
#mobile-menu {
  transition: all 0.2s ease-in-out;
}

/* Subtle hover lift for cards */
.hover-lift {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.hover-lift:hover {
  transform: translateY(-2px);
}

/* Form success/error states */
.form-success {
  color: #5f704d;
  background-color: #e8ebe3;
  padding: 0.75rem 1rem;
  border-radius: 0.5rem;
}

.form-error {
  color: #a74221;
  background-color: #fae8d8;
  padding: 0.75rem 1rem;
  border-radius: 0.5rem;
}

/* Selection color */
::selection {
  background-color: rgba(149, 166, 126, 0.3);
  color: inherit;
}

/* Scroll indicator bounce */
@keyframes bounce {
  0%, 100% {
    transform: translateY(0) translateX(-50%);
  }
  50% {
    transform: translateY(-8px) translateX(-50%);
  }
}
