/* Page Contact — cohérence avec styles.css (Montserrat / boutons / cards) */

.contact-hero{
  margin-top:18px;
  border-radius:18px;
  overflow:hidden;
  box-shadow: var(--shadow);
  color:#1b3b52;
  padding:26px 22px;
  position:relative;

  /* fond cohérent (tu peux remplacer par une image si tu veux) */
  background:
    radial-gradient(900px 400px at 20% 40%, rgba(255,179,69,.25), transparent 58%),
    radial-gradient(900px 400px at 75% 45%, rgba(46,210,102,.18), transparent 55%),
    linear-gradient(180deg,#0b2c44, #071c2a);
}

.contact-hero-inner{max-width:720px}
.contact-hero h1{margin:0 0 8px;font-size:34px;font-weight:900}
.contact-hero p{margin:0 0 16px;color:#1b3b52;font-weight:500}
.contact-hero-actions{display:flex;gap:12px;flex-wrap:wrap}

.contact-grid{
  margin-top:18px;
  display:grid;
  grid-template-columns: 360px 1fr;
  gap:18px;
  align-items:start;
}

.contact-card, .form-card{
  border-radius:16px;
  box-shadow: var(--shadow);
  background:#fff;
  padding:18px;
}

.contact-card h2, .form-card h2{
  margin:0 0 12px;
  font-size:22px;
  font-weight:900;
  color:#1b3b52;
}

.contact-item{padding:10px 0;border-bottom:1px solid rgba(0,0,0,.06)}
.contact-item:last-child{border-bottom:0}
.contact-label{font-size:12px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.02em}
.contact-value{display:inline-block;margin-top:6px;font-weight:700;color:#1b3b52}
.contact-divider{height:1px;background:rgba(0,0,0,.06);margin:14px 0}

.contact-trust .trust-row{
  font-weight:700;
  color:#2a3b4a;
  margin:8px 0;
}

.form-sub{margin:0 0 14px;color:var(--muted);font-weight:500}

.contact-form label{display:block;margin:10px 0}
.contact-form span{display:block;font-weight:800;color:#2a3b4a;margin-bottom:6px;font-size:13px}
.contact-form input, .contact-form select, .contact-form textarea{
  width:100%;
  padding:12px 12px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.12);
  background:#fff;
  outline:none;
  font-family:inherit;
  font-weight:600;
}
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus{
  border-color: rgba(53,168,74,.55);
  box-shadow:0 0 0 4px rgba(53,168,74,.12);
}

.row{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:12px;
}

.form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}
.form-note{margin:12px 0 0;color:var(--muted);font-size:12px;font-weight:500}

/* anti-spam honeypot */
.hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}

@media (max-width: 900px){
  .contact-grid{grid-template-columns:1fr}
  .row{grid-template-columns:1fr}
}

.form-popup{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.45);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 99999;
}

.form-popup.show{
  display: flex !important;
}

.form-popup-box{
  background: #fff;
  padding: 28px;
  border-radius: 14px;
  text-align: center;
  box-shadow: 0 20px 50px rgba(0,0,0,.25);
  max-width: 420px;
  width: 90%;
}

.form-popup-box p{
  margin: 0 0 18px;
  font-size: 18px;
  font-weight: 700;
  color: #1b3b52;
}