/* =========================
   CONTACT PAGE PATCH
   Scopé pour ne rien casser
========================= */

.contact-page{
  margin-bottom:2.5rem;
}

.contact-page-head{
  margin-bottom:1.25rem;
}

.contact-page-head h1{
  margin-bottom:.5rem;
}

.contact-page-head p{
  max-width:880px;
  line-height:1.75;
}

.contact-page .alert{
  margin-bottom:1rem;
}

.contact-layout{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);
  gap:24px;
  align-items:start;
}

.contact-form-wrapper,
.contact-info{
  background:#fff;
  border:1px solid rgba(13,31,28,.10);
  border-radius:18px;
  box-shadow:0 12px 30px rgba(13,31,28,.06);
}

.contact-form-wrapper{
}

.contact-info{
  padding:1.25rem;
}

.contact-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.contact-form fieldset{
  border:0;
  padding:10px;
  margin:5px 10px;
  display:grid;
  gap:8px;
  min-width:0;
}

.contact-form label{
  font-weight:700;
  color:var(--vert-tres-fonce, #0D1F1C);
}

.contact-form input,
.contact-form select,
.contact-form textarea{
  border:1px solid rgba(13,31,28,.16);
  border-radius:12px;
  padding:12px 14px;
  background:#fff;
  font:inherit;
  color:inherit;
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus{
  outline:none;
  border-color:#1A7346;
  box-shadow:0 0 0 3px rgba(26,115,70,.10);
}

.contact-field-full{
  grid-column:1 / -1;
}

.contact-actions{
  grid-column:1 / -1;
  display:flex;
  justify-content:flex-start;
  margin-top:4px;
}

.contact-honeypot{
  position:absolute !important;
  left:-9999px !important;
  opacity:0 !important;
  pointer-events:none !important;
}

.contact-info h2{
  margin-top:0;
  margin-bottom:1rem;
}

.contact-info-list{
  display:grid;
  gap:12px;
}

.contact-info-list p{
  margin:0;
  line-height:1.7;
}

html[dir="rtl"] .contact-page-head,
html[dir="rtl"] .contact-info,
html[dir="rtl"] .contact-form{
  text-align:right;
}

@media (max-width:980px){
  .contact-layout{
    grid-template-columns:1fr;
  }
}

@media (max-width:768px){
  .contact-form{
    grid-template-columns:1fr;
  }

  .contact-actions .button{
    width:100%;
    justify-content:center;
  }
}
