/* reset */
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,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0;font-size:100%;font:inherit;vertical-align:baseline;margin:0;padding:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}


body { background-color: #fff; background: url('../images/bg-tile.gif') repeat-x 0 0, url('../images/bg-tile2.gif') repeat 0 0; color:#645138; font:normal 16px/140%  Tahoma, Helvetica, Geneva, sans-serif; }
h1, h2, h3, h4, h5, h6 { font-weight:bold; line-height:140%; }
h1, h2, h3 { font-size:24px; margin-bottom:15px; }
a { color:#dd720d; }
p { margin:0 0 15px; }
ul, ol { margin:0 0 15px 0; padding:0 0 0 20px; }
ul { list-style-type:disc; }
ol { list-style-type:decimal; }
em { font-style:italic; }
strong { font-weight: bold; }
blockquote { border-left:3px solid #bbb; padding:5px 5px 5px 30px; margin-bottom: 15px;  }

form { padding:30px; font-size:14px; }
form .field { margin:0 0 10px; position:relative; }
form label { float:left; margin-right:10px; min-width:80px; }
form input[type=text] { background:#fff; border:1px solid #999; padding:2px; }
form .errorlist { margin:0; padding:0; font-size:11px; line-height:100%; position:absolute; left:130px; top:-10px; }
form .errorlist li { background:#f00; color:#fff; list-style-type:none; padding:3px 6px; border-radius:5px; display:table; margin:0 0 3px; box-shadow:0 0 3px #000; white-space:nowrap; }
form .first_name input,
form .last_name input { width: 120px; }
form .phone input { width: 140px; }
form .state input { width: 130px; }
form .zip input { width: 80px; }
form .submit { margin-left:90px; }
form p.help_text { font-size:12px; margin:-4px 0 0 90px; color:#bbb; }
form .required label:before { content:"*"; }

/* ---- layout ---- */

#top-bar { height:30px; color:#fff; position: relative; }
#top-bar .contact { text-align: right; position: absolute; right:10px; bottom:10px; }
#top-bar .phone { font-size:20px;  }
#top-bar .address { font-size:14px; line-height: 110%;  }

#wrap { background:#fff; box-shadow: 0 0 3px #000; }

#header { text-align: center; padding:15px 0; position: relative; }
#header .contact { text-align: right; position: absolute; right:15px; top:10px; }
#header .phone { font-size:18px; line-height: 105%; }
#header .phone.local { margin-bottom:3px; }
#header .address { font-size:13px; line-height: 100%;  }

#nav .rootmenu { margin:0 auto; display: table; list-style-type: none; padding: 0; }
#nav .rootmenu > li { display: table-cell; padding:0 10px; font-size: 14px; position: relative; }
#nav a { color:#957b58; text-decoration: none; padding-bottom:5px; display: block; border-bottom:2px solid #fff; }
#nav li:hover > a, #nav .active > a { color:#dd720d; border-bottom:2px solid #dd720d; }

#nav li:hover .submenu { display: block; }
#nav .submenu { display: none; position: absolute; z-index:10; list-style-type: none; padding:0; box-shadow: 0 0 3px #444; padding-top:5px; }
#nav .submenu li a { background:#fff; padding:5px 15px; display: block; border-bottom:2px solid #ccc; }

#sidebar { width: 200px; line-height:120%; float:right; padding:0 0 15px 20px; background: #fff; }
#sidebar .item { margin: 0 0 15px; }
#sidebar p { margin:0;}
#sidebar .more-link { margin: 0 0 15px; }
#sidebar .book-now { margin: 15px 0 0; } 
#sidebar .heading { background:#a1977f; color: #fff; background-repeat: no-repeat; padding:5px 3px 5px 37px; background-position: 3px 50%; margin:0 0 10px; }
#sidebar .calendar .heading { background-image:url('../images/icons/calendar.png'); }
#sidebar .pet-friendly .heading { background-image:url('../images/icons/pet.png'); }

#maincontent { position: relative; display:table; width: 100%; padding: 15px 0; }
#maincontent .liner { padding:0 15px; }
#decorbar { border-top:29px solid #a1977f; margin:0 0 15px; }
#subcontent { padding:15px; clear: both; }
#subcontent h1 { color: #a9621e; border-bottom: 2px solid #a1977f; padding-bottom: 10px; }
#maincontent h1 { color: #a9621e; }

#footer { background: #a1977f; overflow: hidden; font-size: 12px; padding: 10px 0; }
#footer nav ul { display: block; list-style-type: none; padding: 0; margin: 0; }
#footer nav li { float:left; padding-right:10px;  }
#footer .submenu { display:none; }
#footer a { color:#fff; text-decoration: none; }
#footer .active a, #footer a:hover { text-decoration: underline; }
#footer .legal { text-align: right; }

/* ---- modules ---- */

#slider { display: table; }
#slider { width: 600px; position: relative; }
#slider p { background: rgba(169,98,30,0.7); width:598px; position: absolute; left:0; bottom:50px; color:#fff; text-indent: 15px; text-transform: uppercase; font-size: 20px; line-height:26px; }

#fourgrid { clear:left; line-height: 120%; border-top:20px solid #a1977f; padding-top:15px; }
#fourgrid .col { float:left; width:25%; }
#fourgrid .liner { padding:0 16px; border-left:1px solid #bbb; }
#fourgrid .col:first-child .liner { border:0;}
#fourgrid .heading { color: #a9621e; font-weight: bold; margin: 0 0 10px; }
#fourgrid .social .heading { background:#a1977f; color: #fff; background-repeat: no-repeat; padding:5px 3px 5px 37px; background-position: 3px 50%; margin:0 0 10px; background-image:url('../images/icons/social.png'); font-weight: normal; }
#fourgrid .social a { background:url('../images/icons/facebook.png') no-repeat 0 50%; display: block; padding-left:30px; height:24px; margin-bottom:10px; }
#fourgrid .social .trip-advisor { background-image:url('../images/icons/trip-advisor.png'); }
#fourgrid .contact span { display: block; }

#gallery { list-style-type: none; padding: 0; }
#gallery li { float:left; margin:0 5px 5px 0; }
#gallery li img { display: block; }

#blog { color:#777; }
#blog > .liner { width:960px; margin:0 auto; }
#blog .posts, #blog .blog-post { list-style-type: none; margin:0; padding:15px 0; width:600px; }
#blog .posts > li { margin: 0 0 15px; padding:0 0 25px; position: relative; border-bottom:1px solid #777; }
#blog .posts > li .title { font-weight: 300; margin:25px 0 15px; }
#blog .posts > li .date { position:absolute; left:0; top:-15px; font-size: 14px; }

#blog-posts .item { 
    padding:15px; border-radius:10px; margin-bottom:15px; 
background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.1) 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0)), color-stop(100%,rgba(0,0,0,0.1)));
background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.1) 100%);
background: -o-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.1) 100%);
background: -ms-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.1) 100%);
background: linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#33000000',GradientType=0 );
}
#blog-post .post-info,
#blog-posts .post-info { background:rgba(255,255,255,0.1); padding:5px; border-radius:5px; font-size:80%; line-height: 120%; }

#comments { border-top:1px dashed rgba(0,0,0,0.3); padding-top:5px; }
#comments .item { background:rgba(0,0,0,0.1); color:rgba(0,0,0,0.7); border-radius:5px; margin-bottom:15px; clear:left; overflow:hidden;  }
#comments .comment-info { padding:5px; width:100px; float:left; }
#comments .comment-info .date { font-size:11px; }
#comments .comment-info .author span { font-weight:bold; }
#comments .item .comment { background:rgba(255,255,255,0.2); margin-left:110px; border-bottom-left-radius:5px; padding:5px; }

#comment-form label { display:block; }
#comment-form p { margin:0; }

/* ---- theme classes ---- */

.button {
    padding:3px 5px; border-radius: 5px; text-align: center; box-shadow: 0 0 1px #444; 
background: rgb(221,114,13);
background: -moz-linear-gradient(top, rgba(221,114,13,1) 0%, rgba(145,60,3,1) 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(221,114,13,1)), color-stop(100%,rgba(145,60,3,1)));
background: -webkit-linear-gradient(top, rgba(221,114,13,1) 0%,rgba(145,60,3,1) 100%);
background: -o-linear-gradient(top, rgba(221,114,13,1) 0%,rgba(145,60,3,1) 100%);
background: -ms-linear-gradient(top, rgba(221,114,13,1) 0%,rgba(145,60,3,1) 100%);
background: linear-gradient(to bottom, rgba(221,114,13,1) 0%,rgba(145,60,3,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dd720d', endColorstr='#913c03',GradientType=0 );
}
.button a { color:#fff; text-decoration: none; display: block;}
.button:hover { box-shadow: 0 0 5px #444; }

.additional-link a { color: #913c03; }

/* ---- system classes ---- */

.container { width:850px; margin: 0 auto; position: relative; }

.img_right { float:right; margin:0 0 15px 15px; }
.img_left { float:left; margin:0 15px 15px 0; }
.clear { clear:both; }
.sent { background:#0a0; border-radius:5px; padding:7px 10px; line-height:100%; font-size:16px; }

.messages { margin:5px 0 15px; list-style-type:none; padding:0; position:absolute; left:50%; top:5px; z-index:10;}
.messages li { padding:2px 10px; color:#fff; margin-bottom:2px; border-radius:5px; position: relative; left:-50%; }
.messages .error { background:#c00; }
.messages .debug { background:#444; }
.messages .info { background:#244f70; }
.messages .success { background:#2e8915;  }
.messages .warning { background:#b58323; }