
/*---------------------------------------

	RESET

-----------------------------------------*/

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin:0; padding:0; border:0; outline:0; vertical-align:baseline;}
article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {display:block;}
* { margin: 0; padding: 0; }

*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -ms-flex: 0 1 auto;
}


/*---------------------------------------

	Standard

---------------------------------------*/
body { 
	font-family: "Open Sans",sans-serif; 
	color:#111;
	font-size: 18px;
	line-height: 160%;
	font-weight: 300;
	-webkit-text-size-adjust: 100%;
	padding: 0 100px;
	max-width: 1600px;
	margin: 0 auto;
}

.clear { clear:both; }


/*---------------------------------------

	GRIDS & LAYOUT

---------------------------------------*/
.grid {
	display: grid;
}

.column-6-6 {
    grid-template-columns: 6fr 6fr;
    grid-gap: 96px 64px;
}

.column-5-7 {
    grid-template-columns: 5fr 7fr;
    grid-gap: 96px 64px;
}

.column-5-7.right {
	grid-template-columns: 7fr 5fr;
}

.column-4-4-4 {
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 64px;
}

.column-3-3-3-3 {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap: 32px;
}

.column-4-8 {
	grid-template-columns: 1fr 2fr;
    grid-gap: 32px;
}

.column-6-3-3 {
    grid-template-columns: 6fr 3fr 3fr;
    grid-gap: 32px;
}

.column-6-3-3.right {
	grid-template-columns: 3fr 3fr 6fr;
    grid-gap: 32px;
}

.padding-right-16 {
	padding-right: 16px;
}

.padding-left-16 {
	padding-left: 16px;
}

.padding-right-32 {
	padding-right: 32px;
}

.padding-right-64 {
	padding-right: 64px;
}

.padding-left-32 {
	padding-left: 32px;
}

.top-32 {
	margin-top: 32px
}

.top-64 {
	margin-top: 64px
}

.top-128 {
	margin-top: 128px
}

.top-192 {
	margin-top: 192px
}

.bottom-32 {
	margin-bottom: 32px
}

.bottom-64 {
	margin-bottom: 64px
}

.bottom-128 {
	margin-bottom: 128px
}

.bottom-192 {
	margin-bottom: 192px
}

.margin-auto {
	margin: 0 auto;
}

/*---------------------------------------

	Content

---------------------------------------*/

a { text-decoration: underline; }
a[target="_blank"]:after { content: ''; width: 10px; height:10px; background: url('/img/icons/arrow-pointing-to-right.svg') no-repeat; display: inline-block; top:-10px; font-size: 14px; font-weight: bold; text-decoration: none; position: relative; }
img { border:none; display: block; }
ul { list-style:none; padding-left: 24px; }
p.small {font-size: 14px; }

h1, h2, h3, h4, h5 { font-weight: normal;  }

h1 { font-size:56px; line-height: 110%; margin-bottom: 16px; }
h2 { font-size:56px; line-height: 110%; margin-bottom: 16px; }
.smaller h1, .smaller h2, h1.smaller, h2.smaller { font-size: 40px; line-height: 120%; margin-bottom: 16px; }
h3 { font-size:40px; line-height: 120%; margin-bottom: 16px; }
.smaller h3, h3.smaller, h4, h5 { font-size: 28px; line-height: 120%; margin-bottom: 12px; }


.the-ct h4.spacey-label {
	letter-spacing: 12px;
	text-transform: uppercase;
	margin-bottom: 30px;
}

.align-center {
	text-align: center;
}

.the-ct {
	max-width: 900px;
}

.the-ct p { 
	width: 90%;
	margin-bottom: 20px;
    font-weight: 300;
    line-height: 150%;
}

.lead p { 
	font-size: 26px;
}

.column-grid .the-ct {
	max-width: 530px;
}

.the-ct h2, .the-ct h3, .the-ct h4 {
	width: 90%;
	margin-bottom: 12px; 
}

.the-ct a { 
	color:#A0653B;
	transition: 0.3s;
}

.the-ct a:hover {
	color: #333;
	cursor: pointer;
	transition: 0.3s;
}

.the-ct ul, .the-ct ol { 
	margin-bottom:15px;
}

.the-ct ul { 
	width: 90%;
	list-style:disc;
}

.the-ct ul li { 
	margin-bottom:8px;
}

/*---------------------------------------

	Colors

---------------------------------------*/
.sb-gradient {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#25539a+0,b81c2b+100 */
	background: #25539a; /* Old browsers */
	background: -moz-linear-gradient(left, rgba(37,83,154,0.8) 0%, rgba(184,28,43,0.8) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(37,83,154,0.8) 0%,rgba(184,28,43,0.8) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(37,83,154,0.8) 0%,rgba(184,28,43,0.8) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#25539a', endColorstr='#b81c2b',GradientType=1 ); /* IE6-9 */
}

.sb-gradient-no-opacity {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#25539a+0,b81c2b+100 */
	background: #25539a; /* Old browsers */
	background: -moz-linear-gradient(left, rgba(37,83,154,1) 0%, rgba(184,28,43,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(37,83,154,1) 0%,rgba(184,28,43,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(37,83,154,1) 0%,rgba(184,28,43,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#25539a', endColorstr='#b81c2b',GradientType=1 ); /* IE6-9 */
}

.ss-gradient {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#122d68+50,d61726+50 */
	background: #122d68; /* Old browsers */
	background: -moz-linear-gradient(left, rgba(18,45,104,0.8) 50%, rgba(18,45,104,0.8) 50%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(18,45,10,0.8) 50%,rgba(18,45,104,0.8) 50%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(18,45,104,0.8) 50%,rgba(18,45,104,0.8) 50%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#122d68', endColorstr='#d61726',GradientType=1 ); /* IE6-9 */
}

.ss-gradient-no-opacity {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#122d68+50,d61726+50 */
	background: #122d68; /* Old browsers */
	background: -moz-linear-gradient(left, rgba(18,45,104,1) 50%, rgba(18,45,104,1) 50%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(18,45,10,1) 50%,rgba(18,45,104,1) 50%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(18,45,104,1) 50%,rgba(18,45,104,1) 50%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#122d68', endColorstr='#d61726',GradientType=1 ); /* IE6-9 */
}

.ts-gradient {

}

.ek-gradient {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#e52225+0,c11d1f+100 */
	background: #e52225; /* Old browsers */
	background: -moz-linear-gradient(left, rgba(229,34,37,0.8) 0%, rgba(193,29,31,0.8) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(229,34,37,0.8) 0%, rgba(193,29,31,0.8) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(229,34,37,0.8) 0%, rgba(193,29,31,0.8) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e52225', endColorstr='#c11d1f',GradientType=1 ); /* IE6-9 */
}

.ek-gradient-no-opacity {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#e52225+0,c11d1f+100 */
	background: #e52225; /* Old browsers */
	background: -moz-linear-gradient(left, rgba(229,34,37,1) 0%, rgba(193,29,31,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(229,34,37,1) 0%, rgba(193,29,31,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(229,34,37,1) 0%, rgba(193,29,31,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e52225', endColorstr='#c11d1f',GradientType=1 ); /* IE6-9 */
}

.white-text, .white-text a {
	color: #fff;
}

.full-width {
	width: 100%;
}

.primary-btn {
	padding: 8px 24px;
	display: inline-block;
	border: 1px solid #A0653B;
	text-decoration: none;
	transition: 0.3s;
}

a img {
	transition: 0.3s;
}

.primary-btn:hover, a:hover img {
	box-shadow: 0 0 0.6rem 0 rgba(0,0,0,.3);
	transition: 0.3s;
}

.flex {
	display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media only screen and (min-width: 640px) {

.push-right {
	margin-left: 8.3333%;
}

.push-left {
	margin-right: 8.3333%;
}

}

/*---------------------------------------

	Header

---------------------------------------*/
header {
	padding: 60px 0 40px;
}

.logo {
	display: inline-block;
}

.logo img {
	max-width: 40px;
}

header h1 {
	font-size: 24px;
	line-height: 140%;
}

nav ul {
	list-style: none;
    padding: 0;
    white-space: nowrap;
}

nav ul li {
	display: inline-block;
	padding: 0 0 0 30px;
}

nav ul li a {
	color: #333;
 }

.logo, nav, .head-contact {
	display: inline-block;
}

.head-contact a {
	text-decoration: none;
	color: #A0653B;
}

.head-contact a:first-child {
	margin: 0 30px 0 0;
}

.head-contact a:hover {
	text-decoration: underline;
}

/*---------------------------------------

	Layout

---------------------------------------*/

.title-image-block {
	z-index: 500;
	position: relative;
}

.title-image-block img {
	opacity: 0.2;
}

.title-image-block h2 {
	max-width: 800px;
}

img.brand-logo {
	max-width: 500px;
	margin: 0 auto 40px;
}

.title-image-block .the-ct, .title-lead-block .the-ct {
	z-index: 1000;
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%)
}

.cs-brand-logo {
	position: relative;
	height: 140px;
}

.cs-brand-logo img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	padding-right: 20%;
}

.cs-bullets ul {
	padding-left: 0;
}

.column-grid p:nth-child(2) {
	margin-bottom: 10px;
}

.quote:before {
	content: '"';
    position: relative;
    display: block;
    color: #A0653B;
    margin-bottom: -40px;
    font-family: cursive;
    font-size: 90px;
}

.quote h2 {
	font-size: 22px;
	line-height: 130%;
	color: #555;
	padding-left: 60px;
	max-width: 900px;
}

.quote p {
	padding-left: 60px;
	color: #a0653b;
}

.no-bottom {
	margin-bottom: 0px !important;
	padding-bottom: 0px !important;
}

.sticky-nav {
	display: none;
	position: fixed;
	bottom: 0;
	margin-left: -100px;
	padding: 24px 100px;
	background: rgba(0, 0, 0, 0.9);
	border-top: 1px solid #ddd;
}

.sticky-nav div:nth-child(1) {
	float: left;
}

.sticky-nav div:nth-child(2) {
	margin: 0 0 0 auto;
	float: right;
}

.sticky-nav a {
	color: #CA8249;
}

.sticky-nav div:nth-child(1) a:before {
	content: '<'; 
	width: 20px; 
	display: inline-block; 
	font-size: 14px;
	position: relative;
	top: -1px;
}

.sticky-nav div:nth-child(2) a:after {
	content: '>';
	text-align: right;
	width: 20px; 
	display: inline-block; 
	font-size: 14px;
	position: relative;
	top: -1px;
}

footer {
	padding: 64px 0;
	border-top: 1px solid #ddd;
}

footer ul, footer li {
	padding: 0;
	list-style: none;
}


@media only screen and (max-width: 1200px) {

body {
	padding: 0 60px;
	font-size: 18px;
}

.sticky-nav {
	margin-left: -60px;
	padding: 20px 60px;
}

.column-3-3-3-3 {
    grid-template-columns: 1fr 1fr;
}

}

@media only screen and (max-width: 960px) {

h1, h1.small, h2, h2.small {
	font-size: 36px;
}

.lead p {font-size: 22px;}

.column-6-6, .column-4-4-4 {
    grid-template-columns: 1fr;
    grid-gap: 50px 0;
}

.column-6-6 .the-ct p  {
	width: 90%;
}

.column-4-8 {
	grid-template-columns: 1fr;
    grid-gap: 16px;
}

.column-6-3-3, .column-6-3-3.right {
    grid-template-columns: [col] 1fr [col] 1fr;
    grid-template-rows: [row] auto [row] auto [row];
    grid-gap: 16px;
}

.column-6-3-3 div:nth-child(3), .column-6-3-3.right div:nth-child(1) {
	grid-column: col;
    grid-row: row;
}

.column-6-3-3 div:nth-child(2) {
	grid-column: col 2;
    grid-row: row;
}

.column-6-3-3 div:nth-child(1), .column-6-3-3.right div:nth-child(3) {
	grid-column: col / span 2;
    grid-row: row 2;
}

.padding-right-16 {
	padding-right: 8px;
}

.padding-left-16 {
	padding-left: 8px;
}

.padding-right-32 {
	padding-right: 16px;
}

.padding-right-64 {
	padding-right: 32px;
}

.padding-left-32 {
	padding-left: 16px;
}

.top-32 {
	margin-top: 16px
}

.top-64 {
	margin-top: 32px
}

.top-128 {
	margin-top: 64px
}

.top-192 {
	margin-top: 96px
}

.bottom-32 {
	margin-bottom: 16px
}

.bottom-64 {
	margin-bottom: 32px
}

.bottom-128 {
	margin-bottom: 64px
}

.bottom-192 {
	margin-bottom: 96px
}

.break-at-960 .push-right, .break-at-960 .push-left {
	margin-right: 0;
	margin-left: 0;
}

.quote h2 {
	font-size: 28px;
}

.head-contact {
	width: 100%;
}



}

@media only screen and (max-width: 640px) {

body {
	padding: 0 24px;
}

header { padding: 20px 0; }

header img {
	max-width: 34px;
	margin-top: 11px;
}

header h1 {
	font-size: 20px;
}

.sticky-nav {
	margin-left: -24px;
	padding: 16px 24px;
}

.sticky-nav a {
	font-size: 14px;
}

.sticky-nav div:nth-child(1) a:before, .sticky-nav div:nth-child(2) a:after {
	width: 16px;
	top: 0;
}

.column-3-3-3-3 {
	 grid-gap: 16px;
}

.break-at-640 .grid-2, .break-at-640 .grid-3, .break-at-640 .grid-4, .break-at-640 .grid-5, .break-at-640 .grid-6, .break-at-640 .grid-7, .break-at-640 .grid-8 {
	display: block;
	width: 100%;
}

}
