﻿/***** 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; } 
/***** END RESET *****/
::-moz-selection { background: #000; color: #fff; text-shadow: none; } 
::selection { background: #000; color: #fff; text-shadow: none; }
/* Clearfix */
.cf { *zoom: 1; } .cf:before, .cf:after { content: " "; display: table; } .cf:after { clear: both; } 

/*-------- BODY STYLES --------*/
html { scroll-behavior: smooth; }
body {}

a:link, a:visited, a:active, a:hover { text-decoration: none; }
hr { border: #000 1px solid; }
header, footer, section, main, div, span, iframe, h1, h2, h3, h4, h5, h6, p, a, img, i, ol, ul, li, form, label, :before, :after { box-sizing: border-box; }

/*--- HEADER STYLES ---------------------*/
header {}

.aria-skip { position: relative; width: 0px; height: 0px; display: flex; font-size: 0px; opacity: 0; }

.ccc-header, header.ccc-header { position: relative; z-index: 1004; width: 100%; padding: 0 10px; display: flex; flex-direction: column; align-items: center; background: #fff; }

.ccc-header-main { position: relative; width: 100%; height: 60px; padding-right: 15px; display: flex; justify-content: space-between;  align-items: center; }

.ccc-header-logo { margin-bottom: -58px; position: relative; display: flex; }
.ccc-header-logo img { object-fit: contain; object-position: center; }

.header-soc { position: relative; display: flex; justify-content: flex-end; align-items: center; gap: 50px; }
.ccc-header .listed { font-size: 20px; font-weight: 700; }
.ccc-header .listed i { font-size: 20px!important; }

.nav-div { position: relative; width: 100%; height: 60px; display: flex; justify-content: flex-end; align-items: stretch; }

.nav-div .listed { color: #000!important; gap: 10px; font-weight: 500; padding: 8px; }
.nav-div .listed, .nav-div .listed i, .nav-div .listed span { color: #000!important; font-size: 16px!important; }

/* Site Colors: 
	
	Red: #dd2a26; 
	Blue: #233e84; 

	Light Gray: #f9f9f9; 
*/
/*---BODY--------------------------------*/


/* Text / Titles / Paragraphs / <h1><h2><h3><h4> / <p> */
body, .title, .subtitle, .txt-default, .content-sect p { font-family: 'poppins', sans-serif; }

.title { font-size: 48px; font-weight: 800; }
.subtitle { font-size: 36px; font-weight: 500; line-height: 1.1; }

.txt-default, .content-sect p { font-size: 16px; font-weight: 400; line-height: 1.4; color: #000; }

/* buttons / links / <a> / ctas */
.listed { display: flex; justify-content: center; line-height: 1.1; column-gap: 12px; }
.listed, .listed i, .listed span { font-size: 18px; transition: .25s ease all; }
.listed, .listed span { color: #233e84; }
.listed i { color: #dd2a26; font-weight: 900!important; }
a.listed:hover, a.listed:hover i, a.listed:hover span { color: #000!important; cursor: pointer; }

.listed.is-lglisted, .listed.is-lglisted i { font-size: 24px; margin-bottom: 2px; }
.listed.is-lglisted { font-weight: 800; }

.ccc-icon-link { position: relative; width: 47px; height: 47px; background: #233e84; color: #f1f1f1; border-radius: 35px; display: flex; justify-content: center; align-items: center; font-size: 25px; transition: 0.3s ease all; }

.ccc-fb:hover { background: #0254a8; }
.ccc-ig:hover { background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285aeb 90%); }
.ccc-yt:hover { background: #d10000; }
.ccc-xt:hover { background: #fff; color: #000; }

/* sections */
.content-sect, .horiz-sect { position: relative; display: flex; row-gap: 10px; }
.content-sect { position: relative; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.ai-c, .content-sect.ai-c, .multi-title.ai-c { align-items: center; }
.ai-fe, .content-sect.ai-fe, .multi-title.ai-fe { align-items: flex-end; }

.content-sect p { width: 100%; }

.horiz-sect { width: 100%; flex-wrap: wrap; justify-content: flex-start; align-items: center; column-gap: 10px; }
.jc-c, .horiz-sect.jc-c { justify-content: center; }

.f-row { display: flex; flex-direction: row; }
.f-col { display: flex; flex-direction: column; align-items: flex-start; }

.jc-fs { justify-content: flex-start; }
.jc-sb { justify-content: space-between; }

.ai-fs { align-items: flex-start; }
.ai-s { align-items: stretch; }

.ac-c { align-content: center; }

.f-wrap { flex-wrap: wrap; }

/* default.htm */
.homepage { padding: 40px 5vw 60px 5vw; display: flex; flex-direction: column; align-items: center; justify-content: center; row-gap: 16px; }

/* subhero */
.subhero { position: relative; text-align: center; background-size: cover; background-position: center; background-repeat: no-repeat; padding: 50px 0; background: #000; }
.subhero img { position: absolute; z-index: 1; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.subhero .title { position: relative; z-index: 3; font-size: 30px; color: #fff; }

/* recommended styles */
.ta-c, .ta-c .title, .ta-c p, .title.ta-c, p.ta-c { text-align: center; }
.ta-r, .ta-r .title, .ta-r p, .title.ta-r, p.ta-r { text-align: right; }
.ta-l, .ta-l .title, .ta-l p, .title.ta-l, p.ta-l { text-align: left; }

.txt-white, .txt-white span, .txt-white h1, .txt-white h2, .txt-white h3, .txt-white h4, .txt-white p, 
.darkmode, .darkmode .title, .darkmode .subtitle, .darkmode p, 
.shadowed, .shadowed .title, .shadowed .subtitle, .shadowed p { color: #fff; }

.txt-black { color: #000; }

.bg-white { background: #fff; }
.bg-black { background: #000; }

.bg-img { position: relative; }
.bg-img > *:not(img) { position: relative; z-index: 3; }

.width50 { width: 50%; }
.width100 { width: 100%; }

.margb-10 { margin-bottom: 10px; }
.margb-15 { margin-bottom: 15px; }
.margb-20 { margin-bottom: 20px; }

.z3 { position: relative; z-index: 3; }

/* forced styles */
.txt-bold { font-weight: 900; }

.force-colgap-0 { column-gap: 0!important; }
.force-rowgap-0 { row-gap: 0!important; }

/*-------- FOOTER STYLES ----------------*/
footer {}

.ccc-footer, footer.ccc-footer, .ccc-foot-main, .ccc-foot-foot { position: relative; width: 100%; display: flex; }

.ccc-footer, footer.ccc-footer { border-top: 7px solid #dd2a26; background: #f9f9f9; flex-direction: column; }

.ccc-foot-main { max-width: 1570px; margin: 0 auto; justify-content: space-between; align-items: stretch; padding: 45px 15px 40px; color: #233e84; }

.ccc-footcol { position: relative; padding: 0 15px 10px 30px; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; }

.foot-logo-col { padding-left: 0; }
.ccc-foot-logo img { width: 315px; height: auto; object-fit: contain; object-position: center; }

.foot-nav-col { font-size: 18px; }

.footnav { color: #233e84; }
.footnav:hover { text-decoration: underline; }

.ccc-footer .subtitle { font-size: 28px; text-transform: uppercase; }
.ccc-footer .subtitle i { font-size: 22px; color: #dd2a26; margin-right: 6px; }

.foot-ql {}

.foot-hours {}
.ccc-footer .txt-bold { font-weight: 700; }
.ccc-footer ul li { font-size: 16px; }

.foot-contact { padding-right: 0; }
.foot-contact .is-phone { color: #dd2a26!important; width: 100%; }

.foot-soc-media { margin-top: 30px; }

.ccc-foot-foot { justify-content: center; align-items: center; background: #fff; padding: 15px; min-height: 56px; }
.foot-copyright { font-size: 13px; }

/*----INVENTORY STYLES - KEEP AT BOTTOM OF CSS----*/


/* AT styles */
.list.listing { display: flex!important; }

/*---------- RESPONSIVE STYLES ----------*/

@media only screen and (min-width: 768px) {	/* MIND THE MIN-WIDTH */
	.ccc-header-main, .nav-div, .ccc-foot-main { max-width: 750px; }
	
	.ccc-header-logo img { width: 187.5px; height: 75px; }
	
	.ccc-foot-main { padding-top: 35px; row-gap: 20px; }
}

@media only screen and (min-width: 992px) {	/* MIND THE MIN-WIDTH */
	.show991 { display: none!important; }
	
	.ccc-header-main, .nav-div, .ccc-foot-main { max-width: 970px; }
	
	.subhero h1, .subhero .headline { font-size: 45px!important; }
	.subhero { margin: 0px 0 30px 0; padding: 100px 0; }
	
	.ccc-foot-main { padding-top: 55px; }
	.ccc-footcol { width: 25%; }
	.ccc-footcol .listed { justify-content: flex-start; }
	.foot-logo-col { width: 33.333333%; }
}

@media only screen and (min-width: 1200px) {	/* MIND THE MIN-WIDTH */
	.ccc-header-main, .nav-div, .ccc-foot-main { max-width: 1170px; }
	
	.foot-nav-col { border-left: 1px solid rgba(0, 0, 0, 0.1); padding-left: 30px; }
}

@media only screen and (min-width: 1600px) {	/* MIND THE MIN-WIDTH */
	.ccc-header-main, .nav-div, .ccc-foot-main { max-width: 1570px; }
	
	.ccc-foot-main { padding-bottom: 45px; }
}

@media only screen and (max-width: 1199px) {
	.ccc-header-main { height: 100px; }
	.ccc-header-logo { margin-bottom: 0; }
	.nav-div { justify-content: center; max-width: unset!important; }
	
	.foot-logo-col { width: 25%; }
	.ccc-foot-logo img { width: 200px; }
	.foot-nav-col { padding-left: 15px; }
}

@media only screen and (max-width: 991px) {
	.hide991 { display: none!important; }
	
	.ccc-header-main { height: 90px; }
	.nav-div { min-height: 50px; height: unset; padding: 10px 0; max-width: 750px!important; justify-content: space-between!important; align-items: center; flex-wrap: wrap; }
	
	.homepage { padding-top: 60px; }
	
	.ccc-foot-main { flex-direction: column; }
	.ccc-footcol { width: 100%!important; align-items: center; text-align: center; }
	.ccc-foot-logo img { width: 270px!important; }
	.foot-soc-media { justify-content: center; }
}

@media only screen and (max-width: 767px) {
	.ccc-header-logo img { width: 125px; height: 50px; }
	.ccc-header .listed { font-size: 18px; }
	
	.ccc-foot-main { max-width: 750px; padding-top: 35px; row-gap: 40px; }
	.ccc-footcol { width: 100%; }
}




