/*--------------------------------+
 | Site: La Grange Public Library |
 | Part: Master styles            |
 +--------------------------------*/

/* Imports
=====================================================================*/
@import url(//fonts.googleapis.com/css?family=Merriweather:300,300italic,400,400italic,700,700italic|Open+Sans:300,300italic,400,400italic,600,600italic,700,700italic);
@import url(//maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css);
@import url(//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/themes/smoothness/jquery-ui.min.css);
@import url(/content/styles/reset.css);
@import url(/content/styles/forms.css);


/* Fonts
======================================================================*/
.age-groups, h1, h2, h3, h4, h5, h6, .subfeatures, .vcard .org { font-family: Merriweather, Georgia, "Times New Roman", Times, serif; }
body, #gcs *, input, select, .search, textarea { font-family: "Open Sans", Arial, sans-serif; }


/* Basics
======================================================================*/
a { color: #3d893f; text-decoration: none; }
a:hover { text-decoration: underline; }
address { font-style: normal; }
body { background: #3d893f; font-size: 16px; line-height: 1.5; }
blockquote { border: 1px solid #ddd; border-width: 1px 0; color: #555; font-size: 26px; margin-bottom: 1em; padding: 1em 0; }
blockquote cite { display: block; font-size: 18px; text-align: right; }
blockquote p { margin-bottom: 0.2em; }
cite, em { font-style: italic; }
dl, ol, p, table, ul { margin-bottom: 1.4em; }
dt { margin-top: 1.4em; }
dt:first-child { margin-top: 0; }
dt, h1, h2, h3, h4, h5, h6, strong { font-weight: bold; }
h1 { color: #333; font-size: 36px; font-weight: normal; line-height: 1.1; margin-bottom: 0.5em; }
h2 { font-size: 22px; line-height: 1.1; margin-bottom: 0.5em; }
h3 { font-size: 18px; line-height: 1.2; }
h4 { font-size: 16px; }
h5 { font-size: 14px; }
h6 { font-size: 12px; }
hr { background: #ddd; border: 0; clear: both; color: #ddd; height: 1px; margin: 2em 0; }
img { max-width: 100%; }
li { margin-bottom: 0.5em; }
ol { list-style: decimal; margin-left: 2em; }
ol ol { list-style: lower-alpha; }
ol ol ol { list-style: lower-roman; }
table { background: #fff; border-collapse: collapse; width: 100%; }
table p { margin: 0; }
td, th { border: 1px solid #ddd; padding: 0.5em; vertical-align: top; }
td[align=center], th[align=center] { text-align: center; }
td[align=right], th[align=right] { text-align: right; }
th { background: #f5f5f5; }
thead th { font-weight: bold; vertical-align: bottom; }
ul { list-style: disc; margin-left: 1.5em; }

/* Stock classes */
.l { float: left; }
.r { float: right; }
.num { text-align: right; }
ul.flat { list-style: none; margin-left: 0; }
ul.flat > li { background: none; margin: 0; padding: 0; }


/* Core layout
======================================================================*/
.clear { clear: both; }

/* Columns */
.c2l, .c2r { width: 48%; }
.c2l, .c3l, .c3m { float: left; }
.c2r, .c3r { float: right; }
.c3l { margin-right: 3%; }
.c3l, .c3m, .c3r { width: 31%; }

/* Content */
.content { box-sizing: border-box; margin: 0 auto; padding: 20px; max-width: 1180px; }
#content-primary { float: left; width: 65.49%; }
#content-secondary { float: right; width: 30.99%; }
.full #content-primary { float: none; margin: 0 auto; }
.full.wide #content-primary { float: none; width: auto; }
#main { background: #fff; display: block; }
#main .content { padding: 40px 20px 70px; }


/* Content
======================================================================*/

/* Action */
.action, .action a {
    -webkit-appearance: none;
    background: #3d893f;
    border: 0;
    border-radius: 4px;
    box-sizing: border-box;
    color: #fff;
    cursor: pointer;
    font-size: 16px;
    font-weight: 600;
    display: inline-block;
    padding: 0.6em 1em 0.7em;
    text-decoration: none;
    vertical-align: middle;
}

.action:hover { opacity: 0.7; text-decoration: none; }
.action a { color: #fff; padding: 0.6em 1em 0.7em; }
span.action { padding: 0; }

/* Age groups */
.age-groups { display: -ms-flexbox; display: flex; font-size: 19px; font-weight: bold; -ms-flex-pack: justify; justify-content: space-between; list-style: none; margin: 40px 0; }
.age-groups a { background: #fff; color: #fff; display: block; }
.age-groups a * { opacity: 1; -moz-transition: opacity 0.1s ease-in-out; -webkit-transition: opacity 0.1s ease-in-out; transition: opacity 0.1s ease-in-out; }
.age-groups a:hover * { opacity: 0.7; }
.age-groups img { display: block; width: 100%; }
.age-groups li { box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); position: relative; width: 30.99%; }
.age-groups .overlay { background: rgba(61, 137, 63, 0.8); bottom: 0; box-sizing: border-box; left: 0; padding: 0.7em 1em; position: absolute; width: 100%; }

    /* Colors */
    .age-groups .adults .overlay { background: rgba(234, 114, 37, 0.8); }
    .age-groups .children .overlay { background: rgba(255, 200, 47, 0.8); }
    .age-groups .young .overlay { background: rgba(178, 35, 115, 0.8); }

.stagebanner { color:white; align-items: center; text-align: center; padding: 1.5em; width: 100%; font-size: larger; background-image: url('/Content/images/spinutech-header.png'); }
.stagebanner a { color:white;}

/* Banner */
.banner { margin-bottom: 40px; overflow: hidden; }
.banner .caption { font-size: 15px; }
.banner .caption p { margin: 0; }
.banner .credit { float: right; margin-left: 0; opacity: 0.7; }
.banner img { display: block; margin-bottom: 5px; width: 100%; }

/* Body */
.body { padding: 0 8.63%; }

/* Calendar */
.calendar { overflow: hidden; }
.calendar .date { float: left; margin: 0 0 1em -160px; width: 150px; }
.calendar .date .weekday { display: block; }
.calendar dd { margin-bottom: 0.7em; }
.calendar dd, .calendar dt { padding-left: 160px; }
.calendar dt { border-top: 1px solid #ddd; clear: both; font-weight: normal; margin: 0; padding-top: 0.7em; }
.calendar p { margin: 0; }
.calendar .title { font-weight: bold; }

	/* Grid */
    #calendar .fc-day-grid-event { padding: 0.2em 0.4em; }
    #calendar .flag { border: 0; letter-spacing: 0; text-transform: none; }
    #calendar .flag-children { color: #000; }
    #calendar table { margin: 0; }
	
	/* Mini */
	.calendar-mini { margin-bottom: 2em; }
    .calendar-mini dt { font-weight: 600; }
    .calendar-mini p { margin: 0; }
    
    /* Monthly view */
    .fc-header td { border: 0; }
    
    /* Switcher */
	#cal-nav { float: right; margin: 0 0 10px ; white-space: nowrap; }
	#cal-nav li { background: none; display: inline; margin: 0 0 0 1em; padding: 0; }
	#cal-nav li.active a { color: #58595b; font-weight: bold; }

/* Callouts */
div[style *= "width"] { max-width: 100%; }
[class *= "call"] { font-size: 12px; line-height: 1.3; margin-bottom: 15px; max-width: 100%; }
[class *= "call"] img { display: block; margin-bottom: 5px; }
[class *= "call"] img.icon { display: inline; }
[class *= "call"] p { margin-bottom: 0.5em; }
.call-l, .pull-l, .pull-small-l { clear: left; float: left; margin: 0 30px 10px 0; }
.call-r, .pull-r, .pull-small-r { clear: right; float: right; margin: 0 0 10px 30px; }
dt img.call-l { margin-top: 0; }
.credit { font-size: 11px; letter-spacing: 0.01em; margin: 0.5em 0; text-align: right; }
.credit a { color: #7f8183; }
.pull, .pull-l, .pull-r { color: #4d4d4d; font-size: 24px; font-weight: bold; line-height: 1.3; width: 42.15%; }
[class *= "pull-small"] { border: 1px solid #ccc; border-width: 2px 0; font-size: 16px; line-height: 1.6; width: 42.15%; }
[class *= "pull"] blockquote cite { color: #666; display: block; font-size: 16px; font-weight: normal; text-align: right; }
[class *= "pull"] .mute { font-weight: normal; }
[class *= "pull"] p { margin-bottom: 0.5em; }
table [class *= "call"] { float: none; margin: 0; width: auto !important; }
table [class *= "call"] img, table [class *= "call"] img[style] { display: inline; !important; height: auto; width: auto; }

/* Directory search */
.directory { list-style: none; margin-left: 0; }
.directory a { color: #000; display: block; overflow: hidden; padding: 10px 10px 10px 105px; }
.directory a:hover { background: #f0f0f0; text-decoration: none; }
.directory li { clear: both; margin-bottom: 10px; overflow: hidden; }
.directory .name { color: #3d893f; display: block; font-size: 20px; font-weight: bold; }
.directory .occupation { display: block; }
.directory p { margin: 0; }
.directory .thumb { float: left; margin: 3px 10px 0 -90px; width: 70px; }

/* Features */
.feature { margin-top: -3px; position: relative; }
.feature .content { background: #fff; max-width: 1140px; padding: 40px; }
.feature img { display: block; width: 100%; }
.feature .overlay { box-sizing: border-box; bottom: 95px; padding: 0 20px; position: absolute; text-align: center; width: 100%; opacity: 0.85; }
.feature .overlay h1 { font-size: 40px; margin-bottom: 0.1em; }
.feature .overlay p { margin: 0; }

    /* Subfeatures */
    .subfeatures { display: -ms-flexbox; display: none; font-size: 19px; font-weight: bold; -ms-flex-pack: justify; justify-content: space-between; list-style: none; margin: -140px 0 60px 0; }
    .subfeatures a { background: #fff; color: #fff; display: block; }
    .subfeatures a * { opacity: 1; -moz-transition: opacity 0.1s ease-in-out; -webkit-transition: opacity 0.1s ease-in-out; transition: opacity 0.1s ease-in-out; }
    .subfeatures a:hover * { opacity: 0.7; }
    .subfeatures img { display: block; width: 100%; }
    .subfeatures li { box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); position: relative; width: 22.32%; }
    .subfeatures .overlay { background: rgba(61, 137, 63, 0.8); bottom: 0; box-sizing: border-box; left: 0; padding: 0.7em 1em; position: absolute; width: 100%; }

/* Flags */
.flag { border-radius: 3px; font-size: 11px; letter-spacing: 0.05em; margin-right: 0.3em; padding: 0.3em 0.8em; text-transform: uppercase; white-space: nowrap; }
.flag-adults { background: #ea7225; color: #fff; }
.flag-children { background: #ffc82f; color: #000; }
.flag-default { background: #3d893f; color: #fff; }
.flag-registration { letter-spacing: normal; }
.flag-young { background: #b22373; color: #fff; }
  
/* Footer */
#footer { background: url(/content/images/footer-bg.png) no-repeat 50% 50%; background-size: cover; color: #fff; font-size: 16px; padding: 40px 0; }
#footer a { color: #fff; }
#footer h6 { font-size: 22px; font-weight: bold; margin-bottom: 0.3em; }

    /* Colophon */
    #colophon { text-align: center; }
    
        /* Copyright */
        #copyright { font-size: 12px; list-style: none; margin: 0; opacity: 0.5; text-transform: uppercase; }
        #copyright li { display: inline; margin: 0 0.5em; }
        
        /* Social */
        .social { font-size: 20px; list-style: none; margin-left: 0; }
        .social a { opacity: 1; -moz-transition: opacity 0.1s ease-in-out; -webkit-transition: opacity 0.1s ease-in-out; transition: opacity 0.1s ease-in-out; }
        .social a:hover { opacity: 0.7; }
        .social li { display: inline; margin: 0; }
        
        /* vCard */
        .vcard { margin-bottom: 1.5em; }
        .vcard .adr, .vcard .tel { margin: 0 0.5em; }
        .vcard .org { display: block; font-size: 23px; font-weight: normal; }
    
    /* Hours */
    #hours { background: #fff; box-sizing: border-box; color: #000; float: right; padding: 30px; width: 31.08%; }
    #hours a { color: #3d893f; }
    #hours ul { list-style: none; margin-left: 0; }
    
    /* Sitemap */
    #sitemap { float: left; width: 65.49%; }
    #sitemap li { margin-bottom: 0.5em; }
    #sitemap ul { list-style: none; margin: 0; }
    #sitemap > ul { display: -ms-flexbox; display: flex; list-style: none; -ms-flex-pack: justify; justify-content: space-between; }
    #sitemap > ul > li { width: 20.98%; }

/* Wowbrary Carousel */
    .wowbrary  td {padding: 0.2em; }

/* Grids */
.grid { line-height: 1.4; list-style: none; margin-left: 0; overflow: hidden; }
.grid [class *= "call"] { float: none; margin: 0; width: auto !important; }
.grid h2, .grid h3 { margin: 0; }
.grid li { box-sizing: border-box; float: left; margin: 0 2.7% 25px 0; }
.grid p { margin: 0; }
.grid img { display: block; margin-bottom: 10px; width: 100%; }

    /* Columns */
    .grid.grid1 li { margin-right: 0; }
    .grid.grid2 li { width: 48.64%; }
    .grid.grid3 li { width: 31.53%; }
    .grid.grid4 li { width: 22.97%; }
    .grid.grid5 li { width: 17.83%; }
    
    .grid.grid2 li:nth-child(2n+2),
    .grid.grid3 li:nth-child(3n+3),
    .grid.grid4 li:nth-child(4n+4),
    .grid.grid5 li:nth-child(5n+5) { margin-right: 0; }
    
    .grid.grid2 li:nth-child(2n+3),
    .grid.grid3 li:nth-child(3n+4),
    .grid.grid4 li:nth-child(4n+5),
    .grid.grid5 li:nth-child(5n+6) { clear: left; }
	
/* Header */
#header { background: #fff; border-bottom: 3px solid #3d893f; }
#header .content { display: -ms-flexbox; display: flex; }
#header-primary { -ms-flex: 0 0 156px; flex: 0 0 156px; padding-right: 40px; }
#header-secondary { -ms-flex: 1 1 156px; flex: 1 1 156px; padding-top: 30px; }

    /* Account */
    #account { float: right; font-size: 14px; text-align: right; text-transform: uppercase; }
    #account .action { font-size: 14px; font-weight: normal; padding: 0.7em 1.5em; }
    #account li { display: inline; margin-left: 1em; }
    #account ul { list-style: none; margin: 0; }
    
    /* Compact */
    #nav-compact { display: none; font-size: 30px; }
    #nav-compact a { padding: 0.3em; }
    #nav-compact li { display: inline; }
    #nav-compact ul { list-style: none; margin: 0; }
    
    /* Logo */
    #logo { max-width: 156px; }
    
    /* Navigation */
    #nav-primary { clear: both; font-size: 16px; font-weight: 600; list-style: none; padding-top: 40px; text-transform: uppercase; }
    #nav-primary a { border-radius: 3px; color: #000; padding: 0.5em 1em; opacity: 0.9; }
    #nav-primary a:hover { background: #ddd; opacity: 1; text-decoration: none; }
    #nav-primary .current a { background: #3d893f; color: #fff; opacity: 1; }
    #nav-primary li { display: inline-block; margin: 0 0.1em 0 0; white-space: nowrap; }
    #nav-primary .reverse-case:first-letter { text-transform: lowercase; }
    #nav-primary ul { margin: 0; }
    
        /* Menu */
        #menu {
            background: #fff;
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
            display: none;
            font-size: 15px;
            height: 100%;
            overflow-x: hidden;
            overflow-y: auto;
            position: fixed;
            right: -400px;
            top: 0;
            width: 250px;
            z-index: 1200;
        }
        
        #menu .dues { color: #ffcf00; font-weight: bold; }
        #menu .fa { display: none; }
        #menu h3 { display: none; }
        #menu .current { background: #fff; }
        #menu .current > a { color: #000; font-weight: bold; }
        #menu ul { list-style: none; margin: 0; }
        #menu ul a { border-bottom: 1px solid rgba(0, 0, 0, 0.3); color: #000; display: block; padding: 0.8em 1.1em; }
        #menu ul li { margin: 0; }
        #menu ul ul a { border-bottom: 0; border-top: 1px solid rgba(0, 0, 0, 0.1); }
        #menu ul ul .current ul { padding: 0.8em 1.1em; }
        #menu ul ul ul { list-style: disc; margin-left: 1.5em; }
        #menu ul ul ul a { border: 0; display: inline; padding: 0; }
        
            /* Nav toggle */
            #nav-toggle { float: right; font-size: 18px; font-weight: bold; position: relative; }
        
        /* Secondary */
        #nav-secondary { clear: both; font-size: 16px; list-style: none; /*max-height: 30px;*/ overflow: hidden; position: relative; }
        #nav-secondary a { border-radius: 4px; color: #fff; display: inline-block; padding: 0.5em 0.9em; }
        #nav-secondary a:hover { background: rgba(255, 255, 255, 0.2); text-decoration: none; }
        #nav-secondary h3 { margin-bottom: 0.5em; }
        #nav-secondary li { display: inline; margin: 0; white-space: nowrap; }
        #nav-secondary li.current > a { background: rgba(255, 255, 255, 0.5); }
        #nav-secondary .toggle { float: right; margin-bottom: 0.5em; text-align: right; }
        #nav-secondary ul { list-style: none; margin: 0; }
        #nav-secondary ul ul { font-size: 14px; list-style: disc; margin: 0.5em 0 0.5em 1.5em; }
        #subnav { background: #3d893f; }
        #subnav .content { padding-bottom: 0.5em; padding-top: 0.5em; }
        
            /* Opened */
            #nav-secondary.open { max-height: none; }
            #nav-secondary.open li { float: left; margin: 0 0 0.5em 0; width: 33.33%; }
            #nav-secondary.open ul { background: rgba(255, 255, 255, 0.2); clear: both; box-shadow: 0 5px 16px rgba(0, 0, 0, 0.07); margin-bottom: 20px; overflow: hidden; padding: 40px 60px; }
            #nav-secondary.open ul a { display: block; overflow: hidden; padding-right: 1em; text-overflow: ellipsis; white-space: nowrap; }
        
        /* Tertiary */
        #nav-tertiary { font-size: 20px; font-weight: 300; list-style: none; margin-left: 0; }
        #nav-tertiary .current a { color: #000; font-weight: bold; }
        #nav-tertiary li { margin-bottom: 0.5em; }

/* Preview bar */
#preview-return { background: #ffc; box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); position: relative; text-align: center; }
#preview-return a { display: block; padding: 15px 20px; }
#preview-return a:hover { background: #fff; text-decoration: none; }
#preview-return .content { max-width: none; padding: 0; }
#preview-return p { margin: 0; }

/* Icons */
.fa-facebook { color: #3b5998; }
.fa-flickr { color: #ff0084; }
.fa-foursquare { color: #0732a2; }
.fa-instagram { color: #3f729b; }
.fa-pinterest { color: #bd081c; }
.fa-tumblr { color: #35465c; }
.fa-twitter { color: #55acee; }
.fa-yelp { color: #af0606; }
.fa-youtube {color: #c4302b; }
h2 .fa-lg { color: #666; }

/* Iframes */
.iframe-container { height: 0; overflow: hidden; padding-top: 30px; position: relative; }
.iframe-container iframe { left: 0; height: 100% !important; position: absolute; top: 0; width: 100% !important; }

/* Intro */
.intro { font-size: 24px; font-weight: 300; }

/* Muted text */
.mute { color: #7f7f7f; font-size: 14px; font-weight: normal; }

/* News */
.news dt { font-weight: 600; }

    /* News mini */
    .news-mini { list-style: none; margin-left: 0; }
    .news-mini li { margin-bottom: 1em; }
    .news-mini a { font-weight: 600; margin-right: 0.5em; }
    .news-mini .mute { white-space: nowrap; }

/* Notification */
#notification { background: #ffc; box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); font-size: 20px; position: relative }
#notification a { text-decoration: underline; }
#notification .content * { margin: 0; }
#notification ul {margin-left:1.5em!important; }

/* Paging */
.pages, .pages ul { clear: both; float: none; font-size: 16px; list-style: none; margin: 50px 0 30px; text-align: center; }
.pages li { display: inline; margin: 0 10px 0 0; }

/* Profiles */
#profile-photo { float: right; margin: 0 0 20px 20px; width: 30%; }

/* Recommendations */
.recommendation-feature .author, .recommendations .author { font-size: 14px; margin: 1em 0; overflow: hidden; padding-left: 60px; }
.recommendation-feature .author .mute, .recommendations .author .mute { display: block; font-style: italic; }
.recommendation-feature .author .thumb, .recommendations .author .thumb { float: left; margin: 3px 0 0 -60px; width: 50px; }
.recommendation-feature .thumb { float: right; margin: 0 0 10px 10px; }
.recommendation-feature .thumb img { display: block; width: 100%; }
.recommendations dd, .recommendations dt { padding-left: 220px; }
.recommendations dt { clear: both; font-size: 24px; font-weight: 600; padding-top: 30px; }
.recommendations dt .thumb { float: left; margin: 5px 0 0 -220px; width: 200px; }
.recommendations dt .thumb img { width: 100%; }
.recommendations p { margin: 0; }

/* Search results */
#gcs .gsc-cursor-box { font-size: 16px; text-align: center; }
#gcs .gsc-result .gs-title { overflow: visible; }
#gcs .gs-result .gs-title { font-size: 20px; height: auto; }
#gcs .gs-result .gs-title * { font-size: 1em; }
#gcs .gs-result .gs-title, #gcs .gs-result .gs-title * { text-decoration: none; }
#gcs .gs-result .gs-title:hover { text-decoration: underline; }

#gcs .gsc-above-wrapper-area,
#gcs .gsc-control-cse,
#gcs .gsc-thumbnail-inside,
#gcs .gsc-url-top,
#gcs td {
    padding: 0;
}

#gcs .gsc-control-cse .gsc-table-result { font-size: 16px; }
#gcs .gsc-control-cse, #gcs .gsc-webResult.gsc-result, #gcs td { border: 0; }
#gcs table { margin: 0; }

/* Sharing */
.sharing { clear: both; margin-top: 30px; }

/* Skip */
#skip { left: -9999px; position: absolute; }

/* Toggling options */
.closed { display: none; }

/* Viewing options */
.view { margin-bottom: 1em; }
.view .current { font-weight: bold; }
.view li, .view p { margin-right: 0.7em; white-space: nowrap; }
.view li, .view p, .view ul { display: inline; }
.view ul { list-style: none; margin: 0; }


/* Widths
=====================================================================*/
@media screen and (max-width: 1300px) {
    /* Features */
    .feature .overlay { bottom: 20px; }
    .subfeatures { margin-top: 0; }
}

@media screen and (max-width: 1020px) {
    /* Features */
    .feature .overlay { border-bottom: 1px solid #ddd; position: static; padding: 0; }
    .feature .overlay h1 { font-size: 30px; }
    
    /* Header */
    #account { float: none; margin-bottom: 1em; text-align: left; }
    #header-secondary { padding: 0; }
    
    /* Forms */
    #site-search { width: auto; }
}

@media screen and (max-width: 880px) {
    /* Content */
        /* Features */
        .subfeatures { -ms-flex-wrap: wrap; flex-wrap: wrap; }
        .subfeatures li { margin-bottom: 20px; width: 48%; }
}

@media screen and (max-width: 880px) {
    /* Basics */
    h1 { font-size: 26px; }
    
    /* Layout */
    .c2l, .c2r, .c3l, .c3m, .c3r, #content-primary, #content-secondary { float: none; margin: 0; width: auto; }
    .content, #main .content { padding: 20px 15px; }
    
    /* Content */
        /* Action buttons */
        .action { display: block; margin-bottom: 0.5em; text-align: center; width: 100%; }
        
        /* Age groups */
        .age-groups { display: block; font-size: 14px; }
        .age-groups a { background: none; display: flex; }
        .age-groups .image { width: 20%; }
        .age-groups img { position: static; }
        .age-groups li { box-shadow: none; margin-bottom: 1px; width: auto; }
        .age-groups .overlay { background: #3d893f; align-items: center; display: flex; position: static; width: 80%; }
        
        /* Alert */
        #alert { font-size: 16px; }
        
        /* Banner */
        .banner { margin-bottom: 20px; }
        .banner .credit { float: none; margin: 0 0 0.3em; }
        
        /* Body */
        .body { padding: 0; }
        
        /* Calendar */
        .calendar .date { display: block; float: none; font-weight: 600; margin: 0; width: auto; }
        .calendar .date .weekday { display: inline; }
        .calendar dd, .calendar dt { padding-left: 0; }
        
        /* Callouts */
        [class *= "call"], [class *= "pull"] { width: auto !important; }
        [class *= "pull"] { font-size: 16px; }
        .call, .call-l, .pull-l, .call-r, .pull-r { float: none; margin: 0 0 10px; }
        
        /* Directory search */
        .directory a { padding: 0 0 0 60px; }
        .directory li { margin-bottom: 20px; }
        .directory .thumb { margin: 3px 0 0 -60px; width: 50px; }
        
        /* Features */
        .feature .content { padding: 20px; }
        .subfeatures { display: block; font-size: 14px; }
        .subfeatures a { background: none; display: flex; }
        .subfeatures .image { width: 20%; }
        .subfeatures img { position: static; }
        .subfeatures li { box-shadow: none; margin-bottom: 1px; width: auto; }
        .subfeatures .overlay { background: #3d893f; align-items: center; display: flex; position: static; width: 80%; }
        
        /* Footer */
        #footer { padding: 20px 0; }
        
            /* Hours */
            #hours { float: none; margin-bottom: 20px; width: auto; }
            
            /* Sitemap */
            #sitemap { float: none; text-align: center; width: auto; }
            #sitemap > ul { display: block; }
            #sitemap > ul > li { border-bottom: 1px solid rgba(255, 255, 255, 0.2); margin-bottom: 20px; padding-bottom: 15px; width: auto; }
            #sitemap > ul > li > ul { line-height: 1.75; }
            #sitemap > ul > li > ul > li { display: inline; margin-right: 1em; white-space: nowrap; }
        
        /* Forms */
            /* Colophon */
            #copyright li { display: block; margin-bottom: 0.5em; }
            .vcard .tel { display: block; font-size: 24px; margin-top: 0.4em; }
            
            /* Newsletter */
            #newsletter .action, #newsletter .txt { display: block; margin-bottom: 0.3em; width: 100%; }
            
            /* Search */
            #site-search { clear: both; padding-top: 15px; width: 100%; }
            #site-search .search { background: #fff; flex-wrap: wrap; }
            #site-search .search button { background: #3d893f; border-radius: 0 4px 0 0; color: #fff; display: block; margin: 0; order: 2; text-align: center; width: 100%; }
            #site-search .search-category { border-right: 0; border-top: 1px solid #ddd; flex: none; font-size: 16px; order: 3; text-align: center; width: 100%; }
            #site-search .search-category li { margin: 0 0.5em; padding: 0.9em; width: 50%; }
            #site-search .search-category li:first-child { border-right: 1px solid #ddd; }
        
        /* Grids */
        [class*="grid"] li { float: none; margin-right: 0 !important; width: auto !important; }
        
        /* Header */
        #account, #nav-primary, #site-search, #subnav { display: none; }
        #header { border-bottom: 2px solid #3d893f; }
        #header .content { display: block; overflow: hidden; padding: 10px 15px; }
        #header-nav { display: block; }
        #header-primary { flex: none; float: left; padding: 0; width: 40px; }
        #header-secondary { flex: none; padding: 0; }
        #nav-compact { float: right; display: block; }
        
        /* Navigation */
        #nav-combined { background: #3d893f; color: #fff; list-style: none; margin: 0 0 40px; padding: 20px; }
        #nav-combined a { color: #fff; }
        #nav-combined > li { margin: 0; }
        #nav-combined > li > a { border-bottom: 1px solid rgba(255, 255, 255, 0.3); display: block; padding: 0.5em 0; }
        #nav-combined > li:last-child > a { border-bottom-width: 0; }
        #nav-combined > li.current { border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
        #nav-combined > li.current > a { border: 0; font-weight: bold; }
        #nav-combined > li.current > a + ul { margin-top: 0; }
        #nav-combined ul { margin: 0.5em 0 0 1em; }
        
        #nav-secondary, #nav-tertiary { display: none; }
        
        /* Recommendations */
        .recommendation-feature .author, .recommendations .author { font-size: 12px; padding-left: 40px; }
        .recommendation-feature .author .mute, .recommendations .author .mute { font-size: 1em; }
        .recommendation-feature .author .thumb, .recommendations .author .thumb { margin-left: -40px; width: 30px; }
        .recommendations dd, .recommendations dt { padding-left: 0px; }
        .recommendations dt { font-size: 20px; line-height: 1.2; }
        .recommendations dt .thumb { float: right; margin: 5px 0 10px 10px; width: 30%; }
}