@media screen and (max-width: 1920px) {
	html {
		font-size: 0.833333333333vw;
	}
}
@media screen and (max-width: 1680px) {
	html {
		font-size: 0.9523809vw;
	}
	#sidebar {
		right: 1.5rem;
	}
	.tooltip {
		width: 10.125rem;
		left: -10.5rem;
		font-size: 1rem;
		padding-bottom: 0.875rem;
		top: 50%;
		transform: translate(-0%, -1rem) scaleY(0.8);
	}
	button:hover + .tooltip,
	a:hover+.tooltip {
		opacity: 1;
		transform: translate(-0%, -50%) scaleY(1);
		pointer-events: auto;
	}
	.tooltip::before {
		top: 50%;
		left: auto;
		right: -0.25rem;
		margin-left: -0rem;
		margin-top: -0.25rem;
		transform: rotate(90deg)
	}
}


@media screen and (min-width: 768px) and (max-width: 992px) {
	html {
		font-size: 1.1vw;
	}
	.container {
		max-width: 80rem;
	}
	.anfrageblock .container {
		max-width: 100%;
	}
	.teaserbox_txt {
		padding-left: 2rem;
		padding-right: 2rem;
	}
	.angebotdetail-content,
	.accordion-btn, .form-check label input + span, label.control-label,
	.footernav,
	.footermore,
	.footeradresse,
	ul.hardfacts li,
	.zimmerbox_txt_i ul li,
	.angebotebox_txt {
		font-size: 1.375rem;
	}
	button.button, a.button, .button {
		font-size: 1.3125rem;
	}
	.angebebot_txt {
		padding-right: 2rem;
	}
	ul.hardfacts li {
		padding-left: 2.5rem;
		padding-right: 2.5rem;
	}
	#footer {
		padding-bottom: 14rem;
	}
	.reichl {
		bottom: 7rem;
	}
	ul.bildergalerie-o {
		margin-left: -0.75rem;
		margin-right: -0.75rem;
	}
	ul.bildergalerie-o li {
		padding: 0.75rem;
	}
}
@media screen and (max-width: 992px) {
	
}

@media screen and (max-width: 767px) {
	html {
		font-size: 4.0712468vw;
	}
	body {
		font-size: 1.0625rem;
		line-height: var(--line1384);
		letter-spacing: 0.02em;
	}
	h2,
	.h2,
	.h1,
	h1 {
		  font-size: 2.125rem;
		line-height: var(--line11);
	}
	.angebotdetail_txt h2 {
		font-size: 1.875rem;
	}
	.teaserbox h2,
	.angebotebox h2,
	.zimmerbox h2,
	.teaserbox h3,
	.angebotebox h3 {
		font-size: 1.5rem;
	}
	.zimmerbox h3 {
		font-size: 1.5rem;
		font-size: 1.375rem;
	}
	h2.line,
	.line {
		font-size: 1.375rem;
		line-height: var(--liine114285);
		padding-bottom: 1rem;
	}
	.line::after {
		width: 4rem;
		height: 0.125rem;
	}
	.h3,
	.angebotebox h3,
	h3 {
		font-size: 1.5rem;
		line-height: var(--line11);
	}
	.headline-sm {
		font-size: 1.125rem;
	}
	p + p,
	ul + p  {
		margin-top:  0.75em;
	}
	p + p.abstandbig {
		margin-top: 1.5em;
	}
	h2 + p,
	.h2 + p,
	.h1 + p,
	h1 + p {
		margin-top: 0.5rem;
	}
	h1 + p {
		margin-top: 0.875rem;
	}
	h2.line + p,
	.line + p {
		margin-top: 0.75rem;
	}
	.angebotebox h3 + p,
	h3 + p {
		margin-top: 0.5625rem;
	}
	.zimmerinfodet,
	p.buchbar {
		background-size: 1.5rem auto;
		line-height: normal;
		padding-left: 2rem;
		padding-top: 0.125rem;
	}
	.zimmerinfodet,
	.angebebot_txt p.buchbar {
		padding-bottom: 0.5rem;
		margin-bottom: 0.875rem;
	}
	.zimmerinfodet::after,
	.angebebot_txt p.buchbar::after{
		height: 0.125rem;
		bottom: 0;
		left: 0;
	}
	.euro {
		font-size: 1.75rem;
		background-size: 1.3125rem auto;
		background-position: left center;
		padding-left: 2rem;
	}
	.statt {
		padding-left: 0.375rem;
	}
	.statt::after {
		bottom: 45%;
		width: 100%;
		height: 1px;
		transform: rotate(-7deg);
	}
	.button + .button {
		margin-left: 0.3125rem;
	}
	.angebotebox_cta ul li + li + li,
	.angebotebox .button-line + .button-line + .button {
		margin-top: 0.75rem;
	}
	button.button,
	a.button,
	.button,
	button.button-line,
	a.button-line,
	.button-line {
		border-radius: 0.375rem;
		min-width: 7.25rem;
		padding-top: 0.5rem;
		padding-bottom: 0.5rem;
		font-size: 1rem;
		padding-left: 1rem;
		padding-right: 1rem;
		transition: all 0.3s ease;
	}
	.button-line + .button-line {
		margin-left: 0.3125rem;
	}
	.angebotdetail-content ul li {
		padding-left: 2rem;
	}
	.angebotdetail-content ul li + li {
		margin-top: 0.875rem;
	}
	.angebotdetail-content ul li::before {
		top: 0.25rem;
		width: 1.5rem;
		height: 1.5rem;
	}
	.zimmerprev-next button, button.linkdown, .angebotprev-next button {
	  font-size: 1rem;
	  line-height: 1.5rem;
	  background-size: 0.5rem auto;
	}
	.zimmerprev-next button.zimmer-prev, .angebotprev-next button.angebot-prev {
	  background-position: left 0.375rem;
	  padding-left: 1rem;
	}
	.zimmerprev-next button.zimmer-next, .angebotprev-next button.angebot-next {
	  background-position: right 0.375rem;
	  padding-right: 1rem;
	}
	.teaserbox_txt,
	.angebotdetail-content,
	.accordion-btn, .form-check label input + span, label.control-label,
	.footernav,
	.footermore,
	.footeradresse,
	ul.hardfacts li,
	.zimmerbox_txt_i ul li,
	.angebotebox_txt {
		font-size: 1rem;
	}
	
	
	.container {
		padding-left: 1rem;
		padding-right: 1rem;
	}
	#header .container {
		padding: 0;
	}
	#header {
		background: var(--weiss90);
	}
	ul.menu {
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 0rem;
		list-style: none;
		margin: 0;
		padding: 0;
		width: 100%;
		flex: 1;
	}

	ul.menu li {
		margin: 0;
		padding: 0;
		list-style: none;
		display: block; 
		width: 20%;
		text-align: center;

	}
	ul.menu li a {
		font-size: 0.875rem;
		letter-spacing: 0.02em;
		text-decoration: none;
		padding-top: 0.625rem;
		padding-bottom: 0.5rem;
		position: relative;
	}
	ul.menu li a::before {
		height: 3.25rem;
		left: -0.0625rem;
		width: 0.125rem;
	}
	ul.menu .menu-icon {
		height: 1.5rem;
		position: relative;
		z-index: 10;
		line-height: 1.5rem;
	}
	ul.menu li:nth-child(1) svg {
		height: 1.375rem;
		width: auto;
		vertical-align: middle;
	}
	ul.menu li:nth-child(2) svg {
		height: 1.1875rem;
		width: auto;
		vertical-align: middle;
	}
	ul.menu li:nth-child(3) svg {
		height: 1.25rem;
		width: auto;
		vertical-align: middle;
	}
	ul.menu li:nth-child(4) svg {
		height: 1.25rem;
		width: auto;
		vertical-align: middle;
	}
	ul.menu li:nth-child(5) svg {
		height: 1.125rem;
		width: auto;
		vertical-align: middle;
	}
	ul.menu .menu-txt {
		padding-top: 0.25rem;
	}
	
	.owl-zimmer_of,
	.owl-angebote_o,
	.owl-teaser_o {
		width: 100vw;
	}
	.owl-zimmer_of .item,
	.owl-angebote .item,
	.owl-teaser_o .item {
		padding-right: 1rem;
	}
	.teaserbox {
		display: flex;
		align-items: center;
		flex-direction: column;
		position: relative;
	}
	.teaserbox_img {
		order: 1;
		width: 100%;
	}
	.teaserbox_txt {
		order: 2;
		width: 100%;
		text-align: center;
		padding-left: 1.75rem;
		padding: 1.75rem;
		padding-bottom: 2.25rem;
	}
	.reichl {
		bottom: 7rem;
	}
	ul.bildergalerie-o {
		margin-left: -0.25rem;
		margin-right: -0.25rem;
	}
	ul.bildergalerie-o li {
		padding: 0.25rem;
		width: 50%;
	}
	.bildergalerie-o li .bildwrap::after{
	  top: 0.5rem;
	  left: 0.4375rem;
	  width: calc(100% - 1rem);
	  height: calc(100% - 1.125rem);
	  border: 1px solid var(--weiss);
	  border-radius: 0.25rem;
	}
	.offerside  {
		right: 1.5rem;
		bottom: 14.125rem;
	}
	.offerside + .offerside {
	  bottom: 8.875rem;
	}
	button.sideofferbutton {
		width: 1rem;
		height: 3.5rem;
		border-top-left-radius: 0.75rem;
		border-bottom-left-radius: 0.75rem;
	}
	.sideoffer_o a.toofferside,
	.sideoffer_o button.toofferside {
		min-width: 21rem;
		padding-left: 1.75rem;
		padding-right: 1.75rem;
		font-size: 1.25rem;
		letter-spacing: 0.02em;
		line-height: 3.5rem;
		border-radius: 0.75rem;
	}
	button.sideofferbutton svg,
	.toofferside svg {
		width: 0.5rem;
		height: auto;
		margin-left: 0.5rem;
		top: -0.1875rem;
	}
	.close_sideoffer {
		position: absolute;
		right: -0.875rem;
		top: -0.875rem;
		width: 1.5rem;
		height: 1.5rem;
		background-color: var(--weiss);
		border-radius: 0.5rem;
		text-align: center;
		line-height: 1.25rem;
		cursor: pointer;
		z-index: +5;
	}
	.close_sideoffer svg {
		width: 0.75rem;
		height: auto;
		vertical-align: middle;
	}
	.slider_overlay {
		top: 40%;
	}
	#wechsler.startseite .flexslider .slides .slider_logo img, .slider_logo img {
		width: 17rem;
	}
	.startslider .slider-nav-wrap {
	  bottom: 5.875rem;
	  gap: 1rem;
	}
	.startslider .slider-nav-wrap .flex-nav-prev a,
	.startslider .slider-nav-wrap .flex-nav-next a {
		width: 0.875rem;
		height: 2rem;
	}
	.zimmerbox_txt_i ul {
		padding-left: 1.25rem;
		padding-right: 1.25rem;
	}
	.zimmer_icon {
		width: 2.5rem;
	}
	.col1064 {
		width: 100%;
	}
	ul.bewertunglist {
		gap: 1.25rem;
		flex-direction: column;
	}
	ul.bewertunglist li {
		margin: 0;
		padding: 0;
		flex: 0 0 100%;
		list-style: none;
		background: var(--weiss);
		text-align: center;
		height: auto;
	}
	.bewertunglist_logo {
		padding-top: 2.25rem;
	}
	.bewertunglist_logo img {
		height: 2.5rem;
		width: auto;
	}
	.owl-carousel .owl-item .bewerung_sterne svg, .owl-carousel .owl-item .bewerung_sterne img {
		width: 1.5rem;
		height: auto;
	}
	.bewertunglist_punkte {
		padding-top: 0.4375rem;
		font-size: 2.5rem;
		line-height: 2.5rem;
	}
	.bewertunglist_punkte .off {
		font-size: 1.25rem;
	}
	.bewerunglist_stand {
		font-size: 1.125rem;
		padding-top: 0.3125rem;
		padding-bottom: 1rem;
	}
	.bewerung_txt {
	  padding-top: 2rem;
	  padding-bottom: 2rem;
	  padding-left: 1.5rem;
	  padding-right: 1.5rem;
	}
	.nomobile {
		display: none;
	}
	.accordion {
	  	padding-top: 1.5rem;
	}
	.action, .actions {
		padding-top: 2rem;
	}
	.footernav nav, .copyright, .footernav ul li {
		width: 100%;
		line-height: 1.75;
	}
	.copyright {
		order: 3;
		padding-top: 0.5rem;
	}
	.footernav {
		padding-top: 3rem;
		display: flex;
		flex-direction: column;
	}
	.footernav ul {
		width: 100%;
		order: 0;
	}
	.footernav ul li {
		width: auto;
		padding: 0;
		padding-left: 0.25rem;
		padding-right: 0.25rem;
	}
	.reichl {
	  position: relative;
		float: left;
		width: 100%;
	  bottom: auto;
	  right: auto;
		text-align: center;
	  z-index: 10;
		padding-top: 2rem;
	}
	#footer {
		padding-bottom: 6rem;
	}
	.footerlogo img {
	  width: 14.5rem;
	  height: auto;
	}
	.footeradresse {
		padding-top: 1.75rem;
	}
	.col290 {
		float: left;
		width: 100%;
	}
	.col1064 {
		width: 100%;
	}
	.bestpreis-garantie {
		width: 13.5rem;
		height: 13.5rem;
		padding: 1.5rem;
		font-size: 1rem;
		line-height: var(--liine114285);
		margin-bottom: 2rem;
		margin-left: 4rem;
	}
	.more-loader-wrap {
		padding-top: 1rem;
	}
	
	#sidebar {
		right: 1rem;
		width: 2rem;
		top: 2.25rem;
	}
	#sidebar ul li + li {
		margin-top: 1rem;
	}
	.lang-current {
		font-size: 1rem;
	}
	.lang-list {
		width: 2.375rem;
		height: 2.375rem;
		line-height: 2.375rem;
	}
	.lang-list li a {
		font-size: 1rem;
	}
	.wishlist,
	#openwcag,
	li.sidephone a,
	.lang-current {
		height: 2.25rem;
		line-height: 2.25rem;
		width: 2.25rem;
	}
	#sidebar li.merkzettel svg {
		width: 1.25rem;
		height: auto;
		vertical-align: middle;
		position: relative;
		top: -0.0625rem;
	}
	.wishlist-count {
		width: 1.25rem;
		height: 1.25rem;
		line-height: 1.25rem;
		top: -0.375rem;
		right: -0.5rem;
	}
	#openwcag svg, #openwcag img {
		width: 1.25rem;
		height: auto;
	}
	li.sidephone a svg, li.sidephone a img {
		width: 1.125rem;
		height: auto;
	}
	.h62 {
	  height: 2.25rem;
	}
	.zimmerfilter, .galeryfilter {
		padding-top: 1.25rem;
	}
	.parallax_i {
	  	min-height: 3.4375rem;
		overflow: auto;
	}
	.parallax_over {
		padding-top: 5rem;
		padding-bottom: 5rem;
	}
	.parallax [data-aos^="fade"]{
	  opacity: 1 !important;
	  transform: translateZ(0) !important;
	}
	ul.hardfacts {
		padding-right: 1rem;
		width: 60rem;
		gap: 2.5rem;
	}
	ul.hardfacts li {
		padding-left: 2rem;
		padding-right: 2rem;
	}
	.owl-gallery-of,
	.owl-zimmer_of {
		padding-top: 1rem;
		padding-bottom: 1rem;
	}
	.filters-wrap {
		width: 100vw;
		margin-left: -1rem;
		padding-left: 1rem;
		padding-bottom: 1.5rem;
		
		overflow: auto;
	}
	.filters-top {
		padding-right: 1rem;
		width: 100%;
		float: left;
		white-space: nowrap;
	}
	.filters-main {
		white-space: nowrap;
		float: left;
		padding-right: 1rem;
	}
	
	.owl-bewertungen_o {
		padding-bottom: 2rem;
	}
	.owl-teaser_o,
	.owl-angebote_o {
		padding-bottom: 4rem;
	}
	#custom-nav-container-angebote.owl-controls,
	.owl-controls {
	  	position: absolute;
	  	top: auto;
		bottom: -0rem;
	  	width: calc(100vw - 4.1875rem);
	  	transform: translate(0, -0%);
	  	pointer-events: none;
	  	z-index: 10;
	}
	#custom-nav-container-teaser.owl-controls {
		bottom: 2.5rem;
	}
	#custom-nav-container-angebote.owl-controls {
		bottom: 2.5rem;
	}
	#custom-nav-container-bewertungen.owl-controls {
		bottom: -0rem;
		left: 50%;
		width: 7rem;
		transform: translate(-50%, 0);
	}
	.owl-controls button.owl-prev {
		left: auto;
		right: 3rem;
	}
	#custom-nav-container-bewertungen.owl-controls button.owl-prev {
		left: 0;
		right: auto;
	}
	.owl-controls button.owl-next {
		right: 0;
	}
	.owl-controls button {
	  	width: 2.25rem;
	  	height: 2.25rem;
	  	line-height: 2.25rem;
	}
	.owl-controls svg {
		width: 0.75rem;
	}
	.angebot_merk button {
	  line-height: 2.5rem;
	  height: 2.5rem;
	  width: 2.5rem;
	}
	#merkliste_liste {
		flex-direction: column;
	}
	.merklistebox {
		flex: 0 0 100%;
		gap: 1rem;
	}
	.merkliste_txt_u {
		padding-top: 0.25rem;
	}
	#merkzettel_side a {
		transition: all 0.3s ease;
		position: relative;
		left: 0;
	}
	#wishlist-link.tooltip-active,
	.hide #merkzettel_side.oneadded a {
		left: -6rem;

	}
	.hide  .tooltip {
	  opacity: 0;
	  visibility: hidden;
	}
	.hide #merkzettel_side.oneadded a + .tooltip {
		opacity: 1;
		transform: translate(-50%, 0px) scaleY(1);
		pointer-events: auto;
	}
	.angebotdetail {
	  	padding: 0rem;
	  	width: 100%;
		height: 100vh;
	  	max-width: 100vw;
    	max-height: 100vh;
		
	}
	body.dialog-open {
		overflow: hidden !important;
		width: 100%;
	}
	.angebotdetail-content {
		padding-left: 1.25rem;
		padding-right: 1.25rem;
		padding-top: 3.25rem;
		padding-bottom: 1.25rem;
		font-size: 1rem;
		line-height: 1.4;
		overflow: auto;
		height: 100%;
	}
	.xcloses_zimmerdialog, .xcloses_angebotdialog {
		top: 0.75rem;
		right: 0.5rem;
		width: 1.75rem;
	  	border-radius: 0.5rem;
	  	text-align: center;
	  	line-height: 1.75rem;
	  	height: 1.75rem;
		position: fixed;
	}
	.xcloses_zimmerdialog svg, .xcloses_angebotdialog svg {
		width: 0.875rem;
		height: auto;
	}
	.closes_zimmerdialog, .closes_angebotdialog { 
		top: 1rem;
		right: 1rem;
	}
	.angebebot_txt {
		width: 100%;
		padding: 0;
	}
	.angebot_img {
		width: 100%;
		padding-top: 2rem;
	}
	.angebotpreis {
		flex-direction: column;
	}
	.angebotdetail-content .angebotebox_cta ul {
		text-align: center;
		margin-top: 1.75rem;
	}
	.angebotdetail-content .angebotebox_cta ul li {
		display: inline-block;
	}
	.owl-angegotgallery {
		height: auto;
	}
	.owl-angegotgallerythumb {
		height: auto;
	}
	.zimmerinfodet {
		padding-left: 0;
		float: left;
		width: 100%;
	}
	.angebotdetail-content .zimmerinfodet ul {
		display: block;
		gap: 0rem;
		align-items: center;
		height: auto;
		float: left;
		width: 100%;
		justify-content: space-between;
	}
	.angebotdetail-content .zimmerinfodet .zimmer_icon {
		width: 2rem;
	}
	
	.angebotdetail-content .zimmerinfodet ul li {
		display: inline-block;
		padding-left: 0;
		margin: 0;
		float: left;
		width: 50%;
	}
	.angebotdetail-content .zimmerinfodet ul li:nth-child(1) {
		width: 100%;
		padding-bottom: 0.75rem;
	}
	.angebotdetail-content .zimmerinfodet ul li + li {
		margin: 0;
	}
	.angebotdetail-content .zimmer_icon svg,
	.owl-carousel .owl-item .zimmerbox_txt_i svg,
	.angebotdetail-content .zimmer_icon img, .owl-carousel .owl-item .zimmerbox_txt_i img {
		height: 1.375rem;
		width: auto;
	}
	
	
	
	
	
	
	.frame-space-before-70 {
		margin-top: 4.375rem;
	}
	.frame-space-before-80 {
		margin-top: 5rem;
	}
	.frame-space-before-94 {
		margin-top: 5.875rem;
	}
	.frame-space-before-120 {
		margin-top: 5.5rem;
	}
	.frame-space-before-145 {
		margin-top: 5rem;
	}



	.frame-space-after-70 {
		margin-bottom: 4.375rem;
	}
	.frame-space-after-80 {
		margin-bottom: 5rem;
	}
	.frame-space-after-94 {
		margin-bottom: 5rem;
	}
	.frame-space-after-120 {
		margin-bottom: 5.5rem;
	}
	.frame-space-after-145 {
		margin-bottom: 6.0625rem;
	}

	.frame-space-before-120.mobileless {
		margin-top: 4rem;
	}
	
	.accesscontent {
		padding: 1rem;
		padding-top: 1.25rem;
		padding-right: 3rem;
		padding-bottom: 1.5rem;
	  	border: 1 solid #ffffff;
	  	width: 19rem;
	}
	.openwacinfo {
	  	padding: 1rem;
		padding-top: 1.25rem;
	  	border: 1 solid #ffffff;
	  	width: 18rem;
	}
	#openwcag .btn-title, .accesscontent h2, .openwacinfo h2 {
		font-size: 1.25rem;
	}
	.closeaccess {
		top: 0.75rem;
		right: 0.75rem;
	}
	
	
	.videoinline.mobilehoehe100 video {
		max-width: 50000%;
		max-height: 100%;
	}
	.videoinline.mobilebreite100 video {
		max-width: 100%;
	}
	
	
	.ce-bodytext {
		clear: both;
		width: 100%;
	}
	.ce-intext.ce-right .ce-gallery[data-ce-columns="1"].ce-gallery {
		margin-left: 0;
	}
	.ce-intext.ce-left .ce-gallery[data-ce-columns="1"].ce-gallery {
		margin-right: 0;
	}
	[data-aos="fade-right"],[data-aos="fade-left"] {		
		transform: translate3d(0,70px,0);
	}
	[data-aos][data-aos][data-aos-delay="400"].aos-animate, body[data-aos-delay="400"] [data-aos].aos-animate,
	[data-aos][data-aos][data-aos-delay="200"].aos-animate, body[data-aos-delay="200"] [data-aos].aos-animate,
	[data-aos][data-aos][data-aos-delay="300"].aos-animate, body[data-aos-delay="300"] [data-aos].aos-animate,
	[data-aos][data-aos][data-aos-delay="100"].aos-animate, body[data-aos-delay="100"] [data-aos].aos-animate,
	[data-aos][data-aos][data-aos-delay="500"].aos-animate, body[data-aos-delay="500"] [data-aos].aos-animate,
	[data-aos][data-aos][data-aos-delay="600"].aos-animate, body[data-aos-delay="600"] [data-aos].aos-animate{
		transition-delay: .0s;
	}
}




