/*-------------------------------------------------------------------------------
  R E S E T
-------------------------------------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dd, dl, dt, ol, ul, li, form, fieldset, label, table, caption, legend, thead, tbody, tfoot, th, tr, td { border: 0; font-size: 100%; font-style: normal; font-weight: normal; margin: 0; padding: 0; vertical-align: baseline; }
q:before, q:after { content: ""; }
q { quotes: "" ""; }
ul, ol, dir, menu { list-style: none; }
a img, :link img, :visited img, fieldset, iframe { border: 0; }
table { border-collapse: collapse; border-spacing: 0; }
caption, th, td { font-weight: normal; text-align: left; vertical-align: top; }
hr { display: none; }


/*-------------------------------------------------------------------------------
  B A S I C  S T Y L E S
-------------------------------------------------------------------------------*/
img { display: block; }
em, i, dfn, cite { font-style: italic; }
strong, b { font-weight: bold; }
u, ins { text-decoration: underline; }
acronym, abbr { border-bottom: 1px dotted #666; cursor: help; }
acronym { text-transform: uppercase; }
code, samp, kbd, pre, tt, var { font: 1em "Courier New", Courier, monospace; }
input, select, textarea { font: 1em Arial, Helvetica, sans-serif; }
label { cursor: pointer; } 
sup { font-size: 0.8em; vertical-align: super; }
sub { font-size: 0.8em; vertical-align: sub; }

/* 2.1	Global Link Settings
-------------------------------------------------------------------------------*/
a, a:link { color: #0f5fa9; text-decoration: underline; }
a:visited { color: #0f5fa9; }
a:hover { text-decoration: none; }
a:active { color: #0f5fa9; }

/* 2.2	Accessibility Navigation & Hiding
-------------------------------------------------------------------------------*/
.accessibility-navigation, 
.hide,
.welcome h2,
.gallery-box em { position: absolute; top: -999em; left: -999em; height: 1px; width: 1px; }

/* 2.3	Clearing
-------------------------------------------------------------------------------*/ 
.clearfix:after,
.location-and-gallery:after,
.explore-calendar-contact:after,
#navigation:after,
#content:after,
.contact form li:after,
.gmaps:after,
.contact-wrap:after { display: block; visibility: hidden; clear: both; height: 0; content: "."; }


/*-------------------------------------------------------------------------------
  S T R U C T U R E
-------------------------------------------------------------------------------*/
body { background: #412319 url(../images/bg-wood.jpg); color: #423c29; text-align: center; }
.wrapper { font: 76%/1 Arial, Helvetica, sans-serif; width: 852px; text-align: left; margin: 0 auto; }
.container { width: 852px; background: #e3e1d9 url(../images/bg-container.png) repeat-y; }

/*-------------------------------------------------------------------------------
  H E A D E R
-------------------------------------------------------------------------------*/ 

/* Logo
-------------------------------------------------------------------------------*/ 

#header, #header .cabin-by-the-sea span, #header p a span { background: url(../images/bg-header.jpg); }
#header { position: relative; height: 152px; overflow: hidden; background-color: #cce5fa; }
#header .cabin-by-the-sea { width: 500px; height: 152px; position: relative; overflow: hidden; }
#header .cabin-by-the-sea span { cursor: pointer; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
#header h1.cabin-by-the-sea span { cursor: default; }
#header .cabin-by-the-sea a, #header .cabin-by-the-sea a:link, #header .cabin-by-the-sea a:visited, #header .cabin-by-the-sea a:active { color: #166c98; }
#header .cabin-by-the-sea { color: #166c98; font-size: 3em; text-align: center; line-height: 152px; }
#header p { background-color: #fff; position: absolute; top: 0; right: 27px; font-size: 1.2em; line-height: 46px; }
#header p a, #header p a:link, #header p a:visited, #header p a:active { position: relative; overflow: hidden; width: 224px; height: 46px; display: block; text-align: center; color: #166c98; text-decoration: none; }
#header p a:hover { text-decoration: underline; }
#header p a span { position: absolute; top: 0; right: 0; width: 100%; height: 100%; background-position: -601px 0; display: block; cursor: pointer; display: block; }
 

/*-------------------------------------------------------------------------------
  N A V I G A T I O N
-------------------------------------------------------------------------------*/ 

#navigation li { height: 47px; line-height: 47px; text-align: center; overflow: hidden; position: relative; float: left; font-size: 1.2em; }
#navigation li a span { background: url(../images/bg-navigation.jpg) no-repeat; position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; cursor: pointer; }
#navigation li a, #navigation li a:link, #navigation li a:visited, #navigation li a:active { color: #fff; background-color: #186c9a; display: block; text-decoration: none; }
#navigation li a:hover,
body.home #navigation li.nav-home a,
body.about #navigation li.nav-about a,
body.location #navigation li.nav-location a,
body.rates #navigation li.nav-rates a,
body.calendar #navigation li.nav-calendar a,
body.gallery #navigation li.nav-gallery a,
body.blog #navigation li.nav-blog a,
body.faq #navigation li.nav-faq a,
body.contact #navigation li.nav-contact a { color: #a8be60; }

#navigation li.nav-home { width: 92px; }
#navigation li.nav-about { width: 91px; }
#navigation li.nav-location { width: 106px; }
#navigation li.nav-rates { width: 89px; }
#navigation li.nav-calendar { width: 111px; }
#navigation li.nav-gallery { width: 98px; }
#navigation li.nav-blog { width: 80px; }
#navigation li.nav-faq { width: 80px; }
#navigation li.nav-contact { width: 105px; }

#navigation li.nav-home a span { background-position: 0 0; }
#navigation li.nav-about a span { background-position: -92px 0; }
#navigation li.nav-location a span { background-position: -183px 0; }
#navigation li.nav-rates a span { background-position: -289px 0; }
#navigation li.nav-calendar a span { background-position: -378px 0; }
#navigation li.nav-gallery a span { background-position: -489px 0; }
#navigation li.nav-blog a span { background-position: -587px 0; }
#navigation li.nav-faq a span { background-position: -667px 0; }
#navigation li.nav-contact a span { background-position: -747px 0; }

body.home #navigation li.nav-home a span,
#navigation li.nav-home a:hover span { background-position: 0 -47px; }
body.about #navigation li.nav-about a span,
#navigation li.nav-about a:hover span { background-position: -92px -47px; }
body.location #navigation li.nav-location a span,
#navigation li.nav-location a:hover span { background-position: -183px -47px; }
body.rates #navigation li.nav-rates a span,
#navigation li.nav-rates a:hover span { background-position: -289px -47px; }
body.calendar #navigation li.nav-calendar a span,
#navigation li.nav-calendar a:hover span { background-position: -378px -47px; }
body.gallery #navigation li.nav-gallery a span,
#navigation li.nav-gallery a:hover span { background-position: -489px -47px; }
body.blog #navigation li.nav-blog a span,
#navigation li.nav-blog a:hover span { background-position: -587px -47px; }
body.faq #navigation li.nav-faq a span,
#navigation li.nav-faq a:hover span { background-position: -667px -47px; }
body.contact #navigation li.nav-contact a span,
#navigation li.nav-contact a:hover span { background-position: -747px -47px; }


/*-------------------------------------------------------------------------------
  C O N T E N T
-------------------------------------------------------------------------------*/ 

/* homepage */
.welcome { background: url(../images/bg-welcome.jpg); width: 852px; height: 245px; overflow: hidden; position: relative; clear: both; }
.welcome a { position: relative; width: 99px; height: 16px; overflow: hidden; display: block; }
.welcome a span { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; display: block; background: url(../images/txt-learn_more.jpg); cursor: pointer; }
.welcome p { font-size: 1.2em; padding: 52px 50px 0 0; float: right; width: 415px; line-height: 1.8; }
.welcome p.learn-more { padding: 0; float: none; width: auto; position: absolute; bottom: 39px; right: 65px; font-size: .9em; }

#content,
body.blog div.wrapper-blog { background: url(../images/bg-rope.jpg) no-repeat top left; padding: 40px; }
body.home #content { background: url(../images/bg-leaf.jpg) no-repeat; padding: 22px 0 0 0; }

.location-box { width: 466px; background: url(../images/bg-location-top.jpg); margin: 0 0 0 25px; float: left; }
.location-box ul { background: url(../images/bg-location-btm.jpg) no-repeat bottom left; padding-bottom: 13px; }
.location-box h3 { color: #32877e; padding: 20px 20px 10px; font-weight: bold; font-size: 1.3em; line-height: 1.6; }
.location-box li { line-height: 1.6; padding: 5px 20px 5px 60px; margin-left: 27px; }
.location-box li.boat { background: url(../images/ico-boat.jpg) no-repeat center left; }
.location-box li.leaf { background: url(../images/ico-leaf.jpg) no-repeat center left; }
.location-box li.food { background: url(../images/ico-food.jpg) no-repeat center left; }
.location-box li a, .location li a:link, .location li a:visited, .location li a:active { font-weight: bold; text-decoration: none; }
.location-box li a:hover { text-decoration: underline; }

.gallery-box { float: right; width: 313px; height: 266px; position: relative; margin-right: 27px; margin-top: 7px; }
.gallery-box span { position: absolute; top: 0; left: 0; width: 313px; height: 266px; background: url(../images/bg-frame.png); display: block; cursor: pointer; }
.gallery-box a { display: block; }
.gallery-box img { margin: 5px 0 0 18px; }

.explore-calendar-contact { margin: 15px 0 0 25px; background: url(../images/bg-modules.jpg) no-repeat; height: 257px; overflow: hidden; }
.module { float: left; width: 253px; margin-right: 21px; }
.module h3 { height: 20px; position: relative; margin: 18px auto 14px; text-align: center; text-transform: uppercase; font-weight: normal; color: #60b58f; font-size: 1.6em; overflow: hidden; }
.explore-calendar-contact .module h3 strong { font-weight: bold; color: #9ab446; }
.explore-calendar-contact .module h3 span { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; overflow: hidden; }
.explore-calendar-contact .explore h3 { width: 219px; }
.explore-calendar-contact .calendar h3 { width: 120px; }
.explore-calendar-contact .contact p { text-indent: -999em; }
.explore-calendar-contact .explore h3 span { background: url(../images/txt-exploring_bowser.jpg); }
.explore-calendar-contact .calendar h3 span { background: url(../images/txt-calendar.jpg); }
.explore-calendar-contact .contact h3 span { background: url(../images/txt-contact_info.jpg); }
.explore-calendar-contact .explore h3 strong { color: #628fb9; }
.explore-calendar-contact .module img { margin: 0 auto; text-align: center; }
.explore-calendar-contact .explore img { border: 3px solid #e1e8ef; margin-bottom: 2px; }
#content .explore-calendar-contact .explore p { font-size: .9em; line-height: 1.7; padding: 6px 10px 1px 17px; color: #304253; }
.explore-calendar-contact .calendar { text-align: center; }
#content .explore-calendar-contact .contact ul { padding-top: 15px; }
.explore-calendar-contact .contact li { padding: 0 10px 0 55px; line-height: 1.5; margin-left: 20px; }
.explore-calendar-contact .contact li.address { background: url(../images/ico-cabin.png) no-repeat center left; }
.explore-calendar-contact .contact li.email { background: url(../images/ico-email.png) no-repeat center left; padding-top: 9px; padding-bottom: 9px; margin-top: 10px; }
.explore-calendar-contact .contact li.phone { background: url(../images/ico-phone.png) no-repeat center left; padding-top: 15px; padding-bottom: 15px; margin-top: 10px; }
.explore-calendar-contact .contact li.address a { font-size: .9em; margin-left: 5px; }

/* forms */
form input, form select, form textarea { border: 0; border-bottom: 1px solid #ddd; border-right: 1px solid #c3c3c3; background: #fff url(../images/bg-input.png) no-repeat; color: #333; font-size: 1em; width: 213px; padding: 5px 8px 5px; float: left; }
form textarea { height: 110px; }
form input.submit { padding: 5px 8px 3px; font-weight: bold; background: #069; color: #fff; cursor: pointer; width: auto; margin-left: 80px; font-size: 1.3em; border: 1px solid #fff; }
form input.submit:hover { border-color: #000; }

/* typical content */
#content h1 { font-weight: bold; color: #069; font-size: 2.8em; padding: 20px 0 50px 0; text-align: center; }
#content h2 { font-weight: bold; color: #066a38; font-size: 2em; padding: 0 0 15px; }
#content p, #content ul, #content ol { line-height: 1.6; padding: 0 0 18px; }
.primary-content { width: 380px; float: left; }
.secondary-content { width: 330px; float: right; padding-left: 50px; background: url(../images/bg-divider.jpg) repeat-y top left; }

/* contact */
.contact .primary-content ol { margin-left: 20px; }
.contact .primary-content li { list-style: decimal; padding-bottom: 10px; }
.contact .req strong, .contact form li strong { color: #900; font-weight: bold; vertical-align: middle; font-size: 1.5em; line-height: 1; }
.contact .req { font-weight: bold; }
.contact label { font-weight: bold; float: left; text-align: right; width: 70px; margin-right: 10px; margin-top: 3px; }
.contact form li { margin-bottom: 10px; }
.contact form { padding-top: 18px; padding-bottom: 245px; }
.center { text-align: center; }
.big { font-size: 1.2em; }
strong a, strong a:link, strong a:visited, strong a:active { font-weight: bold; }
.contact-left { width: 46%; float: left; }
.contact-right { width: 53%; float: right; }
img.instructions { border: 1px solid #333; margin: 0 auto 15px; text-align: center; }

/* contact error */
.error { font-weight: bold; color: #900; margin-left: 80px; }
.contact label.error { width: auto; text-align: left; }
.contact input.error,
.contact textarea.error { border: 1px solid #900; background: #ffc; font-weight: normal; color: #333; margin-left: 0; }
.contact #content .secondary-content ol,
.contact #content .primary-content { text-align: center; }
.contact-alt #content .primary-content { width: auto; float: none; }
.contact #content .primary-content .experience ol { padding: 0; }
.contact #content .primary-content .experience ol li { list-style: none; }
.contact .experience { width: 500px; margin: 0 auto; padding-bottom: 30px; text-align: left; }
.contact .experience label { width: 150px; }
.contact .experience input.text,
.contact .experience textarea { width: 300px; }
.contact .experience .stayagain input { background: none; width: auto; }
.contact .experience .stayagain label { width: auto; float: left; margin-left: 5px; margin-top: 0; }
.contact .experience .submit { margin-left: 180px; }

.contact .twitter { display: block; background: url(../images/ico-twitter.png) no-repeat center left; font-weight: bold; padding: 10px 0 10px 38px; }

/* faq */
.faq #content ol { padding: 0 0 30px; background: url(../images/bg-divider-horz.jpg) repeat-x bottom left; margin-bottom: 20px; }
.faq #content ol li { list-style: decimal; margin-bottom: 5px; }
.faq #content ol { margin-left: 20px; }
.faq #content h2 { font-size: 1.5em; padding: 20px 0 0; line-height: 1.4; margin-top: 10px; border-top: 1px solid #ccc; }
.faq #content h2.first { margin-top: 0; border: 0; }
#content .faq-list { padding: 0; }
.faq-list li { position: relative; }
.faq-list li a.top { position: absolute; top: 23px; right: 0; background: url(../images/bg-top.jpg) no-repeat center left; padding-left: 20px; line-height: 1.8; }

/* google maps */
.gmaps { width: 768px; height: 510px; position: relative; padding: 3px 0 0 3px; background: url(../images/gmaps-bg.png) no-repeat top left; margin: 0; } 
.gmaps #side_bar { margin-top: 30px; line-height: 1.3; }
.gmaps #map { width: 751px; height: 495px; }
.gmaps #side_bar li { float: left; width: 235px; }
#side_bar li { margin-right: 20px; margin-bottom: 7px; border-bottom: 1px solid #ccc; padding-bottom: 7px; font-size: .9em; }
#side_bar li a { display: block; padding-right: 45px; font-weight: normal; }
#side_bar li a:hover { text-decoration: underline; }
#side_bar li.icon8 a { padding-right: 75px; }
#side_bar li.icon12 a,
#side_bar li.icon10 a { padding-right: 80px; }
#side_bar li.icon0 a { background: url(../images/gmaps-cat-bar.png) no-repeat 100% 4px; }
#side_bar li.icon1 a { background: url(../images/gmaps-cat-golf.png) no-repeat 100% 4px; }
#side_bar li.icon2 a { background: url(../images/gmaps-cat-beach.png) no-repeat 100% 4px; }
#side_bar li.icon3 a { background: url(../images/gmaps-cat-cafe.png) no-repeat 100% 4px; }
#side_bar li.icon4 a { background: url(../images/gmaps-cat-ferry.png) no-repeat 100% 4px; }
#side_bar li.icon5 a { background: url(../images/gmaps-cat-hiking.png) no-repeat 100% 4px; }
#side_bar li.icon6 a { background: url(../images/gmaps-cat-home.png) no-repeat 100% 4px; font-weight: bold; }
#side_bar li.icon7 a { background: url(../images/gmaps-cat-park.png) no-repeat 100% 4px; }
#side_bar li.icon8 a { background: url(../images/gmaps-cat-restaurant.png) no-repeat 100% 4px; }
#side_bar li.icon9 a { background: url(../images/gmaps-cat-shopping.png) no-repeat 100% 4px; }
#side_bar li.icon10 a { background: url(../images/gmaps-cat-sightseeing.png) no-repeat 100% 4px; }
#side_bar li.icon11 a { background: url(../images/gmaps-cat-tennis.png) no-repeat 100% 4px; }
#side_bar li.icon12 a { background: url(../images/gmaps-cat-liquor.png) no-repeat 100% 4px; }
#side_bar li.icon13 a { background: url(../images/gmaps-cat-lake.png) no-repeat 100% 4px; }
#side_bar li.icon14 a { background: url(../images/gmaps-cat-activities.png) no-repeat 100% 4px; }
#side_bar li.icon15 a { background: url(../images/gmaps-cat-realtor.png) no-repeat 100% 4px; }

/* gallery */
.gallery #content { padding: 40px 0 40px 22px; position: relative; }
.gallery #content h1 { text-align: left; padding-left: 175px; }
.gallery .primary-content { float: none; width: auto; background: none; padding-bottom: 50px; margin-bottom: 30px; }
.gallery .secondary-content { width: auto; float: none; background: none; padding-left: 0; overflow: hidden; }
.gallery .pictures li { float: left; margin: 0 3px 6px; width: 128px; height: 98px; }
.gallery .pictures li img { padding: 3px; background: #fff; }
.gallery .pictures li a img { border: 1px solid #000; }
.gallery .pictures li a:hover img { border-color: #006699; }
.gallery .movie-wrap { width: 360px; float: left; }
.gallery .movie-wrap h2 { text-align: center; }
.gallery .right { float: right; }
.gallery .caption { border: 1px solid #ccc; padding: 7px 5px 6px; background: #fff; width: 348px; margin: 10px 0 0; }
.gallery .youtube a { background: url(../images/ico-youtube.png) no-repeat center left; display: block; font-weight: bold; font-size: 1.5em; padding-left: 100px; height: 71px; width: 150px; text-decoration: none; padding-top: 10px; }
.gallery .youtube { position: absolute; top: 43px; right: 127px; }

/* gallery carousel */
.jcarousel-container { width: 660px; padding: 0 50px; }
.jcarousel-clip { width: 670px; height: 98px; }
.jcarousel-list { width: 670px; height: 98px; }
.jcarousel-list li { width: 128px; height: 98px; margin-right: 5px; }
.jcarousel-item-placeholder { background: #fff url(../images/jcarousel_loading.gif) 50% 50% no-repeat; }
.jcarousel-next-horizontal { position: absolute; top: 38px; right: 5px; width: 32px; height: 32px; cursor: pointer; background: transparent url(../images/jcarousel_next.png) no-repeat 0 0; }
.jcarousel-next-horizontal:hover { background-position: -32px 0; }
.jcarousel-next-horizontal:active { background-position: -64px 0; }
.jcarousel-next-disabled-horizontal,
.jcarousel-next-disabled-horizontal:hover,
.jcarousel-next-disabled-horizontal:active { cursor: default; background-position: -96px 0; }
.jcarousel-prev-horizontal { position: absolute; top: 38px; left: 5px; width: 32px; height: 32px;     cursor: pointer; background: transparent url(../images/jcarousel_prev.png) no-repeat 0 0; }
.jcarousel-prev-horizontal:hover { background-position: -32px 0; }
.jcarousel-prev-horizontal:active { background-position: -64px 0; }
.jcarousel-prev-disabled-horizontal,
.jcarousel-prev-disabled-horizontal:hover,
.jcarousel-prev-disabled-horizontal:active { cursor: default; background-position: -96px 0; }

/* about */
.about .secondary-content .list li,
.rates .secondary-content .list li { background: url(../images/ico-check.png) no-repeat 0 7px; padding: 5px 0 5px 20px; width: 470px; float: left; }
.about .secondary-content .list li.even,
.rates .secondary-content .list li.even { width: 250px; }
#content .first-text { font-size: 1.4em; font-style: italic; color: #066a38; padding-top: 10px; }
/*
.about .primary-content { width: 365px; padding-right: 15px; } 
*/
.about .primary-content, 
.about .secondary-content,
.rates .primary-content,
.rates .secondary-content { width: auto; padding: 0; margin: 0; float: none; background: none; }
.about .secondary-content,
.rates .secondary-content { padding: 30px 0 0; background: url(../images/bg-divider-horz.jpg) repeat-x top left; }
.fright { float: right; margin-left: 15px; padding: 3px; background: #fff; border: 1px solid #ccc; }

/* rates */
.rates .rate { float: left; background: url(../images/bg-rates.png) no-repeat; width: 360px; height: 74px; }
.rates #content .rate p { font-weight: bold; color: #066a38; font-size: 2.5em; text-align: center; padding: 14px 0 0; }
.rates .right { float: right; }
.rates #content .note { clear: both; padding-top: 20px; }

.rates-table { width: 100%; }
.rates-table th { font-weight: bold; font-size: 1.5em; color: #fff; text-align: center; }
.rates-table td { font-size: 1.2em; text-align: center; border: 1px solid #c0b3a2; }
.rates-table td,
.rates-table th { padding: 15px; }
.rates-table .price { font-weight: bold; }
.rates-table .duration { background: #cdc4b7; border: 0; border-bottom: 1px solid #c0b3a2; font-size: 1.5em; }
.rates-table .none { background-color: transparent; border: 0; }

.rates-table td {
	background: #f1f0eb url(../images/bg-td.png) repeat-x top left;
}

.rates-table th.first { 
	background: #15527f url(../images/bg-season.png) no-repeat top left;
	border-right: 1px solid #185d86;
}

.rates-table th.second { 
	background: #15527f url(../images/bg-season.png) no-repeat top right;
}

.rates-table td.duration {
	background: #15527f url(../images/bg-duration.png) repeat-x top left;
	border-color: #185d86;
	color: #fff;
	width: 150px;
}

.rates-table td.first { 
	background: #15527f url(../images/bg-duration-first.png) no-repeat top left;
}

.rates-table td.last { 
	background: #15527f url(../images/bg-duration-last.png) no-repeat bottom left;
	border-bottom: 0;
}

/*-------------------------------------------------------------------------------
  F O O T E R
-------------------------------------------------------------------------------*/ 
#footer { clear: both; background: url(../images/bg-footer.png) no-repeat; padding-bottom: 60px; padding-top: 60px;  }
#footer p { color: #dbb17c; float: left; line-height: 35px; padding-left: 20px; }
#footer p a, #footer p a:link, #footer p a:visited, #footer p a:active { color: #dbb17c; text-decoration: none; }
#footer p a:hover { text-decoration: underline; }
#footer ul { float: right; }
#footer li a, #footer li a:link, #footer li a:visited, #footer li a:active { color: #a8be60; display: block; padding: 0 15px 0 11px; line-height: 35px; text-decoration: none; }
#footer li a:hover { text-decoration: underline; }
#footer li { background: url(../images/bg-footer-li.png) no-repeat center right; float: left; }
#footer li.last { background: none; }