/* Painel de contato compartilhado pelas landings de solução. */
.solution-contact-section {
  background: #fff !important;
}

.solution-contact-copy {
  color: #202020;
}

.solution-contact-copy [style*="color: rgb(255, 255, 255)"],
.solution-contact-copy [style*="color: #fff"] {
  color: #202020 !important;
}

.solution-contact-copy [style*="color: rgb(0, 201, 247)"],
.solution-contact-copy [style*="color: #00c9f7"] {
  color: #00768f !important;
}

.solution-contact-section .solution-form-panel {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  box-sizing: border-box;
  width: min(420px, calc(100vw - 35px)) !important;
  max-width: 420px !important;
  margin: 30px 0 !important;
  padding: 10px 30px !important;
  border: 1px solid transparent !important;
  border-radius: 22px !important;
  background: #202020 !important;
  font-family: Poppins, sans-serif !important;
}

.solution-form-panel .solution-form-inner {
  box-sizing: border-box;
  width: 100% !important;
  max-width: 358px !important;
  margin: 10px auto 20px !important;
  padding: 0 !important;
  background: transparent !important;
}

.solution-form-panel .opl-builder-form__fieldset {
  display: flex;
  flex-flow: column nowrap;
  align-items: flex-start;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
}

.solution-form-panel .opl-builder-form__field {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  width: 100% !important;
  margin-bottom: 15px !important;
  padding: 0 !important;
}

.solution-form-panel .native-select-control,
.solution-form-panel .opl-form-select {
  box-sizing: border-box;
  width: 100%;
}

.solution-form-panel .opl-builder-form__label {
  display: inline-block;
  margin-bottom: 0.4em;
  color: #fff !important;
  font: 400 14px/1.25 "Open Sans", sans-serif !important;
}

.solution-form-panel .opl-builder-form__input,
.solution-form-panel .country-trigger {
  box-sizing: border-box;
  color: #fff !important;
  background-color: #353535 !important;
  border: 1px solid #fff !important;
  border-radius: 12px;
  font-family: "Open Sans", sans-serif !important;
  font-size: 18px !important;
}

.solution-form-panel .opl-builder-form__input:not(textarea),
.solution-form-panel .country-trigger {
  height: 32px;
}

.solution-form-panel .opl-builder-form__input:not(.opl-form-select__trigger) {
  width: 100%;
}

.solution-form-panel textarea.opl-builder-form__input {
  box-sizing: border-box;
  height: 79px !important;
  min-height: 79px !important;
}

/* Compose the country picker and phone input as one control. */
.solution-form-inner .phone-input-group {
  display: flex !important;
  align-items: stretch;
  gap: 0 !important;
  position: relative;
  min-width: 0;
  overflow: visible !important;
}

.solution-form-inner .phone-input-group > .native-country-select {
  position: relative !important;
  display: block;
  flex: 0 0 56px !important;
  width: 56px !important;
  min-width: 56px !important;
  max-width: 56px !important;
  align-self: stretch;
  overflow: visible !important;
}

.solution-form-inner .phone-input-group > .native-country-select > .country-trigger {
  display: flex;
  box-sizing: border-box;
  width: 100% !important;
  height: 32px !important;
  min-height: 32px !important;
  margin: 0 !important;
  padding: 0 5px;
  border: 1px solid #fff !important;
  border-right: 0 !important;
  border-radius: 12px 0 0 12px !important;
  justify-content: space-between;
  align-items: center;
}

.solution-form-inner .phone-input-group > input.phone {
  box-sizing: border-box;
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 32px !important;
  min-height: 32px !important;
  margin: 0 !important;
  border: 1px solid #fff !important;
  border-radius: 0 12px 12px 0 !important;
}

.solution-form-inner .phone-input-group > .native-country-select .country-menu {
  left: 0;
  width: min(340px, calc(100vw - 60px)) !important;
  max-width: none !important;
}

.solution-form-panel .opl-builder-form__submit {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.solution-form-panel [type="submit"] {
  align-self: center;
  box-sizing: border-box;
  width: 100% !important;
  max-width: 358px !important;
  min-height: 48px !important;
  height: auto !important;
  margin-top: 10px !important;
  margin-bottom: 0 !important;
  padding: 1px 10px;
  color: #202020 !important;
  background: #00c9f7 !important;
  border: 0 !important;
  border-radius: 100px !important;
  font: 700 15px/1.42857 Ubuntu, sans-serif !important;
  text-align: center;
  cursor: pointer;
}

.solution-form-panel .solution-form-privacy {
  align-self: center;
  box-sizing: border-box;
  width: 100%;
  max-width: 338px;
  margin: 0 auto 20px !important;
  color: #fff !important;
  text-align: center;
}

.solution-form-panel .solution-form-privacy [style*="color:"] {
  color: #fff !important;
}

.solution-form-panel .field-error {
  color: #ffb8bb;
  font-size: 12px;
  line-height: 1.5;
}

.solution-form-panel .field-error:empty {
  display: none;
}

@media (max-width: 767px) {
  .solution-form-panel .opl-builder-form__input:not(textarea),
  .solution-form-panel .country-trigger,
  .solution-form-panel .opl-form-select__trigger {
    height: 44px;
    min-height: 44px;
  }

  .solution-form-panel [type="submit"] {
    padding: 0.66em 10px !important;
  }

  .solution-form-inner .phone-input-group > .native-country-select {
    flex-basis: 64px !important;
    width: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
  }

  .solution-form-inner .phone-input-group > .native-country-select > .country-trigger,
  .solution-form-inner .phone-input-group > input.phone {
    height: 44px !important;
    min-height: 44px !important;
  }
}
