html {
	overflow-y: scroll; /* fixes scrollbar induced jog on vertical growth */
}
body, td {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	color: #333333;
}
h1, h2, h3, h4 {
	padding: 0px 0px 13px 0px;
	margin: 0px 0px 0px 0px;
}
p {
	margin-top: 10px;
	margin-bottom: 0px;
	margin-right: 0px;
	margin-left: 0px;
}
p.first {
	margin-top: 0px;
}
.center {
	text-align: center;
}
h1 {
	color: #CC3333;
	font-size: 16px;
	margin-bottom: 8px;
	padding-bottom: 0px;
}
h2 {
	color: #676767;
	font-size: 14px;
}
h3 {
	font-size: 12px;
}
#innerContainer {
	width: 100%;
	border-collapse: collapse;
}
#innerContainer td {
	text-align: left;
	vertical-align: top;
}
#primaryContent {
	padding: 0;
}
#secondaryContent {
	width: 190px;
	padding: 0 10px 0 0;
}
#primaryContentHomePage {
	width: 496px;
	padding: 0;
}
#secondaryContentHomePage {
	padding: 0 0 0 10px;
}
#secondaryContentSubHomePage {
	padding: 16px 0 0 0;
	width: 541px;
}
#secondaryContentSubHomePage .lodgingCell {
	width: 326px;
	padding-right: 10px;
}
#secondaryContentSubHomePage .eventsCell {
	width: 205px;
}
#secondaryContentHomePage h3, #secondaryContentSubHomePage h3 {
	padding-bottom: 0px;
	margin-bottom: 0px;
}
#secondaryContentHomePage hr, #secondaryContentSubHomePage hr {
	border: 0;
	color: #999999;
	background-color: #999999;
	height: 1px;
	width: 100%;
	padding-top: 0;
	margin-top: 0;
}

/* Navigation */
#navigation {
	display: none;
}
#navTownsInner {
	visibility: visible;	/* might as well have it visible right? fixes an IE bug */
	height: 12.75em;
	overflow: auto;
}
#navCrossCountryCentersInner {
	visibility: visible;	/* might as well have it visible right? fixes an IE bug */
	height: 12.75em;
	overflow: auto;
}

/* Home tab view */
#homeTabView {
	display: none;
}

/* Home page maps */
.hpmImages {
	position: relative; /* required */
	margin: 0;
	border: 0;
	padding: 0;
}
.hpmImages img {
	margin: 0;
	border: 0;
	padding: 0;
}
.hpmImages .overlay {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 10;
	visibility: hidden;
}
.hpmImages .transparency {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 20;
}

/* Text search */
#textSearchForm {
	margin: 0;
	border: 0;
	padding: 0;
}
#textSearchCtr {
	margin-top: 16px;
	margin-bottom: 16px;
	text-align: center;
	background: #CCCCCC;
	padding-top: 7px;
	padding-bottom: 7px;
}
#textSearchCtr table {
	margin: 0 auto 0 auto;
}
#textSearchCtr .label {
	padding-right: 10px;
	font-weight: bold;
	vertical-align: middle;
}
#textSearchCtr .auto {
	width: 310px;
}
#textSearchCtr .button {
	vertical-align: middle;
}
#autoSearch {
	width: 300px;
	position: relative;
	z-index: 9000; /* fixes IE bug */
}
#autoSearch input {
	width: 300px;
}
#autoSearchBlock .title {
	font-weight: bold;
}

/* dimmer/loader stuff */
#dimmer {
	width: 0;
	height: 0;
	position: absolute;
	z-index: 9500;
	background: #000000;
	visibility: hidden;
}
#loader {
	position: absolute;
	padding: 10px;
	border: 2px solid #4D4DB5;
	background: #FFFFFF;
	color: #4D4DB5;
	text-align: center;
	font-weight: bold;
}

/* top search links */
#topSearches {
	font-weight: bold;
}
#navTopSearchesInner {
	margin: 0px;
	padding: 0px;
	margin-left: -1.2em;
	margin-bottom: .77em;
}
#navTopSearchesInner ol {
	font-weight: bold;
}
#navTopSearchesInner a {
	font-weight: normal;
}
#topSearches .hitCount {
	font-weight: normal;
}

/* innerContainer specified to gain specificity */
#innerContainer .pagination {
	width: 100%;
	margin-bottom: 10px;
}
#innerContainer .pagination .links {
	text-align: right;
}
/*
	IMPORTANT NOTES
	
	The classes below control result output. There is the generic result
	class, applied to all results, in addition to specific ones applied to
	different types (e.g. resultLodging), as well as ones applied for
	different modes (e.g. resultInClipboard).
	
	In order to avoid long class names for the specific elements in each result,
	simple names are used,	and it is expected that CSS selectors will be used
	for disambiguation. For example, all result titles are under the "title"
	class. To make lodging titles look different from event titles, use
	
	.resultLodging .title { ... }
	.resultEvent .title { ... }
	
	and so on. In general, new naming should follow this convention.
*/
.result {
	table-layout: fixed; /* because we specify some widths */
	width: 100%;
	margin: 0 0 13px 0;
	border: 1px dashed #CCCCCC;
	border-collapse: collapse;
	background: #EEEEEE;
}
.result td {
	margin: 0;
	border: 0;
	padding: 10px 10px 10px 10px;
}
.sample {
	font-size: 10px;
	font-weight: bold;
}
.sample img {
	padding-left: 10px;
}
#secondaryContentSubHomePage .sample a {
	font-size: 11px;
}
div.sampleStarsPrices {
	font-size: 10px;
	padding-top: 7px;
	padding-left: 13px;
	font-weight: bold;
}
.result .title {
	font-weight: bold;
	font-size: 13px;
	text-decoration: none;
}
.result .dot {
	font-weight: bold;
}
.result .mapLinkContainer {
	display: none;
}

/* Lodging results */
#innerContainer .resultLodging .imageCell {
	width: 130px;
	text-align: center;
}
.resultLodging .imageCell a {
	width: 120px;
	margin: auto;
	padding-top: 7px;
	padding-bottom: 7px;
	background: #CCCCCC;
	text-align: center;
	display: block;
	vertical-align: middle;
}
.resultLodging .infoCell p {
	text-align: center;
}
.resultLodging .infoCell p span.address {
	font-size: 11px;
}
.resultLodging .ratesCell, .resultLodging .descriptionCell {
	padding-top: 0;
}
.resultLodging .ratesCell p.first {
	text-align: center;
	font-weight: bold;
}
.resultLodging .ratesCell div.moreRooms {
	text-align: center;
	margin: 0;
	margin-top: 10px;
}
#innerContainer .resultLodging .availCell {
	text-align: center;
	font-weight: bold;
}

/* Event results */
#innerContainer .resultEvent .infoCell {
	overflow: visible;
}
#innerContainer .resultEvent .title {
	white-space: nowrap;
}
#innerContainer .resultEvent .label {
	font-weight: bold;
	font-style: italic;
}
#innerContainer .resultEvent .dates {
	font-weight: bold;
	white-space: nowrap;
}
#innerContainer .resultEvent .locationCell {
	padding-left: 3em;
}
#innerContainer .resultEvent .linksCell {
	padding-right: 3em;
	text-align: right;
	vertical-align: middle;
}
#innerContainer .resultEvent .clipboardLinkCell {
	text-align: right;
}

/* Result in user map polygon */
.resultInMapPolygon {
	background: #FFCCCC;
}

/* Mapping stuff */
#map {
	border: solid 1px #CCCCCC;
	margin-bottom: 7px;
	display: none;
}
#mapControls {
	display: none;
}
.mapInfoWindow {
	width: 250px;
	font-size: 11px;
}
.mapInfoWindow .image {
	float: left;
	width: 75px;
	margin: 0 10px 10px 0;
}
.mapInfoWindow .title {
	font-weight: bold;
}
.mapInfoWindow .links {
	clear: left;
}

/* Detail listings */
.details {
	table-layout: fixed; /* we specify some widths */
	width: 100%;
	border-collapse: collapse;
}
.details td {
	padding: 0;
}
#primaryContent .details .imageCell {
	width: 220px;
	text-align: center;
}
.details .imageCell a {
	width: 220px;
	margin: auto;
	padding-top: 7px;
	padding-bottom: 7px;
	background: #CCCCCC;
	text-align: center;
	display: block;
}
.details .infoCell {
	font-size: 14px;
}
.details .infoCell p {
	text-align: center;
}
.details .title {
	font-weight: bold;
}
#detailsTabView {
	display: none;
	margin: 20px 0 0 0;
}
#images {
	table-layout: fixed;
	width: 100%;
}
#images td {
	padding: 10px 0 10px 0;
	text-align: center;
}

/* Lodging review stuff */
.status {
	text-align: center;
	margin-bottom: 13px;
	font-weight: bold;
	font-style: italic;
}
.error {
	color: #FF0000;
}
.lodgingReview {
	width: 100%;
	margin: 0 0 10px 0;
	background: #FBFBFB;
	table-layout: fixed;
	border-collapse: collapse;
	border-spacing: 0;
	border: 1px solid #CCCCCC;
}
.lodgingReview td {
	padding: 13px;
}
.lodgingReview .rating {
	width: 90px;
}
#innerContainer .lodgingReview .date {
	width: 180px;
	text-align: right;
	font-style: italic;
	font-weight: bold;
	font-size: 11px;
}
.lodgingReview .comments {
	padding-top: 0px;
	padding-left: 30px;
	padding-right: 30px;
	font-style: italic;
	font-size: 12px;
}
.lodgingReview .name {
	font-size: 10px;
	padding: 0;
	padding-bottom: 13px;
	padding-left: 13px;
	font-weight: bold;
}
.lodgingReview .title {
	font-size: 13px;
}
#lodgingReviewForm {
	margin: 0;
	border: 0;
	padding: 0;
}
#lodgingReview {
	width: 100%;
	margin: 10px 0 0 0;
	table-layout: fixed;
	border-collapse: collapse;
	border-spacing: 0;
}
#lodgingReview td {
	padding: 0;
}
#lodgingReview .label {
	width: 200px;
	font-weight: bold;
	text-align: right;
	vertical-align: middle;
}
#lodgingReview input,
#lodgingReview select {
	margin: 2px 0 2px 8px;
}
#lodgingReview textarea {
	margin: 5px 0 5px 0;
}
#lodgingReview input.text {
	width: 300px;
}
#lodgingReview textarea {
	width: 510px;
	height: 150px;
}
#lodgingReview .comments,
#lodgingReview .submit {
	text-align: right;
}
#lodgingReview .captcha {
	padding-left: 8px;
	padding-bottom: 2px;
}

/* lodging availabilities */
#lodgingAvail, .resultLodgingAvail {
	width: 100%;
	background: #FBFBFB;
	margin-top: 10px;
	border-width: 1px;
	border-spacing: 0px;
	border-style: outset;
	border-collapse: collapse;
	border-color: #999999;
}

#lodgingAvail td, .resultLodgingAvail td {
	padding-top: 4px;
	padding-bottom: 4px;
	padding-left: 6px;
	padding-right: 6px;
	border-width: 1px;
	border-spacing: 0px;
	border-style: outset;
	border-collapse: collapse;
	border-color: #999999;
}

#lodgingAvail thead td, .resultLodgingAvail thead td {
	font-weight: bold;
	color: #FBFBFB;
}

#lodgingAvail thead td.avgNightly, .resultLodgingAvail thead td.avgNightly {
	text-align: center;
	width: 1px;
	overflow: visible;
}
#lodgingAvail thead td.avgNightly span,
.resultLodgingAvail thead td.avgNightly span {
	white-space: nowrap;
}

#lodgingAvail tbody td, .resultLodgingAvail tbody td {
	font-size: 11px;
}

#lodgingAvail .rate, #innerContainer .resultLodgingAvail .rate {
	text-align: right;
	font-weight: bold;
	white-space: nowrap;
}

#lodgingAvail .hotRate, .resultLodgingAvail .hotRate {
	color: #CC3333;
	padding-left: 21px;
}

#lodgingAvail .book, .resultLodgingAvail .book {
	white-space: nowrap;
}

/* left column boxes */
#clipboardManager, #nearbyEvents, #nearbyLodging, #leftColumnAds, #leftColumnSearchBox, #lodgingAvailBox {
	margin: 10px 0 0 0;
	border-collapse: collapse;
	border-spacing: 0;
	width: 190px; /* fixed to prevent expansion of secondaryConent */
}
#clipboardManager .body, #nearbyEvents .body, #nearbyLodging .body, #leftColumnAds .body, #leftColumnSearchBox .body, #lodgingAvailBox .body {
	padding: 7px 0 0 0;
	color: #333333;
	font-size: 11px;
}
#nearbyEvents .body, #nearbyLodging .body, #leftColumnAds .body, #leftColumnSearchBox .body {
	padding: 0;
	margin: 0;
}
#leftColumnSearchBox .body td, #leftColumnSearchBox .body input {
	font-size: 10px;
}
#leftColumnSearchBox .body .label {
	padding-right: 4px;
	font-weight: bold;
	width: 1%;
}
#leftColumnSearchBoxCriteria {
	width: 77px;
}
#leftColumnSearchBox .body .button {
	padding-left: 4px;
}
#leftColumnSearchBox .body form, #leftColumnSearchBox .body form table {
	padding: 0;
	margin: 0;
}
#leftColumnSearchBox .body form table td {
	vertical-align: middle;
}
#leftColumnAds .body, #leftColumnSearchBox .body {
	text-align: center;
	padding-top: 10px;
	padding-bottom: 10px;
}
#clipboardManager .body p {
	font-size: 10px;
	margin: 0 10px 9px 10px;
	padding: 0;
}
#clipboardManager .body .actions {
	margin: 0 0 9px 0;
	padding-left: 0;
	text-align: center;
	list-style: none;
}
#nearbyEvents .body div.listings, #nearbyLodging .body div.listings {
	padding: 0;
	margin: 0;
	margin-top: 8px;
	margin-right: 10px;
	margin-left: 10px;
	margin-bottom: 10px;
}
#nearbyEvents .body div.listings p, #nearbyLodging .body div.listings p {
	margin: 0;
	padding: 0;
	padding-top: 9px;
	font-weight: bold;
	font-size: 10px;
}
#nearbyEvents .body div.listings p a, #nearbyLodging .body div.listings p a {
	font-size: 12px;
}
#nearbyEvents .body div.listings p.first, #nearbyLodging .body div.listings p.first {
	padding-top: 0px;
}
#nearbyEvents .body div.listings p.first .dates {
	font-style: italic;
}

/* Clipboard view */
#clipboardTabView {
	display: none;
	margin: 20px 0 0 0;
}
.copyright {
	font-size: 10px;
	color: #666666;
}
a.copyright {
	text-decoration: none;
}


/* used for spacing the thumbsup icon */
.pad1pxRight {
	padding-right: 1px;
}

/* banner ads */
#banner468x60 {
	background: #CCCCCC;
	width: 100%;
	padding-top: 5px;
	padding-bottom: 5px;
	margin-top: 16px;
	text-align: center;
}
#banner234x60 {
	width: 234px;
	height: 60px;
	margin-bottom: 13px;
}

/* season toggling cell for top level home page */
#toggleSeasons {
	text-align: center;
	font-weight: bold;
	margin-top: 16px;
}

/* lodging availability box settings */
#lodgingAvailBox .body {
	text-align: center;
}
#lodgingAvailBox p {
	font-size: 10px;
	margin: 0 10px 7px 10px;
	text-align: left;
}
#lodgingAvailBox form {
	padding: 0;
	margin: 0;
	margin-bottom: 7px;
}
#lodgingAvailBoxSettings {
	margin-left: auto;
	margin-right: auto;
}
#lodgingAvailBoxSettings td {
	font-size: 11px;
}
#lodgingAvailBoxSettings .label {
	text-align: right;
	font-weight: bold;
	vertical-align: middle;
}
#lodgingAvailBoxSettings .submit {
	text-align: center;
}
#lodgingAvailBoxSettings input, #lodgingAvailBoxSettings select {
	font-size: 10px;
}
#lodgingAvailBoxSettings .hotRateCell {
	text-align: center;
	vertical-align: bottom;
	font-weight: bold;
	font-size: 11px;
	font-style: italic;
}
#lodgingAvailBoxSettings .hotRateCell .checkbox {
	margin: 0;
	padding: 0;
}


#lodgingAvailSettingsTable {
	margin-top: 10px;
}

#lodgingAvailSettingsTable td {
	vertical-align: bottom;
	text-align: center;
}

#lodgingAvailSettingsTable .calendarCell {
	padding-right: 13px;
	text-align: center;
}

#lodgingAvailSettingsTable .formCell {
	vertical-align: middle;
}
#lodgingAvailSettingsTable .formCell td {
	text-align: left;
}
#lodgingAvailSettings td.label {
	font-weight: bold;
	text-align: right;
	padding-right: 7px;
}
#lodgingAvailSettings td.submit {
	text-align: center;
	padding-top: 13px;
}

#sorting {
	text-align: center;
	margin-bottom: 4px;
}