/*** General CSS ***/
body {
    line-height: 1.9em;
    color: #333;
}
a:hover, a:focus, a:active {
    color: #0fa89d;
}

/*** Header Area ***/
/* Top Head */
#sp-top-bar, #sp-top-bar a {
    color: #fff;
}
#sp-top-bar {
    background-color: #1e1e21;
}

/* Header Menu */
#sp-header {
    top: 0;
    height: inherit;
    background: transparent;
}
#sp-header.header-sticky {
    position: fixed;
    top: 0;
    padding: 0;
  	background: #192028;
  	box-shadow: 0 0 4px 0 rgb(0 0 0 / 10%);
}
body:not(.home) #sp-header {
    background: #192028;
    position: static;
}
body:not(.home) #sp-header.header-sticky {
    position: fixed;    
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item>a {
    color: #252525;
    font-size: 14px !important;
}
.sp-megamenu-parent > li > a, .sp-megamenu-parent > li > span {
    text-transform: uppercase;
    color: #fff;
}
.offcanvas-active .burger-icon>span, #modal-menu-toggler.active .burger-icon>span {
  	background: #fff;
}
.offcanvas-menu > .align-items-center {
  	background: #192028;
}

/* Canvas Menu */
.offcanvas-menu .offcanvas-inner .menu-child > li a {
    padding: 12px 10px !important;
    border-bottom: 1px solid rgba(197, 153, 153, 0.21);
    display: inherit;
}
.offcanvas-menu .offcanvas-inner ul.menu>li>a, .offcanvas-menu .offcanvas-inner ul.menu>li>span {
    font-size: 15px;
    font-weight: 500;
}
.burger-icon>span {
    background-color: #fff;
}

/*** Block Styles ***/
/* Button */
.btn,
#sp_qc_submit {
    position: relative;
    display: inline-block;
    width: auto;
    margin: 0;
    font-family: inherit;
    line-height: 2em;
    letter-spacing: .02em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px 34px;
    cursor: pointer;
    border-radius: 35px!important;
    text-transform: uppercase;
    color: #fff!important;
    font-size: 16px!important;
    font-weight: 600;
    letter-spacing: 2.4px;
    background: none;
    box-shadow: 0px 4px 2px 0px rgba(0,0,0,0.1);
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    border: 2px solid;
}
.btn:hover {
  	border-color: #fff !important;
    background-color: #000000;
}
.btn:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  	height: 100%;
    width: 100%;
    -webkit-transform-origin: 50%;
    -ms-transform-origin: 50%;
    transform-origin: 50%;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
  	border-radius: 25px;
}
.btn:hover:before {
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}
.btn.no-bg {
    background: none!important;
    box-shadow: none!important;
    border: 2px solid #C8C5BB!important;
    color: #212529!important;
    font-size: 14px;
}
.btn.no-bg:hover {
    border-color: #99978E!important;
}

/* Title */
.title h2 {
    color: #181b31;
    font-size: 60px;
    font-weight: 700;
    letter-spacing: 1.1px;
}
.title h6 {
    color: #797878;
}
.title.white h2 {
    color: #fff;
    margin-bottom: 20px;
}
.title.white p {
    font-weight: 700;
    color: #fff;
}

/* Slider */
a.slider-btn {
  	color: #fff !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 1px !important;
    padding: 16px 30px !important;
    border-radius: 30px !important;
    border: 2px solid !important;
    display: inline-block;
    cursor: pointer;
    text-transform: uppercase !important;
    -moz-transition: ease all 0.55s;
    -o-transition: ease all 0.55s;
    -webkit-transition: ease all 0.55s;
    transition: ease all 0.55s;
    line-height: 50px;
    position: relative;
    margin: 0 30px 20px;
}
a.slider-btn.left:hover {
  	background: #000 !important;
}
a.slider-btn.right {
  	background: none!important;
    color: #2ed47c!important;
    border-color: #2ed47c !important;
}
a.slider-btn.right:hover {
  	color: #000 !important;
  	background: #fff !important;
}

/* About */
.about-content h6 {
    color: #181b31;
    font-size: 27px;
    font-weight: 500;
    font-style: italic;
    line-height: 1.4em;
    margin: 50px 0;
}
.about-img2 {
    position: absolute;
    right: -150px;
    bottom: 0;
}
.about .sppb-col-md-2 {
    z-index: 2;
}

/* Step */
.step-item {
    padding: 20px;
}
.step-item h4 {
    color: #ffffff;
    font-size: 36px;
    font-weight: 700;
    line-height: 1.111em;
    margin: 40px 0;
}
.step-item p {
    color: #fff;
}
.step-item ul {
    padding-left: 0;
    margin-top: 30px;
}
.step-item ul li {
    list-style: none;
    color: #fff;
    font-size: 12px;
    text-transform: uppercase;
    line-height: 30px;
}

/* Explore */
.explore-content h4 {
    font-size: 22px;
    font-weight: 600;
    margin: 15px 0 32px;
}

/* Portfolio */
.sp-simpleportfolio .sp-simpleportfolio-filter>ul>li>a {
    background: transparent !important;
}

/* Testimonial */
.testimonial-item .pull-left {
    width: auto!important;
}
.testimonial-item img {
    max-width: 85px;
}
.testimonial-item h6 {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 2px;
    margin: 0 30px 20px;
}
.testimonial-item p {
    font-style: italic;
}

/* Service */
.service-item {
    padding: 50px 50px 50px 50px;
    background-color: rgba(28, 28, 28, 0.58);
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: rgba(255, 255, 255, 0.07);
}
.service-item .sppb-icon-container {
    padding: 30px!important;
 }

/* Our */
.our-colum-left:before {
    content: "";
    background-color: transparent;
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000000 100%);
    opacity: 0.93;
    height: 100%;
    width: 100%;
    display: inline-block;
    top: 0;
    left: 0;
    position: absolute;
}
.our-title {
    max-width: 550px;
    float: right;
    padding: 30px;
}
.our-title h5 {
    font-size: 15px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 30px;
}
.our-title h6 {
    font-size: 15px;
    color: #fff;
}
.our-column-right {
    padding: 80px 50px;
}
.our-column-right .clearfix:nth-child(n+2) {
    max-width: 48%;
    float: left;
}
.our-column-right .clearfix:nth-child(2n) {
    margin-right: 4%;
}

/* Choose */
.choose-item {
    border: 2px solid;
    cursor: pointer;
    padding: 30px 15px 30px 15px;
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}
.choose-column-right {
    padding: 0 80px;
}
.choose .lt-title p {
    color: #7a7a7a;
    font-weight: 400;
}
.choose-list ul {
    padding-left: 0;
}
.choose-list ul li {
    list-style: none;
    padding: 3px 0;
    max-width: 48%;
    float: left;
}
.choose-list ul li:nth-child(2n+1) {
    margin-right: 4%;
}
.choose-list ul li:before {
    font-family: FontAwesome;
    content: "\f058";
    font-size: 17px;
    margin-right: 5px;
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}
.choose-list ul li:hover:before {
    color: #ad6107;
}

/* Video */
.work {
    z-index: 2!important
}
.work .sppb-row > div:nth-child(1) {
    position: relative;
}
.work-title {
    max-width: 500px;
}
.video span {
    font-size: 14px;
    margin-left: 80px;
}
.video-left .clearfix:nth-child(n+2) {
    display: inline-block;
}
.video {
    min-width: 80px;
    min-height: 80px;
}
#video-popup-container {
    display:none;
    position: fixed;
    z-index: 996;
    width: 60%;
    left: 50%;
    margin-left: -30%;
    top: 20%;
    background-color: #fff;
}
.video a {
    font-size: 0;
    position: relative;
    left: 32px;
}
.video a:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 55%;
    width: 65px;
    height: 65px;
    margin-top: -32.5px;
    margin-left: -32.5px;
    border-radius: 50%;
    background-color: #fe688b;
    z-index: 10;
}
.video a:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 57%;
    margin-top: -10.5px;
    margin-left: -7px;
    border: solid 11px transparent;
    border-left: solid 17px;
    border-left-color: #fff;
    z-index: 10;
}
#video-popup-close {
    cursor: pointer;
    position: absolute;
    right: -10px;
    top: -10px;
    z-index: 998;
    width: 25px;
    height: 25px;
    border-radius: 25px;
    text-align: center;
    font-size: 12px;
    background-color: #000;
    line-height: 25px;
    color: #fff;
    opacity: 1;
}
#video-popup-iframe-container {
    position: absolute;
    z-index: 997;
    width: 100%;
    padding-bottom: 56.25%;
    border: 2px solid #000;
    border-radius: 2px;
    background-color: #000;
}
#video-popup-iframe {
    z-index: 999;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: #000;
}
#video-popup-overlay {
    display: none;
    position: fixed;
    z-index: 995;
    top: 0;
    background-color: #000;
    opacity: 0.8;
    width: 100%;
    height: 100%;
    left: 0;
}
#video-popup-close:hover {
    color: #DE0023;
}
.btn-no-bg,
.btn-no-bg:hover {
    background: none;
    border: 0;
}

/* Counter */
.counter-item {
    padding-bottom: 20px;
    position: relative;
}
.counter-item h6 {
    font-size: 15px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 20px;
}
.counter-item span {
    font-size: 69px;
    font-weight: 600;
    color: #fff;
}
.counter-item:before {
    position: absolute;
    content: '';
    left: 0;
    bottom: 0;
    background: #dddddd;
    height: 3px;
    width: 100%;
    display: inline-block;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}
.counter-item:hover:before {
    width: 100%;
}

/* About We */
.about-we-item {
    position: relative;
  	z-index: 1;
}
.about-we-item:before {
    position: absolute;
    content: '';
    left: 0;
    top: 0;
    height: 3px;
  	z-index: 2;
    width: 0;
    display: inline-block;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}
.about-we-item:after {
    position: absolute;
    content: '';
    right: 0;
  	z-index: 2;
  	bottom: 0;
    height: 3px;
    width: 0;
    display: inline-block;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}
.about-we-item:hover:before,
.about-we-item:hover:after {
    width: 100%;
}
.about-we-item .elementor-icon i:before {
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}
.about-we-item:hover .elementor-icon i:before {
    color: #fd7e14;
}
.about-ser:hover .sppb-icon-container > i,
.about-ser:hover .sppb-media-content h3 {
  	color: #fff !important;
}


/* View */
.title {
    max-width: 1000px;
    margin: 0 auto;
}

/* Together */
.together h1 span {
    line-height: 100px;
    font-size: 70px;
}

/* Offer */
.offer .sppb-row img {
    box-shadow: 25px 0px 60px rgba(0, 0, 0,0.3);
    -moz-box-shadow: 25px 0px 60px rgba(0, 0, 0,0.3);
    -webkit-box-shadow: 25px 0px 60px rgba(0, 0, 0,0.3);
    border-radius: 3px 3px 3px 3px;
    -moz-border-radius: 3px 3px 3px 3px;
    -webkit-border-radius: 3px 3px 3px 3px;
}
.offer-left {
    margin-left: -10%;
    width: 110%;
}
.offer-right {
    margin-top: 100px;
    margin-left: -70px;
    z-index: -1;
    width: 110%;
}

/* Project */
.title-content h2 {
    font-size: 60px;
    line-height: 55px;
    font-weight: 700;
    color: rgb(0, 22, 89);
    letter-spacing: -2px;
    margin-bottom: 25px;
}
.title-content p {
    font-size: 18px;
    line-height: 26px;
    font-weight: 400;
    color: rgb(86, 89, 105);
}
.project-img img {
    height: 667px;
}
.project-img-pen {
    position: absolute;
    bottom: 48px;
    right: 20px;
}

/* Pro */
.pro-item {
  	overflow: hidden;
  	position: relative;
    box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 15%) !important;
}
.pro-item img {
  	width: 100%;
}
.pro-item .sppb-addon-text {
  	padding-bottom: 35px;
}
.pro-item .sppb-img-container {
  	overflow: hidden;
    position: relative;
}
.pro-item .sppb-img-container:before {
    position: absolute;
    content: '';
    z-index: 1;
    left: 0;
    top: 0;
    height: 0;
    width: 100%;
    display: inline-block;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    opacity: 0.8;
}
.pro-item:hover .sppb-img-container:before {
    height: 100%;
}
.pro-item ul {
  	padding: 0;
  	-webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}
.pro-item ul li {
    list-style: none;
    line-height: 35px;
    display: inline-block!important;
    padding: 0px!important;
}
.pro-item ul li a {
	font-size: 16px;
    background: transparent;
    color: #fff;
    border: 1px solid #fff;
    height: 40px;
    width: 40px;
    line-height: 42px;
    text-align: center;
    border-radius: 50%;
    margin: 5px;
    -webkit-transition: .5s;
    transition: .5s;
    display: inline-block;
  	-webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}
.pro-item ul li a:hover {
  	background: #fff;
}
.pro-item ul li a strong {
    display: none;
}
.pro-item ul {
    position: absolute;
    top: -50px;
    margin: 0 auto;
    width: 100%;
  	z-index: 4;
}
.pro-item:hover ul {
    top: 25%;	
}

/* Light */
.light .sppb-addon-text h3 {
    color: #000;
    font-size: 20px;
    margin: 0;
    font-weight: 600;
    margin-top: 20px;
}
.light .sppb-addon-text h5 {
    font-weight: 400;
    font-size: 16px;
}
.light img {
    border-radius: 50%;
  	border: 2px solid;
}

/* Contact Info */
.contact-info h2, .contact-info h3 {
	font-size: 23px;
}

/* Blog */
.jmm-item .jmm-image.mod-article-image {
  	overflow: hidden;
}
.jmm-image.mod-article-image img {
  	transform: scale(1);
  	-webkit-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
}
.jmm-item:hover .jmm-image.mod-article-image img {
  	transform: scale(1.12);
  	filter: grayscale(100%);
}
.jmm-text {
    padding: 21px 20px 32px 20px;
    background: #f5f5f5;
}
.jm-category-module.default .mod-article-image {
    margin-bottom: 0px;
}

/* Bottom */
#sp-bottom .sp-module .sp-module-title {
    font-weight: 700;
    font-size: 22px;
}
.bottom-social ul li {
    list-style: none;
    line-height: 35px;
    display: inline-block!important;
    padding: 0px!important;
}
.bottom-social ul li a {
    font-size: 16px;
    background: #fefefe;
    height: 50px;
    width: 50px;
    line-height: 50px;
    text-align: center;
    border-radius: 50%;
    margin-right: 10px;
    -webkit-transition: .5s;
    transition: .5s;
    box-shadow: 0 0 15px rgba(228, 200, 200, 0.5);
    display: inline-block;
}
.bottom-social ul li a em {
    font-size: 22px;
}
.bottom-social ul li a strong {
    display: none;
}
.bottom-social ul li a:hover {
    background: #EC7A5C; 
}
#sp-bottom .sp-module {
    margin-bottom: 0px;
}

/* Footer Copyright */
#sp-footer {
    text-align: center;
}
#sp-footer .container-inner {
    border-top: 1px solid rgba(255, 255, 255, .1);
}

/*** Responsive Layout ***/
/* Tablet Landscape Layout */
@media (min-width: 1400px) {
    .sppb-row-container {
      	max-width: 1320px;
    }
}
/* Mobile Standard Layout */
@media (max-width: 768px) {
	#sp-header, #sp-header .logo {
        height: 70px;
    }
  	#sp-footer p {
  		text-align: center;
	}
  	body #sp-header {
      	padding: 0;
      	background: #252c30;
	}
  	.title h2 {
    	font-size: 60px;
	}
  	.slider-content h1 {
        font-size: 80px;
        line-height: 90px;
	}
  	.choose-column-right {
    	padding: 0 0px;
	}
    .testimonial-column {
		padding: 80px 10px;
    }
}

/* Mobile Small Resolution */
@media (max-width: 480px) {
  	.slider-small h3 {
    	margin-bottom: 0 !important;
  	}
  	.slider-big h1 {
    	padding: 0 !important;
  	}
  	.title h2 {
    	font-size: 50px;
	}
  	.slider-content h1 {
        font-size: 70px;
        line-height: 80px;
	}
  	.our-column-right .clearfix:nth-child(n+2) {
    	max-width: 100%;
	}
  	.our-column-right .clearfix:nth-child(2n) {
    	margin-right: 0;
	}
}

/* General color defination
Color value depend on preset color that picking on template settings > Presets
*/

:root {
  --background-color: currentColor;
  --background: currentColor;
  --text-color: currentColor;
}
.page-item.active .page-link, a.slider-btn:hover, .btn:before,
.slider-item .sppb-btn-success,
.sp-simpleportfolio .sp-simpleportfolio-item .sp-simpleportfolio-info:hover,
.sp-simpleportfolio .sp-simpleportfolio-item .sp-simpleportfolio-overlay-wrapper .sp-simpleportfolio-overlay,
.choose-item:hover, input.btn.btn-primary.button.subbutton:hover, #sp-bottom input.btn.btn-primary.button.subbutton,
.achievement-img, .video a:before, .about-we-item:hover:before, .about-we-item:hover:after,
.pro-item .sppb-img-container:before, .about-ser:hover .clearfix, .counter-item:hover:before, .slider-btn.left {
 	background-color: var(--background-color) !important;
}
.article-list .article .readmore a:hover, .article-list .article .readmore a:active, .article-list .article .article-header h2 a:hover,
#sp-bottom a, .step-item h6, .sp-simpleportfolio .sp-simpleportfolio-filter>ul>li.active>a, .testimonial-item h6, .title h6,
.about-we-item:hover i {
  	color: var(--text-color) !important; 
}
.slider-content, .choose-item, .service-column .clearfix:hover, .btn, .light img, .slider-btn.left {
  	border-color: var(--text-color) !important;
}
.service-column .clearfix {
    border-top-color: var(--text-color) !important;
}

