body {
	background: #f2f2f2;
	padding: 0;
	font-family: 'Open Sans', sans-serif;
}
header {
	position: sticky;
	width: 100%;
	top: 0;
	z-index: 100;
}
header.headerAdmin {
	position: relative;
}
.logoContainer {
	width: 100%; 
	text-align: right; 
	background: #fff; 
	padding: 1em;
}
.logoContainer img {
	max-height: 90px;
}
.floatingNav {
	display: none;
	background: #759a05;
	background-image: url(/images/logo_crbhub_floating_bar.png);
	background-position: right 24px top 14px;
	background-size: 180px auto;
	background-repeat: no-repeat;
	color: #fff;
	height: 0;
  	transition: height 0.2s ease-out;
}
.popupNav {
	position: relative; 
	top: -58px; 
	margin-left: 1em;
}
body.header-not-at-top .floatingNav {
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 76px;
  	transition: height 0.2s ease-out;
	z-index: 1000;
}
body.header-not-at-top {
  padding-top: 75px;
}
#top-of-site-pixel-anchor {
  position: absolute;
  width: 1px;
  height: 1px;
  top: 100px;
  left: 0;
}
.row {
	margin-right: 0;
}
.animated-icon2 {
	width: 30px;
	height: 20px;
	position: relative;
	margin: 0px;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	cursor: pointer;
}
.animated-icon2 span {
	display: block;
	position: absolute;
	height: 2px;
	width: 100%;
	border-radius: 9px;
	opacity: 1;
	left: 0;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;
}
.animated-icon2 span {
	background: #fff;
}
.animated-icon2 span:nth-child(1) {
	top: 0px;
}
.animated-icon2 span:nth-child(2), .animated-icon2 span:nth-child(3) {
	top: 10px;
}
.animated-icon2 span:nth-child(4) {
	top: 20px;
}
.animated-icon2.open span:nth-child(1) {
	top: 11px;
	width: 0%;
	left: 50%;
}
.animated-icon2.open span:nth-child(2) {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.animated-icon2.open span:nth-child(3) {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.animated-icon2.open span:nth-child(4) {
	top: 11px;
	width: 0%;
	left: 50%;
}
button.navbar-toggler {
	background-color: #2e3192;
	margin: 0 0 0 0;
	padding: 9px 8px 12px;
}
button.navbar-toggler:focus {
	border: 0;
	outline: none;
	box-shadow: none !important;
}
#navbarSupportedContent23 {
	margin: 14px 0 0 0;
}
ul.navbar-nav {
	width: 55%;
}
.navbar-nav .nav-item {
	background: #fff;
	border-bottom: 3px solid #fdb813;
	margin-bottom: 3px;
}
.navbar-nav .nav-link {
	background: #2e3192;
	margin-bottom: 3px;
	color: #fff !important;
	text-transform: uppercase;
	padding: 0.7em 1em 0.9em;
	font-size: 100%;
	font-weight: 600;
	letter-spacing: 0.05em;
}
.pageContainer {
	position: relative;
	top: -40px;
	background: #f2f2f2;
}
.carousel-caption {
	position: relative;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0,0,0,0.4);
	display: block !important;
	padding: 0.85rem 1.5em 0.4rem;
	
}
.partnerLogosContainer {
	text-align: center;
	padding: 10px 40px 14px;
	background: #fff;
}
img.partnerLogo {
	margin: 5px 8px 8px;
}
img.partnerLogoRestrainWidth {
	max-width: 100px;
}
img.partnerLogoRestrainHeight {
	max-height: 60px;
}
.mainPageContent {
	color: #555;
	padding: 1.2em 1.2em 1.5em;
	line-height: 1.6em;
}
.mainPageContentAdmin {
	font-size: 95%;
	padding-left: 1.3em;
	padding-right: 1.3em;
}
.mainPageContentPrivacy {
	font-size: 85%;
}
h1 {
	color: #444;
	line-height: 1.3em;
	border-bottom: 1px solid #aaa;
	padding-bottom: 0.7em;
	margin-bottom: 0.7em;
}
h1.h1privacy {
	font-size: 160%;
}
h3 {
	font-size: 140%;
	color: #505050;
}
h4 {
	font-size: 130%;
	color: #606060;
}
h4.withMargin {
	margin: 0.8em 0 0.6em;
}
.mainPageContent .initialPara {
	font-size: 120%;
	line-height: 1.5em;
	border-bottom: 1px solid #aaa;
	padding-bottom: 1em;
}
.actionButton {
	display: block;
	background: #2e3192 url(images/gold_arrow.png) right center no-repeat;
	background-size: contain;
	color: #fff !important;
	text-decoration: none;
	padding: 0.6em 2em 0.8em 0.8em;
	font-size: 120%;
	margin-top: 1.3em;
	border: 0;
}
.actionButton.leftFloat {
	float: left;
	margin-right: 1.5em;
}
footer {
	background: #777; 
	color: #eee; 
	padding: 1.5em 1.5em 2.3em; 
	font-size: 90%;
}
span.separator {
	display: inline-block;
	color: #aaa;
	margin: 0 0.7em;
}
span.separatorNarrow {
	display: inline-block;
	color: #aaa;
	margin: 0 0.3em;
}
footer a, footer a:hover {
	color: #fff;
	text-decoration: underline;
}
form#contactForm {
	background: #d4d4d4;
	margin: 0 21px 28px;
	padding: 0.4em 1.2em;
	border-radius: 6px;
}
form#loginForm {
	background: #d4d4d4;
	margin: 0;
	padding: 0.4em 1.2em;
	border-radius: 6px;
}
form#contactForm .row, form#loginForm .row {
	margin-top: 0.8em;
	margin-bottom: 0.8em;
}
form#contactForm .rowLabel, form#loginForm .rowLabel {
	padding-bottom: 0.3em;
}
form#contactForm .actionButton, form#loginForm .actionButton {
	margin-top: 0.3em;
	margin-bottom: 0.3em;
	border: 0;
}
.form-control {	
	border-radius: 2px;
	appearance: auto;
}
.form-control:focus {
	border-color: #fdb813;
	box-shadow: 0 0 0 .25rem rgba(253,184,19,.25);
}
ul.portfolioList, ul.testimonialList {
	list-style-type: none;
	padding-left: 0;
}
ul.portfolioList li {
	background: #fff;
	padding: 0.5em;
	border-radius: 3px;
	margin: 0.2em 0 0.8em;
	border-top: 3px solid #fdb813;
}
ul.testimonialList li {
	background: #fff;
	padding: 1em;
	border-radius: 3px;
	margin: 0.2em 0 0.8em;
	border-bottom: 6px solid #fdb813;
}
ul.testimonialList li h3 {
	font-weight: 600;
}
img.testimonialImage {
	width: 100%;
	margin: 0.5em 0 1em;
}
.testimonialContent {
	font-style: italic;
}
.testimonialSignatory {
	text-align: right;
}
.wideOnly {
	display: none;
}
.narrowMargins {
	margin: 0 24px;
}
h2.portfolioHeader {
	font-size: 160%;
	background: #2e3192;
	color: #fff;
	padding: 0.5em 0.6em 0.6em;
	margin-bottom: 4px;
}
.horizBarBlue {
	border-top: 10px solid #2e3192;
	margin-bottom: 4px;
}
.horizBarGold {
	border-top: 5px solid #fdb813;
	margin-top: 0;
}
.galleryViewLink {
	display: block;
	text-decoration: none;
}
.galleryViewLink img {
	float: left;
}
.galleryTitle {
	display: block;
	margin-left: 134px;
	color: #2e3192;
	font-size: 90%;
	line-height: 1.4em;
	font-weight: 600;
}
.contactAlertMessage.narrowOnly {
	margin: 0 0 1em;
}
.contactAlertMessage.wideOnly {
	margin: 2em 21px 0;
}
.adminStatusBar {
	background: #2e3192;
	color: #fff;
	padding: 0.4em 0.8em 0.6em;
	font-size: 90%;
	margin-bottom: 1.3em;
}
.adminStatusBar a {
	color: #fff;
	text-decoration: underline;
}
a.handCursor {
	cursor: pointer;
}
.adminRow {
	margin-left: 0;
	margin-right: 0;
}
.adminRowTd {
	background: #fff;
	padding: 0.3em 0.6em 0.5em;
}
.adminRowTd2 {
	background: #fff;
	padding: 0.3em 0.6em 0.5em;
	border-bottom: 1px solid #bbb;
	text-align: right;
}
.adminRowTd.firstItem {
	border-top: 1px solid #bbb;
}
.galleryThumbnail {
	float: left;
	margin-right: 1em;
}
#openstreetmapIframe {
	border: 1px solid #444;
	width: 100%;
}
small {
	font-size: 80%;
}
ul.privacy {
	padding-left: 1.2em;
}
ul.privacy li {
	padding-bottom: 0.5em;
}


@media only screen and (min-width: 576px) {
	
	/*
	.logoContainer img {
		max-height: 105px;
	}
	*/
	.adminRowTd {
		border-bottom: 1px solid #bbb;
	}
	.adminRowTd2.firstItem {
		border-top: 1px solid #bbb;
	}
	
}

@media only screen and (min-width: 750px) {
	
	.navbar-nav .nav-link {
		font-size: 120%;
	}
	.logoContainer img {
		max-height: 120px;
	}
	.partnerLogosContainer {
		
	}
	img.partnerLogo {
		margin: 11px 10px 12px;
	}
	img.partnerLogoRestrainWidth {
		max-width: 130px;
	}
	img.partnerLogoRestrainHeight {
		max-height: 85px;
	}
	
}

@media only screen and (min-width: 992px) {
	
	.logoContainer {
		padding: 1em 1.5em;
	}
	.popupNav {
		margin-left: 1.5em;
	}
	.pageContainer {
		padding-left: 1.5em;
		padding-right: 1.5em;
	}
	.carousel {
		margin-top: 1em;
	}
	.mainPageContent {
		font-size: 120%;
		padding: 1.2em 1.2em 1.4em;
	}
	.mainPageContentAdmin {
		font-size: 95%;
		padding-left: 0.5em;
		padding-right: 0.5em;
	}
	.mainPageContentPrivacy {
		font-size: 95%;
	}
	form#contactForm {
		margin: 28px 21px;
	}
	.wideOnly {
		display: block;
	}
	.narrowOnly {
		display: none;
	}
	.narrowMargins {
		margin: 0;
	}
	h1 {
		font-size: 180%;
  	}
	.portfolioCarouselColumn {
		margin-top: 1.8em;
	}
	ul.testimonialList li {
		width: 48%;
	}
	ul.testimonialList li.odd {
		float: left;
	}
	ul.testimonialList li.even {
		float: right;
	}
	
	
}


@media only screen and (min-height: 575px) {
	
	
	.carousel-item {
		background: #ccc;
	}
	.carousel-item img {
	  object-fit: contain;
	  object-position: center;
	  max-height: calc(100vh - 300px);
	  overflow: hidden;
	}
	
	
}
