
/* 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;} img{max-width: 100%; height: auto; image-rendering: -webkit-optimize-contrast;}


/* FRAMEWORK */

*{box-sizing: border-box;}
html, body{font-family: 'Montserrat', sans-serif; font-size: 16px; -webkit-text-size-adjust: none} 
html {scroll-behavior: smooth;}
body {overflow-x: hidden; line-height: 1.8; letter-spacing: .02em;}
::-moz-selection{background: #e61d2d; color: #fff; text-shadow: none} ::selection{background: #e61d2d; color: #fff; text-shadow: none;}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  /*margin: 0; /* 2 */
}
button,
input { /* 1 */
  overflow: visible;
}
button,
select { /* 1 */
  text-transform: none;
}
select,
button,
[type="button"],
[type="reset"],
[type="submit"],
[type="date"] {
  -webkit-appearance: button;
}

.marg60 {margin: 60px auto!important;}
.pad7 {padding: 7em 10%!important;}
.pad4 {padding: 4em 7%!important;}
.pad2 {padding: 2em 10%!important;}
.center {text-align: center;}
.align-right {text-align: right;}

.content-width {margin: 0 auto; width: 80%; position: relative;}
.flex-wrapper {display: flex; flex-wrap: wrap; align-items: center;}
.inv-width {margin: 0 auto; width: 95%; max-width: 1400px;}

.column12, .column11, .column10, .column9, .column8, .column7, .column6, .column5, .column4, .column3, .column2, .column1{float: left; padding: 0 25px 0 0;} .column12{width: 100%; padding: 0; box-sizing: border-box;} .column11{width: 91.6666%;} .column10{width: 83.3333%;} .column9{width: 75%;} .column8{width: 66.6666%; box-sizing: border-box;} .column7{width: 58.3333%; position: relative; box-sizing: border-box;} .column6{width: 50%; position: relative; box-sizing: border-box;} .column5{width: 41.6666%; box-sizing: border-box;} .column4{width: 33.3333%; box-sizing: border-box;} .column3{width: 25%; box-sizing: border-box; position: relative;} .column2{width: 16.6666%; box-sizing: border-box;} .column1{width: 8.3333%;} .last{padding: 0;} .cf{zoom: 1;} .cf:before, .cf:after{content: ""; display: table;} .cf:after{clear: both;} .clear{clear: both;} 

a {text-decoration: none; color: inherit; transition: all .2s ease-in-out;} a:hover{color: inherit;}
a#cta-btn button {margin: 2% 0 0; color: #fff; background: #e61d2d; padding: 1em 2em; cursor: pointer; font-size: 16px; transition: 0.2s ease-in; text-align: center; /*width: 90%; max-width: 250px;*/ border: none; font-weight: 700;}
a#cta-btn2 button {margin: 2% 0 0; color: #000; background: #c9c9c9; padding: 1em 2em; cursor: pointer; font-size: 16px; transition: 0.2s ease-in; text-align: center; /*width: 90%; max-width: 250px;*/ border: none; font-weight: 700;}
a#cta-btn3 button {margin: 2% 0 0; color: #000; background: #fff; padding: 1em 2em; cursor: pointer; font-size: 16px; transition: 0.2s ease-in; text-align: center; /*width: 90%; max-width: 250px;*/ border: none; font-weight: 700;}
a#cta-btn button:hover, #form input[type="submit"]:hover, a#cta-btn2 button:hover, a#cta-btn3 button:hover {background: #191919; color: #fff; transition: all .2s ease-in-out;}
#form input[type="submit"] {color: #fff; background: #e61d2d; padding: 1em 2em; cursor: pointer; font-weight: 700; transition: 0.2s ease-in; width: 100%; max-width: 350px; height: auto; line-height: 1.2; border: none; text-align: center; margin: 0 auto; display: block; letter-spacing: 1px;}

/* HEADER */
.header {width: 100%; position: relative; z-index: 2; background: linear-gradient(#000, #222); display: flex; align-items: center; flex-wrap: wrap;}
.header .column9 {display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap;}
.header .column9 .pad2 {display: flex; justify-content: space-between; align-items: center;}
.header a#cta-btn button, .header a#cta-btn2 button,  .header a#cta-btn3 button {width: 100%; display: block; margin: 0; padding: 1.5em 2em;}
.hdr-contact {display: flex; align-items: center; justify-content: flex-end; width: 60%;}
.hdr-contact p {margin-left: 7%; font-weight: 500; color: #fff; text-align: left; line-height: 1.4;}
.hdr-contact p span {color: #aaa; display: block; font-weight: 600;}
.hdr-contact .desktop-info {width: 100%; display: flex; align-items: center; justify-content: flex-end;}
.hdr-contact .mobile-info, .mobile-display {display: none;}
.hdr-contact .mobile-info i {font-size: 28px; padding: 0 0 0 1em; color: #fff;}
.hdr-contact .mobile-info i:hover {color: #e61d2d; transition: all .2s ease-in-out;}
.main-logo img {width: 100%; max-width: 333px; margin: 0; height: auto; display: block; padding: 5px; background: #fff;}


/* ALL OTHER STYLES */
.content-wrapper img {width: 100%; height: auto; display: block; margin: 0 auto;}
.content-wrapper h1, .page-title h1 {font-size: 50px; text-transform: uppercase; letter-spacing: 1px; line-height: 1.2; display: block; margin-bottom: .5em; font-weight: 800; color: #f9f9f9;}
.content-wrapper h2 {color: #353535; letter-spacing: 1px; font-size: 42px; display: block; text-transform: uppercase; line-height: 1.2; margin-bottom: 1em; font-weight: 800;}
.content-wrapper h2 span {color: #353535; font-size: 30px; display: block; font-weight: 600; margin-bottom: .25em;}
.content-wrapper p strong {font-weight: 800;}

.hero-section {position: relative; z-index: 1;}
.hero-logo {position: absolute; z-index: 111; left: 0; top: 5%; text-align: center; background: #353535;}
.hero-logo img {width: 100%; max-width: 175px; padding: 5px 5px 10px; background: #fff;}
.hero-logo p {font-weight: 600; color: #fff;}
.hero-txt {width: 100%; max-width: 850px; position: absolute; z-index: 4; color: #fff; text-transform: uppercase; top: 30%; left: 0; right: 0; background: rgba(34,34,34,.7); padding: 4em 2em; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; flex-direction: column; text-align: center;}
.hero-txt h1 {letter-spacing: 2px; animation: fadeInUp; animation-duration: 1s;}
.hero-txt h1 span {display: block; font-weight: 500; color: #fff;}
.hero-txt p {font-size: 18px; text-transform: none; max-width: 80%; animation: fadeInUp; animation-duration: 1s;}
.hero-txt .column3 {display: flex; flex-direction: column; flex-wrap: wrap;}
.hero-txt .column3 a#cta-btn button, .hero-txt .column3 a#cta-btn2 button {width: 100%;}

.about-wrapper p {font-weight: 500;}
.about-wrapper p a, .content-wrapper p a {font-weight: 700;}
.about-wrapper p a:hover, .content-wrapper p a:hover {color: #c9c9c9; transition: .2s ease-in-out all;}
.about-wrapper img {width: 100%; max-width: 75px; height: auto; display: inline-block;}

.page-title {position: relative; padding: 7em 0; border-bottom: 1px solid #ccc; background: #c9c9c9; text-align: center;}
.page-title h1 {color: #000; font-family: 'Montserrat', sans-serif; animation: fadeInUp; animation-duration: 1s; font-weight: 800;}
.page-title p {font-size: 18px; color: #191919; font-weight: 600; line-height: 1.8; margin: 1em 0!important; letter-spacing: normal;}

.contact-info {text-align: center; margin-top: -9em; position: relative;}
.contact-info div {width: calc(100% - 1em)!important; margin: .5em!important; padding: 1.25em;}
.contact-info p a {padding: .65em 0; margin: .25em 0;}
.contact-info iframe {margin-top: 2em;}
#location hr {border: 1.5px solid #e61d2d; width: 100%; display: block; margin: 2em auto; max-width: none;}
.content-wrapper h3 {font-size: 24px; display: block; margin-bottom: .5em; color: #191919; font-weight: 700;}
.content-wrapper h3 i {color: #e61d2d; display: block; margin-bottom: .25em;}

/* zoom buttons */
.zoom-wrapper {display: flex; flex-wrap: wrap; align-items: center; justify-content: center; padding: 0 7% 7em;}
.zoom-container {width: calc(33.33% - 2em); /*height: 555px;*/ margin: 1em; position: relative; overflow: hidden; box-sizing: border-box;}
.zoom-container img {width: 100%; height: auto; transform:scale(1.1);}
.zoom-container:hover img {transform:scale(1.25); transition: all .5s ease;}
.zoom-container .zoom-caption {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	display: inline-flex;
	flex-direction: column;
	justify-content: flex-end;
    transition: all .5s ease;
	padding: 3em 10%;
	margin: 0 auto;
	height: 100%;
	background: linear-gradient(transparent, rgba(0,0,0,.75));			
	text-shadow: 1px 1px 8px #222;
}
.zoom-container .zoom-caption h3 {color: #fff; font-size: 30px; display: block; text-transform: uppercase; letter-spacing: 1px; font-weight: 800; text-align: left;}

.truck-bg {background: url('/siteart/truck-bg1.jpg') center; background-size: cover; background-attachment: fixed; padding: 7em 0!important;}
.truck-bg.column12 .content-width {display: flex; justify-content: center; flex-wrap: wrap; align-items: flex-end;}
.truck-bg #form, .truck-bg .phone-cta {width: calc(50% - 2em); margin: 1em;}
.truck-bg .phone-cta {background: rgba(0, 0, 0, .75); padding: 3em 7%; text-align: center; letter-spacing: 1px;}
.truck-bg .phone-cta:hover {background: rgba(0, 0, 0, .65); transition: .2s ease-in-out all;}
.truck-bg .phone-cta p {text-transform: uppercase; color: #e61d2d; font-weight: 600; display: block; font-size: 20px;}
.truck-bg .phone-cta a {font-size: 36px; font-weight: 800; color: #fff;}
.truck-bg .phone-cta a:hover {color: #ddd; transition: .2s ease-in-out all;}

/*  contact form + captcha
------------------------------*/
#form {background: #191919; margin: 0 auto; padding: 4em; display: flex; flex-wrap: wrap; align-items: flex-end;}
#form .form-row {display: block; text-align: left!important;}
#form .form-row label{font-weight: 600; color: #fff;}
#form .form-row label span{font-weight: 700; font-size: 20px; vertical-align: top;}
#form input[type="text"], #form input[type="email"], #form select, #form textarea, #form input[type="date"] {width: 100%; margin: 5px 0 15px; padding: 10px; border: 1px solid #ccc; background: #f6f6f6; font-weight: 500; color: #000; height: 50px;}
#form textarea {height: 111px;}
#form h4 {width: 100%; margin: 0 0 .5em; font-size: 24px; color: #fff; line-height: 1.4;}
#form p {width: 100%; margin: 0 0 1.5em; font-size: 15px; color: #c9c9c9; line-height: 1.8;}

.CaptchaPanel{line-height: normal !important; width: 100%;}
.CaptchaAnswerPanel input{width: 100%; max-width: 350px; padding: 10px; margin: 5px 0; background: #f6f6f6; border: 1px solid #ccc; color: #000;}
.CaptchaMessagePanel{padding: 0 !important; margin: 0 !important; font-weight: normal !important; font-size: 12px; color: #fff;}
.CaptchaImage {width: auto!important; padding: 0!important;}
.CaptchaAnswerPanel{margin: 0; padding: 2px 0px 2px 0px !important;}
.CaptchaWhatsThisPanel{line-height: 0; margin: 0; padding: 8px 0 8px 0 !important;}
.CaptchaWhatsThisPanel a{font-size: 12px; color: #fff;} .CaptchaWhatsThisPanel a:hover{text-decoration: none;}


/*  footer
------------------------------*/
.footer {width: 100%; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; position: relative; z-index: 1; background: linear-gradient(#222, #000); color: #fff;}
.footer .ftr-top {width: 100%; padding: 4em 7%; display: flex; justify-content: space-between; align-items: center;}
.footer .ftr-top .column10 {display: inline-flex; align-items: center;}
.footer .column10 img {width: 100%; max-width: 250px; height: auto; display: flex; padding: 5px; background: #fff;}
.footer ul#ftr-nav {width: 100%; margin-left: 7%;}
.footer ul#ftr-nav li {display: inline-block; margin: 0 1vw;}
.footer ul#ftr-nav li a {padding: .65em 0; font-size: 14px;}
img#great-dane {width: 100%; height: auto; max-width: 60px;}
.content-wrapper hr, .page-title hr {border: 1.5px solid #e61d2d; width: 100%; display: block; max-width: 30%; margin: 2em 0;}
.footer a:hover {transition: all 0.3s ease-in-out;}

.site-host {width: 100%; border-top: 1px solid #777; display: block; padding: 2em; margin: 0 7%; font-size: 14px;}
.site-host a {color: #ddd;}
.site-host a:hover {color: #fff; transition: all 0.3s ease-in-out;}


/* MEDIA QUERIES (RESPONSIVE) */
@media screen and (max-width: 1500px) {	
	.content-wrapper h1, .page-title h1 {font-size: 50px;}
	.content-wrapper h2 {font-size: 36px;}
	.pad2 {padding: 2em 7%!important;}
}
@media screen and (max-width: 1150px){	
	.hero-txt {position: relative; background: #222;}
	.content-width {width: 85%; margin: 0 auto;}
	.contact-info {flex-direction: column;}
	
	.header .column3 {display: flex; justify-content: center;}
	.header a#cta-btn, .header a#cta-btn2, .header a#cta-btn3 {display: flex; justify-content: center; width: 100%;}

	.column1, .column2, .column3, .column4, .column5, .column6, .column7, .column8, .column9, .column10, .column11, .column12 {margin: 0 auto!important; width: 100%!important; float: none; padding: 0;}
	
	.pad7 {padding: 4em 10%!important;}
	.pad4, #form {padding: 3em 7%!important;}	
		
	a#cta-btn button, a#cta-btn2 button, a#cta-btn3 button {width: 100%; max-width: 350px;}
	
	.page-title, .content-wrapper, #form h4 {text-align: center;}	
	
	.hero-txt {max-width: none; text-align: center; justify-content: center;}
	.hero-txt p {max-width: 100%;}
	
	.content-wrapper h1, .page-title h1 {font-size: 45px;}	
	.content-wrapper h2 {font-size: 32px;}
	.page-title p, .hero-txt p {font-size: 16px;}
	.zoom-container {width: calc(50% - 2em);}
	.zoom-wrapper {padding: 0 7% 4em;}
	.truck-bg.column12 .content-width {flex-direction: column;}
	.truck-bg #form, .truck-bg .phone-cta {width: calc(100% - 2em);}
			
	.content-wrapper hr, .page-title hr {margin: 2em auto;}
	.footer ul#ftr-nav {display: block; margin: 2em auto; text-align: left;}	
	.footer ul#ftr-nav li {margin: 1em 1vw;}
	.footer .ftr-top .column10 {flex-wrap: wrap;}
}

@media screen and (max-width: 900px) {
	.header .column3, .hdr-contact {display: none;}	
	.header .column9 .pad2 {justify-content: center;}
	.hero-logo {position: relative; background: #fff;}
	.hero-logo p {color: #191919; background: #c9c9c9; padding: 5px;}
	.footer {text-align: center;}
	.hdr-contact {display: none;}
	.footer .ftr-top {flex-wrap: wrap; justify-content: center;}
	.footer ul#ftr-nav li {display: block; text-align: center;}
	.footer .ftr-top .column10 {justify-content: center;}
	.footer .column10 img {margin-right: 0;}
}

@media screen and (max-width: 650px) {	
	.content-wrapper h1, .page-title h1 {font-size: 40px;}	
	.content-wrapper h2 {font-size: 30px;}
	.content-wrapper h2 span {font-size: 20px;}	
	.page-title {padding: 5em 0;}
	.zoom-container {width: calc(100% - 2em);}
	.truck-bg .phone-cta a {font-size: 28px;}
	.truck-bg {background-attachment: inherit; padding: 4em 0!important;}
}

@media screen and (max-width: 500px) {
	.mobile-display {display: block;}
	.hdr-contact {width: 50%;}
}