/* wrapper */
.cps-process-wrapper{
  /*max-width: 1400px;*/
  margin: 0 auto;
  padding: 80px 20px 0 20px;
  position: relative;
  color: #fff;
  /* background image or gradient can be applied by theme */
}

/* content block (left / top) */
.cps-process-content{
  max-width: 720px;
  background: #11C1FDA8;
  padding:80px 45px;
  border-radius: 30px 30px 0 0;
  margin: 0;opacity:0.90;
  text-align: left;
}
.cps-process-content .cps-subtitle {
    font-size: 14px;
    letter-spacing: 1px;
    margin: 0 0 30px;
    font-weight: bold;
    border: 1px solid #fff;
    border-radius: 50px;
    text-transform: uppercase;
    width: fit-content !important;
    padding: 10px 20px !important;
}
.cps-process-content .cps-title {
    font-size: 50px;
    margin: 0 0 15px;
    line-height: 110%;
    color: #fff;
    text-align: left;
}
.cps-process-content .cps-intro {
    font-size: 18px;
    color: #fff;
    line-height: 190%;
    font-weight: lighter;
}

/* steps container */
.cps-steps{
  display:flex;
  gap:18px;
  flex-wrap:nowrap;
  justify-content:center;
  align-items:center;
  width:100%;
  box-sizing:border-box;
}
h4.cps-step-title {
    color: #fff;
    font-size: 24px;
    line-height: 120%;
}
/* each step */
.cps-step{
  flex: 1;
  min-width: 330px;
  background: #05061ca8;
  border-radius:6px;
  overflow:hidden;
  transition: all 0.45s cubic-bezier(.2,.8,.2,1);
  cursor:pointer;
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:26px 38px;
  position:relative;    bottom: -160px;    min-height: 330px;
}
.cps-step-desc p {
    font-size: 16px;
    color: #fff !important;
    line-height: 170%;    padding-bottom: 20px;
}
/* front vs back */
.cps-step-front {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}
.cps-step-icon img{ width:56px; height:auto; margin-bottom:12px; display:block; }
.cps-step-title{ font-size:18px; margin:0; font-weight:600; }

/* hidden description area */
/*.cps-step-back{*/
/*  position:absolute;*/
/*  left:0; right:0; bottom:0;*/
/*  padding:24px;*/
/*  transform: translateY(100%);*/
  /*background: rgba(0,0,0,0.75);*/
/*  transition: transform 0.45s cubic-bezier(.2,.8,.2,1);*/
/*  color:#fff;*/
/*}*/

/* active / hover states */
.cps-step.active,
.cps-step:hover{
  /*flex: 1.3;*/
  transform: translateY(-90px) scale(1.02);
  /*background: rgba(9,9,39,0.85);*/
}
.cps-step.active .cps-step-desc, .cps-step:hover .cps-step-desc {
      visibility: visible;
}


.cps-step.active .cps-step-back,
.cps-step:hover .cps-step-back{
  transform: translateY(0%);
}

/* text inside back */
.cps-step-back h4{ margin:0 0 8px; }
.cps-step-desc{ font-size:14px; visibility: hidden; }

/* responsive */
@media (max-width: 900px){
       
  .cps-steps { flex-wrap:wrap; }
  .cps-step { min-width: 45%;     bottom: 0 !important;
      min-height: 220px;    border: .2px solid #424242;
      
  }
      .container h4.cps-step-title {
        font-size: 20px !important;
    }
  .cps-process-content { max-width: 100%;     padding: 50px 35px;}
  .cps-process-wrapper { 
      padding: 20px !important;
  }
      .container .cps-step-desc p {
        font-size: 14px !important;
        line-height: 170% !important;
    }
  .cps-step-desc {
    visibility: visible;
}
  .cps-step.active, .cps-step:hover {
    transform: translateY(-0px);
  }
  .container .cps-process-content .cps-title {
        line-height: 40px !important;
    }
}
@media (max-width: 560px){
  .cps-step { min-width: 100%; }
  .cps-steps { gap:12px; }
  .cps-process-content .cps-title{ font-size:28px; }
}

/* Approx. 1920x1080 @ 150% scaling (1280px effective width) */
@media only screen and (max-width: 1280px) and (min-resolution: 1.5dppx),
only screen and (max-width: 1280px) and (min-device-pixel-ratio: 1.5) {
 .cps-step {
    min-width: 190px;        padding: 15px;
        bottom: -190px;
 }
	.cps-step.active,
.cps-step:hover{
  transform: translateY(-125px) scale(1.02);
}
 .custom-process-section.vc_row.wpb_row[data-vc-full-width="true"] {
      padding-bottom: 0px !important;
  }  
  h4.cps-step-title {
    font-size: 16px;
}
    .container .cps-step-desc p {
        font-size: 12px ;
        line-height: 120%;
    }
/* .cps-process-content {
    padding: 55px 40px;
} */
.cps-process-content .cps-subtitle {
    font-size: 12px;
}
.cps-process-content .cps-intro {
    font-size: 16px;
    
}
.cps-process-wrapper {
    padding: 60px 20px 0 20px;
}
}



/* 110% Zoom Approx */
@media (max-width: 1750px) and (min-width: 1541px) {
    /* your CSS here */
    .cps-step {
    min-width: 280px;    padding: 26px;
    }
    h4.cps-step-title {
    font-size: 22px;
}
.cps-step-desc p {
    font-size: 14px;
    line-height: 150%;
}
}

/* 125% Zoom Approx */
@media (max-width: 1540px) and (min-width: 1350px) {
    /* your CSS here */
    .cps-step {
    min-width: 200px; padding: 26px;
    }
     h4.cps-step-title {
    font-size: 18px;
}
	.cps-step {
		bottom: -190px;}
.cps-step-desc p {
    font-size: 14px;
    line-height: 150%;
}
}
