* {
	-webkit-font-smoothing: antialiased;
}

html {
	height:100%;
}

body{
	overflow:scroll;
	padding:50px 1.5%;
	position:relative;
	height:100%;
	min-height:500px;
	max-width:940px;
	margin:auto;
	min-width:350px;
}

:selection {
	background: #c54508; /* Safari */
	color:white;
}

::-moz-selection {
	background: #c54508; /* Firefox */
	color:white;
}

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

a:hover, a.active {
	color:#000;
}

header {
	display: block;
	width:100%;
	height:130px;
	background:url(img/grassl-header_big.jpg) no-repeat;
	background-size: 97%;
	background-position: center center;
	margin:0 auto 10px;
	position:relative;
}

ul.main-nav {
	margin:0;
	position:absolute;
	right: 15px;
	top:70px;
}

ul.main-nav li {
	display:inline;
	margin-left:20px;
	text-transform:uppercase;
	font-size:14px;
	list-style:none;
	z-index:99;
}

ul.main-nav li a {
	padding: 20px 0;
}

ul.main-nav li.sub {
	position:relative;
}

ul.submenu {
	display:none;
	position:absolute;
	top:30px;
	left:-20px;
	background-color:white;
	padding-bottom:15px;
}

ul.submenu.active{
	display: inline;
}

ul.submenu li{
	margin:0;
	padding:0;

}

ul.submenu li a{
	color:#666;
	display:block;
	margin:0;
	padding:10px 0px 0px 20px;
	width:145px;
	font-size:12px;
}

ul.submenu li a:hover, ul.submenu li a.active{
	color:#000;
}

ul.submenu li a.active{
	font-weight:500;
}

ul.submenu li:last-child{ border:none;}

div.content-wrapper {
    margin: 30px auto 0 auto;
    max-width: 940px;
    width:100%;
    position: relative;
    padding-left: -10px;
    /* padding: 0 1.5%; */
}

section.magic-slideshow {
	max-width:600px;
	margin:auto;
	background:white;
	position:absolute;
	height:100%;
	z-index:50;
}

section.magic-slideshow.not-home {
	display:none;
}

section.magic-slideshow img{
	position:absolute;
	margin-left: 56px;
	width:540px;
}

section.profil, section.kontakt, section.impressum, section.datenschutzerklaerung {
	/* padding-left: 53px; */
	margin:auto;
}

section.profil p, section.kontakt p, section.kontakt table, section.impressum p, section.datenschutzerklaerung p {
	max-width: 364px;
	font-size:13px;
	line-height:1.6em;
	color:#666;
	margin-bottom:30px;
}

section.kontakt table td {
	padding:0;
}

section.kontakt table td:first-child {
		padding-right: 10px;
}

section.kontakt table tr.blank {
	height: 10px !important; /* Overwrite any previous rules */
    background-color: #FFFFFF;
}

section.kontakt a, section.impressum a {
	color:#666;
}

section.impressum a.primary {
	color:#c54508
}

section.kontakt a:hover, section.kontakt span, section.impressum a:hover, section.datenschutzerklaerung a:hover {
	color:#c54508;
}

section.datenschutzerklaerung h4, section.datenschutzerklaerung h5 {
	line-height: 1.4;
	margin-bottom: 10px;
}

section.datenschutzerklaerung h5 {
	font-size: 14px;
}

section.datenschutzerklaerung ul {
	list-style: disc;
	margin-left: 30px;
	margin-bottom: 30px;
	max-width: 500px;
}

section.datenschutzerklaerung ul li {
	font-size:13px;
	margin-bottom: 10px;
	line-height: 1.6;
}

section.gallery {
	padding-left:56px;
	width:1000px;
	margin:auto;
}

.galleria {
	width:100%;
	height:500px;
	background:#fff;
	padding: 0 1.5%;
}

h2 {
	position:relative;
	top:-45px;
	font-size:20px;
	color:#303030;
	text-transform:uppercase;
	letter-spacing:3px;
}

h3.mobile-title {
	margin-bottom: 30px;
	font-size: 28px;
	color:#c54508;
	/* margin-left: 53px; */
	font-weight: 300;
	/* border-bottom: 1px dotted; */
}

strong {
	font-weight:bold;
}

.galleria-info-description span {
	font-size:0.8em;
	line-height:10px;
}

section.small-gallery {
	right:0;
	top:0;
	width: 100%;
	float: right;
}

section.portrait {
	/* position:absolute; */
	right:5px;
	top:0;
	float: left;
}

section.portrait img {
	width:100%;
	box-shadow: 0 0 0 1px #CECECE;
	margin-top: 39px;
}

.galleria-frame img {
	left:0 !important;
}

div.mobile-nav {
		display:none;
		position:fixed;
		right: 20px;
		bottom: 20px;
		/* width:50px; */
		/* height:35px; */
		background-color: #C54508;
		border-radius:5px;
		padding: 17px 15px 15px;
		/* padding-top:15px; */
		z-index:100;
		color: white;
		font-weight: 400;
		cursor: pointer;
}

div.mobile-nav span.list-icon-bar {
	display:block;
	height:4px;
	width:20px;
	margin:0 auto 5px auto;
	background-color:white;
}

div.mobile-nav ul {
	display:none;
	background-color:white;
	width: 200px;
	position: absolute;
	right: 86px;
	/* top: 0px; */
	bottom: 0px;
	/* padding: 20px 20px 0px 20px; */
	border: 1px solid #AFAFAF;
	/* border-radius: 10px 0 10px 10px; */
	max-height: 400px;
	overflow-y: scroll;
	overflow-x: hidden;
}

div.mobile-nav ul li {
	margin-bottom: 0px;
	text-transform:uppercase;
	border-bottom: 1px solid #E4E4E4;
}

div.mobile-nav ul li a {
	display:block;
	padding-top: 20px;
	padding-bottom: 16px;
	padding-left: 20px;
}

div.mobile-nav ul li.sub-item {
	font-size:13px;
	display:none;
	background-color: #F9F9F9;
}

div.mobile-nav ul li.sub-item a {
	padding-left: 40px;
}

section.impressum {
	padding: 0 1.5%;
}

@media (max-width: 1000px) {

	header {
		width:100%;
	}

	body {
		padding:0;
	}

	ul.main-nav {
		margin-right: 20px;
	}

	div.content-wrapper {
		width:inherit;
		padding:10px;
		margin: 70px auto 0 auto;
	}
	.galleria-theme-classic .galleria-info {
	    width: 100%;
	    left: 0;
	    right:inherit;
	    z-index: 2;
	    position: absolute;
	    bottom: -135px;
	    text-align:center;
	}

	.galleria {
		padding:0;
	}


}


@media (max-width: 600px) {

	header {
		background-image: url(img/grassl-header-mobile.jpg);
		position:fixed;
		z-index:11;
		top:0;
		height: 110px;
		background-color: white;
		background-size: 100%;
		padding:0;
		background-position:top;
		border-bottom: 1px solid #E8E8E8;
	}

	section.profil, section.kontakt, {
		padding-left:0;
	}

	section.profil p, section.kontakt p, section.kontakt table, section.impressum p, section.datenschutzerklaerung p {
		max-width: inherit;
		font-size:17px;
		font-weight: 300;
	}

	section.datenschutzerklaerung h4 {
		font-size:20px;
	}

	section.datenschutzerklaerung h5 {
		font-size:17px;
	}

	ul.main-nav.desktop {
		display:none;
	}
	div.mobile-nav {
		display:block;
	}
	div.content-wrapper {
		width:inherit;
		padding:10px;
		margin: 140px auto 0 auto;
		position:absolute;
		bottom:140px;
		top:0;
		left:0;
		right:0;
		/* float: left; */
	}

	.galleria {
	width:100%;
	height:100%;
	background:#fff;
	margin-top: -10px;
}

	.galleria-theme-classic .galleria-info {
	    width: 80%;
	    left: 35px;
	    text-align:left;
	}


}