/*
Theme Name: Steam Whistle
Author: iSTORM New Media
Description: Blog theme for Steam Whistle
Version: 1.0
*/

* { box-sizing:border-box; }
body { display:flex; margin:0; min-height: 100vh; flex-direction: column; height: 100%; box-sizing:border-box; font-family:GeorgiaPro, Georgia, 'serif'; }

.visually-hidden, .screen-reader-text { position: absolute !important; clip: rect(1px, 1px, 1px, 1px); overflow: hidden; height: 1px; width: 1px; word-wrap: normal; }

h1, h2, h3, h4 { font-family:Neutraface, Helvetica, Arial, 'sans-serif'; }

.layout-container { flex: 1 0 auto; }
.contentwidth { position:relative; margin:0 auto; padding-left:25px; padding-right:25px; max-width:1100px; width:100%; }

header { position:fixed; width:100%; height:135px; z-index: 500; background-color:rgba(7,158,0,1); transition: all 200ms linear; }
header .contentwidth { display:block; height:100%;     max-width: 100%;}
header .region-header { padding-left:150px;  padding-right:50px; }
header #block-steamwhistle-branding { opacity:1;  visibility: visible; position:absolute; top:0; left:0; height:135px; transition: all 200ms linear; }
header .site-logo img { width:auto; height:135px; padding-left:20px; padding-top:20px; padding-bottom:15px; transition: all 200ms linear; }
header .site-name { position: absolute !important; clip: rect(1px, 1px, 1px, 1px); overflow: hidden; height: 1px; width: 1px; word-wrap: normal; }
.nav-open header #block-steamwhistle-branding { }
/*.nav-open .site-logo img {  height:70px; padding-top:10px; padding-bottom:5px !important; margin-top:32px; }*/

header nav, header nav.contextual-region { position:absolute; top:0; right:-50px; margin-right:75px; margin-left:220px; height:135px;  opacity:0;  visibility:hidden;  transition: all 200ms linear; }
/*.nav-open header nav { right:0px; opacity:1;  visibility: visible; } */
header nav .menu-main-menu-container { height:100%; }
header nav ul.menu {  display:flex; align-items: center; padding:0; justify-content: center; height:100%;  margin:0; list-style:none; }
header nav ul.menu li { position:relative; padding:10px; text-align:center;  transition: all 200ms linear; }
header nav ul.menu a, header nav ul.menu a.is-active { font-family:Neutraface, Helvetica, Arial, 'sans-serif'; text-transform:uppercase; color:#ffffff; text-decoration:none; }
header nav ul.menu li ul { display: none; opacity:0; position: absolute; left:0; min-width: 210px; height: auto; margin:0; padding:10px 0 0 0; }
header nav ul.menu li.last ul { left:auto; right:0; }
header nav ul.menu li ul.open { display:table; opacity:1; }
header nav ul.menu li ul li { display:table-row;flex:initial; margin:0; padding:0; text-align:left; }
header nav ul.menu li ul li a { display:table-cell; width:100%; padding:10px; background-color:#056e00; border-top:4px solid #056e00; border-bottom:4px solid #056e00; }
header nav ul.menu li ul li a:hover { background-color:#079e00; }

header nav ul.menu .plus { cursor:pointer; position:absolute; right:0; top:0; display:none; padding:0; width:40px; height:35px; }
header nav ul.menu .plus.open, header nav ul.menu .open .plus { }
header nav ul.menu .plus::before, header nav ul.menu .plus::after { content:""; display:block; position:absolute; z-index:205; top:50%; width:50%; height:3px; background-color:#ffffff; -webkit-transition: all 100ms ease-in; -moz-transition: all 100ms ease-in; -ms-transition: all 100ms ease-in; -o-transition: all 100ms ease-in; transition: all 100ms ease-in; }
header nav ul.menu .plus::before { left:0; transform:rotate(180deg); }
header nav ul.menu .plus::after { right:20px; transform:rotate(90deg); }
header nav ul.menu .plus.open::before, header nav ul.menu .open .plus::before {  }
header nav ul.menu .plus.open::after, header nav ul.menu .open .plus::after { left:0; transform:rotate(180deg); }

header #mmButton { position:absolute; top:59px; right:20px; cursor: pointer; width:30px; height:21px; z-index: 201; transition: all 200ms linear; }
header #mmButton span { display:block; position:absolute; z-index:205; top:8px; left:0; width:100%; height:4px; background: #ffffff; }
header #mmButton::before, header #mmButton::after { content:""; display:block; position:absolute; z-index:205; left:0; width:100%; height:4px; background-color:#ffffff;  }
header #mmButton::before { top:0; }
header #mmButton::after { top:16px; }
#mmButton span, #mmButton::before, #mmButton::after { transition: all 100ms linear; }
/*
.nav-open header #mmButton div { position:absolute; left:65px; top:4px; color:rgba(255,255,255,1); }
.nav-open header #mmButton span { transform:rotate(45deg); background:transparent; }
.nav-open header #mmButton::before, .nav-open header #mmButton::after { top:8px; }
.nav-open header #mmButton::before { transform:rotate(45deg); }
.nav-open header #mmButton::after { transform:rotate(-45deg); }
*/

header.small { height:70px;  background-color:rgba(7,158,0,1); }
header.small .site-logo img { height:70px; padding-top:10px; padding-bottom:5px !important; margin-top:0 !important; }
header.small nav { height:70px; }
header.small #mmButton { top:25px; }

article { margin-top:200px; }
article .toptext { text-align:center; }
h1 { margin-top: 0; margin-bottom: 50px; font-size: 60px; line-height: .94em; color: #079e00; font-weight: 700; text-transform: uppercase; }

.wp-block-image { margin: 1em auto }
.wp-block-image figcaption { margin-top: 0.75em;margin-bottom: 1em;color: #555d66;text-align: left; font-size: 15px; line-height: 1.4em; font-style: italic;}
.wp-block-gallery figcaption { font-size: 15px; line-height: 1.4em; }

.catmenu { position:relative; margin-bottom:55px; }
.catmenu ul { list-style:none; padding:0; margin:0; text-align:center; border-top:1px solid #77787b; border-bottom:1px solid #77787b; }
.catmenu ul li { display:inline-block; }
.catmenu ul li a { display:block; padding:10px 20px; font-family:Neutraface, Helvetica, Arial, 'sans-serif'; font-size:20px; font-weight:600; color:#000000; text-decoration:none; border-top:3px solid transparent; border-bottom:3px solid transparent; transition: all 200ms linear; }
.catmenu ul li a:hover, .catmenu ul li.current-cat a { color:#000000; text-decoration:none; border-bottom:3px solid #079e00; }
.catmenu ul li.search { position:relative; }
.catmenu ul li.search .searchcontent { position:relative; height:32px; display:inline-block; vertical-align:middle; }
.catmenu ul li.search img#searchimg { position:absolute; width:21px; height:21px; vertical-align: bottom; cursor:pointer; }
.catmenu ul li.search.active img#searchimg { opacity:0; visibility: hidden; height:0; }
.catmenu ul li.search #searchform { position:absolute; opacity:0; visibility: hidden; height:0; transition: all 200ms linear; }
.catmenu ul li.search.active #searchform { position:relative; margin-top: -5px; visibility: visible; opacity:1; height:30px; width:100%; }
.catmenu ul li.search #searchform div {  display: none;  }
.catmenu ul li.search.active #searchform div {  display: block;  }
.catmenu ul li.search #searchform input[type=text] { width:0; transition: all 200ms linear; outline:none; }
.catmenu ul li.search.active #searchform input[type=text] { padding:12px 30px 10px 12px; width:150px; background-color:#e0e1e4; border:none; border-radius:50px; }
.catmenu ul li.search.active #searchform input[type=submit] { position:absolute; right:10px; top:7px; width:21px; height:21px; background-color:transparent; background-image:url(img/search.svg); background-repeat:no-repeat; background-size:21px; border:none; text-indent:-9999px; outline:none; }
.catmenu-mobile { display:none; position:relative;     margin-bottom: 20px; }
.catmenu-mobile .category-title {text-align:center; font-family:Neutraface, Helvetica, Arial, 'sans-serif';font-size: 20px;     font-weight: 600;padding: 10px 20px;position: relative;     border-top: 1px solid #77787b;border-bottom: 1px solid #77787b;}
.catmenu-mobile .category-title .hamburger-menu {    position: absolute; top: 10px;right: 20px;cursor: pointer;width: 30px;height: 21px;z-index: 201;transition: all 200ms linear;     transition: all 200ms linear;}
.catmenu-mobile .category-title .hamburger-menu span {display: block;position: absolute;z-index: 205;top: 8px;left: 0;width: 100%;height: 4px;background: black;}
.catmenu-mobile .category-title .hamburger-menu::before, .catmenu-mobile .category-title .hamburger-menu::after {content: "";display: block;position: absolute;z-index: 205;left: 0;width: 100%;height: 4px;background-color: black;}
.catmenu-mobile .category-title .hamburger-menu::before {top: 0;}
.catmenu-mobile .category-title .hamburger-menu::after {bottom: 1px;}
.catmenu-mobile.open .category-title .hamburger-menu {}
.catmenu-mobile.open .category-title .hamburger-menu span {    transform: rotate(45deg);background: transparent;}
.catmenu-mobile.open .category-title .hamburger-menu::before {    transform: rotate(45deg); top:10px;}
.catmenu-mobile.open .category-title .hamburger-menu::after {    transform: rotate(-45deg); bottom:7px;}
.catmenu-mobile ul { display:none; list-style:none; padding:0; margin:0; text-align:center; border-bottom:1px solid #77787b; }
.catmenu-mobile ul li { display:block; }
.catmenu-mobile ul li a { display:block; padding:10px 20px; font-family:Neutraface, Helvetica, Arial, 'sans-serif'; font-size:20px; font-weight:600; color:#000000; text-decoration:none; border-top:3px solid transparent; border-bottom:3px solid transparent; transition: all 200ms linear; }
.catmenu-mobile ul li a:hover, .catmenu ul li.current-cat a { color:#000000; text-decoration:none; border-bottom:3px solid #079e00; }
.catmenu-mobile ul li.search { position:relative; margin-bottom: 10px;}
.catmenu-mobile ul li.search .searchcontent { position:relative; height:32px; display:inline-block; vertical-align:middle; }
.catmenu-mobile ul li.search #searchform-mobile { position:absolute; opacity:0; visibility: hidden; height:0; transition: all 200ms linear; }
.catmenu-mobile ul li.search #searchform-mobile { position:relative; margin-top: -5px; visibility: visible; opacity:1; height:30px; width:100%; }
.catmenu-mobile ul li.search #searchform-mobile div {  display: block;  }
.catmenu-mobile ul li.search #searchform-mobile input[type=text] { width:0; transition: all 200ms linear; outline:none; }
.catmenu-mobile ul li.search #searchform-mobile input[type=text] { padding:12px 30px 10px 12px; width:150px; background-color:#e0e1e4; border:none; border-radius:50px; }
.catmenu-mobile ul li.search #searchform-mobile input[type=submit] { position:absolute; right:10px; top:7px; width:21px; height:21px; background-color:transparent; background-image:url(img/search.svg); background-repeat:no-repeat; background-size:21px; border:none; text-indent:-9999px; outline:none; }

h2.archive-title { text-align: center; }
.archivemenu { position:relative; margin-bottom:55px; }
.archivemenu ul { list-style:none; padding:0; margin:0; text-align:center; border-top:1px solid #77787b; border-bottom:1px solid #77787b; }
.archivemenu ul li { display:inline-block; }
.archivemenu ul li a { display:block; padding:10px 20px; font-family:Neutraface, Helvetica, Arial, 'sans-serif'; font-size:20px; font-weight:600; color:#000000; text-decoration:none; border-top:3px solid transparent; border-bottom:3px solid transparent; transition: all 200ms linear; }
.archivemenu ul li a:hover, .archivemenu ul li.current-cat a { color:#000000; text-decoration:none; border-bottom:3px solid #079e00; }

.box-full { display:flex; background-repeat:no-repeat; background-size: cover; background-attachment:fixed; background-position:center center; }
.box-full:nth-child(odd) { flex-direction: row-reverse;  }
.box-full .box-col { flex:1 1 50%; position:relative; width:50%; text-align:center; }
.box-full .box-col.green { background-color:rgba(6,134,0,0.85); }
.box-full .box-col.blue { background-color:rgba(0,93,170,0.85); }
.box-full .box-col .box-content { display:table; width: 100%; height: 100%; }
.box-full .box-col .box-content .box-cell { display:table-cell; vertical-align:middle; text-align:center; padding:50px; }
.box-full .box-col.img { background-color:#079e00;}
.box-full .box-col.img .box-image { display:flex; justify-content:center; align-items:center; height:100%; }
.box-full .box-col.img .box-image div { width:100%; }
.box-full .box-col.img .box-image div .mobile-title{ display:none;     position: absolute;top: 0;left: 0;width: 100vw;height: 100%;background-color: rgba(0,0,0,0.5);}
.box-full .box-col.img .box-image div .mobile-title h3 {transform:translate(-50%, -50%); position:absolute;top:50%; left:50%;    display: block;}
.box-full .box-col.img .box-image div .mobile-title h3 a {color:white; width:95%;}
.box-full .box-col.img img.default { padding:20px; max-width:480px; margin:0 auto; }
.box-full img { display:block; width:100%; height:auto; }
.box-full h3, .box-full h3 a { margin-top:0; margin-bottom:50px; font-size:50px; line-height: .94em; color:#079e00; font-weight:700; text-transform:uppercase; }
.box-full p { font-size:20px; line-height:1.7em; color:#000000; }
.box-full a { font-size:20px; line-height:1.7em; font-weight:600; color:#079e00; text-decoration:none; }
.box-full a:hover { color:#005daa;}
.box-full .box-col.green h3, .box-full .box-col.green p, .box-full .box-col.green a, .box-full .box-col.blue h3, .box-full .box-col.blue p, .box-full .box-col.blue a { color:#ffffff; }
.box-slider .box-full { background-attachment: inherit; }
.box-slider .box-full .box-col:after { content: ""; display: block; }
.box-slider .box-full .box-col:after { padding-bottom: 100%; }
.box-slider .box-full .box-col .box-overlay { position: absolute; width: 100%; height: 100%; }
.box-slider .box-full .box-col .box-content { height: 100%; }
.box-slider .slick-dots { padding-right: 50%; }
.box-slider .slick-prev { left:0; opacity:1; background-image:url(img/arrow-white-left.svg); }
.box-slider .slick-next { right:50%; opacity:1; background-image:url(img/arrow-white-right.svg); }
.box-slider .slick-dots li button { background-color:transparent; border:2px solid #ffffff; }
.box-slider .slick-dots li button:hover,
.box-slider .slick-dots li button:focus,
.box-slider .slick-dots li.slick-active button { outline: none; background-color:#ffffff; }
body.home .box-full p { margin-top:0; }

.direct-home {display:none;margin-bottom: 10px;}
.direct-home a {font-size:18px !important; display:block;position:relative;padding-left: 15px;font-family: Neutraface, Helvetica, Arial, 'sans-serif';}
.direct-home a span {position:absolute;width: 10px;height: 2px;background-color: #079e00;display: block;transform: rotate(-45deg);top: 10px;left:0;}
.direct-home a span::before {content:"";position:absolute;width: 10px;height: 2px;background-color: #079e00;display: block;transform: rotate(-90deg);bottom: -5px;left: -5px;}
.single .box-full { flex-direction: inherit; background-color:#ebebeb; }
.single .box-full h1 { text-transform: none; }
.single .single-content { position:relative; margin-top:85px; padding-left:140px; }
.single .single-content { margin-bottom: 80px; }
.single .single-content h1 { margin-top: 0; margin-bottom: 0; font-size: 46px; line-height: 1.5em; color: #079e00; font-weight: 700; text-transform: uppercase; }
.single .single-content h2 { margin-top: 0; margin-bottom: 0; font-size: 32px; line-height: 1.5em; color: #000000; font-weight: 700; text-transform: uppercase; }
.single .single-content h3 { margin-top: 30px; margin-bottom: 0; font-size: 32px; line-height: 1.5em; font-weight: 700; }
.single .single-content h4 { margin-top: 30px; margin-bottom: 0; font-size: 26px; line-height: 1.5em; font-weight: 600; }
.single .single-content p { font-size:20px; line-height:1.8em; }
.single .single-content li { font-size:20px; line-height:1.8em; }
.single .single-content blockquote { position:relative; }
.single .single-content blockquote:before { content:'“'; position:absolute; top:-5px; left:-30px; font-size:60px; color:#a7a7a7; }
/*.single .single-content blockquote:after { content:'„'; position:absolute; bottom:-5px; right:-30px; font-size:60px; color:#a7a7a7; }*/
.single .single-content table { border-collapse: collapse; }
.single .single-content table td { padding:5px 10px; font-size:20px; line-height:1.8em; }
.single .single-content table thead td { background-color:#079e00; color:#ffffff; }
.single .single-content table tbody tr td {  border-bottom:1px dotted #bebebe; }
.single .single-content table tbody tr:nth-child(even) td { background-color:#f2f2f2; }
.single .single-content .social { position:absolute; top:0; left:0; width:60px; }
.single .single-content .social.fixed { position:fixed; top:102px; }
.single .single-content .social.bottom { position:absolute; top:auto; bottom:0; }
.single .single-content .social ul { list-style:none; margin:0; padding:0; }
.single .single-content .social li { width:60px; }
.single .single-content .social li div { display:block; padding:15px 10px; margin-bottom:10px; width:60px; text-align:center; cursor:pointer; background-color:#ffffff; transition: all 200ms linear; position:relative; height:60px;}
.single .single-content .social li svg { display:inline-block; position: absolute;  top: 50%;  left: 50%;  transform: translate(-50%, -50%); }
.single .single-content .social li svg .st0 { transition: all 200ms linear; }
.single .single-content .social li div.facebook svg { font-size:16px; height:33px; }
.single .single-content .social li div.facebook svg .st0{fill:#2c498e;}
.single .single-content .social li div.twitter svg { width:35px; height:29px; }
.single .single-content .social li div.twitter svg .st0{fill:#2caae0;}
.single .single-content .social li div.email svg { width:31px; height:22px; }
.single .single-content .social li div.email svg .st0{fill:#77787b;}
.single .single-content .social li div.facebook:hover { background-color:#2c498e; }
.single .single-content .social li div.twitter:hover { background-color:#2caae0; }
.single .single-content .social li div.email:hover { background-color:#77787b; }
.single .single-content .social li div:hover svg .st0 { fill:#ffffff !important; }
hr { margin: 3em auto; max-width: 600px; border: 0; border-top: 1px solid #cdcdcd; }

.posts-nav { text-align:center; }
.posts-nav a { display:inline-block; min-width:215px; padding:12px; margin:11px;  font-family:Neutraface, Helvetica, Arial, 'sans-serif'; font-size:20px; font-weight:600; color:#ffffff; text-decoration:none; background-color:#079e00; border-radius:4px; }
.posts-nav a:hover {background-color:#000;}

#postcontent a { color:#079e00; text-decoration:none; transition: all 200ms linear; }
#postcontent a:hover { color:#005daa; }

.search-no-results article { text-align: center; }

.most-popular {  }
.most-popular h2 { font-size:50px; font-weight:700; color:#079e00; text-align:center; text-transform:uppercase; }
.most-popular ul { display:flex;list-style:none; flex-wrap: wrap; margin:0; padding:0; }
.most-popular ul li { flex: 1 1 30%; margin:0 15px 75px 15px; }
.most-popular ul li img { display:block; max-width:364px; width:100%; height:auto; margin:0 auto; }
.most-popular ul li h3 { font-size:34px; color:#079e00; text-transform:uppercase; text-align:center; }
.most-popular ul li h3 a {  color: #079e00; text-decoration:none;}
.most-popular ul li h3 a:hover {  color: #005daa;}
.most-popular ul li p { font-size:20px; line-height:1.8em; text-align:center; }
.most-popular ul li p a { font-weight:600; color:#079e00; text-decoration:none; }
.most-popular ul li p a:hover {  color:#005daa;}
.most-popular ul li .wpp-thumbnail {float:none}

.upcoming-events { padding:25px 20px 0 ; }
.upcoming-events h2 { font-size:50px; font-weight:700; color:#ffffff; text-align:center; text-transform:uppercase; }
.upcoming-events ul { list-style:none; margin:0; padding:0; }
.upcoming-events ul li { display:flex; margin-bottom:75px; padding:15px; }
.upcoming-events ul li div.img { padding-right:30px; }
.upcoming-events ul li div.img img { display:block; width:150px; height:auto; }
.upcoming-events ul li div.txt { padding-left:30px; color:#ffffff; }
.upcoming-events ul li div.txt h3 { margin-top:0; margin-bottom:10px; font-family:GeorgiaPro, Georgia, 'serif'; font-size:30px; font-weight:600; }
.upcoming-events ul li div.txt div.date { margin-bottom:25px; font-family:Neutraface, Helvetica, Arial, 'sans-serif'; font-weight:600; font-size:20px; line-height:1em; }
.upcoming-events ul li div.txt p { margin:0; font-size:20px; font-weight:normal; line-height:1.8em; }
.upcoming-events ul li div.txt a { color:#ffffff; text-decoration:none; }
.upcoming-events ul li div.txt a:hover { text-decoration:underline; }

/*404 page styles*/
.error404 .toptext h1 { display:none; }
.error404 .single .single-content h2 { font-size: 50px; line-height: 1.15em; font-weight: 700; color: #079e00; text-align: center; text-transform: uppercase; }
.error404 #postcontent { margin-top:0; padding-left:0; }
.errorpage-container {display:table; width:100%; }
.errorpage-container .errorpage-image{display:table-cell; width:50%; padding:10px; vertical-align: middle}
.errorpage-container .errorpage-image img {width:100%; max-width:518px !important;}
.errorpage-container .errorpage-block{display:table-cell; vertical-align: middle; width:50%; padding:10px; text-align:center;}
.errorpage-container .errorpage-block h3 { font-family: GeorgiaPro,Georgia,'serif'; font-size: 60px;  line-height: 1.2em;     font-weight: normal;  margin: 0;}
.errorpage-container .errorpage-block p {font-size:24px; line-height:1.4em; max-width: 350px;  margin: 1em auto;}
.errorpage-container .errorpage-block p a {}
.error404 .most-popular { display:none; }
/*mid blog newlsetter */
#blognewslettersignup {width:100%;     background-image:url(img/email-signup-blog-bg.jpg);background-size: cover;background-position: center center; padding:0 20px; text-align:center;}/* linear-gradient( rgba(6,131,1, 0.85), rgba(6,131,1, 0.85) ), */
#blognewslettersignup h2 {display:none;}
#blognewslettersignup #newsletter-midblog .input  {  display: inline-block; margin: 0 6px; }
#blognewslettersignup #newsletter-midblog .signup-title {  display: inline-block;  color: white;  background-image: url(../img/newsletter.svg);  padding: 12px 8px 12px 60px;  background-repeat: no-repeat;  background-position: center left;  background-size: 40px;  font-size: 20px;  }
#blognewslettersignup #newsletter-midblog .input  {  display: inline-block;  }
#blognewslettersignup #newsletter-midblog .input label {  display: none;  }
#blognewslettersignup #newsletter-midblog .input input {padding: 12px 20px;  font-size: 16px;}
#blognewslettersignup #newsletter-midblog .form-actions {display:inline-block;     margin:5px 7px;}
#blognewslettersignup #newsletter-midblog .form-actions input[type=submit]{background-color:#000000; color:#ffffff; padding: 12px 30px;  border: 1px solid black;  font-size: 20px;  border-radius: 5px; }
#blognewslettersignup #newsletter-midblog .form-actions input[type=submit]:hover { background-color:#005daa; border-color:#005daa; }

#newsletter-midblog { max-width:1040px; width:100%; padding-left:0; padding-right:0; margin: auto;}
#newsletter-midblog .signup-bar { position:relative; display:flex; align-items: center; justify-content: center;  max-width:740px;   width: 100%;margin: 0 auto;  padding:65px 15px 25px;}
#newsletter-midblog .signup-bar .sb-img { flex:0 0 82px; width:82px; }
#newsletter-midblog .signup-bar .sb-img img { position:absolute; top:0; left:0; width: 80px;}
#newsletter-midblog .signup-bar .sb-txt { flex:1 1 auto; text-align:left;  padding:15px; }
#newsletter-midblog .signup-bar .sb-txt h3 { margin:0; font-family: Neutraface, Helvetica, Arial, 'sans-serif'; font-weight:700; color:#ffffff; font-size: 36px;line-height: 1.5em;text-transform: uppercase; position:absolute; top:20px;}
#newsletter-midblog .signup-bar .sb-txt p { margin:0; color:#ffffff; line-height:1.5em; font-size:20px}
#newsletter-midblog .signup-bar .sb-btn { flex:0 0 172px; }
#newsletter-midblog .signup-bar .sb-btn a { background-color:#000000; color:#ffffff; padding: 8px 20px;border: 1px solid black;font-size: 18px;  border-radius: 5px; text-decoration:none;}
#newsletter-midblog .signup-bar .sb-btn a:hover { color:#079e00; background-color:#ffffff; border-color:#ffffff; }
#newsletter-footer { max-width:1040px; width:100%; }
#newsletter-footer .signup-bar { position:relative; display:flex; align-items: center; justify-content: center; width:100%; }
#newsletter-footer .signup-bar .sb-img { flex:0 0 82px; width:82px; }
#newsletter-footer .signup-bar .sb-img img { position:absolute; bottom:0; left:-55px; }
#newsletter-footer .signup-bar .sb-txt { flex:1 1 auto; text-align:left;  padding:15px; }
#newsletter-footer .signup-bar .sb-txt h3 { margin:0; font-family: Neutraface, Helvetica, Arial, 'sans-serif'; font-weight:600; color:#ffffff; line-height:1.5em; font-size:30px;}
#newsletter-footer .signup-bar .sb-txt p { margin:0; color:#ffffff; line-height:1.5em; font-size:20px;}
#newsletter-footer .signup-bar .sb-btn { flex:0 0 172px; }
#newsletter-footer .signup-bar .sb-btn a { background-color:#000000; color:#ffffff; padding: 12px 30px;  border: 1px solid black;  font-size: 20px;  border-radius: 5px; text-decoration:none;}
#newsletter-footer .signup-bar .sb-btn a:hover { color:#079e00; background-color:#ffffff; border-color:#ffffff; }
#newsletter-signup-box { background-color:#079e00; border-radius:6px; background-image:url(img/email-signup-bg.jpg); background-repeat: no-repeat; background-size: cover; background-position: center bottom; }
#newsletter-signup-box .fancybox-close-small:after { color: #155e10; font-size: 38px; line-height:38px; width: 36px; height: 36px; }
#newsletter-signup-box #newsletter-signup { display:flex; align-items: flex-end; }
#newsletter-signup-box #newsletter-signup #mc_embed_signup { max-width:680px; width:100%; padding:30px 0 30px 30px; }
#newsletter-signup-box #newsletter-signup #mc_embed_signup .form-items { width:100%; }
#newsletter-signup-box #newsletter-signup h2 { margin-top:0; margin-bottom:20px; color:#ffffff; text-align:left; line-height:1em; font-size: 50px;font-weight: 700;text-transform: uppercase;}
#newsletter-signup-box #newsletter-signup p { font-family: GeorgiaPro, Georgia, 'serif'; font-size:19px; line-height:1.7em; color:#ffffff; }
#newsletter-signup-box #newsletter-signup p.signup-text { margin: 0; line-height: 1.25em; }
#newsletter-signup-box #newsletter-signup p.signup-first-purchase { font-family: Neutraface, Helvetica, Arial, 'sans-serif'; font-size: 24px; margin: 0.5em 0 1em; line-height: 1.1em; }
#newsletter-signup-box .input  { display:block; margin: 0 6px 15px 6px; }
#newsletter-signup-box .input label { display:block; margin-bottom:10px; font-family: Neutraface, Helvetica, Arial, 'sans-serif'; font-size:20px; font-weight:600; color:#ffffff;  }
#newsletter-signup-box .input input { width:100%; padding: 12px 20px; font-size: 18px; border:none; border-radius:5px; color:#77787b;  font-family: Neutraface, Helvetica, Arial, 'sans-serif'; font-weight:600;}
#newsletter-signup-box .input input::placeholder {color: #aaabae}
#newsletter-signup-box .select { display:block; margin: 0 6px  15px 6px; }
#newsletter-signup-box .select select {  font-family: Neutraface, Helvetica, Arial, 'sans-serif'; font-size:18px; font-weight:600;  width:100%; -moz-appearance:none; -webkit-appearance:none; appearance: none; padding: 12px 34px 12px 20px;  border:none; border-radius:5px; color:#77787b; background-image: url(/themes/steamwhistle/img/angle-arrow-down.svg); background-repeat: no-repeat; background-size: 15px; background-position: center right 10px;     background-color: white;}
#newsletter-signup-box .select select#mce-BIRTHDAY-month { margin-right:10px; }
#newsletter-signup-box .split-items { display:flex; }
#newsletter-signup-box .split-items .split-item { flex: 1 1 50%; }
#newsletter-signup-box .datefield .split-items .split-item {flex: 1 1 auto;}
#newsletter-signup-box label.birthday-label {display: block; font-family: Neutraface, Helvetica, Arial, 'sans-serif';font-size: 20px;font-weight: 600;color: #ffffff;margin-top: 0;margin-bottom: 10px;align-self: center;margin-right: 10px;}
#newsletter-signup-box #newsletter-signup .birthday-note  {    align-self: center;margin-bottom: 10px;}
#newsletter-signup-box #newsletter-signup .birthday-note p {font-size: 16px; max-width:200px; margin: 0;margin-left: 15px;     line-height: 1.2em;}
#newsletter-signup-box .size1of2 { display:inline-block; margin-bottom:0; }
#newsletter-signup-box .select label { display:block; font-family: Neutraface, Helvetica, Arial, 'sans-serif'; font-size:20px; font-weight:600; color:#ffffff; margin-top:0; margin-bottom:10px; }
#newsletter-signup-box .select.size1of2 label { display:block; font-family: Neutraface, Helvetica, Arial, 'sans-serif'; font-size:20px; font-weight:600; color:#ffffff; margin-top:0; margin-bottom:10px; }
#newsletter-signup-box .select.size1of2 .datefield {  color:#ffffff;  }
#newsletter-signup-box .select.size1of2 .datefield input { color:#000000; max-width: 75px; }
#newsletter-signup-box .select.size1of2 select { margin-bottom:15px; }
#newsletter-signup-box .input-group { color:#ffffff;  margin: 15px 6px 0 6px; }
#newsletter-signup-box .input-group strong { display:block;  font-family: Neutraface, Helvetica, Arial, 'sans-serif'; font-size:20px; font-weight:600; color:#ffffff;  margin-bottom:10px; }
#newsletter-signup-box .input-group ul  { display: flex; width: 100%; flex-wrap: wrap; list-style:none; margin:0; padding:0; }
#newsletter-signup-box .input-group li { flex: 1 1 50%; margin-top:0; font-size: 16px; }
#newsletter-signup-box .initial_hide { display:none; text-align:left; }
#newsletter-signup-box .input-group li label { font-family: GeorgiaPro, Georgia, 'serif'; font-size:20px; line-height:2em; }
#newsletter-signup-box .form-actions {display:inline-block; margin:5px 7px;}
#newsletter-signup-box .form-actions input[type=submit]{margin-top: 15px; background-color:#000000; font-family: GeorgiaPro, Georgia, 'serif'; color:#ffffff; padding: 12px 30px;  border: 1px solid black;  font-size: 20px;  border-radius: 5px; transition: all 200ms linear; }
#newsletter-signup-box .form-actions input[type=submit]:hover { color:#079e00; background-color:#ffffff; border-color:#ffffff; }
.checklabel { display: block; position: relative; padding-left: 50px; margin-bottom: 15px; cursor: pointer; font-size: 27px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.checklabel input { position: absolute; opacity: 0; cursor: pointer; }
.checkmark { position: absolute; top: 0; left: 0; height: 40px; width: 40px; background-color: #ffffff;  border-radius:5px; }
.checklabel:hover input ~ .checkmark { background-color: #ccc; }
.checklabel input:checked ~ .checkmark { background-color: #ffffff;  }
.checkmark:after { content: ""; position: absolute; display: none; }
.checklabel input:checked ~ .checkmark:after { display: block; }
.checklabel .checkmark:after { left: 15px; top: 7px; width: 7px; height: 17px; border: solid #005daa; border-width: 0 4px 4px 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }
#newsletter-signup-box .ns-img { padding:0; }
#newsletter-signup-box .ns-img img { max-width: 360px; height: auto; margin-bottom: -28px; }

footer { background-color:#079e00; padding: 0 0 25px; }
footer .contentwidth{max-width:100%;}
footer .region-footer { display:flex; justify-content: space-between; align-items: center; justify-content: center; max-width:100%; width:100%; margin:0 auto; }
footer #block-footerbuttons {  max-width:315px; width:100%; padding:25px; }
footer #block-footerbuttons p {margin-top:0; margin-bottom:20px;}
footer #block-footerbuttons a { display:block; padding:17px 17px 17px 47px; font-family:Neutraface, Helvetica, Arial, 'sans-serif'; font-weight:600; font-size:20px; line-height:1em; color:#ffffff; text-align:left; text-decoration:none; background-repeat:no-repeat; }
footer #block-footerbuttons a:hover { text-decoration:underline; }
footer #block-footerbuttons a.take-our-survey { background-image:url(img/survey.svg); background-position:5px center; background-size:29px 38px; }
footer #block-footerbuttons a.join-our-newsletter { background-image:url(img/newsletter.svg); background-position:left center; background-size:38px 26px; }
footer #block-footerbuttons a.take-a-tour {  border: 2px solid white;  border-radius: 7px;  background-image: url(img/tour.svg);  background-position: center right 15px;  background-size: 34px;  padding: 17px 47px 17px 17px;  max-width: 235px;  width: 100%;}
footer #block-footerbuttons a.take-a-tour:hover {  background-color: rgba(0,0,0,0.4);  }
footer #block-footercontent { max-width:100%; width:100%; padding:25px; color:#ffffff; text-align:center;  }
footer #block-footercontent p {  font-family: Neutraface, Helvetica, Arial, 'sans-serif';  font-size: 22px;  line-height: 1.4em;  margin: 5px 0 16px;}
footer #block-footercontent strong { font-family:GeorgiaPro, Georgia, 'serif'; font-weight:600; }
footer #block-footercontent ul { display:table; width:100%; list-style:none; max-width: 415px;  margin: 0 auto; padding:0; }
footer #block-footercontent ul li { display:table-cell; vertical-align:middle; width:20%; padding:5px; }
footer #block-footercontent ul li a {    display: inline-block;  width:50px; height:50px; position:relative;}
footer #block-footercontent ul li a img {position:absolute; top:50%; left:50%; transform:translate(-50%, -50%);}
footer #block-footercontent .youtube { width:33px; height:24px; }
footer #block-footercontent .twitter { width:31px; height:26px; }
footer #block-footercontent .facebook { width:16px; height:29px; }
footer #block-footercontent .instagram { width:29px; height:29px; }
footer #block-footercontent .spotify { width:31px; height:31px; }
footer .menu--footer { max-width:315px; width:100%; padding:25px 25px 25px 90px; color:#ffffff;  }
footer .menu--footer  ul.menu { margin:0; list-style:none; padding:0; }
footer .menu--footer  ul.menu a, footer .menu-footer-menu-container ul.menu a.is-active { font-family:Neutraface, Helvetica, Arial, 'sans-serif'; font-size:18px; line-height:1.8em; font-weight:600; color:#ffffff; text-transform:uppercase; text-decoration:none; }
footer .menu--footer  ul.menu a:hover { text-decoration:underline; }
.menu-item { padding-top: 0.2em; margin: 0; }

footer #block-footernewslettersignup {width:100%; background-color: #056e00; padding:0 20px; text-align:center;}
footer #block-footernewslettersignup h2 {display:none;}
footer #block-footernewslettersignup #newsletter-footer .input  {  display: inline-block; margin: 0 6px; }
footer #block-footernewslettersignup #newsletter-footer .signup-title {  display: inline-block;  color: white;  background-image: url(img/newsletter.svg);  padding: 12px 8px 12px 60px;  background-repeat: no-repeat;  background-position: center left;  background-size: 40px;  font-size: 20px;  }
footer #block-footernewslettersignup #newsletter-footer .input  {  display: inline-block;  }
footer #block-footernewslettersignup #newsletter-footer .input label {  display: none;  }
footer #block-footernewslettersignup #newsletter-footer .input input {padding: 12px 20px;  font-size: 16px;  font-family: GeorgiaPro, Georgia, 'serif';}
footer #block-footernewslettersignup #newsletter-footer .form-actions {display:inline-block;     margin:5px 7px;}
footer #block-footernewslettersignup #newsletter-footer .form-actions input[type=submit]{background-color:#000000; color:#ffffff; padding: 12px 30px;  border: 1px solid black;  font-size: 20px;  border-radius: 5px; font-family: GeorgiaPro, Georgia, 'serif';}
footer #block-footernewslettersignup #newsletter-footer .form-actions input[type=submit]:hover { background-color:#005daa; border-color:#005daa; }

/*footer #block-footerbuttons #block-steamwhistle-search-2 {  display: block;  margin-top: 15px;  }*/
footer #block-footerbuttons #block-steamwhistle-search-2 h2 {display:none;}
footer #block-footerbuttons #block-steamwhistle-search-2 input[type=text] {background-color: #056e00;  bordeR: 1px solid #056e00;  padding: 8px 30px;  border-radius: 20px;  width: 100%;  font-size: 20px;  max-width: 235px;  color: white;  box-sizing: border-box;  background-image: url(/themes/steamwhistle/img/search.svg);  background-repeat: no-repeat;  background-position: center right 15px;  background-size: 24px;     margin-top: 15px;  font-family: GeorgiaPro, Georgia, 'serif';}
footer #block-footerbuttons #block-steamwhistle-search-2 input[type=text]::placeholder {color:white;}
footer #block-footerbuttons #block-steamwhistle-search-2 input[type=submit] {display:none; }

#block-newslettersignup { position:fixed; bottom:-300px; opacity:0; left:0; width:100%; padding:40px; background-color:rgba(0,0,0,0.9); transition: all 200ms ease-in-out; }
#block-newslettersignup.open { bottom:0; opacity:1; }
#block-newslettersignup img.close { position:absolute; cursor:pointer; padding:20px; top:0; right:0;width:54px; height:55px; }
#block-newslettersignup form { max-width:615px; margin:0 auto; }
#block-newslettersignup form label { display:block; margin-bottom:20px; font-family:Neutraface, Helvetica, Arial, 'sans-serif'; font-size:20px; font-weight:600; color:#ffffff; text-align:center; }
#block-newslettersignup .fields { display:flex; flex-wrap:wrap; }
#block-newslettersignup .fields .field { padding:5px; }
#block-newslettersignup .fields .field.email { flex:1 1 auto; }
#block-newslettersignup .fields .field.submit { flex:0 0 215px; }
#block-newslettersignup input[type=email] { display:inline-block; padding:14px; width:100%; font-family:GeorgiaPro, Georgia, 'serif'; background-color:#ebebeb; border:none; border-bottom:2px solid #079e00; border-radius: 2px 2px 0 0; }
#block-newslettersignup input[type=submit] { display:inline-block; width:215px; padding:12px; font-family:Neutraface, Helvetica, Arial, 'sans-serif'; font-size:20px; font-weight:600; color:#ffffff; text-align:center; background-color:#079e00; border:none; border-radius:5px; transition: all 200ms linear; }
#block-newslettersignup input[type=submit]:hover { background-color:#079e00; }

#postcontent { opacity:0; animation: fadeIn 750ms linear 1000ms 1 forwards; }
#postcontent img { opacity:0; width:0; height:0; }
#postcontent img.visible { opacity:1; width:auto; height:auto; }
#postcontent img.scaleLg { width: 100%; height: auto; }

/*fancybox styles to mirror main site */
#newsletter-signup-box {position: relative;vertical-align: middle;text-align: left;box-sizing: border-box;padding: 24px;margin: 44px 0px;border-width: 0px;overflow: auto;}

@keyframes fadeIn {
    from { opacity:0;}
    to { opacity:1;}
}

@media(min-width:1400px) {
    footer #block-footerbuttons {margin-lefT:50px;}
}
@media (min-width: 851px) and (max-width: 980px) {
    header nav ul.menu a { font-size: 14px; }
    header nav ul.menu li { padding: 10px 9px; }
}
@media (min-width: 781px) and (max-width: 980px) {
    /*header nav ul.menu a { font-size: 14px; }
    header nav ul.menu li { padding: 10px 9px; }*/
    .box-full h3, .box-split h3, .box-full h3 a, .box-split h3 a { margin-bottom:1vw; }
    .box-full p, .box-full a, .box-split p, .box-split a { font-size:2vw; }
    footer .menu-footer-menu-container { padding:25px; }
    .box-full .box-col .box-content .box-cell {     padding: 50px 2vw; }
    .box-full h3, .box-full h3 a { font-size: 5.6vw; line-height: 1em; }
    #newsletter-midblog .signup-bar .sb-txt h3 {font-size: 3.7vw;}
    #newsletter-midblog .signup-bar .sb-txt p {font-size:2vw}
}

@media (max-width:1160px ) {
    .nav-open .site-logo img { height: 80px; padding-top: 10px; padding-bottom: 5px !important;  margin-top: 25px;  }
    .single .box-full h1 {font-size:50px; }
}

@media (max-width:1055px) {
    footer #block-footernewslettersignup #newsletter-footer .signup-title {      display: block;  max-width: 320px;  width: 100%;  margin: 0px auto 7px;}
}

@media (max-width:980px){
    footer .menu--footer {padding:25px;}
    .single .box-full h1 {font-size:45px; word-break: break-word;}
}
@media (max-width: 950px) {
    .nav-open .site-logo img {  height: 70px;  padding-top: 10px;  padding-bottom: 5px !important;  margin-top: 32px;  }
}
@media (max-width:890px) {
    footer .region-footer { flex-wrap: wrap; }
    footer #block-footerbuttons, footer #block-footercontent, footer .menu--footer { display:block; padding:10px 20px; max-width:100%; margin:0 auto; text-align:center; }
    footer #block-footerbuttons a { display:inline-block; }
    footer #block-footerbuttons a.take-a-tour {  margin-top: 20px; }
    footer #block-footerbuttons { order:1; }
    footer #block-footercontent{ order:3; }
    footer .menu--footer{ order:2; }
    footer .menu--footer ul.menu { text-align:center;     padding-lefT: 0;  }
}

@media (max-width:870px) {
    .path-events #header-img .header-text { padding-top: 15px; padding-bottom: 15px; }
    #newsletter-signup-box #newsletter-signup #mc_embed_signup { padding-left:0; }
    #newsletter-signup-box .ns-img { display:none; padding:30px; }
    #newsletter-signup-box .ns-img img { width:15vw; height:auto; }
}

@media (min-width: 851px) {
    .nav-open header nav { right:0px; opacity:1;  visibility: visible; }
    .nav-open header #mmButton div { position:absolute; left:65px; top:4px; color:rgba(255,255,255,1); }
    .nav-open header #mmButton span { transform:rotate(45deg); background:transparent; }
    .nav-open header #mmButton::before, .nav-open header #mmButton::after { top:8px; }
    .nav-open header #mmButton::before { transform:rotate(45deg); }
    .nav-open header #mmButton::after { transform:rotate(-45deg); }
}
@media (max-width: 850px) {

    header { height:70px; }
    header nav { margin:0; width:100%; height:70px; right:0; top:70px; }
    .nav-open header nav { top:70px; }
    header #mmButton { top:25px; right:15px; }
    header nav { margin:0; width:100%; }
    header nav ul.menu {  flex-wrap:wrap; width:100%; margin:0; padding: 0; }
    header nav ul.menu li { flex:1 1 100%; padding:10px; text-align:center; display:block; background-color: rgba(7,158,0,1); }
    header nav ul.menu ul li {  }
    header nav ul.menu .plus { display:block; z-index:0; }
    header nav ul.menu a, header nav#block-mainnavigation ul.menu a.is-active { position:relative; z-index: 1; display:block; width:100%; font-family:Neutraface, Helvetica, Arial, 'sans-serif'; text-transform:uppercase; color:#ffffff; text-decoration:none; }
    header nav ul.menu li ul { opacity:1; position: relative; left: auto; min-width: 100%; width: 100%; margin-top:10px; padding: 0; }
    header nav ul.menu li ul li { display: block; width:100%; flex: initial; }
    header nav ul.menu li ul li a { display:block; text-align: center; }

    header nav#block-mainnavigation { margin:0; width:100%; }
    header nav#block-mainnavigation ul.menu {  flex-wrap:wrap; width:100%; }
    header nav#block-mainnavigation ul.menu li { flex:1 1 100%; padding:10px 9px; text-align:center; display:block; background-color: rgba(7,158,0,1); }
    header nav#block-mainnavigation .plus { display:block; z-index:0; }
    .page-node-type-homepage header nav#block-mainnavigation ul.menu li {  background-color: rgba(7,158,0,0.6); }
    .page-node-type-homepage header.small nav#block-mainnavigation ul.menu li {  background-color: rgba(7,158,0,1); }
    header nav#block-mainnavigation ul.menu a, header nav#block-mainnavigation ul.menu a.is-active { position:relative; z-index: 1; display:block; width:100%; font-family:Neutraface, Helvetica, Arial, 'sans-serif'; text-transform:uppercase; color:#ffffff; text-decoration:none; }
    header nav#block-mainnavigation ul.menu li ul { opacity:1; position: relative; left: auto; min-width: 100%; width: 100%; margin-top:10px; padding: 0; }
    header nav#block-mainnavigation ul.menu li ul li { display: block; width:100%; flex: initial; }
    header nav#block-mainnavigation ul.menu li ul li a { display:block; text-align: center; }

    header .site-logo img, header #block-logosmall img { width:auto; height:70px; }
    header .site-logo img { padding-top:10px; padding-bottom:5px;  margin-top:0 !important; }
    .nav-open .site-logo img { height:70px; }
    #header-img { border-top:70px solid rgba(7,158,0,1); }

    .nav-open-mobile header nav { right:0px; opacity:1;  visibility: visible; }
    .nav-open-mobile header #mmButton div { position:absolute; left:65px; top:4px; color:rgba(255,255,255,1); }
    .nav-open-mobile header #mmButton span { transform:rotate(45deg); background:transparent; }
    .nav-open-mobile header #mmButton::before, .nav-open-mobile header #mmButton::after { top:8px; }
    .nav-open-mobile header #mmButton::before { transform:rotate(45deg); }
    .nav-open-mobile header #mmButton::after { transform:rotate(-45deg); }

    .nav-open-mobile header nav { top:70px; }
    .nav-open-mobile header #block-steamwhistle-branding { opacity:1;  visibility:visible; }
    .nav-open-mobile header #block-logosmall { opacity:0;  visibility:hidden; height:0; }
    .nav-open-mobile .site-logo img { height:70px; }
    .nav-open-mobile header #block-logosmall img { height:0; }
}


@media (max-width: 780px) {

    .catmenu {display:none;}
    .catmenu-mobile {display:block;}
    article { margin-top: 120px; }
    .box-full { display:block; }
    .box-full .box-col.empty { display:none; }
    .box-full .box-col .box-content .box-cell { padding: 20px 25px 50px; }
    .box-full .box-col.img .box-image div .mobile-title {display:block;}
    body.home .box-full h3, body.home .box-full h3 {display:none;}
    body.home .box-full .box-col .box-content .box-cell { padding: 20px 25px 50px; }
    .box-full .box-col { flex: inherit; width:100%; }
    .box-full h3, .box-full h3 a { font-size:8vw; margin-bottom:1.5vw; }
    .direct-home {display:block;}
    .single article {margin-top:70px;}
    .single .toptext {display:none;}
    .single .catmenu {display:none;}
    .single .catmenu-mobile {display:none;}
    .single .box-full { background-color:#ffffff; }
    .single .box-full h1 { text-align: left; font-size: 35px; margin-bottom: 25px;     word-break: normal; }
    .single .box-full .box-col .box-content .box-cell { text-align:left; }
    .single .box-full .box-col:last-child .box-content .box-cell { padding-bottom:0; }
    .single .box-full p { margin-bottom:0; }
    .single .wp-block-image {margin-left:-25px; margin-right:-25px; max-width:calc(100% + 50px) !important; width:calc(100% + 50px) !important;}
    .single .wp-block-image .alignright, .single .wp-block-image .alignleft { width: 100%; }
    .single .wp-block-image  img{  max-width:100% !important}
    .single .single-content { padding-left: 25px; margin-top:-1em;     margin-bottom: 3em;}
    .single .readmore { display:none; }
    .single .single-content .social, .single .single-content .social.fixed { position: static; width:100%; text-align:center; }
    .single .single-content .social li { display:inline; }
    .single .single-content .social li div { display:inline-block; }

    .wp-block-image figcaption { width: 90%; margin: 0.5em auto 1em; text-align: center; }

    .most-popular .contentwidth {padding-left:0; padding-right:0;}
    .most-popular h2 { font-size:34px;}
    .most-popular ul li { flex: 1 1 100%; position:relative; margin:0 0 75px;}
    .most-popular ul li img {max-height:100vw; max-width:100%;}
    .most-popular ul li h3 {width:100vw; height:100vw; position:absolute; top:0; left:0; background-color:rgba(0,0,0,0.5); margin-top:0;}
    .most-popular ul li h3 a { position:absolute; color:white; top:50%; left:50%; transform:translate(-50%,-50%);  width: 95%; }
    .most-popular ul li p {padding:0 25px;}

    #newsletter-midblog { }
    #newsletter-midblog .signup-bar {     padding-top: 20px;padding-bottom: 40px;display: block;max-width: 380px; }
    #newsletter-midblog .signup-bar .sb-img {     position: absolute;top: 0;left: 15px;flex: unset; width:62px}
    #newsletter-midblog .signup-bar .sb-img img { width: 55px;}
    #newsletter-midblog .signup-bar .sb-txt {     text-align: center;padding: 10px 0 15px;margin-bottom: 25px;}
    #newsletter-midblog .signup-bar .sb-txt h3 {    position: unset; top: unset; line-height: 1.1em;margin-bottom: 15px;text-align: left;padding-left: 65px;}
    #newsletter-midblog .signup-bar .sb-txt h3 span.mobile-break {display:block;}

    #blognewslettersignup { background-image:url(img/email-signup-bg-mobile.jpg); }
    .single .wp-block-image img { width: 100%!important; }

    footer .region-footer { flex-wrap: wrap; }
    footer #block-footerbuttons, footer #block-footercontent, footer .menu--footer { padding:10px 20px; max-width:360px; margin:0 auto; }
    footer #block-footerbuttons { order:1; text-align: center; }
    footer #block-footercontent{ order:3; }
    footer nav#block-steamwhistle-footer{ order:2; width:100%;}
    footer .menu-footer-menu-container{ order:2; }
    footer .menu-footer-menu-container ul.menu { text-align:center; padding-left:0;}

    footer #block-footernewslettersignup #newsletter-footer .input {display:block; margin:15px}
    footer #block-footernewslettersignup #newsletter-footer .input input {    max-width: 350px; width:100%; }
    footer #block-footernewslettersignup #newsletter-footer .form-actions {display:block;     margin: 20px 7px 5px; }
    footer #block-footerbuttons a.take-a-tour {  margin: 20px auto;}
}

@media (max-width:740px) {
    footer #block-footernewslettersignup {padding: 0;}
    #newsletter-footer .signup-bar .sb-img {flex: 0 0 45px;width: 45px;}
    #newsletter-footer .signup-bar .sb-img img { left: -25px; width: 75px; height: auto; }
    #newsletter-signup-box #newsletter-signup #mc_embed_signup { padding:95px 15px 15px 0; }
    #newsletter-signup-box .ns-img { padding:95px 5px 15px 15px; }
    #newsletter-signup-box #newsletter-signup h2 { font-size: 35px; position: absolute; padding-right: 43px; width: 100%; top: 50px; left: 25px; }
}
@media (max-width: 650px) {
    #newsletter-signup-box label.nolabel { display:none; }
    #newsletter-signup-box #newsletter-signup .datefield .split-items.bday-container {    display: block;}
    #newsletter-signup-box label.birthday-label {margin-right:0; margin-left: 15px;}
    #newsletter-signup-box #newsletter-signup .birthday-note p {max-width:100%;}

    #newsletter-footer .signup-bar { display:block;     padding-top: 25px; padding-bottom: 136px;}
    #newsletter-footer .signup-bar .sb-img { flex:none; }
    #newsletter-footer .signup-bar .sb-img img {left: 50%;height: auto;transform: translate(-50%,0);width: 90px;}
    #newsletter-footer .signup-bar .sb-txt { flex:none; text-align: center; padding: 15px; }
    #newsletter-footer .signup-bar .sb-txt h3 {max-width:100%;    margin-bottom: 10px;}
    #newsletter-footer .signup-bar .sb-btn { flex:none; padding-bottom: 20px; }
    #newsletter-footer .signup-bar .sb-btn a { display: inline-block; }

    hr {margin:3em 25px; }
}

@media (max-width: 640px) {
    .upcoming-events ul li div.img { padding-right:15px; }
    .upcoming-events ul li div.txt { padding-left:15px; }
}

@media (max-width: 580px) {
    .upcoming-events ul li div.img { display:none; }
    .upcoming-events ul li div.txt { padding-left:0; }
}

@media(max-width:555px) {

    h1 {    font-size: 45px;      margin-bottom: 25px;}
    article {margin-top: 95px;}

    #newsletter-signup-box {max-width:99%; margin:5px}
    #newsletter-signup-box #newsletter-signup h2 { font-size:28px; margin-bottom:10px; }
    #newsletter-signup-box #newsletter-signup p { font-size:18px; padding-top:0; margin-top:0; }
    #newsletter-signup-box .split-items { display:block; }
    #newsletter-signup-box .split-items .split-item { flex: none; }
    #newsletter-signup-box .input input {padding:10px 15px;}
    #newsletter-signup-box .input-group ul li label {    line-height: 1.2em; margin-right: 10px; }
    #newsletter-signup-box .select select { padding: 10px 29px 10px 15px;}
    #newsletter-signup-box .split-items .split-item .datefield { }
    #newsletter-signup-box .split-items .split-item .datefield .split-items {display:flex; width:100%; flex-direction: row;justify-content: space-between;align-items: flex-end;align-content: flex-end;}
    #newsletter-signup-box .split-items .split-item .datefield .split-items .split-item {flex: 1 1 50%; align-self: flex-end;}
    #newsletter-signup-box .split-items .split-item .datefield .split-items .split-item .select {margin-bottom:0;}
    #newsletter-signup-box #newsletter-signup .birthday-note {margin-top: 10px;margin-bottom: 0px;}


}

@media (max-width:500px) {
    #newsletter-midblog { }
    #newsletter-midblog .signup-bar {     padding-top: 0; max-width: 100%;}
    #newsletter-midblog .signup-bar .sb-img { display:block; position:unset; margin:0 auto }
    #newsletter-midblog .signup-bar .sb-img img {position:unset;}
    #newsletter-midblog .signup-bar .sb-txt h3 { font-size:28px; padding-left:0; text-align:center;}
    #newsletter-midblog .signup-bar .sb-txt h3 span.mobile-break {display:inline;}
    #newsletter-midblog .signup-bar .sb-txt p {font-size:18px;}
    #newsletter-midblog .signup-bar .sb-btn a {font-size:16px;}
}
@media (max-width:480px){
    #newsletter-signup-box {    padding: 0px 15px; }
    #newsletter-signup-box #newsletter-signup p {line-height:1.3em; text-align:center;}
    #newsletter-signup-box #newsletter-signup #mc_embed_signup {padding:15px 0}
    #newsletter-signup-box #newsletter-signup h2 {padding-right:0; position:unset; margin-top:20px; text-align:center;}
    #newsletter-signup-box .ns-img img {display:none;}
    #newsletter-signup-box .input label {display:none;}
    #newsletter-signup-box .input-group ul{display:block;}
    #newsletter-signup-box .input-group ul li {display:block;}
    #newsletter-signup-box .input-group li label.checklabel {line-height: 1.2em; padding-left: 35px;     font-size: 18px;}
    #newsletter-signup-box .input-group li label.checklabel span.checkmark {width:25px; height:25px;}
    #newsletter-signup-box .input-group li label.checklabel .checkmark:after {left: 8px;top: 2px;width: 6px;height: 13px;}
    #newsletter-signup-box #newsletter-signup .birthday-note p {text-align:left;}
    #newsletter-signup-box .form-actions {display: block;margin: 5px auto; text-align:center;}
}
@media (max-width: 420px) {
    h2 { font-size: 12vw; }
    article h3 { font-size: 6.5vw; }
    article p, .box-full p, .box-full a { font-size: 5.2vw; }

    footer #block-footernewslettersignup #newsletter-footer .signup-title{    width: 260px;  font-size: 18px;  padding: 12px 0px 12px 40px;  background-size: 30px;  }
    #newsletter-footer .signup-bar .sb-txt h3{ font-size:6.5vw }
    #newsletter-footer .signup-bar .sb-txt p { font-size: 5.2vw; }
}

@media (max-width: 380px) {
    footer #block-footercontent { padding:10px;}
    footer #block-footercontent ul li a {    width: 40px;  height: 40px;}

}

@media(max-width:350px) {
    #newsletter-signup-box .select select { display:block; width:100%; }
    #newsletter-signup-box .select select#mce-BIRTHDAY-month { margin-right: 0px;  }
}

@media (max-width:340px) {
    footer #block-footernewslettersignup #newsletter-footer .signup-title {    width: 230px;    font-size: 16px;    padding: 12px 0px 12px 32px;    background-size: 30px;}
}

/*This CSS resource incorporates links to web font and font software
which is the valuable copyrighted property of House Industries and/ or
its suppliers. You expressly agree to not copy, install, redistribute,
convert, modify, or reverse engineer this font software or the fonts
rendered thereby. Please contact House Industries with any questions
regarding Web Fonts: http://www.houseind.com */

@font-face {
    font-family: "GeorgiaPro";
    font-weight: normal;
    font-style: normal;
    src: url("fonts/Ascender - GeorgiaPro-Regular.otf") format("truetype");
}
@font-face {
    font-family: "GeorgiaPro";
    font-weight: 600;
    font-style: normal;
    src: url("fonts/Ascender - GeorgiaPro-SemiBold.otf") format("truetype");
}

@font-face {
    font-family: "Neutraface";
    font-weight: normal;
    font-style: normal;
    src: url(fonts/NeutrafaceText-Book.woff2) format("woff2"), url(../fonts/NeutrafaceText-Book.woff) format("woff");
}

@font-face {
    font-family: "Neutraface";
    font-weight: 600;
    font-style: normal;
    src: url(fonts/NeutrafaceText-Demi.woff2) format("woff2"), url(../fonts/NeutrafaceText-Demi.woff) format("woff");
}

@font-face {
    font-family: "Neutraface";
    font-weight: 700;
    font-style: normal;
    src: url(fonts/NeutrafaceText-Bold.woff2) format("woff2"), url(../fonts/NeutrafaceText-Bold.woff) format("woff");
}

@font-face {
    font-family: "ChronicleTextG1";
    font-weight: 600;
    font-style: normal;
    src: url("fonts/ChronicleTextG1-Semibd-Pro.otf") format("truetype")
}