@charset "utf-8";
/* heartbeat-online.org v10 STYLESHEET 0.3 */
/* 19-09-12 by agent */

* {
	margin: 0px;
	padding: 0px;
	border: none;
}

html {
	height: 100%;
	overflow-x: auto;
	overflow-y: scroll;
}


body {
	width: 100%;
	height: 100%;
	margin: 0px;
	/*font-family: Arial, Helvetica, sans-serif;*/
	font-family: 'Roboto', sans-serif;
	font-size: 13px;
	line-height: 22px;
	background-color: #668c12;
	/*background-image: url(../images/bg.jpg);*/
	color: #2b2b2b;
}

.clearfix:after {
    content: ".";
    clear: both;
    display: block;
    visibility: hidden;
    height: 0px;
}

div {
	position: relative;
}

ul {
	margin: 11px 0;
	padding-left: 40px;
	list-style-image: url(../images/listitem_square_black.png);
}

ul.spacer li {
	margin-bottom: 12px;
}



p {
	margin: 11px 0;	
}

a {
	color: #2b2b2b;
	text-decoration: none;
	outline: none;
}

a span, a.highlight, a.downplay {
	border-bottom-style: dotted;
	border-bottom-width: 1px;
	border-bottom-color: #1c4181;
	font-size: inherit;
}

a.highlight, a.highlight:hover {
	color: #d20033 !important;
}

a.downplay, a.downplay:hover {
	color: #aaa !important;
}

a:hover {
	color: #d20033;
	text-decoration: none;
}

a:hover span, a.highlight:hover, a.downplay:hover {
	border-bottom-style: solid;
}

/* resetting border, margin and padding */
h1, h2, h3, img {
	margin: 0px;
	padding: 0px;
	border: none;
}

/* h1: invisible header */
h1 {
	font-size: 0;
	margin: 22px 110px 0px 0px;
	float: right;
}

/* h2: box title */
h2 {
	font-family: 'Roboto', sans-serif;
	color: #d20033;
	font-size: 22px;
	font-weight: normal;
	margin-bottom: 14px;
}

h2 span.date {
	color: #a1a1a1;
}

h2 span.breadcrumb, h2 span.breadcrumb a {
	color: #a1a1a1;
}


h2 span.breadcrumb a:hover {
	color: #d20033;
	border-bottom-color: #d20033;
}


/* h3: gadget title */
h3 {
	font-family: 'Roboto', sans-serif;
	font-size: 19px;
	font-weight: normal;
	margin-bottom: 6px;
}

.box.gadget h3 {
	color: #668c12;
	font-size: 23px;
	margin-bottom: 6px;
}


h4 {
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	font-weight: normal;
	margin-top: 28px;
	margin-bottom: 6px;
	line-height: normal;
}

/* h5: microdivider (impressum) */
h5 {
	padding-top: 4px;
	font-size: 13px;
	font-weight: bold;
	margin: 15px 0 -5px;
}

div.clear {
	clear: both;
}

.right {
	float: right;
	text-align: right;
}

.left {
	float: left;
	text-align: left;
}

.block {
	display: block;
}

span.error, a.error {
	color: #ff0000 !important;
}

span.success, a.success {
	color: #00a40e !important;
}

span.normal, a.normal {
	font-weight: normal;
}

input, textarea, a.button {
	/*font-family: Arial, Helvetica, sans-serif;*/
	font-family: 'Roboto', sans-serif;
	border: 1px solid #aaa;
	font-size: 13px;
	color: #4f4f4f;
	
	margin-bottom: 3px;

	float: left;
}

input.text:focus, textarea:focus {
	border-color: #666;
}

input.radio, input.checkbox {
	margin-right: 4px;
	margin-top: 4px;
	clear: left;
}

a.button {
	display: block;
}

input.text, textarea, input.button, a.button {
	background-color: #ffffff;

	padding: 3px 5px;
	margin-right: 5px;
	
	-moz-border-radius: 4px; 
	-webkit-border-radius: 4px; 
	border-radius: 4px;
}

input.text.hint, textarea.hint {
	color: #6b6b6b;
}

input.button, a.button {
	background-repeat: no-repeat;
	background-position: right center;
	font-size: 15px;
	padding: 2px 26px 2px 5px;
}

input.button.center, a.button.center {
	margin: 4px auto;
	float: none;
}

input.button.micro {
	padding: 0px;
	border: none;
	height: 24px;
	width: 24px;
	margin-right: 0px;
	background-position: center center;
}

input.button.go, a.button.go {
	background-image: url(../images/button_go.png);
}



input.button:hover, input.button:focus, input.button:active, a.button:hover, a.button:focus, a.button:active {
	cursor: pointer;
	border-color: #d20033;
	background-color: #eee;
}

input.text.small {
	height: 18px;
	width: 148px;
}

input.text.med {
	height: 18px;
	width: 220px;
}

input.text.large {
	height: 18px;
	width: 260px;
}

input.text.xxl {
	height: 18px;
	width: 420px;
}

input.checkbox {
	float: none;
}

div.box.gadget input.text.withMicroButton {
	width: 213px;
	border-style: none;
}

div.box.gadget input.text.full {
	width: 212px;
}

textarea.xl {
	width: 628px;
	height: 105px;
}

label.hint {
	color: #878787;
}

.bigtext {
	font-size: 15px;
}






div#outerWrapper {
	min-height: 100%;
	
	background-position: center top;
	background-image: url(../images/bg.jpg);
	background-repeat: repeat;
/*	background-attachment: fixed; */
	
	float: left;
	/*margin-left: -285px;*/
	width: 100%;
	min-width: 960px;
	overflow: hidden;
}




div#header {
	width: 960px;
	height: 247px;

	background-image: url(../images/header.jpg);
	background-repeat: no-repeat;
	background-position: left top;
	
	margin: 0px auto;
}


div#naviWrapper {
	height: 52px;
	/*border-bottom: 2px solid #cec022;*/
	width: 928px; /* 960px - 2x16px padding */
	margin: 0px auto 6px;
	padding: 0px 16px;
	
	background: rgb(255,255,255);
	background: rgba(255,255,255,0.9);
	
	-webkit-border-top-left-radius: 5px;
	-moz-border-radius-topleft: 5px;
	border-top-left-radius: 5px;
}

ul#navi {
	float: left;
	padding: 0px;
	/*height: 46px;*/
	margin: 0px;
	
	
	clear: left;
	float: left;
	list-style: none;
	margin: 0;
	padding: 0;
	position: relative;
	
	font-size: 23px;
	font-family: 'Roboto', sans-serif;
}

ul#navi li {
	float: left;
	display: block;
	
	list-style: none;
	padding: 0px 30px 0px 0px;
	position: relative;
}

ul#navi li a {
	display: block;
	height: 36px;
	float: left;
	
	padding-top: 16px;
}


ul#navi li a:hover, ul#navi li a.active {
	color: #d20033;
}



div#contentlayer {
	width: 960px;
	
	padding: 0px;
	margin: 0px auto;
}



/*
div#wrapper {
	padding-top: 70px;
	width: 948px;
	margin-left: auto;
	margin-right: auto;
	border-width: 0px 1px;
	border-style: solid;
	border-color: #b3b3b3;

}
*/
body.home div#wrapper {
	/* home page body modifications */
}

div#mainColumn {
	width: 670px;
	float: left;
	clear: left;
	margin-bottom: 280px;
}

div#contentWrapper {
	float: left;

	width: 638px; /* 670px total - 2x 16px padding */
	padding: 60px 16px 16px;
	
	background: -moz-linear-gradient(top, rgba(255,255,255,0.9) 0%, rgba(255,255,255,1) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,0.9)), color-stop(100%,rgba(255,255,255,1))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, rgba(255,255,255,0.9) 0%,rgba(255,255,255,1) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, rgba(255,255,255,0.9) 0%,rgba(255,255,255,1) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top, rgba(255,255,255,0.9) 0%,rgba(255,255,255,1) 100%); /* IE10+ */
	background: linear-gradient(to bottom, rgba(255,255,255,0.9) 0%,rgba(255,255,255,1) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ccffffff', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
}

div#contentWrapper.wide {
	width: auto !important;
	float: none !important;
	
	margin-bottom: 200px;
}

div#gadgetWrapper {
	width: 284px;
	padding: 0px 0px 30px 6px;
	float: left;
}

div#footer {
	height: 210px;
	width: 100%;
	position: absolute;
	bottom: 0px;
	/*background-image: url(../images/corporate.png);
	background-repeat: repeat-x;
	background-position: bottom;*/
	z-index: 200;
}

div#footer span.corporatebg {
	background-image: url("../images/corporate.png");
	background-repeat: repeat-x;
	bottom: 0;
	display: block;
	height: 210px;
	overflow: hidden;
	position: absolute;
	width: 50%;
}

div#footer span.corporatebg.cbg-left {
	left: -115px;
}

div#footer span.corporatebg.cbg-right {
	right: -115px;
}

div#footer img {
	position: absolute;
	left: 50%;
	bottom: 0%;
	margin-left: -115px;
}

div#footer img.right {
	right: 0px;
}

div#footer img.left {
	left: 0px;
}

/*
 * boxes
 */
div.box, a.box {
	clear: both;
}


div.box.main {
	margin-bottom: 55px;
}



div.box.message, a.box.message {
	width: 638px; /* 670px total - 2x 16px padding */
	padding: 16px 16px 16px;
	margin: 0px 0px 1px 0px;
	float: left;
	clear: left;
	
	background-color: #eed7d3;
	
	-webkit-border-top-left-radius: 5px;
	-moz-border-radius-topleft: 5px;
	border-top-left-radius: 5px;
}

div.box.message.inline {
	width: 100%;
	border-radius: 0px !important;
	margin: 0px -16px 28px;
}

div.box.message h2 {
	margin-bottom: 18px;
}

div.box.message p:last-child, div.box.message ul:last-child {
	margin-bottom: 0px;
}

div.box.message.error, #contentWrapper.error {
	background-color: #eed7d3;
}

div.box.message.alert {
	background-color: #e8e79e;
}

div.box.message.error span.balloon.icon.red-warning {
	background-image: url('../images/balloon-red-icon_red-warning.png');
}

div.box.message.error h2, div.box.message.error a {
	color: #dd0505;
}

div.box.message.error ul {
	list-style-image: url(../images/listitem_square_red.png);
}

div.box.message.success {
	background-color: #daf3d1;
}

div.box.message.success h2, div.box.message.success a {
	color: #668c12;
}

div.box.message.success ul {
	list-style-image: url(../images/listitem_square_green.png);
}

div.box.message.success span.balloon.icon.green-check {
	background-image: url('../images/balloon-green-icon_green-check.png');
}

a.box.message.facebook, a.box.message.next {
	font-size: 22px;
	margin-top: 6px;
	text-align: right;
}

a.box.message.facebook {
	background-color: #3B5998;
	color: #FFFFFF;
}

a.box.message.facebook:hover {
	background-color: #4d6db1;
}

a.box.message.next {
	background-color: #ee772a;
	color: #FFFFFF;
}

a.box.message.next:hover {
	background-color: #f78b46;
}




/*
 * gadgets
 */
div.gadget {
	width: 252px;
	/*border: 1px solid #a2a2a2;*/
	
	padding: 16px;
	
	margin-bottom: 12px;
	
	
	background: rgb(255,255,255);
	background: rgba(255,255,255,0.8);
	
	-webkit-border-top-left-radius: 5px;
	-moz-border-radius-topleft: 5px;
	border-top-left-radius: 5px;
	
	/*line-height: normal;*/
}

div.gadget h3 {
	color: #668c12;
	font-size: 23px;

	margin: 0px 0px 40px;
}

.gadget-facebook {
	text-align: center;
}

div.gadget p:first-child {
	margin-top: 0px;
}

div.gadget p:last-child {
	margin-bottom: 0px;
}

.gadget .sm-links .icon {
	text-align: center;
}

.gadget .sm-links .icon img {
	width: 50px;
	height: 50px;
	
	filter: grayscale(100%) contrast(0%) brightness(0.3);
	-webkit-filter: grayscale(100%) contrast(0%) brightness(0.3);
	
}

.gadget .sm-links a.icon:hover img {
	filter: none;
	-webkit-filter: none;
}

.smallAntispacer {
	margin-bottom: -10px;
}

.antispacer {
	margin-bottom: -20px;
}

.bigAntispacer {
	margin-bottom: -30px;
}

.smallSpacer {
	margin-bottom: 10px;
}

.spacer {
	margin-bottom: 20px;
}

.topSpacer {c
	margin-top: 20px;
}

.bigSpacer {
	margin-bottom: 30px;
}

div.gadget p.hint {
	font-size: 10px;
	line-height: normal;
	color: #666;
}



/*
div.box.gadget.gadget-newsletter {
	height: 104px;
	background-image: url(../images/gadgets/newsletter.jpg);
	padding-top: 134px;
}

div.box.gadget.gadget-newsletter input {
	float: left;
	margin-left: 5px;
}

div.box.gadget.gadget-db {
	height: 97px;
	background-image: url(../images/gadgets/db.jpg);
	padding-top: 118px;
}

div.box.gadget.gadget-db input {
	float: left;
	margin-left: 5px;
}

div.box.gadget.gadget-googlemaps {
	height: 97px;
	background-image: url(../images/gadgets/googlemaps.jpg);
	padding-top: 118px;
}

div.box.gadget.gadget-googlemaps input {
	float: left;
	margin-left: 5px;
}

div.box.gadget.gadget-facebook {
	height: 87px;
	background-image: url(../images/gadgets/facebook.jpg);
	padding-top: 128px;
	padding-left: 70px;
	width: 138px;
}
*/

div#fb_likehbcontainer {
	text-align: center;
}

/*
div.box.gadget.gadget-facebook a.invisiblelink {
	display: block;
	position: absolute;
	top: 14px;
	left: 14px;
	width: 145px;
	height: 60px;
	cursor: pointer;
}
*/



/*
  * news, guestbook, media
  */

div.pageList.standalone {
	color: #777;
	width: 625px;
	padding-top: 20px;
}

div.pageList.standalone a {
	color: #777;
}

div.pageList.standalone a:hover {
	color: #000;
}

/*
  * media
  */
div.box.media {
	padding-bottom: 0px;
}
  
div.box.media a.entry {
	display: block;
	float: left;
	width: 211px;
	text-align: center;
	margin-bottom: 20px;
}

div.box.media a.entry:hover {
	text-decoration: none;
}

div.box.media a.entry:hover span {
	/*text-decoration: underline;*/
}

div.box.media a.entry.disabled:hover span {
	text-decoration: none;
}

div.box.media a.entry span.preview {
	display: block;
	margin: 6px auto;
	
	width: 124px;
	height: 124px;
	
	background-repeat: no-repeat;
	background-position: center center;
	
	border: 1px solid #d20033 !important;
	
	-moz-border-radius: 5px; 
	-webkit-border-radius: 5px; 
	border-radius: 5px;
}

div.box.media a.entry img.mediaBorder {
	left: 0;
	position: absolute;
	top: 0;
	z-index: 1001;
}

	

/*
  * impressum
  */
.highlighted {
	font-weight: bold;
}

a.whiteLink, a.whiteLink:hover {
	color: #e0bd59;
}

img.logo {
	height: 140px;
	width: 220px;
	margin-top: 45px;
	margin-left: auto;
	margin-right: auto;
}


/*
  * home
  */
div#homeWrapper {
	height: 450px;
}

div#homeWrapper img {
	position: absolute;
}

div#homeWrapper img.hint {
	left: 150px;
	top: 0px;
}

div#homeWrapper img.hint-next {
	left: 340px;
	top: 50px;
}

div#homeWrapper img.thumbs {
	left: 80px;
	bottom: -80px;
}

div#homeWrapper img.arrow {
	left: 412px;
	top: 200px;
}




/*
  * anfahrt
  */
span.mapstitle {
	color: #1C4181;
	font-weight: bold;
	font-size: 13px;
}

span.mapstitle img.inline {
	margin-bottom: -3px;
}
  
div.gmnoprint {
	color: #222;
}

/*
 * feedback
 */  
table.feedback td {
	vertical-align: top;
	padding-bottom: 18px;
}

table.feedback td.desc {
	width: 350px;
}

textarea.feedback {
	width: 276px;
	height: 46px;
}

table.feedback label:hover {
	color: #1C4181;
}

table.feedback td.send {
	padding-top: 40px;
}

.rating span {
	display:block;
	height:100%;
	width:0;
	float: left;
	background-repeat: no-repeat;
}

.rating.feedback {
	background-image: url(../images/stars_inactive.png);
	height:20px;
	width:105px;
	background-repeat: no-repeat;
	background-position: 0px 0px;
	overflow:hidden;
	display:block;
	/*margin-left:-2px;*/
	cursor: pointer;
	margin: 0px;
	padding: 0px 0px;
	/*padding-left: 7px;
	padding-right: 8px;*/
	position: relative;
}

.rating.feedback span {
	background-image: url(../images/stars_active.png);
}

.rating.disabled {
	cursor: default !important;
}

table.register td.label {
	width: 170px;
}


/*
 * gallery
 */
div#galleryImageWrapper {
	text-align: center;
}

div#galleryImageContainer {
	display: inline-block;
}

div#galleryImageContainer a.control {
	height: 100%;
	position: absolute;
	top: 0px;
}

div#galleryImageContainer a.control.prev {
	left: -26px;
	width: 35%;
	z-index: 200;
}

div#galleryImageContainer a.control.next {
	left: 0px;
	width: 100%;
	margin-left: 26px;
	z-index: 100;
}

div#galleryImageContainer a.control span {
	display: block;
	width: 22px;
	height: 41px;
	
	position: absolute;
	top: 50%;
	margin-top: -20px;
	
	background-position: 0px 0px;
	background-repeat: no-repeat;
	
	border: none !important;
}

div#galleryImageContainer a.control:hover span {
	background-position: 0px -41px;
}

div#galleryImageContainer a.control.prev span {
	background-image: url(../images/arrow-prev.png);
	left: 0px;
}

div#galleryImageContainer a.control.next span {
	background-image: url(../images/arrow-next.png);
	right: 0px;
}

div#galleryImageContainer img {
	float: left;
}

/*
div#galleryImageContainer a.control {
	float: left;
	width: 24px;
}

div#galleryImageContainer img {
	float: left;
}
*/


span.galleryNavi {
	float: left;
	margin-bottom: 15px;
}

span.galleryNavi.backLink, span.galleryNavi.forwardLink {
	width: 247px;
}

span.galleryNavi.backLink a, span.galleryNavi.forwardLink a {
	color: #2b2b2b;
}

span.galleryNavi.backLink {
	text-align: right;
}

span.galleryNavi.forwardLink {
	text-align: left;
}

span.galleryNavi.info {
	text-align: center;
	width: 184px;
	color: #777;
}


/*
 * image container
 */

span.imageContainer {
	color: #555;
	margin-top: 6px;
	margin-bottom: 6px;
	display: block;
}

span.imageContainer.left {
	float: left;
	margin-right: 12px;
}

span.imageContainer.right {
	float: right;
	margin-left: 12px;
}

span.imageContainer.center {
	/*float: left;					// fix for wrong floating (now floating with text?) */
	/*width: 100%;					// new concept of auto-margin and no-flow */
	margin-left: auto;
	margin-right: auto;
	float: none;
}

span.imageContainer img {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

span.imageContainer span {
	display: block;
	padding: 3px 9px;
	margin-top: 16px;
}

span.centerImageWrapper {
	width:100%;
	float: left;
}

a.lightbox {
	display: block;
	width: 105px;
	height: 85px;
	padding: 0px;
	border: 1px solid #111;
	margin: 3px 4px 3px 5px;
	float: left;
	background-repeat: no-repeat;
	background-position: center center;
}

a.lightbox:hover {
	border: 1px solid #fdfdfd;
}

div.videoplayer {
	width: 914px;
	height: 514px;
	margin-left: auto;
	margin-right: auto;
}

div.oldBrowser {
	display: none;
}






/*
 * Home - RISIKO!
 */
p.risiko {
	border-width: 0px 0px 0px 2px;
	border-color: #666;
	border-style: solid;
	font-size: 16px;
	font-style: italic;
	margin: 12px 0px 40px;
	padding: 12px;
}

p.risiko span.regular {
	/*font-style: normal;*/
	color: #666;
}

div.risikoForm input.text {
	-moz-border-radius: 0px; 
	-webkit-border-radius: 0px; 
	border-radius: 0px;
	border-width: 0px 0px 1px 0px;
	
	padding: 4px 0px 0px;
	margin-left: 5px;
	
	background-color: transparent;
}

div.risikoForm input.button {
	margin-top: 16px;
	margin-bottom: 44px;
}












div.announcement {
	margin: 40px 0px;
	border-style: solid;
	border-width: 1px 0px;
}

div.announcement span {
	display: block;
	margin-left: 6px;
	margin-top: 11px;
}

div.announcement.green {
	border-color: #98b319;
	background-color: #edf1d6;
}

div.shareContainer {
	margin-top: 20px;
	padding-left: 90px;
}

div.shareContainer img.arr {
	margin-right: 40px;
	margin-top: 30px;
}

div.shareContainer div {
	float: left;
}

div.shareContainer img.testFbPreview {
	width: 141px;
	height: 148px;
	border: 1px solid #666;
}

div.shareContainer div:hover img.testFbPreview {
	border-color: #aaa;
}

div.shareContainer a.linkToFb {
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 143px;
	height: 150px;
	background-image: url(../images/fb_overlay.png);
	background-repeat: no-repeat;
	background-position: 40px 45px;
	background-color: rgba(255, 255, 255, 0.3);	
}

div.shareContainer div:hover a.linkToFb {
	background-color: transparent;
}

form.cup fieldset {
	background-color: rgba(255, 255, 255, 0.5);
	border: 1px solid #666;
	border-radius: 5px;
	padding: 12px;
	text-align: center;
	margin-bottom: 12px;
}

form.cup fieldset input.text {
	height: 26px;
}


form.cup fieldset.active {
	border-color: #d20033;
}

form.cup fieldset legend {
	color: #333;
	font-size: 1em;
	font-weight: bold;
	padding: 2px;
}

form.cup fieldset.active legend {
	color: #d20033;
}

form.cup fieldset label:not(.default) {
	color: #666;
	font-size: 0.85em;
}

form.cup fieldset input.text {
	float: none;
	margin-bottom: -2px;
	margin-top: 8px;
}

form.cup p.hint {
	color: #666;
	font-size: 0.85em;
	line-height: 1.4em;
}

#karte {
	background-image: url('../images/map-prv.jpg');
	background-repeat: no-repeat;
	background-size: cover;
}

#karte .enable {
	box-sizing: border-box;
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.4);
	color: #fff;
	text-align: center;
	padding: 1em;
	position: relative;
	-webkit-transition: background-color 0.5s;
	-moz-transition: background-color 0.5s;
	-o-transition: background-color 0.5s;
	transition: background-color 0.5s;	
}

#karte .enable:hover {
	background-color: rgba(0,0,0,0.6);
}

#karte .enable h5 {
	margin-top: 8em;
	font-size: 1.5em;
}

#karte .enable .footer {
	margin-top: 5em;
}