﻿/***** BEGIN RESET *****/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	background: transparent;
	border: 0;
	margin: 0;
	padding: 0;	
}

ol, ul {
	list-style: none;
}

table{border-collapse:collapse; width:100%;}
td{vertical-align:top;}

/* Make HTML 5 elements display block-level for consistent styling */  
header, nav, article, footer, address {  
    display: block;  
} 

html{scroll-behavior: smooth;}

/*-------- COLORS --------

*/

/***** END RESET *****/
::-moz-selection {
    background: #000; 
    color: #fff;
    text-shadow: none;
}
::selection {
    background: #000;
    color: #fff;
    text-shadow: none;
}


/* Clearfix */
.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.cf:after {
    clear: both;
}
.cf {
    *zoom: 1;
}

/*-------- BODY STYLES --------*/

body {
color:#003a5d;
}

a:link, a:visited, a:active {text-decoration:none;}
a:hover {text-decoration:none;}


hr{border:#000 1px solid;}

/*--- HEADER STYLES ---------------------*/
header {}




/*---BODY--------------------------------*/

.pad-vertical{
	padding: 100px 0;
}

.wrapper {
    display: block;
    margin: 0 auto;
    max-width: 1568px;
    padding: 0 60px;
	width: 100%;
	box-sizing: border-box;
}


.flex{display: flex;}
.flex-wrap{flex-wrap: wrap;}
.justify-between{justify-content: space-between;}
.align-center{align-items: center;}
.align-start{align-items: flex-start;}

.hero{
	display: flex;
	align-items: flex-end;
	color: #fff;
	height: calc(100vh - 112px);
	margin-top: 70px;
	padding-bottom: 8%;
	box-sizing: border-box;
	
	background: url("/siteart/hero.jpg") center center;
	-moz-background-size: cover;
	-o-background-size: cover;
	-webkit-background-size: cover;
	background-size: cover;
}


.category-grid{
	padding-top: 60px;
	display: grid;
    grid-template-columns: 33.33333% 33.33333% 33.33333%;
}
.category-grid a{
	margin: 5px;
	padding: 60px;
	background: #ebf1f4;
}
.category-grid a img{
	display: block;
	margin: 0 auto;
	max-width: 100%;
}
.img-center{display: flex; align-items: center; justify-content: center;
min-height: 200px;}
.category-grid a .cta{
	margin-top: 50px;
	display: block;
}

.category-grid a .cta i{
	padding-left: 0;
}
.border-top{border-top: solid 12px #ce0e2d;}

.btn-row{
	display: flex; flex-wrap: wrap;
	gap: 20px;
}

.cta{
	display: inline-block;
	padding: 20px 30px;
	background: #000;
	color: #fff;
	text-transform: uppercase;
	font-size: 16px;
	
	font-family: "elza", sans-serif;
	font-weight: 500;
	font-style: normal;
	
	transition: ease all 0.3s !important;
}
.cta:hover{
    background: #003a5d !important;
    color: #fff !important;
}
.cta i{
	padding-left: 20px;
	float: right;
}

.cta.red{
	background: #ce0e2d;
}

.cta.offwhite{
	background: #ebf1f4;
	color: #003a5d;
}
.cta.blue{
	background: #003a5d;
	color: #fff;
}
.cta.blue:hover{
	background: #ebf1f4 !important;
	color: #003a5d !important;
}
.site-footer .cta.red:hover{
	background: #ebf1f4 !important;
	color: #003a5d !important;
}


.hero p{
	font-size: 24px;
	line-height: 30px;
	font-family: "elza", sans-serif;
	font-weight: 400;
	font-style: normal;
	max-width: 640px;
	margin-bottom: 50px;
}

.heading{
	font-family: "anton", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 90px;
	line-height: 102px;
	margin-bottom: 25px;
}
.heading-sm{
	font-family: "elza", sans-serif;
	font-weight: 900;
	font-style: normal;
	font-size: 40px;
}
.subhead{
	font-family: "elza", sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size: 14px;
	letter-spacing: 0.5px;
	margin-bottom: 16px;
}
/*--------FORM STYLES--------------------*/




/*-------- FOOTER STYLES ----------------*/
footer{}

.site-footer {
    margin: 0;
    padding-top: 70px;
    padding-bottom: 50px;
    background-color: #003a5d;
    color: #fff;
    font-size: 14px;
    line-height: 1.5;
	font-family: "elza", sans-serif;
}
.site-footer a {
    color: #fff;
    transition: color .3s;
}
.site-footer a:hover {
	color: #ce0e2d;
}
.site-footer .site-footer-wrapper {
    display: grid;
    grid-template-columns: 1fr 1.2fr 1fr 1fr;
}
.site-footer .site-footer-wrapper .footer-col-3, .site-footer .site-footer-wrapper .footer-col-4 {
    padding-left: 20px;
    justify-self: end;
}
.site-footer .site-footer-wrapper .footer-col-1 .logo-footer {
    display: block;
    max-width: 134px;
    margin-bottom: 32px;
}
.site-footer .site-footer-wrapper .footer-col .col-header {
    margin-bottom: 32px;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .05em;
}

.site-footer .site-footer-wrapper .footer-col-1 .contact-items .footer-contact-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 25px;
    letter-spacing: .1em;
    font-weight: 400;
}
.site-footer .site-footer-wrapper .footer-col-2 .menu-footer-main .menu-item {
    margin-bottom: 15px;
}
.site-footer .site-footer-wrapper .footer-col-2 .menu-footer-main .menu-item a {
    padding-bottom: 5px;
    font-weight: 400;
    letter-spacing: .05em;
    line-height: 1.2;
}

.site-footer .site-footer-wrapper .footer-col-2 .menu-footer-main {
    margin: 0;
    padding: 0;
    list-style: none;
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
}
.site-footer .site-footer-wrapper .footer-col-1 .contact-items .footer-contact-item i {
    margin-right: 13px;
    color: #5c7e95;
    font-size: 22px;
	
    width: 25px;
    padding-right: 2px;
    text-align: center;
	
}
.site-footer .copyright-wrapper {
    display: flex;
    line-height: 1.5;
}
.site-footer .copyright-wrapper .copyright-text {
    margin-right: 80px;
}
.site-footer .copyright-wrapper .menu-footer-copyright {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    margin-left: auto;
    padding: 0;
    list-style: none;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.site-footer .copyright-wrapper .menu-footer-copyright>.menu-item:after {
    content: "|";
    margin: 0 9px;
}
.site-footer .copyright-wrapper .menu-footer-copyright>.menu-item:last-of-type:after {
    content: none;
}
.site-footer .site-footer-wrapper .footer-col-4 .footer-social-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.site-footer .site-footer-wrapper .footer-col-4 .footer-social-items .footer-social-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 56px;
    height: 56px;
    padding: 10px;
    margin-right: 23px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,.4);
    border-radius: 100%;
    font-size: 22px;
    -webkit-transition: all .6s;
    transition: all .6s;
	box-sizing: border-box;
}
.site-footer .site-footer-wrapper .footer-col-4 .footer-social-items .footer-social-item:hover {
    border-color: #ce0e2d;
    background-color: #ce0e2d;
    color: #fff;
}


hr {
    margin: 50px 0;
    height: 1px;
    background-color: #484848;
    border: 0;
}

.site-footer hr {
    background-color: rgba(255,255,255,.1);
}

/*----INVENTORY STYLES - KEEP AT BOTTOM OF CSS----*/



/*---------- RESPONSIVE STYLES ----------*/

@media only screen and (max-width: 1399px) {
	.cta{font-size: 14px; line-height: 1.5;}
	
}
@media only screen and (max-width: 1199px) {
	.cta{font-size: 13px; line-height: 1.5;}
	.site-footer .site-footer-wrapper {
		grid-template-columns: 1fr 1fr;
	}
	.site-footer .site-footer-wrapper .footer-col-3, .site-footer .site-footer-wrapper .footer-col-4 {
		padding-left: 0;
		padding-right: 20px;
		justify-self: flex-start;
	}
	.footer-col-3 .cta{float: none !important;}
	
	.site-footer .site-footer-wrapper {
		grid-template-columns: 1fr 1fr;
		row-gap: 40px;
	}
	.category-grid{
		grid-template-columns: 50% 50%;
	}

}


@media only screen and (max-width: 767px) {
	.hide-sm{display: none;}
	.hero{
		position: relative;
		padding: 0 0 40px;
	}
	.hero:before{
		content: '';
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		top: 0;
		background: rgba(0,0,0,0.33);
	}
	.hero > div{
		position: relative;
	}
	
	.hero .heading {
		font-size: 50px;
		line-height: 1.2;
	}
	.hero p {
		font-size: 18px;
		line-height: 1.33;
	}
	.site-footer .site-footer-wrapper {
		grid-template-columns: 1fr;
	}
	.site-footer .site-footer-wrapper .footer-col-3, .site-footer .site-footer-wrapper .footer-col-4 {
    padding-left: 0;
    padding-right: 20px;
    justify-self: flex-start;
}
	.site-footer .copyright-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
	.site-footer .copyright-wrapper .menu-footer-copyright {
    margin-left: 0;
    margin-top: 20px;
		flex-wrap: wrap;
}
	
	
	.category-grid{
		grid-template-columns: 100%;
	}
	
}


@media only screen and (max-width: 479px) {

	.site-footer .site-footer-wrapper .footer-col-2 .menu-footer-main {
		-webkit-column-count: 1;
		-moz-column-count: 1;
		column-count: 1;
	}
	.wrapper {
		padding: 0 40px;
	}
	.category-grid a{
		padding:30px;
	}
}






