.elementor-286752 .elementor-element.elementor-element-5a55c9f{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-286752 .elementor-element.elementor-element-cba2f11{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-286752 .elementor-element.elementor-element-27653bb{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-286752 .elementor-element.elementor-element-412287e{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-286752 .elementor-element.elementor-element-0d050b5{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}/* Start custom CSS for container, class: .elementor-element-5a55c9f *//* ================================
   HERO CONTACT FORM 7 STYLING
   Scope: #heroForm only
================================ */

/* Main form card */
#heroForm {
  background: #ffffff !important;
  color: var(--ink) !important;
  border: 1px solid var(--line) !important;
  border-radius: 26px !important;
  padding: 26px !important;
  box-shadow: var(--shadow) !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

#heroForm *,
#heroForm *::before,
#heroForm *::after {
  box-sizing: border-box !important;
}

/* Card heading */
#heroForm h3 {
  color: var(--ink) !important;
  font-size: 1.45rem !important;
  line-height: 1.2 !important;
  letter-spacing: -.04em !important;
  font-weight: 950 !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
}

#heroForm > p {
  color: var(--muted) !important;
  font-size: .95rem !important;
  line-height: 1.55 !important;
  margin: 0 0 18px ;
  padding: 0 !important;
  font-weight: 600;
}

/* CF7 reset */
#heroForm .wpcf7,
#heroForm .wpcf7 form {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

#heroForm .wpcf7 p {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

#heroForm .wpcf7 br {
  display: none !important;
}

#heroForm .screen-reader-response,
#heroForm .hidden-fields-container {
  display: none !important;
}

/* Form layout */
#heroForm #hero-form-fields,
#heroForm .form-grid {
  width: 100% !important;
  max-width: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 15px !important;
  margin: 0 !important;
  padding: 0 !important;
}

#heroForm .form-row {
  width: 100% !important;
  max-width: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
}

#heroForm .form-field {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Labels */
#heroForm label {
  display: block !important;
  color: var(--ink-2) !important;
  font-size: .82rem !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
  letter-spacing: .045em !important;
  line-height: 1.25 !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
}

/* CF7 field wrappers */
#heroForm .wpcf7-form-control-wrap {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Inputs and select */
#heroForm input[type="text"],
#heroForm input[type="email"],
#heroForm select,
#heroForm .wpcf7-text,
#heroForm .wpcf7-email,
#heroForm .wpcf7-select {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 52px !important;
  margin: 0 !important;
  border: 1.5px solid #b9d4f5 !important;
  background-color: #f8fbff !important;
  color: var(--ink) !important;
  border-radius: 15px !important;
  padding: 14px 16px !important;
  outline: 0 !important;
  font-size: 16px !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
  box-shadow: 0 8px 18px rgba(8,39,95,.04) !important;
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease !important;
}

#heroForm input[type="text"]::placeholder,
#heroForm input[type="email"]::placeholder {
  color: #849cc2 !important;
  opacity: 1 !important;
  font-weight: 600 !important;
}

#heroForm input[type="text"]:focus,
#heroForm input[type="email"]:focus,
#heroForm select:focus,
#heroForm .wpcf7-text:focus,
#heroForm .wpcf7-email:focus,
#heroForm .wpcf7-select:focus {
  border-color: var(--blue) !important;
  background-color: #ffffff !important;
  box-shadow: 0 0 0 4px rgba(7,94,235,.14), 0 12px 24px rgba(8,39,95,.08) !important;
}

/* Custom closed select field */
#heroForm select,
#heroForm .wpcf7-select {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  cursor: pointer !important;
  padding-right: 52px !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  background-image:
    url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 7.5L10 12.5L15 7.5' stroke='%2308275f' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"),
    linear-gradient(135deg, #eaf3ff, #e8fff7) !important;
  background-repeat: no-repeat !important;
  background-position:
    right 16px center,
    right 8px center !important;
  background-size:
    18px 18px,
    36px 36px !important;
}

/* Native dropdown options */
#heroForm select option,
#heroForm .wpcf7-select option {
  width: 100% !important;
  max-width: 100% !important;
  background: #ffffff !important;
  color: var(--ink) !important;
  font-size: 16px !important;
  font-weight: 650 !important;
  line-height: 1.45 !important;
  padding: 12px 14px !important;
}

#heroForm select option:first-child,
#heroForm .wpcf7-select option:first-child {
  color: #6d86ad !important;
}

/* reCAPTCHA */
#heroForm .recaptcha {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

#heroForm .g-recaptcha,
#heroForm .wpcf7-recaptcha {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

#heroForm .g-recaptcha > div {
  max-width: 100% !important;
}

/* Submit paragraph wrapper fix */
#heroForm #hero-form-fields > p,
#heroForm .form-grid > p {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
}

/* Submit button alignment fix */
#heroForm .wpcf7-submit,
#heroForm .btn-submit,
#heroForm input[type="submit"] {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 16px 24px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #032018 !important;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.58), transparent 28%),
    linear-gradient(135deg, #9affdf 0%, #19e6a5 48%, #13c992 100%) !important;
  box-shadow:
    0 16px 32px rgba(19,201,146,.28),
    inset 0 1px 0 rgba(255,255,255,.7) !important;
  font-size: 16px !important;
  font-weight: 950 !important;
  line-height: 1.2 !important;
  letter-spacing: -.01em !important;
  text-align: center !important;
  text-transform: none !important;
  cursor: pointer !important;
  opacity: 1 !important;
  transform: none !important;
  transition: box-shadow .18s ease, filter .18s ease, transform .18s ease !important;
}

#heroForm .wpcf7-submit:hover,
#heroForm .btn-submit:hover,
#heroForm input[type="submit"]:hover {
  transform: translateY(-2px) !important;
  filter: saturate(1.08) !important;
  box-shadow:
    0 22px 42px rgba(19,201,146,.36),
    inset 0 1px 0 rgba(255,255,255,.75) !important;
}

#heroForm .wpcf7-submit:active,
#heroForm .btn-submit:active,
#heroForm input[type="submit"]:active {
  transform: translateY(0) !important;
}

/* Spinner */
#heroForm .wpcf7-spinner {
  display: block !important;
  float: none !important;
  margin: 10px auto 0 !important;
}

/* Validation and response messages */
#heroForm .wpcf7-response-output {
  margin: 14px 0 0 !important;
  padding: 13px 15px !important;
  border-radius: 14px !important;
  border: 1px solid #c3f3e4 !important;
  background: var(--green-soft) !important;
  color: #08715d !important;
  font-size: .9rem !important;
  font-weight: 850 !important;
  line-height: 1.45 !important;
}

#heroForm .wpcf7-not-valid-tip {
  color: #d93025 !important;
  font-size: .82rem !important;
  font-weight: 850 !important;
  line-height: 1.35 !important;
  margin-top: 6px !important;
}

#heroForm .wpcf7 form.invalid .wpcf7-response-output,
#heroForm .wpcf7 form.unaccepted .wpcf7-response-output,
#heroForm .wpcf7 form.payment-required .wpcf7-response-output {
  border-color: #ffd2cf !important;
  background: #fff3f2 !important;
  color: #b3261e !important;
}

#heroForm .wpcf7 form.sent .wpcf7-response-output {
  border-color: #c3f3e4 !important;
  background: var(--green-soft) !important;
  color: #08715d !important;
}

/* Mobile */
@media (max-width: 500px) {
  #heroForm {
    padding: 22px !important;
    border-radius: 24px !important;
  }

  #heroForm .form-row {
    grid-template-columns: 1fr !important;
  }

  #heroForm input[type="text"],
  #heroForm input[type="email"],
  #heroForm select,
  #heroForm .wpcf7-text,
  #heroForm .wpcf7-email,
  #heroForm .wpcf7-select {
    min-height: 50px !important;
    font-size: 15.5px !important;
  }

  #heroForm .wpcf7-submit,
  #heroForm .btn-submit,
  #heroForm input[type="submit"] {
    min-height: 54px !important;
    font-size: 15.5px !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d88b38b *//* ================================
   MAIN DEMO CONTACT FORM 7
   Scope: #main-form-wrap only
   Does NOT style g-recaptcha-response-1
================================ */

#main-form-wrap {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

#main-form-wrap *,
#main-form-wrap *::before,
#main-form-wrap *::after {
  box-sizing: border-box !important;
}

/* CF7 basic reset */
#main-form-wrap .wpcf7,
#main-form-wrap .wpcf7 form,
#main-form-wrap .demo-form {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

#main-form-wrap p {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

#main-form-wrap br {
  display: none !important;
}

#main-form-wrap .screen-reader-response,
#main-form-wrap .hidden-fields-container,
#main-form-wrap input[type="hidden"],
#main-form-wrap .wpcf7-hidden {
  display: none !important;
}

/* Main layout */
#main-form-wrap .demo-form {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 15px !important;
}

/* Two-column rows */
#main-form-wrap .form-row {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

#main-form-wrap .form-row > p {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* CF7 field wrappers */
#main-form-wrap .wpcf7-form-control-wrap {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Inputs */
#main-form-wrap input[type="text"],
#main-form-wrap input[type="email"],
#main-form-wrap input[type="tel"],
#main-form-wrap .wpcf7-text,
#main-form-wrap .wpcf7-email,
#main-form-wrap .wpcf7-tel {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 54px !important;
  margin: 0 !important;
  border: 1.5px solid #b9d4f5 !important;
  background-color: #f8fbff !important;
  color: var(--ink, #07172e) !important;
  border-radius: 15px !important;
  padding: 14px 16px !important;
  outline: 0 !important;
  font-size: 16px !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
  box-shadow: 0 8px 18px rgba(8,39,95,.04) !important;
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease !important;
}

/* Select fields */
#main-form-wrap select,
#main-form-wrap .wpcf7-select {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 54px !important;
  margin: 0 !important;
  border: 1.5px solid #b9d4f5 !important;
  background-color: #f8fbff !important;
  color: var(--ink, #07172e) !important;
  border-radius: 15px !important;
  padding: 14px 52px 14px 16px !important;
  outline: 0 !important;
  font-size: 16px !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
  cursor: pointer !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  box-shadow: 0 8px 18px rgba(8,39,95,.04) !important;
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease !important;
  background-image:
    url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 7.5L10 12.5L15 7.5' stroke='%2308275f' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"),
    linear-gradient(135deg, #eaf3ff, #e8fff7) !important;
  background-repeat: no-repeat !important;
  background-position:
    right 16px center,
    right 8px center !important;
  background-size:
    18px 18px,
    36px 36px !important;
}

/* Select options */
#main-form-wrap select option,
#main-form-wrap .wpcf7-select option {
  background: #ffffff !important;
  color: var(--ink, #07172e) !important;
  font-size: 16px !important;
  font-weight: 650 !important;
  line-height: 1.5 !important;
  padding: 12px 14px !important;
}

#main-form-wrap select option:first-child,
#main-form-wrap .wpcf7-select option:first-child {
  color: #6d86ad !important;
}

/* Message textarea only — CAPTCHA textarea is NOT targeted */
#main-form-wrap textarea[name="message"],
#main-form-wrap textarea.wpcf7-textarea,
#main-form-wrap .wpcf7-textarea {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 112px !important;
  margin: 0 !important;
  border: 1.5px solid #b9d4f5 !important;
  background-color: #f8fbff !important;
  color: var(--ink, #07172e) !important;
  border-radius: 15px !important;
  padding: 14px 16px !important;
  outline: 0 !important;
  font-size: 16px !important;
  font-weight: 650 !important;
  line-height: 1.55 !important;
  resize: vertical !important;
  box-shadow: 0 8px 18px rgba(8,39,95,.04) !important;
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease !important;
}

/* Placeholders */
#main-form-wrap input::placeholder,
#main-form-wrap textarea[name="message"]::placeholder,
#main-form-wrap textarea.wpcf7-textarea::placeholder {
  color: #849cc2 !important;
  opacity: 1 !important;
  font-weight: 600 !important;
}

/* Focus states */
#main-form-wrap input[type="text"]:focus,
#main-form-wrap input[type="email"]:focus,
#main-form-wrap input[type="tel"]:focus,
#main-form-wrap select:focus,
#main-form-wrap .wpcf7-text:focus,
#main-form-wrap .wpcf7-email:focus,
#main-form-wrap .wpcf7-tel:focus,
#main-form-wrap .wpcf7-select:focus,
#main-form-wrap textarea[name="message"]:focus,
#main-form-wrap textarea.wpcf7-textarea:focus {
  border-color: var(--blue, #075eeb) !important;
  background-color: #ffffff !important;
  box-shadow: 0 0 0 4px rgba(7,94,235,.14), 0 12px 24px rgba(8,39,95,.08) !important;
}

/* reCAPTCHA container only — does not style hidden textarea */
#main-form-wrap .recaptcha {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
}

#main-form-wrap .g-recaptcha,
#main-form-wrap .wpcf7-recaptcha {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

#main-form-wrap .g-recaptcha > div {
  max-width: 100% !important;
}

/* Submit button wrapper */
#main-form-wrap .demo-form > p {
  width: 100% !important;
  max-width: 100% !important;
}

/* Submit button */
#main-form-wrap .wpcf7-submit,
#main-form-wrap .btn-demo-submit,
#main-form-wrap input[type="submit"] {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 16px 24px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #032018 !important;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.58), transparent 28%),
    linear-gradient(135deg, #9affdf 0%, #19e6a5 48%, #13c992 100%) !important;
  box-shadow:
    0 16px 32px rgba(19,201,146,.28),
    inset 0 1px 0 rgba(255,255,255,.7) !important;
  font-size: 16px !important;
  font-weight: 950 !important;
  line-height: 1.2 !important;
  letter-spacing: -.01em !important;
  text-align: center !important;
  text-transform: none !important;
  cursor: pointer !important;
  opacity: 1 !important;
  transform: none !important;
  transition: box-shadow .18s ease, filter .18s ease, transform .18s ease !important;
}

#main-form-wrap .wpcf7-submit:hover,
#main-form-wrap .btn-demo-submit:hover,
#main-form-wrap input[type="submit"]:hover {
  transform: translateY(-2px) !important;
  filter: saturate(1.08) !important;
  box-shadow:
    0 22px 42px rgba(19,201,146,.36),
    inset 0 1px 0 rgba(255,255,255,.75) !important;
}

#main-form-wrap .wpcf7-submit:active,
#main-form-wrap .btn-demo-submit:active,
#main-form-wrap input[type="submit"]:active {
  transform: translateY(0) !important;
}

/* Spinner */
#main-form-wrap .wpcf7-spinner {
  display: block !important;
  float: none !important;
  margin: 10px auto 0 !important;
}

/* Form note */
#main-form-wrap .form-note {
  color: rgba(255,255,255,.76) !important;
  font-size: .88rem !important;
  font-weight: 650 !important;
  line-height: 1.6 !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
}

/* Validation */
#main-form-wrap .wpcf7-not-valid-tip {
  color: #ffd2cf !important;
  font-size: .82rem !important;
  font-weight: 850 !important;
  line-height: 1.35 !important;
  margin-top: 6px !important;
}

/* Response output */
#wpcf7-f286450-p286752-o2 .wpcf7-response-output {
  margin: 14px 0 0 !important;
  padding: 13px 15px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(25,230,165,.35) !important;
  background: rgba(25,230,165,.12) !important;
  color: #d7fff2 !important;
  font-size: .9rem !important;
  font-weight: 850 !important;
  line-height: 1.45 !important;
}

#wpcf7-f286450-p286752-o2 form.invalid .wpcf7-response-output,
#wpcf7-f286450-p286752-o2 form.unaccepted .wpcf7-response-output,
#wpcf7-f286450-p286752-o2 form.payment-required .wpcf7-response-output {
  border-color: rgba(255,210,207,.55) !important;
  background: rgba(255,243,242,.12) !important;
  color: #ffd2cf !important;
}

#wpcf7-f286450-p286752-o2 form.sent .wpcf7-response-output {
  border-color: rgba(25,230,165,.42) !important;
  background: rgba(25,230,165,.14) !important;
  color: #087184 !important;
}

/* Tablet */
@media (max-width: 768px) {
  #main-form-wrap .demo-form {
    gap: 14px !important;
  }

  #main-form-wrap .form-row > p {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
}

/* Mobile */
@media (max-width: 500px) {
  #main-form-wrap input[type="text"],
  #main-form-wrap input[type="email"],
  #main-form-wrap input[type="tel"],
  #main-form-wrap select,
  #main-form-wrap .wpcf7-text,
  #main-form-wrap .wpcf7-email,
  #main-form-wrap .wpcf7-tel,
  #main-form-wrap .wpcf7-select,
  #main-form-wrap textarea[name="message"],
  #main-form-wrap textarea.wpcf7-textarea {
    min-height: 50px !important;
    font-size: 15.5px !important;
    border-radius: 14px !important;
  }

  #main-form-wrap textarea[name="message"],
  #main-form-wrap textarea.wpcf7-textarea {
    min-height: 104px !important;
  }

  #main-form-wrap .wpcf7-submit,
  #main-form-wrap .btn-demo-submit,
  #main-form-wrap input[type="submit"] {
    min-height: 54px !important;
    font-size: 15.5px !important;
  }

  #main-form-wrap .form-note {
    font-size: .82rem !important;
  }
}/* End custom CSS */