body {
	margin: 0;
	-webkit-font-smoothing: antialiased;
	font-family: 'Open-Sans', sans-serif;
}
img {
	max-width: 100%;
}

#header {
	/*background-color: #044762;*/
	background: rgba(4, 71, 98, 0.8);
	position: relative;
}
#logo {
	width: 350px;
	padding-left: 20px;
	padding-top: 10px;
	padding-bottom: 10px;
	display: inline-block;
}
#logo img {
	max-width: 350px;
}

/* ----------- nav bar -------------- */

#navbtn {
	display: none;
	position: absolute;
	top: 92px;
	right: 10px;
	width: 50px;
	padding-left: 2px;
	padding-right: 2px;
	height: 50px;
	cursor: pointer;
	cursor: hand;
	cursor: pointer;
	cursor: hand;
}
.menu-global {
  backface-visibility: hidden;
  position: absolute;
  left: 11px;
 border-top: 3px solid #FFF;
  width: 32px;
  transition: 0.55s;
}
.menu-top {
  top: 11px;
}
.menu-middle {
  top: 23px;
}
.menu-bottom {
  top: 35px;
}
#navbtn.sel {
	
}
#navbtn.sel .menu-top {
  backface-visibility: hidden;
  top: 23px;
  transform: rotate(220deg);
  -webkit-transform: rotate(220deg);
  transition: 0.55s 0.5s;
}
#navbtn.sel .menu-middle {
  opacity: 0;
}
#navbtn.sel .menu-bottom {
  backface-visibility: hidden;
  top: 23px;
  transform: rotate(-220deg);
  -webkit-transform: rotate(-220deg);
  transition: 0.55s 0.5s;
}
header .newsletter {
	position: absolute;
	top: 18px;
	right: 0;
	z-index: 10;
}
header nav {
	display: inline-block;
	vertical-align: top;
}
header nav ul {
	list-style:none;
	text-align: center;
	margin: 0;
	padding: 0;
	padding-top: 84px;
	padding-left: 20px;
}
header nav li {
    display:inline;
    position: relative;
}
header nav a {
	
	padding: 3px 10px;
	margin-left: 10px;
    display: inline-block;
    font-size: 18px;
	background: rgba(255,255,255,0.1);
	border-radius: 4px;
	font-weight: 400;
    font-family: 'Noto Serif', serif;
    color: #FFF;
    text-decoration: none;
}

/* dropdowns */
header nav ul li ul {
	display: none;
	
}
header nav ul ul {
	display: none;
	position:absolute;
	width: 250px;
	height: auto;
	left: 0;
	padding: 5px 0;
	margin-left: 0;
	border-radius: 5px;
	background-color: #6891a1;
}
header ul ul li {
	text-align: left;
	background-color: #6891a1;
	display: block;
	border-bottom: 1px solid #326a7f;
}
header ul ul li:hover {
	background-color: #57a1bd;
}
header ul ul li a {
	font-family: "Noto Serif", serif;
	font-size: 16px;
	padding: 10px 5px;
	margin-left: 0;
	text-transform: none;
	display: block;
	color: #000;
	line-height: 24px;
}
header ul ul li .fa {
	font-size:  24px;
	min-width: 40px;
	text-align: center;
	display: inline-block;
}



/* user profile */
#member-bar {
	background-color: #333;
	position: relative;
	text-align: right;
}
#member-bar ul {
	list-style: none;
	margin: 0;
	margin-right: 15px;
	height: 44px;
}
#member-bar li {
	 display:inline-block;
	 padding: 10px;
	 color: #FFF;
	 overflow: hidden;
	 min-width: 24px;
	 position: relative;
	 cursor: pointer;
	 cursor: hand;
}
#member-bar li a {
	color: #FFF;
	text-decoration: none;
}
#member-bar .far, #member-bar .fas {
	font-size: 24px;
}

.button.newsletter {
	background-color: #F5A235;
	color: #000;
	text-decoration: none;
	font-size: 16px;
	width: 200px;
	padding: 10px;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	vertical-align: middle;
}
.button.newsletter:hover {
	background-color: #f8c17a;
}
.button.newsletter .fa-envelope {
	font-size: 24px;
	vertical-align: middle;
}


/* ------------ content ------------- */

.content {
	max-width: 1100px;
	padding: 50px;
	text-align: justify;
	margin: 0 auto;
	margin-bottom: 60px;
	font-size: 1rem;
	line-height: 1.5rem;
	color: #333;

}
h1, h2, h3 {
	font-family: "Noto Serif", serif;
	font-weight: 300;
	line-height: 1.2;
}
h1 {
	font-size: 3rem;
}
.content h1 {
	text-align: left;
	color: #666;
}

.row {
	clear: both;
	position: relative;
}
.column {
	float: left;
}
.column.half {
	width: 48%;
	margin: 0 1%;
}
.column.third {
	width: 31.333%;
	margin: 0 1%;
	background: #CCC;
	height: 200px;
}
.column {
	float: left;
}
.col-xxsmall {
	width: 1%;
}
.col-small {
	width: 4%;
}
.col-1 {
	width: 8%;
}
.col-2 {
	width: 16.66%;
}
.col-3 {
	width: 25%;
}
.col-4 {
	width: 33%;
}
.col-5 {
	width: 41.66%;
}
.col-6 {
	width: 50%;
}
.col-7 {
	width: 58%;
}
.col-8 {
	width: 66.66%;
}
.col-9 {
	width: 75%;
}
.col-10 {
	width: 83.33%;
}
.col-11 {
	width: 91.66%;
}
.col-12 {
	width: 100%;
}
.column.alignright {
	text-align: right;
}
.column.aligncenter {
	text-align: center;
}
.clearer {
	clear: both;
	line-height: 1px;
	font-size: 1px;
}
.media.alignleft {
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
}
.media.alignright {
	float: right;
	margin-left: 20px;
	margin-bottom: 20px;
}
.media.aligncenter {
	margin: 20px auto;
}

.button {
	background-color: #246377;
	display: inline-block;
	font-size: 20px;
	margin-top: 10px;
	padding: 10px 30px;
	color: #FFF;
	border-width: 0;
	border-radius: 4px;
	cursor: pointer;
	cursor: hand;
}
.button:hover {
	background-color: #3a9ebe;
}
.button.loading {
	background-image: url(../graphics/buttonloader.gif);
	background-size: 35px;
	opacity: 0.5;
	background-repeat: no-repeat;
	background-position: center;
	text-indent: -1000em; 
}
.button.disabled {
	opacity: 0.5;
}
.button.hide {
	display: none;
}

.content li {
	margin-top: 10px;
}


/* -------------- pagination ----------------- */
.pagination {
	margin-top: 30px;
}
.pagination .pagelink {
	display: inline-block;
}
.pagination .pagelink a {
	background-color: #034763;
	display: inline-block;
	border-radius: 4px;
	padding: 5px 10px;
	color: #FFF;
	text-decoration: none;
}
.pagination .pagelink a:hover {
	background-color: #047aab;
}
.pagination .pagelink.current {
	background-color: #999;
	padding: 5px 10px;
	border-radius: 4px;
	color: #FFF;
}


/* ------------- accordions ------------- */
.accordion-section p {
	display: none;
}
.accordion-item {
	background-color: #e9f0f6;
	padding: 20px;
	cursor: pointer;
	cursor: hand;
}
.accordion-item h2 {
	margin: 0;
}
.accordion-item.alt {
	background-color: #FFF;
}
.accordion-caret {
	float: right;
	font-size: 2rem;
}
.accordion-item p {
	display: block;
}
.accordion-item p.hide {
	display: none;
}
.accordion-content {
	display: none;
	padding: 20px 30px;
	text-align: left;
}


/* ------------ home ------------ */

.content.bannerwrap,
.content.news {
	width: 100%;
	max-width: 100%;
}

.home-banner {
	
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-position: center;
	padding-top: 500px;
	margin-top: -145px;
}
.home-banner h1 {
	display: block;
	margin: 0;
	color: #FFF;
	background: rgba(0, 0, 0, 0.5);
	text-align: center;
	font-size: 40px;
	padding: 50px 0;
	font-weight: normal;
}

.content.home-description,
.content.home-section,
.content.home-supporting {
	margin: 60px auto;
}

.home .content.news {
	background: linear-gradient(to bottom, #ffffff 0%,#c5d4db 100%);
	padding-bottom: 40px;
}
.home .news h2 {
	font-size: 2.6rem;
	text-align: center;
	color: #20465c;
}
.home .news .homepost {
	width: 31.333%;
	margin: 0 1%;
	background-color: #FFF;
	border-radius: 8px;
	text-align: center;
}
.home .news .homepost .inner {
	margin: 10px;
}
.home .news .homepost-image {
	display: block;
	height: 200px;
	background-size: cover;
	background-position: center;
	border: 2px solid #507985;
	text-decoration: none;
} 
.home .news .homepost h3 {
	text-align: center;
	margin-bottom: 0;
}
.home .news .homepost h3 a {
	color: #1c2849;
	text-decoration: none;
	display: block;
	text-align: center;
	height: 50px;
	overflow: hidden;
	text-overflow: ellipsis;
}
.home .news .homepost .date {
	color: #999;
}
.home .news .homepost-cats {
	height: 70px;
	overflow: hidden;
	text-align: center;
}
.home .news .homepost-cats a {
	display: inline-block;
	background-color: #b1d9e7;
	color: #000;
	text-decoration: none;
	border-radius: 4px;
	padding: 0 8px;
	font-size: 0.8rem;
	margin-left: 4px;
	margin-top: 3px;
}
.home .content.home-supporting {
	border-bottom: 2px solid #DDD;
	margin-bottom: 30px;
	padding-bottom: 30px;
}
.content.home-supporting h2 {
	text-align: center;
}


.home-supporting-member {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
}
.home-supporting-member a {
   width: 20%;
  display: block; 
   margin: auto;
}
.home-supporting-member img {
   display: block;
   width: 100%;
   max-width: 500px; /*actual image width*/
   height: auto; /* maintain aspect ratio*/
   margin: auto; /*optional centering of image*/
}



.home .content.below {
	margin: 0 auto;
}
.home .content.below p {
	margin: 0;
}


.home .content, .events .content, .past-events .content {
	margin-bottom: 0;
	padding-bottom: 0;
	padding-top: 0;
}

.home .content.below, .events .content.below, .past-events .content.below {
	padding-bottom: 50px;
	margin-top: 0;
}
.home .content.below {
	padding-top: 60px;
}

.home .media.alignleft {
	margin-right: 60px;
}
.home .col-6 {
	width: 44%;
	margin: 0 3%;
}

/* ------------ blog categories ------------- */

.blogpost {
	border-bottom: 2px solid #507985;
	margin-top: 30px;
}

.blogpost-image {
	display: block;
	height: 200px;
	background-size: cover;
	background-position: center;
	border: 2px solid #507985;
	text-decoration: none;
} 
.blogpost h3 {
	margin-bottom: 0;
	font-size: 2rem;
	text-align: left;
}
.blogpost h3 a {
	color: #1c2849;
	text-decoration: none;
}
.blogpost .date {
	color: #999;
}
.blogpost-cats {
	height: 70px;
	overflow: hidden;
}
.blogpost-cats a {
	display: inline-block;
	background-color: #b1d9e7;
	color: #000;
	text-decoration: none;
	border-radius: 4px;
	padding: 0 8px;
	font-size: 0.8rem;
	margin-left: 4px;
}

/* -------------- faq --------------- */
.faq .content {
	margin-bottom: 0;
	padding-bottom: 0;
}
.faq .accordion-section .content {
	margin-bottom: 60px;
	padding-bottom: 50px;
}

/* ------------- events ---------------- */
.content.events {
	max-width: 100%;
	margin: 0 auto;
	padding-bottom: 50px;
	background-image: url(../graphics/events-bg.jpg);
	background-size: cover;
	background-attachment: fixed;
}
.content.events h2 {
	text-align: center;
	color: #FFF;
	font-size: 2rem;
	padding-top: 40px;
}
.content.events.single {
	padding: 50px 0;
}
.home .event h2, .events .event h2, .past-events .event h2 {
	font-size: 2rem;
	color: #0083c2;
}
.home .event h2 a, .events .event h2 a, .past-events .event h2 a {
	text-decoration: none;
	color: #0083c2;
}
.event, .noevents {
	margin: 20px auto;
	max-width: 1100px;
	position: relative;
	background: rgba(255,255,255,0.8);
	border-radius: 5px;
	padding-top: 20px;
	padding-bottom: 20px;
}
.noevents {
	text-align: center;
}
.content.events.single .event {
	padding: 40px;
}
.event .col-4 {
	background-size: cover;
	background-position: center;
	position: relative;
}
.event .col-8 {
	width: 64%;
	padding-left: 1%;
}
.content.events .event h2 {
	text-align: left;
	padding-top: 0;
}
.eventdate {
	padding: 20px 0;
	text-align: center;
}
.eventimage .eventdate {
	position: absolute;
	bottom: 15px;
	right: 0;
	width: 90%;
	background: rgba(255,255,255,0.9);
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	
}
.eventdate .weekday {
	font-size: 22px;
	line-height: 1;
	display: block;
}
.eventdate .day {
	font-size: 34px;
	line-height: 1;
	display: block;
}
.eventdate .hour {
	font-size: 14px;
	line-height: 1.5;
	display: block;
}
.event-attendees {
	display: block;
	padding-bottom: 3px;
}
.event-signup::before {
	background-image: url(../graphics/signup-arrow.svg);
	background-repeat: no-repeat;
	background-size: contain;
	height: 10px;
	width: 30px;
	position: absolute;
	top: -10px;
	left: 20px;
	content: '';
}
.event-signup {
	display: inline-block;
	color: #0083c2;
	font-family: 'Noto Serif', serif;
	font-size: 36px;
	padding: 5px 30px 15px 30px;
	line-height: 1;
	border-radius: 8px;
	text-decoration: none;
	background-color: #abd6eb;
	position: relative;
}
.event-tags {
	position: absolute;
	top: 5px;
	right: 5px;
}
.event-tags a {
	font-size: 12px;
	display: inline-block;
	background-color: #CCC;
	color: #000;
	text-decoration: none;
	padding: 0 10px;
	border-radius: 4px;
}

/* --------- calendars -------------- */

.tabs {
	list-style: none;
	margin: 0;
	margin-top: 30px;
}
.tabs li {
	display: inline;
}
.tabs li a {
	display: inline-block;
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
	padding: 0 10px;
	text-decoration: none;
	color: #333;
	background: #EEE;
}
.tabs li a:hover {
	background: #DDD;
}
.tabs li a.current {
	background: #CCC;
}
.tabsection {
	padding: 30px;
	border: 2px solid #CCC;
}

.month-wrap {
	border: 4px solid #CCC;
	border-radius: 5px;
}

.daycell {
	float: left;
	width: 14.2857%;
}
.dayheader {
	margin: 1px;
	background-color: #034763;
	color: #FFF;
	text-align: center;
	padding: 5px;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
}
.month-wrap .day {
	border: 1px solid #CCC;
	height: 130px;
	overflow: hidden;
}
.month-wrap .daycell .day.blank {
	border: 1px solid #FFF;
}
.month-wrap .daycell.past .day {
	border: 1px solid #EEE;
	color: #CCC;
}
.month-wrap .daycell.today .day {
	border: 1px solid #1ccdff;
}
.day-number {
	font-size: 1.3rem;
}
.month-wrap .dayitem {
	padding: 0 4px;
	font-size: 12px;
	text-align: center;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.month-wrap .dayitem.start {
	margin-left: 5px;
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
}
.month-wrap .dayitem.start {
	margin-right: 5px;
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
}
.calendar-keys {
	list-style: none;
}
.calendar-keys li {
	display: inline-block;
	margin-left: 10px;
	font-size: 12px;
}
.calendar-keys li span {
	display: inline-block;
	padding: 0 10px;
	border: 1px solid #000;
}

/* ----------- event signup ------------- */

.lightbox-content.event-signup-form, .lightbox-content.newsletter {
	max-width: 500px;
	background: rgba(1, 93, 138, 0.8);
	color: #FFF;
	border-color: #0083c2;
}
#spouse-form.hidden, .checkout-total.hidden, #required.hidden, .total.hidden, #payoption.hidden {
	display: none;
}
.event-signup-form h2, .lightbox-content.newsletter h1 {
	margin: 0;
}
.event-signup-form h3 {
	color: #abd6eb;
	font-size: 2rem;
}
.home .event-signup-form .lightbox-close, .lightbox-content.newsletter .lightbox-close {
	color: #0083c2;
}
#spouse-form {
	padding: 5px 2%;
	width: 96%;
	border-radius: 5px;
}

#spouse-form {
	border: 2px solid #0083c2;
}
.event-signup-form .formfield input[type="text"], .newsletter-signup .formfield input[type="text"] {
	background-color: #0083c2;
	color: #FFF;
	border-width: 0;
}
.event-signup-form .formfield input[type="text"].placeholder {
	color: #c6dfff;
}
.event-signup-form .formfield input[type="text"].required {
	background-color: #CC0000;
}
.event-signup-form .button, .newsletter-signup .button {
	background-color: #0099e2;
	border: 2px solid #0083c2;
}
.event-signup-form .button:hover, .newsletter-signup .button:hover {
	background-color: #1eb6ff;
}
.price-breakdown {
	border-top: 1px solid #0083c2;
	border-bottom: 1px solid #0083c2;
	font-size: 1.3rem;
	font-family: "Noto Serif", serif;
	line-height: 1.5;
	text-align: left;
}
.price-breakdown .item {
	border-top: 1px solid #0083c2;
	border-bottom: 1px solid #0083c2;
	padding: 5px 0;
}

.past-events-link {
	text-decoration: none;
	color: #0083c2;
	font-size: 2rem;
}

.membership h1 {
	text-align: center;
}

/* ---------- accordions ---------------- */
h2.accordion {
	cursor: pointer;
	cursor: hand;
}
div.accordion {
	display: none;
}
div.accordion.open {
	display: block;
}
.accordion .fa-caret-right {
	margin: 0 10px;
	font-size: 30px;
	transition: 0.3s ease-in-out;
}
.accordion .fa-caret-right.open {
	-ms-transform: rotate(90deg); /* IE 9 */
	-webkit-transform: rotate(90deg); /* Chrome, Safari, Opera */
	transform: rotate(90deg);
	transition: 0.3s ease-in-out;
}
.accordion .fa-caret-right.closed {
	-ms-transform: rotate(0deg); /* IE 9 */
	-webkit-transform: rotate(0deg); /* Chrome, Safari, Opera */
	transform: rotate(0deg);
	transition: 0.3s ease-in-out;
}

/* --------------- forms ---------------- */
.formfield {
	position: relative;
	font-size: 18px;
	margin: 7px 0;
	float: left;
	width: 100%;
}

.formfield.half {
	width: 48%;
	margin-right: 2%;
}
.formfield.half.right {
	margin-right: 0;
	margin-left: 2%;
}
.formfield.third {
	width: 31.33%;
	margin-left: 1%;
	margin-right: 1%;
}
.formfield.third.left {
	margin-left: 0;
	margin-right: 2%;
}
.formfield.third.right {
	margin-right: 0;
	margin-left: 2%;
}

.formfield input[type="text"], .formfield textarea, .formfield input[type="password"] {
	width: 96%;
	padding: 4px 2%;
	font-size: 18px;
	color: #333;
	border: 1px solid #333;
	border-radius: 3px;
}
.formfield select {
	width: 100%;
	font-size: 18px;
	color: #333;
	border: 1px solid #333;
}
.formfield input[type="text"]:disabled, .formfield textarea:disabled, .formfield select:disabled {
	opacity: .3;
}
.formfield input[type="text"].placeholder, .formfield textarea.placeholder {
	color: #999;
}
.formfield input[type="text"].required, .formfield textarea.required, .formfield input[type="password"].required {
	color: #CC0000;
	border-color: #CC0000;
	background-image: url(../graphics/form-required.svg);
	background-position: top right;
	background-size: 70px auto;
	background-repeat: no-repeat;
}
#required {
	color: #FF0000;
	display: none;
}
.formdata {
	display: none;
}

.registration-form-wrap {
	padding: 30px 120px;
	background-color: #EEE;
}
.registration-programs {
	width: 100%;
}
.registration-programs th {
	font-weight: bold;
	border-bottom: 2px solid #999;
	text-align: center;
}
.registration-programs td {
	border-bottom: 1px solid #CCC;
	text-align: center;
}
.registration-programs .checkbox {
	width: 80px;
}
.registration-form-wrap textarea {
	height: 100px;
}
.registration-form-wrap .address textarea {
	height: 50px;
}
.membership .totals {
	text-align: right;
	width: 48%;
	margin-left: 1%;
	border-left: 1px solid #CCC;
}
.membership .paymethods ul {
	list-style: none;
}
.membership .paymethods input {
	float: right;
}
#card-element {
	width: 100%;
	max-width: 350px;
	float: right;
}

/* ------------- lightbox ---------------- */
#lightbox {
	background: rgba(0,0,0,0.8);
	display: none;
	position: absolute;
	z-index: 9999;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.lightbox-content {
	position: relative;
	max-width: 1000px;
	margin: 100px auto;
	background: #FFF;
	border: 4px solid #333;
	padding: 20px;
}
.lightbox-close {
	position: absolute;
	display: block;
	top: 5px;
	right: 5px;
	font-size: 30px;
	color: #999;
	text-decoration: none;
}
.lightbox-close .fa {
	
}

/* ------------ banners ------------- */
.flex-control-nav {
	bottom: 40px;
	z-index: 100;
}
.flex-control-paging li a {
	background: rgba(255,255,255,0.5);
}
.flex-control-paging li a:hover {
	background: rgba(255,255,255,0.7);
}
.flex-control-paging li a.flex-active {
	background: rgba(255,255,255,0.9);
}


/* ------------ contact page ----------------- */


.contact .content p {
	padding: 0 20px;
	text-align: left;
}
.contact textarea {
	height: 200px;
}

/* ------------- member directory -------------- */

h2.directory-header {
	text-align: center;
	display: block;
	margin: 0;
	padding: 10px;
	background-color: #4a9aba;
	color: #FFF;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}

.provider-list {
	padding: 20px;
	border: 2px solid #4a9aba;
}
.row.provider {
	border-bottom: 2px solid #999;
	padding-bottom: 10px;
}
.provider-list div:last-child {
	border-bottom-width: 0;
}

.row.provider h2 {
	color: #034763;
	font-size: 2rem;
}
.row.provider h2 a {
	text-decoration: none;
	color: #034763;
}
.row.provider .contact-details a {
	font-size: 1rem;
}
.row.provider .contact-details a.providerphone {
	text-decoration: none;
	color: #333;
	padding-bottom: 5px;
	font-size: 1.2rem;
}
.provider-logo {
	padding-top: 20px;
}
.provider-logo img {
	width: 250px;
}

/* ------------ user panel --------------- */
.login-form {
	text-align: center;
}
.registerform {
	display: none;
}
.login_error {
	padding: 5px;
	margin: 10px;
	border: 1px solid #FF0000;
	color: #CC0000;
}
.forgotform, .resetform {
	display: none;
}

.usermenu {
	display: none;
	position: absolute;
	z-index: 1000;
	top: 43px;
	left: 0;
	width: 250px;
	background: rgba(0,0,0,0.9);
	border: 2px solid #333;
	border-top-width: 0;
	border-bottom-right-radius: 5px;
	border-bottom-left-radius: 5px;
	text-align: center;
}
.usermenu .userwelcome {
	color: #FFF;
	padding: 5px;
}
.usermenu .showuser {
	display: none;
}
.user-mobiletitle {
	display: none;
}
#member-bar .usermenu ul {
	height: auto;
	margin-right: 0;
	padding: 0;
}

#member-bar .usermenu li {
	display: block;
	margin-top: 1px;
	background: rgba(255,255,255,0.1);
}
.usermenu .login_error {
	padding: 10px;
	background-color: #FF0000;
	color: #FFF;
}

.user-panel {
	background-color: #666766;
	margin: 0 auto;
}
.user-panel.content {
	padding: 0;
}
.user-panel .col-3 {
	margin-top: 50px;
}
.user-panel .col-9 {
	background-color: #FFF;
	min-height: 650px;
}
.user-panel table th.column,
.user-panel table td.column {
	float: none;
}

.user-panel table td.column .col-3, 
.user-panel table td.column .col-9 {
	margin-top: 0;
	background: none;
	
}
.user-panel .editsectionwrap.accordion {
	display: block;
}
.user-panel .editsectionwrap h2 {
	font-size: 2rem;
}
.user-panel h1 {
	margin-top: 0;
	padding-top: 50px;
}
.user-panel .inner {
	border-left: 1px solid #999;
	padding-left: 20px;
	min-height: 300px;
}
.user-sidebar ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.user-sidebar ul li {
	border-bottom: 2px inset #666;
	position: relative;
	margin: 0;
	padding: 0;
	text-align: left;
}
.user-sidebar ul li a {
	padding: 10px 20px;
	color: #FFF;
	font-size: 1rem;
	line-height: 1.3;
	display: block;
	text-decoration: none;
	font-family: "Noto Serif", serif;
}
.user-sidebar ul li a:hover {
	background: #3a9ebe;
	color: #FFF;
}
.user-sidebar .fas, .user-sidebar .far {
	font-size: 30px;
	margin-right: 10px;
	display: inline-block;
}
.user-sidebar ul li.current a {
	background: #777;
}
.user-sidebar ul li.current::after {
	background-image: url(../graphics/arrow-white.svg);
	background-repeat: no-repeat;
	background-size: 14px auto;
	content: " ";
	position: absolute;
	top: 20px;
	right: -1px;
	width: 14px;
	height: 20px;
}

.user-membership .user-panel table {
	width: 100%;
}
.user-portal h1, .user-portal h2, .user-portal p {
	text-align: center;
}

.coapcr-portal-blocks {
	list-style: none;
}
.coapcr-portal-blocks a {
	display: block;
	margin: 10px 2%;
	padding: 30px 5px 8px 5px;
	border-radius: 5px;
	text-align: center;
	color: #FFF;
	text-decoration: none;
	font-size: 1.2rem;
	line-height: 3rem;
	font-family: "Noto Serif", serif;
}
.coapcr-portal-blocks a .fas, .coapcr-portal-blocks a .far {
	display: block;
	text-align: center;
	font-size: 5rem;
}
.portal-education {
	background-color: #009bd2;
}
.portal-add-article {
	background-color: #721f3a;
}
.portal-add-event {
	background-color: #00b0aa;
}
.portal-directory {
	background-color: #8459a5;
}
.portal-profile {
	background-color: #366732;
}
.portal-membership {
	background-color: #9d1f5e;
}
.portal-minutes {
	background-color: #7b9d1f;
}
.portal-bylaws {
	background-color: #3d1f9d;
}
.user-create-article .button,
.user-edit-article .button,
.user-create-job .button,
.user-edit-job .button,
.user-create-event .button,
.user-directory .button {
	background: none;
	background-color: #3a9ebe;
	margin: 5px;
}
.user-articles .button, .user-jobs .button {
	text-decoration: none;
}
.user-articles table, .user-jobs table {
	width: 100%;
}
.user-articles tbody tr:hover, .user-jobs tbody tr:hover {
	background-color: #e4f4ff;
}
.userarticle, .userjob {
	cursor: pointer;
	cursor: hand;
	border-bottom: 1px solid #CCC;
	border-top: 1px solid #CCC;
	padding: 5px 0;
}
.userarticle.small, .userjob.small {
	font-size: 12px;
}
.column.userinvoice {
	padding: 10px 0;
	border-top: 1px solid #DDD;
	cursor: pointer;
	cursor: hand;
}
.membership-user-invoice table tr:hover {
	background-color: inherit;
}
.membership-user-invoice table tr:hover td {
	border-right: none;
}
.membership-user-invoice #address {
	line-height: 1;
}
.membership-user-invoice .checkout-button {
	text-align: left;
}
#members-filter {
	position: relative;
}
.member-searchwrap {
	position: absolute;
	bottom: 10px;
	right: 0;
	width: 20%;
}
.member-searchwrap input {
	padding: 10px 5px;
	border: 1px solid #999;
}

.portal-member-header {
	padding: 0 20px;
}
.portal-member-header .header {
	border: 1px solid #CCC;
	border-top-left-radius: 3px;
	border-top-right-radius: 3px;
	border-bottom-width: 0;
	padding-bottom: 0;
	background-color: #EEE;
	margin-right: 10px;
}
.portal-member {
	padding: 20px;
}
.portal-member {
	border-top: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	cursor: pointer;
	cursor: hand;
}
.portal-member:hover {
	background-color: #EEE;
}
.portal-member-company {
	width: 240px;
	float: left;
	font-size: 0.8rem;
	text-align: left;
}
.portal-member-company.header {
	width: 230px;
}
.portal-member-name {
	width: 200px;
	float: left;
	padding-left: 10px;
	font-size: 0.8rem;
	text-align: center;
}
.portal-member-name.header {
	width: 190px;
}
.portal-member-location {
	width: 140px;
	float: left;
	padding-left: 10px;
	font-size: 0.8rem;
	text-align: center;
}
.portal-member-location.header {
	width: 130px;
}
.portal-member-joined {
	width: 140px;
	float: left;
	padding-left: 10px;
	font-size: 0.8rem;
}
.portal-member-joined.header {
	width: 130px;
}
.portal-member-company.header,
.portal-member-joined.header {
	text-align: center;
}
#members-wrap .pagination {
	margin-bottom: 30px;
}

.user-member-details,
.user-member-additional {
	width: 100%;
	margin-bottom: 20px;
}
.user-member-details .table-left {
	width: 200px;
	font-size: 0.9rem;
	border-bottom: 1px solid #EEE;
	padding: 5px;
}
.user-member-details .table-right,
.user-member-additional td {
	border-bottom: 1px solid #EEE;
	padding: 5px;
	font-size: 0.9rem;
}
/* ---------- newsletter -------------- */
.newsletter-signup {
	text-align: center;
	margin: 0;
	color: #FFF;
}
.newsletter-signup h1 {
	color: #abd6eb;
}

/* ------------ footer ---------------- */
footer {
	background-color: #6891a1;
	
	color: #FFF;
	padding-top: 20px;
	text-align: center;
}

footer .content.row {
	margin: 0 auto;
	padding-bottom: 20px;
	color: #FFF;
	font-size: 14px;
	text-align: left;
}
footer .col-4 {
	width: 29.333%;
	margin: 0 2%;
}
footer .footerleft {
	margin-top: 90px;
}
footer .footerright {
	margin-top: 20px;
}
footer .footerright ul {
	margin: 10px 0;
	padding: 0;
}
footer h3 {
	font-size: 1.8rem;
	margin: 0;
	padding: 0;
}
footer .footerlogo a {
	display: block;
	background: #FFF;
	padding: 10px 50px 40px 50px;
	border-radius: 200px;
}
footer .row h2 {
	font-size: 40px;
}



footer a {
	color: #FFF;
}
footer .copyright {
	background-color: #034763;
	text-align: center;
	font-size: 14px;
	font-size: 16px;
	padding: 30px;
}
footer .copyright ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
footer .copyright li {
	padding: 0 10px;
	border-right: 1px solid #FFF;
	display: inline-block;
}
footer .copyright li:last-child {
	border-right-width: 0;
}
footer .copyright a {
	color: #FFF;
}

@media all and (max-width: 1500px) {
	#logo {
		width: 300px;
	}
	header nav ul {
		padding-top: 69px;
		padding-left: 10px;
	}
	header nav a {
		font-size: 16px;
	}
}
@media all and (max-width: 1360px) {
	header nav a {
		margin-left: 0;
	}
}
@media all and (max-width: 1265px) {
	#logo {
		width: 270px;
	}
	header nav ul {
		padding-top: 63px;
	}
	header nav a {
		font-size: 14px;
		padding: 3px 8px;
	}
}
@media all and (max-width: 1100px) {
	
	
	header .navwrap {
		width: 100%;
	}
	header nav {
		display: none;
		height: auto;
		min-height: 50px;
		position: absolute;
		top: 60px;
		right: 0;
		padding-right: 0px;
		width: 300px;
		background-image: url(../graphics/headerbg.jpg);
		background-size: cover;
		z-index: 11;
	}
	header nav ul, header .subnav ul {
		height: auto;
		margin: 0;
		padding: 0;
		float: none;
	}
	
	nav ul li {
		float: none;
		text-align: center;
		cursor: pointer;
		cursor: hand;
		height: auto;
	}
	header nav ul li a {
		font-size: 20px;
		line-height: 40px;
		padding-top: 10px;
		padding-bottom: 10px;
		background: none;
		border-bottom: 2px solid #333;
		text-decoration: none;
	}
	header nav a, header .subnav a {
		display: block;
	}
	#navbtn {
		display: block;
	}
	
	#mobilenavbtn.sel .menu-global {
		border-top: 2px solid #CCC
		;
	}
	#mobilenavbtn.sel .menu-top {
	  backface-visibility: hidden;
	  top: 17px;
	  transform: rotate(220deg);
	  -webkit-transform: rotate(220deg);
	  transition: 0.55s 0.5s;
	}
	#mobilenavbtn.sel .menu-middle {
	  opacity: 0;
	}
	#mobilenavbtn.sel .menu-bottom {
	  backface-visibility: hidden;
	  top: 17px;
	  transform: rotate(-220deg);
	  -webkit-transform: rotate(-220deg);
	  transition: 0.55s 0.5s;
	}
	header .newsletter {
		top: 1px;
		right: 35px;
	}
	header .button.newsletter {
		border-radius: 4px;
	}
	.content {
		max-width: 96%;
	}
	.banner.home-section-three {
		padding-bottom: 500px;
	}
	.content.home-banners .flexslider .slides > li {
		height: 500px;
	}
	.home .content {
		margin-top: 0;
	}
	#facebook {
		display: inline-block;
		position: relative;
		bottom: auto;
		right: auto;
		border-radius: 4px;
		margin: 10px 0;
	}
		
	footer .col-3, footer .col-6 {
		width: 96%;
		margin: 0 1%;
		float: none;
	}
}



@media all and (max-width: 800px) {
	
	header .newsletter {
		top: 0;
		left: 0;
		width: 100%;
	
	}
	header .button.newsletter {
		border-radius: 0;
		display: block;
		width: 100%;
		text-align: center;
		margin-top: 0;
		padding: 10px 0;
	}
	#logo {
		margin-top: 0;
		background-size: 120px;
		padding-left: 20px;
		padding-top: 10px;
	}
	#logo img {
		max-width: 200px;
	}	
	
	.navwrap {
		z-index: 10;
	}
	#navbtn {
		z-index: 101;
		top: 67px;
	}
	header nav {
		position: absolute;
		right: 0;
		top: 136px;
		width: 100%;
		max-width: 400px;
	}
	header nav ul {
		background: rgba(4, 71, 98, 0.8);
	}
	header nav ul li a {
		font-size: 20px;
		line-height: 40px;
	}
	header nav ul li ul {
		display: block;
		position: relative;
		width: 100%;
	}
	header .navright {
		width: 100%;
		text-align: right;
		bottom: 23px;
	}
	header .navright ul {
		display: inline;
		margin-right: 65px;
	}
	#headersocial {
		display: none;
	}
	.home-banner {
		background-attachment: scroll;
		background-size: cover;
		background-position: center;
		background-position: -400px 0;
		padding-top: 350px;
		margin-top: -165px;
	}
	
	.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11 {
		width: 96%;
		margin: 0 2%;
	}
	p {
		font-size: 16px;
	}
	
	.button {
		font-size: 20px;
	}
	
	.home .content h2 {
		font-size: 40px;
	}
	.hometext {
		font-size: 12px;
	}
	
	.content {
		text-align: left;
		padding: 10px;
	}
	.content h1 {
		font-size: 30px;
	}
	.content.events {
		padding: 0 5px;
	}
	.eventimage .eventdate {
		margin-top: 200px;
		padding: 5px;
		width: 100%;
		position: relative;
		bottom: auto;
		border-radius: 0;
	}
	.event .col-8 {
		width: 96%;
		padding: 0;
	}
	.event-tags {
		position: relative;
		top: auto;
		margin-top: 20px;
	}
	.user-mobiletitle {
	display: block;
}
}
@media all and (max-width: 500px) {
	
	#member-bar li.memberlink {
		display: none;
	}	
	
	header nav {
		position: absolute;
		left: 0;
		top: 136px;
		width: 100%;
	}
	
	.banner-mobile.home-banner h1 {
		font-size: 24px;
		padding: 20px 5px;
	}
	.home .news .homepost {
		width: 98%;
	}
	.home .content h2, .content.events .event h2 {
		font-size: 1.2rem;
	}
	.home .col-6, footer .col-4 {
		width: 98%;
		margin: 0 1%;
	}
}
}