/* 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;} 

select,
button,
[type="button"],
[type="reset"],
[type="submit"],
[type="date"] {
  -webkit-appearance: button;
}

/* FRAMEWORK */

body{font-family: futura-pt, sans-serif; letter-spacing: .02em; font-size: 16px; -webkit-text-size-adjust: none; overflow: auto; overflow-x: hidden;}
::-moz-selection{background: #ED571A; color: #fff; text-shadow: none} ::selection{background: #ED571A; color: #fff; text-shadow: none}

.main{
	padding: 50px 0; 
	background: #fff;
}
.main h1, h1#page-title {font-weight: 500; font-size: 35px; color: #222; letter-spacing: 2px; margin-bottom: 10px; line-height: 30px;}
.container{max-width: 1400px; margin: 0 auto; width: 90%;}
.inv-container{max-width: 1400px; margin: 0 auto; width: 100%;}

.column12, .column11, .column10, .column9, .column8, .column7, .column6, .column5, .column4, .column3, .column2, .column1{float: left; padding: 0 50px 0 0;} .column12{width: 100%;} .column11{width: 91.6666%;} .column10{width: 83.3333%;} .column9{width: 75%;} .column8{width: 66.6666%;} .column7{width: 58.3333%;} .column6{width: 50%;} .column5{width: 41.6666%;} .column4{width: 33.3333%;} .column3{width: 25%;} .column2{width: 16.6666%;} .column1{width: 8.3333%;} .last{padding: 0 0 20px 0;} .cf{zoom: 1;} .cf:before, .cf:after{content: ""; display: table;} .cf:after{clear: both;} .clear{clear: both;} *{box-sizing: border-box;}
.column4 img {width: 100%;}

.flex-wrapper {display: flex; flex-wrap: wrap;}
.side-info {background: #f8f8f8; border: 1px solid #ddd; text-align: center;}

/* TYPOGRAPHY */

h1, h2, h3{text-transform: uppercase;}
h2#request {font-weight: 400; margin-top: 25px; font-size: 28px;}
h2#request span {font-weight: 700; color: #152a4f;}
p{font-size: 17px; line-height: 1.6;}
a{text-decoration: none; color: inherit; transition: all .2s ease-in-out;} a:hover{color: inherit;}

.blue {color: #152a4f!important;}
.orange{font-size: 20px; color: #ED571A;}
.center{text-align: center;}

a#cta-btn {display: block; margin: 15px 0; padding: 18px 10px; text-align: center; background: #d3450d; color: #fff; text-transform: uppercase; font-size: 18px; max-width: 250px;}
a#cta-btn:hover {background:#CF4912;}

/* HEADER */

.header{background: #000 url('/siteart/header.jpg'); position: relative; font-weight: 700; text-transform: uppercase; color: #fff; box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.15); border-bottom: 5px solid #d3450d; width: 100%; display: flex; flex-wrap: wrap; justify-content: flex-end;}
.header .flex-wrapper {width: 100%; justify-content: space-between; flex-wrap: nowrap;}
.header .hdr-logos {display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap; margin-top: -1.5em; margin-bottom: 1.5em;}
.header .logo{padding-left: 30px; box-sizing: border-box; display: flex; align-items: center;}
.header .logo img {display: block; max-width: 205px; padding: 0; width: 100%;}
.header .nh-logos img {display: block; max-width: 222px; padding: 0; width: 100%;}
.header .contact:before {
	content: "";
    position: absolute;
    left: -30px;
    bottom: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0px 30px 51px 0;
    border-color: transparent #152a4f transparent transparent;
    display: inline-block;
    vertical-align: middle;
}
.header .contact{background: #152a4f; padding: 15px 25px; text-align: right; overflow-wrap: break-word; position: relative; width: 100%; max-width: 725px;}
.header .contact .fa{margin-right: 5px;}
.header .contact a {color: #fff!important;}
.header .contact span{display: inline-block; padding: 0 10px; font-size: 14px;}
.header .mobile-search{display: none; font-size: 24px; text-align: center; color: #fff; cursor: pointer;}
.header .mobile-search a:hover{opacity: .75;}
.header .nh-logos {display: flex; align-items: center; flex-direction: column; padding: 0 15px 0 25px;}
.header .small-logos {display: flex; align-items: center; flex-direction: column;}
.header .small-logos img {display: block; max-width: 140px; padding: 0; width: 100%;}

.searchbar{display: none; position: relative; background: #fff; width: 100%; border-bottom: 1px #fff solid; box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.15); z-index: 9999;}
.searchbar button{position: relative; float: left; width: 25%; padding: 35px 0!important; border: none; outline: none; cursor: pointer; background-color: transparent!important; text-align: right;}
.searchbar button:after{font-family: FontAwesome; content: '\f002'; font-size: 24px; color: #555;}
.searchbar button:hover:after{color: #d3450d;}
.searchbar input[type="text"], .searchbar input[type="phone"], .searchbar input[type="email"]{float: left; width: 75%; background: #fff !important; border: none!important; outline: none; padding: 25px 7%!important; font-size: 22px!important; color: #999; font-family: futura-pt, sans-serif;}
.searchbar select {border: none; color: #999; font-family: futura-pt, sans-serif; padding: 25px 7%!important; font-size: 22px!important; background: none;}

form#searchform {display: flex; align-items: center;}

.searchbar input[type="text"]:placeholder, .searchbar select:placeholder{color: #ccc;}

/* NAVIGATION */

#cssmenu{position: relative; padding: 0 15px; font-size: 0; z-index: 99; box-sizing: border-box; display: flex; justify-content: flex-end; align-items: center; text-align: right; width: 55%;}
#cssmenu ul li{display: inline-block; position: relative;}
#cssmenu ul li a{
	display: block;
    padding: 7px .7vw;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    color: #fff;
    border-bottom: 5px transparent solid;
}
#cssmenu ul li:hover > a{border-bottom: 5px #fff solid;}
/*#cssmenu ul li.has-sub > a{padding-right: 30px;}*/
#cssmenu ul li.has-sub > a::after{position: absolute; top: 18px; right: 14px; font-family: FontAwesome; font-size: 8px; content: '\f078';}
#cssmenu ul ul{display: block; position: absolute; left: -9999px; text-align: left; border-bottom: 1px #ccc solid;}
#cssmenu ul ul li{border: 1px #ccc solid; border-bottom: none;}
#cssmenu ul ul li a{background: #fff; width: 250px; font-size: 12px; text-decoration: none; color: #777; padding: 14px 20px; border-bottom: none;}
#cssmenu ul ul li:hover > a{border-bottom: none; background: #eee; color: #777;}
#cssmenu ul ul li.has-sub a::after{position: absolute; top: 18px; right: 8px; font-family: FontAwesome; font-size: 8px; content: '\f054';}
#cssmenu ul ul ul{margin-left: 100%; top: -1px;}
#cssmenu #menu-button{display: none;}
div#menu-line {display: none!important;}
/* BODY */

.zoom-wrapper {width: 100%; display: inline-block; margin: 0 auto; background: #f8f8f8; margin-bottom: -4px; padding: 20px 0;}
.zoom{float: left; width: calc(16.66% - 10px); position: relative; margin: 5px; height: auto; max-height: 175px; box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.15); overflow: hidden;}
.zoom img{display: block; width: 100%; height: auto; transition: all .5s ease;}
.zoom .zoom-caption{position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: rgba(0,0,0,.25); transition: all .5s ease; z-index: 10;}
.zoom .zoom-caption .zoom-caption-text{position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); font-size: 18px; font-weight: 700; text-align: center; text-transform: uppercase; text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5); color: #fff;}
.zoom:hover .zoom-caption{background: rgba(237,87,26,.75);}
.zoom.inv-landing {width: calc(50% - 10px);}
.zoom.inv-landing.lg {width: calc(100% - 10px); max-height: 350px;}

.manus{padding: 1em 0; text-align: center;}
.manus h2 {font-weight: 400; font-size: 20px;  color: #000; display: block; background: rgba(255,255,255,.85); padding: 1em .5em .5em; letter-spacing: 2px;}
.manus .jMyCarousel{width: 100%; height: 100px; background: #fff;}
.manus .jMyCarousel ul li{height: 100px; line-height: 100px;}
.manus .jMyCarousel ul li a:hover{opacity: .5;}
.manus .jMyCarousel img{max-height: 100px; vertical-align: middle; margin: 0 20px;}

.about{background: #000 url('/siteart/IMG_3372.JPG') center center; background-size: cover; padding: 50px 0 25px;}
.about .about-box{background: rgba(255,255,255,.85); padding: 35px;}
.about .about-box h1{display: inline-block; margin: 0 auto 25px; padding: 10px 0; font-size: 32px; font-weight: 400; text-transform: uppercase; text-align: center; border-bottom: 5px #d3450d solid;}
.about .about-box strong{color: #152a4f;}
.button-container{display: flex; margin: 1em 0 0;}
.button-container a{flex: 1; background: #d3450d; padding: 18px 10px; font-size: 18px; text-align: center; text-transform: uppercase; color: #fff; box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.15);}
.button-container a:hover{background: #CF4912;}


.scrolling-wrap{width: 100%; height: 100px; margin: 15px 0; overflow: hidden;}
.scrolling-wrap .scrolling{width: 100%; height: 92px;}

.flex-btns {width: 100%; display: flex; align-items: center; gap: 10px; margin: .5em 0 2em;}

.brands{margin-top: 35px; text-align: center;}
.brands ul li{display: inline-block; padding: 6px 15px;}

/* FORM */

#form{background: #fafafa; padding: 25px; border: 1px #ddd solid;}
#form .form-row{display: block; margin: 0 0 5px;}
#form .form-row .label-left{float: left; width: 300px; padding-right: 25px;}
#form .form-row .input-right{float: left; width: calc(100% - 300px);}
#form .form-row .input-right label{margin-right: 15px; cursor: pointer;}
#form input[type="text"], #form input[type="email"], #form select, #form textarea{width: 100%; margin: 5px 0 20px; padding: 10px 5px!important; border: 1px solid #ccc!important;}
#form input[type="checkbox"], #form input[type="radio"]{margin: 0 10px 25px 0;}
#form input[type="submit"]{display: block; width: 100%; max-width: 250px; background: #152a4f; margin: 5px auto; padding: 18px 10px; font-family: futura-pt, sans-serif; font-size: 18px; color: #fff; border: none; transition: all .2s ease-in-out; cursor: pointer;} #form input[type="submit"]:hover{background: #343b42;}
#form textarea{height: 90px; font-family: 'Arial', sans-serif;}

.CaptchaPanel{margin: 0 !important; padding: 0 !important; line-height: normal !important;}
.CaptchaAnswerPanel input{width: 250px; max-width: 100%; padding: 5px; margin: 5px 0;}
.CaptchaMessagePanel{padding: 0 !important; margin: 0 !important; font-weight: normal !important; font-size: 12px; line-height: 14px;}
.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: #000;} .CaptchaWhatsThisPanel a:hover{text-decoration: none;}

/* FOOTER */

.footer{background: #000 url("../siteart/header.jpg"); padding: 3em 0; font-size: 15px; line-height: 1.6; text-transform: uppercase; color: #fff; border-top: 5px solid #d3450d;}
.footer h3{margin-bottom: 5px; font-size: 20px;}
.footer a{color: #fff!important;} .footer a:hover{opacity: .75!important;}
.footer .column4 {box-sizing: border-box;}
.bottom-footer{background: #152a4f; padding: 20px 0; font-weight: 500; text-align: center; color: #fff; font-size: 11px;}

/* RESPONSIVE */
@media screen and (max-width: 1550px) {	
	.header .contact span, #cssmenu ul li a {font-size: 13px;}
}
@media screen and (max-width: 1500px) {	
	.header .contact {max-width: 690px;}
	.header .hdr-logos {margin-top: -1.75em; margin-bottom: 1.25em;}
	.header .nh-logos img {max-width: 175px;}
}

@media screen and (max-width: 1425px) {	
	.header .contact span, #cssmenu ul li a {font-size: 12px;}
}
@media screen and (max-width: 1375px) {	
	.header .flex-wrapper {flex-wrap: wrap;}
	.header .hdr-logos {margin-top: -2em; margin-bottom: 1em;}
	.header .logo img, .header .nh-logos img {max-width: 160px;}
	.header .small-logos img {max-width: 130px;}
	.header .contact {max-width: 650px;}
}
@media screen and (max-width: 1200px){			
	.header .contact{float: none; width: 100%; padding: 7px 20px; margin-right: 0; text-align: center; transform: none; max-width: none;}
	.header .hdr-logos {margin-top: 0; margin-bottom: 0; padding: 1em 0; justify-content: flex-start; flex-wrap: wrap;}
	
	.header .hdr-logos {width: 100%; justify-content: space-around;}
	.header .logo {padding-left: 0;}
	#cssmenu {width: 100%; justify-content: center;}
	#cssmenu ul li a {padding: 7px 1.5vw;}
	
	.header .logo img, .header .nh-logos img {max-width: 180px;}
	
	.main{padding: 40px 0;}
	.main h1, h1#page-title {font-size: 32px;}
	h2#request {font-size: 26px;}
	.hero{padding: 150px 20px;}
	.zoom {width: calc(33.33% - 10px);}
	
}
@media screen and (max-width: 985px){	
	.header .logo {padding-left: 30px;} 
	.header .hdr-logos {width: 100%; padding: .5em 0; justify-content: space-between; flex-wrap: nowrap;}
	.header .mobile-search{display: flex; padding: 25px;}
	.searchbar button{padding: 30px 0!important;}
	.searchbar input[type="text"], .searchbar select, .searchbar input[type="phone"], .searchbar input[type="email"] {font-size: 18px!important; padding: 20px 5%;}
	
	.searchbar button{padding: 30px 0!important;}
	.searchbar input[type="text"], .searchbar select, .searchbar input[type="phone"], .searchbar input[type="email"] {font-size: 18px!important; padding: 20px 5%;}
	
	.header .logo, #cssmenu {justify-content: center;}
	#cssmenu{width: 100%; padding: 0; text-align: left; border-top: 1px #ccc solid; justify-content: center; flex-direction: column;}
	#cssmenu ul{width: 100%; display: none;}
	#cssmenu ul li{width: 100%; border-top: 1px solid #ccc;}
	#cssmenu ul li.search{display: none;}
	#cssmenu ul li a{font-size: 12px; padding: 13px 20px; width: 100%; border-bottom: none;}
	#cssmenu ul li:hover > a{border-bottom: none; background: #CF4912;}
	#cssmenu ul ul{display: none; position: relative; left: 0; right: auto; width: 100%; margin: 0;}
	#cssmenu ul ul li a{background: #333; font-size: 12px; color: #fff; padding: 20px; width: 100%;}
	#cssmenu ul ul ul{display: none; position: relative; top: 0; left: 0; right: auto; width: 100%; margin: 0;}
	#cssmenu ul ul ul li a{padding: 20px 40px; background: #555;}
	#cssmenu ul li.has-sub a::after, #cssmenu ul ul li.has-sub a::after{display: none;}
	#cssmenu #menu-button{display: block; padding: 20px; color: #fff; cursor: pointer; font-size: 12px; font-weight: 700; text-transform: uppercase; width: 100%;}
	#cssmenu #menu-button::after{position: absolute; top: 19px; right: 20px; font-family: FontAwesome; font-size: 16px; content: '\f0c9';}
	#cssmenu .submenu-button{position: absolute; z-index: 10; right: 0; top: 0; display: block; height: 55px; width: 100%; cursor: pointer;}
	#cssmenu .submenu-button::after{position: absolute; top: 19px; right: 20px; font-family: FontAwesome; font-size: 16px; content: '\f067'; color: #fff;}
	#cssmenu .submenu-button.submenu-opened:after{content: '\f068';}
	
	.zoom.inv-landing {max-height: 130px;}
	
	.footer .column4{float: left; width: 33.33%; margin: 0 auto;}
}
@media screen and (max-width: 800px){	
	
	.header .nh-logos, .header .small-logos {flex-direction: column;}
	.header .logo {padding: 0 5px 0 20px;}
	
	h2#request {margin-top: 0;}
	.main h1, h1#page-title {font-size: 30px;}

	.hide-768{display: none;}
	.column8, .column4{float: none; width: 100%; padding: 0; margin-bottom: 50px; clear: both;}
	.hero{padding: 50px 20px; font-size: 20px;}
	.hero strong{font-size: 24px;}
	.about{padding: 25px 0;}
	.button-container{display: block;}
	.button-container a{display: block; flex: none; width: 100%; margin: 5px 0;}
	.zoom.inv-landing.lg {margin-bottom: 40px;}
	
	a#cta-btn, .button-container a, #form input[type="submit"] {font-size: 16px;}
	
    #form .form-row .label-left, #form .form-row .input-right{float: none; width: 100%; padding: 0;}
    #form input[type="text"], #form input[type="email"], #form select, #form textarea{margin: 5px 0 10px;}
	
	.footer{padding: 25px 0; text-align: center;}
	.footer .column4{float: none; width: 100%; padding: 0; margin: 0 auto 15px;}
}
@media screen and (max-width: 650px) {
	.zoom {width: calc(50% - 10px);}
}
@media screen and (max-width: 450px) {
	.header .mobile-search {position: relative; padding: 15px;}
	.header .logo {padding: 0 0 0 15px;}
	.header .small-logos {padding-left: 0;}
	
	.zoom {width: calc(100% - 10px);}
	.zoom .zoom-caption .zoom-caption-text {font-size: 16px;}
	.zoom.inv-landing {float: none; width: 100%; margin: 0 auto; margin-top: 5px; margin-bottom: 5px; max-height: 125px;}
	.main h1, h1#page-title {font-size: 24px;}
	p {font-size: 15px; line-height: 22px;}
}