﻿/***** 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; }
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 {  }

.dlr-header {
	position: relative; z-index: 1004; width: 100%; background: #1a1c2d; padding-right: max(0px, calc(50% - 1000px)); 
	display: flex; flex-direction: column; align-items: flex-end; justify-content: space-between; 
}
.header-logo-div {
	position: absolute; z-index: 3; top: 0; left: max(16px, calc(50% - 1000px)); width: 210px;
	filter: drop-shadow(0 4px 16px rgba(0, 0, 0, .5)); 
}
.header-logo {
	display: flex; width: 100%; height: 100%; 
	background: #fff; clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0% 100%); 
}
.header-logo img { 
	width: 210px; height: auto; padding: 8px 12px; 
	object-fit: contain; object-position: center; 
}
.topheader {
	position: relative; z-index: 2; height: 40px; 
	display: flex; justify-content: flex-end; align-items: stretch; 
	filter: drop-shadow(0 4px 12px rgba(0, 0, 0, .8)); 
}
.topheader a {
	position: relative; padding: 0 22px; background: #30324f; 
	display: flex; justify-content: center; align-items: center; 
	font-size: 15px; letter-spacing: .25px; 
	text-align: center; color: #ddd!important; 
	transition: .25s ease all; 
}
.topheader a.is-phone {
	background: #38408b; color: #fff!important; font-size: 19px; padding: 0 24px; 
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 16px 100%, 0% calc(100% - 16px)); 
}
.topheader a:hover { background: #4650af; color: #fff!important; }
.topheader a.is-phone:hover { clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%, 0% 100%); }
.nav-div {
	position: relative; z-index: 4; height: 84px; 
	display: flex; justify-content: flex-end; align-items: stretch; 
}

/* Site Colors: 
	
	Orange: #f27f3d; rgba(242, 127, 61, 1); 
	
	Blue1 (brighter/btnclass): #38408b; 
	Blue2 (btn-alt, med, mission2): #30324f; 
	Blue3 (dark): #1a1c2d; 
	Blue4 (hover): #4650af; 
	
	Light Gray: #ddd; 
	Lightest Gray: #f2f2f2; 
*/
/*---BODY--------------------------------*/
.invisilink {
	font-family: inherit; font-size: inherit; font-weight: inherit; 
	line-height: inherit; letter-spacing: inherit; color: inherit; display: inline; 
	transition: .25s ease all; 
}
a.invisilink:hover { color: #38408b; text-decoration: underline; }

/* Text / Titles / Paragraphs / <h1><h2><h3><h4> / <p> */
.txt-default, .content-sect p, 
.btnclass, .listed, .listed-title, .invisilink, .topheader a, .foot-nav a, 
label, input, textarea, select, 
.title, .subtitle {
	font-family: 'industry', sans-serif; text-align: left; color: #000; 
}

.txt-default, .content-sect p, .foot-nav a {
	font-size: 18px; font-weight: 400; line-height: 1.4; letter-spacing: .5px; 
}

.title, .subtitle { font-size: 40px; font-style: italic; text-transform: uppercase; }

.title {
	font-weight: 900; 
}

.subtitle {
	font-weight: 500; letter-spacing: .5px; 
}

.multi-title {
	display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; align-items: center; 
}
.multi-title.center-style { justify-content: center; }
.multi-title.righty { justify-content: flex-end; }

.stacked-title {
	display: flex; flex-direction: column; align-items: flex-start; 
}
.stacked-title.center-style { align-items: center; }
.stacked-title.righty { align-items: flex-end; }

.multi-title.center-style .title, .multi-title.center-style .subtitle, 
.stacked-title.center-style .title, .stacked-title.center-style .subtitle { text-align: center; }
.multi-title.righty .title, .multi-title.righty .subtitle, 
.stacked-title.righty .title, .stacked-title.righty .subtitle { text-align: right; }

/* buttons / links / <a> / ctas */
.btnclass {
	position: relative; padding: 12px 40px; background: #38408b; color: #fff; 
	display: flex; justify-content: center; align-items: center; 
	font-size: 16px; font-weight: 500; text-align: center; text-transform: uppercase; letter-spacing: 2px; 
	clip-path: polygon(0% 0%, 100% 0%, 100% calc(100% - 16px), calc(100% - 16px) 100%, 0% 100%); 
	transition: .25s ease all; 
}
.btnclass:after {
	position: relative; opacity: 0; width: 22px; margin-left: -22px; 
	font-family: 'Font Awesome 6 Free', icon; content: "\f054"; font-weight: 900; 
	font-size: 12px; text-align: right; 
	display: flex; justify-content: flex-end; align-items: center; 
	transition: .25s ease all; 
}
.btnclass.btn-blue2 { background: #30324f; color: #ddd; clip-path: none; }
.btnclass:hover { 
	background: #4650af; color: #fff; padding-left: 29px; padding-right: 29px; 
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 100% 100%, 0% 100%); 
}
.btnclass:hover:after { opacity: 1; margin-left: 0; }

.listed {
	position: relative; 
	display: flex; justify-content: flex-start; align-items: center; 
	font-weight: 400; text-align: left; color: #000; letter-spacing: .25px; 
	transition: .25s ease all; 
}
.listed i { width: 18px; text-align: center; margin-right: 12px; }

a.listed:hover { color: #38408b; }

.titled-listed {
	position: relative; padding: 12px 8px; 
	display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: center; column-gap: 18px; row-gap: 8px; 
	text-align: left; color: #000; letter-spacing: .25px; 
	transition: .25s ease all; 
}
.listed-title { 
	width: 120px; 
	font-weight: 500; text-align: right; letter-spacing: .75px; 
	transition: .25s ease all; 
}

/* sections */
.content-sect {
	display: flex; flex-direction: column; align-items: flex-start; justify-content: center; row-gap: 16px; 
}
.content-sect.center-style { align-items: center; }

.content-sect p { width: 100%; }

.horiz-sect {
	width: 100%; 
	display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: center; column-gap: 24px; row-gap: 16px; 
}
.horiz-sect.center-style, .content-sect.center-style .horiz-sect { justify-content: center; }

.mission {
	position: relative; z-index: 2; width: 100%; padding: 32px max(4%, calc(50% - 900px)); background: #fff; 
	display: flex; flex-wrap: nowrap; align-items: stretch; column-gap: 100px; row-gap: 40px; 
}
.mission:before {
	position: absolute; content: ""; z-index: 1; top: 0; right: max(16px, calc(50% - 980px)); 
	width: 25%; height: calc(100% + 120px); 
	background: #f27f3d; 
}
.mission .content-sect { 
	position: relative; z-index: 2; width: 60%; padding: 32px 0; 
}
.mission .missionimg { 
	position: relative; z-index: 2; width: calc(40% - 100px); min-height: 250px; 
	filter: drop-shadow(0 4px 20px rgba(0, 0, 0, .15)); 
}

.missionimg img, .hero img, .subhero img, .inv-btn img {
	position: absolute; z-index: 1; top: 0; left: 0; width: 100%; height: 100%; 
	object-fit: cover; object-position: center; 
}
.missionimg.missionimg-contain img { object-fit: contain; }

.mission2 {
	position: relative; z-index: 3; width: 100%; padding: 50px max(2.5%, calc(50% - 964px)); 
	display: flex; justify-content: center; align-items: stretch; 
}
.mission2:before {
	position: absolute; content: ""; z-index: 1; top: 0; left: max(16px, calc(50% - 980px)); 
	width: 50px; height: 100%; 
	background: #f27f3d; 
}
.mission2 .missionimg { 
	position: relative; z-index: 2; width: 40%; min-height: 350px; 
	background: #30324f; box-shadow: 0 4px 20px rgba(0, 0, 0, .15); 
}
.mission2 > .content-sect { 
	position: relative; z-index: 2; width: 60%; padding: 50px 100px; 
	background: #30324f; box-shadow: 0 4px 20px rgba(0, 0, 0, .15); 
}
.mission2 > .content-sect .title, .mission2 > .content-sect .subtitle, .mission2 > .content-sect p, 
.mission2 > .content-sect .listed, .mission2 > .content-sect .titled-listed, .mission2 > .content-sect .listed-title {
	color: #fff; 
}
.mission2 > .content-sect a.invisilink:hover, .mission2 > .content-sect a.listed:hover, .mission2 > .content-sect a.titled-listed:hover, .mission2 > .content-sect a.titled-listed:hover .listed-title, .mission2 > .content-sect a.titled-listed:hover .listed {
	color: #f27f3d!important; 
}

.map-div iframe { 
	width: 100%; height: 100%; min-height: 350px; 
	padding-bottom: 0; margin-bottom: 0; border-bottom: none; 
}

.mission2-lgcols { flex-direction: column; }
.mission2-lgcols > .content-sect, .mission2-lgcols .missionimg { width: 100%; }

/* Homepage - default.htm */
.homepage, .subpage {
	position: relative; width: 100%; 
	display: flex; flex-direction: column; align-items: center; 
}
.homepage {}

.hero {
	position: relative; width: 100%; height: min(27vw, 600px); min-height: 400px; background: #444; 
	padding: 200px max(16px, calc(50% - 980px)) 0 max(16px, calc(50% - 980px)); 
	display: flex; justify-content: flex-end; align-items: flex-end; 
}
.hero img { /* default styles above under .missionimg img */ }
.hero-overlay {
	position: relative; z-index: 3; padding: 20px 40px; background: rgba(242, 127, 61, .9); 
	display: flex; flex-direction: column; align-items: flex-end; 
}
.hero-overlay .title, .hero-overlay .subtitle { color: #fff!important; }

.inv-btns-sect {
	position: relative; width: 100%; background: #000; 
	display: flex; justify-content: center; align-items: stretch; 
}
.inv-btn {
	position: relative; width: 25%; padding: 80px 20px; height: min(26vw, 450px); background: #000; 
	display: flex; flex-direction: column; align-items: center; justify-content: center; 
	transition: .2s ease all; 
}
.inv-btn img { 
	opacity: .4; transition: .2s ease all; 
	/* default styles above under .missionimg img */ 
}
.inv-btn .subtitle, .inv-btn .title {
	position: relative; z-index: 3; 
	font-style: normal; text-align: center; 
	color: #fff; text-shadow: 1px 1px 0 #000, 0 0 20px #000; 
	transition: .2s ease all; 
}
.inv-btn .subtitle { font-size: 24px; font-weight: 600; }
.inv-btn .title { font-size: 32px; }

.inv-btn.inv-all { background: #38408b; }

a.inv-btn:hover img { opacity: .55; transition: .45s ease all; }
a.inv-btn:hover .title { letter-spacing: 2px; transition: .3s ease all; }

.get-in-touch-sect .content-sect { row-gap: 0; }
.get-in-touch-sect .content-sect .title { margin-bottom: 16px; }

/* subpages */
.subpage { /* default styles under .homepage */ }

.subhero {
	position: relative; width: 100%; background: #444; 
	padding: 120px max(16px, calc(50% - 980px)) 0 max(16px, calc(50% - 980px)); 
	display: flex; justify-content: flex-end; align-items: flex-end; 
}
.subhero img { min-height: 150px; /* default styles under .missionimg img */ }

/* contact-us.htm */
.contactpage {}

/* location.htm */
.locationpage {}

.location-main > .content-sect .content-sect .listed-title { width: unset; }

/* thank-you.htm */
.thankyoupage {}

/* recommended styles */
.center-style, .center-style .title, .center-style p, 
.title.center-style, p.center-style { text-align: center; }

.mission2 .content-sect a.listed:hover, .mission2 .content-sect a.titled-listed:hover { 
	color: #f27f3d!important; 
}

/* forced styles */
.txt-bold, .is-phone { font-weight: 700!important; }

.force-rowgap0 { row-gap: 0!important; }
.force-colgap0 { column-gap: 0!important; }

/*-------- FORM STYLES now located in formstyles.css --------------------*/


/*-------- FOOTER STYLES ----------------*/
footer {  }

.dlr-footer {
	position: relative; z-index: 5; width: 100%; padding: 70px max(5%, calc(50% - 1100px)); background: #f2f2f2; 
	display: flex; flex-direction: row; justify-content: space-between; align-items: center; 
	column-gap: 32px; row-gap: 50px; 
}
.foot-col {
	position: relative; width: 33%; 
	display: flex; flex-direction: row; justify-content: center; align-items: center; 
}
.foot-nav-nav, .foot-logo-div, .foot-soc-soc {
	display: flex; flex-direction: column; justify-content: center; 
}
.foot-nav-nav { align-items: flex-end; column-gap: 2.5vw; }
.foot-nav a { 
	position: relative; color: #000; min-height: 36px; padding: 6px 12px; 
	display: flex; justify-content: flex-end; align-items: center; 
	font-weight: 500; 
	transition: .15s ease all; 
}
.foot-nav a:before {
	position: absolute; content: ""; bottom: 2px; left: 101%; right: 12px; height: 2px; 
	background: #38408b; 
	transition: .2s ease all; 
}
.foot-nav a:hover { color: #38408b; transition: .3s ease all; }
.foot-nav a:hover:before { left: 12px; transition: .4s ease all; }
.foot-logo-div { width: 33%; align-items: center; }
.foot-logo { width: min(100%, 220px); }
.foot-logo img { 
	width: min(100%, 220px); height: auto; 
	object-fit: contain; object-position: center; 
}
.foot-soc-soc { align-items: flex-start; }
.foot-soc a { padding: 12px; }

/*----INVENTORY STYLES - KEEP AT BOTTOM OF CSS----*/
.inv-foot-spacer { width: 100%; height: 80px; background: #f2f2f2; }

/*---------- RESPONSIVE STYLES ----------*/

@media only screen and (min-width: 2000px) {
	
}

@media only screen and (max-width: 1500px) {
	.mission2 > .content-sect { padding-left: 80px; padding-right: 80px; }
}

@media only screen and (max-width: 1400px) {
	.mission { column-gap: 60px; }
	.mission .missionimg { width: calc(40% - 60px); }
	.mission2 > .content-sect { padding: 40px 60px; }
}

@media only screen and (max-width: 1350px) {
	.title, .subtitle { font-size: 38px; }
	
	.inv-btn { height: 400px; }
}

@media only screen and (max-width: 1250px) {
	.header-logo-div, .header-logo img { width: 200px; }
	.topheader a:not(.is-phone) { padding: 0 20px; }
	.nav-div { height: 80px; }
	
	.inv-btns-sect { flex-wrap: wrap; }
	.inv-btn { width: 50%; height: 300px; padding-top: 40px; padding-bottom: 40px; }
}

@media only screen and (max-width: 1200px) {
	.title, .subtitle { font-size: 36px; }
	
	.hero, .subhero { padding-left: 0; padding-right: 0; }
	.mission:before { right: 0; }
	.mission2:before { left: 0; }
	
	.dlr-footer { flex-wrap: wrap; justify-content: center; padding-top: 32px; padding-bottom: 32px; }
	.foot-logo-div { order: 1; width: calc(50% - 16px); }
	.foot-soc { order: 2; width: calc(50% - 16px); }
	.foot-nav { order: 3; width: 100%; }
	.foot-nav-nav { flex-direction: row; flex-wrap: wrap; align-items: center; }
}

@media only screen and (max-width: 1100px) {
	.mission, .mission2 { flex-direction: column; }
	.mission { padding-top: 40px; padding-bottom: 32px; align-items: flex-end; }
	.mission:before { width: 15%; }
	.mission.mission-cr, .mission2.mission-cr { flex-direction: column-reverse; }
	.mission > .content-sect, .mission2 > .content-sect, .mission2 .missionimg { width: 100%; }
	.mission > .content-sect { padding: 0 17% 0 0; }
	.mission .missionimg { width: 70%; min-height: 280px; }
	.map-div { height: 350px; }
	.mission2 > .content-sect { padding: 40px 5%; }
}

@media only screen and (max-width: 1050px) {
	.header-logo-div, .header-logo img { width: 186px; }
	.topheader a:not(.is-phone) { padding: 0 16px; }
	.nav-div { height: 74px; }
}

@media only screen and (max-width: 1000px) {
	.title, .subtitle { font-size: 34px; }
	
	.foot-logo, .foot-logo img { width: min(100%, 200px); }
}

/* switch to mobile nav */
@media only screen and (max-width: 920px) {
	.hero, .subhero { padding: 0; flex-direction: column; height: unset; min-height: unset; }
	.hero img, .subhero img { position: relative; top: unset; left: unset; height: auto; }
	.subhero img { max-height: 300px; }
	.hero-overlay { width: 100%; padding-left: 5vw; padding-right: 5vw; background: #f27f3d; }
}

@media only screen and (max-width: 850px) {
	.title, .subtitle { font-size: 32px; }
	
	.foot-logo-div { width: 200px; }
	.foot-soc { width: calc(100% - 240px); }
}

@media only screen and (max-width: 800px) {
	.hide800 { display: none!important; }
}

@media only screen and (max-width: 750px) {
	.mission:before { width: 50px; }
	.mission > .content-sect { padding-right: 48px; }
	.mission .missionimg { width: 100%; }
	
	.inv-btn { height: 250px; }
}

@media only screen and (max-width: 650px) {
	.hide650 { display: none!important; }
	
	.header-logo-div { left: 0; }
	.header-logo-div, .header-logo img { width: min(172px, 45vw); }
	
	.dlr-footer { padding-bottom: 50px; row-gap: 20px; }
	.foot-logo-div, .foot-soc { width: 100%; }
	.foot-nav-nav { flex-direction: column; }
	.foot-soc-soc { align-items: center; }
}

@media only screen and (max-width: 600px) {
	.titled-listed { width: 100%; flex-direction: column; align-items: flex-start; }
	.listed-title { text-align: left; justify-content: flex-start; width: unset; }
	
	.inv-btn { width: 100%; height: 200px; }
}

@media only screen and (max-width: 580px) {
	.mission:before, .mission2:before { width: 5vw; }
	.mission > .content-sect { padding-right: 4vw; }
}

@media only screen and (max-width: 500px) {
	.title, .subtitle { font-size: 30px; }
}

@media only screen and (min-width: 451px) {		/* mind the min-width */
	.show450 { display: none!important; }
}

@media only screen and (max-width: 410px) {
	.foot-soc, .foot-soc-soc { align-items: stretch; }
	.foot-soc-soc a { justify-content: flex-start!important; }
}

@media only screen and (max-width: 400px) {
	.topheader { display: none!important; }
	.header-logo-div, .header-logo img { width: min(172px, 55vw); }
	.nav-div { height: 114px; }
	
	.mission:before, .mission2:before { display: none!important; }
	.mission > .content-sect { padding-right: 0; }
	.mission2 { padding: 0; }
	.mission2 > .content-sect, .mission2 .missionimg { box-shadow: none; }
}

@media only screen and (max-width: 350px) {
	.header-logo { min-height: 140px; }
	.header-logo img { padding: 8px 2px; }
}






