/*** General CSS ***/
body {
    line-height: 1.9em;
}

/*** Header Area ***/
/* Top Header */
#sp-top-bar {
    position: relative;
    z-index: 9999;
}

/* Header Menu */
body #sp-header {
    left: 0;
    right: 0;
    width: 100%;
    z-index: 9999;
}
body:not(.home) #sp-header.header-sticky {
    position: fixed;    
}
.sp-megamenu-parent > li > a {
    width: 100%;
    position: relative;
    text-transform: uppercase;
}
.sp-menu-separator {
    text-transform: uppercase;
}

/* 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;
}

/*** Block Styles ***/
/* Button */
.btn,
.slider-btn a,
#sp_qc_submit {
    position: relative;
    display: inline-block;
    width: auto;
    margin: 0;
    font-weight: 500;
    font-family: inherit;
    line-height: 2em;
    letter-spacing: .02em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    cursor: pointer;
    border: 0;
    color: #fff;
    font-size: 18px;
    padding: 10px 35px 10px 35px;
    border-radius: 50px;
    box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 50%);
    overflow: hidden;
}
.btn:hover,
.slider-btn a:hover {
    color: #ffffff;
    background-color: #010101!important;
}
.btn i {
    font-size: 35px;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto!important;
    border-radius: 50px;
    width: 100%;
    height: 100%;
    background: #000;
    bottom: 100%;
    line-height: 52px;
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}
.btn:hover i {
    bottom: 0;
}

/* Title */
.title {
    position: relative;
    padding-bottom: 42px;
}
.title h1 {
    position: absolute;
    left: 0;
    top: 22px;
    z-index: -1;
    width: 100%;
}
.title h3 {
    font-size: 48px;
    margin-bottom: 30px;
}
.title p {
    color: #7a7a7a;
}
.title .sppb-addon-content {
    max-width: 800px;
    margin: 0 auto;
}
.sppb-text-center.title .sppb-addon-content {
    margin: 0 auto;
}
.sppb-text-center.title h1 {
    margin: 0 auto;
    letter-spacing: 120px!important;
    right: 0;
    top: 0;
}

/* Slider */
.slider-title h2 {
    padding-bottom: 30px !important;
    position: relative;
}
.slider-title h2#n2-ss-1item7:before, 
.slider-title h2#n2-ss-1item1:before,
.slider-title h2#n2-ss-1item4:before {
    position: absolute;
    content: '';
    left: -50px;
    display: inline-block;
    background: #000;
    bottom: 0;
    width: 150px;
    height: 2px;
}
.slider-content .n2-ss-has-self-align {
   	background: rgba(255,255,255,.4) !important;
}

/* Intro */
.intro img {
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}
.intro img:hover {
    transform: scale(1.1);
}
.intro-right-column .clearfix:nth-child(n+2) {
    display: inline-block;
}
.intro-right-column .clearfix:nth-child(3) {
    max-width: 400px;
    width: 100%;
}

/* Request */
.request {
    max-width: 1200px;
    margin: -70px auto 0!important;
}
.request-img img {
    margin: -63px 0px 0px 0px;
}

/* About */
.about-item .sppb-icon-container {
    height: 63px;
    width: 63px;
    line-height: 63px;
}

/* Choose */
.choose {
    position: relative;
}
.choose:after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 240px;
    background-color: #fff;
}
.choose .title:before,
.choose .title h3 {
    color: #fff;
}
.choose-item {
    padding: 35px 20px 45px 20px;
    background-color: #ffffff;
    border-style: solid;
    border-width: 0px 0px 3px 0px;
    border-radius: 10px 10px 10px 10px;
    box-shadow: 0px 5px 19px 4px rgba(201,201,201,0.5);
}

/* Countdown */
.countdown .sppb-section-title .elementor-divider-separator {
    background: #fff;
}
.countdown h2 span {
    font-weight: 300;
}
.countdown .scd-unit-horz {
    color: #fff!important;
}

/* Client */
.client-item .sppb-media .pull-left {
    max-width: 80px;
}
.client-item img {
    border-radius: 50%;
}

/* Project */
.sppb-panel-modern {
    box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.12);
    border: 0;
}
.sppb-panel-title {
    font-size: 16px;
}
.sppb-panel-modern>.sppb-panel-heading {
    background: none;
    padding: 22px 30px 22px 15px;
}
.sppb-panel-modern .sppb-panel-body {
    border: 0;
}

/* Our */
.our .clearfix {
    display: inline-block;
}
@keyframes flipInX {
    from {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    60% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        opacity: 1;
    }
    80% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    }
    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
}
.our-item:hover h5 {
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInX;
    animation-name: flipInX;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    color: #000;
}

/* About Us */
.about-us-left h2 {
    color: #ffffff;
    font-size: 51px;
    font-weight: 900;
    line-height: 1.2em;
}
.about-item .about-item-check.left,
.about-item .about-item-check.right {
    float: left;
    width: 50%;
}
.about-item .about-item-check {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.about-item .about-item-check li {
    padding-bottom: 10px;
}
.about-item .about-item-check em {
    padding-right: 10px;
}
.about-item .about-item-check strong {
    display: none;
}
.about-item-check h3 {
    font-size: 20px;
}
.about-item.projects em {
    font-size: 8px;
}

/* Price */
.price-column {
    box-shadow: 0px 0px 20px 0px rgba(221,221,221,0.5)!important;
    transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
    text-align: center;
    margin: 20px 0;
    padding: 70px 50px 40px 50px;
    background-color: #fff;
    border-radius: 10px 10px 10px 10px;
}
.price-item {
    box-shadow: 0px 0px 20px 0px rgb(221 221 221 / 50%);
    transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
    text-align: center;
    margin: 20px 20px 20px 20px;
    padding: 70px 50px 70px 50px;
    border-radius: 10px;
}
.price-item:hover {
    box-shadow: 0px 20px 40px 0px rgb(0 0 0 / 21%);
}
.price-item h4 {
    color: #ffffff;
    font-weight: bold;
    text-transform: uppercase;
    margin: 0px 0px 0px 0px;
    padding: 20px 0px 19px 0px;
}
.price-item h5 {
    color: #4c4c4c;
    font-family: "Roboto", \"Source Sans Pro\", sans-serif;
    font-size: 17px;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 5.9px;
    position: relative;
    margin-bottom: 50px;
    padding-bottom: 50px;
}
.price-item h5:after {
    content: "";
    bottom: 0;
    left: 0;
    right: 0;
    position: absolute;
    width: 20%;
    height: 3px;
    background: #000;
    margin: 0 auto;
}
.price-item h5 strong {
    font-size: 48px;
    font-weight: 900;
}
.price-item ul {
    padding-left: 0;
    text-align: center;
    display: inline-block;
}
.price-item ul li {
    list-style: none;
    color: #666666;
    padding-left: 0;
    line-height: 35px;
}
.price-item ul li strong {
    display: none;
}
.price-item ul li em {
  	padding-right: 10px;
}
.price .btn {
   	border-width: 3px!important;
    background: none;
    text-transform: capitalize;
}
.price-item.color h1,
.price-item.color h5,
.price-item.color ul li,
.price .lt-btn:hover {
    color: #fff;
}
.price-item.color h5:after {
    background-color: #fff;
}
.price-column .lt-btn {
    background: #fff;
}
.price-column .lt-btn:hover {
    border-color: #fff!important;
}

.price-item h6 {
    position: absolute;
    right: 0;
    top: 0;
    text-align: center;
    width: 150%;
    -webkit-transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(
-45deg
);
    -ms-transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(-45deg);
    transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(
-45deg
);
    margin-top: 35px;
    font-size: 13px;
    line-height: 2;
    font-weight: 800;
    text-transform: uppercase;
}
.price-item a {
    display: inline-block;
    background-color: #ffffff;
    border-style: solid;
    border-radius: 50px 50px 50px 50px;
    padding: 14px 50px 14px 50px;
    font-size: 18px;
    font-weight: 500;
    margin-top: 25px;
}
.price-item a:hover {
    color: #fff;
}
.price-item.center h5,
.price-item.center ul li {
    color: #fff;
}
.price-item.center h5:after {
    background: #fff;
}
.price-item.center a:hover {
    border-color: #fff!important;
}

/* Testimonial */
.testimonial-column {
    padding: 30px 40px 30px 40px;
    background-color: #ffffff;
    border-radius: 15px 15px 15px 15px;
    box-shadow: 0px 5px 20px 0px rgb(0 0 0 / 10%)!important;
}
.testimonial-column:hover {
    box-shadow: 0px 15px 50px 0px rgb(0 0 0 / 5%)!important;
}
.testimonial-item {
    background-color: #fff;
    box-shadow: 0px 0px 35px 0px rgba(93,114,128,0.15);
    transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
    margin: 40px 0;
    padding: 30px 30px 30px 30px;
    border-radius: 20px;
}
.testimonial-item.center {
    margin-top: 70px;
}
.testimonial-item i {
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}
.testimonial-item:hover i {
    transform: scale(1.1);
}
.testimonial-item h5 {
    font-size: 20px;
    font-weight: 500;
    margin-top: 20px;
}
.testimonial-item h6 {
    color: #54595f;
    font-size: 13px;
    font-weight: 400;
}

/* Category */
.category-column {
    min-height: 200px;
}
.category-column .lt-btn {
    position: absolute;
    bottom: 40px;
    left: 0;
    right: 0;
    margin: 0 auto;
    display: inline-block;
    max-width: 135px;
}

/* Collection */
.collection-column .clearfix {
    background-color: #FFFAF7;
    margin: 0 auto;
    max-width: 582px;
}
.collection .btn {
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.5);
}

/* Subscribe */
.subscribe table.acymailing_form {
    width: 100%;
    max-width: 380px;
    margin: 59px;
}
.subscribe table.acymailing_form input {
    background: transparent;
    border: 1px dashed #fff;
    color: #fff !important;
    margin: 10px 0;
}
.subscribe table .acysubbuttons input {
    margin-left: -80px;
}
.subscribe table.acymailing_form tr {
    margin: 15px 0;
}

/* Service */
.service .title p {
    color: #fff;
}
.service-column-left .clearfix:nth-child(n+2) {
    width: 33.33%;
    float: left;
}
.service-column-left .clearfix:nth-child(4) {
    margin-right: 0;
}
.service-item {
    background-color: rgba(255,255,255,0.73);
    border-style: solid;
    border-width: 5px 0px 0px 0px;
    border-color: #f9520b;
    transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
    margin: 0% 06% 0% 0%;
    padding: 25px 25px 25px 25px;
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}
.service-item:hover {
    border-top: 0;
    border-bottom: 5px solid #003970;
}

/* Portfolio */
.portfolio .btn {
    display: unset;
}
.portfolio-item {
    position: relative;
    overflow: hidden;
}
.portfolio-item h4 {
    position: absolute;
    top: 5%;
    left: 10%;
    margin: 0;
    font-weight: 400;
    letter-spacing: .07em;
    color: #fff;
    text-transform: uppercase;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
    max-width: 80%;
}
.portfolio-item:hover h4 {
    top: 10%;
    opacity: 0;
}
.portfolio-item h5 {
    position: absolute;
    left: 10%;
    bottom: 0;
    margin: 0 0 -.8em;
    font-weight: 400;
    font-size: 16px;
    color: #fff;
    letter-spacing: .8em;
    -webkit-transform: rotate(
-90deg
);
    -ms-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: rotate(
-90deg
);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
}
.portfolio-item:hover h5 {
    opacity: 0;
    letter-spacing: 2em;
}
.portfolio-item img {
    -webkit-transition: all 15s;
    -o-transition: all 15s;
    transition: all 15s;
}
.portfolio-item:hover img {
    transform: scale(1.2);
}

/*** Step ***/
.step .sppb-row > div:nth-child(n+2) {
    border-left: 1px solid #E6E6E6;
}
.step-item h4 {
    color: #262626;
    font-size: 30px;
    font-weight: 400;
}
.step-item h6 {
    font-weight: 700;
    font-size: 15px;
    text-transform: uppercase;
    margin-bottom: 15px;
}

/* Team */
.team-item {
    position: relative;
}
.team-item p {
    color: #7a7a7a;
    margin-bottom: 2px;
}
.team-item ul {
    padding-left: 0;
}
.team-item ul li {
    list-style: none;
    display: inline-block;
    margin: 7px;
}
.team-item ul li em {
    font-size: 0;
    color: #4c4c4c;
}
.team-item ul li em:before {
    font-size: 16px;
}
.team-item .sppb-media-content {
    position: relative;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: -65px;
    padding: 30px 0 0;
    border-style: solid;
    background: #fff;
    border-width: 0px 0px 3px 0px;
    box-shadow: 0px 0px 35px 8px rgb(132 132 132 / 37%);
    transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
    margin: 40px 40px 40px 40px;
}

/* Counter */
.counter-item {
    padding: 10px;
    position: relative;
    border-right: 1px solid #bfbfbf;
}
.counter-item h4 {
    font-size: 20px;
    color: #54595f;
    margin-top: 10px;
}
.counter-item span {
    font-size: 60px;
    font-weight: 500;
}

/* 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%);
}

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

/* Bottom Area */
.acym_module_form {
	margin-top: -20px;
}
.acym_module_form input {
	max-width: 100% !important;
}
.acym_module_form .btn-primary {
	padding: 10px 20px !important;
	border: none;
}
.acym_module_form .btn-primary:hover {
	background: #000 !important;
}

/* Footer Copyright */
div#sp-footer1 {
    text-align: center;
}

/*** 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 {
    	background: #fff;
      	padding: 0;
	}
}

/* Mobile Small Resolution */
@media (max-width: 480px) {
  .slider-small h3 {
    	margin-bottom: 0 !important;
  }
  .slider-big h1 {
    	padding: 0 !important;
  }
  .service-column-left .clearfix:nth-child(n+2) {
    	width: 100%;
    	margin-bottom: 30px;
	}
}

/* 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, .btn,
.btn-design, .sp-simpleportfolio .sp-simpleportfolio-filter>ul>li.active>a,
.sp-simpleportfolio .sp-simpleportfolio-item .sp-simpleportfolio-info:hover, .title-design h3:before,
.apartment-item h5::before, .apartment-title h3:before, #testimonial .fa-quote-left, .price-item.center, .slider-btn a,
.slider-title h2#n2-ss-1item1:before, .slider-title h2#n2-ss-1item4:before, .slider-title h2#n2-ss-1item7:before {
 	background-color: var(--background-color) !important;
}
.article-list .article .article-header h2 a:hover, .article-list .article .readmore a:hover, .article-list .article .readmore a:active,
.product-item-left .sppb-icon-container i, .intro-title h4,  .our-item h5, .team-item h5,
.product-item-right .sppb-icon-container i, .title h3, .about-item-check em, .counter-item span,
.about-item-check h3 {
  	color: var(--text-color) !important;
}
.page-item.active .page-link, .price-item,  .team-item .sppb-media-content,
.tabs .sppb-tab-content, .tabs .sppb-nav-tabs>li.active>a, .service-item .sppb-addon-content:hover .sppb-icon-container i {
  	border-color:var(--text-color)!important;
}
.check-sub {
    border-top-color: var(--text-color)!important;
}