@charset "UTF-8";

/* Keep the site's existing form layout when Mailform Pro adds its classes. */
#mailformpro dl {
  background: transparent;
}
#mailformpro dt label {
  display: block;
}
#mailformpro input[type="email"],
#mailformpro input[type="tel"] {
  width: 100%;
  padding: 10px;
}
#mailformpro textarea {
  display: block;
  width: 100%;
  min-height: 150px;
  resize: vertical;
}
#mailformpro input,
#mailformpro textarea {
  min-width: 0;
}
#mailformpro input:focus-visible,
#mailformpro textarea:focus-visible,
#mfp_phase_confirm button:focus-visible {
  outline: 2px solid #5a5f63;
  outline-offset: 3px;
}
#mailformpro .mfp_parent_error {
  border-color: #d50000;
}
#mailformpro .mfp_err {
  color: #d50000;
  font-size: 14px;
  line-height: 1.6;
}
/* Confirmation dialog follows the existing borders and rounded gray buttons. */
div#mfp_overlay_inner,
div#mfp_overlay_inner * {
  box-sizing: border-box;
}
div#mfp_overlay_inner {
  width: 800px;
  max-width: calc(100vw - 32px);
  padding: 32px;
  border-radius: 0;
  color: #333;
  font-family: inherit;
}
div#mfp_phase_confirm h4 {
  margin: 0 0 24px;
  padding: 0 0 16px;
  border-bottom: 1px solid #ddd;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
}
table#mfp_confirm_table tr th,
table#mfp_confirm_table tr td {
  padding: 16px 12px;
  font-size: 16px;
  line-height: 1.8;
  border-top: none;
  border-bottom: 1px solid #ddd;
  vertical-align: top;
}
table#mfp_confirm_table tr th {
  width: 230px;
  white-space: normal;
}
table#mfp_confirm_table tr.mfp_colored,
table#mfp_confirm_table tr.mfp_achroma {
  background: #fff;
}
div#mfp_phase_confirm div.mfp_buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  padding: 28px 0 0;
  font-size: 0;
}
div#mfp_phase_confirm .mfp_buttons button {
  appearance: none;
  width: 280px;
  max-width: 100%;
  margin: 0;
  padding: 16px;
  border: 1px solid #5a5f63;
  border-radius: 100px;
  background: #5a5f63;
  color: #fff;
  font-family: inherit;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
  cursor: pointer;
}
div#mfp_phase_confirm .mfp_buttons button#mfp_button_cancel {
  background: #fff;
  color: #5a5f63;
}
div#mfp_phase_confirm .mfp_buttons button:hover,
#mailformpro .c-form-btn:hover {
  opacity: .8;
}
@media screen and (max-width: 767px) {
  div#mfp_overlay_inner { padding: 20px 16px; }
  div#mfp_phase_confirm h4 { font-size: 20px; }
  table#mfp_confirm_table tr th,
  table#mfp_confirm_table tr td { display: block; width: 100%; padding: 10px 0; }
  table#mfp_confirm_table tr th { border-bottom: none; padding-bottom: 0; }
  table#mfp_confirm_table tr td { overflow-wrap: anywhere; }
  div#mfp_phase_confirm div.mfp_buttons { gap: 12px; }
  div#mfp_phase_confirm .mfp_buttons button { width: 100%; }
}
