/* ===== CONTACT ===== */
    .contact-grid {
      display: grid; grid-template-columns: 1fr 1fr; gap: 3rem;
      max-width: 1000px; margin: 0 auto;
    }
    .form-group { margin-bottom: 1.1rem; }
    .form-label { font-size: .85rem; font-weight: 500; color: var(--muted); margin-bottom: .35rem; display: block; }
    .form-input {
      width: 100%; padding: .65rem 1rem; border: 1.5px solid #e0c8c8;
      border-radius: 10px; font-family: 'Poppins', sans-serif; font-size: .9rem;
      color: var(--text); background: var(--white); transition: border-color .2s;
    }
    .form-input:focus { outline: none; border-color: var(--maroon); }
    textarea.form-input { resize: vertical; min-height: 110px; }
    .contact-info-title { font-family: 'Playfair Display', serif; color: var(--maroon); margin-bottom: .8rem; font-size: 1.1rem; }
    .contact-info-line { font-size: .88rem; color: var(--muted); margin-bottom: .4rem; }
    .map-wrap { margin-top: 1rem; border-radius: var(--radius); overflow: hidden; }
    .map-wrap iframe { width: 100%; height: 220px; border: 0; display: block; }
    .map-link { display: inline-block; margin-top: .6rem; font-size: .8rem; color: var(--maroon); text-decoration: underline; }