/*
Theme Name: FWT
Author URI: http://www.codechameleon.com/
Description: Theme developed for FWT
Version: 1.0
Text Domain: ctn
*/

html {
	font-family: 'din-2014', sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	background: #ffffff;
	color: #333333;
	line-height: 1.3;
}
body.high-contrast {
	background: #333333;
	color: #f2f2f2;
}

*,
*::before,
*::after {
	box-sizing: border-box;
	/* transition: background 200ms ease-out, color 200ms ease-out; */
}

a {
	text-decoration: none;
	transition: all 200ms ease-out;
}

h1,
h2 {
	font-family: 'factoria';
	text-transform: uppercase;
/* 	font-weight: bolder; */
}

h1 {
	font-weight: normal;
	font-size: 2rem;
}

h2 {
	font-size: 2rem;
	color: #4E9D45;
}
.high-contrast h2 {
	color: #f2f2f2;
}

header p,
h3 {
	font-family: 'din-2014';
	font-size: 1.25rem;
	font-weight: bold;
}

header h2 {
	font-family: 'din-2014';
	font-size: 1.75rem;
	font-weight: bold;
	text-transform: none;
}

p {
	font-size: 1rem;
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child,
p:first-child {
	margin-top: 0;
}

h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child,
p:last-child {
	margin-bottom: 0;
}

@media (min-width: 40rem) {
	h1 {
		font-size: 3rem;
	}
}




header img {
	height: 5rem;
}

img,
video {
	max-width: 100%;
}

input:not([type="checkbox"]) {
	display: inline-block;
	border-radius: 0;
	background-color: #f2f2f2;
	border-style: solid;
	border-color: #f2f2f2;
	padding: .5rem;
	font-family: 'din-2014';
	font-weight: bolder;
	-webkit-appearance: none;
}

input::placeholder {
	color: #5F462B;
	text-transform: uppercase;
}

.high-contrast input::placeholder {
	color: #5498c1;
}

blockquote {
	margin: 0;
	font-size: 1.5rem;
}

figure {
	margin: 0;
}

figcaption {
	font-weight: bold;
	text-align: center;
	margin-top: 1rem;
	margin-bottom: 1rem;
}

section {
	padding-top: 2rem;
	/*padding-bottom: 2rem;*/
	padding-left: 2rem;
	padding-right: 2rem;
	background-position: center;
	background-size: cover;
	position: relative;
}

section header {
	/* text-align: center; */
}

@media (min-width: 40rem) {
	section {
		padding-top: 3rem;
		/*padding-bottom: 3rem;*/
		padding-left: 3rem;
		padding-right: 3rem;
	}
}





.show-for-high-contrast {
	display: none !important;
}

.high-contrast .show-for-high-contrast {
	display: block !important;
}

.high-contrast .hide-for-high-contrast {
	display: none !important;
}




.grid,
.top-grid {
	display: flex;
	flex-wrap: wrap;
	position: relative;
	justify-content: space-around;
}

.grid {
	align-items: center;	
}

.top-grid {
	align-items: flex-start;
	justify-content: flex-start;
}

.column,
.column-1-2,
.column-1-3,
.column-2-3 {
	position: relative;
	margin-top: 1rem;
	margin-bottom: 1rem;
	min-width: 100%;
}

.column,
.column-1-2,
.column-1-3  {
	flex: 1;
}

.column-2-3 {
	flex: 2;
}

.tile,
.tile-full-width {
	flex: 1 1;	
	width: 0;
	/* flex-basis: 50%; */
	position: relative;
	min-width: 100%;
	margin-top: 1rem;
	margin-bottom: 1rem;
}

.tile {
	flex-basis: 50%;	
}

.tile-full-width {
	flex-basis: 100%;
}

@media (min-width: 40rem) {
	.column,
	.column-1-2,
	.column-1-3,
	.column-2-3,
	.tile {
		min-width: auto;
		padding-right: 1rem;
		padding-left: 1rem;
	}

	.column:first-of-type,
	.column-1-3:first-of-type,
	.column-1-2:first-of-type,
	.column-2-3:first-of-type,
	.tile:nth-of-type(odd) {
		padding-left: 0;
	}

	.column:last-of-type,
	.column-1-3:last-of-type,
	.column-1-2:last-of-type,
	.column-2-3:last-of-type,
	.tile:nth-of-type(even) {
		padding-right: 0;
	}
}

.main-column {
	max-width: 52rem;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	background-size: cover;
	background-position: center;
}

.main-flex-column {
	flex-basis: 52rem;
	max-width: 100%;
	flex-grow: 0;
	flex-shrink: 0;
}




.button {
	padding: .5rem 1rem;
	border-width: 0;
	display: inline-block;
	font-family: 'din-2014';
	font-weight: bolder;
	font-size: 1rem;
	text-transform: uppercase;
	transition: all 200ms ease-out;
	cursor: pointer;
}

.button.orange-fill {
	background-color: #F4821F;
	color: #ffffff;
}

.button.brown-fill:hover,
.button.brown-fill:active {
	background-color: #D26426;
}

.button.brown-fill {
	background-color: #5F462B;
	color: #ffffff;
}

.button.orange-fill:hover,
.button.orange-fill:active {
	background-color: #D26426;
}

.button.blue-outline,
.button.green-outline {
	padding: .3rem .8rem;
}

.button.blue-outline {
	background-color: transparent;
	border-color: #98D4E8;
	border-width: .2rem;
	border-style: solid;
	color: #f2f2f2;
}

.button.blue-outline:hover,
.button.blue-outline:active {
	background-color: #98D4E8;
	color: #5F462B;
}

.button.green-outline {
	background-color: transparent;
	border-color: #4E9D45;
	border-width: .2rem;
	border-style: solid;
	color: #4E9D45;
}
.high-contrast .button.green-outline {
	color: #ffffff;
}

.button.green-outline:hover,
.button.green-outline:active {
	background-color: #4E9D45;
	color: #ffffff;
}

.button-box {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.button-box .button {
	display: block;
	margin-right: 2rem;
	margin-bottom: 1rem;
	display: block;
}

.input-group {
	display: flex;
	/* max-width: 100%; */
	width: 100%;
}

.input-group input {
	/* flex: 1; */
	/* flex-shrink: 1; */
	width: 0;
	flex-grow: 1;
	display: block;
}

.input-group .button {
	flex: 0 0 auto;
}




.light-text {
	color: #f2f2f2;
}




.overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	pointer-events: none;
}

.overlay ~ * {
	position: relative;
}

.overlay.brown-fill {
	background-color: #5F462B;
	opacity: .8;
}
.high-contrast .overlay.brown-fill,
.high-contrast .overlay.green-fill {
	opacity: 1;
}

.overlay.green-fill {
	background-color: #4E9D45;
	opacity: .8;
}
.high-contrast .overlay.green-fill {
	opacity: 1;
}




.gray-bg {
	background: #EDE9E5;
}

.high-contrast .gray-bg {
	background: #282828;
}

.light-blue-bg {
	background: #98D4E8;
}

.high-contrast .light-blue-bg {
	background: #282828;
}




.blue-color {
	color: #275774;
}

.high-contrast .blue-color {
	color: #f2f2f2;
}




.link {
	color: #5498c1;
	font-weight: bolder;
	font-family: 'din-2014';
}

.link:hover,
.link:active {
	color: #98D4E8;
}




.block-link {/* 	color: #275774; *//* 	font-weight: bold; *//* 	text-align: center; */display: flex;transition: 200ms ease-out;max-width: 100%;position: relative;/* overflow: hidden; */}

.high-contrast .block-link {
	color: #98D4E8;
}

.block-link:hover,
.block-link:active {
	color: #a32035;
}

.high-contrast .block-link:hover,
.high-contrast .block-link:active {
	color: #cf7f7f;
}

.block-link:hover .thumbnail,
.block-link:active .thumbnail {
	border-color: #cf7f7f;
}




.site-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1;
}

.site-header .header-runner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	z-index: 2;
	position: relative;
	background: #ffffff;
	padding: .5rem 1rem;
}

.high-contrast .site-header .header-runner {
	background: #333333;
}

.site-header ul {
	list-style: none;
	display: flex;
	flex-wrap: nowrap;
	flex-direction: column;
	align-content: center;
	justify-content: space-between;
	margin: 0;
	padding: 0;
	max-width: 52rem;
	margin-left: auto;
	margin-right: auto;
}

.site-header .submenu {
	width: 115%;
}

.site-header > .links {
	transition: 200ms ease-out;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	background: #ffffff;
	padding-top: .5rem;
	padding-bottom: .5rem;
	z-index: 1;
}

.high-contrast .site-header > .links {
	background: #333333;
}

.links.hidden {
	transform: translateY(-100%);
	opacity: 0;
}

.site-header-large {
	display: none;
	flex-wrap: nowrap;
	padding-top: .5rem;
	padding-bottom: .5rem;
	background: #ffffff;
}

.high-contrast .site-header-large {
	background: #333333;
}

.site-header-large > ul {
	flex-direction: row;
}
.site-header .menu-item {
	width: 100%;
	display: flex;
	flex-direction: column;
	/* justify-content: space-between; */
	padding: .5rem 1rem;
	position: relative;
	/* align-items: center; */
	/* justify-content: center; */
}

.site-header .disclose-menu {
	position: absolute;
	right: 1rem;
	top: 0.5rem;
	background: transparent;
	border: 0;
	/* padding: 0; */
	/* padding-left: 1rem; */
	color: #4e9d45;
}

.site-header-large .disclose-menu {
	position: static;
	/* display: block; */
	right: 0;
	top: 0;
	padding: 0;
	padding-left: .25rem;
}

.site-header-large .submenu {
	display: block;
	position: absolute;
	/* flex-direction: column; */
	background: #ffffff;
	top: 100%;
	/* left: -1rem; */
	/* width: 200%; */
	padding-bottom: .5rem;
}

.high-contrast .site-header-large .submenu {
	background: #333333;
}

.site-header-large .submenu .menu-item {
	width: 100%;
	max-width: none;
	padding: .3rem 1rem;
	justify-content: flex-start;
}

.site-header-large .menu-item {
	width: auto;
	/* max-width: 20%; */
	align-items: center;
	justify-content: center;
	/* padding: 0; */
	flex-wrap: nowrap;
	flex-direction: row;
	/* flex: 1; */
}

.site-header .logo {
	transform: scale(1.5);
	transform-origin: 0 0;
	margin-right: 2rem;
}
.site-header .logo img {
	display: block;
	height: 2.5rem;
}
body {
	padding-top: 3rem;
}

.site-header .menu-link {
	color: #4E9D45;
}

.high-contrast .site-header .menu-link {
	color: #98D4E8;
}

.site-header .menu-link:hover,
.site-header .menu-link:active {
	color: #F4821F;
}

.site-header .menu-link {
	/* padding: .25rem; */
	text-transform: uppercase;
	font-weight: bold;
	font-size: .85rem;
	display: block;
	flex: 1;
}

.site-header .button {
	font-size: .75rem;
}

@media (min-width: 52rem) {
	.site-header {
		display: none;
	}

	.site-header-large {
		display: block;
	}

	.site-header .logo img {
		display: block;
		height: 4rem;
	}
	body {
		padding-top: 5rem;
	}
}




.site-footer {
	background: url(/wp-content/themes/fwt/assets/images/footer-bg.jpg);
	background-position: center;
	background-size: auto 100%;
}

.high-contrast .site-footer {
	background: #333333;
}

.site-footer .logo {
	width: 8rem;
}

.site-footer .grid {
	align-items: stretch;
}

.site-footer h2 {
	color: #ffffff;
	margin-bottom: 0;
}

.site-footer .navigation,
.site-footer .connect,
.site-footer .our-office {
	color: #ffffff;
	padding: 0;
	margin: 0;
	display: flex;
	text-align: center;
	flex: 1;
}

@media (min-width: 40rem) {
	.site-footer .navigation,
	.site-footer .connect,
	.site-footer .our-office,
	.site-footer .privacy-policy,
	.site-footer .contrast-setting,
	.site-footer .badges {
		margin-bottom: 0;
	}
}

.site-footer .navigation,
.site-footer .connect,
.site-footer .our-office {
	flex-direction: column;
	justify-content: space-between;
	padding: 2rem;
	align-items: center;
	width: 33.333333%;
}

.site-footer .navigation {
	background: rgba(95, 70, 43, .75);
}
.site-footer .connect {
	background: rgba(78, 157, 69, .75);
}
.site-footer .our-office {
	background: rgba(152, 212, 232, 0.75);
}

.site-footer .privacy-policy,
.site-footer .contrast-setting,
.site-footer .badges {
	/* align-items: center; */
	/* justify-content: center; */
	/* flex: 1; */
}

.site-footer .links {
	list-style: none;
	text-transform: uppercase;
}

.site-footer .menu-link,
.site-footer .info-link {
	margin: .5rem;
	display: block;
	transition: 200ms ease-out;
}

.site-footer .menu-link {
	color: #ffffff;
	font-weight: bold;
	font-size: .75rem;

}

.site-footer .info-link {
	color: #5F462B;
}

.site-footer .menu-link:active,
.site-footer .menu-link:hover {
	color: #98D4E8;
}

.high-contrast .site-footer .menu-link,
.high-contrast .site-footer .info-link {
	color: #ffffff;
}

.site-footer .connect .social-links {
	display: flex;
	justify-content: center;
}

.site-footer .connect .social-icon {
	font-size: 3rem;
	margin: 0 1rem;
}

.site-footer .privacy-policy {
	justify-content: center;
}

.site-footer .contrast-setting {
	flex-direction: column;
	text-transform: uppercase;
	font-size: .75rem;
	font-weight: bold;
}

.site-footer .badges {
	justify-content: space-between;
}

.site-footer .badge {
	height: 3rem;
}

.site-footer .copyright {
	margin-top: 2rem;
	color: #ffffff;
	text-align: center;
}

.wing {
	flex: 1;
	flex-basis: 0;
}

.brown-bg {
	background: rgba(95, 70, 43, .75);
}

.blue-bg {
	background: rgba(152, 212, 232, 0.75);
}




hr.long-break {
	background-image: url('/wp-content/themes/fwt/assets/images/Divider.png');
	height: 4rem;
	background-size: auto 100%;
	background-position: center;
	border: 0;
	max-width: 52rem;
	margin: 0 auto;
}

hr.short-break {
	height: .2rem;
	width: 50%;
	background: #98D4E8;
	border: 0;
	margin-left: 0;
}




.quote {
	padding-top: 4rem;
	padding-bottom: 4rem;
}




.subpage-hero {
	color: #a32035;
	padding-left: 0;
	padding-right: 0;
	position: relative;
}

.subpage-hero .long-break {
	bottom: -1.75rem;
	left: 0;
	position: absolute;
	width: 100%;
}

.subpage-hero .main-column {
	padding: 2rem;
}




.news-event-card {
	/* height: 6rem; */
	position: relative;
	display: flex;
	flex-direction: column;
	background: #ffffff;
	/* margin-top: 2rem; */
	/* margin-bottom: 2rem; */
}
.high-contrast .news-event-card {
	background: #333333;
}

.news-event-card .thumbnail {
	/* height: 100%; */
	flex: 0;
	display: block;
	height: 16rem;
	background-size: cover;
	background-position: center center;
}

.news-event-card .card-content {
	flex: 1;
	height: 100%;
	max-height: 10rem;
	display: flex;
	flex-direction: column;
	padding-top: .5rem;
	padding-bottom: .5rem;
	padding-left: 1rem;
	padding-right: 1rem;
	min-width: 0;
}

.news-event-card .news-event-card-content {
	padding-top: 1rem;
	min-width: 0;
	min-height: 0;
}

.news-event-card h3 {
	margin-bottom: 0;
	max-width: 100%;
}

.news-event-card .truncated-content {
	/* color: #333333; */
	margin: 0;
	overflow: hidden;
	position: relative;
	flex: 1;
}

.news-event-card .truncated-content p {
	max-height: 100%;
	overflow: hidden;
	margin-bottom: 0;
}

.news-event-card .more-information {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding-top: 2rem;
	background: linear-gradient(to top, #ffffff, #ffffff 1rem, rgba(255, 255, 255, 0));
}

.high-contrast .news-event-card .more-information {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding-top: 2rem;
	background: linear-gradient(to top, #333333, #333333 1rem, rgba(51, 51, 51, 0));
}

@media (min-width: 40rem) {
	.news-event-card {
		flex-direction: row;
	}
	
	.news-event-card .thumbnail {
		height: 8rem;
		flex: 0 0 8rem;
		/* width: 8rem; */
		/* display: flex; */
		/* justify-content: center; */
	}

	.news-event-card h3 {
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		height: 2rem;
	}

	.news-event-card .card-content {
		height: 8rem;
	}

	.news-event-card .news-event-card-content {
		flex: 1;
		margin-left: 1rem;
		padding-top: 0;
	}
}




.icon {
	font-size: 1.5em;
	width: 1em;
	text-align: center;
}




#hero {
	padding-top: 4rem;
	padding-bottom:  4rem;
}




#goals .grid {
	align-items: flex-start;
}




.entry-item header {
	text-align: left;
}

.entry-item h2 {
	color: #275774;
}




#map-container {
	min-height: 20rem;
	height: 50vh;
}

.overlay-item {
	padding: .5rem .5rem;
	display: flex;
	align-items: baseline;
	cursor: pointer;
	/* border-top: 1px solid #EDE9E5; */
	user-select: none;
}
.overlay-item:hover,
.overlay-item:target {
	background-color: #EDE9E5;
}

.overlay-label {
	display: inline-block;
	margin-left: .5rem;
}

.overlay-color {
	display: inline-block;
	height: .8em;
	width: .8em;
	border-radius: 50%;
	margin-right: .5rem;
}

@media (min-width: 40rem) {
	#map-container {
		min-height: 30rem;
		height: 100%;
	}
}

/* Josh Additions below this line */
.content img{
	height: auto;
}

.content p{
	text-align:justify;
}

.content figure:first-child{
	margin-top: 1em;
}

.content div.column{
	overflow: hidden;
}

.main-column h2{
	margin-bottom: 0;
}

figure.aligncenter, img.aligncenter{
	display: block;
    margin: 0 auto;
}

@media (min-width: 52rem) {
	figure.alignleft, img.alignleft{
		padding-bottom: 1rem;
		padding-right: 1rem;
		float: left;
		max-width:50%;
	}
	
	figure.alignright, img.alignright{
		padding-bottom: 1rem;
		padding-left: 1rem;
		float: right;
		max-width:50%;
	}
}

@media (max-width: 52rem) {
	figure.alignleft, img.alignleft{
		max-width:40%;
		padding-bottom: 1rem;
		padding-right: 1rem;
		float: left;
	}
	
	figure.alignright, img.alignright{
		max-width:40%;
		padding-bottom: 1rem;
		padding-left: 1rem;
		float: right;
	}
}

@media (max-width: 40rem) {
	figure.alignleft, img.alignleft{
		display:block;
		max-width:100%;
		margin-bottom:1rem;
		padding:0;
	}
	
	figure.alignright, img.alignright{
		display:block;
		max-width:100%;
		margin-bottom:1rem;
		padding:0;
	}
	
	figure.aligncenter, img.aligncenter{
		display: block;
		max-width:100%;
	}
	
	figure, img{
		display: block;
		max-width:100%;
	}
}

.content header{
	margin-top:0;
}
