.elementor-1987 .elementor-element.elementor-element-a1396ad{--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;--margin-top:-115px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1987 .elementor-element.elementor-element-ddb801f{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1987 .elementor-element.elementor-element-ba3eee2{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-1987 .elementor-element.elementor-element-ba3eee2.e-con{--align-self:center;}.elementor-1987 .elementor-element.elementor-element-8d1ea4f{--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;}.elementor-1987 .elementor-element.elementor-element-a859955{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-1987 .elementor-element.elementor-element-1e02238{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1987 .elementor-element.elementor-element-78628bc{background-color:#FFFFFF;padding:30px 20px 20px 20px;border-radius:15px 15px 15px 15px;box-shadow:0px 0px 10px 0px rgba(0, 0, 0, 0.25);}.elementor-1987 .elementor-element.elementor-element-60ca1fc{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1987 .elementor-element.elementor-element-d55fe1e{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1987 .elementor-element.elementor-element-bf665ac{margin:-60px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1987 .elementor-element.elementor-element-9758b31{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1987 .elementor-element.elementor-element-f95a056{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-1987 .elementor-element.elementor-element-8d1ea4f{--width:50%;}.elementor-1987 .elementor-element.elementor-element-a859955{--width:50%;}.elementor-1987 .elementor-element.elementor-element-1e02238{--width:62%;}}@media(max-width:767px){.elementor-1987 .elementor-element.elementor-element-a1396ad{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-1987 .elementor-element.elementor-element-b050122{margin:-100px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1987 .elementor-element.elementor-element-ddb801f{--margin-top:-120px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-1987 .elementor-element.elementor-element-1e02238{--margin-top:60px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-1987 .elementor-element.elementor-element-78628bc{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}/* Start custom CSS for shortcode, class: .elementor-element-78628bc */.forminator-custom-form .forminator-row {
  margin-bottom: 1.05rem !important;
}

.forminator-custom-form .forminator-row:last-of-type {
  margin-bottom: 0 !important;
}

/* ---------- labels ---------- */
.forminator-custom-form .forminator-label,
.forminator-custom-form .forminator-field-label {
  font-family: "Nunito Sans", "Segoe UI", system-ui, sans-serif !important;
  font-size: 0.875rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #46606b !important;
  margin-bottom: 0.5rem !important;
}

.forminator-custom-form .forminator-required {
  color: #5f8a3e !important;
}

.forminator-custom-form .forminator-description {
  font-family: "Nunito Sans", "Segoe UI", system-ui, sans-serif !important;
  font-size: 0.8rem !important;
  font-weight: 500 !important;
  color: #7d97a4 !important;
}

/* ---------- text inputs, textarea, selects ---------- */
.forminator-custom-form .forminator-input,
.forminator-custom-form .forminator-textarea,
.forminator-custom-form select.forminator-select,
.forminator-custom-form select.forminator-select--field {
  font-family: "Nunito Sans", "Segoe UI", system-ui, sans-serif !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: #243038 !important;
  background-color: #ffffff !important;
  border: 2px solid #d9ecf8 !important;
  border-radius: 14px !important;
  padding: 0.8rem 1rem !important;
  height: auto !important;
  box-shadow: none !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
}

.forminator-custom-form .forminator-input::placeholder,
.forminator-custom-form .forminator-textarea::placeholder {
  color: #9ab3bf !important;
  font-weight: 500 !important;
}

.forminator-custom-form .forminator-input:focus,
.forminator-custom-form .forminator-textarea:focus,
.forminator-custom-form select.forminator-select:focus,
.forminator-custom-form select.forminator-select--field:focus {
  outline: none !important;
  border-color: #5fb2dd !important;
  box-shadow: 0 0 0 4px rgba(146, 205, 234, 0.25) !important;
}

/* native select chevron */
.forminator-custom-form select.forminator-select,
.forminator-custom-form select.forminator-select--field {
  appearance: none !important;
  -webkit-appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1.5 1.5 L7 7 L12.5 1.5' fill='none' stroke='%232f86b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 1rem center !important;
  padding-right: 2.6rem !important;
  cursor: pointer;
}

/* select2 guard, in case searchable gets left on somewhere */
.select2-container .select2-selection--single {
  height: auto !important;
  border: 2px solid #d9ecf8 !important;
  border-radius: 14px !important;
  padding: 0.8rem 1rem !important;
}

/* ---------- radios ---------- */
.forminator-custom-form .forminator-radio input[type="radio"],
.forminator-custom-form .forminator-field input[type="radio"] {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #c4dff0;
  border-radius: 50%;
  background: #ffffff;
  cursor: pointer;
  position: relative;
  flex-shrink: 0;
  transition: border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
}

.forminator-custom-form .forminator-radio input[type="radio"]:hover,
.forminator-custom-form .forminator-field input[type="radio"]:hover {
  border-color: #7dab54;
}

.forminator-custom-form .forminator-radio input[type="radio"]:checked,
.forminator-custom-form .forminator-field input[type="radio"]:checked {
  border-color: #7dab54;
  background: #7dab54;
}

.forminator-custom-form .forminator-radio input[type="radio"]:checked::after,
.forminator-custom-form .forminator-field input[type="radio"]:checked::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 7px;
  height: 7px;
  background: #ffffff;
  border-radius: 50%;
}

.forminator-custom-form .forminator-radio input[type="radio"]:focus-visible,
.forminator-custom-form .forminator-field input[type="radio"]:focus-visible {
  outline: none;
  box-shadow: 0 0 0 4px rgba(146, 205, 234, 0.3);
}

/* ---------- checkboxes ---------- */
.forminator-custom-form .forminator-checkbox input[type="checkbox"],
.forminator-custom-form .forminator-field input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #c4dff0;
  border-radius: 6px;
  background: #ffffff;
  cursor: pointer;
  flex-shrink: 0;
  transition: border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
}

.forminator-custom-form .forminator-checkbox input[type="checkbox"]:hover,
.forminator-custom-form .forminator-field input[type="checkbox"]:hover {
  border-color: #7dab54;
}

.forminator-custom-form .forminator-checkbox input[type="checkbox"]:checked,
.forminator-custom-form .forminator-field input[type="checkbox"]:checked {
  border-color: #7dab54;
  background-color: #7dab54;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5 L6.5 12 L13 4.5' fill='none' stroke='%23ffffff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12px 12px;
}

.forminator-custom-form .forminator-checkbox input[type="checkbox"]:focus-visible,
.forminator-custom-form .forminator-field input[type="checkbox"]:focus-visible {
  outline: none;
  box-shadow: 0 0 0 4px rgba(146, 205, 234, 0.3);
}

/* ---------- radio + checkbox option labels ---------- */
.forminator-custom-form .forminator-radio,
.forminator-custom-form .forminator-radio label,
.forminator-custom-form .forminator-checkbox,
.forminator-custom-form .forminator-checkbox-label {
  font-family: "Nunito Sans", "Segoe UI", system-ui, sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  color: #46606b !important;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.7rem;
  padding: 0.35rem 0;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.forminator-custom-form .forminator-radio:hover,
.forminator-custom-form .forminator-checkbox:hover {
  color: #243038 !important;
}

/* ---------- buttons ---------- */
.forminator-custom-form .forminator-button {
  display: inline-flex ;
  align-items: center !important;
  justify-content: center !important;
  padding: 0.85rem 1.7rem !important;
  background: linear-gradient(180deg, #7fb057 0%, #5f8a3e 100%) !important;
  border: none !important;
  border-radius: 999px !important;
  color: #ffffff !important;
  font-family: "Nunito Sans", "Segoe UI", system-ui, sans-serif !important;
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  cursor: pointer;
  box-shadow:
    0 10px 20px rgba(95, 138, 62, 0.30),
    inset 0 -2px 0 rgba(0, 0, 0, 0.14) !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease !important;
}

.forminator-custom-form .forminator-button:hover {
  transform: translateY(-2px);
  filter: brightness(1.05);
  box-shadow:
    0 14px 26px rgba(95, 138, 62, 0.38),
    inset 0 -2px 0 rgba(0, 0, 0, 0.14) !important;
}

.forminator-custom-form .forminator-button:active {
  transform: translateY(0);
}

.forminator-custom-form .forminator-button:focus-visible {
  outline: 3px solid #1f6f9f !important;
  outline-offset: 3px;
}

/* full-width submit only inside the homepage CTA card */
.bi-cta-block .forminator-button-submit {
  width: 100% !important;
}

/* ---------- validation + response ---------- */
.forminator-custom-form .forminator-error-message {
  font-family: "Nunito Sans", "Segoe UI", system-ui, sans-serif !important;
  color: #c4554d !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  margin-top: 0.35rem !important;
}

.forminator-custom-form .forminator-field--error .forminator-input,
.forminator-custom-form .forminator-input.forminator-has_error {
  border-color: #c4554d !important;
}

.forminator-response-message.forminator-success {
  font-family: "Nunito Sans", "Segoe UI", system-ui, sans-serif !important;
  color: #4e7330 !important;
  font-weight: 700 !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1e02238 */.elementor-1987 .elementor-element.elementor-element-1e02238 {
  position: relative;
  background: #ffffff !important;
  border: 2px solid #ddeffa !important;
  border-radius: 30px !important;
  box-shadow: 0 18px 40px rgba(31, 90, 126, 0.14) !important;
  overflow: visible !important;
}

/* top-left cluster */
.elementor-1987 .elementor-element.elementor-element-1e02238::before {
  content: '';
  position: absolute;
  top: -74px;
  left: -74px;
  width: 68px;
  height: 68px;
  pointer-events: none;
  z-index: 2;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Ccircle cx='30' cy='30' r='26' fill='none' stroke='%2392cdea' stroke-width='3' opacity='0.6'/%3E%3C/svg%3E") no-repeat right bottom / 50px 50px,
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cpath d='M14 2 V9 M14 19 V26 M2 14 H9 M19 14 H26' stroke='%237dab54' stroke-width='3' stroke-linecap='round' opacity='0.55'/%3E%3C/svg%3E") no-repeat left top / 17px 17px,
    radial-gradient(circle 3.5px at left 8px bottom 4px, rgba(95, 178, 221, 0.55), transparent 4.5px);
}

/* bottom-right cluster */
.elementor-1987 .elementor-element.elementor-element-1e02238::after {
  content: '';
  position: absolute;
  bottom: -68px;
  right: -68px;
  width: 62px;
  height: 62px;
  pointer-events: none;
  z-index: 2;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Ccircle cx='30' cy='30' r='24' fill='none' stroke='%23bbdb9b' stroke-width='3' opacity='0.65'/%3E%3C/svg%3E") no-repeat left top / 46px 46px,
    radial-gradient(circle 3.5px at right 4px top 10px, rgba(125, 171, 84, 0.55), transparent 4.5px),
    radial-gradient(circle 3px at right 12px bottom 2px, rgba(95, 178, 221, 0.5), transparent 4px);
}

/* mobile */
@media (max-width: 640px) {
  .elementor-1987 .elementor-element.elementor-element-1e02238::before {
    top: -52px;
    left: 10px;
    width: 54px;
    height: 46px;
    background-size: 36px 36px, 13px 13px, auto;
  }

  .elementor-1987 .elementor-element.elementor-element-1e02238::after {
    bottom: -48px;
    right: 12px;
    width: 50px;
    height: 42px;
    background-size: 34px 34px, auto, auto;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ba3eee2 */.elementor-1987 .elementor-element.elementor-element-ba3eee2 {
  position: relative;
  --wave-h: clamp(42px, 7vw, 90px);
  background:
    radial-gradient(700px 480px at 92% 18%, rgba(146, 205, 234, 0.22), transparent 60%),
    radial-gradient(640px 460px at 6% 88%, rgba(187, 219, 155, 0.26), transparent 62%),
    linear-gradient(180deg, #f2f9ee 0%, #eaf4fb 100%);
  padding-top: calc(var(--wave-h) + clamp(2.5rem, 5vh, 4rem));
  padding-bottom: calc(var(--wave-h) + clamp(3rem, 6vh, 4.5rem));
}
 
/* White wave at the top: the seam from the white section above. */
.elementor-1987 .elementor-element.elementor-element-ba3eee2::before {
  content: '';
  position: absolute;
  top: -1px;
  left: 0;
  right: 0;
  height: var(--wave-h);
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cpath d='M0 52 C240 20 480 78 760 50 C1020 26 1240 64 1440 42 L1440 0 L0 0 Z' fill='%23ffffff'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
 
/* Wave at the bottom 
.elementor-1987 .elementor-element.elementor-element-ba3eee2::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: var(--wave-h);
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cpath d='M0 38 C220 70 460 18 740 44 C1010 68 1250 28 1440 50 L1440 90 L0 90 Z' fill='%23ffffff'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
*//* End custom CSS */