/* ==========================================================================
   External Fonts
   ========================================================================== */
@import url(http://fonts.googleapis.com/css?family=Lato:400,700);

/* ==========================================================================
   HTML5 Boilerplate CSS: h5bp.com/css
   ========================================================================== */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
html, button, input, select, textarea { font-family: sans-serif; color: #222; }
body { margin: 0; font-size: 1em; line-height: 1.4em; }

::-moz-selection { background:#b3bd34; color:#fff; }
::selection { background:#b3bd34; color:#fff; }

h1, h2, h3, h4, h5 { padding:0; margin:0; }

a { color:#b3bd34; text-decoration:none; }
a:visited { color:#b3bd34; }
a:hover { color:#597032; }
a:focus { outline: 0; }
a:hover, a:active { outline: 0; }

abbr[title] { border-bottom: 1px dotted; }
p { padding:0; margin:0 0 15px 0; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }

sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }

img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
img.full { width:100%; }

svg:not(:root) { overflow: hidden; }

figure { margin: 0; }

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }
button[disabled], input[disabled] { cursor: default; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }

.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }

/* ==========================================================================
   Primary Structure
   ========================================================================== */
html { width:100%; min-height:100%; font-size:62.5%; font-family:'Lato', Helvetica, sans-serif; font-weight:400; color:#094120; background-color:#fff; background-attachment:fixed; }
body { width:100%; min-height:100%; font-size:16px; font-size:1.6rem; line-height:22px; line-height:2.2rem; letter-spacing:0.05em; margin:0; padding:0; }

.page { width:990px; margin:0 auto; }

.page .col { float:left; }
.page .col.sidebar { width:220px; }
.page .col.body { float:right; width:760px; min-height:250px; }
.page .col.body.general { float:right; width:750px; }

/* ==========================================================================
   Modular Elements
   ========================================================================== */
.page .content { color:#094120; padding:45px; }
.page .content.toprule { border-top:1px dashed #bdb78e;}
.page .content.bottomrule { border-bottom:1px dashed #bdb78e;}
.page .content h1 { font-size:44px; line-height:50px; line-height:5.0rem; letter-spacing:0.025em; font-family:'Lato', Helvetica, sans-serif; margin-bottom:45px; }
.page .content h2 { font-size:26px; font-family:'Lato', Helvetica, sans-serif; font-weight:700; letter-spacing:0.075em; line-height:1.25em; margin-bottom:10px; -ms-filter:none; filter:none; }
.page .content h3 { font-size:20px; font-family:'Lato', Helvetica, sans-serif; font-weight:700; letter-spacing:0.075em; line-height:1em; margin-bottom:10px; -ms-filter:none; filter:none; }
.page .content h3.pretitle { margin-bottom:5px; text-transform:uppercase; }
.page .content h3 a { color:#094120; text-decoration:none; }
.page .content h3 a:hover { color:#bdb78e;}
.page .content p { font-size:16px; line-height:24px; margin-bottom:24px; }
.page .content a { text-decoration:underline; }
.page .content ul li { font-size:16px; color:#094120; line-height:18px; margin-bottom:20px; }
.page .content .toggle { margin-bottom:1px; }
.page .content .toggle a { display:block; float:left; width:auto; color:#094120; font-size:14px; font-size:1.4rem; text-transform:uppercase; text-align:center; text-decoration:none; line-height:30px; line-height:3.0rem; background-color:#fff; padding:0 10px; border:1px solid transparent; border-bottom:1px solid #ccc; margin-right:1px; }
.page .content .toggle a:hover { color:#b3bd34; }
.page .content .toggle a.here,
.page .content .toggle a:hover.here { color:#094120; font-weight:400; background-color:#eee; border:1px solid #ccc; border-bottom:1px solid transparent; }
.page .content .togglebox { background-color:#eee; font-size:14px; font-size:1.4rem; letter-spacing:0; padding:10px; margin-bottom:30px; border:1px solid #ccc; margin-top:-2px; }
.page .content .togglebox .switch { display:none; }
.page .content .togglebox .switch.here { display:block; }

.page .content a.cta,
a.cta { display:block; color:#fff; font-size:14px; font-size:1.4rem; letter-spacing:0.1em; text-transform:uppercase; text-decoration:none; text-align:center; line-height:26px; line-height:2.6rem; background-color:#597032; }
.page .content a:hover.cta,
a:hover.cta { background-color:#b3bd34; }

.rule { border-bottom:1px solid #fff; padding-top:15px; margin-bottom:15px; } 
hr { margin:15px 0; }

header { position:relative; }
#top-logo { position:absolute; width:220px; height:220px; margin:10px 0 0 0; z-index:100; }
#top-logo img { width:100%; height:auto; }
#top-banner { width:990px; height:100px; margin:0 auto; }
#top-banner #social-bar { float:right; font-size:2em; padding-top:15px; }
#top-banner #social-bar a i { cursor:pointer; }
#top-banner #social-bar a i.icon-twitter-sign { color:#00aced; }
#top-banner #social-bar a:hover i.icon-twitter-sign { color:#094120; cursor:pointer; }
#top-banner #social-bar a i.icon-facebook-sign { color:#3b5998; }
#top-banner #social-bar a:hover i.icon-facebook-sign { color:#094120; cursor:pointer; }
#top-banner #social-bar a i.icon-instagram { color:#9b6a54; }
#top-banner #social-bar a:hover i.icon-instagram { color:#094120; cursor:pointer; }
#top-banner #social-bar a i.icon-pinterest-sign { color:#cb2027; }
#top-banner #social-bar a:hover i.icon-pinterest-sign { color:#094120; cursor:pointer; }
#top-banner #social-bar a i.icon-youtube-sign { color:#e52d27; }
#top-banner #social-bar a:hover i.icon-youtube-sign { color:#094120; cursor:pointer; }
#top-bar { width:100%; background-color:#597032; top:0; z-index:90; }
#top-bar nav { width:990px; margin:0 auto; }
#top-bar nav .tinynav { display:none; font-size:12px; }
#top-bar nav .wrap { margin-left:210px; }
#top-bar nav ul.sections { display:table; width:100%; list-style:none; padding:0; }
#top-bar nav ul.sections li { display:table-cell; width:auto; }
#top-bar nav ul.sections > li.first a { padding-left:30px; }
#top-bar nav ul.sections li a { display:block; text-align:left; color:#fff; font-family:'Lato', Helvetica, sans-serif; font-weight:400; font-size:18px; font-size:1.8rem; white-space:nowrap; text-transform:uppercase; background-color:#597032; border-right:1px solid #fff; padding:10px; }
#top-bar nav ul.sections li.here > a,
#top-bar nav ul.sections li.parent-here > a { background-color:#094120; }
#top-bar nav ul.sections li ul { position:absolute; z-index:50; display:none; overflow:hidden; list-style:none; margin:0; padding:0; border-top:1px solid #fff; }
#top-bar nav ul.sections li:hover ul { display:block; }
#top-bar nav ul.sections li:hover a { background:#b3bd34; color:#094120; }
#top-bar nav ul.sections li:hover > a { color:#fff; }
#top-bar nav ul.sections li ul li { float:none; display:block; }
#top-bar nav ul.sections li ul li a { float:none; display:block; text-align:left; font-size:14px; height:auto; font-family:'Lato', Helvetica, sans-serif; padding:5px 10px; border:none; }
#top-bar nav ul.sections li a:hover { background:#b3bd34; color:#fff; }
#top-bar nav ul.sections li.parent-here > ul li.here a,
#top-bar nav ul.sections li.parent-here > ul li.parent-here a { color:#fff; }
header.stuck { position:fixed; width:100%; top:-100px; z-index:90; }
header.stuck #top-logo { top:-20px; }

.sidebar h3 { text-transform:uppercase; font-size:16px; font-size:1.6rem; letter-spacing:0.1em; font-weight:700; margin-bottom:0px; }
.sidebar .toggle { display:table; width:100%; }
.sidebar .toggle a { display:table-cell; width:auto; color:#094120; font-size:14px; font-size:1.4rem; text-transform:uppercase; text-align:center; text-decoration:none; line-height:30px; line-height:3.0rem; background-color:#fff; border:1px solid transparent; border-bottom:1px solid #ccc; }
.sidebar .toggle a:hover { color:#b3bd34; }
.sidebar .toggle a.here,
.sidebar .toggle a:hover.here { color:#094120; font-weight:400; background-color:#eee; border:1px solid #ccc; border-bottom:1px solid transparent; }
.sidebar section { background-color:#eee; font-size:14px; font-size:1.4rem; letter-spacing:0; padding:10px; margin-bottom:30px; border:1px solid #ccc; }
.sidebar section h3 { text-transform:uppercase; font-size:16px; font-size:1.6rem; letter-spacing:0.1em; font-weight:700; margin-bottom:15px; }
.sidebar section h3 i { color:#597032; }
.sidebar section h4 { margin-bottom:10px; }
.sidebar section p { margin-bottom:15px; }
.sidebar section img { width:100%; margin-bottom:10px; }

.sidebar.nonav { padding-top:100px; }
.sidebar nav { padding-top:100px; padding-bottom:30px; background-color:#597032; margin-bottom:30px; }
.sidebar nav ul { list-style:none; margin:0; padding:0; }
.sidebar nav ul li { display:none; list-style:none; margin:0; padding:0; }
.sidebar nav ul li.here,
.sidebar nav ul li.parent-here { display:block; }
.sidebar nav ul li.here ul li,
.sidebar nav ul li.parent-here ul li { display:block; }
.sidebar nav ul li a { display:block; color:#fff; font-size:18px; text-transform:uppercase; padding:5px 10px; border-bottom:1px solid #597032;}
.sidebar nav ul li ul li a { color:#fff; font-size:14px; padding:5px 10px 5px 20px; }
.sidebar nav ul li ul li ul li a { font-size:12px; background-color:#2c5727; padding:5px 10px 5px 30px;}
.sidebar nav ul li.parent-here > a,
.sidebar nav ul li.here > a { background-color:#094120; }
.sidebar nav ul li a:hover,
.sidebar nav ul li.parent-here > a:hover,
.sidebar nav ul li.here > a:hover { background-color:#b3bd34; }

.sidebar section.local { font-size:14px; letter-spacing:0; border-top:none; }
.sidebar section.local .hours { font-weight:700; padding:15px 0; }
.sidebar section.local .phone { margin-bottom:20px; }
.sidebar section.local .address a,
.sidebar section.local .phone a { color:#094120; }
.sidebar section.local h3 { margin-bottom:5px; }
.sidebar section.local a.event { display:block; color:#094120; padding:10px; }
.sidebar section.local a:hover.event { background-color:#fff; }
.sidebar section.local a.event .type { font-weight:400; letter-spacing:0; }
.sidebar section.local a.event .title { color:#597032; font-weight:700; letter-spacing:0; }
.sidebar section.local a:hover.event .title { color:#b3bd34; }
.sidebar section.local a.event .date { letter-spacing:0; }
.sidebar section.local a.cta { margin-top:10px; }

.sidebar section.twitter .tweets { margin-bottom:10px; }
.sidebar section.twitter .tweets ul.tweet_list { list-style:none; margin:0; padding:0; }
.sidebar section.twitter .tweets ul.tweet_list li { list-style:none; margin:0; padding:0; }
.sidebar section.twitter .tweets ul.tweet_list li .tweet_text { display:block; margin-bottom:10px; }
.sidebar section.twitter .tweets ul.tweet_list li .tweet_time { display:block; font-size:12px; font-size:1.2rem; letter-spacing:0; margin-bottom:15px; }

.sidebar section.staffpicks .pick .pretitle { font-size:12px; font-size:1.2rem; line-height:12px; line-height:1.2rem; letter-spacing:0; }
.sidebar section.staffpicks .pick .item { color:#597032; font-weight:700; letter-spacing:0; margin-bottom:5px; }
.sidebar section.staffpicks .pick .quote { line-height:1.35em; margin-bottom:5px; }
.sidebar section.staffpicks .pick .byline { font-style:italic; color:#597032; font-size:12px; font-size:1.2rem; letter-spacing:0; }

.body h3 { text-transform:uppercase; font-size:16px; font-size:1.6rem; letter-spacing:0.1em; font-weight:700; margin-bottom:0px; }

section.specials { display:table; width:100%; padding:0; margin:0px; border:0; }
.page .content section.specials a,
section.specials a { display:table-cell; width:33.3%; border-right:1px solid #fff; position:relative; padding:0; margin:0; background-color:#eee; text-decoration:none; }
section.specials a.last { width:33.4%;border-right:none; }
section.specials a img { width:100%; }
section.specials a .title { display:block; color:#fff; font-size:14px; font-size:1.4rem; letter-spacing:0.1em; text-transform:uppercase; text-decoration:none; text-align:center; background-color:#597032; margin:0; border:none; }
section.specials a .title .cell { border:1px solid transparent; }
section.specials a.here { background-color:#eee; }
section.specials a.here .title { background-color:#eee; color:#597032; }
section.specials a.here .title .cell { border:1px solid #ccc; border-bottom:1px solid #eee; }
section.specials a.off { background-color:#eee; }
section.specials a.off img { opacity:.5; }
section.specials a.off .title { border-bottom:1px solid #ccc; }
section.specials a:hover.off img { opacity:1; }
section.specials a:hover .title { color:#fff; background-color:#b3bd34; }
section.specials a:hover.here { background-color:#eee; }
section.specials a:hover.here .title { color:#094120; background-color:#eee; }
section.speciallist { display:none; font-size:14px; font-size:1.4rem; letter-spacing:0; background-color:#eee; border-right:1px solid #fff; }
section.speciallist .cell { padding:30px; border:1px solid #ccc; border-top:none; }
section.speciallist h3 { margin-bottom:15px; }
section.speciallist h4 { font-size:12px; font-size:1.2rem; color:#597032; margin-bottom:10px; }
section.speciallist table { width:100%; }
section.speciallist table td { padding:0 30px 10px 0;}
section.speciallist table td:first-child { white-space:nowrap; }
section.speciallist table td:first-child:before { content:"\f005 "; font-family:'FontAwesome'; }
section.speciallist table td:last-child { text-align:right; white-space:nowrap; padding-right:0; }
section.speciallist table td.type { text-transform:uppercase; white-space:nowrap; }
section.speciallist table td.type i { color:#597032; }
section.speciallist table td.description { color:#597032; }
section.speciallist table td.price { text-align:right; white-space:nowrap; padding-right:0; }
section.speciallist .cta { margin-top:30px; }

section.deals { display:table; width:100%; border-top:1px solid #fff; }
section.deals a { display:table-cell; width:33.33333%; color:#fff; font-size:14px; font-size:1.4rem; letter-spacing:0.1em; text-transform:uppercase; text-align:center; line-height:26px; line-height:2.6rem; background-color:#597032; border-right:1px solid #fff; }
section.deals a.last { border-right:none; }
section.deals a:hover { background-color:#b3bd34; }

section.dealblock { border-top:1px solid #fff; border-bottom:1px solid #fff; }
section.dealblock .cell { display:block; float:left; width:50%; }
section.dealblock .cell a { display:block; background-color:#eee; text-align:center; text-decoration:none; padding:30px 0; border:1px solid #ccc; margin-right:1px;}
section.dealblock .cell a .title { font-size:14px; font-size:1.4rem;  text-align:center; color:#597032; text-transform:uppercase; font-weight:400; text-decoration:none; }

section.buttonblock { border-top:1px solid #fff; border-bottom:1px solid #fff; }
section.buttonblock .cell { display:block; float:left; width:25%; }
section.buttonblock .cell a { display:block; margin-right:1px;}
section.buttonblock .cell a img { width:100%; height:auto; }

.newslist p a { text-decoration:underline; }
.newslist article { clear:both; margin-bottom:30px; border-bottom:1px solid #ccc;}
.newslist article .image { float:left; width:25%; margin-bottom:30px; }
.newslist article .image img { width:100%;}
.newslist article .copy { float:right; width:72%; }
.newslist article .copy h2 { margin-bottom:5px; }
.newslist article .copy h3 { font-size:14px; font-size:1.4rem; font-style:italic; font-weight:normal; margin-bottom:10px; }
.newslist article .copy a,
.newslist article .copy a h2,
.newslist article .copy a h3 { text-decoration:none; }

form.doublewide .errors { color:#fff; background-color:#b43b25; padding:10px; margin-bottom:10px; }
form.doublewide .errors ul li { color:#fff; font-size:14px; font-size:1.4rem; }
form.doublewide .cell { float:left; width:48%; padding-right:2%; margin-bottom:10px; }
form.doublewide .cell input[type=text],
form.doublewide .cell select,
form.doublewide .cell textarea { clear:both; width:90%; padding:5px; }
form.doublewide .button input[type=submit] { clear:both; display:block; font-family:'Lato', Helvetica, sans-serif; color:#fff; font-size:14px; font-size:1.4rem; letter-spacing:0.1em; text-transform:uppercase; text-decoration:none; text-align:center; line-height:26px; line-height:2.6rem; padding:0 30px; background-color:#597032; border:none; }

#bottom-bar { width:100%; background-color:#597032; }
#bottom-bar footer { padding:10px 0; }
#bottom-bar footer .logo { float:left; width:100px; height:100px; }
#bottom-bar footer .content { float:left; color:#fff; font-size:14px; font-size:1.4rem; padding:5px 0 5px 10px; }
#bottom-bar footer .content a { color:#fff; text-decoration:none; }
#bottom-bar footer .content .title { font-weight:700; }
#bottom-bar footer .content .hours { font-weight:700; }
#bottom-bar footer .content .copyright { color:#b3bd34; font-size:12px; font-size:1.2rem; }

/* ==========================================================================
   Layout Specific
   ========================================================================== */  
#home .body .marquee { height:400px; background-color:#000; margin-bottom:30px; }
#home .body .marquee .slide { display:block; position:relative; }
#home .body .marquee .slide.video-popup .play { display:block; position:absolute; top:50%; left:50%; z-index:40; margin:-52px 0 0 -50px; }
#home .body .marquee .royalSlider { position:relative; width:100%; height:400px; }
#home .body .marquee .royalSlider .rsGCaption { position:absolute; bottom:0; left:0; width:100%; padding:0; z-index:50; }
#home .body .marquee .royalSlider .rsGCaption .caption { display:block; background:transparent url('/images/layout/background-fff-a90.png'); text-align:center; color:#094120; padding:0 30px; border:none; border-top:none; }
#home .body .marquee .royalSlider .rsGCaption .caption:hover { color:#597032; }
#home .body .marquee .royalSlider .rsGCaption .caption h2 { padding-top:5px; padding-bottom:10px; line-height:1.25em; }
#home .body .marquee .royalSlider .rsGCaption .caption p { font-weight:400; padding-bottom:5px; margin-bottom:0; }
#home .body { padding-top:10px; }

#entry-newsfeed .content h3 { text-transform:uppercase; margin-bottom:45px; }
#entry-newsfeed .content h1 { margin-bottom:5px; }
#entry-newsfeed .content h2 { font-style:italic; font-weight:normal; text-transform:uppercase; margin-bottom:10px; }

#calendar_month .filter { margin-bottom:5px; }
#calendar_month .filter .titlecell { width:99.999%; }
#calendar_month .filter .titlecell .title { display:block; font-size:12px; font-size:1.2rem; color:#094120; text-transform:uppercase; text-decoration:none; background-color:#eee; padding:2px 10px; border-bottom:1px solid #fff; }
#calendar_month .filter .cell { float:left; width:33.333%; }
#calendar_month .filter .cell a { display:block; font-size:12px; font-size:1.2rem; color:#fff; text-transform:uppercase; text-decoration:none; background-color:#597032; padding:5px 10px; border-left:1px solid #fff; border-bottom:1px solid #fff; }
#calendar_month .filter .cell a .on { display:inline; }
#calendar_month .filter .cell a .off { display:none; }
#calendar_month .filter .cell.inactive a { background-color:#eee; color:#999; }
#calendar_month .filter .cell.inactive a .on { display:none; }
#calendar_month .filter .cell.inactive a .off { display:inline; }
#calendar_month .filter .cell a:hover,
#calendar_month .filter .cell a.on { background-color:#b3bd34; }
#calendar_month .filter .cell a.rochester { background-color:#e28b25; }
#calendar_month .filter .cell.inactive a.rochester { background-color:#eee; color:#999; }
#calendar_month .filter .cell a:hover.rochester,
#calendar_month .filter .cell a.rochester.on,
#calendar_month .filter .cell.inactive a:hover.rochester { background-color:#ffc541; }
#calendar_month .filter .cell a.la-crosse { background-color:#b43b25; }
#calendar_month .filter .cell.inactive a.la-crosse { background-color:#eee; color:#999; }
#calendar_month .filter .cell a:hover.la-crosse,
#calendar_month .filter .cell a.la-crosse.on,
#calendar_month .filter .cell.inactive a:hover.la-crosse { background-color:#d64c27; }
#calendar_month .filter .cell a.hackberrys { background-color:#007794; }
#calendar_month .filter .cell.inactive a.hackberrys { background-color:#eee; color:#999; }
#calendar_month .filter .cell a:hover.hackberrys,
#calendar_month .filter .cell a.hackberrys.on,
#calendar_month .filter .cell.inactive a:hover.hackberrys { background-color:#499dba; }

#calendar_month .filter.categories { margin-bottom:30px; }

#calendar_month .calendar .calendar_outer { width:100%; border-spacing:0; border-collapse:collapse; padding:0; margin:0 0 30px 0; }
#calendar_month .calendar .calendar_outer th { border-spacing:0; border-collapse:collapse; white-space:nowrap; padding:0; margin:0; }
#calendar_month .calendar .calendar_outer .month_year a { display:block; font-size:14px; font-size:1.4rem; color:#fff; text-transform:uppercase; text-decoration:none; background-color:#597032; padding:5px 10px;}
#calendar_month .calendar .calendar_outer .month_year a:hover { background-color:#b3bd34; }
#calendar_month .calendar .calendar_outer .month_year .left { width:25%; text-align:left; }
#calendar_month .calendar .calendar_outer .month_year .right { width:25%; text-align:right; }
#calendar_month .calendar .calendar_outer .month_year .center { width:50%; }
#calendar_month .calendar .calendar_outer .month_year .center .current_month { display:block; text-align:center; font-size:14px; font-size:1.4rem; color:#fff; text-transform:uppercase; text-decoration:none; background-color:#094120; padding:5px 10px; border-left:1px solid #fff; border-right:1px solid #fff; }
#calendar_month .calendar .calendar_outer .calendar_inner { width:100%; border-spacing:0; border-collapse:collapse; padding:0; margin:0; }
#calendar_month .calendar .calendar_outer .calendar_inner thead { background-color:#eee; border-left:1px solid #ccc; border-right:1px solid #ccc; }
#calendar_month .calendar .calendar_outer .calendar_inner th { width:14.285%; border-spacing:0; border-collapse:collapse; font-size:12px; font-size:1.2rem; text-transform:uppercase; font-weight:normal; padding:10px 0; margin:0; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell { font-size:12px;  font-size:1.2rem; height:50px; text-decoration:none; background-color:#eee; border:1px solid #ccc; padding:0; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .num { padding:5px; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .num.inactive { color:#999; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell a { color:#597032; text-decoration:none; line-height:1.25em; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a { display:block; padding:5px; color:#fff; background-color:#597032; border-bottom:1px solid #eee;}
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a:hover,
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a.on { background-color:#b3bd34; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a .time { color:#ddd; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a:hover .time,
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a.on .time { color:#fff; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a.rochester { background-color:#e28b25; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a:hover.rochester,
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a.rochester.on { background-color:#ffc541; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a.la-crosse { background-color:#b43b25; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a:hover.la-crosse,
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a.la-crosse.on { background-color:#d64c27; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a.hackberrys { background-color:#007794; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a:hover.hackberrys,
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a.hackberrys.on { background-color:#499dba; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a.rochester.la-crosse,
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a.rochester.hackberrys,
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a.la-crosse.hackberrys,
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a.rochester.la-crosse.hackberrys { background-color:#597032; }
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a:hover.hackberrys,
#calendar_month .calendar .calendar_outer .calendar_inner .day_cell .event a.hackberrys.on { background-color:#b3bd34; }


#contact .location { border-bottom:1px solid #ccc; margin-bottom:30px; }
#contact .location .info { float:left; width:310px; margin-bottom:30px; }
#contact .location .info h2 { font-size:1.25em; text-transform:uppercase; margin-bottom:30px; }
#contact .location .info .hours { font-weight:700; margin-bottom:30px; }
#contact .location .info .address a,
#contact .location .info .phone { margin-bottom:30px; }
#contact .location .info .phone a { color:#094120; text-decoration:none; }
#contact .location .map { float:right; width:350px; margin-bottom:30px; }

#blog .blog-intro { padding-top:10px; margin-bottom:20px; }
#blog .blog-intro .image { display:block; position:relative; margin-bottom:10px; }
#blog .blog-intro .image img { width:100%; height:auto; }
#blog .blog-intro .image .banner { position:absolute; bottom:0; right:-40px; width:343px; height:216px; }
#blog .blog-intro .image .title { position:absolute; bottom:2px; right:2px; width:511px; height:145px; }

#blog .blog-cards { margin:0 -10px; }
#blog .blog-cards .blog-card { float:left; width:50%; }
#blog .blog-cards .blog-card a.blog-summary { position:relative; display:block; background-color:#eee; padding-bottom:15px; border:1px solid #ccc; margin:10px; }
#blog .blog-cards .blog-card a.blog-summary .image img { width:100%; height:auto; }
#blog .blog-cards .blog-card a.blog-summary .text { color:#094120; padding:10px; }
#blog .blog-cards .blog-card a.blog-summary .text h2 { line-height:1.25em; margin-bottom:10px; }
#blog .blog-cards .blog-card a.blog-summary .text p { margin-bottom:15px; }
#blog .blog-cards .blog-card a.blog-summary .cta { position:absolute; bottom:10px; left:10px; right:10px; display:block; color:#fff; font-size:14px; font-size:1.4rem; letter-spacing:0.1em; text-transform:uppercase; text-decoration:none; text-align:center; line-height:26px; line-height:2.6rem; background-color:#597032; }
#blog .blog-cards .blog-card a:hover.blog-summary { border:1px solid #b3bd34; }
#blog .blog-cards .blog-card a:hover.blog-summary .cta { background-color:#b3bd34; }
#blog .sidebar .blog-sidebar { padding:20px 10px 0 10px; }
#blog .sidebar .blog-sidebar select { background:#fff; width:100%; font-family:'Lato', Helvetica, sans-serif; padding:5px; border:1px solid #bec2d3; border-radius:0.5em; outline:none; }
#blog .sidebar .blog-sidebar .blog-search { position:relative; margin-bottom:20px; }
#blog .sidebar .blog-sidebar .blog-search input { width:190px; font-family:'Lato', Helvetica, sans-serif; padding:5px; border:1px solid #bec2d3; border-radius:0.5em; outline:none; }
#blog .sidebar .blog-sidebar .blog-search a i { position:absolute; top:6px; right:2px; color:#094120; cursor:pointer; }
#blog .sidebar .blog-sidebar .blog-search a:hover i { color:#b3bd34; }
#blog .sidebar .blog-sidebar .tags { margin-bottom:20px; }

#blog .post h1 { margin-bottom:20px; }
#blog .post .feature-image img { width:100%; height:auto; margin-bottom:20px; }
#blog .post .tags { padding:20px 0 40px 0; }
#blog .post #disqus_thread { padding-top:0; }

#blog .heading { padding:30px 10px 10px 10px; }
#blog .heading h1 { font-size:44px; line-height:50px; line-height:5.0rem; letter-spacing:0.025em; font-family:'Lato', Helvetica, sans-serif; margin-bottom:0; }
#blog .heading h3 { font-size:20px; font-family:'Lato', Helvetica, sans-serif; font-weight:700; letter-spacing:0.075em; line-height:1em; margin-bottom:10px; -ms-filter:none; filter:none; }
#blog .heading h3.pretitle { padding-left:2px; margin-bottom:5px; text-transform:uppercase; }
#blog .heading h3 a { color:#094120; text-decoration:none; }
#blog .heading h3 a:hover { color:#bdb78e;}

#blog .pagination { padding:10px 10px 20px 10px; }
#blog .pagination .prev { float:left; }
#blog .pagination .next { float:right; }




/* ==========================================================================
   Media Queries
   ========================================================================== */
@media (max-width:1000px){
	body,
	.page .content p { font-size:14px; font-size:1.4rem; }
	h2,
	.page .content h2 { font-size:22px; font-size:2.2rem; }
	.page { width:98%; }
	.page .col { float:left; }
	.page .col.sidebar { width:22%; }
	.page .col.body { width:76%; }
	.page .col.body.general { width:75%; }

	.page .content { padding:45px 20px 20px 20px; }
	#home .page .content { padding:20px; }
	.page .content img { max-width:100% !important; height:auto !important; }
	.page .content a.cta,
	a.cta { font-size:12px; font-size:1.2rem; }

	#top-banner { width:98%; }
	#top-bar nav { width:98%; }
	#top-bar nav ul.sections li > a { font-size:14px; font-size:1.4rem; }
	#top-bar nav ul.sections li ul li a { font-size:12px; font-size:1.2rem; }
	
	.sidebar h3 { font-size:14px; font-size:1.4rem; letter-spacing:0em; }
	.sidebar section { font-size:12px; font-size:1.2rem; }
	.sidebar .toggle a { font-size:10px; font-size:1.0rem; }

	.sidebar nav ul li a { font-size:14px; font-size:1.4rem; }
	.sidebar nav ul li ul li a { font-size:12px; font-size:1.2rem; }
	.sidebar nav ul li ul li ul li a { font-size:10px; font-size:1.0rem; }

	#home .body .marquee { height:auto; }

	section.specials a .title { font-size:12px; font-size:1.2rem; }
	section.deals a { font-size:12px; font-size:1.2rem; }

	#contact .location .info { float:none; width:100%; }
	#contact .location .map { float:none; width:100%; }

	#bottom-bar footer .content { font-size:12px; font-size:1.2rem; }

	#blog .blog-intro .image .title { width:70%; height:auto; }
	#blog .sidebar .blog-sidebar .blog-search input { width:95%; }
}

@media (max-width:740px){
	#top-logo { width:162px; height:auto; margin-top:40px; }
	#top-bar nav .wrap { margin-left:152px; }

	.sidebar.nonav { padding-top:60px; }
	.sidebar .toggle a { display:block; }
	.sidebar nav { padding-top:60px; }

	.page .content { padding:45px 20px 20px 20px; }
	#home .page .content { padding:20px; }

	section.specials a .title { font-size:10px; font-size:1.0rem; }
	section.deals a { display:block; width:100%; margin-bottom:1px; }

	section.dealblock .cell { float:none; width:100%; }

	#bottom-bar footer .content .hours { display:block; }
}

@media (max-width:635px){
	#top-logo { width:100px; height:auto; margin-top:70px; }
	#top-bar nav .wrap { padding:10px 0 0 0; height:30px; margin-left:105px; }
   	#top-bar nav .tinynav { display:block; }
   	#top-bar nav ul.sections { display:none; }
   	#top-bar nav { overflow:hidden; }

	.page .col { float:none; clear:both; }
	.page .col.sidebar { width:100%; }
	.page .col.body { float:none; width:100% }
	.page .col.body.general { float:none; width:100% }

	.sidebar nav { padding-top:15px; }
	.sidebar .toggle a { display:table-cell; }

	.page .content { padding:60px 20px 20px 20px; }

	#home .body .marquee .royalSlider .rsGCaption a h2 { font-size:14px; font-size:1.4rem; margin-bottom:5px; }
	#home .page .content { padding:20px; }

	#calendar_month .filter .titlecell .title,
	#calendar_month .filter .cell a,
	#calendar_month .calendar .calendar_outer th,
	#calendar_month .calendar .calendar_outer .calendar_inner th,
	#calendar_month .calendar .calendar_outer .month_year .center .current_month,
	#calendar_month .calendar .calendar_outer .month_year a { font-size:10px; font-size:1.0rem; }

	#blog .blog-intro p { padding:0 10px; }
	#blog .sidebar .blog-sidebar .blog-search input { width:97%; }
}

@media (max-width:510px){
    #blog .blog-cards .blog-card { clear:both; float:none; width:100%; }
}

/* ==========================================================================
   Animations
   ========================================================================== */
header #top-logo {
    -webkit-transition-property:top;
    -webkit-transition-duration:0.2s;
    -webkit-transition-timing-function:ease-out;
    -moz-transition-property:top;
    -moz-transition-duration:0.2s;
    -moz-transition-timing-function:ease-out;
    -o-transition-property:top;
    -o-transition-duration:0.2s;
    -o-transition-timing-function:ease-out;
    -ms-transition-property:top;
    -ms-transition-duration:0.2s;
    -ms-transition-timing-function:ease-out;
    transition-property:top;
    transition-duration:0.2s;
    transition-timing-function:ease-out;
}


/* ==========================================================================
   Helper Classes
   ========================================================================== */
.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
.ir br { display: none; }
.hidden { display: none !important; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.cf:before, .cf:after, .box:before, .box:after, .page:before, .page:after  { content: ""; display: table; }
.cf:after, .box:after, .page:after { clear: both; }
.cf, .box, .page { *zoom: 1; }
.touch .display-mouse, .mouse .display-touch { display:none; }
.mouse .display-mouse, .touch .display-touch { display:block; }

/* ==========================================================================
   Print Styles
   ========================================================================== */
@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  a, a:visited { text-decoration: underline; }
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* h5bp.com/t */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}
