@charset "UTF-8";

@font-face {
	font-family: "Calibre";
	src: url("../resources/fonts/portal/calibreboldwebfont.eot");
	src: url("../resources/fonts/portal/calibreboldwebfont.eot") format("embedded-opentype"), url("../resources/fonts/portal/calibreboldwebfont.woff2") format("woff2"), url("../resources/fonts/portal/calibreboldwebfont.woff") format("woff"), url("../resources/fonts/portal/calibreboldwebfont.ttf") format("truetype"), url("../resources/fonts/portal/calibreboldwebfont.svg#calibreboldwebfont") format("svg");
	font-style: normal;
	font-weight: 700;
}

@font-face {
	font-family: "Calibre";
	src: url("../resources/fonts/portal/calibremediumwebfont.eot");
	src: url("../resources/fonts/portal/calibremediumwebfont.eot") format("embedded-opentype"), url("../resources/fonts/portal/calibremediumwebfont.woff2") format("woff2"), url("../resources/fonts/portal/calibremediumwebfont.woff") format("woff"), url("../resources/fonts/portal/calibremediumwebfont.ttf") format("truetype"), url("../resources/fonts/portal/calibremediumwebfont.svg#calibremediumwebfont") format("svg");
	font-style: normal;
	font-weight: 500;
}

@font-face {
	font-family: "Calibre";
	src: url("../resources/fonts/portal/calibreregularwebfont.eot");
	src: url("../resources/fonts/portal/calibreregularwebfont.eot") format("embedded-opentype"), url("../resources/fonts/portal/calibreregularwebfont.woff2") format("woff2"), url("../resources/fonts/portal/calibreregularwebfont.woff") format("woff"), url("../resources/fonts/portal/calibreregularwebfont.ttf") format("truetype"), url("../resources/fonts/portal/calibreregularwebfont.svg#calibreregularwebfont") format("svg");
	font-style: normal;
	font-weight: 400;
}

@font-face {
	font-family: "Calibre";
	src: url("../resources/fonts/portal/calibrelightwebfont.eot");
	src: url("../resources/fonts/portal/calibrelightwebfont.eot") format("embedded-opentype"), url("../resources/fonts/portal/calibrelightwebfont.woff2") format("woff2"), url("../resources/fonts/portal/calibrelightwebfont.woff") format("woff"), url("../resources/fonts/portal/calibrelightwebfont.ttf") format("truetype"), url("../resources/fonts/portal/calibrelightwebfont.svg#calibrelightwebfont") format("svg");
	font-style: normal;
	font-weight: 300;
}

::selection {
	background: #c1092b;
	color: #fff;
}

::-moz-selection {
	background: #c1092b;
	color: #fff;
}

*:focus {
	outline: none;
}

::-moz-focus-inner {
	border: 0;
}

::-webkit-scrollbar {
	width: 10px;
}

::-webkit-scrollbar-track {
	background-color: #efefef;
}

::-webkit-scrollbar-thumb {
	background-color: #c1092b;
}

select::-ms-expand {
	display: none;
}

input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill {
	-webkit-box-shadow: 0 0 0 1000px white inset !important;
}

* {
	box-sizing: border-box;
}

html, body {
	height: 100%;
}

body {
	margin: 0;
	padding: 0;
	text-align: center;
	font-family: "Calibre", sans-serif;
	font-size: 16px;
	font-weight: 300;
	line-height: 24px;
	background: #e5e5e5;
	color: #000000;
	overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
	margin: 0;
	padding: 0;
}

a {
	text-decoration: none;
	color: #0050a1;
}

a img {
	border: none;
}

b, strong {
	font-weight: 700;
}

table {
	border-spacing: 0;
	border-collapse: collapse;
}

tbody {
	border: 0;
}

form {
	margin: 0;
}

input, select {
	border-radius: 0;
	background: #fff;
}

.wrapper {
	width: 1200px;
	margin: 0 auto;
}

:root {
	--menuBackground: #ffffff;
	--menuTextColor: #272727;
	--menuCtaBackground: #c1092b;
	--menuCtaHoverBackground: #920c25;
	--homeMenuBackground: transparent;
	--homeMenuTextColor: #ffffff;
	--menuHeight: 100px;
	--itemBackgroundColor: #ffffff;
	--itemTextColor: #272727;
	--itemMenuGap: 0px;
	--itemMenuWidth: 150px;
	--itemMenuHeight: 41px;
}

#main {
	margin-top: 0;
}

.slideshow-wrap {
	background: #e5e5e5;
}

#header {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 999;
	height: var(--menuHeight);
	background: var(--menuBackground);
	color: var(--menuTextColor);
	text-align: left;
	transition: background 0.2s ease, box-shadow 0.2s ease;
}

#header  > div.wrapper {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	position: relative;
	height: 100%;
}

#header .logo {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: var(--itemMenuWidth);
	height: var(--menuHeight);
	padding: 0;
	box-sizing: border-box;
	color: var(--menuTextColor);
}

#header .logo img {
	width: 150px;
	height: auto;
}

#header .logo img.logo_white {
	display: none;
}

#header .logo img.logo_black {
	display: block;
}

#header .menu {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 0;
	display: flex;
	align-items: center;
	gap: var(--itemMenuGap);
	margin-left: var(--itemMenuGap);
}

#header .menu li {
	display: flex;
	align-items: center;
	justify-content: center;
	width: var(--itemMenuWidth);
	height: var(--itemMenuHeight);
	box-sizing: border-box;
}

#header .menu li a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	font-size: 20px;
	font-weight: 500;
	color: var(--menuTextColor);
	line-height: 1;
	padding: 10px 20px;
	box-sizing: border-box;
	text-decoration: none;
	border-bottom: 3px solid transparent;
}

#header .menu li a:hover {
	border-bottom: 3px solid var(--menuTextColor);
}

#header .menu li.cta {
	width: auto;
	border-radius: 21px;
	background-color: var(--menuCtaBackground);
}

#header .menu li.cta.active, #header .menu li.cta:hover {
	background-color: var(--menuCtaHoverBackground);
}

#header .menu li.cta a {
	color: #ffffff;
	border-bottom: 0;
	white-space: nowrap;
}

#header .menu li.cta a:hover {
	border-bottom: 0;
}

#header #header-country {
	position: static;
	margin-left: auto;
	top: auto;
	right: auto;
	font-size: 0;
	cursor: pointer;
	display: flex;
	align-items: center;
}

#header #header-country:after {
	content: "\e604";
	font-family: "simple-line-icons";
}

#header #header-country  > a {
	display: block;
	color: var(--menuTextColor);
	font-size: 22px;
	margin-left: 10px;
	padding-right: 23px;
	text-transform: uppercase;
	position: relative;
	font-weight: 500;
}

#header #header-country  > a i {
	font-size: 14px;
	color: var(--menuTextColor);
	position: absolute;
	top: 6px;
	right: 0;
}

#header #header-country  > div {
	display: none;
	width: 640px;
	position: absolute;
	top: var(--menuHeight);
	right: 20px;
	z-index: 2;
	background: var(--itemBackgroundColor);
	color: var(--itemTextColor);
	padding: 60px 4px 15px 20px;
	box-sizing: border-box;
}

#header #header-country  > div .icon-close {
	font-size: 26px;
	position: absolute;
	top: 15px;
	right: 17px;
	cursor: pointer;
}

#header #header-country  > div  > div {
	display: inline-block;
	width: 300px;
	max-height: 260px;
	margin-right: 0;
	box-sizing: border-box;
	overflow-x: hidden;
	vertical-align: top;
}

#header #header-country  > div  > div:nth-child(2) label:after {
	width: 290px;
}

#header #header-country  > div  > div:last-child label:nth-child(3) {
	margin-top: 20px;
}

#header #header-country  > div label {
	display: block;
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
}

#header #header-country  > div label:after {
	display: block;
	content: "";
	width: 265px;
	height: 1px;
	background: #fff;
	margin: 10px 0;
}

#header #header-country  > div a {
	display: block;
	line-height: 30px;
	color: var(--itemTextColor);
	font-family: "Arial", sans-serif;
	font-size: 13px;
	white-space: nowrap;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

#header #header-country  > div a:hover {
	color: #cc1b41;
}

#header #header-country  > div a span {
	display: inline-block;
	width: 30px;
	font-size: 11px;
	font-weight: 700;
	color: #aaa;
	margin-right: 5px;
}

#header.home-start {
	background: var(--homeMenuBackground);
	color: var(--homeMenuTextColor);
}

#header.home-start .logo img.logo_white {
	display: block;
}

#header.home-start .logo img.logo_black {
	display: none;
}

#header.home-start .menu li a {
	color: var(--homeMenuTextColor);
}

#header.home-start .menu li a:hover {
	border-bottom-color: var(--homeMenuTextColor);
}

#header.home-start #header-country  > a {
	color: var(--homeMenuTextColor);
}

#header.home-start #header-country  > a i {
	color: var(--homeMenuTextColor);
}

.nav, .nav .icon-container {
	width: 35px;
	cursor: pointer;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-o-backface-visibility: hidden;
	-ms-backface-visibility: hidden;
}

.nav {
	display: none;
	height: 25px;
	position: fixed;
	top: 23px;
	right: 30px;
	z-index: 1000;
}

.nav .line {
	position: absolute;
	right: 0;
	height: 3px;
	background: var(--menuTextColor);
	transition: all 300ms;
	-webkit-transition: all 300ms;
	transform: translate3d(0, 0, 0);
	-webkit-transform: translate3d(0, 0, 0);
}

.nav .line01 {
	top: 0;
	left: 0;
	opacity: 1;
	transition-delay: 210ms;
	-webkit-transition-delay: 210ms;
}

.nav .line02 {
	top: 11px;
	left: 15px;
	transition-delay: 140ms;
	-webkit-transition-delay: 140ms;
}

.nav .line03 {
	top: 22px;
	left: 11px;
	transition-delay: 70ms;
	-webkit-transition-delay: 70ms;
}

.nav:hover .line01 {
	left: 11px;
	transition-delay: 0ms;
	-webkit-transition-delay: 0ms;
}

.nav:hover .line02 {
	left: 0;
	transition-delay: 70ms;
	-webkit-transition-delay: 70ms;
}

.nav:hover .line03 {
	left: 18px;
	transition-delay: 140ms;
	-webkit-transition-delay: 140ms;
}

.open.nav .line {
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.open.nav:hover .line {
	transform: none;
	-webkit-transform: none;
}

.open.nav .line:nth-child(1) {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	top: 11px;
	left: 7px;
}

.open.nav .line:nth-child(2) {
	background: 0;
}

.open.nav .line:nth-child(3) {
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	top: 11px;
	left: 7px;
}

.sidebar {
	display: none;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 998;
	padding: 0 30px;
	box-sizing: border-box;
	text-align: left;
	transition: opacity 0.75s ease 0s, z-index 0s ease 1s;
	-webkit-transition: opacity 0.75s ease 0s, z-index 0s ease 1s;
}

.sidebar:after {
	content: "";
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: #ffffff;
}

.sidebar .menu {
	list-style: none;
	margin: 104px 0 0 0;
	padding: 0;
	position: relative;
	z-index: 2;
}

.sidebar .menu li {
	margin-top: 14px;
}

.sidebar .menu li a {
	display: block;
	line-height: 30px;
	font-size: 30px;
	font-weight: 500;
	text-transform: uppercase;
	color: var(--menuTextColor);
}

.sidebar .sidebar-country {
	position: relative;
	z-index: 2;
}

.sidebar .sidebar-country  > div {
	margin-top: 25px;
	padding-top: 25px;
	border-top: 1px solid #fff;
}

.sidebar .sidebar-country  > div:last-child label:nth-child(3) {
	margin-top: 30px;
}

.sidebar .sidebar-country  > div label {
	display: block;
	font-size: 30px;
	font-weight: 700;
	color: #000;
	margin-bottom: 23px;
	text-transform: uppercase;
}

.sidebar .sidebar-country  > div a {
	display: block;
	font-size: 16px;
	font-family: "Arial", sans-serif;
	color: #fff;
	text-transform: uppercase;
	margin-top: 10px;
}

.sidebar .sidebar-country  > div a span {
	display: none;
}

:root {
	--slideshow-height: 700px;
}

.slideshow-wrap {
	background: #000000;
	position: relative;
	overflow: hidden;
	height: var(--slideshow-height);
}

.slideshow-wrap:before {
	background: linear-gradient(225deg, transparent, rgba(0, 0, 0, 0.4));
	z-index: 100;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	position: absolute;
}

#slideshow {
	height: 100%;
	margin: 0;
	padding: 0;
	overflow: hidden;
}

#slideshow .cycle-full, #slideshow .cycle-element {
	height: 100%;
}

#slideshow img {
	display: block;
	width: auto;
	height: 100%;
	max-width: none;
	object-fit: cover;
}

#slideshow .loading {
	position: absolute;
	bottom: 30px;
	right: 0;
	left: 0;
	color: #fff;
}

.slider-pager {
	position: absolute;
	bottom: 30px;
	right: 0;
	left: 0;
	z-index: 200;
	font-size: 0;
}

.slider-pager span {
	display: inline-block;
	width: 20px;
	height: 20px;
	border: 2px solid #fff;
	border-radius: 50%;
	box-sizing: border-box;
	margin: 0 5px;
	cursor: pointer;
}

.slider-pager span.cycle-pager-active {
	background: #fff;
}

#search {
	position: relative;
	z-index: 200;
	text-align: left;
}

#search form .search-wrap {
	width: 410px;
	position: absolute;
	top: 130px;
	left: 0;
	font-size: 0;
	background: #0050a1;
	color: #fff;
	box-sizing: border-box;
	padding: 29px 10px 30px 30px;
}

#search form .search-content {
	font-size: 0;
}

#search form .search-content  > div {
	display: inline-block;
	width: 50%;
	width: calc(50% - 20px);
	margin: 13px 20px 0 0;
	vertical-align: top;
}

#search form .search-content  > div.search-field-large {
	width: 100%;
	padding-right: 20px;
	box-sizing: border-box;
}

#search form .search-content  > div.search-night {
	width: 100%;
	font-size: 16px;
}

#search form .search-content  > div.search-night span {
	text-transform: lowercase;
}

#search form .search-content label {
	display: block;
	font-size: 16px;
}

#search form input, #search form select {
	display: block;
	width: 100%;
	height: 40px;
	line-height: 40px;
	font-family: "Calibre", sans-serif;
	font-size: 16px;
	font-weight: 400;
	background: #fff;
	color: #000;
	padding: 0 10px;
	border: 0;
	box-sizing: border-box;
}

#search form input[name="checkin"], #search form input[name="checkout"], #search form select[name="checkin"], #search form select[name="checkout"] {
	background-image: url(../resources/images/portal/icon-calendar.png);
	background-position: 94% 7px;
	background-repeat: no-repeat;
	cursor: pointer;
}

#search form select {
	background-image: url(../resources/images/portal/icon-arrow-down.png);
	background-position: 94% center;
	background-repeat: no-repeat;
	cursor: pointer;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
}

#search form ::-webkit-input-placeholder {
	color: #000;
	opacity: 1;
}

#search form :-moz-placeholder {
	color: #000;
	opacity: 1;
}

#search form ::-moz-placeholder {
	color: #000;
	opacity: 1;
}

#search form :-ms-input-placeholder {
	color: #000;
	opacity: 1;
}

#search .search-submit {
	display: block;
	width: 100%;
	height: 40px;
	line-height: 40px;
	font-family: "Calibre", sans-serif;
	font-size: 18px;
	font-weight: 700;
	background: #c1092b;
	color: #ffffff;
	padding: 0 10px;
	box-sizing: border-box;
	cursor: pointer;
	text-align: center;
	text-transform: uppercase;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

#search .search-submit:hover {
	background: #000000;
	background: #920c25;
}

#search .search-title {
	font-size: 26px;
	font-weight: 700;
	text-transform: uppercase;
	margin-right: 20px;
}

#search .mobile-search {
	display: none;
	font-size: 26px;
	font-weight: 700;
	background: #0050a1;
	color: #fff;
	margin-right: 20px;
	padding-right: 37px;
	text-transform: uppercase;
	white-space: nowrap;
	cursor: pointer;
	position: relative;
}

#search .mobile-search i {
	display: inline-block;
	vertical-align: bottom;
	margin-right: 4px;
}

#search .mobile-search span {
	position: absolute;
	top: 0;
	right: 0;
}

.datepicker-inline {
	font-size: 0;
}

.datepicker-inline  > div {
	display: inline-block;
	width: 50%;
	width: calc(50% - 20px);
	height: 40px;
	line-height: 40px;
	font-size: 16px;
	font-weight: 400;
	background: #fff;
	color: #000;
	margin: 20px 20px 0 0;
	padding: 0 10px;
	box-sizing: border-box;
}

.page-action-portal-home #content {
	margin: 30px 0;
}

#content {
	margin: 100px 0;
}

.content-label {
	font-size: 22px;
	background: #c1092b;
	color: #ffffff;
	padding: 15px 30px;
	text-transform: uppercase;
	word-wrap: break-word;
}

.content-label.step-room {
	margin: 30px 0;
}

.content-label.step-room:first-child {
	margin-top: 0;
}

.content-label.alternativg {
	margin-top: 30px;
}

.content-label span {
	text-transform: lowercase;
}

.content-label .sortby-map, .content-label .logout {
	float: right;
	font-size: 16px;
	font-weight: 700;
	color: #fff;
	cursor: pointer;
}

.content-label .sortby-map i, .content-label .logout i {
	font-size: 24px;
	margin-left: 3px;
	vertical-align: sub;
}

.content-body {
	background: #fff;
	font-weight: 400;
	margin-top: 30px;
	padding: 15px 30px;
}

.right-column {
	font-size: 0;
	text-align: left;
}

.right-column  > div {
	display: inline-block;
	font-size: 16px;
	box-sizing: border-box;
	vertical-align: top;
}

.right-column  > div:first-child {
	width: 68%;
	font-size: 0;
}

.right-column  > div:first-child .content-label {
	margin-right: 30px;
}

.right-column  > div:last-child {
	width: 32%;
}

.left-column {
	font-size: 0;
	text-align: left;
	padding-top: 30px;
}

.left-column  > div {
	display: inline-block;
	font-size: 16px;
	box-sizing: border-box;
	vertical-align: top;
}

.left-column  > div:first-child {
	width: 36%;
	width: calc(36% - 30px);
	margin-right: 30px;
}

.left-column  > div:first-child #search .search-wrap {
	width: 100%;
	position: relative;
	top: auto;
	left: auto;
	background: #0050a1;
}

.left-column  > div:last-child {
	width: 64%;
}

.center-column {
	padding-top: 30px;
	text-align: left;
}

.center-column  > div {
	margin-top: 30px;
}

.center-column  > div:first-child {
	margin-top: 0;
}

.cart-column {
	font-size: 0;
	text-align: left;
	padding-top: 30px;
	overflow: hidden;
}

.cart-column  > div {
	font-size: 16px;
	box-sizing: border-box;
	vertical-align: top;
}

.cart-column  > div:first-child {
	float: right;
	width: 36%;
	width: calc(36% - 30px);
	margin-left: 30px;
}

.cart-column  > div:last-child {
	float: left;
	width: 64%;
}

.hotel-list a {
	display: inline-block;
	width: 50%;
	width: calc(50% - 30px);
	line-height: 20px;
	background: #fff;
	color: #000;
	margin: 30px 30px 0 0;
	vertical-align: top;
	position: relative;
	transition: all 0.1s;
	-webkit-transition: all 0.1s;
}

.hotel-list a:hover {
	background: #c1092b;
	color: #ffffff;
}

.hotel-list a:hover .hotel-list-score {
	opacity: 1;
}

.hotel-list a  > div:last-child {
	height: 94px;
	padding: 17px 30px 20px 30px;
	box-sizing: border-box;
	position: relative;
}

.hotel-list a  > div:last-child  > i {
	display: block;
	font-size: 34px;
	position: absolute;
	top: 30px;
	right: 30px;
}

.hotel-list a .hotel-list-score {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	z-index: 2;
	height: 189px;
	line-height: 20px;
	font-size: 16px;
	text-align: center;
	background: rgba(0, 0, 0, 0.7);
	color: #fff;
	opacity: 0;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.hotel-list a .hotel-list-score  > div {
	font-size: 24px;
	font-weight: 700;
	margin-top: 73px;
	letter-spacing: 1px;
}

.hotel-list a .hotel-list-score  > div b {
	font-size: 38px;
}

.hotel-list a .hotel-list-img {
	height: 189px;
	background-color: #f3f3f3;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.hotel-list a .hotel-list-title {
	font-size: 20px;
	font-weight: 700;
	padding-right: 64px;
	text-transform: uppercase;
}

.hotel-list a .hotel-list-title  > i {
	display: block;
	font-size: 12px;
	letter-spacing: 2px;
	margin-top: 6px;
}

.hotel-item {
	font-size: 14px;
	font-weight: 400;
	background: #fff;
	margin-top: 30px;
}

.hotel-item  > div {
	display: table;
	width: 100%;
}

.hotel-item  > div.hotel-rates-info {
	display: none;
	padding: 20px;
	box-sizing: border-box;
}

.hotel-item  > div.hotel-rates-info  > label {
	display: block;
	font-size: 16px;
	font-weight: 700;
	padding-right: 34px;
	text-transform: uppercase;
	position: relative;
}

.hotel-item  > div.hotel-rates-info  > label  > i {
	position: absolute;
	top: 0;
	right: 0;
	font-size: 24px;
	cursor: pointer;
}

.hotel-item  > div.hotel-rates-info  > div {
	display: block;
}

.hotel-item  > div  > div {
	display: table-cell;
	vertical-align: top;
}

.hotel-item .hotel-item-top  > div:first-child {
	width: 250px;
	background-color: #f3f3f3;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}

.hotel-item .hotel-item-top  > div:first-child:hover  > div {
	opacity: 1;
}

.hotel-item .hotel-item-top  > div:first-child  > div {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.7);
	color: #fff;
	font-size: 20px;
	font-weight: 300;
	line-height: 22px;
	opacity: 0;
	cursor: pointer;
	text-align: center;
	text-transform: uppercase;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.hotel-item .hotel-item-top  > div:first-child  > div  > div {
	display: table;
	width: 100%;
	height: 100%;
}

.hotel-item .hotel-item-top  > div:first-child  > div  > div  > div {
	display: table-cell;
	vertical-align: middle;
}

.hotel-item .hotel-item-top  > div:first-child  > div b {
	display: block;
}

.hotel-item .hotel-item-top  > div:last-child {
	padding: 15px 20px 20px 20px;
	position: relative;
}

.hotel-item .hotel-item-bottom  > div:first-child {
	max-width: 250px;
}

.hotel-item .hotel-item-bottom  > div:last-child {
	padding: 15px 20px 20px 20px;
	position: relative;
}

.hotel-item .hotel-item-name {
	font-size: 24px;
	font-weight: 700;
	text-transform: uppercase;
	padding-right: 70px;
}

.hotel-item .hotel-item-name i {
	line-height: 24px;
	font-size: 17px;
	letter-spacing: 4px;
	vertical-align: top;
}

.hotel-item .hotel-item-score {
	font-weight: 700;
	position: absolute;
	top: 15px;
	right: 20px;
	letter-spacing: 1px;
}

.hotel-item .hotel-item-score b {
	font-size: 24px;
}

.hotel-item .hotel-item-address {
	margin-top: -2px;
}

.hotel-item .hotel-item-gallery {
	display: none;
	text-transform: uppercase;
	cursor: pointer;
}

.hotel-item .hotel-item-gallery b {
	color: #0050a1;
}

.hotel-item .hotel-item-sep {
	height: 18px;
}

.hotel-item .hotel-item-facilities {
	font-size: 0;
	padding: 17px 0 20px 0;
}

.hotel-item .hotel-item-facilities img {
	display: inline-block;
	margin: 10px 0 0 20px;
	vertical-align: top;
}

.hotel-item .hotel-item-desc  > i {
	font-size: 24px;
	position: absolute;
	top: 16px;
	right: 20px;
	cursor: pointer;
}

.hotel-item .hotel-item-desc  > div {
	max-height: 0;
	overflow: hidden;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.hotel-item .hotel-item-desc  > div.open {
	max-height: 9999px;
}

.hotel-item .hotel-item-desc  > div p {
	margin: 0;
}

.hotel-item .hotel-item-truncate  > i {
	font-size: 24px;
	position: absolute;
	top: 16px;
	right: 20px;
	cursor: pointer;
}

.hotel-item .hotel-item-truncate  > div {
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
}

.hotel-item .hotel-item-truncate  > div:last-child {
	display: none;
}

.hotel-item .hotel-item-truncate  > div p {
	margin: 0;
}

.hotel-item .hotel-item-actions {
	font-size: 0;
	text-align: right;
}

.hotel-item .hotel-item-actions a {
	display: inline-block;
	text-transform: uppercase;
	vertical-align: middle;
}

.hotel-item .hotel-item-actions .hotel-item-more {
	line-height: 16px;
	font-size: 12px;
	color: #000;
	margin-right: 20px;
}

.hotel-item .hotel-item-actions .hotel-item-more b {
	display: block;
}

.hotel-item .hotel-item-actions .hotel-item-btn {
	height: 54px;
	line-height: 52px;
	font-size: 16px;
	font-weight: 700;
	background: #c1092b;
	color: #fff;
	box-sizing: border-box;
	padding: 0 20px;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.hotel-item .hotel-item-actions .hotel-item-btn:hover {
	background: #000;
}

.hotel-details {
	background: #fff;
	font-weight: 400;
	padding: 27px 30px 30px 30px;
	position: relative;
}

.hotel-details .hotel-details-name {
	font-size: 30px;
	font-weight: 700;
	padding-right: 123px;
	text-transform: uppercase;
}

.hotel-details .hotel-details-name i {
	font-size: 18px;
	line-height: 26px;
	letter-spacing: 4px;
	vertical-align: top;
}

.hotel-details .hotel-details-score {
	font-size: 24px;
	font-weight: 700;
	position: absolute;
	top: 27px;
	right: 30px;
	letter-spacing: 1px;
}

.hotel-details .hotel-details-score b {
	font-size: 30px;
}

.hotel-details .hotel-details-price {
	position: absolute;
	top: 22px;
	right: 30px;
	line-height: 22px;
	font-size: 11px;
	color: #999;
	letter-spacing: 1px;
	text-align: right;
	text-transform: uppercase;
}

.hotel-details .hotel-details-price b {
	display: block;
	font-size: 30px;
	font-weight: 700;
	color: #000;
}

.hotel-details .hotel-details-price b span {
	font-size: 24px;
}

.hotel-details .hotel-details-address {
	font-size: 14px;
	margin-top: -2px;
}

.hotel-details .countdown {
	font-size: 14px;
	font-weight: 700;
	color: #c1092b;
	margin-top: -2px;
}

.hotel-details .hotel-details-map {
	font-weight: 700;
	color: #c1092b;
	text-transform: uppercase;
	cursor: pointer;
}

.hotel-details .hotel-details-slider {
	margin-top: 22px;
	position: relative;
}

.hotel-details .hotel-details-slider .cycle-slideshow {
	background: #f3f3f3;
}

.hotel-details .hotel-details-slider .cycle-slideshow  > div {
	width: 100%;
	height: 400px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.hotel-details .hotel-details-thumbs {
	font-size: 0;
	line-height: 0;
	margin-right: -10px;
	overflow: hidden;
}

.hotel-details .hotel-details-thumbs  > div {
	display: inline-block;
	width: 12.5%;
	width: calc(12.5% - 10px);
	height: 70px;
	background: #f3f3f3;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	margin: 10px 10px 0 0;
	cursor: pointer;
}

.hotel-details .hotel-details-desc {
	margin: 23px 0 -7px 0;
}

.hotel-details .hotel-details-desc p {
	margin: 0;
}

.hotel-details .hotel-details-desc-label {
	font-weight: 700;
	text-transform: uppercase;
}

.hotel-rates {
	margin-top: 8px;
}

.hotel-rates  > div {
	display: table;
	width: 100%;
	border-top: 1px solid #e5e5e5;
}

.hotel-rates  > div  > div {
	display: table-cell;
	vertical-align: middle;
	padding: 5px 0;
}

.hotel-rates .hotel-rates-name {
	font-size: 16px;
	text-transform: uppercase;
}

.hotel-rates .hotel-rates-meal, .hotel-rates .hotel-rates-cond {
	text-transform: lowercase;
	margin-top: -5px;
}

.hotel-rates .hotel-rates-cond {
	cursor: pointer;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.hotel-rates .hotel-rates-cond:hover {
	color: #0050a1;
}

.hotel-rates .hotel-rates-price {
	padding-left: 20px;
	text-align: right;
}

.hotel-rates .hotel-rates-price  > span {
	display: block;
}

.hotel-rates .hotel-rates-price  > span:first-child {
	font-size: 24px;
	font-weight: 500;
	color: #0050a1;
	margin-top: 5px;
	white-space: nowrap;
}

.hotel-rates .hotel-rates-price  > span:first-child span {
	font-size: 18px;
}

.hotel-rates .hotel-rates-price  > span:first-child i {
	display: inline-block;
	font-size: 14px;
	font-style: normal;
	color: #000;
	text-decoration: line-through;
	margin-right: 5px;
}

.hotel-rates .hotel-rates-price  > span:first-child i span {
	font-size: 14px;
}

.hotel-rates .hotel-rates-price  > span:last-child {
	font-size: 10px;
	color: #999;
	text-transform: uppercase;
	margin-top: -6px;
	white-space: nowrap;
}

.hotel-rates .hotel-rates-qnt {
	width: 130px;
	padding-left: 20px;
	box-sizing: border-box;
	text-align: right;
}

.hotel-rates .hotel-rates-qnt a {
	display: block;
	width: 100%;
	height: 38px;
	line-height: 36px;
	font-size: 16px;
	font-weight: 700;
	background: #c1092b;
	color: #fff;
	box-sizing: border-box;
	padding: 0 10px;
	text-align: center;
	text-transform: uppercase;
	cursor: pointer;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.hotel-rates .hotel-rates-qnt a:hover {
	background: #000;
}

.hotel-rates .hotel-rates-qnt select {
	width: 100%;
	font-family: "Calibre", sans-serif;
	font-size: 20px;
	font-weight: 700;
	background: url(../resources/images/portal/icon-arrow-down-red.png) no-repeat 90% center;
	color: #c1092b;
	border: 2px solid #c1092b;
	padding: 6px 10px;
	cursor: pointer;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
}

.hotel-rates .hotel-rates-qnt select option {
	font-size: 16px;
	color: #000;
}

.hotel-info-daily {
	display: table;
	width: 100%;
	margin: 10px 0;
	border-right: 1px solid #e5e5e5;
	border-bottom: 1px solid #e5e5e5;
}

.hotel-info-daily  > div {
	display: table-row;
}

.hotel-info-daily  > div  > div {
	display: table-cell;
	padding: 5px;
	border-top: 1px solid #e5e5e5;
	border-left: 1px solid #e5e5e5;
}

.form-field-name {
	clear: both;
}

.customer-fieldset {
	margin-top: 30px;
}

.customer-fieldset .customer-form {
	background: #fff;
	font-size: 0;
	margin-top: 30px;
	padding: 27px 0 30px 30px;
	overflow: hidden;
}

.customer-fieldset .customer-form .customer-label {
	font-size: 22px;
	font-weight: 700;
	text-transform: uppercase;
	margin-right: 30px;
}

.customer-fieldset .customer-form .customer-desc {
	font-size: 16px;
	font-weight: 400;
}

.customer-fieldset .customer-form .customer-field {
	display: inline-block;
	float: left;
	width: 50%;
	width: calc(50% - 30px);
	box-sizing: border-box;
	margin: 20px 30px 0 0;
	vertical-align: top;
	position: relative;
	overflow: hidden;
}

.customer-fieldset .customer-form .customer-field.form-field-prefix {
	width: 15%;
	margin-right: 0;
}

.customer-fieldset .customer-form .customer-field.form-field-prefix select {
	border-right: 0;
}

.customer-fieldset .customer-form .customer-field.form-field-number {
	width: calc(35% - 30px);
}

.customer-fieldset .customer-form .customer-field-full {
	margin: 20px 30px 0 0;
}

.customer-fieldset .customer-form .customer-field-label {
	font-size: 12px;
	font-weight: 400;
	padding: 0 10px;
	text-transform: uppercase;
}

.customer-fieldset .customer-form label {
	width: 100%;
	height: 40px;
	line-height: 40px;
	font-size: 16px;
	font-weight: 400;
	background: #fff;
	color: #000;
	position: absolute;
	top: 0;
	left: 0;
	padding: 0 10px;
	box-sizing: border-box;
}

.customer-fieldset .customer-form label:after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 100%;
	left: 0;
	z-index: 2;
	height: 2px;
	background: #0050a1;
	transition: all 0.5s;
	-webkit-transition: all 0.5s;
}

.customer-fieldset .customer-form label  > div {
	position: relative;
	display: block;
	width: 100%;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.customer-fieldset .customer-form input, .customer-fieldset .customer-form select {
	display: block;
	width: 100%;
	height: 40px;
	line-height: 40px;
	font-family: "Calibre", sans-serif;
	font-size: 16px;
	background: transparent;
	color: #000;
	border: 1px solid #e5e5e5;
	box-sizing: border-box;
	padding: 0 10px;
	cursor: pointer;
	position: relative;
	z-index: 2;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
}

.customer-fieldset .customer-form input option, .customer-fieldset .customer-form select option {
	color: #000;
}

.customer-fieldset .customer-form input:focus, .customer-fieldset .customer-form select:focus {
	outline: none;
}

.customer-fieldset .customer-form input.focused + label:after, .customer-fieldset .customer-form select.focused + label:after {
	right: 0;
}

.customer-fieldset .customer-form input.focused + label > div, .customer-fieldset .customer-form select.focused + label > div {
	opacity: 0;
}

.customer-fieldset .customer-form input.field-invalid + label:after, .customer-fieldset .customer-form select.field-invalid + label:after {
	right: 0;
	background: #c1092b;
}

.customer-fieldset .customer-form select {
	background-image: url(../resources/images/portal/icon-arrow-down.png);
	background-position: 96% center;
	background-repeat: no-repeat;
	cursor: pointer;
}

.customer-fieldset .customer-form textarea {
	width: 100%;
	height: 80px;
	font-family: "Calibre", sans-serif;
	font-size: 16px;
	border: 1px solid #e5e5e5;
	padding: 10px;
	resize: none;
}

.customer-fieldset .customer-form .customer-check {
	position: relative;
	padding-top: 20px;
	clear: both;
}

.customer-fieldset .customer-form .customer-check label {
	display: block;
	height: auto;
	height: 12px;
	line-height: 10px;
	font-size: 16px;
	padding-left: 20px;
	text-align: left;
	cursor: pointer;
	position: relative;
	text-transform: lowercase;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.customer-fieldset .customer-form .customer-check label:before {
	content: "";
	width: 10px;
	height: 10px;
	position: absolute;
	top: 0;
	left: 0;
	border: 1px solid #000;
	cursor: pointer;
}

.customer-fieldset .customer-form .customer-check label:after {
	content: "";
	width: 12px;
	height: 12px;
	position: absolute;
	top: 0;
	left: 0;
	background: #0050a1;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
	opacity: 0;
}

.customer-fieldset .customer-form .customer-check label:hover:after {
	background: #000;
	opacity: 1;
}

.customer-fieldset .customer-form .customer-check input {
	position: absolute;
	top: 0;
	left: 0;
	visibility: hidden;
}

.customer-fieldset .customer-form .customer-check input:checked + label {
	color: #0050a1;
}

.customer-fieldset .customer-form .customer-check input:checked + label:after {
	background: #0050a1;
	opacity: 1;
}

.customer-fieldset .customer-form .customer-check input.check-required + label:after {
	opacity: 1;
	background: #c1092b;
}

.customer-fieldset .customer-form .privacy-wrap {
	display: none;
	font-size: 16px;
	font-weight: 400;
	border-top: 1px solid #000;
	margin: 25px 30px 0 0;
	padding-top: 15px;
}

.customer-fieldset .customer-form .privacy-wrap label {
	display: block;
	height: auto;
	font-weight: 700;
	padding: 0;
	position: relative;
	text-transform: uppercase;
}

.customer-fieldset .customer-form .privacy-wrap table {
	margin-bottom: 15px;
}

.customer-fieldset .customer-form .privacy-wrap .privacy-scroll {
	max-height: 100px;
	line-height: 20px;
	font-size: 14px;
	background: #fff;
	overflow-y: auto;
	padding: 20px;
}

.customer-fieldset .customer-form .currency-note {
	line-height: 20px;
	font-size: 14px;
	font-weight: 400;
	font-style: italic;
	color: #777;
	margin-top: 10px;
}

.field-invalid-message {
	display: inline-block;
	margin: 10px 20px 0 -10px;
}

.field-invalid-message span {
	display: block;
	font-size: 13px;
	font-weight: 500;
	border: 2px solid #c1092b;
	color: #c1092b;
	padding: 5px 15px;
	text-transform: uppercase;
}

.field-invalid-message:before {
	display: block;
	content: "";
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-bottom: 8px solid #c1092b;
	margin-left: 6px;
}

#paymodes {
	background: #fff;
	font-size: 0;
	margin-top: 30px;
	padding: 27px 0 30px 30px;
}

#paymodes .paymodes-label {
	font-size: 22px;
	font-weight: 700;
	text-transform: uppercase;
	margin-right: 30px;
}

#paymodes .paymode-item {
	display: inline-block;
	margin: 30px 30px 0 0;
	text-align: center;
	vertical-align: top;
	position: relative;
}

#paymodes .paymode-item label {
	display: block;
	font-size: 13px;
	font-weight: 400;
	width: 150px;
	height: 150px;
	background: #f3f3f3;
	color: #000;
	border-radius: 50%;
	box-sizing: border-box;
	padding: 10px;
	cursor: pointer;
	text-transform: uppercase;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

#paymodes .paymode-item label.open {
	background: #c1092b;
	color: #fff;
}

#paymodes .paymode-item label.open .fa {
	color: #fff;
}

#paymodes .paymode-item label.open:hover {
	background: #c1092b;
}

#paymodes .paymode-item label.open:hover .fa {
	color: #fff;
}

#paymodes .paymode-item label:hover {
	background: #ddd;
}

#paymodes .paymode-item label:hover .fa {
	color: #aaa;
}

#paymodes .paymode-item label .fa {
	display: block;
	font-size: 50px;
	color: #d3d3d3;
	margin: 25px 0 4px 0;
	transition: all 0.1s;
	-webkit-transition: all 0.1s;
}

#paymodes .paymode-item input {
	position: absolute;
	top: 0;
	left: 0;
	visibility: hidden;
}

#paymodes .paymode-item span {
	display: block;
	line-height: 14px;
	height: 26px;
	overflow: hidden;
}

.paymode-info {
	display: none;
}

.paymode-info .paymode-desc {
	font-size: 16px;
	font-weight: 400;
	margin-top: 23px;
	padding-right: 30px;
}

.paymode-info .paymode-desc p {
	margin: 0;
}

.paymode-info .paymode-fieldset {
	font-size: 0;
	margin-top: 0;
}

.paymode-info .paymode-fieldset  > div {
	display: inline-block;
	font-size: 16px;
	font-weight: 400;
	margin: 15px 15px 0 0;
	vertical-align: top;
}

.paymode-info .paymode-fieldset  > div.paymode-month select, .paymode-info .paymode-fieldset  > div.paymode-sep select {
	background-position-x: 90%;
}

.paymode-info .paymode-fieldset  > div.paymode-focus {
	font-weight: 700;
	color: #0050a1;
	text-transform: uppercase;
}

.paymode-info label {
	display: block;
	width: 100%;
	height: 24px;
	font-size: 12px;
	font-weight: 400;
	padding: 0 10px;
	text-transform: uppercase;
	box-sizing: border-box;
}

.paymode-info input, .paymode-info select {
	display: block;
	width: 100%;
	height: 40px;
	line-height: 40px;
	font-family: "Calibre", sans-serif;
	font-size: 16px;
	background: transparent;
	color: #000;
	border: 1px solid #e5e5e5;
	box-sizing: border-box;
	padding: 0 10px;
	cursor: pointer;
	position: relative;
	z-index: 2;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
}

.paymode-info input option, .paymode-info select option {
	color: #000;
}

.paymode-info input:focus, .paymode-info select:focus {
	outline: none;
}

.paymode-info input.focused + label:after, .paymode-info select.focused + label:after {
	right: 0;
}

.paymode-info input.focused + label > div, .paymode-info select.focused + label > div {
	opacity: 0;
}

.paymode-info input.field-invalid + label:after, .paymode-info select.field-invalid + label:after {
	right: 0;
	background: #c1092b;
}

.paymode-info input {
	max-width: 165px;
}

.paymode-info select {
	min-width: 85px;
	background-image: url(../resources/images/portal/icon-arrow-down.png);
	background-position: 96% center;
	background-repeat: no-repeat;
	cursor: pointer;
}

.paymode-info select.paymode-select-full {
	padding-right: 40px;
}

.paymode-info .field-invalid {
	border-bottom: 2px solid #c1092b;
}

#cart {
	background: #fff;
	color: #000;
	padding: 27px 30px 30px 30px;
	box-sizing: border-box;
}

#cart .cart-title {
	font-size: 26px;
	text-transform: uppercase;
	border-bottom: 1px solid #000;
	padding-bottom: 22px;
}

#cart .mobile-cart {
	display: none;
	font-size: 26px;
	font-weight: 700;
	padding-right: 37px;
	text-transform: uppercase;
	cursor: pointer;
	position: relative;
}

#cart .mobile-cart i {
	margin-right: 3px;
}

#cart .mobile-cart span {
	position: absolute;
	top: 0;
	right: 0;
}

#cart .cart-details {
	margin-top: 17px;
	text-transform: uppercase;
}

#cart .cart-details  > div {
	margin-top: 6px;
}

#cart .cart-details  > div.cart-items {
	margin-top: 27px;
}

#cart .cart-details  > div.cart-items  > div {
	font-size: 0;
	margin-top: 6px;
}

#cart .cart-details  > div.cart-items  > div  > div {
	display: inline-block;
	font-size: 16px;
	vertical-align: top;
}

#cart .cart-details  > div.cart-items  > div  > div:last-child {
	font-weight: 700;
	margin-left: 5px;
}

#cart .cart-total {
	line-height: 30px;
	border-top: 1px solid #000;
	margin-top: 24px;
	padding-top: 20px;
	text-align: center;
	text-transform: uppercase;
}

#cart .cart-total b {
	display: block;
	font-size: 50px;
	color: #0050a1;
}

#cart .cart-total b span {
	font-size: 40px;
}

#cart .amount-confirm {
	height: 56px;
	line-height: 56px;
	font-size: 26px;
	font-weight: 700;
	background: #c1092b;
	color: #fff;
	margin-top: 30px;
	padding: 0 30px;
	box-sizing: border-box;
	cursor: pointer;
	text-align: center;
	text-transform: uppercase;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

#cart .amount-confirm:hover {
	background: #000;
}

.thank-you-tile {
	font-size: 0;
	background: url(../resources/images/portal/brand-texture.png) no-repeat left center #0050a1;
	color: #fff;
	padding: 38px 50px 50px 50px;
	text-align: center;
}

.thank-you-tile .thank-you-title {
	font-size: 60px;
	line-height: 60px;
}

.thank-you-tile .thank-you-subtitle {
	font-size: 24px;
	margin-top: 5px;
	text-transform: uppercase;
}

.thank-you-tile  > a {
	display: inline-block;
	width: 150px;
	height: 150px;
	line-height: 16px;
	font-size: 14px;
	font-weight: 400;
	color: #fff;
	border: 2px solid #fff;
	border-radius: 50%;
	box-sizing: border-box;
	margin: 50px 25px 0 25px;
	text-transform: uppercase;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.thank-you-tile  > a:hover {
	background: #fff;
	color: #0050a1;
}

.thank-you-tile  > a .fa {
	display: block;
	font-size: 50px;
	margin: 22px 0 3px 0;
}

.thank-you-tile  > a b {
	display: block;
}

.summary {
	font-size: 18px;
	background: #fff;
	padding: 30px;
	text-align: left;
}

.summary  > div {
	font-size: 0;
}

.summary  > div:nth-child(odd) {
	background: #f3f3f3;
}

.summary  > div:last-child {
	background: #0050a1;
	color: #fff;
}

.summary  > div  > div {
	display: inline-block;
	line-height: 28px;
	font-size: 18px;
	font-weight: 400;
	padding: 12px 20px;
	box-sizing: border-box;
	vertical-align: top;
}

.summary  > div  > div:first-child {
	width: 30%;
	text-transform: lowercase;
}

.summary  > div  > div:last-child {
	width: 70%;
	text-transform: uppercase;
}

.summary  > div  > div ul, .summary  > div  > div ol {
	margin: 0;
	padding: 0 0 0 20px;
}

.summary-table-wrap {
	background: #fff;
	margin-top: 30px;
	padding: 30px;
	text-transform: uppercase;
}

.summary-table-wrap .summary-table-label {
	font-size: 22px;
}

.summary-table-wrap .summary-table {
	display: table;
	width: 100%;
	margin-top: 25px;
}

.summary-table-wrap .summary-table  > div {
	display: table-row;
}

.summary-table-wrap .summary-table  > div:nth-child(odd) {
	background: #f3f3f3;
}

.summary-table-wrap .summary-table  > div:first-child {
	background: #0050a1;
	color: #fff;
}

.summary-table-wrap .summary-table  > div  > div {
	display: table-cell;
	font-size: 18px;
	font-weight: 400;
	padding: 12px 20px;
	box-sizing: border-box;
}

.summary-table-wrap .summary-table  > div  > div span {
	display: none;
}

.summary-table-wrap .summary-table  > div  > div:last-child {
	text-align: right;
}

.summary-table-wrap .summary-table a {
	display: inline-block;
	font-size: 16px;
	font-weight: 700;
	background: #fff;
	color: #c1092b;
	border: 2px solid #c1092b;
	box-sizing: border-box;
	padding: 5px 20px;
	cursor: pointer;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.summary-table-wrap .summary-table a:hover {
	background: #c1092b;
	color: #fff;
}

.summary-button {
	font-size: 0;
	background: #fff;
	margin-top: 30px;
	padding: 30px;
	overflow: hidden;
}

.summary-button a {
	display: inline-block;
	height: 54px;
	line-height: 52px;
	font-size: 16px;
	font-weight: 700;
	color: #c1092b;
	border: 2px solid #c1092b;
	box-sizing: border-box;
	margin-right: 30px;
	padding: 0 20px;
	cursor: pointer;
	text-transform: uppercase;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.summary-button a:last-child {
	float: right;
	margin-right: 0;
}

.summary-button a:hover {
	background: #c1092b;
	color: #fff;
}

.login-form {
	font-size: 0;
	margin-right: -30px;
	margin-bottom: 200px;
}

.login-form  > div {
	display: inline-block;
	width: 50%;
	width: calc(50% - 30px);
	background: #fff;
	margin-right: 30px;
	padding: 30px 0 30px 30px;
	box-sizing: border-box;
	vertical-align: top;
}

.login-form  > div form {
	font-size: 0;
}

.login-form .login-form-field {
	display: inline-block;
	width: 50%;
	width: calc(50% - 30px);
	margin-right: 30px;
	position: relative;
}

.login-form .login-form-field label {
	width: 100%;
	height: 40px;
	line-height: 40px;
	font-size: 16px;
	font-weight: 400;
	background: #fff;
	color: #000;
	position: absolute;
	top: 0;
	left: 0;
	padding: 0 10px;
	box-sizing: border-box;
}

.login-form .login-form-field label:after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 100%;
	left: 0;
	z-index: 2;
	height: 2px;
	background: #0050a1;
	transition: all 0.5s;
	-webkit-transition: all 0.5s;
}

.login-form .login-form-field label  > div {
	position: relative;
	display: block;
	width: 100%;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.login-form .recoverPasswordContent {
	padding-right: 30px;
}

.login-form .recoverPasswordContent .login-form-field {
	width: 100%;
}

.login-form .recoverPasswordContent .login-form-btn {
	margin-right: 0;
}

.login-form input {
	display: block;
	width: 100%;
	height: 40px;
	line-height: 40px;
	font-family: "Calibre", sans-serif;
	font-size: 16px;
	background: transparent;
	color: #000;
	border: 1px solid #e5e5e5;
	box-sizing: border-box;
	padding: 0 10px;
	cursor: pointer;
	position: relative;
	z-index: 2;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
}

.login-form input[type="submit"] {
	width: auto;
	height: 54px;
	line-height: 52px;
	font-weight: 700;
	background: #c1092b;
	color: #fff;
	padding: 0 20px;
	text-transform: uppercase;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.login-form input[type="submit"]:hover {
	background: #000;
}

.login-form input:focus {
	outline: none;
}

.login-form input.focused + label:after {
	right: 0;
}

.login-form input.focused + label > div {
	opacity: 0;
}

.login-form .login-form-btn {
	overflow: hidden;
	margin: 30px 30px 0 0;
}

.login-form .login-form-btn input, .login-form .login-form-btn .submitlogin-btn {
	float: right;
}

.login-form .login-form-btn .recoverPassword, .login-form .login-form-btn .recoverReturn, .login-form .login-form-btn .password-criteria {
	display: block;
	float: left;
	line-height: 16px;
	font-size: 14px;
	font-weight: 400;
	margin-top: 12px;
	cursor: pointer;
	vertical-align: middle;
	text-transform: uppercase;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.login-form .login-form-btn .recoverPassword:hover, .login-form .login-form-btn .recoverReturn:hover, .login-form .login-form-btn .password-criteria:hover {
	color: #0050a1;
}

.login-form .login-form-btn .recoverPassword b, .login-form .login-form-btn .recoverReturn b, .login-form .login-form-btn .password-criteria b {
	display: block;
}

.login-form .login-form-btn .submitlogin-btn {
	height: 54px;
	line-height: 52px;
	font-size: 16px;
	font-weight: 700;
	background: #c1092b;
	color: #fff;
	padding: 0 20px;
	box-sizing: border-box;
	cursor: pointer;
	text-transform: uppercase;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.login-form .login-form-btn .submitlogin-btn:hover {
	background: #000;
}

.recoverPasswordContent {
	display: none;
}

#loginmessages {
	display: none;
	line-height: 20px;
	font-size: 16px;
	font-weight: 400;
	border: 2px solid;
	padding: 10px 20px;
	margin: 0 30px 30px 0;
	box-sizing: border-box;
	text-align: center;
	text-transform: lowercase;
}

#loginmessages b {
	display: block;
	font-size: 20px;
	text-transform: uppercase;
}

#loginmessages.loginerrormessage {
	border-color: #c1092b;
	color: #c1092b;
}

#loginmessages.loginokmessage {
	border-color: #0050a1;
	color: #0050a1;
}

#changepassword  > div {
	margin: 30px 0 0 0;
}

#changepassword  > div  > div {
	display: block;
	width: 100%;
}

#changepassword .login-form-field {
	width: 33.333%;
	width: calc(33.333% - 30px);
}

#changepassword .password-details {
	display: none;
	font-size: 16px;
	font-weight: 400;
	border-top: 1px solid #e5e5e5;
	margin: 30px 30px 0 0;
	padding-top: 24px;
}

#changepassword .password-details ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#changepassword .password-details ul li {
	margin-bottom: 10px;
}

#changepassword .password-details ul li:last-child {
	margin: 0;
}

#changepassword .password-details ul li:before {
	display: inline-block;
	content: "\e080";
	font-family: "simple-line-icons";
	font-size: 24px;
	vertical-align: middle;
	margin-right: 8px;
}

.search-offers {
	position: absolute;
	top: 0;
	right: 0;
	left: 440px;
}

.offer-item {
	display: table;
	width: 100%;
	line-height: 20px;
	background: rgba(255, 255, 255, 0.9);
	color: #000;
	margin-top: 30px;
}

.offer-item  > div {
	display: table-cell;
	vertical-align: top;
}

.offer-item  > div:last-child {
	padding: 17px 20px 20px 20px;
}

.offer-item  > div:last-child  > i {
	display: block;
	font-size: 34px;
	margin-top: 10px;
	text-align: right;
}

.offer-item .offer-item-img {
	width: 173px;
	background-color: #f3f3f3;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.offer-item .offer-item-title {
	font-size: 20px;
	font-weight: 700;
	text-transform: uppercase;
}

.offer-item .offer-item-desc {
	margin-top: 11px;
}

.offer-item .offer-item-desc p, .offer-item .offer-item-desc ul, .offer-item .offer-item-desc ol {
	margin: 0;
	padding: 0;
}

.offers {
	text-align: left;
	padding-top: 30px;
}

.offers:last-child {
	padding-bottom: 30px;
}

.offers .hotel-details {
	background: #c1092b;
	color: #fff;
}

.sortby, .filterby {
	background: #fff;
	font-weight: 400;
	margin-top: 30px;
	padding: 23px 30px 30px 30px;
}

.sortby .sortby-label, .filterby .sortby-label {
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 3px;
}

.sortby .filterby-label, .filterby .filterby-label {
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 3px;
}

.sortby ul, .filterby ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.sortby ul li, .filterby ul li {
	margin-top: 10px;
	padding: 0 10px;
	border: 1px solid #e5e5e5;
	box-sizing: border-box;
}

.sortby ul li a, .filterby ul li a {
	display: block;
	height: 40px;
	line-height: 40px;
	font-size: 14px;
	font-weight: 500;
	color: #000;
	text-transform: uppercase;
	cursor: pointer;
}

.sortby ul li a i, .filterby ul li a i {
	float: right;
	margin-top: 13px;
}

.sortby ul li  > div, .filterby ul li  > div {
	display: none;
	font-size: 0;
	border-top: 1px solid #e5e5e5;
	padding-bottom: 15px;
}

.sortby ul li  > div  > div, .filterby ul li  > div  > div {
	display: inline-block;
	width: 50%;
	box-sizing: border-box;
	position: relative;
	margin-top: 15px;
	vertical-align: top;
}

.sortby ul li  > div  > div label, .filterby ul li  > div  > div label {
	display: block;
	line-height: 12px;
	font-size: 14px;
	padding-left: 20px;
	text-align: left;
	cursor: pointer;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.sortby ul li  > div  > div label:before, .filterby ul li  > div  > div label:before {
	content: "";
	width: 10px;
	height: 10px;
	position: absolute;
	top: 0;
	left: 0;
	border: 1px solid #000;
	cursor: pointer;
}

.sortby ul li  > div  > div label:after, .filterby ul li  > div  > div label:after {
	content: "";
	width: 12px;
	height: 12px;
	position: absolute;
	top: 0;
	left: 0;
	background: #000;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
	opacity: 0;
}

.sortby ul li  > div  > div label:hover:after, .filterby ul li  > div  > div label:hover:after {
	opacity: 1;
}

.sortby ul li  > div  > div input, .filterby ul li  > div  > div input {
	position: absolute;
	top: 0;
	left: 0;
	visibility: hidden;
}

.sortby ul li  > div  > div input:checked + label, .filterby ul li  > div  > div input:checked + label {
	color: #0050a1;
}

.sortby ul li  > div  > div input:checked + label:after, .filterby ul li  > div  > div input:checked + label:after {
	background: #0050a1;
	opacity: 1;
}

.lg-outer {
	text-align: left;
}

.lg-sub-html {
	font-family: "Calibre", sans-serif;
}

.lg-sub-html h2 {
	display: none;
}

.lg-outer .lg-thumb-item {
	border-radius: 0;
}

.lg-outer .lg-thumb-item.active, .lg-outer .lg-thumb-item:hover {
	border-color: #c1092b;
}

.modal-map {
	max-width: 1200px;
	position: fixed;
	top: 238px;
	right: 0;
	bottom: 30px;
	left: 0;
	z-index: 999;
	margin: 0 auto;
}

.modal-map  > div {
	height: 100%;
}

.modal-map .modal-close {
	position: absolute;
	width: 40px;
	height: 40px;
	right: -5px;
	top: -45px;
	background: url("../resources/images/close.png") no-repeat center center;
	cursor: pointer;
}

.static-map-image-conatiner {
	cursor: pointer;
	overflow: hidden;
	height: 100%;
}

.static-map-image {
	background-repeat: no-repeat;
	background-position: center;
	height: 100%;
}

.static-map-image-mini {
	background-repeat: no-repeat;
	background-position: bottom;
	height: 100%;
}

.modalbg {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 998;
	background: rgba(0, 0, 0, 0.9);
}

.marker {
	background: #126eb1;
	width: 49px;
	height: 49px;
	border: 2px solid #f0ede5;
	border-radius: 50px;
	border-bottom-right-radius: 0;
	border-radius: 50px;
	border-bottom-right-radius: 0;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}

.marker.active {
	background: #c1092b;
	z-index: 2;
}

.marker:before {
	content: "";
	position: absolute;
	top: 7px;
	left: 7px;
	width: 34px;
	height: 34px;
	background: #fff;
	border-radius: 50%;
}

.marker:after {
	content: "";
	position: absolute;
	top: 12px;
	left: 12px;
	width: 24px;
	height: 24px;
	border-radius: 50%;
}

.infowindow {
	display: none;
	height: auto !important;
	position: absolute;
	top: 30px;
	left: 30px;
	width: 300px;
	background: #fff;
	padding: 10px;
	box-sizing: border-box;
	box-shadow: rgba(0, 0, 0, 0.2) 5px 5px 0px;
}

.infowindow .infowindow-close {
	width: 30px;
	height: 30px;
	background: url("../resources/images/close.png") no-repeat center center;
	position: absolute;
	top: 15px;
	right: 15px;
	z-index: 200;
	cursor: pointer;
}

.infobox {
	line-height: 20px;
	font-size: 13px;
	font-weight: 400;
	color: #000;
}

.infobox .infobox-slider {
	height: 170px;
	background-color: #f3f3f3;
	margin-bottom: 17px;
}

.infobox .infobox-slider  > div {
	width: 100%;
	height: 170px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.infobox .infobox-title {
	font-size: 20px;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 5px;
}

.infobox .infobox-title i {
	display: block;
	font-size: 12px;
	letter-spacing: 1px;
	margin-top: 6px;
}

.infobox .infobox-price {
	font-size: 20px;
	font-weight: 700;
	margin-top: 14px;
	border-top: 1px solid #e5e5e5;
}

.infobox .infobox-price span {
	display: block;
	font-size: 11px;
	font-weight: 400;
	color: #999;
	margin-top: 13px;
	text-transform: uppercase;
}

.infobox .infobox-btn {
	display: block;
	height: 40px;
	line-height: 40px;
	background: #c1092b;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
	margin-top: 16px;
	padding: 0 20px;
	cursor: pointer;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
	box-sizing: border-box;
}

.infobox .infobox-btn:hover {
	background: #cc1b41;
}

.infobox-controls i {
	display: block;
	width: 30px;
	height: 30px;
	line-height: 28px;
	background: rgba(0, 0, 0, 0.4);
	color: #fff;
	font-size: 28px;
	border-radius: 50%;
	position: absolute;
	top: 140px;
	z-index: 200;
	cursor: pointer;
}

.infobox-controls i:first-child {
	left: 20px;
	letter-spacing: 2px;
}

.infobox-controls i:last-child {
	right: 20px;
	letter-spacing: -2px;
}

#tile {
	background: url(../resources/images/portal/brand-texture.png) no-repeat left center #c1092b;
	color: #fff;
	margin-top: 30px;
	padding: 47px 330px 43px 330px;
}

#tile .tile-title {
	font-size: 60px;
	line-height: 30px;
}

#tile .tile-title span {
	display: block;
	font-size: 24px;
	text-transform: uppercase;
	margin-top: 18px;
}

#tile ul {
	list-style: none;
	text-align: left;
	margin: 60px 0 0 0;
	padding: 0;
}

#tile ul li {
	font-size: 22px;
	line-height: 30px;
	margin-top: 30px;
}

#tile ul li:before {
	content: "";
	display: inline-block;
	width: 30px;
	height: 30px;
	background: url(../resources/images/portal/icon-list.png) no-repeat center center;
	margin-right: 10px;
	vertical-align: middle;
}

#poi {
	background: #fff;
	margin-top: 30px;
	padding: 24px 30px;
}

#poi .poi-title {
	font-size: 22px;
	text-transform: uppercase;
}

#poi .poi-title i {
	display: block;
	font-size: 30px;
	margin-top: 15px;
}

#poi .poi-list {
	font-size: 0;
}

#poi .poi-list ul {
	max-height: 300px;
	list-style: none;
	margin: 0;
	padding: 0;
	vertical-align: top;
	overflow: hidden;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

#poi .poi-list ul.open {
	max-height: 99999px;
}

#poi .poi-list ul li {
	display: inline-block;
	width: 33%;
	font-size: 16px;
	font-weight: 400;
	margin-top: 20px;
}

#poi .poi-list ul li span {
	font-weight: 700;
	color: #c1092b;
}

#poi .poi-list  > i {
	font-size: 30px;
	margin-top: 5px;
	cursor: pointer;
}

#poi .poi-list  > i.open:before {
	content: "\e607";
}

.hover-tip {
	display: none;
	position: absolute;
	background: rgba(0, 0, 0, 0.8);
	color: #fff;
	font-size: 12px;
	padding: 2px 10px;
}

.stepbar {
	margin-top: 30px;
	overflow: hidden;
}

.stepbar a {
	display: block;
	height: 50px;
	line-height: 50px;
	font-weight: 700;
	background: #c1092b;
	color: #fff;
	padding: 0 30px;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	cursor: pointer;
	transition: all 0.2s;
	-webkit-transition: all 0.2s;
}

.stepbar a:hover {
	background: #cc1b41;
}

.stepbar a.step-prev {
	float: left;
}

.stepbar a.step-next {
	float: right;
}

#footer {
	font-size: 16px;
	line-height: 22px;
	background: #000;
	color: #fff;
	padding: 44px 0;
	text-align: left;
}

#footer  > div {
	position: relative;
}

#footer a {
	color: #fff;
}

#footer .social {
	position: absolute;
	top: 6px;
	right: 0;
	font-size: 0;
}

#footer .social a {
	display: inline-block;
	font-size: 40px;
	margin-left: 20px;
}

#footer .footer-privacy {
	padding-top: 25px;
}

#footer .footer-privacy span a {
	font-weight: bold;
	cursor: pointer;
}

.stars1:before {
	content: "\f005";
}

.stars2:before {
	content: "\f005\f005";
}

.stars3:before {
	content: "\f005\f005S";
}

.stars4:before {
	content: "\f005\f005\f005";
}

.stars5:before {
	content: "\f005\f005\f005S";
}

.stars6:before {
	content: "\f005\f005\f005\f005";
}

.stars7:before {
	content: "\f005\f005\f005\f005S";
}

.stars8:before {
	content: "\f005\f005\f005\f005\f005";
}

.stars9:before {
	content: "\f005\f005\f005\f005\f005L";
}

.alert-mask {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9998;
	background: rgba(0, 0, 0, 0.8);
}

.alert {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 9999;
	width: 400px;
	font-size: 18px;
	font-weight: 400;
	background: #fff;
	color: #c1092b;
	margin: 10em auto 4em;
	cursor: auto;
	padding: 30px;
	text-align: center;
}

.alert b {
	display: block;
	font-size: 34px;
	margin-bottom: 3px;
	text-transform: uppercase;
}

.alert-close {
	position: absolute;
	width: 40px;
	height: 40px;
	right: 0;
	top: -40px;
	background: url("../resources/images/close.png") no-repeat center center;
	cursor: pointer;
	z-index: 2;
}

.loading-throbber {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(255, 255, 255, 0.8);
	z-index: 998;
}

.loading-throbber:before {
	content: "";
	width: 60px;
	height: 60px;
	background: none;
	border: 5px solid #c1092b;
	border-top-color: transparent;
	border-radius: 100%;
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -30px 0 0 -30px;
	animation: spin 1s infinite linear;
	-moz-animation: spin 1s infinite linear;
	-webkit-animation: spin 1s infinite linear;
}

@keyframes spin {
		100% {
		transform: rotate(360deg);
	}
	}

@-moz-keyframes spin {
		100% {
		transform: rotate(360deg);
	}
	}

@-webkit-keyframes spin {
		100% {
		transform: rotate(360deg);
	}
	}

@media (max-width: 1260px) {
	.wrapper {
		width: auto;
		padding-right: 30px;
		padding-left: 30px;
	}
	#header .menu {
		left: 254px;
	}
	#header .brand {
		right: 30px;
	}
	.header-submenu > div {
		width: 100%;
	}
	#header-country {
		right: 144px;
	}
	.modal-map {
		right: 30px;
		left: 30px;
	}
	#tile {
		padding-right: 50px;
		padding-left: 50px;
	}
	#tile ul {
		text-align: center;
	}
	#footer .social {
		right: 30px;
	}
	.hotel-list a .hotel-list-title {
		font-size: 1.8vw;
		line-height: 2vw;
	}
	.offer-item .offer-item-title {
		font-size: 1.8vw;
		line-height: 2vw;
	}
}

@media (max-width: 1024px) {
	#header {
		width: auto;
		height: 70px;
		background: #b21839;
		background: #ffffff;
	}
	#header .menu, #header #header-country, #header .header-submenu {
		display: none;
	}
	.nav {
		display: block;
	}
	.sidebar .sidebar-country  > div a {
		color: var(--menuTextColor);
	}
	#content {
		margin: 70px 0;
	}
	#search form .search-wrap {
		padding-right: 30px;
	}
	#search form input, #search form select {
		display: block;
		width: 100%;
		margin-right: 0;
	}
	#search form input.search-field-large, #search form select.search-field-large {
		width: 100%;
	}
	.page-action-bologna-home #search .search-wrap {
		padding-right: 10px;
	}
	.page-action-bologna-home #search form input, .page-action-bologna-home #search form select {
		display: inline-block;
		width: 50%;
		width: calc(50% - 20px);
		margin-right: 20px;
	}
	.page-action-bologna-home #search form input.search-field-large, .page-action-bologna-home #search form select.search-field-large {
		width: calc(100% - 20px);
	}
	.hotel-item .hotel-item-top  > div:first-child {
		display: none;
	}
	.hotel-item .hotel-item-top  > div:last-child {
		padding-bottom: 0;
	}
	.hotel-item .hotel-item-gallery {
		display: inline-block;
	}
	.hotel-item .hotel-item-sep {
		display: none;
	}
	.hotel-details .hotel-details-thumbs  > div {
		height: 50px;
	}
	.offer-item .offer-item-img {
		display: none;
	}
}

@media (max-width: 900px) {
	#main {
		margin-top: 70px;
	}
	#header .brand {
		display: none;
	}
	#header-country {
		right: 30px;
	}
	.slideshow-wrap, #slideshow {
		display: none;
	}
	.page-action-bologna-home #search .mobile-search {
		display: none;
	}
	.page-action-bologna-home #search .search-content, .page-action-bologna-home #search .search-title {
		display: block !important;
	}
	#search {
		padding-top: 30px;
	}
	#search form .search-wrap {
		width: 100%;
		position: relative;
		top: auto;
		left: auto;
		background: #0050a1;
		padding-right: 10px;
	}
	#search form .search-content, #search form .search-title {
		display: none;
	}
	#search .mobile-search {
		display: block;
	}
	.sortby {
		display: none;
	}
	.search-offers {
		position: relative;
		top: auto;
		right: auto;
		left: auto;
	}
	.right-column  > div {
		display: block;
	}
	.right-column  > div:first-child {
		width: auto;
		margin-right: -30px;
	}
	.right-column  > div:last-child {
		width: 100%;
		margin-top: 30px;
	}
	.left-column {
		padding-top: 0;
	}
	.left-column  > div {
		display: block;
	}
	.left-column  > div:first-child {
		width: 100%;
		margin-right: 0;
	}
	.left-column  > div:last-child {
		width: 100%;
		margin-top: 30px;
	}
	.cart-column  > div {
		display: block;
	}
	.cart-column  > div:first-child {
		float: none;
		width: 100%;
		margin-left: 0;
	}
	.cart-column  > div:last-child {
		width: 100%;
	}
	#cart-sticky-wrapper {
		height: auto !important;
	}
	#cart-sticky-wrapper #cart {
		position: relative !important;
		top: auto !important;
		bottom: auto !important;
		width: auto !important;
		margin-bottom: 30px;
	}
	#cart-sticky-wrapper #cart  > div:last-child, #cart-sticky-wrapper #cart .cart-title, #cart-sticky-wrapper #cart .cart-details {
		display: none;
	}
	#cart-sticky-wrapper #cart .mobile-cart {
		display: block;
	}
	.hotel-list a .hotel-list-title {
		font-size: 20px;
		line-height: 24px;
	}
	.offer-item .offer-item-title {
		font-size: 20px;
		line-height: 24px;
	}
}

@media (max-width: 768px) {
	.modal-map {
		top: 134px;
	}
	.right-column  > div:first-child {
		margin-right: 0;
	}
	.right-column  > div:first-child .content-label {
		margin-right: 0;
	}
	.hotel-list a {
		display: block;
		width: 100%;
		margin-right: 0;
	}
	.hotel-list a  > div:last-child {
		height: auto;
	}
	.hotel-item .hotel-item-bottom  > div {
		display: block;
		text-align: center;
	}
	.hotel-item .hotel-item-bottom  > div:first-child {
		max-width: none;
		padding-top: 0;
	}
	.hotel-item .hotel-item-bottom  > div:first-child img {
		margin-right: 10px;
		margin-left: 10px;
	}
	.hotel-item .hotel-item-bottom  > div:last-child {
		padding-top: 0;
	}
	.hotel-item .hotel-item-bottom  > div:last-child .hotel-item-more {
		margin-right: 0;
		margin-bottom: 16px;
	}
	.hotel-item .hotel-item-bottom  > div:last-child .hotel-item-more b {
		display: inline-block;
	}
	.hotel-item .hotel-item-bottom  > div:last-child .hotel-item-btn {
		display: block;
	}
	#poi .poi-list ul li {
		display: inline-block;
		width: 50%;
	}
	.login-form {
		margin-right: 0;
	}
	.login-form  > div {
		display: block;
		width: 100%;
		margin-right: 0;
	}
	.login-form  > div:last-child {
		margin-top: 30px;
	}
	.summary  > div {
		border-top: 1px solid #e5e5e5;
		padding: 7px 0 10px 0;
	}
	.summary  > div:nth-child(odd) {
		background: #fff;
	}
	.summary  > div:first-child {
		padding-top: 0;
		border: 0;
	}
	.summary  > div:last-child {
		color: #000;
		padding-bottom: 0;
	}
	.summary  > div:last-child  > div {
		font-weight: 700;
	}
	.summary  > div  > div {
		display: block;
		padding: 0;
	}
	.summary  > div  > div:first-child {
		width: 100%;
	}
	.summary  > div  > div:last-child {
		width: 100%;
	}
	.summary-table-wrap .summary-table {
		display: block;
	}
	.summary-table-wrap .summary-table  > div {
		display: block;
		border-top: 1px solid #e5e5e5;
		padding: 15px 0 20px 0;
	}
	.summary-table-wrap .summary-table  > div:first-child {
		display: none;
	}
	.summary-table-wrap .summary-table  > div:last-child {
		padding-bottom: 0;
	}
	.summary-table-wrap .summary-table  > div:nth-child(odd) {
		background: #fff;
	}
	.summary-table-wrap .summary-table  > div  > div {
		display: block;
		padding: 0;
	}
	.summary-table-wrap .summary-table  > div  > div span {
		display: inline-block;
		margin-right: 5px;
		text-transform: lowercase;
	}
	.summary-table-wrap .summary-table  > div  > div:last-child {
		padding-top: 10px;
		text-align: left;
	}
	.hotel-info-daily {
		display: block;
		margin: 10px 0;
	}
	.hotel-info-daily  > div {
		display: block;
	}
	.hotel-info-daily  > div:first-child {
		display: none;
	}
	.hotel-info-daily  > div  > div {
		display: block;
	}
	#footer .social {
		position: relative;
		top: auto;
		right: auto;
		margin-top: 10px;
	}
	#footer .social a {
		margin-top: 20px;
		margin-right: 20px;
		margin-left: 0;
	}
	#footer .footer-privacy span {
		display: block;
		font-size: 14px;
	}
	#footer .footer-privacy span.footer-privacy-divider {
		display: none;
	}
}

@media (max-width: 600px) {
	.customer-fieldset .customer-form .customer-label {
		margin-right: 0;
	}
	.content-label .sortby-map, .content-label .logout {
		display: block;
		float: none;
		margin-top: 6px;
	}
	.hotel-details .hotel-details-name {
		padding-right: 0;
	}
	.hotel-details .hotel-details-score {
		position: relative;
		top: auto;
		right: auto;
	}
	.hotel-details .hotel-details-price {
		position: relative;
		top: auto;
		right: auto;
		text-align: left;
	}
	.hotel-details .hotel-details-slider {
		display: none;
	}
	.hotel-rates  > div  > div {
		display: inline-block;
		width: 49.4%;
		vertical-align: top;
	}
	.hotel-rates  > div  > div.hotel-rates-qnt {
		display: block;
		width: 100%;
		margin-bottom: 20px;
		padding: 0;
	}
}

@media (max-width: 425px) {
	.hotel-item  > div.hotel-rates-info {
		padding-top: 0;
	}
	.customer-fieldset .customer-form {
		padding-right: 30px;
	}
	.customer-fieldset .customer-form .customer-field {
		display: block;
		width: 100%;
	}
	.customer-fieldset .customer-form .customer-field-full {
		margin-right: 0;
	}
	.customer-fieldset .customer-form .customer-check label {
		height: auto;
		line-height: 18px;
	}
	.customer-fieldset .customer-form .customer-check label:before, .customer-fieldset .customer-form .customer-check label:after {
		top: 4px;
	}
	.field-invalid-message {
		margin-right: -10px;
	}
	#paymodes {
		padding-right: 30px;
	}
	#paymodes .paymodes-label {
		margin-right: 0;
	}
	#paymodes .paymode-item {
		display: block;
		margin: 10px 0 0 0;
	}
	#paymodes .paymode-item label {
		width: 100%;
		height: auto;
		font-size: 14px;
		font-weight: 700;
		border-radius: 0;
		padding-bottom: 6px;
		text-align: left;
	}
	#paymodes .paymode-item label .fa {
		display: inline-block;
		font-size: 20px;
		margin: 0 5px 0 0;
	}
	#paymodes .paymode-item span {
		display: inline-block;
		height: auto;
	}
	.paymode-info .paymode-fieldset  > div {
		display: block;
		margin-right: 0;
	}
	.paymode-info .paymode-fieldset  > div.paymode-month, .paymode-info .paymode-fieldset  > div.paymode-sep {
		display: inline-block;
		width: 50%;
		width: calc(50% - 30px);
		margin-right: 30px;
	}
	.paymode-info input {
		max-width: none;
	}
	.paymode-info label {
		white-space: nowrap;
	}
	.login-form  > div {
		padding-right: 30px;
	}
	.login-form .login-form-field {
		display: block;
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}
	.login-form .login-form-btn {
		margin-right: 0;
	}
	.login-form .recoverPasswordContent {
		padding-right: 0;
	}
	#changepassword .login-form-field {
		width: 100%;
	}
	#poi .poi-list ul li {
		display: block;
		width: 100%;
		margin-top: 10px;
	}
	#tile {
		background-image: none;
		padding: 27px 30px 23px 30px;
	}
	#tile .tile-title {
		font-size: 14vw;
		line-height: 10vw;
	}
	#tile ul {
		margin-top: 7px;
		padding-top: 2px;
		border-top: 1px solid #fff;
	}
	#tile ul li {
		font-size: 18px;
		line-height: 20px;
		margin-top: 10px;
	}
	#tile ul li:before {
		width: 18px;
		height: 18px;
		background-size: cover;
		margin-right: 5px;
		vertical-align: bottom;
	}
	.summary-button a {
		display: block;
		width: 100%;
		height: auto;
		line-height: 24px;
		margin: 20px 0 0 0;
		padding: 5px 0;
		text-align: center;
	}
	.summary-button a:first-child {
		margin-top: 0;
	}
	.thank-you-tile {
		background-image: none;
		padding: 18px 30px 30px 30px;
	}
	.thank-you-tile .thank-you-title {
		font-size: 14vw;
		line-height: 10vw;
	}
	.thank-you-tile .thank-you-subtitle {
		font-size: 4vw;
		line-height: 4vw;
		margin-top: 20px;
		margin-bottom: 30px;
	}
	.thank-you-tile  > a {
		display: block;
		width: 100%;
		height: auto;
		line-height: 20px;
		border: 0;
		border-bottom: 1px solid #fff;
		border-radius: 0;
		margin: 0;
		padding: 10px 0;
	}
	.thank-you-tile  > a:last-child {
		padding-bottom: 0;
		border: 0;
	}
	.thank-you-tile  > a .fa {
		display: inline-block;
		font-size: 20px;
		margin: 0 5px 0 0;
	}
	.thank-you-tile  > a b {
		display: inline-block;
	}
	#footer {
		padding: 24px 0;
		text-align: center;
	}
	#footer .social a {
		margin-right: 10px;
		margin-left: 10px;
	}
}

@media (max-width: 375px) {
	#search form {
		padding-right: 30px;
	}
	#search form .search-content  > div {
		display: block;
		width: 100%;
	}
	#search form .search-content  > div.search-field-large {
		padding: 0;
	}
	#search .mobile-search {
		margin-right: 0;
		padding-right: 0;
	}
	#search .mobile-search i {
		display: none;
	}
	#cart .mobile-cart {
		padding-right: 0;
	}
	#cart .mobile-cart i {
		display: none;
	}
	.stepbar a {
		padding: 0 15px;
	}
}

@media (max-width: 320px) {
	#search form .search-field-large {
		font-size: 11px;
	}
	#search .mobile-search {
		font-size: 22px;
	}
	#cart .mobile-cart {
		font-size: 22px;
	}
	.login-form .login-form-btn {
		margin-top: 0;
		text-align: center;
	}
	.login-form .login-form-btn .recoverPassword, .login-form .login-form-btn .recoverReturn, .login-form .login-form-btn .password-criteria {
		float: none;
		margin-top: 0;
		margin-bottom: 16px;
	}
	.login-form .login-form-btn .recoverPassword b, .login-form .login-form-btn .recoverReturn b, .login-form .login-form-btn .password-criteria b {
		display: inline-block;
	}
	.login-form .login-form-btn input, .login-form .login-form-btn .submitlogin-btn {
		width: 100%;
		float: none;
	}
}

@media (max-height: 700px) {
	.infowindow-close {
		display: none;
	}
	.infobox .infobox-slider, .infobox .infobox-controls {
		display: none;
	}
}

@media (max-height: 500px) {
	.modalbg {
		z-index: 999;
	}
	.modal-map {
		top: 50px;
	}
}