/* Set defaults */
body			{ margin: 0; padding: 0; font-size: 76%; }
input,
select,
textarea		{ font-size: 1em; }
th,
td				{ vertical-align: top; font-size: 1em; }
img				{ border: 0; }
a				{ text-decoration: none; }
a:hover			{ text-decoration: underline; }

/* Generic classes */
.clear:after	{ content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.clear			{ display: inline-block; }
/* \*/
.clear			{ display: block; }
/* */

.align-left		{ text-align: left !important; }
.align-right	{ text-align: right !important; }
.align-centre	{ text-align: center !important; }
.align-top		{ vertical-align: top !important; }
.align-bottom	{ vertical-align: bottom !important; }
.align-middle	{ vertical-align: middle !important; }

.bold			{ font-weight: bold !important; }
.italic			{ font-style: italic !important; }
.underline		{ text-decoration: underline !important; }

.rounded { float: left; padding: 0 8px; margin: 0 3px 0 0; height: 22px; line-height: 22px; background: #35bb5e; color: white; border-color: transparent; -moz-border-radius: 6px; -webkit-border-radius: 6px; text-align: center; font-weight: bold; font-size: 0.9em; }
a.rounded:hover { text-decoration: none; }
.rounded-orange { background: #f87f00 !important; }

/* Site specific */
body,
input,
select,
textarea { font-family: Arial, Helvetica, sans-serif; }

h1 { font-size: 2.4em; font-weight: normal; margin: 0; padding: 0 0 0 20px; height: 66px; line-height: 66px; color: white; }
* html h1 { font-size: 2.3em; }
h2 { font-size: 1.6em; font-weight: normal; }
h3 { font-size: 1.2em; }

cite { color: #239D48; }

#wrapper { width: 780px; padding: 0 0 0 20px; margin: 0 auto; }

#header { position: relative; height: 130px; }
#logo { }

#section-select { position: absolute; left: -17px; top: 165px; margin: 0; padding: 0; list-style-type: none; }
#section-select li { padding: 0 0 6px; }
#section-select li a { display: block; width: 17px; height: 88px; }
#section-select li a:hover { text-decoration: none; }

/* Nav level 1 */
#navigation a.home-link { position: absolute; left: 0; bottom: 0; display: block; width: 45px; height: 26px; }
#navigation a.home-link:hover { text-decoration: none; }
#navigation ul { position: absolute; right: 12px; bottom: 0; margin: 0 -24px 0 0; padding: 0; list-style-type: none; }
#navigation li { float: left; padding: 0 12px 0 0; }
#navigation li a { float: left; width: 110px; height: 25px; line-height: 25px; text-align: center; color: white; font-size: 1.1em; }
#navigation li a:hover { text-decoration: none; }

/* Nav level 2 */
#navigation-l2 ul,
#navigation-l3 ul { display: inline-block; margin: 0; padding: 0; list-style-type: none; width: 780px; }
#navigation-l2 ul:after,
#navigation-l3 ul:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
/* \*/
#navigation-l2 ul,
#navigation-l3 ul { display: block; }
/* */
#navigation-l2 li,
#navigation-l3 li { float: left }
#navigation-l2 li a,
#navigation-l3 li a { float: left; height: 25px; line-height: 25px; padding: 0 10px; color: white; text-transform: uppercase; font-size: 0.8em; }

#main { position: relative; padding: 0; min-height: 311px; }

#search_box { position: relative; height: 45px; }
#search_box input.text { position: absolute; left: 56px; top: 7px; width: 115px; border: 0; background: transparent; }
#search_box input.submit { position: absolute; right: 24px; top: 7px; width: 17px; height: 17px; cursor: pointer; }

#sidebar { float: right; width: 221px; padding: 15px 0 1px; }
#sidebar div.box { position: relative; }
#sidebar div.box div.inner2 { padding: 8px 20px 25px 10px; color: white; }
#sidebar div.box h3 { margin: 0 0 0.3em; font-weight: normal; font-size: 1.15em; padding: 0.3em 0 0.3em 23px; }
#sidebar div.box p { margin: 0 0 1em; font-size: 0.85em; }
#sidebar div.box p.full { margin: 0 -7px 1px -1px; }
#sidebar div.box a { text-transform: uppercase; text-decoration: underline; color: white; }

#sidebar div.blurb img { float: left; margin: 0 10px 0 0; }
#sidebar div.blurb h3 { margin: 0 0 0.2em 90px; font-weight: normal; font-size: 1.15em; background: none; padding: 0 0 2px 22px !important; }
* html #sidebar div.blurb h3 { font-size: 1em; font-weight: bold; }
#sidebar div.blurb p { margin: 0 0 0 90px; font-size: 0.9em; }
#sidebar div.blurb p a { display: block; color: white; text-transform: uppercase; margin: 0.4em 0 0; text-decoration: underline; }

#content { position: relative; margin: 0 221px 0 0; padding: 15px 15px 1px; }

#topimage { position: relative; margin: 0 0 1em; }
* html #topimage { float: left; }
#topimage .topleft,
#topimage .bottomright { position: absolute; }
#topimage .topleft { left: 0; top: -1px; }
#topimage .bottomright { right: 3px; bottom: 0px; }
* html #topimage .bottomright { right: -2px; bottom: 1px; }
* html #topimage.home .bottomright { right: 29px; bottom: -1px; }
#topimage ul#home-slideshow { margin: 0; padding: 0; list-style-type: none; height: 325px; }
#topimage ul#home-slideshow li { position: absolute; left: 0; top: 0; display: none; height: 325px; overflow: hidden; }
#topimage ul#home-slideshow li.show { display: block; }
#topimage ul#home-slideshow li a { position: absolute; display: block; }
#topimage ul.image-links { margin: 0; padding: 0; list-style-type: none; }
#topimage ul.image-links li a { position: absolute; display: block; }

#home-boxes { position: relative; padding: 0 20px 20px; margin: 0 -40px 0 0; clear: both; }
#home-boxes.page { position: static; }
#home-boxes h2 { height: 20px; line-height: 20px; margin: 0 20px 20px -20px; color: white; text-transform: uppercase; font-size: 1em; text-align: center; }
#home-boxes a { color: white; text-transform: uppercase; text-decoration: underline; }
#home-boxes div,
#home-boxes form,
#sidebar form.booking { position: relative; color: white; }

#home-boxes div { height: 52px; margin: 0 22px 0 0; width: 93px; padding: 4px 5px 4px 134px; height: 60px; float: left; }
#home-boxes div .img { position: absolute; left: -4px; top: -4px; }
#home-boxes div h3,
#home-boxes p { font-weight: normal; }
#home-boxes div h3 { margin: 0 0 0.2em; font-size: 1.1em; }
#home-boxes p { margin: 0; font-size: 0.9em; }

* html #sidebar.booking_form { position: relative; padding: 112px 0 0; }

#home-boxes form { position: absolute; right: 45px; top: 26px; #top: 38px; width: 259px; height: 96px; }
#sidebar form.booking { position: relative; left: -23px; padding: 1px 0 0 29px; #padding: 13px 0 0 29px; width: 259px; height: 96px; #height: 86px; }
* html #home-boxes form { top: 38px; }
* html #sidebar form.booking { position: absolute; left: -23px; top: 10px; }
#home-boxes.page form { right: -12px; margin: 90px 0 0; }
#home-boxes.page.page-131 form { margin: 520px 0 0; }
#home-boxes form label,
#sidebar form.booking label { text-transform: uppercase; float: left; font-size: 0.8em; padding: 0 1em 0 0; }
#home-boxes form select,
#sidebar form.booking select { float: left; font-size: 0.9em; }

#sidebar form.booking { position: relative; }
#sidebar form.booking input.image { position: absolute; z-index: 10; right: 61px; top: 15px; width: 53px; height: 53px; display: block; }

#home-boxes form p.date { position: absolute; left: 18px; top: 20px; width: 300px; height: 300px; }
#sidebar form.booking p.date { position: absolute; left: 29px; top: 35px; #top: 45px; width: 300px; height: 300px; }
#home-boxes.page form p.date { left: 28px; }
#home-boxes form p.date select,
#sidebar form.booking p.date select { position: relative; top: -3px; }
#home-boxes form p.date #day,
#sidebar form.booking p.date #day { width: 41px; }
#home-boxes form p.date #month,
#sidebar form.booking p.date #month { width: 48px; }
#home-boxes form p.date #year,
#sidebar form.booking p.date #year { width: 53px; }

#home-boxes form p.people { position: absolute; left: 18px; bottom: 35px; }
#home-boxes form p.people #adults { position: absolute; left: 0; bottom: -17px; }
#home-boxes form p.people #children { position: absolute; left: 50px; bottom: -17px; }

#home-boxes form h3 { position: absolute; right: 18px; top: 13px; margin: 0; font-weight: normal; width: 75px; font-size: 1em; }

#home-boxes form p.text { position: absolute; right: 18px; bottom: 43px; margin: 0; width: 75px; font-size: 0.8em; #font-size: 0.75em; }
* html #home-boxes form p.text { font-size: 0.7em; }
#home-boxes form p.info { position: absolute; left: 18px; top: 52px; }
#home-boxes.page form p.info { left: 28px; }
#home-boxes form p.info strong { font-weight: normal; font-size: 1.1em; }

#home-boxes form input.image { position: absolute; right: 5px; bottom: -25px; width: 54px; height: 54px; }

#footer { position: relative; z-index: 100; font-size: 0.9em; padding: 0 0 0.9em; }
#footer ul { margin: 0; padding: 1em 15px; list-style-type: none; }
#footer li { float: left; height: 1em; line-height: 1em; padding: 0 0.7em; color: white; border-left: 1px solid white; }
#footer li.first { border-left: 0; padding: 0 1em 0 0; }
#footer a { float: left; color: white; }

#cart-panel h2 { padding: 0 0 0 27px; background: url(../graphics/cart/icon.gif) no-repeat left center; margin: 0.2em 0; color: white; }
#cart-panel table { width: 190px; }
#cart-panel td { font-size: 0.9em; padding: 0 0 0.2em; }
#cart-panel td.title em { font-size: 0.9em; }
#cart-panel td.price { text-align: right; white-space: nowrap; }
#cart-panel tr.total td { border-top: 1px solid #258843; font-size: 1.2em; padding: 0.3em 0; }
#cart-panel a { text-transform: none !important; }
#cart-panel hr { padding: 0; color: white; background: white; height: 1px; line-height: 0; overflow: hidden; margin: 0 -9px; border: 0; }
#cart-panel p.links { padding: 0.5em 0 0; font-size: 1.3em !important; }
#cart-panel p.links a { text-decoration: none; padding: 3px 12px; background: #156930; border-color: transparent; -moz-border-radius: 5px; -webkit-border-radius: 5px; }
#cart-panel div.foot { margin: 0 -8px 1em; padding: 8px 8px 0; }
#cart-panel div.foot h2 { padding: 0; background: none; margin: 0 0 0.2em; }
#cart-panel ul { margin: 0; padding: 0; list-style-type: none; border-top: 1px solid #258843; }
#cart-panel li { height: 23px; line-height: 23px; border-bottom: 1px solid #258843; }
#cart-panel li a { display: block; text-decoration: none !important; font-size: 1.1em; }

#gallery { margin: 0 -26px 0 0; padding: 1em 0 0; list-style-type: none; }
#gallery li { float: left; width: 110px; height: 110px; padding: 0 26px 1em 0; }
#gallery li a { float: left; width: 110px; height: 110px; text-align: center; }

div.form label { float: left; width: 120px; }
div.form input.text { width: 250px; }
div.form p.digits input.text { width: 30px; }
div.form input.submit { margin: 0 0 0 120px; }

div#main table.gallery td { padding: 10px; background-color: #eee; vertical-align: bottom}

#logout-link { position: absolute; right: 10px; bottom: 3px; display: block; padding: 5px 15px; background: white; font-weight: bold; }