/* CSS Document */

/*Webfonts*/
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,400italic,600,700);

/*Basic layout*/
body { margin:0; font-family: "OpenSans", Arial, sans-serif; color: #505050; font-size: 1em; line-height: 1.3em; }
    #bgWood { background-image: url(/assets/images/bg_wood.jpg); background-size: cover; background-repeat: no-repeat; position: fixed; width: 100%; height: 100%; z-index: 0; top: 0; left: 0;  }

@media screen and (max-width: 900px) {
    body { font-size: 0.9em; line-height: 1.2em; }
}

/*Global site elements*/
.sectionContainer { padding: 0 5%; position: relative; box-sizing: border-box; }
    .sectionInner { margin: auto; position: relative; max-width: 1400px; padding: 1em 0; box-sizing: border-box; }
    .first-content-section { margin-top: 3.2em; }

    .sectionContainer.white { background-color: #FFFFFF; }
    .sectionContainer.light { background-color: #F1F1F1;  }
    .sectionContainer.blue { background-color: #23b9ce; }

    .inline-half { display: inline-block; width: 49.5%; vertical-align: top; }

    @media screen and (max-width: 900px) {
        .sectionContainer { padding: 0 3%; }
    }

#sectionNavi { position: fixed; top: 0; left: 0; z-index: 1000; width: 100%; background-color: #FFF;
                -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.4);
                -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.4);
                box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.4); }
#sectionNavi.noshadow { -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; border-bottom: 1px solid #d8d8d8; }

    #sectionNavi .sectionInner { padding: 1em 0; }
    #sectionNavi a.navLink { margin-right: 1.5em; }
    #sectionNavi a.navLinkMobile { color: #FFF; border-radius: 5px; background-color: #f07d00; padding: 0.5em 0.75em; display: none; margin-right: 0.5em; cursor: pointer; }
        #sectionNavi a.navLinkMobile:hover { text-decoration: none; }
        #sectionNavi a.navLinkMobile i.fa { color: #FFF; }
    #sectionNavi a#linkFavourites { float: right; margin-right: 0; color: #f07d00; font-weight: 600; }
    #sectionNavi a#linkFavourites:hover { text-decoration: none; }
    #sectionNavi a#linkFavourites i.fa { color: #f07d00; margin-right: 0.5em;}

    @media screen and (max-width: 900px) {
        #sectionNavi {  }
        #sectionNavi a.navLink { display: none; }
        #sectionNavi a.navLinkMobile { display: inline-block; }
    }

    @media screen and (max-width: 550px) {
        #sectionNavi a#linkFavourites { display: none; }
    }

#sectionNaviMobile { position: fixed; background-color: #FFF; width: 100%; height: 100%; top: 0; left: 0; z-index: 200; overflow: auto; display: none; }
    #sectionNaviMobile .sectionInner { display: -webkit-flex; -webkit-flex-direction: row; display: flex; flex-direction: row; justify-content: space-between; flex-wrap: wrap; margin-top: 5em; padding-right: 5%; }
    #sectionNaviMobile a { display: inline-block; width: 43.5%; padding: 1em 2% 1.5em 2%; background-color: #F1F1F1; text-align: center; margin-bottom: 1em; font-size: 1.2em; }
    #sectionNaviMobile a:hover { text-decoration: none; color: #FFF; background-color: #23b9ce; -webkit-transition: background-color 1s; transition: background-color 1s; }
    #sectionNaviMobile a i.fa { font-size: 1.8em; display: block; clear: both; margin-bottom: 0.5em; }
    #sectionNaviMobile a:hover i.fa { color: #FFF; }

#containerBookingSearch.searchMobile { position: fixed; background-color: #FFF; width: 90%; padding-right: 10%; height: 100%; top: 0; left: 0; z-index: 200; overflow: auto; display: none; border-radius: 0; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; }

    #containerBookingSearch.searchMobile .innerBookingSearch { margin-top: 5em; }

    #containerBookingSearch.searchMobile #btnShowSearchDetails { display: none; }

    #containerBookingSearch.searchMobile #bookingSearchGeneral {}
    #containerBookingSearch.searchMobile #bookingSearchDetails { display: block !important; }

    #containerBookingSearch.searchMobile #bookingSearchGeneral .bookingField { width: 100%; margin-bottom: 0.75em; }

    #containerBookingSearch.searchMobile #bookingSearchDetails .bookingField { width: 100%; display: block; font-size: 1em; margin: 0; padding: 0; padding: 0.5em 0; }
    #containerBookingSearch.searchMobile #bookingSearchDetails .bookingField:nth-of-type(2) { margin: 0 0; }

    #containerBookingSearch.searchMobile #bookingSearchDetails .bookingField.full { width: 96%; margin-bottom: 2em; padding: 0.5em 2% 1em 2%; }

    #containerBookingSearch.searchMobile #btnSearch { position: relative; display: block; width: 50%; clear: both; margin: 1em auto; border-radius: 0; height: auto; text-transform: uppercase; font-size: 1.1em; padding: 0.5em 0; }
    #containerBookingSearch.searchMobile #btnSearch i.fa { display: inline; margin-right: 0.5em; font-size: 1.3em; }

    #containerBookingSearch.searchMobile #btnCityDistance { display: none; }
    #containerBookingSearch.searchMobile #bookingPriceMax { width: 95% !important; margin-bottom: 0.5em; }

    #containerBookingSearch.searchMobile .checkboxItem { display: inline-block; width: 47%; vertical-align: top; }
    #containerBookingSearch.searchMobile .checkboxItem .checkboxLabel { display: inline; font-size: 1em; }

    @media screen and (max-width: 600px) {
        #containerBookingSearch.searchMobile .bookingField.full.attributes .checkboxItem { display: block; width: 100% !important; }
    }

    @media screen and (max-width: 400px) {
        #containerBookingSearch.searchMobile .bookingField.full.accommodationtypes .checkboxItem { display: block; width: 100% !important; }
    }

#sectionContent {  }

#sectionFooterLine { height: 29px; vertical-align: bottom; background-image: url(/assets/images/footer_linie.png); background-repeat: no-repeat; background-position: bottom; background-size: 100%; background-color: #F1F1F1; }
#sectionFooterLine.white { background-color: #FFF; }

#sectionFooter { color: #FFF; padding: 2em 5% 3em 5%; }

#sectionFooter * { color: #FFF; }
    #sectionFooter .sectionInner { display: -webkit-flex; -webkit-flex-direction: row; display: flex; flex-direction: row; justify-content: space-between; flex-wrap: wrap; }

    div.footerCol { }
        div.footerCol :first-child { margin-top: 0; }
        div.footerCol h4 { text-transform: uppercase; margin-bottom: 0.5em;}

    #footerAdvertise { width: 22%; }
        #footerAdvertise .button { border: 1px solid #FFF; }
        #footerAdvertise .button:hover { border: 2px solid #FFF; }
    #footerDestinations { width: 47%;  }
        #footerDestinations #destinationLinks { -moz-column-count: 3; -webkit-column-count: 3; column-count: 3; column-gap: 1em; }
        #footerDestinations #destinationLinks a { clear: both; display: block; }
    #footerLinks { width: 22%; }
        #footerLinks a { display: block; margin-bottom: 0.2em; }

    @media screen and (max-width: 1000px) {
        #footerDestinations #destinationLinks { -moz-column-count: 2; -webkit-column-count: 2; column-count: 2; }
    }

    @media screen and (max-width: 900px) {
        #sectionFooter { padding-left: 3%; padding-right: 3%; }
        #footerDestinations { width: 70%; }
        #footerLinks { width: 70%; padding-top: 1em; margin-top: 1em; margin-left: 30%; border-top: 1px solid #FFF; }
    }

    @media screen and (max-width: 600px) {
        #sectionFooter { padding-top: 1em; padding-bottom: 2em; }
            #footerAdvertise { width: 100%; display: block; }
            #footerDestinations { width: 100%; border-top: 1px solid #FFF; padding-top: 1.5em; margin-top: 1.5em; }
            #footerLinks { width: 100%; padding-top: 1.5em; margin-top: 1.5em; margin-left: 0; border-top: 1px solid #FFF; }
    }

.clearFloat { clear: both; }

#disablingOverlay { position: fixed; width: 100%; height: 100%; background-color: rgba(35,185,206,0.2); z-index: 99999; display: none; top: 0; left: 0; background-image: url(/assets/images/loader.gif); background-repeat: no-repeat; background-position: center; }

#statusMessageBar { position: fixed; display: none; z-index: 10000; padding: 0.75em 0; text-align: center; top: 3.2em; text-align: center; background-color: rgba(255,255,255,0.6); width: 100%; color: #FFF; font-weight: 700; }
#statusMessageBar i.fa { color: #FFF; font-size: 1.2em; margin-right: 0.5em; }
    #statusMessageBar.error {  background-color: rgba(156,46,43,0.7);}
    #statusMessageBar.ok { background-color: rgba(37,162,89,0.7); }

/*Forms*/
input[type=text], input[type=password], textarea { font-size: 1em; padding: 0.6em 2%; width: 96%; color: #505050; border: 1px solid #F1F1F1; }
select { -webkit-appearance: none; -moz-appearance: none; appearance: none; width: 100%; padding: 0.6em 20% 0.6em 2%; color: #505050; background-color: #FFF; border: 1px solid #F1F1F1; font-size: 1em; border-radius: 0;
         background-image: url(/assets/images/icon_chevron-down.png); background-position: right 4px; background-repeat: no-repeat; }

.button { color: #FFF !important; background-color: #f07d00; padding: 0.5em 1.5em 0.4em 0.75em; margin: 0.5em 0; text-decoration: none !important; cursor: pointer; margin-right: 0.75em; display: inline-block; vertical-align: top; }
.button.noicon { padding: 0.5em 0.75em 0.45em 0.75em; }
.button.light { background-color: #23b9ce; }
    .button i.fa { color: #FFF; font-size: 1.2em; margin-right: 0.25em; }

 .inputError { border: 2px solid #C1051F !important; }

/*Fancybox*/
body.fancybox { padding: 0.5em; padding-bottom: 0; }
body.fancybox :first-child { margin-top: 0; }
.fancybox-skin { -webkit-border-radius: 0px !important; -moz-border-radius: 0px !important; border-radius: 0px !important; background-color: #FFF !important; }

/*Typo*/
h1, h2 { text-transform: uppercase; font-weight: 600; color: #23b9ce; line-height: 1.4em;}
h1 { font-size: 1.6rem; }
h2 { font-size: 1.4rem; }
h3, h4, h5, h6 { font-size: 1rem; font-weight: 600; color: #23b9ce;}

@media screen and (max-width: 800px) {
    h1 { font-size: 1.4rem; }
    h2 { font-size: 1.2rem; }
}

i.fa { color: #23b9ce; }

a { color: #23b9ce; text-decoration: none; cursor: pointer; }
a:hover { text-decoration: underline; }

.blue { color: #23b9ce; }

.textLarge { font-size: 1.1em; }
.textSmall { font-size: 0.9em; line-height: 1.1em; }

.floatLeft { float: left; }

.labelOccupationFree { font-weight: 700; color: #206E3F; }
.labelOccupationFree { font-weight: 700; color: #206E3F; }
.labelOccupationOccupied { font-weight: 700; color: #C1051F; }

.errorMsg { color: #C1051F; display: none; }

/*Specific content elements*/

    /*Booking-Box*/
    #containerBookingSearch { background-color: #FFF; border-radius: 5px; margin-bottom: 2em; position: relative; padding: 0.5em 20px; max-width: 1360px; margin: auto; margin-bottom: 2em;
                                -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.4);
                                -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.4);
                                box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.4); }
    #containerBookingSearch.fixed { position: fixed; max-width: none; top: 3.2em; left: 0; width: 90%; padding: 0.75em 5%; border-radius: 0; z-index: 100;}
        #containerBookingSearch.fixed .innerBookingSearch { max-width: 1400px; margin: auto; position: relative; }

        #btnShowSearchDetails { cursor: pointer; margin-left: 1em; }

        #containerBookingSearch #bookingSearchGeneral {}
        #containerBookingSearch #bookingSearchDetails { height: auto; clear: both; display: none; }

            #bookingSearchDetails .bookingField { display: inline-block; width: 31%; padding: 1em 0; vertical-align: top; }
                #bookingSearchDetails .bookingField:nth-of-type(2) { margin: 0 2.7%; }
                #bookingSearchDetails .bookingField label { display: block; clear: both; font-size: 0.9em; }
            #bookingSearchDetails .bookingField.full { width: 96%; padding: 1em 2% 1em 2%; background-color: #F1F1F1; display: block; clear: both; margin-bottom: 1em; }

        #bookingSearchGeneral .bookingField { width: 18%; margin-right: 1em; display: inline-block; font-size: 0.9em; vertical-align: top;  }

        #btnShowSearchDetails { float: right; }

        .checkboxItem { display: inline-block; width: 31%; margin-right: 2%; vertical-align: top; }
            .checkboxItem input[type=checkbox] { }
            .checkboxItem .checkboxLabel { display: inline; font-size: 0.9em; }

        #btnSearch { position: absolute; display: block; color: #FFF; text-transform: uppercase; text-decoration: none; background-color: #f07d00; border: 0px none; font-weight: 600; font-size: 1.1em; top: 0; right: 0; box-sizing: border-box; height: 76px; width: 17%; padding: 20px 0; text-align: center; border-radius: 0 5px 5px 0; cursor: pointer;
                        -webkit-appearance: none; -moz-appearance: none; appearance: none; }
        #btnSearch:hover { background-color: rgba(240, 125, 0, 0.7); -webkit-transition: background-color 0.2s; transition: background-color 0.2s; text-decoration: none; }

        #containerBookingSearch.fixed #btnSearch { position: relative; border-radius: 5px; font-size: 1em; display: inline-block; width: auto; height: auto; padding: 0.5em 1em; float: right; }


        #bookingArrivalDate, #bookingDepartureDate { background-image: url(/assets/images/icon_calendar.png); background-position: right 4px; background-repeat: no-repeat; }
        #bookingNumberGuests { background-image: url(/assets/images/icon_users.png); background-position: right 4px; background-repeat: no-repeat; padding-top: 0.5em; padding-bottom: 0.6em; }
        #bookingCity { background-image: url(/assets/images/icon_location.png); background-position: right 4px; background-repeat: no-repeat; }
        #bookingClassification { font-size: 0.9em; }
        #bookingCityDistance { font-size: 0.9em; }

        #bookingPriceMax { background-image: url(/assets/images/icon_euro.png); background-position: right 4px; background-repeat: no-repeat; font-size: 0.9em; width: 90%; }

    @media screen and (max-width: 900px) {
        #containerBookingSearch { display: none; }
    }

    /*Accommodation list*/
    #sectionAccommodationsTop { background-image: url(/assets/images/head_holz.jpg); background-size: 100%; border: 1px solid #FFF; }
        #sectionAccommodationsTop .sectionInner { text-align: center; margin: auto; padding: 1em 0; }
        #sectionAccommodationsTop .sectionInner img.logo { margin: 1em auto; max-width: 210px; height: auto; }

    @media screen and (max-width: 900px) {
        #sectionAccommodationsTop .sectionInner img.logo { width: 30%; margin: 1em auto 0 auto; }
    }

    @media screen and (max-width: 550px) {
        #sectionAccommodationsTop .sectionInner img.logo { width: 45%; margin: 1em auto 0 auto; }
    }

    #sectionAccommodations { background-image: url(/assets/images/hintergrunddeko_links.png); background-position: left; background-repeat: repeat-y; padding-bottom: 2em; }
        #sectionAccommodations div.listModeSelectors {  text-align: left; margin-bottom: 1em; }
        #sectionAccommodations div.listModeSelectors.map { margin-right: 37.4%; }
        #sectionAccommodations div.listModeSelectors a { display: inline-block; cursor: pointer; color: #FFF; background-color: #23b9ce; color: #FFF; padding: 0.5em 0.4em 0.4em 0.4em; font-size: 1.2em; margin-right: 0.4em;  }
            #sectionAccommodations div.listModeSelectors a.active { background-color: #f07d00; }
            #sectionAccommodations div.listModeSelectors i.fa { color: #FFF; }

            #sectionAccommodations #resultOrderSelect { width: auto; padding-top: 0.6em; padding-bottom: 0.6em; padding-left: 1%; float: right; background-position: right 5px center; }

        @media screen and (max-width: 500px) {
            #sectionAccommodations #resultOrderSelect { width: 100%; clear: both; margin-bottom: 1em; }
        }

        div#panelContinueLoadingAccommodations { background-color: #FFF; padding: 1em; text-align: center; cursor: pointer; font-size: 1.1em; }
        div#panelContinueLoadingAccommodations i.fa { margin-right: 0.5em; font-size: 1.1em; }
        div#panelContinueLoadingAccommodations:hover { color: #FFF; background-color: #23b9ce; -webkit-transition: background-color 1s; transition: background-color 1s; }
        div#panelContinueLoadingAccommodations:hover i.fa { color: #FFF; }

        /*General accommodation list style*/
        div.accommodationListItem { background-color: #FFF; margin-bottom: 2em; padding: 1.5em; }
            div.accommodationImage { display: inline-block; vertical-align: top; width: 25%; float: left; border: 1px solid transparent; }
                div.accommodationImage .imageWrapper { max-height: 17em; overflow: hidden; display: block; }
                div.accommodationImage .imageWrapper img { width: auto; height: auto; max-width: 100%; margin-bottom: 0.5em; display: block; clear: both;  }
                div.accommodationImage div.accommodationImageLink { display: block; padding: 0.5em 4%;}
            div.accommodationText { display: inline-block; vertical-align: top; margin: 0 3%; width: 38%; }
                .accommodationTitle { font-weight: 600; text-transform: none !important; }
                h2.accommodationTitle { margin-top: 0; font-size: 1.2rem; }
                div.accommodationProperties { display: inline-block; vertical-align: top; width: 30%; }
                div.accommodationProperties .linkOccupation { font-size: 0.8em; }

        @media screen and (max-width: 800px) {
            div.accommodationImage { width: 35%; }
                div.accommodationImage .imageWrapper { max-height: none; }
            div.accommodationText { width: 60%; float: right; margin: 0; }
            div.accommodationProperties { width: 60%; float: right; }
        }

        @media screen and (max-width: 550px) {
            div.accommodationImage { width: 100%; display: block; float: none; }
                div.accommodationImage .imageWrapper { max-height: none; overflow: visible; display: block; }
                div.accommodationImage .imageWrapper img { width: 100%; height: auto; }
                div.accommodationImage div.accommodationImageLink { padding: 0.5em 0; }
            div.accommodationText { width: 100%; display: block; float: none; margin-top: 1em; }
            div.accommodationProperties { width: 100%; display: block; float: none; }
        }

        /*Darstellungsvariante Boxen*/
        #accommodationsResultContainer.boxes { display: -webkit-flex; -webkit-flex-direction: row; display: flex; flex-direction: row; justify-content: space-between; flex-wrap: wrap; }
            #accommodationsResultContainer.boxes div.accommodationListItem { width: 31%; padding: 0; font-size: 0.9em; }
            #accommodationsResultContainer.boxes div.accommodationImage { display: block; width: 100% !important; overflow: hidden; clear: both; }
                #accommodationsResultContainer.boxes div.accommodationImage .imageWrapper { text-align: center; text-align: center; }
                #accommodationsResultContainer.boxes div.accommodationImage .imageWrapper img { width: 100%; height: auto; }
            #accommodationsResultContainer.boxes div.accommodationText { display: block; width: 90%; clear: both; padding: 1em 4%; margin: 0; }
                #accommodationsResultContainer.boxes div.accommodationText p { display: none; }
                #accommodationsResultContainer.boxes div.accommodationText .buttons { margin: 1.5em 0 1em 0; }
            #accommodationsResultContainer.boxes div.accommodationProperties { display: block; width: 100%; clear: both; }
                #accommodationsResultContainer.boxes div.accommodationProperties .propertyItem:nth-child(2n) { border-right: 0px none; width: 41%; }
                #accommodationsResultContainer.boxes div.accommodationProperties .propertyItem:nth-child(5) { border-bottom: 0px none; }
                #accommodationsResultContainer.boxes div.accommodationProperties .propertyItem:nth-child(6) { border-bottom: 0px none; }

            @media screen and (max-width: 800px) {
                #accommodationsResultContainer.boxes div.accommodationListItem { width: 47.5%; font-size: 1em; }
            }

            @media screen and (max-width: 620px) {
                #accommodationsResultContainer.boxes div.accommodationText .buttons { margin: 0.5em 0; }
                #accommodationsResultContainer.boxes div.accommodationText .buttons a { padding-left: 0.5em; padding-right: 1em; }
                #accommodationsResultContainer.boxes div.accommodationText a:nth-child(2) { margin-right: 0; }
            }

            @media screen and (max-width: 550px) {
                #accommodationsResultContainer.boxes div.accommodationListItem { width: 100%; }
                #accommodationsResultContainer.boxes div.accommodationImage div.accommodationImageLink { padding-left: 1.25em; }
            }

        /*Darstellungsvariante Karte*/
        #sectionAccommodations.map {  }
           #sectionAccommodations.map div.accommodationListItem { margin-right: 37.5%;  }
           #accommodationsResultGMap { position: absolute; width: 41.5%; height: 400px; top: 0; right: -6%; z-index: 50; }
           #accommodationsResultGMap.fixed { position: fixed; height: 100%; top: 0; right: 0; width: 37%; }

           #accommodationsResultContainer.map {}
            #accommodationsResultContainer.map div.accommodationImage { display: inline-block; vertical-align: top; width: 30%; }
                #accommodationsResultContainer.map div.accommodationText {  margin: 0; margin-left: 3%; width: 66%;}
                #accommodationsResultContainer.map div.accommodationText .buttons { margin-top: 1.5em; }
                #accommodationsResultContainer.map div.accommodationProperties {  float: right; width: 67%; vertical-align: top; margin-top: 1.5em; }
                #accommodationsResultContainer.map div.accommodationProperties .propertyItem { width: 24.3% !important; border-left: 1px solid #E9E9E9 !important; border-right: 0px none; }

    /*Accommodation view*/
    #sectionAccommodationView { padding-top: 1em; background-image: url(/assets/images/hintergrunddeko_rechts.png); background-position: right; background-repeat: repeat-y; }
        #sectionAccommodationView .sectionInner { padding-right: 350px; }

        #sectionAccommodationView .accommodationTabs { background-color: #F1F1F1; margin-top: 2em; }
        #sectionAccommodationView .accommodationTabs a { display: inline-block; background-color: #F1F1F1; padding: 0.6em 0.85em; float: left; border-right: 1px solid #E9E9E9; font-size: 0.9em; cursor: pointer; }
        #sectionAccommodationView .accommodationTabs a:last-child { margin-right: 0; }
        #sectionAccommodationView .accommodationTabs a.active { color: #FFF; background-color: #23b9ce; }

        @media screen and (max-width: 800px) {
            #sectionAccommodationView .accommodationTabs a { border-bottom: 1px solid #E9E9E9; }
        }

        /*Accommodation property boxes*/
        .propertyItems { display: -webkit-flex; -webkit-flex-direction: row; display: flex; flex-direction: row; justify-content: space-between; flex-wrap: wrap; }
            .propertyItem { border-right: 1px solid #E9E9E9; border-bottom: 1px solid #E9E9E9; padding: 0.5em 4%; display: inline-block; width: 40%; text-align: center;  }
            .propertyItem i.fa { font-size: 1.3em; color: #23b9ce; clear: both; display: block; margin-bottom: 0.5em; }
            .propertyItem i.fa.sqm { font-size: 1.2em; font-weight: 600; font-family: "OpenSans", Arial, sans-serif; }
            .propertyItem .propertyLabel { font-size: 0.8em; line-height: 1.1em; clear: both; display: block; margin-top: 0.5em; color: #666; }

        /*Toolbox*/
        #accommodationToolBox { width: 320px; position: absolute; top: 2em; right: 0;  }
        #accommodationToolBox.fixed { position: fixed; right: 5%; top: 10em; }
        #accommodationToolBox .toolboxInfos { border: 1px solid #CCC; padding: 20px; background-color:#F1F1F1;}
            #accommodationToolBox .toolboxNavigator { margin-top: 1em; }

            #accommodationToolBox hr { margin: 1em 0; border: 0px none; border-top: 1px solid #CCC; clear: both; }
            #accommodationToolBox .button { width: 90%; display: block; clear: both; padding: 0.7em 5% 0.6em 5%; }
                #accommodationToolBox .button i.fa { margin-right: 0.5em; }

            #accommodationToolBox .propertyItem { border-right: 0px none; border-bottom: 0px none; font-size: 0.9em; line-height: 1em; padding: 0.5em 2%; width: 27%; margin-bottom: 0.5em; }
                #accommodationToolBox .propertyItem .propertyLabel { font-size: 0.75em; }

            #accommodationToolBox .price { float: right; text-align: right; }

            #accommodationToolBox .inline-half.next { float: right; text-align: right; }
            #accommodationToolBox .navButton { background-color: #FFFFFF; border: 1px solid #23b9ce; padding: 0.4em 0.5em 0.3em 0.5em; }
            #accommodationToolBox .navButton.prev { margin-right: 0.5em; }
            #accommodationToolBox .navButton.next { margin-left: 0.5em;  }

            @media screen and (max-width: 800px) {
                #sectionAccommodationView .sectionInner { padding-right: 0; }
                #accommodationToolBox { position: relative; margin-bottom: 2em; right: 0; top: 0; width: 100%; }
                .propertyItem .propertyLabel { font-size: 1em !important; }
            }

        /*Image gallery*/
        #sectionAccommodationsImages { padding: 0 !important; }
            #sectionAccommodationsImages ul { margin: 0; padding: 0; }
            #sectionAccommodationsImages ul li { border-right: 1px solid #FFF; width: auto; height: 250px; position: relative; overflow: hidden; display: block; }
            #sectionAccommodationsImages ul li img { height: auto; width: auto; min-height: 100%; min-width: 100%; position: absolute; }
            #sectionAccommodationsImages ul li a { position: absolute; width: 100%; height: 100%; background-size: cover; background-repeat: no-repeat; background-position: center; }
            #sectionAccommodationsImages ul li a .zoomOverlay { position: absolute; width: 100%; height: 100%; z-index: 100; top: 0; left: 0; text-align: center; background-color: rgba(240,125,0,0.7); display: none; }
            #sectionAccommodationsImages ul li a .zoomOverlay i.fa { color: #FFFFFF; margin-top: 2em; font-size: 3em; }

        #navAccommodationImages { position: absolute; top: 0; width: 100%; height: 1px; z-index: 10; }
            #navAccommodationImages a { position: absolute; width: 75px; height: 250px; text-align: center; background-color: rgba(255,255,255,0.4); }
            #navAccommodationImages a i.fa { color: #FFF; font-size: 2.5em; margin-top: 100px; color: rgba(255,255,255,0.75); }
            #navAccommodationImages a:hover i.fa { color: #FFF; }
            #navAccommodationImages a.flex-prev { left: 0; top: 0; }
            #navAccommodationImages a.flex-next { right: 0; top: 0; }

        @media screen and (max-width: 700px) {
            #navAccommodationImages a.flex-prev, #navAccommodationImages a.flex-next { display: none; }
        }

        /*Prices, contact*/
        div.panelPrices { display: inline-block; width: 47.5%; }
            table.prices { width: 100%; }
            table.prices tr td { vert-align: top; font-size: .9em; padding: .6em 1em .4em 0; border-top: 1px solid #F1F1F1; }
            table.prices tr th { vert-align: bottom; font-size: .9em; padding: .2em 1em .2em 0; text-align: left; }

        div.panelContact { display: inline-block; width: 47.5%; float: right; }
            div.panelContact .button { display: block; margin-bottom: 1em; clear: both; width: 240px; }

        @media screen and (max-width: 900px) {
            div.panelPrices { display: block; width: 100%; }
            div.panelContact { display: block; width: 100%; }
        }

        /*Location Google map*/
        div#gMapLocation { height: 450px; margin-bottom: 2em; }
        @media screen and (max-width: 700px) {
            div#gMapLocation { height: 250px; }
        }

        /*Attributes*/
        div.accommodationAttributes {}
            div.accommodationAttributes .attributeItem { display: inline-block; font-size: 0.9em; padding: 0.4em 0.75em; margin-bottom: 0.5em; margin-right: 0.2em; background-color: #F1F1F1; }
            div.accommodationAttributes .attributeItem:before { font-family: FontAwesome; content: '\f00c'; margin-right: 0.3em; color: #CCC; font-size: 1.1em;  }

    /*Calendar*/
    a.occupationSelectYear { font-size: 1em; display: inline-block; padding: 0.4em 1em 0.3em 1em; margin: 1em 0.5em 1em 0; color: #FFF; text-decoration: none; cursor: pointer; background-color: #23b9ce; }
    a.occupationSelectYear.active { background-color: #f07d00; }

    div.occupationCalendar { display: -webkit-flex; -webkit-flex-direction: row; display: flex; flex-direction: row; justify-content: space-between; flex-wrap: wrap; }
    div.occupationCalendar * { font-size: 0.9em; }
    div.occupationCalendar.nextYear { display: none; }

    div.occupationCalendar div.month { width: 32%; margin-bottom: 1em; display: inline-block; display: -webkit-flex; -webkit-flex-direction: row; display: flex; flex-direction: row; justify-content: flex-start; flex-wrap: wrap; }
    div.monthName { margin-bottom: 4px; padding-top: 3px; text-align: center; width: 100%;}
        div.occupationCalendar div.day { padding: 0.3em 0px 0.25em 0; cursor:default; width: 13.8%; display: inline-block; background-color:#F1F1F1; text-align: center; border-right: 1px solid #FFF; border-bottom: 1px solid #FFF; }
        div.occupationCalendar div.day.weekday { background-color:#CCC; color: #FFF; }
        div.occupationCalendar div.day.ANAB { background-image:url(/assets/images/bg_anabreise.png); background-repeat: no-repeat; background-position: center; color: #FFF; }
        div.occupationCalendar div.day.B { background-color: rgba(156,46,43,0.8); color: #FFF; }
        div.occupationCalendar div.day.F { background-color: rgba(37,162,89,0.8); color: #FFF; }

    @media screen and (max-width: 1100px) {
        div.occupationCalendar div.month { width: 47.5%; }
    }

    @media screen and (max-width: 500px) {
        div.occupationCalendar div.month { width: 100%; }
    }

    /*Overlay add Favourite*/
    body.addFavourite { max-width: 550px; padding-bottom: 1em; }
        body.addFavourite textarea { background-color: #F1F1F1; }

    /*Nachricht/Buchungsanfrage*/
    #sectionAccommodationMessage {}
        #sectionAccommodationMessage .sectionInner { }

        #formSendMessage table { width: 75%; }
            #formSendMessage table tr td { vertical-align: top;  }
            #formSendMessage table tr td:nth-child(1) { padding-right: 4em; width: 30%; }

        .phoneItem { display: inline-block; background-color: #FFF; position: relative; margin-right: 1.5em; }
            .phoneItem i.fa { display: inline-block; background-color: #FFF; color: #FFF; background-color: #f07d00; padding: 0.2em 0.3em; float: left; font-size: 1.6em; }
            .phoneItem .number { font-size: 1.2em; padding: 0.4em 1em; display: inline-block; float: left; }

    @media screen and (max-width: 800px) {
        #formSendMessage table { width: 100%; }
        #formSendMessage table tr td:nth-child(1) { padding-right: 1em; width: auto; }
    }

    /*Startseite*/
    #sectionHomeMood { padding: 0;  }
        #sectionHomeMood #moodWelcome { text-align: center; position: absolute; z-index: 100; top: 0; width: 100%; }
            #sectionHomeMood #moodWelcome img.logo { width: 25%; height: auto; margin-top: 2em; }
            #sectionHomeMood #moodWelcome img.regionTitle { width: 25%; height: auto; margin: 1em auto; clear: both; display: block; }
            #sectionHomeMood #moodWelcome h2 { color: #FFF; }

        #sectionHomeMood div#moodImagesHome { position: relative; clear: both; }
            #sectionHomeMood div#moodImagesHome li { display: block; position: absolute; }
            #sectionHomeMood div#moodImagesHome li img { width: 100%; height: auto; }

        #sectionHomeMood #wrapperBookingSearch { position: absolute; z-index: 100; bottom: 2em; width: 90%; padding: 0 5%; }
            #sectionHomeMood #containerBookingSearch {  }

        @media screen and (max-width: 900px) {
            #sectionHomeMood #moodWelcome img.logo { width: 30%; }
        }

    #sectionHomeTeaser { background-image: url(/assets/images/hintergrunddeko_rechts.png); background-position: right; background-size: auto 400%; background-repeat: repeat-y; }
        #sectionHomeTeaser .sectionInner { display: -webkit-flex; -webkit-flex-direction: row; display: flex; flex-direction: row; justify-content: flex-start; flex-wrap: wrap;}
        #sectionHomeTeaser .teaserItem { display: inline-block; width: 27%; padding: 0 3%; text-align: center; margin: 2em 0; }
        #sectionHomeTeaser .homeTeaserHeadline { width: 100%; text-align: center; }


        @media screen and (max-width: 800px) {
            #sectionHomeTeaser .sectionInner { display: block; }
                #sectionHomeTeaser .teaserItem { width: 80%; padding: 0 10%; margin: 1em 0; display: block; }
                #sectionHomeTeaser .teaserItem:nth-child(2) { border-top: 1px solid #E9E9E9; border-bottom: 1px solid #E9E9E9; padding-top: 1em; padding-bottom: 1em; }
        }

    /*Lastminute-Angebote*/
    #sectionLastminute {  }
        #sectionLastminute .sectionInner { padding: 1em 0; }

        #lastminuteList { position: relative; }
            #lastminuteList div.lastminuteItem { background-color: #FFF; position: relative; -webkit-box-shadow: 0px 0px 4px 2px rgba(0,0,0,0.2);
                -moz-box-shadow: 0px 0px 4px 2px rgba(0,0,0,0.2);
                box-shadow: 0px 0px 4px 2px rgba(0,0,0,0.2);
                -webkit-transition: top 1s ease, left 1s ease;
                -moz-transition: top 1s ease, left 1s ease;
                -o-transition: top 1s ease, left 1s ease;
                -ms-transition: top 1s ease, left 1s ease; }

            .lastminuteItem div.lastminuteImage {}
                .lastminuteItem div.lastminuteImage img { width: 100%; height: auto; }

            .lastminuteItem div.lastminuteText { padding: 0.75em 1em; position: relative; }
                .lastminuteItem div.lastminuteText .button { margin: 0; clear: both; float: none; display: inline-block; }
                .lastminuteItem div.lastminutePrice { position: absolute; color: #FFF; background-color: #f07d00; top: -115px; width: 130px; height: 70px; padding: 40px 0 20px 0; border-radius: 100%; right: -10px; text-align: center; font-weight: 700; font-size: 1.3em;
                    -webkit-box-shadow: 0px 0px 4px 2px rgba(0,0,0,0.2);
                    -moz-box-shadow: 0px 0px 4px 2px rgba(0,0,0,0.2);
                    box-shadow: 0px 0px 4px 2px rgba(0,0,0,0.2); }
                .lastminuteItem div.lastminutePrice .pricePer { font-size: 0.8em; font-weight: 500; display: block; clear: both; }

            .lastminuteItem .accommodationTitle { margin-right: 15%; display: block; }

    /*Merkliste*/
    #sectionFavourites {}
    #sectionFavourites textarea { background-color: #F1F1F1; }

    /*Unterkünfte Startseite/Portalseite*/
    #sectionHomeAccommodations { text-align: center; }

    /*Slider Unterkünfte Startseite/Portalseite*/
    #sectionHomeAccommodations { padding-left: 5%; padding-right: 5%; }
        #sliderAccommodations {}
        #sliderAccommodations ul.slides { display: -webkit-flex; -webkit-flex-direction: row; display: flex; flex-direction: row; justify-content: flex-start; flex-wrap: wrap; }

        #sliderAccommodations li { background-color: #FFF; display: inline-block; position: relative; padding-bottom: 3em; }

        #sliderAccommodations li > a.button { position:absolute; bottom: 0.5em; left: 1em; }

        #sliderAccommodations .accommodationImage { width: 100%; display: block; clear: both; background-size: cover; height: 200px; background-position: center; background-repeat: no-repeat; }
        #sliderAccommodations .accommodationImage img { width: 100%; height: auto; display: block; }

        #sliderAccommodations .accommodationText { padding: 1em 0.5em 0 0.5em; display: block; clear: both; width: auto; text-align: left; position: relative; }

            #sliderAccommodations .accommodationText .accommodationPrice { position: absolute; color: #FFF; background-color: #f07d00; top: -75px; width: 90px; height: 50px; padding: 25px 0 15px 0; border-radius: 100%; right: -20px; text-align: center; font-weight: 700; font-size: 1em;
                -webkit-box-shadow: 0px 0px 4px 2px rgba(0,0,0,0.2);
                -moz-box-shadow: 0px 0px 4px 2px rgba(0,0,0,0.2);
                box-shadow: 0px 0px 4px 2px rgba(0,0,0,0.2); }
            #sliderAccommodations .accommodationPrice  .accommodationPriceLabel { font-size: 0.8em; display: block; font-weight: 400; }

        #sliderAccommodations .accommodationText .accommodationTitle { font-size: 1.1em; }
            #sliderAccommodations .accommodationText i.fa-star { font-size: 0.9em; }

        #sectionHomeAccommodations > a.flexnav { display: block; position: absolute; height: 100%; width: 40px; top: 0; background-color: #d8d8d8; cursor: pointer; }
        #sectionHomeAccommodations > a.flexnav i.fa { color: #FFF; font-size: 1.6em; position: absolute; top: 50%; margin-top: -0.8em; }
        #sectionHomeAccommodations > a.flex-next { right: 0%; }
            #sectionHomeAccommodations > a.flex-next i.fa { right: 0; }
        #sectionHomeAccommodations > a.flex-prev { left: 0%; }
            #sectionHomeAccommodations > a.flex-prev i.fa { left: 0; }

    @media screen and (max-width: 700px) {
        #sectionHomeAccommodations { padding-left: 3%; padding-right: 3%; }
        #sectionHomeAccommodations > a.flexnav { display: none; }
    }

    /*Portalseite*/
    #sectionHomeRegions { padding: 0; }
        #sectionHomeRegions a.flexnav { position: absolute; top: 0px; width: 40px; height: 100%; background-color: #0E33D4; z-index: 500; cursor: pointer; background-color: rgba(35,185,206, 0.7); }
            #sectionHomeRegions a.flexnav i.fa { color: #FFF; font-size: 1.6em; position: absolute; top: 50%; margin-top: -0.8em; }
            #sectionHomeRegions a.flex-next { right: 0; }
            #sectionHomeRegions a.flex-prev { left: 0; }

        #sliderRegions li { position: relative; }
        #sliderRegions img { width: 100%; height: auto; display: block; }

    /*Über uns*/
    .sectionAboutUs { }
        .sectionAboutUs img.logo { max-width: 25%; height: auto; }