/**
	logo color: #ccc187
	logo color +60°: #92cc87
*/

@import url(https://fonts.googleapis.com/css?family=PT+Serif);

html {
	background:
		center center url('../px/clover-transparent.png') no-repeat,
		radial-gradient(ellipse 45% 25% at bottom, rgba(255, 255, 255, .1) 0%, rgba(255, 255, 255, .08) 30%, rgba(255, 255, 255, 0)),
		#0c1408;
	/* background:
		url(../px/drops.png),
		url(../px/drops2.png),
		linear-gradient(to bottom,
			rgba(169, 112,  60, 0) 0%,
			rgb(169, 112,  60) 15%,
			rgb( 90,  48,  23) 25%,
			rgb( 46,  25,  11) 35%,
			rgb( 19,   7,   7) 50%,
			rgb(  6,   2,   4) 75%),
		url(../px/foam.png),
		rgb(229, 196, 143); */
		font-family: 'PT Serif', 'Times New Roman', Times, serif;
	color: white;
	height: 100%;
	background-attachment: fixed;
}

body {
	box-sizing: border-box;
	display: block;
	min-height: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 18px;

	display: flex;
	flex-direction: column;
	line-height: 135%;
}



/* header/footer ***************************************************************/

#area-footer {
	border-top: 3px solid #ccb543;
	text-align: right;
}

#area-header {
	font-size: 120%;
	font-weight: bold;
	color: #ccb543;
	text-align: center;
	letter-spacing: .2ex;

	background: rgba(0, 0, 0, .3);
	border: 3px solid #ccb543;
	border-bottom: none;
	/* color: #79a140; */
	padding: 10px 10px 0;
}

#area-logo {
	width: 100%;
	display: block;
	margin: 0 auto;
}

#area-top {
	display: flex;
	flex-flow: row wrap;
	border-bottom: 1px solid #ccb543;
	padding-bottom: 5px;
}

#area-top > * {
	flex-shrink: 0;
	flex-grow: 1;
	/* margin: 0 0 0 20px; */
	order: 1;
}

#area-top > #area-teaser {
	order: 1;
	width: 100%;
	display: flex;
	padding: 0;
	margin-top: 1ex;
	margin-bottom: 1ex;
}

#area-top > #area-teaser li {
	flex-grow: 1;
	font-size: 125%;
	width: 33%;
	padding: 0;
	margin: 0;	
	text-align: center;
	font-variant: small-caps;
	letter-spacing: .5ex;
	list-style: none;
}



/* navigation ***************************************************************/

#area-mainnav {
	display: flex;
	flex-flow: row nowrap;
	margin: 1px 0 0;
	padding: 0 0 1px;
	border-bottom: 1px solid #ccb543;
}

#area-mainnav > li {
	flex-grow: 1;
	flex-shrink: 0;
	list-style: none;
	text-align: center;
	color: #79a140;
	font-weight: bold;
	font-variant: small-caps;
	letter-spacing: .1ex;
	font-size: 110%;
	padding: 3px 3px 5px;
}

#area-mainnav > li.active {
	color: #0c1408;
	background: #79a140;
}

#area-mainnav > li:not(.active):hover {
	/* background: linear-gradient(to top, rgba(204, 181, 67, .5) 0%, rgba(204, 181, 67, .2) 20%, rgba(204, 181, 67, .0) 70%); */
	background: rgba(121, 161, 64, .3);
}

#area-mainnav > li a {
	color: inherit;
	text-decoration: none;
}
#area-mainnav > li a:only-child {
	display: block;
}



/* content ***************************************************************/

#area-content {
	background: rgba(0, 0, 0, .3);
	border-left: 3px solid #ccb543;
	border-right: 3px solid #ccb543;
	flex-grow: 1;
	padding: 20px;
}

#area-content > * {
	margin: 0 0 2ex 1.4em;
}

#area-content > h1,
#area-content > h2,
#area-content > h3,
#area-content > .noindent {
	margin-left: 0;
	margin-top: 2em;
}

#area-content > h1:first-child { margin-top: 0; }

#area-content > .fullwidth {
	display: block;
	margin: 2.5em -20px 2em;
	opacity: .8;
}



/* speisekarte ***************************************************************/

.food-item-additional {
	padding-left: 1em;
	position: relative;
	
	/* counter margin-bottom @ "#area-content > *" */
	margin-top: -1ex !important;
	
}
.food-item > :not(.title),
.food-item-additional > :not(.title) {
	margin-right: 10ex;
}
.food-item > .title,
.food-item-additional > .title {
	display: flex;
	width: 100%;
	font-size: 1.05em;
}
.food-item > .title > *,
.food-item-additional > .title > * {
	flex-grow: 1;
}
.food-item > .title > .name,
.food-item-additional > .title > .name {
	font-weight: bold;
}
.food-item > .title > .name {
	color: #ccc187;
}
.food-item > .title > .price,
.food-item-additional > .title > .price {
	margin-left: 3ch;
	flex-grow: 0;
	flex-shrink: 2;
	text-align: right;
	width: 17ch;
}
.food-item > .title > .price > .size,
.food-item-additional > .title > .price > .size {
	width: 9ch;
	float: left;
}




/* text formatting ***************************************************************/

.time > .separator {
	display: none;
}
.time > .minutes {
	text-decoration: underline;
	vertical-align: super;
	font-size: 60%;
}

a {
	color: #ccb543;
}

h1, h2, h3 {
	font-weight: bold;
	color: #ccc187;
	letter-spacing: 0.2ch;
}

h1 { font-size: 1.50em; }
h2 { font-size: 1.25em; }
h3 { font-size: 1.10em; }

q:before { content: '„'; }
q:after { content: '“'; }

q q:before { content: '‚'; }
q q:after { content: '‘'; }

em { border-bottom: 3px double; }



/* gallery ******************************************************************/

#area-content .gallery {
	display: block;
	position: relative;
	margin: 15px -20px;
}
#area-content .gallery: after {
	content: " ";
	clear: both;
}


#area-content .gallery img {
	margin: 16px 0 0 16px;
}
