@font-face {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 100;
	src: local('Roboto Thin'), local('Roboto-Thin'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-100.woff2') format('woff2'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-100.woff') format('woff'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-100.ttf') format('truetype'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-100.svg#Roboto') format('svg');
	font-display: swap;
}
@font-face {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 300;
	src: local('Roboto Light'), local('Roboto-Light'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-300.woff2') format('woff2'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-300.woff') format('woff'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-300.ttf') format('truetype'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-300.svg#Roboto') format('svg');
	font-display: swap;
}
@font-face {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 400;
	src: local('Roboto'), local('Roboto-Regular'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-regular.woff2') format('woff2'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-regular.woff') format('woff'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-regular.ttf') format('truetype'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-regular.svg#Roboto') format('svg');
	font-display: swap;
}
@font-face {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 500;
	src: local('Roboto Medium'), local('Roboto-Medium'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-500.woff2') format('woff2'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-500.woff') format('woff'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-500.ttf') format('truetype'),
		url('https://www.sorat-hotels.com/fileadmin/fonts/roboto-v20-latin-500.svg#Roboto') format('svg');
	font-display: swap;
}

*	{
	font-family: 'Roboto', sans-serif;
	-webkit-text-size-adjust: none !important;
	-webkit-font-smoothing: antialiased !important;
	font-weight: inherit;
	font-size: inherit;
	line-height: inherit;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
	color: inherit;
	border: 0px none;
}
footer, article, header, nav, section, main, address, aside	{
	display: block;
	font-style: normal;
}
body	{
	font-size: 15px;
	font-weight: 300;
	line-height: 23px;
	overflow-y: scroll;
}
a, u	{ text-decoration: none; }
h1	{ margin-bottom: 30px; }
h2	{
	margin-bottom: 57px;
	padding: 36px 30px;
}
h4	{
	position: relative;
	padding: 22px 30px;
}
h5	{ line-height: 30px; }
h6	{ margin: 45px 0 15px; }
a[href^="tel"]	{
	cursor: default;
	white-space: nowrap;
}
a	{ cursor: pointer; }
select, input, textarea, button	{
	-webkit-appearance: none;
	-moz-appearance: none;
	outline: none !important;
	border-radius: 0;
	background: transparent;
	width: 100%;
}
ul	{ list-style: none; }
textarea	{
	resize: none;
	display: block;
	padding: 15px 14px;
	line-height: 23px;
}
footer	{
	line-height: 32px;
	padding-top: 12px;
	padding-bottom: 12px;
}
main	{
	padding-top: 170px;
	min-height: calc(100vh - 56px);
}
hr	{
	border-top: 1px dashed #aaa;
	height: 0px;
	margin: 12px 0;
}
section	{
	position: relative;
	padding-top: 60px;
	padding-bottom: 90px;
	text-align: center;
	display: none;
}
aside > nav > a:first-child	{ margin-bottom: 40px; }
input:focus	{ outline: none !important; }
input::-ms-clear	{ display: none; }
::-moz-placeholder	{
	opacity: 1;
	font-size: 11px;
	font-style: italic;
	color: #888;
}
::-webkit-input-placeholder	{
	font-size: 11px;
	font-style: italic;
	color: #888;
}
:-ms-input-placeholder	{
	font-size: 11px;
	font-style: italic;
	color: #888;
}
textarea::-moz-placeholder	{ opacity: 0; }
textarea::-webkit-input-placeholder	{ opacity: 0; }
textarea:-ms-input-placeholder	{ opacity: 0; }
textarea:hover::-moz-placeholder	{ opacity: 1; }
textarea:hover::-webkit-input-placeholder	{ opacity: 1; }
textarea:hover:-ms-input-placeholder	{ opacity: 1; }
input[type="text"], input[type="password"], input[type="email"], input[type="tel"]	{
	padding: 1px 17px;
	line-height: 38px;
	height: 40px;
}
header > nav, header > div > div, footer	{ font-size: 13px; }
header > nav, header > div, footer	{
	padding-left: 30px;
	padding-right: 30px;
}
header > div	{
	padding-top: 20px;
	padding-bottom: 20px;
}


h3, h4, h6, strong, .sbm.lgrn, #sentence, p#cancel_error, header > div > div, div.rooms_or, a.zlnd, #noscript	{ font-weight: 500; }
body, .layerfrm, .litb, .pr14, #sentence, .inset > div > label, .inset > div > div > label, .fakeinput > span, .rates_compare > div, #extras_compare > div	{
	background: #fff;
	color: #222;
}
#noscript	{
	display: block;
	color: #c04;
	text-align: center;
}
header > div, #room_offers > div, #rate_offers > div, #extra_offers > div, #promo	{ background: #eee; }
#rate_offers, #place_extras_here	{ background: #fff !important; }
h2, h4, .sbm.blk, header > nav, header > div > div, footer, a.ho_tel:hover:after, #ovw_step_rooms_dtl, #layer_businessguest > .flx > label, .litb.drk
, #galert, .rooms_inner > div.rooms_or, #rad_std:checked ~ div > #disp_std, #rad_sup:checked ~ div > #disp_sup, #rad_dlx:checked ~ div > #disp_dlx
, #rad_fam:checked ~ div > #disp_fam, .golf > div > input:checked + label {
	background: #000;
	color: #fff;
}
span.icn, a.icn, ul.icons > li, .lb_close, h5 > span.nosmo, h5 > span.nopet, h5 > span.yespet
, .dtls > ul > li:before	{ background: url('graphics/fe-icons-02.png') no-repeat transparent; }
#sentence, aside > div.selwrp, aside > nav > a, .litb > li, .dtls > ul > li:after, div.straight > div.selwrp, fieldset.rounded > div > .sel_rplcm_gr
, .fs_opnr:not(:checked) + fieldset	{border-bottom: 1px solid #aaa; }
header > div > div:first-child, a.pd, .payments2 {
	line-height: 0;
	font-size: 0;
}



.sbm	{
	display: block;
	line-height: 49px;
	text-align: center;
	cursor: pointer;
}
.sbm.rand	{
	border: 1px solid #aaa;
	color: #222;
}
.sbm.rndgrn	{
	border: 1px solid #ac3;
	color: #222;
}
.sbm.lgrn	{
	background: #ac3;
	color: #fff;
}
.sbm.lgry {
	background: #aaa;
	color: #fff;
}
.sbm.blk, .sbm.lgrn, .sbm.lgry	{ padding: 1px; }
.sbm.uc, #promo	{ font-size: 18px; }
.cnt	{ text-align: center; }
.red	{ color: #c04; }
.dtd	{ border-bottom: 1px dotted; }
.buttonsmall {
	margin-left: calc((100% - 190px) / 2);
	margin-bottom: 27px;
	width: 190px;
}
.persons_quest ~ .sbm, .pr_cont ~ .sbm	{
	margin: 45px auto 0;
	width: 240px;
}
#cal_calendar ~ .flx	{
	padding-top: 30px;
	justify-content: center;
}
#cal_calendar ~ .flx > .sbm	{
	width: 38%;
	max-width: 340px;
	margin-top: 10px;
}
#cal_calendar ~ .flx > .sbm:first-child	{ margin-right: 4%; }
#cal_calendar + p	{
	text-align: left;
	margin-top: 10px;
	font-size: 13px;	
}

fieldset + p, .layerfrm > p + p, .lft > p, .layerfrm > p + h3	{ margin-top: 23px; }
.layerfrm > p ~ fieldset, .layerfrm > h3 ~ fieldset, .layerfrm > p ~ .choi_fs > fieldset.inset	{ margin-top: 35px; }
.layerfrm fieldset:not(.rounded) > div, .layerfrm div.inset > div, fieldset.rounded.inset > div, .layerfrm .sbm, .flx > p	{
	width: calc(100% - 30px);
	max-width: 280px;
}
.layerfrm#elm_notice_trnsct_fld .sbm	{ max-width: 510px; }

.wide, .wide ~ p	{ padding: 0 60px; }
.flx.wide > p, .layerfrm .wide > .sbm	{
	width: calc(50% - 10px) !important; 
	max-width: calc(50% - 10px) !important; 
}
.layerfrm fieldset > div	{ margin: 0 auto; }

.layerfrm > .sbm	{ margin: 40px auto 0; }
.layerfrm.adlayers > .sbm, .layerfrm.adlayers > .choi_fs	{ margin: 40px 0; }
.layerfrm fieldset ~ .sbm	{ margin: 16px auto 0; }
.layerfrm > .flx	{ align-items: center; }
div.straight, .layerfrm > .flx:not(.lft), #cancel_layer_error	{ margin-top: 40px; }
fieldset + p.red { margin-bottom: 40px; }
.layerfrm .flx > div:first-child, .layerfrm > .flx > .sbm:first-child, .flx > p:first-child	{ margin-right: 10px; }
.layerfrm .flx > div:last-child, .layerfrm > .flx > .sbm:last-child, .flx > p:last-child	{ margin-left: 10px; }


.sbm ~ p.fs11, .flx ~ p.fs11, .layerfrm > p:first-child, #elm_impressum > p.fs11	{ padding-top: 54px; }
.lft > p	{
	text-align: left;
	width: calc(50% - 70px);
}
p#cancel_error, #disp_hide_cancelbbd + p, .pglin > .flx, .pglin > .flx ~ p, .payments, .payments2	{ margin-top: 30px; }
#disp_hide_cancelbbd + p + p	{
	padding-top: 18px;
	padding-bottom: 3px;
	display: none;
}
#disp_hide_cancelbbd:checked + p + p	{ display: block; }
h1, h2, .caltb > div:first-child, .caltb > div > a > span:nth-child(2), .caltb > div > a[titleinfo]:active:after, #galert, #ralert
, #room_offers > div:hover > a:first-child:after	{
	font-size: 28px;
	line-height: 34px;
}

header, #drkbx, #drkbx2, aside, #waiter, #ralert, #galert	{
	position: fixed;
	left: 0;
	width: 100%;
}
#waiter > h2, #room_offers > div > a.pd > img, header > div > div:not(:first-child) > a, header > div > div#ovw_resp > p.fs11, #ovw_step_rooms_dtl
, #room_offers > div:hover > a:first-child:before, #room_offers > div:hover > a:first-child:after, #drkbx_img > img	{
	position: absolute;
	width: 100%;
	left: 0;
}
.buttonsmall, .rooms_inner > .flx, #extra_offers > div > a {
	position: absolute;
	bottom: 0;
	left: 0;
}
header	{
	top: 0;
	z-index: 10;
}
header > nav	{
	line-height: 30px;
	text-align: right;
}
footer, header > div, #cal_calendar, h3.zwis, .rates > div > div > label > span, #extra_offers > div > h3, .confflx, h1.flxalign, p.pflx, label.dispo2.pflx, footer > span:last-child	{
	display: flex;
	justify-content: space-between;
}
label.dispo2.pflx, p.pflx	{ align-items: flex-start; }

h1.flxalign	{ align-items: center; }
.caltb	{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	flex-shrink: 0;
}
#elm_impressum > div, #elm_firmierung > div	{
	display: flex;
	justify-content: space-around;
}
#ovw_step_rooms_dtl > div	{
	display: flex;
	align-items: center;
}
#drkcont, #drkcont2	{ display: flex; }
#drkcont.topalign > div	{ align-items: flex-start; }
.flx, .holds1 > div > div > .golf, .holds2 > div > div > .golf, .pr_cont, #room_offers	{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
#room_offers	{ margin-bottom: -30px; }

.rates_compare > div > label > span, .rates_compare > div > p > span, .ovw_extras > label > span, #extras_compare > div > p > span, p.zwis
, .ovw_extras > label, .flx_sb {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.ckb > label {
	display: flex;
	align-items: stretch;
}
.pglin > .flx	{ justify-content: space-evenly; }
.rooms_inner > .flx	{ justify-content: space-between; }
#cal_navi > div > div	{ display: flex; }
#elm_impressum > div > div, #elm_firmierung > div > div	{
	text-align: left;
	width: 50%;
}
span.selhid.langselct	{ margin-left: 30px; }

.ho_tel, #ft_cnlcng, #ft_dtlimp, .ho_rld	{ margin-left: 40px; }
#ft_street, #ft_adrss	{ margin-left: 10px; }

.blw1280, .blw768, .blw360, .blw320	{ display: none; }
span.icn, a.icn	{
	display: inline-block;
	padding-left: 32px;
}
h1 > span.icn	{
	white-space: nowrap;
	padding-left: 40px;
}
a.menu	{
	background-position: -96px 11px;
	float: left;
}
a.ho_adr	{ background-position: left -57px; }
a.ho_tel	{
	padding-left: 35px;
	background-position: left -796px;
	position: relative;
}
a.ho_rld	{
	padding-left: 35px;
	background-position: left -334px;
}
a.ho_tel:hover:after	{
	padding: 3px 6px;
	content: attr(data-title);
	position: absolute;
	left: 5px;
	top: -62px;
	min-width: 150px;
	display: block;
	text-align: center;
	margin-left: -75px;
	white-space: nowrap;
}
a.ho_mail	{
	padding-left: 30px;
	background-position: left -180px;
}
a.ho_info	{ padding-left: 40px; }
span.ho_adr	{ padding-left: 26px; }
a > span.icn	{ margin-left: 0; }
span.ho_info, a.ho_info	{ background-position: left -340px; }

a.login	{
	background-position: left -853px;
	margin-right: 30px;
}
h1 > span.nog	{ background-position: left -986px; }
h1 > span.cal	{ background-position: left -115px; }
h1 > span.rom	{ background-position: left -1225px; }
h1 > span.xtra	{ background-position: left -474px; }
h1 > span.wun	{ background-position: left -468px; }
h1 > span.inf	{
	background-position: left -155px;
	padding-left: 54px;
}
h1 > span.pay	{
	background-position: left -195px;
	padding-left: 54px;
}
h1 > span.ovw	{ background-position: left -905px; }
h1 > span.map	{ background-position: left -944px; }
#rate_offers > div:after, section:after	{
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
header > div > div	{
	font-size: 11px;
	line-height: 18px;
	width: calc(20% - 20px);
	padding-top: 10px;
	position: relative;
	text-align: center;
}
header > div > div:first-child { padding: 15px 0; }
header > div > div > p:nth-child(2)	{
	font-weight: 300;
	font-size: 28px;
	line-height: 34px;
}
header > div > div > p:nth-child(3)	{ margin-top: -3px; }
header > div > div > a > img	{ height: 70px; }
h1, h2, h5, .uc, header > div > div > p:first-child, #sentence, #ovw_step_rooms_dtl, .wkds	{ text-transform: uppercase; }
header > div > div:not(:first-child) > a	{
	display: none;
	bottom: 0;
	padding: 30px 0 10px;
}
header > div > div#ovw_resp > p.fs11	{
	font-weight: 300;
	bottom: 6px;
}
header > div > div#ovw_resp > p.fs11 > span	{ width: 60px; }
header > div > div#ovw_resp > p.fs11 > span:first-child	{ text-align: right; }
header > div > div#ovw_resp > p.fs11 > span:last-child	{ text-align: left; }
header > div > div#ovw_resp > p.fs11 > span:nth-child(2)	{ width: 40px; }

header > div > div.done:not(:first-child):not(.act) > a	{ display: block; }
header > div > div:not(:first-child) > a:after	{
	content: "";
	display: block;
	background: url('graphics/fe-icons-02.png') no-repeat -99px -1203px transparent;
	height: 7px;
	width: 13px;
	margin: 0 auto;
}
#ovw_step_rooms_dtl	{
	top: 100px;
	max-height: 0;
	text-align: left;
	overflow: hidden;
	font-size: 13px;
	-webkit-transition: max-height 0.3s ease-in-out;
	transition: max-height 0.3s ease-in-out;
}
div:hover > #ovw_step_rooms_dtl	{ max-height: 500px; }
#ovw_step_rooms_dtl > div	{
	position: relative;
	border-top: 1px dotted #fff;
	padding: 20px 10px;
}
#ovw_step_rooms_dtl > div > h3	{ padding: 10px 0 10px 10px; }
#ovw_step_rooms_dtl > div > h3 > span	{ cursor: pointer; }
#ovw_step_rooms_dtl > div > h3 > a.lb_close	{
	top: 10px;
	right: 10px;	
}
#ovw_step_rooms_dtl > div > h3 > a.lb_close:last-child	{ display: none; }
#ovw_step_rooms_dtl > div > .cropmg	{ width: 60px; }
#ovw_step_rooms_dtl > div > .cropmg > a.pd	{
	cursor: pointer;
	padding-bottom: 100%;
	margin-top: 0;
}
header > div > div#ovw_resp	{
	display: none;
	width: calc(100% - 230px);
}
header > div > div#ovw_resp2	{ display: none; }
#sentence, #promo, aside, section, #rate_offers > div	{
	padding-left: 100px;
	padding-right: 100px;
}
#sentence, #promo	{
	text-align: center;
	line-height: 56px;
	display: none;
}
#promo	{
	padding-top: 15px;
	padding-bottom: 15px;
	text-align: center;
	line-height: 28px;
	display: none;
}
#drkbx, #drkbx2	{
	top: 0;
	background: rgba(0, 0, 0, 0.78);
	color: #fff;
	z-index: 100;
	overflow: hidden;
	height: 100%;
	opacity: 0;
	-webkit-transform-origin: 0% 0%;
	transform-origin: 0% 0%;
	-webkit-transition: transform 0.6s ease-in-out, opacity 0.6s ease-in-out;
	transition: transform 0.6s ease-in-out, opacity 0.6s ease-in-out;
}
#drkbx2 {
	z-index: 200;
	background: rgba(0, 0, 0, 0.5);
}
#drkbx.act, #drkbx2.act	{
	-webkit-transform: scale(1) translate(0, 0) rotate(0deg) !important;
	transform: scale(1) translate(0, 0) rotate(0deg) !important;
	opacity: 1;
}
#drkcont, #drkcont2	{
	height: 100%;
	-webkit-transform: translate(0, -100%);
	transform: translate(0, -100%);
	overflow-y: auto;
}
#drkcont > div, #drkcont2 > div	{
	width: 100%;
	text-align: center;
	padding: 30px;
	margin: auto;
}
#drkcont.act, #drkcont2.act	{
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
}
#drkcont, #drkcont2, .back, .front	{
	-webkit-transition: transform 0.6s ease-in-out;
	transition: transform 0.6s ease-in-out;
}
#drkcont > div > div#elm_login_layer	{ height: 515px; }
.layerfrm, #drkcont > div > div#elm_login_layer	{
	max-width: 968px;
	margin: 0 auto;
	position: relative;
}
.layerfrm	{
	padding-bottom: 58px;
	padding-left: 60px;
	padding-right: 60px;
}
.kateggall > #drkcont > div	{
	max-width: 640px;
	margin: 0 auto;
}
.layerfrm > h1	{
	text-transform: none;
	margin: 0;
	padding-top: 55px;
}
#elm_error_layer > p	{ padding-top: 55px; }
.layerfrm > h2	{
	text-align: center;
	margin-left: -60px;
	margin-right: -60px;
}
#elm_login_layer > .layerfrm > p	{
	padding-left: 60px;
	padding-right: 60px;
}
#elm_processcancel_layer > p.fs13, .layerfrm.lalgn	{ text-align: left; }

.layerfrm.hidden, .bonushilfe .layerfrm	{ display: none; }
.bonushilfe .layerfrm.hidden	{ display: block; }
.swtch + p	{ display: none; }
#elm_login_layer > div	{
	width: 100%;
	position: absolute;
	left: 50%;
	margin-left: -50%;
	top: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.back, .turned .front	{
	-webkit-transform: rotateY(180deg);
	transform: rotateY(180deg);
}
.front, .turned .back	{
	-webkit-transform: rotateY(0deg);
	transform: rotateY(0deg);
}
.lb_close	{
	display: block;
	position: absolute;
	-webkit-transition: transform 0.3s ease-in-out;
	transition: transform 0.3s ease-in-out;
	width: 15px;
	height: 15px;
	background-position: -92px -30px;
	right: 30px;
	top: 30px;
}
.lb_close:hover	{
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
.lb_close.txt	{
	-webkit-transform: none !important;
	transform: none !important;
	padding-right: 30px;
	width: auto;
	line-height: 15px;
	font-weight: 300;
	background-position: right -30px;
	top: 25px;
	margin-right: -5px;
}
h4 > .lb_close	{ top: 25px; }
h2 > .lb_close	{ top: 45px; }
.adlayers > .lb_close, #elm_error_layer > .lb_close	{ background-position: -70px -5px; }

#elm_step_persons + .ad300 + .opp_ad300	{
	float: left;
	width: 68%;
	margin-left: 16%;
}
#elm_step_calendar + .ad300 + .opp_ad300 > #cal_calendar	{ width: calc(100% - 200px); }
#elm_step_persons ~ .ad300	{
	width: 16%;
	float: right;
}
#elm_step_calendar ~ .ad300	{
	width: 160px;
	position: absolute;
	top: 60px;
	right: 30px;
}
.ad300 > div:first-child {
	width: 160px;
	height: 600px;
	position: relative;
	background: #eee;
	margin: 0 0 0 auto;
}
.ad300 > div:first-child > a	{ display: none; }
.ad300 > div:first-child > a.pd	{
	width: 160px;
	padding-bottom: 600px;
	position: absolute;
	left: 0;
	top: 0;
	display: block;
}
.ad300 > div + div	{
	margin: 16px 0 0 auto;
	width: 160px;
	justify-content: space-between;
	align-items: center;
}
.ad300 > div:first-child > a.pd > span > strong	{
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
}
.slad_links	{
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
.slad_rechts	{
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
}
.slad_links, .slad_rechts	{
	width: 17px;
	height: 8px;
	background: url("graphics/fe-icons-02.png") no-repeat -77px -1129px transparent;
}
.slad_links:hover, .slad_rechts:hover	{ opacity: 1; }
.choi_fs	{ display: none; }
#bonuslogin:checked ~ .choi_fs, #bonuslogin3:checked ~ .choi_fs, #sstlogin:checked ~ .choi_fs, .hidden .choi_fs	{ display: block; }
#bonuslogin:checked ~ .flx, #bonuslogin:checked ~ .choi_ns, #bonuslogin3:checked ~ .choi_ns	{ display: none; }
#sstlogin:checked ~ .flx, #sstlogin:checked ~ .choi_ns	{ display: none; }
section > a:first-child, input[type="radio"], input[type="checkbox"], .selhid > select	{
	position: fixed;
	top: 10%;
	left: -100px;
	clip: rect(0,0,0,0);
	visibility: hidden;
}
fieldset.rounded > div { display: inline-block; }
fieldset.rounded > div > .sel_rplcm_gr	{
	width: 240px;
	margin-bottom: 8px;
}

fieldset.rounded > div.kindo { display: block; }
fieldset.rounded > div.kindo > .sel_rplcm_gr { margin-left: auto !important; }
/* .n1chld > fieldset.rounded > div > .sel_rplcm_gr, .n2chld > fieldset.rounded > div > .sel_rplcm_gr	{ width: 180px; } */

.holds1 > div > div > .golf > div, .holds2 > div > div > .golf > div	{ width: 48%; }
.holds1 > div > div > .golf > div:nth-child(2n), .holds2 > div > div > .golf > div:nth-child(2n)	{ margin-left: 4%; }

fieldset.rounded > button	{
	display: inline-block;
	width: 11px;
	height: 21px;
	background: url('graphics/fe-icons-02.png') no-repeat right -246px transparent;
	cursor: pointer;
	vertical-align: middle;
	margin-right: 10px;
}
fieldset.rounded > label { margin-right: 40px; }


div.straight > div.selwrp	{
	width: 380px;
	margin: 0 auto;
}

aside > div.selwrp	{
	width: 230px;
	line-height: 40px;
}
span.selhid.langselct	{ display: inline-block; }
span.selhid.langselct > .sel_rplcm_gr, aside > div.selwrp.selhid.langselct > .sel_rplcm_gr	{
	padding: 0 20px 0 0;
	display: inline-block;
	line-height: 30px;
	background-position: right -1192px;
}
.persons_quest	{
	display: inline-block;
	text-align: left;
}
fieldset.rounded > div ~ .selwrp > .sel_rplcm_gr, fieldset.rounded > div + div > input, fieldset.rounded > div + div > input + label	{ margin-left: 20px; }

.frst > label, fieldset.rounded.frst > button	{ display: none; }
fieldset.rounded.ina > button	{ visibility: hidden; }
.pglin > .flx ~ p	{ margin-bottom: 10px; }
#childplc	{ margin-top: 60px; }
.grn	{ color: #8a0; }
.fs9	{ font-size: 9px; }
.fs11	{ font-size: 11px; }
/* .inset .sl_0 > .sel_rplcm_gr	{ font-size: 11px; } */
p.fs11	{ line-height: 16px; }
a.fs11.dtd	{
	line-height: 16px;
	display: inline-block;
	font-weight: 300;
}
.lh18	{ line-height: 18px; }
.fs13	{
	font-size: 13px;
	line-height: 18px;
}
.sel_rplcm_gr	{
	padding: 1px 17px;
	line-height: 38px;
	cursor: pointer;
	text-align: left;
	white-space: nowrap;
}
.selhid > .sel_rplcm_gr 	{ background: url('graphics/fe-icons-02.png') no-repeat right -1110px transparent; }
.ina .sel_rplcm_gr	{ cursor: not-allowed; }
aside	{
	top: 0;
	background: #000;
	color: #ddd;
	height: 100%;
	display: none;
	z-index: 300;
	padding-top: 75px;
	overflow-y: auto;
}
aside > nav	{ width: 230px; }

aside > nav > a	{
	line-height: 40px;
	display: block;
}
aside > ul	{ margin: 50px 0; }
.shw_asde aside	{ display: block; }
.pglin	{
	width: 380px;
	margin: 0 auto;
	border: 1px solid #aaa;
	border-top: 0px none;
	display: none;
	padding: 20px;
}
.pglin > .flx > a, .pglin > .flx > input	{
	line-height: inherit;
	width: 34%;
	min-width: 120px;
	display: inline-block;
	padding: 5px 20px;
}
.act ~ #pglin_1	{ display: block; }
.sl_1 ~ a.sbm, .sl_1 ~ #childplc, .sl_2 ~ a.sbm, .sl_2 ~ #childplc, .sl_3 ~ a.sbm, .sl_3 ~ #childplc	{ display: none; }
fieldset > div > input, .fakeinput	{ line-height: 38px; }
.inset > div, .fakeinput	{
	position: relative;
	margin-top: 8px;
}
.inset > div > .sel_rplcm_gr, .inset > div > div > .sel_rplcm_gr	{
	padding: 4px 17px 2px;
	border: 1px solid #aaa;
}
.inset > div > textarea	{
	padding: 16px 17px 14px;
	border: 1px solid #aaa;
}
.inset > div > input[type="text"], .inset > div > input[type="password"], .inset > div > input[type="email"]
, .inset > div > input[type="tel"], .inset > div > div > input[type="tel"], .fakeinput	{
	padding: 4px 17px 2px;
	border: 1px solid #aaa;
	height: 46px;
}
.invld > input:invalid, .invld > select:invalid ~ .sel_rplcm_gr, .invld2 > input, .invld2 > .sel_rplcm_gr, .invld > select:invalid
, .invld2 > select:invalid, .err div > input:invalid, .err div > select:invalid ~ .sel_rplcm_gr { border: 1px solid #c04 !important; }
.invld > input ~ span, .invld > select ~ span	{
	display: none;
	text-transform: uppercase;
	font-size: 11px;
	color: #c04;
	text-align: left;
	line-height: 18px !important;
	margin-top: 2px;
	font-weight: 500;
}
.invld > input ~ span	{ margin-top: 6px; }
.invld > input:invalid ~ span, .invld > select:invalid ~ span, input[type="checkbox"]:required:not(:checked) ~ span
, .payc > input[type="radio"]:checked ~ span	{
	display: block;
}
.ckb.invld > input[type="checkbox"]:required:not(:checked) ~ label	{ color: #c04; }
.ckb.invld > input[type="checkbox"]:required:not(:checked) ~ label:before	{ border: 1px solid #c04; }

.inset > div > label, .inset > div > div > label, .fakeinput > span	{
	text-transform: uppercase;
	display: inline-block;
	position: absolute;
	top: -6px;
	left: 12px;
	line-height: 15px;
	font-size: 11px;
	padding: 0 5px;
}
select:disabled ~ .sel_rplcm_gr { display: none !important; }
.litb	{
	position: absolute;
	padding: 0 17px 18px;
	z-index: 34;
}
.litb.fxd	{ position: fixed; }
.litb.drk	{
	position: fixed;
	padding: 0;
	z-index: 1100;
}
.litb.fx	{
	min-width: 250px;
	border-top: 1px solid #fff;
	margin-top: -1px;
	padding: 15px 30px 35px;
}
.litb.straight, .litb.inset	{
	border: 1px solid #aaa;
	border-top: 0px none;
}
.litb.inset	{ margin-top: -2px; }
.litb.straight	{ padding-bottom: 0; }
.litb.inset	{ padding: 0 20px; }

.litb > li	{
	line-height: 40px;
	white-space: nowrap;
}
.litb > li	{
	-webkit-transition: opacity 0.2s, transform 0.2s, height 0.2s;
	transition: opacity 0.2s, transform 0.2s, height 0.2s;
	height: 0;
	opacity: 0;
	transform: scale(0.5, 1);
}
.litb.inset > li	{
	border-top: 1px solid #aaa;
	border-bottom: 0;
}
.litb > li.act	{ cursor: pointer; }
.litb.litd > li	{
	opacity: 1;
	height: 41px;
	transform: scale(1, 1);
}
.litb.drk > li.act:hover	{ background: #222; }
.litb.straight > li:last-child	{ border-bottom: 0px none; }

#layer_content, #rate_bbd	{ display: none; }
#cal_calendar {
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
	-webkit-transition: -webkit-transform .7s ease-in-out, min-height 0.4s ease-in-out;
	transition: transform .7s ease-in-out, min-height 0.4s ease-in-out;
}
.trans #cal_calendar {
	-webkit-transform: translate(0, 100%);
	transform: translate(0, 100%);
}
.rateselector > div > div	{ display: inline-block; }
.rateselector > div > div > div.sel_rplcm_gr	{ width: 340px; }
#cal_calendar, #cal_navi	{
	margin-top: 40px;
	position: relative;
}
#cal_navi > div	{
	padding: 20px 0;
	text-align: center;
	background: #f5f5f5;
}
#cal_navi > div > div	{ padding: 0 16px; }
#cal_navi > div > div > a	{
	padding: 5px;
	margin-right: -1px;
	width: 110px;
	display: block;
	position: relative;
}
#cal_navi > div > div > a:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	transform: skew(-45deg);
	border: 1px solid #aaa;
}
a.info	{
	display: inline-block;
	width: 21px;
	height: 21px;
	background: url('graphics/fe-icons-02.png') no-repeat right -570px transparent;
	border: 1px solid #222;
	border-radius: 50%;
}
.rateselector > div > a.info	{
	position: relative;
	top: 4px;
	left: -90px;
}
.newcal	{ width: 48%; }
.caltb > div	{
	width: 13.68%;
	margin-top: 0.7%;
	position: relative;
}
.caltb > div:first-child	{
	width: 100%;
	border: 0px none;
	padding-bottom: 10px;
}
a.nxtmnth, a.prvmnth	{
	position: absolute;
	display: block;
	width: 32px;
	height: 19px;
	background: url('graphics/fe-icons-02.png') no-repeat -69px -1122px transparent;
}
a.prvmnth	{
	-webkit-transform: rotate(90deg) scale(1.5);
	transform: rotate(90deg) scale(1.5);
	left: -66px;
}
a.nxtmnth	{
	-webkit-transform: rotate(270deg) scale(1.5);
	transform: rotate(270deg) scale(1.5);
	right: -66px;
}
.newcal > a.nxtmnth, .newcal > a.prvmnth	{ top: 315px; }
.newcal + .newcal > a	{ display: none; }
#cal_navi > a.nxtmnth, #cal_navi > a.prvmnth	{ top: 24px; }
.dragscroll	{
	cursor: grab;
	overflow: hidden;
}
.dragscroll > div	{
	overflow: visible;
	white-space: nowrap;
}
.caltb > a	{
	display: none;
	clear: both;
	margin: 30px auto 0;
}
.caltb > a:after	{
	content: "";
	display: block;
	width: 18px;
	height: 13px;
	margin: 10px auto 0;
	background: url('graphics/fe-icons-02.png') no-repeat center -1197px transparent;
}
div:last-child > .caltb > a	{ display: block; }
.caltb > div.wkds	{
	line-height: 30px;
	font-size: 11px;
}
.caltb > div > a	{
	border: 1px solid #aaa;
	position: relative;
	padding: 4px;
	display: block;
	overflow: visible;
	height: 92px;
}
.caltb > div.past > a	{
	color: #888;
	border: 1px solid #ddd;
}
.caltb > div > a:not([href])	{ cursor: default; }
#ralert, #galert	{
	z-index: 20;
	text-align: center;
	color: #fff;
	-webkit-transition: transform 0.5s ease-in-out;
	transition: transform 0.5s ease-in-out;
}
#ralert	{
	bottom: 0;
	padding: 35px 30px;
	background: #c04;
	-webkit-transform: translate(0, 104px);
	transform: translate(0, 104px);
}
#galert	{
	top: 0;
	padding: 68px 30px;
	-webkit-transform: translate(0, -170px);
	transform: translate(0, -170px);
}
#ralert.w100, #galert.w100	{
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
}
#ralert.ow100	{
	-webkit-transform: translate(0, 104px);
	transform: translate(0, 104px);
}
#galert.ow100	{
	-webkit-transform: translate(0, -170px);
	transform: translate(0, -170px);
}
.caltb > div.caltd1 > a, .caltb > div.caltd3 > a, .caltb > div.caltd5 > a	{
	border: 0px none;
	color: #000;
	background: #333;
	background: linear-gradient(to bottom right, #282828, #282828 49%, #000 50%, #282828 52%, #282828) !important;
}
.caltb > div.act > a, .caltb > div:not(.act).markd.inrange > a, .caltb.anreise > div > a[href]:hover, .caltb > div.anreise > a, .caltb > div.abr > a
, .caltb.abreise > div > a[href]:hover, .caltb.abreise > div.minst_wp > a	{
	background: #000 !important;
	color: #fff !important;
	border: 0px none !important;
}
.caltb > div.anreise > a > span:first-child, .caltb > div.anreise > a > span.fs13, .caltb > div.act > a > span:first-child
, .caltb > div.act > a > span.fs13	{ font-weight: 500; }
.caltb > div > a > span, .caltb > div > span > span, .caltb > div > span	{ display: block; }
.caltb > div > a > span:first-child	{
	text-transform: uppercase;
	font-size: 11px;
	line-height: 14px;
}
.caltb > div > a > span.lthr + span	{ margin-top: -3px; }
.caltb > div > a > span.fs9:first-child	{ font-size: 9px; }
.caltb > div > a > span:nth-child(3).fs11, .caltb > div > a > span:nth-child(3).fs11 + .fs13	{
	line-height: 12px;
	font-size: 11px;
	max-width: 56px;
	margin: 0 auto;
}
span.lthr	{
	text-decoration: line-through;
	color: #888;
}
.caltb > div.act > a > span.lthr, .caltb > div:not(.act).markd.inrange > a > span.lthr, .caltb.anreise > div > a[href]:hover > span.lthr
, .caltb > div.anreise > a > span.lthr, .caltb > div.abr > a > span.lthr, .caltb.abreise > div > a[href]:hover > span.lthr
, .caltb.abreise > div.minst_wp > a > span.lthr	{ color: #fff !important; }
.rateselector	{
	max-height: 48px;
	overflow: hidden;
	-webkit-transition: max-height 0.3s ease-in-out;
	transition: max-height 0.3s ease-in-out;
}
.ndsp_slctr .rateselector	{
	max-height: 0;
	height: 0;
	visibility: hidden;
}
#cal_selector	{
	position: absolute;
	top: 65px;
	font-size: 11px;
	line-height: 30px;
	right: 100px;
}
#waiter	{
	top: 0;
	color: #fff;
	height: 100%;
	z-index: 2000;
	display: none;
	background: rgba(0, 0, 0, 0.9);
}
.bdy_wait > #waiter	{ display: block; }
#waiter > div	{
	width: 82px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -82px 0 0 -82px;
	overflow: hidden;
	transform-origin: 100% 50%;
	animation: rotate 1.6s linear infinite;
}
#waiter > div:after	{
	content: "";
	display: block;
	width: 140px;
	height: 140px;
	border: 12px solid #ac3;
	border-radius: 50%;
}
@keyframes rotate	{
	from	{transform: rotate(0deg);}
	to	{transform: rotate(360deg);}
}
#waiter > h2	{
	top: 15%;
	display: none;
	background: none;
	text-align: center;
}
#room_offers > div	{
	width: 30%;
	position: relative;
	margin: 10px 5% 30px 0;
}
#room_offers > div:nth-last-child(2)	{ margin-right: 0 !important; }
#room_offers > div > a.pd	{
	display: block;
	position: relative;
	padding-bottom: 54%;
	overflow: hidden;
	background: #333;
}
#room_offers > div > a.pd > img	{ top: -14%; }
.slide > a	{
	cursor: default;
	display: none;
}
.slide > a.pd	{
	display: block;
	position: relative;
	padding-bottom: 75%;
	overflow: hidden;
	background-size: cover;
	background-position: center;
}
.slide > a.pd > span, .lb_links, .lb_rechts	{
	position: absolute;
	top: 50%;
	margin-top: -30px;
	width: 60px;
	height: 59px;
	cursor: pointer;
}
.slide > a.pd > span	{
	opacity: 0.5;
	-webkit-transition: opacity 0.2s ease-in-out;
	transition: opacity 0.2s ease-in-out;
}
.slide > a.pd > span.lrg	{
	left: 20%;
	width: 60%;
	opacity: 0;
}
.slide > a.pd > span:hover	{ opacity: 1; }
.slide > a.pd > span.lrg:after	{
	content: attr(data-title);
	background: url("graphics/fe-icons-02.png") no-repeat -80px -514px rgba(0,0,0,0.6);
	color: #fff;
	font-weight: 500;
	font-size: 15px;
	line-height: 59px;
	padding-left: 40px;
	width: 80px;
	margin: 0 auto;
	display: block;
}
.slide > a.pd > span.sp_links, .lb_links	{
	left: 0;
	background: url("graphics/fe-icons-02.png") no-repeat 23px -364px rgba(0,0,0,0.6);
}
.slide > a.pd > span.sp_rechts, .lb_rechts	{
	right: 0;
	background: url("graphics/fe-icons-02.png") no-repeat 23px -364px rgba(0,0,0,0.6);
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}
.lb_links, .lb_rechts	{ background-color: rgba(255,255,255,0.6); }


.rooms_inner	{
	padding: 22px 30px 100px;
	text-align: left;
}
ul:not(.litb) > li	{
	padding-left: 18px;
	background: url('graphics/fe-icons-02.png') no-repeat left -1561px transparent;
}

#room_offers > div.enable_fade:hover ul:not(.icons) > li	{ background: url('graphics/fe-icons-02.png') no-repeat left -1531px transparent; }


.rooms_inner > p, .rooms_inner > ul, .desc > p, .desc > ul, #extra_offers > div > p	{
	font-size: 13px;
	line-height: 20px;
}
.desc > h3	{ padding-bottom: 6px; }
.rooms_inner > ul, .desc > ul, .desc > p, #extra_offers > div > p + p	{ margin-top: 12px; }

.desc > h3 + ul.icons	{
	position: absolute;
	right: 0;
	top: 0;
	margin-top: 0;
}
.desc > h3 + ul.icons > li	{
	display: inline-block;
	line-height: 26px;
	vertical-align: top;
}
.desc > h3 + ul.icons > li.sqm	{ display: none; }

ul.icons > li	{
	padding-left: 40px;
	line-height: 22px;
	white-space: nowrap;
}
.dtls > ul > li	{
	display: inline-block;
	margin: 20px 0;
	padding: 0;
	text-align: center;
	font-size: 11px;
	width: 16.5%;
	vertical-align: top;
	background: transparent;
	line-height: 16px;
	border-left: 1px solid #aaa;
	min-height: 73px;
	position: relative;
}
.dtls > ul > li:nth-child(6n+1)	{ border-left: 0px none; }
.dtls > ul > li:after	{
	content: "";
	position: absolute;
	bottom: -20px;
	left: 0;
	width: 102%;
	display: block;
}
.dtls > ul > li:before	{
	content: "";
	display: block;
	width: 56px;
	height: 30px;
	margin: 0 auto 10px;
}
.dtls > ul > li.lage:before	{ background-position: -56px -2280px; }
.dtls > ul > li.blick:before	{ background-position: left -2280px; }
.dtls > ul > li.wifi:before	{ background-position: left -1650px; }
.dtls > ul > li.heizung:before	{ background-position: left -1890px; }
.dtls > ul > li.aircon:before	{ background-position: left -2100px; }
.dtls > ul > li.ventilator:before	{ background-position: left -1680px; }
.dtls > ul > li.sessel:before	{ background-position: left -2340px; }
.dtls > ul > li.tv:before	{ background-position: -56px -1680px; }
.dtls > ul > li.telefon:before	{ background-position: left -1710px; }
.dtls > ul > li.schreibtisch:before	{ background-position: -56px -1710px; }
.dtls > ul > li.boden:before	{ background-position: left -1740px; }
.dtls > ul > li.wecker:before	{ background-position: -56px -1920px; }
.dtls > ul > li.garderobe:before	{ background-position: left -1950px; }
.dtls > ul > li.schalliso:before	{ background-position: -56px -1800px; }
.dtls > ul > li.naehset:before	{ background-position: left -1830px; }
.dtls > ul > li.ankleidespiegel:before	{ background-position: -56px -1890px; }
.dtls > ul > li.foen:before	{ background-position: -56px -1770px; }
.dtls > ul > li.wanne:before	{ background-position: -56px -1950px; }
.dtls > ul > li.dusche:before	{ background-position: left -1920px; }
.dtls > ul > li.badspiegel:before	{ background-position: left -1800px; }
.dtls > ul > li.kosmetikspiegel:before	{ background-position: -56px -1830px; }
.dtls > ul > li.spender:before	{ background-position: left -1860px; }
.dtls > ul > li.minibar:before	{ background-position: -56px -2130px; }
.dtls > ul > li.wasserkocher:before	{ background-position: -56px -1980px; }
.dtls > ul > li.kaffee:before	{ background-position: left -1980px; }
.dtls > ul > li.flasche:before	{ background-position: -56px -1650px; }
.dtls > ul > li.kitchen:before	{ background-position: left -2250px; }
.dtls > ul > li.roomservice:before	{ background-position: left -2310px; }
.dtls > ul > li.schuhpflege:before	{ background-position: left -2010px; }
.dtls > ul > li.marmorbad:before	{ background-position: -56px -2010px; }
.dtls > ul > li.bademantel:before	{ background-position: left -2040px; }
.dtls > ul > li.bidet:before	{ background-position: -56px -2310px; }
.dtls > ul > li.slipper:before	{ background-position: -56px -2040px; }
.dtls > ul > li.tissues:before	{ background-position: -56px -1860px; }
.dtls > ul > li.waschbecken:before	{ background-position: -56px -2250px; }
.dtls > ul > li.nagelfeile:before	{ background-position: left -2070px; }
.dtls > ul > li.kamm:before	{ background-position: -56px -2070px; }
.dtls > ul > li.duschhaube:before	{ background-position: left -2220px; }
.dtls > ul > li.pflegeartikel:before	{ background-position: -56px -2220px; }
.dtls > ul > li.allergiebett:before	{ background-position: -56px -1740px; }
.dtls > ul > li.kissen:before	{ background-position: left -1770px; }
.dtls > ul > li.fridge:before	{ background-position: -56px -2340px; }
.dtls > ul > li.bluray:before	{ background-position: left -2190px; }
.dtls > ul > li.wii:before	{ background-position: -56px -2190px; }
.dtls > ul > li.safe:before	{ background-position: -56px -2100px; }
.dtls > ul > li.gift:before	{ background-position: left -2370px; }
.dtls > ul > li.designboden:before	{ background-position: -56px -2160px; }
.dtls > ul > li.nespresso:before	{ background-position: left -2400px; }
.dtls > ul > li.handtuch:before	{ background-position: -56px -2400px; }
.dtls > ul > li.leselampe:before	{ background-position: left -2160px; }
.dtls > ul > li.franzfenster:before	{ background-position: -56px -2190px; }
.dtls > ul > li.rolli:before	{ background-position: -56px -2370px; }
.dtls > ul > li.wcaufsatz:before	{ background-position: left -2130px; }
.dtls > ul > li.hocker:before	{ background-position: left -2190px; }
.dtls > ul > li.parking:before    { background-position: left -2434px; }
.dtls > p	{ display: none; }

h4 > a:not(.lb_close)	{
	font-weight: 300;
	float: right;
	vertical-align: baseline;
	display: inline-block;
	margin-top: 4px;
}

ul.icons > li.perso	{ background-position: 0 -1592px; }
ul.icons > li.sqm	{ background-position: 0 -1624px; }
.desc > ul.icons > li.sqm	{ padding-left: 34px; }
ul.icons > li.doublebed	{ background-position: 0 -1084px; }
ul.icons > li.singlebeds	{ background-position: 0 -1154px; }
ul.icons > li.extrabed	{ background-position: 0 -654px; }

#rad_std:checked ~ div > #disp_std ul.icons > li.perso, #rad_sup:checked ~ div > #disp_sup ul.icons > li.perso
, #rad_dlx:checked ~ div > #disp_dlx ul.icons > li.perso, #rad_fam:checked ~ div > #disp_fam ul.icons > li.perso
, #room_offers > div.enable_fade:hover ul.icons > li.perso 	{ background-position: 0 -1264px; }
#rad_std:checked ~ div > #disp_std ul.icons > li.sqm, #rad_sup:checked ~ div > #disp_sup ul.icons > li.sqm
, #rad_dlx:checked ~ div > #disp_dlx ul.icons > li.sqm, #rad_fam:checked ~ div > #disp_fam ul.icons > li.sqm
, #room_offers > div.enable_fade:hover ul.icons > li.sqm	{ background-position: 0 -1294px; }
#rad_std:checked ~ div > #disp_std ul.icons > li.doublebed, #rad_sup:checked ~ div > #disp_sup ul.icons > li.doublebed
, #rad_dlx:checked ~ div > #disp_dlx ul.icons > li.doublebed, #rad_fam:checked ~ div > #disp_fam ul.icons > li.doublebed
, #room_offers > div.enable_fade:hover ul.icons > li.doublebed	{ background-position: 0 -1324px; }
#rad_std:checked ~ div > #disp_std ul.icons > li.singlebeds, #rad_sup:checked ~ div > #disp_sup ul.icons > li.singlebeds
, #rad_dlx:checked ~ div > #disp_dlx ul.icons > li.singlebeds, #rad_fam:checked ~ div > #disp_fam ul.icons > li.singlebeds
, #room_offers > div.enable_fade:hover ul.icons > li.singlebeds	{ background-position: 0 -1504px; }
#rad_std:checked ~ div > #disp_std ul.icons > li.extrabed, #rad_sup:checked ~ div > #disp_sup ul.icons > li.extrabed
, #rad_dlx:checked ~ div > #disp_dlx ul.icons > li.extrabed, #rad_fam:checked ~ div > #disp_fam ul.icons > li.extrabed
, #room_offers > div.enable_fade:hover ul.icons > li.extrabed	{ background-position: 0 -1384px; }

#rad_std:checked ~ div > #disp_std.enable_fade:hover:after, #rad_sup:checked ~ div > #disp_sup.enable_fade:hover:after
, #rad_dlx:checked ~ div > #disp_dlx.enable_fade:hover:after, #rad_fam:checked ~ div > #disp_fam.enable_fade:hover:after {
	border-top: 14px solid #717171;
}
#rate_offers	{
	margin: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	text-align: left;
}
#rate_offers > div	{
	display: none;
	margin: 0 -100px 30px;
	padding-top: 60px;
	padding-bottom: 60px;
	position: relative;
}
#rate_offers > div > .lb_close	{
	background-position: -5px -1045px;
	display: none;
}
#rate_offers ul.icons > li.perso	{
	padding-left: 30px;
	padding-right: 20px;
}
#rad_std:checked ~ div > #rate_offers > #kateg_std_rates, #rad_sup:checked ~ div > #rate_offers > #kateg_sup_rates
, #rad_dlx:checked ~ div > #rate_offers > #kateg_dlx_rates, #rad_fam:checked ~ div > #rate_offers > #kateg_fam_rates	{ display: block; }

.in70	{
	float: left;
	width: 68%;
	position: relative;
}
#place_extras_here	{
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
	/* min-height: calc(100vh - 286px); */
}

.no_data div#dataform, .no_data #dataacceptance	{ display: none; }
div#elavonform	{ min-height: 507px; }
div#maps_confir	{ margin-top: 32px; }
div#maps_confir > div	{ padding-bottom: 100%; }


.slide, .desc	{
	width: 48%;
	position: relative;
	margin-bottom: 30px;
}
.desc	{ float: right; }
.slide	{ float: left; }
.dtls	{
	clear: both;
	border-top: 1px solid #aaa;
	padding-top: 23px;
}
.desc > h3 + ul.icons > li.nosmo, .desc > h3 + ul.icons > li.nopet, .desc > h3 + ul.icons > li.yespet, h5 > span.nosmo, h5 > span.nopet, h5 > span.yespet	{
	margin-left: 5px;
	padding: 0;
	height: 26px;
	width: 26px;
	border: 1px solid #222;
	border-radius: 50%;
}
h5 > span.nosmo, h5 > span.nopet, h5 > span.yespet	{
	display: block;
	float: right;
}
h5 > span.nosmo, .desc > h3 + ul.icons > li.nosmo	{ background-position: -26px -1418px; }
h5 > span.nopet, .desc > h3 + ul.icons > li.nopet	{ background-position: -89px -620px; }
h5 > span.yespet, .desc > h3 + ul.icons > li.yespet	{ background-position: -26px -620px; }

div.enable_fade:hover h5 > span.nosmo
, #rad_std:checked ~ div > #disp_std h5 > span.nosmo
, #rad_sup:checked ~ div > #disp_sup h5 > span.nosmo
, #rad_dlx:checked ~ div > #disp_dlx h5 > span.nosmo
, #rad_fam:checked ~ div > #disp_fam h5 > span.nosmo	{ background-position: left -1418px; }
div.enable_fade:hover h5 > span.nopet
, #rad_std:checked ~ div > #disp_std h5 > span.nopet
, #rad_sup:checked ~ div > #disp_sup h5 > span.nopet
, #rad_dlx:checked ~ div > #disp_dlx h5 > span.nopet
, #rad_fam:checked ~ div > #disp_fam h5 > span.nopet	{ background-position: -63px -620px; }
div.enable_fade:hover h5 > span.yespet
, #rad_std:checked ~ div > #disp_std h5 > span.yespet
, #rad_sup:checked ~ div > #disp_sup h5 > span.yespet
, #rad_dlx:checked ~ div > #disp_dlx h5 > span.yespet
, #rad_fam:checked ~ div > #disp_fam h5 > span.yespet	{ background-position: left -620px; }

div.enable_fade:hover h5 > span.nosmo, div.enable_fade:hover h5 > span.nopet, div.enable_fade:hover h5 > span.yespet
, #rad_std:checked ~ div > #disp_std h5 > span.nosmo
, #rad_sup:checked ~ div > #disp_sup h5 > span.nosmo
, #rad_dlx:checked ~ div > #disp_dlx h5 > span.nosmo
, #rad_fam:checked ~ div > #disp_fam h5 > span.nosmo
, #rad_std:checked ~ div > #disp_std h5 > span.nopet
, #rad_sup:checked ~ div > #disp_sup h5 > span.nopet
, #rad_dlx:checked ~ div > #disp_dlx h5 > span.nopet
, #rad_fam:checked ~ div > #disp_fam h5 > span.nopet
, #rad_std:checked ~ div > #disp_std h5 > span.yespet
, #rad_sup:checked ~ div > #disp_sup h5 > span.yespet
, #rad_dlx:checked ~ div > #disp_dlx h5 > span.yespet
, #rad_fam:checked ~ div > #disp_fam h5 > span.yespet	{ border: 1px solid #fff; }


h3 > span.rgt	{ float: right; }

.rooms_inner > div.rooms_or	{
	position: absolute;
	right: -10px;
	top: -10px;
	font-size: 11px;
	line-height: 34px;
}
div.rooms_or > span	{
	padding: 0 20px;
	display: inline-block;
}
div.rooms_or > span + span	{ padding-left: 0; }
div.rooms_or > span.heart	{
	padding-left: 52px;
	background: url('graphics/fe-icons-02.png') no-repeat 20px -1352px transparent;
}
div.rooms_or > span:not(.heart)	{
	text-transform: uppercase;
	font-weight: 400;
}
.rooms_inner > .flx	{
	padding: 18px 30px 30px;
	width: 100%;
}
.rooms_inner > .flx > label, .rooms_inner > .flx > p	{
	margin: 0;
	width: 48%;
}
.rooms_inner > .flx > p	{ font-size: 22px; }
.rooms_inner > .flx + p	{ display: none; }
#rad_std:checked ~ div > #disp_std:not(:hover) > div > div.flx > p, #rad_sup:checked ~ div > #disp_sup:not(:hover) > div > div.flx > p
, #rad_dlx:checked ~ div > #disp_dlx:not(:hover) > div > div.flx > p, #rad_fam:checked ~ div > #disp_fam:not(:hover) > div > div.flx > p	{
	border: 1px solid #ac3;
	padding: 0;
}

#room_offers > div.enable_fade:hover	{
	background: #717171 !important;
	color: #fff;
}
#room_offers > div.enable_fade:hover > a.pd > img	{
	filter: grayscale(0.4);
	opacity: 0.7;
}
#room_offers > div:hover > a:first-child:before, #room_offers > div:hover > a:first-child:after	{
	color: #fff;
	display: block;
	text-transform: uppercase;
}
#room_offers > div:hover > a:first-child:before	{
	content: "+";
	top: calc(50% - 60px);
	font-size: 60px;
	line-height: 60px;
	font-weight: 100;
}
#room_offers > div:hover > a:first-child:after	{
	content: attr(data-title);
	top: 50%;
}
h3.zwis	{ margin: 23px 0; }
#drkbx_img	{
	margin: 5px 0 40px;
	max-width: 640px;
	position: relative;
	padding-bottom: 75%;
}
#drkbx_img > img	{ top: 0; }
#drkbx_img.mg50p > img {
	width: 50%;
	left: 25%;
}
#extra_offers	{
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 30px 1fr 30px 1fr;
	-ms-grid-rows: 1fr 30px 1fr;
	grid-gap: 30px;
	grid-template-columns: 1fr 1fr 1fr;
	text-align: left;
}
#extra_offers.holds2	{
	grid-template-columns: 1fr 1fr 15%;
}
#extra_offers > *:nth-child(1) {
	-ms-grid-column: 1;
	-ms-grid-row: 1;
}
#extra_offers > *:nth-child(2) {
	-ms-grid-column: 3;
	-ms-grid-row: 1;
}
#extra_offers > *:nth-child(3) {
	-ms-grid-column: 5;
	-ms-grid-row: 1;
}
#extra_offers > *:nth-child(4) {
	-ms-grid-column: 1;
	-ms-grid-row: 3;
}
#extra_offers > *:nth-child(5) {
	-ms-grid-column: 3;
	-ms-grid-row: 3;
}
#extra_offers > *:nth-child(6) {
	-ms-grid-column: 5;
	-ms-grid-row: 3;
}
#extra_offers > div	{
	position: relative;
	padding: 0 0 68px;
}
#extra_offers > div > img	{
	width: 100%;
	margin-bottom: 18px;
}
#extra_offers > div > p { padding: 0 30px; }
#extra_offers > div > h3 {
	line-height: 20px;
	padding: 0 30px;
}
#extra_offers > div > a	{
	margin-bottom: 20px;
	width: auto;
	display: block;
}
#extra_offers > div > a.zlnd	{
	margin-bottom: 15px;
	text-align: center;
	font-size: 18px;
	line-height: 38px;
	width: 100%;
}
#extra_offers > div > a.zlnd:before	{
	content: "";
	background: url('graphics/fe-icons-02.png') no-repeat left top transparent;
	display: inline-block;
	margin-right: 10px;
	vertical-align: -3px;
	width: 19px;
	height: 19px;
	border-radius: 50%;
	border: 1px solid #8a0;
}
#extra_offers > div > a.edt	{ left: 30px; }
#extra_offers > div > a.edt:hover	{ text-decoration: underline; }
#extra_offers > div > a.del	{
	right: 30px;
	left: auto;
}
/* div.ckb > label > span > span	{
	font-weight: 300;
	display: block;
	line-height: 16px;
} */
.golf	{ padding: 0 0 30px; }
.golf > div	{
	width: 100%;
	border: 1px solid #aaa;
	margin-bottom: 23px;
}
.golf > div > label	{
	cursor: pointer;
	display: block;
	position: relative;
	padding: 8px 14px;
	text-align: center;
	font-size: 13px;
}
#dinp_ccdantc	{ padding-bottom: 15px; }

.ckb > label > span	{ align-self: center; }
.ckb > label[for] { cursor: pointer; }
.ckb > label:before	{
	content: "";
	border: 1px solid #aaa;
	width: 21px;
	height: 21px;
	margin: 3px 15px 3px 0;
	flex-shrink: 0;
	flex-basis: 21px;
}
.persons_quest > a:before	{
	content: "";
	border: 1px solid #aaa;
	width: 11px;
	height: 11px;
	margin: 0 8px 0 0;
	display: inline-block;
}
fieldset.inset:not(.flx) > div + div	{ margin-top: 16px; }
fieldset.w100 + div, .gastdet, .resp_place_before > #datapayment + #dataacceptance	{ margin-top: 32px; }
#st_acceptance	{ padding: 16px 0 32px 0; }
#data_rechnoadr, #data_rechnoadr > p	{ padding-bottom: 32px; }
.gastdet > h3	{ padding-bottom: 16px; }
fieldset > div.ckb.lh18 + div.ckb.lh18	{ margin-top: 8px; }
.ckb > input:checked + label:before
, #person_all_rooms:checked ~ fieldset > div.ckb > label#for_person_all_rooms:before
, .fs_opnr:checked ~ fieldset > div.ckb > label:before
, #gast_selbst_1:checked ~ fieldset > div.ckb > label#for_gast_selbst_1:before
, #gast_selbst_2:checked ~ fieldset > div.ckb > label#for_gast_selbst_2:before
, #gast_selbst_3:checked ~ fieldset > div.ckb > label#for_gast_selbst_3:before
, #gast_selbst_4:checked ~ fieldset > div.ckb > label#for_gast_selbst_4:before {
	background: url('graphics/fe-icons-02.png') no-repeat -19px top transparent;
}
#rechnungsadresse:not(:checked) ~ #data_rechnoadr
, #quick_checkin_1:not(:checked) ~ #data_quickcheckin_1, #quick_checkin_2:not(:checked) ~ #data_quickcheckin_2
, #quick_checkin_3:not(:checked) ~ #data_quickcheckin_3, #quick_checkin_4:not(:checked) ~ #data_quickcheckin_4
, #gast_selbst_1:checked ~ #data_gast_selbst_1, #gast_selbst_2:checked ~ #data_gast_selbst_2
, #gast_selbst_3:checked ~ #data_gast_selbst_3, #gast_selbst_4:checked ~ #data_gast_selbst_4
, .no_cc #dinp_strasse, .no_cc #dinp_plz, .no_cc #dinp_stadt, .no_cc #dinp_land, .no_cc #dinp_state_US, .no_cc #dinp_state_CA
, .no_cc #dinp_ccdantc, .no_cc #pmtbtn_kk, .no_pp #pmtbtn_pp	{ display: none; }

#pmtbtn_pp	{ background: url('graphics/paypal-button.png') no-repeat center center #ffc439; }


.fs_opnr:not(:checked) + fieldset	{ padding-bottom: 16px; }

/* .gast_selbst:checked + fieldset	{ padding-bottom: 30px; } */

.inset > div > input:required + label:after, .inset > div > div > input:required + label:after, .inset > div > select:required + label:after
, .ckb > input[type="checkbox"]:required + label > span:after	{
	content: "*";
	color: #c04;
}
.inset > div > label:after, .inset > div > div > label:after	{
	vertical-align: -2px;
	font-size: 15px;
}
input#expm, input#expy	{ width: 58px; }

#datapayment > input + h3 + fieldset, #elavonpayment > input + h3 + fieldset, input + label.dispo2 + div
, input + label.dispo2 + p + div	{ display: none; }
#datapayment > input:checked + h3 + fieldset, #elavonpayment > input:checked + h3 + fieldset, .layerfrm > input:checked + p + p
, input:checked + label.dispo2 + div, input:checked + label.dispo2 + p + div	{ display: block; }
label.dispo, label.lb_close, label.dispo2:not(.blind)	{ cursor: pointer; }
label.dispo:before, label.dispo2:not(.blind):before, .rates_compare > div > a:before	{
	content: "";
	display: inline-block;
	width: 17px;
	height: 8px;
	margin-right: 10px;
	-webkit-transition: transform 0.3s ease;
	transition: transform 0.3s ease;
	vertical-align: 2px;
	background: url('graphics/fe-icons-02.png') no-repeat -77px -1129px transparent;
}
label.dispo.red:before	{ background: url('graphics/fe-icons-02.png') no-repeat -4px -589px transparent; }
input:checked + h3 > label.dispo:before, input:checked + p > label.dispo:before, input:checked + label.dispo2:before
, .ovw_extras > input:checked + label:before, .layerfrm > input:checked + p > label:before, .rates_compare > div > a:last-of-type:before	{
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}
.rates_compare, #extras_compare {
	float: right;
	width: 27%;
	border: 1px solid #aaa;
	text-align: left;
}
.rates_fixed .rates_compare, .extras_fixed #extras_compare {
	position: fixed;
	right: 100px;
	width: calc((100% - 200px) * 0.27);
	z-index: 5;
}
#elm_layer_wishes .pr14 > h2 {
	text-align: center;
	text-transform: none;
	margin-bottom: 40px;
}
#elm_layer_wishes .pr14 > div { padding: 0 50px 45px; }
.rates_compare > div, .pr14 > div, #extras_compare > div { padding: 25px 30px 30px; }
.rates_compare > div > label, .payc > div > label {
	display: block;
	padding-left: 30px;
	position: relative;
}
.rates_compare > div > label:before, .payc > div > label:before {
	content: "";
	position: absolute;
	border-radius: 50%;
	top: 1px;
	left: 0;
	width: 15px;
	height: 15px;
	border: 1px solid #222;
	cursor: pointer;
}
.rates_compare > div > input:checked + label:after
, #paychoice_1_1:checked ~ fieldset label[for="paychoice_1_1"]:after, #paychoice_2_1:checked ~ fieldset label[for="paychoice_2_1"]:after
, #paychoice_3_1:checked ~ fieldset label[for="paychoice_3_1"]:after, #paychoice_4_1:checked ~ fieldset label[for="paychoice_4_1"]:after
, #paychoice_1_3:checked ~ fieldset label[for="paychoice_1_3"]:after, #paychoice_2_3:checked ~ fieldset label[for="paychoice_2_3"]:after
, #paychoice_3_3:checked ~ fieldset label[for="paychoice_3_3"]:after, #paychoice_4_3:checked ~ fieldset label[for="paychoice_4_3"]:after {
	content: "";
	position: absolute;
	border-radius: 50%;
	top: 6px;
	left: 5px;
	width: 7px;
	height: 7px;
	background: #222;
}
.rates_compare > div > p, .rates_compare > div > label, #extras_compare > div > p, #data_ovw > div > ul
, #elavon_ovw > div > ul	{ line-height: 20px; }
.payc > div > label	{ line-height: 29px; }
.payc > div > label:before, .payc > div > label:after { margin-top: 4px; }
#data_ovw > div, #elavon_ovw > div	{ padding-left: 28px; }
label.dispo2 {
	display: block;
	position: relative;
}
label.dispo2, label.dispo2 + div, label.dispo2 + p, label.dispo2 + p + div { padding-left: 28px; }
#data_ovw > h1 + input + label.dispo2 ~ label.dispo2, #elavon_ovw > h1 + input + label.dispo2 ~ label.dispo2	{ margin-top: 8px; }
#conf_ovw > h1 + input + label.dispo2 ~ label.dispo2	{ margin-top: 23px; }
label.dispo2:before {
	position: absolute;
	left: 0;
	top: 8px;
}
.ovw_extras > label.dispo:before {
	position: absolute;
	left: -28px;
	top: 8px;
}
.mt8	{ margin-top: 8px; }
.mb8	{ margin-bottom: 8px; }
.mt15, #conf_ovw h3, #data_ovw h3, #elavon_ovw h3	{ margin-top: 12px; }
.mt23	{ margin-top: 23px; }
input + h3 + .gastdet	{ display: none; }
input:checked + h3 + .gastdet	{ display: block; }
.gastdet > h3	{ padding-top: 15px; }

input#person_all_rooms:checked ~ .gastdet	{ display: none; }

.sentence_shw #sentence, .promo_shw #promo	{ display: block; }
/* .sentence_shw section { min-height: calc(100vh - 283px); } */
/* .sentence_shw #bg_img > div	{ height: calc(100vh - 283px); } */
/* .sentence_shw #place_extras_here { min-height: calc(100vh - 343px); } */

#drkcont > div#elm_cart, #drkcont > div#elm_layer_wishes	{
	max-width: 1570px;
	text-align: center;
}

.pr_cont {
	margin: 0 auto;
	justify-content: space-between;
}
.pr_cont.holds1 { justify-content: center; }
.pr_cont + button	{ width: 26%; }
.pr14 {
	width: 22%;
	border: 1px solid #1e1e1e;
	position: relative;
	min-height: 180px;
}
.holds1 > .pr14, .holds2 > .pr14	{ width: 48%; }
.holds3 > .pr14	{ width: 31%; }
#elm_cart > .holds1, #elm_cart > .holds2	{ max-width: 1104px; }
#elm_cart > div > .pr14	{
	text-align: left;
	padding-bottom: 64px;
}
.pr14 > div > .cropmg {
	width: 40%;
	margin-right: 20px;
	position: relative;
}
.pr14 > div > .cropmg > a { padding-bottom: 100%; }
.pr14 div + p, .pr14 p + p	{ margin-top: 18px; }
p.lr	{ text-align: right; }
p.lr > span { float: left; }
p.la > strong	{
	display: inline-block;
	width: 100px;
}
.holds4 p.la	{ text-align: right; }
.holds4 p.la > strong	{
	float: left;
	width: auto;
}
a.del {
	display: inline-block;
	width: 16px;
	text-align: right;
}
a.plus:before, a.del:after	{
	font-size: 1.6em;
	line-height: 12px;
}
a.plus:before	{
	content: "+";
	margin-right: 8px;
	vertical-align: -2px;
}
a.del:after {
	content: "×";
	margin-left: 5px;
	vertical-align: -1px;
}
a.edt	{
	padding-left: 18px;
	background: url('graphics/fe-icons-02.png') no-repeat left -271px transparent;
}
.cropmg > a.pd {
	display: block;
	margin-top: 5px;
	padding-bottom: 58%;
	position: relative;
	height: 0;
	overflow: hidden;
	background: #033;
	cursor: default;
}
.cntnoft > div > a	{
	position: absolute;
	bottom: 50%;
	margin-bottom: -23px;
	left: 20%;
	width: 60%;
	color: #8a0;
	font-size: 24px;
	line-height: 28px;
}
.cntnoft > div > a:before	{
	content: "+";
	font-size: 80px;
	display: block;
	line-height: 80px;
	font-weight: 100;
}

.litb.fx:before, header > div > div.act:after, a.ho_tel:hover:before, #rad_std:checked ~ div > #disp_std:after, #rad_sup:checked ~ div > #disp_sup:after, #rad_dlx:checked ~ div > #disp_dlx:after
, #rad_fam:checked ~ div > #disp_fam:after {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-left: 17px solid transparent;
	border-right: 17px solid transparent;
	z-index: 5;
}
a.ho_tel:hover:before	{
	left: -5px;
	top: -32px;
	border-top: 14px solid #000;
}
header > div > div.act:after	{
	bottom: 0;
	left: 50%;
	border-bottom: 14px solid #eee;
	margin-left: -17px;
}
.litb.fx:before {
	top: 0;
	right: 30px;
	border-top: 14px solid #fff;
}
#rad_std:checked ~ div > #disp_std:after, #rad_sup:checked ~ div > #disp_sup:after, #rad_dlx:checked ~ div > #disp_dlx:after
, #rad_fam:checked ~ div > #disp_fam:after {
	bottom: -14px;
	left: 50%;
	border-top: 14px solid #000;
	margin-left: -17px;
}
.payments	{ text-align: center; }

.payments > span, .payments2 > span	{
	display: inline-block;
	margin-left: 1px;
	margin-bottom: 1px;
}
.payments > span	{
	width: 62px;
	max-width: calc((100% - 5px) / 5);
	background: url("https://www.sorat-hotels.com/fileadmin/ge/payments.png") no-repeat left top #fff;
}
.payments2 > span	{
	width: 90px;
	height: 36px;
	background: url("graphics/payments-sk.png") no-repeat left top #fff;
}
.payments > span:after	{
	content: "";
	display: block;
	padding-bottom: 64.5%;
}
.payments > span:first-child	{ margin-left: 0; }
span#amex	{ background-position: center 0; }
span#visa	{ background-position: center 10%; }
span#master	{ background-position: center 20%; }
span#jcb	{ background-position: center 30%; }
span#diners	{ background-position: center 40%; }
span#ec	{ background-position: center 50%; }
span#paypal	{ background-position: center 60%; }
span#bar	{ background-position: center 80%; }
span#union	{ background-position: center 100%; }

span#amex_sk	{ background-position: center 0; }
span#diners_sk	{ background-position: center 25%; }
span#master_sk	{ background-position: center 50%; }
span#visa_sk	{ background-position: center 75%; }
span#paypal_sk	{ background-position: center 100%; }

.breakflayers, .adlayers	{
	text-align: left;
}
.breakflayers > h3	{
	font-size: 18px;
	padding-bottom: 6px;
}
.adlayers > h1 + h3	{
	font-size: 18px;
	padding-top: 6px;
}
.adlayers > p > a	{ color: #c04; }
.adlayers > p > a:hover	{ text-decoration: underline; }
.layerfrm.adlayers fieldset > div	{ margin: 0; }
.layerfrm.adlayers fieldset ~ .sbm	{ margin: 16px 0 0; }
.breakflayers > .persons_quest	{
	margin: 18px 0 30px;
}
.breakflayers > .persons_quest + p	{
	padding-top: 30px;
	border-top: 1px solid #ddd;
}
.breakflayers fieldset	{ padding-top: 12px; }
.breakflayers fieldset.rounded > div {
	margin-left: 20px;
	width: 200px;
}
.breakflayers .holds3 fieldset.rounded > div:not(:first-child) { width: 150px; }
.breakflayers fieldset.rounded > div:first-child {
	margin-left: 0;
	width: 290px;
}
.breakflayers .holds1 fieldset.rounded > div:first-child { width: 100px; }
.breakflayers fieldset.rounded > div:first-child > a {
	display: inline-block;
	width: 80px;
}
.breakflayers fieldset.rounded > div > .sel_rplcm_gr {
	width: auto;
	margin-left: 0;
	background-color: #eee;
}
.breakflayers fieldset.rounded:not(.mpty) > div > .sel_rplcm_gr { background-image: none; }
fieldset:not(.mpty) .notfilled, fieldset.mpty .filled	{ display: none !important; }
.confflx	{ align-items: flex-start; }
.confflx > h1	{
	margin: 0;
	text-transform: none;
}
.confflx > a	{ min-width: 340px; }
#dinp_countrycode	{
	width: 124px;
	position: absolute;
	top: 0;
	left: 0;
}
#dinp_telefon > input	{ padding-left: 141px; }
#dinp_countrycode > .sel_rplcm_gr	{ border: 0px none !important; }
#dinp_countrycode:after	{
	content: "";
	width: 1px;
	height: 20px;
	display: inline-block;
	background: #aaa;
	position: absolute;
	right: 0;
	top: 13px;
}
.smphn_plus	{ padding-top: 3px; }
.grd	{
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 33% 33% 34%;
	grid-template-columns: 33% 33% 34%;
	-ms-grid-rows: auto 1fr;
	grid-template-rows: auto 1fr;
}
.grd > div	{ text-align: left; }

.grd > div#data_ovw, .grd > div#dataform, .grd > div#elavon_ovw, .grd > div#elavonform, .grd > div#conf_ovw	{
	border-right: 1px solid #aaa;
	padding-right: 12%;
	grid-row: 1 / span 2;
}
.grd > div#data_ovw, .grd > div#elavon_ovw, .grd > div#conf_ovw	{
	-ms-grid-row: 1;
	-ms-grid-row-span: 2;
	-ms-grid-column: 1;
}
.grd > div#dataform, .grd > div#elavonform	{
	-ms-grid-row: 1;
	-ms-grid-row-span: 2;
	-ms-grid-column: 2;
}
.grd > div#datapayment	{
	-ms-grid-row: 1;
	-ms-grid-column: 3;
}
.grd > div#dataacceptance	{
	-ms-grid-row: 2;
	-ms-grid-column: 3;
}
.grd > div#elavonpayment	{
	-ms-grid-row: 1;
	-ms-grid-row-span: 2;
	-ms-grid-column: 3;
}
.grd > div#dataform, .grd > div#datapayment, .grd > div#dataacceptance, .grd > div#elavonform, .grd > div#elavonpayment	{ padding-left: 12%; }
.grd > div#elavonpayment	{ grid-row: 1 / span 2; }
.grd > div#conf_display	{
	padding-left: 6%;
	grid-column: 2 / span 2;
	grid-row: 1 / span 2;
	-ms-grid-column: 2;
	-ms-grid-column-span: 2;
	-ms-grid-row: 1;
	-ms-grid-row-span: 2;
}
.rates_compare > div > a	{
	display: block;
	font-weight: 500;
}
div:not(.morethan2) > .onlmorethan2, div:not(.morethan2) > .onlmorethan2 + hr, .morethan2 > a:first-of-type, .morethan2 > a:first-of-type + hr { display: none; }
.morethan2 > .onlmorethan2, .morethan2 > .onlmorethan2 + hr { display: block; }
@media only screen and (max-width: 1420px)	{
	#sentence, #promo, section, #rate_offers > div	{
		padding-left: 30px;
		padding-right: 30px;
	}
	#rate_offers > div {
		margin-left: -30px;
		margin-right: -30px;
	}
	section#sect_cal	{
		padding-left: 100px;
		padding-right: 100px;
	}
	.rates_fixed .rates_compare, .extras_fixed #extras_compare {
		right: 30px;
		width: calc((100% - 60px) * 0.27);
	}
	#room_offers > div	{
		width: 31.5%;
		margin-right: 2.75%;
	}
	header > div > div	{ width: calc(20% - 10px); }
	#extra_offers, #extra_offers.holds2	{ grid-template-columns: 1fr 1fr; }
}
@media only screen and (max-width: 1260px)	{
	h1, h2, .caltb > div:first-child, .caltb > div > a > span:nth-child(2), .caltb > div > a[titleinfo]:active:after
	, #galert, #ralert, #room_offers > div:hover > a:first-child:after, header > div > div > p:nth-child(2), .hd_resp_layer #ovw_step_rooms_dtl	{ font-size: 24px; }
	.hd_resp_layer #ovw_step_rooms_dtl	{ line-height: 34px; }
	.rooms_inner > .flx > p { font-size: 18px; }
	.sbm.uc { font-size: 15px; }
	#ovw_step_persons:not(.act), #ovw_step_calendar:not(.act), #ovw_step_rooms:not(.act)	{ display: none; }
	header > div > div:first-child	{
		width: 210px;
		/* padding-top: 22px;
		padding-bottom: 22px; */
	}
	header > div > div > img { height: 56px; }
	header > div > div.act, header > div > div#ovw_step_data { width: calc((100% - 50px - 210px) / 2); }
	header > div > div#ovw_step_data.act { width: calc(100% - 25px - 210px); }
	.in70 { width: 63%; }
	.rates_compare, #extras_compare { width: 32%; }
	.rates_fixed .rates_compare, .extras_fixed #extras_compare { width: calc((100% - 60px) * 0.32); }
	.dtls > ul > li { width: 25%; }
	.dtls > ul > li:nth-child(6n+1) { border-left: 1px solid #aaa; }
	.dtls > ul > li:nth-child(4n+1) { border-left: 0px none; }
	.slide, .desc	{
		float: none;
		width: 100%;
	}
	.slide > a.pd { padding-bottom: 75% !important; }
	a.ho_tel > span, a.ho_mail > span	{ display: none; }
	a.ho_tel	{
		padding-left: 0;
		width: 25px;
	}
	section#sect_cal	{
		padding-left: 30px;
		padding-right: 30px;
	}
	.newcal { width: 49%; }
	a.nxtmnth { right: -30px; }
	a.prvmnth { left: -30px; }
	#cal_navi {
		margin-left: 20px;
		margin-right: 20px;
		padding-left: 20px;
		padding-right: 20px;
	}
	.hd_resp_layer header	{ position: static; }
	.hd_resp_layer main	{ padding-top: 0 !important; }
	.hd_resp_layer header > div	{
		flex-wrap: wrap;
		background: #000;
		padding-bottom: 0;
	}
	.hd_resp_layer header > div > div.resp_list	{
		width: 100% !important;
		display: block !important;
		text-align: left;
		padding-top: 0;
		padding-bottom: 8px;
		padding-top: 8px;
		border-top: 1px solid #aaa;
	}
	.hd_resp_layer header > div > div.resp_list > a {
		bottom: calc(50% - 30px);
		padding: 30px 0;
	}
	.hd_resp_layer header > div > div.resp_list > a:after {
		margin: 0 0 0 auto;
		-webkit-transform: rotate(270deg);
		transform: rotate(270deg);
	}
	.hd_resp_layer header > div > div#ovw_resp > a:after {
		-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
	}
	.hd_resp_layer header > div > div.resp_list#ovw_resp2 > a	{ display: block; }
	.hd_resp_layer header > div > div.resp_list#ovw_resp2 > a:after {
		margin: 0 auto;
		-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
	}
	/* .hd_resp_layer div#ovw_resp > p:nth-child(2)	{ display: none !important; } */
	.hd_resp_layer header > div > div > #ovw_step_rooms_dtl	{
		max-height: 500px;
		position: static;
		margin-top: -2px;
	}
	.hd_resp_layer #ovw_step_rooms_dtl > div	{
		border-top: 0px none;
		padding: 0;
		display: block;
	}
	.hd_resp_layer #ovw_step_rooms_dtl > div > .cropmg	{ display: none; }
	.hd_resp_layer #ovw_step_rooms_dtl > div > h3 {
		margin: 0;
		white-space: nowrap;
		padding: 0 50px 0 0;
		font-weight: 300;
	}
	.hd_resp_layer #ovw_step_rooms_dtl > div > h3 > a.lb_close	{
		margin-left: 10px;
		display: inline-block !important;
		position: static;
	}
	.hd_resp_layer header > div > div.done:nth-child(5) > a { width: 40px; }
	.grd > div#data_ovw, .grd > div#dataform, .grd > div#elavon_ovw, .grd > div#elavonform, .grd > div#conf_ovw	{ padding-right: 8%; }
	.grd > div#dataform, .grd > div#datapayment, .grd > div#dataacceptance, .grd > div#elavonform, .grd > div#elavonpayment	{ padding-left: 8%; }
	.grd > div#conf_display	{ padding-left: 4%;	}
	.ad300 + .opp_ad300	{
		float: none !important;
		width: 100% !important;
		margin-left: 0 !important;
	}
	#elm_step_calendar + .ad300 + .opp_ad300 > #cal_calendar	{ width: auto !important; }
	.ad300	{
		margin: -56px 0 56px !important;
		float: none !important;
		width: 100% !important;
		position: relative !important;
		top: 0  !important;
		right: 0 !important;
	}
	.ad300 > div:first-child {
		width: 100%;
		height: 52px;
	}
	.ad300 > div:first-child > a.pd	{
		z-index: 4;
		width: calc(100% - 80px);
		padding-bottom: 0;
		font-size: 16px;
		line-height: 24px;
		margin: 2px 40px 26px;
		background: none !important;
	}
	.ad300 > div:first-child > a.pd > span	{
		white-space: nowrap;
		text-overflow: ellipsis;
		overflow: hidden;
	}
	.ad300 > div:first-child > a.pd > img	{ display: none; }
	.ad300 > div + div	{
		margin: 0;
		width: 100%;
		z-index: 2;
		position: absolute;
		bottom: 2px;
		left: 0;
		align-items: flex-end;
	}
	.ad300 > div + div > a	{ margin: 10px; }
	.ad300 > div + div > span.blw1280 > a:before	{
		content: "";
		border: 2px solid #ccc;
		width: 10px;
		height: 10px;
		border-radius: 50%;
		display: inline-block;
		box-sizing: border-box;
		margin: 0 1px;
	}
	.ad300 > div + div > span.blw1280 > a.act:before	{ border: 5px solid #ccc; }
	.blw1280	{ display: block; }
	.abv1280	{ display: none; }
}
@media only screen and (max-width: 1132px)	{
	body	{
		font-size: 13px;
		line-height: 21px;
	}
	.rates_compare > div > p, #extras_compare > div > p, .rates_compare > div > label { line-height: 17px; }
	.rateselector > div > div > div.sel_rplcm_gr { width: 290px; }
	.rateselector > div > a.info	{ left: -75px; }
	.rooms_inner > .flx > p { font-size: 15px; }
	h4, .rates_compare > div, .pr14 > div, #extras_compare > div, #extra_offers > div > h3, #extra_offers > div > p, .rooms_inner, .rooms_inner > .flx {
		padding-left: 20px;
		padding-right: 20px;
	}
	.lb_close { right: 20px; }
	.rooms_inner > .flx > p, .rooms_inner > .flx > label { width: 49.5%; }
	.ho_tel, #ft_cnlcng, #ft_dtlimp, .ho_rld	{ margin-left: 25px; }
}
@media only screen and (max-width: 1132px) and (min-width: 940px)	{
	#room_offers.holds1 > div, #room_offers.holds2 > div { width: 40%; }
}
@media only screen and (max-width: 1004px)	{
	.newcal	{ width: 100%; }
	.newcal + .newcal	{ margin-top: 40px; }
	
	#cal_calendar	{ display: block; }
	#cal_calendar, #cal_calendar + p, #cal_calendar ~ div {
		margin-left: 20px;
		margin-right: 20px;
		padding-left: 20px;
		padding-right: 20px;
	}
	#cal_calendar ~ .flx	{ justify-content: space-between; }
	#cal_calendar ~ .flx > .sbm { width: 45%; }
	#data_ovw > div, #elavon_ovw > div { padding-left: 14px; }
	.abv1023, .slide > a.pd > span.lrg	{ display: none; }
	a.ho_rld	{
		padding-left: 0;
		width: 25px;
		text-align: center;
		font-size: 9px;
	}
	.dtls > p	{
		margin-top: 23px;
		text-align: center;
		display: block;
	}
	.dtls > p > a:before	{ content: attr(data-title); }
	.dtls.opn > p > a:before	{ content: attr(data-titleopn); }
	.dtls > ul > li:nth-child(n + 17) { display: none; }
	.dtls.opn > ul > li:nth-child(n + 17) { display: inline-block; }
	footer, #cal_calendar + p { font-size: 11px; }
	a.ho_tel:hover:before, a.ho_tel:hover:after	{ display: none !important; }
	
	
	.grd	{
		grid-template-columns: 1fr;
		grid-template-rows: auto auto auto auto;
		-ms-grid-columns: 1fr;
		-ms-grid-rows: auto auto auto auto;
	}
	.grd > div + div	{ margin-top: 40px; }
	.grd.resp_place_stay > div + div#dataacceptance	{ margin-top: 0; }
	.grd > div#data_ovw, .grd > div#dataform, .grd > div#elavon_ovw, .grd > div#elavonform, .grd > div#conf_ovw	{
		border-right: 0px solid #ccc;
		padding-right: 0;
	}
	.grd > div#dataform, .grd > div#datapayment, .grd > div#dataacceptance, .grd > div#elavonform, .grd > div#elavonpayment, .grd > div#conf_display	{ padding-left: 0; }
	.grd > div#data_ovw, .grd > div#elavon_ovw, .grd > div#conf_ovw	{ grid-row: 1 / span 1; }
	.grd.resp_place_stay > div#dataform, .grd.resp_place_before > div#datapayment, .grd > div#elavonform	{ grid-row: 2 / span 1; }
	.grd.resp_place_stay > div#datapayment, .grd.resp_place_before > div#dataform	{ grid-row: 3 / span 1; }
	.grd > div#elavonpayment	{ grid-row: 3 / span 2; }
	.grd > div#conf_display	{
		grid-column: 1 / span 1;
		grid-row: 2 / span 3;
	}
	.grd > div#dataacceptance	{ grid-row: 4 / span 1; }
	
	.grd > div#data_ovw, .grd > div#elavon_ovw, .grd > div#conf_ovw	{
		-ms-grid-row: 1;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
	}
	.grd > div#dataform, .grd > div#elavonform	{
		-ms-grid-row: 2;
		-ms-grid-row-span: 1;
		-ms-grid-column: 1;
	}
	.grd > div#datapayment	{
		-ms-grid-row: 3;
		-ms-grid-column: 1;
	}
	.grd > div#dataacceptance	{
		-ms-grid-row: 4;
		-ms-grid-column: 1;
	}
	.grd > div#elavonpayment	{
		-ms-grid-row: 3;
		-ms-grid-row-span: 1;
		ms-grid-column-span: 2;
		-ms-grid-column: 1;
	}
	.grd > div#conf_display	{
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		-ms-grid-row: 2;
		-ms-grid-row-span: 3;
	}
}
@media only screen and (max-width: 940px)	{
	.in70 { width: 59%;	}
	.rates_compare, #extras_compare { width: 37%; }
	.rates_fixed .rates_compare, .extras_fixed #extras_compare {
		width: calc((100% - 60px) * 0.37);
	}
	.dtls > ul > li { width: 20%; }
	.dtls > ul > li:nth-child(4n+1) { border-left: 1px solid #aaa; }
	.dtls > ul > li:nth-child(5n+1) { border-left: 0px none; }
	div.pr14 {
		width: 100% !important;
		margin-left: 0 !important;
	}
	div.pr14 + div.pr14  { margin-top: 40px; }
	.abv940  { display: none; }
	.confflx	{ display: block; }
	#data_ovw > div, #elavon_ovw > div { padding-left: 28px; }
	
	#room_offers > div {
		width: 48%;
		margin-right: 4%;
	}
	#room_offers > div:nth-child(even) { margin-right: 0 !important; }
	/* #room_disp > input:nth-child(2):checked ~ div > div:nth-child(3), #room_disp > input:nth-child(3):checked ~ div > div:nth-child(3)	{ order: 1; } */
	.caltb, h3.zwis, .rates > div > div > label > span { justify-content: space-between; }
	.breakflayers fieldset.rounded > div:first-child {
		width: 100%;
		margin-bottom: 30px;
	}
	.breakflayers fieldset.rounded > div:not(:last-child)	{ margin-left: 0; }
}
@media only screen and (max-width: 880px)	{
	#ovw_step_persons, #ovw_step_calendar, #ovw_step_rooms, #ovw_step_data	{ display: none; }
	header > div > div#ovw_resp	{ display: block; }
	header > div > div#ovw_resp > a	{ display: block; }
	.in70 { width: 54%;	}
	.rates_compare, #extras_compare { width: 42%; }
	.rates_fixed .rates_compare, .extras_fixed #extras_compare { width: calc((100% - 60px) * 0.42); }
	.dtls > ul > li { width: 25%; }
	.dtls > ul > li:nth-child(5n+1) { border-left: 1px solid #aaa; }
	.dtls > ul > li:nth-child(4n+1) { border-left: 0px none; }
	#extra_offers { grid-template-columns: 1fr !important; }
	.layerfrm div.inset > div, .layerfrm > .flx > .sbm, .layerfrm > .flx > p	{ max-width: 40%; }
	h1.flxalign	{
		display: block;
		text-align: center;
	}
	h1.flxalign > span:first-child	{ display: block; }
	
	footer	{
		display: block;
		position: relative;
		padding-bottom: 35px;
	}
	.ho_adr, #ft_dtlimp, a#ft_cnlcng {
		text-align: left;
		display: block !important;
		line-height: 20px;
		margin-left: 0 !important;
	}
	a#ft_cnlcng, a.ho_tel, a.ho_rld {
		position: absolute;
		right: 15px;
	}
	a#ft_cnlcng	{ top: 15px; }
	a.ho_adr	{
		padding-left: 0;
		background: transparent;
	}
	a.ho_tel	{
		top: 45px;
		width: 25px;
	}
	a.ho_rld {
		top: 45px;
		right: 82px;
	}
	#ft_street, #ft_adrss	{ display: none !important; }
}
@media only screen and (max-width: 780px)	{
	.in70, .rates_compare, #extras_compare { width: 48%; }
	.rates_fixed .rates_compare, .extras_fixed #extras_compare { width: calc((100% - 60px) * 0.48); }
	.dtls > ul > li { width: 33.3%; }
	.dtls > ul > li:nth-child(4n+1) { border-left: 1px solid #aaa; }
	.dtls > ul > li:nth-child(3n+1) { border-left: 0px none; }
	.dtls > ul > li:nth-child(n + 17) { display: inline-block; }
	.dtls > ul > li:nth-child(n + 10) { display: none; }
	.dtls.opn > ul > li:nth-child(n + 10) { display: inline-block; }
	#waiter > h2	{ top: 10%; }
}
@media only screen and (max-width: 748px)	{
	#room_offers {
		align-items: center;
		flex-direction: column;
	}
	#room_offers > div {
		width: 100%;
		margin-right: 0 !important;
	}
	#room_offers > div, .rates_compare, #extras_compare { max-width: 320px; }
	
	#room_disp > input:nth-child(2):checked ~ div > div:nth-child(2), #room_disp > input:nth-child(2):checked ~ div > div:nth-child(3)
	, #room_disp > input:nth-child(3):checked ~ div > div:nth-child(3)	{ order: 2; }
	#rate_offers	{ order: 1 !important; }
	.rooms_inner	{ padding-bottom: 30px; }
	.rooms_inner > .flx > p { font-size: 18px; }
	.rooms_inner > .flx	{
		position: static;
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 18px;
	}
	.rooms_inner > .flx + p	{
		display: block;
		text-align: center;
	}
	.rooms_inner > .flx + p:after	{
		content: attr(data-title);
		display: inline-block;
		font-size: 11px;
		text-transform: uppercase;
		border-bottom: 1px dotted;
		cursor: pointer;
		margin: 0 auto;
	}
	.desc > p + ul.icons	{ display: none; }
	.desc > h3 + ul.icons > li.sqm	{
		display: inline-block;
		margin-right: 25px;
	}
	.dtls	{
		clear: both;
		border-top: 1px solid #aaa;
		padding-top: 23px;
	}
	.in70, .rates_compare, #extras_compare	{
		width: 100%;
		float: none;
	}
	.rates_compare, #extras_compare {
		position: static !important;
		width: 100% !important;
	}
	.rates_compare	{ margin: 60px auto 0; }
	#extras_compare { margin: 40px auto 30px; }
	#rate_offers > div > .lb_close	{
		display: block;
		right: 10px;
		top: 10px;
	}
	.btn_fixed #extras_btn_fixed	{
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		z-index: 20;
	}
	.desc > h3 + ul.icons { right: 30px; }
	#rate_offers > div	{
		padding-top: 30px;
		padding-bottom: 60px;
	}
	.dtls > ul > li { width: 20%; }
	.dtls > ul > li:nth-child(3n+1) { border-left: 1px solid #aaa; }
	.dtls > ul > li:nth-child(5n+1) { border-left: 0px none; }
	.dtls > ul > li:nth-child(n + 10) { display: inline-block; }
	.dtls > ul > li:nth-child(n + 11) { display: none; }
	.dtls.opn > ul > li:nth-child(n + 11) { display: inline-block; }
	.persons_quest, div.straight > div.selwrp, .pglin	{
		width: 100%;
		max-width: 320px;
	}
	fieldset.rounded > div, fieldset.rounded > div > .sel_rplcm_gr, fieldset.rounded > div + div > input {
		width: 100% !important;
		margin-left: 0 !important;
		max-width: 100% !important;
	}
	fieldset.rounded + fieldset.rounded	{ padding-top: 12px; }
	header > nav	{ font-size: 11px; }
	header > div {
		padding-top: 5px;
		padding-bottom: 5px;
	}
	header > div > div:first-child {
		width: 122px;
		padding-top: 10px;
		padding-bottom: 10px;
	}
	header > div > div > img { height: 46px; }
	header > div > div#ovw_resp { width: calc(100% - 127px); }
	header > div > div#ovw_resp > p:first-child	{ display: none; }
	header > div > div > a { padding-bottom: 12px; }
	header > div > div > p:nth-child(2), .hd_resp_layer #ovw_step_rooms_dtl { font-size: 16px; }
	#galert, #ralert { font-size: 22px; }
	.hd_resp_layer #ovw_step_rooms_dtl { line-height: 24px; }
	header > div > div > a > img { height: 40px; }
	#galert	{ padding: 38px 30px; }
	#elm_impressum > div, #elm_firmierung > div	{
		flex-direction: column;
		align-items: center;
	}
	#elm_impressum > div > div, #elm_firmierung > div > div { width: 100%; }
	#elm_impressum > div > div + div, #elm_firmierung > div > div + div	{ margin-top: 23px; }
	#drkcont > div, #drkcont2 > div	{ padding: 15px; }
	.layerfrm, aside, #elm_layer_wishes .pr14 > div	{
		padding-left: 30px;
		padding-right: 30px;
	}
	.layerfrm > h2	{
		margin-left: -30px;
		margin-right: -30px;
	}
	#elm_login_layer > .layerfrm > p {
		padding-left: 0;
		padding-right: 0;
	}
}
@media only screen and (max-width: 620px)	{
	.dtls > ul > li { width: 25%; }
	.dtls > ul > li:nth-child(5n+1) { border-left: 1px solid #aaa; }
	.dtls > ul > li:nth-child(4n+1) { border-left: 0px none; }
	.dtls > ul > li:nth-child(n + 11) { display: inline-block; }
	.dtls > ul > li:nth-child(n + 9) { display: none; }
	.dtls.opn > ul > li:nth-child(n + 9) { display: inline-block; }
	header > nav, header > div, footer, #sentence, #promo, section, #rate_offers > div, section#sect_cal, #galert, #ralert	{
		padding-left: 15px;
		padding-right: 15px;
	}
	#rate_offers > div {
		margin-left: -15px;
		margin-right: -15px;
	}
	#cal_selector { right: 15px; }
	#cal_calendar, #cal_calendar + p, #cal_calendar ~ .flx {
		margin-left: 0;
		margin-right: 0;
		padding-left: 0;
		padding-right: 0;
	}
	.newcal > a.prvmnth { left: 0; }
	.newcal > a.nxtmnth { right: 0; }
	.newcal > a.nxtmnth, .newcal > a.prvmnth { top: 10px; }
	.caltb > div > a	{
		padding: 2px;
		height: 80px;
	}
	.caltb > div > a > span:first-child, .caltb > div > a > span.fs9:first-child, .caltb > div > a > span.fs13
	, .caltb > div > a > span:nth-child(3).fs11, .caltb > div > a > span:nth-child(3).fs11 + .fs13	{
		font-size: 9px;
		line-height: 10px;
	}
	.caltb > div > a > span.lthr + span { margin-top: 0; }
	#cal_calendar ~ .flx { flex-wrap: wrap-reverse; }
	#cal_calendar ~ .flx > .sbm {
		width: 100%;
		max-width: 100%;
	}
	#cal_calendar ~ .flx > .sbm:first-child	{ margin-right: 0; }
	.lft > p	{ width: calc(50% - 20px); }
	.abv620  { display: none; }
}
@media only screen and (max-width: 538px)	{
	.desc > p + ul.icons {
		position: static;
		margin-top: 12px;
	}
	.desc > p + ul.icons	{ display: block; }
	.desc > h3 + ul.icons > li.sqm	{ display: none; }
	.dtls > ul > li { width: 33.3%; }
	.dtls > ul > li:nth-child(4n+1) { border-left: 1px solid #aaa; }
	.dtls > ul > li:nth-child(3n+1) { border-left: 0px none; }
	.dtls > ul > li:nth-child(n + 9) { display: inline-block; }
	.dtls > ul > li:nth-child(n + 7) { display: none; }
	.dtls.opn > ul > li:nth-child(n + 7) { display: inline-block; }
	.layerfrm div.inset > div, .layerfrm > .flx > .sbm, .layerfrm > .flx > p {
		max-width: 280px;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	.layerfrm .flx > div + div { margin-top: 10px; }
	.layerfrm > .flx:not(.abo) > .sbm:last-child { margin-top: 10px; }
	.layerfrm > .flx.abo > .sbm:first-child, .layerfrm > .flx.abo > p:first-child { margin-top: 10px; }
	.layerfrm > .flx.abo { flex-wrap: wrap-reverse; }
	.payments > span	{ background-size: 100%; }
	#waiter > h2	{ top: 5%; }
	.layerfrm > .flx.lft > p	{
		width: 100%;
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
		text-align: center;
	}
}
@media only screen and (max-width: 412px)	{
	section {
		padding-top: 40px;
		padding-bottom: 60px;
	}
	h1 > span.icn	{
		padding-left: 0 !important;
		background: none !important;
	}
	.smphn_plus:before	{
		content: "+";
		font-size: 1.4em;
		vertical-align: -2px;
		margin-right: 8px;
		color: #aaa;
	}
	.ad300	{ margin: -36px 0 36px !important; }
	.abv480, #cal_navi	{ display: none !important; }
}
@media only screen and (max-width: 320px)	{
	header > div > div:first-child { width: 92px; }
	header > div > div#ovw_resp { width: calc(100% - 97px); }
}
@media print	{
	header	{ position: static; }
	header > nav, footer > span:last-child, #conf_display, #maps_confir, header > div > div, #galert, #ralert	{ display: none; }
	header > div, main, .grd > div#conf_ovw { padding: 0 !important; }
	header > div > div:first-child	{
		display: block;
		width: 100%;
		text-align: left;
		padding-left: 30px;
	}
	section	{
		padding-left: 0;
		padding-right: 0;
	}
	.grd	{ display: block; }
	.grd > div#conf_ovw { border-right: 0px none; }
}