/* contact.css */
.contact-grille {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  gap: clamp(2rem, 4vw, 4rem); align-items: start;
}
@media (max-width: 900px) { .contact-grille { grid-template-columns: 1fr; } }

.coordonnees { list-style: none; margin: var(--e3) 0; padding: 0; }
.coordonnees li {
  display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: var(--e2);
  padding: 1.1rem 0; border-bottom: 1px solid var(--ligne);
}
.coordonnees li:first-child { border-top: 1px solid var(--ligne); }
.coordonnees .icone {
  width: 46px; height: 46px; border-radius: 50%;
  display: grid; place-items: center;
  background: var(--bleu-voile); color: var(--bleu-fonce);
}
.coordonnees .icone svg { width: 20px; height: 20px; }
.coordonnees h3 {
  font-family: var(--font-corps); font-size: var(--t-micro); font-weight: 700;
  letter-spacing: .11em; text-transform: uppercase; color: var(--encre-tenue);
  margin: 0 0 .35rem;
}
.coordonnees p { margin: 0; font-size: var(--t-petit); }
.coordonnees a { text-decoration: none; font-weight: 600; }
.coordonnees a:hover { color: var(--bleu-fonce); text-decoration: underline; text-underline-offset: 3px; }
.coordonnees .tel { display: block; }
.contact-note { font-size: var(--t-petit); color: var(--encre-douce); }

.plan {
  margin-top: var(--e4);
  border: 1px solid var(--ligne); border-radius: var(--r-grand);
  overflow: hidden; background: var(--papier-creux);
}
.plan iframe { width: 100%; height: 340px; border: 0; display: block; }

.carte-formulaire {
  background: var(--blanc); border: 1px solid var(--ligne);
  border-radius: var(--r-grand); padding: clamp(1.5rem, 3vw, 2.5rem);
}
.carte-formulaire h2 { font-size: var(--t-h3); margin-bottom: .4rem; }
.formulaire-intro { font-size: var(--t-petit); color: var(--encre-douce); margin-bottom: var(--e4); }
