/* OBM framework - September 2018 */
/* Resets Start */
html {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
*, *:before, *:after {
	-webkit-box-sizing: inherit;
	-moz-box-sizing: inherit;
	box-sizing: inherit;
}
a, a.moreInf, a.moreInfo, a.morePrice, a.showShoppingCart {
    font-weight: 400;
}
.realButton:hover, a.linkButton:hover {
	opacity: 1 !important;
}
/* Resets End */
/* STEP 1 START */
	/* Tabs Start */
	div#availabilitiesPage_tabPanelID {
	    margin-bottom: 20px;
	}
	span.tabLink {
	    text-transform: uppercase;
	    line-height: 20px;
	    padding: 20px 5px !important;
	}
	span.tabLink:before {
	    content: '';
	    display: inline-block;
	    margin-right: 5px;
	    width: 25px;
	    height: 25px;
	    line-height: 23px;
	    -moz-border-radius: 25px;
	    -webkit-border-radius: 25px;
	    border-radius: 25px;
	    background: #ffffff;
	    color: initial;
	}
	li.ui-state-default.ui-corner-top:nth-child(1) span.tabLink:before {
	    content: '1';
	}
	li.ui-state-default.ui-corner-top:nth-child(2) span.tabLink:before {
	    content: '2';
	}
	li.ui-state-default.ui-corner-top:nth-child(3) span.tabLink:before {
	    content: '3';
	}
	/* Tabs End */
	/* Price Assure Start */
	div#availabilityPage_bestChannelPricesContainerHeaderID {
	    height: 65px !important;
	    margin-bottom: 0;
	    opacity: 1!important;
	}
	div#availabilityPage_bestChannelPricesContainerBodyID {
	    border-width: 1px !important;
	}
	/* Price Assure End */
	/* Hotel Name and Basket Start */
	div#availabilitiesPage_frameBackgroundID {
	    display: block;
	    margin-bottom: 20px;
	    background-image: none;
	    clear: both;
	}
	div.hotelName {
	    display: block;
	    width: 100% !important;
	    text-align: center;
	}
	div.hotelName h2 {
	    display: block;
	    margin: 0;
	}
	.shoppingCartContainer {
	    display: block;
	    width: 100% !important;
	    margin-left: 0;
	    margin-right: 0;
	    text-align: center
	}
	#shoppingCartNumberOfRooms,
	.shoppingCartContainer .searchModule {
		vertical-align: middle;
		padding: 8px 0;
	}
	a.showShoppingCart:before {
	    content: 'Edit Basket - ';
	}
	#availabilitiesPage_reserveRoomButtonID {
		padding: 0 0 0 10px;
	}
	#availabilitiesPage_reserveRoomButtonID input {
		font-weight: 400 !important;
	}
	/* Hotel Name and Basket End */
	/* Search & Filter Start */
	div#availabilityPage_searchAndFiltersContainer {
		float: none;
		margin-bottom: 20px !important;
		padding: 4px 10px;
	}
	div#availabilityPage_searchAndFiltersContainer:after,
	div#availabilityPage_searchLabelsContainer:after {
		content: "";
		display: block;
		clear: both;
	}
	div#availabilityPage_searchAndFiltersContainer input[type="text"],
	div#availabilityPage_searchAndFiltersContainer select,
	div#availabilityPage_searchAndFiltersContainer .inputSmall {
		min-height: 34px !important;
		width: 100% !important;
		-webkit-appearance: none;
		padding-top: 8px;
		padding-bottom: 8px;
		background: #ffffff;
	}
	div#availabilityPage_filterAndSortButtonContainer {
		float: none;
	}
	div#availabilityPage_filterAndSortButtonContainer > div {
		margin-left: 0 !important;
		margin-right: 0 !important;
		display: inline-block;
	}
	#availabilityPage_filterAndSortButton {
		display:inline-block;
	}
	div#availabilityPage_searchLabelsContainer > div > label,
	div#availabilityPage_sortingLabelsCriteriaContainer > div > label {
		display: block;
		padding-top: 0 !important;
	}
	div#availabilityPage_searchLabelsContainer.availabilityPageVisibleDiv {
		float: none;
		display: -webkit-flex !important;
	    display: flex !important;
	    -webkit-flex-wrap: wrap;
	    flex-wrap: wrap;
	    -webkit-align-items: flex-end;
	    align-items: flex-end;
	}
	div#availabilityPage_searchLabelsContainer > div {
	   -webkit-flex: 1 0 11%;
	    flex: 1 0 11%;
	}
	div#availabilityPage_searchLabelsContainer > div#availabilityPage_searchButtonContainer {
		float: left !important;
	}
	div#availabilityPage_searchLabelsContainer #availabilityPage_searchButton {
		width: 100%;
		min-height: 34px;
		top: 0;
	}
	div#availabilityPage_sortingLabelsCriteriaContainer.availabilityPageVisibleDiv {
		float: none;
		display: -webkit-flex !important;
	    display: flex !important;
	    -webkit-flex-wrap: wrap;
	    flex-wrap: wrap;
	    -webkit-align-items: flex-end;
	    align-items: flex-end;
	    justify-content: center;
	}
	div#availabilityPage_sortingLabelsCriteriaContainer > div {
		float: none;
		display: inline-block;
	}
	div#availabilityPage_sortingLabelsCriteriaContainer > div:last-child {
		margin-right: 0;
	}
	/* Search & Filter End */
	/* Room View Start */
	.ui-button-icon-only .ui-button-text { background: none; }
	#roomViewAvlCalendarsID .ui-accordion-content div[style*="width: 515"] {
		width: 400px !important;
		float: left;
		margin-right: 20px;
	}
	div.mCSB_container,
	div.mCSB_container > div > table {
		width: 100% !important;
		border-collapse: collapse;
	}
	img.popHotelImg {
		position: relative;
		width: 100% !important;
		height: auto !important;
		margin: 0 !important;
		min-height: 250px;
		object-fit: cover;
		overflow: hidden;
		height: auto;
		max-height: 250px;
		cursor: pointer !important;
	}
	div.mCSB_container > div > table::before {
		content: '+';
		text-align: center;
		font-size: 30px;
		line-height: 55px;
		color: #fff;
		position: absolute;
		width: 60px;
		height: 60px;
		background-color: rgba(0,0,0,0.5);
		z-index: 1;
		right: 0;
		bottom: 5px;
		pointer-events: none;
	}
	/* Room View End */
	/* Room select popup Start */
	#dialogContainer div[id*="rateView_bookRoomDialog"],
	#dialogContainer div[id*="roomView_bookRoomDialog"] {
		position: static;
	}
	#dialogContainer .ui-dialog-content div[id*="rateView_roomBedConfigurationContainer"] + div > div:first-child,
	#dialogContainer .ui-dialog-content div[id*="roomView_roomBedConfigurationContainer"] + div > div:first-child {
		position: absolute;
		top: 0;
		right: 0;
	}
	#dialogContainer .ui-dialog-content div[id*="rateView_roomBedConfigurationContainer"] + div > div:first-child .popupRoomButton,
	#dialogContainer .ui-dialog-content div[id*="roomView_roomBedConfigurationContainer"] + div > div:first-child .popupRoomButton {
		margin: 0;
		font-size: 0;
		padding: 5px 10px !important;
	}
	#dialogContainer .ui-dialog-content div[id*="rateView_roomBedConfigurationContainer"] + div > div:first-child .popupRoomButton::after,
	#dialogContainer .ui-dialog-content div[id*="roomView_roomBedConfigurationContainer"] + div > div:first-child .popupRoomButton::after {
		content: "X";
		font-size: 12px;
	}
	#dialogContainer .ui-dialog-content div[id*="rateView_roomBedConfigurationContainer"] + div > div:last-child,
	#dialogContainer .ui-dialog-content div[id*="roomView_roomBedConfigurationContainer"] + div > div:last-child {
		float: none !important;
		text-align: center;
	}
	/* Room select popup End */
/* STEP 1 END */
/* STEP 2 START */
	#bookingDetailsPage_roomDetailsSectionID > div > p:nth-child(2):before {
	    content: 'Reservation Summary';
	    font-style: italic;
	    width: 100%;
	    display: block;
	    padding-bottom: 10px;
	    font-size: initial;
	}
	#bookingDetailsPage_roomDetailsSectionID > div > p:nth-child(2) {
	    padding-bottom: 20px;
	    text-align: center;
	    font-size: 150%;
	}
	#bookingDetailsPage_roomDetailsSectionID > div > p:nth-child(2) span.bold {
	    font-weight: 400;
	}
	#bookingDetailsPage_roomDetailsSectionID .infoHotel > p {
		line-height: 22px;
	}
	#bookingDetailsPage_usePreviouslyProfileSavingID .guestDetailRow:first-of-type .tableCell {
		vertical-align: top;
		line-height: 25px;
		width: 19% !important;
		float: left;
	}
	#bookingDetailsPage_usePreviouslyProfileSavingID .guestDetailRow label {
		display: block;
		line-height: 25px;
	}
	#bookingDetailsPage_usePreviouslyProfileSavingID .guestDetailRow input[type="checkbox"] {
		-webkit-transform: scale(1.5);
		-moz-transform: scale(1.5);
		-ms-transform: scale(1.5);
		-o-transform: scale(1.5);
		transform: scale(1.5);
		margin: 6px 9px 0 3px;
	}
	#bookingDetailsPage_usePreviouslyProfileSavingID .guestDetailRow:nth-child(2) { clear: both; }
	#bookingDetailsPage_usePreviouslyProfileSavingID .guestDetailRow:nth-child(2):after {
		display: block;
		content: "";
		clear: both;
	}
	#bookingDetailsPage_usePreviouslyProfileSavingID .guestDetailRow:nth-child(2) .tableCell[style*="float: right"] {
		float: none !important;
	}
	#bookingDetailsPage_usePreviouslyProfileSavingID .guestDetailRow:nth-child(2) .tableCell:last-of-type {
		margin-top: 0;
	}
	#bookingDetailsPage_usePreviouslyProfileSavingID .guestDetailRow:nth-child(2) .tableCell:last-of-type input {
		margin-left: auto;
	}
	#bookingDetailsPage_upsellItemsID,
	#bookingDetailsPage_usePreviouslyProfileSavingID,
	#bookingDetailsPage_detailsBookerInfoID,
	.large_info_secured.subscribeContainer,
	.large_info_secured.ex_medium,
	#bookingDetailsPage_saveProfileForFutureUseID,
	div#bookingDetailsPage_guestDetailsID {
		margin-bottom: 40px !important;
	}
	#bookingDetailsPage_upsellItemsID .border p.bold:first-of-type,
	#bookingDetailsPage_usePreviouslyProfileSavingID .border p.bold:first-of-type,
	#bookingDetailsPage_detailsBookerInfoID .border p.bold:first-of-type,
	.large_info_secured.ex_medium .border p.bold:first-of-type,
	#bookingDetailsPage_saveProfileForFutureUseID .border p.bold:first-of-type,
	#bookingDetailsPage_guestDetailsID .border p.bold:first-of-type {
		font-size: 150%;
	}
	form#bookForm .large_info_secured:last-of-type div[style="float: left;"] {
		text-align: center;
		width: 100%;
	}
	form#bookForm .large_info_secured:last-of-type div[style="float: left;"] p.bold {
		display: block !important;
	}
	form#bookForm .large_info_secured:last-of-type div[style="float: right;"] {
		float: none !important;
		clear: both;
		text-align: center;
	}
	form#bookForm .large_info_secured #makeResButtonID {
		font-size: 150%;
	}
/* STEP 2 END */
/* STEP 3 START */
	body.confirmation .large_info_holder > .large_info { padding-left: 20px; padding-right: 20px; }
	body.confirmation div.large_info, body.confirmation div.large_info_secured {
		max-width: 798px;
		width: 100%;
	}
	#confirmationPage_hotelDetailsID .border p.bold:first-of-type,
	#confirmationPage_stayAndEnhancementsDetailsID .stayDetails p.bold {
		font-size: 150%;
	}
	#confirmationPage_confirmationNumberDetailsID {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	#confirmationPage_hotelDetailsID ul {
		padding-left: 0;
	}
	#confirmationPage_hotelDetailsID div.border div.guestDetailRow div.tableCell {
		vertical-align: top;
	}
	#confirmationPage_hotelDetailsID div.border div.guestDetailRow div.tableCell:first-of-type {
		width: 40% !important;
	}
	#confirmationPage_hotelDetailsID div.border div.guestDetailRow div.tableCell:last-of-type {
		width: 40% !important;
	}
/* STEP 3 END */
/* Media Queries Start */
@media (max-width : 1024px) {

}
@media (max-width : 767px) {
	/* STEP 1 START */
	div#availabilitiesPage_tabPanelID { width: 88%; }
	.ui-tabs .ui-tabs-nav li { width: 100% }
	li.ui-state-default.ui-corner-top.tab.ui-state-disabled { display: none; }
	div#availabilityPage_bestChannelPricesContainerHeaderID { width: 12%; }
	div#availabilityPage_searchLabelsContainer > div { -webkit-flex: 1 0 48%; flex: 1 0 48%; }
	span.minRatePriceInfo { display: none; }
	.ui-dialog { width: 100% !important;max-width: 480px; }
	table.priceCalendar tr.headerRow > td:nth-child(5),
    table.priceCalendar tr.headerRow > td:nth-child(6),
    table.priceCalendar tr.headerRow > td:nth-child(7),
    table.priceCalendar tr.headerRow > td:nth-child(8),
    table.priceCalendar tr.headerRow > td:nth-child(9),
    table.priceCalendar tr.headerRow > td:nth-child(10),
    table.priceCalendar tr[id] td:nth-child(6),
    table.priceCalendar tr[id] td:nth-child(7),
    table.priceCalendar tr[id] td:nth-child(8),
    table.priceCalendar tr[id] td:nth-child(9),
    table.priceCalendar tr[id] td:nth-child(10) { display: none; }

	table.priceCalendar tr[id] td.roomSelector { display: block; }

    div#availabilityPage_specialOffersContainer,
    div.priceCalendarColumn { width: 100% !important; }
	div.priceCalendarColumn { margin-left: 0; margin-top: 20px; }
    div.specialOffer:after { content: ""; clear: both; display: block; }
    /* STEP 1 END */
    /* STEP 2 START */
    #bookingDetailsPage_usePreviouslyProfileSavingID .guestDetailRow:first-of-type .tableCell { width: auto !important; }
	#bookingDetailsPage_usePreviouslyProfileSavingID .guestDetailRow:first-of-type .tableCell:nth-child(3),
	#bookingDetailsPage_usePreviouslyProfileSavingID .guestDetailRow:first-of-type .tableCell:nth-child(5) { clear: left; }
	#bookingDetailsPage_usePreviouslyProfileSavingID .guestDetailRow:first-of-type .tableCell:nth-child(1),
	#bookingDetailsPage_usePreviouslyProfileSavingID .guestDetailRow:first-of-type .tableCell:nth-child(3) { width: 30% !important; }
	#bookingDetailsPage_usePreviouslyProfileSavingID .guestDetailRow:last-of-type .tableCell { width: auto !important; }
	#ccExpiryDateContainer, #ccIssueDateContainer { width: 100% !important; }
	#ccIssueNumberContainer, #ccCVCContainer { width: 50% !important; }
	#bookingDetailsPage_saveProfileForFutureUseID .guestDetailRow:after { content: ""; clear: both; display: block; }
	#bookingDetailsPage_saveProfileForFutureUseID .guestDetailRow .tableCell { float: left; width: auto !important; }
	#bookingDetailsPage_saveProfileForFutureUseID .guestDetailRow .tableCell:nth-child(3),
	#bookingDetailsPage_saveProfileForFutureUseID .guestDetailRow .tableCell:nth-child(5) { clear: left; }
	#bookingDetailsPage_saveProfileForFutureUseID .guestDetailRow .tableCell:nth-child(1),
	#bookingDetailsPage_saveProfileForFutureUseID .guestDetailRow .tableCell:nth-child(3) { width: 40% !important; }
	div#bookingDetailsPage_guestDetailsID.large_info_secured .border { overflow-y: visible; white-space: nowrap; overflow-x: scroll; }
	div#bookingDetailsPage_guestDetailsID.large_info_secured .guestDetailRow { min-width: 600px; }
	/* STEP 2 END */
}
@media (max-width : 600px) {
	/* STEP 1 START */
	div#availabilitiesPage_tabPanelID { width: 80%; }
	div#availabilityPage_bestChannelPricesContainerHeaderID { width: 20%; }
	span.tabLink { padding: 10px 5px !important; }
	div#availabilityPage_bestChannelPricesContainerHeaderID { height: 45px !important; }
	table.priceCalendar tr.headerRow > td:nth-child(4),
	table.priceCalendar tr[id] td:nth-child(5) { display: none; }
	#roomViewAvlCalendarsID .ui-accordion-content div[style*="width: 515"] { width: 98% !important; float: none; }
	/* STEP 1 END */
	/* STEP 3 START */
	#confirmationPage_hotelDetailsID div.half { width: 100%; }
	/* STEP 3 START */
}
@media (max-width : 480px) {
	/* STEP 1 START */
	table.priceCalendar tr.headerRow > td:nth-child(3),
	table.priceCalendar tr[id] td:nth-child(4) { display: none; }
	/* STEP 1 END */
	/* STEP 2 START */
	.infoHotel, .infoPrice { width: 100%; }
	.infoPrice { margin-bottom: 20px; }
	#bookingDetailsPage_detailsBookerInfoID .outerRow { display: block; }
	#bookingDetailsPage_detailsBookerInfoID .outerRow .columnTwo:after { content: ""; clear: both; display: block; }
	#bookingDetailsPage_detailsBookerInfoID .outerRow > div { width: 100%; margin: 0; }
	.large_info_secured.ex_medium .outerRow { display: block; }
	.large_info_secured.ex_medium .outerRow .columnTwo:after { content: ""; clear: both; display: block; }
	.large_info_secured.ex_medium .outerRow > div { width: 100%; margin: 0; }
	/* STEP 2 END */
}
/* Media Queries End */