/* -- Init styles -- */
/* http://meyerweb.com/eric/thoughts/2008/01/15/resetting-again/ */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	background: transparent;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}

/* remember to define focus styles! */
:focus {
	outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* -- EOF: Init styles -- */


#headercontainer {
	background: transparent url(/web/media/base/images/whitebar.gif) top center no-repeat;
}





body.intro td.mainCenter {
	width: 760px;
	height: 600px;
}


/* End Intro */





body, td, div, span, h1, h2, h3, h4, h5, p  {
	font: 10px/1.3 Verdana, "Trebuchet MS", Arial, sans-serif;
}

body {
	background: #FF009D;
}

body.imageView {
	background-image: 0;
	background: #fff;
}

body.intro {
	background-position: center -50px;
}

#intro_content {
	text-align: center;
	display: block;
	width: 864px;
	height: 567px;
	padding-top: 40px;
	background: transparent url(/web/media/base/images/intro-bg.jpg) 2px center no-repeat;
}

#intro_content h1 {
	text-align: left;
	overflow: hidden;
	width: 335px;
	height: 66px;
	background: transparent url(/web/media/base/images/logo.gif) 0 0 no-repeat;
	display: block;
	margin: 0 auto 60px auto;
	padding: 0;
	font: 1px sans-serif;
	text-indent: -999px;
}

#intro_content h2 {
	text-align: left;
	font-weight: normal;
	font: 14px "Century Gothic","Trebuchet MS", Verdana, Tahoma, Arial, sans-serif;
	color: #333;
	margin: 0 0 8px 0;
}

#intro_content #intro-summer-flash {
	background: url(/web/media/base/images/intro-summer-photo.jpg) 0 0 no-repeat;
	display: block;
	width: 258px;
	height: 211px;
	float: left;
	margin: 0 0 10px 0;
}

#intro_content #intro-winter-flash {
	background: url(/web/media/base/images/intro-winter-photo.jpg) 0 0 no-repeat;
	display: block;
	width: 258px;
	height: 211px;
	float: left;
	margin: 0 0 10px 0;
}

#intro_content div.lang {
	font: 11px Verdana, Tahoma, Arial, sans-serif;
	display: block;
	clear: both;
	margin: 0 auto;
	text-align: left;
}

#intro_content div.lang a {
	font: 11px Verdana, Tahoma, Arial, sans-serif;
	text-decoration: none;
	color: #333;
}

#intro_content div.lang a img {
	border: 0;
	vertical-align: middle;
	margin: 0 0 0 3px;
}

#intro_content div.lang a:hover {
	text-decoration: none;
}

#intro_content table {
	margin-bottom: 60px;
}

#intro_content #intro_footer {
	width: 663px;
	margin: 0 auto;
	height: 14px;
	text-indent: -999px;
	font: 1px sans-serif;
	overflow: hidden;
	background: transparent url(/web/media/base/images/intro-footer.jpg) 0 0 no-repeat;
}

#intro_content #intro_footer a {
	display: block;
	top: 0;
	text-indent: -999px;
	overflow: hidden;
	width: 115px;
	height: 14px;
	position: relative;
	left: 0;
	float: right;
}


#container {
	width: 100%;
	text-align: justify;
}

/* Header */
#header {
	width: 760px;
	height: 278px;
	margin: 0 auto;
	overflow: hidden;
	border-bottom: 1px solid #FF009D;
	background: #FF009D;
}

/* Menu */


/* Sidebar */
#content  table.sidemenu { 
	width: 193px;
	margin: 0 0 0 2px;
	background: transparent url(/web/media/base/images/bg-menu.gif) top left no-repeat;
}

#content table.sidemenu td {
	padding: 3px 8px 3px 1px; 
	width: 180px;
}

#content table.newsteaser td {
	padding: 0px 1px;
}

#content  table.sidemenu td.headline {
	border-left: 0;
	border-right: 0;
	padding: 20px 0 9px 55px;
	text-align: left;
}

#content table.sidemenu td.bottom {
	height: 14px;
	background: url(/web/media/base/images/bg-menu-bottom.gif) bottom left no-repeat;
}

#content  table.sidemenu div.line {
display: none;
}

#content table.sidemenu a {
	font: 10px/1 Verdana, "Trebuchet MS", Arial, sans-serif;
	display: block;
	background: 0;
	text-align: left;
	color: #333;
	margin: 2px 0 2px 30px;
	padding: 3px 0 3px 7px;
	text-decoration: none;
	background: url(/web/media/base/images/menu-li.gif) -4px 4px no-repeat;
}

#content table.sidemenu .menudate {
	clear: both;
	margin: 0;
	padding: 0;
	text-align: left;
	display: block;
	margin: 0 0 0 37px;
}

#content table.sidemenu .menuCat {
	clear: both;
	margin: 0;
	padding: 0;
	text-align: left;
	display: block;
	margin: 0 0 0 37px;
	font-weight: bold;
}

#content table.sidemenu a.menuSelected,
#content table.sidemenu a:hover {
	color: #D3851E;
	
}


#content table.sidemenu div.newsTeaserContent a {
	margin: 2px 0 2px 0px;
}

/* Content */

#content img.headline {
	position: fixed;
	margin: 0;
	padding: 0;
}
#contentScroller {
	width: 760px;
	margin: 0 auto;
	background: #FF009D url(/web/media/base/images/sidebar-bg.jpg) top left repeat-y;
}

#content {
	padding: 0 10px 10px 0;
	overflow: auto;
	overflow-x: hidden;
	margin: 0 0 21px 0;
}

#contentScroller .left {
	float: left;
	width: 200px;
	display: block;
	height: 100px;
	margin-right: 20px;
}

#contentScroller .right {
	float: left;
	width: 510px;
	overflow: hidden;
}


table.gallery img {
	border: 1px solid #333;
}

td.gallerySelect {
	padding-top: 5px;
	padding-right: 8px;
}


#content ul li,
#content li {
	text-align: left;
	padding-left: 14px;
	margin: 6px 0px;
	list-style-type: none;
}

#content ol, #content ol li {
	list-style-type: decimal;
	margin: 6px 0px 6px 10px;
	padding: 0;
}

#content .highlight-red-bold {
	font-weight: bold;
	font-style: italic;
}

#content a {
	font: 10px/1 Verdana, "Trebuchet MS", Arial, sans-serif;
	display: inline;
	text-align: left;
	color: #333;
	padding: 0 0 0 10px;
	text-decoration: none;
}

#content table.sidemenu a.expressMore {
	font: 10px/1 Verdana, "Trebuchet MS", Arial, sans-serif;
	display: inline;
	text-align: left;
	color: #333;
	padding: 0 0 0 10px;
	text-decoration: none;
	margin:0;
}

#content a.nolink {
	padding: 0;
	background: 0 !important;
	color: inherit;
	border-bottom: 1px dotted #333;
}
#content a.image {
	background: 0;
	padding: 0;
	margin: 0 ;
}


div.clickToPay {
    border-top: 1px solid #DBB066;
    text-align: center;
    padding-top: 5px;
}

#content a.media-link,
#content a.media-download {
	background: 0;
	padding: 0 0 0 20px;
	display: block;
	height: 22px;
	line-height: 22px;
	font-weight: bold;
}

#content a.media-download {
	background: url(/web/media/base/images/media-download.gif) 0 0 no-repeat;
}

#content a.media-link {
	background: url(/web/media/base/images/media-link.gif) 0 0 no-repeat;
}

#content a.media-link:hover,
#content a.media-download:hover {
	padding: 0 0 0 20px;
	font-weight: bold;
}

#content a.link-inklusivleistung {
	background: 0;
	padding: 0 0 0 24px;
	display: block;
	height: 22px;
	margin-bottom: 5px;
	line-height: 22px;
	font-weight: normal;
	background: url(/web/media/base/images/icon-home.gif) 0 0 no-repeat;
}

#content a.link-anfrage {
	background: 0;
	padding: 0 5px;
	display: block;
	height: 22px;
	line-height: 22px;
	width: 140px;
	font-weight: normal;
	margin-top: 5px;
	border: 1px solid #333;
	text-align: center;
}

#content table.flatRatePrice {
	border-top: 1px solid #333; 
	width: 400px;
	margin: 0 auto;
	margin-top: 9px;
}

#content table.flatRatePrice td,
#content table.flatRatePrice th {
	border-bottom: 1px solid #333; 
	padding: 2px 8px;
}

#content table.flatRatePrice td a.trans,
#content table.flatRatePrice th a.trans {
	background: 0;
	padding: 0;
}

#content .beautyTreat a.beauty {
	padding: 0 0 0 10px;
	display: block;
	height: 20px;
	margin: 0 0 3px 0;
	line-height: 20px;
	font-weight: normal;
}

#content table.beautydetails {
	border: 1px solid #333;
	margin: 5px 0;
}

#content table.beautydetails td.beautyTreatHeadline {
	border-bottom: 1px solid #333;
	text-align: center;
	padding: 5px;
}

#content table.beautydetails td.beautyTreatHeadline a {
	background: 0;
	padding: 0;
	text-align: center;
}


#content a.logolink {
	font: 10px/1 Verdana, "Trebuchet MS", Arial, sans-serif;
	display: inline;
	background: 0;
	text-align: left;
	color: #333;
	padding: 0;
	text-decoration: none;
}


#content table.beautyPrices td {
	padding: 5px;
	text-align: left;
	color: #fff;
}

/* Added after the fact */
h1 {
	border-color:#333;
	border-bottom-style:solid;
	border-bottom-width:0;
	font-weight:bold;
	padding-bottom:2px;
	padding-top:2px;
}
table.recommend {
	width:450px;
}
table.recommend td {
	padding: 4px 4px 4px 0;
	vertical-align:middle;
}

table.couponTable th,
table.couponTable td {
	text-align: left;
}


table.coupon td input,
table.coupon td textarea,
table.coupon select.coupon {
	width: 245px;
	margin-top: 5px;
}

div.roomButton, div.buttonBookingRequest {
	border-color:#333;
}
div.buttonBookingRequest {
	background-position:right center;
	background-repeat:repeat-y;
	border-style:solid;
	border-width:1px;
	height:14px;
	padding-bottom:3px;
	padding-top:1px;
	text-align:center;
	width:100px;
	line-height: 16px;
}
#content div.buttonBookingRequest a {
	line-height: 14px;
	background-color: transparent;
}


input, textarea, select {
	border-style:solid;
	border-width:1px;
	border-color:#333;
	font-size: 9px;
	padding:2px;
}

select.contact {
	border-style:solid;
	border-width:1px;
	border-color:#333;
	font-size:10px;
	width: 170px;
}

table.jobApp td,
table.jobApp th {
	text-align: left;
	padding: 2px 3px;
	vertical-align: top;
}

table.jobApp .dropDownMiddle {
	width: 140px;
}

table.jobApp .textSmall {
	width: 70px;
}

table.jobApp .textNormal {
	width: 60px !important;
}

table.jobApp .textMiddle {
	width: 140px;
}

table.jobApp textarea {
	width: 230px;
}

table.jobApp h1 {
	margin-top: 10px;
}

#content table.jobApp a {
	background: 0;
	padding: 0;
}

#content table.jobApp div.buttonBookingRequest {
	float: right;
	margin: 0 !important;
	height: 15px !important;
	margin-right: 15px !important;
}

#content table.jobApp div.buttonBookingRequest a {
	background: 0;
	padding: 0 0 0 12px;
	background: url(/web/media/base/images/menu-arrow.gif) no-repeat scroll 0 -3px;
}

table.contactAddress td,
table.contact td {
	text-align: left;
}


table.contact td {
	padding: 2px 0;
}

#content div.buttonBookingRequest.alignright {
	margin-right: 40px;
}

#content div.buttonBookingRequest.buttonCouponRequest {
	float: right;
	margin: 8px 153px 0 0 !important;
}


/* Brochure Request */

table.brochureRequest td {
	text-align: left;
}

table.brochureRequest td input {
	margin: 5px 0;
}

table.pressReg {
	width: 480px;
}

/* express request */

div.expressSmall {
	float: left;
	width: 255px;
	overflow: hidden;
}

div.expressLarge {
	width: 510px;
	clear: both;
	overflow: hidden;
}

div.expressLine {
	clear: both;
	margin: 3px 0px;
}

div.expressDesc1 {
	float: left;
	width: 70px;
	padding: 4px 0px;
	overflow: hidden;
}

div.expressDate {
	float: left;
	width: 140px;
	overflow: hidden;
}

div.expressRequired {
	float: left;
	width: 10px;
	padding: 4px 0px;
	overflow: hidden;
}

div.expressDesc2 {
	float: left;
	width: 50px;
	padding: 4px 0px;
	overflow: hidden;
}

div.expressDesc3 {
	float: left;
	width: 50px;
	padding: 4px 4px;
	overflow: hidden;
}

div.expressDesc4 {
	float: left;
	width: 184px;
	padding: 4px 4px;
	text-align: right;
	overflow: hidden;
}

div.expressPersDesc {
	float: left;
	width: 70px;
	padding: 4px 0px;
	overflow: hidden;
}

div.expressPersVal {
	float: left;
	width: 170px;
}

div.expressPersVal2 {
	float: left;
	width: 440px;
	overflow: hidden;
}

div.expressPersZipDesc {
	float: left;
	width: 70px;
	padding: 4px 0px;
	overflow: hidden;
}

div.expressPersZipVal {
	float: left;
	width: 60px;
	overflow: hidden;
	height: 21px;
}

div.expressPersLocDesc {
	float: left;
	width: 30px;
	padding: 4px 0px;
	overflow: hidden;
}

div.expressPersLocVal {
	float: left;
	width: 80px;
}

div.expressInfoVal {
	float: left;
	width: 25px;
	overflow: hidden;
	height: 21px;
}

div.expressInfoDesc {
	float: left;
	width: 255px;
	padding: 4px 0px;
	overflow: hidden;
}

div.expressInfoVal2 {
	float: left;
	width: 20px;
	overflow: hidden;
	height: 21px;
}

div.expressInfoDesc2 {
	float: left;
	width: 70px;
	padding: 4px 0px;
	overflow: hidden;
}

div.expressDate .date {
	width: 110px;
	float:left;
}

div.expressLine .small {
	width: 45px;
}

div.expressLine .extraSmall {
	width: 13px;
	text-align: center;
}

div.expressLine .salutation {
	width: 170px;
}

div.expressLine .large {
	width: 162px;
}

div.expressLine .note {
	width: 417px;
	height: 50px;
}

div.expressLine .zip {
	width: 170px;
}

div.expressLine .location {
	width: 72px;
}

div.expressPadding {
	padding: 4px 0px;
	height: auto;
	font-weight: bold;
}

/* ++++++++ Booking Request ++++++++ */

table.bookingRequest
{
	width:510px; 
}

#content table.bookingRequest div.buttonBookingRequest {
	margin: 0 !important;
}

#content table.jobsTable th,
#content table.jobsTable td,
#content table.jobApp th,
#content table.jobApp td {
	text-align: left;
}

table.bookingRequest td,
table.bookingRequestSub td,
table.bookingRequestSub th
{
	padding:4px;
	margin: 3px 0;
	text-align: left;
}

table.bookingRequest th
{
	padding:4px;
	padding-top:6px;
	text-align: left;
}

table.bookingRequestSub th
{
	padding:0;
	padding-top:2px;
	padding-bottom:4px;
	padding-right:4px;
	text-align: left;
}

table.liste td, 
table.liste th {
	text-align: left;
}

div.roomPrice
{

	width:474px;
	float:left;
	margin-top:8px;
	margin-left:6px;
}

table.roomPrices, table.liste
{
	width:100%;
	border-collapse: separate;
	border-spacing:3px;
	border-width:1px;
	border-style:solid;
	border-color: #f4d87d;
}

table.roomPrices td, table.roomPrices th,
table.liste td, table.liste th
{
	padding:2px;
	border-width:1px;
	border-color: #f4d87d;
	border-style:solid;
}


table.liste th, table.roomPrices th
{
	background-color: #f2d777;
}

table.liste td, table.roomPrices td
{
	background-color: #fcf3d7;
}

table.roomPrices th
{
	/*text-transform:uppercase;*/
	font-weight: normal;
	text-align: center;
}


table.bookingRequest input.small
{
	width:47px;
	margin-bottom: 5px;
	text-align:center;
}

table.bookingRequest input.large
{
	width:160px;
}

table.bookingRequest select.room
{
	width:173px;
}

table.bookingRequest select.day { width:50px; }
table.bookingRequest select.month { width:70px; }
table.bookingRequest select.year { width:52px; }


table.bookingRequest select.flatRate
{
	width:230px;
}

table.bookingRequest select.salutation
{
	width:166px;
}

table.bookingRequest textarea.note
{
	width:220px;
	height:50px;
}

table.bookingRequest textarea.dateAltText
{
	width:220px;
	height:36px;
}

table.bookingRequest td.spacer
{
	font-size:0;
	line-height:0;
}

table.bookingRequestSub td
{
	padding:0;
	padding-bottom:4px;
	padding-right:4px;
}

div.errorMsg
{
	width:170px;
	padding-top:4px;
	color:red;
	text-align:left;
}

div.buttonBookingRequest
{
	border-width:1px;
	border-style:solid;
	background-position:right;
	background-repeat:repeat-y;
	width:100px;
	height:14px;
	text-align:center;
	padding-top:3px;
	padding-bottom:1px;

}

div.siteMap
{
	border-width:0px;
	border-style:solid;
	padding:0px;
}

table.recommend
{
	width:450px;
}
table.recommend td
{
	padding:4px;
	padding-bottom:12px;
	vertical-align:middle;
}

table.contact table td, table.contact table th
{
	padding:4px 0 3px 1px; 
}

table.contact table th
{
	padding-left:0;
	padding-top:7px;
	padding-right:0px;
}

select.contact, table.contact table input
{
	width:150px;
}

table.contact table input.date
{
	width:132px;
}

table.contact table input.time
{
	width:60px;
}

table.contact div.errorMsg
{
	width:150px;
}

table.contactAddress table td
{
	padding:2px;
}

div.flatRateBookingButton
{
	float:left;
	margin-top:4px;
	margin-left:158px;
}



/* Teaser */
table.teaserBg {
	height:165px;
	margin:auto;
	width:240px;
}

.homePageContents table.teaserBg {
	margin:auto;
	width:434px;
}

table.teaserBg tr td {
	padding: 0 0 0 0;
}

table.teaserBg tr td table tr td {
	padding: 0;
}

table.teaser {
	margin:auto;
	overflow:hidden;
	width:434px;
	display:block;
}

table.teaser .teaserText {
	overflow: hidden;
	margin-left: 7px;
	height: 105px;
	text-align: left;
}

#content .teaserImage img {
	border: 1px solid #999;
}

#content table.snapShotGallery img.content {
	margin: 0px 5px 0 2px;
}

#content .teaserLink {
	padding-top: 0;
	padding-right: 15px;
	padding-right: 15px;
	text-align: right;
}

#content a.teaserMoreinfo {
}

div.newsTeaserContent {
	padding: 0 5px;
	text-align: left;
	margin-left: 25px;
}

div.newsTeaserContent div {
	padding: 0 5px;
	text-align: left;
}

div.newsTeaserMore {
	text-align: right;
	padding: 3px 0 3px 0;
	margin-left: 0px;
}


a.newsTeaserMore {
	font: 10px/1 Verdana, "Trebuchet MS", Arial, sans-serif;
	display: block;
	background: url(/web/media/base/images/menu-arrow.gif) 0 4px no-repeat !important;
	color: #333;
	margin-right: 10px !important;
	margin-bottom: 8px !important;
	padding: 3px 0 3px 12px !important;
	text-decoration: none;
	float: right;
	overflow: hidden;
	zoom: 1;
}

#content div.siteMap table.sidemenu {
	background:transparent url(/web/media/base/images/bg-menu-content-su.gif) no-repeat scroll left -15px;
	margin:0;
	width:173px;
}

#content div.siteMap table.sidemenu a {
	margin-left: 8px;
}

#content div.siteMap table.sidemenu .menudate {
margin:0 0 0 16px;
}

#content div.siteMap table.sidemenu td.bottom {
	height: 14px;
	background: url(/web/media/base/images/bg-menu-bottom-content.gif) bottom left no-repeat;
}

#content div.siteMap table.sidemenu {
	margin-top: 10px;
}

#content div.siteMap table.sidemenu td.headline {
border-left:0 none;
border-right:0 none;
padding:5px 0 9px 10px;
text-align:left;
}

div.siteMap div.newsTeaserContent {
margin-left:0;
padding:0 5px;
text-align:left;
}


/* Rooms */
#content div.room-size {
	display: block;
	font-weight: bold;
	border-bottom: 1px solid black;
	padding: 0 0 3px 0;
}

#content .roomPrice {
	margin: 10px 0;
}

#content div.room-description {
	text-align: left;
}

#content tr.room-price-line td {
	border-bottom: 1px solid black;
	height: 5px;
}

#content tr.room-price-header td {
	width: 25%;
	font-weight: bold;
	text-align: left;
	border-left: 1px solid black;
	padding-left: 4px;
}

/* Footer */
#footer {
	font: 11px/20px "Century Gothic","Trebuchet MS", Verdana, Tahoma, Arial, sans-serif;
	font-weight: bold;
	display: block;
	width: 760px;
	clear: both;
	height: 21px;
	margin: -21px auto 0 auto;
	text-align: center;
	background: #FFFFFF;
	overflow: hidden;
	padding: 0;
	color: #333;
}

#footer a {
	color: #333;
	font: 11px/20px "Century Gothic","Trebuchet MS", Verdana, Tahoma, Arial, sans-serif;
	text-decoration: none;
	font-weight: bold;
}

#footer img {
	vertical-align: middle;
}

/* Site Map */

input#searchString {
	border: 1px solid #B5B5B5;
	width: 150px !important;
}

/* inline videos */

div#video-container {
	text-align: center;	
}

div#playlist-container, div#playlist-links {
	text-align: center;
}

div#playlist-links a {
	text-align: left;
	display: block;
	margin: 0 auto;
}
/*******************************************************************************************/
/*                                           HACKS                                         */
/*******************************************************************************************/
/* These are page wide hacks, curtesy of Alex - better ask him what this stuff is good for */
/*******************************************************************************************/


/* Yeah, I love that one. It's really pretty nice and applies only to ie8 */
html:first-child [id|=menu-content] div { 
	height: 22px;
}

html:first-child [id|=menu-content] img { 
	vertical-align: top;
}

.calendar {
	width: 210px;
	overflow: hidden;
}

.staticMargin {
	margin-top: 35px;
}

textarea {
	font: 10px/1.2 Verdana, "Trebuchet MS", Arial, sans-serif !important;
	overflow: auto;
}
