/* ==============================================================

Project:	Elyasa - Creative Coming Soon WordPress Plugin
Info:		https://codecanyon.net/item/elyasa-responsive-coming-soon-wordpress-plugin/22177410
Version:	1.8
Author:		AthenaStudio
Profile:	https://themeforest.net/user/athenastudio

-----------------------------------------------------------------
					*** TABLE OF CONTENTS ***
-----------------------------------------------------------------

	1.	General
	2.	Back stretch
	3.	Youtube player
	4.	Page loader
	5.	Header
	6.	Countdown
	7.	Subscribe
	8.	Section
	8.	Services
	9.  Counters
	10.	Contact form
	11.	Google maps
	12.	Footer
		
=============================================================*/

/*********************
    - 1. General -
*********************/
html {
	font-size:100%;
	-webkit-font-smoothing:antialiased;
	-webkit-text-size-adjust:100%;
		-ms-text-size-adjust:100%;	
}

html, body {
	font-family:"Open Sans", sans-serif;
	line-height:1.75;
	margin:0;
	padding:0;
	width:100%;
	height:100%;
	-webkit-font-smoothing:antialiased;
}

a {
	text-decoration:none;
	-webkit-transition:all 0.5s ease; 
	   -moz-transition:all 0.5s ease; 
			transition:all 0.5s ease;
}

.animated {
  	-webkit-animation-duration:.6s;
  			animation-duration:.6s;
  	-webkit-animation-fill-mode:both;
  			animation-fill-mode:both;
  	opacity:0;
}

/**************************
    - 2. Back stretch -
**************************/
.backstretch:after {
	content:'';
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background-image:url('../images/overlay.png'); 
	background-color:rgba(95, 96, 96, 0.4);
	z-index:1;
}

/****************************
    - 3. Youtube player -
****************************/
.mbYTP_wrapper:after {
	content:'';
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	z-index:1;
	background-image:url('../images/overlay.png'); 
	background-color:rgba(95, 96, 96, 0.4);
}

.player-controls {
	position:absolute;
	top:190px;
	right:25%;
}

.player-controls a {
	background:none;
	color:#fff !important;
	outline:none;
	width:30px;
	margin:5px;
	border:1px solid #F8F8F8;
	height:30px;
	line-height:28px;
    font-size:12px;
	text-decoration:none !important;
	border-radius:50%;
	-webkit-transition:all 0.3s ease-in-out !important;
	   -moz-transition:all 0.3s ease-in-out !important;
			transition:all 0.3s ease-in-out !important;
}

.player-controls a:hover {
	color:#fff;
	text-decoration:none !important;
	-webkit-transition:all 0.3s ease-in-out !important;
	   -moz-transition:all 0.3s ease-in-out !important;
			transition:all 0.3s ease-in-out !important;
}

/*************************
    - 4. Page loader -
*************************/
.page-loader {
	position:fixed;
	z-index:999999;
	top:0;
	left:0;
	width:100vw;
	height:100vh;
	background:transparent;
}

.page-loader:before {
	content:'';
	position:absolute;
	z-index:-10;
	top:0;
	left:0;
	display:block;
	width:100%;
	height:calc(50% + 2px);
	background:#242832;
	-webkit-transition:all 1.2s cubic-bezier(0.19, 1, 0.22, 1);
			transition:all 1.2s cubic-bezier(0.19, 1, 0.22, 1);	
}

.page-loader:after {
	content:'';
	position:absolute;
	z-index:-20;
	top:50%;
	left:0;
	display:block;
	width:100%;
	height:calc(50% + 2px);
	background:#242832;
	-webkit-transition:all 1.2s cubic-bezier(0.19, 1, 0.22, 1);
			transition:all 1.2s cubic-bezier(0.19, 1, 0.22, 1);	
}

.page-loader .loader {
	position:absolute;
	overflow:visible;
	top:50%;
	width:100%;	
	text-align:center;
	-webkit-transform:translateY(-25px);
			transform:translateY(-25px);
	-webkit-transition:all .2s ease-in-out;
			transition:all .2s ease-in-out;
}

/* Dots */
.page-loader .loader .dots {
	position:relative;
	display:inline-block;
	opacity:0;
	width:4px;
	height:4px;
	background:#fff;
	border-radius:50%;
	-webkit-animation-fill-mode:forwards;
			animation-fill-mode:forwards;
}

.page-loader .loader .dots:nth-child(1) {
	-webkit-animation:moving 3s 500ms infinite ease;
			animation:moving 3s 500ms infinite ease;
}

.page-loader .loader .dots:nth-child(2) {
	-webkit-animation:moving 3s 400ms infinite ease;
			animation:moving 3s 400ms infinite ease;
}

.page-loader .loader .dots:nth-child(3) {
	-webkit-animation:moving 3s 300ms infinite ease;
			animation:moving 3s 300ms infinite ease;
}

.page-loader .loader .dots:nth-child(4) {
	-webkit-animation:moving 3s 200ms infinite ease;
			animation:moving 3s 200ms infinite ease;
}

.page-loader .loader .dots:nth-child(5) {
	-webkit-animation:moving 3s 100ms infinite ease;
			animation:moving 3s 100ms infinite ease;
}

.page-loader .loader .dots:nth-child(6) {
	-webkit-animation:moving 3s infinite ease;
			animation:moving 3s infinite ease;
}

/* Label */
.page-loader .loader .label {
	position:absolute;
	font-size:14px;
	line-height:14px;
	left:0;
	overflow:hidden;
	width:100%;
	margin:0;
	margin-left:0;
	text-align:center;
	white-space:nowrap;
	font-weight:700;
	letter-spacing:1px;
	text-transform:uppercase;
	color:#fff;
	-webkit-transition:all .4s ease-in-out;
			transition:all .4s ease-in-out;
}

.page-loader .loader .label strong {
	font-weight:normal;
}

.page-loader .loader .label span {
	position:relative;
	display:inline-block;
	font-weight:normal;
}

.page-loader .loader .label [data-words] {
	position:static;
	vertical-align:top;
}

.page-loader .loader .label [data-words] > span {
	position:absolute;
	display:block;
}

@keyframes moving {
	0% {
		opacity:0;
		-webkit-transform:translateX(-300px);
				transform:translateX(-300px);
	}
	
	50% {
		opacity:1;
		-webkit-transform:translateX(0px);
				transform:translateX(0px);
	}
	
	100% {
		opacity:0;
		-webkit-transform:translateX(300px);
				transform:translateX(300px);
	}
}

/********************
    - 5. Header -
********************/
header {
	position:relative;
	height:100%;
	text-align:center;
}

header h1 {
	font-size:36px;
	color:#fff;
	font-weight:300;
	letter-spacing:1px;
	padding-top:10px;
	padding-bottom:5px;
	font-family:"Open Sans", sans-serif;
	text-transform:uppercase;
}

header h1 > span {
	font-weight:700;	
}

header p {
	font-size:16px;
	color:#fff;	
}

header .countdown {
	padding-top:4px;
}

/* Table */
.table {
	display:table;
	width:100%;
	height:100%;
	vertical-align:middle;
}

.table-cell {
	display:table-cell;
	width:100%;
	height:100%;
	vertical-align:middle;
	padding:0 15px;
}

.table > :not(caption) > * > * {
	padding:0 !important;
}

/* Magic mouse */
header .mouse {
	position:absolute;
	width:24px;
	height:40px;
	border:2px solid #fff;
	border-radius:13px;
	background:transparent;
	bottom:20px;
	margin:0 auto;
	left:0;
	right:0;
	cursor:pointer;
	text-align:center;
	-webkit-transition:all 0.5s ease; 
	   -moz-transition:all 0.5s ease; 
			transition:all 0.5s ease;
}

header .mouse span {
	position:absolute;
  	text-transform:capitalize;
  	margin:auto;
  	opacity:0;
  	font-size:0;
	color:#fff;
  	top:-22px;
  	z-index:1;
	white-space:nowrap;
	-webkit-transition:top 0.3s linear, opacity 0.2s;
  	   -moz-transition:top 0.3s linear, opacity 0.2s;
  			transition:top 0.3s linear, opacity 0.2s;
	-webkit-transform:translateX(-50%);
			transform:translateX(-50%);
}

header .mouse:hover span, 
header .mouse:focus span,
header .mouse:active span {
  	font-size:14px;
  	top:-27px;
  	opacity:1;
  	-webkit-transition:top 0.3s linear, opacity 1s;
  	   -moz-transition:top 0.3s linear, opacity 1s;
  			transition:top 0.3s linear, opacity 1s;
}

header .mouse .wheel {
	width:2px;
	height:6px;
	background:#fff;
	border-radius:2px;
	margin-left:auto;
	margin-right:auto;
	margin-top:6px;
	left:0;
	right:0;
	-webkit-animation:magic-mouse 1.7s infinite ease;
			animation:magic-mouse 1.7s infinite ease;
}

@keyframes magic-mouse {
 	0% {
 		margin-top:6px;
 		opacity:0;
	}
	
 	30% {
 		opacity:1;
	}
	
 	100% {
 		margin-top:18px;
 		opacity:0;
	}
}

/***********************
    - 6. Countdown -
***********************/
.countdown-wrapper {
	clear:both;
    display:block;
	margin:0 auto;
	width:50%;
}

/***********************
    - 7. Subscribe -
***********************/
.dialog, .dialog__overlay {
	width:100%;
	height:100%;
	top:0;
	left:0;
}

.dialog {
	position:fixed;
	z-index:999;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:center;
	   -ms-flex-pack:center;
	justify-content:center;
	-webkit-box-align:center;
	   -ms-flex-align:center;
	align-items:center;
	pointer-events:none;
}

.dialog__overlay {
	position:absolute;
	z-index:1;
	background:rgba(31, 34, 46, 0.9);
	opacity:0;
	-webkit-transition:opacity 0.3s;
			transition:opacity 0.3s;
}

.dialog--open .dialog__overlay {
	opacity:1;
	pointer-events:auto;
}

.dialog__content {
	width:50%;
	max-width:500px;
	min-width:290px;
	padding:0;
	text-align:center;
	position:relative;
	z-index:5;
	opacity:0;
	overflow:hidden;
	background:url(../../images/bg/subscribe.jpg) center;
	background-size:cover;
	border:10px solid #2b2d35;
	-webkit-transition:all 3s cubic-bezier(0.645, 0.045, 0.355, 1);
			transition:all 3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.dialog__content:before {
	content:" ";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:-1;
	border:1px solid #000;
	background:rgba(32, 35, 45, 0.8);
}

.dialog--open .dialog__content {
	pointer-events:auto;
}

.dialog .close-newsletter {
	position:absolute;
	top:0;
	right:0;
	border:none;
	background:transparent;
	width:40px;
	height:40px;
	line-height:35px;
	color:#fff;
	font-size:20px;
	opacity:0.5;
	outline:none;
	cursor:pointer;
	-webkit-transition:all 0.5s ease; 
	   -moz-transition:all 0.5s ease; 
			transition:all 0.5s ease;
}

.dialog .close-newsletter:hover {
	opacity:1;
}

.dialog .dialog-inner {
	padding:90px 70px;
	overflow:hidden;
}

.dialog .dialog-inner:before {
	content:" ";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:-1;
}

.dialog .dialog-inner h4 {
	color:#fff;
	font-size:40px;
	font-weight:700;
}

.dialog .dialog-inner p {
	color:#fff;
	font-size:16px;
}

#subscribe p {
	font-weight:400;
}

#subscribe #notifyMe {
	max-width:450px;
	margin:auto;
	margin-top:2em;
}

#subscribe #notifyMe ::-webkit-input-placeholder {
 	color:#747c83 !important;
}

#subscribe #notifyMe :-ms-input-placeholder {
 	color:#747c83 !important;
}

#subscribe #notifyMe ::-ms-input-placeholder {
 	color:#747c83 !important;
}

#subscribe #notifyMe ::placeholder {
 	color:#747c83 !important;
}

#subscribe #notifyMe .form-group {
	margin-bottom:1em;
}

#subscribe #notifyMe .form-group i {
	color:#757a86;
	position:absolute;
	text-align:center;
	top:15px;
	left:15px;
}

#subscribe #notifyMe .opacity-0 {
	opacity:0 !important;
	visibility:hidden !important;
}

#subscribe #notifyMe .form-group .form-control {
	text-align:center;
	background:#fff;
	border:none;
	border-radius:0;
	height:50px;
	font-weight:600;
	outline:medium none;
	padding:0 1em;
	width:100%;
	margin:auto;
	color:#000;
	-webkit-box-shadow:none;
			box-shadow:none;
	-webkit-transition:all 0.3s cubic-bezier(0, 0, 0.58, 1);
			transition:all 0.3s cubic-bezier(0, 0, 0.58, 1);
}

#subscribe #notifyMe .form-group .form-control:hover, 
#subscribe #notifyMe .form-group .form-control:focus {
	-webkit-box-shadow:none;
			box-shadow:none;
}

#subscribe #notifyMe .form-group input {
	text-align:center;
}

#subscribe #notifyMe .form-group button.submit {
	font-size:18px;
	line-height:28px;
	padding:12px 30px;
}

#subscribe .block-message {
	min-height:50px;
	position:absolute;
	bottom:-100px;
	width:100%;
	left:0;
	padding:15px;
	background:transparent;
	-webkit-transition:all 0.3s cubic-bezier(0, 0, 0.58, 1);
			transition:all 0.3s cubic-bezier(0, 0, 0.58, 1);
}

#subscribe .block-message.show-block-error {
	bottom:0;
	background:#ff1d4d;
}

#subscribe .block-message.show-block-valid {
	bottom:0;
}

#subscribe p.notify-valid {
	color:#fff;
	text-transform:none;
	font-size:16px;
	letter-spacing:0;
	font-weight:600;
}

.dialog__overlay {
	-webkit-transition:all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
			transition:all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.dialog.dialog--open .dialog__content, .dialog.dialog--close .dialog__content {
	-webkit-animation-duration:0.4s;
			animation-duration:0.4s;
	-webkit-animation-fill-mode:forwards;
			animation-fill-mode:forwards;
}

.dialog.dialog--open .dialog__content {
	-webkit-animation-name:anim-open;
			animation-name:anim-open;
}

.dialog.dialog--close .dialog__content {
	-webkit-animation-name:anim-close;
			animation-name:anim-close;
}

@keyframes anim-open {
 	0% {
 		opacity:0;
 		-webkit-transform:translate3d(0, 50px, 0);
 				transform:translate3d(0, 50px, 0);
	}

	100% {
		opacity:1;
 		-webkit-transform:translate3d(0, 0, 0);
 				transform:translate3d(0, 0, 0);
	}
}

@keyframes anim-close {
 	0% {
 		opacity:1;
 		-webkit-transform:translate3d(0, 0, 0);
 				transform:translate3d(0, 0, 0);
	}

 	100% {
 		opacity:0;
 		-webkit-transform:translate3d(0, 50px, 0);
 				transform:translate3d(0, 50px, 0);
	}
}

/*********************
    - 7. Section -
*********************/
.section-subtitle {
	position:relative;
	font-size:13px;
	font-weight:700;
	text-align:center;
	text-transform:uppercase;
	letter-spacing:1px;
	margin:0 0 10px 0;
	font-family:"Open Sans", sans-serif;
}

.section-title {
	position:relative;
	font-size:36px;
	font-weight:700;
	color:#1f1f1f;
	text-align:center;
	letter-spacing:-1px;
	margin:0 0 25px 0;
	font-family:"Open Sans", sans-serif;
}

.section-info {
	margin-top:10px;
	color:#7f7f7f;
	font-size:16px;
	text-align:center;
	margin:0 0 60px 0;
	font-family:"Open Sans", sans-serif;
}

.white .section-title {
	color:#fff !important;
}

.white .section-info {
	color:#eee !important;
}

/**********************
    - 8. Services -
**********************/
.services {
	position:relative;
	padding:80px 0;
	background-color:#fff;
}

.services .icon {
	position:relative;
	display:block;
	font-size:60px;
	line-height:60px;
	font-weight:normal;
	margin-bottom:20px;
	text-align:center;
	cursor:default;
	-webkit-transition:all 0.5s ease; 
	   -moz-transition:all 0.5s ease; 
			transition:all 0.5s ease; 
}

.services h3 {
	color:#343434;
	font-weight:700;
	font-size:20px;
	text-align:center;
	word-wrap:break-word;
	font-family:"Open Sans", sans-serif;
}

.services p {
	text-align:center;
	font-size:15px;
	line-height:1.5em;
	padding-top:15px;
	margin:0;
	color:#999;
}

/**********************
    - 9. Counters -
**********************/
.counters {
	position:relative;
	padding:80px 0;
	color:#fff;
	background-repeat:no-repeat;
	background-position:center center;
	background-attachment:fixed;
	-webkit-background-size:cover;
	   -moz-background-size:cover;
			background-size:cover;
}

.counters h3 {
	color:#fff;
	font-weight:300;
	font-size:32px;
	text-align:center;
	margin-bottom:100px;
	font-family:"Open Sans", sans-serif;
}

.counter {
	text-align:center;
	overflow:hidden;
	color:#fff;
}

.counter .icon {
	position:relative;
	display:block;
	font-size:40px;
	line-height:40px;
	font-weight:normal;
	margin-bottom:20px;
	text-align:center;
	cursor:default;
}

.counter-content {
	border-right:1px solid rgba(255, 255, 255, 0.15);
}

[class^="col-"]:last-child .counter-content {
	border-right:0;
}

.counter-content h5 {
	font-weight:700;
	font-size:45px;
	line-height:45px;
	margin-bottom:20px;
}

.counter-content p {
	font-size:16px;
	line-height:16px;
}

/***************************
    - 10. Contact form -
***************************/
.contact {
	position:relative;
	padding:80px 0;
	background-color:#fff;
}

.contact label {
	font-size:14px;
	font-weight:400;
}

input[type='text'], 
textarea {
	width:100%;
	background:#fafafa;
	border:1px solid #ddd;
	padding:14px 18px;
	margin-bottom:30px !important;
	font-size:14px;
	line-height:1;
	outline:none;
	-webkit-border-radius:3px;
	   -moz-border-radius:3px;
			border-radius:3px;
    -webkit-transition:all 0.3s !important;
       -moz-transition:all 0.3s !important;
    		transition:all 0.3s !important;
}

textarea {
	height:200px;
}

input[type='text']:focus, 
textarea:focus {
	background:#fff;
}

/* Contact info */
.contact-right {
	padding-left:5% !important;
}

.contact-box {
	margin-bottom:40px;
}

.contact-box h4 {
	clear:both;
	color:#343434;
	font-weight:700;
	font-size:18px;
	line-height:22px;
	margin-bottom:20px;
}

.contact-box p {
	clear:both;	
}

/* Error */
.contact .error {
	position:relative;	
}

.contact .error .name,
.contact .error .email {
    position:absolute;
	display:inline-block;
	top:-6px;
	right:19px;
    padding-left:9px;
	text-align:right;
}

.contact .error .message {
   	position:absolute;
	display:inline-block;
   	right:0;
    bottom:110px;
	margin-right:20px;
    padding-left:9px;
	text-align:right;
}

/* Result */
.contact #note {
	display:none;
}

.contact .notification_ok,
.contact .notification_error {
  	color:#3d4a6e;
	margin-top:5px;
  	margin-bottom:10px;
	font-weight:500;
  	font-size:14px;	
}

.contact .notification_ok i,
.contact .notification_error i {
	padding-right:5px;
}

/* Button */
.action-btn {	
	display:inline-block;
	color:#fff !important; 
	outline:none;
	font-family:'Open Sans', sans-serif;
	font-size:14px;
	font-weight:700;
	line-height:24px;
	padding:10px 25px;
	border:0;
	cursor:pointer;
	-webkit-border-radius:3px;
	   -moz-border-radius:3px;
			border-radius:3px;
	-webkit-transition:all 0.3s ease-in-out !important;
       -moz-transition:all 0.3s ease-in-out !important;
    		transition:all 0.3s ease-in-out !important;
}

.action-btn > i {
	color:#fff !important;
}

.action-btn.white {
	background:transparent;
	border:1px solid rgba(255, 255, 255, 0.4);
	margin-top:21px;
}

.action-btn > i {
	margin-right:10px;
}

/**************************
    - 11. Google maps -
**************************/
#google-container {
  	position:relative;
  	width:100%;
  	height:450px;
 	background-color:#e7eaf0;
}

.google-map {
  	position:relative;
}

#zoom-in, #zoom-out {
  	height:32px;
  	width:32px;
  	cursor:pointer;
  	margin-left:40px;
  	background-repeat:no-repeat;
  	background-size:32px 64px;
  	background-image:url("../images/map-controller.svg");    
  	-webkit-transition:all 0.5s ease;
  	   -moz-transition:all 0.5s ease;
  			transition:all 0.5s ease;
}

#zoom-in {
  	background-position:50% 0;
  	margin-top:100px;
  	margin-bottom:1px;
}

#zoom-out {
  	background-position:50% -32px;
}

/*********************
    - 12. Footer -
*********************/
footer {
	position:relative;
	background-color:#242832;
	padding:40px 0;
	color:rgba(237, 237, 237, 0.4);
	text-align:center;
}

/* Social links */
footer .social-icon {
	clear:both;
	margin-bottom:10px;
}

footer .social-icon a {
	display:inline-block;
	margin-right:20px;
	list-style:none;
}

footer .social-icon a:last-child {
	margin-right:0;
}

footer .social-icon a i {
	font-size:16px;
	line-height:16px;
	color:rgba(237, 237, 237, 0.4);
	-webkit-transition:all 0.5s ease; 
	   -moz-transition:all 0.5s ease; 
			transition:all 0.5s ease;
}

footer .social-icon a:hover i {
	color:rgba(237, 237, 237, 1);
}

/* Copyright */
footer .copyright {
	clear:both;
	letter-spacing:1px;
	text-transform:uppercase;
}

footer .copyright > a {
	font-weight:bold;
	-webkit-transition:all 0.5s ease; 
	   -moz-transition:all 0.5s ease; 
			transition:all 0.5s ease;	
}

footer .copyright > a:hover {
	color:#fff !important;
	text-decoration:none;
}

/* Up button */
.up-btn {
	position:absolute;
	display:block;
	left:0;
	right:0;
	top:-26px;
	width:50px;
	height:50px;
	margin:0 auto;
	border-radius:50%;
	color:#fff;
	font-size:18px;
	line-height:46px;
	text-align:center;
}

.up-btn:hover {
	color:#fff;
}

.up-btn i {
	color:#fff;
}