/* =====================================================
   ROK PROCESS STEPS
===================================================== */

.rok-process-steps{
    position:relative;
}

/* =====================================================
   STEP
===================================================== */

.rok-process-step{
    position:relative;
    background:#111111;
    padding:50px;
    border-radius:20px;
    border:1px solid rgba(255,255,255,.08);
    transition:all .35s ease;
}

.rok-process-step:hover{
    position:relative;
    background:#333;
    padding:50px;
    border-radius:20px;
    border:1px solid rgba(255,255,255,.95);
    overflow:hidden;
    transition:all .35s ease;
}

/* =====================================================
   FEATURED STEP
===================================================== */

.rok-process-step.featured{
    border-left:3px solid var(--e-global-color-primary) !important;
   }
   
.rok-process-step.featured .rok-process-badge {
  color: #111 !important;
  background-color: var(--e-global-color-primary) !important;
}  

.rok-process-step.featured  .rok-process-title {
  color: var(--e-global-color-primary) !important;
} 

/* =====================================================
   BADGE
===================================================== */

.rok-process-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:10px 18px;
    margin-bottom:25px;

    background:#00ff66;
    color:#000;

    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1px;

    border-radius:100px;
}

/* =====================================================
   NUMBER
===================================================== */

.rok-process-number{
    position:absolute;
    right:25px;
    top:15px;

    font-size:90px;
    font-weight:800;
    line-height:1;

    opacity:.08;
    z-index:1;
}

/* =====================================================
   ICON
===================================================== */

.rok-process-icon{
    position:relative;
    z-index:2;
    margin-bottom:25px;
    line-height:1;
}

.rok-process-icon i{
    font-size:48px;
}

.rok-process-icon svg{
    width:48px;
    height:48px;
    fill:currentColor;
}

.rok-process-text-icon{
    display:inline-block;
    font-size:48px;
    line-height:1;
}

.rok-process-image-icon{
    display:block;
    max-width:100%;
    height:auto;
}

/* =====================================================
   TITLE
===================================================== */

.rok-process-title{
    position:relative;
    z-index:2;

    margin:0 0 20px;

    font-size:32px;
    line-height:1.2;
    font-weight:700;

    color:#ffffff;
}

.rok-process-title span{
    color:#00ff66;
}

/* =====================================================
   DESCRIPTION
===================================================== */

.rok-process-description{
    position:relative;
    z-index:2;

    font-size:16px;
    line-height:1.8;

    color:rgba(255,255,255,.75);
}

/* =====================================================
   ARROW
===================================================== */

.rok-process-arrow{
    display:flex;
    align-items:center;
    justify-content:center;

    margin:25px auto;

    font-size:42px;
    color:#00ff66;

    line-height:1;
}

.rok-process-arrow svg{
    width:42px;
    height:42px;
    fill:currentColor;
}

/* =====================================================
   STYLE 1
   VERTICAL PROCESS
===================================================== */

.rok-process-steps.style-1{
    max-width:900px;
    margin:0 auto;
}

.rok-process-steps.style-1 .rok-process-step{
    margin-bottom:0;
}

/* =====================================================
   STYLE 2
   HORIZONTAL PROCESS
===================================================== */

.rok-process-steps.style-2{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}

.rok-process-steps.style-2 .rok-process-arrow{
    display:none;
}

/* =====================================================
   STYLE 3
   TIMELINE
===================================================== */

.rok-process-steps.style-3{
    position:relative;
    padding-left:60px;
}

.rok-process-steps.style-3:before{
    content:"";
    position:absolute;
    left:20px;
    top:0;
    bottom:0;

    width:2px;
    background:#00ff66;
}

.rok-process-steps.style-3 .rok-process-step{
    margin-bottom:40px;
}

.rok-process-steps.style-3 .rok-process-step:before{
    content:"";
    position:absolute;

    left:-52px;
    top:40px;

    width:16px;
    height:16px;

    background:#00ff66;
    border-radius:50%;
}
/* ===================================   
STYLE 4 - HORIZONTAL TIMELINE
=================================== */

.style-4 .rok-horizontal-timeline{	display:grid;	grid-template-columns:repeat(auto-fit,minmax(250px,1fr));	gap:30px;	position:relative;}
.style-4 .rok-horizontal-timeline::before{	content:'';	position:absolute;	top:35px;	left:10%;	right:10%;	height:2px;	background:#c9ab67;	z-index:1;}
.style-4 .rok-timeline-item{	position:relative;	text-align:center;	z-index:2;}
.style-4 .rok-timeline-number{	width:70px;	height:70px;	margin:0 auto 25px;	display:flex;	align-items:center;	justify-content:center;	border-radius:50%;	background:#c9ab67;	color:#222;	font-size:28px;	font-weight:700;}
.style-4 .rok-timeline-title{	margin-bottom:15px;	font-size:24px;	font-weight:700;}
.style-4 .rok-timeline-desc{	max-width:280px;	margin:0 auto;	line-height:1.8;}

/* =====================================================
   HOVER EFFECTS
===================================================== */

.rok-process-step:hover{
    border-color:rgba(255,255,255,.18);
}

.rok-process-step:hover .rok-process-title{
    transform:translateX(3px);
}

.rok-process-title{
    transition:all .3s ease;
}

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

@media (max-width:1024px){

    .rok-process-title{
        font-size:26px;
    }

    .rok-process-number{
        font-size:70px;
    }

    .rok-process-steps.style-2{
        grid-template-columns:repeat(2,1fr);
    }
}

@media (max-width:767px){

    .rok-process-step{
        padding:30px;
    }

    .rok-process-title{
        font-size:22px;
    }

    .rok-process-number{
        font-size:50px;
        right:15px;
        top:10px;
    }

    .rok-process-steps.style-2{
        grid-template-columns:1fr;
    }

    .rok-process-steps.style-3{
        padding-left:35px;
    }

    .rok-process-steps.style-3 .rok-process-step:before{
        left:-28px;
    }

    .rok-process-arrow{
        font-size:30px;
    }
}



/* =========================================================
   ROK PROCESS STEPS
   STYLE 5 - VERTICAL TIMELINE
   ========================================================= */

.rok-process-steps.style-5 {
	width: 100%;
	position: relative;
}

.rok-process-steps.style-5 .rok-vertical-timeline {
	position: relative;
	width: 100%;
}


/* ---------------------------------------------------------
   Vertical Line
   --------------------------------------------------------- */

.rok-process-steps.style-5 .rok-vertical-timeline::before {
	content: "";
	position: absolute;
	top: 50px;
	bottom: 100px;
	left: 50px;
	width: 2px;
	background: #ff7200;
	z-index:0;
}


/* ---------------------------------------------------------
   Timeline Item
   --------------------------------------------------------- */

.rok-process-steps.style-5 .rok-vertical-timeline-item {
	position: relative;
	display: flex;
	width: 100%;
	margin: 0 0 32px;
	padding: 0;
	min-height: 100px;
	 box-sizing: border-box;
}


/* Last item */

.rok-process-steps.style-5 .rok-vertical-timeline-item:last-child {
	margin-bottom: 0;
}


/* ---------------------------------------------------------
   Number
   --------------------------------------------------------- */

.rok-process-steps.style-5 .rok-vertical-timeline-number .number{
	position: relative;
	z-index: 5;
	flex: 0 0 100px;
	min-width:100px;
	min-height: 100px;
	margin: 0 10px 0 0;
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    color: #ffffff;
    font-size: 58px;
    font-weight: 700;
    line-height: 1;
	background: linear-gradient(135deg,	#ff9800 0%,	#ff5a00 100%);
	border: 0;
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.10);
    z-index: 5;
}


/* ---------------------------------------------------------
   Content Card
   --------------------------------------------------------- */

.rok-process-steps.style-5 .rok-vertical-timeline-content {
	position: relative;
	z-index: 2;
	flex: 1;
	display: flex;
	min-width:0px;
	align-items: center;
	min-height: 100px;
	padding: 25px 32px;
	background: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 16px;
	box-shadow: 0 8px 30px rgba(15, 30, 50, 0.06);
}


/* ---------------------------------------------------------
   Text
   --------------------------------------------------------- */

.rok-process-steps.style-5 .rok-vertical-timeline-text {
	flex: 1;
	min-width: 0;
	padding-right: 30px;
	text-align: left;
}


.rok-process-steps.style-5 .rok-process-title {
	margin: 0 0 12px;
	color: #10213d;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.25;
}


.rok-process-steps.style-5
.rok-process-description {
	margin: 0;

	color: #26364d;

	font-size: 17px;
	font-weight: 400;
	line-height: 1.7;
}


/* ---------------------------------------------------------
   Icon
   --------------------------------------------------------- */

.rok-process-steps.style-5 .rok-vertical-timeline-icon {
  flex: 0 0 100px;
  width: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  font-size: 70px;
  color: #ff6500;
}


.rok-process-steps.style-5
.rok-vertical-timeline-icon svg {
	width: 90px;
	height: 90px;
}


.rok-process-steps.style-5
.rok-vertical-timeline-icon i {
	font-size: 70px;
	color: #ff6500;
}


.rok-process-steps.style-5
.rok-vertical-timeline-icon img {
	display: block;

	width: 100px;
	height: 100px;

	object-fit: contain;
}


/* ---------------------------------------------------------
   Text Icon
   --------------------------------------------------------- */

.rok-process-steps.style-5
.rok-vertical-timeline-icon
.rok-process-text-icon {
	font-size: 70px;
	font-weight: 700;
	color: #ff6500;
	line-height: 1;
}


/* ---------------------------------------------------------
   Connector Dot
   --------------------------------------------------------- */

.rok-process-steps.style-5 .rok-vertical-timeline-item::before {
	content: "";
	position: absolute;
	z-index: 4;
	left: 100px;
	top: 50px;
	width: 14px;
	height: 2px;
	background #ff6500;
}


/* ---------------------------------------------------------
   Hover
   --------------------------------------------------------- */

.rok-process-steps.style-5
.rok-vertical-timeline-item:hover
.rok-vertical-timeline-content {
	box-shadow:
		0 15px 45px rgba(15, 30, 50, 0.12);
}


/* ---------------------------------------------------------
   Tablet
   --------------------------------------------------------- */

@media (max-width: 1024px) {

	.rok-process-steps.style-5
	.rok-vertical-timeline::before {
		left: 62px;
	}


	.rok-process-steps.style-5
	.rok-vertical-timeline-number {
		flex: 0 0 125px;

		width: 125px;
		min-height: 125px;

		font-size: 48px;

		margin-right: -35px;
	}


	.rok-process-steps.style-5
	.rok-vertical-timeline-content {
		min-height: 140px;

		padding: 28px 30px 28px 75px;
	}


	.rok-process-steps.style-5
	.rok-process-title {
		font-size: 24px;
	}


	.rok-process-steps.style-5
	.rok-process-description {
		font-size: 16px;
	}


	.rok-process-steps.style-5
	.rok-vertical-timeline-icon {
		flex: 0 0 100px;
		width: 100px;
	}


	.rok-process-steps.style-5
	.rok-vertical-timeline-icon svg {
		width: 75px;
		height: 75px;
	}


	.rok-process-steps.style-5
	.rok-vertical-timeline-item::before {
		left: 56px;
	}

}


/* ---------------------------------------------------------
   Mobile
   --------------------------------------------------------- */

@media (max-width: 767px) {

	.rok-process-steps.style-5
	.rok-vertical-timeline {
		padding-left: 0;
	}


	.rok-process-steps.style-5
	.rok-vertical-timeline::before {
		left: 50%;
	}


	.rok-process-steps.style-5
	.rok-vertical-timeline-item {
		display: block;
		min-height: 0;
		margin-bottom: 15px;
	}


	/* Number */

	.rok-process-steps.style-5
	.rok-vertical-timeline-number {
		width: 60px;
		min-height: 60px;
		height: 60px;
		font-size: 28px;
		margin: 0 auto 15px auto;
		border-radius: 12px;
	}

	.rok-process-steps.style-5 .rok-vertical-timeline-number .number {
	  position: relative;
	  z-index: 3;
	  width: 60px;
	  min-height: 60px;
	  height: 60px;
	  min-width: 60px;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  margin-right: 0px;
	  color: #ffffff;
	  font-size: 28px;
	  font-weight: 700;
	  line-height: 1;
	  border: 0;
	  border-radius: 10px;
	  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.10);
	}


	/* Card */

	.rok-process-steps.style-5	.rok-vertical-timeline-content {
		display: block;
		min-height: 0;
		padding: 20px 20px 20px 20px;
		border-radius: 15px;
		text-align:center;
	}


	.rok-process-steps.style-5
	.rok-vertical-timeline-text {
		padding-right: 0;
		text-align:center;
	}


	.rok-process-steps.style-5
	.rok-process-title {
		font-size: 21px;
		margin-bottom: 10px;
	}


	.rok-process-steps.style-5
	.rok-process-description {
		font-size: 15px;
		line-height: 1.6;
	}


	/* Icon */

	.rok-process-steps.style-5
	.rok-vertical-timeline-icon {
		width: 70px;

		margin: 20px 0 0 auto;

		font-size: 45px;
		display:none;
	}


	.rok-process-steps.style-5
	.rok-vertical-timeline-icon svg {
		width: 60px;
		height: 60px;
	}


	.rok-process-steps.style-5
	.rok-vertical-timeline-icon img {
		width: 65px;
		height: 65px;
	}

}


.noicon .rok-process-steps.style-5 .rok-vertical-timeline-text {
  padding-right: 0;
}
.noicon .rok-process-steps.style-5 .rok-vertical-timeline-content{
	padding: 15px 20px;
}
.noicon .rok-process-steps.style-5 .rok-vertical-timeline-number .number{
	position: relative;
	z-index: 5;
	flex: 0 0 60px;
	min-width:60px;
	min-height: 60px;
	margin: 0 10px 0 0;
    width: 60px;
    height: 60px;
}
.noicon .rok-process-steps.style-5 .rok-vertical-timeline::before{
	left:30px;
}

@media (max-width: 767px) {	

.noicon .rok-process-steps.style-5 .rok-vertical-timeline::before {
  left: 50%;
}

}