html, body{
    background:url(../images/body-bg-top.png) repeat-x left top;
    font:13px Arial, Helvetica, sans-serif;
}

.container{
    width:960px;
    padding:0 10px;
    margin:0 auto;
    position:relative;
}

.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

img{
    display:block;
}

/* HEADER
 * --------------------------------------------------------------- */

#Header{
    height:176px;
}

#Header h1 a{
    display:block;
    width:480px;
    height:133px;
    background:url(../images/logo.png) no-repeat left top;
    text-indent:-30000px;
}

p.tagline{
}

p.contact{
    width:331px;
    height:56px;
    position:absolute;
    right:10px;
    top:36px;
    text-align:right;
}

span.tel{
    color:#e8422b;
    font:bold 32px/1 "Trebuchet MS", Arial, sans-serif;
}

p#Time{
    position:absolute;
    padding:0 60px 0 0;
    width:138px;
    height:24px;
    top:0;
    right:10px;
    color:#e8422b;
    background:url(../images/time-is.png) no-repeat left top;
    font-size:16px;
    font-weight:bold;
    text-indent:-30000px;
}

p#Time span{
    display:block;
    position:absolute;
    top:1px;
    right:0;
    width:53px;
    text-align:center;
    text-indent:0;
}

a.skipLinks{
    display:block;
    text-indent:-30000px;
    position:absolute;
    top:0;
}

/* NAV
 * --------------------------------------------------------------- */

.nav li{
    float:left;
}

.nav a{
    text-decoration:none;
}

/* Main NAV
 * ----------------------------------- */

#Main{
    position:relative;
    overflow:hidden;
    height:24px;
}

#Main li{
    margin:0 6px 0 0;
}

#Main a{
    display:block;
    float:left;
    background:url(../images/menu.gif) no-repeat left top;
    color:#fff;
    font-weight:bold;
}

#Main a span{
    display:block;
    padding:4px 6px 4px 2px;
    margin:0 0 0 4px;
    background:url(../images/menu.gif) no-repeat right -48px;
}

#Main a:hover,
#Main a:focus,
#Main a.current,
#Main a.section
{
    background:url(../images/menu.gif) no-repeat left -24px;

}

#Main a:hover span,
#Main a:focus span,
#Main a.current span,
#Main a.section span{
    background:url(../images/menu.gif) no-repeat right -72px;
}

/* Sub NAV
 * ----------------------------------- */

#SubNav{
    position:relative;
    border-bottom:1px solid #c6d3e3;
    z-index:1000;
}

#Sub{
    position:relative;	
    margin:10px 0 0;

}

#Sub li{
    position:relative;	
    margin:0 3px 0 0;
}

#Sub a{
    color:#0e4287;
    font-size:12px;
    display:block;
    float:left;
    margin:0 0 -1px;
}

#Sub a span{
    display:block;
    padding:5px 6px 4px 2px;
    margin:0 0 0 4px;
}

#Sub a:hover,
#Sub a:focus,
#Sub a.current,
#Sub a.section
{
    background:url(../images/sub-menu.png) no-repeat left 0;
    color:#e8422b;
}

#Sub > li:hover > a{
    background:url(../images/sub-menu.png) no-repeat left 0;
    color:#e8422b;
}

#Sub a:hover span,
#Sub a:focus span,
#Sub a.current span,
#Sub a.section span
{
    background:url(../images/sub-menu.png) no-repeat right -24px;
}

#Sub > li:hover > a span{
    background:url(../images/sub-menu.png) no-repeat right -24px;
}

#Sub ul{
    display:none;
    position:absolute;
    background:#fff;
    top:24px;
    left:0;
    border:1px solid #c6d3e3;
    border-top:none;
    padding:0 4px;
    width:145px;
}

#Sub li:hover ul,
#Sub li.hover ul{
    display:block;
}

#Sub ul li{
    float:none;
    margin:0;
    border-bottom:1px solid #cfd9e8;
}

#Sub ul li.last{
    border:none;
}

#Sub ul a{
    display:block;
    width:145px;
    padding:4px 0;
    background:#fff;
    float:none;
    margin:0;	
}

#Sub ul a:hover,
#Sub ul a:focus,
#Sub ul a.current,
#Sub ul a.section{
    background:none;
}


/* CONTENT
 * --------------------------------------------------------------- */

#Content{
    position:relative;
    margin:28px 0;
    min-height:450px;
    z-index:900;
}

.col{
    float:left;
    width:275px;
    margin:0 22px 22px 0;
}

.col-home{
    width:290px;
    margin:0 7px 0 0;
}

.col-2{
    width:366px;
}

.col-3{
    width:572px;
    margin:0 66px 0 0;
}
.col-wrap{
    position:relative;
    float:left;
}

.col-4{
    float:left;
    width:200px;
    margin:0 20px 0 0;
}

.col-5{
    width:470px;
    margin:0 20px 0 0;
}

dl{
    margin:0 0 8px 16px;
}

dt, dd{
    padding:1px 4px;
    line-height: 1.4;
}

dt{
    color:#e8422b;
    font-weight:bold;
}

dd{
    margin:0 0 4px;
}

.FAQHolderPage #MainContent h2{
    margin:12px 0;
}

.FAQHolderPage #MainContent h3{
    background:url(../images/toggle.gif) no-repeat left top;
    padding:0 0 0 16px;
}

.FAQHolderPage #MainContent h3.hover,
.FAQHolderPage #MainContent h3.active{
    color:#e8422b;
}
.FAQHolderPage #MainContent h3.active{
    background-position:left bottom;
}

.Gallery360Holder #MainContent h1,
.Gallery360Page #MainContent h1{
    background:url(../images/360-s.png) no-repeat left top;
    padding:0 0 0 37px;
    min-height:32px;
}

a#specialOffersLink{
    display: block;
    width: 275px;
    color: #e01615;
    font: bold italic 21px "Trebuchet MS", Arial, sans-serif;
    text-decoration: none;
    border-top: 3px solid #0e4387;
    border-bottom: none;
    text-align: center;
    padding: 6px 0;
    text-shadow: 2px 2px 2px #999999;
    filter: dropshadow(color=#999999, offx=2, offy=2);
}

a#specialOffersLink:hover, #specialOffersLink:focus{
    color: #b21111;
}

/* BOXES
 * --------------------------------------------------------------- */

/* GREY BOX
 * --------------------------------------------- */

.box{
    position:relative;
    background:#eee;
    clear:both;
    -moz-border-radius:5px;
    -webkit-border-radius:5px;
    border-radius:5px;
}

.HomePage .box{
    margin:0 28px 0 0;
}

.inner-box{
    position:relative;
    padding:15px 20px;
    height:202px;
}

/* BOOKING BOX
 * --------------------------------------------- */

div.bookingBox{
    background:#edf2f8;
    padding:25px 30px;
    border:1px solid #ced6df;
    -moz-border-radius:5px;
    -webkit-border-radius:5px;
    border-radius:5px;
}

.PropertyPage div.bookingBox{
    clear: both;
}

div.bookingBox p{
    margin:0 0 18px;
}

#Content p.price{
    font-size:14px;
    font-weight:bold;
}

p.price span, 
p.price strong{
    color:#e8422b;
}

p.price .discounts{
    background:#e8422b;
    color:#fff;
    padding:0 2px;
}

div.bookingBox p.price{
    background:#fff;
    border:1px solid #ced6df;
    padding:4px 6px;
}

div.bookingBox p.price .offer{
    color:#022c6a;
}
.ShorttermSearchPage .bookingBox{
    margin-bottom:12px;
}

div.noResultsBox{
    margin-bottom:12px;
    padding-bottom:10px;
}

/* MEDIA BOX
 * --------------------------------------------- */

.media-box{
    float:left;
    margin:0 20px 0 0;
}

.media-box div{
    position:relative;
    border:3px solid #bdc3cd;
    width:212px;
    height:160px;
}

.media-box div a{
    display:block;
    position:absolute;
    text-align:center;
    bottom:0;
    height:32px;
    width:212px;
    background:url(../images/transparent.png) repeat left top;
    color:#fff;
    font:bold 14px Arial, Helvetica, sans-serif;
    line-height:32px;
    text-decoration:none;
}

.media-box a:hover, 
.media-box a:focus{
    color:#ff0000;
}

.media-box h2{
    background:url(../images/media-box-heads.gif) no-repeat left top;
    text-indent:-30000px;
    height:26px;
    width:129px;
    margin:0 0 6px;
}

#VideoGallery h2{
    background-position:left -26px;
}

/* REVIEWS
 * --------------------------------------------- */

#reviews{
    margin:16px 0 0;
    font-size:18px;
    text-align:center;
}

#reviews img{
    margin:6px auto;
}

.review{
    position:relative;
    background:#edf2f8;
    border:1px solid #ced6df;
    -moz-border-radius:4px;
    -webkit-border-radius:4px;
    border-radius:4px;
    padding:16px;
    margin-bottom:20px;
}

.starRating{
    height:16px;
    padding:6px 0 2px 10px;
}

.starRating span{
    display:block;
    width:100px;
    height:16px;
    background:url(../images/stars.png) no-repeat left top;
    text-indent:-30000px;
}

.starRating .oneHalf{ background-position: left -20px; }
.starRating .two{ background-position: left -40px; }
.starRating .twoHalf{ background-position: left -60px; }
.starRating .three{ background-position: left -80px; }
.starRating .threeHalf{ background-position: left -100px; }
.starRating .four{ background-position: left -120px; }
.starRating .fourHalf{ background-position: left -140px; }
.starRating .five{ background-position: left -160px; }

.review .percent, .starRating{
    float:left;
}

.ReviewPage .review p{
    margin:0 0 8px;
}

.review p.percent{
    font:24px "Trebuchet MS", Arial, Helvetica, sans-serif;
}

/* ACCOMMODATION BOX
 * --------------------------------------------- */

.accommodation-box{
    background:#000 url(../images/ac-box-bottom.gif) repeat-x left bottom;
    width:275px;
    height:232px;
    margin:0 0 22px;
    position:relative;
}

.accommodation-box h2{
    width:275px;
    height:39px;
    background:url(../images/ac-box-heads.gif) no-repeat left top;
    text-indent:-30000px;
}

h2.private-rooms{
    background-position:left -39px;
}

h2.hostels{
    background-position:left -78px;
}

.accommodation-box p{
    position:absolute;
    width:275px;
    bottom:0;
    left:0;
    text-align:center;
    font:bold 18px Formata, Arial, Helvetica, sans-serif;
    color:#fff;
    line-height:40px;
}

.accommodation-box a{
    color:#fff;
    text-decoration:none;
}

.accommodation-box a:hover, 
.accommodation-box a:focus{
    color:#ff0000;
}

/* BLOCK LISTS (PropertySearchResults)
 * --------------------------------------------------------------- */

.typography ul.blocklist{
    margin:0;
}

.typography .blocklist li{
    position:relative;
    list-style:none;
    margin:0 0 20px 0;
    padding:12px;
}

#specialOffers.blocklist li,
.blocklist li.odd{
    background:#edf2f8;
    border:1px solid #ced6df;
    -moz-border-radius:4px;
    -webkit-border-radius:4px;
    border-radius:4px;
}

.blocklist a.img{
    display:block;
    background-color:#edf2f8;
    position:absolute;
    padding:5px;
    border:1px solid #ced6df;
    width:120px;
    height:120px;
    -moz-border-radius:4px;
    -webkit-border-radius:4px;
    border-radius:4px;
    left:12px;
    top:12px;
}

.blocklist li.odd a.img{
    background-color:#fff;
}

.holder{
    margin:0 0 0 148px;
    position:relative;
}

#FillerSpecialsTable a.book,
.booklist a.book,
.blocklist a.book,
.blocklist a.book:visited{
    display:block;
    font-size:14px;
    font-weight:bold;
    background:#00b2b7;
    padding:1px;
    border:none;
    color:#fff;
    -moz-border-radius:4px;
    -webkit-border-radius:4px;
    border-radius:4px;	
    width:200px;
    text-align:center;
    margin:0 0 8px 190px;
}

#FillerSpecialsTable a.book{
    width: auto;
    margin: 0 5px;
    padding: 3px;
}

#FillerSpecialsTable a.book,
.booklist a.book,
.booklist a.book:visited,
.blocklist a.book:hover,
.blocklist a.book:focus{
    color:#fff;
    background:#e8422b;
}

#FillerSpecialsTable a.book:hover,
#FillerSpecialsTable a.book:focus,
.booklist a.book:hover,
.booklist a.book:focus
{
    background:#00b2b7;
    color:#fff;
}

#PropertySearchResults li.specialOffer{
    background:#f7e1e1;
    border:1px solid #efbaba;
    -moz-border-radius:4px;
    -webkit-border-radius:4px;
    border-radius:4px;
}

li.specialOffer a.img{
    background-color:#fff;
    border:1px solid #efbaba;
}
li.specialOffer h3{
    position:relative;
}
li.specialOffer h3 span.specialOffer{
    position:absolute;
    right:10px;
    top:0;
    color:#ff4040;
    font-size:20px;
    text-transform:uppercase;
}

#sortOptions{
    background:#EDF2F8;
    border:1px solid #ced6df;
    -moz-border-radius:4px;
    border-radius:4px;
    margin-top:20px;
    padding:5px;
}

#sortOptions h2{
    margin-bottom:6px;
    font-weight:bold;
}

#sortOptions a{
    background:#fff;
    display:block;
    padding:4px;
    margin:0 0 1px;
    color:#0e4286;
    border:none;
    text-decoration:none;
}

#sortOptions a:hover,
#sortOptions a.current{
    background:#0e4286;
    color:#fff;
}

#sortOptions span{
    float:right;
    margin-top:-1px;
}

/* BOOKLISTTable (Short term search, detail table)
 * ---------------------------------------------------------------- */

h2#Options{
    clear:both;
}


.typography .booklist td,
.typography .booklist th{
    padding:10px 15px;
    border:1px solid #ced6df;
    vertical-align:middle;
}

.booklist tr.even{
    background:#fff;
}

.booklist tr:hover{
    background:#ffffcc;
}

.booklist span{
    color:#00b2b7;
}

.booklist span.saving{
    text-decoration:line-through;
}

#tooltip .offer{
    color:#022C6A;
}

.booklist span.now,
#tooltip .now{
    color:#e8422b;
}

.typography .booklist ul,
.typography .booklist p {
    margin: 0;
}

.typography .booklist ul li {
    font-size: 10px;
    margin: 0 0 0 14px;
}

.ShorttermSearchPage .booklist th{
    width:10%;
}

#Content .booklist a.book{
    display:block;
    line-height:26px;
    width:120px;
    margin:0 0 0 180px;
}

.ShorttermSearchPage #Content .booklist a.book{
    margin:0 0 0 100px;
}

#midtermwarning,
.midtermcharge{
    font-size:11px; 
    font-style: italic;
}

.booklist .midtermcharge{
    display: block;
    color: #666;
    margin: 3px 0 0;
}



/*  SPECIALOFFERS
 *  --------------------------------------------------------------- */

#fillerSpecial h2,
#specialOffers h2{
    font-size:18px;
    margin:0 0 12px;
}

#fillerSpecial li,
#specialOffers li{
    margin-bottom:40px;
    padding:10px 12px;
}

#specialOffers p{
    margin-bottom:6px;
}

#specialOffers h3{
    margin:0 0 2px;
}

#specialOffers .valid{
    font-size:14px;
    font-weight:bold;
}

#specialOffers .valid span{
    color:#e8422b;
}

#fillerSpecial .prices,
#specialOffers .prices{
    background:#fff;
    padding:3px 8px;
    border:1px solid #CED6DF;
    margin:0 0 4px;
}

#fillerSpecial .prices li,
#specialOffers .prices li{
    display:inline;
    margin:0 16px 0 0;
    padding:0;
    border:none;
    background:#fff;
}

#fillerSpecial .prices span,
#specialOffers .prices span{
    color:#022C6A;
    font-weight:bold;
}

#specialOffers .prices span.saving{
    text-decoration:line-through;
}

#FillerSpecialsTable .now,
#fillerSpecial .prices span.now,
#specialOffers .prices span.now{
    color:#e8422b;
}

#fillerSpecial form,
#specialOffers form{
    position:relative;
}

#fillerSpecial .field,
#specialOffers .field{
    float:left;
    margin-right:12px;
}

#fillerSpecial select,
#specialOffers select{
    padding:2px;
    width:50px;
}

#fillerSpecial label,
#specialOffers label{
    font-weight:bold;
    font-size:12px;
    margin-bottom:2px;
}

#fillerSpecial .Actions,
#specialOffers .Actions{
    position:absolute;
    right:40px;
    top:20px;
}

#fillerSpecial .Actions{
    right: 0;
}

#fillerSpecial legend,
#specialOffers legend{
    display:none;
}

#specialOffers .long a.book{
    float: right;
}

/*  FillerSpecials (more spreaded on existing)
 *  --------------------------------------------------------------- */

#FillerSpecialsTable{
    width: 100%;
    border: 1px solid #C6D3E3;
    color: #000;
}

#FillerSpecialsTable th{
    background: #dfe7f0;
}
#FillerSpecialsTable td,
#FillerSpecialsTable th{
    border: 1px solid #C6D3E3;

}

#FillerSpecialsTable tr.even td{
    background: #f4f7fa;
}

#fillerSpecial {
    margin-bottom:40px;
    padding:10px 12px;
    background:#edf2f8;
    border:1px solid #ced6df;
    -moz-border-radius:4px;
    -webkit-border-radius:4px;
    border-radius:4px;
}

#fillerSpecial p,
#fillerSpecial h2{
    margin-bottom: 12px;
}
#fillerSpecial .prices{
    margin-bottom: 20px;
}

/*  NEWSEARCH
 *  --------------------------------------------------------------- */

#NewSearch h2{
    font:bold 18px "Trebuchet MS", Arial, sans-serif;	
}

#NewSearch a{
    display:block;
    color:#fff;
    text-decoration:none;
    background-color:#0e4287;
    padding:3px 10px 4px;
    border-radius:4px;
    -moz-border-radius:4px;
    -webkit-border-radius:4px;
}

#NewSearch a:hover,
#NewSearch a:focus{
    background-color:#e8422b;
}

/*  SPECIALOFFERWIDGET
 *  --------------------------------------------------------------- */

.specialOfferWidget{
    margin: 20px 0;
}

.specialOfferWidget h2{
    font:bold 18px "Trebuchet MS", Arial, sans-serif;	
}

.specialOfferWidget a{
    display:block;
    color:#fff;
    text-decoration:none;
    background-color:#0e4287;
    padding:3px 10px 4px;
    border-radius:4px;
    -moz-border-radius:4px;
    -webkit-border-radius:4px;
}

.specialOfferWidget a:hover,
.specialOfferWidget a:focus{
    background-color:#e8422b;
}

/*  PAGINATION
 *  --------------------------------------------------------------- */
ol.pagination{
    position:relative;
    overflow:hidden;
}

.pagination li,
.typography .pagination li{
    float:left;
    list-style:none;
    margin:0;
    color:#00b2b7;
    font-weight:bold;
    margin:0 0 0 6px;
    line-height:1.2;
}

.pagination li.noLink{
    padding:2px 5px;
}

.pagination li.prev{
    margin:0 10px 0 0;
}

.pagination li.next{
    margin:0 0 0 16px;
}

.pagination a{
    display:block;
    float:left;
    border:1px solid #fad0ca;
    font-weight:normal;
    padding:2px 5px;
}

.pagination a:hover,
.pagination a:focus{
    background:#fad0ca;
    border-color:#333;
}

/*  ITEMS / GALLERY / ITEMPAGE
 *  --------------------------------------------------------------- */

.items{
    position:relative;
    overflow:hidden;
}

.items li,
.typography .items li{
    float:left;
    margin:0 14px 14px 0;
    list-style:none
}

.items li a{
    float:left;
}

/* ITEMPAGE
 * ------------------------------ */
.ItemPage .item{
    margin-bottom:20px;	
}

.ItemPage a.itemImage{
    float:left;
    display:block;
    border:3px solid #dedede;
    margin:0 14px 14px 0;
    padding:2px;	
}

.ItemPage #MainContent h2{
    clear:both;
    margin-bottom:18px;
}

/* PHOTO GALLERY
 * ------------------------------ */

.nolightbox li img,
.photos li a{
    display:block;
    border:3px solid #dedede;
    padding:2px;
}

.photos li a:hover,
a.itemImage:hover{
    border:3px solid #00b2b7;
}

body #jquery-lightbox img{
    display:inline;	
}

/* VIDEO GALLERY
 * ------------------------------ */

.MediaHolderPage .items li,
.VideoGalleryHolderPage .items li,
.Gallery360Holder .items li{
    width:150px;
    height: 150px;
    margin:0 26px 26px 0;
    padding:2px;
    background:#fff;
    border:3px solid #dedede;
}

.MediaHolderPage .items h2,
.VideoGalleryHolderPage .items h2,
.Gallery360Holder .items h2{
    height: 33px;
    margin:3px 4px 5px;
    font-size:14px;
}

.MediaHolderPage .items a,
.VideoGalleryHolderPage .items a,
.Gallery360Holder .items a{
    border:none;
    float:none;
}

/* ACCOMMODATION GALLERY
 * ------------------------------ */

#AccommodationGallery{
    position:relative;
    float:right;
    width:300px;
    margin:-20px 0 20px 16px;
}

#Mediums{
    overflow:hidden;
    margin:0;
    width:240px;
    height:200px;
}

#Content #Mediums li{
    position:absolute;
    left:30px;
    margin:0;
    list-style:none;
}

#Thumbs{
    width:240px;
    margin:10px 0 0 30px;
}

#Thumbs ul{
    margin:0;
}

#Thumbs ul li{
    float:left;
    list-style:none;
    margin:2px;
    border:2px solid #ccc;
    line-height:1;
}

#Thumbs ul li:hover{
    border:2px solid #00b2b7;
}

#AccommodationGallery img { 
    display:inline;
    vertical-align:text-bottom;
}

/* FOOTER
 * --------------------------------------------------------------- */

#Footer{
    position:relative;
    background:#0e4287 url(../images/footer-top.png) repeat-x left top;
    padding:25px 0;
    color:#fff;
}

#Footer ul{
    margin:16px 0 22px 12px;
}

#Footer h2{
    color:#e91b25;
    font:bold 18px "Trebuchet MS", Arial, Helvetica, serif;
    margin:12px 0 8px;
}

#Footer p{
    clear:both;
}

#Footer a{
    color:#fff;
    text-decoration:none;
    border-bottom:1px solid #3161a1;
}

#Footer ul a{
    line-height:1.6;
}

#Footer a:hover,
#Footer a:focus{
    border-color:#aac1e0;
}

/* FORMS
 * --------------------------------------------------------------- */

.field{
    position:relative;
    margin:0 0 10px;
}

label{
    display:block;
    margin:0 0 5px;
}

.checkbox label{
    display:inline;
}

input, select{
    padding:3px;
    border:1px solid #e0e4e7;
}

form .checkbox input{
    border:none;
}

input:focus, select:focus{
    background:#ffc;
}

.message, .validation{
    color:#ff0000;
    display:block;
    margin:3px 0;
}

.optionset ul li label {
    display: inline;
}

legend{
    display:none;
}

/* BOOKINGFORM
 * ------------------------ */

#BookingForm{
    position:relative;
    background:#3f73b7;
    color:#fff;
    border-radius:4px;
    -moz-border-radius:4px;
    -webkit-border-radius:4px;
    height:475px;
    padding:12px 4px 0;
}

#BookingForm h2{
    background:#3f73b7 url(../images/booking-searchform-h.png) no-repeat 12px -40px;
    text-indent:-30000px;
    font:bold italic 28px "Trebuchet MS", Arial, sans-serif;
    color:#e8422b;
    margin-bottom:8px;
    padding:0 12px;
    text-shadow: 1px 1px 1px #ffffff;
    filter: dropshadow(color=#ffffff, offx=1, offy=1) 
}

.col-2 #BookingForm h2{
    background-position:12px top;
}

.col #BookingForm{
    width:267px;
}

.col-2 #BookingForm{
    width:350px;
}

#LongTermForm{
    display:none;
}

#ShortTermForm,
#LongTermForm{
    position:relative;
    background:#edf0f5;
    color:#022c6a;
    height:362px;
    border-radius:4px;
    -moz-border-radius:4px;
    -webkit-border-radius:4px;
    padding:12px 14px;
}

.col-2 #ShortTermForm,
.col-2 #LongTermForm{
    padding:20px 25px;
    height:346px;
}

#BookingForm p.info{
    font-size:18px;
    color:#e8422b;
    margin-bottom:20px;
}

#BookingForm label{
    color:#022c6a;
    float:left;
    padding:3px 0;
}

#BookingForm .field{
    margin-bottom:16px;
    overflow:hidden;
}

#BookingForm .middleColumn{
    float:right;
}

#BookingForm input{
    width:107px;
    border:1px solid #bec8d6;
}

.col-2 #BookingForm input{
    width:144px;
}

#BookingForm select{
    width:115px;
    border:1px solid #bec8d6;
    padding:2px;
}

.col-2 #BookingForm select{
    width:152px;

}

#BookingForm legend{
    display:none;
}

#BookingForm .message{
    clear:both;
}

#AccommodationType ul{
    overflow:hidden;
    padding:0 0 0 12px;
}

#AccommodationType li{
    float:left;
}

#AccommodationType li a{
    width:106px;
    height:41px;		
    text-indent:-30000px;
    margin-right:5px;
    float:left;
}

#AccommodationType a#Short {
    background:url(../images/booking-tabs.png) no-repeat left top;

}
#AccommodationType a#Long{
    background:url(../images/booking-tabs.png) no-repeat left bottom;
}
#AccommodationType a#Special{
    background: #e7412b;
    text-indent: 0;
    width: 110px;
    height: 41px;
    line-height: 41px;
    padding: 0;
    margin-right: 0;
    color: #fff;
    font-size: 13px;
    font-weight: bold;
    text-align: center;
}
#AccommodationType a#Short.selected,
#AccommodationType a#Short:hover,
#AccommodationType a#Short:focus{ background-position: -107px top;}
#AccommodationType a#Long.selected,
#AccommodationType a#Long:hover,
#AccommodationType a#Long:focus{  background-position: -107px bottom;}

#BookingForm .Actions {
    margin: 20px 0 0 0;	
    overflow:hidden;
}

#BookingForm .Actions button {
    float: right;
}

#ui-datepicker-div{
    font-size:75%;
    z-index:100000;
}
.ui-datepicker{
    margin:-24px 0 0 160px;
}

.ui-datepicker td {
    font-size: 1.2em;
}

/* ACTUAL BOOKING FORMS
 * --------------------------------------------------------- */

.bookingBox input,
.bookingBox select{
    border:1px solid #ced6df;
    max-width:240px;
}

.bookingBox input:focus,
.bookingBox select:focus{
    border-color:#333;
}

.noborder input{ border:none; }

.bookingBox .field{
    overflow:hidden;
}

.ShorttermSearchPage .bookingBox .field{
    overflow:visible;
}

.typography .bookingBox label{
    font-weight:bold;
    float:left;
    width:160px;
    margin-bottom:2px;
}

.bookingBox .checkbox{
    margin:0 0 8px;
}

.bookingBox .checkbox label{
    float:none;
    display:inline;
}

.bookingBox .checkbox input{
    width:auto;
}

.bookingBox div.middleColumn{
    float:right;
    text-align:left;
    width:240px;
}

.ShorttermSearchPage .bookingBox div.middleColumn,
.longtermoption div.middleColumn{
    float:none;
    width:auto;
}

.ShorttermSearchPage #PropertyID .viewMore{
    font-size:10px;
}
.ShorttermSearchPage #PropertyID .description,
.PropertyPage .description{
    display:none;
}

.typography .bookingBox p.info{
    font-size:11px;
    color:#f00;
}

button.action {
    position: relative;
    border: 0; 
    padding: 0;
    cursor: pointer;
    overflow: visible; /* removes extra side padding in IE */
    padding: 0 10px 0 0; 
    font-size: 14px;
    text-transform: uppercase;
    text-align: center; 
    background: transparent url(../images/button.gif) no-repeat right -60px; 
}

button.bookform {
    background: url(../images/big-button.gif) no-repeat right -165px;
    width:100%;
}

button.action::-moz-focus-inner {
    border: none;  /* overrides extra padding in Firefox */
}

button.action span {
    position: relative;
    display: block; 
    white-space: nowrap;	
    padding: 4px 0 0 10px; 
    height: 20px; 
    background: transparent url(../images/button.gif) no-repeat left top; 
    color: #fff;
}

button.bookform span {
    background: url(../images/big-button.gif) no-repeat 0 -55px;
    height:46px;
    line-height:40px;

}

.bookingBox button.action{
    font-size:15px;
    font-weight:bold;
}

.bookingBox button.action span{
    padding-top:3px;
    height:21px;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
    /* Safari and Google Chrome only - fix margins */
    button.action span {
        margin-top: -1px;
    }
}

button.action:hover,
button.actionHover { /* the redundant class is used to apply the hover state with a script */
    background-position: right -90px; 
}

#BookingForm button.action:hover{
    background-position: right -110px; 
}

button.action:hover span,
button.actionHover span {
    background-position: 0 -30px;
}

button.bookform:hover span {
    background-position: top left;
    color: #f00;
}

.ShorttermSearchPage #Form_BookingForm .Actions{
    margin-bottom:16px;
}

#PersonalDetailsForm_PersonalDetailsForm .Actions{
    margin-top: 20px;
}

#OptionalCharges{
    position: absolute;
    margin: 0;
    left: 500px;
    top: 300px;
    width: 408px;
    background: none repeat scroll 0 0 #EDF2F8;
    border: 1px solid #CED6DF;
    border-radius: 5px 5px 5px 5px;
    padding: 25px 30px 12px;
}

#OptionalCharges div.middleColumn{
    float: none;
    width: 400px;
}

#OptionalCharges label{
    display: block;
    float: none;
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 12px;
}

#OptionalCharges span.longDescription{
    display: none;
}

#OptionalCharges li{
    clear: both;
    list-style: none;
    margin: 0;
}

#OptionalCharges li input{
    float: left;
    border: none;
    padding: 0;
}

#OptionalCharges li label{
    float: left;
    font-size: 12px;
    font-weight: normal;
    width: 300px;
    margin: -2px 0 12px 10px;
}

#SelectedOptionalCharges h3, #SelectedOptionalCharges ul{
    margin-bottom: 10px;
}

/* Booking Short Search */

ol.specials,
.bookingBox ol.specials {
    margin:4px 0 6px;
}

.bookingBox ol.specials li {
    font-size: 10px;
    margin: 0 0 0 14px;
}

#tooltip ol.specials li{
    font-size:12px;
    list-style:decimal;
    margin:0 0 0 20px;
}

ol.specials li.supplement,
p.supplement{
    color: #022C6A;
}

ol.specials li.saving,
p.saving {
    color: #E8422B;
}

#Content p.saving{
    font-size:10px;
}

#Content p.supplement{
    font-size:10px;
}

/* Booking Summary */

.bookingBox ul.specials {
    margin:4px 0 6px;
}

.bookingBox ul.specials li {
    font-size: 10px;
    margin: 0 0 0 14px;
}

.bookingBox ul.specials li.supplement {
    color: #022C6A;
}

.bookingBox ul.specials li.saving {
    color: #E8422B;
}

.fieldgroup{
    position:relative;
    overflow:hidden;
}

.fieldgroupField{
    float:left;
    margin:0 5px 0 0;
}

.fieldgroupField label{
    margin:0;
    padding:3px 0;
}

.fieldgroupField select{
    width:60px;
}

.bookingBox .fieldgroup div.middleColumn{
    float:none;
    width:auto;
}

#TermsAndCondit{
    margin-top:30px;
}

.goog-te-gadget {
    margin: 16px 0 22px 12px;
    color: #fff !important;
}

.goog-te-gadget span {
    display: block;
    margin-top: 5px;
}
/* HELPERS
 * --------------------------------------------------------- */

.last{
    margin:0;
}

.indent{
    padding:0 0 0 12px;
}

strong{
    font-weight:bold;
}

em{
    font-style:italic;
}

/* TOOLTIP
 * ---------------------- */

#tooltip {
    position: absolute;
    z-index: 3000;
    border: 1px solid #111;
    background-color: #fff;
    padding: 8px;
    width:300px;
}
#tooltip h3, #tooltip div { margin: 0; }
#tooltip p{ margin: 0 0 8px; }

/* LANG SWITCHER
 * --------------------------------------------------------- */
#LanguageSwitcher{
    position:absolute;
    right:10px;
    top:100px;
    width:540px;
    overflow:hidden;
    height:54px;
}

#SwitchInner{
    position:relative;
    /*
        top:-26px;
    */
}

#LanguageSwitcher ul{
    position:relative;
    background:#0e4287;
    padding:8px 4px;
    width:auto;
    float:right;
    -webkit-border-top-left-radius: 0px;
    -webkit-border-top-right-radius: 0px;
    -webkit-border-bottom-right-radius: 0px;
    -webkit-border-bottom-left-radius: 5px;
    -moz-border-radius-topleft: 0px;
    -moz-border-radius-topright: 0px;
    -moz-border-radius-bottomright: 0px;
    -moz-border-radius-bottomleft: 5px;
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 5px; 
}

#LanguageSwitcher li{
    display:inline;
    float:left;
    margin:0 3px;
}

#LangTrigger{
    clear:both;
    display:block;
    background:#0e4287;
    padding:6px;
    color:#fff;
    text-decoration:none;
    font-size:11px;
    width:auto;
    float:right;
    -webkit-border-top-left-radius: 0px;
    -webkit-border-top-right-radius: 0px;
    -webkit-border-bottom-right-radius: 5px;
    -webkit-border-bottom-left-radius: 5px;
    -moz-border-radius-topleft: 0px;
    -moz-border-radius-topright: 0px;
    -moz-border-radius-bottomright: 5px;
    -moz-border-radius-bottomleft: 5px;
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px; 
}

a#LangTrigger:hover, 
a#LangTrigger:focus{
    color:#e8422b;
}

#LangTrigger img{
    display:inline-block;
    margin:0 0 -2px 4px;
}
