.elementor-3400 .elementor-element.elementor-element-1f495e0:not(.elementor-motion-effects-element-type-background), .elementor-3400 .elementor-element.elementor-element-1f495e0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-secondary );}.elementor-3400 .elementor-element.elementor-element-1f495e0 > .elementor-background-overlay{background-image:url("https://atlasconstruction808.com/wp-content/uploads/2022/08/DSC05298_1.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;opacity:0.1;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-3400 .elementor-element.elementor-element-1f495e0 > .elementor-container{max-width:720px;}.elementor-3400 .elementor-element.elementor-element-1f495e0{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:5em 0em 5em 0em;}.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(16px/2);}.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(16px/2);}.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(16px/2);}.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-16px/2);}.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-16px/2);}.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-icon i{color:var( --e-global-color-primary );transition:color 0.3s;}.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );transition:fill 0.3s;}.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-item:hover .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-item:hover .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-3400 .elementor-element.elementor-element-e08fab5{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-icon{padding-inline-end:16px;}.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-item > a{font-size:15px;}.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-text{color:var( --e-global-color-primary );transition:color 0.3s;}.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-item:hover .elementor-icon-list-text{color:var( --e-global-color-3f02d6b );}.elementor-3400 .elementor-element.elementor-element-d13f6de{text-align:center;}.elementor-3400 .elementor-element.elementor-element-d13f6de .elementor-heading-title{text-transform:uppercase;color:var( --e-global-color-3f02d6b );}.elementor-3400 .elementor-element.elementor-element-7e50d52{--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:3rem;--padding-bottom:3rem;--padding-left:0rem;--padding-right:0rem;}.elementor-3400 .elementor-element.elementor-element-031cfce .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-3400 .elementor-element.elementor-element-031cfce .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-3400 .elementor-element.elementor-element-031cfce .elementor-field-group.recaptcha_v3-bottomleft, .elementor-3400 .elementor-element.elementor-element-031cfce .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-3400 .elementor-element.elementor-element-031cfce .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-3400 .elementor-element.elementor-element-031cfce .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-3400 .elementor-element.elementor-element-031cfce .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-3400 .elementor-element.elementor-element-031cfce .elementor-field-type-html{padding-bottom:0px;}.elementor-3400 .elementor-element.elementor-element-031cfce .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-3400 .elementor-element.elementor-element-031cfce .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-3400 .elementor-element.elementor-element-031cfce .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-3400 .elementor-element.elementor-element-031cfce .elementor-button[type="submit"]{color:#ffffff;}.elementor-3400 .elementor-element.elementor-element-031cfce .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-3400 .elementor-element.elementor-element-031cfce .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-3400 .elementor-element.elementor-element-031cfce .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-3400 .elementor-element.elementor-element-031cfce .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-3400 .elementor-element.elementor-element-031cfce .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-3400 .elementor-element.elementor-element-031cfce .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-3400 .elementor-element.elementor-element-031cfce{--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;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-3400 .elementor-element.elementor-element-7e50d52{--content-width:910px;}}@media(max-width:1024px){.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-item > a{font-size:14px;}}@media(max-width:767px){.elementor-3400 .elementor-element.elementor-element-1f495e0{padding:10em 0em 5em 0em;}.elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-3400 .elementor-element.elementor-element-e08fab5 .elementor-icon-list-item > a{font-size:13px;}}/* Start custom CSS for form, class: .elementor-element-031cfce *//* ============================================
   ATLAS CONSTRUCTION - APPLICATION FORM CSS
   ============================================ */

 

/* ---- Form Container ---- */
.elementor-form {
  max-width: 960px;
  margin: 40px auto;
  padding: 50px 45px 40px;
  background: linear-gradient(135deg, #ffffff 0%, #f8f9fc 100%);
  border-radius: 20px;
  box-shadow:
    0 4px 6px rgba(0, 0, 0, 0.04),
    0 10px 40px rgba(0, 0, 0, 0.08),
    0 0 0 1px rgba(0, 0, 0, 0.03);
 
  position: relative;
  overflow: hidden;
}

/* Decorative top accent bar */
.elementor-form::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 5px;
  background: linear-gradient(90deg, #1a1a2e 0%, #16213e 25%, #0f3460 50%, #e94560 75%, #e94560 100%);
  background-size: 200% 100%;
  animation: shimmer 4s ease-in-out infinite;
}

@keyframes shimmer {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}

/* Subtle background pattern */
.elementor-form::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, rgba(15, 52, 96, 0.03) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}

/* ---- Fields Wrapper ---- */
.elementor-form-fields-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 0;
  position: relative;
  z-index: 1;
}

/* ---- Field Groups ---- */
.elementor-field-group {
  padding: 8px 12px;
  box-sizing: border-box;
  animation: fadeInUp 0.4s ease backwards;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Column widths */
.elementor-col-100 { width: 100%; }
.elementor-col-50 { width: 50%; }
.elementor-col-33 { width: 33.333%; }

/* ---- Labels ---- */
.elementor-field-label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #1a1a2e;
  margin-bottom: 6px;
  letter-spacing: 0.02em;
  text-transform: none;
  transition: color 0.3s ease;
}

.elementor-field-group:hover .elementor-field-label {
  color: #0f3460;
}

/* Required field indicator */
.elementor-field-required .elementor-field-label::after {
  content: ' *';
  color: #e94560;
  font-weight: 700;
  font-size: 14px;
}

/* ---- Text Inputs ---- */
.elementor-field-textual,
.elementor-field.elementor-size-sm {
  width: 100%;
  padding: 12px 16px;
  font-size: 14px;
 
  color: #2d3436;
  background-color: #ffffff;
  border: 2px solid #e8ecf1;
  border-radius: 10px;
  outline: none;
  transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  box-sizing: border-box;
  -webkit-appearance: none;
}

.elementor-field-textual::placeholder {
  color: #b2bec3;
  font-weight: 400;
  font-size: 13px;
}

.elementor-field-textual:hover {
  border-color: #b8c5d6;
  background-color: #fdfdff;
}

.elementor-field-textual:focus {
  border-color: #0f3460;
  box-shadow:
    0 0 0 4px rgba(15, 52, 96, 0.08),
    0 2px 8px rgba(15, 52, 96, 0.06);
  background-color: #ffffff;
  transform: translateY(-1px);
}

/* ---- Section Headers (HTML fields) ---- */
.elementor-field-type-html {
  padding-top: 20px !important;
  padding-bottom: 4px !important;
}

.elementor-field-type-html p,
.elementor-field-type-html {
  font-family: 'Playfair Display', 'Georgia', serif;
  font-size: 20px;
  font-weight: 700;
  color: #1a1a2e;
  letter-spacing: -0.01em;
  position: relative;
  padding-bottom: 10px;
  margin: 0;
  line-height: 1.4;
}

/* Underline accent for section headers */
.elementor-field-type-html::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 12px;
  width: 40px;
  height: 3px;
  background: linear-gradient(90deg, #e94560, #0f3460);
  border-radius: 3px;
}

/* Remove the underline for spacer/br HTML fields */
.elementor-field-group-field_3339e15::after,
.elementor-field-group-field_db14531::after {
  display: none;
}

/* Override inline HR styles in HTML fields */
.elementor-field-type-html hr {
  width: 60% !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent, #0f3460, transparent) !important;
  border: none !important;
  margin: 10px auto 15px !important;
  opacity: 0.3;
}

/* ---- Radio Buttons ---- */
.elementor-field-subgroup {
  display: flex;
  gap: 12px;
  margin-top: 4px;
}

.elementor-field-option {
  display: flex;
  align-items: center;
  gap: 8px;
}

.elementor-field-option input[type="radio"] {
  -webkit-appearance: none;
  appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #d1d8e0;
  border-radius: 50%;
  outline: none;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  flex-shrink: 0;
}

.elementor-field-option input[type="radio"]:hover {
  border-color: #0f3460;
  box-shadow: 0 0 0 3px rgba(15, 52, 96, 0.1);
}

.elementor-field-option input[type="radio"]:checked {
  border-color: #0f3460;
  background-color: #0f3460;
  box-shadow: 0 0 0 3px rgba(15, 52, 96, 0.15);
}

.elementor-field-option input[type="radio"]:checked::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 8px;
  height: 8px;
  background: white;
  border-radius: 50%;
}

.elementor-field-option label {
  font-size: 14px;
  font-weight: 500;
  color: #2d3436;
  cursor: pointer;
  transition: color 0.3s ease;
}

.elementor-field-option label:hover {
  color: #0f3460;
}

/* ---- Checkbox / Acceptance ---- */
.elementor-field-type-acceptance .elementor-field-subgroup {
  flex-direction: column;
}

.elementor-field-type-acceptance .elementor-field-option {
  align-items: flex-start;
  gap: 14px;
  background: linear-gradient(135deg, #f8f9fc 0%, #eef1f7 100%);
  padding: 24px;
  border-radius: 14px;
  border: 2px solid #e0e5ee;
  transition: all 0.3s ease;
}

.elementor-field-type-acceptance .elementor-field-option:hover {
  border-color: #c5cdd8;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
}

.elementor-acceptance-field {
  -webkit-appearance: none;
  appearance: none;
  width: 24px;
  height: 24px;
  min-width: 24px;
  border: 2px solid #d1d8e0;
  border-radius: 7px;
  outline: none;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  margin-top: 2px;
}

.elementor-acceptance-field:checked {
  background: linear-gradient(135deg, #0f3460, #16213e);
  border-color: #0f3460;
  box-shadow: 0 2px 8px rgba(15, 52, 96, 0.3);
}

.elementor-acceptance-field:checked::after {
  content: '✓';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  font-size: 14px;
  font-weight: 700;
}

.elementor-field-type-acceptance small {
  font-size: 12px;
  line-height: 1.7;
  color: #4a5568;
  font-weight: 400;
  display: block;
}

.elementor-field-type-acceptance .elementor-field-option > label {
  font-size: 12px;
  line-height: 1.7;
  color: #4a5568;
  cursor: pointer;
}

/* ---- File Upload ---- */
.elementor-upload-field {
  width: 100%;
  padding: 14px 16px;
  font-size: 14px;
  font-family: 'Inter', sans-serif;
  color: #2d3436;
  background-color: #ffffff;
  border: 2px dashed #c5cdd8;
  border-radius: 10px;
  cursor: pointer;
  transition: all 0.3s ease;
  box-sizing: border-box;
}

.elementor-upload-field:hover {
  border-color: #0f3460;
  background-color: #f8f9fc;
  border-style: dashed;
}

.elementor-upload-field:focus {
  border-color: #0f3460;
  box-shadow: 0 0 0 4px rgba(15, 52, 96, 0.08);
  outline: none;
}

/* Style the file input */
input[type="file"]::file-.elementor-3400 .elementor-element.elementor-element-031cfce-button {
  padding: 8px 18px;
  border: none;
  border-radius: 6px;
  background: linear-gradient(135deg, #0f3460, #16213e);
  color: white;
  font-size: 12px;
  font-weight: 600;
  font-family: 'Inter', sans-serif;
  cursor: pointer;
  margin-right: 12px;
  transition: all 0.3s ease;
  letter-spacing: 0.02em;
}

input[type="file"]::file-.elementor-3400 .elementor-element.elementor-element-031cfce-button:hover {
  background: linear-gradient(135deg, #16213e, #1a1a2e);
  transform: scale(1.02);
}

/* ---- Submit Button ---- */
.e-form__buttons {
  padding-top: 25px !important;
}

.elementor-button {
  
  
  
 
  
  color: #ffffff;
  background: #CBDB2E;
  
  border: none;
  border-radius: 12px;
  cursor: pointer;
  transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  position: relative;
  overflow: hidden;
  box-shadow:
    0 4px 15px rgba(15, 52, 96, 0.3),
    0 2px 4px rgba(0, 0, 0, 0.1);
}

.elementor-button::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
  transition: left 0.6s ease;
}

.elementor-button:hover {
  background-position: 100% 100%;
  transform: translateY(-2px);
  box-shadow:
    0 8px 25px rgba(15, 52, 96, 0.35),
    0 4px 10px rgba(233, 69, 96, 0.2);
}

.elementor-button:hover::before {
  left: 100%;
}

.elementor-button:active {
  transform: translateY(0);
  box-shadow:
    0 2px 8px rgba(15, 52, 96, 0.3);
}

.elementor-button-text {
  position: relative;
  z-index: 1;
}

/* ---- Responsive Design ---- */
@media (max-width: 768px) {
  .elementor-form {
    margin: 20px 15px;
    padding: 35px 20px 30px;
    border-radius: 16px;
  }

  .elementor-col-50,
  .elementor-col-33 {
    width: 100%;
  }

  .elementor-field-group {
    padding: 6px 8px;
  }

  .elementor-field-type-html p,
  .elementor-field-type-html {
    font-size: 17px;
  }

  .elementor-field-textual,
  .elementor-field.elementor-size-sm {
    padding: 11px 14px;
    font-size: 16px; /* Prevents zoom on iOS */
  }

  .elementor-button {
    padding: 14px 30px;
    font-size: 15px;
  }

  .elementor-field-type-acceptance .elementor-field-option {
    padding: 18px;
  }
}

@media (max-width: 480px) {
  .elementor-form {
    margin: 10px 8px;
    padding: 30px 15px 25px;
    border-radius: 14px;
  }

  .elementor-field-subgroup {
    flex-direction: column;
    gap: 8px;
  }
}

/* ---- Focus-within visual feedback on field groups ---- */
.elementor-field-group:focus-within .elementor-field-label {
  color: #0f3460;
}

/* ---- Flatpickr date field adjustments ---- */
.flatpickr-input {
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23b2bec3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  background-size: 16px;
  padding-right: 40px !important;
}

/* ---- Smooth scrolling for long form ---- */
html {
  scroll-behavior: smooth;
}

/* ---- Selection color ---- */
.elementor-form ::selection {
  background-color: rgba(15, 52, 96, 0.15);
  color: #1a1a2e;
}

/* ---- Valid field indicator (subtle green border) ---- */
.elementor-field-textual:valid:not(:placeholder-shown) {
  border-color: #a8e6cf;
}

.elementor-field-textual:valid:not(:placeholder-shown):focus {
  border-color: #0f3460;
}

/* ---- Print styles ---- */
@media print {
  .elementor-form {
    box-shadow: none;
    border: 1px solid #ddd;
  }

  .elementor-form::before {
    background: #1a1a2e;
    animation: none;
  }

  .elementor-button {
    display: none;
  }
}/* End custom CSS */