/*----------------------------------------------------------------------------
   Company:    Goodbuy Timeshare
   Website:    www.goodbuytimeshare.com
   Contact:    doug@designbyadmiral.com
   Notes:      Main stylesheet with non-jQuery-specific plugin styles.
  ----------------------------------------------------------------------------*/
  

/*----------------------------------------------------------------------------
   Table of Contents:
   1. Universal Styles
      a. Top Navigation
      b. Masthead
      c. Main Navigation
      d. Site Information
      e. Accordions
      f. Contact Forms
   2. Home Page Styles
   3. Listings Page Styles
      a. Search Form
   4. Timeshare Listings
   5. Questions Page Styles
   6. About Page Styles
   7. Contact Page Styles
  ----------------------------------------------------------------------------*/


/* Universal Styles
----------------------------------------------------------------------------- */
body {
	background-color: #f1f0eb;
	}
h1, h2, h3, h4, h5, h6, dt, dd, li, p, a, a:visited, a:active, legend, label, input, textarea {
	color: #7b7284;
	}
h1, h2, h3, h4, h5, h6, dt {
	font-family: "Trebuchet MS", Helvetica, Arial, Verdana, sans-serif;
	font-weight: normal;
	margin: 0px;
	}
h1 {
	font-size: 36px;
	line-height: 48px;
	margin-bottom: 36px;
	padding: 0px 72px;
	text-align: center;
	text-transform: capitalize;
	vertical-align: middle;
	}
dd, li, p, label, input, textarea {
	font-family: Helvetica, Arial, Verdana, sans-serif;
	}
p {
	text-align: justify;
	}
form {
	border: solid 1px #000;
	}
fieldset {
	margin: 0px;
	}
input, select {
	cursor: pointer;
	}
label {
	font-size: 15px;
	}
input[type=text], textarea {
	color: #787568;
	}
textarea {
	line-height: 24px;
	}
img {
	border: solid 1px #d3d1c5;
	padding: 1px;
	}
#container {
	margin: 0px auto;
	position: relative;
	width: 970px;
	}
#main-content {	
	background: url(../images/bg-main-content.png) repeat-y center 0px;
	overflow: auto;
	padding: 24px 29px;
	position: relative;
	width: 912px;
	}

/*----- Top Navigation -----*/
#top-navigation {
	position: absolute;
	right: 0px;
	top: 6px;
	}
#top-navigation li {
	float: left;
	font-size: 10px;
	list-style: none;
	padding-left: 12px;
	}
#top-navigation li a {
	color: #787568;
	}

/*----- Masthead -----*/
#masthead {
	background: url(../images/bg-masthead.png) no-repeat center bottom;
	padding: 48px 29px;
	}
#masthead a {
	background: url(../images/logo.png) no-repeat 0px 3px;
	border: none;
	display: block;
	height: 48px;
	width: 351px;
	}
#masthead a span {
	position: absolute;
	left: -9999em;
	}

/*----- Main Navigation -----*/
#main-navigation {
	background: url(../images/bg-main-nav.png) no-repeat 0px 0px;
	height: 51px;
	margin: 0px;
	overflow: auto;
	padding: 0px 17px;
	}
#main-navigation li {
	float: left;
	font-size: 18px;
	list-style: none;
	}
#main-navigation li.active {
	background-color: #d3d1c5;
	}
#main-navigation li a {
	border: none;
	color: #787568;
	display: inline-block;
	font-family: "Trebuchet MS", Helvetica, Arial, Verdana, sans-serif;
	line-height: 48px;
	padding: 0px 12px;
	vertical-align: middle;
	}
#main-navigation li a:hover {
	background-color: #d3d1c5 !important;
	}
#main-navigation #home-link a {
	background: url(../images/bg-home-link.png) no-repeat center center;
	display: block;
	height: 48px;
	width: 22px;
	}
#main-navigation #home-link a span {
	position: absolute;
	left: -9999px;
	}
#main-navigation #listings-link a {
	background: url(../images/bg-timeshare-link.png) no-repeat center 0px;
	}

/*----- Site Information -----*/
#site-info {
	background: url(../images/bg-site-info.png) no-repeat 0px 0px;
	padding: 24px 29px 0px 29px;
	width: 912px;
	}
#site-info p {
	text-align: left;
	}
#site-info span {
	padding: 0px 12px;
	}
#site-info a[rel=email] {
	margin-left: .4em;
	}

/*----- Accordions -----*/
div.accordion.active dl {
	margin: 24px;
	}
div.accordion.active dt {
	cursor: pointer;
	}
div.accordion.active dt span {
	border-bottom: dotted 1px;
	}
div.accordion.active dt span:hover {
	border-bottom: solid 1px;
	}
div.accordion dd {
	border: solid 1px #d3d1c5;
	margin: 12px;
	padding: 11px;
	}
div.accordion dd p {
	margin: 1em 0px 0px 0px;
	}
div.accordion dd p:first-child {
	margin-top: 0px;
	}
	
/*----- Contact Forms -----*/
form.contact-form {
	border: solid 1px #d3d1c5;
	border-top: solid 4px #d3d1c5;
	margin: 24px 0px;
	overflow: auto;
	padding: 20px 23px 23px 23px;
	}
form.contact-form h2, form.contact-form h3 {
	clear: left;
	margin: 0px 0px 24px 132px;
	}
form.contact-form h3 {
	clear: left;
	font-size: 18px;
	font-style: italic;
	}
form.contact-form h3+p {
	margin-bottom: 0px;
	}
form.contact-form p {
	margin-bottom: 24px;
	}
form.contact-form label {
	clear: left;
	float: left;
	line-height: 24px;
	margin-right: 24px;
	text-align: right;
	vertical-align: middle;
	width: 108px;
	}
form.contact-form label.error {
	border: none;
	color: #ff0000;
	display: block;
	float: none;
	margin: 0px 0px 0px 132px;
	text-align: left;
	width: auto;
	}
form.contact-form label span.caption {
	font-size: 10px;
	font-style: italic;
	}
form.contact-form input[type=text], form.contact-form textarea {
	background-color: #f1f0eb;
	border: none;
	max-width: 724px;
	width: 724px;
	padding: 4px;
	}
form.contact-form input[type=text].error, form.contact-form textarea.error {
	border-color: #ff0000;
	}
form.contact-form textarea {
	height: 100px;
	min-height: 100px;
	}
#form-address-town, #form-address-state, #form-address-zip {
	float: left;
	}
form.contact-form #form-phone {
	clear: left;
	}
form.contact-form #contact-address-state-label, form.contact-form #contact-address-zip-label {
	padding-left: 24px;
	width: auto;
	}
form.contact-form #contact-address-town-field, form.contact-form #contact-phone-field {
	width: 280px;
	}
form.contact-form #contact-address-state-field {
	width: 184px;
	}
form.contact-form #contact-address-zip-field {
	width: 100px;
	}
form.contact-form #form-own-timeshare {
	clear: left;
	overflow: auto;
	}
form.contact-form #form-contact-type {
	display: block;
	float: left;
	width: 264px;
	}
form.contact-form #form-contact-listing {
	float: left;
	}
form.contact-form #form-contact-listing label {
	width: auto;
	}
form.contact-form #form-contact-listing input {
	width: 72px;
	}
form.contact-form #form-contact-subject {
	clear: left;
	}
form.contact-form #submit-button {
	margin: 24px 0px 0px 0px;
	overflow: visible;
	text-align: right;
	}
form.contact-form #submit-button input {
	background: url(../images/bg-send-button.png) no-repeat 0px 0px;
	border: none;
	color: #fff;
	font-size: 15px;
	height: 24px;
	padding: 0px;
	margin: 0px;
	width: 120px;
	}
	
/*----- Gallery -----*/
div.gallery {
	border: solid 1px #d3d1c5;
	border-top: solid 4px #d3d1c5;
	float: left;
	padding: 9px 12px 12px 12px;
	width: 420px;
	}
div.gallery div.galleria_wrapper {
	line-height: 1em;
	}
div.gallery ul {
	margin: 10px 0px 12px 0px;
	overflow: auto;
	}
div.gallery ul li {
	border: solid 1px #d3d1c5;
	cursor: pointer;
	float: left;
	height: 48px;
	list-style: none;
	margin: 0px 12px 0px 0px;
	overflow: hidden;
	width: 48px;
	}
div.gallery ul li img {
	border: none;
	padding: 0px;
	}
div.gallery p.nav {
	border-top: solid 1px #d3d1c5;
	clear: left;
	margin: 12px 0px 0px 0px;
	padding-top: 11px;
	text-align: center;
	}
	
/* Home Page Styles
----------------------------------------------------------------------------- */
#home-page #main-content #call-to-action {
	margin: 0px -24px 24px -24px;
	overflow: auto;
	}
#home-page #main-content #call-to-action li {
	float: left;
	list-style: none;
	padding: 24px;
	width: 276px;
	}
#home-page #main-content #call-to-action li h2 {
	color: #fff;
	margin: -24px -24px 24px -24px;
	padding: 24px;
	text-align: center;
	}
#home-page #main-content #call-to-action li h2 strong {
	font-weight: normal;
	}
#home-page #main-content #call-to-action li p {
	color: #5b5a53;
	display: block;
	height: 72px;
	margin: 0px;
	text-align: left;
	}
#home-page #main-content #call-to-action li a {
	border: none;
	display: block;
	font-size: 18px;
	margin-top: 24px;
	padding: 4px 0px;
	text-align: center;
	}
#home-page #main-content #call-to-action li a strong {
	font-weight: normal;
	}
#home-page #main-content #call-to-action #buy-cta {
	background-color: #c2abe1;
	}
#home-page #main-content #call-to-action #buy-cta h2 {
	background-color: #b49fce; 
	}
#home-page #main-content #call-to-action #rent-cta {
	background-color: #9bd3db;
	width: 264px;
	}
#home-page #main-content #call-to-action #rent-cta h2 {
	background-color: #90c4c9; 
	}
#home-page #main-content #call-to-action #sell-cta {
	background-color: #abcdaa;
	}
#home-page #main-content #call-to-action #sell-cta h2 {
	background-color: #9fbe9c; 
	}
#home-page #main-content div.column {
	width: 432px;
	}
#home-page #main-content div.column h2 {
	margin-bottom: 20px;
	}
#home-page #main-content #what-we-do {
	float: left;
	}
#home-page #main-content #difference {
	margin-left: 480px;
	}


/* Listings Page Styles
----------------------------------------------------------------------------- */
#listings-page #main-content h1 {
	margin-bottom: 0px;
	}

/*----- Search Form -----*/
#search-form {
	border: solid 1px #d3d1c5;
	border-top: solid 4px #d3d1c5;
	margin: 24px 0px;
	overflow: hidden;
	padding: 20px 23px 23px 23px;
	position: relative;
	width: 864px;
	}
#search-form #showhide-link {
	position: absolute;
	right: 24px;
	top: 24px;
	}
#search-form h3 {
	font-size: 1.5em;
	font-weight: bold;
	height: 24px;
	margin: 0px;
	}
#search-form form {
	border: none;
	overflow: auto;
	}
#search-form form div {
	overflow: auto;
	}
#search-form form fieldset {
	margin-top: 24px;
	}
#search-form form div fieldset {
	float: left;
	margin-right: 48px;
	}
#search-form form fieldset div {
	overflow: visible;
	}
#search-form p {
	font-size: 1em;
	margin: 0px;
	position: relative;
	}
#search-form #price, #search-form #weeks {
	height: 48px;
	}
#search-form #agreement input, #search-form #property-type input, #search-form #amenities input {
	left: 0px;
	position: absolute;
	top: 3px;
	}
#search-form #agreement label, #search-form #property-type label, #search-form #amenities label {
	margin-left: 18px;
	}
#search-form #location label {
	left: -9999em;
	position: absolute;
	}
#search-form #submit-button {
	clear: left;
	margin-top: 24px;
	}
#search-form #submit-button input {
	background: url(../images/bg-search-button.png) no-repeat 0px 0px;
	border: none;
	color: #fff;
	font-size: 15px;
	height: 24px;
	padding: 0px;
	margin: 0px;
	width: 144px;
	}

/*----- Timeshare Listings -----*/
#listings-page #main-content #timeshare-listings {
	margin: 24px 0px;
	}
#listings-page #main-content #timeshare-listings li {
	list-style: none;
	}
#listings-page #main-content #timeshare-listings li.ajax {
	background: url(../images/ajax-spinner.gif) no-repeat center center;
	height: 32px;
	}
#listings-page #main-content #timeshare-listings li.loaded {
	display: none;
	}
#listings-page #main-content #timeshare-listings li.listing-entry {
	border: solid 1px #d3d1c5;
	border-top: solid 4px #d3d1c5;
	overflow: auto;
	padding: 44px 23px 47px 23px;
	position: relative;
	}
#listings-page #main-content #timeshare-listings li h2 {
	font-size: 24px;
	margin-bottom: 12px;
	padding-right: 72px;
	position: relative;
	}
#listings-page #main-content #timeshare-listings li h2 span {
	color: #c7bfce;
	position: absolute;
	right: 0px;
	top: 0px;
	}
#listings-page #main-content #timeshare-listings li img, #listings-page #main-content #timeshare-listings li dl.information, #listings-page #main-content #timeshare-listings li div {
	float: left;
	}
#listings-page #main-content #timeshare-listings li img {
	float: left;
	margin-bottom: 24px;
	}
#listings-page #main-content #timeshare-listings li dl dt {
	font-size: 15px;
	}
#listings-page #main-content #timeshare-listings li dl.information {	
	margin: 0px 24px 24px 24px;
	width: 264px;
	}
#listings-page #main-content #timeshare-listings li dl.information dt {
	float: left;
	width: 96px;
	}
#listings-page #main-content #timeshare-listings li dl.information dd {
	background-color: #f1f0eb;
	margin: 0px 0px 12px 96px;
	padding: 0px 4px;
	vertical-align: middle;
	width: 160px;
	}
#listings-page #main-content #timeshare-listings li dl.information dt:first-child + dd {
	clear: left;
	margin-left: 0px;
	width: 256px;
	}
#listings-page #main-content #timeshare-listings li div {
	margin-bottom: 24px;
	}
#listings-page #main-content #timeshare-listings li div dl {
	clear: right;
	float: right;
	overflow: auto;
	margin: 0px 0px 12px 0px;
	width: 264px;
	}
#listings-page #main-content #timeshare-listings li div dl dd {
	background-color: #f1f0eb;
	float: left;
	line-height: 24px;
	margin: 1px;
	text-align: center;
	vertical-align: middle;
	}
#listings-page #main-content #timeshare-listings li div dl.available-weeks dd {
	width: 24px;
	}
#listings-page #main-content #timeshare-listings li div dl.amenities dd {
	padding: 0px 4px;
	}
#listings-page #main-content #timeshare-listings li p.listing-links {
	clear: both;
	margin: 0px;
	overflow: auto;
	}
#listings-page #main-content #timeshare-listings li p.listing-links a {
	background: url(../images/bg-listing-links.png) no-repeat 0px 0px;
	border: none;
	color: #fff;
	display: block;
	font-size: 15px;
	line-height: 24px;
	text-align: center;
	vertical-align: middle;
	width: 276px;
	}
#listings-page #main-content #timeshare-listings li p.listing-links a.contact {
	float: left;
	}
#listings-page #main-content #timeshare-listings li p.listing-links a.view {
	float: right;
	}
#listings-page #main-content ul.pagination {
	overflow: auto;
	margin: 18px 0;
	text-align: center;
	}
#listings-page #main-content ul.pagination li {
	display: inline-block;
	margin: 0;
	}
#listings-page #main-content ul.pagination li.selected {
	font-weight: bold;
	}
#listings-page #main-content ul.pagination li span {
	display: inline-block;
	padding: 0 6px;
	}
#listings-page #main-content ul.pagination li a {
	border: none;
	display: inline-block;
	text-align: center;
	padding: 0 8px;
	}
#listings-page #main-content ul.pagination li a:hover {
	
	}
#listings-page #main-content ul.pagination li.selected a {
	background-color: #F1F0EB;
	}
#listings-page #main-content ul.pagination li a.pagination-previous, #listings-page #main-content ul.pagination li a.pagination-next {
	width: auto;
	}

/*----- Single Listing -----*/
#listings-page #main-content p.caption {
	font-size: 12px;
	font-style: italic;
	margin-bottom: 36px;
	text-align: center;
	}
#listings-page #main-content p.caption strong {
	font-style: italic;
	padding-right: 4px;
	}
#listings-page #main-content #information {
	margin-left: 492px;
	overflow: auto;
	width: 420px;
	}
#listings-page #main-content #information dl {
	overflow: auto;
	margin: 0px 0px 24px 0px;
	}
#listings-page #main-content #information dl dd {
	background-color: #f1f0eb;
	float: left;
	line-height: 24px;
	margin: 1px;
	text-align: center;
	vertical-align: middle;
	}
#listings-page #main-content #information dl.available-weeks dd {
	width: 24px;
	}
#listings-page #main-content #information dl.amenities dd {
	padding: 0px 4px;
	}
#listings-page #main-content #information dl.vitals {
	border: solid 1px #d3d1c5;
	padding: 11px;
	}
#listings-page #main-content #information dl.vitals dt {
	clear: left;
	float: left;
	padding-right: 24px;
	width: 72px;
	}
#listings-page #main-content #information dl.vitals dd {
	margin: 0px 0px 12px 0px;
	padding: 0px 4px;
	text-align: left;
	width: 292px;
	}
#listings-page #main-content #information dl.vitals dt+dd+dt+dd+dt+dd {
	width: 128px;
	}
#listings-page #main-content #information dl.vitals dt+dd+dt+dd+dt+dd+dt {
	clear: none;
	padding-left: 24px;
	}
#listings-page #main-content #information dl.vitals dt+dd+dt+dd+dt+dd+dt+dd {
	width: 36px;
	}
#listings-page #main-content .contact-link {
	margin: 24px 0px;
	text-align: center;
	}
#listings-page #main-content .contact-link.top {
	margin: 0px 0px 48px 0px;
	}
#listings-page #main-content .contact-link a {
	background: url(../images/bg-contact-link.png) no-repeat 0px 0px;
	border: none;
	clear: both;
	color: #fff;
	display: block;
	font-size: 18px;
	margin: 0px auto;
	padding: 6px;
	width: 276px;
	}

/* Questions Page Styles
----------------------------------------------------------------------------- */
#questions-page #main-content p {
	clear: left;
	float: left;
	width: 444px;
	}
#questions-page #main-content dl.jump-links {
	margin: 0px 0px 0px 468px;
	}
#questions-page #main-content dl.jump-links dt {
	margin-bottom: 12px;
	}
#questions-page #main-content dl.jump-links dd {
	border: solid 1px #d3d1c5;
	margin: 0px 0px 12px 0px;
	padding: 8px;
	text-align: center;
	width: 216px;
	}
#questions-page #main-content #questions {
	clear: both;
	padding-top: 24px;
	}
#questions-page #main-content div.accordion dt {
	font-size: 15px;
	margin-top: 12px;
	}
#questions-page #main-content div.accordion dd p {
	float: none;
	width: auto;
	}

/* About Page Styles
----------------------------------------------------------------------------- */
#about-page #main-content h2, #about-page #main-content p {
	margin-left: 336px;
	}
#about-page #main-content h2 {
	margin-bottom: 24px;
	}
#about-page #main-content #bio {
	float: left;
	margin-bottom: 24px;
	padding: 20px 23px 23px 23px;
	width: 264px;
	border: solid 1px #d3d1c5;
	border-top: solid 4px #d3d1c5;	
	}
#about-page #main-content #bio h2, #about-page #main-content #bio p {
	margin-left: 0px;
	}
#about-page #main-content #bio h2 {
	margin-bottom: 0px;
	}
#about-page #main-content #bio img {
	margin-bottom: 24px;
	}
#about-page #main-content #bio p:last-child {
	margin-bottom: 0px;
	}

/* Contact Page Styles
----------------------------------------------------------------------------- */
#contact-page #main-content p.status {
	border: solid 1px #d3d1c5;
	border-top: solid 4px #d3d1c5;
	font-size: 18px;
	margin: 0px auto 48px auto;
	padding: 24px;
	text-align: center;
	width: 336px;
	}
#contact-page #main-content p.status.success {
	background-color: #abcdaa;
	border-color: #8faf8c;
	color: #545c49;
	}
#contact-page #main-content p.status.invalid {
	background-color: #f4f3a8;
	border-color: #d2d182;
	color: #828259;
	}
#contact-page #main-content p.status.failure {
	background-color: #e79a9a;
	border-color: #d28282;
	color: #5c4949;
	}
#contact-page #main-content p.status.failure a {
	border-color: #5c4949;
	color: #5c4949;
	}
#contact-page #main-content #introduction {
	float: left;
	width: 444px;
	}
#contact-page #main-content dl {
	margin: 0px 0px 0px 468px;
	}
#contact-page #main-content dl dt {
	float: left;
	font-size: 15px;
	font-weight: bold;
	text-align: right;
	width: 132px;
	}
#contact-page #main-content dl dd {
	margin-left: 156px;
	margin-bottom: 24px;
	}
#contact-page #main-content dl dt+dd+dt+dd {
	margin-bottom: 0px;
	}
#contact-page #main-content form.contact-form {
	clear: both;
	}
#contact-page .vcard span.street-address {
	display: block;
	}
#contact-page .vcard span.postal-code {
	margin-left: 5px;
	}