/******************************************************************
Theme Name: Water Land Life Custom Theme
Theme URI: http://www.waterlandlife.org
Description: Custom WordPress theme developed for the Western Pennsylvania Conservancy.
Author: H2
Author URI: http: //www.h2.com	
Version: 1.0
License: GNU General Public License & MIT
License URI: http: //www.gnu.org/licenses/gpl-2.0.html
Tags: Blank, HTML5, CSS3
******************************************************************/

/* FONTS */

@import url('https://fonts.googleapis.com/css?family=Montserrat:300,300i,400,400i,500,500i,700,700i');


/* GENERIC BASE STYLES */

* { box-sizing: border-box; color: inherit; font-family: inherit; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; }
a[href] { transition: .2s ease-in background, .2s ease-in color, .2s ease-in opacity, .2s ease-in padding; }
a[href], a[href] img { border: 0; outline: 0; text-decoration: none; }
a[href]:link, a[href]:visited { color: #69923a; }
a[href]:hover, a[href]:active { color: #31251b; }
body { -webkit-oveflow-scrolling: touch; width: 100%; overflow-x: hidden; margin: 0 auto; padding: 0; background: #fff; color: #716258; font-family: Montserrat,Gotham,sans-serif; }
b, strong { font-weight: 500; }
img { -webkit-backface-visibility: hidden; }
ol, p, ul { margin-top: 0; margin-bottom: 1.25em; }
table { border-collapse: collapse; }
td, th { vertical-align: top; }
textarea { height: 7em; }


/* STRUCTURAL STYLES & WORDPRESS CORE */

.alignnone { margin: 0 0 .5em; }
.clear { zoom: 1; }
.clear:before, .clear:after, .gallery:after { content: ''; display: block; clear: both; width: 0; height: 0; }
.wrapper { width: 80%; max-width: 1280px; margin: 0 auto; }

@media screen and (min-width: 1025px) {
  .tablet, .phone { display: none; }
  .desktop { display: block; }
  span.desktop { display: inline; }
}

@media screen and (max-width: 1024px) {
  .wrapper { width: 100%; padding: 0 30px; }
  .desktop, .phone { display: none; }
  .tablet { display: block; }
  span.tablet { display: inline; }
}

@media screen and (max-width: 768px) {
  .desktop, .tablet { display: none; }
  .phone { display: block; }
  span.tablet { display: inline; }
}

/* ALTERNATE UNORDERED LIST */
ul.alt-ul { line-height: 90%; margin: 0 0 500px 0 } 


/* HEADER STYLES */
/* These styles control the appearance of the page <header> section, which contains the two logo Max Mega Menu drop-downs. Styling for those menu options can be found in the Max Mega Menu theme options and custom styles. */

header a[href]#logo { flex-grow: 0; flex-shrink: 1; padding: 50px 0 20px; }
header a[href]#logo img { width: 100%; max-width: 297px; min-width: 200px; height: auto; }
header div.wrapper { display: flex; flex-direction: row nowrap; }
header nav { flex-grow: 1; flex-shrink: 0; display: flex; flex-direction: column; justify-content: space-between; }

@media screen and (max-width: 1024px) {
  header { display: block; }
  header a[href]#logo { display: block; margin: 0 auto; padding: 1em 0; }
  header a[href]#logo img { width: 220px; }
  header nav { position: absolute; z-index: 9999; width: 100%; width: calc(100% - 60px); top: 0; right: 30px; }
}



/* FOOTER STYLES - TOP */
/* These styles control the appearance of the top portion of the <footer>, which contains the breadcrumb navigation and social media sharing links. */

#footer-top div.wrapper { display: flex; flex-direction: row nowrap; justify-content: space-between; padding-top: 120px; font-size: 11.25pt; }
#footer-top img { position: relative; top: -2px; margin: 0 .25em; vertical-align: middle; }
#footer-top p { letter-spacing: -.01em; line-height: 1.3; }
#footer-top p#breadcrumbs a[href]:link, p#breadcrumbs a[href]:visited { color: #716258; }
#footer-top p#breadcrumbs strong { color: #69923a; }
#footer-top p#sharing { white-space: nowrap; }
#footer-top p#sharing a[href]:link, #footer-top p#sharing a[href]:visited { opacity: .6; } 
#footer-top p#sharing a[href]:hover, #footer-top p#sharing a[href]:active { opacity: 1; } 

@media screen and (max-width: 1024px) {
  #footer-top div.wrapper { flex-direction: column; }
}


/* FOOTER STYLES - SITEMAP */
/* These styles control the appearance of the sitemap in the center of the <footer> that uses the "Footer Menu" menu area. */

#footer-sitemap { border-top: 2px solid #716258; background: #e7e5e4; }
#footer-sitemap a[href] { display: inline-block; margin-bottom: .5em; font-size: 8pt; font-weight: 400; letter-spacing: -.01em; line-height: 1.3; }
#footer-sitemap a[href]:link, #footer-sitemap a[href]:visited { color: #716258; }
#footer-sitemap a[href]:hover, #footer-sitemap a[href]:active { color: #000 !important; }
#footer-sitemap ul.sub-menu a[href]:link, #footer-sitemap ul.sub-menu a[href]:visited { padding-right: 3px; padding-left: 0px; } 
#footer-sitemap ul.sub-menu a[href]:hover, #footer-sitemap ul.sub-menu a[href]:active { padding-right: 0px; padding-left: 3px; }
#footer-sitemap li.donate a[href] { margin-top: .8em; padding: .25em .5em !important; font-size: 14.25pt; font-weight: 500; text-align: center; text-transform: uppercase; box-shadow: 1px 1px 1px rgba(0,0,0,.3); }
#footer-sitemap li.donate a[href]:link, #footer-sitemap li.donate a[href]:visited { color: #fff; background: #0d776e; }
#footer-sitemap li.donate a[href]:hover, #footer-sitemap li.donate a[href]:active { color: #d4eb8d !important;  background: #074f51; }
#footer-sitemap ul { list-style-type: none; margin: 0; padding: 0; }
#footer-sitemap div.wrapper > ul { display: flex; flex-direction: row nowrap; }
#footer-sitemap div.wrapper > ul > li { flex-basis: 14.25%; padding: 30px 10px; }
#footer-sitemap div.wrapper > ul > li:nth-child(odd) { background: #f3f2f2; }
#footer-sitemap div.wrapper > ul > li > a[href] { /* display: flex; flex-flow: column; justify-content: flex-end; */ min-height: 25.2pt; font-size: 12pt; font-weight: 700; letter-spacing: -.01em; line-height: 1.05; text-transform: uppercase; }
#footer-sitemap div.wrapper > ul > li > a[href]:link, #footer-sitemap div.wrapper > ul > li > a[href]:visited { color: #69923a; }
#footer-sitemap div.wrapper > ul > li:nth-child(odd) > a[href]:link, #footer-sitemap div.wrapper > ul > li:nth-child(odd) > a[href]:visited { color: #716258; }
#footer-sitemap div.wrapper > ul > li:nth-child(3n+1) > a[href]:link, #footer-sitemap div.wrapper > ul > li:nth-child(3n+1) > a[href]:visited { color: #0d776e; }

@media screen and (max-width: 1024px) {
  #footer-sitemap div.wrapper > ul { flex-flow: column; }
}



/* FOOTER STYLES - BOTTOM */
/* These styles control the appearance of the widgeted area at the bottom of the <footer>. */

#footer-bottom { background: #dddad9; }
#footer-bottom div.wrapper { display: flex; flex-direction: row nowrap; justify-content: space-between; align-items: flex-start; padding-top: 30px; padding-bottom: 30px; font-weight: 300; }
#footer-bottom a[href].social + a[href].social { margin-left: .5em; }
#footer-bottom a[href].social:link, #footer-bottom a[href].social:visited { opacity: .4; }
#footer-bottom a[href].social:hover, #footer-bottom a[href].social:active { opacity: 1; }
#footer-bottom p { font-size: 10.5pt; letter-spacing: -.01em; line-height: 1.2; }
#footer-bottom p:first-child { margin-bottom: .5em; }
#footer-bottom p em { display: block; font-size: 9pt; font-weight: 300; letter-spacing: -.02em; line-height: 1.15; } 
#footer-bottom div.wrapper > * { width: 25%; flex-basis: 25%; flex-grow: 0; flex-shrink: 0; }
#footer-bottom div.wrapper > *:nth-child(1) { text-align: left; }
#footer-bottom div.wrapper > *:nth-child(1) strong { color: #716258; }
#footer-bottom div.wrapper > *:nth-child(2) { text-align: center; }
#footer-bottom div.wrapper > *:nth-child(3) { }
#footer-bottom div.wrapper > *:nth-child(3) strong { color: #69923a; }
#footer-bottom div.wrapper > a[href] img { width: 100%; max-width: 275px; height: auto; }

@media screen and (max-width: 1024px) {
  #footer-bottom div.wrapper { flex-direction: column; }
  #footer-bottom div.wrapper > * { width: 100%; flex-basis: 100%; margin-bottom: 1.5em; text-align: center !important; }
  #footer-bottom div.wrapper > *:nth-child(2) { order: -1; }
}



/* MAIN CONTAINER MARGINS AND SPACING */
/* These styles control the margins and padding of all major container elements in the <main> section. */

div.content { margin: 0 0 40px; }
div.content.noheadline { margin-top: 60px; }
div.content > * { font-size: 13.5pt; line-height: 1.5; }
div.content div.panel-grid + div.panel-grid { margin-top: 1.5em; }
div.content div.so-panel + div.so-panel { margin-top: 1.5em; }
div.headline { margin: 60px 0 0; }

@media screen and (max-width: 1024px) { 
  big, *.big { font-size: 15pt; }
  small, *.small { font-size: 7.5pt }
}

@media screen and (max-width: 768px) { 
  main div.panel-grid-cell + div.panel-grid-cell { margin-top: 1.5em; }
}


/* MAIN TEXT SIZING */
/* These styles control the basic font sizing of elements in the <main> section. */

big, *.big { font-size: 18pt; line-height: 1.5 }
small, *.small { font-size: 10pt; line-height: 1 }
main h3 { margin: 0 0 .25em; font-size: 20pt; font-weight: 700; line-height: 1.2; }
main h4 { margin: 0 0 .25em; font-size: 18pt; font-weight: 500; line-height: 1.2; }

@media screen and (max-width: 1024px) { 
  big, *.big { font-size: 15pt; line-height: 1.2 }
  small, *.small { font-size: 7.5pt; line-height: 1 }
  main h3 { font-size: 16.5pt; }
  main h4 { font-size: 15pt; }
}


/* MAIN BACKGROUND SHADING */
/* For 15% opacity colored backgrounds (.shaded-brown, .shaded-green, .shaded-teal) and 100% opacity colored backgrounds (.shaded-white), plus optional styles to add additional padding where required (.shaded-padding). */

.shaded { padding-top: 1.5em; padding-bottom: 1.5em; background: rgba(112,98,89,.10); }
.shaded-padding { padding-left: 1.5em; padding-right: 1.5em; }
.shaded-brown { padding-top: 1.5em; padding-bottom: 1.5em; background: rgba(223,210,203,.50); }
.shaded-green { padding-top: 1.5em; padding-bottom: 1.5em; background: rgba(226,242,215,.40); }
.shaded-teal { padding-top: 1.5em; padding-bottom: 1.5em; background: rgba(13,119,110,.10); }
.shaded-peach { padding-left: 1.5em; padding-right: 1.5em; background: rgba(241,86,57,.05); }
.shaded-white { padding-left: 1.5em; padding-right: 1.5em; background: #fff; }
.shaded-orange { padding-left: 1.5em; padding-right: 1.5em; background: #F15639; }
.shaded-greeny { padding-top: 1.5em; padding-bottom: 1.5em; background: #69923a; }


/* MAIN COLOR STYLING */
/* Color styling for text and links (.brown, .green, .teal) */

.brown, a[href].brown:link, a[href].hover:visited { color: #716258; }
.green, a[href].green:link, a[href].active:visited { color: #69923a; }
.teal, a[href].teal:link,  a[href].teal:visited { color: #0d776e; }
a[href]:hover, a[href]:active { color: #31251b !important; }


/* MAIN LINK STYLING */
/* Styling for link options for ul.link-list items and a.view-article items (which should have a filled carat after the link). */

a.view-article { display: inline-block; font-weight: 500; white-space: nowrap; transition: none; }
a.view-article:after { content: url("images/carat-green.png"); position: relative; top: -1px; margin-left: .5em; vertical-align: top; }
a.view-article:hover:after { content: url("images/carat-brown.png"); }
ul.link-list { list-style-type: none; margin-left: 0; padding-left: 0; font-weight: 500; }
ul.link-list a[href] { transition: none !important; }
ul.link-list.brown a[href]:link, ul.link-list.brown a[href]:visited { color: #716258; }
ul.link-list.green a[href]:link, ul.link-list.green a[href]:visited { color: #69923a; }
ul.link-list.teal a[href]:link, ul.link-list.teal a[href]:visited { color: #0d776e; }
ul.link-list a[href]:hover, ul.link-list a[href]:active { color: #31251b !important; }
ul.link-list li a[href]:after { content: url("images/carat-gray.png"); position: relative; top: -1px; margin-left: .5em; vertical-align: top; }
ul.link-list.brown li a[href]:after { content: url("images/carat-gray.png"); }
ul.link-list.green li a[href]:after { content: url("images/carat-green.png"); }
ul.link-list.teal li a[href]:after { content: url("images/carat-teal.png"); }
ul.link-list li:hover a[href]:after { content: url("images/carat-brown.png"); }


/* MAIN IMAGE STYLING */
/* Optional styles for images to add borders (.bordered) and styles to restrict widths of floated images (.wp-image, .aligncenter, .alignleft, .alignright) inserted through "add media" button. */

img.aligncenter { display: block; max-width: 800px; max-height: 600px; width: auto; height: auto; margin: 0 auto 1.5em; }
img.alignleft { float: left; max-width: 400px; max-height: 400px; width: auto; height: auto; margin: 0 1.5em 1.5em 0; }
img.alignright { float: right; max-width: 400px; max-height: 400px; width: auto; height: auto; margin: 0 0 1.5em 1.5em; }

img.bordered, div.bordered img { border: 2px solid #716258; }
img.bordered.brown, div.bordered.brown img { border-color: #31251b; }
img.bordered.green, div.bordered.green img { border-color: #69923a; }
img.bordered.teal, div.bordered.teal img { border-color: #0d776e; }
img.bordered.white, div.bordered.white img { border-color: #fff; }


@media screen and (max-width: 1024px) {
  img.aligncenter { max-width: 100%; }
}

@media screen and (max-width: 600px) {
  img[class*="wp-image-"] { max-width: 100%; height: auto !important; display: block; float: none !important; margin: 0 0 1.5em !important; }
}


/* HOVER 50% WHITE IMAGES */
/* Rollover image to show a 50% value hover effect */
div.rollWhite:hover img { opacity: 0.5; transition: .2s ease-in opacity; 
}


/* HERO BANNER STYLES */
/* These styles control the appearance of the hero banners that appear at the top of the page as well as the appearance of any SiteOrigin Headline widgets that appear in those banners. Background images should be set using row properties (not Hero Image widget). Minimum height should be set using the appropriate .hero* class. Color options (.brown, .green, .teal) control the color of the translucent background behind the <h1> and <h2> elements. */

#hero { padding: 280px 0 35px; box-shadow: 0px 20px 30px rgba(0,0,0,.25); }
#hero.hero200 { min-height: 200px; }
#hero.hero300 { min-height: 300px; }
#hero.hero400 { min-height: 400px; }
#hero.hero500 { min-height: 500px; }
#hero div.sow-headline-container { padding: 10px 10%; background: rgba(49,37,27,.5); background-blend-mode: multiply !important; color: #fff; text-align: center; }
#hero.brown div.sow-headline-container { background: rgba(49,37,27,.5); }
#hero.green div.sow-headline-container { background: rgba(105,146,58,.5); }
#hero.teal div.sow-headline-container { background: rgba(13,119,110,.5); }
#hero div.sow-headline-container h1 { margin: 0; padding: 0; font-size: 32pt; font-weight: 700; letter-spacing: -.009em; line-height: 1.2; text-transform: uppercase; }
#hero div.sow-headline-container h2 { margin: 0; padding: 0; font-size: 18pt; font-weight: 300; letter-spacing: -.02em; line-height: 1.2; }

@media screen and (max-width: 1024px) { 
  #hero { justify-content: flex-end !important; }
  #hero.hero200, #hero.hero300, #hero.hero400 { min-height: 200px; }
  #hero.hero500 { min-height: 300px; }
  #hero div.sow-headline-container { padding: 10px 30px; }
  #hero div.sow-headline-container h1 { font-size: 25pt; }
  #hero div.sow-headline-container h2 { font-size: 15pt; }
}

@media screen and (max-width: 768px) { 
  #hero.hero500 { min-height: 200px; }
}


/* ANCHOR MENU */
/* These styles are for formatting the anchor links beneath that appear beneath the hero banners on all top-level section pages. */

#anchors { background: #31251b; box-shadow: 0px 20px 30px rgba(0,0,0,.25); }
#anchors a[href] { display: block; font-size: 15pt; font-weight: 500; letter-spacing: .008em; line-height: 1.5; text-align: center; }
#anchors a[href]:link, #anchors a[href]:visited { color: #fff; }
#anchors a[href]:hover, #anchors a[href]:active { color: #716258 !important; }
#anchors ul { display: flex; list-style-type: none; width: 100%; margin: .5em 0; padding-left: 0; }
#anchors li { flex-basis: 25%; flex-grow: 1; }
#anchors li + li { border-left: 1px solid #fff; }

@media screen and (max-width: 768px) {
  #anchors ul { flex-wrap: wrap; }
  #anchors li { flex-basis: 100%; }
  #anchors li + li { border-top: 1px solid #fff; border-left: none; }
}

/* ALERT MENU */
/* These styles are for formatting the alert text bar that appears beneath the hero banners on public policy page. */

#alerts { background: #b5340c; box-shadow: 0px 20px 30px rgba(0,0,0,.25); }
#alerts a[href] { display: block; font-size: 15pt; font-weight: 500; letter-spacing: .008em; line-height: 1.5; text-align: center; }
#alerts a[href]:link, #alerts a[href]:visited { color: #fff229; }
#alerts a[href]:hover, #alerts a[href]:active { color: #ffffff !important; }
#alerts ul { display: flex; list-style-type: none; width: 100%; margin: .5em 0; padding-left: 0; }
#alerts li { flex-basis: 25%; flex-grow: 1; }
#alerts li + li { border-left: 1px solid #fff; }

@media screen and (max-width: 768px) {
  #alerts ul { flex-wrap: wrap; }
  #alerts li { flex-basis: 100%; }
  #alerts li + li { border-top: 1px solid #fff; border-left: none; }
}

/* HOMEPAGE ALERT MENU */
/* These styles are for formatting the alert text bar that appears beneath the hero banners on HOMEPAGE. */

#home-alerts { background: #69923a; box-shadow: 0px 20px 30px rgba(0,0,0,.25); }
#home-alerts a[href] { display: block; font-size: 17pt; font-weight: 500; letter-spacing: .008em; line-height: 1.75; text-align: center; }
#home-alerts a[href]:link, #home-alerts a[href]:visited { color: #fff; }
#home-alerts a[href]:hover, #home-alerts a[href]:active { color: #d4eb8d !important; }
#home-alerts ul { display: flex; list-style-type: none; width: 100%; margin: .5em 0; padding-left: 0; }
#home-alerts li { flex-basis: 25%; flex-grow: 1; }
#home-alerts li + li { border-left: 1px solid #fff; }

@media screen and (max-width: 768px) {
  #home-alerts ul { flex-wrap: wrap; }
  #home-alerts li { flex-basis: 100%; }
  #home-alerts li + li { border-top: 1px solid #fff; border-left: none; }
}



/* BILLBOARD */
/* Individual styles for the #billboard SiteOrigin Slider widget on the home page. */

#billboard { box-shadow: 0px 20px 30px rgba(0,0,0,.25); }
#billboard div.sow-slide-nav { display: none !important; }
#billboard img { opacity: 0 !important; }
#billboard ol.sow-slider-pagination { display: block !important; bottom: 1em !important; right: 10% !important; left: auto !important; padding: 0 !important; }

@media screen and (max-width: 1024px) { 
  #billboard ol.sow-slider-pagination { right: 30px !important; }
}


/* HEADLINES */
/* Styling for SiteOrigin Headline widgets in a .headline row. Color options on the widget (.brown, .green, .teal) control the text color and the lines to the side. */

.headline div.sow-headline-container { display: flex; align-items: center; width: 100%; margin: 0 0 50px; text-align: center; }
.headline div.sow-headline-container:before, .headline div.sow-headline-container:after { display: inline-block; content: ""; flex-grow: 0; flex-shrink: 1; border-top-color: #31251b; width: 45%;  border-top: 2px solid #716258; }
.headline div.sow-headline-container h2 { flex-grow: 1; flex-shrink: 0; max-width: 1600px; padding: 0 .75em; font-size: 30pt; font-weight: 400; line-height: 1.2 !important; letter-spacing: .004em; }
.headline div.sow-headline-container h2 big { font-size: 30pt; font-weight: 500; line-height: 1.2 !important; text-transform: uppercase; }
.headline .brown div.sow-headline-container:before, .headline .brown div.sow-headline-container:after { border-top-color: #716258; }
.headline .green div.sow-headline-container:before, .headline .green div.sow-headline-container:after { border-top-color: #69923a; }
.headline .teal div.sow-headline-container:before, .headline .teal div.sow-headline-container:after { border-top-color: #0d776e; }
.headline .black div.sow-headline-container:before, .headline .black div.sow-headline-container:after { border-top-color: #000; }

@media screen and (max-width: 1600px) {
  .headline div.sow-headline-container h2 { max-width: 90%; }
}

@media screen and (max-width: 1024px) { 
  .headline div.sow-headline-container h2, .headline div.sow-headline-container h2 big { font-size: 24pt; }
}


/* BLOCK-CARD */
/* Styling for block card components in a row or Layout Builder widget with the .block-card class. Block cards should consist of an SiteOrigin Image widget with the Destination URL set, followed by a SiteOrigin Editor widget. */

.block-card .panel-grid-cell:not(:empty) { border: 2px solid #716258; background: #fff; }
.block-card .panel-grid-cell:not(:empty), .block-card .panel-grid-cell:not(:empty) * { cursor: pointer; }
.block-card .panel-grid-cell img { opacity: 1; transition: .2s ease-in opacity; }
.block-card .panel-grid-cell:hover img { opacity: .5; }
.block-card .so-widget-sow-editor { padding: 15px 10px; }
.block-card .so-widget-sow-editor h3 { color: #0d776e; font-size: 12pt; font-weight: 700; line-height: 1.1; text-transform: uppercase; }
.block-card .so-widget-sow-editor p { font-size: 9pt; font-weight: 300; letter-spacing: -.01em; line-height: 1.25 ; }
.block-card div.so-panel + div.so-panel { margin-top: 0 !important; }

@media screen and (max-width: 768px) {
  .block-card, .block-card .panel-grid { align-items: center !important; }
  .block-card .panel-grid-cell:not(:empty) { max-width: 300px; }
}


/* BLOCK-IMAGE */
/* Styling for block-image components in a row or Layout Builder widget with the .block-image class (as seen on the "More Ways to Give" page and the "Gardens and Greenspace" pages). Block Images should consist of an SiteOrigin Image widget with the Destination URL set, as well as title text set to display below the image. */

.block-image div.so-widget-sow-image { position: relative; }
.block-image div.so-widget-sow-image h3 { display: block; position: absolute; bottom: 0; left: 0; width: 100%; margin: 0; padding: 10px; background: rgba(49,37,27,.5); color: #fff !important; font-weight: 400; text-align: center; }
.block-image div.so-widget-sow-image img { transition: .2s ease-in opacity; opacity: 1; }
.block-image div.so-widget-sow-image:hover img { opacity: .5; }

@media screen and (max-width: 768px) {
  .block-image, .block-image .panel-grid { align-items: center !important; }
  .block-image .panel-grid-cell:not(:empty) { max-width: 400px; }
}

/* BLOCK-IMAGE-2 */
/* SAME AS BLOCK-IMAGE BUT WITHOUT THE 50% ROLL TO WHITE - jm - Styling for block-image-2 components in a row or Layout Builder widget with the .block-image class (as seen on the "Bear Run Nature Reserves" page). Block Images should consist of an SiteOrigin Image widget with the Destination URL set, as well as title text set to display below the image. */

.block-image-2 div.so-widget-sow-image { position: relative; }
.block-image-2 div.so-widget-sow-image h3 { display: block; position: absolute; bottom: 0; left: 0; width: 100%; margin: 0; padding: 10px; background: rgba(49,37,27,.5); color: #fff !important; font-weight: 400; text-align: center; }
.block-image-2 div.so-widget-sow-image img { transition: .2s ease-in opacity; opacity: 1; }
.block-image-2 div.so-widget-sow-image:hover img { opacity: 1; }

@media screen and (max-width: 768px) {
  .block-image-2, .block-image .panel-grid { align-items: center !important; }
  .block-image-2 .panel-grid-cell:not(:empty) { max-width: 400px; }
}

/* CAROUSEL */
/* Styling for SiteOrigin Layout Slider widgets with the .carousel class (currently only used on the hompe page under "Explore Our Properties.") Use the .carousel* class to set the minimum height of elements. See the SiteOrigin Layout Slider itself for structural considerations. */

.carousel div.panel-grid-cell:not(:empty) { display: flex; flex-direction: column; justify-content: flex-end; padding: 40px 20px; background: rgba(49,37,27,.5); }
.carousel300 div.panel-grid-cell { min-height: 300px; }
.carousel400 div.panel-grid-cell { min-height: 400px; }
.carousel a[href] { font-weight: 500; text-transform: uppercase; }
.carousel a[href]:after { content: url("images/carat-white.png"); position: relative; top: 1px; margin-left: .5em; vertical-align: top; }
.carousel a[href]:link, .carousel a[href]:visited { color: #fff; }
.carousel a[href]:hover, .carousel a[href]:active { color: #d4eb8d !important; }
.carousel a[href]:hover:after { content: url("images/carat-green-bright.png"); }
.carousel div.sow-slide-nav { display: none !important; }
.carousel h3 { border-bottom: 1px solid #fff; padding-bottom: .25em; font-size: 15pt; font-weight: 700; letter-spacing: -.01em; line-height: .9 !important; text-shadow: none !important; text-transform: uppercase; }
.carousel ol.sow-slider-pagination { display: block !important; }
.carousel p { font-size: 9pt; letter-spacing: -.01em; line-height: 1.2em; }

@media screen and (max-width: 768px) {
  .carousel div.panel-grid-cell:not(:empty) { padding: 40px 20px !important; }
}


/* IMAGE-CARD */
/* Styling for the image-card components in a row or Layout Builder widget with the .image-card class (currently only used on the home page beneath the introductory text). Image cards should consist of a SiteOrigin Image widget with the Destination URL set, as well as title text set to display above the image. Color options (.brown, .green, .teal) control the background color that goes behind text. */

.image-card h3 { display: flex; flex-direction: column; justify-content: flex-end; min-height: calc(47.25pt+60px); margin: 0; padding: 55px 10px 10px; background: #716258; color: #fff; font-size: 13.5pt; font-weight: 500; letter-spacing: -.025em; line-height: 1.05em; text-transform: uppercase; transition: .2s ease-in background; }
.image-card div.brown h3 { background: #716258; }
.image-card div.green h3 { background: #69923a; }
.image-card div.teal h3 { background: #0d776e; }
.image-card .panel-grid-cell img { opacity: 1; transition: .2s ease-in opacity; }
.image-card .panel-grid-cell:hover div h3 { background: rgba(112,98,89,.75); }
.image-card .panel-grid-cell:hover div.brown h3 { background: rgba(49,37,27,.75); }
.image-card .panel-grid-cell:hover div.green h3 { background: rgba(105,146,58,.75); }
.image-card .panel-grid-cell:hover div.teal h3 { background: rgba(13,119,110,.75); }
.image-card .panel-grid-cell:hover img { opacity: .5; }
.image-card .panel-grid-cell:not(:empty), .block-card .panel-grid-cell:not(:empty) * { cursor: pointer; }

@media screen and (max-width: 768px) {
  .image-card, .image-card .panel-grid { align-items: center !important; }
  .image-card .panel-grid-cell:not(:empty) { max-width: 240px; }
}


/* SEARCH FORM */
/* Styling for in-page search submission forms in the <main> section (NOT the search form in the <header>. */

.search-inpage button.search-submit { float: right; font-size: 13.5pt; border: 0; border-radius: 0; padding: 5px 10px 6px; background: #7f7f75; color: #fff; line-height: 140%; vertical-align: top; transition: .1s ease-in all; }
.search-inpage button.search-submit:hover { background: #515140; }
.search-inpage input { display: inline-block; margin: 0; vertical-align: top; }
.search-inpage input[type="search"] { width: 80%; border: 0; padding: 6px 10px; font-size: 13.5pt; line-height: 140%; vertical-align: top; background: transparent; }
.search-inpage form { display: block;  margin-bottom: 60px; overflow: hidden; padding: 0; border: 1px solid #ccc; background: #fff; box-shadow: 0 0 15px rgba(0,0,0,.1); }


/* THUMBNAILS */
/* Styles for aligning thumbnail images (as seen on the "Community Gardens" and "Community Forestry" pages). Thumbnail components should consist of a row with the .thumbnails class containing SiteOrigin Editor widgets containing an image and link. */

.thumbnails div.textwidget br { display: none; }
.thumbnails div.textwidget img { flex-grow: 0; flex-shrink: 0; margin: 0 .5em 0 0 !important; }
.thumbnails div.textwidget p { display: flex; justify-content: flex-start; align-items: center; margin: 0; padding: 0; font-size: 20.25pt; line-height: 1.05; }


/* WATERMARKED */
/* Additional styling for elements with watermarked backgrounds (currently only used on the home page). */

.watermarked { background-position: 50% 50% !important; background-repeat: no-repeat !important; background-size: contain !important; }


/* HOME PAGE NEWSLETTER SPOTLIGHT */
/* Additional styling for the newsletter area on the home page. */

#home-newsletter div.sow-headline-container { display: block; margin: 0; }
#home-newsletter div.sow-headline-container::before, #home-newsletter div.sow-headline-container::after { display: none; }
#home-newsletter div.textwidget { padding: 15px; background: #fff; }
#home-newsletter h3 { margin: 0; color: #69923a; font-size: 20pt; font-weight: 700; line-height: 1.4; }
#home-newsletter h3 a[href] { color: #69923a !important; transition: none; }
#home-newsletter h3 a[href]:after { content: url("images/carat-green.png"); position: relative; top: -4px; margin-left: .25em; vertical-align: top; }
#home-newsletter h3 a[href]:hover { color: #31251b !important; }
#home-newsletter h3 a[href]:hover:after { content: url("images/carat-brown.png"); }
#home-newsletter h4 { margin: 0; color: #69923a; font-size: 12pt; font-weight: 500; letter-spacing: -.01em; line-height: 1.3; }
#home-newsletter h4:first-child { border-bottom: 1px solid #69923a; text-transform: lowercase; }
#home-newsletter h5 { margin: 0 0 1em; color: #69923a; font-size: 12pt; font-weight: 300; letter-spacing: -.01em; line-height: 1.3; text-transform: uppercase; }
#home-newsletter p { font-size: 11.25pt; font-weight: 300; letter-spacing: -.01em; line-height: 1.4em; }
#home-newsletter ul { margin-left: 0; padding-left: 1em; font-size: 11.25pt; font-weight: 300; letter-spacing: -.01em; line-height: 1.4em; }


/* HOME PAGE NEWS SPOTLIGHT */
/* Additional styling for the news listing on the home page. */

#home-news a.iw-so-article-btn { display: inline-block; margin: 0; border: 0; padding: 0; background: transparent; font-size: 11.25pt; font-weight: 500; white-space: nowrap; transition: none; }
#home-news a.iw-so-article-btn:after { content: url("images/carat-teal.png"); position: relative; margin-left: .25em; vertical-align: top; }
#home-news a.iw-so-article-btn:hover:after { content: url("images/carat-brown.png"); }
#home-news a[href].iw-so-article-btn:link, #home-news a[href].iw-so-article-btn:visited { color: #0d776e; }
#home-news div.iw-so-article-button { text-align: left; }
#home-news div.iw-so-article-content { padding: 0 !important; background: #fff; }
#home-news div.iw-so-blog-container { padding: 15px; background: #fff; }
#home-news div.sow-headline-container { display: block; margin: 0; text-align: left; }
#home-news div.sow-headline-container::before, #home-news div.sow-headline-container::after { display: none; }
#home-news h3 { margin: 0; color: #0d776e; font-size: 20pt; font-weight: 700; line-height: 1.4;  text-transform: uppercase; }
#home-news h3 a[href] { color: #0d776e !important; transition: none; }
#home-news h3 a[href]:after { content: url("images/carat-teal.png"); position: relative; top: -4px; margin-left: .25em; vertical-align: top; }
#home-news h3 a[href]:hover { color: #31251b !important; }
#home-news h3 a[href]:hover:after { content: url("images/carat-brown.png"); }
#home-news h4 { margin: 0; font-size: 12pt; font-weight: 500; letter-spacing: -.01em; line-height: 1.3; text-transform: uppercase; }
#home-news h4 a[href]:link, #home-news h4 a[href]:visited { color: #0d776e; }
#home-news p { margin: 0; font-size: 11.25pt; font-weight: 300; letter-spacing: -.01em; line-height: 1.4em; }
#home-news p.iw-so-article-byline-below { color: #0d776e; font-size: 12pt; font-weight: 500; line-height: 1.3; }


/* EVENTS GRID */
/* Styling for an "events-grid" consisting of a 3-across layout of events, with title and date overlaid on top of the featured image. Currently only being used on the home page. */

div.events-grid { display: flex; flex-flow: row wrap; justify-content: center; }
div.events-grid > a[href] { flex-grow: 0; flex-shrink: 1; flex-basis: 30%; position: relative; max-width: 400px; margin: .75em; }
div.events-grid > a[href] div { display: flex; justify-content: space-between; align-items: center; position: absolute; bottom: 0; left: 0; width: 100%; padding: 10px; background: rgba(49,37,27,.5); }
div.events-grid > a[href] img { display: block; width: 100%; height: auto; }
div.events-grid > a[href] h3 { margin: 0; color: #fff !important; }
div.events-grid > a[href] h3.event-date { flex-grow: 1; flex-shrink: 0; flex-basis: 33%; font-size: 25pt; font-weight: 700; letter-spacing: -.01; line-height: 1.2; white-space: nowrap; }
div.events-grid > a[href] h3.event-title { flex-grow: 1; flex-shrink: 1; flex-basis: 67%; padding-left: 10px; font-size: 11pt; font-weight: 500; letter-spacing: -.01; line-height: 1.1 !important; }
div.events-grid > a[href] img { transition: .2s ease-in opacity; opacity: 1; }
div.events-grid > a[href]:hover img { opacity: .5; }

@media screen and (max-width: 1024px) {
  div.events-grid { flex-direction: column; align-items: center;  }
}

@media screen and (max-width: 768px) {
  div.events-grid > a[href] { flex-basis: 100%; }
}


/* EVENTS LIST */
/* Styling for an "events-list" consistent of a consecutive listing of events, with featured images in the left column and title, date, and content in the right column. Being used on pages with one of the Events page templates. */

div.events-list { display: flex; flex-flow: column; text-align: left; width: 100%; }
div.events-list > div { display: flex; flex-flow: row nowrap; align-items: flex-start; padding: 0em 0em 5em 0em; margin-bottom: 5em; border-bottom: 2px solid #69923a; }
div.events-list > div > img { flex-shrink: 0; margin-right: 1.5em; width: 33vw; max-width: 400px; height: auto; border: 2px solid #716258}

@media screen and (max-width: 768px) {
  div.events-list > div { flex-direction: column; }
  div.events-list > div > img { width: 100%; margin-right: 0; margin-bottom: 5em; }
}




/* EVENTS CAROUSEL */
/* Additional styling for the LiveMesh Carousel on the home page that switches between multiple panels containing [events_trio] shortcodes. . */

#events-carousel button.slick-next, #events-carousel button.slick-prev { z-index: 5000; top: 50%; width: 36px; height: 64px; opacity: .2; cursor: pointer; transform: translateY(-50%); }
#events-carousel button.slick-next:hover, #events-carousel button.slick-prev:hover { opacity: .8 !important; }
#events-carousel button.slick-next { right: -36px; }
#events-carousel button.slick-prev { left: -36px; }
#events-carousel button.slick-next:before { content: url("images/carousel-next.png"); }
#events-carousel button.slick-prev:before { content: url("images/carousel-prev.png"); }

@media screen and (max-width: 1024px) {
  #events-carousel button.slick-next, #events-carousel button.slick-prev { display: block !important; }
  #events-carousel button.slick-next { right: -24px; }
  #events-carousel button.slick-prev { left: -24px; }
}
/* DONATIONS MENU (HEADER)
Styles for the donations menu that appears within the .shaded-brown area.

ul#menu-donations-menu { display: flex; justify-content: space-between; list-style-type: none; margin: 0; padding: 0;  }
ul#menu-donations-menu li { display: flex; justify-content: center; flex-basis: calc(25% - 1.125em); background: #69923a; box-shadow: 1px 1px 1px rgba(0,0,0,.3); transition: .2s ease-in background; }
ul#menu-donations-menu li:hover, ul#menu-donations-menu li.current-menu-item { background: #0d776e; }
ul#menu-donations-menu a[href] { display: flex; justify-content: center; align-items: center; width: 100%; padding: .6em; color: #fff; font-size: 17.25pt; font-weight: 700; letter-spacing: -.024em; line-height: .9; text-align: center; text-transform: uppercase;  }
ul#menu-donations-menu li a[href]:hover { color: #fff !important; }

@media screen and (max-width: 1024px) {
  ul#menu-donations-menu a[href] { padding: .3em; }
}

@media screen and (max-width: 768px) {
  ul#menu-donations-menu { flex-wrap: wrap; }
  ul#menu-donations-menu li { flex-basis: calc(50% - .25em); margin-bottom: .5em; }
}

/* DONATIONS MENU 2 (HEADER) TESTING 122818
Styles for the donations menu that appears within the .shaded-brown area.

ul#menu-donations-menu-2 { display: flex; justify-content: space-between; list-style-type: none; margin: 0; padding: 0;  }
ul#menu-donations-menu-2 li { display: flex; justify-content: center; flex-basis: calc(25% - 1.125em); background: #69923a; box-shadow: 1px 1px 1px rgba(0,0,0,.3); transition: .2s ease-in background; }
ul#menu-donations-menu-2 li:hover, ul#menu-donations-menu-2 li.current-menu-item { background: #0d776e; }
ul#menu-donations-menu-2 a[href] { display: flex; justify-content: center; align-items: center; width: 100%; padding: .6em; color: #fff; font-size: 17.25pt; font-weight: 700; letter-spacing: -.024em; line-height: .9; text-align: center; text-transform: uppercase;  }
ul#menu-donations-menu-2 li a[href]:hover { color: #fff !important; }

@media screen and (max-width: 1024px) {
  ul#menu-donations-menu-2 a[href] { padding: .3em; }
}

@media screen and (max-width: 768px) {
  ul#menu-donations-menu-2 { flex-wrap: wrap; }
  ul#menu-donations-menu-2 li { flex-basis: calc(50% - .25em); margin-bottom: .5em; }
} */

/* DONATENEW - DONATIONS MENU REPAIR 122818 - JM/LC - pulling 4 button donations menu back from id to just a class to work on more pages*/
/* Styles for the donations menu that appears within the .shaded-brown area. Should work for any page. */

.donatenew ul { display: flex; justify-content: space-between; list-style-type: none; margin: 0; padding: 0;  }
.donatenew li { display: flex; justify-content: center; flex-basis: calc(25% - 1.125em); background: #69923a; box-shadow: 1px 1px 1px rgba(0,0,0,.3); transition: .2s ease-in background; }
.donatenew li:hover, .donatenew li.current-menu-item { background: #0d776e; }
.donatenew a[href] { display: flex; justify-content: center; align-items: center; width: 100%; padding: .6em; color: #fff; font-size: 17.25pt; font-weight: 700; letter-spacing: -.024em; line-height: .9; text-align: center; text-transform: uppercase;  }
.donatenew li a[href]:hover { color: #fff !important; }

@media screen and (max-width: 1024px) {
  .donatenew a[href] { padding: .3em; }
}

@media screen and (max-width: 768px) {
  .donatenew { flex-wrap: wrap; }
  .donatenew li { flex-basis: calc(50% - .25em); margin-bottom: .5em; }
}

/* DONATIONS MENU (FOOTER) */
/* Styles for the dontations menu that appears in the right-hand side of the .donations-footer Layout Builder widget on interior pages. */

.donations-footer ul { display: flex; flex-wrap: wrap; justify-content: space-between; list-style-type: none; margin: 0; padding: 0; }
.donations-footer li { display: flex; flex-basis: calc(50% - .25em) !important; justify-content: center; margin-bottom: .5em; border: 2px solid #69923a; background: #fff !important; box-shadow: none !important;  }
.donations-footer li:hover, .donations-footer li.current-menu-item { background: #d4eb8d !important; }
.donations-footer li a[href] { display: flex; flex-direction: column; justify-content: center; align-items: center;width: 100%;  padding: .5em .25em !important; color: #69923a !important; font-size: 11pt !important; font-weight: 700; letter-spacing: -.24; line-height: 1.2 !important; text-align: center; white-space: nowrap; text-transform: uppercase; }
.donations-footer li a[href]:hover { color: #69923a !important; }

/* DONATIONS LINKS */
/* Styles for the donation link buttons that specify a specific amount (used on the "make a donation" pages). */

ul.link-donate { display: flex; justify-content: flex-start; list-style-type: none; margin: 0; padding: 0; }
ul.link-donate li { display: flex; justify-content: center; flex-basis: 15%; flex-grow: 1; flex-shrink: 1; margin-right: .25em; border: 2px solid #69923a; background: #fff; transition: .2s ease-in background; }
ul.link-donate li:hover { background: #d4eb8d; }
ul.link-donate a[href] { display: flex; flex-direction: column; justify-content: center; align-items: center; min-height: 34pt; padding: .5em; color: #69923a !important; font-size: 8.25pt; font-weight: 400; letter-spacing: -.09; line-height: 1.2; text-align: center; }
ul.link-donate a[href] strong { font-size: 18.75pt; font-weight: 700; letter-spacing: -.01em; line-height: .9; }

@media screen and (max-width: 768px) {
  ul.link-donate { flex-wrap: wrap; }
  ul.link-donate li { flex-basis: calc(50% - .25em); margin-bottom: .25em; } 
}


/* NEWS */
/* Styling for post listings using the Inked Blog widget that have the .news-list class. */

.news-list a.iw-so-article-btn { display: inline-block; margin: 0; border: 0; padding: 0; background: transparent !important; font-size: 11.25pt; font-weight: 500; white-space: nowrap; transition: none; }
.news-list a.iw-so-article-btn:after { content: url("images/carat-green.png"); position: relative; margin-left: .25em; vertical-align: top; }
.news-list a.iw-so-article-btn:hover:after { content: url("images/carat-brown.png"); }
.news-list a[href].iw-so-article-btn:link, .news-list a[href].iw-so-article-btn:visited { color: #69923a; }
.news-list div.iw-so-article-button { text-align: left; }
.news-list div.iw-so-article-content { padding: 0 !important; background: #fff; }
.news-list div.iw-so-blog-container { padding: 15px; background: #fff; }
.news-list div.sow-headline-container { display: block; margin: 0; text-align: left; }
.news-list div.sow-headline-container::before, .news-list div.sow-headline-container::after { display: none; }
.news-list h3 { margin: 0; font-size: 12pt; font-weight: 500; letter-spacing: -.01em; line-height: 1.3; text-transform: uppercase; }
.news-list h3 a[href]:link, .news-list h4 a[href]:visited { color: #69923a; }
.news-list nav#iw-so-blog-pagination h3 { display: none; }
.news-list nav#iw-so-blog-pagination a[href], .news-list nav#iw-so-blog-pagination span.current { border: 0 !important; padding: 0 .25em !important; background: transparent !important; box-shadow: none !important; font-size: 12pt !important; }
.news-list nav#iw-so-blog-pagination span.current { color: #716258 !important; }
.news-list p { margin: 0; font-size: 11.25pt; font-weight: 300; letter-spacing: -.01em; line-height: 1.4em; }
.news-list p.iw-so-article-byline-below { color: #69923a; font-size: 12pt; font-weight: 500; line-height: 1.3; }



/* NEWSLETTER */
/* Styling for Benchmark Email Light newsletter subscription form, which should be called out via shortcode in an object with the #newsletter ID. */

#newsletter form.benchmarkemaillite-subscribe { }
#newsletter form.benchmarkemaillite-subscribe div { font-size: 13.5pt; margin-bottom: .25em; }
#newsletter form.benchmarkemaillite-subscribe input[type="email"], #newsletter form.benchmarkemaillite-subscribe input[type="text"] { display: block; width: 100%; border: 1px solid #0d776e; padding: .25em .5em; }
#newsletter form.benchmarkemaillite-subscribe input[type="submit"] { width: 100%; margin-top: .25em; border: 0; border-radius: 0; padding: .25em .5em; background: #0d776e; font-size: 18pt; font-weight: 500; color: #fff; text-transform: uppercase; transition: .2s ease-in background, .2s ease-in hover; }
#newsletter form.benchmarkemaillite-subscribe input[type="submit"]:hover { background: #074f51; color: #d4eb8d; }


/* NEWSLETTER SUBSCRIPTION BUTTON */
/* Additional stylng for newsletter subscription buttons, as seen in the page footer and on the home page in the newsletter spotlight. */

a[href].newsletter-subscribe { display: inline-block; margin-top: .25em; padding: .25em .5em; font-size: 14.25pt; font-weight: 500; text-align: center; text-transform: uppercase; box-shadow: 1px 1px 1px rgba(0,0,0,.3); }
a[href].newsletter-subscribe:link, a[href].newsletter-subscribe:visited { color: #fff; background: #69923a; }
a[href].newsletter-subscribe:hover, a[href].newsletter-subscribe:active { color: #fff !important;  background: #d4eb8d; }


/* TEMPORARY EVENTS CAROUSEL FIX */

#events-temp .sow-slider-pagination { display: block !important; transform: translateY(20px); }
#events-temp .sow-slide-nav-next { display: block !important; transform: translateX(20px); }
#events-temp .sow-slide-nav-prev { display: block !important; transform: translateX(-20px); }

/* GDPR ACCEPT BUTTON */
/* Additional stylng for newsletter subscription buttons, as seen in the page footer and on the home page in the newsletter spotlight. */

a[href].accept-button { display: inline-block; margin-top: .25em; padding: .25em .5em; font-size: 14.25pt; font-weight: 500; text-align: center; text-transform: uppercase; box-shadow: 1px 1px 1px rgba(0,0,0,.3); }
a[href].accept-button:link, a[href].accept-button:visited { color: #fff; background: #0d776e; width: 100px; padding: 10px}
a[href].accept-button:hover, a[href].accept-button:active { color: #fff !important;  background: #666; }

#postrow {
    display: flex;
    justify-content: center;
	width:800px;
}
.postrow item {
    display:block;
    float:left;
    margin-left:25px;
    position:relative;
    padding-bottom:10px;
    text-align:center;
}