/* ============================================================
   HMI Corporate — Contact Form 7 brand styling
   Form di section Kontak (dark teal bg) → kartu ivory.
   ============================================================ */
.section.contact .wpcf7{
  background:#F5F4F0;
  border-radius:6px;
  padding:38px 34px;
  max-width:640px;
  margin:34px auto 0;
  box-shadow:0 2px 6px rgba(11,39,43,.08),0 16px 40px -16px rgba(11,39,43,.20);
  text-align:left;
}
.section.contact .wpcf7 .wpcf7-form{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}
.section.contact .wpcf7 .wpcf7-form > p:has(.wpcf7-textarea),
.section.contact .wpcf7 .wpcf7-form > p:has(.wpcf7-submit){grid-column:1/-1}
.section.contact .wpcf7 label{display:block;font-family:'Montserrat',sans-serif;font-weight:700;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#1E3940}
.section.contact .wpcf7 input[type=text],
.section.contact .wpcf7 input[type=email],
.section.contact .wpcf7 input[type=tel],
.section.contact .wpcf7 select,
.section.contact .wpcf7 textarea{
  display:block;width:100%;margin-top:7px;padding:12px 14px;
  border:1px solid rgba(24,52,60,.25);border-radius:3px;
  background:#fff;font-family:'Open Sans',sans-serif;font-size:.92rem;color:#1E3940;outline:none;
  transition:border-color .2s;
}
.section.contact .wpcf7 input:focus,.section.contact .wpcf7 select:focus,.section.contact .wpcf7 textarea:focus{border-color:#DAB795}
.section.contact .wpcf7 textarea{min-height:120px;resize:vertical}
.section.contact .wpcf7 input[type=submit]{
  justify-self:center;
  padding:16px 44px;border:none;border-radius:999px;cursor:pointer;
  background:#18343C;color:#F5F4F0;
  font-family:'Montserrat',sans-serif;font-weight:800;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;
  transition:transform .25s,background .25s;
}
.section.contact .wpcf7 input[type=submit]:hover{transform:translateY(-2px);background:#0B272B}
.section.contact .wpcf7 .wpcf7-not-valid-tip{font-size:.78rem;color:#B4452F;margin-top:6px}
.section.contact .wpcf7 input.wpcf7-not-valid,.section.contact .wpcf7 textarea.wpcf7-not-valid{border-color:#B4452F}
.section.contact .wpcf7 form.sent .wpcf7-response-output{
  grid-column:1/-1;margin-top:4px;padding:14px 18px;border:none;border-radius:3px;
  background:#E8F0EA;color:#1F5B33;font-family:'Open Sans',sans-serif;font-size:.9rem;
}
.section.contact .wpcf7 .wpcf7-response-output{
  grid-column:1/-1;border:none;font-size:.88rem;color:#B4452F;
}
@media (max-width:640px){
  .section.contact .wpcf7{padding:28px 20px}
  .section.contact .wpcf7 .wpcf7-form{grid-template-columns:1fr}
}

/* Field full-width (Pesan & submit) — QA 12 Okt */
.section.contact .wpcf7 .wpcf7-form > p.cf7-full{grid-column:1/-1;width:100%;min-width:0;justify-self:stretch}
.section.contact .wpcf7 .wpcf7-form > p.cf7-half{min-width:0}

/* Jangan warisi max-width 44ch dari .contact-inner p (QA 12 Okt — akar 403px) */
.section.contact .wpcf7 .wpcf7-form > p{max-width:none}
