/* RoofPlan HTML5 Template  */

/************ TABLE OF CONTENTS ***************
1. Fonts
2. Reset
3. Global
4. Main Header
5. Hidden Sidebar
6. Banner Section
7. Page Title
8. Section Banner
9. Section Title
10. About Section
11. Blog Section

**********************************************/



:root {
    --thm-font: 'Poppins', sans-serif;
    --thm-font-2: 'Montserrat', sans-serif;
    --thm-gray: #808080;
    --thm-black: #252628;
    --thm-base: #ed202b;
    --thm-base-rgb: 237, 32, 43;
    --thm-primary: #e7bd1a;
    --thm-primary-rgb: 231, 189, 26;
}
  






/*==============================================
   Base Css
===============================================*/
*{
	margin:0px;
	padding:0px;
	border: none;
	outline: none;
	font-size: 100%;
}
html,
body { 
    height: 100%;
}
body {
    color: var(--thm-gray);
    font-size: 15px;
    line-height: 26px;
    font-weight: 400;
    font-family: var(--thm-font);
}
button:focus{
    outline: none;
}
button {
    cursor: pointer;
    border: none;
    background: transparent;
    padding: 0;
}
h1, h2, h3, h4, h6 {
    color: var(--thm-black);
    font-weight: 700;
    line-height: 1.25em;
    font-family: var(--thm-font-2);
    margin: 0;
}


a,
a:hover,
a:active,
a:focus {
    text-decoration: none;
    outline: none;
    border: none;
}
.sp{
    padding: 150px 0;
}


@media (min-width: 1200px) {
    .container {
        max-width: 1200px;
    }
}


img {
    max-width: 100%;
    height: auto;
    transition-delay: .1s;
    transition-timing-function: ease-in-out;
    transition-duration: .7s;
    transition-property: all;
}



i {
	font-style: normal;
}
ul,
li {
    list-style: none;
    margin: 0;
    padding: 0;
}

li{
    margin: 0;
    padding: 0;    
}

.auto-container {
    position: static;
    max-width: 1200px;
    padding: 0px 15px;
    margin: 0 auto;
}



.btn-one {
    position: relative;
    display: inline-block;
    overflow: hidden;
    padding-left: 40px;
    padding-right: 40px;
    background-color: transparent;
    color: #ffffff;
    font-size: 16px;
    line-height: 55px;
    font-weight: 600;
    text-transform: capitalize;
    border-radius: 30px;
    -webkit-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
    transition: all 0.3s linear; 
    font-family: var(--thm-font-2);
    z-index: 2;
}
.btn-one:before {
    position: absolute;
    top: 110px;
    left: -50px;
    right: -50px;
    height: 170px;
    content: "";
    background: var(--thm-black);
    -webkit-transform: translateY(-55px);
    transform: translateY(-55px);
    border-radius: 50%;
    webkit-transition-duration: 800ms;
    transition-duration: 800ms;
    z-index: 1;
}
.btn-one:hover:before{
    top: 0%;
    left: -70px;
    right: -70px;
}
.btn-one:after {
    content: "";
    position: absolute;
    top: 0px;
    left: 0px;
    bottom: 0px;
    right: 0px;
    border-radius: 30px;
    background-color: var(--thm-base);
    opacity: 1;
    transform: scaleX(1.0);
    webkit-transition-duration: 800ms;
    transition-duration: 800ms;
    z-index: -1;
}
.btn-one:hover:after{
    transform: scaleX(0);
    webkit-transition-duration: 1500ms;
    transition-duration: 1500ms;
} 


.btn-one.style2{
    color: #252628;
}
.btn-one.style2:after{
    background-color: #ffffff;
}
.btn-one.style2:hover:after{
    transform: scaleX(0);
    webkit-transition-duration: 1500ms;
    transition-duration: 1500ms;
}
.btn-one.style2:before{
    background-color: var(--thm-base);
}


.btn-one .txt {
    position: relative;
    z-index: 1;
}
.btn-one:hover,
.btn-one:focus{
    color: #ffffff;
} 






/*___ owl Nav Dot Style _____*/




@keyframes pulse {
    50% {
        box-shadow: 0 0 0 5px rgba(255,255,255,.1),
        0 0 0 20px rgba(238, 238,238, 0.3000);
    }
}

@keyframes pulse2 {
    50% {
        box-shadow: 0 0 0 5px rgba(255,231,1,.1),
        0 0 0 20px rgba(255, 231,1, 0.3000);
    }
}




.boxed_wrapper {
    position: relative;
    margin: 0 auto;
    overflow: hidden !important;  
    background: #ffffff none repeat scroll 0 0;
    width: 100%;
    min-width: 320px;
}






/** search pop-up style **/
.search-popup{
    position:fixed;
    left:0;
    top:0px;
    width:100%;
    height:100%;
    z-index:99999;
    visibility:hidden;
    opacity:0;
    overflow:auto;
    background: rgba(0, 0, 0, 0.9);
    -webkit-transform:translateY(101%);
    -ms-transform:translateY(101%);
    transform:translateY(101%);
    transition:all 700ms ease;
    -moz-transition:all 700ms ease;
    -webkit-transition:all 700ms ease;
    -ms-transition:all 700ms ease;
    -o-transition:all 700ms ease;
}
.search-popup.popup-visible{
    -webkit-transform:translateY(0%);
    -ms-transform:translateY(0%);
    transform:translateY(0%);
    visibility:visible;
    opacity:1;
}
.search-popup .overlay-layer{
    position:absolute;
    left:0px;
    top:0px;
    right:0px;
    bottom:0px;
    display:block;
}
.search-popup .close-search{
    position:absolute;
    right:25px;
    top:25px;
    font-size:22px;
    color:#ffffff;
    cursor:pointer;
    z-index:5;
    transition: all 500ms ease;
}
.search-popup .search-form{
    position: relative;
    padding: 0px 15px 0px;
    max-width: 1024px;
    margin: 0 auto;
    margin-top: 150px;
    margin-bottom: 100px;
    opacity: 0;
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px);
    z-index: 10;
}
.search-popup.popup-visible .search-form {
    opacity: 1;
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px);
    transition: all 500ms ease 500ms;
    -moz-transition: all 900ms ease 500ms;
    -webkit-transition: all 900ms ease 500ms;
    -ms-transition: all 900ms ease 500ms;
    -o-transition: all 900ms ease 500ms;
}
.search-popup .search-form .form-group{
    margin-bottom: 30px;
}
.search-popup .search-form fieldset{
    position:relative;
    border-radius:12px;
}
.search-popup .search-form fieldset input[type="search"]{
    position:relative;
    height:70px;
    padding:20px 250px 20px 30px;
    background:#ffffff;
    line-height:30px;
    font-size:24px;
    color:#233145;
    border-radius:7px;
}
.search-popup .search-form fieldset input[type="submit"]{
    position:absolute;
    display:block;
    right:0px;
    top:0px;
    text-align:center;
    width:220px;
    height:70px;
    padding:20px 10px 20px 10px;
    color:#ffffff !important;
    line-height:30px;
    font-size:20px;
    cursor:pointer;
    text-transform:uppercase;
    border-radius:0px 7px 7px 0px;
    background: var(--thm-primary);
}
.search-popup .search-form fieldset input[type="submit"]:hover{
    transform: translateY(0px);
}
.search-popup h3{
    text-transform:uppercase;
    font-size:20px;
    font-weight:600;
    color:#ffffff;
    margin-bottom:20px;
    letter-spacing:1px;
    text-align:center;  
}
.search-popup .recent-searches{
    font-size:16px;
    color:#ffffff;
    text-align:center;
}
.search-popup .recent-searches li{
    display:inline-block;
    margin:0px 10px 10px 0px; 
}
.search-popup .recent-searches li a{
    display:block;
    line-height:24px;
    border:1px solid #ffffff;
    padding:7px 15px;
    color:#ffffff;
    border-radius:3px;
    -webkit-transition:all 0.5s ease;
    -moz-transition:all 0.5s ease;
    -ms-transition:all 0.5s ease;
    -o-transition:all 0.5s ease;
    transition:all 0.5s ease;
}
.search-popup .recent-searches li a:hover{
    border-color: var(--thm-primary);
    background-color: var(--thm-primary);
}



/*________________Preloader_______________ */





/*** Scroll To Top style ***/
.scroll-top {
    position: fixed;
    right: 15px;
    bottom: 20px;
    width: 60px;
    height: 60px;
    background-color: transparent;
    border: 2px solid var(--thm-primary);
    color: var(--thm-primary);
    border-radius: 50%;
    font-size: 20px;
    line-height: 56px;
    font-weight: 400;
    text-align: center;
    text-transform: uppercase;
    display: none;
    cursor: pointer;
    transform: rotate(-90deg);
    transition: all 200ms linear;
    transition-delay: 0.1s;
    z-index: 999999999;
}
.scroll-top span {}
.scroll-top:after {
	position: absolute;
	content: '';
	top: 100%;
	left: 5%;
	height: 10px;
	width: 90%;
	opacity: 1;
	z-index: -1;
	background: -webkit-radial-gradient(center, ellipse, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%);
	background: -webkit-radial-gradient(center ellipse, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%);
	background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 80%);
}
.scroll-top:hover{
    color: var(--thm-base);
    border-color: var(--thm-black);
}

.scroll-top.style2 {
    position: absolute;
    left: 0;
    top: -20px;
    right: 0;
    width: 40px;
    height: 40px;
    margin: 0 auto;
    border-radius: 5px;
    background-color: #0098ff;
    border: none;
    text-align: center;
    animation: auto;
    transition: all 200ms linear;
    transition-delay: 0.1s;
    font-size: 20px;
    line-height: 40px;
    font-weight: 400;
}



/* Form validation styles */
input:focus,
textarea:focus {
    border-color: #43c3ea;
    outline: none;
}

#contact-form input[type="text"].error{
    border-color: red;    
}
#contact-form input[type="email"].error{
  border-color: red;    
}
#contact-form textarea.error{
  border-color: red;    
}







/* Overlay styles */




.review-box {
    position: relative;
    display: block;
    overflow: hidden;
    line-height: 16px;
}
.review-box ul {
    display: block;
    overflow: hidden;
}
.review-box ul li {
    display: inline-block;
    float: left;
    margin-right: 5px;
}
.review-box ul li:last-child{
    margin-right: 0px;    
}
.review-box ul li i {
    color: var(--thm-primary);
    font-size: 18px;
}





/* Update header Style */
@keyframes menu_sticky {
    0%   {margin-top:-90px;}
    50%  {margin-top: -74px;}
    100% {margin-top: 0;}
}




/*** 
========================================
    Mobile Menu
========================================
***/
.nav-outer .mobile-nav-toggler {
    position: relative;
    display: none;
    float: right;
    cursor: pointer;
    padding: 30px 0;
}
.nav-outer.style1 .mobile-nav-toggler {
    padding: 25px 0 25px;
}
.nav-outer.style2 .mobile-nav-toggler {
    padding: 10px 0;
}


.nav-outer .mobile-nav-toggler .inner{
    position: relative;
    display: block;
    padding: 3px 5px;
    background: var(--thm-base);
}
.mobile-menu{
	position: fixed;
	top: 0;
	right: 0;
	width: 300px;
	max-width:100%;
	height: 100%;
	padding-right:30px;
	opacity: 0;
	visibility: hidden;
	z-index: 999999;
}
.mobile-menu .menu-backdrop{
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
    background-color: rgba(9, 16, 32, 0.90);
	-webkit-transform: translateX(101%);
	-ms-transform: translateX(101%);
	transform: translateX(101%);
	transition: all 900ms ease;
    -moz-transition: all 900ms ease;
    -webkit-transition: all 900ms ease;
    -ms-transition: all 900ms ease;
    -o-transition: all 900ms ease;
	z-index: 1;
}
.mobile-menu-visible .mobile-menu .menu-backdrop{
	opacity: 0.70;
	visibility: visible;
	-webkit-transition:all 0.7s ease;
	-moz-transition:all 0.7s ease;
	-ms-transition:all 0.7s ease;
	-o-transition:all 0.7s ease;
	transition:all 0.7s ease;
	-webkit-transform: translateX(0%);
	-ms-transform: translateX(0%);
	transform: translateX(0%);
}
.mobile-menu .navbar-collapse{
	display:block !important;	
}


.mobile-menu .nav-logo{
	position:relative;
	padding:30px 25px;
	text-align:left;	
}
.mobile-menu .nav-logo a{
    position: relative;
    display: inline-block;
}
.mobile-menu .nav-logo a img{
    height: 80px;
    width: auto;
    display: block;
}

.mobile-menu-visible{
	overflow: hidden;
}
.mobile-menu-visible .mobile-menu{
	opacity: 1;
	visibility: visible;
}
.mobile-menu .menu-box{
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	max-height: 100%;
	overflow-y: auto;
	background: #000000;
	padding: 0px 0px;
	z-index: 5;
	opacity: 0;
	visibility: hidden;
	border-radius: 0px;
	-webkit-transform: translateX(101%);
	-ms-transform: translateX(101%);
	transform: translateX(101%);
}
.mobile-menu-visible .mobile-menu .menu-box{
	opacity: 1;
	visibility: visible;
	-webkit-transition:all 0.7s ease;
	-moz-transition:all 0.7s ease;
	-ms-transition:all 0.7s ease;
	-o-transition:all 0.7s ease;
	transition:all 0.7s ease;
	-webkit-transform: translateX(0%);
	-ms-transform: translateX(0%);
	transform: translateX(0%);
}
.mobile-menu .close-btn{
	position: absolute;
	top: 10px;
	right: 10px;
	color: #ffffff;
	font-size: 30px;
	line-height: 30px;
	width: 30px;
	text-align: center;
	cursor: pointer;
	z-index: 10;
	-webkit-transition:all 0.9s ease;
	-moz-transition:all 0.9s ease;
	-ms-transition:all 0.9s ease;
	-o-transition:all 0.9s ease;
	transition:all 0.9s ease;
}
.mobile-menu-visible .mobile-menu .close-btn{
	-webkit-transform:rotate(360deg);
	-ms-transform:rotate(360deg);
	transform:rotate(360deg);
}
.mobile-menu .close-btn:hover{
	-webkit-transform:rotate(90deg);
	-ms-transform:rotate(90deg);
	transform:rotate(90deg);
}


.mobile-menu .navigation{
	position: relative;
	display: block;
	width: 100%;
	float: none;
}
.mobile-menu .navigation li{
	position: relative;
	display: block;
	border-top: 1px solid rgba(255,255,255,0.10);
}
.mobile-menu .navigation:last-child{
	border-bottom: 1px solid rgba(255,255,255,0.10);
}
.mobile-menu .navigation li > ul > li:first-child{
	border-top: 1px solid rgba(255,255,255,0.10);
}
.mobile-menu .navigation li > a{
	position: relative;
	display: block;
	padding: 10px 25px;
	color: #ffffff;
	font-size: 15px;
	line-height: 24px;
	font-weight: 600;
	text-transform: uppercase;
	-webkit-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	transition: all 500ms ease;	
}
.mobile-menu .navigation li > a:before{
	content:'';
	position:absolute;
	left:0;
	top:0;
	height:0;
    border-left: 5px solid var(--thm-primary);
	-webkit-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	transition: all 500ms ease;	
}
.mobile-menu .navigation li.current > a:before{
	height:100%;
}

.mobile-menu .navigation li.current > a,
.mobile-menu .navigation li > a:hover{
    color: var(--thm-primary);    
}


.mobile-menu .navigation li ul li > a{
	font-size: 15px;
    font-weight: 400;
	margin-left: 20px;
	text-transform: capitalize;
}
.mobile-menu .navigation li > ul,
.mobile-menu .navigation li > ul > li > ul {
	display: none;
}
.mobile-menu .social-links{
	position:relative;
	text-align:center;
	padding:30px 25px;
}
.mobile-menu .social-links li{
	position:relative;
	display:inline-block;
	margin:0px 5px 10px;
}
.mobile-menu .social-links li a{
	position:relative;
	color:#ffffff;
	font-size: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #2e2e2e;
	line-height:32px;
	-webkit-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	transition: all 500ms ease;	
}
.mobile-menu .social-links li a:hover{
    color: #ffffff;
    background: var(--thm-base);
}



.sec-title {
    position: relative;
    display: block;
    margin-top: -4px;
    padding-bottom: 50px;
    line-height: 0;
}
.sec-title .sub-title {
    position: relative;
    display: block;
    padding-bottom: 3px;
}
.sec-title .sub-title p{
    color: var(--thm-base);
    font-size: 16px;
    line-height: 1.2em;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}
.sec-title h2 {
    font-size: 44px;
    line-height: 1.2em;
    font-weight: 800;
    text-transform: none;
}





/*** 
=============================================
    Features Style1 Area Css
=============================================
***/
.features-style1-area{
    position: relative;
    display: block;
    background: #f8f5ef;
    padding-bottom: 110px;
}
.features-style1-area .thm-shape1 {
    position: absolute;
    top: -190px;
    right: -370px;
    z-index: 10;
}


.single-features-style1{
    position: relative;
    display: block;
    padding: 50px 35px 45px;
    margin-bottom: 40px;
    z-index: 1;
}
.single-features-style1::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: #ffffff;
    border-radius: 20px;
    transform: perspective(400px) scaleX(0);
    box-shadow: 0px 10px 50px 0px rgba(26, 46, 85, 0.1);
    transform-origin: center;
    transition: all 500ms linear;
    transition-delay: 0.1s; 
    z-index: -1;
}
.single-features-style1:hover:before,
.single-features-style1.active:before {
    opacity: 1;
    transform: perspective(400px) scaleX(1.0);
    transition: all 300ms linear;
    transition-delay: 0.1s;  
}

.single-features-style1::after {
    position: absolute;
    top: 0;
    left: 0%;
    content: '';
    width: 50%;
    height: 100%;
    background: rgba(255, 255, 255, 0.50);
    transform: scale(0);
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    transition: all 700ms ease 100ms;
    z-index: -1;
}
.single-features-style1:hover::after{
    transform: scale(1.0);
}





.single-features-style1 .icon {
    position: relative;
    display: block;
    line-height: 0;
    z-index: 1;
}
.single-features-style1 .icon span::before{
    color: var(--thm-base);
    font-size: 60px;
    line-height: 60px;
}

.single-features-style1 .icon .shape1{
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #ffffff;
    margin: 0 auto;
    z-index: -1;
}
.single-features-style1 .icon .shape1::after {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    content: "";
    border-radius: 50%;
    z-index: -1;
    transform: scale(0.0);
    transform-origin: center;
    transform-style: preserve-3d;
    transition: all 0.4s cubic-bezier(0.62, 0.21, 0.45, 1.52);
    background-color: rgba(var(--thm-base-rgb), .05);
}
.single-features-style1:hover .icon .shape1::after,
.single-features-style1.active .icon .shape1::after{
    transform: scaleX(1.0);   
}

.single-features-style1 .text{
    position: relative;
    display: block;
    margin-top: 25px;
}
.single-features-style1 .text h3{
    font-size: 20px;
    line-height: 30px;
    margin-bottom: 15px;
}
.single-features-style1 .text h3 a{
    color: var(--thm-black);
    transition: all 200ms linear;
    transition-delay: 0.1s;
}
.single-features-style1 .text h3 a:hover{
    color: var(--thm-base);
}
.single-features-style1 .text p{
    margin: 0;
}



/*** 
=============================================
    Features Style2 Area Css
=============================================
***/



/*** 
=============================================
   Project Style1 Area Css
=============================================
***/
.project-style1-area{
    position: relative;
    display: block;
    padding: 150px 0px 120px;
    background-image: -moz-linear-gradient( -90deg, rgba(248,245,238,0.4) 0%, rgb(248,245,238) 100%);
    background-image: -webkit-linear-gradient( -90deg, rgba(248,245,238,0.4) 0%, rgb(248,245,238) 100%);
    background-image: -ms-linear-gradient( -90deg, rgba(248,245,238,0.4) 0%, rgb(248,245,238) 100%);
}
.project-style1-area .auto-container{
    max-width: 100%;
    padding: 0 30px;
}


/***
.project-menu-box {
    position: relative;
    display: block;
    overflow: hidden;
    padding-bottom: 60px;
}
.project-filter {
    position: relative;
    display: block;
    overflow: hidden;
    z-index: 1;
}
.project-filter li {
    position: relative;
    display: inline-block;
    float: none;
    margin: 0 8px;
}
.project-filter li .filter-text {
    position: relative;
    display: block;
    padding: 18px 30px 15px;
    color: #98a1a7;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    text-transform: uppercase;
    cursor: pointer;
    border: 1px solid #dae5ec;
    border-radius: 27px;
    transition: all .4s ease;
    z-index: 1;
    font-family: var(--thm-font-2);
}
.project-filter li .filter-text:before {
    position: absolute;
    top: -1px;
    left: -1px;
    bottom: -1px;
    right: -1px;
    content: "";
    background: var(--thm-primary);
    border-radius: 27px;
    transform: scaleX(0);
    transform-origin: center;
    transform-style: preserve-3d;
    transition: all 0.4s cubic-bezier(0.62, 0.21, 0.45, 1.52);
    z-index: -1;
}
.project-filter li:hover .filter-text:before,
.project-filter li.active .filter-text:before{
    transform: scaleX(1.0);    
}
.project-filter li:hover .filter-text,
.project-filter li.active .filter-text{
    color: #ffffff;    
}
.project-filter li .count {
    display: none;
}
**/


.single-project-item{
    position: relative;
    display: block;
    margin-bottom: 30px;
}
.single-project-item .img-holder{
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 10px;
}
.single-project-item .img-holder img{
    width: 100%;
    transform: scale(1.0);
}
.single-project-item:hover .img-holder img{
    transform:scale(1.2) rotate(1deg);	    
}

.single-project-item .img-holder .overlay-content{
    position: absolute;
    top: 20px;
    left: 20px;
    bottom: 20px;
    right: 20px;
    border-radius: 20px;
    padding: 0 40px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    opacity: 0;
    -webkit-transform: perspective(400px) rotateX(20deg) translateX(-100%);
    -ms-transform: perspective(400px) rotateX(20deg) translateX(-100%);
    transform: perspective(400px) rotateX(20deg) translateX(-100%);
    -webkit-transform-origin: bottom;
    -ms-transform-origin: bottom;
    transform-origin: bottom;
    transition-delay: .1s;
    transition-timing-function: ease-in-out;
    transition-duration: .5s;
    transition-property: all;
    z-index: 2;
}
.single-project-item:hover .img-holder .overlay-content{
    opacity: 1.0;
    -webkit-transform: perspective(400px) rotateX(0deg) translateX(0%);
    -ms-transform: perspective(400px) rotateX(0deg) translateX(0%);
    transform: perspective(400px) rotateX(0deg) translateX(-0%);
    transition-delay: .3s;
    transition-timing-function: ease-in-out;
    transition-duration: .5s;
    transition-property: all;
}
.single-project-item .img-holder .overlay-content:before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: #ffffff;
    border-radius: 20px;
}

.single-project-item .img-holder .zoom-button{
    position: relative;
    display: block;
}
.single-project-item .img-holder .zoom-button a{
    position: relative;
    display: inline-block;
    background-color: rgba(var(--thm-base-rgb), .05);
    width: 60px;
    height: 60px;
    border-radius: 50%;
    color: var(--thm-base);
    font-size: 25px;
    line-height: 60px;
    text-align: center;
    transition: all 200ms linear;
    transition-delay: 0.1s;
    z-index: 1;
}
.single-project-item .img-holder .zoom-button a::before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    content: "";
    border-radius: 50%;
    transform: scale(0.0);
    transform-origin: center;
    transform-style: preserve-3d;
    transition: all 0.4s cubic-bezier(0.62, 0.21, 0.45, 1.52);
    background-color: rgba(var(--thm-primary-rgb), .99);
    z-index: -1;
}
.single-project-item .img-holder .zoom-button a:hover::before{
    transform: scaleX(1.0);  
}
.single-project-item .img-holder .zoom-button a:hover{
    color: #ffffff;
}


.single-project-item .img-holder .overlay-content .inner{
    position: relative;
    display: block;
    overflow: hidden;
    padding-top: 14px;
}
.single-project-item .img-holder .overlay-content .inner h3{
    font-size: 20px;
    line-height: 30px;
    margin: 0 0 10px;
}
.single-project-item .img-holder .overlay-content .inner h3 a{
    color: var(--thm-black);
    transition: all 200ms linear;
    transition-delay: 0.1s;
}
.single-project-item .img-holder .overlay-content .inner h3 a:hover{
    color: var(--thm-base);
}
.single-project-item .img-holder .overlay-content .inner p{
    margin: 0;
}



/*** 
=============================================
   Project Style1 Area Project Page Css
=============================================
***/



/*** 
=============================================
   Project Style2 Area Css
=============================================
***/



/*** 
=============================================
   Project Style2 Area Project Page Css
=============================================
***/


/*** 
=============================================
   Project Details Area Css
=============================================
***/





/*** 
=============================================
    Working Process Area Css
=============================================
***/
.working-process-area{
    position: relative;
    display: block;
    overflow: hidden;
    background: #1f2021;
    padding: 150px 0 100px;
    z-index: 1;
}
.working-process-area .sec-title h2 {
    color: #ffffff;
}
.working-process-area .shape1{
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    height: 434px;
    background-position: left bottom;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 0.03;
}
.working-process-area .shape2 {
    position: absolute;
    left: 0;
    bottom: -30px;
    opacity: 0.03;
}
.working-process-area .shape3{
    position: absolute;
    top: 0;
    right: 70px;
    opacity: 0.05;
}
.working-process-area .shape4 {
    position: absolute;
    top: -25px;
    right: -25px;
    opacity: 0.05;
}

.working-process-box{
    position: relative;
    display: flex;
    align-items: center;
    counter-reset: count;  
}
.working-process-box .arrow-box {
    position: absolute;
    top: 75px;
    right: -85px;
}
.single-working-process{
    position: relative;
    display: block;
    max-width: 33.333333%;
    width: 100%;
    text-align: center;
    padding: 0 40px;
    margin-bottom: 42px;
}
.single-working-process .img-holder{
    position: relative;
    display: block;
    width: 160px;
    margin: 0 auto;
    text-align: center;
    overflow: hidden;
}
.single-working-process .img-holder img{
    width: auto;
}
.single-working-process .count{
    position: absolute;
    top: 0;
    left: 0;
    width: 70px;
    height: 70px;
    background: var(--thm-primary);
    border-radius: 50%;
}
.single-working-process .count:before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    color: #000e2e;
    font-size: 30px;
    line-height: 70px;
    font-weight: 700;
    text-align: center;
    counter-increment: count;
    content: "0" counter(count);
    transition: all 100ms linear;
    transition-delay: 0.1s;
    font-family: var(--thm-font-2);
}
.single-working-process .text-holder {
    position: relative;
    display: block;
    margin-top: 26px;
}
.single-working-process .text-holder h3{
    color: #ffffff;
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 17px;
}
.single-working-process .text-holder p{
    color: rgba(255, 255, 255, 0.7);
    margin: 0;
}




/*** 
=============================================
   contact Style1 Area Css
=============================================
***/



.contact-style1__image {
    position: absolute;
    left: -130%;
    top: -85%;
}
.contact-style1__image img{
    max-width: none;
    float: right;
}

.contact-form-box1 {
    position: relative;
    display: block;
}
.contact-form-box1 form{
    position: relative;
    display: block;
}
.contact-form-box1 form .row {
    margin-left: -10px;
    margin-right: -10px;
}
.contact-form-box1 form .row [class*=col-] {
    padding-left: 10px;
    padding-right: 10px;
}
.contact-form-box1 form .input-box {
    position: relative;
    display: block;
}

.contact-form-box1 form input[type="text"],
.contact-form-box1 form input[type="email"],
.contact-form-box1 form textarea{
    position: relative;
    display: block;   
    background: transparent;
    width: 100%;
    height: 55px;
    border: 1px solid rgba(255, 255, 255, 0.50);
    color: #ffffff;
    font-size: 15px;
    font-weight: 600;
    font-style: normal;
    padding-left: 39px;
    padding-right: 40px;
    border-radius: 30px;
    transition: all 500ms ease;
    font-family: var(--thm-font-2);
}
.contact-form-box1 form input[type="text"]:focus{
    color: #ffffff;
    border-color: #fff; 
}
.contact-form-box1 form input[type="email"]:focus{
    color: #ffffff;
    border-color: #fff; 
}
.contact-form-box1 form textarea:focus{
    color: #ffffff;
    border-color: #fff; 
}

.contact-form-box1 form input[type="text"]::-webkit-input-placeholder {
    color: #ffffff;
}
.contact-form-box1 form input[type="text"]:-moz-placeholder {
    color: #ffffff;
}
.contact-form-box1 form input[type="text"]::-moz-placeholder {
    color: #ffffff;
}
.contact-form-box1 form input[type="text"]:-ms-input-placeholder {
    color: #ffffff;
}
.contact-form-box1 form input[type="email"]::-webkit-input-placeholder {
    color: #ffffff;
}
.contact-form-box1 form input[type="email"]:-moz-placeholder {
    color: #ffffff;
}
.contact-form-box1 form input[type="email"]::-moz-placeholder {
    color: #ffffff;
}
.contact-form-box1 form input[type="email"]:-ms-input-placeholder {
    color: #ffffff;
}
.contact-form-box1 form textarea::-webkit-input-placeholder {
    color: #ffffff;
}
.contact-form-box1 form textarea:-moz-placeholder {
    color: #ffffff;
}
.contact-form-box1 form textarea::-moz-placeholder {
    color: #ffffff;
}
.contact-form-box1 form textarea:-ms-input-placeholder {
    color: #ffffff;
}

.contact-form-box1 form .button-box{
    position: relative;
    display: block;
}
.contact-form-box1 form .button-box button{
    width: 100%;
}
.contact-form-box1 form .button-box button.btn-one.style2:before {
    background-color: var(--thm-black);
}



/*** 
=============================================
   contact Style2 Area Css
=============================================
***/



/*** 
=============================================
   contact Style3 Area Css
=============================================
***/



/*** 
=============================================
   Choose Style1 Css
=============================================
***/



/*** 
=============================================
  Video Gallery Style1
=============================================
***/
.video-gallery-style1{
    position: relative;
    display: block;
    z-index: 1;
}
.container-fullwidth{
    position: relative;
    display: block;
    width: 100%;
}
.video-gallery-img {
    position: relative;
    display: block;
    background-position: center center;
    background-attachment: scroll;
    background-size: cover;
    background-repeat: no-repeat;
    padding: 225px 0px 217px;
    z-index: 1;
}
.video-gallery-img::before{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(17, 17, 18, .70);
    z-index: -1;
    content: "";
}
.video-gallery-inner{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    flex-wrap: wrap;
}
.video-gallery-inner .icon{
    position: relative;
    display: block;
    z-index: 1;
}
.video-gallery-inner .icon:before {
    position: absolute;
    content: '';
    top: 0px;
    left: -0px;
    bottom: 0px;
    right: 0px;
    border-radius: 50%;
    background: rgba(54,124,232, 0.0);
    z-index: -1;
}
.video-gallery-inner .icon:before {
    -webkit-box-shadow: 0 0 0 0 rgba(54,124,232, .09);
    box-shadow: 0 0 0 0 rgba(54,124,232, .09);
    -webkit-animation: ripple 1s infinite;
    animation: ripple 3s infinite
}
.video-gallery-inner .title{
    position: relative;
    display: block;
    margin-top: 27px;
}
.video-gallery-inner .title h4{
    color: #ffffff;
    font-size: 20px;
    line-height: 30px;
}

































/*** 
=============================================
   comments Box Css
=============================================
***/





/*** 
=============================================
   Add Comment Box Css
=============================================
***/





/*** 
=============================================
    Error Page Area Style      
=============================================
***/





/*** 
=============================================
    Pricing Plan Area Style      
=============================================
***/





/*** 
=============================================
    Sidebar Css
=============================================
***/





/*** 
=============================================
    Shop Page One Css
=============================================
***/






/*** 
=============================================
    Product Details Area Css
=============================================
***/





/*** 
=============================================
   Cart area  style
=============================================
***/




/*** 
=============================================
    Checkout Area Css
=============================================
***/



/*** 
=============================================
    Login Register Area style
=============================================
***/
