.elementor-247 .elementor-element.elementor-element-d75d77f{--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-247 .elementor-element.elementor-element-e23d1dc{--display:flex;--min-height:67vh;--flex-direction:row-reverse;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;--gap:00px 0px;--row-gap:00px;--column-gap:0px;--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-247 .elementor-element.elementor-element-e23d1dc:not(.elementor-motion-effects-element-type-background), .elementor-247 .elementor-element.elementor-element-e23d1dc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#114D35;}.elementor-247 .elementor-element.elementor-element-a877b28{--display:flex;--overlay-opacity:0.65;--overlay-mix-blend-mode:luminosity;--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-247 .elementor-element.elementor-element-a877b28:not(.elementor-motion-effects-element-type-background), .elementor-247 .elementor-element.elementor-element-a877b28 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://aspisproperties.com/wp-content/uploads/2026/03/lumiere-rezaie-E291wvS_VWk-unsplash-scaled.webp");background-repeat:no-repeat;background-size:cover;}.elementor-247 .elementor-element.elementor-element-a877b28::before, .elementor-247 .elementor-element.elementor-element-a877b28 > .elementor-background-video-container::before, .elementor-247 .elementor-element.elementor-element-a877b28 > .e-con-inner > .elementor-background-video-container::before, .elementor-247 .elementor-element.elementor-element-a877b28 > .elementor-background-slideshow::before, .elementor-247 .elementor-element.elementor-element-a877b28 > .e-con-inner > .elementor-background-slideshow::before, .elementor-247 .elementor-element.elementor-element-a877b28 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;background-image:url("https://aspisproperties.com/wp-content/uploads/2026/01/ASPIS2-768x768.png");--background-overlay:'';background-position:center center;background-repeat:no-repeat;background-size:50% auto;}.elementor-247 .elementor-element.elementor-element-f2d5c75{--spacer-size:50px;}.elementor-247 .elementor-element.elementor-element-70f3b95{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-247 .elementor-element.elementor-element-80924a6{--display:flex;--min-height:164px;--justify-content:center;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-247 .elementor-element.elementor-element-3e619fb{text-align:start;}.elementor-247 .elementor-element.elementor-element-3e619fb .elementor-heading-title{font-family:"Syne", Sans-serif;text-transform:none;color:#FFFFFF;}.elementor-247 .elementor-element.elementor-element-af74fc6{text-align:start;}.elementor-247 .elementor-element.elementor-element-af74fc6 .elementor-heading-title{font-family:"Source Sans Pro", Sans-serif;font-weight:400;text-transform:none;color:#FFFFFF;}.elementor-247 .elementor-element.elementor-element-5f8477c{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-247 .elementor-element.elementor-element-7607a57{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-247 .elementor-element.elementor-element-423eedb{width:100%;max-width:100%;--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-247 .elementor-element.elementor-element-423eedb .elementor-field-group{padding-right:calc( 2em/2 );padding-left:calc( 2em/2 );margin-bottom:10px;}.elementor-247 .elementor-element.elementor-element-423eedb .elementor-form-fields-wrapper{margin-left:calc( -2em/2 );margin-right:calc( -2em/2 );margin-bottom:-10px;}.elementor-247 .elementor-element.elementor-element-423eedb .elementor-field-group.recaptcha_v3-bottomleft, .elementor-247 .elementor-element.elementor-element-423eedb .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-247 .elementor-element.elementor-element-423eedb .elementor-labels-inline .elementor-field-group > label{padding-left:4px;}body:not(.rtl) .elementor-247 .elementor-element.elementor-element-423eedb .elementor-labels-inline .elementor-field-group > label{padding-right:4px;}body .elementor-247 .elementor-element.elementor-element-423eedb .elementor-labels-above .elementor-field-group > label{padding-bottom:4px;}.elementor-247 .elementor-element.elementor-element-423eedb .elementor-field-group > label, .elementor-247 .elementor-element.elementor-element-423eedb .elementor-field-subgroup label{color:#000000;}.elementor-247 .elementor-element.elementor-element-423eedb .elementor-field-group > label{font-family:"Arial", Sans-serif;font-weight:200;letter-spacing:1.7px;}.elementor-247 .elementor-element.elementor-element-423eedb .elementor-field-type-html{padding-bottom:0px;}.elementor-247 .elementor-element.elementor-element-423eedb .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;border-radius:0px 0px 0px 0px;}.elementor-247 .elementor-element.elementor-element-423eedb .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;border-radius:0px 0px 0px 0px;}.elementor-247 .elementor-element.elementor-element-423eedb .elementor-button span{justify-content:center;}.elementor-247 .elementor-element.elementor-element-423eedb .elementor-button{font-family:"Roboto", Sans-serif;border-radius:0px 0px 0px 0px;}.elementor-247 .elementor-element.elementor-element-423eedb .e-form__buttons__wrapper__button-next{background-color:#00A060;color:#FFFFFF;}.elementor-247 .elementor-element.elementor-element-423eedb .elementor-button[type="submit"]{background-color:#00A060;color:#FFFFFF;}.elementor-247 .elementor-element.elementor-element-423eedb .elementor-button[type="submit"] svg *{fill:#FFFFFF;}.elementor-247 .elementor-element.elementor-element-423eedb .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-247 .elementor-element.elementor-element-423eedb .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-247 .elementor-element.elementor-element-423eedb .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-247 .elementor-element.elementor-element-423eedb .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-247 .elementor-element.elementor-element-423eedb .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-247 .elementor-element.elementor-element-7dfeb0a{--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-247 .elementor-element.elementor-element-8c63c5c{--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-247 .elementor-element.elementor-element-8c63c5c:not(.elementor-motion-effects-element-type-background), .elementor-247 .elementor-element.elementor-element-8c63c5c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}@media(max-width:767px){.elementor-247 .elementor-element.elementor-element-5f8477c{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--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-247 .elementor-element.elementor-element-7607a57{--width:96%;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-247 .elementor-element.elementor-element-423eedb{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:8px 8px 8px 8px;}}@media(min-width:768px){.elementor-247 .elementor-element.elementor-element-a877b28{--width:50%;}.elementor-247 .elementor-element.elementor-element-70f3b95{--width:50%;}.elementor-247 .elementor-element.elementor-element-80924a6{--width:100%;}.elementor-247 .elementor-element.elementor-element-7607a57{--width:100%;}}/* Start custom CSS for container, class: .elementor-element-7607a57 *//* 
============================================
ASPIS PROPERTIES - ELEMENTOR FORM STYLING
============================================

Add this CSS to:
- Appearance > Customize > Additional CSS
OR
- Elementor > Custom CSS (Site Settings)

This will override Elementor's default form styles
============================================
*/

/* Form Container */
.elementor-element-6e0b611 {
  background: #ffffff !important;
  padding: 60px !important;
  position: relative !important;
}

/* Add decorative corner accents */
.elementor-element-6e0b611::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 25px !important;
  height: 3px !important;
  background: rgb(17, 77, 53) !important;
}

.elementor-element-6e0b611::after {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 3px !important;
  height: 25px !important;
  background: rgb(17, 77, 53) !important;
}

/* Bottom right corner accent - using the form element */
.elementor-element-53cc92f::before {
  content: '' !important;
  position: absolute !important;
  bottom: -60px !important;
  right: -60px !important;
  width: 25px !important;
  height: 3px !important;
  background: rgb(17, 77, 53) !important;
}

.elementor-element-53cc92f::after {
  content: '' !important;
  position: absolute !important;
  bottom: -60px !important;
  right: -60px !important;
  width: 3px !important;
  height: 25px !important;
  background: rgb(17, 77, 53) !important;
}

.elementor-element-53cc92f {
  position: relative !important;
}

/* Form wrapper */
.elementor-element-53cc92f .elementor-form {
  display: flex !important;
  flex-direction: column !important;
}

.elementor-element-53cc92f .elementor-form-fields-wrapper {
  display: flex !important;
  flex-direction: column !important;
  gap: 25px !important;
}

/* Field groups */
.elementor-element-53cc92f .elementor-field-group {
  margin-bottom: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

/* Labels */
.elementor-element-53cc92f .elementor-field-label {
  font-family: 'Syne', sans-serif !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  color: rgb(71, 71, 71) !important;
  margin-bottom: 12px !important;
  display: block !important;
}

/* Required asterisk */
.elementor-element-53cc92f .elementor-mark-required .elementor-field-label::after {
  content: ' *' !important;
  color: rgb(17, 77, 53) !important;
}

/* Input fields */
.elementor-element-53cc92f .elementor-field-textual {
  width: 100% !important;
  padding: 20px 22px !important;
  border: 1px solid rgba(17, 77, 53, 0.2) !important;
  background: rgba(17, 77, 53, 0.02) !important;
  font-family: 'Libertinus Sans', Georgia, serif !important;
  font-size: 16px !important;
  color: #0a0a0a !important;
  border-radius: 0 !important;
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
  outline: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  height: auto !important;
  line-height: 1.5 !important;
}

/* Input placeholder */
.elementor-element-53cc92f .elementor-field-textual::placeholder {
  color: rgb(160, 160, 160) !important;
  opacity: 1 !important;
  font-style: normal !important;
}

/* Input focus state */
.elementor-element-53cc92f .elementor-field-textual:focus {
  border-color: rgb(17, 77, 53) !important;
  background: #ffffff !important;
  box-shadow: 0 8px 25px rgba(17, 77, 53, 0.12) !important;
  transform: translateY(-2px) !important;
}

/* Input hover state */
.elementor-element-53cc92f .elementor-field-textual:hover {
  border-color: rgba(17, 77, 53, 0.4) !important;
}

/* Hide reCAPTCHA field styling (keep functional) */
.elementor-element-53cc92f .elementor-field-type-recaptcha_v3 {
  margin-top: -10px !important;
  margin-bottom: -10px !important;
}

.elementor-element-53cc92f .elementor-field-type-recaptcha_v3 .elementor-field {
  min-height: 0 !important;
}

/* Submit button container */
.elementor-element-53cc92f .elementor-field-type-submit {
  margin-top: 15px !important;
}

/* Submit button */
.elementor-element-53cc92f .elementor-button {
  width: 100% !important;
  padding: 22px 40px !important;
  background: rgb(17, 77, 53) !important;
  border: none !important;
  border-radius: 0 !important;
  font-family: 'Syne', sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  cursor: pointer !important;
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Button hover */
.elementor-element-53cc92f .elementor-button:hover {
  background: rgb(12, 55, 38) !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 12px 35px rgba(17, 77, 53, 0.3) !important;
}

/* Button active */
.elementor-element-53cc92f .elementor-button:active {
  transform: translateY(-1px) !important;
  box-shadow: 0 5px 20px rgba(17, 77, 53, 0.25) !important;
}

/* Button text */
.elementor-element-53cc92f .elementor-button-text {
  position: relative !important;
  z-index: 2 !important;
}

/* Add arrow after button text */
.elementor-element-53cc92f .elementor-button-text::after {
  content: ' →' !important;
  margin-left: 10px !important;
  transition: transform 0.3s ease !important;
  display: inline-block !important;
}

.elementor-element-53cc92f .elementor-button:hover .elementor-button-text::after {
  transform: translateX(5px) !important;
}

/* Success message */
.elementor-element-53cc92f .elementor-message {
  font-family: 'Syne', sans-serif !important;
  font-size: 14px !important;
  padding: 18px 22px !important;
  margin-top: 20px !important;
  border-radius: 0 !important;
  text-align: center !important;
}

.elementor-element-53cc92f .elementor-message-success {
  background: rgba(17, 77, 53, 0.1) !important;
  color: rgb(17, 77, 53) !important;
  border: none !important;
  border-left: 4px solid rgb(17, 77, 53) !important;
}

/* Error message */
.elementor-element-53cc92f .elementor-message-danger {
  background: rgba(220, 53, 69, 0.1) !important;
  color: #dc3545 !important;
  border: none !important;
  border-left: 4px solid #dc3545 !important;
}

/* Field error state */
.elementor-element-53cc92f .elementor-error .elementor-field-textual {
  border-color: #dc3545 !important;
}

/* Loading state */
.elementor-element-53cc92f .elementor-button.elementor-loading {
  opacity: 0.7 !important;
  pointer-events: none !important;
}

/* Hide alert box for reCAPTCHA setup */
.elementor-element-53cc92f .elementor-alert {
  display: none !important;
}


/* ============================================
   RESPONSIVE STYLES
   ============================================ */

/* Tablet */
@media (max-width: 1200px) {
  .elementor-element-6e0b611 {
    padding: 20px !important;
  }

  .elementor-element-53cc92f .elementor-field-textual {
    padding: 18px 20px !important;
    font-size: 15px !important;
  }

  .elementor-element-53cc92f .elementor-button {
    padding: 20px 35px !important;
  }
}

/* Tablet Portrait */
@media (max-width: 1024px) {
  .elementor-element-6e0b611 {
    padding: 45px !important;
  }

  .elementor-element-53cc92f .elementor-form-fields-wrapper {
    gap: 22px !important;
  }

  .elementor-element-53cc92f .elementor-field-label {
    font-size: 9px !important;
    margin-bottom: 10px !important;
  }

  .elementor-element-53cc92f .elementor-field-textual {
    padding: 16px 18px !important;
  }

  .elementor-element-53cc92f .elementor-button {
    padding: 18px 30px !important;
    font-size: 11px !important;
  }
}

/* Mobile Landscape */
@media (max-width: 768px) {
  .elementor-element-6e0b611 {
    padding: 10px 20px !important;
  }

  .elementor-element-6e0b611::before,
  .elementor-element-6e0b611::after {
    width: 20px !important;
    height: 2px !important;
  }

  .elementor-element-6e0b611::after {
    width: 2px !important;
    height: 20px !important;
  }

  .elementor-element-53cc92f .elementor-form-fields-wrapper {
    gap: 20px !important;
  }

  .elementor-element-53cc92f .elementor-field-label {
    font-size: 9px !important;
    letter-spacing: 2px !important;
    margin-bottom: 8px !important;
  }

  .elementor-element-53cc92f .elementor-field-textual {
    padding: 15px 16px !important;
    font-size: 14px !important;
  }

  .elementor-element-53cc92f .elementor-button {
    padding: 16px 25px !important;
    font-size: 11px !important;
    letter-spacing: 2.5px !important;
  }

  .elementor-element-53cc92f .elementor-field-type-submit {
    margin-top: 10px !important;
  }
}

/* Mobile Portrait */
@media (max-width: 480px) {
  .elementor-element-6e0b611 {
    padding: 25px 25px !important;
  }

  .elementor-element-6e0b611::before,
  .elementor-element-6e0b611::after {
    width: 15px !important;
  }

  .elementor-element-6e0b611::after {
    width: 2px !important;
    height: 15px !important;
  }

  .elementor-element-53cc92f .elementor-form-fields-wrapper {
    gap: 18px !important;
  }

  .elementor-element-53cc92f .elementor-field-label {
    font-size: 8px !important;
    letter-spacing: 1.5px !important;
    margin-bottom: 8px !important;
  }

  .elementor-element-53cc92f .elementor-field-textual {
    padding: 14px 15px !important;
    font-size: 14px !important;
  }

  .elementor-element-53cc92f .elementor-field-textual::placeholder {
    font-size: 13px !important;
  }

  .elementor-element-53cc92f .elementor-button {
    padding: 15px 20px !important;
    font-size: 10px !important;
    letter-spacing: 2px !important;
  }

  .elementor-element-53cc92f .elementor-button-text::after {
    margin-left: 8px !important;
  }

  .elementor-element-53cc92f .elementor-message {
    padding: 15px 18px !important;
    font-size: 13px !important;
  }
}

/* Extra small devices */
@media (max-width: 360px) {
  .elementor-element-6e0b611 {
    padding: 30px 0px !important;
  }

  .elementor-element-53cc92f .elementor-field-textual {
    padding: 12px 15px !important;
    font-size: 13px !important;
  }

  .elementor-element-53cc92f .elementor-button {
    padding: 14px 18px !important;
    font-size: 9px !important;
  }
}


/* ============================================
   OPTIONAL: ADD FORM TITLE STYLING
   If you add a heading widget above the form
   ============================================ */

.elementor-element-6e0b611 .elementor-heading-title {
  font-family: 'Syne', sans-serif !important;
  font-size: 28px !important;
  font-weight: 600 !important;
  color: rgb(17, 77, 53) !important;
  margin-bottom: 10px !important;
  text-align: center !important;
}

.elementor-element-6e0b611 .elementor-widget-text-editor p {
  font-family: 'Libertinus Sans', Georgia, serif !important;
  font-size: 15px !important;
  color: rgb(140, 140, 140) !important;
  text-align: center !important;
  margin-bottom: 35px !important;
}

@media (max-width: 768px) {
  .elementor-element-6e0b611 .elementor-heading-title {
    font-size: 24px !important;
  }

  .elementor-element-6e0b611 .elementor-widget-text-editor p {
    font-size: 14px !important;
    margin-bottom: 30px !important;
  }
}

@media (max-width: 480px) {
  .elementor-element-6e0b611 .elementor-heading-title {
    font-size: 22px !important;
  }

  .elementor-element-6e0b611 .elementor-widget-text-editor p {
    font-size: 13px !important;
    margin-bottom: 25px !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e23d1dc *//* ==================== CONTACT SECTION ==================== */
/* Targets Elementor contact section structure */
/* Add class "aspis-contact" to main container in Elementor */

/* CSS Variables (in case not defined) */
:root {
  --green: rgb(17, 77, 53);
  --green-dark: rgb(12, 55, 38);
  --green-light: rgb(22, 95, 66);
  --white: #ffffff;
  --black: #0a0a0a;
}

/* Main Contact Section Container */
.aspis-contact,
.elementor-element-e23d1dc {
  width: 100%;
  padding: 0 !important;
  background: rgb(17, 77, 53) !important;
  position: relative;
  overflow: hidden;
  display: flex !important;
  min-height: 700px;
}

/* ==================== IMAGE SECTION ==================== */
/* Image Container - Left Side */
.elementor-element-a877b28 {
  display: block !important;
  width: 50% !important;
  min-height: 700px;
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
}

.elementor-element-a877b28 img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Image widget inside container */
.elementor-element-a877b28 .elementor-widget-image,
.elementor-element-a877b28 .elementor-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.elementor-element-a877b28 .elementor-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Hide spacer inside image container */
.elementor-element-a877b28 .elementor-widget-spacer {
  display: none !important;
}

/* ==================== CONTENT SECTION ==================== */
/* Right Content Area */
.elementor-element-70f3b95 {
  width: 50% !important;
  padding: 100px 80px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 60px !important;
}

/* Left Content Area (Text) */
.elementor-element-80924a6 {
  width: 100% !important;
  opacity: 0;
  transform: translateY(40px);
  animation: contactFadeUp 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

/* Contact Heading H2 */
.aspis-contact h2.elementor-heading-title,
.elementor-element-3e619fb h2.elementor-heading-title {
  font-family: 'Syne', sans-serif !important;
  font-size: clamp(36px, 4vw, 52px) !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  color: #ffffff !important;
  margin: 0 0 32px 0 !important;
}

/* Contact Description Paragraph */
.aspis-contact p.elementor-heading-title,
.elementor-element-af74fc6 p.elementor-heading-title {
  font-family: 'Source Sans Pro', sans-serif !important;
  font-size: 17px !important;
  line-height: 1.9 !important;
  color: rgba(255, 255, 255, 0.8) !important;
  margin: 0 !important;
  max-width: 480px;
}

/* Right Side - Form Container Area */
.aspis-contact .elementor-element-5f8477c,
.elementor-element-5f8477c {
  flex: 1;
}

/* Form Wrapper with ID */
#aspis-form-container,
.elementor-element-7607a57 {
  background: #ffffff !important;
  padding: 56px !important;
  position: relative;
  opacity: 0;
  transform: translateY(40px);
  animation: contactFadeUp 0.8s cubic-bezier(0.4, 0, 0.2, 1) 0.2s forwards;
}

#aspis-form-container::before,
.elementor-element-7607a57::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, rgb(17, 77, 53) 0%, rgb(22, 95, 66) 100%);
}

/* Form Element */
.aspis-contact .elementor-form,
.elementor-element-423eedb .elementor-form {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* Form Fields Wrapper */
.aspis-contact .elementor-form-fields-wrapper,
.elementor-element-423eedb .elementor-form-fields-wrapper {
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}

/* Form Field Groups */
.aspis-contact .elementor-field-group,
.elementor-element-423eedb .elementor-field-group {
  margin-bottom: 0 !important;
  padding: 0 !important;
}

/* Form Labels */
.aspis-contact .elementor-field-label,
.elementor-element-423eedb .elementor-field-label {
  font-family: 'Syne', sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: #666666 !important;
  margin-bottom: 8px !important;
}

/* Required Marker */
.aspis-contact .elementor-mark-required .elementor-field-label::after,
.elementor-element-423eedb .elementor-mark-required .elementor-field-label::after {
  color: rgb(17, 77, 53) !important;
}

/* Form Input Fields */
.aspis-contact .elementor-field-textual,
.elementor-element-423eedb .elementor-field-textual {
  font-family: 'Source Sans Pro', sans-serif !important;
  font-size: 16px !important;
  padding: 16px 20px !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 0 !important;
  background: #fafafa !important;
  color: #0a0a0a !important;
  outline: none !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  min-height: auto !important;
  height: auto !important;
}

.aspis-contact .elementor-field-textual::placeholder,
.elementor-element-423eedb .elementor-field-textual::placeholder {
  color: #999999 !important;
}

.aspis-contact .elementor-field-textual:focus,
.elementor-element-423eedb .elementor-field-textual:focus {
  border-color: rgb(17, 77, 53) !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(17, 77, 53, 0.08) !important;
  animation: inputGlow 0.4s ease;
}

/* Submit Button */
.aspis-contact .elementor-button,
.elementor-element-423eedb .elementor-button {
  font-family: 'Syne', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  padding: 18px 40px !important;
  background: rgb(17, 77, 53) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 0 !important;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
  margin-top: 8px;
  width: 100%;
}

.aspis-contact .elementor-button:hover,
.elementor-element-423eedb .elementor-button:hover {
  background: rgb(12, 55, 38) !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(17, 77, 53, 0.3) !important;
}

.aspis-contact .elementor-button:active,
.elementor-element-423eedb .elementor-button:active {
  transform: translateY(0);
}

/* Button Text */
.aspis-contact .elementor-button-text,
.elementor-element-423eedb .elementor-button-text {
  font-family: 'Syne', sans-serif !important;
}

/* ==================== ANIMATIONS ==================== */
@keyframes contactFadeUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes contactSlideIn {
  from {
    opacity: 0;
    transform: translateX(-20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

/* Input focus animation */
@keyframes inputGlow {
  0% { box-shadow: 0 0 0 3px rgba(17, 77, 53, 0); }
  50% { box-shadow: 0 0 0 3px rgba(17, 77, 53, 0.12); }
  100% { box-shadow: 0 0 0 3px rgba(17, 77, 53, 0.08); }
}

/* ==================== RESPONSIVE ==================== */

/* Large Desktops */
@media (max-width: 1600px) {
  .elementor-element-a877b28 { min-height: 650px; }
  .elementor-element-70f3b95 { padding: 80px 60px !important; }
  
  #aspis-form-container,
  .elementor-element-7607a57 { padding: 48px !important; }
}

/* Medium Desktops */
@media (max-width: 1400px) {
  .elementor-element-e23d1dc { min-height: 600px; }
  .elementor-element-a877b28 { min-height: 600px; }
  .elementor-element-70f3b95 { padding: 70px 50px !important; gap: 50px !important; }
  
  .elementor-element-3e619fb h2.elementor-heading-title { 
    font-size: clamp(32px, 3.5vw, 44px) !important; 
  }
  
  .elementor-element-af74fc6 p.elementor-heading-title { 
    font-size: 16px !important; 
  }
  
  #aspis-form-container,
  .elementor-element-7607a57 { padding: 44px !important; }
  
  .elementor-element-423eedb .elementor-field-textual { 
    padding: 14px 18px !important; 
  }
}

/* Small Desktops / Tablets Landscape */
@media (max-width: 1200px) {
  .elementor-element-e23d1dc {
    flex-direction: column !important;
    min-height: auto !important;
  }
  
  .elementor-element-a877b28 {
    width: 100% !important;
    height: 50vh !important;
    min-height: 400px !important;
  }
  
  .elementor-element-70f3b95 {
    width: 100% !important;
    padding: 80px 60px !important;
    gap: 48px !important;
  }
  
  .elementor-element-80924a6 { 
    text-align: left !important; 
    width: 100% !important;
  }
  
  .elementor-element-5f8477c { 
    width: 100% !important; 
  }
  
  #aspis-form-container,
  .elementor-element-7607a57 { padding: 48px !important; }
}

/* Tablets Portrait */
@media (max-width: 1024px) {
  .elementor-element-a877b28 { height: 45vh !important; min-height: 350px !important; }
  .elementor-element-70f3b95 { padding: 70px 50px !important; gap: 40px !important; }
  
  .elementor-element-3e619fb h2.elementor-heading-title { 
    font-size: clamp(28px, 4vw, 38px) !important; 
  }
  
  #aspis-form-container,
  .elementor-element-7607a57 { padding: 40px !important; }
  
  .elementor-element-423eedb .elementor-form-fields-wrapper { 
    gap: 20px !important; 
  }
}

/* Large Phones / Small Tablets */
@media (max-width: 768px) {
  .aspis-contact,
  .elementor-element-e23d1dc { 
    padding: 0 !important; 
  }
  
  /* Image Section - Full width stacked */
  .elementor-element-a877b28 {
    width: 100% !important;
    height: 40vh !important;
    min-height: 280px !important;
  }
  
  /* Content Section - Full width stacked */
  .elementor-element-70f3b95 { 
    width: 100% !important;
    padding: 48px 24px !important;
    gap: 32px !important; 
  }
  
  .elementor-element-3e619fb h2.elementor-heading-title { 
    font-size: 28px !important; 
    margin-bottom: 24px !important;
  }
  
  .elementor-element-af74fc6 p.elementor-heading-title { 
    font-size: 15px !important; 
    line-height: 1.8 !important;
  }
  
  #aspis-form-container,
  .elementor-element-7607a57 { 
    padding: 32px 24px !important;
    border-radius: 8px !important;
  }
  
  .elementor-element-423eedb .elementor-field-label { 
    font-size: 10px !important; 
  }
  
  .elementor-element-423eedb .elementor-field-textual {
    padding: 14px 16px !important;
    font-size: 16px !important;
  }
  
  .elementor-element-423eedb .elementor-button {
    padding: 16px 32px !important;
    font-size: 13px !important;
  }
}

/* iPhone Pro Max / Plus Models */
@media (max-width: 430px) {
  .aspis-contact,
  .elementor-element-e23d1dc { padding: 0 !important; }
  
  /* Image Section */
  .elementor-element-a877b28 {
    height: 35vh !important;
    min-height: 250px !important;
  }
  
  /* Content Section */
  .elementor-element-70f3b95 { 
    padding: 40px 16px !important;
  }
  
  .elementor-element-3e619fb h2.elementor-heading-title { 
    font-size: 26px !important; 
  }
  
  .elementor-element-af74fc6 p.elementor-heading-title { 
    font-size: 14px !important; 
  }
  
  #aspis-form-container,
  .elementor-element-7607a57 { padding: 28px 20px !important; }
  
  .elementor-element-423eedb .elementor-form-fields-wrapper { 
    gap: 16px !important; 
  }
}

/* iPhone 14/13/12 Standard & Pro */
@media (max-width: 393px) {
  /* Image Section */
  .elementor-element-a877b28 {
    height: 32vh !important;
    min-height: 220px !important;
  }
  
  /* Content Section */
  .elementor-element-70f3b95 { 
    padding: 36px 14px !important;
  }
  
  .elementor-element-3e619fb h2.elementor-heading-title { 
    font-size: 24px !important; 
  }
  
  #aspis-form-container,
  .elementor-element-7607a57 { padding: 24px 18px !important; }
  
  .elementor-element-423eedb .elementor-field-textual { 
    padding: 12px 14px !important; 
  }
}

/* iPhone SE / Small Phones */
@media (max-width: 375px) {
  .aspis-contact,
  .elementor-element-e23d1dc { padding: 0 !important; }
  
  /* Image Section */
  .elementor-element-a877b28 {
    height: 30vh !important;
    min-height: 200px !important;
  }
  
  /* Content Section */
  .elementor-element-70f3b95 { 
    padding: 32px 14px !important;
  }
  
  .elementor-element-3e619fb h2.elementor-heading-title { 
    font-size: 22px !important; 
    margin-bottom: 20px !important;
  }
  
  .elementor-element-af74fc6 p.elementor-heading-title { 
    font-size: 13px !important;
  }
  
  #aspis-form-container,
  .elementor-element-7607a57 { padding: 22px 16px !important; }
  
  .elementor-element-423eedb .elementor-field-label { 
    font-size: 9px !important; 
  }
  
  .elementor-element-423eedb .elementor-field-textual { 
    padding: 12px !important;
  }
  
  .elementor-element-423eedb .elementor-button {
    padding: 14px 24px !important;
    font-size: 12px !important;
  }
}

/* Very Small Phones */
@media (max-width: 320px) {
  .aspis-contact,
  .elementor-element-e23d1dc { padding: 0 !important; }
  
  /* Image Section */
  .elementor-element-a877b28 {
    height: 28vh !important;
    min-height: 180px !important;
  }
  
  /* Content Section */
  .elementor-element-70f3b95 { 
    padding: 28px 12px !important;
  }
  
  .elementor-element-3e619fb h2.elementor-heading-title { 
    font-size: 20px !important; 
  }
  
  .elementor-element-af74fc6 p.elementor-heading-title { 
    font-size: 12px !important; 
  }
  
  #aspis-form-container,
  .elementor-element-7607a57 { padding: 18px 14px !important; }
  
  .elementor-element-423eedb .elementor-field-textual { 
    padding: 10px 12px !important; 
  }
  
  .elementor-element-423eedb .elementor-button { 
    padding: 12px 20px !important; 
  }
}

/* Landscape Mode for Phones */
@media (max-height: 500px) and (orientation: landscape) {
  .aspis-contact,
  .elementor-element-e23d1dc { 
    padding: 0 !important; 
    flex-direction: row !important;
  }
  
  /* Image Section - Side by side in landscape */
  .elementor-element-a877b28 {
    width: 40% !important;
    height: 100vh !important;
    min-height: auto !important;
  }
  
  /* Content Section */
  .elementor-element-70f3b95 {
    width: 60% !important;
    padding: 32px !important;
    gap: 24px !important;
    max-width: 100% !important;
    overflow-y: auto !important;
  }
  
  .elementor-element-80924a6 { 
    text-align: left !important; 
  }
  
  #aspis-form-container,
  .elementor-element-7607a57 { padding: 24px !important; }
}

/* Touch Device Optimizations */
@media (hover: none) and (pointer: coarse) {
  .elementor-element-423eedb .elementor-button:hover {
    transform: none !important;
    box-shadow: none !important;
  }
  
  .elementor-element-423eedb .elementor-button:active {
    background: rgb(12, 55, 38) !important;
    transform: scale(0.98) !important;
  }
}

/* Reduced Motion for Accessibility */
@media (prefers-reduced-motion: reduce) {
  .elementor-element-80924a6,
  #aspis-form-container,
  .elementor-element-7607a57 {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
  }
  
  .elementor-element-423eedb .elementor-field-textual:focus {
    animation: none !important;
  }
}/* End custom CSS */