.contact-hero { background: linear-gradient(135deg, var(--beige), var(--cream)); padding: 50px 20px; text-align: center; }
.contact-hero h1 { font-size: 2.4rem; margin-bottom: 8px; }
.contact-hero p { color: var(--gray); }
.contact-grid {
  display: grid; grid-template-columns: 1fr 1.2fr; gap: 48px;
  max-width: 1100px; margin: 40px auto; padding: 0 20px 60px;
}
.contact-info-card {
  background: var(--cream); border: 1px solid var(--border); border-radius: var(--radius);
  padding: 32px; box-shadow: var(--shadow);
}
.contact-info-card h3 { margin-bottom: 20px; font-size: 1.3rem; }
.info-item { display: flex; gap: 14px; margin-bottom: 20px; align-items: flex-start; }
.info-item i { color: var(--gold); font-size: 1.2rem; margin-top: 3px; }
.info-item strong { display: block; margin-bottom: 2px; }
.info-item span { color: var(--gray); font-size: 0.95rem; }
.contact-form-card {
  background: var(--cream); border: 1px solid var(--border); border-radius: var(--radius);
  padding: 32px; box-shadow: var(--shadow);
}
.contact-form-card h3 { margin-bottom: 20px; }
.form-group { margin-bottom: 16px; }
.form-group label { display: block; font-size: 0.85rem; font-weight: 500; margin-bottom: 6px; }
.form-group input, .form-group textarea {
  width: 100%; padding: 12px 14px; border: 1.5px solid var(--border); border-radius: 8px;
  font-size: 1rem; font-family: inherit; background: var(--white); outline: none;
}
.form-group input:focus, .form-group textarea:focus { border-color: var(--gold); }
.form-group textarea { min-height: 130px; resize: vertical; }
@media (max-width: 768px) { .contact-grid { grid-template-columns: 1fr; } }
