/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.3
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* icomoon iconfont */
@font-face {
	font-family: 'icomoon';
	src:  url('fonts/icomoon.eot');
	src:  url('fonts/icomoon.eot#iefix') format('embedded-opentype'),
	url('fonts/icomoon.ttf') format('truetype'),
	url('fonts/icomoon.woff') format('woff'),
	url('fonts/icomoon.svg#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}




.wrapper-icon [class^="icon-"], .wrapper-icon [class*=" icon-"],
.benefits[class^="icon-"], .benefits[class*=" icon-"],
.wrapper_einrichtung_icon [class^="icon-"], .wrapper_einrichtung_icon [class*=" icon-"]{
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: 'icomoon' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.wrapper-icon [class^="icon-"], .wrapper-icon [class*=" icon-"] {
	color: var(--e-global-color-3460580) !important;
    font-size: 24px !important;
}

.benefits[class^="icon-"], .benefits[class*=" icon-"] {
	color: var(--e-global-color-3460580) !important;
    font-size: 52px !important;
    text-align: center;
}

.wrapper-icon [class^="icon-sofa"] {
    font-size: 21px !important;
}


.icon-close:before {
  content: "\e922";
  color: #fff;
}

.icon-logo:before {
  content: "\e921";
  color: #fff;
}

.icon-cit:before {
  content: "\e920";
  color: #b09c61;
}

.icon-arrow-gold:before {
	content: "\e900";
	color: #b09c61;
}
.icon-arrow-gold-up:before {
	content: "\e901";
	color: #b09c61;
}
.icon-balcony:before {
	content: "\e902";
}
.icon-bathroom-1:before {
	content: "\e903";
}
.icon-bathroom:before {
	content: "\e904";
}
.icon-bed:before {
	content: "\e905";
}
.icon-bunk-bed:before {
	content: "\e906";
}
.icon-coffee:before {
	content: "\e907";
}
.icon-couple:before {
	content: "\e908";
}
.icon-dining-room:before {
	content: "\e909";
}
.icon-dishwasher:before {
	content: "\e90a";
}
.icon-family:before {
	content: "\e90b";
}
.icon-fireplace:before {
	content: "\e90c";
}
.icon-fridge:before {
	content: "\e90d";
}
.icon-skiroom:before {
	content: "\e90e";
}
.icon-livingroom:before {
	content: "\e90f";
}
.icon-microwave:before {
	content: "\e910";
}
.icon-nursery:before {
	content: "\e911";
}
.icon-oven:before {
	content: "\e912";
}
.icon-parking:before {
	content: "\e913";
}
.icon-plan:before {
	content: "\e914";
}
.icon-playroom:before {
	content: "\e915";
}
.icon-singlebad:before {
	content: "\e916";
}
.icon-skiboot-locker-3:before {
	content: "\e917";
}
.icon-kitchen:before {
	content: "\e918";
}
.icon-sofa:before {
	content: "\e919";
}
.icon-teapot:before {
	content: "\e91a";
}
.icon-toilet:before {
	content: "\e91b";
}
.icon-tv:before {
	content: "\e91c";
}
.icon-wifi:before {
	content: "\e91d";
}
.icon-bell-white:before {
	content: "\e91e";
}
.icon-calendar:before {
	content: "\e91f";
}


@font-face {
	font-family: 'zimmer';
	src:  url('fonts/zimmer.eot');
	src:  url('fonts/zimmer.eot#iefix') format('embedded-opentype'),
	url('fonts/zimmer.ttf') format('truetype'),
	url('fonts/zimmer.woff') format('woff'),
	url('fonts/zimmer.svg#zimmer') format('svg');
	font-weight: normal;
	font-style: normal;
}


.icon-schlafzimmer:before { content: '\e800'; font-family: 'zimmer' !important; } 
.icon-bad-dusche-wc:before { content: '\e801'; font-family: 'zimmer' !important; }


.wrapper-icon {
    display: flex;
    flex-wrap: nowrap;
    gap: 7px;
    align-items: center;
}
.wrapper_icons {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.wrapper_einrichtung_icons {
    font-size: 20px;
    font-weight: 600;
    color: var(--e-global-color-f4064cd);
    display: grid !important;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    gap: 60px 0px;
    grid-auto-flow: row;
    grid-template-areas:
        ". . . . ."
        ". . . . .";
    text-align: center;
}
.wrapper_einrichtung_icon span {
    display: block;
}
.wrapper_einrichtung_icon span.benefits {
    margin-bottom: 20px;
}



@font-face {
  font-family: 'icomoon2';
  src:  url('fonts/icomoon2.eot?iq8ghg');
  src:  url('fonts/icomoon2.eot?iq8ghg#iefix') format('embedded-opentype'),
    url('fonts/icomoon2.ttf?iq8ghg') format('truetype'),
    url('fonts/icomoon2.woff?iq8ghg') format('woff'),
    url('fonts/icomoon2.svg?iq8ghg#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

.wrapper-icon [class^="icon2-"], .wrapper-icon [class*=" icon2-"] {
	color: var(--e-global-color-3460580) !important;
    font-size: 24px !important;
}

.benefits[class^="icon2-"], .benefits[class*=" icon2-"] {
	color: var(--e-global-color-3460580) !important;
    font-size: 52px !important;
    text-align: center;
}

[class^="icon2-"], [class*=" icon2-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon2' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon2-bad-dusche-wc:before {
  content: "\e900";
}
.icon2-bademantel-2:before {
  content: "\e901";
}
.icon2-haarfoehn-2:before {
  content: "\e902";
}
.icon2-hallenbad:before {
  content: "\e903";
}
.icon2-kochnische-2:before {
  content: "\e904";
}
.icon2-nespresso-2:before {
  content: "\e905";
}
.icon2-parkplatz-2:before {
  content: "\e906";
}
.icon2-reinigung-1:before {
  content: "\e907";
}
.icon2-safe-2:before {
  content: "\e908";
}
.icon2-smart-tv-2:before {
  content: "\e909";
}



/* Menu */
#suite h2 { line-height: .65em !important; margin-top: 16px; }
#suite .premium-dual-header-first-span { display:block; }

#hamburger_menu {
    position: fixed;
    top: -1px;
    z-index: 3;
    max-width: 1350px;
    margin: 0 auto;
    left: 0;
    right: 0;
	transform: translateY(-100%);
	transition: all .5s ease-in-out;
}
#hamburger_menu.open {
    transform: translateY(0);
	transition: all .5s ease-in-out;
} 

body > .elementor:not(.elementor-location-header) > section, main { transition: all .5s ease-in-out; opacity: 1; }
body.menu_open > .elementor:not(.elementor-location-header) > section, body.menu_open > main { transition: all .5s ease-in-out; opacity: .5; }


/* Grid */
.wp-grid-builder .wpgb-card-8 .wpgb-block-1, .wp-grid-builder .wpgb-card-21 .wpgb-block-1 {
    color: var( --e-global-color-3460580 ) !important;
}
.wp-grid-builder .wpgb-card-8 .wpgb-block-5, .wp-grid-builder .wpgb-card-21 .wpgb-block-5 {
    border-color: var( --e-global-color-3460580 ) !important;
}
ul.wpgb-hierarchical-list {
    display: flex !important;
    gap: 20px;
	flex-wrap: wrap;
}
.wpgb-facet .wpgb-hierarchical-list li { margin: 0 !important; }

.wpgb-facet.wpgb-facet-1 {
    display: flex;
    gap: 20px;
    align-items: center;
    margin-bottom: 20px;
}

.wpgb-facet.wpgb-facet-1 .wpgb-facet-title, .wpgb-facet.wpgb-facet-1>fieldset { margin: 0 !important; }

.wp-grid-builder .wpgb-card-8 .wpgb-card-body, .wp-grid-builder .wpgb-card-21 .wpgb-card-body { background: #f7f7f773 !important; }

.wp-grid-builder .wpgb-card-21.wpgb-post-337 .wpgb-block-2 { font-size: 40px; }
.wp-grid-builder .wpgb-card-8.wpgb-post-337 .wpgb-block-2 { font-size: 37px; line-height: 1em; }




.elementor-widget-image a img[src$=".svg"]{ width:auto;}
#logo.elementor-widget-image a img[src$=".svg"]{ width:180px; }

/* Header */
#header-right .elementor-widget-wrap {
    display: flex;
    flex-wrap: nowrap;
	justify-content: flex-end;
    gap: 30px;
}
#header-right .elementor-widget-wrap .elementor-element {
    width: auto;
}

/* Slider */
.bgtext_slider .swiper-container {
    position: relative !important;
    z-index: -1;
    width: 100vw;
    max-width: 950px;
    height: 700px;
}
.bgtext_slider .swiper-container .swiper-slide img {
    height: 700px;
    object-fit: cover;
    width: 100%;
}


.bgtext_slider { z-index:0; }
.bgtext_slider .elementor-widget-container { width: 40vw !important; }

@media screen and (max-width: 1700px) {
  .bgtext_slider .elementor-widget-container { width: 50vw !important; }
}

@media screen and (max-width: 767px) {
  .bgtext_slider .elementor-widget-container { width: 100% !important; }
}



/* Hamburger */
.row .three{
  padding: 80px 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #2c3e50;
  color: #ecf0f1;
  text-align: center;
}

.hamburger .line{
  width: 40px;
  height: 3px;
  background-color: #fff;
  display: block;
  margin: 8px auto;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.hamburger:hover{
  cursor: pointer;
}

#hamburger-1.is-active .line:nth-child(2){
  opacity: 0;
}

#hamburger-1.is-active .line:nth-child(1){
  -webkit-transform: translateY(10px) rotate(45deg);
  -ms-transform: translateY(10px) rotate(45deg);
  -o-transform: translateY(10px) rotate(45deg);
  transform: translateY(10px) rotate(45deg);
}

#hamburger-1.is-active .line:nth-child(3){
  -webkit-transform: translateY(-12px) rotate(-45deg);
  -ms-transform: translateY(-12px) rotate(-45deg);
  -o-transform: translateY(-12px) rotate(-45deg);
  transform: translateY(-12px) rotate(-45deg);
}

/* Footer */
.elementor-location-footer .elementskit-clients-slider .slick-slide {
	margin-left: 0 !important;
}

.elementor-location-footer .single-client {
    justify-content: flex-start !important;
}

/* MISC */
.elementor-widget-container p a { text-decoration: underline; }
.elementor-widget-text-editor p { word-break: break-word; }
.payment { display: flex; gap: 20px 40px; align-items: center; flex-wrap: wrap; }
.payment img { max-width: 50px; }
iframe { display: block; }
footer.elementor-slideshow__footer { display: none; }
.buchen-btn { display:none; }
.premium-bullet-list-wrapper { top: 12px; }
._brlbs-embed._brlbs-google-maps {
    margin-bottom: 0px !important;
    display: block !important;
}
.social-header .elementor-social-icon { justify-content: flex-start !important; }
.elementor-field-subgroup.elementor-subgroup-inline {
    display: flex;
    gap: 5px 30px;
    margin: 20px 0;
}
.elementor-field-subgroup.elementor-subgroup-inline label {
    font-weight: 300;
}
.elementor-field-subgroup.elementor-subgroup-inline:before {
    content: "Zimmer auswählen";
    display: block;
    width: 100%;
	font-weight: bold;
}
.elementor-field-type-acceptance label { font-weight: 300; }
.formtext { text-align: center; line-height: 47px; }
.roomlayout img {
    max-height: 400px;
    object-fit: contain;
    object-position: left;
}
.premium-bullet-list-text a {
    color: var(--e-global-color-3460580 );
}


/* responsive --------------------------- */ 
/*desktop only*/
@media (min-width: 1025px) {
	div:not(.elementor-location-header) section.elementor-section:not(.elementor-section-full_width):not(.elementor-inner-section) {
		padding-left: 25px !important;
		padding-right: 25px !important;
	}
}

@media (min-width: 1025px) and (max-width: 1200px) {
	.header_rooms .premium-dual-header-second-header { font-size:12px !important; }
	#suite .premium-dual-header-first-span { font-size:32px !important; }
}

/* tablet */
@media only screen and (max-width: 1024px) {
	#hamburger_menu { 
		max-height: 100vh;
		overflow: scroll;
		box-sizing: border-box;	
	}
	div:not(.elementor-location-header) section.elementor-section:not(.elementor-section-full_width):not(.elementor-inner-section) {
		padding-left: 25px !important;
		padding-right: 25px !important;
	}
	.bgtext_slider .swiper-container {
		max-width: 60vw;
	}
	.wrapper_einrichtung_icons {
		grid-template-columns: 1fr 1fr 1fr;
		grid-template-areas:
			". . ."
			". . ."
			". . ."
			". . .";
	}
}

/* mobile */
@media only screen and (max-width: 767px) {
	.formtext { text-align: left; line-height: 47px; }
	.elementor-field-type-html.elementor-field-group.elementor-column.elementor-field-group-field_8714c5b.elementor-col-25,
	.elementor-field-type-html.elementor-field-group.elementor-column.elementor-field-group-field_cf7a326.elementor-col-25,
	.elementor-field-type-html.elementor-field-group.elementor-column.elementor-field-group-field_8b56e80.elementor-col-25{
		margin-bottom: 40px;
		border-bottom: 1px solid #ebebeb;
		padding-bottom: 20px;
	}
	div:not(.elementor-location-header) section.elementor-section:not(.elementor-section-full_width):not(.elementor-inner-section) {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
	.bgtext_slider .swiper-container {
		max-width: 100%;
		margin-bottom: -20px;
		height:300px; 
	}
	.bgtext_slider .swiper-container .swiper-slide img {
		height: 300px;
	}
	.bdt-slide-desc {
		width: 100% !important;
	}
	.bdt-slider .bdt-slide-item .bdt-slide-title {
		font-size: 32px !important;
	}
	.wrapper_einrichtung_icons {
		grid-template-columns: 1fr 1fr;
		grid-template-areas:
			". ."
			". ."
			". ."
			". ."
			". ."
			". .";
	}
	.wrapper_einrichtung_icons, .wrapper-icon { font-size: 16px; }

}


.elementor-field-type-acceptance a {
    color: var( --e-global-color-100efa4 );
}


.lang_selector {
    display: flex;
    flex-wrap: nowrap;
	gap: 3px;
}
.lang_selector a {
    color: #fff;
	word-break: keep-all;
}
.lang_selector a.active {
    text-decoration: underline;
}

/* Borlabs */
h3._brlbs, h4._brlbs {
    font-family: 'Heebo';
    font-size: 16px;
    font-weight: 400;
    color: var(--e-global-color-secondary);
}

table._brlbs th {
    font-weight: 400;
}

table tbody>tr:nth-child(odd)>td, table tbody>tr:nth-child(odd)>th, table tbody tr:hover>td, table tbody tr:hover>th { background-color: transparent; }

a._brlbs-btn-cookie-preference.borlabs-cookie-preference {
    margin-bottom: 25px;
}


@media screen and (max-width: 1700px) {
	.mediaslider_cheight .elementor-main-swiper { height: 350px !important; }
}
@media screen and (max-width: 1600px) {
	.mediaslider_cheight .elementor-main-swiper { height: 325px !important; }
}
@media screen and (max-width: 1500px) {
	.mediaslider_cheight .elementor-main-swiper { height: 300px !important; }
}
@media screen and (max-width: 1400px) {
	.mediaslider_cheight .elementor-main-swiper { height: 290px !important; }
}
@media screen and (max-width: 1200px) {
	.mediaslider_cheight .elementor-main-swiper { height: 220px !important; }
}

@media screen and (max-width: 1024px) {
	.mediaslider_cheight .elementor-main-swiper { height: 330px !important; }
}
@media screen and (max-width: 900px) {
	.mediaslider_cheight .elementor-main-swiper { height: 290px !important; }
}
@media screen and (max-width: 767px) {
	.mediaslider_cheight .elementor-main-swiper { height: 430px !important; }
}
@media screen and (max-width: 500px) {
	.mediaslider_cheight .elementor-main-swiper { height: 340px !important; }
}
@media screen and (max-width: 400px) {
	.mediaslider_cheight .elementor-main-swiper { height: 260px !important; }
}


.dwtable_container {
    max-width: 100%;
    overflow-y: auto;
}

.dwtable tbody tr td:not(:first-of-type) {
    text-align: center;
}