/*
	base.css - Core, site-wide styles
	Joshua Works (works@thecompleteworks.org)
	12 May 2009
*/

* { margin: 0; padding: 0; }
img { border: 0; }
h1,h2,h3,h4,h5,h6 { font-weight: normal; }
a { color: #406386; } a:hover { text-decoration: none; color: #6e6c69; } a:active { text-decoration: none; color: #93908c; }

body { background: #2f3539 url(../images/953.png); color: #444; font: 12px/20px Helvetica, Arial, sans-serif; border-top: 5px solid #1c1d1f; }

.container { width: 1000px; margin: 0 auto; position: relative; }
.content {
	clear: both; background-color: #FFF; position: relative;
	-webkit-border-top-right-radius: 15px;	-moz-border-radius-topright: 15px; 	border-top-right-radius: 15px;
	-webkit-border-top-left-radius: 15px; 	-moz-border-radius-topleft: 15px; 	border-top-left-radius: 15px;
}
.body { padding: 20px; overflow: hidden; position: relative; }
.footer { border-top: 5px solid #1c1d1f; color: #FFF; padding: 20px 20px 40px; font-size: 14px; overflow: hidden; }


h1 { display: inline; }
h1 a { display: block; float: left; text-indent: -9999px; background: url(../images/logo.png) no-repeat right center; width: 492px; height: 100px; position: relative; }
h2 { font-size: 32px; line-height: 36px; margin-bottom: 20px; color: #1b3648; }
h3 { font-size: 14px; line-height: 16px; padding: 5px 0; font-weight: bold; clear: both; }
h4 { font-size: 18px; line-height: 26px; }
h3 a,
h4 a { text-decoration: none; }

.home h2, 
.listings.list h2 { text-indent: -9999px; background: url(../images/title_listings.png) no-repeat left center; }
.resources h2 { text-indent: -9999px; background: url(../images/title_resources.png) no-repeat left center; }
.office h2 { text-indent: -9999px; background: url(../images/title_about.png) no-repeat left center; }
.contact h2 { text-indent: -9999px; background: url(../images/title_contact.png) no-repeat left center; }

h3[id] { background: no-repeat left center; text-indent: -9999px; line-height: 20px; }
	h3#features { background-image: url(../images/features.png); }
	h3#location { background-image: url(../images/location.png); }
	h3#details { background-image: url(../images/details.png); }
	h3#listing_info { background-image: url(../images/listing_info.png); }
	h3#associates { background-image: url(../images/associates.png); }
	h3#contact { background-image: url(../images/contact.png); }
	h3#testimonials { background-image: url(../images/testimonials.png); margin-top: 20px; }
	h3#my_listings { background-image: url(../images/my_listings.png); }

.sort { position: absolute; top: 30px; left: 200px; width: 440px; font-size: 13px; }
.sort li,
.sort p { float: left; list-style: none; }
.sort p { text-indent: -9999px; background: url(../images/sort_by.png) no-repeat left center; width: 54px; }
.sort a,
.sort span { margin-left: 10px; padding: 3px 6px; text-decoration: none; }
.sort span { font-weight: bold; border-bottom: 2px solid #CCC; }


/* Subscription link */
#subscribe { display: inline; }
#subscribe a { display: block; position: absolute; right: 18px; top: 0; width: 200px; height: 32px; background: url(../images/subscribe.png) no-repeat 0 bottom; text-indent: -9999px; }
#subscribe a:hover { background-position: -200px bottom; }

/* Navigation */
.navigation { float: right; overflow: hidden; width: 364px; margin: 0 20px 0 0; }
.navigation li { display: inline; }
.navigation li a { display: block; float: left; margin: 47px 0 0; height: 30px; background: url(../images/tabs.png) no-repeat 0 0; text-indent: -9999px; }

	li.listings a { width: 88px; }
	li.resources a { width: 112px; background-position: -88px 0; }
	li.about a { width: 76px; background-position: -200px 0; }
	li.contact a { width: 88px; background-position: -276px 0; }

	.listings li.listings a,
	li.listings a:hover { background-position: 0 -30px; }
	.resources li.resources a,
	li.resources a:hover { background-position: -88px -30px; }
	.office li.about a,
	li.about a:hover { background-position: -200px -30px; }
	.contact li.contact a,
	li.contact a:hover { background-position: -276px -30px; }


/* Homepage promo */
.home_promo {
	background-color: #DAD5D0; padding: 10px; overflow: hidden;
	-webkit-border-top-right-radius: 15px;	-moz-border-radius-topright: 15px; 	border-top-right-radius: 15px;
	-webkit-border-top-left-radius: 15px; 	-moz-border-radius-topleft: 15px; 	border-top-left-radius: 15px;
}
#tagline { height: 38px; width: 631px; background: url(../images/tagline.png) no-repeat 0 0; text-indent: -9999px; }
.intro { width: 480px; float: left; margin: 10px; font-size: 13px; }

/* featured property */
.featured_info {
	background-color: #e6e2de; padding: 5px 140px 5px 15px; margin: 5px 150px 20px 0; float: right; text-align: right;
	-webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px;
}
.featured_info a { font-weight: bold; }
.photo_stack { width: 303px; height: 277px; background: url(../images/polaroid.png); position: absolute; top: -20px; right: 0; }
.photo_stack .photo_link { width: 235px; height: 166px; position: relative; top: 27px; left: 29px; }




/* Properties list */
#listing { overflow: hidden; }
#listings > li { width: 298px; border: 4px solid #e6e4e2; padding: 3px; float: left; margin: 0 10px 10px 0; list-style: none; }

.thumbnail { position: relative; }
.thumbnail a { width: 290px; height: 192px; }

.synopsis { padding: 0 3px; position: relative; }
.synopsis .description { line-height: 15px; height: 30px; overflow: hidden; }

.meta { float: right; font-size: 11px; line-height: 30px; font-weight: bold; color: #777; }
.meta span { padding-left: 10px; text-align: right; }

.price { font-size: 18px; line-height: 30px; font-weight: bold; color: #4e631e; }
.price del { font-weight: normal; color: #888; font-size: 13px; line-height: 10px; position: relative; top: -2px; padding-left: 2px; cursor: default; }
.price del:hover { text-decoration: none; }
.price .sold { color: #823F37; }

/* Property detail */
.item_navigation { float: right; overflow: hidden; width: 82px; }
.item_navigation a,
.item_navigation span { display: block; float: right; width: 36px; height: 36px; background: url(../images/next_prev.png) no-repeat center left; text-indent: -9999px; }
.item_navigation .next { margin-left: 10px; background-position: center right; }
.item_navigation span { background-position: top left; }
.item_navigation span.next { background-position: top right; }
.item_navigation a:hover { background-position: bottom left; }
.item_navigation a.next:hover { background-position: bottom right; }

.return_to_list a { display: block; float: right; margin-right: 40px; width: 131px; height: 36px; background: url(../images/return_to_listings.png) no-repeat right center; text-indent: -9999px; }
.office .return_to_list a { background-image: url(../images/return_to_associates.png); width: 149px; }

.overview { width: 590px; float: left; margin-right: 20px; }
.details { width: 330px; padding: 10px; float: left; background: #DAD5D0; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }

.details .price { font-size: 24px; }
.details .price del { font-size: 15px; }

#property_actions { float: right; width: 120px; margin: 5px 0 0 0; }
#property_actions #print { text-indent: -9999px; background: url(../images/print_view.png) no-repeat left center; cursor: pointer; }

.image_canvas { display: block; background: #FFF; text-align: center; margin-bottom: 10px; height: 390px; }
.image_canvas img { margin: 0 auto; height: 393px; }

.images { line-height: 0; position: relative; }
.images ul { overflow: hidden; margin-bottom: 20px; }
.images li { list-style: none; display: block; float: left; margin: 0 5px 5px 0; }
.images li a { display: block; width: 76px; height: 76px; border: 2px solid #e6e4e2; }
.images li a:hover { border-color: #3E6889; }
.images li img { width: 72px; height: 72px; margin: 2px; }

.overview .description { width: 40em; margin-bottom: 1em; }
.overview .map_canvas {
	background-color: #cfe1ed; padding: 10px; overflow: hidden; margin-bottom: 20px;
	-webkit-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px;
}
.overview .map_canvas dl { margin: 0; }
.overview dl { float: left; width: 185px; margin: 0 20px 0 10px; }
.overview dt { font-weight: bold; }
.overview dd { margin-bottom: 10px; }
.overview .about { font-size: 11px; color: #666; }

/* Admin link */
#edit_this a { display: block; background: #555; color: #eae0e0; margin: -10px -10px 10px -10px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; padding: 5px; text-align: center; font-size: 13px; text-decoration: none; font-weight: normal; }
#edit_this a:hover { background-color: #3E6889; }

.details ul { overflow: hidden; margin-bottom: 20px; }
.details li { float: left; width: 135px; padding: 0 10px 0 20px; font-size: 11px; background: no-repeat left 1px; list-style: none; }
.details li span { display: block; color: #666; }
.details li.yes { background-image: url(../images/yes.png); }
.details li.no { background-image: url(../images/no.png); }
.details dl { overflow: hidden; line-height: 24px; font-size: 11px; margin-bottom: 20px; }
.details dt { float: left; width: 170px; padding: 0 5px; border-top: 1px solid #c0bcb7; font-weight: bold; color: #555; }
.details dd { float: left; width: 150px; border-top: 1px solid #c0bcb7; }

.details #map_canvas { width: 200px; height: 100px; margin-bottom: 10px; }
.details #details { margin-top: 10px; }


/* Map */
#map_canvas { width: 365px; height: 240px; float: right; }
img[src="http://maps.gstatic.com/intl/en_us/mapfiles/poweredby.png"],
div[style="z-index: 1000; position: absolute; bottom: 0px; right: 0px; "],
div[style="z-index: 1000; -webkit-user-select: none; position: absolute; bottom: 0px; right: 0px; "] { display: none; }
div[title="Change map style"] div[style*="color: black"] { padding-right: 20px !important; }


/* Associates */
.associates dl { float: none; width: auto; overflow: hidden; margin: 10px 0 0 0; }
.associates dt, .associates dd { float: left; border-bottom: 1px solid #e6e4e2; font-size: 11px; }
.associates dt { font-weight: bold; width: 45px; }
.associates dd { width: 143px; }
.associates a.photo_link { height: 92px; width: 92px; float: left; margin-right: 10px; }
#associate_photo { float: left; margin: 5px 10px 0 0; }

#listings.associates.brief li { width: 276px; margin: 0 10px 10px 0; }
.associates.brief dd { width: 121px; margin: 0; }
.associates.brief a.photo_link { height: 62px; width: 62px; }
.associates.brief p { line-height: 22px; }

.details dd.price { font-size: 12px; line-height: 24px; text-align: center; }

/* Testimonials */
.testimonials li { list-style: none; margin-bottom: 10px; }
.testimonials .testimonial { font-size: 13px; font-style: italic; padding: 10px; margin-bottom: 5px; }
.testimonials .testimonial.odd { background: #EEE; }
.testimonials li img { float: left; margin-right: 10px; }
.testimonials .byline { line-height: 30px; }



/* Contact Form */
table.form { width: 100%; border-collapse: collapse; }
table.form th, table.form td { padding: 3px; }
table.form th { width: 30%; padding-right: 20px; text-align: right; vertical-align: top; }
table.form th label { display: block; line-height: 30px; }
table.form td input,
table.form td textarea { width: 97%; border: 1px solid #CCC; padding: 6px; font-size: 12px; outline: 0; resize: none; }

table.form #submit td label { display: none; }
#id_submit { cursor: pointer; width: 200px; background: #1b3648; color: #DAD5D0; text-align: left; text-transform: uppercase; border: 0; padding-left: 20px; }
#id_submit:hover { background: #3E6889; color: #FFF; }



/* Resources */
.resources .overview { font-size: 13px; }
.resources .overview ul,
.resources .overview ol { margin: 10px 0 20px 0; }
.resources .overview li { margin-left: 20px; }
.resources .overview a:hover  { color: #2f3539; }
.resources .overview p { margin-bottom: 10px; }
.resources .filed_under { font-weight: bold; }

.resources .details dt a { text-decoration: none; color: #555; }
.resources .details dd a { display: block; }

.resources .source { font-size: 11px; color: #2f3539; }
.resources .source a { font-size: 11px; color: #888; text-decoration: none; }
.resources .source a:hover  { color: #555; text-decoration: underline; }
.resources .visit a { text-decoration: none; font-weight: bold; }
.resources .visit a:hover { text-decoration: underline; }


/* Footer */
.footer div { float: left; margin-right: 50px; color: #eee; font-size: 12px; }
.footer .office h4 { font-weight: bold; }
.footer div.phones span { display: block; float: left; width: 80px; font-size: 11px; font-weight: bold; }
.footer a { color: #eee; }
.footer .copyright { float: right; margin: 0; width: 340px; height: 16px; text-indent: -9999px; background: url(../images/copyright.png) no-repeat left center; }


/* Photo flags */
.flag { display: block; position: absolute; right: 0px; top: 0px; width: 100px; height: 100px; text-indent: -9999px; background-position: center center; background-repeat: no-repeat; z-index: 50; }
.flag.featured { background-image: url(../images/flag_featured.png); }
.flag.status { display: none; z-index: 999; }
.flag.status.sold { display: block; background-image: url(../images/flag_sold.png); }
.flag.status.active-contingent,
.flag.status.pending { display: block; background-image: url(../images/flag_pending.png); }


/* Framed photo links */
a.photo_link { display: block; padding: 4px; overflow: hidden; }
a.photo_link:hover { border: 4px solid #3E6889; padding: 0; }
a.photo_link img { display: inline; margin-top: -4px; margin-left: -4px; }


/* Pagination */
.pagination { clear: both; overflow: hidden; }
.pagination a,
.pagination span { display: block; float: left; padding: 0 10px; text-decoration: none; }
.pagination .current,
.pagination a:hover { font-weight: bold; border-bottom: 2px solid #CCC; }
.pagination a:hover { border-bottom-width: 1px; font-weight: normal; }
.pagination a.prev,
.pagination a.next { background: #324b5a; color: #FFF; border: 0; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }
.pagination a.next:hover,
.pagination a.prev:hover { background: #376C90; }


/* Error pages */
.error .content ul { margin: 20px; }