@charset "utf-8";
/* CSS Document */

/* General Rules */
* {
  	margin: 0;
  	padding: 0;
}

body, html {
	margin: 0;
	font-size: 16px;
	background-attachment: fixed;
}

body {
	background-size: 100% 100%;
	overflow-x: hidden;
	overflow: -moz-scrollbars-none;
	-ms-overflow-style: none;
}

body::-webkit-scrollbar {
	display: none;
	width: 0 !important;
}

div .centered {
	width: 100vw;
	height: 100vh;
	z-index: 999;
	text-align: center;
	margin: auto;
}

div .home-frame {
	box-sizing: border-box;
	width: auto;
	height: 90vh;
	margin: 5vmin;
	border: 2vmin solid transparent;
	border-image-source: url(../images/border-image.svg);
	border-image-slice: 25%;
	border-image-width: auto;
}

div .border-box {
	width: auto;
	height: 90vh;
	margin: 5vmin;
	background: #ffffff;
	background-repeat: no-repeat;
	background-size: 10vmin;
	background-position: 2vmax 2vmax;
}

div .border-box-logo {
	width: auto;
	height: 90vh;
	margin: 5vmin;
	background: #ffffff;
	background-image: url("../images/elcee-grey.svg");
	background-repeat: no-repeat;
	background-size: 10vmin;
	background-position: 2vmax 2vmax;
}

div .border-box-inner {
	width: auto;
	height: auto;
	padding: 15px;
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

div .text {
	display: block;
	vertical-align: middle;
	text-align: center;
}

div .center {
	align-content: center;
	text-align: center;
}

div#navigation {
	padding: 3vmin 0;
	background: #ffffff;
}

div#navigation h3 {
	color: #666666;
	text-align: center;
	font-weight: 900;
	margin-bottom: 0.25vmin;
}

div#navigation ul {
	text-align: center;
	margin-top: 0.25vmin;
}

div#navigation ul li {
	display: inline-block;
	color: #666;
	padding: 0 5vmin;
	font-family: 'Work Sans', sans-serif;
	font-size: 1.125vmax;
	font-weight: 900;
	margin: 0 auto;
	text-decoration: underline;
}

div .left {
	float: left;
}

div .right {
	float: right;
}

div .image {
	display: block;
}

.image img {
	width: 35vmin;
}

.logo {
	width: 10vmin;
	height: auto;
}

div .portfgroup {
	display: table;
	margin: 75 0;
	width: 100%;
	border-top: 1px solid #666;
}

div .portf-left {
	display: table-cell;
	width: 40%;
	text-align: left;
	vertical-align: top;
	padding: 50px 0;
}

div .portf-right {
	display: table-cell;
	width: 60%;
	text-align: right;
	vertical-align: top;
}

div .layout-right {
	display: table-cell;
	width: 60%;
	text-align: right;
	vertical-align: top;
}

img.middle {
	margin-top: 125px;
	margin-bottom: 125px;
}

img.taller {
	max-height: 80vh !important;
}

.portf-right img {
	display: block;
	max-width: 75%;
	max-height: 50vh;
	text-align: right;
	margin: 50px auto;
}

.layout-right img {
	display: block;
	max-width: 90%;
	max-height: 75vh;
	text-align: right;
	margin: 50px auto;
}


div .web-wrap {
	display: block;
	width: 100%;
	text-align: left;
	vertical-align: top;
	padding: 35px 0;
	margin-bottom: 2vmin;
}

.web-wrap img {
	width: 100%;
}
	
.imagewrapper {
	width: 100%;
}

.imagewrapper img {
	width: 100%;
}

div .web-left {
	display: table-cell;
	width: 25%;
	text-align: left;
	vertical-align: top;
	padding: 35px 0;
}

div .web-right {
	display: table-cell;
	width: 85%;
	text-align: right;
	vertical-align: top;
}

.web-right img {
	display: block;
	width: auto;
	max-height: 95vh;
	text-align: right;
	margin: 35px 0 35px auto;
}

/* Typography */
h1, h2, h3 {
	font-family: 'Work Sans', sans-serif;
	color: #666;
	margin-bottom: 1vmin;
}

h1 {
	font-size: 3vmax;
	color: #faaca8;
	text-align: center;
	margin: 0 auto 2vmax;
	border-top: 1px solid #faaca8;
	padding: 2vmax 0 0;
}

.norule {
	border-top: 0px none !important;
	padding: 1.5vmax 0 0;
}

h2 {
	font-size: 2vmax;
}

p {
	font-family: 'Work Sans', sans-serif;
	font-size: 1.5vmax;
}

.white {
	color: #ffffff;
}

a {
	text-decoration: none;
	color: #666666;
}

.white a {
	color: #ffffff;
}

div#navigation a{
	color: #666666;
	padding: 0 1px;
}

div#navigation a:hover {
	color: #c0b3e8;
	background-color: #ffffff;
	padding: 0 1px;
}

.webcaption {
	font-size: 1.375vmax;
}

.webspecs {
	font-size: 1.125vmax;
	font-style: italic;
	padding-top: 1.5vh;
}

.link {
	padding-top: 2vh;
}

.link a {
	font-size: 1.25vmax;	
	font-weight: 900;
	color: #C0B3E8;
}

.web-left a:hover {
	text-decoration: underline;
	background-color: rgba(255,255,255,0.00);
	padding: 0;	
}

a:hover {
	background-color: #faaca8;
	padding: 0 1vmin;
}

div .bg-wrap {
	box-sizing: border-box;
	width: 100vw;
	height: 100vh;
	padding: 10px;
	position: fixed;
}


/* Media Queries */

@media only screen and (orientation: portrait) {
	.border-box {
		height: 96.5vh !important;
	}
	
	#navigation {
		padding-bottom: 5vmin;
	}
	
	.image img {
		width: 35vmin;
		height: auto;
	}
	
	.imagewrapper img {
		display: block;
		max-width: 100%;
		max-height: 90vh;
		text-align: center !important;
		margin: 15 auto 35;
	}

	h2 {
		font-size: 2.25vmax;
	}
	
	h3 {
		font-size: 1.875vmax;
	}

	p {
		font-size: 1.25vmax;
	}
	
	.webcaption {
		font-size: 1.125vmax;
	}

	.webspecs {
		font-size: .9vmax;
		font-style: italic;
		padding-top: 1.5vh;
	}

}