/* 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; list-style: none;} img{max-width: 100%; image-rendering: -webkit-optimize-contrast;}
.cf{zoom: 1;} .cf:before, .cf:after{content: ""; display: table;} .cf:after{clear: both;} .clear{clear: both;} *, *:before, *:after{box-sizing: border-box;}

html, body{height: 100%; width: 100%; font-family: 'Inter', sans-serif; line-height: 1.5; color: #333;}
::-moz-selection{background: #FF5100; color: #fff; text-shadow: none} ::selection{background: #FF5100; color: #fff; text-shadow: none}

.main{padding: 50px 0;}
.wrap{max-width: 1440px; margin: 0 auto; padding: 0 20px;}

.flex-col{display: flex; flex-wrap: wrap;}
.flex-col .col{padding-right: 50px;}
.flex-col .col:last-child{padding-right: 0;}

.col-6{width: 50%;}

/* TYPOGRAPHY */

h1, h2, h3, h4, h5, h6{font-weight: 900; text-transform: uppercase; line-height: 1.15; letter-spacing: 2px;}
h1{font-size: 24px; text-transform: uppercase;}
p{line-height: 1.75;}
a{text-decoration: none; color: inherit; cursor: pointer; transition: all .2s ease-in-out;} a:hover{color: inherit;}

.bullet-list li{display: flex; padding: 5px 0;}
.bullet-list li:before{margin-right: 15px; content: "\f00c"; font-family: "Font Awesome 5 Free"; font-weight: 900; color: #FF5100;}

/* HEADER */

.header{display: flex; position: relative; text-transform: uppercase; border-top: 10px #FF5100 solid; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1); z-index: 999;}
.header .logo{background: #FF5100; width: 175px; padding: 15px 25px;}
.header .logo img{display: block; max-width: 100%; margin: auto; padding-top: 5px;}
.header .navigation{width: calc(100% - 525px);}
.header .contact{display: flex; flex-wrap: wrap; background: #ddd; width: 350px; font-weight: 900; text-align: center;}
.header .contact a{display: block; padding: 0 10px;}
.header .contact a:hover{opacity: .75;}
.header .contact i{margin-right: 5px;}
.header .contact .contact-top{display: flex; align-items: center; justify-content: center; background: #000; width: 100%; padding: 15px; text-align: center; color: #fff;}
.header .contact .contact-bottom{display: flex; align-items: center; justify-content: center; width: 100%; padding: 15px; text-align: center;}

/* NAVIGATION */

nav.primary{display: inline-block; text-align: center; position: relative; width: 100%; z-index: 999;}
nav.primary ul{display: flex; justify-content: center; width: 100%; margin: 0; padding: 0;}
nav.primary ul li{display: inline-block; position: relative; height: 100%; transition: 0.3s;}
nav.primary ul li i{margin-left: 10px;}
nav.primary ul li a{display: block; padding: 50px 20px; font-size: 14px; letter-spacing: 2px; font-weight: 900; text-transform: uppercase; text-align: center; transition: 0.2s ease-in;}
nav.primary ul li:hover > a{background: #f5f5f5;}

nav.primary .primary-sub-menu li{border-bottom: 1px #eee solid;}
nav.primary .primary-sub-menu li a{display: block; padding: 15px 20px; font-size: 12px; font-weight: 700; text-align: left; letter-spacing: 1px; color: #333;}
nav.primary .primary-sub-menu li:hover > a{background: #f5f5f5;}

nav.primary ul ul{display: none; position: absolute; background: #fff; width: 250px; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1); z-index: 5;}
nav.primary ul li:hover > ul{display: block; position: absolute; white-space: nowrap; z-index: 100;}
nav.primary ul ul li{display: block; position: relative; float: none; margin: 0; font-size: 12px;}

/* SLIDESHOW */

.slider .slick-list{overflow: hidden;}
.slider .slick-slide{display: block; position: relative; background: #000; float: left; margin: 0 1px; min-height: 1px;}
.slider .slick-slide div{display: flex; align-items: center;}

.wrap .wrap .slick-slide img{display: block; opacity: .5;}
.wrap .wrap .slick-slide.slick-center img{opacity: 1;}

/* BODY */

.inv-btns{background: #fff; position: relative; top: -30px; z-index: 99;}
.inv-btns ul{display: flex; position: absolute; background: #fff; width: 100%;}
.inv-btns ul li{flex: 1; margin: 1px;}
.inv-btns ul li a{display: block; background: #FF5100; padding: 18px 12px; font-weight: 900; text-transform: uppercase; text-align: center; letter-spacing: 2px; color: #fff;}
.inv-btns ul li a:hover{background: #DF4600;}

.about-section{background: url('/siteart/bg-about.jpg') top right no-repeat; background-size: cover; padding: 150px 0 250px;}
.about-section .wrap{display: flex; flex-wrap: wrap;}
.about-section .about-text{background: url('/siteart/bg-mo.png') top left no-repeat; background-size: contain; width: calc(100% - 500px); padding-right: 100px;}
.about-section .about-text h1{margin-bottom: 25px; font-size: 36px; font-weight: 400;}
.about-section .about-text h1 strong{display: block; font-weight: 900;}
.about-section .about-btns{width: 500px; border-top: 10px #ddd solid;}
.about-section .about-btns a{display: flex; align-items: center; flex-wrap: wrap; position: relative; background: #000; padding: 35px; font-size: 36px; font-weight: 900; text-transform: uppercase; line-height: 1.15; letter-spacing: 2px; color: #fff;}
.about-section .about-btns a.orange-btn{background: #FF5100;}
.about-section .about-btns a span{display: block; width: 100%; font-weight: 400;}
.about-section .about-btns a:after{position: absolute; right: 40px; content: "\f101"; font-family: "Font Awesome 5 Free"; font-size: 18px; font-weight: 900; transition: all .2s ease-in-out;}
.about-section .about-btns a:hover:after{right: 35px;}

.map-section{position: relative; margin-top: -150px; padding: 0 50px;}
.map-container{display: flex; flex-wrap: wrap; background: #FF5100; border-top: 10px #ddd solid;}
.map-container .map-left{display: flex; align-items: center; justify-content: center; width: 400px; padding: 35px; text-transform: uppercase; color: #fff;}
.map-container .map-left h2{font-size: 40px;}
.map-container .map-left h2 span{display: block; margin-bottom: 5px; font-size: 14px; font-weight: 400;}
.map-container .map-right{width: calc(100% - 400px);}
.map-container .map-right iframe{display: block; width: 100%; height: 300px;}

.title-banner{background: url('/siteart/bg-title.jpg') center center no-repeat; background-size: cover; padding: 50px 20px; text-align: center; color: #fff; border-bottom: 10px #FF5100 solid;}

.testimonials{background: #202020; padding: 75px 0;}
.testimonials h2{width: 100%; margin-bottom: 25px; color: #FF5100;}
.testimonials .wrap{display: flex; flex-wrap: wrap;}
.testimonials .testimonial{background: #fff; width: calc(50% - 20px); margin: 10px; padding: 50px 25px; ; 
    border-top: solid 8px #FF5100;}
.testimonials .testimonial span{display: block; margin-top: 10px; font-size: 14px; font-weight: 700;}

.main .map-section{margin-top: 0; padding: 0; font-weight: 700;}


/* MISC */

.bg-img{
	background: url("/siteart/bg-depth.jpg") center top no-repeat; 
	-moz-background-size: 100% auto;
	-o-background-size: 100% auto;
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
}
.dark-bg{background: #202020; color: #fff;}
.pad{
	padding: 18px;
}

/* FORM */

.form{background: #f5f5f5; padding: 75px 0;}
.form h2{margin-bottom: 25px; color: #FF5100;}
.form form{background: #fff; padding: 50px 25px; box-shadow: 20px 20px 60px #d9d9d9, -20px -20px 60px #ffffff;}
.form .form-row{display: flex; flex-wrap: wrap; margin-bottom: 25px;}
.form .form-row .label-left{width: 250px; padding-right: 15px;}
.form .form-row .label-left label span{padding-left: 5px; color: red;}
.form .form-row .input-right{width: calc(100% - 250px);}
.form .form-row .input-right label{display: inline; margin-right: 10px; cursor: pointer;}
.form input[type="text"], .form input[type="email"], .form select, .form textarea{background: #f2f2f2; width: 100%; padding: 15px; font-family: 'Inter', sans-serif; border-radius: 5px; border: none;}
.form input[type="checkbox"], .form input[type="radio"]{position: relative; top: 2px; margin: 5px 10px 5px 0;}
.form input[type="submit"]{display: block; width: 100%; max-width: 250px; background: #FF5100; margin: 5px auto; padding: 15px; font-family: 'Inter', sans-serif; font-size: 16px; font-weight: 900; text-transform: uppercase; color: #fff; border-radius: 5px; border: none; transition: all .2s ease-in-out; cursor: pointer;}
.form input[type="submit"]:hover{background: #DF4600;}
.form textarea{height: 120px;}

.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 */

.scrolling-wrap{position: relative; width: 100%; margin: 50px 0;}
.scrolling-wrap .scrolling{width: 100%; height: 90px;}

.footer{display: flex; flex-wrap: wrap; background: #202020; color: #fff;}
.footer a{display: block; padding-bottom: 10px;}
.footer a:hover{color: #FF5100;}
.footer .dark-bg{background: #000;}
.footer .col-4{display: flex; align-items: center; justify-content: center; width: 25%; padding: 50px;}
.footer .logo{display: flex; align-items: center; justify-content: center; width: 25%; background: #FF5100; padding: 50px;}
.footer .logo a{padding-bottom: 0;}

.icon-link{display: flex;}
.icon-link i{position: relative; top: 5px; margin-right: 25px;}

.hours{display: block; width: 250px; max-width: 100%;}
.hours .hours-disclaimer{margin-top: 25px; font-size: 14px; opacity: .85;}
.hours .hours-row{display: flex; width: 100%; background: #464646; padding: 5px 10px;}
.hours .hours-row:nth-child(odd){background: #202020;}
.hours .hours-row div:last-child{margin-left: auto;}

.copyright{display: block; background: #000; padding: 20px 0; font-size: 12px; text-transform: uppercase; text-align: center; letter-spacing: 2px; color: #ccc;}

/* RESPONSIVE */

.header .mobile-menu{display: none;}
.header .mobile-menu a{display: block; padding: 10px 15px; font-size: 20px; color: #666;}
.header .mobile-menu a:hover{color: #000;}

nav.mobile{display: none;}

@media screen and (max-width: 1300px){
	.header .navigation{width: calc(100% - 425px);}
	.header .contact{width: 275px; font-size: 13px;}
	
	nav.primary ul li a{padding: 50px 15px; font-size: 12px; letter-spacing: 1px;}
	
	.footer .col-4{width: 50%;}
	.footer .logo{width: 50%;}
}
@media screen and (max-width: 980px){
	.header .logo{width: 50%;}
	.header .logo img{width: 120px;}
	.header .mobile-menu{display: flex; align-items: center; justify-content: center; width: 50%;}
	.header .navigation{display: none;}
	.header .contact{display: none;}

	nav.primary{display: none;}
	nav.mobile{display: block; position: fixed; top: 0; left: -250px; width: 250px; height: 100%; background: #333; color: #fff; z-index: 999999; overflow: auto; box-shadow: 5px 0px 10px 0px rgba(0, 0, 0, 0.1);}
	nav.mobile .mobile-top{display: flex; align-items: center; justify-content: space-between; position: relative; padding: 10px 15px; border-bottom: 4px #FF5100 solid;}
	nav.mobile .mobile-title{font-size: 14px; font-weight: 700; text-transform: uppercase;}
	nav.mobile .menu-toggle{font-family: Arial, sans-serif; font-size: 18px; font-weight: 900; line-height: 1; color: #fff; padding: 5px;}
	nav.mobile .menu-toggle:hover{opacity: .5;}

	nav.mobile ul{list-style: none; font-weight: 400; margin: 0; padding: 0;}
	nav.mobile ul li{position: relative; border-bottom: 1px solid #444;}
	nav.mobile ul li i{position: absolute; right: 15px;}
	nav.mobile ul li a.active-mobile i{transform: rotate(180deg);}
	nav.mobile ul li a{display: flex; align-items: center; position: relative; font-size: 12px; padding: 15px; font-weight: 700; text-transform: uppercase; color: #fff;}
	nav.mobile ul li a:hover{background: #FF5100;}

	nav.mobile ul ul li a{background: #444;}
	nav.mobile ul ul ul li a{background: #555;}

	nav.mobile .social{padding: 25px 0 10px; text-align: center;}
	nav.mobile .social a{padding: 5px; opacity: .75;}
	nav.mobile .social a:hover{opacity: 1;}
	nav.mobile .nav-footer{font-size: 12px; text-align: center; opacity: .5;}
	
	.inv-btns ul{justify-content: center; flex-wrap: wrap; position: relative}
	.inv-btns ul li{flex: none; width: calc(33.3333% - 2px); font-size: 14px;}

	.about-section{background: url(/siteart/bg-about.jpg) top left no-repeat; padding: 50px 0;}
	.about-section .about-text{width: 100%; padding-right: 0;}
	.about-section .about-btns{display: flex; width: 100%; margin-top: 50px;}
	.about-section .about-btns a{flex: 1;}

	.map-section{margin-top: 0; padding: 0 20px;}
	.map-container .map-left{width: 100%; text-align: center;}
	.map-container .map-left h2{font-size: 32px;}
	.map-container .map-right{width: 100%;}

	.main .map-container .map-left{font-size: 14px; text-align: left;}
}
@media screen and (max-width: 768px){
	.flex-col .col{width: 100%; margin-bottom: 15px; padding: 0;}

	.inv-btns ul li{width: calc(50% - 2px);}
	
	.about-section .about-text h1{font-size: 24px;}
	.about-section .about-btns{flex-wrap: wrap;}
	.about-section .about-btns a{flex: none; width: 100%; font-size: 24px;}
	
	.testimonials .testimonial{width: 100%; margin: 10px 0; padding: 35px 25px;}
	
	.form .form-row{margin-bottom: 10px;}
	.form .form-row .label-left, .form .form-row .input-right{width: 100%; padding: 0;}
	.form input[type="text"], .form input[type="email"], .form select, .form textarea{margin: 5px 0 10px;}
	
	.footer .col-4{width: 100%;}
	.footer .col-4:first-child{display: none;}
	.footer .logo{width: 100%;}
	.footer .logo img{max-width: 150px;}
}
@media screen and (max-width: 480px){
	.header .logo{width: 150px;}
	.header .mobile-menu{width: calc(100% - 150px);}
	
	.inv-btns ul li{width: 100%; margin: 1px 0;}
}