﻿/*---------------------------------------------------
/*  site-general
/*---------------------------------------------------*/

body {
    font-family: Arial;
    font-size: 12px;
    line-height: 14px;
}

#container {
    width: 970px;
    margin: auto;
    padding: 25px 0px 55px 0px;
}

#background-top {
    width: 970px;
    height: 26px;
}


#background-bottom {
    height: 26px;
}



/*---------------------------------------------------
/*  styles
/*---------------------------------------------------*/

.title,
.title a,
h1 {
    font-size: 24px;
    font-weight: normal;
    text-decoration: none;
}

.titlesmall,
.titlesmall a,
h2 {
    font-size: 18px;
    font-weight: normal;
    text-decoration: none;
}

.title-module,
.title-module a {
    font-size: 18px;
    font-weight: normal;
    text-decoration: none;
    font-weight: bold;
    font-family: Arial Narrow;
}

a:hover {
    text-decoration: none;
    cursor: pointer;
}


.textcontent {
    line-height: 25px;
    padding: 0px 0px 50px 0px;
}



/*---------------------------------------------------
/*  language
/*---------------------------------------------------*/


#container .language {
    position: relative;
    padding-left: 63px;
    padding-bottom: 5px;
}

    #container .language a {
        text-decoration: none;
    }

    #container .language .show img {
        padding: 5px 5px 0px 5px;
    }

    #container .language .language-box {
        display: none;
        position: absolute;
        z-index: 10;
        top: 20px;
        left: 115px;
        padding: 0px 50px 0px 15px;
        line-height: 27px;
    }


/*---------------------------------------------------
/*  banner
/*---------------------------------------------------*/


#banner {
    width: 917px;
    height: 481px;
    position: relative;
    margin: auto;
}

    #banner .logo {
        position: absolute;
        top: 0px;
        left: 33px;
    }


/*---------------------------------------------------
/*  quickrequest
/*---------------------------------------------------*/

#quickrequest {
    position: absolute;
    top: 0px;
    right: 0px;
    width: 500px;
    padding: 10px 0px 0px 15px;
}

    #quickrequest .title {
        font-weight: bold;
        padding: 0px 0px 10px 0px;
        font-size: 16px;
    }

    #quickrequest .row {
        padding: 0px 0px 10px 0px;
    }

    #quickrequest .name {
        float: left;
        margin: 0px 3px 0px 5px;
    }

        #quickrequest .name input {
            border: 0;
            margin-left: 3px;
        }

        #quickrequest .name .input {
            width: 110px;
            padding: 1px 5px 1px 5px;
        }

        #quickrequest .name .input-date {
            width: 75px;
            padding: 1px 0px 1px 0px;
            text-align: center;
        }

        #quickrequest .name .inputsmall {
            width: 20px;
            padding: 1px 0px 1px 0px;
            text-align: center;
        }

    #quickrequest .row .button {
        float: right;
        margin-right: 15px;
        width: 70px;
        text-align: center;
        line-height: 18px;
    }

        #quickrequest .row .button a {
            text-decoration: none;
            padding: 0px 12px 0px 12px;
            display: block;
        }


/*---------------------------------------------------
/*  menu flyout
/*---------------------------------------------------*/

#menu-flyout {
    position: absolute;
    z-index: 5;
    bottom: 0px;
    left: 0;
    width: 100%;
    font-size: 17px;
}

    #menu-flyout a {
        text-decoration: none;
    }

    #menu-flyout .level-0 {
        position: relative;
        float: left;
    }

    #menu-flyout .menu-0 {
        padding: 0px 8px 9px 8px;
        margin: 0px 2px 0px 2px;
        line-height: 40px;
        font-family: Arial Narrow;
    }

    #menu-flyout .flyout {
        position: absolute;
        z-index: 10;
        bottom: 40px;
        left: 0px;
        display: none;
        text-align: left;
        padding: 10px 0px 10px 0px;
    }

    #menu-flyout .flyout-1 {
        position: absolute;
        top: 0px;
        left: 180px;
        display: none;
    }

        #menu-flyout .flyout .level-1 .menu-1,
        #menu-flyout .flyout .level-1 .menu-1:hover,
        #menu-flyout .flyout-1 .level-2 .menu-2,
        #menu-flyout .flyout-1 .level-2 .menu-2:hover {
            display: block;
            padding: 4px 5px 4px 20px;
            font-size: 14px;
        }

        #menu-flyout .flyout .level-1,
        #menu-flyout .flyout-1 .level-2 {
            position: relative;
            width: 180px;
        }


/*---------------------------------------------------
/*  content
/*---------------------------------------------------*/

#content {
    margin: 17px 27px 0px 27px;
}

#zone-left {
    width: 218px;
    float: left;
    position: relative;
}

#zone-right {
    width: 568px;
    margin: 0px 0px 0px 100px;
    float: left;
}

/*---------------------------------------------------
/*  menu left
/*---------------------------------------------------*/

#menu-left {
    padding: 30px 0px 60px 30px;
    line-height: 20px;
}

    #menu-left a {
        text-decoration: none;
    }

    #menu-left .menu-0 {
        font-family: Arial Narrow;
        padding: 0px 10px 10px 25px;
        font-size: 25px;
        line-height: 25px;
    }

    #menu-left .menu-1 {
        margin: 6px 0px 6px 0px;
    }

    #menu-left .menu-2,
    #menu-left .menu-2-active {
        margin: 6px 0px 6px 25px;
    }

        #menu-left .menu-1 a,
        #menu-left .menu-1 a:hover,
        #menu-left .menu-2 a,
        #menu-left .menu-2 a:hover {
            padding: 0px 10px 0px 25px;
            display: block;
        }

    #menu-left .menu-1-active {
        margin: 6px 0px 6px 0px;
    }

        #menu-left .menu-1-active a,
        #menu-left .menu-2-active a {
            padding: 0px 10px 0px 25px;
            display: block;
        }

/*---------------------------------------------------
/*  address
/*---------------------------------------------------*/


#address {
    /*position: absolute;
    bottom: 0px;
    left: 0px;*/
    font-family: Arial Narrow;
    padding: 30px 15px;
    font-size: 15px;
    line-height: 20px;
}

/*---------------------------------------------------
/*  sitepath
/*---------------------------------------------------*/

#zone-right .sitepath {
    padding: 15px 0px 12px 0px;
}

    #zone-right .sitepath a {
        text-decoration: none;
        padding: 0px 15px 0px 0px;
    }

/*---------------------------------------------------
/*  footer
/*---------------------------------------------------*/

#footer {
    padding: 40px 0px 0px 0px;
    line-height: 22px;
}

    #footer .item a {
        padding: 0px 0px 0px 12px;
    }

/*---------------------------------------------------
/*  favorites
/*---------------------------------------------------*/

.favorite {
    text-align: right;
    font-size: 11px;
}

    .favorite a {
        text-decoration: none;
        padding-right: 9px;
        font-size: 11px;
    }



/*---------------------------------------------------
/*  footer zone
/*---------------------------------------------------*/

#footerzone {
    position: relative;
    padding: 27px 27px 0px 27px;
    width: 918px;
    margin: auto;
}


    #footerzone .logos {
        float: left;
        padding: 30px 0px 0px 0px;
    }

        #footerzone .logos img {
            padding: 0px 30px 0px 0px;
            line-height: 50px;
        }


    #footerzone .karte {
        position: absolute;
        top: 40px;
        right: 40px;
    }

/*---------------------------------------------------
/*  copyright
/*---------------------------------------------------*/

.copyright {
    padding: 10px 100px 0px 27px;
    float: left;
    width: 218px;
    font-size: 11px;
}


/*---------------------------------------------------
/*  menu bottom
/*---------------------------------------------------*/

#menu-bottom {
    float: left;
    padding: 10px 0px 0px 0px;
    font-size: 11px;
}

    #menu-bottom a {
        padding: 0px 10px 0px 10px;
        text-decoration: none;
    }


/*---------------------------------------------------
/*  frame weather
/*---------------------------------------------------*/


#frame-weather {
    float: left;
    width: 218px;
    padding: 27px 100px 20px 0px;
}

    #frame-weather a {
        text-decoration: none;
    }

    #frame-weather .item .image {
        float: left;
    }

    #frame-weather .item .day {
        float: left;
        margin-left: 10px;
        line-height: 25px;
    }


    #frame-weather .item .temp {
        float: right;
        width: 40px;
        text-align: center;
        line-height: 25px;
        margin-left: 5px;
    }


/*---------------------------------------------------*/
/*  offers
/*---------------------------------------------------*/

#offers {
}

    #offers .item {
        padding: 15px;
        margin: 0px 0px 20px 0px;
    }

    #offers .date {
        float: right;
        font-weight: bold;
        font-size: 14px;
        margin-left: 15px;
    }

    #offers .price {
        font-family: Arial Narrow;
        font-size: 18px;
        font-weight: bold;
        font-style: italic;
    }

    #offers .link a {
        text-decoration: none;
        padding: 0px 0px 0px 12px;
    }

        #offers .link a:hover {
            text-decoration: underline;
        }

    #offers .detail .image {
        float: left;
        margin-right: 20px;
    }

    #offers .detail .info {
        float: right;
        padding: 10px;
        width: 180px;
    }

    #offers .detail .description {
        padding: 25px 0px 40px 0px;
    }

    #offers .detail .footer {
        padding: 20px 0px 0px 0px;
        margin: 20px 0px 0px 0px;
    }


    #offers .detail .clear {
        height: 20px;
    }


/*---------------------------------------------------
/*  routeplanner
/*---------------------------------------------------*/

#route-planner {
    margin: 20px 0px 20px 0px;
}

    #route-planner .container {
        padding: 20px;
    }


    #route-planner .title {
        font-weight: bold;
        padding: 20px 0px 10px 0px;
    }

    #route-planner .row {
        clear: both;
        padding: 2px 0px 2px 0px;
    }

        #route-planner .row .label {
            float: left;
            width: 120px;
        }

        #route-planner .row .value {
            margin-left: 120px;
        }

    #route-planner .address {
        width: 398px;
    }

    #route-planner .country {
        width: 30px;
    }

    #route-planner .zipcode {
        width: 120px;
    }

    #route-planner .place {
        width: 230px;
    }

    #route-planner .button {
        padding: 5px 20px 5px 20px;
        margin: 20px 0px 20px 0px;
    }

#google-map {
    width: 540px;
    height: 330px;
}



/*---------------------------------------------------
/*  sitemap
/*---------------------------------------------------*/

.sitemap a {
    display: block;
    padding: 2px 0;
}

.sitemap ul {
    padding-left: 30px;
}

    .sitemap ul a {
        font-weight: bold;
    }

    .sitemap ul ul a {
        font-weight: normal;
    }

    .sitemap ul ul ul ul a {
        font-style: italic;
    }

/*---------------------------------------------------
/*  jquery popup
/*---------------------------------------------------*/

.ui-widget-overlay {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0.3;
    filter: Alpha(Opacity=30);
}

.cjq-popup {
    overflow: hidden;
}

body.popup {
    padding: 10px 0 10px 10px;
}

.print-body {
    overflow: auto;
    padding: 10px 0 10px 10px;
}

.cjq-popup .ui-dialog-titlebar {
    height: 30px;
    line-height: 30px;
    font-weight: bold;
    padding-left: 10px;
}

    .cjq-popup .ui-dialog-titlebar a {
        position: absolute;
        top: 5px;
        right: 5px;
        text-decoration: none;
        font-weight: bold;
        padding: 2px 5px;
        line-height: 15px;
        width: 16px;
        height: 16px;
    }

        .cjq-popup .ui-dialog-titlebar a span {
            width: 16px;
            height: 16px;
            font-size: 0;
            line-height: 0;
            display: block;
        }


/*---------------------------------------------------
/*  utilitys
/*---------------------------------------------------*/

.relative {
    position: relative;
}

.clear {
    clear: both;
    height: 0;
    font-size: 0;
    line-height: 0;
}

img {
    border: 0;
}

/*---------------------------------------------------
/*  base module
/*---------------------------------------------------*/

.base-module .item {
    margin-bottom: 40px;
}

.base-module .image {
    float: left;
    margin-right: 30px;
}

.base-module .module-title {
    font-weight: bold;
    padding-bottom: 5px;
    text-decoration: none;
    display: block;
}

.base-module .detail-link {
    display: block;
    margin-top: 5px;
    float: right;
    background-repeat: no-repeat;
    padding-left: 10px;
    background-position: 2px 5px;
    font-weight: bold;
    margin-left: 20px;
    text-decoration: none;
}

.base-module img.type {
    float: left;
    margin-right: 10px;
}

.base-module .info .name {
    float: left;
    width: 120px;
    padding: 0 10px 0 0;
    font-weight: bold;
    font-size: 11px;
}

.base-module .info .value {
    margin-left: 120px;
    padding-right: 10px;
    font-size: 11px;
}

.base-module .image-detail {
    float: right;
    margin-left: 10px;
}


/*---------------------------------------------------
/*  contact
/*---------------------------------------------------*/

.contact-form .rooms {
    width: 220px;
    float: left;
    margin-right: 50px;
}

.contact-form .input-row {
    margin-bottom: 5px;
}

.contact-form .summary {
    margin-bottom: 10px;
}

    .contact-form .summary ul {
        margin: 5px;
        padding: 5px;
        list-style: none;
    }

        .contact-form .summary ul li {
            background-repeat: no-repeat;
            padding-left: 10px;
            background-position: left 5px;
        }

.contact-form .separator {
    height: 1px;
    margin: 10px 0;
    clear: both;
}

.contact-form .input-row span.name {
    display: inline-table;
    width: 110px;
    text-align: left;
    margin-right: 10px;
}

.contact-form .input-row .textinput-date {
    width: 80px;
}

.contact-form .input-row img {
    width: 12px;
    height: 12px;
    padding: 2px;
}

.contact-form .input-row span.second {
    width: 60px;
    text-align: right;
    margin-right: 10px;
    margin-left: 20px;
}

.contact-form .input-row input {
    width: 300px;
}

.contact-form .input-row .dropdown {
    width: 306px;
}

.contact-form .input-row input.calendar {
    width: 100px;
}

.contact-form .input-row input.small,
.contact-form .input-row.small input {
    width: 30px;
}


.contact-form .calendar-row img {
    margin-left: 5px;
    cursor: pointer;
}

.contact-form .input-row textarea {
    width: 378px;
    height: 160px;
    float: left;
}


.contact-form .privacy span.name {
    display: block;
    width: 100px;
    float: left;
}

.contact-form .privacy div {
    float: left;
    width: 378px;
}

.contact-form .privacy .privacy-box input {
    width: 20px;
}

.contact-form .privacy a {
    text-decoration: underline;
    cursor: pointer;
}

.contact-form .missingPrivacy {
    margin: 5px 0;
    display: block;
}

.contact-form .link {
    padding: 40px 0px 60px 0px;
}

.contact-form .button {
    padding: 5px 15px 5px 15px;
    text-decoration: none;
    margin: 20px 0px 40px 0px;
    float: right;
    font-size: 16px;
}

.contact-form .checkbox-additional {
    float: left;
    width: 100px;
    padding-left: 3px;
}

.contact-form .privacy .missing-privacy {
    display: block;
    padding: 5px;
    margin: 5px 0;
    width: 100%;
}

.contact-form .checkboxes input {
    width: 20px;
}

.contact-form .input-row .checkbox-additional input {
    width: 20px;
}

.contact-form .input-row .checkbox-additional-input input {
    width: 300px;
}

.contact-form .header-text {
    margin-bottom: 10px;
}

.contact-form .form-error {
    padding-right: 20px;
    background-image: url(/media/error.png);
    background-repeat: no-repeat;
    background-position: right top;
    border: 2px solid #8B1713;
}

.contact-form .privacy .form-error {
    background-color: #8B1713;
}

.contact-form .error-message {
    border: 2px solid #8B1713;
    background-color: #ffffff;
    padding: 4px;
    margin-bottom: 10px;
}

.contact-form .rooms input {
    width: 20px;
}


.contact-form .padding {
    padding: 20px 10px 5px 20px;
}

.contact-form .block {
    background-color: #e9e9e9;
    border: 1px solid #787878;
    padding: 10px;
}

/*---------------------------------------------------
/*  print
/*---------------------------------------------------*/

.print-body .padding {
    padding: 20px 10px 5px 20px;
}

.print-button {
    padding: 10px 20px 0px 0px;
    display: block;
    text-align: right;
    text-decoration: none;
    font-size: 16px;
    font-weight: bold;
}

    .print-button:hover {
        text-decoration: underline;
    }



/*remove flash borders at ff 3.6*/
object {
    outline: none;
}
