body {
	font-family:Verdana, Lucida, Arial, Helvetica, sans-serif;
	font-size: 12px;
	line-height:16px;	
	color: #333333;
	background: #fffec1;
	background-image: url('../images/website/vilamoura-gradient-bgd.jpg');
	background-repeat: repeat-x;
	margin: 20px 0 20px 0;
	}


p {
	margin: 0 0 10px 0;
	}	

a {
	color: #153977;
	text-decoration: none;
	}
a:hover { 
	color: #339900;
	text-decoration: underline;
	}

#pagewrapper { 
	width: 980px;
	margin:auto;
	background: #d5e5f4;
	padding: 0;
	}
	
#topbar { 
	width: 980px;
	background: #ffe189 url(../images/website/vilamoura-topbar.gif) no-repeat;
	height: 30px;
	color: #fff;
	}
#date {
  	float: left;
	width: 145px;
	color: e5c38d;
	padding: 7px 30px;
 	font-size: 75%; 	
	}
#social {
  	float: left;
	width: 100px;
	padding: 8px 0 0 0;
	}
#social img {
  	border: none;
	}
#social  a:hover {
  	cursor: hand;
	}	
#topbarnav {
  	float: right;
  	margin: 0;
  	padding: 7px 30px;
 	font-size: 75%; 
	}
#topbarnav a { 
	color: #fffec1;
	text-decoration: none;
	}
#topbarnav a:hover { 
	color: #fff;
	text-decoration: underline;
	}
	
/** header divs **/	
#header {
	width: 980px;
	background: url(../images/website/vilamoura-header.gif) no-repeat;
	background-position: top left;	
	height: 130px;
	font-size: 15px;
	font-weight: bold;
	color: #153977;
	clear: both;
	margin: 0;
	padding: 0;
	}
#navbar { 
	margin: 0 auto;
	text-align: center;
	padding: 3px 0 0 0;
	width: 860px;
	}
#navbar img {
  	border: none;
	}
#navbar  a:hover {
  	cursor: hand;
	}	
#headertitle {
  	float: left;
	width: 560px;
  	margin: 0;
	padding: 0 0 0 200px;
	}

	
#mainwrapper { 
	background: #d5e5f4 url(../images/website/vilamoura-main.gif) repeat-y;
	background-position: top left;
	width: 940px; 
	padding: 0 20px 20px 20px; 
	overflow: auto; 
	clear: both;
	}
	
/** left side bar **/
#sidebarwrapper { 
	float: left;
	width: 160px;
	padding: 0 20px 0 0;
	margin: 10px 0 0 0;
	}     
#quickform {
	width: 150px;
	font-size: 9px;
	line-height: 12px;
	margin: 0 auto;
	padding: 5px;
	background: #ffffcc;
	text-align: left;
	color: #333;
	border: 1px solid #666;
	}
#quickform td {
	font-size: 9px;
	line-height: 12px;
	}
.quickfield {
	font-family:Verdana, Lucida, Arial, Helvetica, sans-serif;		
	color: #153977;
	font-size: 10px;
	padding: 2px 5px;
	background: #ffffff;
	width: 140px;
	border: 1px solid #ffcc66;
	}
.quickfield2 {
	font-family:Verdana, Lucida, Arial, Helvetica, sans-serif;		
	color: #153977;
	font-size: 10px;	
	padding: 2px 5px;
	background: #ffffff;
	width: 60px;
	border: 1px solid #ffcc66;
	}
.quickfield3 {
	font-family:Verdana, Lucida, Arial, Helvetica, sans-serif;		
	color: #153977;
	font-size: 9px;	
	padding: 1px;
	background: #ffffff;
	width: 40px;
	border: 1px solid #ffcc66;
	}	
.quickbutton {
	font-weight: bold; 
	font-size: 10px;	
	color: #333;
	text-align: center;
	background: #ffcc66;
	border: 0;
	padding: 2px;	
	}

/** main content **/

#content { 
	float: left;	
	width: 710px;
	text-align: justify;
	color: #333;
	background: #fff;
	border: 1px solid #666666;
	padding: 20px;
	margin: 10px 0 0 0;
	}

/** revised content header for IE fix **/
#content_header { 
	width: 712px;
	background: #153977;
	height: 27px;
	color: #fff;
	margin-top: 0px;
	margin-bottom: 15px;	
	}
#content_header_title {
  	float: left;
	font-size: 14px;
	line-height: 14px;
	font-weight: bold;
	padding: 6px;
	}	
#content_header_back {
  	float: right;
  	margin: 0;
  	padding: 5px 10px 0 0;
 	font-size: 9px; 
	}
#content_header_back a { 
	color: #d5e5f4;
	text-decoration: underline;	
	}
#content_header_back a:hover { 
	color: #fff;
	text-decoration: underline;
	}
	

#content h2 { 
	font-size: 14px;
	margin: 0;
	font-weight: bold;
	color: #153977;
	}
#content h3 { 
	font-size: 12px;
	font-weight: bold;
	margin-bottom: 5px;
	margin-top: 5px;
	color: #cb871a;
	}
#content div { overflow: auto; }
#content ul {
	margin: 5px 10px 5px 35px;
	padding: 0;
	list-style: disc;
	color: #333;	
	}
#content ol {
	margin: 5px 10px 5px 35px;
	padding: 0;
	}	
ol.lalpha {list-style-type: lower-alpha}
ol.lroman {list-style-type: lower-roman}
#content li {
	font-weight: bold;	
	padding: 0px 0 5px 0;
	}	

#properties {
	margin-top: 7px;
	}

/** villa info **/
#villa_desc {
	float: left;
	font-size: 12px;
	text-align: left;
	width: 432px;
	margin-right: 10px;
	}
	
#villa_slideshow {
	float: left;	
	margin: 0 10px 10px 0;
	width: 422px;
	}	
#villa_details {
	float: left;
	font-size: 11px;
	line-height: 13px;
	text-align: left;
	margin: 0;
	width: 265px;
	margin-bottom: 10px;
	}	
#villa_details .title {
	color: #153977;
	border-bottom: 1px solid #000;
	font-size: 12px;
	font-weight: bold;
	}
#villa_details .header {
	color: #153977;
	background: #eaeaea;
	font-size: 12px;
	font-weight: normal;
	padding: 0 0 0 3px;
	border-top: 5px solid #fff;
	}
#villa_details p, td {
	line-height: 13px;
	margin: 0;
	padding: 2px 0 0 3px;
	}	
#villa_details .info {
	font-size: 10px;
	font-weight: normal;
	color: #333;
	}		
#villa_details .date1 {
	color: #000;
	background: #dfecf7;
	padding: 3px;
	margin: 0;
	}
#villa_details .price1 {
	color: #000;
	font-weight: bold;
	background: #dfecf7;
	padding: 3px;
	margin: 0;
	text-align: right;
	}
#villa_details .date1_specialoffer {
	color: #000;
	background: #dfecf7;
	padding: 3px;
	margin: 0;
	}
#villa_details .price1_specialoffer {
	color: #bf0000;
	font-weight: bold;
	background: #dfecf7;
	padding: 3px;
	margin: 0;
	text-align: right;
	}
#villa_details .date2 {
	color: #000;
	background: #fff;
	padding: 3px;
	margin: 0;
	}
#villa_details .price2 {
	color: #000;
	font-weight: bold;
	background: #fff;
	padding: 3px;
	margin: 0;
	text-align: right;	
	}	
#villa_details .date2_specialoffer {
	color: #000;
	background: #fff;
	padding: 3px;
	margin: 0;
	}
#villa_details .price2_specialoffer {
	color: #bf0000;
	font-weight: bold;
	background: #fff;
	padding: 3px;
	margin: 0;
	text-align: right;	
	}	
#villa_amenities {
	padding: 0;
	font-size: 10px;
	margin: 20px 0 10px 0;
	}
#villa_amenities .title {
	color: #153977;
	border-bottom: 1px solid #000;
	font-size: 12px;
	font-weight: bold;
	}
#villa_amenities .info {
	font-size: 10px;
	font-weight: normal;
	color: #333;
	}
#villa_amenities td {
	padding: 7px 0 3px 0;
	line-height: 12px;
	}	
	
#villa_availability { 
	margin-top: 10px;
	margin-bottom: 10px;
	text-align: left;	
	background: #dfecf7;
	padding: 10px;
	border: 1px dashed #666;
	}
#villa_availability .title {
	color: #153977;
	border-bottom: 1px solid #000;
	font-size: 12px;
	font-weight: bold;
	}
#villa_availability .info {
	font-size: 10px;
	font-weight: normal;
	color: #333;
	}
#villa_availability p {
	font-size: 9px;
	line-height: 12px;
	}	
#villaform {
	width: 180px;
	font-size: 9px;
	line-height: 11px;
	margin: 0 auto;
	margin-top: 10px; 
	padding: 5px;
	background: #ecf4fb;
	text-align: left;
	color: #333;
	border: 1px solid #666;
	}
#villaform td {
	font-size: 9px;
	}
#villaform p {
	font-size: 9px ! important;
	}	
	
.villafield {
	font-family:Verdana, Lucida, Arial, Helvetica, sans-serif;	
	font-size: 10px;	
	color: #153977;
	padding: 2px 5px;
	background: #ffffff;
	width: 140px;
	border: 1px solid #1f3977;
	}

.villabutton {
	font-weight: bold; 
	font-size: 10px;	
	color: #fff;
	text-align: center;
	background: #153977;
	border: 0;
	}	
	
/** hotel info **/
#hotel_desc {
	float: left;
	font-size: 12px;
	text-align: justify;
	width: 432px;
	margin-right: 10px;
	color: #000;
	}
#hotel_slideshow {
	float: left;	
	margin: 0 0 10px 0;
	width: 422px;
	}	
#hotel_details {
	float: left;
	font-size: 11px;
	line-height: 13px;	
	text-align: left;
	margin: 0;
	width: 257px;
	margin: 0 0 10px 10px;
	}	
#hotel_details .title {
	color: #153977;
	border-bottom: 1px solid #000;
	font-size: 12px;
	font-weight: bold;
	}
#hotel_details .header {
	color: #153977;
	background: #eaeaea;
	font-size: 12px;
	font-weight: normal;
	padding: 0 0 0 3px;
	border-top: 5px solid #fff;
	}
#hotel_details p, td {
	line-height: 13px;
	margin: 0;
	padding: 2px 0 0 3px;
	}	
#hotel_details .info {
	font-size: 10px;
	line-height: 12px;
	font-weight: normal;
	color: #333;
	}	
	
#hotel_amenities {
	padding: 0;
	font-size: 10px;
	line-height: 13px;
	margin: 20px 0 10px 0;
	}
#hotel_amenities .title {
	color: #153977;
	border-bottom: 1px solid #000;
	font-size: 12px;
	font-weight: bold;
	}
#hotel_amenities .info {
	font-size: 10px;
	font-weight: normal;
	color: #333;
	}		
	
#hotel_prices { 
	margin-top: 10px;
	margin-bottom: 10px;
	text-align: left;	
	background: #dfecf7;
	padding: 10px;
	border: 1px dashed #666;
	}	
#hotel_prices .roomtype {
	color: #153977;
	font-size: 12px;
	font-weight: normal;
	padding: 3px;
	text-align: center;	
	}

#hotel_prices .date {
	color: #000;
	background: #dfecf7;
	font-size: 11px;	
	padding: 3px;
	margin: 0;
	text-align: center;		
	}
#hotel_prices .price {
	color: #000;
	font-weight: bold;
	background: #fff;
	padding: 3px;
	margin: 0;
	text-align: center;	
	}	


/** google map **/
#map_wrapper { 
	width: 710px;
	background: #fff;
	border: 1px solid #666666;
	padding: 20px;
	}
#map_header { 
	float: left;
	text-align: left;	
	width: 654px;
	background: #153977;
	height: 15px;
	color: #fff;
	font-weight: bold;
	font-size: 14px;
	margin: 0;
	padding: 6px 0 6px 6px;
	}
#map_print { 
	float:right;
	text-align: right;
	width: 40px;
	background: #fff;
	height: 27px;
	margin: 0;
	}
#map_print img {
	border: none;
	}
#map { 
	width: 708px;
	color: #153977;
	font-size: 12px;
	text-align: left;
	background: none;
	height: 416px;
	margin-top: 20px;
	padding: 0;
	border: 1px solid #333
	}	
	
	
/** listings page **/

#list_content { 
	float: left;	
	width: 710px;
	text-align: left;
	color: #333;
	background: #fff;
	border: 1px solid #666666;
	padding: 20px;
	margin: 10px 0 0 0;
	}
#list_content td { 
	line-height: 16px  ! important;
	}

#list_content h2 { 
	font-size: 13px;
	margin: 0 0 7px 0;
	font-weight: bold;
	color: #008000;
	}
	
#list_content h3 { 
	font-size: 12px;
	margin: 10px 0 7px 0;
	font-weight: bold;
	color: #008000;
	}	
	
#list_content p { 
	font-size: 12px;
	margin-bottom: 10px;
	}	
	
#list_content ul {
	margin: 5px 10px 5px 35px;
	font-size: 13px;	
	padding: 0;
	list-style: disc;
	color: #333;	
	}
#list_content ol {
	margin: 5px 10px 5px 35px;
	padding: 0;
	}	
#list_content ol.lalpha {list-style-type: lower-alpha}
#list_content ol.lroman {list-style-type: lower-roman}
#list_content  li {
	font-weight: bold;
	padding: 0px 0 5px 0;
	}		
	
#list_content .list_pic {
	float: left;	
	border: 1px solid #666;
	margin-right: 10px;
	width: 150px;
	}
#list_content .list_desc {
	float: left;
	font-size: 12px;
	text-align: left;
	width: 300px;
	margin-right: 20px;
	}
#list_content .list_desc a {
	color: #153977;
	text-decoration: none;
	}
#list_content .list_desc a:hover {
	color: #008000;
	text-decoration: underline;
	}
	
#list_content .amenities {
	float: left;
	padding: 0;
	font-size: 10px;
	line-height: 12px;
	margin: 0;
	width: 220px;
	}
#list_content .justify {
	text-align: justify;
	}
	
#list_content .testimonial {
	width: 320px;
	padding: 10px;
	overflow: auto;
	background: #ffffdd;
	margin-bottom: 10px;
	border: 1px solid #666;
	}
#list_content .testimonial p {
	color: 666;
	font-size: 10px; 
	line-height: 12px;
	}		
	
#articles .article { 
	font-size: 12px;	
	text-align: left;
	color: #333;
	}
#articles .article h3 { 
	font-size: 13px;
	margin: 10px 0 0 0;
	font-weight: bold;
	color: #008000;
	}
#articles .article p { 
	font-size: 12px;
	margin-bottom: 5px;
	}	
#articles .article_link a { 
	font-size: 11px;
	color: #153977;
	text-decoration: underline;
	}
#articles .article_link a:hover { 
	font-size: 11px;	
	color: #000;
	text-decoration: underline;
	}	
	
#sections .section { 
	font-size: 12px;	
	text-align: left;
	color: #333;
	}
#sections .section h2 { 
	font-size: 13px;
	margin: 10px 0 0 0;
	font-weight: bold;
	color: #008000;
	}
#sections .section p { 
	font-size: 12px;
	margin-bottom: 5px;
	}	
#sections .section_link a { 
	font-size: 11px;
	color: #153977;
	text-decoration: underline;
	}
#sections .section_link a:hover { 
	font-size: 11px;	
	color: #000;
	text-decoration: underline;
	}	

	
#bullet ul {
	margin: 10px 10px 5px 30px;
	padding: 0;
	list-style: disc;
	}
#bullet li {
	padding: 0px 0 8px 0;
	color: #153977;
	text-align: left;
	font-weight: bold;	
	}		

#Terms { font-size: 10px; }

#btmbar { 
	margin: 0 auto;
	width: 980px;
	font-size: 80%;
	font-weight: bold;
	text-align: center;
	padding-top: 8px;
	background: #fffec1 url(../images/website/vilamoura-btmbar.gif) no-repeat;
	height: 60px;
	color: #ffffff;
	}
#textlinks {  
	font-size: 10px;
	line-height: 13px;
	font-weight: normal;
	padding: 20px 0px;
	text-align: center;
	color: #333;
	}
#textlinks ul {
	margin:0;
	padding:0;
	text-align: center;
	}
#textlinks ul li {
	display: inline;
	padding: 0 15px;
	}
#textlinks a { 
	color: #000;
	text-decoration: underline;	
	}
#textlinks a:hover {
	color: #008000;
	text-decoration: underline;
	}
	
#back {
	float: right;
	width: 100px;
	font-weight: normal;
	text-align: right;
	font-size: 9px;
	color: #d5e5f4;
	margin: 0;
	padding: 0;
}
#back a { 
	color: #d5e5f4;
	text-decoration: underline;	
	}
#back a:hover {
	color: #fff;
	text-decoration: underline;
	}

.button {
	font-family: Verdana, Lucida, Arial, Helvetica, sans-serif;
	font-size: 11px;
	padding: 2px 2px 2px 2px;
	font-weight: bold;
	color: #00182b;
	background-color: #fed000;
	border: 2px solid #00182b;
}

.picborder {
	border: 1px solid #666;
	}
.banner {
	padding: 10px;
	background: #eaeaea; 
	border: 1px solid #666;
	}
.banner p {
	font-size: 11px !important;
	line-height: 14px !important;
	margin: 0 0 7px 0 !important; 
	}
.banner h3 { 
	font-size: 12px !important;
	font-weight: bold !important;
	margin: 0 0 2px 0 !important;
	padding: 0 !important;
	color: #cb871a !important;
	}	
	
.sidebarfield {
	font-family: Verdana, Lucida, Arial, Helvetica, sans-serif;
	font-size: 11px;
	color: #00182b;
	background-color: #fff;
	border: 1px solid #00182b;
	height: 18px;
}
.sidebarbutton {
	font-family: Verdana, Lucida, Arial, Helvetica, sans-serif;
	font-size: 11px;
	color: #00182b;
	background-color: #fed000;
	border: 1px solid #00182b;
	height: 20px;
}

/*horizontal rules*/
hr.bluerule {border: none 0; 
	border-top: 1px solid #153977;
	border-bottom: 1px solid #fff;
	width: 100%;
	height: 2px;
	}
hr.listrule {border: none 0; 
	border-top: 1px solid #153977;
	border-bottom: 1px solid #fff;
	width: 100%;
	height: 2px;
	margin: 5px 0;
	}
hr.bannerrule {border: none 0; 
	border-top: 1px solid #666;
	border-bottom: 1px solid #eaeaea;
	width: 100%;
	height: 2px;
	}	
	
.info {
	font-size: 10px;
	line-height: 12px;
	color: #153977;
}

.description {
	font-size: 11px;
	color: #333;
	background-color: #cce0c5;
	font-weight: bold;
}



.excluding {
	width: 520px;
	height: auto;
	padding: 20px 20px 20px 20px;	
	background-color: #efefef ;
	border: 1px solid #999;
}

.form label  {
	width: 150px;
	float: left;
	padding-top: 5px;
	padding-bottom: 5px;
	}

.formfield {
	color: #153977;
	padding: 2px 5px;
	background: #ffffff;
	border: 1px solid #1f3977;
}

.formbutton {
	font-weight: bold; 
	font-size: 100%;	
	color: #fff;
	text-align: center;
	background: #153977;
	border: 0;
	}
	
.paging {
	font-size: 10px;
}
.paging_link {
	margin-left: 2px;
	padding:1px 5px 1px 5px;
	border:solid 1px #ccc;
	background-color: #ffffcc;
	color: #153977;
	}
a.paging_link {
	padding:1px 5px 1px 5px;
	border:solid 1px #ccc;
	background-color: #fff;
	color: #666;
	}
a.paging_link:hover {
	color: #339900;
	text-decoration: none;
	border:solid 1px #339900;
	}
	
	
.special_offer { 
	clear: both;
	margin-bottom: 10px;
	color:#bf0000;
	}
.special_offer h3 { 
	font-size: 13px;
	margin: 10px 0 0 0;
	font-weight: bold;
	color:#bf0000 ! important;
	}
div.Clear { clear: both; width: 645px;}

#availability_search {
	font-size: 10px;
	line-height: 12px;	
	border:solid 1px #ccc;
	background-color: #ffffcc;
	color: #153977;
	font-weight: bold;
	padding: 10px;
}
#availability_search h2 { 
	font-size: 14px;
	margin: 0 0 5px;
	font-weight: bold;
	color: #339900;
	}
#resultstext { 
	margin-top: 10px;
	color:#bf0000;
	}	
#noresults { 
	margin-top: 10px;
	color:#bf0000;
	}	
.availabilityfield {
	color: #153977;
	height: 22px;	
	padding: 2px 0 2px 5px;
	background: #ffffff;
	border: 1px solid #153977;
}
.calendarfield {
	cursor: pointer;
	width: 70px;
	height: 16px;
	color: #153977;
	padding: 2px 3px 2px 35px;
	background: #fff url(../images/icons/calendar-icon.gif) no-repeat;
	border: 1px solid #153977;
}
.availabilitybutton {
	font-weight: bold; 
	font-size: 10px;	
	color: #333;
	text-align: center;
	background: #ffcc66;
	border: 0;
	padding: 2px;	
	}
