.contact-form .btn-primary,
.request-confirm .btn-primary {
  background: var(--coral);
}

.contact-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 22px;
}

.contact-card {
  background: var(--soft-blue);
}

.contact-form {
  display: grid;
  gap: 18px;
}

.contact-note {
  color: var(--sub);
  font-size: 13px;
}

.request-confirm {
  margin-top: 20px;
  padding: 20px;
  border-radius: 20px;
  background: #f8f0e4;
}

.request-confirm[hidden] {
  display: none !important;
}

.request-confirm__body {
  display: grid;
  gap: 12px;
  margin-bottom: 18px;
}

.request-confirm__row {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(39, 75, 93, 0.08);
}

.request-confirm__label {
  font-weight: 700;
}

.request-result {
  display: none;
  margin-top: 18px;
  padding: 18px;
  border-radius: 20px;
}

.request-result--success {
  background: #eef6f0;
}

.request-result--error {
  background: #fff1f1;
}

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

@media (max-width: 767px) {
  .request-confirm__row {
    grid-template-columns: 1fr;
    gap: 6px;
  }
}
