/* -------------------------------------------------- */
/* 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;}
/* -------------------------------------------------- */
/* Common
/* -------------------------------------------------- */
html{
	scroll-behavior: smooth;
}
body{
	font-family: 'Open Sans', sans-serif;
	font-size: 18px;
	color: #3e0f19;
	background: #37559b;
}
h1, h2, h3, h4{
	font-weight: 800;
	line-height: 1.2em;
	text-transform: uppercase;
}
h2{
	font-size: 27px;
	margin-bottom: 18px;
}
a, a:visited{
	color: #1f5ad2;
}
a:hover, a:active{
	color: #d41e44;
}
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: 24px;
}
.center-align{
	text-align: center;
}
.wrule{
	background: url('/assets/images/hd-rule.svg') no-repeat left bottom;
	padding-bottom: 27px;
	margin-bottom: 27px;
}
img.flex{
	width: 100%;
	height: auto;
	margin-bottom: 9px;
}
figure{
	line-height: 0;
}
.letter{
	background: #f7f1e1;
	padding: 27px;
	box-shadow: 0 0 36px rgba(0,0,0,.1);
}
/* -------------------------------------------------- */
/* Button
/* -------------------------------------------------- */
a.btn,
button.btn{
	display: inline-block;
	background: #37559b;
	border: none;
	padding: 18px 24px;
	margin: 6px;
	color: #fff;
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	line-height: 1.2em;
	text-transform: uppercase;
	border-radius: 9px;
}
a.btn:hover,
button.btn:hover{
	background: #7f1522;
	cursor: pointer;
}
.btns{
	display: flex;
	flex-wrap: wrap;
	margin: -6px;
	padding-bottom: 18px;
}
.btns.center-align{
	justify-content: center;
}

/* -------------------------------------------------- */
/* Containers
/* -------------------------------------------------- */
.container,
.container-med,
.container-min{
	position: relative;
	width: 100%;
	max-width: 1330px;
	margin: 0 auto;
	padding: 0 18px;
}
.container-med{
	max-width: 960px;
}
.container-min{
	max-width: 720px;
}

/* -------------------------------------------------- */
/* Header
/* -------------------------------------------------- */
.hero-wrap{
	background: #3e0f19 url('/assets/images/hero.jpg') no-repeat center top;
	background-size: cover;
	display: flex;
	flex-direction: column;
	min-height: 98vh;
}
header{
	padding: 36px 18px;
}
.inside header{ /* for interior pages */
	background: #3e0f19 url('/assets/images/divider-bg.jpg') no-repeat center;
	background-size: cover;
	padding:  54px 0;
}
a.logo{
	display: block;
	background: url('/assets/images/logo.png') no-repeat;
	background-size: 300px 105px;
	width: 300px;
	height: 105px;
	margin: 0 auto;
}

/* -------------------------------------------------- */
/* Navigation
/* -------------------------------------------------- */
.nav-btn{
	position: fixed;
	top: 60px;
	right: 18px;
	z-index: 30;
	background: #37559b url('/assets/images/menu.svg') no-repeat center;
	line-height: 0;
	width: 56px;
	height: 56px;
	margin-left: auto;
	-webkit-transition: right .25s; /* Safari */
	transition: right .25s;
	border-radius: 9px;
}
.nav-btn:hover{
	background-color: #7f1522;
	cursor: pointer;
}
#page.show .nav-btn{
	right: 218px;
	background: #37559b url('/assets/images/x.svg') no-repeat center;
}
#page.show .nav-btn:hover{
	background-color: #7f1522;
	cursor: pointer;
}
#page{
	position: absolute;
	z-index: 20;
	width: 100%;
	right: 0;
	-webkit-transition: right .25s; /* Safari */
	transition: right .25s;
	min-height: 100vh;
	background: #3e0f19;
}
#page.show{
	right: 200px;
}
.nav{
	position: fixed;
	z-index: 10;
	width: 200px;
	top: 36px;
	right: 0;
}
.nav a{
	display: block;
	border-bottom: 3px solid rgba(0,0,0,.10);
	padding: 18px;
	color: #fff;
	text-decoration: none;
	font-size: 15px;
	font-weight: bold;
	text-transform: uppercase;
}
.nav li:last-child a{
	border: none;
}

/* -------------------------------------------------- */
/* Hero
/* -------------------------------------------------- */
.hero{
	padding: 10vh 0;
	width: 100%;
	max-width: 700px;
	color: #fff;
	text-align: center;
}
.hero h1{
	font-size: 60px;
	margin-bottom: 18px;
}
.hero h1 span{
	vertical-align: middle;
}
.hero h1 i{
	width: 39px;
	height: 33px;
	display: inline-block;
	vertical-align: middle;
	background: url('/assets/images/star-alt.svg') no-repeat center;
}
.hero h1 div{
	display: inline-block;
}
.hero h1 div i:first-of-type{
	display: none;
}
.hero p{
	font-size: 21px;
}

/* -------------------------------------------------- */
/* Main
/* -------------------------------------------------- */
main{
	background: #f0e3c3;
}
main li{
	background: url('/assets/images/star.svg') no-repeat left .3em;
	margin-bottom: 9px;
	padding-left: 27px;
	line-height: 1.6em;
}
main ul{
	margin-bottom: 27px;
}
.inside main{
	padding: 54px 0;
	min-height: 500px;
}
h1.pgtitle.wrule{
	background-position: center bottom;
	text-align: center;
	font-size: 42px;
}

/* -------------------------------------------------- */
/* Section
/* -------------------------------------------------- */
section{
	padding: 144px 0;
	min-height: 100vh;
}
section h1{
	font-size: 45px;
}
section p:last-child{
	margin-bottom: 0;
}



/* -------------------------------------------------- */
/* Cols
/* -------------------------------------------------- */
.cols{
	margin: -18px;
	display: flex;
}
.cols.cols-reverse{
	flex-direction: row-reverse;
}
.col{
	padding: 18px;
}
.col-1-3{
	width: 33%;
}
.col-2-3{
	width: 67%;
}
.col-1-2{
	width: 50%;
}


/* -------------------------------------------------- */
/* Divider
/* -------------------------------------------------- */
.divider{
	background: url('/assets/images/divider-bg.jpg') no-repeat center;
	background-size: cover;
	height: 360px;
	border-top: 9px solid #7f1522;
	border-bottom: 9px solid #ca9e2c;

}


/* -------------------------------------------------- */
/* Form
/* -------------------------------------------------- */
.form-row{
	margin-bottom: 15px;
}
input,
textarea{
	font-family: 'Open Sans', sans-serif;
	font-size: 18px;
	color: #3e0f19;
	background: #faf5e9;
	border: 2px solid #ebdaaf;
	width: 100%;
	padding: 12px;
}
label{
	display: block;
	font-size: 15px;
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 3px;
}
.form-row.cboxes{
	margin-bottom: 36px;
}
.cboxes p{
	margin-bottom: 27px;
}
.cboxes label{
	display: flex;
	align-items: center;
	margin-bottom: 12px;
	text-transform: none;
	font-weight: normal;
	font-size: 18px;
}
.cboxes label:hover{
	cursor: pointer;
}
.cboxes input{
	display: none;
}
.cboxes span{
	display: inline-block;
	border: 2px solid #7f1522;
	background: transparent;
	width: 24px;
	height: 24px;
	vertical-align: middle;
	margin-right: 12px;
}
.cboxes input:checked + span{
	background: #7f1522 url('/assets/images/check.svg') no-repeat center;
	border-color: #7f1522;
}
.alert{
	color: red;
}

/* -------------------------------------------------- */
/* Ribbon
/* -------------------------------------------------- */
.ribbon{
	background: #7f1522;
	padding:  18px 60px;
}
.ribbon p{
	text-align: center;
	margin: 0;
	font-size: 15px;
	color: #dfc4c7;
	font-style: italic;
}
.ribbon a{
	color: #fff;
	text-decoration: none;
}
.ribbon a:hover{
	text-decoration: underline;
}
.ribbon button{
	float: right;
	margin: .25em 0 0 .25em;
	color: #fff;
	width: 18px;
	height: 18px;
	background: url("/assets/images/x.svg") no-repeat center;
	background-size: 12px 12px;
}
.ribbon button:hover{
	cursor: pointer;
}
.ribbon.show{
	display: none;
}

/* -------------------------------------------------- */
/* Press
/* -------------------------------------------------- */
.press article{
	margin-bottom: 27px;
}
.press article h2 a{
	color: #3e0f19;
	text-decoration: none;
}
.press article h2{
	margin-bottom: 0;
}

/* -------------------------------------------------- */
/* Footer
/* -------------------------------------------------- */
footer{
	padding: 36px 0;
	font-size: 15px;
	color: #fff;
	border-top: 9px solid #7f1522;
}
footer p{
	margin-bottom: 12px;
	text-align: center;
}
footer p:last-of-type{
	margin: 0;
}
footer p a,
footer p a:hover,
footer p a:visited{
	color: #fff;
}
.social{
	display: flex;
	justify-content: center;
	margin: -3px -3px 21px -3px;
}
.social li{
	margin: 3px;
}
.social a{
	display: block;
	width: 36px;
	height: 36px;
	border-radius: 50%;
}
.social-fb{
	background: #365491 url('/assets/images/facebook.svg') no-repeat center;
}
.social-tw{
	background: #1c9cea url('/assets/images/twitter.svg') no-repeat center;
}
.social-in{
	background: #c32aa3 url('/assets/images/instagram.svg') no-repeat center;
}

/* -------------------------------------------------- */
/* Breakpoints
/* -------------------------------------------------- */
@media screen and (max-width: 800px) {
	.hero-wrap{
		background-position: 70% top;
	}
	.hero h1{ font-size: 48px; }
	.hero h1 span.break{display:block;}
	.hero p{ font-size: 18px; }
}
@media screen and (max-width: 600px) {
	.hero h1 div{
		display: block;
	}
	.hero h1 div i:first-of-type{
		display: inline-block;
	}
	.cols{
		display: block;
		margin: 0;
	}
	.col{ padding: 18px 0; }
	.col-1-3,.col-2-3,.col-1-2{
		width: 100%;
	}
	.divider{ display: none; }
	section{
		padding: 0 0 54px 0;
		min-height: auto;
	}
	footer{
		text-align: center;
	}
	.social{
		justify-content: center;
	}
	a.logo{
		margin: 0;
	}
}
@media screen and (max-width: 550px) {
	header{ padding: 18px; }
	.nav-btn{ top: 33px; }
	a.logo{
		background-size: 150px 77px;
		width: 150px;
		height: 77px;
	}
	.btn{
		width: 100%;
		text-align: center;
	}
	h2{ font-size: 24px; }
}
@media screen and (max-width: 450px) {
	.hero h1{ font-size: 30px; }
}
