/***** Global Settings *****/

html, body {
	border:0;
	margin:0;
	padding:0;
	outline:none;
}

body {
	font: 12px/1.25 Georgia, "Times New Roman", Times, serif; 
	background: url(images/bg.jpg) repeat-x top center #e0d1bc;
	color: #2a2b2f;
	height: auto;
}

/***** Common Formatting *****/

a, img{ outline: none;}

h1, h2, h3, h4, h5, h6 {
	margin:0;
	padding: 0;
	font-weight:normal;
}

h1 {
	padding: 0;
	margin: 0px 0px 10px 0px;
	font-family: Arial, Helvetica, sans-serif;
	color: #ae0000;
	font-size: 16px;
}
h2{ 
	padding: 0;
	margin: 5px 0 10px 0;
	font-family: arial, helvetica, sans-serif ;
	font-weight: normal;
	color: #211e1e;
	font-size: 13px;
	line-height:1.4em;
}
h3{ 
	padding: 0;
	margin: 14px 0;
	font-family: arial, helvetica, sans-serif ;
	font-weight: normal;
	color: #675c50;
	font-size: 14px;
}


p, ul, ol {
	margin:0;
	padding:0 0 14px 0;
	line-height:1.5em;
}
p{ 	text-align: left;}

ul, ol {
	list-style:none;
	padding:0 0 18px 40px;
}

blockquote {
	margin:22px 40px;
	padding:0;
}

small { font-size:0.85em; }
img { border:0; }

sup {
	position:relative;
	bottom:0.3em;
	vertical-align:baseline;
}

sub {
	position:relative;
	bottom:-0.2em;
	vertical-align:baseline;
}

acronym, abbr {
	cursor:help;
	letter-spacing:1px;
	border-bottom:1px dashed;
}

/***** Links *****/

a, a:visited {
	text-decoration:none;
	outline: none;
}
a:link{ color: #0082C5;}
a:visited{ color: #0082C5;}
a:hover{ color: #0082C5; text-decoration: underline;}
a:active{ color: #0082C5;}

/***** Forms *****/

form {
	margin:0;
	padding:0;
	display:inline;
}

input, select, textarea { font:1em arial, helvetica, sans-serif; }
textarea { line-height:1.25; }
label { cursor:pointer; }

/***** Tables *****/

table {
	border:0;
	margin:0 0 18px 0;
	padding:0;
}

table tr td {
	padding:2px;
}

/***** Wrapper *****/

.wrap {
	width:859px;
	margin: 0 auto;
	padding: 0;
	height: 100%;
	background-color: #fff;
}

/***** Global Classes *****/

.clear 			{ clear:both; }

.floatLeft 		{ float:left; }
.floatRight 	{ float:right; }

.text-left 		{ text-align:left; }
.text-right 	{ text-align:right; }
.text-center 	{ text-align:center; }
.text-justify 	{ text-align:justify; }

.bold 			{ font-weight:bold; }
.italic 		{ font-style:italic; }
.underline 		{ border-bottom:1px solid; }
.highlight 		{ background:#ffc; }

.img-left 		{ float:left;margin:4px 10px 4px 0; }
.img-right 		{ float:right;margin:4px 0 4px 10px; }

.nopadding 		{ padding:0; }
.noindent 		{ margin-left:0;padding-left:0; }
.nobullet 		{ list-style:none;list-style-image:none; }

.width100 		{ width: 100%; }
.width75 		{ width: 75%; }
.width50 		{ width: 50%; }

/***** Structure Classes *****/

#header{
	display: block;
	float: none;
	clear: both;
	width: 100%;
	height: 320px;
	margin: 0;
	padding: 0;
}
#contenido{
	display:block;
	float:none;
	clear:both;
	width:100%;
	min-height: 500px;
	height:100%;
	margin:0px;
}
#pie{
	display:block;
	float:none;
	clear:both;
	width:100%;
	height:21px;
}

/***** Header Classes *****/

#header .wrap{
	padding: 0;
	margin: 0 auto;
	width: 859px;
	height: 320px;
}
#header .wrap img{
	position: relative;
	float: right;
	clear: none;
	margin: 0;
	padding: 0;
	height: 320px;
}
#header .wrap ul#topNavi {
	position: absolute; 
	z-index: 9;
	width: 859px;
	height:42px;
	padding:0;
	margin:0;
	top: 278px;
	background: url(images/bgTopNavi.jpg) repeat-x top left;
	filter:alpha(opacity=80); opacity:.8; -moz-opacity:.8;
}
ul#topNavi li{
	display:block;
	float:left;
	clear: none;
	margin: 0;
	border-right: solid 1px #e5dbd0;
	padding: 0;

}
ul#topNavi li.last{ float:right; border: none; padding: 0 42px 0 0;}
ul#topNavi li a{
	display:block;
	height:17px;
	margin: 0;
	padding: 11px 18px 14px 18px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	text-transform: uppercase;
	text-decoration: none;
}

ul#topNavi li.last a{
	display: block;
	float: left;
	margin: 11px 0 0 0;
	padding: 0 3px 1px 3px;
	border-right: solid 1px #e5dbd0;
}
ul#topNavi li.last a.last{ border:none;}

ul#topNavi li a:link{ color: #fff; }
ul#topNavi li a:visited{ color: #fff; }
ul#topNavi li a:hover{ color: #fff; }
ul#topNavi li a:active{ color: #fff; }
ul#topNavi li a.active{ background: #fff; color: #413024;}
ul#topNavi li a.last{ background: none;}

/***** Contenido Classes *****/

#contenido #colIzq{
	display: block;
	float: left;
	clear: none;
	width: 481px;
	height: auto;
	margin: 0;
	padding: 20px 22px;
}
#contenido #colIzq p{ text-align: justify;}
#contenido #colIzq ul li{ list-style: disc;}
#contenido #colIzq img.logoPortico{
	display: block;
	margin: 0 auto 18px auto;
}
#contenido #colIzq h1{
	font-family: Georgia, "Times New Roman", Times, serif;
	font-size: 15px;
	font-weight: bold;
	text-align: center;
	color: #413024;
	background: url(images/underliner.jpg) no-repeat center bottom;
	margin:0 0 16px 0;
	padding:0 0 10px 0;
}
#contenido ul#galeria{
	display: block;
	float: right;
	margin: 32px 22px 0 0;
	padding: 0;
	width: 306px;
	height: auto;
}
#contenido ul#galeria li{
	display: block;
	float: left;
	clear: none;
	width: 131px;
	height: 86px;
	margin: 0 10px 10px 0;
	padding: 4px 5px;
	background: url(images/thumbHolder.jpg) no-repeat top left;
}

/***** Paging Classes *****/

#pagingBar{ 
	display: block; 
	height: 22px;
	width: 666px;
	margin: 0; 
	background-color: #f9d14e;
	padding: 14px 8px 8px 14px; 
	color: #1f1f1d; 
}
#pagingBar .results{ padding-left: 8px; }
#pagingBar a{ 
	text-decoration: none;
	border: none;
	background-color: #ffb400;
	padding: 2px 6px; 
	margin: 0 1px 0 0;
	font-weight: bold;
	color: #fff;
	font-size: 1em;
}

/***** Listing *****/
ul#results{
	display: block;
	margin: 10px 20px;
	padding: 0;
	height: auto;
	width: 100%;
}
ul#results li{
	display: block;
	float: left;
	clear: none;
	margin: 0 20px 0 0;
	padding: 0 0 0 5px;
	border-left: solid 1px #123456;
	font-family: Georgia, "Times New Roman", Times, serif;
}

#listingHeader, .listingHeader{
	display: block;
	float: left;
	clear: none;
	width: 100%;
	height: 55px;
	margin: 0;
	padding: 0;
}
.itemEven, .itemUneven{ 
	display: block;
	float: none;
	clear: both; 
	height: auto;
	min-height: 110px; 
	padding: 12px 0 12px 0; 
	margin: 0px; 
	background-color: #fff; 
	width: 859px; 
}
.itemUneven{ background-color: #EFEEEC;}

#contenido .itemEven #colIzq,
#contenido .itemUneven #colIzq{
	display: block;
	float: left;
	clear: none;
	width: 550px;
	height: auto;
	margin: 0;
	padding: 0 0 20px 0;
	
}

.itemEven p.price,
.itemUneven p.price{
	font-weight: bold;
	font-size: 1.4em;
	background: url(images/separator.png) no-repeat center left;
	padding: 0 0 0 44px;
	margin: 0;
}
.itemEven p.price em,
.itemUneven p.price em{ font-size: 0.65em; font-weight: normal;}
.itemEven p.descr,
.itemUneven p.descr{
	font-size: 1.1em;
	margin: 10px 0 0 44px;
	text-align: justify;
}

.itemEven ul#images,
.itemUneven ul#images{
	display:block;
	float:right;
	height:auto;
	margin:0;
	padding:0;
	width:294px;	
	min-height: 60px; 
}
.itemEven ul#images li, 
.itemUneven ul#images li{ 
	display: block;
	float: left; 
	clear:none; 
	border: none;
	padding: 0; 
	margin: 0 12px 10px 0;
	height: 88px;
	width: 128px;
	overflow: hidden;
}
.itemEven ul#images li a, 
.itemUneven ul#images li a{
	display: block;
	float: left;
	clear: both;
	margin: 0;
	padding: 0;
	border: solid 1px #e1e1e1; 
	background-color: #fff; 
	padding: 3px; 
} 

.itemEven ul#images li img, 
.itemUneven ul#images li img{
	max-height: 80px;
}

/**** For sale list Classes ****/

p.titulo{
	display: block;
	float: left;
	clear: both;
	width: auto;
	min-width: 380px;
	font-weight: bold;
	padding:0 0 8px;
	margin: 0 0 0 44px;
	text-decoration: underline;
}
.itemEven p.titulo,
.itemUneven p.titulo{ margin: 0 0 0 30px;}

dl.details {
	display:block;
	float:left;
	clear: both;
	height:auto;
	margin:10px 0 20px 30px;
	padding:0;
	width:520px;
}
dl.details dt {
	background-color:#DAE6F2;
	border-bottom:1px solid #B4CCE4;
	color:#3E3B33;
	display:block;
	float:left;
	font-size:1em;
	font-weight:bold;
	height:25px;
	margin:0;
	padding:5px 3px 5px 6px;
	width:124px;
}
dl.details dd {
	background-color:#EFEEEC;
	border-bottom:1px solid #DDDCD9;
	color:#006BA5;
	display:block;
	float:left;
	font-size:1em;
	font-weight:normal;
	height:25px;
	margin:0;
	padding:5px 0 5px 5px;
	width:118px;
}
.itemUneven dl.details dd{ background-color:#f6f5f3;} 
.itemEven dl.details dd{ background-color:#EFEEEC;} 
ul#specs {
	background-color:#EFEEEC;
	border:1px solid #DDDCD9;
	display:block;
	float:left;
	clear: both;
	margin:0 0 20px 30px;
	padding:5px;
	width:450px;
}
.itemUneven ul#specs{ background-color:#f6f5f3;}
.itemEven ul#specs{ background-color:#EFEEEC;}

ul#specs li {
	background:transparent url(images/ico_check.jpg) no-repeat scroll left center;
	border-bottom:1px dotted #C5C4C4;
	clear:none;
	display:block;
	float:left;
	list-style-image:none;
	list-style-position:outside;
	list-style-type:none;
	margin:0 0 0 6px;
	padding:4px 0 4px 20px;
	width:196px;
}
a.backToTop{
	display: block;
	float: left;
	clear: both;
	margin: 10px 20px 0 30px;
	padding: 0 0 0 8px;
	background: url(images/flechaUp.gif) no-repeat top left;
}

#shortlinks{
	display: block;
	float: left;
	clear: both;
	margin: 10px 0 10px 30px;
	padding: 0;
}
#shortlinks a{
	display: block;
	float: left;
	margin: 0 20px 0 0;
	padding: 2px 0 2px 20px;
}
#shortlinks a.rates{ background: url(images/coins.png) no-repeat center left;}
#shortlinks a.availability{ background: url(images/group_key.png) no-repeat center left;}
#shortlinks a.booking{ background: url(images/date.png) no-repeat center left;}

ul#jNavi{
	display: block;
	float: left;
	clear: both;
	margin: 10px 0 10px 30px;
	padding: 0;
}
ul#jNavi li{
	display: block;
	float: left;
	clear: none;
	margin:0 5px 0 0;
	padding:0 5px 0 0;
	border-right: solid 1px #B4CCE4;
}
ul#jNavi li.last{ border: none;}

ul#jNavi li a{ font-weight: bold; padding: 5px; background-color: #0082C5; color: #fff;}

/***** Info form Classes *****/

form#infoform{
	display: block;
	float: left;
	clear: both;
	width:450px;
	margin:0 0 20px 30px;
	padding:10px;
	background-color:#EFEEEC;
	border:1px solid #DDDCD9;
}
.itemEven form#infoform{ background-color:#EFEEEC;}
.itemUneven form#infoform{ background-color:#F6F5F3;}

form#infoform #fLeft{ display: block; float: left; width: 220px;}
form#infoform #fRight{ display: block; float: right; width: 220px;}
form#infoform label{ display: block; float: left; clear: both; width: 180px; margin: 2px 0;}
form#infoform input{ display: block; float: left; clear: both; width: 180px; margin: 2px 0;}
form#infoform textarea{ display: block; float: left; clear: both; margin:2px 0; width:210px; height: 80px;}

/***** Pricing table Classes *****/

table#rates {
	border-collapse:collapse;
	margin:0 0 20px 30px;
	width:460px;
	clear: both;
	color: #3E3B33;
}
table#rates th {
	border-bottom:1px solid #B4CCE4;
	font-size:1.1em;
	text-align:center;
}
table#rates tr td {
	border-bottom:1px solid #DDDCD9;
	padding:4px 0;
	text-align:center;
}

/**** Calendar Classes ****/

ul#naviCalendar{
	display: block;
	float: left;
	clear: both;
	margin: 0 0 0 30px;
	padding: 0;
	width: 300px;
}
ul#naviCalendar li{
	display: block;
	float: left;
	clear: none;
	margin: 0 10px 0 0;
	padding: 0;
	list-style: none;
}
ul#naviCalendar #yearNaviCalendar{ font-size: 1.2em; font-weight: bold;}
#cntCalendar {
	display:block;
	float: left;
	clear: both;
	margin: 10px 0 0 30px;
	width: 770px;
}
#cntCalendar .month {
	border:1px solid #BFBFBF;
	display:inline;
	float:left;
	font-family:Verdana,Arial,Helvetica,sans-serif;
	font-size:13px;
	margin-bottom:4px;
	margin-right:0.3em;
	padding:4px;
}
#cntCalendar table { border-collapse:separate; margin: 0 0 6px 0; }
#cntCalendar .month tr { overflow:hidden; }
#cntCalendar .month th.month-label {
	background-color:#4f9ba3;
	color:#fff;
	font-weight:bold;
}
#cntCalendar .month th, #cntCalendar .month td {
	line-height:1em;
	overflow:visible;
	vertical-align:middle;
	white-space:nowrap;
	width:1em;
}
#cntCalendar .month th, #cntCalendar .month td {
	border:0 none;
	padding:3px;
	text-align:center;
	width:auto;
	font-size: 0.95em;
}
#cntCalendar .April td,
#cntCalendar .May td,
#cntCalendar .June td,
#cntCalendar .September td,
#cntCalendar .October td{
	background-color: #ffa500;	
	color: #fff;
}
#cntCalendar .November td,
#cntCalendar .December td,
#cntCalendar .January td,
#cntCalendar .February td,
#cntCalendar .March td{
	background-color: #008000;
	color: #fff;		
}
#cntCalendar .July td,
#cntCalendar .August td{
	background-color: #5da8e2;
	color: #fff;		
}

caption, th { text-align:left; }
#cntCalendar .legend dt.u, #cntCalendar .month td.u {
	background-color:#ff0000;
	text-decoration:line-through;
}
#availability .legend dt.a, .calendars .month td.a {
	background-color:#FFFFFF;
}
#cntCalendar .month td.e {
	visibility:hidden !important;
}
#cntCalendar .month th.day-label{ background-color: #fff;}
#cntCalendar .month th.weekend{ background-color: #ccd3d9;}

.diaLlegada {
	background: url(images/diaLlegada.png) no-repeat top left;
}
.diaSalida {
	background: url(images/diaSalida.png) no-repeat top left;
}
.diaDoble {
	background: url(images/diaDoble.png) no-repeat top left;
}

table.legend{ display: block; float: left; clear: both; margin: 10px 0 20px 40px; padding: 0;}

/***** Reservation Form Classes *****/

table#reservationTable{
	margin: 10px 0 20px 0;
	width: 668px;
	border-collapse: collapse;
}
table#reservationTable tr td{ border: solid 1px #B4CCE4; text-align: left; padding: 4px 0 4px 10px; }
table#reservationTable tr td.head{ background: #DAE6F2; border: solid 1px #B4CCE4; text-align: right; padding-right: 10px; font-weight: bold; }
table#reservationTable tr td .required{ color: #cc0000; font-weight: bold;}
table#reservationTable tr td input.chk{ width: 15px;}

input#fechaVueltaMiniCal, 
input#fechaIdaMiniCal{
	background: url(images/ico_calendar.gif) no-repeat top left;
	border: 0;
	outline: none;
	width: 16px;
	height: 16px;
	display: block;
	float: left;
	cursor: pointer;
	margin: 2px 2px 0 2px;
}

p.step{ font-weight: bold; font-style: italic; margin: 0 0 4px; padding: 0;}
div.paso{ display: block; float:left; clear: both; margin: 0 0 0 30px; width: 668px;}

input#fechaVueltaMiniCal, 
input#fechaIdaMiniCal{
	background: url(images/ico_calendar.gif) no-repeat top left;
	border: 0;
	outline: none;
	width: 16px;
	height: 16px;
	display: block;
	float: left;
	cursor: pointer;
	margin: 2px 2px 0 2px;
}

table#reservationTable tr td .priceLeft{ display: block; float: left; margin: 0 0 0 5px;}
table#reservationTable tr td.priceTotal{ background-color: #7db8d5; color: #000;}

#paso2, #paso3{ width: 668px;}
#paso3 fieldset{ margin: 0 0 20px 0; padding: 0; border: 0; background:#DAE6F2 none repeat scroll 0 0; border:1px solid #B4CCE4;}
#paso3 fieldset p{ margin: 2px 0 8px 0; padding: 10px;}

textarea#disclaimer{
	display: block;
	float: none;
	clear: both;
	width: 550px;
	height: 140px;
	color: #333;
	padding: 10px;
	margin: 10px 0 0 0;
}

input.invalid { background: #faa; }
input.valid { background: #afa; }

#reservationTable td label {
	clear:left;
	margin:2px 0 6px 0;
	width:150px;
}
#reservationTable td label, #reservationTable td input, #reservationTable td textarea {
	display:block;
	float:left;
}
#reservationTable td input{ width: 186px;}
#reservationTable td input.reset{ width: 16px;}
#reservationTable td textarea{ width: 186px;} 

/***** Footer Classes *****/

#pie .wrap{
	padding: 0;
	margin: 0 auto;
	width: 859px;
	height: 21px;
	background-color: #5a9a9c;
	color: #fff;
	font-size: 0.8em;
	font-family: Arial, Helvetica, sans-serif;
}
#pie .wrap ul#pieIzq{
	margin: 0 0 0 20px;
	padding: 4px 0 0 0;
}
#pie .wrap ul#pieIzq li{
	display: block;
	float: left;
	width: auto;
	height: auto;
	margin: 0 7px 0 0;
	padding: 0 7px 0 0;
	border-right: solid 1px #E5DBD0;
}
#pie .wrap ul#pieIzq li.last{ border-right: none;}
#pie .wrap ul#pieIzq li.last{ border: none;}
#pie .wrap ul#pieIzq li a:link{ color: #fff; }
#pie .wrap ul#pieIzq li a:visited{ color: #fff; }
#pie .wrap ul#pieIzq li a:hover{ color: #fff; }
#pie .wrap ul#pieIzq li a:active{ color: #fff; }

/***** Contact Classes *****/

.mError{
	width: 440px;
	height: 35px;
	margin: 10px 0;
	padding: 8px 20px;
	border: solid 1px #e67873;
	background: #f19692;
}
.mOk{
	width: 440px;
	height: 30px;
	margin: 10px 0;
	padding: 8px 20px;
	border: solid 1px #84c371;
	background: #b3eca1;
}
#contactform fieldset{ border: none;}
#contactform label{
	display: block;
	width: 100px;
	float: left;
	clear: both;
	margin: 2px 0;
}
#contactform input{
	display: block;
	width: 350px;
	float: left;
	margin: 2px 0;
}
#contactform input.paired{ width: 50px;}
#contactform textarea{
	width: 350px;
	height: 90px;
	float: left;
	margin: 2px 0 12px 0;
}
#contactform img.antiSpam {
	margin:0;
	display: block;
	float: left; 
}
#contactform input.invalid { background: #faa; }
#contactform input.valid { background: #afa; }
.obli{ color: #cc0000;}
