@charset "UTF-8";



/* Folgende Angaben sind für alle Elemente gültig sofern diese nicht übersteuert werden */

* {
	font-family: Arial, sans-serif;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

html, body {
	margin: 0;
	padding: 0;
}





/* Hauptinhalt dehnt sich automatisch aus */
main {
  flex: 1;
}

div.kopf {
	background-image: linear-gradient( to right, green, #fff, blue);
	text-align: center;
	height: 3em;
	display: table;
	width: 100%;
}

h1.kopf {
	display: table-cell;
	vertical-align: middle;
}


div.banner {

	background-image: url("../images/banner-schlosspark-in-fulda.jpg");
	background-position: center center;
	background-size: cover;

	display: table;
	width: 100%;

	height: 17em;
	text-align: center;
	position: relative;
}

h1.banner {
	display: table-cell;
	vertical-align: bottom;
	padding-bottom: 1em;
}



div.fuss {
	background-image: linear-gradient( to right, green, #fff, blue);
	text-align: center;
	height: 5em;
	display: table;
	width: 100%;
	position: fixed;
	bottom: 0;
	left: 0;
	}

a.fuss {
	display: table-cell;
	vertical-align: middle;
}




main {
	background: whitesmoke;
	max-width: 1200px;
	margin: 5em auto;
	padding: 2em 1em;
	transition: all 0.5s ease-in-out;
}

main.small {
	max-width: 800px;
}

.row::before,
.row::after {
	content: '';
	display: table;
}

.row::after {
	clear: both;

}
.row {
	display: flex;
	justify-content: center;
	align-items: stretch;
	gap: 2em;
	margin-bottom: 2em;
}
.column {
	width: 33.33%;
	float: center;
	padding: 0 1em;
}

.box {
	background: white;
	overflow: hidden;
	box-shadow: 0 2px 3px rgba(0,0,0,0.2);
}

.header {
	background: lightgray;
	display: table;
	width: 100%;
	height: 5em;
}


p.header {
	display: table-cell;
	margin: 2em;
	text-align: justify;
	hyphens: auto;
	-webkit-hyphens: auto;

	background-color: white;
}

h2.header {
	color: black;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}


p.portal {
	text-align: justify;
	hyphens: auto;
	-webkit-hyphens: auto;
}

h2.portal {
	text-align: left;
	padding-left: 1em;
}



/* ------------------------------------------------------- */
/* Navigation mit zweistufigem ausklappbarem Dropdown-Menü */
/* ------------------------------------------------------- */

#nav {
cursor: default;
background-color: #333;
background-image: -moz-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.3)), url("../images/bg01.png");
background-image: -webkit-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.3)), url("../images/bg01.png");
background-image: -ms-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.3)), url("../images/bg01.png");
background-image: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,0.3)), url("../images/bg01.png");
padding: 0;
}

#nav:after {
content: '';
display: block;
width: 100%;
height: 0.75em;
background-color: #37c0fb;
background-image: url("../images/bg01.png");
}

#nav ul {
list-style: none;
margin: 0;
padding: 0;
}

#nav > ul > li {
position: relative;
display: inline-block;
margin-left: 1em;
}

#nav > ul > li:first-child {
margin-left: 0;
}

#nav a {
color: #c0c0c0;
text-decoration: none;
border: 0;
display: block;
padding: 1.5em 0.5em 1.35em 0.5em;
white-space: nowrap;
}

#nav li:hover > a {
color: #fff;
}

#nav > ul > li.current {
font-weight: 600;
}

#nav > ul > li.current:before {
-moz-transform: rotateZ(45deg);
-webkit-transform: rotateZ(45deg);
-ms-transform: rotateZ(45deg);
transform: rotateZ(45deg);
width: 0.75em;
height: 0.75em;
content: '';
display: block;
position: absolute;
bottom: -0.5em;
left: 50%;
margin-left: -0.375em;
background-color: #37c0fb;
background-image: url("../images/bg01.png");
}

#nav > ul > li.current > a {
color: #fff;
}

#nav > ul > li.active > a {
color: #fff;
}

#nav > ul > li.active.current:before {
opacity: 0;
}

#nav ul ul {
display: none;
position: absolute;
top: 100%;
left: 0;
min-width: 230px;
background-color: #333;
background-image: url("../images/bg01.png");
z-index: 1000;
box-shadow: 0 4px 8px rgba(0,0,0,0.35);
}

#nav li:hover > ul {
display: block;
}

#nav ul ul li {
position: relative;
display: block;
margin: 0;
}

#nav ul ul a {
padding: 0.9em 1em;
color: #c0c0c0;
background-color: #333;
}

#nav ul ul li:hover > a {
background-color: #444;
color: #fff;
}

#nav ul ul ul {
top: 0;
left: 100%;
}

#nav li.has-submenu > a::after {
content: " ▾";
}

#nav ul ul li.has-submenu > a::after {
content: " ›";
float: right;
margin-left: 1em;
}



/* ------------------------------------------------------- */
/* Einfache Anpassung für kleinere Bildschirme              */
/* ------------------------------------------------------- */

@media screen and (max-width: 700px) {

	#nav > ul > li {
	display: block;
	margin-left: 0;
	}

	#nav a {
	padding: 1em;
	}

	#nav > ul > li.current:before {
	display: none;
	}

	#nav ul ul,
	#nav ul ul ul {
	position: static;
	min-width: 100%;
	box-shadow: none;
	}

	#nav li:hover > ul {
	display: block;
	}

	#nav ul ul a {
	padding-left: 2em;
	}

	#nav ul ul ul a {
	padding-left: 3em;
	}

	.column {
		width: 100%;
		float: none;
		margin-bottom: 1em;
	}

}



@media print {

    body {
        background: white;
        color: black;
        font-size: 11pt;
    }

    .site-header,
    .main-nav,
    .site-footer {
        display: none;
    }

    .page-content {
        max-width: none;
        margin: 0;
        padding: 0;
    }

    .recipe-page {
        border: none;
        padding: 0;
    }

    .recipe-page h2 {
        font-size: 20pt;
        margin-top: 0;
    }

    .recipe-image img {
        max-height: 70mm;
        width: auto;
    }

    .recipe-ingredients,
    .recipe-steps,
    .recipe-notes {
        page-break-inside: avoid;
    }

    a {
        color: black;
        text-decoration: none;
    }
}
