.layout-header {
	background:#FFF;
}
@media(max-width: 34em) {
	.header-logo {
		margin: 2em auto 0.5em;
		text-align: center;
	}
	.menu-header-social-container .menu-item:not(.menu-item-search),
	.menu-header-top-container,
	.menu-header-properties {
		display:none;
	}
	.menu-header-social-container ul,
	.menu-header-bottom-container ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}
	.menu-header-bottom-container a {
		border-width: 1px 1px 1px 4px;
		display: block;
		border-style: solid;
		padding-left: 0.5em;
		padding-top: 0.25em;
		padding-bottom: 0.25em;
		margin-bottom: 2px;
		text-align: center;
	}
	.menu-header-bottom-container li li a::before {
		content: '» ';
	}
	.header-search-form {
		display: flex;
		margin-bottom: 0.5em;
	}
	.header-search-form-shade {
		flex-grow: 1;
	}
	.header-search-form-shade input {
		width: 100%;
	}

	.mobile-nav-show-hide a {
		display: block;
		background-color: #005188;
		color: #FFF;
		font-weight: bold;
		text-align: center;
		padding-top: 0.25em;
		padding-bottom: 0.25em;
	}
}
@media(min-width: 34em) {
    .layout-header {
        border-top: 32px solid #005188;
    }
	.header-identity {
		display:flex;
	}
	.header-logo {
		flex:0 0 100px;
		margin-bottom:0;
		margin-top:20px;
	}
	.header-logo img {
		width: 100px;
		height: 40px;
	}
	.menu-header-social-container .header-search-form-field {
		width: 100%;
	}
	/* Social links */
	.menu-header-social-container {
		flex: 0 1 200px;
		margin-top: -26px;
	}
	.menu-header-social-container .menu {
		list-style:none;
		padding:0;
		display: grid;
		grid-template-columns: repeat(6, 1fr);
	}
	.menu-header-social-container .menu-item-search {
		grid-row: 2;
		grid-column: 1 / -1;
	}
	/**
	 * Absolute positioning of social icons.
	 * Will require some tweaking whenever we add or remove them.
	 */
	#menu-header-social li:nth-child(1) {
		grid-column: 5;
		text-align: right;
        padding-bottom: 4px;
	}
	#menu-header-social li:nth-child(2) {
		grid-column: 6;
		text-align: right;
        padding-bottom: 4px;
	}


	/* 2021-02-22: Header Other Properties Navbar */
	.header-navbar-properties {
		display: flex;
		justify-content: flex-end;
	}
	.menu-header-properties {
		background-color: #007ebb;
		font-size: 0.75em;
		display: flex;
		align-items: center;
		padding-left: 0.5em;
	}
	.menu-header-properties::before {
		content: 'More: ';
		text-transform: uppercase;
		color: #FFF;
		font-weight: bold;
	}
	.header-navbar-properties ul {
		display: flex;
		list-style: none;
		margin: 0;
		padding: 0;
	}
	.header-navbar-properties a {
		color: #FFF;
		text-transform: uppercase;
		white-space: nowrap;
	}
	.header-navbar-properties .menu-item {
		position: relative;
		margin-right: 1px;
	}
	.header-navbar-properties a {
		display: block;
		padding: 0.5em 0.75em;
		margin-right: 1px;
	}
	.header-navbar-properties .menu > .menu-item:not(:last-child) a::after {
		content:'';
		display:block;
		height:1em;
		position:absolute;
		right:-1px;
		top:0.75em;
	}

	/* Header Nav */
	.header-navbar {
		display:flex;
		justify-content:space-between;
		align-items:center;
	}
	.header-navbar a {
		color:#000;
		font-weight:bold;
		text-transform:uppercase;
		white-space:nowrap;
	}
	.header-navbar .menu-item:hover a {
		color: #888;
	}
	.header-navbar ul {
		display:flex;
		list-style:none;
		margin: 0 auto;
		padding:0;
	}
	.menu-header-bottom-container .menu > .menu-item {
		flex:1 1 auto;
		position:relative;
		margin-right:1px;
		display: flex;
		justify-content: center;
	}
	.menu-header-bottom-container .menu > .menu-item a {
		display:block;
		padding:0.75em 1em;
		margin-right:1px;
	}
	.menu-header-bottom-container .menu > .menu-item:not(:last-child) > a::after {
		content:'•';
		display:block;
		height:1em;
		position:absolute;
		right:-1px;
		top: 0.75em;
	}
	.header-navbar .menu-item:hover .sub-menu {
		display: flex;
	}
	.header-navbar .sub-menu {
		background: #005188;
		display:none;
		position:absolute;
		z-index:2;
		margin: 0 auto;
		top: 2.75em;
		justify-content: center;
	}
	.header-navbar .sub-menu::before {
		content: '';
		display:block;
		background-color: #005188;
		width: 1em;
		height: 1em;
		position: absolute;
		rotate: 45deg;
		top: -0.41421356237em
	}
	.header-navbar .sub-menu .menu-item {
		border-bottom:1px solid #D9D9D9;
	}
	.header-navbar .sub-menu .menu-item a {
		color: #fff;
	}
	.menu-header-bottom-container a {
		font-size:1.00em;
	}
	.menu-header-top-container a {
		font-size:0.625em;
	}

	/* Mobile nav special button */
	.mobile-nav-show-hide {
		display: none;
	}
}

.menu-header-bottom-container .menu .menu-item a:hover {
	text-decoration:none;
}

/* Header search form */
.menu-header-social-container .menu-item-icon i {
	/* border:1px solid #005188; */
	/* color:#005188; */
	display:inline-block;
	font-size: 1.1em;
	width: 16px;
	height: 16px;
	text-align:center;
	line-height: 20px;
}
.menu-header-social-container .header-search-form {
	display:flex;
}
.menu-header-social-container .header-search-form-shade {
	flex-grow: 1;
}
.menu-header-social-container .header-search-form-field {
	background-color:#FFF;
	border-color: #000;
	border-style:solid;
	border-width:1px;
	padding-left:0.5em;
	height: 20px;
	line-height: 20px;
	/* width:100%; */
}
.menu-header-social-container .header-search-form-field:focus {
	outline:0;
}
.menu-header-social-container .header-search-form-button {
	background:transparent;
	padding:0;
	border:0;
	flex:0 0 30px;
}
.menu-header-search-container .header-search-form {
	display:flex;
}
.menu-header-search-container .header-search-form-shade {
	margin-right:12px;
}
.menu-header-search-container .header-search-form-field {
	background-color:#FFF;
	border-color:#005188;
	border-style:solid;
	border-width:1px;
	padding-left:0.5em;
	height:30px;
	line-height:30px;
	/*width:100%;*/
}
.menu-header-search-container .header-search-form-field:focus {
	outline:0;
}
.menu-header-search-container .header-search-form-button {
	background:transparent;
	padding:0;
	border:0;
	flex:0 0 30px;
}


/*
 * Footer shit goes below here
 *
 * Looking for main content area styles? Try main.css
 */

.layout-footer {
	background:#005188;
	padding:1rem 0 2rem;
}
.layout-footer,
.layout-footer a {
	color:#FFF;
}
.footer-heading {
	background:#1A6394;
	font-size:0.6rem;
	height:22px;
	line-height:22px;
	margin-bottom:5px;
}
.footer-heading-label {
	background:#D31145;
	display:inline-block;
	font-weight:bold;
	padding:0 5px;
	position:relative;
	text-transform:uppercase;
}
.footer-heading-label:after {
	border:11px solid transparent;
	border-left-color:#D31145;
	border-left-width:11px;
	content:'.';
	display:block;
	height:0;
	overflow:hidden;
	position:absolute;
	right:-22px;
	top:0;
	width:0;
}
.footer-twitter-latest {
	background:#1A6394;
	padding:1rem;
}
.footer-twitter-latest-date {
	color:#99BACF;
	font-size:0.55rem;
	margin-top:1em;
}
.layout-footer .menu {
	list-style:none;
	padding:0;
	margin:0;
	font-size: 0.875rem;
}
.footer-connect-row {
	/* first row under the leftmost column; just needs some persuasion */
	padding:1rem 0 2rem;
}
.layout-footer .menu .menu-item {
	display:block;
	float:left;
}
.menu-footer-social-container {
	overflow:hidden;
	padding-bottom:1rem;
}
.menu-footer-social-container .menu-item a {
	border:1px solid #FFF;
	display:block;
	font-size:1.3rem;
	height:50px;
	line-height:50px;
	margin-right:20px;
	text-align:center;
	width:50px;
}
.menu-footer-main-container .menu-item {
	border-left:1px solid #FFF;
	line-height:1em;
	padding:0 0.5rem;
	text-transform:uppercase;
}
.menu-footer-main-container .menu-item:first-child {
	border-left-width:0;
	padding-left:0;
}
.menu-footer-legal-container {
	overflow:hidden;
	margin-bottom:1rem;
	padding-top:0.5rem;
}
.menu-footer-legal-container .menu-item {
	border-left:1px solid #B2C9D7;
	font-size:0.6rem;
	line-height:1em;
	padding:0 0.5rem;
	text-transform:uppercase;
}
.menu-footer-legal-container .menu-item a {
	color:#B2C9D7;
}
.menu-footer-legal-container .menu-item:first-child {
	border-left-width:0;
	padding-left:0;
}
/* Do forgive the !important usage; Gravity Forms is an asshole with the
 * unnecessary specificity.
 */
.form-footer-subscribe {
	padding-top:0.125em;
}
.form-footer-subscribe .gfield_label {
	display:none !important;
}
.form-footer-subscribe .gform_body input {
	border:0;
	border-radius:3px;
	color:#434343;
	width:100% !important;
}
.form-footer-subscribe .gform_body input::-webkit-input-placeholder {
	color:#434343;
	font-style:italic;
}
.form-footer-subscribe .gform_body input:-moz-placeholder {
	color:#434343;
	font-style:italic;
}
.form-footer-subscribe .gform_body input::-moz-placeholder {
	color:#434343;
	font-style:italic;
}
.form-footer-subscribe .gform_body input:-ms-input-placeholder {
	color:#434343;
	font-style:italic;
}
.form-footer-subscribe .gform_footer {
	text-align:right;
	margin:0 !important;
}
.form-footer-subscribe .gform_footer .button {
	background:transparent;
	border:1px solid #FFF;
	font-size:0.7rem !important;
	padding:0.2em 1.0em;
	text-transform:uppercase;
}
.form-footer-subscribe div.validation_error {
	color:#FFF !important;
}
@media(max-width: 34em) {
	/*.layout-footer .menu .menu-item:nth-child(2) {*/
	#menu-item-49 {
	float:none !important;
	display:inline-block !important;
	}
}
