body.contact {
  overflow-x: initial;
}
body.contact main {
  overflow: initial;
}
body.contact section.contact {
  padding-left: 0;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.contact section.contact {
    width: 100%;
    padding-top: var(--hh);
  }
}
@media only screen and (max-width: 767px) {
  body.contact section.contact {
    width: 100%;
    padding-top: var(--hh);
  }
}
body.contact section.contact .container {
  display: flex;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.contact section.contact .container {
    flex-direction: column;
  }
}
@media only screen and (max-width: 767px) {
  body.contact section.contact .container {
    flex-direction: column;
  }
}
body.contact section.contact .container .offices {
  width: calc(0.6 * (100vw - var(--hr)));
  left: calc(0.4 * (100vw - var(--hr)));
  position: relative;
  flex-grow: 0;
  padding-top: min(max(min(max(62px, 10.9375vw), 86px), 6.71875vw), 100px);
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.contact section.contact .container .offices {
    padding-left: 30px;
    padding-right: 30px;
    left: 0;
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  body.contact section.contact .container .offices {
    padding-left: 22px;
    padding-right: 22px;
    left: 0;
    width: 100%;
  }
}
body.contact section.contact .container .offices .location-info {
  margin-bottom: 50px;
}
body.contact section.contact .container .offices iframe {
  width: 100%;
  margin-bottom: 38px;
}
body.contact section.contact .container .offices h2 {
  font-size: min(max(26px, 3.3854166667vw), 34px);
  font-weight: 300;
  font-family: "Ubuntu", s-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  color: #171d4f;
  margin-bottom: 21px;
}
body.contact section.contact .container .offices p {
  font-size: min(max(16px, 2.0833333333vw), 18px);
  font-family: "OpenSans", s-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  color: #171d4f;
}
body.contact section.contact .container .offices p .semibold {
  font-weight: 600;
}
body.contact section.contact .container .offices h2,
body.contact section.contact .container .offices p {
  padding-left: 50px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.contact section.contact .container .offices h2,
  body.contact section.contact .container .offices p {
    padding-left: 0;
  }
}
@media only screen and (max-width: 767px) {
  body.contact section.contact .container .offices h2,
  body.contact section.contact .container .offices p {
    padding-left: 0;
  }
}
body.contact section.contact .container .form {
  width: calc(0.4 * (100vw - var(--hr)));
  left: var(--hr);
  background-color: #4a972d;
  position: fixed;
  top: calc(var(--hh));
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.contact section.contact .container .form {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  body.contact section.contact .container .form {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
  }
}
body.contact section.contact .container .form .form-container {
  overflow: auto;
  top: 0;
  padding-top: 50px;
  padding-left: 50px;
  padding-right: 50px;
  height: calc(100vh - var(--hh));
  height: calc(100dvh - var(--hh));
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.contact section.contact .container .form .form-container {
    height: auto;
    padding: var(--hh) 50px;
  }
}
@media only screen and (max-width: 767px) {
  body.contact section.contact .container .form .form-container {
    height: auto;
    padding: 26px 20px;
  }
}
body.contact section.contact .container .form .form-container form {
  display: flex;
  flex-wrap: wrap;
}
body.contact section.contact .container .form .form-container h1 {
  font-size: min(max(28px, 3.6458333333vw), 53px);
  font-weight: 300;
  color: #ffffff;
  font-family: "Ubuntu", s-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  margin-bottom: 55px;
}
@media only screen and (max-width: 767px) {
  body.contact section.contact .container .form .form-container h1 {
    margin-bottom: 36px;
  }
}
body.contact section.contact .container .form .form-container label {
  width: 100%;
  flex: 0 0 100%;
  margin-bottom: 50px;
  font-size: min(max(20px, 2.6041666667vw), 26px);
  font-weight: 300;
  color: #ffffff;
  font-family: "Ubuntu", s-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  display: flex;
  flex-direction: column;
  gap: 20px;
  position: relative;
}
body.contact section.contact .container .form .form-container label::after {
  content: "";
  position: absolute;
  bottom: -12px;
  width: 100%;
  height: 1px;
  background-color: #ffffff;
}
body.contact section.contact .container .form .form-container input,
body.contact section.contact .container .form .form-container select,
body.contact section.contact .container .form .form-container textarea {
  background-color: transparent;
  font-family: "OpenSans", s-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: min(max(16px, 2.0833333333vw), 18px) !important;
  color: #ffffff;
  border: none;
  padding: 0;
}
body.contact section.contact .container .form .form-container input::-moz-placeholder, body.contact section.contact .container .form .form-container select::-moz-placeholder, body.contact section.contact .container .form .form-container textarea::-moz-placeholder {
  color: #ffffff;
  opacity: 0.5;
}
body.contact section.contact .container .form .form-container input::placeholder,
body.contact section.contact .container .form .form-container select::placeholder,
body.contact section.contact .container .form .form-container textarea::placeholder {
  color: #ffffff;
  opacity: 0.5;
}
body.contact section.contact .container .form .form-container input:focus-visible,
body.contact section.contact .container .form .form-container select:focus-visible,
body.contact section.contact .container .form .form-container textarea:focus-visible {
  border: none;
  outline: none;
}
body.contact section.contact .container .form .form-container input option,
body.contact section.contact .container .form .form-container select option,
body.contact section.contact .container .form .form-container textarea option {
  color: #171d4f;
}
body.contact section.contact .container .form .form-container textarea {
  height: 60px;
}
body.contact section.contact .container .form .form-container select {
  width: 100%;
}
body.contact section.contact .container .form .form-container input[type=submit] {
  font-family: "OpenSans", s-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  color: #ffffff;
  font-size: min(max(18px, 2.34375vw), 16px);
  padding: 22px 58px;
  border-radius: 50px;
  background-color: #171d4f;
  width: -moz-fit-content;
  width: fit-content;
  border: 0;
  outline: 0;
  cursor: pointer;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  body.contact section.contact .container .form .form-container input[type=submit] {
    padding: 17px 43px;
  }
}
@media only screen and (max-width: 767px) {
  body.contact section.contact .container .form .form-container input[type=submit] {
    padding: 14px 37px;
  }
}
body.contact section.contact .container .form .form-container .wpcf7-form-control-wrap {
  display: flex;
  flex-direction: column-reverse;
}
body.contact section.contact .container .form .form-container .wpcf7-not-valid-tip {
  color: #ffb800;
  font-size: 18px;
  font-weight: 300;
  font-family: "Open Sans";
  font-style: italic;
  margin-top: -10px;
}
body.contact section.contact .container .form .form-container .wpcf7-response-output {
  border: none;
  color: #ffb800;
  margin: 0;
  padding: 0;
  margin-top: 20px;
}