*, *:after, *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
body, html { font-size: 100%; padding: 0; margin: 0;}

/* Clearfix hack by Nicolas Gallagher: http://nicolasgallagher.com/micro-clearfix-hack/ */
.clearfix:before, .clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }


html, body, 
.container {
	position: relative;
	width: 100%;
	height: 100%;
}

body {
	font-family: 'Lora', serif;
	color: #fff;
	overflow-y: scroll;
	background: #fff;
}

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

a:hover {
	color: #000;
}

.head {
	background: #c2cc27;
	width: 100%;
	margin: 0 auto;
	text-align: left;
	padding: 0.8em;
	font-size: 1.4em;
	line-height: 130%;
	font-weight: 400;
	visibility: visible;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
}

#copyright { position: absolute; left: -5000px; bottom: 0; text-indent: -5000px; }
#copyright a { color: #fff;}


.clear { clear: both; padding: 0; height: 0; margin: 0; }

/* BUTTON */
a.button { 
	background: #fff; 
	-webkit-border-radius: 16px;
	-moz-border-radius: 16px;
	border-radius: 16px;
	border: 1px solid #c3ce1e;
	display: block;
	color: #555;
	font-family: 'Lora', serif;
	font-size: 0.8em;
	line-height: 100%;
	font-weight: 400;
	padding: 0.6em 0.8em;
	text-decoration: none;
	text-align: center;
	position: relative;
	overflow: hidden;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

a.button:hover { background: #a2ab16; color: #fff; border: 1px solid #a2ab16; }

a.button.left, a.button.back-left { float: right; margin: 0 0 0 10px; }
a.button.right, a.button.back-right { float: left; margin: 0 10px 0 0; }


@media screen and (max-width: 83em) {
	.head { font-size: 1.2em; }
}

@media screen and (max-width: 58em) {
	.head { text-align: center; }
}

@media screen and (max-width: 42.5em) {
	.head { font-size: 1em; }
}

@media screen and (max-width: 400px) {
	.head { font-size: 1.2em; }
}


.splitlayout {
	position: relative;
	overflow-x: hidden;
	min-height: 100%;
	width: 100%;
}

/* Intro sides */
.side {
	position: fixed;
	top: 0;
	z-index: 100;
	width: 50%;
	height: 100%;
	text-align: center;
	-webkit-backface-visibility: hidden;
}

.open-left .side,
.open-right .side {
	cursor: default;
}

.overlay {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 499;
	visibility: hidden;
	width: 100%;
	height: 100%;
	opacity: 0;
}

/* BLUME 
.side-left .flower,
.side-right .flower {
	background: url(/gfx/flowerDevider.png) no-repeat;
	width: 126px;
	height: 554px;
	position: absolute;
	bottom: 0;
	right: 0;
	margin: 0 -63px 0 0;
}

*/

.side-right .flower {
	left: 0;
	margin: 0 0 0 -63px;
}

.side-left .overlay {
	background: rgba(0,0,0,0.7);
}

.side-right .overlay {
	background: rgba(0,0,0,0.3);
}

.side-left {
	left: 0;
	background: #d6e040;
	color: #555;
	outline: 1px solid #d6e040; /* avoid gap */
}

.side-right {
	right: 0;
	background: #fff;
	color: #a2ab16;
	outline: 1px solid #fff; /* avoid gap */
}

/* Intro content, profile image and name, back button */
.intro-content {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	cursor: pointer;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
}

.profile {
	margin: 0 auto;
	width: 160px;
	height: 160px;
	border-radius: 50%;
	background: #d6e040;
}

.profile img {
	max-width: 100%;
	border-radius: 50%;
	opacity: 0.8;
}


.intro-content .text h2 {
	font-size: 3em;
	font-weight: 400;
	margin: 0 0 0.5em 0;
	white-space: nowrap;
	text-align: center;
}

.intro-content .text h3 {
	min-height: 40px;
	font-size: 1.2em;
	font-weight: 700;
	margin: 0;
	padding: 1.2em 0 0 0;
	text-transform: uppercase;
	position: relative;
}

.intro-content .text p {
	font-size: 1.2em;
	font-weight: 400;
	margin: 1em 0 0.3em 0;
	text-align: center;
}


.intro-content .text h3:before {
	position: absolute;
	top: 0;
	left: 25%;
	width: 50%;
	height: 2px;
	background: #555;
	content: '';
}

.side-right .intro-content .text h3:before {
	background: #a2ab16;
}


/* Pages */
.page {
	position: relative;
	top: 0;
	overflow: auto;
	min-height: 100%;
	width: 70%;
	height: auto;
	font-size: 1.4em;
	-webkit-backface-visibility: hidden;
}

.page-right {
	left: 30%;
	outline: 5px solid #d6e040; /* avoid rounding gaps */
	background: #d6e040;
	color: #555;
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
}

.splitlayout.open-right {
	background: #d6e040;
}

.page-left {
	left: 0;
	outline: 5px solid #fff; /* avoid rounding gaps */
	background: #fff;
	color: #555;
	text-align: left;
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}

.splitlayout.open-left {
	background: #fff;
}

/* Inner page content */
.page-inner {
	padding: 1.4em;
}

.page-inner section {
	padding-bottom: 2em;
}

.page-inner h2 {
	margin: 0 0 1em 0;
	font-weight: 400;
	font-size: 1.6em;
}

.page-inner p {
	font-weight: 400;
	font-size: 0.9em;
}

.page-inner img {
	display: block;
	float: right;
	width: 33%;
	max-width: 255px;
	height: auto;
	margin: 0.5em 0 1em 1.2em;
}



/* All transitions */
.side,
.page {
	-webkit-transition: -webkit-transform 0.6s;
	transition: transform 0.6s;
}

.overlay {
	-webkit-transition: opacity 0.6s, visibility 0.1s 0.6s;
	transition: opacity 0.6s, visibility 0.1s 0.6s;
}

.intro-content {
	-webkit-transition: -webkit-transform 0.6s, top 0.6s;
	transition: transform 0.6s, top 0.6s;
}

.intro-content h2 {
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
}

/* Open and close */

/* We need to set the position and overflow for the respective page scroll */
.reset-layout .page,
.splitlayout.open-right .page-left,
.splitlayout.open-left .page-right,
.splitlayout.close-right .page-left,
.splitlayout.close-left .page-right {
	position: absolute;
	overflow: hidden;
	height: 100%;
}

.splitlayout.open-right .page-right,
.splitlayout.open-left .page-left {
	position: relative;
	overflow: auto;
	height: auto;
}

.open-right .side-left .overlay,
.open-left .side-right .overlay {
	visibility: visible;
	opacity: 1;
	-webkit-transition: opacity 0.6s;
	transition: opacity 0.6s;
}

/* Right side open */
.open-right .side-left {
	-webkit-transform: translateX(-60%);
	transform: translateX(-60%);
}

.open-right .side-right {
	z-index: 200;
	-webkit-transform: translateX(-140%);
	transform: translateX(-140%);
}

.close-right .side-right {
	z-index: 200;
}

.open-right .side-right .intro-content {
	-webkit-transform: translateY(-50%) translateX(-30%) scale(0.6);
	transform: translateY(-50%) translateX(-30%) scale(0.6);
}

.open-right .page-right {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);
}

/* Left side open */
.open-left .side-right {
	-webkit-transform: translateX(60%);
	transform: translateX(60%);
}

.open-left .side-left {
	z-index: 200;
	-webkit-transform: translateX(140%);
	transform: translateX(140%);
}

.close-left .side-left {
	z-index: 200;
}

.open-left .side-left .intro-content {
	-webkit-transform: translateY(-50%) translateX(-70%) scale(0.6);
	transform: translateY(-50%) translateX(-70%) scale(0.6);
}

.open-left .head {
	opacity: 0;
	visibility: hidden;
	-webkit-transition: opacity 0.3s, visibility 0.1s 0.3s;
	transition: opacity 0.3s, visibility 0.1s 0.3s;
}

.open-left .page-left {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);
}

/* Media Queries */
@media screen and (max-width: 83em) {
	.intro-content { font-size: 70%; }
}

@media screen and (max-width: 58em) {
	body { font-size: 90%; }
}

@media screen and (max-width: 49.4375em) {
	.open-right .side-right {
		-webkit-transform: translateX(-175%);
		transform: translateX(-175%);
	}

	.open-right .side-left {
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%);
	}

	.open-left .side-right {
		-webkit-transform: translateX(100%);
		transform: translateX(100%);
	}

	.open-left .side-left {
		-webkit-transform: translateX(175%);
		transform: translateX(175%);
	}

	.page {
		width: 100%;
	}

	.page-right {
		left: 0;
		padding-left: 15%;
	}

	.page-left {
		padding-right: 15%;
	}

	.intro-content {
		width: 100%;
	}

	.open-right .side-right .intro-content {
		top: 100%;
		-webkit-transform: translateY(-150px) translateX(-12.5%) scale(0.35);
		transform: translateY(-150px) translateX(-12.5%) scale(0.35);
	}

	.open-left .side-left .intro-content {
		top: 100%;
		-webkit-transform: translateY(-150px) translateX(-87.5%) scale(0.35);
		transform: translateY(-150px) translateX(-87.5%) scale(0.35);
	}

	.open-right .intro-content .text,
	.open-left .intro-content .text {
		display: none;
	}

}

@media screen and (max-width: 42.5em) {
	body { font-size: 80%; }
	.intro-content { font-size: 70%; }
}

@media screen and (max-height: 41.125em) {
	.intro-content {
		-webkit-transform: translateY(-25%) translateX(-50%);
		transform: translateY(-25%) translateX(-50%);
		font-size: 50%;
	}
}

@media screen and (max-width: 39.375em) {
	.intro-content .profile { width: 90px; height: 90px; }
	.intro-content { font-size: 45%; }
}

@media screen and (max-width: 400px) {
	body { font-size: 70%; }
	.intro-content { font-size: 40%; }
	.page-right .page-inner img, .page-left .page-inner img { float: none; width: 100%; max-width: 100%; margin: 0 0 1.6em 0; }

}