/*! normalize.css v4.2.0 | MIT License | github.com/necolas/normalize.css */button,hr,input{overflow:visible}audio,canvas,progress,video{display:inline-block}progress,sub,sup{vertical-align:baseline}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}[hidden],template{display:none}
/*font-family: 'Epilogue', sans-serif;*/
html {
	overflow-y: scroll;
	height: 100%;
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: antialiased;
	padding: 0;
	margin: 0;
	font-size:16px;
}
html.nooverflow{
	overflow-y:hidden;
}
*, *:before, *:after, div {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	transition:all ease 0.1s;
}
body {
	margin: 0;
	padding: 0;
	color: rgb(25,25,25);
	background-color: rgb(255,255,255);
	font: 400  1rem/1.375  Arial, Helvetica, sans-serif;
}
table, td {
	border: 0px;
	margin: 0px;
	padding: 0px;
	vertical-align: top;
	border-collapse: collapse;
	border-spacing: 0px;
}
iframe { border: 0px; margin: 0px; padding: 0px; }
img {
	display: inline-block;
	border: 0;
	margin: 0;
	padding: 0;
	vertical-align: middle;
}
a { color: inherit; outline: none;}
a:hover {
	color: rgb(153,153,153);
}
strong { font-weight:600; }
svg { display:block;}
/*----------------------------------------------------------------------*/
header, main, section {
	position: relative;
	margin: 0 auto;
	padding: 0;
}
header {
	max-width: 980px;
}
.phone {
	background-color: rgb(121,24,32);
	z-index: 60;
	border-radius: 0 0 8px 8px;
	padding: 4px 12px 0;
	line-height: 32px;
	position: relative;
	text-align: center;
}
.phone a {
	text-decoration: none;
	color: #fff;
	font-weight: 600;
	display:block;
}
.logo {
	padding: 1rem;
	position: relative;
	font-size: 20px;
	color:rgb(121,24,32);
}
.logo a { text-decoration:none;}
.logo a:hover { letter-spacing:1px; color:#111;}

/*----------------------------------------------------------------------*/
.bild {
	position: relative;
	z-index: 0;
	margin: auto;
	text-align: center;
	background-color: rgb(246,246,246);
}
.bild img { width:100%; height:auto }
/*----------------------------------------------------------------------*/
p, h1, h2, h3, h4, h5, h6 {
	margin: 0 0 1em 0;
	padding: 0;
	font-size: 1rem;
	font-weight: normal;
}
h1 {
	font-size: 1.5rem;
	color: rgb(121,24,32);
	font-weight: 600;
}
h2 {
	font-size: 1.25rem;
	color:rgb(121,24,32);
	font-weight:600;
	
}
.bg-rot h2 { color:#fff;}
.klein { font-size:0.75em;}
/*----------------------------------------------------------------------*/
.content {
	position: relative;
	margin: 0 auto;
	padding: calc(0.25rem + 0.25vw + 0.25vh);
	width: 100%;
	display: flex;
	flex-flow: row wrap;
	max-width: 1250px;
	margin: auto;
	justify-content: center;
}
.content-12, .content-23, .content-13, .content-14, .full {
	flex: 1 1 auto;
	padding: calc(0.5rem + 0.25vw + 0.25vh);
}

.content table td {
	padding: calc(0.25rem + 0.25vw + 0.25vh);
}
.quicklinks {
	list-style: none;
	padding: 0;
	margin: 0 auto;
}
.quicklinks li {
	margin: 4px;
	padding: 6px 12px;
	display: inline-block;
	border-radius: 2px;
	font-weight: bold;
}
.quicklinks li:before {
	content: '✔ ';
	color: rgb(121,24,32);
}
/**/
.galerie ul, .galerie li { list-style:none; padding:0; margin:0 auto; }
.galerie ul {
	display: flex;
	flex-flow: row wrap;
	margin: 3vw -0.5rem;
} 
.galerie li { flex: 0 0 33%; padding:0.5rem;}
.galerie li img { width: 100%; height:auto; max-width:400px;}
/**/
.button {
	border-radius: 0.5rem;
	border: 2px solid rgb(121,24,32);
	padding: 8px;
	text-decoration: none;
	background-color: rgb(121,24,32);
	color: #FFF;
	font-weight: 600;
	display: inline-block;
}
.button:hover {
	background-color: #111;
}
/**/
.bg-schwarz {background-color: rgb(25,25,25); color:#fff;}

.bg-rot {
	background-color: rgb(121,24,32);
	color: #fff;
}
/**/
footer {
	position: relative;
	padding: 0.5rem;
	padding: calc(0.5rem + 0.5vw + 0.5vh);
	color: rgb(255,255,255);
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	line-height: 1.5;
	margin: auto;
	background: rgb(116,20,35);
	background: -moz-linear-gradient(34deg, rgba(116,20,35,1) 29%, rgba(128,22,36,1) 55%, rgba(215,168,125,1) 83%, rgba(253,242,182,1) 98%);
	background: -webkit-linear-gradient(34deg, rgba(116,20,35,1) 29%, rgba(128,22,36,1) 55%, rgba(215,168,125,1) 83%, rgba(253,242,182,1) 98%);
	background: linear-gradient(34deg, rgba(116,20,35,1) 29%, rgba(128,22,36,1) 55%, rgba(215,168,125,1) 83%, rgba(253,242,182,1) 98%);

filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#741423",endColorstr="#fdf2b6",GradientType=1);
}
footer > div {
	flex:  0 0 auto;
	padding: 0.5rem;
	padding:calc(0.5rem + 0.5vw + 0.5vh);
}
/**/
/*----------------------------------------------------------------------*/
#formular {
	position: relative;
	alignment-adjust: 0;
	margin: 0;
	padding: 0;
	text-align: left;
	max-width: 40em;
}
form {
	margin-top: 0px;
	margin-bottom: 0px;
}
input, textarea, select {
	position: relative;
	border: 2px solid rgb(121,24,32);
	width: 100%;
	padding: 0px 4px;
	height: 2rem;
	font: 400 16px/1.25rem 'Epilogue', sans-serif;
	border-radius: 2px;
	margin: 0 0 10px 0;
	border-radius: 1px;
	padding: 0.25rem 0.5rem;
}
textarea { height: 10rem; 
}
input:focus, textarea:focus {
	border: 1px solid rgb(150,100,10);
	background: #fff;
}
.check {
	width: 20px;
	padding: 0;
	margin: 0;
	height: 20px;
}
.send {
	border: 1px solid rgb(121,24,32);
	color: #fff;
	margin: 0 auto;
	width: auto;
	cursor: pointer;
	padding: 0 48px;
	background-color: rgb(121,24,32);
	border-radius: 2px;
	font-family: 'Epilogue', sans-serif;	
	font-weight: 700;
}
.send:hover, .send:focus {
	color: rgb(121,24,32);
	background: rgb(255,255,255);
}
/**/

/**/
@media only screen and (min-width: 380px) { 
	.phone {
	position: fixed;
	right: -2px;
	top: 5rem;
	border-radius: 0.5rem 0 0 0.5rem;
	border: 2px solid #fff;
	}
	.logo strong {
	font-size:125%; 
}
	}
@media only screen and (min-width: 640px) { 	
	.phone {
	top: 2rem;
}
	.flex > div { flex: 0 1 auto;}
	.content-12 { flex-basis: 50%;}
	.content-23 { flex: 0 1 62%;}
	.content-13 { flex-basis: 38%;}
	.content-14 { flex-basis: 25%;}
	.full { flex-basis: 100%;}
}
@media only screen and (max-width: 759px) { 
	footer > div {  width:100%;  }
	#menuToggle {
	display: block;
	position: fixed;
	top: 40px;
	right: 0px;
	width: 44px;
	z-index: 10;
	padding: 8px 0 4px 5px;
	-webkit-user-select: none;
	user-select: none;
	z-index: 50;
	background-color: rgb(121,24,32);
	}
	#menuToggle input {
		display: block;
		width: 44px;
		height: 44px;
		position: absolute;
		top: -7px;
		left: -5px;
		cursor: pointer;
		opacity: 0; /* hide this */
		z-index: 200 !important; /* and place it over the hamburger */
		-webkit-touch-callout: none;
	}
	/* Just a quick hamburger */
	#menuToggle span {
	display: block;
	width: 34px;
	height: 4px;
	margin-bottom: 5px;
	position: relative;
	background-color: rgb(255,255,255);
	z-index: 3;
	transform-origin: center;
	transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0),  background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0),  opacity 0.55s ease;
	}
	
	/* Transform all the slices of hamburger into a crossmark */
	#menuToggle input:checked ~ span {
	opacity: 1;
	transform: rotate(45deg) translate(6px, 6px);
	background-color:rgb(121,24,32);
	}
	/*hide the middle one */
	#menuToggle input:checked ~ span:nth-last-child(3) {
		opacity: 0;
		transform: scale(0.1, 0.1) rotate(360deg);
	}
	/* the last one go the other direction */
	#menuToggle input:checked ~ span:nth-last-child(2) {
		opacity: 1;
		transform: rotate(-45deg) translate(6px, -6px);
	}
	/*	 * Make this absolute positioned at the top right of the screen	 */
	#menu {
	position: fixed;
	width: 100%;
	margin: 0;
	padding: 1.5em;
	list-style-type: none;
	-webkit-font-smoothing: antialiased;
	/* to stop flickering of text in safari */	  
	transform-origin: 0% 0%;
	transform: translate(0%, -300%);
	transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0);
	background-color: rgb(255,255,255);
	background-size: 500%;
	right: 0;
	left: 0;
	top: 0;
	bottom: 0;
	background-color: rgb(255,255,255);
	}
	#menuToggle input:checked ~ ul {
		transform: scale(1.0, 1.0);
		opacity: 1;	}
	nav, nav ul, nav ul li {
	padding: 0;
	margin: 0;
	list-style: none;
	postition: relative;
	text-align: center;
		}
	nav ul li a {
	text-decoration: none;
	padding: 0 0.5em;
	margin: 4px auto;
	display: inline-block;
	font-size: 1rem;
	line-height: 36px;
	height: 36px;
	text-align: center;
	color: rgb(73,63,53);
	text-transform: uppercase;
		}
	
	nav a:hover, nav a:focus, nav a.aktiv {
	color: rgb(255,255,255);
	text-decoration: none;
	background-color: rgb(121,24,32);
	}
	nav a i { font-style:normal;}
}
@media only screen and (min-width: 760px) { 
	footer > div {  width:50%;  }
	/*--------------------------*/
	#menuToggle input {
		display: none;
	}
	#menuToggle {
		margin: 0 auto;
		position: relative;
	}
	nav {
	text-align: center;
	margin: auto;
	line-height: 2.5rem;
	position: absolute;
	right: 0px; top:3rem;
	background-color: rgba(255,255,255,0.8);
	z-index: 40;
	}
	nav ul {
		margin: 0 auto;
		padding: 0;
		list-style-type: none;
		display: flex;
		justify-content: center;
	}
	nav ul li {
		margin: 0;
		padding: 0;
		flex: 0 0 auto;
	}
	nav a {
	font-size-adjust: none;
	font-size:15px;
	display: block;
	margin: 0 0.5vw;
	padding: 0 0.5em;
	text-decoration: none;
	text-transform: uppercase;
	color:rgb(74,73,72);
	}
	nav a:hover, nav a.aktiv {
	position: relative;
	text-decoration: none;
	position:relative;
	}
	nav a.aktiv::after { content:''; width:100%; position:absolute; left:0; right:0; bottom:-4px; height:8px; background-image:url(../images/zacken-gold.png); background-size:contain; background-repeat:no-repeat; background-position:center;}
	nav a:hover {
	color: rgb(121,24,32);}
}
@media only screen and (min-width: 1000px) {
	footer > div {  width:auto;  }
}
@media only screen and (min-width: 1200px) { .phone {
	border-radius: 0.5rem;
	right: 10vw;
}}
@media only screen and (min-width: 1400px) {
	.slogan { font-size:3rem; padding:calc(2rem + 3vw);  }
}
/*----------------------------------------------------------------------*/
.btn.toTop{
	color:#fff; font-weight:600;
	background-color: rgb(121,24,32);
	position:fixed;
	right:0;
	bottom:10vh;
	text-decoration:none;
	visibility:hidden;
	opacity: 0;
	-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;
	border-radius: 8px 0 0 8px;
	-moz-border-radius: 8px 0 0 8px;
    -webkit-border-radius: 8px 0 0 8px;
	padding:0 16px;
	z-index:999;
	line-height:42px;
	
}
.btn.toTop:hover{  background-size: 100%;
}
.btn.toTop.show {
    visibility:visible;
    cursor:pointer;
	opacity: 1.0;
}
::-moz-selection { /* Code for Firefox */
    color: white; background-color: rgb(121,24,32);}
::selection { color: white; background-color: rgb(121,24,32);}
/* {border:1px solid rgba(0,0,0,0.5);}
