@font-face {
	font-family: Gabriola;
	src:	local('Gabriola'),
				local("Gabriola Regular"),
				url("fonts/gabriola.woff");
}

/* Helpers */
.cursor { cursor: pointer; user-select: none; -webkit-user-select: none; }
.vertical-align { position: relative; top: 50%; transform: translate(0, -50%); }
.center-align { position: relative; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.container { max-width: 1023px; margin: 0 auto; padding: 0; overflow: hidden; }

/* Global */
body { margin: 0; }
body {
	color: #5f4b3d;
	font-family: "Helvetica Neue",Helvetica,Arial,Helvetica,sans-serif;
	font-weight: 300;
	font-size: 13pt;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
a { text-decoration: none; color: #85654F; }
h1, h3, h4, h5, h6 { font-family: Gabriola; font-weight: normal; color: #828283; }
h1 { font-size: 2.5em; line-height: 100%; margin-bottom: 0px; }
h2 { font-size: 13pt; font-weight: bold; margin-top: 20px; }
i, em { font-weight: normal;}

nav {
	width: 100%;
	background-color: rgba(255,255,255,0.9);
	box-shadow: 0 2px 10px 0px rgba(0,0,0,0.2);
	position: fixed;
	z-index: 1;
}
nav ul { padding: 0; }
nav ul { list-style-type: none; }
nav ul li a { display: block; }
nav ul li { float: right; height: 115px; line-height: 115px; }
nav ul li { text-align: center; font-family: Gabriola; font-size: 26px; }
nav ul li.logo { width: 355px; margin-left: 20px; background-color: #85664D; }
nav ul li.logo p { line-height: 100%; font-size: 14pt; color: white; margin: 0; }
nav ul li.logo p#title { font-size: 38pt; }
nav ul li:not(.logo) { padding: 0 calc(2.7%); } /*3.7%*/
nav ul li:not(.logo) a { color: #828283; }
nav ul li#current-page a { color: #6a513d; }
nav ul li:not(.logo):hover { background-color: rgba(196, 166, 125, 0.25); }
/*nav ul li.menu { float: left; padding: 0; } */
nav ul li.menu { display: none; }
nav ul li+li { background: url('images/separator.png') no-repeat center right; }
nav ul li:nth-child(2),
nav ul li.menu { background: none; }

header .background {
	position: fixed;
	top: 115px;
	width: 100%;
	height: 580px;
	background-repeat: no-repeat;
	background-color: #CCC;
	background-size: cover;
	background-position: top center;
	z-index: -1;
}
header .background#bg-philoshophie { background-image: url("images/foto_profil2.jpg") }
header .background#bg-aktuell { background-image: url("images/foto_aktuell.jpg"); }
header .background#bg-kontakt { background-image: url("images/foto_kontakt.jpg"); }
header .background#bg-workshops { background-image: url("images/foto_workshops.jpg"); }
header .background#bg-profil { background-image: url("images/foto_profil.jpg"); }
header .background#bg-impressum { background-image: url("images/foto_impressum.jpg"); }

.quote {
	margin: 0;
	margin-top: 35px;
	max-width: 355px;
	float: right;
	text-align: center;
	background-color: rgba(255,255,255,0.5);
}
.quote h3 {
	display: inline-block;;
	padding: 68px 15px;
	padding-right: 30px;
	font-weight: normal;
	text-align: right;
	color: #5f4b3d;
	font-size: 3em;
	line-height: 100%;
	margin: 0;
}
.quote p {
	font-size: 0.5em;
	margin: 0 0.5em
}

.article-quote p {
	font-family: Gabriola; font-weight: normal; color: #828283;
}

main {
	display:block;
	width: 100%;
	background-color: white;
}

.content {
	/*background-color: #DBD2CA;*/
	padding: 20px 35px;
	width: calc(100% - 355px - 70px);
	min-height: 338px;
	background-color: #e2dfd8;
}

article {
	margin: 20px 0;
	padding: 5px 20px 20px;
	background-color: #FEFFFF;
	box-shadow: 0 2px 10px 0px rgba(0,0,0,0.2);
	font-size: 12pt;
	line-height: 150%;
}
article p {
	text-align: justify;
}

.gallery {
	column-count: 2;
	-webkit-column-count: 2;
	-moz-column-count: 2;
	column-gap: 10px;
	-webkit-column-gap: 10px;
	-moz-column-gap: 10px;
	margin: 2em 0;
}
.gallery img {
	max-width: 100%; max-height: 100%;
	margin-bottom: 10px;
	transition: 0.3s
}
.gallery img:hover {
	/*box-shadow: 0 2px 10px 0px rgba(0,0,0,0.5);*/
	cursor: pointer;
}

table {
    border-collapse: collapse;
    width: 100%;
}
th, td {
    text-align: left;
    padding: 8px 12px;
}
td p { margin: 0; }
tr:nth-child(odd) { cursor: pointer; }
tr:nth-child(even) { border-bottom:1pt solid #F2F2F2; }
tr:nth-child(even) td { padding-bottom: 20px; }
tr:nth-child(4n+1) { background-color: #F2F2F2; }
tr:nth-child(4n+2) { background-color: #F2F2F2; }
td:first-child { font-size: 11pt; }
td:nth-child(2) { border-left: 1px solid #DDD; }
tr:nth-child(odd) td:first-child { white-space: nowrap; }
tr.hidden { display: none; }
tr.inactive { color: #CCC; cursor: default; }

footer #separator {
	padding: 2px 5px;
	padding-bottom: 3px;
	text-align: right;
	line-height: 100%;
	color: white;
	background-color: #85654D;
	font-size: 1.5em;
	font-family: Gabriola;
}
footer { font-size: 10pt; width: 100%; background-color: white; }
footer ul { list-style-type: none; padding: 0; margin-top: 0px; line-height: 150%;}
footer ul { padding-bottom: 60px; }
footer li { float: left; }
footer li:last-child { float: right; }
footer li:not(:last-child):not(:nth-last-child(2)):after { content: "|"; padding: 0 10px; }

/* Modal Gallery */

#modal {
	position: fixed;
	left: 0; top: 0;
	width: 100%; height: 100%;
	overflow: auto;
	z-index: 1;
	transition: opacity 0.6s, visibility 0.6s;
	opacity: 0; visibility: hidden;
	background-color: rgba(0, 0, 0, 0.5);
}
#modal-content {
	display: inline-block;
	min-width: 200px; min-height: 200px;
	transition: opacity 0.3s;
	opacity: 0;
}
#modal-content a {
	-webkit-tap-highlight-color: transparent;
}
#modal-image {
	display: block;
	max-width: 90vw; max-height: 90vh;
}
.modal-close {
	position: absolute;
	top: 10px; right: 10px;
	width: 64px; height: 64px;
}
.modal-close {
	background: url('images/modal-close.png') no-repeat center center;
	background-size: 54px;
}
.modal-close:hover { color: #CCC; }

.modal-prev, .modal-next {
	position: absolute;
	top: 0;
	bottom: 0;
	opacity: 0;
	transition: opacity 0.6s;
	width: 33%;
}
.modal-prev {
	left: 12px;
	background: url('images/modal-prev.png') left center no-repeat;
	background-size: 54px;
}
.modal-next {
	right: 12px;
	background: url('images/modal-next.png') right center no-repeat;
	background-size: 54px;
}
.modal-prev:hover, .modal-next:hover { opacity: 1.0; }

/* Side Content Container */

.side {
	float: right;
	max-width: 355px;
}
.side img {
	max-width: 100%;
	/*max-height: 100%;*/
}
.side-document {
	padding: 10px 10px;
	margin: 50px 30px;
	background-color: #FEFFFF;
	box-shadow: 0 2px 10px 0px rgba(0,0,0,0.2);
}
.article-quote {
	text-align: right;
	padding: 10px 20px;
}
.article-quote * { margin: 0; }
.article-quote h3 {
	margin-top: 20px;
	display: inline-block;
	max-width: 400px;
	font-size: 3em;
	font-weight: normal;
	line-height: 100%;
}

/* Responsive */

/* Resize navigation font to fit smaller sizes */
@media screen and (max-width: 1022px) {
	nav ul li:not(.logo) { padding: 0 calc(2%); }
	nav ul li { font-size: 2.2vw; } /*3vw*/
	footer ul { padding-left: 8px; padding-right: 8px; }
}

/* Mobile sizes */
@media screen and (max-width: 767px) {
	/*.background { background-position: center 80px; }*/
	.pic { display: none }
	.content { width: calc(100% - 70px); /*clear: left; */ }
	.content h1 { margin-left: 10px; }
	#modal { background-color: rgba(0, 0, 0, 0.8); }
	#modal-image { max-width: 100vw; max-height: 100vh; } /* Fullscreen */
	.side div:not(:nth-child(1)) { display: none; } /* Show only first div */
}

/* Mobile navigation */
@media screen and (max-width: 767px) {
	header .background { top: 85px; }
	nav ul li { line-height: 85px; height: 85px; font-size: 16pt; }
	nav ul li:not(.menu) a { padding-left: 10px; }
	.quote h3 { font-size: 2.5em; }
	.article-quote h3 { font-size: 2.5em; }
	.content { width: calc(100% - 20px); }
	.content { padding: 20px 10px; }
	nav ul li.logo { float: right; width: 240px; margin-right: 0; clear: both; }
	nav ul li.menu { float: none; display: block; width: 80px; } /* Show menu button */
	nav ul li:not(.logo):not(.menu) { width: calc(100% - 20px); text-align: left; line-height: 60px; height: 60px; }
	nav ul:not(.responsive) li:not(.logo):not(.menu) { display: none; /* Hide nav items apart from logo and menu */ }
	nav ul.responsive li:not(.menu):not(.logo) { display: block; clear: both; }
}
