/*
	(c)2017 - visuallizard.com

	Base Styles
*/


/*
	Site Specific legend exxample:

	COLOURS:
		#9e2432		red 	[links, headings, footer]

	FONTS:
		[Nunito Sans: 'Nunito Sans', sans-serif]
		Thin 		100
		Light 		300		kit
		Regular 	400 	kit
		Medium 		500
		Semibold 	600 	kit		[headings]
		Bold 		700 	kit
		Extrabold 	800		kit		[h3]
		Black 		900

		[EB Garamond: EB Garamond', serif] -  !!!WREN only!!!
		Light: 		300				[Publications full article titles]
		Regular: 	400		kit
		Bold:		700		kit

*/

	::-moz-selection {
		background: #c0c0c0;
		text-shadow: none;
	}
	::selection {
		background: #c0c0c0;
		text-shadow: none;
	}

	html {
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		font-size: 100%;
		overflow-y: scroll;
		overflow-x: hidden;
		-webkit-text-size-adjust: 100%;
		-ms-text-size-adjust: 100%;
		height: 100%;
	}
	body {
		font: normal 16px/1.6 'Nunito Sans', sans-serif;
		background: #fff;
		color: #444;
		color: #434142;

		position: relative;
		min-height: 100%;
		margin: 0;

		display: -webkit-box;

		display: -ms-flexbox;

		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	main {
		-webkit-box-flex: 1;
		    -ms-flex-positive: 1;
		        flex-grow: 1;
	}
	*, *:before, *:after {
		-webkit-box-sizing: inherit;
		        box-sizing: inherit;
	}


/* !Typography ============================== */
	h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
		font-weight: 400;
	}
	h1 a, .h1 a, h2 a, .h2 a, h3 a, .h3 a, h4 a, .h4 a, h5 a, .h5 a, h6 a, .h6 a {
		font-weight: inherit;
		color: inherit;
	}
	h1:first-child, h2:first-child, h3:first-child, h4:first-child {
		margin-top: 0;
	}

/* 	h1, .h1 { margin-bottom: .25em; font: 600 40px/1.1 'Nunito Sans', 'Avenir', sans-serif; } */
	h1, .h1 { margin-bottom: 1em; font: 800 32px/1.1 'Nunito Sans', 'Avenir', sans-serif; text-transform: uppercase; color: #004f5e; }
	h2, .h2 { margin-bottom: 1em; font: 800 22px/1.2 'Nunito Sans', 'Avenir', sans-serif; text-transform: uppercase; color: #004f5e; }
	h3, .h3 { margin-bottom: 1em; font: 800 17px/1.2 'Nunito Sans', 'Avenir', sans-serif; text-transform: uppercase; }
	h4, .h4 { margin-bottom: 0em; font: 800 17px/1.2 'Nunito Sans', 'Avenir', sans-serif; }
	h5, .h5 { font-size: 1em; line-height: 1.5; }
	h6, .h6 { font-size: 1em; line-height: 1.5; }

	p { margin: 0 0 1.5em 0; }
	p img { margin: 0; max-width: 100%; height: auto !important; }
	p.lead { font-size: 21px; line-height: 1.25;  }

	i, em { font-style: italic; }
	b, strong { font-weight: 800; }
	small { font-size: 80%; }

/*	Blockquotes  */
	blockquote, blockquote p { font-size: 17px; line-height: 24px; color: #777; }
	blockquote { margin: 0 0 20px; padding: 10px 20px 0 15px; border-left: 5px solid #ddd; }
	blockquote cite { display: block; font-size: 12px; color: #666; }
	blockquote cite:before { content: "\2014 \0020"; }
	blockquote cite a, blockquote cite a:visited, blockquote cite a:visited { color: #666; }



/* !Links */
	a		{ color: #9e2432; color: rgb(0,79,94); color: #d31; outline: 0; text-decoration: none; }
	a:hover	{ color: #000; outline: 0;}
	a:focus	{ color: #000; outline: thin dotted; }
	a:active { outline: 0; }

	p a { line-height: inherit; }


/* !Lists */
	ul, ol { margin: 0 0 1.5em 0; padding-left: 1.5em; }
	ul ul, ul ol, ol ol, ol ul { margin-bottom: 0; }
	ul ul { list-style: circle; }
	ul { list-style: none; list-style-image: url("/img/icon-bullet-teal.svg"); }
	ol { list-style: decimal; }
	li { line-height: inherit; margin-bottom: 1em; }
	ul.unstyled { list-style: none; margin-left: 0; padding-left: 0; }
	ul.unstyled li:before { content: none; }


	dl { margin-bottom: 1em; }
	dl dt, dl dd { line-height: inherit; }
	dl dt {  }
	dl dd { margin-left: 1em; font-weight: bold; }

	dd:after {
		/* http://lea.verou.me/2012/02/flexible-multiline-definition-lists-with-2-lines-of-css/ */
/*
		content: '\D\A';
		white-space: pre;
*/
	}

/* !Images */
	img {
		border: 0;
		-ms-interpolation-mode: bicubic;
	}
	img.scale-with-grid {
		max-width: 100%;
		height: auto;
	}
	.img_left {
		float: left;
		margin: 0 2em 2em 0;
	}
	.img_right {
		float: right;
		margin: 0 0 2em 2em;
	}

	.svg-icon,
	.icon-svg,
	svg.icon {
		width: 100%;
		height: 100%;
	}
	i.icon {
		width: 1em;
		height: 1em;
		display: inline-block;
		vertical-align: middle;
	}

/* !Other */
	code, pre {
		padding: 0 3px 2px;
		font-family: Monaco, Andale Mono, Courier New, monospace;
		font-size: 12px;
		border-radius: 3px;
		border: 1px solid rgba(0, 0, 0, 0.15);
	}
	code {
		background-color: #eee;
		color: rgba(0, 0, 0, 0.75);
		padding: 1px 3px;
	}
	pre {
		background-color: #f5f5f5;
		display: block;
		padding: 8.5px;

		border: 1px solid #ddd;
		white-space: pre;
		white-space: pre-wrap;
		word-wrap: break-word;
	}

	hr {
		clear: both;
		height: 0;
		margin: 1em 0;
		border: 0;
		border-bottom: 1px solid #ddd;
	}

	address {
		display: block;
		font-size: 1rem;
		font-style: normal;
		margin-bottom: 1.5em;
	}

	.lower { text-transform: lowercase; }
	.upper { text-transform: uppercase; }


	sub, sup {
		/* Specified in % so that the sup/sup is the
		 right size relative to the surrounding text */
		font-size: 75%;

		/* Zero out the line-height so that it doesn't
		 interfere with the positioning that follows */
		line-height: 0;

		/* Where the magic happens: makes all browsers position
		 the sup/sup properly, relative to the surrounding text */
		position: relative;

		/* Note that if you're using Eric Meyer's reset.css, this
		 is already set and you can remove this rule */
		vertical-align: baseline;
	}
	sup {
		/* Move the superscripted text up */
		top: -0.5em;
	}
	sub {
		/* Move the subscripted text down, but only
		 half as far down as the superscript moved up */
		bottom: -0.25em;
	}

	.truncate {
		display: block;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

/* ! Helper classes  */
	.hidden {
		display: none !important;
		visibility: hidden;
	}
	.visuallyhidden {
		border: 0;
		clip: rect(0 0 0 0);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		width: 1px;
	}
	.visuallyhidden.focusable:active,
	.visuallyhidden.focusable:focus {
		clip: auto;
		height: auto;
		margin: 0;
		overflow: visible;
		position: static;
		width: auto;
	}
	.invisible {
		visibility: hidden;
	}
	.clearfix:after {
		content: "";
		display: table;
		clear: both;
	}


/* ! Buttons ============================== */
	.button {
		display: inline-block;
		vertical-align: middle;
		padding: .6em 1em .4em;
		min-width: 6em;

		color: #444;
		background-color: #e6e6e6;
		background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(25%, #fff), to(#e6e6e6));
		background-image: linear-gradient(#fff, #fff 25%, #e6e6e6);
		background-repeat: no-repeat;
		background-repeat: repeat-x;
		background-origin: border-box;

		text-align: center;
		text-decoration: none;
		text-transform: uppercase;
		letter-spacing: 0.01em;

/* 		font-family:  sans-serif; */
		font-size: 14px;
		line-height: 1;

		border: 1px solid    rgba(0, 0, 0, .05);
		border-bottom-color: rgba(0, 0, 0, .07);
		border-radius: 2px;

		-webkit-appearance: none;
		   -moz-appearance: none;
		        appearance: none;

		cursor: pointer;
		-webkit-transition: 0.1s linear all;
		transition: 0.2s linear all;
	}
	.button:hover {
		background-position: 0 -15px;
		color: #333;
		text-decoration: none;
	}
	.button:active,
	.button.active {
		border-color: #b3d4fc;
	}
	.button:focus {
		outline: 1px dotted #666;
		outline-offset: 1px;
	}
	.button.disabled,
	.button[disabled] {
		cursor: default;
		background-image: none;
		opacity: 0.65;
		-webkit-box-shadow: none;
		        box-shadow: none;
	}
	.button.small {
		font-size: 75%;
	}

/* ! FORMS ============================== */
	form {
		margin-bottom: 2em;
	}
	fieldset {
		margin-bottom: 2em;
	}
	fieldset > :last-child {
		margin-bottom: 0;
	}
	.inline-checkboxes .input-checkbox {
		margin-bottom: .5em;
	}
	
	label,
	legend {
		display: block;
/* 		margin-bottom: .5rem; */
		font-size: .875rem;
		font-weight: bold;
	}

	.required > label:after {
		content: " *";
	}

	input,
	select,
	textarea {
		display: inline-block;
		vertical-align: middle;
		border: 1px solid #ccc;
		padding: .3em .5em .4em;
/* 		outline: none; */
		border-radius: 2px;
		font: 300 16px/1.25 "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
		color: #666;
		margin: 0;
		max-width: 100%;
		min-width: 80px; /* ensure the input fields (such as with class .w5) are not too small when on narrow breakpoints  */
		background: #fff;
	}
	[type="checkbox"],
	[type="radio"] {
		margin-right: 0.5em;
	}
	select {
		/* padding: initial; */

		/* for custom selects: */
		padding: .2em .5em .3em;
		padding-right: 1.5em;
		border: 1px solid #ccc;
		border-radius: 2px;
		min-width: 5em;

		-webkit-appearance: none;
		   -moz-appearance: none;
		        appearance: none;

		background-color: #fff;
		background-repeat: no-repeat;
		background-size: auto 35%;
		background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpolygon fill='%23d31' points='0,0 50,100 100,0'/%3E%3C/svg%3E");
		background-position: 95% center;
		background-position: right .5em top 55%;

		cursor: pointer;
	}

	[class^='input-'] {
		margin-bottom: 1rem;
	}

	[type="checkbox"],
	[type="radio"] {
		width: auto;
		height: auto;
		min-width: 0;
		padding: 0;
		margin: 2px 5px 0 0;

		line-height: initial;
		border: none;
		display: inline-block;
		vertical-align: text-top;
	}
	.input-checkbox label,
	.input-radio    label {
		margin-right: 1em;
		display: inline-block;
		vertical-align: text-top;
		max-width: 90%; /*  to avoid dropping into new lines on narrow breakpoints. */
		font-weight: normal;
	}

	/* 	Multiple sets */
	.fm-checkbox > label:first-child,
	.fm-radio > label:first-child {
		display: block;
		font-weight: bolder;
	}

	.input-check-option,
	.input-radio-option {
		display: block;
		margin-bottom: 0;

		/* Spread options into three columns */
		display: inline-block;
		vertical-align: text-top;
		width: 33%;
		min-width: 200px;
	}
	.input-check-option input,
	.input-radio-option input,
	.inline-checkboxes input {
		float: left;
	}
	.input-check-option label,
	.input-radio-option label,
	.inline-checkboxes label {
		display: block;
		margin: 0 1.5em;
		font-weight: normal;
		line-height: 1.3;
		text-transform: none;
	}

	/* 	Input Error Messages */
	.error-message {
		line-height: 1.3;
		color: #9e2432;
		padding: .25em .5em;
		background-color: #fcc;
/* 		background-color: #cfc; */
		margin-bottom: 0;
	}
	.input-checkbox .error-message {
		margin-top: .25em;
	}
	
	.controls-group {
		clear: both;
		border: 0;
		padding: 0;
		margin: 0;
	}
		.controls-group > .button {
			margin-bottom: .25em;
		}
		.controls-group > .button + .button {
			margin-left: 1em;
		}
		.controls-group .next {
			float: right;
		}
	

	.form-row {
		
	}
	
	/* 	Form Module Block */
	.form-block {
		max-width: 600px;
	}
	.form-block [type="text"],
	.form-block [type="password"],
	.form-block [type="email"],
	.form-block [type="url"],
	.form-block select,
	.form-block textarea {
		width: 100%;
	}
	
	
	/* Forms */

.form-filter {
	padding: 0.5em 1em 1em;
	margin: 0.5em 0;
	background-color: #f6f6f6;
	display: flex;
}
	.form-filter > .input {
		flex-grow: 1;
		padding: 0;
		margin: 0;
		width: 100%;
		flex-wrap: nowrap;
	}
	.form-filter label {
		display: block;
		margin: 0;
		font-weight: normal;
	}
	.form-filter b {
		display: inline-block;
		padding: 0;
		margin: 0 0.25em 0;
	}
	.form-filter > .input input,
	.form-filter > .input select {
		min-width: 0;
		width: 80%;
	}
	.form-filter > .input select {
		width: 100%;
	}
	.form-filter > .input .button {
		min-width: 100px;
		width: 90%;
		float: right;
		margin-left: .5em;
		padding-left: .5em;
		padding-right: .5em;
	}



/* ! Content module columns */
	.cke > .c2,
	.cke > .c3,
	.cke > .c4,
	.cke > .c5,
	.cke > .c6 { float: left;            margin-left: 5%; }

/*
	.cke > .c2 { width: 49%;   width: calc(100% / 2 - 2% * 1); }
	.cke > .c3 { width: 32%;   width: calc(100% / 3 - 2% * 2); }
	.cke > .c4 { width: 23.5%; width: calc(100% / 4 - 2% * 3); }
	.cke > .c5 { width: 18.4%; width: calc(100% / 5 - 2% * 4); }
	.cke > .c6 { width: 15%;   width: calc(100% / 6 - 2% * 5); }
*/

	.cke > .c2 { width: 49%;   width: calc((100% - 5% * 1) / 2 - 1px); }
	.cke > .c3 { width: 32%;   width: calc((100% - 5% * 2) / 3 - 1px); }
	.cke > .c4 { width: 23.5%; width: calc((100% - 5% * 3) / 4 - 1px); }
	.cke > .c5 { width: 18.4%; width: calc((100% - 5% * 4) / 5 - 1px); }
	.cke > .c6 { width: 15%;   width: calc((100% - 5% * 5) / 6 - 1px); }

	.cke > .c1,
	.cke > .c-first {
		clear: both;
		margin-left: 0;
	}

/* ! CSS columns */
	.columns-2 { -webkit-columns: 2 500px; columns: 2 500px; -webkit-column-gap: 3em; column-gap: 3em; }
	.columns-3 { -webkit-columns: 3 250px; columns: 3 250px; -webkit-column-gap: 3em; column-gap: 3em; }
	.columns-4 { -webkit-columns: 4 250px; columns: 4 250px; -webkit-column-gap: 3em; column-gap: 3em; }


	.inline-block { display: inline-block; }
	.block { display: block; }
	.inline { display: inline; }
	.hidden { display: none; }

	.left { text-align: left; }
	.right { text-align: right; }
	.center { text-align: center; }
	
	
/* Modifier classes (should always be the last) */
	.w5   { width: 5%;  }
	.w10  { width: 10%; }
	.w15  { width: 15%; }
	.w20  { width: 20%; }
	.w25  { width: 25%; }
	.w30  { width: 30%; }
	.w33  { width: 33.33%; }
	.w35  { width: 35%; }
	.w40  { width: 40%; }
	.w45  { width: 45%; }
	.w50  { width: 50%; }
	.w55  { width: 55%; }
	.w60  { width: 60%; }
	.w65  { width: 65%; }
	.w66  { width: 66.66%; }
	.w70  { width: 70%; }
	.w75  { width: 75%; }
	.w80  { width: 80%; }
	.w85  { width: 85%; }
	.w90  { width: 90%; }
	.w95  { width: 95%; }
	.w100 { width: 100%; }
	
	.wgrow   { width: 0; flex-grow: 1; }
	.wgrow-2 { width: 0; flex-grow: 2; }
	
	.o0  { opacity: 0;   }
	.o10 { opacity: 0.1; }
	.o20 { opacity: 0.2; }
	.o30 { opacity: 0.3; }
	.o40 { opacity: 0.4; }
	.o50 { opacity: 0.5; }
	.o60 { opacity: 0.6; }
	.o70 { opacity: 0.7; }
	.o80 { opacity: 0.8; }
	.o90 { opacity: 0.9; }
	.o100 { opacity: 1.0; }
	
	.v-center,
	.v-centre {
		display: flex;
		flex-direction: column;
		justify-content: center;
	}


/* ! Pagination Links */
	.pagination-links {
		list-style: none;
		margin: 4em auto;
		padding: 0;
		position: relative;
/* 		left: -.75em; */
		z-index: 1;

		font-size: 14px;
		font-weight: 800;
		text-transform: uppercase;
	}
		.pagination-links > li {
			display: inline-block;
		}
		.pagination-links > li + li  {
			margin-left: .25em;
		}
		.pagination-links > li > a {
			display: block;
			padding: .5em .75em .4em;
/* 			border: 1px solid; */
			border-color: currentColor;
			min-width: 2.5em;

			text-decoration: none;
			font-weight: bold;
			text-align: center;
			font-size: .75rem;
			letter-spacing: .05em;
			line-height: 1;
			color: inherit;
		}
		.pagination-links > li:hover > a {
			color: #9e2432;
			border-color: currentColor;
		}
		.pagination-links > li.active > a {
			color: #9e2432;
			border-color: currentColor;
		}
		.pagination-links > li.disabled > a {
			pointer-events: none;
			color:  #777;
			border-color: currentColor;
		}


/* ! Slick Slider default styles ============================== */
	.slick-slider {
		position: relative;
		display: block;
		-moz-box-sizing: border-box;
			 box-sizing: border-box;
	
		-webkit-user-select: none;
		   -moz-user-select: none;
			-ms-user-select: none;
				user-select: none;
	
		-webkit-touch-callout: none;
		-khtml-user-select: none;
		-ms-touch-action: pan-y;
			touch-action: pan-y;
		-webkit-tap-highlight-color: transparent;
	}
	.slick-list {
		position: relative;
		display: block;
		overflow: hidden;
		margin: 0;
		padding: 0;
	}
	.slick-list:focus {
		outline: none;
	}
	.slick-list.dragging {
		cursor: pointer;
		cursor: hand;
	}
	.slick-slider .slick-track,
	.slick-slider .slick-list {
		-webkit-transform: translate3d(0, 0, 0);
		   -moz-transform: translate3d(0, 0, 0);
			-ms-transform: translate3d(0, 0, 0);
			 -o-transform: translate3d(0, 0, 0);
				transform: translate3d(0, 0, 0);
	}
	.slick-track {
		position: relative;
		top: 0;
		left: 0;
		display: block;
		margin-left: auto;
		margin-right: auto;
	}
	.slick-track:before,
	.slick-track:after {
		display: table;
		content: '';
	}
	.slick-track:after {
		clear: both;
	}
	.slick-loading .slick-track {
		visibility: hidden;
	}
	.slick-slide {
		display: none;
		float: left;
	
		height: 100%;
		min-height: 1px;
	}
	[dir="rtl"] .slick-slide {
		float: right;
	}
	.slick-slide img {
		display: block;
	}
	.slick-slide.slick-loading img {
		display: none;
	}
	.slick-slide.dragging img {
		pointer-events: none;
	}
	.slick-initialized .slick-slide {
		display: block;
	}
	.slick-loading .slick-slide {
		visibility: hidden;
	}
	.slick-vertical .slick-slide {
		display: block;
		height: auto;
		border: 1px solid transparent;
	}
	.slick-arrow.slick-hidden {
		display: none;
	}

	/* Slick Slider additional project specific styles */
	.slick-arrow {
		position: absolute;
		top: 50%;
		width: 50px;
		height: 50px;
		padding: 10px;
		min-width: 0;
		transform: translateY(-50%);
		text-indent: -20em;
		overflow: hidden;
		border: none;
		color: #eee;
		background-color: rgba(0,0,0,.8);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 20% auto;
		transition: all .2s;
		opacity: .75;
		cursor: pointer;
		z-index: 100;
	}
	.slick-arrow:hover {
		background-color: rgba(0,0,0,.5);
		background-position: center center;
	}
	.slick-prev { left: 0;  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 100"><polygon fill="%23ffffff" points="50,14.4 14.4,50 50,85.6 50,100 0,50 0,50 50,0"/></svg>'); }
	.slick-next { right: 0; background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 100"><polygon fill="%23ffffff" points="0,14.4 35.6,50 0,85.6 0,100 50,50 50,50 0,0"/></svg>'); }
	
	.slick-disabled { opacity: 0; }
	
	.slick-dots {
		list-style: none;
		position: absolute;
		bottom: 5%;
		margin: 0 auto;
		text-align: center;
		width: 100%;
		left: 0; right: 0;
		line-height: 1;
	}
		.slick-dots > li {
			display: inline-block;
			margin: 0 .25em;
			text-align: center;
		}
		.slick-dots > li > button {
			display: block;
			border: 1px solid rgba(255, 255, 255, .75);
			border-radius: 100%;
			background: none;
			text-indent: -10em;
			overflow: hidden;
			margin: 0;
			padding: 0;
			width: 15px;
			height: 15px;
			min-width: 0;
			cursor: pointer;
		}
		.slick-dots > li:hover > button,
		.slick-dots > li.slick-active > button {
			background-color: rgba(255, 255, 255, .75);
		}


/* ! Flash Message */
#flash-message {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 11;
	background-color: rgba(0,0,0,0.5);
}
#flash-message:empty {
	display: none;
}
#flash-message .message {
	position: relative;
	top: 20vh;
	left: 0;
	right: 0;
	
	width: 100%;
	max-width: 480px;
	margin: 1em auto;
	padding: 0.5em 1em 0.4em;
	border: 1em solid rgba(0,0,0,0.8);
	
	background-color: #fe9;
	color: #444;
	
	font-size: 1rem;
	font-weight: bold;
	line-height: 1.3;
	text-align: center;
}
	#flash-message .message.error {
		background-color: #fcc;
	}
	#flash-message .message.success {
		background-color: #cfc;
	}
	#flash-message .message .icon {
		display: none;
	}


/* ! Popup, pop-up */
.popup-block {
	position: relative;
	max-width: 800px;
	background: #fff;
	padding: 2em 2em;
	margin: 2em auto;
}
.popup-block > :last-child {
	margin-bottom: 0;
}


.mfp-counter {
	display: block;
	white-space: nowrap;
}
.mfp-image-holder .mfp-close {
	min-width: 2em;
}
.mfp-s-loading .mfp-close { display: none; }
.mfp-image-loaded { display: block; }


/* !Tables */
table {
	border-collapse: collapse;
	margin: 0 0 3em 0;
	padding: 0;
	width: 100%;
	table-layout: fixed;
}
	table tbody tr {
		border-top: 1px solid #eee;
	}
	table thead + tbody tr:first-child {
		border-color: #444;
	}
		table th,
		table td {
			padding: .75em .5em;
			text-align: left;
		}
			table th {
				letter-spacing: .05em;
				font-weight: 800;
				text-transform: uppercase;
			}
			table th.right,
			table td.right {
				text-align: right;
			}

.table-scroller {
	overflow-x: scroll;
	margin-bottom: 3em;
}
	.table-scroller table {
		min-width: 600px;
		margin-bottom: 0;
	}


/* Intro Title on Home page */
.intro {
	font-size: 50px;
	font-weight: 100;
	text-align: center;
	line-height: 1.3;
	padding: 0 1em;
}
.home .c2.c-first h1 { min-height: 0; }

.back,
.more {
	margin: 1em 0 ;

	font-weight: 800;
	line-height: 1.2;
	text-transform: uppercase;
}
	.back a:before {
		content: "<";
		margin-right: 0.5em;
	}
	.more a:after {
		content: ">";
		margin-left: 0.5em;
	}
	.more a + a{
		display: inline-block;
		margin-left: 2em;
	}

.button {
    color: #d31;
    font-weight: bold;
	text-transform: uppercase;
	text-decoration: none;
}


.sidebar img[src$="svg"] {
	max-width: 80px;
}
.sidebar p:not(:first-child) img[src$="svg"] {
	margin-top: 4em;
}
.sidebar img[src$="svg"] + br + strong {
	display: block;
}
.sidebar img[src$="svg"] + br + strong:before {
	content: '';
	display: block;
	width: 80px;
	border-top: 4px solid #004f5e;
	margin: 1.5em 0;
}


/* !Bulletins */

.article-image {
	width: 100%;
	max-width: 100%;
	margin: 1em 0;
}

.article-meta {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;

	margin: 2em 0;
	border-bottom: 1px solid #eee;
}

	.article-meta dt {
		width: 50%;
		margin: 0;
		padding: 1em 0.5em;
		border-top: 1px solid #eee;
	}

	.article-meta dd {
		width: 50%;
		margin: 0;
		padding: 1em 0.5em;
		border-top: 1px solid #eee;

		text-align: right;
	}

		.article-meta dd a {
			display: inline;

			text-transform: uppercase;
		}
	
	dt.call-to-action {
		font-weight: bold;
		color: #9e2432;
	}

/* !Bulletins, archive list */
.archive-search {
	display: flex;
}
.archive-search .text {
/* 	width: auto; */
}

.archive-list {
	margin: 2em 0;
	padding: 0;

	list-style-type: none;
	list-style-image: none;
}

	.archive-list .archive-list {
		margin: 1em 0.5em 0 0.5em;

		list-style-type: none;
		list-style-image: none;
	}

	.archive-list li {
		margin: 0;
		padding: 0.65em 1em 0.5em;
		border-top: 1px solid #eee;
	}

		.archive-list a {
			font-weight: 800;
		}

			.archive-list a span {
				color: #333;
				font-weight: normal;
			}

	.archive-list.month {
		margin: 1em 0.5em 1em 1em;
	}

		.archive-list.month a {
			font-weight: normal;
		}

.archive-list-heading,
.archive-search-heading {
	margin: 1em 0;
}

	.archive-list-heading + .archive-list {
		margin-top: 0;
	}

/* ! Articles: Index  */
.article-item {
	padding: 2em 0;
	border-top: 1px solid currentColor;
	margin: 0;
}
.article-date {
	font-weight: 800;
	line-height: 1.2;
	text-transform: uppercase;
	text-align: right;
}
	@media only screen and (min-width: 800px) {
		.article-header {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-orient: horizontal;
			-webkit-box-direction: normal;
			    -ms-flex-direction: row;
			        flex-direction: row;
			-webkit-box-pack: justify;
			    -ms-flex-pack: justify;
			        justify-content: space-between;
			margin-bottom: 1em;
		}
		.article-title {
			max-width: 500px;
			font-size: 22px;
		}
		.article-date {
			width: 20%;
		}
	}
.article-item .more {
	margin: 2em 0 0;
}

/* !Publications, based on page-alias and content-module divs */
.publications .primary .c2 {
	margin-left: 0;
	width: 50%;
	padding: 2em 0 0;
	border-top: 1px solid #eee;
}
	.publications .primary .c2 a > img {
		vertical-align: bottom;
		border: 1px solid #9e2432;
	}
	.publications .primary .c2 a:hover > img {
		border: 1px solid #000;
	}


/* !Staff module */

.staff-set,
.inductees-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	width: 104%;
	margin: 0 -2% 2em;
	padding: 0;
}
.staff-set .staff,
.inductees-list .inductee  {
	width: 30%;
	margin: 0 1.667% 3%;

}
	.staff-set .staff .contact-info p,
	.inductees-list .inductee .contact-info p  {
		margin-bottom: .25em;
	}
	.staff-set .staff-title,
	.inductees-list h4 {
		margin: .75em 0 .75em;
	}
	.staff-fig {
		margin: 0;
		border: 1px solid #eee;
	}
	.staff-fig img {
		width: 100%;
		height: auto;
		display: block;
	}
	.contact-info {
		color: #444
	}

	/* zoom-in for inductees */

	.inductee-profile figure {
		margin: 1em 0 2em;
		width: 100%;
		max-width: 100%;
	}

		.inductee-profile figure img {
			width: 100%;
			max-width: 100%;
		}

		.inductee-profile figcaption {
			font-style: italic;
		}

	.inductee-profile dl {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: stretch;
		    -ms-flex-align: stretch;
		        align-items: stretch;
	}

		.inductee-profile dt {
			width: 100%;
			margin: 0;
			padding: 1em 0.25em 0;
			border-top: 1px solid #eee;
		}

		.inductee-profile dd {
			width: 100%;
			margin: 0;
			padding: 0.5em 0.25em 1em 5%;
		}



/* FAQ */

/* Checklist FAQ */
.checklist {

}

.checklist-index {
	margin-bottom: 4em;
}
	.sidebar .checklist-index {
		margin-top: 4em;
	}

.checklist-index-item {
	margin-bottom: 2em;
}
.checklist-index-item a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
	.checklist-icon {
		display: inline-block;
		max-width: 80px;
		margin-right: 5%;

	}
	.checklist-index-title {
		color: #444;
	}
	.checklist-index-item.active .checklist-index-title,
	.checklist-index-item a:hover .checklist-index-title {
		color: #d31;
	}

	.js .checklist-answers .item-on {
		display: block;
	}
	.js .checklist-answers .item-off {
		display: none;
	}


/* Mortgage calculator */
.mtge-calc-summary {
	margin: 2em 0 3em;
	text-align: center;
}
	.mtge-calc-summary h2 {
		margin-bottom: 0.5em;
	}
	.mtge-calc-summary dl {
		margin-top: 0;
		border-top: 1px solid #444;
	}
		.mtge-calc-summary dt,
		.mtge-calc-summary dd {
			display: inline-block;
			padding: 1em 0 0;
			width: 40%;
			text-align: right;
		}
			.mtge-calc-summary dd {
				text-align: left;
			}

.mtge-calc-results {
    display: none;
}
	.amortization-table td, .amortization-table th,
	.mortgage-calc-table td, .mortgage-calc-table th {
		text-align: right;
	}	
	.amortization-table td:first-child, .amortization-table th:first-child {
		width: 15%;
		text-align: left;
	}
	.mortgage-calc-table td:first-child, .mortgage-calc-table th:first-child {
		text-align: left;
	}

/* !Market Statistics tables */

.market-statistics-map {
	margin: 0 0 0;
	padding: 0;
}
	.market-statistics-map svg {
		display: block;
		max-width: 700px;
		width: 100%;
		height: auto;
		margin: 0 auto;
	}

.market-statistics-tables {
	border: 0;
}

	.market-statistics-tables tr > *:first-child {
		width: 20%;
	}
	.market-statistics-tables thead span {
		display: inline-block;
		margin-bottom: 0;

		font-size: inherit;
		line-height: 1.2;
		text-align: left;
	}
	.market-statistics-tables td {
		text-align: center;
	}
	.market-statistics-tables thead th {
		text-align: center;
	}
	.market-statistics-tables tbody th {
		padding: .25em .5em;
		font-weight: normal;
		text-transform: none;
	}
	.market-statistics-tables tbody + thead th {
		padding-top: 1.5em;
	}

/* DIRECTORY tables */

.directory-table { table-layout: auto; }
	
	.directory-table td { vertical-align: top; }
		.directory-table td:empty:before { content:"-"; }
		.directory-table td.logo { width: 150px; max-width: 150px; padding-right: 20px; }
		
	.directory-table figure { margin: 0.25em 0; }
		.directory-table figure img {  display: inline-block; margin: 0; width: 100%; height: auto; max-width: 150px; max-height: 150px; }

	
/* UNAVAILABLE and GREYBOX, general classes */

.unavailable {
	opacity: .3;
}
	
	.unavailable .greybox {
		display: inline-block;
		width: 70%;
		height: 0.6em;
		background: #eee;
	}
		.unavailable .greybox.full {
			width: 100%;
		}

	.unavailable figcaption a {
		color: #999;
	}
		
	.unavailable h2 {
		color: #ccc;
		text-decoration: strike;
	}
	
	.unavailable dl i {
		color: #eee;
	}

/* IE10+ custom CSS */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	.market-statistics-map svg { width: 400px; height: 400px; }
}

/* hazard caution construction development stripes border */

.hazard-border {
	margin: 2rem auto;
	padding: 1rem;

	border: 10px solid goldenrod;
	border-image: repeating-linear-gradient(
		-55deg,
		#000,
		#000 20px,
		#ffb101 20px,
		#ffb101 40px
	) 10;
}