/* Active navigation (used on current page) */
.nav-link-active {
  border-radius: 9999px;
  background-color: rgba(30, 58, 138, 0.12);
  color: #1e3a8a;
  font-weight: 600;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}

@media (max-width: 1023px) {
  .nav-link-active {
    display: block;
    width: 100%;
    border-radius: 0.75rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
  }
}

/* Animations — layout and colors via Tailwind */

@keyframes cc-fade-in {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.cookie-consent-mount {
  animation: cc-fade-in 280ms ease-out both;
}

@keyframes hero-bg-pan {
  0% {
    transform: scale(1.05) translate(0, 0);
  }

  50% {
    transform: scale(1.08) translate(-1%, -1%);
  }

  100% {
    transform: scale(1.05) translate(0, 0);
  }
}

.hero-media {
  animation: hero-bg-pan 28s ease-in-out infinite;
}

@keyframes stat-rise {
  from {
    opacity: 0;
    transform: translateY(12px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.stat-anim {
  animation: stat-rise 0.65s ease-out both;
}

@media (prefers-reduced-motion: reduce) {
  .hero-media,
  .toast-notice-mount {
    animation: none !important;
  }

  .hero-media {
    transform: none;
  }

  .stat-anim,
  .cookie-consent-mount {
    animation: none;
  }
}

@keyframes toast-slide-in {
  from {
    opacity: 0;
    transform: translateX(120%);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.toast-notice-mount {
  animation: toast-slide-in 0.35s ease-out both;
}

.form-field-invalid {
  border-color: #b91c1c !important;
  box-shadow: 0 0 0 1px rgba(185, 28, 28, 0.25);
}

.form-field-msg {
  display: none;
}

.form-field-msg.is-visible {
  display: block;
}
