/* reset.css */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,code,del,dfn,em,img,q,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td {
border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;margin:0;padding:0;}
table {border-collapse:separate;border-spacing:0;}
caption,th,td {text-align:left;}
blockquote:before,blockquote:after,q:before,q:after {content:"";}
blockquote,q {quotes:;}
a img {border:none;}

/* layout and generic skin parameters */

body                            { font-family: "Bitstream Vera Sans", "Verdana"; font-size: 12px; }

.json-data                      { display: none; color: red; }
.hidden                         { display: none; }
.error                          { color: red; font-weight: bold;}
.tooltip-content                { background: white; border: 1px solid #00764E; width: 140px; padding: 10px; z-index: 9999;
                                  position: relative; top: 0; left: 0;}
.tooltip                        { color: inherit; text-decoration: none; }
.tooltip  b                     { font-size: 11px;}

#main                           { position: relative; float: left; margin: 10px 0px 0px 10px; }
#footer                         { text-align: right; }

#right                          { float: left; background: transparent; margin-left: 10px; }
#right h2.handle                { padding: 4px; background: #011D33 url(moon-orange.gif) no-repeat 3px 5px; padding-left: 35px;
                                  color: white; margin-top: 1px; font-weight: bold; font-size: 120%; cursor: pointer; }
#right h2.selected              { color: #F66333; }
#right h2.handle:focus          { outline: 0; }


#lang-box                       { text-align: right; position: absolute; top: 108px; right: 0px; }
#lang-box a                     { color: inherit; }
#lang-box a:hover               { text-decoration: none; }
#lang-box span                  { font-weight: bold; }

#info-boxes                     { margin: 10px 0px 0px 0px;}
#info-boxes .top                { height: 5px; width: 100%; }
#info-boxes .bottom             { height: 5px; width: 100%; }
#info-boxes .body               { padding: 0 5px; overflow: auto; }
#info-boxes h2                  { font-weight: bold; color: #011D33; }

#group-and-transport            { float: left; }
#groups-box                     { margin-bottom: 1em; }
#transports-box                 { }
#login-box                      { float: left; }
#login-form                     { padding: 0px; }
#login-form label               { display: block; }
#login-form input               { width: -moz-available; } /* FIXME: find something useful for other browsers */
#login-form button              { float: right; margin-top: 1em; }

#event-link span                { display: none; }

#facets                         { margin: 10px 0px 0px 0px; }

.search-item                    { margin: 0px 5px 10px 0; }
.search-item .top               { height: 5px; width: 100%; }
.search-item .bottom            { height: 5px; width: 100%; }
.search-item .body              { overflow: auto; width: 100%; }

.cart-item                      { margin: 0px auto 10px auto; }
.cart-item .top                 { height: 5px; width: 100% }
.cart-item .bottom              { height: 5px; width: 100% }
.cart-item .body                { width: 100%; }

.search-summary                 { }
.search-summary .top            { height: 5px; width: 100%; }
.search-summary .bottom         { height: 5px; width: 100%; }
.search-summary .body           { width: 100%; }

/* buttons */

button.link                     { border: none; padding: 0px; color: #0000EE; text-decoration: underline; cursor: pointer; background: transparent; }
button.selected                 { text-decoration: none; color: black; font-weight: bold; }

.button-bar                     { text-align: right; width: 100%; } 

/* event box (for animation see page.js) */

#new-event-box                  { position: relative; height: 110px; border: 2px solid #F66333; background: white; padding: 5px; }
#new-event-box h2.left          { display: none; }
#new-event-box .cycle h2 { padding: 0 5px; }
#new-event-box .cycle { float: left; margin: 0; width: 100%; height: 90px; overflow: hidden; }
#new-event-box #congress-logo { float: left; margin: 0 auto; height: 20px; text-align: center; width: 100%; }
#new-event-box #congress-event { float: left; width: 50%; }
#new-event-box #event-logo { margin-top: 0px; text-align: center; width: 100%; }
#new-event-box #exhibition-data { margin-top: 0px; text-align: center; width: 100%; }
#new-event-box .event-news      { float: left; width: 50%; height: 110px; margin: 0; text-align: center; }
#exhibition-data h2 { font-weight: bold; }

/* #event-box #event-logo          { position: absolute; }
#event-box #event-text          { position: absolute; top: 0; left: 0; }
#event-box #event-text div      { position: absolute; width: 192px; }
.event-box-text                 { text-align: center; font-weight: bold; font-size: 110%; background: #F2F2F2; height: 120px; width: 192px; } */

/* search box */

#search-box                     { margin: 9px 0px 0px 0px; }
#search-box h3                  { font-weight: bold; margin: 5px; margin-top: 0px; }
#search-box label               { display: block; }
#search-box .span-date          { float: left; margin-left: 5px; }
#search-box .span-int           { float: left; margin-left: 5px; }
#search-box .span-button        { float: left; margin: 15px 0px 0px 5px; }
#search-results-summary         { clear: both; margin: 5px 5px 0px 5px; }
#search-results-summary span    { font-weight: bold; }
#search-order                   { margin: 8px 0px 0px 0px; }
#search-order #search-show-map  { float: right; }
#search-order #search-hide-map  { float: right; }

/* results box */

#results-container                                   { height: 500px; margin: 9px 0px 0px 0px; overflow: auto; }
#results-box                                         { }
#results-box.hotels .search-item img.hotel-photo     { float: left; clear: both; margin: 0px 0px 10px 10px; }
#results-box.hotels .search-item h2                  { float: left; margin: 5px 10px 5px 10px; font-weight: bold; }
#results-box.hotels .search-item span.distance       { float: right; margin: 5px 10px; }
#results-box.hotels .search-item .rooms              { float: right; margin: 0 10px 10px 0; }
#results-box.hotels .search-item .rate               { margin-top: -2px; }
#results-box.hotels .search-item .rate-conditions    { font-size: 80%; text-transform: lowercase; cursor: pointer; text-decoration: underline; }
#results-box.hotels .search-item .room               { float: right; width: 100%; border-bottom: 2px solid #F2F2F2; background: #D4E5ED; }
#results-box.hotels .search-item .room-name          { float: left; padding: 2px; }
#results-box.hotels .search-item .room-price         { float: right; padding: 2px; font-size: 120%; font-weight: bold; text-align: right;}
#results-box.hotels .search-item .room-warn          { float: left; padding: 2px; font-weight: bold; text-align: right;}
#results-box.hotels .search-item .room-book          { font-size: 100%; text-align: right; font-weight: normal; margin-top: 1px; display: block;
                                                       color: #0000EE; text-decoration: underline; text-transform: lowercase; }
#results-box.hotels .search-item .room-sell-mode     { font-weight: bold; text-transform: lowercase; display: block; }
#results-box.hotels .search-item .hotel-short        { clear: both; margin: 0px 10px 5px 10px; display: none;}
#results-box.hotels .search-item .hotel-long         { clear: both; margin: 0px 10px 5px 10px; }
#results-box.hotels .search-item .link               { float: right; text-transform: lowercase; cursor: pointer;
                                                       font-size: 80%; text-decoration: underline; margin-right: 5px; }
#results-box.hotels h3                               { font-weight: bold; margin: 10px 0px 2px 0px; border-bottom: 1px solid #D4E5ED;
                                                       padding-bottom: 3px;  }
#results-box.hotels hr                               { margin: 0; padding: 0; border: none; color: transparent; }
#results-box.hotels label                            { color: #012F4C; }

* html #results-box.hotels .search-item .hotel-short { margin-left: 5px; }
* html #results-box.hotels .search-item .hotel-long  { margin-left: 5px; }
* html #results-box.hotels .search-item h2           { margin-left: 5px; }
* html #results-box.hotels .search-item .room-name   { margin: 2px 1px; }
* html #results-box.hotels .search-item .room-price  { margin: 2px 1px; }

/* cart */

#cart-left                                      { margin: 29px 10px 10px 20px; }
#cart-left .cart-step                           { margin-bottom: 10px; }
#cart-left .cart-step-number                    { display: inline-block; width: 24px; height: 24px;
                                                  color: white; font-size: 21px; font-weight: bold; text-align: center; }
#cart-left .cart-step-done .cart-step-number    { background: url(step.png) no-repeat; }
#cart-left .cart-step-todo .cart-step-number    { background: url(step_greyed.png) no-repeat; }
#cart-left .cart-step-current .cart-step-number { background: url(step_current.png) no-repeat; }
#cart-left .cart-step-text                      { display: inline; margin-left: 30px; font-weight: bold; color: #011D33; }
#cart-left .cart-step-current .cart-step-text   { color: #F66333; }
#cart-left .cart-step-todo .cart-step-text      { color: #6FA0B6; }
#cart-left .cart-step a                         { color: #011D33; }
#cart-left .cart-step a:visited                 { color: #011D33; }


#cart                                           { margin: 9px 0px 0px 0px; }
#cart .cart-item .header                        { overflow: auto; background:  #D4E5ED; width: 100%;}
#cart .cart-item .footer                        { background:  #D4E5ED; width: 100%;}
#cart .cart-item h2                             { float: left; margin: 5px 10px 5px 10px; font-weight: bold; }
#cart .cart-item strong                         { font-weight: bold; border-bottom: 1px solid #D4E5ED;
                                                  padding: 7px 0 3px; clear: both;}
#cart .cart-item p                              { margin: 3px 0 2px 0; }
#cart .cart-item .header p                      { margin: 5px 10px 10px 10px; }
#cart .cart-item .hotel-name                    { overflow: auto; font-weight: bold; margin: 10px 0px 2px 0px; border-bottom: 1px solid #D4E5ED;
                                                  padding-bottom: 3px; clear: both; width: 100%;}                                                  
#cart .cart-item .hotel-long                    { margin: 0px 10px 5px 10px; }
#cart .cart-item .details                       { overflow: auto; border-bottom: 1px solid #D4E5ED; margin-bottom: 10px; }
#cart .cart-item img.hotel-photo                { float: left; clear: both; margin: 0px 10px 10px 0px; }
#cart .cart-item .link                          { float: right; text-transform: lowercase; cursor: pointer;
                                                  font-size: 80%; text-decoration: underline; margin-right: 5px; }
#cart .cart-item .number                        { text-align: right; }

#cart .cart-item .cart-room                     { overflow: auto; padding: 0 10px; }
#cart .cart-item .cart-room label               { display: block; margin-top: 5px; }
#cart .cart-item .cart-room .span-1             { float: left; width: 111px; margin-right: 5px; }
#cart .cart-item .cart-room .span-2             { float: left; width: 227px; margin-right: 5px; }
#cart .cart-item .cart-room .span-3             { float: left; width: 343px; margin-right: 5px; }
#cart .cart-item .cart-room .span-4             { float: left; width: 460px; margin-right: 0px; }
#cart .cart-item .cart-room .span-4 input       { width: 455px; }
#cart .cart-item .cart-room .span-3 input       { width: 338px; }
#cart .cart-item .cart-room .span-2 input       { width: 222px; }
#cart .cart-item .cart-room .span-1 input       { width: 106px; }
#cart .cart-item .cart-room .span-1 select      { width: 106px; }

#cart .cart-item .cart-room .field-name input   { width: 150px; }
#cart .cart-item .cart-room .field-name select  { width: 65px; }

#cart div.strip   input[type=checkbox], input.check      { width: 13px !important; border: none;  margin-right: 1em; }
#cart input[type=radio]                         { width: 13px !important; border: none; margin-right: 1em; }
#cart .cart-item .cart-room .strip              { background: #D4E5ED; margin: 5px 0px 0px -9px; padding-right:19px; }
#cart .cart-item .cart-room .strip p            { margin: 5px 10px 10px 10px; }
#cart .cart-item .cart-room .strip strong       { display: block; margin: 5px 10px 10px 10px; }
#cart .cart-item .cart-room .last               { margin-right: 0px; }
#cart .cart-item .cart-room .info               { font-weight: bold; margin-bottom: 5px; }
#cart .cart-item .cart-room .label              { text-align: left; margin-bottom: 5px; }
#cart .cart-item .cart-room .title              { background: #D4E5ED; margin: 5px 0px 0px -9px; padding-right: 19px; }
#cart .cart-item .cart-room .title p            { margin: 5px 10px 10px 10px; }
#cart .cart-item .cart-room .title strong       { display: block; padding: 3px 9px 2px 9px; font-weight: bold; }
#cart .cart-item .footer strong.price           { display: block; text-align: right; margin-right: 15px;}
#cart .cart-item a.button                       { float: right; text-transform: lowercase; cursor: pointer;
                                                  font-size: 80%; text-decoration: underline; margin-right: 5px; }
#cart .cart-item a.button-remove                { margin-right: 8px; }

#cart-button-bar                                { clear: both; text-align: right; padding-bottom: 10px; }

/* facets */

#search-facets                  { padding-bottom: 10px; }

#facets-box                     { overflow: auto; }
#facets-box .facet              { float: left; margin-right: 5px; margin-bottom: 10px; }
#facets-box h3                  { font-weight: normal; font-size: 10px; margin: 0; }
#facets-box h3 img              { margin: 0 2px -4px 2px; }

#facet-prices-display           { margin: 0;}
#facet-prices-slider            { margin: 0px; width: 100%; position: relative }
#facet-prices-slider .right     { right: 0px; left: auto; }

#facet-distance-display         { margin: 0px; }
#facet-distance-slider          { margin: 0px; width: 100%; }
#facet-distance-slider .right   { right: 0px; left: auto; }

#facet-stars-display            { margin: 0px; }
#facet-stars-slider             { margin: 0px; width: 100%; }
#facet-stars-slider .right      { right: 0px; left: auto; }

#facet-accomodation-select      { border: 1px solid black; padding: 1px; font-size: 10px; margin-top: 8px; }

/* generic pages that span the whole width of the main div */

#main .large                    { padding: 20px; }
#main .large h1                 { margin: 10px 0; font-weight: bold; font-size: 120%; }
#main .large p                  { margin-bottom: 10px; }

#main.full-static               { width: auto; }
#main .static-content           { margin: 10px; }
#main .static-content  p        { text-align: justify;}
#main .static-content  h1       { font-size: 15px; font-weight: bold; }
#main .static-content  h2       { font-size: 13px; font-weight: bold; }
#main .static-content  ul       { margin: 0.5em 1em 0.5em 2em;  }

/* Flora overrides */

.ui-slider { height: 12px; }
.ui-slider-handle { height: 12px; width: 6px;  background-image: url(single-slider-handle.jpg);  }
.ui-slider-range { background: #011D33; opacity: 0.4; filter: alpha(opacity=30); }
.ui-slider-handle-active { border: none; }
.ui-slider-2 { background: url(slider-bg.gif); }
.left-slider-handle { background-image: url(single-slider-handle.gif); }
.right-slider-handle { background-image: url(single-slider-handle.gif); }
.single-slider-handle { width: 6px; background-image: url(single-slider-handle.gif); }
.results-slider-handle { width: 6px; background-image: url(single-slider-handle.gif); }


/* Google Maps box */

#map-box                        { height: 300px; margin-top: 10px; }

/* News box */

div.event-news-item             { height: 100%; width: 100%; font-size: 10px; margin: 0; }
div.event-news-item .body       { margin-right: 4px; }
div.event-news-item .body img   { float: left; margin: 0 4px 0 0; }
div.event-news-item .body .text { text-align: left; }
div.event-news-item .body .text .title { font-weight: bold; }
div.event-news-item .body .text .section { font-weight: bold; }
div.event-news-item .body .text em { font-weight: bold; }
div.event-news-item .body .text p { font-size: inherit; margin: 0; }
div.event-news-item .footer     { margin-right: 4px; text-align: right; }
div.event-news-item .nologo .text { text-align: justify; font-size: 11px; }
div.event-news-item .nologo .text .title { font-weight: bold; text-align: center; margin-bottom: 5px; }
div.event-news-item .nologo .text .section { font-weight: bold; text-align: center; margin-bottom: 3px; }

button.bookit  {cursor: pointer; text-align: right; font-weight: bold; padding: 0; border: 0px; margin: 0px; background: transparent; }

/* Customizable lengths */

#main                                           { width: 430px; }
#right                                          { width: 435px; margin-left: 15px; }
#group-and-transport                            { width: 200px; }
#login-box                                      { width: 215px; margin-left: 5px; }
#facet-prices                                   { width: 100px; }
#facet-distance                                 { width: 170px; }
#facet-stars                                    { width: 50px; }
#facet-accomodation-select                      { width: 90px; }
#results-box.hotels .search-item                { width: 410px; }
#results-box.hotels .search-item .rooms         { width: 280px; }
#results-box.hotels .search-item .room-name     { width: 176px; }
#results-box.hotels .search-item .room-price    { }
#results-box.hotels .search-item .room-warn     { width: 276px; }
#cart .cart-item .cart-room .span-1             { float: left; width: 100px; }
#cart .cart-item .cart-room .span-2             { float: left; width: 205px; }
#cart .cart-item .cart-room .span-3             { float: left; width: 310px; }
#cart .cart-item .cart-room .span-4             { float: left; width: 415px; }
#cart .cart-item .cart-room .span-4 input       { width: 410px; }
#cart .cart-item .cart-room .span-3 input       { width: 305px; }
#cart .cart-item .cart-room .span-2 input       { width: 200px; }
#cart .cart-item .cart-room .span-1 input       { width: 95px; }
#cart .cart-item .cart-room .span-1 select      { width: 95px; }
#cart .cart-item .cart-room .field-name input   { width: 135px; }
#cart .cart-item .cart-room .field-name select  { width: 60px; }

#info-boxes .top                { background: url(background_facets_top_430x5.png) no-repeat; }
#info-boxes .bottom             { background: url(background_facets_bottom_430x5.png) no-repeat; }
#info-boxes .body               { background: url(background_facets_body_430x1.png) repeat-y; }
.search-summary .top            { background: url(background_results_top_435x5.png) no-repeat; }
.search-summary .bottom         { background: url(background_results_bottom_435x5.png) no-repeat; }
.search-summary .body           { background: url(background_results_body_435x1.png) repeat-y; }
.search-item .top               { background: url(background_box_top_410x5.png) no-repeat; }
.search-item .bottom            { background: url(background_box_bottom_410x5.png) no-repeat; }
.search-item .body              { background: url(background_box_body_410x1.png) repeat-y; }
.cart-item .top                 { background: url(background_cart_top_435x5.png) no-repeat; }
.cart-item .bottom              { background: url(background_cart_bottom_435x5.png) no-repeat; }
.cart-item .body                { background: url(background_box_body_435x1.png) repeat-y; }

/* Other customizations */
#boxBody { overflow: auto; padding-bottom: 10px; }
#boxFooter .dicitura { padding-right: 28px; padding-top: 5px; }
#boxLingue { padding: 0; }
#boxHeader { text-align: right; }
#login-box input { margin: 3px 0; }
#new-event-box { display: none; }
#map-box { margin-top: 0; }
