 .hero--contact .hero__center {
  max-width: 720px;
}

.hero-badge--contact {
  letter-spacing: 0.16em;
}

.contact-layout {
  align-items: flex-start;
}

.contact-card {
  margin-top: var(--space-6);
}

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

.contact-list__item dt {
  font-size: var(--font-size-xs);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--gray-500);
  margin-bottom: var(--space-2);
}

.contact-list__item dd {
  margin: 0;
  color: var(--color-text);
}

.contact-form {
  margin-top: var(--space-6);
  padding: var(--space-12);
  border-radius: var(--radius-lg);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(238, 243, 247, 0.98));
  box-shadow: var(--shadow-card);
}

.contact-form__group {
  margin-bottom: var(--space-6);
}

.contact-form__group-row {
  align-items: flex-start;
}

.contact-form__consents {
  font-size: var(--font-size-sm);
}

.contact-form__checkbox {
  display: flex;
  align-items: flex-start;
  gap: var(--space-4);
}

.contact-form__checkbox input[type="checkbox"] {
  margin-top: 0.25rem;
}

.contact-form__checkbox label {
  cursor: pointer;
}

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

.contact-form__note {
  margin: 0;
  font-size: var(--font-size-sm);
  color: var(--gray-600);
}

.client-stats {
  margin-top: var(--space-4);
}

.trust-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}

.map-card__placeholder {
  border-radius: var(--radius-md);
  padding: var(--space-16) var(--space-12);
  background: radial-gradient(circle at top left, rgba(123, 147, 184, 0.28), rgba(120, 159, 138, 0.12));
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.map-card__title {
  font-family: var(--font-serif);
  font-size: var(--font-size-xl);
}

.map-card__subtitle {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}

.map-card__note {
  margin-top: var(--space-6);
  font-size: var(--font-size-sm);
}

.faq-inline {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
  font-size: var(--font-size-sm);
}

.faq-inline__item dt {
  font-weight: 600;
  margin-bottom: var(--space-2);
}

.faq-inline__item dd {
  margin: 0;
  color: var(--color-text-muted);
}

.hero-floating-contact .card--floating {
  min-height: 0;
}

@media (max-width: 960px) {
  .contact-form {
    padding: var(--space-10);
  }
}

@media (max-width: 640px) {
  .contact-form {
    padding: var(--space-8);
  }

  .contact-form__checkbox {
    align-items: flex-start;
  }
}
