/*-------------------------------------------------------------------------------------

  Copyright (c) 2014 Pixelzauber GmbH, Switzerland
  CSS definition for main stylesheet
    
-------------------------------------------------------------------------------------*/

* {
    margin: 0;
    padding: 0;
}

html {
    margin: 0;
    padding: 0;
    height: 100%;
}

body {
    height: 100%;
}

fieldset,
img {
    border: 0;
}

.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}

.clearfix {
    display: inline-block;
}

html[xmlns] .clearfix {
    display: block;
}

* html .clearfix {
    height: 1%;
}


/**
 * ANCHOR Layout
 *
 */
#wrapper,
#header,
#top-navigation,
#header-image,
#mobile-navigation,
#main,
#section,
#footer,
#footerInside {
    float: left;
    width: 100%;
    height: auto;
    z-index: 10;
}

.inner {
    margin: 0 auto;
    width: 960px;
    height: auto;
}

#wrapper {
    margin: 0;
    height: 140px;
}

#header {
    position: fixed;
    top: 0;
    left: 0;
    padding: 0;
    background: rgb(255, 255, 255) url(../images/bg_header.png) 0 bottom repeat-x;
}

#logo {
    float: left;
    margin: 10px 0 10px 0;
    padding: 0;
    width: 220px;
    height: auto;
}

#logo img {
    float: left;
    width: 100%;
    height: auto;
}

#top-navigation {
    float: right;
    margin: 78px 20px 0 0;
    width: auto;
}


#mobile-navigation-button {
    float: right;
    margin: 90px 4% 0 0;
    width: 40px;
    height: 35px;
    display: none;
    text-align: right;
    cursor: pointer;
    background: transparent url(../images/mobile_navigation.png) no-repeat;
    background-size: 40px auto;
}

#mobile-navigation-button.close {
    background: transparent url(../images/close.png) 5px 2px no-repeat;
}

#mobile-navigation-button img {
    float: right;
    padding: 0;
    width: 50px;
    height: auto;
    cursor: pointer;
}

#header-image {
    float: left;
    margin: 0;
    padding: 0;
    width: 100%;
    height: auto;
    min-height: 1px;
    z-index: 1;
}

#header-map {
    position: relative;
    float: left;
    margin: 0;
    padding: 0;
    width: 100%;
    height: calc(50% - 140px);
    z-index: 1;
}


#mobile-navigation {
    padding: 0 4% 20px 4%;
    width: 92%;
    display: none;
}

#main {
    padding: 40px 0 120px 0;
}

#navigation {
    float: left;
    width: 34%;
}

#contact {
    float: left;
    padding-top: 30px;
    margin-top: 30px;
    width: 100%;
}

#content {
    float: left;
    margin: 0 20px;
    width: calc(100% - 40px);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.contactForm {
    margin: 50px auto;
    width: 620px;
}

.smallFrame {
    margin: 20px auto;
    width: 620px;
}



.bubbleFrame {
    float: left;
    margin: 40px -20px;
    width: calc(100% + 40px);
}

.bubble {
    display: inline-block;
    position: relative;
    float: left;
    margin: 20px;
    width: calc(33.33% - 40px);
    border-radius: 50%;
    background: transparent url(../images/placeholder.jpg) center center no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    cursor: pointer;
}

.bubble:before {
    content: "";
    display: block;
    padding-top: 100%;
}

.bubble h2 {
    margin: 0;
    font-weight: 700;
}

.bubble:hover {
    background-image: none !important;
    background: rgb(233, 129, 49);
}

.bubble:hover h2 {
    color: rgb(255, 255, 255);
}

.bubble .inFrame {
    position: absolute;
    top: 0;
    left: 0;
    padding: 0;
    width: 100%;
    height: 100%;
}

.content-a {
    margin: 0 auto;
    width: 100%;
    height: 100%;
    display: table;
}

.content-b {
    display: table-cell;
    position: relative;
    vertical-align: middle;
    text-align: center;
}




#footer {
    padding: 30px 0 32px 0;
    background-image: linear-gradient(rgb(222, 222, 222), rgb(255, 255, 255), rgb(255, 255, 255));
    font-size: 0.9em;
}

#footer .logo {
    float: left;
    margin: 0 80px 0 20px;
    width: 160px;
}

#footer .logo img {
    float: left;
    width: 100%;
    height: auto;
}

#footer .address {
    float: left;
    margin-top: 30px;
}

#goUp {
    display: none;
    position: fixed;
    margin-top: -80px;
    margin-left: 100%;
    top: 100%;
    left: -40px;
    height: 40px;
    width: 40px;
    z-index: 100;
    cursor: pointer;
    background: rgb(233, 129, 49) url(../images/goUp.png) center no-repeat;
}



/* Images */
.image-wrapper {
    float: right;
    margin: 0 0 10px 25px;
    width: 225px;
    height: auto;
}

.image {
    float: right;
    margin: 0 0 0 25px;
    width: 225px;
    height: auto;
}

.image-left {
    float: left;
    margin: 0 25px 0 0;
    width: 225px;
    height: auto;
}

.image-wrapper img,
.image-left img,
.image img {
    float: left;
    padding: 0 5px 5px 0;
    margin-bottom: 15px;
    background: transparent url(../images/bg_images.png) 100% 100% no-repeat;
}

.image-left img,
.image img {
    margin-bottom: 0px;
}


/* Images */
.imageFrame {
    display: inline-block;
    position: relative;
    width: 100%;
    margin: 0 0 10px 0;
    float: left;
    background: transparent url(../images/placeholder.jpg) center center no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.imageFrame:before {
    content: "";
    display: block;
    padding-top: 56.25%;
    /* 16:9 */
}


/* Video */
.responsive-iframe {
    position: relative;
    margin-top: 0px;
    margin-bottom: 20px;
    padding-bottom: 56.25%;
    padding-top: 0px;
    width: 100%;
    height: 0;
    overflow: hidden;
}

.responsive-iframe iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.mobile {
    display: none;
}

.desktop {
    display: block;
}

.block_05,
.block_10,
.block_15,
.block_20,
.block_25,
.block_30,
.block_33,
.block_35,
.block_40,
.block_45,
.block_50,
.block_55,
.block_60,
.block_65,
.block_66,
.block_70,
.block_75,
.block_80,
.block_85,
.block_90,
.block_95,
.block_100 {
    float: left;
    height: auto;
}

.block_05 {
    width: 5%;
}

.block_10 {
    width: 10%;
}

.block_15 {
    width: 15%;
}

.block_20 {
    width: 20%;
}

.block_25 {
    width: 25%;
}

.block_30 {
    width: 30%;
}

.block_33 {
    width: 33%;
}

.block_35 {
    width: 35%;
}

.block_40 {
    width: 40%;
}

.block_45 {
    width: 45%;
}

.block_50 {
    width: 50%;
}

.block_55 {
    width: 55%;
}

.block_60 {
    width: 60%;
}

.block_65 {
    width: 65%;
}

.block_66 {
    width: 66%;
}

.block_70 {
    width: 70%;
}

.block_75 {
    width: 75%;
}

.block_80 {
    width: 80%;
}

.block_85 {
    width: 85%;
}

.block_90 {
    width: 90%;
}

.block_95 {
    width: 95%;
}

.block_100 {
    width: 100%;
}

.form {
    float: left;
}

.addr {
    float: right;
}

body {
    font-family: 'Jost', Arial, Helvetica, sans-serif;
    color: rgb(51, 51, 51);
    font-size: 1.1em;
    font-weight: 400;
    text-align: left;
    -webkit-text-size-adjust: none;
}

h1,
.h1,
h2,
.h2,
h3,
.h3 h4,
.h4,
h5,
.h5,
h6,
.h6 {
    margin: 25px 0 15px 0;
    color: rgb(233, 129, 49);
    font-size: 2em;
    font-weight: 500;
    line-height: 1.1em;
}

h1,
.h1 {
    margin: 30px 0 20px 0;
}

h2,
.h2 {
    font-size: 1.5em;
}

h3,
.h3 {
    color: rgb(51, 51, 51);
    font-size: 1.2em;
}

h4,
.h4 {
    color: rgb(51, 51, 51);
    font-size: 1.0em;
}

.black {
    color: rgb(51, 51, 51);
}

.first {
    margin-top: 8px;
}

p {
    line-height: 1.3em;
    margin-bottom: 8px;
    -moz-hyphens: auto;
    -o-hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

a {
    color: rgb(233, 129, 49);
    text-decoration: none;
}

a:hover {
    color: rgb(0, 0, 0);
    text-decoration: none;
}

a.active {}

a[name],
a[name]:hover {
    color: rgb(51, 51, 51);
    text-decoration: none;
}

pre {
    padding: 10px 19px;
    margin: 18px 0 12px 0;
    line-height: 20px;
    width: auto;
    color: rgb(0, 0, 160);
    text-align: left;

    border: 1px solid rgb(200, 200, 200);
    background-color: rgb(240, 240, 240);

    overflow: auto;
    overflow-Y: hidden;
}

sup {
    line-height: 1.0em;
}

ul,
ol {
    text-align: left;
    padding: 0 0 8px 12px;
    margin: 0;
}

ul ul,
ol ol {
    padding: 0 0 0 12px;
    margin: 0;
}

li {
    padding: 0;
    line-height: 1.4em;
    margin: 0 0 0 2px;
}

ol li {
    margin-left: 15px;
}

ul {
    padding: 0 0 8px 0;
    list-style: none;
}

ul ul {
    padding: 0 0 0 13px;
}

ul li {
    padding: 0 0 4px 12px;
    background: transparent url(../images/bg_li.png) 0 -400px no-repeat;
}

b,
strong {
    font-weight: 500;
}

table {
    margin-bottom: 10px;
    font-family: 'Crimson Text', Georgia, "Times New Roman", Times, serif;
    font-size: 1.0em;
}

table th {
    border-bottom: 1px dotted rgb(0, 0, 0);
    font-weight: 600;
    padding: 2px 0;
}

table td {
    padding: 2px 0;
}

table.none,
table.none td {
    padding: 0px;
    margin-bottom: 0px;
}

/**
 * ANCHOR Customising
 *
 */
#content a.external {
    background: transparent url('images/icon_system.png') 100% 2px no-repeat;
    padding-right: 12px;
}

#content a:hover.external {
    background: transparent url('images/icon_system.png') 100% -98px no-repeat;
    padding-right: 12px;
}

#content a.pdf,
#content a:hover.pdf {
    background: transparent url('images/icon_system.png') 0 -198px no-repeat;
    padding-left: 20px;
    padding-right: 0;
}

#content a.doc,
#content a:hover.doc {
    background: transparent url('images/icon_system.png') 0 -298px no-repeat;
    padding-left: 20px;
    padding-right: 0;
}

#content a.xls,
#content a:hover.xls {
    background: transparent url('images/icon_system.png') 0 -398px no-repeat;
    padding-left: 20px;
    padding-right: 0;
}

#content a.ppt,
#content a:hover.ppt {
    background: transparent url('images/icon_system.png') 0 -498px no-repeat;
    padding-left: 20px;
    padding-right: 0;
}

#content a.jpg,
#content a:hover.jpg {
    background: transparent url('images/icon_system.png') 0 -598px no-repeat;
    padding-left: 20px;
    padding-right: 0;
}


#content a.none,
a:hover.none,
#content #footer a {
    background: none;
    padding-right: 0px;
    padding-left: 0px
}




.slide {
    margin: 20px auto;
    width: 870px;
}

.slide h2 {
    cursor: pointer;
}

.slide h3 {
    cursor: pointer;
}

.slide h4 {
    margin: 30px 0 0 0;
    cursor: pointer;
}

.slide p {
    display: none;
    margin-bottom: 20px;
}

img.hover {
    border-radius: 50%;
    background: rgb(217, 218, 218);
    transition: all 400ms ease-in-out
}

img.hover:hover {
    background: rgb(135, 187, 230);
}


#footer a {
    color: rgb(51, 51, 51);
}

#footer a:hover {
    color: rgb(233, 129, 49);
}

.toggle {
    & .content {
        max-height: 140px;
        overflow: hidden;
        transition: max-height 0.2s ease;

        &.open {
            max-height: 1200px;
        }
    }

    & button {
        padding: 8px 0 9px 20px;
        margin: 0 0 6px 3px;
        background: transparent;
        border: none;
        font-family: 'Jost', Arial, Helvetica, sans-serif;
        font-size: 1.0em;
        font-weight: 500;
        color: rgb(51, 51, 51);
        cursor: pointer;
        background: transparent url(../images/icon_arrow_down.svg) center left no-repeat;
        background-size: auto 14px;

        &:hover {
            opacity: 0.5;
        }

        &.open {
            background: transparent url(../images/icon_arrow_up.svg) center left no-repeat;
            background-size: auto 14px;
        }
    }
}

*/
/**
 * ANCHOR Navigation
 *
 */

/* * * * * * topNavigation  * * * * * */
#top-navigation ul {
    float: left;
    margin: 0;
    padding: 0;
    height: auto;
    width: auto;
    display: inline;
    z-index: 1000;
    font-weight: 400;
}

#top-navigation ul li {
    position: relative;
    float: left;
    margin: 0 0 0 30px;
    padding: 0;
    right: 0%;
    display: inline;
    list-style: none;
    background: none;
    line-height: 1.1em;
}

#top-navigation ul li a {
    position: relative;
    float: left;
    margin: 0;
    padding: 9px 0 0 10px;
    height: 46px;
    display: block;
    color: rgb(51, 51, 51);
    color: rgb(255, 255, 255);
}

#top-navigation ul li a:hover,
#top-navigation ul li.active a {
    color: rgb(51, 51, 51);
    color: rgb(0, 0, 0);
}


/* Level 2 */
#top-navigation ul li ul {
    position: absolute;
    float: left;
    padding: 15px 0 8px 0;
    margin: 0;
    left: -5px;
    top: 52px;
    width: auto;
    height: auto;
    background: rgb(233, 129, 49);
    font-family: 'Jost', Arial, Helvetica, sans-serif;
    font-weight: 400;
    display: none;
}

#top-navigation ul li ul li {
    margin: 0;
    padding: 0;
    left: 0;
    height: auto;
    white-space: nowrap;
    width: 100%;
    clear: both;
    list-style: none;
    background: none;
}

#top-navigation ul li ul li a,
#top-navigation ul li.active ul li a {
    float: left;
    padding: 5px 25px 5px 15px;
    margin: 0;
    height: auto;
    width: auto;
    background: none;
    color: rgb(255, 255, 255);
    text-transform: none;
    text-align: left;
    /*font-weight:600;*/
}

#top-navigation ul li ul li a:hover,
#top-navigation ul li ul li.active a {
    color: rgb(0, 0, 0);
}






/* * * * * * Mobile Navigation  * * * * * */
#mobile-navigation {
    background: rgb(233, 129, 49);
}

#mobile-navigation ul {
    position: relative;
    float: left;
    margin: 0;
    padding: 15px 0 20px 0;
    width: 100%;
}

#mobile-navigation ul li {
    position: relative;
    float: left;
    margin: 0;
    padding: 0 0 8px 0;
    width: 100%;
    list-style: none;
    background: none;
}

#mobile-navigation ul li a {
    position: relative;
    float: left;
    margin: 0;
    padding: 5px 0;
    width: 100%;
    display: block;
    font-size: 1.45em;
    color: rgb(255, 255, 255);
    font-weight: 400;
    text-decoration: none;
}

#mobile-navigation ul li a:hover,
#mobile-navigation ul li.active a {
    color: rgb(0, 0, 0);
    text-decoration: none;
}

/* Level 2 */
#mobile-navigation ul li ul {
    padding: 0 0 0 3%;
    width: 97%;
}

#mobile-navigation ul li:last-child,
#mobile-navigation ul li ul li {
    padding: 0;
    border: none;
}

#mobile-navigation ul li ul li a,
#mobile-navigation ul li.active ul li a {
    position: relative;
    float: left;
    margin: 0;
    padding: 2px 0;
    width: auto;
    text-transform: none;
    font-weight: 400;
    font-size: 1.1em;
    background: none;
    color: rgb(255, 255, 255);
    text-decoration: none;
}

#mobile-navigation ul li.active ul li.active a,
#mobile-navigation ul li ul li a:hover,
#mobile-navigation ul li.active ul li a:hover {
    color: rgb(0, 0, 0);
    text-decoration: none;
}

/* Level 3 */
#mobile-navigation ul li ul li ul {
    margin: 0;
}

#mobile-navigation ul li ul li ul li a {
    position: relative;
    float: left;
    margin: 0;
    padding: 4px 0 4px 26px;
    width: auto;
    text-transform: none;
    font-weight: normal;
    font-size: 1.1em;
    color: rgb(255, 255, 255);
    background: none;
    text-decoration: none;
}

#mobile-navigation ul li.active ul li.active ul li.active a {
    color: rgb(0, 0, 0);
    text-decoration: none;
}


/**
 * ANCHOR Formulare
 *
 */

label {
    float: left;
    width: 30%;
    margin-top: 9px;
}

form {
    float: left;
    padding: 0;
    width: 100%;
}

select,
input,
textarea {
    float: left;
    font-family: 'Jost', Arial, Helvetica, sans-serif;
    font-weight: 400;
    font-size: 1.0em;
    padding: 0 2%;
    height: 38px;
    width: 100%;
    margin: 0 0 5px 0;
    border: 1px solid rgb(217, 218, 218);
    background-color: rgb(255, 255, 255);
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 2px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

select {
    padding-right: 0;
}

textarea {
    padding-top: 8px;
    height: 124px;
}

input[type=text],
textarea {
    -webkit-padding-before: 2px;
    -webkit-padding-after: 2px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.labeling select,
.labeling input[type=text],
.labeling textarea {
    width: 70%;
}

::-webkit-input-placeholder {
    /* WebKit browsers */
    color: rgb(179, 179, 179);
}

:-moz-placeholder {
    /* Mozilla Firefox 4 to 18 */
    color: rgb(179, 179, 179);
    opacity: 1;
}

::-moz-placeholder {
    /* Mozilla Firefox 19+ */
    color: rgb(179, 179, 179);
    opacity: 1;
}

:-ms-input-placeholder {
    /* Internet Explorer 10+ */
    color: rgb(179, 179, 179);
}

input[type=submit],
input[type=button],
input[type=resete] {
    cursor: pointer;
    color: rgb(255, 255, 255);
    border: 1px solid rgb(233, 129, 49);
    background-color: rgb(233, 129, 49);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-weight: 400;
}

.labeling input[type=submit],
.labeling input[type=button],
.labeling input[type=resete] {
    margin-left: 30%;
    width: 70%;
}

input[type=submit]:hover,
input[type=button]:hover {
    border: 1px solid rgb(51, 51, 51);
    background-color: rgb(51, 51, 51);
}

input[type=checkbox] {
    padding: 0;
    margin-top: 7px;
    border: none;
    background: none;
}

input:focus,
select:focus,
textarea:focus {
    border: 1px solid rgb(135, 187, 230);
}

div.error {
    padding-bottom: 20px;
    color: rgb(190, 0, 0);
    display: none;
}


/**
 * ANCHOR Search 
 *
 */

.searchResult {
    float: left;
    margin-bottom: 25px;
    width: 100%;
    cursor: pointer;
}

.searchResult h3,
.searchResult p {
    margin: 0;
}

.searchResult p .resultPath {
    color: rgb(150, 150, 150);
}


/**
 * ANCHOR Staff
 *
 */

.staff {
    float: left;
    margin: 0;
    padding: 0;
    width: 290px;
    height: auto;
    min-height: 380px;
}

.staffImage {
    float: left;
    padding-top: 88px;
    margin: 20px 35px;
    width: 220px;
    height: 132px;
    border-radius: 50%;
    background: transparent url(../images/placeholder.jpg) center center no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.staffInfo {
    float: left;
    width: 100%;
    height: auto;
}

.staffInfo h3 {
    margin: 0 0 0px 0;
}

.staffFrame {
    margin: auto;
    width: 870px;
}

.staff_left {
    float: left;
    width: 35%;
}

.staff_right {
    float: right;
    padding-top: 10px;
    width: 65%;
    text-align: left;
}


/**
 * ANCHOR Gallery
 *
 */

/* overview */
.gallerys {
    float: left;
    width: 100%;
    height: auto;
}

.gallerys .album {
    float: left;
    margin: 0 6% 0 0;
    width: 47%;
    height: auto;
}

.gallerys .album.last {
    margin-right: 0;
}

.gallerys .album .album_image {
    display: inline-block;
    position: relative;
    width: 100%;
    margin: 0 0 5px 0;
    float: left;
    cursor: pointer;
    background: rgba(255, 255, 255, 0.5);
}

.gallerys .album .album_image:before {
    content: "";
    display: block;
    padding-top: 67%;
    /* initial ratio of 10:6.7 */
}

.gallerys .album .album_image img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
}

.gallerys .album .album_info {
    float: left;
    width: 100%;
    height: auto;
    min-height: 80px;
    text-align: center;
}

.gallerys .album .album_info h2 {
    margin: 6px 0;
    font-size: 1.1em;
}


/* gallery */
.gallery {
    float: left;
    width: 100%;
    height: auto;
}

.gallery .images {
    float: left;
    margin: 10px 6% 20px 0;
    width: 47%;
    height: auto;
}

.gallery .images.last {
    margin-right: 0;
}

.gallery .images img {
    float: left;
    height: auto;
}


/**
 * ANCHOR Calendar
 *
 */

.events {
    float: left;
    width: 100%;
    height: auto;
}

.events .month {
    float: left;
    margin: 20px 0 15px 0;
    padding: 0;
    width: 100%;
    background-color: rgb(230, 230, 230);
}

.events h2 {
    float: left;
    margin: 10px;
    padding: 0;
}

.event {
    float: left;
    padding: 0 0 10px 0;
    margin: 0 0 10px 0;
    width: 100%;
    height: auto;
    border-bottom: 1px solid rgb(150, 150, 150);
}

.event .event_date {
    float: left;
    width: 30%;
    height: auto;
    min-height: 30px;
}

.event .event_info {
    float: left;
    width: 70%;
    height: auto;
    min-height: 30px;
}


/**
 * ANCHOR Tageskarten
 *
 */

.daypassLeft {
    float: left;
    margin-right: 30px;
    width: 420px;
}

.daypassRight {
    float: left;
    width: 180px;
}

.daypassRight h2 {
    margin-top: 0;
}

.daypassCalendar {
    float: left;
    width: 100%;
    height: 240px;
}

.daypass td {
    padding: 0 0;
    height: 26px;
}

.daypass td a {
    padding: 4px 0;
    display: block;
}

.daypass td.ti {
    font-size: 0.85em;
}

/* keine Tageskarte */
.daypass td.td_0 {
    font-size: 0.85em;
    background-color: rgb(225, 225, 225);
    color: rgb(51, 51, 51);
}

.daypass td.td_0.wk {
    background-color: rgb(200, 200, 200);
    color: rgb(51, 51, 51);
}

/* 1 Tageskarte */
.daypass td.td_1 {
    font-size: 0.85em;
    background-color: rgb(100, 200, 0);
}

/* 2 Tageskarte */
.daypass td.td_2 {
    font-size: 0.85em;
    background-color: rgb(40, 130, 0);
}

/* 3 Tageskarte */
.daypass td.td_3 {
    font-size: 0.85em;
    background-color: rgb(40, 130, 0);
}

.daypass td.td_0 a,
.daypass td.td_1 a,
.daypass td.td_2 a,
.daypass td.td_3 a {
    color: rgb(255, 255, 255);
}

.daypass td.td_0 a:hover,
.daypass td.td_1 a:hover,
.daypass td.td_2 a:hover,
.daypass td.td_3 a:hover {
    text-decoration: none !important;
    color: rgb(255, 204, 0);
}

.daypass td.wk {
    font-weight: bold;
}

input#agb[type=checkbox] {
    float: left;
    margin: -3px 10px 0 0;
}

input.error,
select.error {
    border: 1px solid rgb(190, 0, 0) !important;
}

p.error {
    font-weight: bold;
    color: rgb(190, 0, 0);
}




/**
 * ANCHOR Shop
 *
 */

.shop {
    float: left;
    width: 100%;
    height: auto;
    background-color: #9C0
}

.shop .product {
    float: left;
    margin-bottom: 20px;
    width: 100%;
    height: auto;
    background-color: #990
}

.shop .product .product_image {
    float: left;
    width: 30%;
    height: auto;
    min-height: 80px;
    background-color: #990
}

.shop .product .product_image img {
    max-width: 90%;
    height: auto;
    max-height: 200px;
}

.shop .product .product_info {
    float: left;
    width: 70%;
    height: auto;
    min-height: 80px;
    background-color: #990
}

.shop .product .product_info .product_content {
    float: left;
    width: 100%;
    height: auto;
    background-color: #FF0
}

.shop .product .product_info .product_price {
    float: left;
    width: 60%;
    height: auto;
    min-height: 40px;
    background-color: #FC0
}

.shop .product .product_info .product_order {
    float: left;
    width: 40%;
    height: auto;
    min-height: 40px;
    text-align: right;
    background-color: #F90
}

.shop .product .product_info .product_order img {
    width: 50%;
    max-width: 50px;
}

.shop table td img {
    float: left;
    padding: 0;
    margin: 0;
}

.shop table td input {
    padding: 3px;
    margin: 0;
    width: 30px;
    height: auto;
    text-align: center;
}

.quickBasket {
    float: left;
    margin-bottom: 20px;
    width: 100%;

    height: auto;
    background-color: #9FF
}

.quickBasket .basket {
    float: left;
    width: 100%;
    height: auto;
    cursor: pointer;
}






/**
 * ANCHOR FancyBox
 *
 */

.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp {
    padding: 0;
    margin: 0;
    border: 0;
    outline: none;
    vertical-align: top;
}

.fancybox-wrap {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 8020;
}

.fancybox-skin {
    position: relative;
    background: rgb(255, 255, 255);
    color: #FFF;
    text-shadow: none;
    /*
	-webkit-border-radius: 4px;
	   -moz-border-radius: 4px;
	        border-radius: 4px;
	*/
}

.fancybox-opened {
    z-index: 8030;
}

.fancybox-opened .fancybox-skin {
    -webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.fancybox-outer,
.fancybox-inner {
    position: relative;
}

.fancybox-inner {
    overflow: hidden;
}

.fancybox-type-iframe .fancybox-inner {
    -webkit-overflow-scrolling: touch;
}

.fancybox-error {
    color: #444;
    font: 14px/20px 'Jost', Arial, Helvetica, sans-serif;
    margin: 0;
    padding: 15px;
    white-space: nowrap;
}

.fancybox-image,
.fancybox-iframe {
    display: block;
    width: 100%;
    height: 100%;
}

.fancybox-image {
    max-width: 100%;
    max-height: 100%;
}

#fancybox-loading,
.fancybox-close,
.fancybox-prev span,
.fancybox-next span {
    background-image: url('images/fancybox_sprite.png');
}

#fancybox-loading {
    position: fixed;
    top: 50%;
    left: 50%;
    margin-top: -22px;
    margin-left: -22px;
    background-position: 0 -108px;
    opacity: 0.8;
    cursor: pointer;
    z-index: 8060;
}

#fancybox-loading div {
    width: 44px;
    height: 44px;
    background: url('images/fancybox_loading.gif') center center no-repeat;
}

.fancybox-close {
    position: absolute;
    top: -18px;
    right: -18px;
    width: 36px;
    height: 36px;
    cursor: pointer;
    z-index: 8040;
}

.fancybox-nav {
    position: absolute;
    top: 0;
    width: 40%;
    height: 100%;
    cursor: pointer;
    text-decoration: none;
    background: transparent url('images/blank.gif');
    /* helps IE */
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    z-index: 8040;
}

.fancybox-prev {
    left: 0;
}

.fancybox-next {
    right: 0;
}

.fancybox-nav span {
    position: absolute;
    top: 50%;
    width: 36px;
    height: 34px;
    margin-top: -18px;
    cursor: pointer;
    z-index: 8040;
    visibility: hidden;
}

.fancybox-prev span {
    left: 10px;
    background-position: 0 -36px;
}

.fancybox-next span {
    right: 10px;
    background-position: 0 -72px;
}

.fancybox-nav:hover span {
    visibility: visible;
}

.fancybox-tmp {
    position: absolute;
    top: -99999px;
    left: -99999px;
    visibility: hidden;
    max-width: 99999px;
    max-height: 99999px;
    overflow: visible !important;
}

/* Overlay helper */

.fancybox-lock {
    overflow: hidden;
}

.fancybox-overlay {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    display: none;
    z-index: 8010;
    background: url('images/fancybox_overlay.png');
}

.fancybox-overlay-fixed {
    position: fixed;
    bottom: 0;
    right: 0;
}

.fancybox-lock .fancybox-overlay {
    overflow: auto;
    overflow-y: scroll;
}

/* Title helper */

.fancybox-title {
    visibility: hidden;
    font: normal 13px/20px 'Jost', Arial, Helvetica, sans-serif;
    position: relative;
    text-shadow: none;
    z-index: 8050;
}

.fancybox-opened .fancybox-title {
    visibility: visible;
}

.fancybox-title-float-wrap {
    position: absolute;
    bottom: 0;
    right: 50%;
    margin-bottom: -35px;
    z-index: 8050;
    text-align: center;
}

.fancybox-title-float-wrap .child {
    display: inline-block;
    margin-right: -100%;
    padding: 2px 20px;
    background: transparent;
    /* Fallback for web browsers that doesn't support RGBa */
    background: rgba(0, 0, 0, 0.8);
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
    text-shadow: 0 1px 2px #222;
    color: #FFF;
    font-weight: bold;
    line-height: 24px;
    white-space: nowrap;
}

.fancybox-title-outside-wrap {
    position: relative;
    margin-top: 10px;
    color: #fff;
}

.fancybox-title-inside-wrap {
    padding-top: 10px;
}

.fancybox-title-over-wrap {
    position: absolute;
    bottom: 0;
    left: 0;
    color: rgb(255, 255, 255);
    width: 96%;
    font: normal 13px/20px 'Jost', Arial, Helvetica, sans-serif;
    padding: 6px 2%;
    background: #000;
    background: rgba(0, 0, 0, 0.5);
}


/**
 * ANCHOR SLIDER
 *
 */


/** RESET AND LAYOUT
===================================*/
section#header-image img {
    float: left;
    margin: 0;
    width: 100%;
    height: auto;
}

ul.bxslider {
    position: relative;
    float: left;
    padding: 0;
    margin: 0;
    height: auto;
    width: 100%;

}

ul.bxslider li {
    position: relative;
    float: left;
    margin: 0;
    padding: 0;
    display: none;
}

ul.bxslider li:first-child {
    display: block;
}

ul.bxslider li img,
ul.bxslider li a img {
    float: left;
    margin: 0 !important;
    width: 100%;
}

.bx-wrapper {
    position: relative;
    margin: 0;
    padding: 0;
}

.bx-wrapper img {
    width: 100%;
    margin: 0;
    display: block;
}


/** THEME
===================================*/

.bx-wrapper .bx-viewport {
    margin: 0;
    padding: 0;

    /*fix other elements on the page moving (on Chrome)*/
    -webkit-transform: translatez(0);
    -moz-transform: translatez(0);
    -ms-transform: translatez(0);
    -o-transform: translatez(0);
    transform: translatez(0);
}

.bx-wrapper .bx-viewport ul,
.bx-wrapper .bx-viewport ul li {
    margin: 0;
    padding: 0;
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
    display: none;
}

/* PAGER */
.bx-wrapper .bx-pager {
    display: none;
}

.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
    display: none;
}

.bx-wrapper .bx-pager.bx-default-pager a {
    display: none;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
    display: none;
}

/* DIRECTION CONTROLS (NEXT / PREV) */
.bx-wrapper:hover .bx-prev {
    left: 10px;
    background: url(../images/controls.png) no-repeat 0 -32px;
}

.bx-wrapper:hover .bx-next {
    right: 10px;
    background: url(../images/controls.png) no-repeat -43px -32px;
}

.bx-wrapper .bx-prev:hover {
    background-position: 0 0;
}

.bx-wrapper .bx-next:hover {
    background-position: -43px 0;
}

.bx-wrapper .bx-controls-direction a {
    position: absolute;
    top: 50%;
    margin-top: -16px;
    outline: 0;
    width: 32px;
    height: 32px;
    text-indent: -9999px;
    z-index: 9999;
}

.bx-wrapper .bx-controls-direction a.disabled {
    display: none;
}

/* AUTO CONTROLS (START / STOP) */

.bx-wrapper .bx-controls-auto {
    display: none;
}

.bx-wrapper .bx-controls-auto .bx-start {
    display: none;
}

.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active {
    display: none;
}

.bx-wrapper .bx-controls-auto .bx-stop {
    display: none;
}

.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active {
    display: none;
}

/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
    display: none;
}

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
    display: none;
}


/**
 * ANCHOR Media Queries
 *
 */


/* Tablet Landscape */
@media only screen and (max-width: 980px) {
    .inner {
        box-sizing: border-box;
        padding-left: 10px;
        padding-right: 10px;
        width: 100%;
    }

    #logo {
        margin-left: 20px;
    }


}


@media only screen and (max-width: 860px) {

    #top-navigation {
        display: none;
    }

    #mobile-navigation-button {
        display: block;
    }



}

@media only screen and (max-width: 660px) {

    .bubble {
        width: calc(100% - 40px);
    }

    .contactForm,
    .smallFrame {
        width: 100%;
    }


    /* Formulare */
    label {
        margin: 5px 0 3px 0;
        width: 100%;
    }

    select,
    input,
    textarea {
        padding: 0 3%;
        width: 100% !important;
    }

    .labeling select,
    .labeling input[type=text],
    .labeling textarea {
        margin-right: 0;
        width: 100% !important;
    }

    .labeling input[type=submit],
    .labeling input[type=button],
    .labeling input[type=resete] {
        margin-left: 0;
        width: 100%;
    }

}


@media only screen and (max-width: 580px) {

    h1,
    .h1 {
        font-size: 1.5em;
    }

    h2,
    .h2 {
        font-size: 1.3em;
    }

    h3,
    .h3 {
        font-size: 1.1em;
    }

    .mobile {
        display: block;
    }

    .desktop,
    #footer .logo {
        display: none;
    }

    #footer .address {
        margin: 0 20px;
    }


    .inner {
        padding-left: 0;
        padding-right: 0;
    }

    #main {
        padding: 20px 0 60px 0;
    }

    .block_05,
    .block_10,
    .block_15,
    .block_20,
    .block_25,
    .block_30,
    .block_33,
    .block_35,
    .block_40,
    .block_45,
    .block_50,
    .block_55,
    .block_60,
    .block_65,
    .block_66,
    .block_70,
    .block_75,
    .block_80,
    .block_85,
    .block_90,
    .block_95,
    .block_100 {
        width: 100%;
    }

}




/**
 * ANCHOR @fonts
 *
 */

@font-face {
    font-family: 'Jost';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/jost/Jost-Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'Jost';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/jost/Jost-Italic.ttf') format('truetype');
}

@font-face {
    font-family: 'Jost';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/jost/Jost-Medium.ttf') format('truetype');
}

@font-face {
    font-family: 'Jost';
    font-style: italic;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/jost/Jost-MediumItalic.ttf') format('truetype');
}