@import url('https://fonts.googleapis.com/css?family=Lato:400,400i,700');

html {
	height:100%;
	box-sizing: border-box;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

.fa,
.fa::before,
.fa::after,
.svg-inline--fa {
  box-sizing: content-box;
}

body,td,th {
	font-family: 'Lato', Tahoma, Georgia, Times New Roman, Times, serif;
	font-size: 1em;
	color: #242424;
	height:100%;	
}

body {
	font-family: 'Lato', Tahoma, Georgia, Times New Roman, Times, serif;
	font-size: 1em;
	color: #242424;
	margin-left: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	background-color: #fff;
	height:100%;
}

img {
	border: 0;
	
}

a:link {
	color: #2c5d9c;
}
a:visited {
	color: #2c5d9c;
}
a:hover {
	color: #173f72;
}

a.whitelink:link {
	color:#FFF;
}

a.whitelink:visited {
	color:#FFF;
}

#alertbar {
	background-color: #bf242a;
	text-align: center;
	padding-top:1em;
	padding-bottom:1em;
	font-size: 1.3em;
	font-weight: bold;
	width: 100%;
	height: auto;
}


#wrap {
	min-height:100%;
}

#main {
	overflow:auto;
	padding-bottom: 60px;
}

#logo {
	padding: 0; 
	position:relative;
}


#contactinfo {
	width: auto;  
	padding: 0; 
	top: 20px;
	float: right;
	color: #000000;
	text-align:left;
	font-size:.8em;
	position: relative;
	line-height: 1.5em;
	z-index: 9999999999;
}



#headerbar {
	max-width: 1200px;  
	margin: 0px auto;
	padding: 0; 
	top: 0px; 
	position: relative;
	z-index:999999;
	height: auto;
}

#menubar {
	width: 100%;  
	padding: 0; 
	top: 0px; 
	height:60px;
	position: relative;
	background-color:#625743;
	color: #333;
	margin:0
}

#menumobile {
	display:none; /*Hide mobile menu on desktop screens */
}


/* Main Navigation */
#menu {
	width: auto;
	margin: 0 auto;
	top: .6em; 
	position:relative;
	font-size: clamp(12px, 2vw, 1.5em);
	color:#fff;
	text-align: center;
	font-weight: bold;
}

#menu a:link {
	text-decoration:none;
	color:#fff;
}

#menu a:visited {
	text-decoration:none;
	color:#fff;
}

#menu a:hover {
	color:#79684a;
}


.menuitem {
	width:auto;
	position:relative;
	display:inline-block;
	padding-left:1em;
	padding-right:1em;
}


/* END MENU */

.banner {
	display: flex;
  	justify-content: center;
	background-color: #BCAF90;
	color: black;
	padding-top:15px;
	padding-bottom:12px;
}

.banner-inner {
	display: flex;
	width: 100%;
	max-width: 1000px;
	gap: 30px;
}

.banner-inner > div {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1em;
	font-weight: bold;
}

.banner-text {
	font-size: 1.4em;
}


.banner-button {
	display: inline-block;
	width: auto;
	padding: 6px 9px 6px 9px;
	background-color:#4f4d68;
	color: #fff;
	text-align: center;
}

.banner-button a {
	color: #fff;
	text-decoration: none;
}


#mastheadholder { 
	background-color: #4f4d68;
	width: 100%; 
	position: relative;
	background-image: url('images/watermark.png');
	background-position: right top;
	background-repeat: no-repeat;
}

#masthead { 
	max-width: 1000px; 
	position: relative;
	margin: 0 auto;
	padding-top:2em;
	padding-bottom: 2em;
	color:#fff;
	text-align: center;
	font-size: 2em;
	font-weight: bold;
	
}


#newsbar {
	float:right;
	margin-top: 0;
	margin-left: 2em;
	margin-bottom: 5em;
	padding: 1em;
	padding-top:0;
	border-left: 1px dotted #D4D4D4;
	width:30%;
}

#content {
	max-width: 1100px;  
	margin: 0px auto; 
	top: 30px;
	position: relative;
	height:auto;
	margin-bottom:3em;
	font-size: 1.2em;
}

#staffholder {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

.staff {
	flex: 1;
	flex-basis: 0;
	width: 20%;
	height: auto;
	margin:3em;
	font-size:.8em;
	display: inline-block;
	text-align: center;
	vertical-align: top;
	margin-bottom:3em;
}

.staff p {
	font-size: .9em;
}


.staff img {
	width: 250px;
}


#staffprofile {
	display: flex;
	width: 100%;
	margin-top:3em;
}

#staffprofile-left {
	flex:1;
	flex-grow: 0;
	text-align: center;
	margin-right: 3em;
}

#staffprofile-right {
	flex:3;
	flex-grow: 1;
}

#staffprofile-right h2 {
	margin:0;
}

#staffprofile-right h5 {
	color:#beaf94;
	margin-top:0;
}

#staffprofile-right p {
	text-align: justify;
}

.offeringholder {
	width: 100%;
	padding-top:1em;
	padding-bottom:1em;
	margin-bottom:2em;
	border-bottom: 1px solid #bcbcbc;
	overflow: auto;
}

.offering {
	width: 70%;
	float: left;
}

.offeringline {
	background-color:#e8e8e8;
	padding:.2em;
	margin: .2em;
}

.options {
	background-color:#f3f3f3;
	padding: 1em;
	font-size: .8em;
	float: right;
	width: 25%;
}

.nobottom {
	margin-bottom: 0;
	padding-bottom: 0;
}


.address {
	display: inline-block;
	width: 20%;
	font-size: .8em;
	padding: 1em;
	vertical-align: top;
}

#services {
	width: 100%;
	text-align: center;
 	display: flex;
 	flex-wrap: wrap;
 	align-content: center;
 	justify-content: center;
}

.service-item {
	width: 400px;
	min-height: 150px;
	border: 0;
	background-size: cover;
	padding: 3em;
	margin: .5em;
	border: 1px solid #000;
	color:#fff;
  	text-shadow: 1px 1px 1px #000;
  	font-size: 1em;
  	font-weight: bold;
  	align-items: center;
}

.service-item h4 {
	background-color: #4f4d68;
}

.serviceimage {
	float:right;
	padding-left: 1em;
	padding-bottom: 1em;
	max-width: 480px;
}

.community-item {
	flex: 1;
	padding:1em;
	border: 0;
	margin: 1em;
  	align-items: center;
}

.community-item img {
	max-width: 150px;
	/*-webkit-filter: grayscale(1);
	filter: grayscale(1);*/
}


#work {
	width: 100%;
	text-align: center;
 	/*display: flex;
 	flex-wrap: wrap;
 	align-content: center;
 	justify-content: center;*/
}

.work-item {
	display: inline-block;
	position: relative;
	width: 20%;
	background-size: cover;
	border: 0;
	border: 1px solid #000;
	margin:.2em;
	min-height: 175px;
	padding:1em;
}

.work-item background-image {
	filter: grayscale(1);
	filter: gray;
}

.work-item-text {
	font-weight: bold;
	color:#fff;
	text-shadow: 1px 1px 1px #000;
	position: absolute;
	bottom: 10px;
	right:10px;
	font-size: .8em;
	text-align: right;
}

.homeheader {
	font-size: 2em;
}


/*single work pages */
#work-holder {
	display: flex;
}

.work-column {
	flex: 1;
	width: 33%;
}

.work-column:nth-child(2) {
	margin-left:4em;
	margin-right:4em;
}

#footer {
	width: 100%;  
	margin: 0px auto; 
	position:relative;
	color: #2c2c2c;
	top: 0px;
	background-color:#e3dfd7;
	height:auto;
}

#footer-holder {
	max-width: 1200px;  
	margin: 0px auto; 
	padding: 15px; 
	position:relative;
	color: #404040;
	top: 0px;
	font-size:.9em;
	text-align:center;
}

#footer-left {
	float:left;
	width:45%;
}

#footer-right {
	float:right;
	width:45%;
	text-align:right;
}

#separator {
	border-bottom: 1px #999 dotted;
	position:relative;
	padding:10px;
	clear:both;
}

h1 {
	font-size:2.5em;
}

h2 {
	font-size:2em;
}

h3 {
	font-size:1.8em;
}

h4 {
	font-size:1.5em;
}

h5 {
	font-size:1.3em;
	color: #4d7199;
}

.footertext {
	font-size:12px; 
	color: #393939; 
}

.footerhover a:link {
	color: #434343;
}

.footerhover a:visited {
	color:#3e3e3e;
}

.footerhover a:hover {
	color: #90a117;
}


.button {
    background-color:#5271ac;
    border: none;
    color: white;
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 1em;
    border-radius: 8px;
}

#portalbutton {
	display: block;
	width: auto;
	padding: .5em;
	background-color:#4f4d68;
	color: #fff;
	font-size: 1.2em;
	text-align: center;
	margin-bottom: .5em;
}

#portalbutton a {
	color: #fff;
	text-decoration: none;
}

/* Forms */

label {
	display:block;
	font-size:17px;
	margin:0 0 5px;
	position:relative;
}


input, textarea, select{
	border:1px solid;
	border-color:#646464;
	font-family:inherit;
	font-size:17px;
	width: 100%; 
    padding: 8px 0;
    text-indent: 5px;
	-moz-border-radius-bottomright:5px;
	-moz-border-radius-topleft:5px;
	-webkit-border-bottom-right-radius:5px;
	-webkit-border-top-left-radius:5px;
}

select {
	padding-top:8px;
	padding-bottom:8px;
}

input[type="submit"], input[type="reset"] {
	cursor:pointer;
	width:auto !important;
}




