/* Contact Us page specific styles */

#main-content {
  padding-top: var(--space-24);
  padding-bottom: var(--space-32);
}

.contact-hero {
  display: flex;
  flex-direction: column;
  gap: var(--space-20);
}


.contact-hero__lead {
  font-size: var(--font-size-lg);
  color: var(--color-text-muted);
}

.contact-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1.25fr);
  gap: var(--space-20);
  align-items: flex-start;
}

.contact-hero__card .btn {
  margin-top: var(--space-12);
}

@media (max-width: 880px) {
  .contact-hero__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Layout for main form and side panels */

.contact-layout {
  display: grid;
  grid-template-columns: minmax(0, 2.1fr) minmax(0, 1.4fr);
  gap: var(--space-20);
  align-items: flex-start;
}

@media (max-width: 960px) {
  .contact-layout {
    grid-template-columns: minmax(0, 1fr);
  }
}

.contact-layout__main h2 {
  margin-top: 0;
}

/* Form styling */

.contact-form {
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
  margin-top: var(--space-8);
}

.contact-form__fieldset {
  border: none;
  padding: 0;
  margin: 0;
}

.contact-form__grid {
  gap: var(--space-12);
}

.contact-form__field {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.contact-form__field label {
  font-size: var(--font-size-sm);
  font-weight: 500;
  color: var(--color-gray-800);
}

.contact-form__hint {
  font-size: var(--font-size-xs);
  color: var(--color-text-muted);
  margin-bottom: 0;
}

.contact-form__field--checkbox {
  flex-direction: row;
  align-items: flex-start;
  gap: var(--space-8);
}

.contact-form__field--checkbox input[type="checkbox"] {
  margin-top: 4px;
}

.contact-form__fieldset--compact {
  margin-top: var(--space-4);
}

.contact-form__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-6);
  margin-top: var(--space-8);
}

.contact-form__status {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
  min-height: 1.2em;
}

/* Address block */

.contact-address {
  font-style: normal;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-normal);
  margin-bottom: var(--space-10);
}

/* Grids for lower sections */

.business-grid,
.privacy-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-20);
}

@media (max-width: 880px) {
  .business-grid,
  .privacy-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.business-grid .card-title,
.privacy-grid .card-title {
  margin-top: 0;
}
