body, div, p, img, li,
h1, h2, h3, form,
table, th, td { margin: 0; padding: 0; border: none; }

body            { font: 13px 'Lucida Grande', 'Lucida Sans Unicode', Sans-Serif; }
h1              { font-size: 18px; color: #2A6012; }
h1 a            { font-size: 13px; color: #2A6012; text-decoration: none; font-weight: normal; border: 0 solid #2A6012; border-width: 0 0 0 1px; padding: 0 0 0 .5em; margin: 0 0 0 .5em; }
h2              { font-size: 13px; color: #2A6012; text-transform: uppercase; margin-top: 5px; }
h3              { font-size: 13px; color: #2A6012; margin-top: 5px; }
p               { margin-top: 5px; text-align: justify; }
sup             { font-size:  80%; vertical-align: text-top; }
ol              { margin: .5em 0; padding: 0 0 0 25px; }

div.page-header { font-size: 12px; }
div.page-footer { font-size: 10px; }
div.page-seo    { font-size:  9px; }
div.page-links  { font-size: 10px; }

.notes { font-size: 10px; }

/* header positioning */
div.page-header           { background: url('../img/bgs.gif'); }
div.page-header-c         { width: 960px; height: 185px; margin: 0 auto; position: relative; }
div.page-header div.logo  { position: absolute; top:     0; left:     0; height: 169px; width: 270px; }
div.page-header div.menu  { position: absolute; top:     0; right:    0; height:  45px; }
div.page-header div.langs { position: absolute; top: 140px; left: 257px; }

/* header -> logo */
div.page-header div.logo { }
div.page-header div.logo img { }

/* header -> menu */
div.page-header div.menu ul { padding: 0; margin: 0; list-style: none; }
div.page-header div.menu li { padding: 0; margin: 0; font-weight: bold; text-transform: uppercase; display: inline-block; }
div.page-header div.menu  a { text-decoration: none; }

div.page-header div.menu div.menu-1        { }
div.page-header div.menu div.menu-1-l      { background: #143C00 url('../img/bgs.gif')  left -277px; padding-left: 5px; }
div.page-header div.menu div.menu-1-c      { background: #143C00 url('../img/bgs.gif')  left -185px; }
div.page-header div.menu div.menu-1-r      { background: #143C00 url('../img/bgs.gif') right -277px; padding-right: 5px; }
div.page-header div.menu ul.menu-1         { }
div.page-header div.menu li.menu-1         { position: relative; height: 45px; line-height: 45px; }
div.page-header div.menu  a.menu-1,
div.page-header div.menu  a.menu-1:link,
div.page-header div.menu  a.menu-1:visited { padding: 0 5px 0 6px; margin-left: -1px; border-right: 1px solid #FFF; color: #FFF; }
div.page-header div.menu  a.menu-1.first   { margin-left: 0; }
div.page-header div.menu  a.menu-1.last    { border-right: none; }
/*div.page-header div.menu  a.menu-1:hover,*/
div.page-header div.menu  a.menu-1.hover   { display: inline-block; background: white url('../img/bgs.gif') left -231px; color: #143C00 !important; }

div.page-header div.menu div.menu-2        { position: absolute; top: 45px; left: -5px; display: none; white-space: nowrap; line-height: 26px; }
div.page-header div.menu div.menu-2.shown  { display: block; }
div.page-header div.menu div.menu-2-l      { background: url('../img/bgs.gif')  left -349px; padding-left: 5px; }
div.page-header div.menu div.menu-2-c      { background: url('../img/bgs.gif')  left -323px; }
div.page-header div.menu div.menu-2-r      { background: url('../img/bgs.gif') right -349px; padding-right: 5px; }
div.page-header div.menu ul.menu-2         { }
div.page-header div.menu li.menu-2         { position: static; padding: 0 8px; margin: 0; border-right: 1px solid #FFF; }
div.page-header div.menu li.menu-2.last    { border-right: none; }
div.page-header div.menu  a.menu-2,
div.page-header div.menu  a.menu-2:link,
div.page-header div.menu  a.menu-2:visited { color: #143C00; }
div.page-header div.menu  a.menu-2.first   { }
div.page-header div.menu  a.menu-2.last    { border-right: none !important; }
div.page-header div.menu  a.menu-2:hover,
div.page-header div.menu  a.menu-2.hover  { color: #FFF; }

div.page-header div.menu div.menu-1 li.last div.menu-2 { left: auto; right: -5px; }

/* header -> langs */

div.page-header div.langs                { }
div.page-header div.langs ul             { padding: 0; margin: 0; list-style: none; }
div.page-header div.langs li             { padding: 0; margin: 0; display: inline-block; }
div.page-header div.langs img            { width: 20px; height: 26px; margin-right: 8px; }
div.page-header div.langs a       img.it { background: url('../img/sprites.gif')    0   -60px; }
div.page-header div.langs a       img.en { background: url('../img/sprites.gif')  -20px -60px; }
div.page-header div.langs a       img.fr { background: url('../img/sprites.gif')  -40px -60px; }
div.page-header div.langs a       img.es { background: url('../img/sprites.gif')  -60px -60px; }
div.page-header div.langs span    img.it,
div.page-header div.langs a:hover img.it { background: url('../img/sprites.gif')  -80px -60px; }
div.page-header div.langs span    img.en,
div.page-header div.langs a:hover img.en { background: url('../img/sprites.gif') -100px -60px; }
div.page-header div.langs span    img.fr,
div.page-header div.langs a:hover img.fr { background: url('../img/sprites.gif') -120px -60px; }
div.page-header div.langs span    img.es,
div.page-header div.langs a:hover img.es { background: url('../img/sprites.gif') -140px -60px; }

/* contents */

div.page-contents   { background: white url('../img/bg-page.gif') repeat-x bottom left; }
div.page-contents-c { width: 960px; margin: 0 auto; }

/* columns */

div.page-col1         { float: left;  width: 470px; min-height: 375px; }
div.page-col1-noextra { float: left;  width: 470px; min-height: 442px; }
div.page-col2         { float: right; width: 476px; min-height: 375px; }
div.page-col2-noextra { float: right; width: 476px; min-height: 442px; }
div.page-col2-gallery { float: right; width: 476px; min-height: 420px; margin-top: -45px; position: relative; }
div.page-single-col   { min-height: 442px; }

/* gallery */

div.gallery                   { position: relative; }
div.gallery div.carousel      { height: 357px; width: 476px; }
div.gallery div.tab           { position: absolute; top: 357px; left: 355px; height: 30px; line-height: 30px; }
div.gallery div.tab-l         { background: url('../img/bgs.gif')  left -405px; padding-left: 5px; }
div.gallery div.tab-c         { background: url('../img/bgs.gif')  left -375px; }
div.gallery div.tab-r         { background: url('../img/bgs.gif') right -405px; padding-right: 5px; }
div.gallery div.tab a,
div.gallery div.tab a:link,
div.gallery div.tab a:visited { display: block; color: #2A6012; text-decoration: none; text-transform: uppercase; padding: 0 5px 0 36px; background: url(../img/sprites.gif) 0 -30px; }
div.gallery div.tab a:hover   { color: #2A6012; }

div.gallery div.carousel img                 { height: 100%; width: 100%; position: absolute; top: 0; left: 0; }
div.gallery div.carousel img.carousel-frame  { z-index: 1; }

/* extras */
div.page-extra1 { height: 67px; width: 470px; float: left;  clear: left;  }
div.page-extra2 { height: 67px; width: 476px; float: right; clear: right; }

/* footer */

div.page-footer   { clear: both; height: 32px; background: url('../img/bgs.gif') left -435px; }
div.page-footer-c { width: 960px; margin: 0 auto; line-height: 31px; color: white; text-align: center; }

/* seo */

div.page-seo { width: 960px; margin: 20px auto; text-align: center; }
div.page-seo,
div.page-seo a,
div.page-seo a:link,
div.page-seo a:visited,
div.page-seo a:hover { color: #999; }

/* links */

div.page-links                   { text-align: center; padding: 0 70px 10px 70px; }
div.page-links div.link          { display: inline-block; vertical-align: top; position: relative; height: 130px; width: 170px; margin: 0 10px; }
div.page-links div.link a.legend { display: block; position: absolute; bottom: 0; left: 0; width: 100%; }
div.page-links div.link ul li    { list-style: none; margin: 0; padding: 0; }

div.page-links div.link.paesionline img { margin-top: 34px; }

/* badges */

div.badges    { }
div.badges ul { padding: 0; margin: 0; padding-top: 18px; }
div.badges li { height: 30px; display: inline-block; white-space: nowrap; overflow: hidden; }

div.badges span              { display: none; }
div.badges .spighe           { width: 44px; background: url(../img/sprites.gif)    0   0; }
div.badges .rooms            { width: 36px; background: url(../img/sprites.gif)  -44px 0; }
div.badges .restaurant       { width: 30px; background: url(../img/sprites.gif)  -80px 0; }
div.badges .accessible       { width: 23px; background: url(../img/sprites.gif) -110px 0; }
div.badges .animals-welcome  { width: 27px; background: url(../img/sprites.gif) -133px 0; }
div.badges .informations     { width: 12px; background: url(../img/sprites.gif) -160px 0; }
div.badges .tv-set           { width: 29px; background: url(../img/sprites.gif) -172px 0; }
div.badges .air-conditioning { width: 29px; background: url(../img/sprites.gif) -201px 0; }
div.badges .wifi             { width: 37px; background: url(../img/sprites.gif) -230px 0; }
div.badges .swimming-pool    { width: 34px; background: url(../img/sprites.gif) -267px 0; }
div.badges .parking          { width: 27px; background: url(../img/sprites.gif) -301px 0; }
div.badges .bike             { width: 32px; background: url(../img/sprites.gif) -328px 0; }
div.badges .visa             { width: 33px; background: url(../img/sprites.gif) -360px 0; }
div.badges .mastercard       { width: 33px; background: url(../img/sprites.gif) -393px 0; }
div.badges .pos              { width: 33px; background: url(../img/sprites.gif) -426px 0; }

/* bigbuttons */

div.bigbuttons     { text-align: center; }
div.bigbuttons div { width: 30%; float: left; }

/* linkgroups */
div.linkgroups     { }
div.linkgroup      { width: 240px; margin-right: 0px; float: left; line-height: 2em; }
div.linkgroup.last { margin-right: 0; }
div.linkgroup    a { color: #cc0800; font-weight: bold; text-decoration: none; }
div.linkgroup   h2 { margin: 1em 0 0 0; }

/* maplink */
div.maplink { height: 15px; text-align: center; font-size: 10px; }

/* rooms */
div.rooms     { }
div.room      { display: inline-block; position: relative; margin: 10px 16px 0 0; text-align: center; font-size: 10px; }
div.room.last { margin: 10px 0 0 0; }
div.room a    { color: #f27b29; text-transform: uppercase; text-decoration: none; }
div.room img  { display: none; } /* TODO remove when images are ready */

/* footnotes */

dl.footnotes    { margin: 30px 0 0 0; font-style: italic; }
dl.footnotes dt { margin: 10px 0; padding: 0; }
dl.footnotes dd { margin: 0; padding: 0; }

a.footnote { text-decoration: none; color: inherit; }

/* form */
div.before-form { background: url('../img/form.gif'); height: 10px; font-size: 1px; }
form            { background: #5B9330 url('../img/form.gif') -476px 0; padding: 6px; min-height: 435px; }
div.after-form  { background: url('../img/form.gif') -952px 0; height: 10px; font-size: 1px; }

.feedback   { display: none; text-align: center; color: white; font-weight: bold; margin-top: 200px; }
.feedback a { color: white; }

form { font-size: 10px; }
input { height: 18px; padding: 2px; margin: 0; border: none; }
label.invalid { color: red !important; }

form div.title              { color: white;  font-weight: bold; text-transform: uppercase; padding: 0 6px 10px 6px;}
form div.fields             { }
form div.field              { display: inline-block; padding: 23px 6px 0 6px; }
form div.field span         { font-weight: bold !important; }

form div.field              { display: -moz-inline-stack; display: inline-block; zoom: 1;  *display: inline; }
form div.legend             { color: yellow; text-transform: uppercase; font-weight: bold; padding: 0 6px; font-size: 10px; float: right; }
form div.footer             { color: white;  text-align: center; padding: 10px; font-size: 10px; }
form div.footer a           { color: yellow; text-decoration: none; }
form div.footer img         { vertical-align: middle; }
form div.actions            {  }
form div.actions div        { width: 182px; float: left; padding: 0 25px; }
form div.actions div.submit { text-align: right; }
form div.actions div.reset  { text-align: left; }

form div.v-wide         { width: 329px; }
form div.v-wide input   { width: 323px; }
form div.v-narrow       { width: 111px; }
form div.v-narrow input { width: 105px; }

form div.wide         { width: 296px; }
form div.wide input   { width: 290px; }
form div.narrow       { width: 144px; }
form div.narrow input { width: 138px; }
form div.narrow input.date { width: 107px; }

form div.half         { width: 220px; }
form div.half input   { width: 214px; }

form div.field label      { color: white; font-weight: bold; text-transform: uppercase; display: block; margin-top: -20px; line-height: 20px; }
form div.field input      { }
form div.field span       { color: white; font-weight: normal; text-transform: uppercase; display: block; margin-top: -20px; line-height: 20px; }
form div.field div.doc    { height: 68px; overflow-y: scroll; background: white; font-size: 10px; font-size: 10px; line-height: 13px; }
form div.field div.doc p  { padding: 0; margin: 5px; text-align: left; }

form div.field div.inline       { padding: 8px 0 0 0; }
form div.field div.inline label { display: inline; margin-top: 0; line-height: normal; padding-left: 3px; }
form div.field div.inline input { height: auto; width: auto; padding: 0; }

button { padding: 0; margin: 0 3px; border: none; display: inline-block; cursor: pointer !important; text-decoration: none; outline: none; white-space: nowrap; overflow: visible; height: 22px; color: white; background-color: transparent; text-transform: uppercase; }
button { display: -moz-inline-stack; display: inline-block; zoom: 1; *display: inline; }

button span        { display: block; padding: 0 12px 0 0; height: 22px; }
button.submit span { background: url(../img/bg-button-submit-right.gif) no-repeat top right; }
button.cancel span { background: url(../img/bg-button-cancel-right.gif) no-repeat top right; }

button span span        { padding: 0 0 0 14px; height: 22px; line-height: 22px; }
button.submit span span { background: url(../img/bg-button-submit.gif) top left; }
button.cancel span span { background: url(../img/bg-button-cancel.gif) top left; }

button:active span,      button.button_active span      { background-position: bottom right; }
button:active span span, button.button_active span span { background-position: bottom left; }

/* calendar widget */
.calendar-button {
	display: inline-block;
	vertical-align: bottom;
	height: 20px; width: 25px;
	margin-left: 6px;
	background: url('../img/sprites.gif') 0 -86px;
	z-index: 6000;
}
.calendar-widget {
	font-size: 11px;
	background: url('../img/imgs.gif');
	color: #EFE;
	position: absolute;
	padding: 5px;
	width: 160px; height: 140px;
	z-index: 7000;
}
.calendar-widget-prevMonth { float: left;  cursor: pointer; padding: 2px; }
.calendar-widget-nextMonth { float: right; cursor: pointer; padding: 2px; }
.calendar-widget-close { display: none; }
.calendar-widget-title { text-align: center; font-size: 12px; }
.calendar-widget-calendar { clear: both; }
.calendar-widget-calendar table { width: 100%; margin-top: 8px; border-collapse: collapse; }
.calendar-widget-calendar table th,
.calendar-widget-calendar table td { text-align: center; border-left: thin solid #EFE; padding: 1px; width: 1.8em; line-height: 1.3em; }
.calendar-widget-calendar table td { cursor: pointer; }
.calendar-widget-calendar .prevmonth,
.calendar-widget-calendar .nextmonth { color: #AAA !important; }
.calendar-widget-calendar .selected  { color: #FF0 !important; }
.calendar-widget-calendar .col1 { border: none; }
.calendar-widget-calendar .col2 { }
.calendar-widget-calendar .col3 { }
.calendar-widget-calendar .col4 { }
.calendar-widget-calendar .col5 { }
.calendar-widget-calendar .col6 { }
.calendar-widget-calendar .col7 { }
.calendar-widget-calendar .mon { }
.calendar-widget-calendar .tue { }
.calendar-widget-calendar .wed { }
.calendar-widget-calendar .thu { }
.calendar-widget-calendar .fri { }
.calendar-widget-calendar .sat { }
.calendar-widget-calendar .sun,
.calendar-widget-calendar .holiday { color: #E88; }


/* old browsers hacks: inline-block */

div.page-header div.menu li,
/*div.page-header div.menu  a.menu-1:hover,*/
div.page-header div.menu  a.menu-1.hover,
div.page-header div.langs li,
div.badges li,
div.page-links div.link,
div.room,
.calendar-button { display: -moz-inline-stack; display: inline-block; zoom: 1; *display: inline; }

