/* ==========================================================================
   Author's custom styles
   ========================================================================== */

@import url(https://fonts.googleapis.com/css?family=Raleway:400,300,500,600,700);

* {
	box-sizing: border-box;
}

html {
  /* force vertical scrollbar */
  overflow: hidden;
  overflow-y: scroll;
}

body {
	background: #6f513e url('../img/bg-hero.jpg') no-repeat center;
	background-size:  cover;
	bottom: 0;
	color: #fff;
	font-family: "soleil",  sans-serif;
	height: 100%;
	height: 100vh;
	margin: 0;
	min-height: 100%;
	overflow: hidden;
	padding: 0;
	position: relative;
	text-align: center;
	top: 0;
}

h1, h2, h3, h4, h5 {
	color: rgba(255, 255, 255, 0.6);
	font-family: "Raleway", sans-serif;
	font-weight: 600;
	letter-spacing: .15em;
	margin: 0 0 5px;
	text-transform: uppercase;
}

h3 {
	font-size: 16px;
}

h4 {
	font-size: 14px;
}

h5 {
	font-size: 12px;
}

p {
	margin: 0 0 20px;
}

ul {
	padding-left: 20px;
}

ul li {
	list-style-type: circle;
}

a:link, a:visited {
	color: #fff;
	font-weight: 500;
}

a:hover, a:active {
	opacity: 0.5;
	text-decoration: none;
	-webkit-transition: all 200ms cubic-bezier(0.250, 0.250, 0.750, 0.750);
	-moz-transition: all 200ms cubic-bezier(0.250, 0.250, 0.750, 0.750);
		-o-transition: all 200ms cubic-bezier(0.250, 0.250, 0.750, 0.750);
			 transition: all 200ms cubic-bezier(0.250, 0.250, 0.750, 0.750); /* linear */
}

.main {
	min-height: 100vh;
	text-align: center;
}

.logo {
	background: url('../img/icon-window-outline.svg');
	background-sizing: cover;
	display: inline-block;
	height: 58px;
	overflow: hidden;
	position: relative;
	width: 70px;
}

.logo .logo-dots {
	left: 12%;
	position: absolute;
	top: 12%;
}

.logo .logo-dots .dot {
	background: #fff;
	border-radius: 50%;
	float: left;
	height: 4px;
	margin-right: 3px;
	width: 4px;
}

.logo .divider {
	background: #fff;
	height: 2px;
	left: 0;
	position: absolute;
	top: 25%;
	width: 100%;
}

.logo .lines {
	height: 25px;
	left: 18%;
	position: absolute;
	top: 44%;
	width: 18px;
}

.logo .lines .line {
	background: #fff;
	border-radius: 4px;
	clear: both;
	float: left;
	height: 2px;
	margin-bottom: 7px;
	width: 100%;
}

.logo .block {
	border: 2px solid #fff;
	border-radius: 2px;
	height: 23px;
	left: 58%;
	position: absolute;
	top: 25px;
	width: 18px;
}

.title {
	color: #fff;
	font-size: 26px;
	font-weight: 300;
	margin: 14px 0;
}

.subtitle {
	color: rgba(255, 255, 255, 0.6);
	font-size: 14px;
	font-weight: 500;
  margin-bottom: 20px;
}

.footer.social-icons {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	bottom: 18px;
	display: block;
	left: 0;
	padding-top: 18px;
	right: 0;
	position: fixed;
}

 [class^="icon-"] {
	 font-size: 16px;
 }

 .footer.social-icons a {
	 color: rgba(255, 255, 255, 0.5);
	 display: inline-block;
	 padding: 0;
	 width: 15%;
 }

 .overlay {
 	background: rgba(20, 20, 20, 0.6);
 	bottom: 0;
	height: 100vh;
 	left: 0;
 	position: absolute;
 	right: 0;
 	top: 0;
	width: 100%;
 	z-index: 0;
 }

 .shadow {
 	background-image: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.4));
  background-image: -webkit-gradient(linear, top, bottom, from(rgba(0,0,0,0),), to(rgba(0,0,0,0.4))));
  background-image: -webkit-linear-gradient(top, rgba(0,0,0,0)), rgba(0,0,0,0.4)));
  background-image:-moz-linear-gradient(top, rgba(0,0,0,0)), rgba(0,0,0,0.4)));
  background-image: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,0.4)));
 	bottom: 0;
 	height: 238px;
 	left: 0;
 	position: absolute;
 	width: 100%;
 }

.info-window {
	background: #FFF;
	color: rgba(20, 20, 20, 0.6);
	height: 100%;
	opacity: .9;
	overflow-y: auto;
	padding-top: 70px;
	position: absolute;
	right: -320px;
	text-align: left;
	top: 0;
	width: 320px;
	z-index: 4;
	-webkit-transition: all 250ms cubic-bezier(.48,.15,.38,1.03);
	-moz-transition: all 250ms cubic-bezier(.48,.15,.38,1.03);
		-o-transition: all 250ms cubic-bezier(.48,.15,.38,1.03);
			 transition: all 250ms cubic-bezier(.48,.15,.38,1.03); /* linear */
}

.backdrop {
	background: rgba(20, 20, 20, 0.3);
	-webkit-backdrop-filter: blur(20px);
	backdrop-filter: blur(20px);
	bottom: 0;
	cursor: pointer;
	display: none;
	height: 100%;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: 3;
}

.info-window.open {
	opacity: 1;
	right: 0;
	-webkit-box-shadow: 0px 0px 0px 6px rgba(0,0,0,0.06);
-moz-box-shadow: 0px 0px 0px 6px rgba(0,0,0,0.06);
box-shadow: 0px 0px 0px 6px rgba(0,0,0,0.06);
}

 .info-window .header  {
	 box-shadow: 0 3px 0 rgba(0, 0, 0, 0.02);
	 display: block;
	 height: 70px;
	 position: fixed;
	 top: 0;
	 width: 100%;
	 z-index: 3;
 }

.info-window .header .header-container {
	background: #3e5eb1; /* Old browsers */
	background: -moz-linear-gradient(-45deg,  #3e5eb1 0%, #49a1ae 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right bottom, color-stop(0%,#3e5eb1), color-stop(100%,#49a1ae)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(-45deg,  #3e5eb1 0%,#49a1ae 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(-45deg,  #3e5eb1 0%,#49a1ae 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(-45deg,  #3e5eb1 0%,#49a1ae 100%); /* IE10+ */
	background: linear-gradient(135deg,  #3e5eb1 0%,#49a1ae 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3e5eb1', endColorstr='#49a1ae',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
	background-size: cover;
	display: block;
	height: 100%;
	position: relative;
	top: 0;
	width: 320px;
	z-index: 4;
}

 .info-window .avatar {
	 border-radius: 50%;
	 display: block;
	 height: 80px;
	 left: 50%;
	 margin-left: -40px;
	 position: absolute;
	 top: 25px;
	 width: 80px;
	 z-index: 4;
 }

 .info-window .header .close {
	 border: 1px solid rgba(255, 255, 255, 0.4);
	 border-radius: 50%;
	 box-sizing: border-box;
	 color: #fff;
	 font-weight: 200;
	 height: 40px;
	 right: 15px;
	 position: absolute;
	 opacity: 1;
	 text-align: center;
	 text-shadow: none;
	 top: 15px;
	 width: 40px;
	 z-index: 2;
	 -webkit-transition: background .2s ease-in-out;
		-moz-transition: background .2s ease-in-out;
		-ms-transition: background .2s ease-in-out;
		-o-transition: background .2s ease-in-out;
		transition: background .2s ease-in-out;
 }

 .info-window .header .close:hover {
	 background: rgba(255, 255, 255, 0.1);
 }

 .info-window .header .close i {
	 font-size: 12px;
	 left: 11px;
	 position: absolute;
	 top: 12px;
 }

.info-window .section-heading {
	background: #ECECEC;
	display: block;
	color: #919191;
	font-family: "Raleway", sans-serif;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .1em;
	margin: 0;
	padding: 8px 10px 7px;
	text-transform: uppercase;
	width: 100%;
}

.info-window .section {
	padding: 15px;
}

.info-window .section.about{
	padding-top: 45px;
	text-align: center;
}

.info-window .section.about p {
	margin-bottom: 15px;
}

.info-window .section.about p a {
	text-decoration: underline;
}

.info-window h1, .info-window h2, .info-window h3, .info-window h4, .info-window h5 {
	color: rgba(0, 0, 0, 0.5);
}

 .info-window ul li {
	 border-bottom: 1px solid rgba(0,  0,  0, 0.1);
	 list-style: none;
	 padding: 9px 0;
 }

.info-window ul li:last-child {
	border-bottom: none;
	padding-bottom: 2px;
}

 .info-window a:link, .info-window a:visited {
	 color: rgba(0, 0, 0, 0.6);
	 font-weight: 400;
 }

 .info-window ul li small {
	 font-size: 10px;
	 letter-spacing: .15em;
	 text-transform: uppercase;
 }

 .info-window ul li small a {
	 color: #999999;
 }

 .info-window .social-icons {
   margin-bottom: 15px !important;
 }

   .info-window .social-icons a {
  	 border: 1px solid rgba(0, 0, 0, 0.2);
  	 border-radius: 50%;
  	 display: inline-block;
  	 height: 44px;
  	 line-height: 42px;
  	 margin: 0 4px;
  	 padding: 0;
  	 width: 44px;
   }

.extra {
  bottom: 90px;
  font-size: 13px;
  left: 50%;
  margin-left: -200px;
  position: absolute;
  width: 400px;
}

  .extra h5 {
    margin-bottom: 12px;
  }

  .extra p {
    line-height: 1.8em;
  }

button {
  background: none;
  border: 2px solid rgba(255, 255, 255, 0.2);
  border-radius: 6px;
  margin: 0 5px;
  padding: 0;
}

  button a {
    display: block;
    padding: 6px 16px 8px;
  }

  .info-window button {
    border: 2px solid rgba(0, 0, 0, 0.2);
    color: #216AD9;
  }

.vc-wrapper {
	display: table;
	height: 100%;
    margin: auto;
    top: 0; left: 0; bottom: 0; right: 0;
	width: 100%;
}

.vc-container {
	display: table-cell;
	position: relative;
	text-align: center;
	vertical-align: middle;
	transition: all .4s ease-in-out;
}

	.vc-container.dim {
		opacity: 0.1;
	}

.vc-wrapper .info-toggle {
	position: fixed;
	right: 20px;
	top: 20px;
	font-size: 10px;
	letter-spacing: .15em;
 	text-transform: uppercase;
}

.vc-wrapper .info-toggle i {
	position: relative;
	top: 2px;
}

.uppercase {
  text-transform: uppercase;
}

.tracked {
  letter-spacing: .2em;
}

.rotate-90 {
	display: inline-block;
	-ms-transform: rotate(90deg); /* IE 9 */
		-webkit-transform: rotate(90deg); /* Chrome, Safari, Opera */
		transform: rotate(90deg);
}

.rotate-180 {
	display: inline-block;
	-ms-transform: rotate(180deg); /* IE 9 */
		-webkit-transform: rotate(180deg); /* Chrome, Safari, Opera */
		transform: rotate(180deg);
}

.wow {
	visibility: hidden;
}

.tw { color: #55acee !important; }
.fb { color: #3b5998 !important; }
.dr { color: #ea4c89 !important; }
.ig { color: #3f729b !important; }

@media screen and (min-width: 769px) {
	.footer.social-icons {
		bottom: 0;
		padding: 0;
	}
	.footer.social-icons a {
		padding: 20px;
		width: auto;
	}
}

@media screen and (max-width: 650px) {
	.info-window {
		right: -100vw;
		width: 100%;
	}
	.info-window .header .header-container {
		width: 100%;
	}
}

@media screen and (max-width: 375px)  {
	.logo {
		margin-bottom: 0;
		transform: scale(0.9);
	}
  .title {
		font-size: 20px;
	}
	.subtitle {
		font-size: 12px;
	}
	.social-icons a {
		padding: 0 22px;
	}
}

@media screen and (max-width: 320px) {
	.social-icons a {
		padding: 0 20px;
	}
	[class^="icon-"] {
		font-size: 12px;
	}
  .extra h5 {
    font-size: 11px;
  }
}

@media screen and (max-height: 560px) {
 .extra {
   position: relative;
   bottom: auto;
   margin-top: 50px;
   top: auto;
 }
}
