﻿
/* =====================================================================
	product search
===================================================================== */

/* --- default search parts --- */
.productSearch
{
	width: 217px;
	/*background: url(../images/bg_vertbar_200.gif) repeat-y;*/
	font-size: 77%;
	margin: 0 0 10px 0;
	float: right;
}

.productSearch a.prodMltSrchLnk:hover

{
    text-decoration: none;
}

	.productSearch .accommodationSearchImg
	{
		height: 28px;
	}

	.productSearch .accommodationSearchImg h2
	{
		padding: 5px 0 0 20px;
		font-size: 100%;
		width: auto;
	}
	
	/*.productSearchTTD .accommodationSearchImg h2
	{
	    font-size: 15px !important;
	    padding-bottom: 8px !important;
	}*/
	
	.prodMltSrchControl
	{
		margin: 0 0 1px 0;
		display: block;
		clear: right;
	}
	
	.stage2 .prodMltSrchControl, .stage3 .prodMltSrchControl
	{
	    margin-bottom: 10px;
	}
	
	.stage2 .rightInside, .stage3 .rightInside
	{
	    bottom: 0 !important;
	    margin-bottom: 0;
	}

	.prodMltSrchControl .open .accommodationSearchImg
	{
		/*background: url(../images/bg_prodsearch_on.gif) no-repeat;*/
	}

	.prodMltSrchControl .open .accommodationSearchImg h2
	{
		color: #000;
	}
	
	.prodMltSrchControl .accommodationSearchImg h2
	{

	}

	.prodMltSrchControl .closed .accommodationSearchImg
	{
		/*background: url(../images/bg_prodsearch_off.gif) no-repeat;*/
	}
		
	#searchLast
	{
		margin: 0 0 10px 0;
	}
	
	.productSearch div.row
	{
		padding: 0 8px 8px 8px;
		width: 177px;
		overflow: auto;
	}

	.productSearch div.row div.row
	{
		padding: 0 0 5px 0;
		width: 180px;
		background: none;
		overflow: visible;
	}

	.productSearch div.row span.label
	{
		padding: 0 0 3px 0;
		width: 100%;
		font-weight: bold;
		font-size: 100%;
		display: block;
	}

	.productSearch div.row span.labelwide
	{
		font-weight: bold;
		width: 100%;
	}

	.productSearch div.row span.field
	{
		width: 100%;
	}


/* --- listed elements (defaulted) --- */
.refineByDefList
{
	margin: 0;
	padding: 0 8px 8px 8px;
	width: 177px;
}

.productSearchHome .refineByDefList
{
    width: 208px;
}

.productSearch dt
{
	font-weight: bold;
	padding: 3px 0 7px 0;
	font-size: 96%;
}

.productSearch dt label
{
	padding: 1px 0 0 0;
}

.productSearch dt.refine-availability label,
.productSearch dt.refine-grading label,
.productSearch dt.refine-price label,
.productSearch dt.refine-facility label,
.productSearch dt.refine-name label,
.productSearch dt.refine-tfa label,
.productSearch dt.tfa label
{
	background: url(/images/ico_expand.gif) no-repeat right;
	padding: 0 0 0 17px;
}

.productSearch dd
{
	padding: 0 0 5px 0;
	clear: both;
}

.productSearch dd.refine-awards
{
	position: absolute;
	right: 3000px;
	z-index: 0;
}

.productSearch dd span.field
{
	clear: both;
	background: none;
}

.productSearch dd span.field input
{
	width: 97%;
}

.productSearch dd div.row /* req reset */
{
	padding: 0 0 5px; 
}
	
/* --- form & standard elements --- */
.productSearch div.form 
{
	padding: 0; 
	margin: 0;
	width: auto;
}

	.productSearch form
	{
		padding: 10px 2px 3px 2px;
		width: 193px;
		overflow: hidden;
		clear: both;
		/*background: url(../images/bg_horizbarbot_200.gif) no-repeat bottom;*/
	}

	.productSearch form input,
	.productSearch form select
	{
		border: 1px solid #d6d6d6;
	}

	.productSearch form input.submit
	{
		border: none;
	}

	.productSearch form input.checkbox
	{
		border: none;
		float: left;
		margin: 0 3px 0 0;
	}

	.productSearch label
	{
		display: block;
	}

	.productSearch select
	{
		width: 97%;
	}

	.productSearch span.field input
	{
		width: 95%;
		padding:2px;
	}

	.productSearch span.field input.checkbox
	{
		margin-right: 5px;
		width: auto;
		padding: 0;
	}

/* --- category--- */
.productSearch .refine-category span.field label
{
	position: relative;
	margin: 0 0 4px 0;
	clear: both;
	padding-left: 20px;
}

	.productSearch .refine-category span.field fieldset
	{
		margin: 0 0 7px 0;
	}

	.productSearch .refine-category span.field label input
	{
		position: absolute;
		top: 0;
		left: 0;
	}

	.productSearch .refine-category span.field legend
	{
		font-weight: bold;
		font-size: 85%;
		margin: 2px 0;
	}

/* --- prices--- */
.productSearch dd.refine-price div.row, 
.productSearch dd.refine-grouptravel div.row
{
	margin: 0 0 5px 23px;
	width: 95%;
	background: none;
	overflow: auto;
	overflow: hidden;
}

.productSearch dd.refine-price div.row span.label,
.productSearch dd.refine-grouptravel div.row span.label
{
	padding: 3px 0 0 0;
	float: left;
	width: 35%;
	font-size: 90%;
	font-weight: normal;
}

.productSearch dd.refine-price div.row span.field,
.productSearch dd.refine-grouptravel div.row span.field
{
	float: left;
	width: 50%;
	clear: none;
}

.productSearch dd.refine-price div.row span.field input,
.productSearch dd.refine-grouptravel div.row span.field input
{
	width: 90%;
}

.refine-price .pricesSliderWrapper
.refine-price-nocollapse .pricesSliderWrapper 
{
	position: relative;
}

	.refine-price .pricesSliderWrapper p.pricerange,
	.refine-price-nocollapse .pricesSliderWrapper p.pricerange
	{
		text-align: center;
		margin: 0 0 5px 0;
		line-height: 1em;
		font-size: 90%;
	}

	.refine-price .pricesSliderWrapper .priceSlider,
	.refine-price-nocollapse .pricesSliderWrapper .priceSlider
	{
		width: 165px;
		margin: 0 0 20px 10px;
		position: relative;
		height: 30px;
	}
	.refine-price .pricesSliderWrapper .ui-widget-header,
	.refine-price-nocollapse .pricesSliderWrapper .ui-widget-header 
	{
		background-image: url(/images/sliderbar_dark.png) !important;
	}

	.refine-price .pricesSliderWrapper .ui-slider-horizontal,
	.refine-price-nocollapse .pricesSliderWrapper .ui-slider-horizontal
	{
		height: 6px !important;
		background: transparent url(/images/sliderbar_light.png) no-repeat left top !important;
	}

	.refine-price .pricesSliderWrapper .ui-widget-content .ui-state-default,
	.refine-price-nocollapse .pricesSliderWrapper .ui-widget-content .ui-state-default
	{
		background-image: url(/images/sliderarrow_low_dark.gif) !important;
		width: 8px !important;
		height: 15px !important;
	}

/* --- dates --- */
.productSearch div.refine-date div.row span.field
{
	width: 180px;
	float: right;
}

	.productSearch div.refine-date div.row span.calEndDate,
	.productSearch div.refine-date div.row span.calStartDate
	{
		width: 145px;
		float: none;
	}

	.productSearch div.refine-date div.row span.label
	{
		font-weight: normal;
	}

	.productSearch div.refine-date div.row span.field input#isostartdate,
	.productSearch div.refine-date div.row span.field input#isoenddate
	{
		clear: none; 
	}
	
	input#isostartdate,
	input#isoenddate
	{
		width: 170px;
		border: 1px solid #d6d6d6;
		padding: 2px;
	}

/* --- availability ---*/
.productSearch .refine-availability .calStartStayDate label.hidden
{
    display: none;
}

.productSearch .refine-availability .calStartStayDate div.row select
{
	width: auto;
}

.productSearch dd.refine-availability
{
	margin: 0 0 5px 0;
	border-bottom: 1px solid #d6d6d6;
}

.productSearch .refine-availability div.row
{
	padding: 3px 0 3px 0;
	width: 180px;
	overflow: auto;
	background: none;
}

.productSearch .refine-availability div.row span.labelwide
{
	font-weight: normal;
	padding: 0 0 3px 0;
	width: 180px;
	float: left;
	font-size: 90%;
}

.productSearch .refine-availability div.row span.fieldwide
{
	width: 180px;
}

.productSearch .refine-availability div.row span.fieldwide input
{
	width: 170px !important;
}

.productSearch .refine-availability div.row span.label
{
	width: 115px;
	padding: 3px 0 0 0;
	float: left;
	font-size: 90%;
	font-weight: normal;
}

.productSearch .refine-availability div.row select
{
	width: 40px;
}

.productSearch .refine-availability div.row .fuzzy
{
	width: 60px;
}

.productSearch dd.refine-availability div.row span.field
{
	width: 60px;
	float: left;
	clear: none;
}

.productSearch .refine-availability div.row span.field select
{
	float: right;
}

.productSearch .AddAnotherUnit
{
	padding: 2px 0 4px 2px;
}

.productSearch .AddAnotherUnit a
{
	padding: 0 0 0 12px;
	font-size: 75%;
	font-weight: bold;
	clear: both;
	background: url(/images/bullet_2.gif) no-repeat left;
	vertical-align: middle;
}

/* --- grading --- */
.productSearch dd.refine-grading div.row
{
	overflow: auto;
	padding: 0 0 0 15px;
	background: none;
}

.productSearch ul.gradingSearch
{
	font-size: 90%;
	float: left;
	width: auto;
	margin: 2px 5px 0 0;
}

.productSearch ul.gradingSearch li
{
	clear: both;
	min-width: 30px;
	list-style-type: none;
}

.productSearch ul.gradingSearch input.checkbox
{
	margin: 0 3px 3px 0;
}

.productSearch ul.gradingSearch label
{
	float: left;
	margin: 0 0 3px 0;
}

/* --- facilities (assume hardcoded accessibility) --- */
.productSearch dd.refine-facility fieldset
{
	border: none;
}

.productSearch dd.refine-facility legend
{
	display: none;
	border: none;
}

.productSearch dd.refine-facility ul
{
	margin: 0 0 0 5px;
	width: 97%;
	float: left;
}

.productSearch dd.refine-facility ul li
{
	clear: both;
	margin: 0 0 5px 0;
	list-style-type: none;
	font-size: 95%;
	float: left;
}

.productSearch dd.refine-facility ul li input.checkbox
{
	float: left;
	margin: 0 4px 5px 0;
}

.productSearch dd.refine-facility ul li label
{
	float: right;
	margin: 0 0 0 3px;
	padding: 0 0 4px 0;
	width: 145px;
}

/* --- tfa (no collaspse) ---*/
.productSearch dt.tfa 
{
	display: none;
}

.productSearch dd.refine-tfa-nocollapse #tfaLabel
{
	font-size: 86%;
    font-weight: bold;
    padding-top: 1px;
}

	.productSearch dd.refine-tfa-nocollapse span.field input.checkbox 
	{
		margin-right: 3px;
	}

/* --- submit button --- */
.productSearch div.submitContainer
{
	margin: 0 0 5px 0;
	padding: 5px 3px 0 !important;
	width: 189px;
	/*border-top: 1px solid #d6d6d6;*/
	overflow: visible;
}

.productSearch span.field input.submit
{
	width: 189px;
	height: 44px;
	padding: 0;
}

/* --- advanced - location search --- */
.productSearch ul.advanced
{
	margin: 5px 0 5px 10px;
	list-style-type: none;
}

.productSearch ul.advanced li
{
	padding: 0 0 2px 10px;
	list-style: none;
	clear: both;
	display: block;
	font-weight: normal;
	font-size: 100%;
	background: url("/images/bullet_2.gif") no-repeat scroll left center transparent;
}

.productSearch ul.advanced li a
{
    color: #9E3C0F;
}

/* =====================================================================
	REFINE SEARCH
===================================================================== */

.refineBy
{
	margin: 10px 0 10px 0;
	width: 224px;
	overflow: hidden;
	clear: both;
	float: right;
}

	.refineBy h2
	{
		margin: 0;
		padding: 3px 10px 0 10px;
		font-size: 160%;

		font-weight: lighter;
		letter-spacing: -0.05em;
	
	}

	.refineBy #refinesearch
	{
		padding: 0 0 3px 0;
	
	}

	.refineBy #refinesearch div.pnRefine
	{
		padding: 0 0 10px 0;
		font-size: 80%;
	}

	.refineBy #refinesearch h3
	{
		margin: 0 2px;
		padding: 0 8px 5px 8px;
		font-size: 95%;

		color: #b1b1b1;
		border-bottom: 1px solid #d6d6d6;
	}

	.refineBy #refinesearch fieldset
	{
		margin: 5px 0 0 0;
		position: relative;
		width: auto;
	}

	.refineBy #refinesearch fieldset legend
	{
		text-transform: capitalize;
		font-size: 100%;
		font-weight: bold;
		padding: 0 0 0 10px;
	}

	.refineBy #refinesearch fieldset legend a
	{
		float: left;
		padding: 3px 0 0 0;
		background: url(/images/ico_expand.gif) no-repeat left 0.3em;
		width: 10px;
		height: 10px;
	}

	.refineBy #refinesearch fieldset legend a img
	{
		float: left;
		padding: 0 4px 0 0;
		display: none;
	}

	.refineBy #refinesearch fieldset label
	{
		display: block;
	}

	.refineBy #refinesearch fieldset div.labelContainer
	{
		padding: 5px 0;
		margin: 0 10px;
	}

	.refineBy #refinesearch fieldset div.labelContainer fieldset
	{
		padding: 0;
	}

	.refineBy #refinesearch fieldset div.labelContainer legend
	{
		display: none; 
	}

	.refineBy #refinesearch fieldset div.labelContainer label
	{
		position: relative;
		margin: 0 0 4px 0;
		clear: both;
		padding-left: 20px;
	}

	.refineBy #refinesearch fieldset div.labelContainer span.removeItem, 
	.refineBy #refinesearch fieldset div.labelContainer span.addItem
	{
		position: absolute;
		top: 0;
		left: 0;
	}

	.refineBy #refinesearch fieldset.category fieldset legend
	{
		display: none;
	}

	.refineBy #refinesearch fieldset.category fieldset
	{
		margin: 0;
	}

	.refineBy .totalProducts
	{
		margin-left: 5px;
	}

	.refineBy span.removeItem
	{
		height: 16px;
	}

	.refineBy .scriptenabled input,
	label.hideFlyTo input
	{
		position: absolute;
		top: 2px;
		left: 0;
	}

	.refineBy .scriptenabled .addItem,
	.refineBy .scriptenabled .removeItem
	{
		width: 14px;
	}

/* ============================================================
    booking availability search (stage 1 booking)
===================================================================== */

.BookingAvailabilityMain
{
	width: 620px;
	margin: 0 0 10px 0;
	padding: 15px;
	background: #f6f6f6;
	clear: both;
}

	.BookingAvailabilityMain #availabilityCalendarTableWrapper
	{
		width: 620px;
	}

	.BookingAvailabilityMain p
	{
		padding-top: 1em;
		font-weight: bold;
		font-size: 85%;
		border-top: 1px solid #ccc;
	}

	.BookingAvailabilityMain .availabilitySearchImg
	{

	}

	.BookingAvailabilityMain .availabilitySearchImg h2
	{
		padding: 0 0 10px 0;
		background: none;
		background: url(/images/corner_650_grey_top.gif) no-repeat top;
	}

	.BookingAvailabilityMain .searchform
	{

	}

	.BookingAvailabilityMain .hidden
	{
		display: none;
	}

	.BookingAvailabilityMain div.row
	{
		padding: 5px 0;
		clear: both;
		display: block;
	}

	.BookingAvailabilityMain span.labelwide
	{
		width: 80px;
		float: left;
	}
	.BookingAvailabilityMain span.fieldwide
	{
		float: left;
	}

	.BookingAvailabilityMain span.labelwide, .BookingAvailabilityMain label, .BookingAvailabilityMain div.AddAnotherUnit a
	{
		font-size: 75%;
	}

	.BookingAvailabilityMain div.row span.label
	{
		width: 190px;
		float: left;
		margin: 4px 0;
	}
	.BookingAvailabilityMain div.row span.field
	{
		float: left;
		margin: 4px 0;
	}

	.BookingAvailabilityMain div.row select
	{
		font-size: 80%;
	}

	.BookingAvailabilityMain div.RoomReqs div.row
	{
		min-height: 20px;
		clear: both;
		margin-bottom: 5px;
	}

	.BookingAvailabilityMain div.AddAnotherUnit
	{
		margin-top: 5px;
		clear: both;
	}
	.BookingAvailabilityMain form div.AddAnotherUnit a
	{
		background: url(/images/bullet_1.gif) no-repeat left;
		padding-left: 12px;
		vertical-align: middle;
	}

	.BookingAvailabilityMain div.submitContainer
	{
		float: none;
		margin-top: 20px;
		overflow: auto;
	}

/* =====================================================================
    BLOCK UI LOADING MESSAGE
===================================================================== */

div.ProductListBlockElement
{
	width: 746px !important;
	border-color: #fff !important;
	padding: 1em 0 !important;
	border-width: 0 !important;
	position: absolute !important;
	top: -12px !important;
	left: -10px !important;
	height: 200px;
}

	.whatsNearby div.ProductListBlockElement
	{
		top: 12px !important;
		left: 0 !important;
	}

	.hprodsList div.blockElement
	{
		width: 726px !important;
		border-color: #fff !important;
		padding: 1em 0 !important;
		border-width: 0 !important;
		position: absolute !important;
		height: 200px;
		top: 50px !important;
		left: 10px !important;
	}

	div.ProductListBlockElement.loadingmessage
	{
		font-size: 90%;
	}

	div.RefineSearchSummaryBlockElement
	{
		width: 350px !important;
		border-color: #666 !important;
		border-width: 5px !important;
		padding: 1em !important;
	
		font-size: 90%;
	}

	div.UnitSelectionBlockElement
	{
		width: 724px !important;
		border-color: #666 !important;
		border-width: 5px !important;
		padding: 1em 0 !important;
		position: absolute !important;
		top: 0 !important;
		left: 10px !important;
	
		font-size: 90%;
	}

	div.ProductSearchBlockElement
	{
		width: 680px !important;
		padding: 10px !important;
		position: fixed !important;
		top: 10% !important;
		left: 50% !important;
		border: 5px solid #666 !important;
		z-index: 100000 !important;
		margin-left: -350px !important;
	
		font-size: 90%;
	}

	div.productAvailabilitySearchMessage,
	div.productSearchMessage
	{
		padding: 0;
		position: relative;
		z-index: 100000;
		margin: 0 auto;
		width: 100%;
		text-align: center;
	}

	div.productAvailabilitySearchMessage p.logo
	{
		margin: 0 0 10px 0;
		float: left;
		width: 45%;
	}

	div.productSearchMessage p.logo
	{
		position: relative;
		margin: 0 0 0.5em 0;
		padding: 0;
	}

	div.productAvailabilitySearchMessage .loading
	{
		margin: 0 0 5px 0;
		float: left;
		width: 40%;
	}

	div.productSearchMessage .loading
	{
		position: relative;
		margin: 0 0 0.5em 0;
		padding: 0.5em 0;
		text-align: center;
	}

	div.productAvailabilitySearchMessage .loading p.loadingAnimation
	{
		position: relative;
		margin: 25px 0 0 5px;
		padding: 0;
		text-align: left;
	}

	div.productSearchMessage .loading p.loadingAnimation
	{
		position: relative;
		margin: 0;
		padding: 0;
		text-align: center;
	}

	div.productAvailabilitySearchMessage .loading p.wait
	{
		position: relative;
		margin: 0 0 0 10px;
		padding: 0;
		text-align: left;
	}

	div.productSearchMessage .loading p.wait
	{
		position: relative;
		margin: 0 0 0 0;
		padding: 0;
		text-align: center;
	}

	div.productAvailabilitySearchMessage .messages
	{
		margin: 0 0 10px 0;
		clear: both;
		overflow: hidden;
	
		padding: 0 100px;
	}

	div.productAvailabilitySearchMessage .messages p.messageLeft
	{
		position: relative;
		margin: 0 0 5px 0;
		padding: 10px;
		padding-top: 40px;
		width: 200px;
		float: left;
		height: 90px;
		background: url(/images/bg_message_price.gif) no-repeat top;
	
		display: none;
	}

	div.productAvailabilitySearchMessage .messages p.messageMiddle
	{
		position: relative;
		margin: 0 10px 5px 10px;
		padding: 10px;
		padding-top: 40px;
		width: 200px;
		float: left;
		height: 90px;
		background: url(/images/bg_message_quality.gif) no-repeat top;
	}

	div.productAvailabilitySearchMessage .messages p.messageRight
	{
		position: relative;
		margin: 0 0 5px 0;
		padding: 10px;
		padding-top: 40px;
		width: 200px;
		float: left;
		height: 90px;
		background: url(/images/bg_message_security.gif) no-repeat top;
	}

	div.productAvailabilitySearchMessage p.message
	{
		position: relative;
		padding: 0 0 3px 0;
		text-align: center;
		clear: both;
		width: 100%;
		background: #cfc;
	}

	div.productAvailabilitySearchMessage p.messageBottom
	{
		margin: 0 0 5px 0;
	}
