@import url( /assets/css/generics.css );
@import url( /assets/css/slimbox.css );
@import url( /assets/css/vlaCal-v2.1.css );

/* sIFR */
	.sIFR-flash { visibility: visible !important; margin: 0; }
	.sIFR-replaced { visibility: visible !important; }
	span.sIFR-alternate {  position: absolute; left: 0; top: 0; width: 0; height: 0; display: block; overflow: hidden; }
	.sIFR-flash + div[adblocktab=true] { display: none !important; }
/* end of sIFR */

/* Page Global Styles */
	a { color: #666; text-decoration: none; outline: none; }
	a:hover { color: #000; text-decoration: underline; }
	.pageContainer { width: 716px; text-align : left; }
	.pageContainer .columnContainer { padding: 10px 0 0 29px; }
	.textCenter { text-align: center; }
	a.backToTop { padding-left: 10px; background: url( /assets/img/global/arrow_top.gif ) left 5px no-repeat; }
/* End of Page Global Styles */

/* Header */
	/* Top Navigation Bar */
		.headerContainer ul.topNavBar { background: url( ../img/global/tab_nav_middle.gif ) 0 10px repeat-x; padding: 10px 29px 10px 0; text-align: right; float: right; width: 469px; }
		.headerContainer ul.topNavBar li { float: left;  /* border-right: 1px solid #e5e5e5; */ }
		.headerContainer ul.topNavBar li.last { border-right: 0; }
		.headerContainer ul.topNavBar li a { float: left; padding: 7px 10px 7px 0px; color: #888; font: 12px Arial; }
		.headerContainer ul.topNavBar li a:hover { text-decoration: none; color: #000; }
		.headerContainer ul.topNavBar li.active { background: url( ../img/global/tab_nav_left-on.gif ) 0 0 no-repeat; }
		.headerContainer ul.topNavBar li.first a { padding: 7px 5px 7px 12px; }
		.headerContainer ul.topNavBar li.active a { padding: 7px 20px 7px 22px; color: #f90; background: url( ../img/global/tab_nav_right-on.gif ) 100% 0 no-repeat; }
		.headerContainer ul.topNavBar li.newsletterSignup { float: right; border: 0; }
		.headerContainer ul.topNavBar li.newsletterSignup a { font-weight: normal; font-style: italic; text-decoration: underline; background: url( ../img/global/orange_arrow.gif ) 0 50% no-repeat; padding-left: 10px; font-size: 10px; }
		.headerContainer ul.topNavBar li.newsletterSignup a:hover { text-decoration: underline; }
	/* End of Top Navigation Bar */

	/* Global Header */
		.headerContainer .globalHeader { padding: 8px 0 0 46px; clear: both; }
		.headerContainer .globalHeader h1 { padding-top: 2px; display: block; float: left; width: 162px; height: 35px; }
	
		/* Main Navigation */
			.headerContainer .globalHeader div.mainNavContainer { float: right; display: block; width: 487px; }
			.headerContainer .globalHeader div.mainNavContainer ul { border-bottom: 1px solid #fff; }
			.headerContainer .globalHeader div.mainNavContainer ul li { padding-right: 1px; padding-bottom: 1px; float: left; }
			.headerContainer .globalHeader div.mainNavContainer ul li a { font: 9px Arial; text-align: center; font-size: 10px; display: block; color: #888; background-color: #eee; }
			.headerContainer .globalHeader div.mainNavContainer ul li a:hover { text-decoration: none; background-color: #e0e0e0; color: #000; }
			
			body.hotel .headerContainer .globalHeader div.mainNavContainer ul li a { padding: 1px 0; width: 89px; }
			body.foundation .headerContainer .globalHeader div.mainNavContainer ul li a { padding: 1px 0; width: 149px; }
		/* End of Main Navigation */
	/* End of Global Header */
	
	/* Page Header */
		body.hotel .headerContainer .pageHeader .stonesLeft { background-image: url( /assets/img/hotel/rocks_empty.jpg ); }
		body.foundation .headerContainer .pageHeader .stonesLeft { background-image: url( /assets/img/foundation/rocks_empty.jpg ); }
		body.negril_guide .headerContainer .pageHeader .stonesLeft { background-image: url( /assets/img/negril_guide/rocks_empty.jpg ); }
		.headerContainer .pageHeader  .stonesLeft { float: left; background-position: left top; background-repeat: no-repeat; width: 229px; height: 300px; }
		.headerContainer .pageHeader .stonesLeft p { padding: 15px 10px 0 37px; color: #333; font: 17px Arial; }
		.headerContainer .pageHeader .stonesLeft p span.author { padding-top: 10px; display: block; font: 10px Arial; }
		.headerContainer .pageHeader .stonesLeft p span.source { display: block; font: 10px Arial; }
		.headerContainer .pageHeader { padding-top: 21px; background: url( ../img/global/pageHeader_rocks_right.jpg ) 100% 100% no-repeat;}
		.headerContainer .pageHeader img { float: left; }
/* End of Header */

/* Content Container */
	.columnContainer .contentColumn { height: auto !important; height: 400px; min-height: 400px; }
	.columnContainer .contentColumn img.right { padding: 0 0 20px 20px; float: right; }
	.columnContainer .contentColumn p { padding: 0 0 10px 20px; }
	.columnContainer .contentColumn .video { text-align: center; padding-bottom: 7px; }
	.columnContainer .contentColumn p strong.architect { display: block; padding-bottom: 5px; }
	.columnContainer .contentColumn p a { color: #f90; }
	.columnContainer .contentColumn p a:hover { color: #f60; text-decoration: none; }
	.columnContainer .contentColumn h3 { padding: 0 0 10px 20px; font-size: 30px; line-height: 30px; color: #fff; }
	.columnContainer .contentColumn h4 { padding-left: 20px; }
	.columnContainer .contentColumn ul { margin: 0; padding: 0 0 10px 60px; }
	.columnContainer .contentColumn ul li { margin: 0; padding: 0; }
/* End of Content Container */

/* Footer */
	/* Global Header Footer */
		.footerContainer { padding: 5px 20px; width: 700px; background-color: #f0f0f0; }
		.footerContainer .copyright { float: right; }
		.footerContainer .contactInfo { margin-top: -86px; position: relative; float: left; width: 200px; background-color: #f5f5f5 ;}
		.footerContainer .contactInfo p { padding: 10px; }
		.footerContainer .contactInfo dl { padding: 0 10px 10px; }
		.footerContainer .contactInfo dl dt { float: left; display: block; font: bold 10px Arial; clear: left; width: 12px; }
		.footerContainer .contactInfo dl dd { float: left; display: block; font: 10px Arial; width: 100px; }
		.footerContainer .contactInfo dl dd a { font: 10px Arial; }
	/* End of Global Footer */
	
	/* Home Page Footer */
		.homePageFooterContainer { width: 590px; margin: 0 auto; text-align: left; padding: 15px 30px; background-color: #f0f0f0; color: #888; }
		.homePageFooterContainer img { float: left; margin-right: 15px; }
		.homePageFooterContainer p { float: left; width: 470px; }
		.homePageFooterContainer p.intro { padding-bottom: 8px; }
		.homePageFooterContainer p a { text-decoration: underline; padding-left: 10px; background: url( ../img/global/grey_arrow.gif ) 0 50% no-repeat; }
	/* End of Home Page Footer */
/* End of Footer */

/* Reviews Nav */
	ul.reviewsNav { padding: 17px 0 80px 6px; }
	ul.reviewsNav li { font: 10px Arial; text-transform: uppercase; }
	ul.reviewsNav li ul { padding: 4px 2px 27px 0; }
	ul.reviewsNav li ul li { text-transform: none; border-bottom: 2px solid #fff; background: url( ../img/global/arrow_off.gif ) left center no-repeat; }
	ul.reviewsNav li ul li.active { background-image: url( ../img/global/arrow_on.gif ); }
	ul.reviewsNav li ul li.active a, ul.reviewsNav li ul li.on a:hover { color: #000; background-color: #ccc; }
	ul.reviewsNav li ul li a { position: relative; color: #000; margin-left: 17px; display: block; background-color: #eee; padding: 4px; }
	ul.reviewsNav li ul li a:hover { color: #000; text-decoration: none; background: #e0e0e0; }
/* End of Reviews Nav */

/* Negril Guide Nav */
	ul.guideNav { margin: 10px 20px 100px; width: 160px;}
	ul.guideNav li span { display: block; padding: 3px; text-transform: uppercase; background-color: #ccc; }
	ul.guideNav ul { }
	ul.guideNav ul li { padding: 0; border-top: 1px solid #fff; } 
	ul.guideNav ul li a { color: #000; text-align: center; padding: 3px 0; display: block; width: 160px; text-transform: none; background-color: #eee; }
	ul.guideNav ul li.on a, ul.guideNav ul li.on a:hover { background-color: #e0e0e0; }
	ul.guideNav ul li a:hover { text-decoration: none; background-color: #f5f5f5; }
 	

/* End of Guide Nav */

/* Home Page Styles */
	body.homepage { text-align: center; }
	body.homepage .designHotels { width: 650px; margin: 10px auto; text-align: right; }
	body.homepage .splashPage { width: 650px; margin: 20px auto; text-align: left; }
	body.homepage .splashPage .rightColumn img { display: block; }
	body.homepage .splashPage a.enter { display: block; text-indent: -9999px; overflow: hidden; height: 30px; width: 325px; background: url( /assets/img/homepage/btn_enter-off.gif ) left top no-repeat; }
	body.homepage .splashPage a.enter:hover { background-image: url( /assets/img/homepage/btn_enter-over.gif ); }
	body.homepage .splashPage img.introText { padding-top: 1px; float: left; border: 0; }
/* End of Home Page Styles */

/* Left Column */
	.columnContainer { padding: 10px 0 0 29px; }
	.columnContainer .leftColumn { float: left; width: 200px; border-top: 2px solid #ccc; }
	.columnContainer .leftColumn #sidePageImage { padding-top: 10px; text-align : center; }
	.columnContainer .leftColumn p.donateLink { padding: 10px; text-align: center; }
/* End of Left Column */

/* Left Navigation */
	.columnContainer .leftColumn .leftNav p { padding: 15px 5px 0; }
	.columnContainer .leftColumn .leftNav ul { width: 199px; padding-top: 5px; }
	.columnContainer .leftColumn .leftNav ul li { border-bottom: 1px solid #fff; }
	.columnContainer .leftColumn .leftNav ul li a { text-align: center; color: #333; background-color: #eee; display: block; width: 195px; padding: 4px 2px; }
	.columnContainer .leftColumn .leftNav ul li a:hover { background-color: #e0e0e0; text-decoration: none; }
	.columnContainer .leftColumn .leftNav ul li.active a, .columnContainer .leftColumn .leftNav ul li.active a:hover { background-color: #ccc; }

/* End of Left Navigation */

/* Main Content Column */
	.columnContainer .contentColumn { float: left; width: 450px; border-top: 2px solid #eee; }
/* End of Main Content Column */

/* Rates Nav */
	ul.ratesNav { padding: 53px 0 0 0; }
	ul.ratesNav li { border-bottom: 1px solid #fff; }
	ul.ratesNav li.header { text-transform: uppercase; padding: 5px; background-color: #ccc; }
	ul.ratesNav li a { color: #f90; display: block; padding: 5px 5px 5px 13px; background: #eee url( /assets/img/global/bullet_arrow.gif ) left center no-repeat; }
	ul.ratesNav li a:hover { text-decoration: none; color: #f60; }
/* End of Rates Nav */

/* Rates Table */
	table.rates { border-left: 1px solid #fff; border-top: 1px solid #fff; margin: 0 18px 10px 18px; width: 100%; }
	table.rates tbody tr.alt td { background-color: #efefef; }
	table.rates .roomType { width: 250px; }
	table.rates .summerRates { text-align: center; }
	table.rates .winterRates { text-align: center; }
	table.rates td, table.rates th { border-right: 1px solid #fff; border-bottom: 1px solid #fff; padding: 4px; }
	table.rates th.roomType { background-image: url( /assets/img/global/arrow_down.gif ); background-position: 240px center; background-repeat: no-repeat; }
	table.rates th { text-align: left; font-weight: normal; background-color: #ccc}
/* End of Rates Table */

/* Newsletter */
	.lightboxContainer { position: absolute; top: 0; left: 0; background-color: #666; filter:alpha(opacity=70); -moz-opacity: 0.7; opacity: 0.7; z-index: 100; }
	.fixSelect select { visibility: hidden !important; }
	.fixSelect .flash { visibility: hidden; }
	.fixSelect .undoFixSelect .flash { visibility: visible; }
	.fixSelect .undoFixSelect select { visibility: visible !important; }
	.newsletterWindowContainer { position: fixed; _position: absolute; z-index: 1000; top: 30px; width: 100%; }
	.newsletterWindow { margin: auto; width: 550px; background: #fff;  border: 1px solid #000; padding: 10px; }
	.newsletterWindow table .field { width: 112px; text-align: right; }
	.newsletterWindow table td { padding: 3px; }
	.newsletterWindow table td.fieldInput { white-space: nowrap; }
	.newsletterWindow select { float: left; margin-right: 4px; }
	.newsletterWindow h3 { font-size: 16px; padding-bottom: 3px; }
	.newsletterWindow .closeButton { float: right; margin: -10px -10px 0 0; width: 20px; height: 20px; background: url( ../img/global/close_button.gif ) 50% 50% no-repeat; }
/* End of Newsletter */

/* accordion */
	.columnContainer .accordion { padding-bottom: 20px; }
	.columnContainer .accordion h4 { margin: 0 0 5px 20px; background-color: #cacaca; padding: 0; }
	.columnContainer .accordion h4 a { font-size: 11px; font-weight: bold; text-transform: uppercase; display: block; text-color: #fff; padding: 6px 0 6px 14px; }
	.columnContainer .accordion h4 a:hover,.columnContainer .accordion h4 a.active { color: #000; text-decoration: none; }

	.columnContainer .contentColumn .splitList  ul {  list-style: none; padding: 0 15px 0 0; }
	.columnContainer .contentColumn .splitList ul li { font-size: 11px; padding: 4px 0 4px 11px; background: url( ../img/global/lt_blue_bullet.gif ) 0 9px no-repeat; }
	.columnContainer .contentColumn .splitList ul.noListStyle li { background: none; padding: 0; }
	.columnContainer .contentColumn ul.sponserLogos { padding: 0 0 0 15px; margin-bottom: 15px; border-bottom: 1px solid #f1f1f1; }
	.columnContainer .contentColumn ul.sponserLogos li { float: left; height:60px; text-align:center; width:108px; }
	.columnContainer .splitList { padding: 0 0 20px 20px; }
	.columnContainer .splitList ul { float: left; width: 200px; }
/* end of accordion */

/* reservation form */
	.errorSubmit, .successfulSubmit { display: none; }
	.formSubmittedSuccessfully .successfulSubmit { display: block; padding-right: 10px; }
	.formSubmittedErrored .errorSubmit { display: block; }
	
	.columnContainer .contentColumn .reservationForm p.big { font-weight: bold; font-size: 16px;}
	.columnContainer .contentColumn .errorSubmit { margin: 0 10px; padding: 10px 10px 0; background-color: #fee; border: 1px solid #f00; color: #f00; }
	.columnContainer .contentColumn .errorSubmit p { padding: 0 0 10px; }
	.columnContainer .contentColumn .errorSubmit p a { font-weight: bold; color: #f00; }
	.columnContainer .contentColumn .errorSubmit p a:hover { text-decoration: underline; }
	
	.formSubmittedSuccessfully .mainForm, .formSubmittedErrored .mainForm { display: none; }
	.reservationForm .checkErrorsMessage { display: none; }
	.showErrorMessage .checkErrorsMessage { display: block; color: #f00; font-weight: bold; font-size: 12px; }
	
	.required { color: #d4a704; font-weight: bold; }
	.error label, .error .required { color: #f00; }
	.columnContainer .contentColumn p.required { text-align: right; color: #cacaca; }
	.contentColumn .reservationForm p { padding-left: 15px; }
	.contentColumn .reservationForm { background-color: #f1f1f1; padding: 15px 0 10px; margin-bottom: 10px; margin-left: 20px; }
	.contentColumn .reservationForm .halfField { float: left; width: 200px; }
	.contentColumn .reservationForm input, span.fakeTextBox, 
	.contentColumn .reservationForm select { border-width: 1px;  border-color: #828183; border-bottom-color: #f9f8f9; border-right-color: #f9f8f9; font-size: 11px; background-color: #fff; }
	span.fakeTextBox { padding-left: 3px; padding-right: 3px; background-color: #ddd; border-style: solid; }
	.error span.fakeTextBox  { border: 0; background-color: transparent; font-size: 10px; padding-left: 0; }
	.contentColumn .reservationForm .halfField input { width: 180px; }
	.contentColumn .reservationForm .fullField input { width: 400px; }
	.contentColumn .reservationForm .halfField select { width: 185px; }
	.contentColumn .reservationForm .inlineField label { float: left; padding-right: 5px; }
	.contentColumn .reservationForm .thirdField { float: left; width: 120px; }
	.contentColumn .reservationForm .calendar input { text-align: center; }
	.contentColumn .reservationForm .calendar .pickerImg { position: relative; left: -15px; top: 1px; margin-right: -15px; }
	.contentColumn .reservationForm label { font-weight: bold; display: block; }
	.contentColumn .reservationForm p.additionalQuestionsField { border-top: 1px solid #dedede; margin: 10px 20px 0; padding: 15px 0 0 0; }
	.contentColumn .reservationForm p.additionalQuestionsField textarea { width: 392px; margin-top: 6px; font-size: 11px; font-family: arial; height: 60px; }
	.contentColumn .reservationForm p.buttonContainer { text-align: right; padding: 10px 17px 5px 0; }
	.contentColumn .reservationForm .roomCountField input { width: 30px; }
/* end of reservation form */


/* newsletter 'overrides' */
	.newsletterContainer p.newsletterHeading { font-size: 17px !important; font-weight: bold; padding-top: 10px !important;  }
	.newsletterContainer * { font-size: 11px !important; }
	.newsletterContainer { padding-left: 20px; }
	.newsletterContainer ul { padding-left: 30px !important; }
	.newsletterContainer p { padding: 0 0 10px 0 !important; margin: 0; }
	.newsletterContainer .newsletterCategories tr td { padding: 3px 0; }
	.newsletterContainer .newsletterCategories tr td a { text-decoration: underline; font-size: 13px; }
	.newsletterContainer .newsletterCategories tr td a:hover { text-decoration: none; }
/* end of overrides */

.pushcartBox { margin-top: 20px; border: 1px solid #e0e0e0; }
.pushcartBox p { padding: 10px; text-align: center; background-color: #e0e0e0; font-size: 12px; font-weight: bold; color: #888;}
.pushcartBox p a { color: #f90; font-size: 12px; font-weight: bold; display: block; _height: 1px; margin-top: 2px; }
