/* --------------------------------------------------------------------------------------
 * html and body
 * -------------------------------------------------------------------------------------- */

	html {
		height: 100%;
		padding-bottom: 1px; /* always show vertical scrollbars */
	}
	body {
		font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;
		font-size: 14px;
		background: #79634d url(../images/bgr.jpg) 0 230px no-repeat fixed;
		color: #333;
		margin: 0; padding: 0;
		width: 100%;
		height: 100%;
	}
	body.ie6 {
		/* behavior: url("static/components/csshover/csshover3.htc"); */
	}


/* --------------------------------------------------------------------------------------
 * generic classes
 * -------------------------------------------------------------------------------------- */

	.mb0 {
		margin-bottom: 0 !important;
	}
	.mb1 {
		margin-bottom: 1.6em !important;
	}
	.mb2 {
		margin-bottom: 2.4em !important;
	}
	.mb3 {
		margin-bottom: 3.2em !important;
	}
	.mb4 {
		margin-bottom: 4em !important;
	}
	.clear {
		overflow: hidden;
		clear: both;
		display: table;
		height: 0;
		zoom: 1;
	}
	.inline {
		display: inline;
	}

/* --------------------------
 * media classes
 * -------------------------- */

	/*
	.reader    = screen reader only         (eg skip links)
	.print     = print only                 (eg contact infos, references)
	.nonprint  = don't print                (eg navigation)
	.noreader  = hide from screen readers   (eg screen meta info)
	.nonjs     = show if JS is deactivated
	*/

	.reader {
		position: absolute; left: -990em; height: 1em; width: 1em;
		overflow: hidden;
	}
	.print {
		display: none;
		visibility: hidden;
	}
	.nonprint {
		/* nothing */
	}
	@media aural {
		.nonreader {
			display: none;
			visibility: hidden;
		}
	}
	html.js .nonjs {
		display: none;
	}


/* --------------------------------------------------------------------------------------
 * typo, images, lists, tables, forms,..
 * -------------------------------------------------------------------------------------- */

	p, li, dd, dt {
		font-size: 1em; line-height: 1.6em; font-weight: normal;
		margin: 0 0 1em 0; padding: 0;
	}
	h4, h5, h6 {
		font-size: 1em; line-height: 1.6em; font-weight: bold;
		margin: 0 0 0.4em; padding: 0;
		color: #777;
	}
	h2, h3 {
		font-size: 1.2em; line-height: 1.5em; font-weight: bold;
		margin: 0 0 0.6em 0; padding: 0;
		color: #777;
	}
	h1 {
		font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;
		font-size: 28px; line-height: 32px; font-weight: normal;
		margin: 0 0 0.4em 0; padding: 0;
		color: #58412e;
	}
	html.js h1 {
		/* cufon */
		font-family: 'Mano Negra', 'Helvetica Neue', Arial, Helvetica, sans-serif;
		font-size: 40px; line-height: 32px; font-weight: bold;
		margin: -2px 0 0.4em -2px;
	}

/* --------------------------
 * lists
 * -------------------------- */

	ul, ol {
		margin: 0 0 1.5em 0;
		padding: 0 0 0 2em;
	}
	li, dd, dt {
		margin: 0 0 0.3em 0;
		padding: 0;
	}

	ul {
		list-style: square;
	}

/* --------------------------
 * links
 * -------------------------- */

	a {
		text-decoration: none;
		color: #004f9c;
	}
	a:hover,
	a:focus {
		text-decoration: underline;
	}
	a:active {
		outline: none; /* remove dotted borders */
	}
	a:visited {
	}

	/* external */

	@media screen {
		a.external {
			background-image: url(../images/icon_external.png);
			background-position: right 20%;
			background-repeat: no-repeat;
			padding-right: 11px;
		}
	}

/* --------------------------
 * images
 * -------------------------- */

	img {
		border: 0;
		padding: 0;
		margin: 0;
		display: block;
	}
	img {
		/* behavior: url("static/components/iepngfix/iepngfix.htc"); */
	}

	.left {
		display: block;
		float: left;
		margin: 0 20px 10px 0;
		position: relative; top: 2px;
	}
	.right {
		display: block;
		float: right;
		margin: 0 5px 10px 15px;
		position: relative; top: 2px;
	}

/* --------------------------
 * tables
 * -------------------------- */

	table,
	table tr,
	table th,
	table td {
		margin: 0;
		padding: 0;
		border: 0;
		vertical-align: top;
		text-align: left;
	}
	table th,
	table td {
		font-size: 1em; line-height: 1.6em; font-weight: normal;
	}


/* --------------------------------------------------------------------------------------
 * tools
 * -------------------------------------------------------------------------------------- */

	/* maintenance */

	#maintenance {
		background: #222;
	}
	#maintenance p {
		font-size: 1em;
		line-height: 1em;
		display: block;
		text-align: center;
		color: #fff;
		padding: 5px 5px 6px 5px;
		margin: 0;
		border-bottom: 2px solid #fff;
	}

	/* non-js info */

	.jsinfo {
		background: #666;
		color: #fff;
		padding: 3px 10px;
	}

	/* search form */

	.searchform {
		margin: 0;
		background: #ccc;
		border: 1px solid #ccc;
		float: right;
	}
	.searchform form {
		margin: 0;
		padding: 0;
	}
	.searchform input {
		box-sizing: border-box;
		-moz-box-sizing: border-box; /* gecko */
		-webkit-box-sizing: border-box; /* khtml/webkit */
		-ms-box-sizing: border-box; /* IE */
		font-size: 1em;
		font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;
		border: 0;
		background: none;
		color: #333;
		margin: 0;
	}
	.searchform input.text {
		width: 180px;
		background: #fff url(../images/bgr_searchfield.png) 165px center no-repeat;
		padding: 3px 20px 3px 5px;
	}
	.ie6 .searchform input.text {
		width: 155px;
	}
	.ie7 .searchform input.text {
		width: 155px;
	}
	.searchform input.button {
		width: 9%;
		color: #fff;
		cursor: pointer;
		display: none;
	}
	.ie6-7 .searchform {
		zoom: 1;
		border-top: 0 !important;
		border-bottom: 0 !important;
	}

	/* DECAF branding */

	a#decafmedia,
	a#decafmedia:hover,
	a#decafmedia:focus {
  		width: 12px;
  		height: 64px;
  		margin: -90px 0 0 0;
  		position: absolute; left: 8px;
  		text-decoration: none;
  		border: none;
  		background: none;
  	}


/* --------------------------------------------------------------------------------------
 * layout
 * -------------------------------------------------------------------------------------- */

	/* wrappers */

	.wrp-1 {
		min-height: 100%;
		background: url(../images/bgr2.png) repeat-x fixed;
	}
	.ie6 .wrp-1 {
		height: 100%;
		background: none;
	}
	.wrp-2 {
		width: 840px;
		margin: 0 auto;
	}
	.rc-t {
		height: 40px;
		background: url(../images/bgr_page_rc-t.png) no-repeat;
	}
	.ie6 .rc-t {
		background: url(../images/bgr_page_rc-t.gif) no-repeat;
	}
	.rc-b {
		height: 40px;
		background: url(../images/bgr_page_rc-b.png) no-repeat;
	}
	.ie6 .rc-b {
		background: url(../images/bgr_page_rc-b.gif) no-repeat;
	}
	.rc-m {
		background: url(../images/bgr_page_rc-m.png) repeat-y;
		padding: 0 30px;
		zoom: 1;
	}
	.ie6 .rc-m {
		background: url(../images/bgr_page_rc-m.gif) repeat-y;
	}
	.wrp-3 {
		width: 770px;
		background: #fff url(../images/bgr_header.jpg) no-repeat;
		margin: -10px 0 -13px 0;
		padding: 5px;
		position: relative;
		display: inline-block;
		zoom: 1;
	}

	/* sections */

	.header {
		height: 250px;
		zoom: 1;
	}
	.header-inner {
	}
	.content {
		clear: both;
		padding: 20px 0 0 0;
		min-height: 200px;
		zoom: 1;
	}
	.ie6 .content {
		height: 200px;
	}
	.content-inner {
	}
	.footer {
		position: relative;
		zoom: 1;
	}
	.footer-inner {
		min-height: 165px;
		margin-top: 56px; /* illu */
		padding: 25px 0 5px 0;
		background: #ece6e0 url(../images/bgr_footer.png) repeat-y;
		zoom: 1;
	}
	.ie6 .footer-inner {
		height: 170px;
	}
	.footer-illu {
		width: 139px;
		height: 251px;
		background: url(../images/footer_tasse.png) no-repeat;
		position: absolute; bottom: 0; right: 0;
	}
	.ie6 .footer-illu {
		behavior: url("static/components/iepngfix/iepngfix.htc");
	}

	/* columns */

	.col-side {
		width: 177px;
		float: left;
		margin: 0 22px 0 0;
	}
	.col-main {
		width: 510px;
		float: left;
	}
	.ie6 .col-side,
	.ie6 .col-main {
		display: inline;
		zoom: 1;
	}


/* --------------------------------------------------------------------------------------
 * content
 * -------------------------------------------------------------------------------------- */

	/* content: navigation */

	.navigation {
		padding-top: 67px;
	}
	.ie6-7 .navigation {
		padding-top: 71px;
	}
	.navigation ul {
		margin: 0;
		padding: 0 25px 0 0;
		list-style: none;
	}
	.navigation li {
		display: block;
		margin: 0 0 0 auto;
		padding: 0;
		zoom: 1;
		background: url(../images/navigation.png) 0 0 no-repeat;
	}
	.ie6 .navigation li {
		background-image: url(../images/navigation.gif);
	}
	.navigation li div {
		margin: 0;
		height: 32px;
		position: relative;
	}
	.navigation li a {
		display: block;
		height: 26px;
		text-decoration: none !important;
		cursor: pointer;
		zoom: 1;
	}
	.navigation li a:focus {
		outline: 0;
	}
	.navigation li .bgr {
		width: 12px;
		height: 10px;
		overflow: hidden;
		text-indent: 20px;
		position: absolute; right: -20px; top: 9px;
		background: url(../images/navigation_active.png) no-repeat;
		display: none;
	}
	.ie6 .navigation li .bgr {
		background-image: url(../images/navigation_active.gif);
	}
	.navigation li div.active .bgr,
	.navigation li a:hover .bgr,
	.navigation li a:focus .bgr {
		display: block;
	}	
	.navigation li.nav-1 {
		width: 84px;
		background-position: 0 0;
	}
	.navigation li.nav-2 {
		width: 126px;
		background-position: 0 -32px;
	}
	.navigation li.nav-3 {
		width: 52px;
		background-position: 0 -64px;
	}
	.navigation li.nav-4 {
		width: 87px;
		background-position: 0 -96px;
	}
	.navigation li.nav-5 {
		width: 66px;
		background-position: 0 -128px;
	}
	.navigation li.nav-6 {
		width: 70px;
		background-position: 0 -160px;
	}
	.navigation li.nav-7 {
		background-position: 0 -192px;
	}
	.navigation li.nav-8 {
		background-position: 0 -224px;
	}
	.navigation li.nav-9 {
		background-position: 0 -256px;
	}
	.navigation li.nav-10 {
		background-position: 0 -288px;
	}

	/* content: feature */

	.feature {
		background: #eee;
		border-left: 5px solid #ccc;
		padding: 10px 10px 1px 15px;
		margin: 0 5px 1.6em 0;
		zoom: 1;
	}

	/* content: headlines */

	.headline {
		width: 552px;
		margin-bottom: 20px;
		padding-bottom: 10px;
		border-bottom: 1px solid #DBD6D1;
	}
	.headline * {
		margin-bottom: 0;
	}
	.headline p {
		color: #58412e;
	}

	/* content: quotes */

	blockquote {
		background: url(../images/quote.png) 8px 12px no-repeat;
		padding: 10px 0 2px 45px;
		margin: 15px 0 20px 2px;
	}
	blockquote p {
		color: #555;
		font-size: 1.1em; line-height: 1.5em;
	}

	/* header */

	.header .logo {
		position: absolute; top: 37px; left: 21px;
	}
	.header .logo span {
		font-size: 12px; color: #666;
		position: absolute; top: -22px; left: 0;
		display: none;
		text-decoration: none;
		font-weight: bold;
	}
	.header .logo a:hover span,
	.header .logo a:focus span {
		display: block;
	}
	.header .pic1 {
		position: absolute; top: 29px; left: 203px;
		width: 280px;
		height: 200px;
	}
	.header .pic2 {
		position: absolute; top: 42px; left: 475px;
		width: 280px;
		height: 200px;
	}

	/* footer */

	.footer p {
		color: #333;
	}
	.footer .address {
		max-width: 220px;
		float: left;
		margin: 0 50px 0 199px;
	}
	.ie6 .footer .address {
		display: inline;
	}

	/* legals */

	.legals {
		margin: -22px 0 15px 0;
		padding: 0 30px;
		text-align: right;
	}
	.legals a {
		font-size: 12px;
		color: #3F3123;
	}

	/* pics */

	.pic {
		margin: 0 0 20px 0;
	}
	.aleft {
		float: left;
		margin: 0 20px 5px 0;
	}
	.aright {
		float: right;
		margin: 0 10px 5px 15px;
	}
	.wtext {
		border: 1px solid #ccc;
		padding: 5px;
		/* background: #EFEBE2; */
	}
	.pic p {
		font-size: 0.9em; line-height: 1.2em;
		margin: 0;
		padding: 5px 0 0 0;
		color: #666;
	}

	/* gallery */

	.d--gallery {
	}
	.d--gallery ul {
		list-style: none;
		margin: 0;
		padding: 0;
		cursor: default;
	}
	.d--gallery li {
		width: 170px; /* padding und border von li img beachten! */
		margin: 0 0 10px 0; /* ggfls margin-right setzen */
		display: -moz-inline-grid; /* ff2 */
		display: inline-block;
		text-align: center;
		vertical-align: middle;
	}
	.d--gallery-size1 li {
		width: 102px;
		margin-bottom: 5px;
	}
	.d--gallery-size2 li {
		width: 127px;
		margin-bottom: 5px;
	}
	.d--gallery-size3 li {
		width: 169px;
		margin-bottom: 10px;
	}
	.d--gallery li a {
		display: -moz-inline-grid; /* ff2 */
		display: inline-block;
		cursor: pointer;
	}
	.d--gallery li .d--gallery-wrp {
		display: -moz-inline-grid; /* ff2 */
		display: inline-block;
		text-align: center;
		vertical-align: middle;
	}
	.d--gallery li img {
		display: block;
		border: 1px solid #ccc;
		padding: 2px;
		margin-bottom: 1px; /* ie */
	}
	.d--gallery li a:hover img,
	.d--gallery li a:focus img {
		border-color: #004f9c;
	}
	.ie6-7 .d--gallery li,
	.ie6-7 .d--gallery li a,
	.ie6-7 .d--gallery li .d--gallery-wrp {
		display: inline;
		zoom: 1;
	}

	/* map */

	.map {
		border: 1px solid #ccc;
		padding: 2px;
		margin-bottom: 5px;
	}
	.map iframe {
		display: block;
	}

	/* Speisekarte
	   http://web-graphics.com/mtarchive/ItalianMenu.html
	*/

	.speisekarte {
	}
	.speisekarte dl {
		width: 100%;
		overflow: auto;
		margin: 0;
		background: url(../images/dot.gif) repeat-x 0 1.2em;
	}
	.speisekarte dt,
	.speisekarte dd.price {
		background: #fff;
		font-size: 1.1em;
		font-weight: bold;
	}
	.speisekarte dt {
		float: left;
		padding-right: 3px;
	}
	.speisekarte dd {
		margin: 0;
	}
	.speisekarte dd.price {
		float: right;
		padding-left: 3px;
		color: #888;
	}
	.speisekarte dd.ingredients {
		float: left;
		width: 90%;
		padding: 0;
		margin: -5px 0 5px 0;
	}

	/* Startseite: Öffnungszeiten zu den Festtagen (Tabelle) */

	.art-1 .col-main table {
	}
	.art-1 .col-main table th {
		font-weight: bold;
		padding-right: 30px;
	}
	.art-1 .col-main table td {
	}

