.elementor-5418 .elementor-element.elementor-element-ddc442e{--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;}@media(min-width:768px){.elementor-5418 .elementor-element.elementor-element-ddc442e{--content-width:100%;}}/* Start custom CSS for html, class: .elementor-element-2b34bc6 */.request-page{
  background:#090909;
  color:#f4efe7;
  min-height:100vh;
  padding:180px 6vw 120px;
  overflow:hidden;
}

.request-hero{
  max-width:1050px;
  margin-bottom:70px;
}

.request-hero span{
  color:#d8b98f;
  font-size:12px;
  letter-spacing:.28em;
  text-transform:uppercase;
}

.request-hero h1{
  margin-top:24px;
  font-size:clamp(64px,8vw,145px);
  line-height:.88;
  letter-spacing:-.08em;
  font-weight:300;
}

.request-hero p{
  margin-top:32px;
  max-width:760px;
  font-size:21px;
  line-height:1.6;
  opacity:.72;
}

/* FORM */

.request-form{
  max-width:1120px;
  display:grid;
  gap:28px;
}

/* PROGRESS */

.form-progress{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
}

.progress-item{
  padding:16px 18px;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);

  text-align:center;

  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;

  color:rgba(244,239,231,.45);

  transition:.3s ease;
}

.progress-item.active{
  background:#f4efe7;
  color:#111;
}

/* CARDS */

.form-card{
  display:none;

  padding:38px;

  border-radius:34px;

  background:
  rgba(255,255,255,.05);

  border:
  1px solid
  rgba(255,255,255,.12);

  backdrop-filter:blur(20px);

  animation:fadeCard .45s ease;
}

.form-card.active{
  display:block;
}

@keyframes fadeCard{

  from{
    opacity:0;
    transform:translateY(18px);
  }

  to{
    opacity:1;
    transform:translateY(0);
  }

}

/* HEAD */

.form-head{
  margin-bottom:34px;
}

.form-head span{
  color:#d8b98f;
  font-size:13px;
  letter-spacing:.18em;
}

.form-head h2{
  margin-top:18px;

  font-size:
  clamp(38px,5vw,82px);

  line-height:.95;

  letter-spacing:-.06em;
  font-weight:300;
}

.form-head p{
  margin-top:18px;

  max-width:680px;

  font-size:17px;
  line-height:1.6;

  opacity:.68;
}

/* GRID */

.grid{
  display:grid;
  gap:18px;
}

.grid.two{
  grid-template-columns:1fr 1fr;
}

/* LABELS */

label{
  display:flex;
  flex-direction:column;
  gap:10px;

  color:
  rgba(244,239,231,.72);

  font-size:12px;

  letter-spacing:.14em;
  text-transform:uppercase;
}

/* INPUTS */

input,
select,
textarea{
  width:100%;

  border:
  1px solid
  rgba(255,255,255,.14);

  background:
  rgba(255,255,255,.07);

  color:#f4efe7;

  border-radius:18px;

  padding:18px;

  font-size:16px;

  outline:none;

  transition:.25s ease;

  font-family:Arial, Helvetica, sans-serif;
}

select option{
  color:#111;
}

input:focus,
select:focus,
textarea:focus{
  border-color:#d8b98f;

  background:
  rgba(255,255,255,.1);
}

/* ERROR */

.error{
  border-color:#ff4d4d!important;

  background:
  rgba(255,77,77,.08)!important;
}

/* CHOICES */

.choice-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;

  margin-bottom:24px;
}

.choice input{
  display:none;
}

.choice span{
  min-height:66px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:999px;

  border:
  1px solid
  rgba(255,255,255,.12);

  background:
  rgba(255,255,255,.05);

  color:#f4efe7;

  cursor:pointer;

  transition:.25s ease;
}

.choice input:checked + span{
  background:#f4efe7;
  color:#111;
}

/* UPLOAD */

.upload-box{
  min-height:240px;

  display:grid!important;
  place-items:center;

  text-align:center;

  border:
  1px dashed
  rgba(255,255,255,.24);

  border-radius:28px;

  background:
  rgba(255,255,255,.03);

  cursor:pointer;

  margin-bottom:24px;

  transition:.3s ease;
}

.upload-box:hover{
  border-color:#d8b98f;
  background:rgba(216,185,143,.06);
}

.upload-box input{
  display:none;
}

.upload-box strong{
  font-size:34px;

  color:#f4efe7;

  text-transform:none;
  letter-spacing:-.04em;
}

.upload-box span{
  margin-top:10px;

  opacity:.64;

  text-transform:none;
  letter-spacing:0;
}

/* PREVIEW */

.upload-preview{
  display:grid;
  grid-template-columns:repeat(4,1fr);

  gap:12px;

  margin-bottom:24px;
}

.preview-item{
  height:150px;

  border-radius:18px;
  overflow:hidden;

  background:#181818;
}

.preview-item img{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* PRIVACY */

.privacy{
  margin-top:18px;

  flex-direction:row!important;

  align-items:flex-start;

  gap:12px!important;

  text-transform:none!important;
  letter-spacing:0!important;

  font-size:14px!important;

  line-height:1.5;
}

.privacy input{
  width:auto;
  margin-top:2px;
}

/* BUTTONS */

.step-nav{
  display:flex;
  justify-content:space-between;
  gap:14px;

  margin-top:36px;
}

.epo-step-button,
.step-next,
.step-back,
.submit-btn{
  appearance:none!important;
  -webkit-appearance:none!important;

  border:0!important;

  min-width:180px!important;

  border-radius:999px!important;

  padding:20px 30px!important;

  font-size:11px!important;

  letter-spacing:.16em!important;
  text-transform:uppercase!important;

  cursor:pointer!important;

  transition:.3s ease!important;

  font-family:Arial, Helvetica, sans-serif!important;

  line-height:1!important;

  text-align:center!important;
}

.step-next,
.submit-btn{
  background:#f4efe7!important;
  color:#111!important;
}

.step-next:hover,
.submit-btn:hover{
  background:#d8b98f!important;
  color:#111!important;
}

.step-back{
  background:
  rgba(255,255,255,.06)!important;

  color:#fff!important;

  border:
  1px solid
  rgba(255,255,255,.12)!important;
}

.step-back:hover{
  background:
  rgba(255,255,255,.12)!important;
}

.submit-btn:disabled{
  opacity:.6!important;
  cursor:not-allowed!important;
}

/* HIDDEN */

.hidden{
  display:none!important;
}

/* LOADING */

.loading-overlay,
.success-overlay{
  position:fixed;
  inset:0;

  z-index:999999;

  background:
  rgba(9,9,9,.92);

  backdrop-filter:blur(24px);
  -webkit-backdrop-filter:blur(24px);

  display:none;

  align-items:center;
  justify-content:center;

  padding:22px;
}

.loading-overlay.active,
.success-overlay.active{
  display:flex;
}

.loading-box,
.success-box{
  width:min(520px,100%);

  padding:44px;

  border-radius:34px;

  background:
  rgba(255,255,255,.07);

  border:
  1px solid
  rgba(255,255,255,.14);

  text-align:center;

  color:#f4efe7;

  box-shadow:
  0 30px 90px
  rgba(0,0,0,.45);
}

.loader-circle{
  width:68px;
  height:68px;

  border-radius:50%;

  border:
  3px solid
  rgba(255,255,255,.18);

  border-top-color:#d8b98f;

  margin:0 auto 26px;

  animation:spinLoader 1s linear infinite;
}

@keyframes spinLoader{

  to{
    transform:rotate(360deg);
  }

}

.success-check{
  width:74px;
  height:74px;

  border-radius:50%;

  background:#f4efe7;
  color:#111;

  display:grid;
  place-items:center;

  font-size:42px;

  margin:0 auto 26px;
}

.loading-box h2,
.success-box h2{
  font-size:
  clamp(32px,4vw,54px);

  line-height:1;

  letter-spacing:-.05em;
  font-weight:300;
}

.loading-box p,
.success-box p{
  margin-top:18px;

  font-size:17px;
  line-height:1.6;

  opacity:.7;
}

/* MOBILE */

@media(max-width:900px){

  .request-page{
    padding:
    130px
    22px
    80px;
  }

  .request-hero h1{
    font-size:58px;
  }

  .request-hero p{
    font-size:17px;
  }

  .grid.two,
  .choice-row,
  .form-progress{
    grid-template-columns:1fr;
  }

  .upload-preview{
    grid-template-columns:1fr 1fr;
  }

  .form-card{
    padding:24px;
    border-radius:26px;
  }

  .step-nav{
    flex-direction:column;
  }

  .epo-step-button,
  .step-next,
  .step-back,
  .submit-btn{
    width:100%!important;
  }

  .loading-box,
  .success-box{
    padding:32px 24px;
    border-radius:28px;
  }

}/* End custom CSS */