/* ----------------------------------------------------------------------------------------
* Author        : Awaiken
* Template Name : Glimy - Barbershop and Hair Salon HTML Template
* File          : CSS File
* Version       : 1.0
* ---------------------------------------------------------------------------------------- */
/* INDEX
----------------------------------------------------------------------------------------
01. General css
02. Section css
03. Media Screens
-------------------------------------------------------------------------------------- */

/************************************/
/***** 	   01. General css		 ****/
/************************************/
:root {
	--primary-color			: #222222;
	--dark-primary-color	: #FFFFFF;
	--secondary-color		: #F5F5F5;
	--text-color			: #777777;
	--divider-color			: #DDDDDD;
	--dark-text-color		: #AEAEAE;
	--dark-divider-color	: rgba(255, 255, 255, 0.10);
	--error-color			: rgb(230, 87, 87);
	--accent-font			: 'Hanken Grotesk', sans-serif;
	--default-font			: 'DM Sans', sans-serif;
	--transition			: all 0.3s ease-in-out;
	--image-filter			: grayscale(100%);
	--image-filter-hover	: grayscale(0);
	--ticker-gap			: 40px;
	--photo-gap				: 15px;
}

body{
	font-size: 16px;
	font-family: 'DM Sans', sans-serif;
}



img{
	max-width: 100%;
}

a{
	text-decoration: none;
}

a:hover{
	text-decoration: none;
	outline: 0;
}

a:focus{
	text-decoration: none;
	outline: 0;
}

.preloader{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	text-align: center;
	background: #232322;
	z-index: 9999;
}

.loader {
  display: inline-block;
  width: 30px;
  height: 30px;
  position: relative;
  border: 4px solid #Fff;
  top: calc(50% - 15px);
  animation: loader 2s infinite ease;
}

.loader-inner {
  vertical-align: top;
  display: inline-block;
  width: 100%;
  background-color: #fff;
  animation: loader-inner 2s infinite ease-in;
}

.container{
	max-width: 1300px;
}

.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
    padding-right: 15px;
    padding-left: 15px;
}

.row {
    margin-right: -15px;
    margin-left: -15px;
}

.row > * {
	padding-right: 15px;
	padding-left: 15px;
}


 

.btn-default:before{
	content: '';
	display: block;
	width: 0;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	z-index: -1;
	background: #fff;
	border-radius: 30px;
	transition: var(--transition);
}

.btn-default.dark-bg:before{
	background: var(--dark-primary-color);
}

.btn-default:hover{
	color: #222;
}

.btn-default:hover:before{
	width: 100%;
}

.btn-default i{
	margin-left: 10px;
}

#magic-cursor {
	position: absolute;
	width: 24px !important;
	height: 24px !important;
	pointer-events: none;
	z-index:1000000;
}

#ball{
	position: fixed;
	display: block;
	left: 0;
	top: 0;
	transform: translate(-50%, -50%);
	width: 24px !important;
	height: 24px !important;
	border: 2px solid var(--primary-color);
	border-radius: 50%;
	pointer-events: none;
	opacity:1 !important;
	filter: invert(100);
}

.preloader{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1000;
	background-color: var(--primary-color);
	display: flex;
	align-items: center;
	justify-content: center;
}

.loading-container,
.loading{
	height: 100px;
	position: relative;
	width: 100px;
	border-radius: 100%;
}

.loading-container{
	margin: 40px auto
}

.loading{
	border: 1px solid transparent;
	border-color: transparent #fff transparent #FFF;
	animation: rotate-loading 1.5s linear 0s infinite normal;
	transform-origin: 50% 50%;
}

.loading-container:hover .loading{
	border-color: transparent #E45635 transparent #E45635;
}

.loading-container:hover .loading,
.loading-container .loading{
	transition: all 0.5s ease-in-out;
}

#loading-icon{
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: 50px;
	transform: translate(-50%, -50%);
}

@keyframes rotate-loading {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}


.hover-anime{
	position: relative;
	overflow: hidden;
}

.hover-anime:after{
    position: absolute;
    top: 0;
    left: -75%;
    z-index: 2;
    display: block;
    content: '';
    width: 20%;
    height: 100%;
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.1) 100%);
    transform: skewX(-25deg);
}

.hover-anime:hover:after {
    animation: shine .75s;
}

@keyframes shine{
	100% {
		left: 125%;
	}
}

/************************************/
/*****     02. Section css    	*****/
/************************************/

.banner{
	position: relative;
	top: 0px;
	left: 0;
	width: 100%;
	background: url(../images/header-bg.jpg) center right fixed;
	background-size: cover;
	padding: 0px 0;
	text-align: center;
}

.banner:before{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #22222299;
}

.banner .row{
	position: relative;
	z-index: 1;
}
.header-content{
	padding:150px 0 150px 0;
}
.header-content .logo{
	margin-bottom: 60px;
	
}

.header-content .logo img{
	width: 100%;
	max-width: 320px;
}

.header-content h2{
	font-size: 120px;
	color: #fff;
	font-weight: 600;
	line-height: 1.2em;
	margin-bottom: 0.1em;
	text-transform:uppercase;
	font-family: "Montserrat", sans-serif;
	
}
.header-content h3{ font-family: "Dancing Script", cursive;
 color:#c59d5f; font-size:70px;}
.header-content p{
	color: #fff;
	font-weight: 500;
	line-height: 1.5em;
	font-size: 30px;
	letter-spacing: 0.04em;
}

.btn-buynow{
	position: relative;
	display: inline-block;
	color: #fff;
	background: #ffa00e;
	border-radius: 30px;
	padding: 12px 34px;
	border: none;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.04em;
	transition: all 0.1s linear;
}

.btn-buynow:hover{
	background: #fff;
	color: #000;
}

.btn-header{
	margin-top: 30px;
}

.btn-header .btn-buynow{
	margin:0 4px;
}

.products-demo{
	padding: 80px 0;
}

.product-demo-single{
	text-align: center;
	margin-bottom: 60px;
}

.product-demo-single h2{
	font-size: 22px;
	font-weight: 700;
	color: #4c4d4d;
	margin-bottom: 16px;
}

.img-box{
	border: 1px solid #edebeb;
	padding: 15px;
    box-shadow: -2px 5px 21.06px 5.94px rgba(11, 11, 11, 0.1);
	position: relative;
}

.product-demo-single figure{
	overflow: hidden;
	position: relative;
	margin: 0;
	height: 560px;
}

.product-demo-single figure img{
	width: 100%;
	transition: all 3s ease-in-out;
	margin-top: 560px;
	transform: translateY(-560px);
}

.product-demo-single:hover figure img{
	transform: translateY(-100%);
}

.template-features{
	background: #222;
	padding: 80px 0 40px;
	text-align: center;
}

.template-features .section-title h2,
.template-features .section-title p{
	color: #fff;
}

.feature-single{
	margin-bottom: 30px;
    background: rgba(255,255,255,0.05);
    padding: 20px;
    border: 1px solid rgba(255,255,255,0.1);
	position: relative;
}

.feature-single:before{
	content: '';
	display: block;
	position: absolute;
	top: -1px;
	left: -1px;
	right: -1px;
	bottom: -1px;
	border-left: 1px solid rgba(255,255,255,0.2);
	border-right: 1px solid rgba(255,255,255,0.2);
	transform: scaleY(0);
	transition: var(--transition);
}

.feature-single:after{
	content: '';
	display: block;
	position: absolute;
	top: -1px;
	left: -1px;
	right: -1px;
	bottom: -1px;
	border-top: 1px solid rgba(255,255,255,0.2);
	border-bottom: 1px solid rgba(255,255,255,0.2);
	transform: scaleX(0);
	transition: var(--transition);
}

.feature-single:hover:before,
.feature-single:hover:after{
	transform: scale(1);
}

.feature-single .icon-box{
	font-size: 80px;
	color: #fff;
}

.feature-single h3{
	color: #fff;
	font-weight: 300;
	font-size: 16px;
}

.element-preview{
	padding: 80px 0;
	background: #f2f0f0;
}

.element-preview-entry .icon-box{
	margin-bottom: 20px;
}

.element-preview-entry h2{
	font-size: 30px;
	font-weight: 700;
	color: #232322;
	margin-bottom: 1em;
}

.element-preview-entry p{
	color: #a29f9f;
	font-weight: 300;
	line-height: 1.8em;
	margin-bottom: 1.8em;
}

.element-preview-entry .btn-buynow:hover{
	background: #232323;
	color: #fff;
}

.element-image img{
	border-radius: 8px;
}

.supports-customer{
	padding: 80px 0;
}

.support-single{
	max-width: 400px;
	margin: 0 auto;
	text-align: center;
}

.support-single figure{
	margin-bottom: 40px;
}

.support-single h3{
	margin-bottom: 20px;
	font-size: 20px;
	font-weight: 500;
}

.support-single p{
	color: #727270;
	font-weight: 300;
	line-height: 1.8em;
}

.support-single p a{
	color: #000;
}



.section-title p{
	font-size: 18px;
	color: #444;
}



.footer-buynow{
	text-align: center;
	max-width: 580px;
	margin: 0 auto;
}

.footer-buynow h2{
	color: #fff;
	font-size: 40px;
	font-weight: 700;
	margin-bottom: 20px;
}

.footer-buynow p{
	color: #fff;
	font-size: 18px;
	font-weight: 500;
}

.footer-buynow .btn-default{
	padding: 10px 50px;
	font-size: 25px;
	border-radius: 50px;
	margin-top: 30px;
}

.footer-buynow .btn-buynow:hover{
	background: #fff;
	color: #000;
}

/************************************/
/*****    03. Media Screens     *****/
/************************************/

@media only screen and (max-width: 991px){
	.element-preview-entry{
		margin-bottom: 40px;
	}

	.products-demo{
		padding: 50px 0 20px;
	}

	.product-demo-single{
		margin-bottom: 30px;
	}

	.product-demo-single figure{
		height: 320px;
	}

	.product-demo-single figure img{
		margin-top: 320px;
		transform: translateY(-320px);
	}
}

/* Mobile Layout */
@media only screen and (max-width: 767px){
	.header-content h3 {
    font-family: "Dancing Script", cursive;
    color: #c59d5f;
    font-size: 40px;
}
.header-content{ padding:0;}
	.banner,
	.element-preview,
	footer{
		padding: 0px 0;
	}
	
	.supports-customer{
		padding: 60px 0 20px;
	}
		
	.products-demo,
	.template-features{
		padding: 60px 0 20px;
	}
	
	.section-title{
		margin-bottom: 40px;
	}
	
	.section-title h2{
		font-size: 22px;
	}
	
	.section-title p{
		font-size: 12px;
	}
	
	.header-content h2{
		font-size: 22px;
	}
	
	.header-content p{
		font-size: 20px;
	}
	
	.header-content .logo img{
		max-width: 300px;
	}
	
	.product-demo-single{
		max-width: 420px;
		margin: 0 auto 40px;
	}
	
	.feature-single{
		margin-bottom: 30px;
	}
	
	.element-preview-entry h2{
		font-size: 26px;
	}
	
	.support-single figure{
		margin-bottom: 30px;
	}
	
	.support-single figure img{
		max-width: 100px;
	}
	
	.support-single{
		margin-bottom: 40px;
	}
	
	.footer-buynow h2{
		font-size: 26px;
	}
	
	.footer-buynow p{
		font-size: 16px;
	}
}

/* Small Mobile Layout */

@media only screen and (max-width: 480px) {
	.header-content .logo img{
		max-width: 200px;
	}
	
	.header-content h2{
		font-size: 50px;
		line-height: 1.5em;
	}
	
	.header-content p{
		font-size: 16px;
	}
	
	.btn-header .btn-buynow{
		margin-bottom: 20px;
	}
	
	.feature-single .icon-box{
		font-size: 40px;
	}
	
	.feature-single h3{
		font-size: 14px;
		min-height: 30px;
	}

	.btn-default{
		padding: 12px 30px;
		margin: 0 4px;
	}
}