/* Contact information, map, and enquiry form page styles. */
.contact-hero {
  padding: 4.5rem 0 4rem;
  color: #fff;
  background-color: var(--sy-navy);
  background-image:
    linear-gradient(90deg, rgba(10, 37, 64, .9), rgba(10, 37, 64, .48)),
    url("https://images.unsplash.com/photo-1512343879784-a960bf40e7f2?auto=format&fit=crop&w=1400&q=72");
  background-size: cover;
  background-position: center;
}

.contact-eyebrow {
  display: inline-block;
  margin-bottom: .75rem;
  color: var(--sy-yellow);
  font-size: .78rem;
  font-weight: 600;
}

.contact-title {
  max-width: 680px;
  margin: 0;
  font-size: 3rem;
  font-weight: 800;
  line-height: 1.1;
}

.contact-intro {
  max-width: 560px;
  margin: .9rem 0 0;
  color: #e1eaf2;
}

.contact-section { background: #fff; }

.contact-detail {
  display: flex;
  align-items: flex-start;
  gap: .75rem;
  margin-top: 1.25rem;
  color: var(--sy-text);
}

.contact-detail i { color: var(--sy-blue); }
.contact-detail a { color: var(--sy-navy); overflow-wrap: anywhere; }

.contact-map {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  border: 0;
  border-radius: 8px;
}

.contact-form {
  padding: 1.5rem;
  background: var(--sy-bg);
  border: 1px solid var(--sy-border);
  border-radius: 8px;
}

.contact-form-title {
  margin: 0 0 1.25rem;
  color: var(--sy-navy);
  font-size: 1.25rem;
  font-weight: 700;
}

.contact-form .form-label { color: var(--sy-navy); font-weight: 600; }
.contact-form .form-control { min-height: 46px; }
.contact-form textarea.form-control { min-height: 140px; }

@media (max-width: 767.98px) {
  .contact-hero { padding: 3rem 0; }
  .contact-title { font-size: 2.25rem; }
  .contact-form { padding: 1rem; }
}