*, *:before, *:after {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased;
    font-smooth: always;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.004);
    filter: progid:DXImageTransform.Microsoft.dropShadow(color=#000000,offX=0,offY=0) alpha(opacity=0.4) progid:DXImageTransform.Microsoft.Blur(pixelradius=2.15,enabled='true');
    -ms-filter: "progid:DXImageTransform.Microsoft.dropShadow(color=#000000,offX=0,offY=0)" "alpha(opacity=0.4)" "progid:DXImageTransform.Microsoft.Blur(pixelradius=2.15, enabled='true')";
    text-rendering: optimizeLegibility;
    outline: 0;
}


@font-face {
  font-family: "KestrelScript-Regular";
  src: url('https://font.1stof8.com/hasselberger/KestrelScriptRegular/font.woff2') format('woff2'), url('https://font.1stof8.com/hasselberger/KestrelScriptRegular/font.woff') format('woff');
}
.maxwidth{
	margin: 0;	
}
.maxwidthsmall{
	width: inherit;	
}
.only_desktop{display: none;}
@media screen and (min-width: 960px){
	.only_desktop{display: block;}
}

.ce_zitat{
	padding: 1rem;
}

@media screen and (min-width: 960px){
  .bergbahn_inkl{
	position: absolute;
	top: 7rem;
	right: 4rem;
  }
  .menu_fixed .bergbahn_inkl{
	position: absolute;
	top: .5rem;
	right: inherit;
	left: 10rem;
  }
}


.TraminoVorlage.T1979 .maxwidthsmall,
#impressum{
	margin-top: 20vw;
	max-width: 1024px;
}

#TraminoInhalt{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#TraminoInhalt > div{
	width: max-content;
}
#TraminoInhalt > div:first-child{
	width: 100%;
}

#body{
	font-size: 16px;
	line-height: 135%;
	font-family: "Source Sans Pro", sans-serif;
	font-style: normal;
	font-weight: 400;
	overflow-x: hidden;
	background: #FFF;
}
#TraminoRubrik p{
	font-size: 16px;
}
#body .fontsize_large{
	font-size: inherit;
}
h1,h2,h3{
	font-family: "KestrelScript-Regular";
	font-size: calc(26px + (36 - 26) * ((100vw - 300px) / (1600 - 300)));;
	font-weight: normal;
	line-height: 120%;
}
h1 span,h2 span,h3 span,h4 span,h5 span,h6 span{
	color: rgb(170,51,29);	
}

a{text-decoration: none; color: #000}


#page .button2{
	display: inline-block;
	padding: .8rem 1.3rem;
	border-radius: 2rem;
	margin: .5rem 1rem 0;
}

.S6156 .bgcolor{
	background-color: #725633 !important;
}
.S6156 .box.bgcolor{
	background-color: rgba(114,86,51,.85) !important;
}
header .header{
	height: 140px;	
}
header .header .logo{
	margin-top: 1rem;	
}
#navwrapper .bottomwrapper,
#navwrapper nav{
	margin-top: 30px;
}
.T4158.S7204 .mask2{
	opacity: 0;	
}
.leafletmap{
	z-index: 0;
}#main_menu{
	position: fixed;
	width: 100vw;
	height: 100vh;	
	background-color: #933623;
	background-image: url('https://tramino.s3.amazonaws.com/s/hasselberger-cornelia/1123319/logo-abnedsonne-blume-w.png');
	background-repeat: no-repeat;
	background-position: bottom -100px left;
	background-size: 40vw auto;
	color: #827a70;
	z-index: 99;
	display: grid;
	justify-content: center;
	align-content: center;
}
#main_menu:after{
	content: '';
	display: inline-block;
	position: absolute;
	right: 0;
	bottom: 0;
	width: 20vw;
	height: 60vh;
	opacity:0;
	transition: opacity 2s ease;
}
#main_menu a{
	color: #FFF;
}
#main_menu ul{
	list-style: none;
	text-align: center;
	line-height: 64px;
	padding: 0;
}
#main_menu nav li.nav_2,
#main_menu nav li.nav_3,
#main_menu nav li.nav_4{
	font-family: "KestrelScript-Regular";
	font-size: 2.5em !important;
}
#main_menu nav li:hover a{
	color: rgb(255,124,0);
}


#main_menu nav li.nav_1{transform: translateX(0);}
#main_menu nav li.nav_2{transform: translateX(3vw);}
#main_menu nav li.nav_3{transform: translateX(5vw);}
#main_menu nav li.nav_4{transform: translateX(6vw);}
#main_menu nav li.nav_5{transform: translateX(5vw);}


#main_menu nav > .ul > ul > li{
	font-size: calc(26px + (32 - 26) * ((100vw - 300px) / (1600 - 300)));
	line-height: 180%;
	position: relative;
}
#main_menu nav li.nav_aktiv > a{
	color: rgb(255,124,0);
}
#main_menu nav > .ul > ul > li:after{
	content: '';
	display: inline-block;
	width: 48px;
	height: 58px;
	position: relative;
	right: 1.5rem;
}
#main_menu nav > .ul > ul > li.nav_aktiv:after,
#main_menu nav > .ul > ul > li:hover:after{
	background-image: url('https://tramino.s3.amazonaws.com/s/hasselberger-cornelia/1123358/400.png');
	background-size: auto 110%;
	background-position: center center;
	background-repeat: no-repeat;
	animation-name: flowerGrow;
	animation-duration: .3s;
	transform-origin: bottom left;
}
#main_menu nav .ul ul li .ul{
	display: bock;
	max-height: 0;
	overflow: hidden;
	transition: border-top 2s ease;
	border-top: 0px solid transparent;
}
#main_menu nav .ul ul li.open_nav .ul{
	transition: all 1s ease;	
}
#main_menu nav .ul ul li.nav_offen .ul{
	display: block;
	max-height: 500px;
	border-top: 2px solid rgb(154 171 82 / .2);
	padding: 1.5rem 1.5rem .8rem;
}
#main_menu nav .ul ul li .ul ul li{
	font-size: calc(20px + (25 - 20) * ((100vw - 300px) / (1600 - 300)));
	line-height: 1.8em;
}

#body.checked #main_menu{
	position: relative;
}
.sub_nav{
	position: fixed;	
}

.sub_nav ul{
	margin-bottom: 2rem;	
}
.sub_nav ul li{
	list-style: none;
	margin-right: 1rem;
	margin-bottom: 1rem;
	border-bottom: 1px solid #827a70;
}
.sub_nav ul a{
	color: #827a70;
}
#body.checked .sub_nav{
	position: relative;	
	padding-left: 3rem;
}
#body.checked #logo{
	display: none;
}
#body.checked .contact a{
	color: #FFF;
}

.hover_menu{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 2fr;
	overflow: visible;
	z-index: 999;
	pointer-events: none;
}
.menu_fixed .hover_menu .contact{
	max-height: 95px;
}
.menu_fixed .hover_menu .contact a{
	color: #000;
}

.hover_menu span.hide_mobile{
	display: none;
}

#logo{
	height: 80px;
	justify-self: center;	
}
#logo img{
	border: 1rem solid #FFF;
	background-color: #fff;
}
.menu_fixed #logo{
	padding-top: inherit;
	justify-self:inherit;	
}


.hover_menu .logo_big{
	display: none;
}
.hover_menu .logo_big img{
	max-width: 33vw;
}
.hover_menu .logo_small img{
	height: 100px;
}
.hover_menu .contact{
	display: flex;
	justify-self: flex-end;
    align-self: flex-start;
	justify-content: flex-end;
	grid-column: 2/3;
	align-items: center;
	padding: .8rem 0 0 0;
	min-height: 66px;
	text-align: center;
	pointer-events: all;
}

.hover_menu .contact a{
	display: inline-block;
	min-width: 48px;
}
.hover_menu .contact .btn{
	margin-right: 1rem;
}

.hover_menu .contact > div{
	margin: 0 8px;	
}
.hover_menu .contact #hamburger{
	display: grid;
	grid-template-rows: 1fr 1fr 1fr;	
	max-height: 48px;
	cursor: pointer;
	background-color: #933623;
	margin: 0;
	padding: .6rem 1rem 0;
	align-self: normal;
}
.hover_menu .contact #hamburger span{
	display: inline-block;
	width: 32px;
	height: 3px;
	background: #FFF;
	position: relative;
	top: 0;
	transition: all .7s ease;
}
.hover_menu .contact #hamburger.checked span.bar1{
	transform: rotate(45deg);
	top: 100%;
}
.hover_menu .contact #hamburger.checked span.bar2{
	opacity: 0;
	transform: translateX(200%);
}
.hover_menu .contact #hamburger.checked span.bar3{
	transform: rotate(-45deg);
	top: -100%;
}

.menu_fixed .hover_menu{
	position: fixed;
	animation-name: fly-in-top;
	animation-duration: 1.5s;
	background-color: #FFF;
	box-shadow: 0 10px 30px -20px rgb(0,0,0);
	transition: box-shadow 1s ease;
}
.menu_fixed .hover_menu .logo_big{
	display: none;
}
.menu_fixed .hover_menu .logo_small{
	display: block;
	animation-name: fly-in-left;
	animation-duration: 2s;
}



#body.checked #main_menu{
	left: 0;	
}
#body.checked #main_menu:after{
	opacity: 1;	
}

#body.checked #main_menu nav > .ul > ul > li:nth-child(2){
	animation-delay: .4s;
}
#body.checked #main_menu nav > .ul > ul > li:nth-child(3){
	animation-delay: .8s;
}
#body.checked #main_menu nav > .ul > ul > li:nth-child(4){
	animation-delay: 1.2s;
}

#body.checked.menu_fixed .hover_menu{
	box-shadow: 0 10px 0 -20px rgb(0,0,0);
}
#body .tuned_by,
#body.checked #TraminoRubrik{
	display: none;
}

@keyframes flyIn {
  0%   {transform: translate3d(0,-2rem,0);}
  100% {transform: translate3d(0,0,0);}
}

@keyframes fly-in-left {
  0% {transform: translate3d(-100%,0,0);}
  5% {transform: translate3d(-100%,0,0);}
  100% {transform: translate3d(0%,0,0);}
}

@keyframes fly-in-top {
  from {transform: translate3d(0,-100%,0);}
  to {transform: translate3d(0,0,0);}
}

@media screen and (max-width: 337px){
	.btn.icon.space_left.icons8-bed span{
		display: none;
	}
}


.hover_menu .logo_small img{
	height: 80px;	
}
@media screen and (min-width: 640px){
	.hover_menu .contact{
		min-height: 95px;
		padding: 2rem 2rem 0 0;
	}
	#body.menu_fixed .hover_menu .contact{
		min-height: 66px;
	}
}

@media screen and (min-width: 768px){
	#main_menu{
		position: fixed;
		top: 0;
		left: -100vw;
	}
	#body.checked #main_menu{
		position: fixed;
	}
	#logo{
		width: content-fit;
		padding-top: 4vw;	
	}
	.sub_nav{
		position: fixed;
	    left: -200vw;
    	bottom: 2em;
	    z-index: 108;
	}
	.sub_nav ul{
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-column-gap: 1rem;
		margin: 0;
		padding: 0;
	}
	.sub_nav ul li{	
		margin-bottom: .3rem;
		border-bottom: none;
	}
	
	#body.checked .sub_nav{
		position: fixed;	
		left: 0;
	}
	.hover_menu .logo_big{
		display: block;
	}
	.hover_menu .logo_small{
		display: none;
	}
	.hover_menu{
		grid-template-columns: 1fr 2fr;
	}
	.hover_menu .contact{
		padding: 3rem 3rem 0 0;
	}
	.menu_fixed .hover_menu .contact{
		padding: 1rem 2rem 0 0;
	}
	.hover_menu .contact > div{
		margin: 0 1rem;	
	}
	.hover_menu .contact a{
		color: #FFF;
	}
	.hover_menu .contact span{
		display: inline-block;	
		margin-left: 5px;
	}
	#main_menu nav > .ul > ul > li:before{
		transform: rotate(45deg) translate3d(.8em, 0, 0)
	}
	#main_menu nav > .ul > ul > li.nav_offen:before{
		transform: rotate(135deg) translate3d(0, -1em, 0)
	}

}

@media screen and (min-width: 810px){
	.hover_menu span.hide_mobile{
		display: inline;
	}
}input {
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
}
input[type="radio"]{
 -webkit-appearance: auto;
 -moz-appearance: auto;
 appearance: auto;
}
#cart_accept{
	-webkit-appearance: auto;
	-moz-appearance: auto;
	appearance: auto;
}
#cart_accept:hover{
	background-color: #000;
}

#anfrage{
	max-width: 960px;
	margin: 0 auto;	
	padding: 0;
}

#anfrage-form{
	color: #000;
}
@media screen and (min-width: 768px){
	#anfrage-form{
		display: grid;
	    grid-template-columns: 1fr 1fr;	
		color: #000;
	}
	#anfrage-form input[type="submit"],
	#anfrage-form .row.anrede{
		grid-column: 1/3;
		max-width: 456px;
	}
	.T957 #anfrage .row.umfrage{
		position: relative;
		grid-column: 1/3;
		border-bottom: 1px solid #ddd !important;
		padding-bottom: 4rem;
	}
	.T957 #anfrage .row.umfrage:after{
		content: 'Ihre Kontaktdaten';
		position: absolute;
		bottom: 0;
		font-size: 1.5rem;
	}
	#anfrage.nohelpers .left.col2{
		
	}
}

.TraminoForm .input input,
.TraminoForm textarea{
	border: none;
	height: 44px;
	padding: 5px 2em;
	background-color: #ddd;
}
.TraminoForm .label{
	text-align: left;
}
.TraminoForm .formtype_Datum{
	float: left;
	width: 50%;
}
.TraminoForm .formtype_Spamstop{
	clear: both;	
}
.TraminoForm .group{
	width: 100% !important;
}
.TraminoForm .group .element{
	width: 48%;
	margin: 0 1%;
	float: left;
}
.checkout input[type="text"], 
#anfrage input[type="text"], 
.TraminoForm input[type="password"], 
.TraminoForm input[type="date"],
.TraminoForm input[type="datetime"],
#TraminoInhalt input[type="email"],.TraminoForm input[type="number"],.TraminoForm input[type="search"],.TraminoForm input[type="tel"],
.TraminoForm input[type="time"],.TraminoForm input[type="url"],.TraminoForm input:not([type]),.TraminoForm textarea, #page select {
    width: 100%;
	height: 44px;
	padding: 0 1rem !important;
	font-size: 1rem !important;
    display: inline-block;
    background: #fff;
	border: 1px solid #ddd;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    -moz-box-shadow: inset 0 1px 1px #ddd;
    -webkit-box-shadow: inset 0 1px 1px #ddd;
    box-shadow: inset 0 1px 1px #ddd;
    -moz-transition: all .15s linear;
    -webkit-transition: all .15s linear;
    -o-transition: all .15s linear;
    transition: all .15s linear;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input:not([type]), textarea{
	border-color: #ddd !important;	
}

select{
	font-size: 1rem;
	height: 44px;
	padding: 0 1rem;
	-moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    -moz-box-shadow: inset 0 1px 1px #eee;
    -webkit-box-shadow: inset 0 1px 1px #eee;
    box-shadow: inset 0 1px 1px #eee;
	margin-bottom: .5rem;
}
.anrede select,
.kategorie  select{
	width: 100%;	
}
#anfrage .left.col1{
	float: none;
	font-size: 1rem;
	margin: .5rem 0;
}
.content .TraminoForm .label h4{
	text-align: left;
}
.T3082 .tb{
	float: left;
}
.TraminoForm .input SELECT{
	width: 100%;
	height: 44px;	
	background-color: #ddd;
}
.TraminoForm .input textarea{

}
#anfrage textarea{
	padding: 15px;
	font-size: 16px;
	height: 5rem;	
}
#anfrage .left.col2{
	padding: 0 !important;	
}
#anfrage .row{
	margin-top: 1.5em;	
}
#anfrage .left.col1{
	font-weight: normal !important;
}
#anfrage .idk{
	font-size: 1rem;
	margin-top: 1rem;
}
.ui-datepicker{
	width: inherit !important;	
}
#besteller_form input[type="submit"],
#anfrage-form input[type="submit"],
input[type="button"],
#cart .bottom_button{
	height: 44px;
    display: inline-block;
    background: #933623;
	font-size: 1rem;
	color: #FFF;
	border-radius: 3px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    -moz-box-shadow: inset 0 1px 1px #eee;
    -webkit-box-shadow: inset 0 1px 1px #eee;
    box-shadow: inset 0 1px 1px #eee;
    -moz-transition: all .15s linear;
    -webkit-transition: all .15s linear;
    -o-transition: all .15s linear;
    transition: all .15s linear;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
#anfrage .left.col1{
	width: 100% !important;	
}
.left.col1{
	color: #000;
}
.left.col2 .hasDatepicker{
	width: 40%;
}
#anfrage .row{
	border: none !important;
}
.ui-datepicker-trigger:before{
	content: '';
	width: 100px;
	height: 48px;
	background: blue;
}
#cartProgressBar .step{
  counter-increment: posMarkup;	
}
#cartProgressBar .step.active{
  color: #840000 !important;
}
#cartProgressBar .step:before{
	content: counter(posMarkup);	
	padding-right: .5rem;
	font-size: 2em;
}
#cartProgressBar .step4{
	color: transparent;
}

@media screen and (max-width: 640px){
	.TraminoVorlage.T957{
		margin: 0;
		padding: 0;
	}
	select{
		padding: .5rem;	
	}
	#anfrage .left.col1{
		margin: 0;	
	}
}
@media screen and (max-width: 767px){
	#TraminoInhalt > div{order: 3;}
	#TraminoInhalt #TraminoBlock_334614{order: 2;}
	#TraminoInhalt #TraminoBlock_335219{order: 1;}
}
#body.buchen .TraminoVorlage.T3222{
	position: fixed;
	top: 6rem;
	left: 0;
	z-index: 999;
	width: 100%;
}

#TraminoAnhang296060{
	position: absolute;
	right: 460px;
	top: 2rem;	
	margin: 0;
	z-index: 9999;
	max-width: 140px;
}
@media screen and (max-width: 960px){
	#TraminoAnhang296060{
		right: 310px;
	}	
}

@media screen and (max-width: 640px){
	#TraminoAnhang296060{
		right: 35%;
	}	
}


.menu_fixed #TraminoAnhang296060{
		position: fixed;
}
#TraminoAnhang296060 a{
	border: 1px solid #827a70;
    color: #FFFFFF;
    display: inline-block;
    padding: .3rem .8rem;
	background-color: #9aab52;
    transition: background-color .7s ease;
    border-radius: 2px;
}
#TraminoAnhang296060 a:hover{
	background-color: #9aab52;
}
#body.buchen .TraminoVorlage.T3222{
	left: 50%;
	transform: translateX(-50%);
	z-index: 9999;
}
#body.buchen .TraminoVorlage.T3222 .maxwidthsmall{
	background-color: #e7e5e2;
	padding: 1.5rem;
	margin-left: 0;
    margin-right: 0;
}

#body.buchen .TraminoVorlage.T3222:after{
	content: '';
	width: 100vw;
	height: 100vh;
	position: fixed;
	left: 0;
	top: 0;
	background-color: rgba(0,0,0,.9);
	z-index: -1;
}
.reserva-datepicker{
	width: 90%;	
}
#mini_datepicker.reserva-datepicker{
	z-index: 9999 !important;	
}
.TraminoVorlage.T3222 .search{
	display: grid;
	justify-items: center;
}
.TraminoVorlage.T3222 a.modalClose{
	position: absolute;
	top: 0;
	right: 0;
	color: transparent;
	width: 48px;
	height: 48px;
	cursor: pointer;
}
.TraminoVorlage.T3222 a.modalClose:before,
.TraminoVorlage.T3222 a.modalClose:after{
	content: '';
	display: inline-block;
	width: 24px;
	height: 2px;
	background-color: #827a70;
	position: absolute;
}
.TraminoVorlage.T3222 a.modalClose:hover:before,
.TraminoVorlage.T3222 a.modalClose:hover:after{
	opacity: .7;
}
.TraminoVorlage.T3222 a.modalClose:before{
	top: 18px;
	left: 10px;
	transform: rotate(45deg);	
}
.TraminoVorlage.T3222 a.modalClose:after{
	top: 18px;
	left: 10px;
	transform: rotate(-45deg);	
}

#quicksearch{
	max-width: 300px;	
}

.TraminoVorlage.T3222 .search .button.pulldown.fontsize_large{
	border: 3px solid rgb(255,124,0);
	border-radius: 32px;
	line-height: 32px;
	box-shadow: none;
}
.TraminoVorlage.T3222 input[type="submit"]{
	background-color: rgb(170,51,29) !important;
	border-radius: 32px;
	line-height: 32px;
}



@media screen and (min-width: 768px){
	.TraminoVorlage.T3222{
    	max-height: 780px;
	    width: 33vw;
	}

	.reserva-datepicker{
		width: inherit;	
	}
	#body.buchen .TraminoVorlage.T3222{
		position: fixed;
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
		padding-top: 180px;
		transform: translateX(0);
	}
	.TraminoVorlage.T3222 a.modalClose{
		top: 180px;
		right: 50%;
		width: 48px;
		height: 48px;
		transform: translateX(310%);
	}
	#body.buchen .TraminoVorlage.T3222 .maxwidthsmall{
		max-width: 280px;	
		border-radius: 5px;
		left: 50%;
	    position: absolute;
		transform: translateX(-50%);
	}	
}

.TraminoVorlage.T3222 .button{
	padding: 5px 15px;	
}
.TraminoVorlage.T3222 .button.pulldown{
	width: 100%;	
	margin-bottom: 1rem;
}
.TraminoVorlage.T3222 input[type="submit"]{
	width: 100%;
	background-color: #9aab52;
}
#body.checked .TraminoVorlage.T3222{
	left: 3rem;
	transform: translateX(0);
}
.reserva-people-select,
.reserva-datepicker{
	z-index: 9999;	
}
.reserva-people-select{
	transform: translateY(2rem);
}
.anfrage-datepicker .ui-state-active{
	background-color: #9aab52;	
}
#ui-datepicker-div.anfrage-datepicker{
	padding: 1rem .8rem;
}

@media screen and (min-width: 768px){
	#TraminoBlock_334614{
		display: block;
		position: absolute !important;
    	left: 0;
	    top: 32vw;
    	z-index: 9;
	}
}#page .T2646{
	padding: 0;	
}

.T2646 .booking .class .book .button{
	padding: 5px 2% !important;	
    width: 45%;
	top: 5px !important;
}

.T2646 .booking .class .book .button.button-booking,
.T2646 .search input[type="submit"],
.T2886 input[type=submit]{
	background-color: #933623 !important;	
}
.price{
	background-color: rgba(0,0,0,.35)!important;	
}
.price .missing{
	display: inline-block;
	padding: 1rem;	
}

.T2646 .booking .class .book .button.button-booking{
		margin: 0 4% 0 0;
}
.T2646 .booking .class .book .button.button-request{
	background-color: #FFF !important;
	color: #ef7b00;
	border: 1px solid #ef7b00;
	margin: 0 0 0 2%;
}
.T2646 .booking .class .stars{
	background: #ef7b00 !important;
	color: #FFF !important;
}
.T2646 .booking .class .stars:after{
	border-top: 7px solid #ef7b00 !important;	
}

.T2886 table.cart td.total{
	color: 	#933623 !important;	
}
.classes-result{
	display: flex;
	flex-wrap: wrap;	
}
#page .T2646 .booking .class,
#page .T2646 .booking .class .info .facts{
	font-size: 1rem;	
}


.classes-result .class{
	flex: 1 1 100%;
	order: 2;
	line-height: 1.45em !important;
}

.classes-result .class h2{
	margin-top: 2rem !important;
	font-size: 2.3rem !important;
	color: #933623 !important;
}

.T2646 .booking .class .book .text{
	margin-top: .8rem;	
}
.T2646 .booking .class .info{
	position: relative;	
}
.T2646 .booking .class .info h2{
	margin: 0 0 1rem 0;
}
.T2646 .booking .class .info h4{
	position: absolute;
	font-weight: normal;
	color: #ef7b00;
	left: 4%;
    top: 5.2em;
}



.TraminoVorlage.T2646[data-content_id="129669"] .classes-result .class[data-class="6890"],
.TraminoVorlage.T2646[data-content_id="129676"] .classes-result .class[data-class="6889"],
.TraminoVorlage.T2646[data-content_id="129677"] .classes-result .class[data-class="6888"]{
	order: 1;
	border-bottom: 3px solid #933623;
	padding-bottom: 7rem;
	margin-bottom: 3rem;
}
.TraminoVorlage.T2646[data-content_id="129669"] .classes-result .class[data-class="6890"]:after,
.TraminoVorlage.T2646[data-content_id="129676"] .classes-result .class[data-class="6889"]:after,
.TraminoVorlage.T2646[data-content_id="129677"] .classes-result .class[data-class="6888"]:after{
	content: 'Weitere Wohnungen';
	display: inline-block;
	position: absolute;
	bottom: 2rem;
	font-size: 1.2rem;
	text-transform: uppercase;
	color: #ef7b00;
	left: 50%;
	transform: translateX(-50%);
}
.nav__warenkorb{
	position: fixed;
	top: 2rem;
	right: 2rem	
}
.nav__warenkorb a span{
	display: none;
}
.nav__warenkorb a:before {
	content: '';
	background-image: url('https://tramino.s3.amazonaws.com/s/casatina/975270/warenkorbsymbol-casatina.png');
	background-size: auto 100%;
	background-repeat: no-repeat;
	display: inline-block;
	width: 56px;
	height: 56px;
    font-style: normal;
	font-size: 1.5rem;
    font-weight: 400;
    font-variant: normal;
    line-height: 1;
    text-decoration: inherit;
    text-rendering: optimizeLegibility;
    text-transform: none;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
	transform: rotate(0deg);	
	transition: transform .345s ease;
}
.nav__warenkorb a:hover:before {
	transform: rotate(3deg);	
}
.nav__warenkorb.nav_aktiv a,
.nav__warenkorb a{
	background: transparent !important;	
}
.Rubrik_99645 .nav__warenkorb{
	display: none !important;
}
.Rubrik_99645 header.fixed .nav__warenkorb{
	display: block !important;
}
.T2646 .request .inner{
	max-width: none;
}


@media screen and (max-width: 767px){
	.T2646 .booking .class .book .button{
		margin: 0 !important;	
	}
	.T2646 .booking .class .info h4{
    	top: 6.2em;
	}
	#page #detail-booking .class div{
		flex: none;	
	}
	#page .T2646 .booking .class .tags{
		margin: 0;	
		font-size: 15px;
		line-height: 135%;
	    column-count: inherit;
    	column-gap: inherit;
	}
	#page .T2646 .booking .class .book,
	#page .T2646 .booking .class .info{
		width: 100% !important;	
	}
}
@media screen and (max-width: 460px){
	#detail-booking .class{
		display: flex;
		flex-wrap: wrap;
		justify-content: left;
	}
	#detail-booking .class div{
		flex: 1 1 100%;	
	}
	#detail-booking .class .col.book{
		width: 100%;
	}
}.T2901{
	margin: 5em 0;	
}

.T2901 .Bild{
	 box-shadow: 0 0 10px -4px rgba(0,0,0,.2);
}

.T2901 .col .text{
	border: 6px solid rgba(239,139,0,.2);
	padding: 1rem;
	margin: 2rem .5rem;
}
.T2901.S7790 .col1{
	padding: 0 !important;	
}
.T2901 .col .text h1{
	color: rgb(255,124,0)
}
.S7222 .bgcolor{
	background-color: rgb(255,124,0) !important;
}

.T2901 .col .text h1 span{
	position: relative;	
}

.T2901 .col .text h1 span:after{
	content: '';
	display: inline-block;
	width: 42px;
	height: 52px;
	position: absolute;
	bottom: .5rem;
	right: -1.3rem;
	background-image: url(https://tramino.s3.amazonaws.com/s/hasselberger-cornelia/1123318/150.png);
	background-size: auto 110%;
	background-position: center center;
	background-repeat: no-repeat;
}
.T2901 .col .text p a{
	display: inline-block;
	color: #FFF;
	background-color: rgb(170,51,29);
	padding: 0 1rem;
	line-height: 48px;
}

@media screen and (min-width: 768px){
	.T2901{
		display: flex;
		justify-content: center;
		width: 100vw;
	}
	.T2901 .col{
		position: realtive;
		z-index: 2;	
	}
	.T2901 .col1 .text{
		position: realtive;
		transform: translateX(13%);
		padding-left: 5rem;
		z-index: 0;
	}
	.T2901.S7790 .col1 .text{
		transform: translateX(-13%);
	}
	.T2901 .col .text{
		padding: 3rem;
	}
	.T2901.S7790 .col1{
		padding: inherit; 	
	}
}.T2835 .col{
	position: relative;
	z-index: 2;	
	max-width: 595px;
}
.T2835 .col .text{
	padding: 3rem;
}
.T2835 .col .text h2{
	color: rgb(255,124,0)
}
.T2835 .col1 .text{
	background: rgb(170,51,29);
	color: #FFF;
}
.T2835 .col2 .text{
	border: 6px solid rgba(255,124,0,.2);
	margin: .5rem;
}
.T2835 .col2{
	position: realtive;
	z-index: 0;	
}

@media screen and (min-width: 768px){
	.T2835{
		display: flex;
		justify-content: center;
		width: 100vw;	
	}
	.T2835 .col2 .text{
		transform: translate3d(-13%,5%,0);
		padding-left: 5rem;
	}	
}.T3231 .maxwidth{
	margin: inherit;
	float: right;
}.ce_teaser .ce_text{
	margin-top: 1rem;
	border: 8px solid rgba(255,124,0,.2)
}
.ce_teaser img{
	width: 100%;
	height: auto;
}
.ce_teaser h2{
	position: relative;
	color: rgb(255,124,0);
}
.ce_teaser h2 span{
	color: rgb(170,51,29);	
}
.ce_teaser p{
	max-width: 390px;	
}
.ce_teaser .ce_text a.more_info{
	color: rgb(170,51,29);
	text-transform: uppercase;
}
.ce_teaser .ce_text a.more_info:before{
	content: '';
	display: inline-block;
	width: 100%;
	max-width: 60px;
	height: 2px;
	background-color: rgb(170,51,29);
	position: relative;
	top: -.3rem;
	margin-right: .3rem;
	transition: max-width .5s ease;
}
.ce_teaser .ce_text a.more_info:hover:before{
	max-width: 65px;
}

.ce_teaser:hover h2 span{
	position: relative;	
}
.ce_teaser:hover h2 span:after{
	content: '';
	display: inline-block;
	width: 42px;
	height: 52px;
	position: absolute;
	bottom: .5rem;
	right: -1.5rem;
	background-image: url(https://tramino.s3.amazonaws.com/s/hasselberger-cornelia/1123318/150.png);
	background-size: auto 110%;
	background-position: center center;
	background-repeat: no-repeat;
	animation-name: flowerGrow;
	animation-duration: .3s;
	transform-origin: bottom left;
}

@keyframes flowerGrow {
  from {transform: rotate(-66deg) scale(0);}
  to {transform: rotate(0deg) scale(1);}
}.ce_fullwidth{
	position: relative;	
}
.ce_fullwidth h2{
	display: none;
}

@media screen and (min-width: 768px){
  .ce_fullwidth h2{
	font-family: "KestrelScript-Regular";
	display: block;
	position: absolute;
	bottom: 5rem;
	right: 50%;
	transform: translateX(40vw);
	border: 8px solid rgba(255,124,0,.2);
	background-color: rgba(255,255,255,.95);
	padding: .8rem 3rem .8rem 1.3rem;
  }
  .ce_fullwidth span{
	color: rgb(170,51,29);
  }
  .ce_fullwidth span.subtext{
	color: rgb(255,124,0);
  }
  .ce_fullwidth h2 span:after{
	content: '';
	display: inline-block;
	width: 42px;
	height: 52px;
	position: absolute;
	bottom: .5rem;
	right: .3rem;
	background-image: url(https://tramino.s3.amazonaws.com/s/hasselberger-cornelia/1123318/150.png);
	background-size: auto 110%;
	background-position: center center;
	background-repeat: no-repeat;
  }
}footer .copyright .tc{
	font-size: 1rem;
	opacity: 1;
}
footer .copyright .tc:after{
	content: "// Konzeption und Design: 1stof8.com"
}footer{
	order: 9;
	width: 100%;
	padding: 0 1.5rem 1.5rem;
	background-color: rgb(255,124,0);	
	color: #FFF;
}
footer .background{
	display: grid;
	justify-content: center;
}
footer h3, footer a{
	font-family: sans-serif;
	color: #FFF;
}@media screen and (max-width: 767px){
	#page select{
		-webkit-appearance: none;
		border-radius: 0;
		font-size: 16px;
	}
	#page #mini_datepicker{
		position: relative;	
	}
	#page #reserva_datepicker,
	#page #reserva-people-select,
	#page #menu_people_container,
	#page #menu_datepicker,
	#page #mini_datepicker{
		position: fixed !important;
    	top: 0px !important;
    	left: 0px !important;
    	right: 0px;
		color: #000;
		bottom: 0;
    	width: 100vw;
		height: 100vh;
		max-width: inherit;
    	box-sizing: border-box;
    	z-index: 9998;
		border-radius: 0;
		overflow: scroll;
	}
	
	#page .datepicker-item-info{
		background-color: rgb(170,51,29);
		padding: 1rem;
		color: white;
		font-size: 1rem;
	}
	
	#page .reserva-datepicker-controls:before{
		content: 'Welcher Zeitraum?';
		font-size: 1.5rem;
		display: inline-block;
		width: 100%;
		margin-bottom: 1rem;
	}
	#page .datepicker-controls .wrapper{
		display: flex;
		flex-wrap: wrap;
	}
	
	#page .datepicker-controls .datepicker-close{
		font-size: 3em;
		display: block !important;
	}
	
	
	
	#page .ui-datepicker .ui-datepicker-prev,
	#page .ui-datepicker .ui-datepicker-next,
	#page .reserva-datepicker .ui-datepicker-calendar td{
		padding: 10px;	
	}
	#page .datepicker-controls .wrapper > .date_wrapper .word{
		display: none;	
	}
	#page .reserva-datepicker .ui-datepicker-calendar{
		margin-top: 36px;	
	}
	#page .datepicker-open .reserva-datepicker .date_wrapper,
	#page .datepicker_open .reserva-datepicker .date_wrapper{
		margin: 2px 0;	
	}
	#page .pulldown{
		overflow: hidden;
	}
	
	/* Personen */
	.peopleselect-open #page #reserva-people-select.reserva-people-select,
	.peopleselect-open #page #menu_people_container.reserva-people-select{
		height: 100%;	
		display: grid !important;
		justify-content: center;
		align-content: center;	}
	#page #reserva-people-select .people-panel,
	#page #menu_people_container .people-panel{
		box-shadow: none;
	    border-radius: 0;
		background: #fff;
	}
	#page #reserva-people-select .people-panel:before,
	#page #menu_people_container .people-panel:before{
		content: 'Wie viele Personen?';	
		font-size: 1.5rem;
		display: inline-block;
		width: 100%;
		color: #000;
		margin-bottom: 1rem;
	}
	
	#page select.room-adults,
	#page select.room-childage{
		width: 100%;	
	}
	#page select.room-adults{
		margin-bottom: 2em;
	}
	#page select.room-childage{
		margin-bottom: 1em;	
	}
	
}


@media screen and (max-width: 768px){
	#page .datepicker-controls .datepicker-close{
		display: block;
		color: transparent;
	}
	#page .datepicker-controls .datepicker-close:before{
		content: 'Anwenden';
		display: inline-block;
		padding: 0 1rem;
		font-size: 12px;
		font-weight: 600; 
		text-transform: uppercase;
		line-height: 48px;
		background-color: #eac300;
		color: #000;
		border-radius: 12px;
		position: fixed;
		bottom: .5rem;
		right: .5rem;
	}
}#page .TraminoVorlage.T2886 .maxwidth{
	margin: 0 auto !important;	
}

#page .TraminoVorlage.T2886 .maxwidth .details{
	min-width: 200px;	
}

#cart{
	margin-top: 18vw !important;
	padding: 1rem;
}
#cartProgressBar .step{
	line-height: 135%;
	font-size: 1.3rem;
}
#cartProgressBar .step:before{
	font-size: 1em;
	display: inline-block;
	padding-right: .5rem;
}
#cartProgressBar .step1:before{
	content: '1';
}
#cartProgressBar .step2:before{
	content: '2';
}
#cartProgressBar .step3:before{
	content: '3';
}
.T2886 #cartProgressBar .step.active,
#cartProgressBar .step.active:before{
	color: #840000;
}
.T2886 table.cart td{
	font-size: 16px !important;	
}
.T2886 table.cart td .info{
	font-size: 16px !important;
	max-width: 600px;
}
.T2886 .terms p{
	font-size: 16px !important;	
}
.T2886 .empty .icon{
	color: #840000;	
}
.T2886 table.cart td.total{
	color: #840000;	
}
.T2886 #cart_inner{
	margin-top: 3rem;	
}
.T2886 table.cart td.remove{
    position: absolute;
    right: -5px;
    top: -10px;
}
.T2886 table.cart tr{
	position: relative;
}
#cart_accept{
	-webkit-appearance: auto;
	-moz-appearance: auto;
	appearance: auto;
}
#cart_accept:hover{
	background-color: #000;
}

#cart .details{
}


@media screen and (max-width: 767px){
	#cartProgressBar .step{
		font-size: 1rem;	
	}
	.T2886 table.cart > tbody > tr > td.item,
	.T2886 table.cart > tbody > tr > td.details{
		padding: 0 !important;
	}
	.T2886 table.cart > tbody > tr{
		display: grid;	
		row-gap: 2em;
	}
	.T2886 #cartProgressBar{
		height: auto;	
	}
	.AdresseWidget .adresse_vorname,
	.AdresseWidget .adresse_nachname{
		width: 100%;	
		padding-right: 0;
	}
	.T2886 .form .finish{
		padding: inherit;	
	}
	.T2886 .remove .button:after{
		content: ' entfernen';	
	}
	#cart .details{
		display: inline-block;
		padding: 1rem 0 !important;
		border-bottom: 1px solid #840000 !important;
		border-top: 1px solid #840000 !important;
	}
}
@media screen and (min-width: 768px){
	#cartProgressBar .step:before{
		font-size: 1.5em;
	}	
}