/*  
Theme Name: Tasman Bay Cruising Club WordPress Theme
Theme URI: http://sww.co.nz/
Description: Custom theme by Stellar Web Works
Version: 1.0
Author: Aidan Curran
Author URI: http://sww.co.nz/

colours:

blue: #165BA8
gold: #BAAD85
darker blue: #124C8D
darker gold: #9C9170

black (75%): #3D3D3D

*/
html,body {
	margin:0;
	padding:0;
   background-color: #fffffff;
   font-family: 'Noto Sans', sans-serif;
   color: #444444;
   font-size: 18px;
}
body {
}
h1, h2, h3, h4 {
   color: #3D3D3D;
}
h1 {
   font-size: 36px;
   color: #165BA8;
   text-align: center;
   text-transform: uppercase;
   font-family: 'Poppins', sans-serif;
   font-weight: 300;

}
h2 {
   font-size: 30px;
   text-transform: uppercase;
   text-align: center;
   font-weight: 400;
}
h3 {
   font-size: 24px;
}
h4 {
   font-size: 1em;
}
a {
   color: #165BA8;
}
a:hover {
   color: #9C9170;
}
h1 a, h2 a {
   text-decoration: none;
} 
img {
   border: 0;
}
div, section {
}
.blue {
   color: #165BA8;
}

.wp-block-nextend-smartslider3 {
   overflow: hidden; /* allows the h1 to overlay the slider */
}

/* Section Styles */
section {
   /*overflow: hidden;*/
   padding: 50px 0;
   background-size: cover;
   background-position: center center;
   position: relative;
}
section#topbanner.img_bg {
   height: 150px;
   background-image: url("images/header1.jpg");
   background-size: auto;
   background-size: cover;
   background-position: center center;
   position: relative;
   padding: 0;
}
section#topbanner.blue, section#topbanner.gold {
   min-height: 3px;
   background-color: #165BA8;
   position: relative;
   padding: 0;
}
section#topbanner.gold {
   background-color: #BAAD85;
}
section#topbanner.none {
   display: none;
}
section#topbanner .contents {
   display: flex;
   align-items: center;
   justify-content: center;
   height: 100%;
}
section#topbanner h1 {
   padding: 10px 30px;
   margin: 0;
}
section#topbanner.img_bg h1 {
   padding: 5px 30px;
   display: inline-block;
   background-color: rgba(255,255,255,0.5);
   border-radius: 10px;
}
section#topbanner.blue h1, section#topbanner.gold h1 {
   color: #fff;
}
/*#section2,#section4,#section6,#section8,#section10,#section12 {
   background-color: #F0F0F0;
}*/
#intro-section {
   padding: 0;
   position: relative;
}
#intro-section.extra-large {
   margin-top: -140px;
   width: 100%;
}
#intro-section div.contents {
   background-color: rgba(255,255,255,0.85);
   box-sizing: border-box;
}
#intro-section div.contents:before {
   content: " ";
   background-color: #BAAD85;
   width: 30px;
   height: 30px;
   position: absolute;
   top: -15px;
   left: 50%;
   transform: rotate(45deg);
}
#intro-section h1 {
   position: relative;
   padding: 0;
   margin: 0;
}
#intro-section.extra-large h1 {
   height: 140px;
   line-height: 140px;
}
#intro-section.normal h1 {
   height: 120px;
   line-height: 120px;
   /*border-top: 1px solid #BAAD85;
   border-left: 1px solid rgba(186,173,133,0.2);
   border-right: 1px solid rgba(186,173,133,0.2);
   background: rgba(186,173,133,0.08);*/
}
#intro-section .intro-text {
   background-color: #BAAD85;
   color: #ffffff;
}
#intro-section.normal .intro-text{
   padding: 30px 50px;
   font-size: 20px;
}
#intro-section.extra-large .intro-text {
   padding: 30px 150px;
   font-size: 24px;
   line-height: 1.6em;
}

section.has-side-image {
   position: relative;
}
section.has-side-image .side-image { 
   width: 50%;
   height: 100%;
   background-image: url(images/side-image.jpg);
   background-size: cover;
   position: absolute;
   left: 50%;
   top: 0;
}
section.has-side-image .textcontent {
   width: 50%;
   box-sizing: border-box;
   padding-right: 30px;
}
.darkbg, .bluebg {
   color: #fff;
   background-color: #165BA8;
}
.darkbg h1, .darkbg h2, .darkbg h3, .darkbg h4,
.bluebg h1, .bluebg h2, .bluebg h3, .bluebg h4 {
   color: #fff;
}
section.lightgreybg {

   border-top: 1px solid #DADADA;
   border-bottom: 1px solid #DADADA;

   /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#eeeeee+0,ffffff+30,ffffff+70,eeeeee+100 */
   background: #eeeeee; /* Old browsers */
   background: -moz-linear-gradient(top,  #eeeeee 0%, #ffffff 30%, #ffffff 70%, #eeeeee 100%); /* FF3.6-15 */
   background: -webkit-linear-gradient(top,  #eeeeee 0%,#ffffff 30%,#ffffff 70%,#eeeeee 100%); /* Chrome10-25,Safari5.1-6 */
   background: linear-gradient(to bottom,  #eeeeee 0%,#ffffff 30%,#ffffff 70%,#eeeeee 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
   filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#eeeeee',GradientType=0 ); /* IE6-9 */

}

section#regattapromo .textcontent {
   text-align: center;
}
section#regattapromo .textcontent p > strong {
   font-size: 24px;
}
section#regattapromo h2 strong {
   font-size: 36px;
   display: block;
}
section .contents {
   z-index: 10;
   position: relative;
}
div.overlay {
   position: absolute;
   width: 100%;
   height: 100%;
   background-color: #000000;
   opacity: 0.2;
   top: 0;
   left: 0;
}
div.overlay.none {
   display:none;
}
div.overlay.darken1 {
   background-color: #000000;
   opacity: 0.2;
}
div.overlay.darken2 {
   background-color: #000000;
   opacity: 0.4;
}
div.overlay.blue1 {
   background-color: #165BA8;
   opacity: 0.6;
}
div.overlay.blue2 {
   background-color: #165BA8;
   opacity: 0.85;
}

/* boxes, and other Gutenberg custom blocks */
div.box {
   background-color: #165BA8;
   color: #fff;
   margin-bottom: 50px;
}
div.box h2 {
   background-color: #124C8D;
   height: 90px;
   line-height: 90px;
   margin: 0;
   color: #fff;
}
div.box-contents {
   padding: 30px 60px;
}
div.box.goldbg {
   background-color: #BAAD85;
}
div.box.goldbg h2 {
   background-color: #9C9170;
}
div.box.goldbg p.button a {
   color: #9C9170;
}   
.infoboxes .contents {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: center;
	align-content: space-around;
}
.infoboxes .contents h2 {
  flex: 0 0 100%;
}
.infobox {
   width: 28%;
   height: 0;
   padding-bottom: 18.6667%;
   position: relative;
   box-sizing: border-box;
   margin: 0 5% 8% 0;
   background-color: #165BA8;
}
.infobox .title {
   position: absolute;
   width: 100%;
   display: table;
   height: 52px;
   color: #ffffff;
   background-color: #BAAD85;
   bottom: 18px;
   left: 30px;
   font-size: 20px;
   z-index: 10;
   box-sizing: border-box;
   padding-left: 15px;
   font-weight: bold;
   text-transform: uppercase;
}
.infobox .title a {
   color: #ffffff;
   display: table-cell; 
   vertical-align: middle;    
   text-decoration: none;
   padding: 10px 0;
}
.infobox .picture img {
   width: 100%;
   height: auto;
   position: absolute;
   top: 0;
   left: 0;
}
.infobox .picture img:hover, .infobox .head:hover + .picture img  {
   opacity: 0.9;
}
.infobox .description {
   position: absolute;
   font-size: 16px;
   width: 100%;
   display: table;
   height: 52px;
   background-color: rgba(0,0,0,0.5);
   color: #fff;
   padding: 0 5px 0 15px;
   box-sizing: border-box;
   bottom: -30px;
   left: 30px;
}
.infobox .description div {
   display: table-cell; 
   vertical-align: middle;    
}

.infobox:info .description {
   display: static;
}

.dashboard_link_block {
   width: 30%;
   float: left;
   margin: 1.5%;
   background-color: #4caf50;
   color: #ffffff;
   height: 150px;
   padding-top: 50px;
   font-size: 20px;
   cursor: pointer;   
   text-align: center;
}
.dashboard_link_block  i.fa {
    font-size: 60px;
}

/* special headings */
.icon-heading {
   color: #165BA8;
   text-align: center;
   background-repeat: no-repeat;
   background-position: center top;
   padding-top: 100px;
   font-weight: normal;
}
#racing-heading {
   background-image: url(images/racing-icon.png);
}
#events-heading {
   background-image: url(images/social-icon.png);
}


/* breadcrumbs */
div.breadcrumbs {
   background-color: #f0f0f0;
   border-bottom: 1px solid #e6e6e6;
   padding: 10px 0;
}
div.breadcrumbs a, div.goback a {
   text-decoration: none;
   font-weight: bold;
}
div.goback {
   text-align: center;
   margin-top: 50px;
}

/* Logo Slider tweaks */
div.owl-carousel {
   padding: 0 70px;
   width: calc(100% - 140px);
}
.owl-carousel .owl-stage {
  display: flex;
  align-items: center;
}
.lgx-logo-slider-wp .nav-position-v-mid .owl-controls .owl-next, 
.lgx-logo-slider-wp .nav-position-v-mid .owl-controls .owl-prev {
   top: calc(50% - 22px) !important;
}  

ul.inline {
   padding: 0;
}
ul.inline li {
   display: inline-block;
   margin: 0 0.2em;
   font-style: italic;
}
ul.inline li:before {
  content: '\25C6';
  margin-right: 0.3em;
}

ul:not([class]), 
ul.links {
   list-style-type: none;
}
ul:not([class]) li,
ul.links li {
   padding: 5px 0 5px 25px;
   position: relative;
}
ul:not([class]) li:before, 
ul.links li:before {
  content: '\25C6';
  margin-right: 0.3em;
  color: #165BA8;
  position: absolute;
  top: 5px;
  left: 0;
}
ul.links {
   margin: 20px auto;
   display: inline-block;
   padding-left: 50px;
}
ul.links li:after {
  content: ' \27A4'; 
  color: #165BA8;
  font-weight: bold;
} 
ul.links li a {
   text-decoration: none;
   font-weight: bold;
}

td {
   vertical-align:top;
}
blockquote {
	-moz-border-radius: 10px;
	-khtml-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
   background: #e9e9e9 url(images/quote.png) 15px 6px no-repeat;
   padding: 15px 15px 15px 54px;
   margin: 30px 40px;
}
blockquote p {
   margin: 0;
}
blockquote cite {
   margin-top: 10px;
   display: block;
   text-align: right;
}
header {
   min-height: 115px;
   overflow: hidden;
   padding-top: 20px;
}
header #logo {
   max-width: 300px;
   height: auto;
}


header #headerleft {
   float: left;
   width: 30%;
}
header #headerlogo {
   float: left;
   width: 40%;
   text-align: center;
}
header #headerright {
   float: right;
   width: 30%;
   text-align: right;
   font-size: 32px;
}

header a {
   text-decoration: none;
}
header #headerright a {
   color: #BAAD85;
}

.contents {
   margin: 0 auto;
}
main {
   background: transparent;
   position: relative;
   z-index: 10;
}
.bordertop {
   border-top: 2px solid #BAAD85;
}

nav {
   text-align: center;
}
#topnav {
   clear: both;
   line-height: 30px;
   overflow: hidden;
   margin: 30px 0 10px 0;
}
nav a {
   margin: 0 20px;
   padding: 0;
   text-decoration:none;
   text-transform: lowercase;
   display: inline-block;
   color: #444444;
   border-bottom: 6px solid transparent;
}
#topnav a:hover, #topnav li.current_page_item a, #topnav li.current-page-ancestor a {
   color: #BAAD85;
}
#topnav li.current_page_item a, #topnav li.current-page-ancestor a { 
   border-bottom: 6px solid #BAAD85;
}
nav ul, #subnav ul, footer#footer nav ul {
   list-style: none;
   margin: 0;
   padding: 0;
}
nav li, #subnav li, footer#footer nav li {
   display: inline;
   list-style: none;
   margin: 0;
   padding: 0;
   background: none;
}
#subnav {
   text-align: center;
}
#subnav a {
   color: #999;
   text-decoration:none;
   font-weight: bold;
   font-size: 18px;
   display: inline-block;
   padding: 10px 20px;
   text-transform: lowercase;
}
#subnav a:hover, #subnav li.current_page_item a, #subnav li.current-page-ancestor a {
   color: #cc0000;
}

.clear {
   clear:both;
}
.centered {
   text-align:center;
}
div.divider {
   clear: both;
   margin: 50px 0 30px 0;
   border-bottom: 2px solid #999;
}
hr.wp-block-separator {
   display:block;
   padding: 0;
   margin: 50px 25%;
   border: 0;
   border-top: 1px solid #ccc;
   height: 1px;
}

#hero {
   background: url(images/slide1.jpg) center center no-repeat;
   background-size: cover;
   width: 100%;
   /*height: 700px;
   position: absolute;*/
}
#hero img.imageonly {
   width: 100%;
   height: auto;
   display: block;
   margin: 0 auto;
}
#hero img.headerimg {
   width: 100%;
   max-width: 1200px;
   height: auto;
   display: block;
   margin: 0 auto;
}
#hero div#n2-ss-2 {

}
#panelband {
   overflow: hidden;
   padding: 30px 0;
   background-color: #f0f0f0;
}
.panel {
   float: left;
   width: 32%;
   margin-left: 2%;
   position: relative;
}
#panel1 {
   margin-left: 0;
}
.panel .head {
   position: absolute;
   width: 100%;
   height: 100%;
   height: 30px;
   line-height: 30px;
   font-size: 1.429em;
   z-index: 10;
}
.panel .head a {
   color: #3D3D3D;
   text-decoration: none;
   text-shadow: 0px 0px 10px #fff;
   font-size: 40px;
   line-height: 80px;
   display: block;
   width: 100%;
   height: 100%;
   text-align: center;
}
.panel .picture img {
   width: 100%;
}
.panel .picture img:hover, .panel .head:hover + .picture img  {
   opacity: 0.9;
}
.panel .body {
   font-size: 1.071em;
   min-height: 100px;
   padding: 10px 10px 0 10px;
   overflow: hidden;
}
.panel li {
   margin: 0;
}
.panel ul {
   margin: 0 0 0 10px;
}
.more {
   text-align: center;
   margin-top: 30px;
}
.panel .more {
   margin-top: 15px;
}
.more a, a.button {
   text-decoration:none;
   padding: 5px 20px;
   color: #fff;
   background: #124C8D;
   font-weight: bold;
}
.more a:hover {
   background: #888;
}
p.button {
   text-align: center;
   margin: 45px 0 30px 0;
}
p.button a {
   text-decoration:none;
   padding: 15px 30px;
   color: #fff;
   background: #333333;
   font-size: 18px;
   display: inline-block;
   border-radius: 28px;
}
.darkbg p.button a, .bluebg p.button a {
   color: #165BA8;
   background: #ffffff;
}

.leftcol {
   float: left;
   width: 60%;
   padding-right: 5%;
}
.rightcol {
   float: left;
   width: 35%;
}
.halfcol {
   float: left;
   width: 50%;
}
.twothirdcol {
   float: left;
   width: 66.666%;
}
.thirdcol {
   float: left;
   width: 33.333%;
}
.quartercol {
   float: left;
   width: 25%;
}
.lhscol {
   padding-right: 20px;
   box-sizing: border-box;
}
.rhscol {
   padding-left: 20px;
   box-sizing: border-box; 
} 


footer#footer {
   background-color: #124C8D;
   color: #fff;
   padding: 50px 0;
   overflow: hidden;
}
footer#footer .contents {
   position: relative;
}
footer#footer a {
   color: #fff;
   text-decoration:none;
   font-weight: 600;
   font-size: 18px;
   display: inline-block;
}
footer#footer nav ul {
   text-align: center;
}
footer#footer nav li {
   display: block;
   vertical-align: top;
   padding: 0;
   text-align: left;
   line-height: 1.2em;
}
footer#footer nav li:before {
  content: '\25C6';
  margin-right: 0.3em;
}
footer#footer nav li a {
   font-size: 16px;
   padding: 0;
   margin: 0;
   font-weight: normal;
   text-transform: lowercase;
}
footer#footer h4 {
   color: #ffffff;
   margin: 0 0 10px 0;
   text-transform: uppercase;
}
footer#footer li.current_page_item a {
   font-weight: bold;
}

#footerlogo a {
   padding: 0;
   margin: 0;
}
#footerlogo img {
   max-width: 270px;
   height: auto;   
   padding: 0;
   margin: 0 0 40px 0;
}
#footerlogo .phone {
   font-size: 20px;
   font-weight: bold;
   margin: 0;
   display: inline-block;
}
#footerlogo .email {
   margin: 0;
   padding-left: 20px;
   display: inline-block;
}
#footerlogo p.social a {
   font-size: 24px;
   margin: 0 5px;
}
#credits {
   margin-top: 5px;
   padding: 10px;
   text-align: center;
   font-size: 0.786em;
   color: #999999;
}
#credits a {
   text-decoration: none;
   color: #999999;
}
#credits a:hover {
   text-decoration: underline;
   color: #666666;
}
img.leftalign {
   display: block;
   float: left;
   text-align: left;
   margin: 0 25px 5px 0;
}
img.rightalign {
   display: block;
   float: right;
   text-align: right;
   margin: 0 0 5px 15px;
}
img.centeralign {
   display: block;
   margin: 10px auto;
   text-align: center;
}
table.labels {
   width:50%;
   margin:10px auto;
}
table.labels th {
   text-align: right;
   padding-right: 30px;
}
div.rounded {
	-moz-border-radius: 8px;
	-khtml-border-radius: 8px;
	-webkit-border-radius: 8px;
	border-radius: 8px;
}
div.shaddow {
	-moz-box-shadow: rgba(200,200,200,1) 0 4px 18px;
	-webkit-box-shadow: rgba(200,200,200,1) 0 4px 18px;
	-khtml-box-shadow: rgba(200,200,200,1) 0 4px 18px;
	box-shadow: rgba(200,200,200,1) 0 4px 18px;
}
div.opacity {
   opacity: 0.5;
   -moz-opacity: 0.5;
   filter:alpha(opacity=50);   
}
a.scrollup {
	width: 67px;
	height: 67px;
	position: fixed;
	bottom: 25px;
	right: 25px;
	display: none;
	text-indent: -9999px;
	background: url('images/top.png') no-repeat;
	opacity: 0.3;
   z-index: 20;
}


/* Gutenberg Blocks customisations */
div.wp-block-button {
}
a.wp-block-button__link {
   background-color: #165BA8;
   color: #fff;
}
.bluebg a.wp-block-button__link, .darkbg a.wp-block-button__link {
   background-color: #fff;
   color: #165BA8;
}
.goldbg a.wp-block-button__link {
   color: #9C9170;
}
iframe#googlemap {
   display: block;
}


/* WP Common Styles */
.editLink {
   text-align: center;
   padding: 5px 0 15px 0;
}
.editLink a, a.editLink {
   background: #e0e0e0;
   color: #777777;
   font-size: 10px; 
   border: 1px solid #999999;
   text-decoration: none;
   padding: 3px 5px;
}
.editLink a:hover, a.editLink:hover {
   background: #eeeeee;
   border: 1px solid #333333;
   color: #000000;
}
.postmetadata, .postdate {
   color: #999;
   font-size: 14px;
   margin: 2px 0;
}
img.aligncenter, div.aligncenter {
   display: block;
   margin: 20px auto;
}
img.alignright, div.alignright {
   display: block;
   float: right;
   margin: 0 0 30px 30px;
}
img.alignleft, div.alignleft {
   display: block;
   float: left;
   margin: 0 30px 30px 0px;
}
img.aligncenter {
   text-align: center;
}
img.alignright {
   text-align: right;
}
img.alignleft {
   text-align: left;
}
.wp-caption-text,.wp-caption-dd {
   margin: 0;
   font-weight: bold;
   font-size: smaller;
   text-align: center;
}
.more-link {
   display:block;
   text-align:right;
}
.linklove {
   display:none;
}
/* Comments */
#comments {
   margin-top: 100px;
   color: #333;
   background: #f3f3f3;
   padding: 10px 20px;
   clear:both;
}
#comments .navigation {
	padding: 0 0 18px 0;
}
h3#comments-title,
h3#reply-title {
	color: #000;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 0;
}
h3#comments-title {
	padding-bottom: 24px;
}
.commentlist {
	list-style: none;
	margin: 0;
   padding: 0;
}
.commentlist li.comment {
	border-bottom: 1px solid #e7e7e7;
	line-height: 24px;
	margin: 0 0 24px 0;
	padding: 0 0 0 56px;
	position: relative;
}
.commentlist li:last-child {
	border-bottom: none;
	margin-bottom: 0;
}
#comments .comment-body ul,
#comments .comment-body ol {
	margin-bottom: 18px;
}
#comments .comment-body p:last-child {
	margin-bottom: 6px;
}
#comments .comment-body blockquote p:last-child {
	margin-bottom: 24px;
}
.commentlist ol {
	list-style: decimal;
}
.commentlist .avatar {
	position: absolute;
	top: 4px;
	left: 0;
}
.comment-author {
}
.comment-author cite {
	color: #000;
	font-style: normal;
	font-weight: bold;
}
.comment-author .says {
	font-style: italic;
}
.comment-meta {
	font-size: 12px;
	margin: 0 0 18px 0;
}
.comment-meta a:link,
.comment-meta a:visited {
	color: #888;
	text-decoration: none;
}
.comment-meta a:active,
.comment-meta a:hover {
	color: #ff4b33;
}
.commentlist .even {
}
.commentlist .bypostauthor {
}
.reply {
	font-size: 12px;
	padding: 0 0 24px 0;
}
.reply a,
a.comment-edit-link {
	color: #888;
}
.reply a:hover,
a.comment-edit-link:hover {
	color: #ff4b33;
}
.commentlist .children {
	list-style: none;
	margin: 0;
}
.commentlist .children li {
	border: none;
	margin: 0;
}
.nopassword,
.nocomments {
	display: none;
}
#comments .pingback {
	border-bottom: 1px solid #e7e7e7;
	margin-bottom: 18px;
	padding-bottom: 18px;
}
.commentlist li.comment+li.pingback {
	margin-top: -6px;
}
#comments .pingback p {
	color: #888;
	display: block;
	font-size: 12px;
	line-height: 18px;
	margin: 0;
}
#comments .pingback .url {
	font-size: 13px;
	font-style: italic;
}
/* Comments form */
input[type=submit] {
	color: #333;
}
#respond {
	border-top: 1px solid #e7e7e7;
	margin: 24px 0;
	overflow: hidden;
	position: relative;
}
#respond p {
	margin: 0;
}
#respond .comment-notes {
	margin-bottom: 1em;
   font-style: italic;
   color: #999;
}
.form-allowed-tags {
	line-height: 1em;
}
.children #respond {
	margin: 0 48px 0 0;
}
h3#reply-title {
	margin: 18px 0;
}
#comments-list #respond {
	margin: 0 0 18px 0;
}
#comments-list ul #respond {
	margin: 0;
}
#cancel-comment-reply-link {
	font-size: 12px;
	font-weight: normal;
	line-height: 18px;
}
#respond .required {
	display:none;
}
#respond label {
	color: #888;
	font-size: 12px;
   width: 80px;
   display: block;
   float: left;
   text-align: right;
   padding-right: 10px;
}
#respond input {
	margin: 0 0 9px;
	width: 500px;
}
#respond textarea {
	width: 500px;
}
#respond .form-allowed-tags {
	color: #888;
	font-size: 12px;
	line-height: 18px;
}
#respond .form-allowed-tags code {
	font-size: 11px;
}
#respond .form-submit {
	margin: 12px 0;
}
#respond .form-submit input {
	font-size: 14px;
	width: auto;
}

/* Contact Form 7 */
div.wpcf7 {
   clear: both;
   overflow: hidden;
   background-color: #e6e6e6;
   border-radius: 5px;
   width: 464px;
   max-width: 100%;
   margin: 30px 0 !important;
}
div.wpcf7 form {
   padding: 0 30px;
   margin: 0;
}
div.wpcf7-response-output {
   background: #fff;
}
span.wpcf7-not-valid-tip {
   font-size: 0.750em !important;
}
input.wpcf7-submit {
   background: #666;
   color: #fff;
   font-size: 1.1em;
   border-radius: 3px;
   border: 1px solid #555;
   padding: 5px 20px;
}
input.wpcf7-submit:hover {
   background: #555;
}
input.wpcf7-text, input.wpcf7-captchar, textarea.wpcf7-textarea {
   border: 1px solid #aaa;
   width: 400px;   
   height: 26px;
}
textarea.wpcf7-textarea {
   height: 180px;
}
input.wpcf7-text:hover, input.wpcf7-captchar:hover, textarea.wpcf7-textarea:hover {
   border: 1px solid #999;
}
input.wpcf7-text:focus, input.wpcf7-captchar:focus, textarea.wpcf7-textarea:focus {
   border: 1px solid #666;
}
div.wpcf7 div.wpcf7-validation-errors {
    border: 2px solid #f00000;
}

/* Events */

ul.eo-events {
   list-style: none;
   padding: 0;
   min-height: 300px;
}
li.eo-no-events {
   padding: 100px 50px;
   font-style: italic;
   text-align: center;
}
.event-item {
   padding: 30px 0 10px 0;
   border-bottom: 1px solid #BAAD85;
}
.event-item .date-box {
    display: inline-block;
    float: left;
    width: 60px;
    text-align: center;
    font-weight: 700;
    color: #ffffff;
    font-size: 20px;
    line-height: 28px;
    background-color: #BAAD85;
    padding: 5px;
    margin-right: 10px;
}
.event-details {
    display: inline-block;
}
.event-title a {
    font-size: 20px;
    line-height: 30px;
    font-weight: bold;
}
.event-title a {
    color: #BAAD85;
    text-decoration: none;
}
.event-details .time {
    line-height: 30px;
}

/* ------------------------------------------------- Responsive Elements ------------------------------------------------- */


#responsive-indicator {
display:none;
   font-size: 12px;
   margin-right: 20px;
   color: #ccc;
}
#bp2, #bp3, #bp4, #bp5 {
   display: none;
}

/* BP1 - defaults: WIDE screen - computer monitors, tablets in landscape, standard and large screens (typically wider than 1024px), old browsers */
   #bp1 {display: inline; }
   .contents { width:90%; max-width: 1200px; min-width: 300px;}
   #mobile-menu-btn { display: none; }

   img {max-width: 100%; height: auto !important; }
   
   .mobile {display: none; }

/* BP2 - MEDIUM-WIDE SCREEN */
/* width 1000px - 1400px */
@media screen and (max-width: 1400px) {
   #bp2 {display: inline; }
   #bp1 {display: none; }
   
   h1 { font-size: 33px; }
   h2 { font-size: 29px; }
   #intro-section.extra-large {
      margin-top: -100px;
   }
   #intro-section.all h1 {
      height: 100px;
      line-height: 100px;
   }
   #intro-section.all .intro-text {
      padding: 30px 100px;
      font-size: 22px;
   }
   #intro-section div.contents:before {
      width: 26px;
      height: 26px;
      top: -13px;
   }
   div.wp-block-image figure.alignright, 
   div.wp-block-image figure.alignleft {
      max-width: 60%;
   }
   
   
}
   
/* BP3 - MEDIUM SCREEN */
/* width 750px - 1000px */
@media screen and (max-width: 1000px) {
   #bp3 {display: inline; }
   #bp2 {display: none; }
   nav a, #subnav a { margin: 0 5px; padding: 10px 15px; font-size: 15px; }
   #hero { padding: 10px; }

   .panel .head a { font-size: 30px;}
   
   div.wpcf7 form {
       margin: 0 auto;
       width: 360px;
   }
   input.wpcf7-text, input.wpcf7-captchar, textarea.wpcf7-textarea { width: 350px;}
   
   
   
   h1 { font-size: 30px; }
   h2 { font-size: 26px; }
   h3 { font-size: 22px; }
   header { padding-top: 20px; }  
   header #logo { max-width: 260px; }
   section { padding: 40px 0; }
   #intro-section.all { margin-top: 0; }
   #intro-section.all div.contents { width: 100%; }
   #intro-section div.contents:before {
      width: 20px;
      height: 20px;
      top: -10px;
   }
   #intro-section.all h1 {
      height: auto;
      line-height: normal;
      position: static;
      padding: 20px 0;
   }
   #intro-section.all .intro-text {
      font-size: 20px;
      line-height: 1.5em;
      padding: 20px 50px;
   } 
   section.has-side-image {
      padding-bottom: 0;
   }
   section.has-side-image .side-image { 
      width: 100%;
      height: 350px;
      position: static;
   }
   section.has-side-image .textcontent {
      width: 100%;
      height: auto;
      padding-right: 0px;
      padding-bottom: 30px;
   }
   /* info boxes */
   .infobox .title {
      font-size: 18px;
   }   
   div.box h2 {
      height: 80px;
      line-height: 80px;
   }
   div.box-contents {
      padding: 30px 30px;
   }
   div.block div.image img { float: none !important; display:block; margin: 30px auto; }   
   div.wp-block-image figure.alignright.size-large, 
   div.wp-block-image figure.alignleft.size-large {
      float: none !important;
      margin: 30px auto;
      max-width: 100%;
   }

   iframe#googlemap {
      height: 500px;
   }
   
   footer#footer nav ul li, footer#footer div.quartercol {
      text-align: center;
   }
   #footerlogo img {
      max-width: 200px;
   }   
   
}

/* BP4 - MEDIUM-SMALL SCREEN */
/* width 500px - 750px */
@media screen and (max-width: 750px) {
   #bp4 {display: inline; }
   #bp3 {display: none; }

   html,body { font-size: 14px; }
   .contents { width:95%; }
   nav a, #subnav a { margin: 0 5px; padding: 10px 5px; font-size: 14px; }
   .leftcol, .rightcol, .halfcol, .thirdcol { float: none; width: auto;}
   .quartercol { width: 50%; margin-top: 20px; }
   .wp-block-column {
       flex-basis: 100% !important;
   }
   #hero { padding: 0; }

   .panel, #panel1 {
      float: none;
      width: 280px;
      margin: 10px auto;
      padding: 10px;
   }
      
   div.block { padding: 10px 20px; }

   div.wpcf7 form { width: 310px; }
   input.wpcf7-text, input.wpcf7-captchar, textarea.wpcf7-textarea { width: 300px;}


   h1 { font-size: 28px; }
   h2 { font-size: 24px; }
   h3 { font-size: 20px; }
   h1 span { white-space: nowrap; }
   header { padding-top: 20px; }  
   header #logo { max-width: 220px; }
   #mobile-menu-btn { 
      display: inline-block;
      width: 32px;
      height: 32px;
      background: url(images/menu-icon.png) 0 0 no-repeat;
      padding: 4px;
      cursor: pointer;
   }
   #topnav { float: none; width: auto; margin-top: -30px; min-height: 40px; text-align: right; clear: both; }
   #topnav ul { display:none; }
   #topnav ul.open {  
     width: 100%;  
     display: block;  
     height: auto;  
     padding-top: 0;
     margin-top:0;
   }  
   #topnav li {  
     width: auto;  
     float: none;  
     position: relative;  
   }  
   #topnav li a {  
     display: block;
     margin: 0;
     padding: 3px 0px;
     border-bottom: 1px solid #d0d0d0;
     text-align: left;
     width: 100%;
     text-indent: 25px;
     line-height: 30px;
   }
   #intro-section.all .intro-text {
      font-size: 18px;
      padding: 20px 40px;
   } 
   
   /* info boxes */
   .infobox {
      width: 45%;
      padding-bottom: 30%;
   }   
   div.box h2 {
      height: 70px;
      line-height: 70px;
   }
   #footerlogo {
      clear: both;
   }
   #footerlogo img {
      margin: 40px 0 40px 0;
   }
   iframe#googlemap {
      height: 400px;
   }
   
   ul.events {
      min-height: 0;
   }
}

/* BP5 - SMALLEST SCREEN */
/* width 320px - 500px */
@media screen and (max-width: 500px) {	
   #bp5 {display: inline; }
   #bp4 {display: none; }

   .contents { width: 96%;}
   /*header #headertext { padding: 20px 20px 20px 0; }*/
   h1 { font-size: 24px; }
   h2 { font-size: 22px; }
   h3 { font-size: 18px; }
   header { padding-top: 5px; }  
   header #headertext { display:none; }
   header #headerleft {
      width: 50%;
   }
   header #headerright {
      width: 50%;
      font-size: 24px;
   }
   header #headerlogo {
      float: none;
      clear: both;
      width: auto;
      text-align: center;
      margin-right: 30px;
   }
   header #logo {
      max-width: 180px;
   }

   .quartercol { float: none; width: auto; margin: 20px 0 0 0;}  
   
   section { padding: 40px 0; }

   #intro-section.all {
      margin-top: 0;
   }
   #intro-section.all div.contents {
      width: 100%;
   }
   #intro-section.all div.contents:before {
      width: 20px;
      height: 20px;
      top: -10px;
   }
   #intro-section.all h1 {
      height: auto;
      line-height: normal;
      position: static;
      padding: 20px 0;
   }
   #intro-section.all .intro-text {
      font-size: 16px;
      line-height: 1.5em;
      padding: 10px;
   } 
   
   section.has-side-image {
      padding-bottom: 0;
   }
   section.has-side-image .side-image { 
      width: 100%;
      height: 350px;
      position: static;
   }
   section.has-side-image .textcontent {
      width: 100%;
      height: auto;
      padding-right: 0px;
      padding-bottom: 30px;
   }
      
   /* info boxes */
   .infobox {
      width: 70%;
      padding-bottom: 46.666667%;
      margin-bottom: 50px;
   }
   .infobox .title {
      min-height: 30px;
      bottom: 12px;
      left: 20px;
      font-size: 16px;
   }   
   .infobox .description {
      left: 20px;
      bottom: -40px;
   }   
   div.box h2 {
      height: 60px;
      line-height: 60px;
   }
   div.box-contents {
      padding: 20px 30px;
   }

   iframe#googlemap {
      height: 300px;
   }

   div.block div.image img { float: none !important; display:block; margin: 30px auto; }   
   div.wp-block-image figure.alignright, 
   div.wp-block-image figure.alignleft {
      float: none !important;
      margin: 30px auto;
      max-width: 100%;
   }
   
   footer#footer nav ul li, footer#footer div.quartercol {
      text-align: center;
   }
   
  
   /* Contact Form 7 */
   div.wpcf7 { margin: 10px auto !important; width: 300px; }
   div.wpcf7 form { padding: 0 25px; }
   input.wpcf7-text, input.wpcf7-captchar, textarea.wpcf7-textarea { width: 246px; height: 20px; }
   textarea.wpcf7-textarea { height: 120px; }     
}


