/* Custom aesthetic enhancements */

.fw-black { font-weight: 900; }
.tracking-tight { letter-spacing: -0.03em; }
.tracking-wider { letter-spacing: 0.05em; }

.backdrop-blur {
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.hero-image-container {
  aspect-ratio: 4/3;
  transition: transform 0.7s ease;
}

.hover-lift:hover {
  transform: translateY(-8px);
  box-shadow: 0 1rem 3rem rgba(0,0,0,0.1) !important;
}

.absolute-bottom-start {
  position: absolute;
  bottom: 0;
  left: 0;
}

.py-lg-7 {
  padding-top: 6rem;
  padding-bottom: 6rem;
}

@media (min-width: 992px) {
  .py-lg-7 {
    padding-top: 8rem;
    padding-bottom: 8rem;
  }
}

@keyframes floating {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
}

.grayscale-hover div {
  filter: grayscale(1);
  opacity: 0.5;
  transition: all 0.4s ease;
}

.grayscale-hover div:hover {
  filter: grayscale(0);
  opacity: 1;
}

.hover-primary:hover {
  color: var(--bs-primary) !important;
}

.form-control:focus, .form-select:focus {
  background-color: #fff !important;
  box-shadow: 0 0 0 0.25rem rgba(13, 127, 242, 0.1);
  border-color: var(--bs-primary);
}

.extra-small {
  font-size: 0.75rem;
}

@media (min-width: 768px) {
  .w-md-auto {
    width: auto !important;
  }
}
