/*
* This file will be included in header in every page. It should be used for content 
* that relates to the site as a whole. It should not be used for plugin-specific css.
*/

@media only screen {
	/*
	Fonts from the style guide
	https://fonts.googleapis.com/css?family=Shrikhand
	https://fonts.googleapis.com/css?family=Montserrat
	*/

	/* Colors from the style guide */
	.blue { color: #002252; }
	.cyan { color: #038595; }
	.gold { color: #e5b966; }
	.gray { color: #f1f2ed; }
	.clay { color: #404040; }
	.white { color: #ffffff; }

	/* This ensures that the page always has a scrollbar to ensure that some headers load correctly without FOUC */
	html, body {
		height: 100%;
	}

	body {
		margin: 0;
		font-family: Montserrat, Helvetica, Arial, sans-serif;
		font-size: 1em;
		color: black;
		background-color: white;
	}

	body.menu-open {
		overflow: hidden;
	}

	/* General Styles */
	h1 {
		margin-block-start: 0.5em;
		margin-block-end: 0.5em;
		font-family: Shrikhand, Arial, sans-serif;
		font-weight: 400;
		font-size: 2.125em;
		line-height: 1.1;
	}

	h2 {
		margin-block-start: 0.5em;
		margin-block-end: 0.5em;
		font-family: Shrikhand, Arial, sans-serif;
		font-weight: 400;
		font-size: 1.75em;
		line-height: 1.1;
	}

	h3 {
		margin-block-start: 0.5em;
		margin-block-end: 0.5em;
		font-family: Shrikhand, Arial, sans-serif;
		font-weight: 400;
		font-size: 1.375em;
		line-height: 1.1;
	}

	h4 {
		margin-block-start: 0.5em;
		margin-block-end: 0.5em;
		font-family: Montserrat, Arial, sans-serif;
		font-weight: 700;
		font-size: 1.125em;
		line-height: 1.1;
	}

	h5 {
		margin-block-start: 0.5em;
		margin-block-end: 0.5em;
		font-family: Montserrat, Arial, sans-serif;
		font-weight: 700;
		font-size: 0.875em;
		line-height: 1.1;
	}

	h6 {
		margin-block-start: 0.5em;
		margin-block-end: 0.5em;
		font-family: Montserrat, Arial, sans-serif;
		font-weight: 700;
		font-size: 0.75em;
		line-height: 1.1;
	}

	p {
		margin-block-start: 0.5em;
		margin-block-end: 0.5em;
		margin-inline-start: 0;
		margin-inline-end: 0;
		font-family: Montserrat, Arial, sans-serif;
		font-weight: 400;
		font-size: 1em;
		line-height: 1.5;
	}

	a {
		font-family: Montserrat, Arial, sans-serif;
		font-weight: 400;
		font-size: 1em;
		/*line-height: 1.5;*/
		text-decoration: underline;
		cursor: pointer;
	}

	/* link followed by bordered box with >> */
	a.flair {
		display: inline-block;
		text-transform: uppercase;
	}
	a.flair:after {
		content: '>>';
		display: inline-block;
		position: relative;
		top: -2px;
		margin-left: 10px;
		padding: 0 3px;
		background-color: #002252;
		color: #e5b966;
		border: 2px solid #e5b966;
		text-decoration: none;
		font-size: 10px;
	}
	a.flair:hover:after {
		color: white;
		border-color: white;
	}

	hr {
		width: 100%;
		height: 1px;
		background-color: #002252;
		border-style: hidden;
	}

	input,
	select {
		font-family: Montserrat, Helvetica, Arial, sans-serif;
		font-weight: 400;
		font-size: 1em;
		line-height: 1.5;
		color: #404040;
	}

	h1 > a,
	h2 > a,
	h3 > a,
	h4 > a,
	h5 > a,
	h6 > a,
	p > a {
		font: inherit;
		color: inherit;
	}

	p a {
		font-size: inherit;
	}

	ol,
	ul {
		padding-inline-start: 1em;
	}

	body > .contentRender {
		min-height: 100%;
		height: 100%;
	}

	.button-wrapper {
		position: relative;
		z-index: 1;
		display: flex;
		align-items: center;
		padding: 1em 1.5em;
	}

	.panel-container .button-wrapper {
		padding-left: 0;
		padding-right: 0;
	}

	.button-wrapper.justify-left {
		justify-content: flex-start;
	}

	.button-wrapper.justify-center {
		justify-content: center;
	}

	.button-wrapper.justify-right {
		justify-content: flex-end;
	}

	button,
	.button {
		display: inline-block;
		height: 2.5em;
		color: white;
		background-color: #002252;
		font-family: Montserrat, Arial, sans-serif;
		font-weight: 700;
		font-size: 16px;
		line-height: 2.5em;
		text-transform: uppercase;
		text-decoration: none;
		text-align: center;
		cursor: pointer;
		overflow: hidden;
		border: 1px solid #002252;
	}
	.button {
		margin: 1em 0;
		padding: 0 1em;
	}
	button:hover,
	.button:hover {
		color: #002252 !important;
		background-color: white !important;
		border: 1px solid #002252 !important;
	}

	.contentRender_name_plugins_core_textbox {
		padding: 1em;
	}

	.contentRender_name_plugins_core_textbox h1,
	.contentRender_name_plugins_core_textbox h2,
	.contentRender_name_plugins_core_textbox h3,
	.contentRender_name_plugins_core_textbox h4,
	.contentRender_name_plugins_core_textbox h5,
	.contentRender_name_plugins_core_textbox h6 {
		margin-block-start: 0;
		margin-block-end: 0;
		margin-top: 15px;
		margin-bottom: 15px;
	}

	.contentRender_name_plugins_core_textbox h2,
	.contentRender_name_plugins_core_textbox h3 {
		color: #002252;
	}

	.contentRender_name_plugins_core_textbox p + h6 {
		margin-top: 16px;
	}

	section.header,
	section.slideshow,
	section.content,
	section.footer {
		position: relative;
	}

	/* Panels */
	.panel-page {
		position: relative;
		/* min-height: 100%; */
	}

	.panel-page > .header {
		margin-bottom: 143px;
	}

	.panel-layout {
		position: relative;
	}

	.panel-layout .panel-container {
		margin-top: 20px;

	}

	.panel-layout.space-around {
		padding: 20px;
	}

	.panel-one-column.has-background {
		background-repeat: no-repeat;
		background-position: left top;
	}

	.panel-two-column,
	.panel-three-column {
		display: flex;
		flex-direction: column;
	}

	.panel-two-column.mobile-reverse .left-container {
		order: 2;
	}

	.panel-two-column.mobile-reverse .right-container {
		order: 1;
	}

	.panel-layout.panel-accordion {
		padding: 1em 0;
	}

	.panel-layout.panel-accordion .panel-button {
		display: flex;
		position: relative;
		align-items: center;
		height: 60px;
		margin-bottom: 15px;
		background-color: #002252;
	}
	.panel-layout.panel-accordion .panel-button h3 {
		position: relative;
		left: 10px;
		max-width: calc(100% - 50px);
		margin: 0;
		color: white;
	}
	.panel-layout.panel-accordion .panel-button button {
		display: flex;
		justify-content: center;
		align-items: center;
		position: absolute;
		top: 10px;
		right: 10px;
		width: 40px;
		height: 40px;
		padding: 0;
		border: solid 2px #e5b966;
		border-radius: 50%;
		background-color: #002252;
		cursor: pointer;
	}
	.panel-layout.panel-accordion .panel-button button i {
		margin-top: 2px;
		font-size: 30px;
		color: #e5b966;
	}
	.panel-layout.panel-accordion .panel-button button i.fa-plus {
		display: none;
	}
	.panel-layout.panel-accordion.collapse .panel-button button i.fa-plus {
		display: flex;
	}
	.panel-layout.panel-accordion.collapse .panel-button button i.fa-minus {
		display: none;
	}
	.panel-layout.panel-accordion > .button-wrapper {
		display: block;
		padding: 0;
	}
	.panel-layout.panel-accordion > .button-wrapper > .button.accordion-link {
		display: block;
		margin: 0;
		border: 0;
		background: #e5b966;
		color: #002252;
		border-top: 1px solid #002252;
		border-bottom: 1px solid #002252;
		text-align: left;
		font-size: 18px;
		font-weight: 900;			
	}
	.panel-layout.panel-accordion > .panel-container {
		margin-top: 0;
	}

	.panel-layout.panel-accordion-inner.collapse > .panel-container {
		display: none;
	}
	.panel-layout.panel-accordion-inner button {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		margin-bottom: 5px;
		background-color: #002252;
		border: none;
		cursor: pointer;
	}
	.panel-layout.panel-accordion-inner h5 {
		font-family: Shrikhand, Arial, sans-serif;
		font-weight: 400;
		font-size: 1em;
		text-decoration: underline;
		text-transform: none;
		color: white;
	}
	.panel-layout.panel-accordion > .panel-container {
		height: auto;
		margin-top: 0;
		overflow: hidden;
	}
	.panel-layout.panel-accordion.collapse > .panel-container {
		height: 0;
	}
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	.panel-page > .header {
		margin-bottom: 152px;
	}
}

@media (min-width: 64.063em) {
	h1 {
		/* font-size: 3em; */
		font-size: 48px;
	}

	h2 {
		/* font-size: 2.25em; */
		font-size: 36px;
	}

	h3 {
		/* font-size: 2.125em; */
		font-size: 32px;
	}

	h4 {
		/* font-size: 1.75em; */
		font-size: 28px;
	}

	h5 {
		font-family: Shrikhand, Arial, sans-serif;
		font-weight: 400;
		/* font-size: 1.5em; */
		font-size: 20px;
	}

	h6 {
		/* font-size: 1em; */
		font-size: 16px;
	}

	p {
		font-size: 14px;
	}

	a {
		font-size: 18px;
	}

	button,
	.button {
		height: 2.5em;
		/* font-size: 1.125em; */
		font-size: 16px;
		line-height: 2.5em;
	}

	.panel-page > .header,
	.panel-page > .slideshow,
	.panel-page > .content,
	.panel-page > .footer,
	.panel-one-column,
	.panel-two-column,
	.panel-three-column {
		margin: 0 auto;
		position: relative;
	}

	.panel-page > .header {
		margin-bottom: 145px;
	}

	/* panel options */
	.panel-layout.controlled-width {
		max-width: 72.5em;
		margin: 0 auto;
	}
	
	.panel-two-column,
	.panel-three-column {
		flex-direction: row;
	}

	.panel-two-column.space-between,
	.panel-three-column.space-between {
		justify-content: space-between;
	}

	.panel-layout .panel-container {
		margin-top: 0;
	}
	.panel-layout.panel-one-column .panel-container {
		margin-top: 20px;
		margin-bottom: 20px;
	}

	.panel-two-column .panel-container {
		align-self: stretch;
		flex-grow: 1;
		flex-shrink: 1;
	}
	
	.panel-layout.space-between .left-container,
	.panel-layout.space-around .left-container {
		margin-right: 20px;
	}
	.panel-layout.space-between .right-container,
	.panel-layout.space-around .right-container {
		margin-left: 20px;
	}

	.panel-two-column.mobile-reverse .left-container {
		order: 1;
	}

	.panel-two-column.mobile-reverse .right-container {
		order: 2;
	}
	.panel-two-column.fifty_fifty .left-container,
	.panel-two-column.fifty_fifty .right-container {
		flex-basis: 50%;
	}

	.panel-two-column.narrow_left .left-container {
		flex-basis: 25%;
	}
	.panel-two-column.narrow_left .right-container {
		flex-basis: 75%;
	}

	.panel-two-column.narrow_left_33 .left-container {
		flex-basis: 33%;
	}
	.panel-two-column.narrow_left_33 .right-container {
		flex-basis: 66%;
	}

	.panel-two-column.narrow_right .left-container {
		flex-basis: 75%;
	}
	.panel-two-column.narrow_right .right-container {
		flex-basis: 25%;
	}

	.panel-two-column.narrow_right_33 .left-container {
		flex-basis: 55%;
	}
	.panel-two-column.narrow_right_33 .right-container {
		flex-basis: 33%;
	}

	.panel-three-column.equal_widths .left-container,
	.panel-three-column.equal_widths .middle-container,
	.panel-three-column.equal_widths .right-container {
		flex-basis: 33%;
	}

	.panel-three-column.left_50 .left-container {
		flex-basis: 50%;
	}
	.panel-three-column.left_50 .middle-container,
	.panel-three-column.left_50 .right-container {
		flex-basis: 25%;
	}

	.panel-three-column.middle_50 .left-container,
	.panel-three-column.middle_50 .right-container {
		flex-basis: 25%;
	}
	.panel-three-column.middle_50 .middle-container {
		flex-basis: 50%;
	}

	.panel-three-column.right_50 .left-container,
	.panel-three-column.right_50 .middle-container {
		flex-basis: 25%;
	}
	.panel-three-column.right_50 .right-container {
		flex-basis: 50%;
	}
	
	.panel-layout.panel-accordion {
		max-width: 73em;
		margin: 0 auto;
		padding-top: 2em;
	}
	.panel-layout.panel-accordion.two-col {
		padding: 2em 0;
	}
	.panel-layout.panel-accordion .panel-button {
		padding: 0 1em;
		background-color: white;
	}
	.panel-layout.panel-accordion.two-col .panel-button {
		margin-bottom: 0;
	}
	.panel-layout.panel-accordion .panel-button h3 {
		max-width: 100%;
		left: 0;
		color: #002252;
	}
	.panel-layout.panel-accordion .panel-button button {
		display: none;
	}
	.panel-layout.panel-accordion > .button-wrapper {
		max-width: 73em;
		margin: 0 auto;
		padding: 0 1em;
	}
	.panel-layout.panel-accordion > .button-wrapper .button.accordion-link {
		height: 38px;
		display: inline-block;
		min-width: 237px;
		border-width: 1px;
		border-radius: 3px;
		border-color: #002252;
		color: #002252;
		background-color: #e5b966;
		text-decoration: none;
		line-height: 40px;
		border: 1px solid #002252;
	}
	.panel-layout.panel-accordion > .button-wrapper .button.accordion-link:hover {
		color: white !important;
		background-color: #002252 !important;
	}
	.panel-layout.panel-accordion.collapse > .panel-container {
		height: auto;
	}
	.panel-layout.panel-accordion.two-col > .panel-container {
		column-count: 2;
		margin: 0;
	}

	.panel-layout.panel-accordion-inner.collapse > .panel-container {
		display: block;
		margin: 0;
	}
	.panel-layout.panel-accordion-inner > button {
		justify-content: flex-start;
		align-items: flex-start;
		height: auto;
		padding: 0 1em;
		background-color: transparent;
		cursor: default;
		pointer-events: none;
	}
	.panel-layout.panel-accordion-inner h5 {
		margin: 15px 0 0 0;
		text-decoration: none;
		color: black;
	}
	.panel-layout.panel-accordion-inner > .panel-container > .contentRender_name_plugins_core_textbox {
		padding: 0 1em;
	}
}

@media only screen and (min-width: 73em) {
	.panel-layout.panel-accordion-inner > .panel-container,
	.panel-layout.panel-accordion > .panel-container > .contentRender_name_plugins_core_textbox,
	.panel-layout.panel-accordion .panel-button,
	.panel-layout.panel-accordion > .button-wrapper,
	.panel-layout.panel-accordion-inner button,
	.panel-layout.panel-accordion-inner > .panel-container > .contentRender_name_plugins_core_textbox {
		padding: 0;
	}

	.panel-layout.controlled-width > .panel-container > .contentRender_name_plugins_core_textbox {
		padding: 1em 0 0 0;
	}
}

@media only screen and (min-width: 90em) {
	.panel-layout.panel-accordion .panel-button h3 {
		max-width: 100%;
		left: 0;
		color: #002252;
	}
	.panel-layout.panel-accordion-inner button {
		padding: 0;
	}
	.panel-layout.panel-accordion-inner h5 {
		margin: 15px 0 0 0;
	}
	.panel-layout.panel-accordion-inner > .panel-container > .contentRender_name_plugins_core_textbox {
		padding: 0;
	}
}

body .mfp-close:hover,
body .mfp-arrow:hover,
body .mfp-arrow:focus {
	background-color: transparent; /* foundation compatibility with magnific popup */
}

/* edit bar and button */
@media only screen and (max-width: 64em) {
	div[id^="sv_adminBar_"] {
		text-align: center;
	}
}

/* Info Banner */
@media only screen {
	.info-banner {
		position: relative;
		display: flex;
		align-items: center;
		opacity: 0;
		transition: opacity 500ms linear;
	}
	.info-banner.loaded {
		opacity: 1;
	}
	.info-banner.justify-left {
		justify-content: flex-start;
	}
	.info-banner.justify-center {
		justify-content: center;
	}
	.info-banner.justify-right {
		justify-content: flex-end;
	}
	.info-banner p {
		margin: 0;
		padding: 10px 20px;
		letter-spacing: initial;
	}
	.info-banner p .banner-intro {
		margin-right: 10px;
		font-weight: 600;
	}
	.info-banner a {
		margin-left: 10px;
		font-weight: 600;
		text-decoration: underline;
		color: inherit;
	}
	.info-banner a:hover {
		text-decoration: none;
	}
	.info-banner p button {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		align-self: flex-start;
		width: 22px;
		height: 22px;
		margin: 0 0.5em;
		padding: 0;
		color: inherit;
		background-color: transparent;
		border-color: inherit;
		border-width: 1px;
	}
	.info-banner p button:hover {
		color: black;
		background-color: #777;
		border-color: #777 !important;
	}
	.info-banner p button:hover i {
		color: black;
	}
}

.fa-twitter::before, .fab.fa-twitter:before {
	display: block;
	content: url('data:image/svg+xml;charset=UTF-8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z" fill="rgb(85, 172, 238)" /></svg>') !important;
	width: 18px;
	filter: brightness(0);
}

.sv-share-service-icon.fab.fa-twitter::before {
	width: 15px;
	transform: translateY(2px);
}
