/* =========================================================
   CONTACT PAGE FIXES
   Scoped so legacy glass-card rules cannot bleach contact text.
   ========================================================= */

.contact-main-section {
  background: #fffdf9 !important;
}

.contact-main-section > .container > .grid-2-cols {
  align-items: stretch !important;
  gap: clamp(28px, 5vw, 72px) !important;
}

.contact-main-section .contact-info-wrapper {
  background: transparent !important;
  border: 0 !important;
  padding: 8px 0 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  color: #1c1c1c !important;
}

.contact-main-section .contact-info-wrapper .section-label,
.contact-main-section .contact-info-wrapper .section-text {
  color: #666 !important;
}

.contact-main-section .contact-info-wrapper .section-title {
  color: #171717 !important;
}

/* Contact cards were inheriting the site's dark/glass text treatment. */
.contact-main-section .glass-card {
  position: relative;
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
  width: 100%;
  min-height: 94px;
  padding: 20px 22px !important;
  background: #f8f6f1 !important;
  color: #1c1c1c !important;
  border: 1px solid rgba(28,28,28,.08) !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 35px rgba(28,28,28,.055) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transform: none !important;
}

.contact-main-section .glass-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 20px 45px rgba(28,28,28,.09) !important;
  border-color: rgba(200,90,23,.2) !important;
}

.contact-main-section .glass-card .card-icon {
  flex: 0 0 52px;
  width: 52px !important;
  height: 52px !important;
  background: rgba(200,90,23,.09) !important;
  color: #c85a17 !important;
}

.contact-main-section .glass-card .card-info {
  min-width: 0;
  color: #1c1c1c !important;
}

.contact-main-section .glass-card .card-info h4 {
  margin: 0 0 5px !important;
  color: #686868 !important;
  font-size: .72rem !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

.contact-main-section .glass-card .card-info p,
.contact-main-section .glass-card .card-info p a {
  margin: 0 !important;
  color: #222 !important;
  font-size: 1rem !important;
  line-height: 1.55 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  overflow-wrap: anywhere;
}

.contact-main-section .glass-card .card-info p a:hover {
  color: #c85a17 !important;
}

/* Form panel */
.contact-main-section .contact-form-container {
  height: 100%;
  background: #f4f1eb !important;
  color: #1c1c1c !important;
  border: 1px solid rgba(28,28,28,.09) !important;
  border-radius: 24px !important;
  padding: clamp(26px, 4vw, 42px) !important;
  box-shadow: 0 18px 55px rgba(28,28,28,.055) !important;
}

.contact-main-section .contact-form-container label {
  color: #333 !important;
}

.contact-main-section .contact-form-container input,
.contact-main-section .contact-form-container textarea,
.contact-main-section .contact-form-container select {
  color: #1c1c1c !important;
  background: #fffdf9 !important;
}

.contact-main-section .contact-form-container input::placeholder,
.contact-main-section .contact-form-container textarea::placeholder {
  color: #9a9893 !important;
  opacity: 1;
}

.contact-main-section .contact-form-container .error-message {
  color: #b42318 !important;
}

.contact-main-section #form-success-box {
  color: #155724 !important;
}

@media (max-width: 900px) {
  .contact-main-section > .container > .grid-2-cols {
    grid-template-columns: 1fr !important;
  }

  .contact-main-section .contact-form-container {
    height: auto;
  }
}

@media (max-width: 600px) {
  .contact-main-section .glass-card {
    padding: 17px !important;
    min-height: 86px;
  }

  .contact-main-section .glass-card .card-icon {
    flex-basis: 46px;
    width: 46px !important;
    height: 46px !important;
  }

  .contact-main-section .glass-card .card-info p,
  .contact-main-section .glass-card .card-info p a {
    font-size: .92rem !important;
  }
}
