/* ==========================================================================
   MacSeeds — Page Contact + formulaire Contact Form 7
   ========================================================================== */

.macseeds-contact{
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
  color: var(--ms-ink, #17181A);
  position: relative;
}

.ms-mesh{
  position: fixed; inset: 0; z-index: -1;
  background:
    radial-gradient(circle at 15% 20%, rgba(27,107,123,0.12), transparent 40%),
    radial-gradient(circle at 85% 15%, rgba(224,92,58,0.1), transparent 42%),
    var(--ms-bg, #FAFAF9);
  filter: blur(40px) saturate(115%);
}

.ms-contact-wrap{ max-width: 560px; margin: 0 auto; padding: 56px 28px 100px; }

.ms-contact-header{ display:none; }

.ms-contact-form{
  background: rgba(255,255,255,0.55);
  border: 1px solid rgba(0,0,0,0.06);
  border-radius: 24px;
  padding: 32px 30px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.05);
}

/* ---- Contact Form 7 ---- */
.wpcf7-form p{ margin: 0 0 18px; }

.wpcf7-form label{
  display:block; font-size:13.5px; font-weight:700;
  color: var(--ms-ink, #17181A);
  margin-bottom: 6px;
}

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="url"],
.wpcf7-form textarea,
.wpcf7-form select{
  width:100%; box-sizing:border-box;
  font-family: inherit; font-size:15px; color: var(--ms-ink, #17181A);
  background: rgba(0,0,0,0.035);
  border: 1px solid rgba(0,0,0,0.1);
  border-radius: 12px;
  padding: 12px 14px;
  transition: border-color .2s ease, background .2s ease;
}
.wpcf7-form textarea{ min-height: 140px; resize: vertical; }

.wpcf7-form input:focus,
.wpcf7-form textarea:focus,
.wpcf7-form select:focus{
  outline:none;
  border-color: #007AFF;
  background: #fff;
}

.wpcf7-form select{ appearance:none; cursor:pointer;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 9l6 6 6-6' fill='none' stroke='%2355585E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat:no-repeat; background-position: right 14px center; background-size:16px;
  padding-right: 40px;
}

.wpcf7-form input[type="submit"]{
  display:inline-flex; align-items:center; justify-content:center;
  font-family: "Bricolage Grotesque", -apple-system, sans-serif;
  font-size:15.5px; font-weight:700; color:#fff;
  background:#007AFF; border:none; border-radius:100px;
  padding: 13px 30px; cursor:pointer;
  transition: background .2s ease, transform .2s ease;
  width:auto;
}
.wpcf7-form input[type="submit"]:hover{ background:#0068DB; transform: translateY(-2px); }
.wpcf7-form input[type="submit"]:disabled{ opacity:0.6; cursor:default; transform:none; }

/* messages de validation / réponse */
.wpcf7-not-valid-tip{
  color:#D93025; font-size:12.5px; margin-top:5px; display:block;
}
.wpcf7-form-control-wrap{ display:block; }

.wpcf7 .wpcf7-response-output{
  margin: 20px 0 0 !important;
  border-radius: 12px !important;
  padding: 12px 16px !important;
  font-size: 14px !important;
  border: 1px solid rgba(0,0,0,0.1) !important;
}
.wpcf7-mail-sent-ok{
  border-color: rgba(52,199,89,0.4) !important;
  background: rgba(52,199,89,0.08);
  color:#1D7A34 !important;
}
.wpcf7-validation-errors,
.wpcf7-acceptance-missing{
  border-color: rgba(217,48,37,0.35) !important;
  background: rgba(217,48,37,0.06);
  color:#B3261E !important;
}

.wpcf7-spinner{ margin-left: 10px; }

/* mode sombre */
html[data-theme="dark"] .ms-contact-form{
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.09);
}
html[data-theme="dark"] .wpcf7-form label{ color:#F2F2F3; }
html[data-theme="dark"] .wpcf7-form input[type="text"],
html[data-theme="dark"] .wpcf7-form input[type="email"],
html[data-theme="dark"] .wpcf7-form input[type="tel"],
html[data-theme="dark"] .wpcf7-form input[type="url"],
html[data-theme="dark"] .wpcf7-form textarea,
html[data-theme="dark"] .wpcf7-form select{
  background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.14); color:#F2F2F3;
}
html[data-theme="dark"] .wpcf7-form input:focus,
html[data-theme="dark"] .wpcf7-form textarea:focus,
html[data-theme="dark"] .wpcf7-form select:focus{ background: rgba(255,255,255,0.1); border-color:#0A84FF; }

html[data-theme="dark"] .wpcf7-form select{
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 9l6 6 6-6' fill='none' stroke='%239A9CA2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
}

@media (max-width: 500px){
  .ms-contact-form{ padding: 24px 20px; }
}
