.contact {
  background: var(--cream) !important;
  color: var(--ink);
}

.contact-form-layout {
  align-items: stretch;
  gap: 0;
  padding: 0;
}

.contact-intro {
  display: flex;
  container-type: inline-size;
  flex-direction: column;
  justify-content: space-between;
  min-height: 620px;
  padding: clamp(34px, 5vw, 72px);
  background: var(--lime);
  color: var(--ink);
}

.contact-intro .section-label {
  color: var(--blue);
}

.contact-intro h2 {
  margin-top: 22px;
  color: var(--ink);
  max-width: 100%;
  font-size: clamp(30px, 13cqi, 60px);
  line-height: .96;
  overflow-wrap: anywhere;
}

.contact-intro h2 em {
  color: var(--blue);
}

.contact-intro > p {
  max-width: 430px;
  margin-top: 26px;
  color: rgba(7,30,61,.78);
}

.contact-details {
  gap: 7px;
  margin-top: 32px;
  color: rgba(7,30,61,.7);
}

.contact-details a {
  color: var(--ink);
  font-weight: 700;
}

.contact-form {
  min-height: 620px;
  align-content: start;
  padding: clamp(28px, 4vw, 56px);
  background: #fff;
  border: 1px solid #d9e2ec;
  box-shadow: 0 18px 46px rgba(7,30,61,.08);
}

.contact-form label {
  color: var(--ink);
}

.contact-form label small {
  color: var(--muted);
}

.contact-form input,
.contact-form select,
.contact-form textarea {
  border: 1px solid #afc0d1;
  background: #fff;
  color: var(--ink);
}

.contact-form input::placeholder,
.contact-form textarea::placeholder {
  color: #64788c;
  opacity: 1;
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  border-color: var(--blue);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(20,125,224,.12);
}

.privacy-consent,
.privacy-consent label,
.privacy-note,
.form-footnote {
  color: #40566c;
}

.privacy-inline {
  margin: 14px 0 0;
  color: #40566c;
  font-size: 13px;
  line-height: 1.55;
}

.privacy-inline a,
.privacy-note a {
  color: var(--blue);
  font-weight: 700;
}

.privacy-note summary,
.privacy-note summary {
  color: var(--ink);
}

.privacy-consent input {
  accent-color: var(--blue);
}

.form-footnote {
  font-size: 12px;
}

@media (max-width: 900px) {
  .contact-intro,
  .contact-form {
    min-height: 0;
  }

  .contact-intro {
    padding: 34px 22px;
  }

  .contact-form {
    padding: 24px 18px;
  }
}
