html, body {
    height: 100%;
    scroll-behavior: smooth;
}

body {
    line-height: 1.8;
    background: #fff;
    color: #797973;
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
}

.fluid-container {
    padding-left: 0;
    padding-right: 0;
}

.container-80 {
    max-width: 912px;
}

/*-----------------------------------------------------*\
  #ÜBERSCHRIFTEN
\*-----------------------------------------------------*/
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {

}

.h1, .h2, .h3, h1, h2, h3 {
    color: #526761;
}

.h1, h1 {

}

.h2, h2 {

}

.h3, h3 {

}

.frame-standard header h1::after,
.frame-standard header h2::after {
    content: "";
    width: 80px;
    height: 3px;
    background: #526761;
    display: block;
    margin: 5px auto 20px 0;
}

.frame-standard header h1.ce-headline-center::after,
.frame-standard header h2.ce-headline-center::after,
.mask-video-element .mask-video-element-ueberschrift h2::after {
    content: "";
    width: 80px;
    height: 3px;
    background: #526761;
    display: block;
    margin: 5px auto 20px auto;
}

/*------------------------------------*\
  #LINKS
\*------------------------------------*/
a {

}

/*-----------------------------------------------------*\
  #HEADER
\*-----------------------------------------------------*/
header#seitenheader {
    overflow: hidden;
}

.navigation-wrapper nav.topnav .row {
    margin-left: 0;
    margin-right: 0;
}

.mask-kopfbild-fullsize {
    height: 100vh;
}

.mask-kopfbild-fullsize img,
.mask-kopfbild-standard img {
    width: 100%;
    height: auto;
}

.mask-kopfbild-fullsize .mask-kopfbild-text {
    position: absolute;
    top: 50vh;
    width: 100%;
    text-align: center;
}

.mask-kopfbild-standard {
    position: relative;
}

.mask-kopfbild-standard .mask-kopfbild-text {
    position: absolute;
    bottom: 30px;
    width: 100%;
    text-align: center;
    line-height: 1.4;
}



.mask-kopfbild-text .mask-kopfbild-text-zeile1 {
    color: #eee;
    font-size: 48px;
    font-weight: 300;
    text-transform: uppercase;
}

.mask-kopfbild-text .mask-kopfbild-text-zeile2 {
    color: #eee;
    font-size: 72px;
    font-weight: 600;
    text-transform: uppercase;
}

.logo-gastgeber {
    padding-top: 10px;
}

.navigation-wrapper .logo-gastgeber img {
    transition: all 0.5s ease 0s;
    width: 240px;
    height: auto;
}

    /*------------ Scrollverhalten -------------*/
    .navigation-wrapper.scroll {
        background: #526761;
    }

    .navigation-wrapper.scroll .logo-gastgeber {
        padding-top: 5px;
        transition: all 0.5s ease-in-out;
    }

    .navigation-wrapper.scroll .logo-gastgeber img {
        width: 50px;
        height: auto;
    }

/*-----------------------------------------------------*\
  #SLIDER
\*-----------------------------------------------------*/



/*-----------------------------------------------------*\
  #CONTENT
\*-----------------------------------------------------*/
#main {

}

/*------------------------------------*\
  #FOOTER
\*------------------------------------*/
footer.footer-background {
    background-image: url(/fileadmin/Bilder/Dummybilder/Dummy-Bild-05.jpg);
    min-height: 80%;
    background-repeat: no-repeat;
    background-size: cover;
}

footer.footer-no-background {
    background-image: none;
    background-color: #526761;
}

footer .gradient {
    background: -moz-linear-gradient(top,  rgba(255,255,255,0) 0%, rgba(83,101,95,0.72) 43%, rgba(83,101,95,1) 60%, rgba(83,101,95,1) 100%);
    background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 0%,rgba(83,101,95,0.72) 43%,rgba(83,101,95,1) 60%,rgba(83,101,95,1) 100%);
    background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(83,101,95,0.72) 43%,rgba(83,101,95,1) 60%,rgba(83,101,95,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#53655f',GradientType=0 );
    height: 100%;
    position: absolute;
    width: 100%;
}

footer a {
    color: #fff;
}

footer .footer-wrap,
footer .footer-wrap.height,
footer .footer-wrap.height .height {
    height: 100%;
}

footer .footer-slogan .footer-ueberschriften-wrap {
    line-height: 1.2;
    color: #fff;
    text-transform: uppercase;
    padding-top: 200px;
}

footer .footer-slogan .footer-ueberschriften-wrap .footer-ueberschriften-zeile1 {
    font-size: 36px;
    font-weight: 300;
}

footer .footer-slogan .footer-ueberschriften-wrap .footer-ueberschriften-zeile2 {
    font-size: 56px;
    font-weight: 600;
}

footer .footer-links,
footer .footer-unten {
    width: 100%;
}

footer .footer-links ul {
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    margin: 0;
    padding: 0;
    list-style-type: none;
}

footer .footer-links ul li {

}

footer .footer-links ul li a {
    color: #fff;
}

footer .footer-links ul li a span {

}

footer .footer-unten .footer-box {
    color: #fff;
    text-align: center;
}

footer .footer-unten .footer-box span {
    font-size: 36px;
}

footer .footer-unten address div {
    color: #fff;
    text-align: center;
}

/*-----------------------------------------------------*\
  #TYPO3
\*-----------------------------------------------------*/
.frame-space-before-extra-small {
    padding-top: 15px;
    margin-top: 0;
}

.frame-space-before-small {
    padding-top: 30px;
    margin-top: 0;
}

.frame-space-before-medium {
    padding-top: 45px;
    margin-top: 0;
}

.frame-space-before-large {
    padding-top: 60px;
    margin-top: 0;
}

.frame-space-before-extra-large {
    padding-top: 75px;
    margin-top: 0;
}

.frame-space-after-extra-small {
    padding-bottom: 15px;
}

.frame-space-after-small {
    padding-bottom: 30px;
}

.frame-space-after-medium {
    padding-bottom: 45px;
}

.frame-space-after-large {
    padding-bottom: 60px;
}

.frame-space-after-extra-large {
    padding-bottom: 75px;
}

.ce-gallery .image img {
    width: 100%;
    height: auto;
}

.no-padding {
    padding: 0;
}

/*------------------------------------*\
  #TABELLEN
\*------------------------------------*/


/*------------------------------------*\
  #GRIDELEMENTS
\*------------------------------------*/


/*------------------------------------*\
  #MASK
\*------------------------------------*/
/*---------- BILDERGALERIE -----------*/
.mask-bildergalerie {
    clear: both;
    margin-bottom: 20px;
}

.mask-bildergalerie .mask-bildergalerie-wrapper {
    margin-bottom: 15px;
    -webkit-box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.5);
    -moz-box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.5);
    box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.5);
}

.mask-bildergalerie .bildspalte {
    margin-bottom: 15px;
}

.mask-bildergalerie .bildspalte img {
    width: 100%;
    height: auto;
}

.bildspalte .zoom {
    overflow: hidden;
    position: relative;
}

.bildspalte .zoom img {
    width: 100%;
    height: auto;
    transition: all 0.5s ease-in-out;
}

.bildspalte .zoom:hover img {
    width: 100%;
    height: auto;
    transform: scale(1.1);
}

.bildspalte figcaption {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    opacity: 0;
    transition: .5s ease;
    background: url(/typo3conf/ext/bim_template/Resources/Public/Images/Template/trans-60-schwarz.png);
}

.bildspalte:hover figcaption {
    opacity: 1;
}

.bildspalte figcaption div {
    text-align: center;
    font-size: 18px;
    line-height: 1.2;
    color: #fff;
    padding: 0 10px;
    position: absolute;
    width: 100%;
    bottom: 20px;
}

/*---------- Bild-Text-Modul-Asymmetrisch-Hintergrundfarbe -----------*/
.mask-bild-text-asymmetrisch-hintergrundfarbe .bild-links .mask-bild-text-asymmetrisch-bild-hintergrund {
    background-image: linear-gradient(90deg, #ecf5f2 90%, #fff 0%) !important;
    padding: 50px 0 50px 0;
}

/*TEST einpflegen Asymetrisches Modul Carina*/
/*---------- Bild-Text-Modul-Asymmetrisch-Hintergrundfarbe TEST RECHTS -----------*/
.mask-bild-text-asymmetrisch-hintergrundfarbe .bild-rechts .mask-bild-text-asymmetrisch-bild-hintergrund {
    background-image: linear-gradient(-90deg, #ecf5f2 90%, #fff 0%) !important;
    padding: 50px 0 50px 0;
}
.mask-bild-text-asymmetrisch-hintergrundfarbe .row.no-gutters.bild-rechts .col-12.col-lg-4 .mask-bild-text-asymmetrisch-bild-hintergrund .row {
    margin-right: 0;
}
/*---------- Bild-Text-Modul-Asymmetrisch-Hintergrundfarbe TEST RECHTS -----------*/

.mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-bild img {
    border: 10px solid #fff;
}
/*TEST einpflegen Asymetrisches Modul Carina*/






.mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-bild img {
    border: 10px solid #fff;
}

.mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-ueberschrift {
    line-height: 1.2;
}

.mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-ueberschrift::after {
    content: "";
    width: 80px;
    height: 3px;
    background: #526761;
    display: block;
    margin: 5px 0 20px 0;
}

.mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-ueberschrift-zeile1 {
    color: #526761;
    font-size: 32px;
    font-weight: 300;
   /* text-transform: uppercase;*/
}

.mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-ueberschrift-zeile2 {
    color: #526761;
    font-size: 48px;
    font-weight: 500;
    text-transform: uppercase;
}

.mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-text {
    text-align: justify;
}

.mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-link {
    position: relative;
}

.btn.btn-2 {
    position: relative;
    padding: 0;
}

.btn-2 button {
    color: #fff;
    background: #a4ccc0;
    border: none;
    -webkit-transition: all 0.7s ease;
    transition: all 0.7s ease;
    padding: 15px 30px;
    text-transform: uppercase;
    font-size: 24px;
    font-weight: 300;
}

.btn-2 button:hover {
    background: ##a4ccc1;
    color: #526761;
}

.btn-2 button:hover:before,
.btn-2 button:hover:after {
    -webkit-transition: all 0.7s ease;
    transition: all 0.7s ease;
    width: 100%;
}

.btn-2 button:before,
.btn-2 button:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0px;
    width: 0px;
    height: 3px;
    background: #526761;
    transition: all 0.4s ease;
}

.btn-2 button:after {
    top: inherit;
    left: inherit;
    bottom: 0;
    right: 0;
}

/*---------- Bild-Text-Modul-Container -----------*/
.mask-modul-item {
    background: #f6faf9;
}

.mask-modul-item .mask-modul-item-text-wrap {
    padding: 25px;
}

.mask-modul-item .mask-modul-item-uberschrift {
    line-height: 1.2;
}

.mask-modul-item .mask-modul-item-uberschrift::after {
    content: "";
    width: 80px;
    height: 3px;
    background: #526761;
    display: block;
    margin: 5px 0 20px 0;
}

.mask-modul-item .mask-modul-item-uberschrift-zeile1 {
    color: #526761;
    font-size: 28px;
    font-weight: 300;
   /* text-transform: uppercase;*/
}

.mask-modul-item .mask-modul-item-uberschrift-zeile2 {
    color: #526761;
    font-size: 36px;
    font-weight: 500;
    text-transform: uppercase;
}

/*---------- Linkboxen -----------*/
.mask-linkboxen-item {
    position: relative;
    -webkit-backface-visibility: hidden;
    width: 415px;
    margin-bottom: 35px;
    max-width: 100%;
}

.mask-linkboxen-flip-box {
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
    perspective: 1000px;
    -webkit-perspective: 1000px;
}

.flip-box-front,
.flip-box-back {
    background-size: cover;
    background-position: center;
    min-height: 250px;
    -ms-transition: transform 0.7s cubic-bezier(.4,.2,.2,1);
    transition: transform 0.7s cubic-bezier(.4,.2,.2,1);
    -webkit-transition: transform 0.7s cubic-bezier(.4,.2,.2,1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.flip-box-front {
    background: #897d73;
    -ms-transform: rotateY(0deg);
    -webkit-transform: rotateY(0deg);
    transform: rotateY(0deg);
    -webkit-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

.mask-linkboxen .inner {
    text-align: center;
}

.mask-linkboxen .mask-linkboxen-item-text-front,
.mask-linkboxen .mask-linkboxen-item span,
.mask-linkboxen .mask-linkboxen-item-ueberschrift {
    color: #fff;
}

.mask-linkboxen .mask-linkboxen-item span {
    font-size: 40px;
    margin-bottom: 15px;
}

.mask-linkboxen .mask-linkboxen-item .mask-linkboxen-flip-box .inner img {
  margin-bottom: 15px;
}

.mask-linkboxen .mask-linkboxen-item-ueberschrift {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.2;
    text-transform: uppercase;
}

.mask-linkboxen .mask-linkboxen-item-text-front {
    font-size: 14px;
    line-height: 1.4;
    text-align: justify;
}

.mask-linkboxen-flip-box:hover .flip-box-front {
    -ms-transform: rotateY(-180deg);
    -webkit-transform: rotateY(-180deg);
    transform: rotateY(-180deg);
    -webkit-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

.flip-box-back {
    background: #555;
    color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    -ms-transform: rotateY(180deg);
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg);
    -webkit-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

.mask-linkboxen-flip-box:hover .flip-box-back {
    -ms-transform: rotateY(0deg);
    -webkit-transform: rotateY(0deg);
    transform: rotateY(0deg);
    -webkit-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

.mask-linkboxen-flip-box .flip-box-back button.flip-box-button a {
    color: #fff;
}

.mask-linkboxen-flip-box .flip-box-back button.flip-box-button:hover {
    background: #fff;
    transition: all 0.5s ease 0s;
}

.mask-linkboxen-flip-box .flip-box-back button.flip-box-button:hover a {
    color: #555;
    text-decoration: none;
}

.mask-linkboxen-flip-box .inner {
    position: absolute;
    left: 0;
    width: 100%;
    padding: 15px;
    outline: 1px solid transparent;
    -webkit-perspective: inherit;
    perspective: inherit;
    z-index: 2;
    transform: translateY(-50%) translateZ(60px) scale(.94);
    -webkit-transform: translateY(-50%) translateZ(60px) scale(.94);
    -ms-transform: translateY(-50%) translateZ(60px) scale(.94);
    top: 50%;
}

.flip-box-button {
    background-color: transparent;
    border: 2px solid #fff;
    border-radius: 2px;
    color: #fff;
    cursor: pointer;
    font-size: 18px;
    font-weight: bold;
    margin-top: 0px;
    padding: 10px 20px;
    text-transform: uppercase;
    margin-bottom: 15px;
}

/*---------- Slider -----------*/
#carousel-slider .carousel-item {
    position: relative;
}

#carousel-slider .carousel-item .mask-bilder-slider-link-ueberschrift {
    color: #fff;
    text-align: center;
    line-height: 1.4;
    width: 100%;
    top: 30px;
    position: absolute;
}

#carousel-slider .carousel-item .mask-bilder-slider-link-ueberschrift .mask-bilder-slider-link-ueberschrift-zeile1 {
    font-size: 54px;
    font-weight: 600;
    text-transform: uppercase;
}

#carousel-slider .carousel-item .mask-bilder-slider-link-ueberschrift .mask-bilder-slider-link-ueberschrift-zeile2 {
    font-size: 28px;
    font-weight: 300;
    font-style: italic;
}

#carousel-slider .mask-bilder-slider-bild {
    max-height: 800px;
    overflow: hidden;
}

#carousel-slider .mask-bilder-slider-bild img {
    width: 100%;
    height: auto;
}

#carousel-slider .mask-bilder-slider-link-wrap {
    position: absolute;
    bottom: 30px;
    width: 100%;
}

#carousel-slider.mask-bilder-slider span.carousel-control-next-icon,
#carousel-slider.mask-bilder-slider span.carousel-control-prev-icon {
    width: 40px;
    height: 40px;
}

/*---------- Bild-Link-Modul -----------*/
.mask-bild-link-modul {
    position: relative;
}

.mask-bild-link-modul .mask-bild-link-modul-inhalt-wrap {
    position: absolute;
    height: 100%;
    width: 100%;
}

.mask-bild-link-modul .mask-bild-link-modul-bild {
    width: 100%;
}

.mask-bild-link-modul-inhalt-wrap .gradient {
    height: 100%;
    background: -moz-linear-gradient(left,  rgba(255,255,255,0) 0%, rgba(255,255,255,0.58) 9%, rgba(255,255,255,0.9) 15%, rgba(255,255,255,0.9) 100%);
    background: -webkit-linear-gradient(left,  rgba(255,255,255,0) 0%,rgba(255,255,255,0.58) 9%,rgba(255,255,255,0.9) 15%,rgba(255,255,255,0.9) 100%);
    background: linear-gradient(to right,  rgba(255,255,255,0) 0%,rgba(255,255,255,0.58) 9%,rgba(255,255,255,0.9) 15%,rgba(255,255,255,0.9) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#e6ffffff',GradientType=1 );
    padding: 40px 100px 0 200px;
}

.mask-bild-link-modul-ueberschrift {
    color: #526761;
    text-transform: uppercase;
    line-height: 1.4;
}

.mask-bild-link-modul-ueberschrift .mask-bild-link-modul-ueberschrift-zeile1 {
    font-size: 28px;
    font-weight: 300;
}

.mask-bild-link-modul-ueberschrift .mask-bild-link-modul-ueberschrift-zeile2 {
    font-size: 36px;
    font-weight: 500;
}

/*---------- Wohnungs-Modul -----------*/
.mask-wohnungs-modul {
    background-image: linear-gradient(90deg, #ecf5f2 90%, #fff 0%) !important;
    background-size: 50% 60%;
    background-repeat: no-repeat;
    background-position: bottom left;
    padding-bottom: 50px;
}

.mask-wohnungs-modul .mask-bilder-slider .carousel-item .mask-bilder-slider-bild picture img {
    border: 10px solid #fff;
}

.mask-wohnungs-modul .mask-wohnungs-modul-header {
    border-bottom: 1px solid #526761;
    margin-bottom: 25px;
}

.mask-wohnungs-modul .mask-wohnungs-modul-header .ueberschrift-wrap {
    color: #526761;
    text-transform: uppercase;
    line-height: 1.4;
}

.mask-wohnungs-modul .mask-wohnungs-modul-header .ueberschrift-wrap .ueberschrift-zeile1 {
    font-size: 28px;
    font-weight: 300;
}

.mask-wohnungs-modul .mask-wohnungs-modul-header .ueberschrift-wrap .ueberschrift-zeile2 {
    font-size: 36px;
    font-weight: 500;
}

.mask-wohnungs-modul .mask-wohnungs-modul-header .mask-wohnungs-modul-info-wrap {
    font-size: 14px;
    color: #526761;
}

.mask-wohnungs-modul .mask-wohnungs-modul-header .mask-wohnungs-modul-info-wrap .mask-wohnungs-modul-info-personen,
.mask-wohnungs-modul .mask-wohnungs-modul-header .mask-wohnungs-modul-info-wrap .mask-wohnungs-modul-info-zusatztext {
    font-weight: 600;
}

/*---------- Preislisten-Modul -----------*/
.mask-preislisten-modul {
    position: relative;
}

.mask-preislisten-modul .mask-preislisten-modul-jahreszahl {
    position: absolute;
    transform: rotate(-90deg);
    font-size: 120px;
    font-weight: 600;
    left: -205px;
    color: #eee;
    top: 40px;
}

.mask-preislisten-modul .mask-preislisten-modul-text table {
    text-align: center;
    width: 100%;
}

.mask-preislisten-modul .mask-preislisten-modul-text table thead {
    border-bottom: 2px solid #526761;
    color: #526761;
}

.mask-preislisten-modul .mask-preislisten-modul-text table thead tr:first-child th:first-child {
    text-align: left;
    line-height: 1.2;
}

.mask-preislisten-modul .mask-preislisten-modul-text table thead tr th h2 {
    font-size: 28px;
    font-weight: 400;
}

.mask-preislisten-modul .mask-preislisten-modul-text table thead tr th h3 {
    font-size: 18px;
    font-weight: 300;
}

.mask-preislisten-modul .mask-preislisten-modul-text table tbody tr {
    border-bottom: 1px solid #526761;
}

.mask-preislisten-modul .mask-preislisten-modul-text table tbody tr td {
    padding: 10px 10px;
}

.mask-preislisten-modul .mask-preislisten-modul-text table tbody tr td:first-child {
    width: 50px;
}

.mask-preislisten-modul .mask-preislisten-modul-text table tbody tr:last-child {
    border-bottom: 0;
}

/*---------- 360° Bilder -----------*/
.viewerapp {
  width: 100vw;
  height: 50vh;
}

.pano-main {
    text-align: center;
    height: 400px;
    margin: 0 20px 10px;
    background-color: transparent;
}

.pano-main .panowrap {
    max-height: 100%;
    height: 100%;
    width: 70%;
    display: inline-block;
    cursor: move;
    overflow: hidden;
}

/*---------- VIDEO-ELEMENT -----------*/
.mask-video-element .mask-video-element-ueberschrift h2 {
    text-align: center;
}

.mask-video-element .mask-video-element-text {
    margin-top: 20px;
    text-align: center;
}

/*---------- ROUTENPLANER -----------*/
.mask-routenplaner-wrap iframe {
    width: 100%;
}

/*------------------------------------*\
  #FORMULAR
\*------------------------------------*/
form .col-xs-12.col-sm-12.col-md-12.col-lg-6 .form-inline .form-group {
    margin-bottom: 20px;
}

form .form-inline .form-group .input input.small.form-control.hasDatepicker {
    margin-left: 20px;
}

form .clearfix h2 {
    display: none;
}

form .input.checkbox .form-check {
    padding-left: 0;
}

form .input.checkbox .form-check label input {
    margin-right: 5px;
}

form .form-group .input textarea {
    min-height: 250px;
}

form div.clearfix p {
    margin-top: 30px;
}

/*------------------------------------*\
  #COLORBOX
\*------------------------------------*/
#cboxTitle {
    position: absolute;
    bottom: -3px;
    left: 0;
    text-align: center;
    width: 100%;
    color: #555;
}

/*------------------------------------*\
  #BACK-TO-TOP-BUTTON
\*------------------------------------*/
#back-to-top {
    display: inline-block;
    background-color: #797973;
    width: 50px;
    height: 50px;
    text-align: center;
    border-radius: 4px;
    position: fixed;
    bottom: 30px;
    right: 30px;
    transition: background-color .3s,opacity .5s,visibility .5s;
    opacity: 0;
    visibility: hidden;
    z-index: 1000;
}
#back-to-top::after {
    content: "\f077";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-style: normal;
    font-size: 2em;
    line-height: 50px;
    color: #fff;
}
#back-to-top:hover {
    cursor: pointer;
    background-color: #333;
}
#back-to-top:active {
    background-color: #555;
}
#back-to-top.show {
    opacity: 1;
    visibility: visible;
}

/*------------------------------------*\
  #MEDIA-QUERIES
\*------------------------------------*/
@media (max-width: 1500px) {
    .layout-contentseite .logo-gastgeber img {
        transition: all 0.5s ease 0s;
        width: 100px;
        height: auto;
    }

    .mask-bild-link-modul-inhalt-wrap .gradient {
        padding: 30px 50px 0 100px;
    }

    .mask-preislisten-modul .mask-preislisten-modul-jahreszahl {
        font-size: 72px;
        left: -135px;
        top: 30px;
    }
}

@media (max-width: 1199px) {
    .mask-kopfbild-fullsize {
        height: 80vh;
    }

    .mask-preislisten-modul .mask-preislisten-modul-jahreszahl {
        position: relative;
        transform: rotate(0deg);
        left: auto;
        top: 30px;
    }
}

@media (max-width: 991px) {
    .row {
        margin-left: 0;
        margin-right: 0;
    }

    form .row {
        margin-left: -15px;
        margin-right: -15px;
    }

    .container {
        min-width: 100%;
    }

    section.container,
    footer .gradient .container.footer-wrap,
    .mask-bild-link-modul .mask-bild-link-modul-inhalt-wrap .gradient {
        padding-left: 15px;
        padding-right: 15px;
    }

    section.container.no-padding,
    .mask-wohnungs-modul .container {
        padding-left: 15px;
        padding-right: 15px;
    }

    .mask-kopfbild-fullsize {
        height: auto;
    }

    .navigation-wrapper .logo-gastgeber img {
        width: 100px;
        height: auto;
    }

    .logo-gastgeber {
        padding-top: 10px;
    }

    .mask-kopfbild-fullsize .mask-kopfbild-text {
        top: 17vh;
    }

    .mask-wohnungs-modul .mask-wohnungs-modul-header .ueberschrift-wrap .ueberschrift-zeile1 {
        font-size: 32px;
    }

    .mask-kopfbild-text .mask-kopfbild-text-zeile2 {
        font-size: 48px;
    }

    .mask-bild-text-asymmetrisch-hintergrundfarbe .bild-links .mask-bild-text-asymmetrisch-bild-hintergrund {
        background-image: linear-gradient(180deg,#ecf5f2 90%,#fff 10%) !important;
    }

    .mask-bild-text-asymmetrisch-hintergrundfarbe .bild-links .mask-bild-text-asymmetrisch-bild-hintergrund,
    .mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-text {
        padding: 0 30px 0 30px;
    }

    .mask-modul-item .col-12.col-md-8 .col-12.col-lg-10.col-xl-9 .mask-modul-item-text-wrap,
    .mask-modul-item .col-12.col-md-6 .col-12.col-lg-10.col-xl-9 .mask-modul-item-text-wrap {
        padding: 25px 15px 25px 45px;
    }

    .mask-modul-item .col-12.col-md-4 .col-12.col-lg-10.col-xl-9 .mask-modul-item-text-wrap,
    .mask-modul-item .col-12.col-md-6 .col-12.col-lg-10.col-xl-9.links .mask-modul-item-text-wrap {
        padding: 25px 45px 25px 15px;
    }

    /*TEST Asymmetrisches Bild Textmodul Carina RECHTS*/
    /*---------- Bild-Text-Modul-Asymmetrisch-Hintergrundfarbe TEST RECHTS -----------*/
    .mask-bild-text-asymmetrisch-hintergrundfarbe .bild-rechts .mask-bild-text-asymmetrisch-bild-hintergrund {
        background-image: linear-gradient(-90deg, #ecf5f2 90%, #fff 0%) !important;
    }

    .mask-bild-text-asymmetrisch-hintergrundfarbe .bild-rechts .mask-bild-text-asymmetrisch-bild-hintergrund,
    .mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-text {
        padding: 0 30px 0 30px;
    }
    /*---------- Bild-Text-Modul-Asymmetrisch-Hintergrundfarbe TEST RECHTS -----------*/

    .mask-modul-item .col-12.col-md-8 .col-12.col-lg-10.col-xl-9 .mask-modul-item-text-wrap,
    .mask-modul-item .col-12.col-md-6 .col-12.col-lg-10.col-xl-9 .mask-modul-item-text-wrap {
        padding: 25px 15px 25px 45px;
    }
    /*TEST Asymmetrisches Bild Textmodul Carina RECHTS*/








    .mask-modul-item .mask-modul-item-uberschrift-zeile1,
    .mask-wohnungs-modul .mask-wohnungs-modul-header .ueberschrift-wrap .ueberschrift-zeile1,
    .mask-bild-link-modul .mask-bild-link-modul-inhalt-wrap .mask-bild-link-modul-ueberschrift .mask-bild-link-modul-ueberschrift-zeile1 {
        font-size: 24px;
    }

    .mask-modul-item .mask-modul-item-uberschrift-zeile2,
    .mask-wohnungs-modul .mask-wohnungs-modul-header .ueberschrift-wrap .ueberschrift-zeile2,
    .mask-bild-link-modul .mask-bild-link-modul-inhalt-wrap .mask-bild-link-modul-ueberschrift .mask-bild-link-modul-ueberschrift-zeile2 {
        font-size: 28px;
    }

    .mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-ueberschrift::after {
        height: 5px;
        margin: 5px auto 20px auto;
    }

    .mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-ueberschrift-zeile1,
    .mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-ueberschrift-zeile2 {
        text-align: center;
    }

    .mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-link {
        text-align: center;
    }

    .mask-linkboxen .mask-linkboxen-item span {
        font-size: 28px;
    }

    .mask-linkboxen .mask-linkboxen-item-ueberschrift {
        font-size: 18px;
    }

    .mask-linkboxen-item .mask-linkboxen-flip-box .flip-box-back .inner {
        padding: 10px 0;
        top: 47%;
        line-height: 1.4;
    }

    footer .footer-slogan .footer-ueberschriften-wrap .footer-ueberschriften-zeile1 {
        font-size: 24px;
    }

    footer .footer-slogan .footer-ueberschriften-wrap .footer-ueberschriften-zeile2 {
        font-size: 36px;
    }

    footer {
        min-height: 100vh;
    }

    footer .gradient {
        height: 100vh;
    }

    .mask-bild-link-modul-inhalt-wrap .gradient {
        padding: 30px;
    }

    .mask-bild-link-modul-inhalt-wrap .gradient {
        background: -moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.58) 0%, rgba(255,255,255,0.9) 0%, rgba(255,255,255,0.9) 100%);
        background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%,rgba(255,255,255,0.58) 0%,rgba(255,255,255,0.9) 0%,rgba(255,255,255,0.9) 100%);
        background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(255,255,255,0.58) 0%,rgba(255,255,255,0.9) 0%,rgba(255,255,255,0.9) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#e6ffffff',GradientType=1 );
    }

    .mask-wohnungs-modul .mask-wohnungs-modul-header {
        margin-bottom: 50px;
    }

    .mask-wohnungs-modul {
        background-image: linear-gradient(0deg, #ecf5f2 100%, #fff 0%) !important;
        background-size: 100% 90%;
        background-repeat: no-repeat;
        background-position: bottom center;
        padding-bottom: 30px;
    }

    .mask-wohnungs-modul .mask-wohnungs-modul-beschreibung {
        padding-top: 25px;
    }

    .btn-2 button {
        padding: 5px 30px;
        font-size: 20px;
    }

    .mask-linkboxen-item {
        width: 100%;
    }
}

@media (max-width: 767px) {
    .h1, h1 {
        font-size: 2rem;
    }

    .anfrage-button {
        background: #526761;
        color: #fff;
        padding: 10px 15px;
        text-align: center;
    }

    .anfrage-button a {
        color: #fff;
        width: 100%;
        display: block;
    }

    .anfrage-button a:hover {
        text-decoration: none;
    }

    .anfrage-button a span {
        font-size: 20px;
    }

    .anfrage-button a span::after {
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        content: "\f105";
        position: absolute;
        margin-left: 10px;
        font-size: 30px;
        margin-top: -8px;
    }

    .mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-ueberschrift-zeile1,
    .mask-modul-item .mask-modul-item-uberschrift-zeile1 {
        font-size: 24px;
    }

    .mask-bild-text-asymmetrisch-hintergrundfarbe .mask-bild-text-asymmetrisch-ueberschrift-zeile2,
    .mask-modul-item .mask-modul-item-uberschrift-zeile2 {
        font-size: 32px;
    }

    .mask-modul-item .mask-modul-item-uberschrift::after {
        height: 5px;
        margin: 5px auto 20px auto;
    }

    .mask-modul-item .mask-modul-item-uberschrift-zeile1,
    .mask-modul-item .mask-modul-item-uberschrift-zeile2 {
        text-align: center;
    }

    .mask-modul-container .mask-modul-item .mask-modul-item-link {
        text-align: center;
    }

    .mask-linkboxen-item {
        width: 100%;
        max-width: 100%;
    }

    #carousel-slider .carousel-item .mask-bilder-slider-link-ueberschrift .mask-bilder-slider-link-ueberschrift-zeile1 {
        font-size: 28px;
    }

    #carousel-slider .carousel-item.active .mask-bilder-slider-link-ueberschrift {
        top: 5px;
    }

    .mask-bilder-slider-link-wrap a:nth-child(2),
    .mask-bilder-slider-link-wrap a:nth-child(3) {
        display: none;
    }

    footer {
        min-height: 100vh;
    }

    .mask-preislisten-modul {
        width: 100%;
        overflow-y: auto;
    }

    .mask-wohnungs-modul .mask-wohnungs-modul-header .row .col-12.col-sm-6 {
        padding: 0
    }

    .mask-bilder-slider-bild img{
    	width:100%;
    	height:auto;
    }

}

@media (max-width: 575px) {
    section.container.no-frame,
    section.container.no-frame .mask-linkboxen .col-12,
    .frame-type-mask_bilderslidermodul.frame-space-before-medium {
        padding: 0;
    }

    .mask-linkboxen-item {
        margin-bottom: 10px;
    }

    .mask-linkboxen .mask-linkboxen-item span {
        font-size: 60px;
    }

    .mask-linkboxen .mask-linkboxen-item-ueberschrift {
        font-size: 24px;
    }
    
    .ce-intext.ce-right .ce-gallery {
      margin-left: 0;
      width: 100%;
    }
    
    .ce-textpic, .ce-image, .ce-nowrap .ce-bodytext, .ce-gallery, .ce-row, .ce-uploads li, .ce-uploads div {
      overflow: visible;
    }
}

@media (max-height: 1000px) and (max-width: 991px) {
    footer .gradient {
        height: 130vh;
    }
}
