/* -------------------------------------------------- */
/* Reset - http://purecss.io/base
/* -------------------------------------------------- */
a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline;}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section, main{display:block;}body{line-height:1;}ol,ul{list-style:none;}blockquote,q{quotes:none;}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none;}table{border-collapse:collapse;border-spacing:0;}.hide{display:none;}html{box-sizing: border-box;}*,*:before,*:after{box-sizing:inherit;}.clear{font-size:0px;clear: both;height: 0px;}*:focus{outline: none;}strong{font-weight:bold;}em{font-style:italic;}input:invalid{box-shadow: none;}button{border:none;background:none;padding:0;margin: 0;}button::-moz-focus-inner{border:0;}input,button{border-radius:0;border-radius:none;}html{scroll-behavior: smooth;}
/* -------------------------------------------------- */
/* Common
/* -------------------------------------------------- */
body{
	background: #000;
	font-family: 'Figtree', Helvetica, Arial, sans-serif;
	font-size: 16px;
	color: #000000;
}
h1, h2, h3, h4{
	line-height: 1.2em;
	font-weight: 900;
}
h2, h3, h4,
h2 a, h3 a, h4 a{ 
	color: #c22032; 
	margin-bottom: 1em;
	text-decoration: none;
}
h2{ 
	text-transform: uppercase;
	font-size: 21px;
}
h3, h4{ font-weight: 700; }
h3{ font-size: 18px; }
h4{ font-size: 16px; }

a{ color: #000000; }
strong{ font-weight: 700; }
sup{
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
  top: -0.5em;
}
p{
	line-height: 1.6em;
	margin-bottom: 1em;
}
.center{
	text-align: center;
}

/* -------------------------------------------------- */
/* Containers   
/* -------------------------------------------------- */
.container{
	width: 100%;
	max-width: 1366px;
	margin: 0 auto;
	padding: 0 27px;
}
.contain-sm{
	width: 100%;
	max-width: 720px;
}
.contain-tiny{
	width: 100%;
	max-width: 540px;
}


/* -------------------------------------------------- */
/* Header   
/* -------------------------------------------------- */
header{
	background-color: #fff;
	padding: 18px 0;
	position: sticky;
	top: 0;
	z-index: 999;
}
.logo,
.logo svg{
	width: 208px;
	height: 70px;
	-webkit-transition: width .25s, height .25s; /* Safari */
	transition: width .25s, height .25s;
}
.scrolled header{
	box-shadow: 0 1px 0 #eaebec;
}
.scrolled .logo{
	overflow: hidden;
	width: 145px;
	height: 39px; /* crop out text */
}
.scrolled .logo svg{
	width: 145px;
	height: 50px;
}
 
header .container{
	display: flex;
	align-items: center;
}
header nav{
	margin-left: auto;
}
header nav ul{
	display: flex;
	align-items: center;
}
header nav li{
	padding-left: 27px;
}
header nav a{
	display: block;
	padding: 9px 0 6px 0;
	color: #000;
	text-decoration: none;
	font-weight: 700;
	border-bottom: 2px solid transparent;
	text-transform: uppercase;
	font-size: 14px;
}
header nav a:hover{
	color: #c22032;
}
header nav .active a{
	color: #c22032;
	border-color: #c22032;	
}


/* -------------------------------------------------- */
/* Hero   
/* -------------------------------------------------- */
.hero{
	background: url('/assets/images/hero-hands.webp') no-repeat center;
	background-size: cover;
	padding: 144px 0;
	display: flex;
	align-items: center;
	color: #fff;
}
.hero h1{
	width: 100%;
	margin-bottom: 27px;
	font-size: 54px;
}
.hero p{
	margin: 0;
	font-size: 18px;
}


/* -------------------------------------------------- */
/* History
/* -------------------------------------------------- */
.history{
	background: #eaebec url('/assets/images/logo-symbol.svg') no-repeat -54px center;
	background-size: 900px auto;
	padding: 72px 0;
}
strong em{
	color: #c22032;
}
.sm-btn{
	display: inline-flex;
	align-items: center;
	background: rgba(194,32,50,.1);
	padding: 6px 12px;
	text-transform: uppercase;
	text-decoration: none;
	font-size: 14px;
	font-weight: 700;
	color: #c22032;
	-webkit-transition: background-color .25s, color .25s; /* Safari */
	transition: background-color .25s, color .25s;
	border: none;
}
.sm-btn.bigger{
	padding: 12px;
}
.sm-btn svg{
	margin-left: 6px;
	fill: #c22032;
	transform: translateX(0);
	-webkit-transition: all .25s;
	transition: all .25s;
}
.sm-btn:hover{
	background: rgba(194,32,50,1);
	color: #fff;
	cursor: pointer;
}
.sm-btn:hover svg{
	transform: translateX(3px);
	fill: #fff;
}

/* -------------------------------------------------- */
/* Cardlet
/* -------------------------------------------------- */
.cardlet{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: -27px;
}
.cardlet .img{
	width: 50%;
	padding: 27px;
}
.cardlet .txt{
	width: 50%;
	padding: 27px;
}
.cardlet .img-quote{
	width: 50%;
	padding: 27px;
	line-height: 0;
}
.img-quote img{
	width: 100%;
	height: auto;
}
.quote{
	background: #c22032 url('/assets/images/quote.svg') no-repeat 27px 33px;
	color: #fff;
	padding: 27px 33px 27px 66px;
}
.quote-txt{
	font-weight: 700;
	font-style: italic;
	margin-bottom: 9px;
	font-size: 17px;
}
.quote-cite{
	margin: 0;
	font-size: 15px;
}

.frame-img{
	line-height: 0;
	background: #c22032;
	margin: 9px 0 0 9px;
}
.frame-img img{
	width: 100%;
	height: auto;
	transform: translate(-9px, -9px);
}

/* -------------------------------------------------- */
/* Benefits
/* -------------------------------------------------- */
.benefits{
	padding: 72px 0;
}
main ul{
	margin-bottom: .6em;
}
main li{
	padding: 0 0 .4em 12px;
	line-height: 1.6;
	background: url('/assets/images/bullet-sm.svg') no-repeat left .75em;
}

/* -------------------------------------------------- */
/* CTA
/* -------------------------------------------------- */
.cta-box{
	background: #c22032 url('/assets/images/logo-symbol-ghost.svg') no-repeat -54px center;
	background-size: 600px auto;
	padding: 72px 0;
	color: #fff;
}
.cta-box-container{
	width: 100%;
	max-width: 754px;
	padding: 0 27px;
	margin: 0 auto;
}
.cta h2{
	text-transform: none;
	color: #fff;
	font-size: 48px;
	margin-bottom: 18px;
	text-align: center;
}
.cta p{
	font-size: 18px;
	text-align: center;
	margin-bottom: 18px;
}

.em-btn{
	display: inline-flex;
	align-items: center;
	background: rgba(0,0,0,.1);
	padding: 6px 12px;
	text-transform: uppercase;
	text-decoration: none;
	font-size: 14px;
	font-weight: 700;
	color: #fff;
	-webkit-transition: background-color .25s, color .25s; /* Safari */
	transition: background-color .25s, color .25s;
}
.em-btn svg{
	margin-right: 9px;
}
.em-btn:hover{
	background: rgba(0,0,0,.25);
	color: #fff;
}

/* -------------------------------------------------- */
/* Page Header
/* -------------------------------------------------- */
.pg-head{
	background-image: linear-gradient( to right, #eaebec 60%, #fff 60%);
}
.pg-head .wrapper{
	background: url('/assets/images/logo-symbol.svg') no-repeat -108px center;
	background-size: 900px auto;
}
.pg-head .content{
	display: flex;
	flex-wrap: wrap;
	color: #000;
	line-height: 0;
}
.pg-head .img,
.pg-head .txt{
	width: 50%;
}
.pg-head h1{
	font-size: 27px;
	padding-bottom: 23px;
	margin-bottom: 27px;
	border-bottom: 4px solid #838588;
	color: #c22032;
	line-height:  1.2em;
	text-transform: uppercase;
}
.pg-head .txt{
	display: flex;
	align-items: center;
	padding: 54px 54px 54px 0;
}
.pg-head .txt div{
	width: 100%;
}
.pg-head .callout{
	margin: 0;
}
.pg-head .img{
	background: #000 no-repeat center;
	background-size: cover;
	padding-bottom: 37.5%;
}

/* -------------------------------------------------- */
/* News
/* -------------------------------------------------- */
.pg-head.news .img{
	padding-bottom: 18.75%;
}
.breadcrumb a{
  line-height: 1em;
  text-transform: uppercase;
  text-decoration: none;
  font-weight: 700;
  padding: 9px 0 6px 0;
  border-bottom: 2px solid #000;
  color: #000;
  font-size: 14px;
}
.pg-head.news h1{
	font-size: 36px;
	padding: 18px 0 21px 0;
	margin: 0;
	border-bottom: none;
	line-height:  1.2em;
	text-transform: none;
	font-weight: 700;
}
.pub-date{
	font-size: 14px;
	font-weight: 700;
	color: #838588;
	text-transform: uppercase;
}


/* -------------------------------------------------- */
/* Interior
/* -------------------------------------------------- */
.main{
	padding: 27px 0;
}
.callout{
	font-size: 27px;
	margin-bottom: 27px;
	line-height: 1.4em;
}
.interior section{
	padding: 27px 0;
}
.interior .main h3,
.interior .main h4{
	padding-top: 1em;
}

/* -------------------------------------------------- */
/* About: Mission
/* -------------------------------------------------- */

.icon-cards{
	display: flex;
	flex-wrap: wrap;
	margin: -27px;
	padding-top: 27px;
}
.icon-cards .card{
	width: 50%;
	padding: 27px;
}
.icon-cards .content{
	display: flex;
	height: 100%;
}
.icon-cards .txt{
	flex-grow: 1;
	padding-left: 27px;
}
.icon-cards h3{
	padding: 0;
}
.events .card h2{
	margin-bottom: 9px;
	padding: 0;
}
.events .sdate{
	font-size: 14px;
	margin-bottom: 12px;
	font-weight: 700;
}
.events .sum{
	line-height: 1.4em;
	margin-bottom: 15px;
}

/* -------------------------------------------------- */
/* About: Members
/* -------------------------------------------------- */
.mem-cards{
	display: flex;
	flex-wrap: wrap;
	margin: -3px;
	padding: 0 0 27px 0;
}
.mem-cards .card{
	padding: 3px;
	width: 33.33%;
}
.mem-cards .content{
	background: #eaebec;
	height: 100%;
}
.mem-cards .img img{
	width: 100%;
	height: auto;
	filter: grayscale(100%);
	-webkit-transition: all .25s; /* Safari */
	transition: all .25s;
}
.mem-cards .card:hover img{
	filter: grayscale(0);
}
.mem-cards .txt{
	padding: 27px;
}
.interior .main .mem-cards h3{
	margin-bottom: 9px;
	padding: 0;
}
.mem-cards .company{
	font-size: 12px;
	text-transform: uppercase;
	font-weight: 700;
	margin-bottom: 9px;
}
.members{
	margin-bottom: 27px;
}
.members-list{
	padding: 36px 0;
}
.members-list ul{
	display: flex;
	flex-wrap: wrap;
	margin: -27px;
}
.members-list li{
	background-image: none;
	padding: 27px;
	display: flex;
	align-items: center;
}
.members-list li{
	opacity: .7;
	-webkit-transition: opacity .25s; /* Safari */
	transition: opacity .25s;
}
.members-list li:hover{
	opacity: 1;
}

/* -------------------------------------------------- */
/* Resources
/* -------------------------------------------------- */
.resource-cards{
	display: flex;
	flex-wrap: wrap;
	margin: -27px;
}
.resource-cards .card{
	width: 33.33%;
	padding: 27px;
}
.resource-cards img{
	width: 100%;
	height: auto;
	margin-bottom: 12px;
}
.resource-cards h2{
	margin-bottom: 12px;
}
.resource-cards .source,
.resource-cards .type{
	display: inline-block;
	font-weight: 700;
	margin-bottom: 12px;
	font-size: 14px;
}
.resource-cards .source{
	border: none;
}
.resource-cards .sum{
	line-height: 1.4em;
	margin-bottom: 15px;
}

/* -------------------------------------------------- */
/* Table
/* -------------------------------------------------- */
table{
	border-top: 1px solid #000;
	border-right: 1px solid #000;
}
table td, 
table th{
	text-align: left;
	padding: 18px;
	border-left: 1px solid #000;
	border-bottom: 1px solid #000;
}
table th{
	font-weight: bold;
	background: #eaebec;
	width: 33.33%;
}
table td{
	font-size: 15px;
}
table td, 
table th,
table li{
	line-height: 1.4em;
}
.valign-middle{ vertical-align: middle; }
.side-th{ display: none; }

/* -------------------------------------------------- */
/* Form   
/* -------------------------------------------------- */
form{
	padding: 18px 0 0 0;
}
form input{
	font-family: 'Figtree', Helvetica, Arial, sans-serif;
	font-size: 16px;
	color: #000000;
	width: 100%;
	padding: 12px;
	border:  2px solid #ccc;
}
label{
	display: block;
	padding-bottom: 6px;
	font-weight: 700;
	font-size: 14px;
}
.form-row{
	padding-bottom: 18px;
}
.form-row.wcols{
	display: flex;
	flex-wrap: wrap;
	margin: -9px;
}
.form-col{
	width: 50%;
	padding: 9px;
}
.alert{
	color: red;
}

/* -------------------------------------------------- */
/* Footer
/* -------------------------------------------------- */
.foot-box{
	text-align: center;
	padding: 18px 0 9px 0;
}
footer p{
	margin-bottom: 9px;
	line-height: 1.2em;
}
.sm-txt{
	font-size: 13px;
	opacity: .6;
}

/* -------------------------------------------------- */
/* CMS edit button
/* -------------------------------------------------- */
.edit-btn{
	background:  #000000 url('/assets/images/pencil.svg') no-repeat center;
	height: 48px;
	width: 48px;
	position: fixed;
	z-index: 9999;
	bottom: 10px;
	right: 10px;
}

/* -------------------------------------------------- */
/* Mobile Navigation
/* -------------------------------------------------- */
#page{
	background: #ffffff;
	position: relative;
	z-index: 20;
	width: 100%;
	background: #fff;
	-webkit-transition: all .25s; /* Safari */
	transition: all .25s;
	min-height: 100vh;
}
#page.show{
	transform: translateX(-240px);
}
.mnav{
	background: url('/assets/images/logo-symbol-ghost.svg') no-repeat -300px bottom;
	background-size: 600px auto;
	position: fixed;
	z-index: 10;
	height: 100vh;
	overflow-y: scroll;
	width: 240px;
	padding: 39px 15px 15px 15px;
	top: 0;
	right: 0;
}
.mnav a{
	display: block;
	color: #fff;
	text-align: left;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.4em;
	text-transform: uppercase;
	text-decoration: none;
	padding: 12px;
}
.mnav-btn{
	display: none;
	background: transparent url('/assets/images/menu.svg') no-repeat center;
	width: 42px;
	height: 42px;
}
#page.show .mnav-btn{
	background-image: url('/assets/images/close.svg');
}

/* -------------------------------------------------- */
/* Breaking Points
/* -------------------------------------------------- */
@media screen and (max-width: 1366px) {
	.pg-head.news .img{ display: none; }
	.pg-head.news{ 
		background: #eaebec; 
		border-right: 27px solid #fff;
	}
}
@media screen and (max-width: 1080px) {
	.cardlet{
		align-items: start;
	}
}
@media screen and (max-width: 959px) {
	header nav ul{ display: none; }
	.mnav-btn{ display: block; }
	.logo{
		overflow: hidden;
		width: 145px;
		height: 39px; /* crop out text */
	}
	.logo svg{
		width: 145px;
		height: 50px;
	}
}
@media screen and (min-width: 960px) {
	#page.show{
		transform: translateX(0);
	}
}
@media screen and (max-width: 900px) {
	.mem-cards .card{ width:100%; }
	.mem-cards .img{ max-width: 400px; }
	.resource-cards .card{ width: 50%; }
}
@media screen and (max-width: 800px) {
	.pg-head{ background: #eaebec; padding-bottom: 27px;}
	.pg-head .img,
	.pg-head .txt{ width: 100%; }
	.pg-head .txt{ padding: 27px 0; }
	.pg-head .img{ padding-bottom: 56%; }
	.pg-head.news{ padding-bottom: 0;}
	.history{
		background-position: center -54px;
	}
	.history,
	.benefits{
		padding: 36px 0;
	}
	.hero{
		padding: 36px 0;
	}
	.cardlet .img,
	.cardlet .img-quote, 
	.cardlet .txt{
		width: 100%;
	}
	.icon-cards .content{ flex-wrap: wrap; }
	.icon-cards .card{ width: 100%; padding-bottom:0;}
	.icon-cards .txt{ padding:0; }
	
	table,
	table tr,
	table th,
	table td{
		display: block;
		width: 100%;
	}
	.side-th{ display: block; }
	.top-th{ display: none; }
}
@media screen and (max-width: 700px) {
	.resource-cards .card{ width: 100%; }
}
@media screen and (max-width: 600px) {
	.hero h1{
		font-size: 42px;
	}
	.cta h2{
		font-size: 36px;
	}
	.pg-head.news h1{
		font-size: 30px;
	}
	.form-col{ width: 100%; }
	.form-col:first-child{
		padding-bottom: 9px;
	}
}
@media screen and (max-width: 500px) {
	.quote{
		background-position: 18px 33px;
		background-size: 18px 14px;
		padding: 27px 33px 27px 48px;
	}
	.icon-cards .txt{ 
		width:  100%; 
		padding: 0;
	}
	.callout{ font-size: 24px; }
}