/* ============================================================
   Styles spécifiques à contact.php
   À charger APRES style.css (variables, menu, modal partagés)
   ============================================================ */

.intro-contact{
  position:relative;
  z-index:1;
  max-width:700px;
  margin:0 auto;
  padding:0 1.5rem 2rem;
  text-align:center;
  color:var(--encre-doux);
  font-size:0.98rem;
}

.zone-contact{
  position:relative;
  z-index:1;
  max-width:640px;
  margin:0 auto;
  padding:0 1.5rem 3rem;
}

.carte-contact{
  background:#fff;
  border:1px solid rgba(29,36,48,0.08);
  border-top:4px solid var(--rubis);
  border-radius:12px;
  padding:2rem 1.8rem;
  box-shadow:0 10px 26px rgba(29,36,48,0.08);
}
.carte-contact h2{
  font-family:'Playfair Display', serif;
  font-weight:700;
  font-size:1.3rem;
  color:var(--bleu);
  margin-bottom:0.5rem;
}
.carte-contact > p{
  font-size:0.92rem;
  line-height:1.6;
  color:var(--encre-doux);
  margin-bottom:1.5rem;
}

.carte-contact label{
  display:block;
  font-size:0.85rem;
  font-weight:600;
  color:var(--encre);
  margin-bottom:1.1rem;
}
.carte-contact input[type="text"],
.carte-contact input[type="email"],
.carte-contact input[type="tel"],
.carte-contact textarea{
  display:block;
  width:100%;
  margin-top:0.4rem;
  padding:0.65rem 0.75rem;
  font-family:'Source Sans 3', sans-serif;
  font-size:0.92rem;
  color:var(--encre);
  border:1px solid rgba(29,36,48,0.2);
  border-radius:6px;
}
.carte-contact input:focus,
.carte-contact textarea:focus{
  outline:none;
  border-color:var(--rubis);
}
.carte-contact textarea{
  resize:vertical;
}

.bouton-contact{
  width:100%;
  background:var(--rubis);
  color:#fff;
  border:none;
  padding:0.9rem;
  font-size:0.95rem;
  font-weight:700;
  border-radius:8px;
  cursor:pointer;
  transition:background 0.15s;
  margin-top:0.5rem;
}
.bouton-contact:hover{
  background:#7A1220;
}
.bouton-contact:disabled{
  opacity:0.6;
  cursor:not-allowed;
}

.message-contact{
  border-radius:8px;
  padding:0.9rem 1.1rem;
  font-size:0.88rem;
  margin-bottom:1.2rem;
  text-align:center;
}
.message-contact.succes{
  background:#EAF4EF;
  color:var(--emeraude);
  border:1px solid rgba(15,94,74,0.25);
}
.message-contact.erreur{
  background:#FBEEEF;
  color:var(--rubis);
  border:1px solid rgba(155,26,45,0.25);
}

.zone-carte{
  position:relative;
  z-index:1;
  max-width:960px;
  margin:0 auto;
  padding:0 1.5rem 4rem;
}
.zone-carte iframe{
  width:100%;
  height:340px;
  border:0;
  border-radius:12px;
  box-shadow:0 14px 34px rgba(29,36,48,0.15);
}

