.contact-grid {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  gap: 4rem;
  align-items: start;
}
.contact-info h2 { margin-bottom: 1rem; }
.contact-intro { margin-bottom: 2rem; font-style: italic; }
.info-list { list-style: none; }
.info-list dt { font-size: 0.72rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--color-accent); font-weight: 600; margin-top: 1.5rem; }
.info-list dd { margin-top: 0.3rem; font-size: 0.95rem; }
.info-list dd:first-of-type { margin-top: 0; }
.social-block { margin-top: 2rem; }
.social-links-lg { list-style: none; display: flex; gap: 1rem; }
.social-links-lg a { font-weight: 600; font-size: 0.9rem; color: var(--color-primary); }

.contact-form-col h2 { margin-bottom: 1.5rem; }
.contact-form { display: flex; flex-direction: column; gap: 1.25rem; }
.form-group { display: flex; flex-direction: column; gap: 0.4rem; }
.form-group label { font-size: 0.78rem; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; opacity: 0.7; }
.form-group input,
.form-group select,
.form-group textarea {
  border: 1.5px solid rgba(74,44,110,0.18);
  border-radius: 5px;
  font-family: var(--font-body);
  font-size: 1rem;
  padding: 0.7rem 0.9rem;
  color: var(--color-text);
  background: #fff;
  transition: border-color 0.2s;
}
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus { outline: none; border-color: var(--color-primary); }
.form-group textarea { resize: vertical; min-height: 120px; }
.form-note { font-size: 0.8rem; opacity: 0.55; text-align: center; margin: 0; font-style: italic; }

@media (max-width: 768px) {
  .contact-grid { grid-template-columns: 1fr; gap: 2.5rem; }
}
