/* ==========================================================================
   LAYOUT
   Basic structure of the website. 
   ========================================================================== */

/*
 * KEYFRAMES
 */

@keyframes fade-in {
  from {
    opacity: 0;
    -webkit-transform: scale(1.15, 1.15) translateY(25vh);
    -moz-transform: scale(1.15, 1.15) translateY(25vh);
    -o-transform: scale(1.15, 1.15) translateY(25vh);
    transform: scale(1.15, 1.15) translateY(25vh);
  }
  to {
    opacity: 1;
    -webkit-transform: scale(1, 1) translateY(0);
    -moz-transform: scale(1, 1) translateY(0);
    -o-transform: scale(1, 1) translateY(0);
    transform: scale(1, 1) translateY(0);

  }
}

/*
 * BASIC
 */

::-moz-selection {
    background-color: rgba(169, 190, 62, 0.5);
    color: #ffffff;
}
::selection {
    background-color: rgba(169, 190, 62, 0.5);
    color: #ffffff;
}
*:focus {
    outline: 0;
}
table {
    border-spacing: 0;
    border-collapse: collapse;
}
th,
td {
    padding: 0;
}
label {
	font-weight: 300;
}
input,
select,
textarea {
	outline: none
}
address {
    font-style: normal;
    margin-bottom: 0;
}
img {
    height: auto;
    width: 100%;
}

/*
 * TYPOGRAPHY
 */

html {
    font-size: 16px;
}
body {
	color: #6F685E;
	line-height: 1.4;
	font-family: 'Source Sans Pro', sans-serif;
    font-size: 62.5%;
    font-weight: 300;
}
b,
strong,
th {
	font-weight: 700;
}
a {
    color: #fab614;
    text-decoration: none;
}
a:visited {
    color: #fab614;
}
a:hover {
    color: #fab614;
    text-decoration: underline;
}
h1,
h2,
h3,
h4,
h5,
h6,
p {
    margin: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 1.0em;
    font-weight: 400;
}
h1,
h2,
.obk-headline {
    font-size: 4.0em;
    font-weight: 300;
}
h2,
h3,
.obk-subheadline {
    font-size: 3.5em;
    font-weight: 600;
}
h4 {
    font-size: 2.5em;
    font-weight: 600;
}
h5 {
    font-size: 3.5em;
    font-weight: 300;
}
.obk-main p {
    font-size: 2.0em;
    margin: 20px 0;
}
.obk-main ul,
.obk-main ol {
    font-size: 2.0em;
    margin: 20px 0;
    padding: 0 0 0 20px;
}
.obk-main table {
    border: 1px solid #6F685E;
    margin: 20px 0;
    width: 100%;
}
    .obk-main table tr th,
    .obk-main table tr td {
        font-size: 2.0em;
        padding: 5px 20px 5px 20px;
    }
    .obk-main table tr th {
        background-color: #fab614;
        color: #ffffff;
        text-align: center;
        text-transform: uppercase;
    }
    .obk-main table tr td {
        text-align: left;
    }
    .obk-main table tr:nth-child(even) td {
        background-color: #ffffff;
    }
    .obk-main table tr:nth-child(odd) td {
        background-color: #D7D0CA;
    }
    .obk-main table tr:hover td {
        background-color: rgba(21,75,109,0.25);
    }
.obk-main .obk-table-wrap {
    margin: 20px 0;
    overflow-x: scroll;
}
    .obk-main .obk-table-wrap table {
        margin: 0;
        min-width: 768px;
    }
.obk-button {
    -webkit-flex-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    background-color: #9A948E;
    border: 0.4em solid #9A948E;
    color: #ffffff;
    cursor: pointer;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;  
    display: flex;
    height: 4.0em;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-width: 12.5em;
    padding: 0 1.0em;
    text-decoration: none !important;
}
.obk-button.obk-button--cta {
    background-color: #fab614;
    border-color: #fab614;
}
/* reob 221024 neue Farbe für "direkt buchen" */
.obk-button.obk-button--cta-2 {
    background-color: #fa9b14;
    border-color: #fa9b14;
}
.obk-button:visited {
    color: #ffffff;
}
.obk-button:hover {
    background-color: transparent !important;
    color: #6F685E;
}
    .obk-button > span {
        font-size: 2.0em;
        overflow: hidden;
        text-transform: uppercase;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.obk-button-v2 {
    -webkit-flex-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    background-color: #fab614;
    border-radius: 100%;
    color: #ffffff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;  
    display: flex;
    height: 8.0em;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    overflow: hidden;
    -webkit-transition: transform 0.25s ease-in;
    -moz-transition: transform 0.25s ease-in;
    -o-transition: transform 0.25s ease-in;
    transition: transform 0.25s ease-in;
    width: 8.0em
}
    .obk-button-v2:visited {
        color: #ffffff;
    }
    .obk-button-v2:hover {
        color: #ffffff;
        text-decoration: none;
        -webkit-transform: scale(0.9);
        -ms-transform: scale(0.9);
        transform: scale(0.9);
    }
    .obk-button-v2 span {
        font-size: 1.6em;
        line-height: 1.0;
        overflow: hidden;
        text-overflow: ellipsis;
        text-transform: uppercase;
        white-space: nowrap;
    }

/*
 * PAGE
 */

.obk-page {
    overflow: hidden;
    padding-top: 10.0em;
    position: relative;
    z-index: 5;
}

/*
 * HEADER
 */

.obk-header {
    -webkit-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.25);
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 40;
}   
    .obk-header .obk-header__top {
        background-color: #D7D0CA;
    }
        .obk-header .obk-header__top .obk-grid__row {
            height: 4.0em;
        }
    .obk-header .obk-header__bottom {
        background-color: #6F685E;
    }
        .obk-header .obk-header__bottom .obk-grid__row {
            height: 6.0em;
        }
            .obk-header .obk-header__top .obk-header__left,
            .obk-header .obk-header__bottom .obk-header__left {
                max-width: 20.0em;
                width: 25%;
            }
            .obk-header .obk-header__top .obk-header__right,
            .obk-header .obk-header__bottom .obk-header__right {
                padding-left: 4.0em;
            }
            .obk-header .obk-header__bottom .obk-header__left {
                position: relative;
            }
    .obk-lang-menu {
        list-style-type: none;
        margin: 0;
        margin-right: auto;
        padding: 0;
    }
        .obk-lang-menu > li {
            float: left;
            padding-left: 1.0em;
            text-transform: uppercase;
        }
        .obk-lang-menu > li:first-child {
            margin-left: 0;
        }
            .obk-lang-menu > li > a {
                color: #6F685E;
                font-size: 1.8em;
            }
            .obk-lang-menu > li > a.obk-lang-menu__act {
                font-weight: 700;
            }
            .obk-lang-menu > li > a:visited {
                color: #6F685E;
            }
            .obk-lang-menu > li > a:hover {
                color: #fab614;
                text-decoration: none;
            }
    .obk-header .obk-contact__item {
        color: #6F685E;
        display: inline-block;
        margin-left: 2.0em;
    }
    .obk-header .obk-contact__item:first-child {
        margin-left: 0;
    }   
        .obk-header .obk-contact__item .icon,
        .obk-header .obk-contact__item > span {
            font-size: 1.8em;
        }
        .obk-header .obk-contact__item .icon + span {
            margin-left: 3px;
        }
    .obk-header .obk-contact__item:visited {
        color: #6F685E;
    }
    .obk-header .obk-contact__item:hover {
        color: #fab614;
        text-decoration: none;
    }
    .obk-header .obk-cta {
        margin-left: 2.0em;
    }
    .obk-header .obk-main-logo {
        background-color: #ffffff;
        height: 10.0em;
        left: 0;
        position: absolute;
        top: -4.0em;
        width: 100%;
    }
        .obk-header .obk-main-logo a {
            display: inline-block;
        }
        .obk-header .obk-main-logo img {
            height: auto;
            max-width: 18.0em;
            width: 100%;
        }
    .obk-header .obk-main-menu {
        list-style-type: none;
        margin: 0;
        padding: 0;
    }
        .obk-header .obk-main-menu > li  {
            padding: 0.5em 0 0.5em 2.0em;
            position: relative;
            width: 25%;
        }
        .obk-header .obk-main-menu > li:after {
            background-color: #ffffff;
            bottom: 0;
            content: '';
            height: 0.5em;
            max-height: 0;
            position: absolute;
            right: 0;
            width: calc(100% - 2.0em);
            z-index: 5;
        }
        .obk-header .obk-main-menu > li:hover:after {
            max-height: 0.5em;
            -webkit-transition: max-height 0.25s ease-in;
            -moz-transition: max-height 0.25s ease-in;
            -o-transition: max-height 0.25s ease-in;
            transition: max-height 0.25s ease-in;
        }
            .obk-header .obk-main-menu > li > a,
            .obk-header .obk-main-menu > li > a:visited,
            .obk-header .obk-main-menu > li > a:hover {
                color: #ffffff;
            }
            .obk-header .obk-main-menu > li > a {
                display: block;
                font-size: 2.5em;
                overflow: hidden;
                position: relative;
                text-align: right;
                text-overflow: ellipsis;
                white-space: nowrap;
                width: 100%;
                z-index: 10;
            }
            .obk-header .obk-main-menu > li > a:hover {
                text-decoration: none;
            }
            .obk-header .obk-main-menu > li .obk-main-menu__sub-menu {
                background-color: rgba(255, 255, 255, 0.9);
                list-style-type: none;
                max-height: 0;
                margin: 0;
                overflow: hidden;
                padding: 0 2.0em;
                position: absolute;
                right: 0;
                top: 100%;
                width: calc(100% - 2.0em);
            }
            .obk-header .obk-main-menu > li:hover .obk-main-menu__sub-menu {
                max-height: 500px;
                -webkit-transition: max-height 0.5s ease-in;
                -moz-transition: max-height 0.5s ease-in;
                -o-transition: max-height 0.5s ease-in;
                transition: max-height 0.5s ease-in;
                -webkit-transition-delay: 0.25s;
                -moz-transition-delay: 0.25s;
                -o-transition-delay: 0.25s;
                transition-delay: 0.25s;
            }
                .obk-header .obk-main-menu > li .obk-main-menu__sub-menu > li {
                    border-bottom: 0.1em solid #6F685E;
                    padding: 2.0em 0 2.0em 2.5em;
                    position: relative;
                }
                .obk-header .obk-main-menu > li .obk-main-menu__sub-menu > li:last-child {
                    border-bottom: 0;
                }
                    .obk-header .obk-main-menu > li .obk-main-menu__sub-menu > li .icon {
                        color: #fab614;
                        font-size: 2.0em;
                        left: 0;
                        position: absolute;
                        top: 50%;
                        -webkit-transform: translateY(-50%);
                        -ms-transform: translateY(-50%);
                        transform: translateY(-50%);
                        z-index: 5;
                    }
                    .obk-header .obk-main-menu > li .obk-main-menu__sub-menu > li > a {
                        color: #6F685E;
                        display: block;
                        font-size: 2.0em;
                    }
                    .obk-header .obk-main-menu > li .obk-main-menu__sub-menu > li > a:visited {
                        color: #6F685E;
                    }
                    .obk-header .obk-main-menu > li .obk-main-menu__sub-menu > li > a:hover {
                        color: #fab614;
                        text-decoration: none;
                    }
    .obk-header .dna-mobile-control {
        display: none;
    }
    .obk-header .obk-mobile-menu {
        display: none;
    }

/*
 * VISTA
 */

.obk-vista {
    background-color: #000000;
    height: calc(75vh - 10.0em);
    max-height: 1080px;
    min-height: 550px;
    overflow: hidden;
    position: relative;
    z-index: 10;
}
    .obk-vista .obk-slider {
        height: 100%;
        overflow: hidden;
    }
    .obk-vista .obk-slider.slick-slider {
        background-color: #ffffff;
    }
        .obk-vista .obk-slider * {
            height: 100% !important;
        }
        .obk-vista .obk-slider .obk-slider__item {
            float: left;
            width: 100%;
        }
        .obk-vista .obk-slider.slick-slider .slick-list {
            padding: 0 10%;
        }
        .obk-vista .obk-slider.slick-slider .obk-slider__item {
             padding: 0 0.5em;
        }
            .obk-vista .obk-slider.slick-slider .obk-slider__item img {
                opacity: 0.5;
                -webkit-transition: opacity 1s ease-in;
                -moz-transition: opacity 1s ease-in;
                -o-transition: opacity 1s ease-in;
                transition: opacity 1s ease-in;
                }
        .obk-vista .obk-slider.slick-slider .obk-slider__item.slick-active img {
            opacity: 1;
        }
    .obk-vista .obk-arrows {
        left: 0;
        display: none;
        padding: 0 10%;
        pointer-events: none;
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 100%;
        z-index: 5;
    }
    .obk-vista .obk-slider.slick-slider + .obk-arrows {
        display: block;
    }
        .obk-vista .obk-arrows .obk-arrows__arrow {
            -webkit-flex-align: center;
            -ms-flex-align: center;
            -webkit-align-items: center;
            align-items: center;
            background-color: #ffffff;
            color: #5B2E00;
            cursor: pointer;
            display: -webkit-box;
            display: -moz-box;
            display: -ms-flexbox;
            display: -webkit-flex;  
            display: flex;
            float: left;
            height: 4.0em;
            -webkit-box-pack: center;
            -moz-box-pack: center;
            -webkit-justify-content: center;
            -ms-flex-pack: center;
            justify-content: center;
            opacity: 0.8;
            pointer-events: auto;
            width: 4.0em;
        }
        .obk-vista .obk-arrows .obk-arrows__arrow:hover {
            opacity: 1;
        }
        .obk-vista .obk-arrows .obk-arrows__arrow--prev {
            float: left;
            margin-left: 0.5em;
        }
        .obk-vista .obk-arrows .obk-arrows__arrow--next {
            float: right;
            margin-right: 0.5em;
        }
            .obk-vista .obk-arrows .obk-arrows__arrow .icon {
                font-size: 2.5em;
            }
		
/*
 * MAIN
 */

.obk-main {
    position: relative;
    z-index: 20;
}

/*
 * FOOTER
 */

.obk-footer {
    padding-bottom: 80px;
    position: relative;
    z-index: 30;
}
    .obk-footer .obk-footer__contact {
        background-color: #D7D0CA;
        padding-top: 0.5em;
    }
        .obk-footer .obk-footer-image,
        .obk-footer .obk-address {
            width: 50%;
        }
        .obk-footer .obk-footer-image {
            background-position: center center;
            -webkit-background-size: cover;
            -moz-background-size: cover;
            -o-background-size: cover;
            background-repeat: no-repeat;
            background-size: cover;
        }
        .obk-footer .obk-address {
            min-height: 35.0em;
            padding: 4.0em 2.0em;
            text-align: center;
        }
            .obk-footer .obk-address__title {
                font-size: 2.5em;
                font-weight: 300;
            }
            .obk-footer .obk-address__title + .obk-address__text {
                margin-top: 2.0em;
            }
                .obk-footer .obk-address__text address {
                    font-size: 1.8em;
                }
                .obk-footer .obk-address__text a {
                    color: #6F685E;
                }
                .obk-footer .obk-address__text a:visited {
                    color: #6F685E;
                }
                .obk-footer .obk-address__text a:hover {
                    color: #fab614;
                    text-decoration: none;
                }
    .obk-footer .obk-footer__social {
        background-color: #6F685E;
    }
        .obk-footer .obk-social {
            color: #ffffff;
            padding: 1.5em 0;
            min-height: 6.0em;
        }
            .obk-footer .obk-social a {
                color: #ffffff;
            }
            .obk-footer .obk-social a:visited {
                color: #ffffff;
            }
            .obk-footer .obk-social a:hover {
                color: #fab614;
                text-decoration: none;
            }
            .obk-footer .obk-social__item {
                display: block;
                padding: 0.5em 1.5em;
            }
                .obk-footer .obk-social__item .icon {
                    font-size: 3.0em;
                }
    .obk-footer .obk-footer__credits {
        padding-top: 2.0em;
    }
        .obk-footer .obk-legal-nav,
        .obk-footer .obk-creator {
            font-size: 1.6em;
        }
        .obk-footer .obk-legal-nav a,
        .obk-footer .obk-creator a {
            color: #6F685E;
        }
        .obk-footer .obk-legal-nav a:visited,
        .obk-footer .obk-creator a:visited {
            color: #6F685E;
        }
        .obk-footer .obk-legal-nav a:hover,
        .obk-footer .obk-creator a:hover {
            color: #fab614;
            text-decoration: none;
        }
        .obk-footer .obk-creator {
            text-align: right;
        }
    .obk-footer .obk-footer__partner {
        padding-bottom: 2.0em;
        padding-top: 2.0em;
    }
        .obk-footer .obk-partner {
            text-align: center;
        }
            .obk-footer .obk-partner .obk-partner__item {
                display: inline-block;
                padding: 1.0em 2.0em;
            }
                .obk-footer .obk-partner .obk-partner__item img {
                    height: 50px;
                    width: auto;
                }
    .obk-footer .obk-footer__fixed {
        background-color: #D7D0CA;
        bottom: 0;
        -webkit-box-shadow: 0px -2px 5px 0px rgba(0,0,0,0.25);
        -moz-box-shadow: 0px -2px 5px 0px rgba(0,0,0,0.25);
        box-shadow: 0px -2px 5px 0px rgba(0,0,0,0.25);
        display: block;
        left: 0;
        position: fixed;
        width: 100%;
        z-index: 50;
    }
    .obk-footer .obk-quick-request {
        height: 80px;
        margin: 0 auto;
        max-width: 1920px;
    }
        .obk-footer .obk-quick-request .obk-quick-request__field {
            float: left;
            padding: 15px 10px;
            width: 20%;
        }
        .obk-footer .obk-quick-request .obk-quick-request__field:first-child {
            padding-left: 20px;
        }
        .obk-footer .obk-quick-request .obk-quick-request__field:last-child {
            padding-right: 20px;
        }
            .obk-footer .obk-quick-request .obk-quick-request__field label,
            .obk-footer .obk-quick-request .obk-quick-request__field input,
            .obk-footer .obk-quick-request .obk-quick-request__field select {
                display: block;
                width: 100%;
            }
            .obk-footer .obk-quick-request .obk-quick-request__field label {
                font-size: 1.4em;
                height: 25px;
                line-height: 25px;
                margin-bottom: 0;
            }
            .obk-footer .obk-quick-request .obk-quick-request__field input,
            .obk-footer .obk-quick-request .obk-quick-request__field select {
                background-color: #ffffff;
                border: 1px solid #ffffff;
                border-radius: 0;
                font-size: 1.2em;
                height: 23px;
                line-height: 23px;
                padding: 0 5px 0 5px;
                -webkit-appearance: none;
                -webkit-border-radius: 0px;
            }
            .obk-footer .obk-quick-request .obk-quick-request__field input:focus,
            .obk-footer .obk-quick-request .obk-quick-request__field select:focus {
                border-color: #fab614;
            }
            .obk-footer .obk-quick-request .obk-quick-request__field input.obk-quick-request__input-submit {
                background-color: #fab614;
                border: 5px solid #fab614;
                color: #ffffff;
                font-size: 1.8em;
                height: 50px;
                line-height: 40px;
                text-transform: uppercase;
            }
            .obk-footer .obk-quick-request .obk-quick-request__field input.obk-quick-request__input-submit:hover {
                background-color: transparent;
                color: #fab614;
            }