body, html
{
	font-size: 1em;
	margin: 0px;
	padding: 0px;
	font-family: Lucida Sans Unicode, Tahoma, Verdana, Arial, Helvetica;
	color: #666666;
	background-image: url(../img/main_bg.jpg);
	background-repeat: repeat-x;
	background-color: #FFFFFF;
	line-height: 1.2em;
}

/* kompletter body mit allen Bereichen */
#main
{
	padding: 0px;
	width: 900px;
	text-align: left;
	margin: 0px auto;
	overflow: hidden;
}

/* linker bereich mit navigation etc. */
#left
{
	float: left;
	padding: 0px;
	margin: 0px;
	width: 300px;
	_padding-bottom: 32767px !important;
	_margin-bottom: -32767px !important;
}

/* rechter bereich mit contextinfo etc. */
#right
{
	float: left;
	padding: 0px;
	margin: 0px;
	width: 299px;
	font-size: 0.75em;
	padding-bottom: 32767px !important;
	margin-bottom: -32767px !important;
	border-right: 1px solid;
}

/* navigation */
#navigation
{
	float: left;
	font-size: 0.75em;
	padding: 0px 0px 0px 19px;
	margin: 0px;
	padding-bottom: 32767px !important;
	margin-bottom: -32767px !important;
	background-color: #FFFFFF;
	border-left: 1px solid;
	width: 280px;
}

/* Hauptmenue AKTIV */
#navigation a:link.mainactive, #navigation a:visited.mainactive, #navigation a:active.mainactive, #navigation a:hover.mainactive
{
	padding: 12px;
	margin: 0px;
	color: #A63A3E;
	text-decoration: none;
	background-color: #FFFFFF;
	width: 174px;
	height: 16px;
	display: block;
	font-weight: normal;
}

/* Hauptmenue INAKTIV */
#navigation a:link.maininactive, #navigation a:visited.maininactive, #navigation a:active.maininactive
{
	padding: 12px;
	margin: 0px;
	color: #FFFFFF;
	text-decoration: none;
	background-color: #A63A3E;
	width: 174px;
	height: 16px;
	display: block;
	font-weight: normal;
}

#navigation a:hover.maininactive
{
	padding: 11px;
	margin: 0px;
	color: #A63A3E;
	text-decoration: none;
	background-color: #FFFFFF;
	width: 174px;
	height: 16px;
	display: block;
	font-weight: normal;
	border-color: #A63A3E;
	border: 1px solid;
}

/* Untermenue INAKTIV */
#navigation a:link.subinactive, #navigation a:visited.subinactive, #navigation a:active.subinactive
{
	padding: 10px 0px 0px 20px;
	margin: 0px;
	color: #FFFFFF;
	text-decoration: none;
	background-color: #999999;
	width: 178px;
	height: 25px;
	display: block;
	font-weight: normal;
	font-size: 0.8em;
}

#navigation a:hover.subinactive
{
	padding: 8px 0px 0px 19px;
	margin: 0px;
	color: #A63A3E;
	text-decoration: none;
	background-color: #FFFFFF;
	width: 177px;
	height: 25px;
	display: block;
	font-weight: normal;
	border-color: #A63A3E;
	border: 1px solid;
	font-size: 0.8em;
}
/* Untermenue AKTIV */
#navigation a:link.subactive, #navigation a:visited.subactive, #navigation a:active.subactive, #navigation a:hover.subactive
{
	padding: 10px 0px 0px 20px;
	margin: 0px;
	color: #A63A3E;
	text-decoration: none;
	background-color: #FFFFFF;
	width: 178px;
	height:25px;
	display: block;
	font-weight: normal;
	font-size: 0.8em;
}

/* navigation-main */
#navigation-main
{
	float: left;
	display: inline;
	padding: 0px;
	margin: 0px;
	width:900px;
	height: 50px;
}

#content
{
	float: left;
	margin: 0px;
	padding: 0px;
	font-size: 0.75em;
	font-weight: normal;
	width: 300px;
	background-color: #FFFFFF;
	padding-bottom: 32767px !important;
	margin-bottom: -32767px !important; 
}

#content-right-together
{
	float: left;
	margin: 0px;
	padding: 20px 20px 10px 20px;
	font-size: 0.75em;
	font-weight: normal;
	width: 559px;
	background-color: #FFFFFF;
	padding-bottom: 32767px !important;
	margin-bottom: -32767px !important;
	border-right: 1px solid;
}

* html #content
{
^	display: inline;
}

#banner
{
	float:left;
	margin: 0px;
	padding: 0px;
	width: 900px;
	display: inline;
	overflow: hidden;
	height: 114px;
	background-image: url(../img/banner.jpg);
}

#flags
{
	float: right;
	padding: 20px;
}

#metanavi
{
	padding: 20px;
	top: 120px;
	float: right;
}

a:link.metanavi, a:active.metanavi, a:visited.metanavi, a:hover.metanavi
{
	font-weight: normal;
	color: #666666;
}

#threecol-left-aussen
{
	padding: 19px 0px 0px 0px;
}

#threecol-mid-aussen
{
	padding: 19px 0px 0px 0px;
}

#threecol-right-aussen
{
	padding: 19px 19px 0px 0px;
}

#threecol-left
{
	background-image: url(../img/home_threecol_left_bg.jpg);
	background-repeat: no-repeat;
	padding: 20px;
	height: 102px;
}

#threecol-left-not-home
{
	background-image: url(../img/left_bg.jpg);
	background-repeat: no-repeat;
	padding: 20px;
	height: auto;
}

#threecol-left-not-home-bottom
{
	background-image: url(../img/left_bg_bottom.jpg);
	background-repeat: no-repeat;
	padding: 20px;
	height: auto;
}

#threecol-mid
{
	background-image: url(../img/home_threecol_mid_bg.jpg);
	background-repeat: no-repeat;
	padding: 20px;
	height: 102px;
}

#threecol-right
{
	background-image: url(../img/home_threecol_right_bg.jpg);
	background-repeat: no-repeat;
	padding: 20px;
	height: 102px;
}

p.threecol-left
{
	padding: 12px 0px 0px 0px;
	font-size: 1.3em;
	margin: 0px;
}

p.threecol-mid
{
	padding: 12px 0px 0px 0px;
	font-size: 1.3em;
	margin: 0px;
}

p.threecol-right
{
	padding: 12px 0px 0px 0px;
	font-size: 1.3em;
	margin: 0px;
}

p.threecol-full
{
	padding: 20px;
	font-size: 1.3em;
	margin: 0px;
}

p.right
{
	text-align: right;
	margin: 0px;
}

p.white
{
	color: #FFFFFF;
}

p.threecol-norm
{
	padding: 20px;
	font-size: 1.3em
	margin: 0px;
}

H3
{
	font-size: 1.3em;
	height: 1.5em;
	margin: 0px 0px 20px 0px;
	padding: 5px 0px 0px 0px;
	font-weight: bold;
	background-image: url(../img/trace_bg.gif);
	background-position: 0px 27px;
	background-repeat: repeat-x;
}

H2
{
	font-size: 1.3em;
	height: 1.5em;
	margin: 0px 0px 20px 0px;
	padding: 5px 0px 0px 0px;
	font-weight: bold;
	background-image: url(../img/trace_bg.gif);
	background-position: 0px 27px;
	background-repeat: repeat-x;
	color: #004684;
}

H1
{
	font-size: 1.6em;
	height: 1.2em;
	margin: 0px 0px 20px 0px;
	padding: 0px;
	color: #004684;
	font-weight: bold;
	background-image: url(../img/trace_bg.gif);
	background-position: 0px 22px;
	background-repeat: repeat-x;
}

H2.threecol
{
	font-size: 1.6em;
	width: 200px;
	margin: 0px;
	padding: 0px;
	color: #004684;
	background-image: none;
	height: auto;
	line-height: 1.1em;
}

p.one-col
{
	width: 254px;
	margin: 0px;
}

p
{
	font-size: 1.1em;
}

li
{
	list-style-type: square;
}

ul.messe
{
	padding: 10px;
	margin: 0px;
}

li.messe
{
	background-image: url(../img/li_messe_bg.jpg);
	background-repeat: no-repeat;
	list-style-type: none;
	padding: 11px 14px 17px 14px;
	margin: 0px;
}

a:link.messe, a:active.messe, a:visited.messe, a:hover.messe
{
	color: #FFFFFF;
	display: block;
}

/* Hotelangebote Startseite */
#home-hotel-angebot-1-top, #home-hotel-angebot-2-top, #home-hotel-angebot-3-top
{
	background-image: url(../img/home_hotel_top.jpg);
	background-repeat: no-repeat;
	margin: 0px;
	padding: 0px;
	height: 12px;
	overflow: hidden;
}

#home-hotel-angebot-1-mid, #home-hotel-angebot-2-mid, #home-hotel-angebot-3-mid
{
	margin: 0px;
	padding: 0px 10px 10px 10px;
	height: auto;
}

#home-hotel-angebot-1-bottom, #home-hotel-angebot-2-bottom, #home-hotel-angebot-3-bottom
{
	background-image: url(../img/home_hotel_bottom.jpg);
	background-repeat: no-repeat;
	margin: 0px 0px 2px 0px;
	padding: 0px;
	height: 16px;
	overflow: hidden;
}

#home-hotel-angebot-1-mid p, #home-hotel-angebot-2-mid p, #home-hotel-angebot-3-mid p
{
	margin: 0px;
	padding: 0px;
}

#home-hotel-angebot-1, #home-hotel-angebot-2, #home-hotel-angebot-3
{
	padding: 0px 10px 0px 10px;
	background-image: url(../img/home_hotel_mid.jpg);
	background-repeat: repeat-y;
	background-position: 10px;
}

#home-hotel-angebot-1-beschreibung, #home-hotel-angebot-2-beschreibung, #home-hotel-angebot-3-beschreibung
{
	margin: 0px 0px 10px 0px;
	padding: 0px;
	color: #FFFFFF;
	line-height: 1.2em;
}

#home-hotel-angebot-1-bildpreis, #home-hotel-angebot-2-bildpreis, #home-hotel-angebot-3-bildpreis
{
	margin: 0px 0px 10px 0px;
	padding: 0px;
	color: #FFFFFF;
	font-weight: bold;
	font-size: 0.8em;
	line-height: 1.2em;
}

/* Hotelangebote Suchergebnisseite */
#hotels-hotel-angebot-1-top
{
	background-image: url(../img/hotels_hotel_top.jpg);
	background-repeat: no-repeat;
	margin: 0px;
	padding: 0px;
	height: 12px;
	overflow: hidden;
}

#hotels-hotel-angebot-1-mid
{
	margin: 0px;
	padding: 0px 10px 0px 10px;
}

#hotels-hotel-angebot-1-bottom
{
	background-image: url(../img/hotels_hotel_bottom.jpg);
	background-repeat: no-repeat;
	margin: 0px 0px 2px 0px;
	padding: 0px;
	height: 16px;
	overflow: hidden;
	padding-top: -30px;
}

#hotels-hotel-angebot-1-mid p
{
	margin: 0px;
	padding: 0px;
}

#hotels-hotel-angebot-1
{
	padding: 0px 10px 0px 10px;
	background-image: url(../img/hotels_hotel_mid.jpg);
	background-repeat: repeat-y;
	background-position: 10px;
}

#hotels-hotel-angebot-1-beschreibung
{
	margin: 0px 0px 10px 0px;
	padding: 0px;
	color: #FFFFFF;
	line-height: 1.2em;
}

#hotels-hotel-angebot-1-bildpreis
{
	margin: 0px 0px 10px 0px;
	padding: 0px 10px 0px 0px;
	color: #FFFFFF;
	font-weight: bold;
	font-size: 0.8em;
	line-height: 1.2em;
		
}

#hotels-hotel-angebot-1-preis
{
	padding-top: 8px;
	text-align: right;
	line-height: 1.4em;
}

a:link.hotelangebot, a:active.hotelangebot, a:visited.hotelangebot, a:hover.hotelangebot
{
	font-weight: normal;
}
.hotelbeschreibung
{
	line-height: 1.1em;
	font-weight: normal;
	font-size: 1.4em;
}

.hotels-hotelname
{
	font-size: 1.4em;
	font-weight: bold;
}

table.hotels-hotelinfo
{
	padding: 0px;
	margin: 0px;
	margin-top: 5px;
	width: 510px;
}

tr.hotelinfos
{
	padding: 0px;
	margin: 0px;
}

td.hotels-hotelinfo
{
	padding: 0px;
	margin: 0px;
	text-align: right;
	color: #FFFFFF;
}

th.hotels-hotelinfo
{
	width: 25%;
	padding: 0px 3px 0px 3px;
	margin: 0px;
	background-color: #B5B3B4;
	color: #004684;
	font-size: 0.9em;
}

img
{
	padding: 0px;
	margin: 0px;
	border: 0px;
}

img.hotels-button-anfrage
{
	float: right;
	padding: 10px 20px 2px 0px;
}

img.right
{
	float: right;
	margin: 10px;
	margin: 10px 0px 10px 10px;
	border: 1px solid;
}

img.left
{
	float: left;
	margin: 10px 10px 10px 0px;
	border: 1px solid;
}

img.home-hotelbild
{
	width: 150px;
	float: left;
	margin: 0px 5px 0px 0px;
	border: 1px solid;
	border-color: #666666;
}

img.hotels-hotelbild
{
	width: 160px;
	float: left;
	margin: 0px 5px 0px 0px;
	border: 1px solid;
	border-color: #666666;
}

img.home-hotelsterne
{
	margin: 0px 0px 0px -3px;
}

img.hotels-hotelsterne
{
	margin: 0px 10px 0px 0px;
	float: right;
}

input
{
	font-weight: normal;
	height: 16px;
	background-color: #F1F0F0;
	color: #999999;
	border: 1px solid;
	border-color: #999999;
}

#error
{
	width: 160px;
	min-width: 180px;
	padding: 8px;
	margin: 0px;
	border: 1px solid;
	background-color: #F0E0D8;
	float: right;
	color: #A63A3E;
}

#error p
{
	padding: 0px 0px 5px 20px;
	margin: 0px;
	width: 160px;
	background-image: url(../img/input_error.gif);
	background-position: 0px 0px;
	background-repeat: no-repeat;
	float: right;
	background-color: #F0E0D8;
	border:0px;
}

a:link, a:active, a:visited
{
	color: #004684;
	text-decoration: none;
	padding: 0px;
	margin: 0px;
	font-weight: bold;
}

a:hover
{
	color: #004684;
	text-decoration: underline;
	padding: 0px;
	margin: 0px;
	font-weight: bold;
}

textarea
{
	font-family: Lucida Sans Unicode, Tahoma, Verdana, Arial, Helvetica;
	border: 1px solid;
	border-color: #666666;
	color: #999999;
	color: #46679C;
}

input
{
	border: 1px solid;
	border-color: #666666;
	color: #999999;
	font-family: Lucida Sans Unicode, Tahoma, Verdana, Arial, Helvetica;
}

#footer
{
	text-align: center;
	padding: 10px 0 10px 0;
	margin: 0;
	height: 30px;
	/* background-image: url(../img/footer_bg.jpg);*/
	/* background-repeat: no-repeat;*/
	background-color: #004684;
	background-position: center;
	position: relative;
	font-size: 0.75em;
	font-family: Lucida Sans Unicode, Tahoma, Verdana, Arial, Helvetica;
	width: 100%;
	color: #FFFFFF;
}

#footer a:link, #footer a:visited, #footer a:active, #footer a:hover
{
	color: #FFFFFF;
	font-weight: normal;
}

table
{
	font-size: 1em;
	width: 100%;
	padding: 0;
	margin: 0;
}

td
{
	padding: 3px;
	margin: 0px;
}

tr
{
	border: 1px solid;
	padding: 0;
	margin: 0;
}

th
{
	text-align: left;
	padding: 3px;
	margin: 0;
}

/* FORMS */
input
{
	font-family: Lucida Sans Unicode, Tahoma, Verdana, Arial, Helvetica;
	font-weight: normal;
	height: 16px;
	background-color: #F1F0F0;
	color: #46679C;
	border: 1px solid;
	border-color: #999999;
}

#formwithmessagebox
{
	width: 549px;
	padding: 5px;
	margin: 0px;
	float: left;
	background-color: #F2F2F2;
	margin-bottom: 5px;
}

#formwithmessagemessage
{
	padding: 7px;
	margin: 0 0 5px 0;
	float: left;
	background-color: #FFFFFF;
	border: 1px solid;
	border-color: #666666;
	width: 533px;
}

#formwithmessagemessage.left
{
	float: left;
}

#formwithmessagemessage p.norm
{
	padding: 0;
	margin: 0;
	float: left;
	border:0px;
}

#error
{
	padding: 5px;
	margin: 0 0 5px 0;
	border: 1px solid;
	background-color: #F0E0D8;
	float: left;
	color: #A63A3E;
	width: 537px;
}

#error.left
{
	float: left;
}

#error p
{
	padding: 0px 0px 5px 25px;
	margin: 0px;
	width: 512px;
	background-image: url(../img/input_error.gif);
	background-position: 0px 2px;
	background-repeat: no-repeat;
	float: left;
	background-color: #F0E0D8;
}

#formwithmessageform
{
	width: 531px;
	padding: 8px;
	float: left;
	border: 1px solid;
	background-color: #FFFFFF;
}

#formwithmessageform label
{
	margin: 0px;
	padding: 0px;
	margin-bottom: 5px;
	width: 30%;
	float: left;
	height: 26px;
	display: block;
	font-size: 1.1em;
}

#formwithmessageform label.error
{
	color: #A63A3E;
	font-weight: bold;
}

#formwithmessageform input.text, input.password
{
	margin: 0px;
	padding: 4px;
	margin-bottom: 5px;
	width: 60%;
	float: right;
	height: 16px;
	background-image: url(../img/input_bg.gif);
	border-color: #999999;
}

#formwithmessageform input.submit
{
	padding: 0px;
	margin: 0px;
	/*margin-bottom: 5px;*/
	width: 124px;
	height: 25px;
	float: right;
	color: #FFFFFF;
	border: none;
	background-image: url(../img/but_senden.gif);
}


#formwithmessageform textarea.text
{
	padding: 4px;
	margin-bottom: 5px;
	width: 60%;
	float: right;
	height: 130px;
	background-image: url(../img/input_bg.gif);
	border-color: #999999;
	color: #46679C;
	font-family: Lucida Sans Unicode, Tahoma, Verdana, Arial, Helvetica;
	font-size: 1.0em;
}

#formwithmessageform label.radio
{
	float: left;
	width: auto;
	padding: 0px;
	_line-height: 1em;
}

#formwithmessageform input.radio
{
	float: left;
	width: 20px;
	border-width: 0px;
	background-color: #EEEEEE;
}

#formwithmessageform input.checkbox
{
	float: left;
	padding: 2px;
	margin: 0px 0px 0px 10px;
	_margin: 0px 0px 0px 6px;
	margin-bottom: 5px;
	border-width: 0px;
	height: 20px;
	background-color: #EEEEEE;
	width: 177px;
}

#formwithmessageform input.file
{
	margin: 0px;
	padding: 2px;
	margin-bottom: 5px;
	width: auto;
	_width: 100%;
	float: right;
	height: 20px;
	background-image: url(../img/input_bg.gif);
	border-color: #999999;
	border: 1px solid;
}

#formwithmessageform select
{
	margin: 0px;
	padding: 0px;
	margin-bottom: 5px;
	width: 177px;
	float: right;
	height: auto;
	background-image: url(../img/input_bg.gif);
	border: 1px solid;
	border-color: #999999;
}

#formwithmessageform .likelabel
{
	margin: 0px;
	padding: 0px;
	margin-bottom: 5px;
	width: 112px;
	float: left;
	height: 20px !important;
	display: block;
}

#main
	{
/* Normally a Holly-style hack height: 1% would suffice but that causes 
IE 5.01 to completely collapse the wrapper - instead we float it */
	float: left;
/* NB. possibly only IE 5.01 needs to get this float value - otherwise 5.5 sometimes 
(I saw it happen many moons ago) makes the width of wrapper too small 
the float: none with the comment is ignored by 5.01,
5.5 and above see it and carry on about their business
It's probably fine to just remove it, but it's left here 
just in case that many moons ago problem rears its head again */
	float/**/: none;
	}

	/* easy clearing */
#main:after
	{
	content: '[DO NOT LEAVE IT IS NOT REAL]'; 
	display: block; 
	height: 0; 
	clear: both; 
	visibility: hidden;
	}
#main
	{
	display: inline-block;
	}
/*\*/
#main
	{
	display: block;
	}
/* end easy clearing */
#footer
	{
	clear: both;
	}
/* Safari needs this - otherwise the ghost overflow, though painted 
correctly obscures links and form elements that by rights should be above it.
An unintended side-effect is that it cause such elements to vanish in IE 5.01
and 5.5, hence the child selector hack */
* > #footer, * > form, * > #notes, * > .output
	{
	position: relative;
	z-index: 1000;
	}
