/* Contact page luxury styles matching homepage design system */

.contact-hero-section {
  overflow: hidden;
}

.contact-hero-image {
  transform: scale(1.06);
  transition: transform 4s ease;
}

.contact-hero-section:hover .contact-hero-image {
  transform: scale(1.12);
}

#contact-hero-content-id {
  animation: contactFadeUp 0.8s ease-out both;
}

@keyframes contactFadeUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

#main-contact-section-id {
  background: none;
}

#contact-form-card-id,
#contact-info-card-id,
#contact-map-card-id,
#contact-final-cta-box-id {
  border: 1px solid hsla(43, 65%, 52%, 0.25);
}

.contact-input {
  transition: border-color 0.24s ease, box-shadow 0.24s ease, background-color 0.24s ease;
}

.contact-input:focus {
  outline: none;
  border-color: hsla(43, 65%, 52%, 0.75);
  box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.16);
  background-color: hsla(43, 65%, 52%, 0.05);
}

#contact-submit-btn-id {
  transition: transform 0.2s ease, box-shadow 0.25s ease, filter 0.25s ease;
}

#contact-submit-btn-id:hover {
  box-shadow: 0 0 22px rgba(212, 175, 55, 0.35);
  filter: saturate(1.1);
}

.contact-social-link {
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.contact-social-link:hover {
  transform: translateY(-3px);
  border-color: hsla(43, 65%, 52%, 0.6);
  box-shadow: 0 10px 24px rgba(212, 175, 55, 0.2);
}

.map-frame iframe {
  filter: saturate(0.92) contrast(1.02);
}

#instagram-highlight-section-id img {
  transition: transform 0.45s ease, filter 0.45s ease;
}

#instagram-highlight-section-id img:hover {
  transform: scale(1.05);
  filter: brightness(1.05);
}

#contact-final-cta-section-id {
  background: linear-gradient(
    to bottom,
    rgba(245, 230, 200, 0.04),
    rgba(212, 175, 55, 0.08)
  );
}

#contact-final-cta-box-id {
  background: linear-gradient(
    145deg,
    hsla(0, 0%, 100%, 0.06),
    hsla(43, 65%, 52%, 0.1)
  );
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

#contact-final-cta-box-id:hover {
  transform: translateY(-4px);
  border-color: hsla(43, 65%, 52%, 0.45);
  box-shadow: 0 20px 45px rgba(15, 15, 15, 0.2);
}

@media (max-width: 1024px) {
  #contact-hero-section-id {
    min-height: 60vh;
  }
}

@media (max-width: 768px) {
  #contact-hero-section-id {
    min-height: 55vh;
  }

  #contact-social-links-id {
    justify-content: flex-start;
  }
}

@media (prefers-reduced-motion: reduce) {
  .contact-hero-image,
  #contact-hero-content-id,
  .contact-social-link,
  #instagram-highlight-section-id img,
  #contact-final-cta-box-id,
  #contact-submit-btn-id {
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}
