.elementor-4055 .elementor-element.elementor-element-40ef936{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--padding-top:4%;--padding-bottom:2%;--padding-left:2%;--padding-right:2%;}.elementor-4055 .elementor-element.elementor-element-f8d7e53 .elementor-heading-title{font-family:"Open Sans", Sans-serif;font-size:3rem;font-weight:800;color:var( --e-global-color-primary );}.elementor-4055 .elementor-element.elementor-element-67af7a7 > .elementor-widget-container{--e-transform-translateY:-80%;}.elementor-4055 .elementor-element.elementor-element-67af7a7{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-686e579 );}.elementor-4055 .elementor-element.elementor-element-67af7a7 p{margin-block-end:0px;}.elementor-4055 .elementor-element.elementor-element-3693ea2{--display:flex;}.elementor-widget .tippy-tooltip .tippy-content{text-align:center;}@media(max-width:767px){.elementor-4055 .elementor-element.elementor-element-f8d7e53 .elementor-heading-title{font-size:2rem;}.elementor-4055 .elementor-element.elementor-element-3693ea2{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS *//* ===============================
   PAGE BASE
================================ */
body {
  background: #F5F7FA !important;
}

/* ===============================
   HEADING
================================ */
.elementor-heading-title {
  font-size: 48px !important;
  font-weight: 700 !important;
  letter-spacing: -0.5px !important;
  color: #2A3A54 !important;
  margin-bottom: 40px !important;
}

/* ===============================
   FORM CONTAINER
================================ */
.forminator-ui.forminator-custom-form {
  background: #FFFFFF !important;
  padding: 56px !important;
  border-radius: 24px !important;
  box-shadow: 0 25px 60px rgba(42, 58, 84, 0.12) !important;
  max-width: 1100px !important;
}

/* ===============================
   LABELS
================================ */
.forminator-label {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #2A3A54 !important;
  margin-bottom: 8px !important;
}

.forminator-required {
  color: #DB6B31 !important;
}

/* ===============================
   INPUTS
================================ */
.forminator-input,
.forminator-textarea,
.forminator-field--phone {
  background: #FFFFFF !important;
  border: 1.5px solid #E2E8F0 !important;
  border-radius: 14px !important;
  padding: 16px 18px !important;
  font-size: 15px !important;
  color: #2A3A54 !important;
  transition: all 0.25s ease !important;
}

/* Phone spacing */
.forminator-field--phone {
  padding-left: 70px !important;
}

/* Focus state */
.forminator-input:focus,
.forminator-textarea:focus {
  border-color: #2A3A54 !important;
  box-shadow: 0 0 0 4px rgba(42, 58, 84, 0.12) !important;
}

/* ===============================
   TEXTAREA
================================ */
.forminator-textarea {
  min-height: 160px !important;
  resize: vertical !important;
}

/* Character counter */
.forminator-description span {
  font-size: 13px !important;
  color: #4A5568 !important;
}

/* ===============================
   FILE UPLOAD (MODERN CARD)
================================ */
.forminator-file-upload {
  background: #F7FAFC !important;
  border: 2px dashed #CBD5E1 !important;
  border-radius: 18px !important;
  padding: 30px !important;
  transition: all 0.25s ease !important;
}

.forminator-file-upload:hover {
  border-color: #2A3A54 !important;
  background: #FFFFFF !important;
}

.forminator-button-upload {
  font-weight: 600 !important;
  color: #2A3A54 !important;
  background: transparent !important;
  border: none !important;
}

/* ===============================
   SUBMIT BUTTON (PRIMARY CTA)
================================ */
.forminator-button-submit {
  background: linear-gradient(135deg, #2A3A54, #4A5568) !important;
  color: #FFFFFF !important;
  border-radius: 999px !important;
  padding: 18px 52px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  border: none !important;
  transition: all 0.3s ease !important;
}

/* Hover */
.forminator-button-submit:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 18px 40px rgba(42, 58, 84, 0.35) !important;
}

/* Button alignment */
.forminator-row-last {
  margin-top: 40px !important;
  text-align: right !important;
}

/* ===============================
   ERROR STATES (CLEAN)
================================ */
.forminator-field-error .forminator-input,
.forminator-field-error .forminator-textarea {
  border-color: #DB6B31 !important;
}

.forminator-error-message {
  color: #DB6B31 !important;
  font-size: 13px !important;
}

/* ===============================
   MOBILE OPTIMIZATION
================================ */
@media (max-width: 768px) {
  .forminator-ui.forminator-custom-form {
    padding: 32px !important;
  }

  .elementor-heading-title {
    font-size: 34px !important;
  }

  .forminator-row-last {
    text-align: center !important;
  }
}/* End custom CSS */