.contact { background: var(--white); }

.contact__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: start;
}

.contact__info {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.contact__card {
  background: var(--bg-warm);
  padding: 24px;
  border-radius: var(--radius);
  border: 1px solid var(--border);
  transition: var(--transition);
}

.contact__card:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-sm);
}

.contact__card-icon {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--primary-light);
  color: var(--primary);
  border-radius: var(--radius-sm);
  font-size: 1.1rem;
  margin-bottom: 14px;
}

.contact__card h3 {
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--text-dark);
  margin-bottom: 6px;
}

.contact__card a,
.contact__card p {
  font-size: 0.88rem;
  color: var(--text-gray);
  line-height: 1.5;
}

.contact__card a:hover { color: var(--primary); }

.contact__map {
  border-radius: var(--radius);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
}

@media (max-width: 768px) {
  .contact__grid { grid-template-columns: 1fr; gap: 32px; }
  .contact__info { grid-template-columns: 1fr; }
}
