/* Legacy inline form dialogs: wider desktop measure, safe mobile edges. */
.mfp-content #fzv,
.mfp-content #flo,
.mfp-content #frezum,
.mfp-content #foob {
  position: relative;
  box-sizing: border-box;
  width: 640px;
  max-width: calc(100vw - 32px);
  padding: 32px;
  margin: 24px auto;
}
.mfp-content .for > .mfp-close2 {
  position: absolute;
  float: none;
  top: 12px;
  right: 12px;
  width: 44px;
  height: 44px;
  line-height: 42px;
}
.mfp-content .for .wpcf7 h3:first-of-type { padding-right: 44px; }
.mfp-content .for .formdiv2 { width: 100%; max-width: none; }
.mfp-content .for .filebut { display: block; box-sizing: border-box; width: 100%; }
.mfp-content .for .wpcf7-form,
.footer-area .wpcf7-form { line-height: 1.6; }
.mfp-content .for .wpcf7 input[type="text"],
.mfp-content .for .wpcf7 input[type="email"],
.mfp-content .for .wpcf7 input[type="tel"],
.mfp-content .for .wpcf7 input[type="number"],
.footer-area .wpcf7 input[type="text"],
.footer-area .wpcf7 input[type="email"],
.footer-area .wpcf7 input[type="tel"] {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-height: 44px;
  font-size: 16px;
}
@media (max-width: 767px) {
  .mfp-content #fzv,
  .mfp-content #flo,
  .mfp-content #frezum,
  .mfp-content #foob { padding: 24px 20px; margin: 16px auto; }
}
/* Widen only this container: original three columns keep their desktop measure. */
@media (min-width: 1380px) {
  .footer-area > .container { width: 1290px; }
  .footer-area > .container > .row > :nth-child(-n+3) { width: calc((100% - 420px) / 3); }
  .footer-area > .container > .row > :nth-child(4) { width: 420px; }
}
@media (min-width: 768px) and (max-width: 1379px) {
  .footer-area > .container > .row { display: flex; flex-wrap: wrap; }
  .footer-area > .container > .row > [class*="col-"] { float: none; width: 50%; min-width: 0; }
}
