/* 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{font-family: "degular", sans-serif; line-height: 1.5; height: 100%; width: 100%;}
body{display: flex; min-height: 100vh; flex-direction: column;}
::-moz-selection{background: #FFF324; color: #000; text-shadow: none} ::selection{background: #FFF324; color: #000; text-shadow: none}

.main{flex: 1; padding: 75px 0;}
.wrap{max-width: 1440px; margin: 0 auto; padding: 0 20px;}

.flex-row{display: flex; flex-wrap: wrap;}
.flex-row .flex-col{flex: 1; padding-right: 35px;}
.flex-row .flex-col:last-child{padding-right: 0;}

/* TYPOGRAPHY */

h1, h2, h3, h4, h5, h6{font-weight: 900; line-height: 1; text-transform: uppercase;}
h1{font-size: 48px;}
p{font-size: 18px;}
a{text-decoration: none; color: inherit; cursor: pointer; transition: all .2s ease-in-out;} a:hover{color: inherit;}

.bg-heading{background: #222; padding: 20px; font-size: 22px; color: #FFF324;}

.btn{display: inline-flex; align-items: center; justify-content: center; background: #333; padding: 12px 45px 15px 40px; font-size: 18px; text-transform: uppercase; text-align: center; color: #fff; border-radius: 3px;}
.btn:after{position: relative; top: 1px; right: -8px; font-family: "Font Awesome 6 Free"; font-size: 12px; font-weight: 900; content: "\f101"; color: #FFF324; transition: all .2s ease-in-out;}
.btn:hover{background: #000; color: #fff;}
.btn:hover:after{right: -10px;}

/* HEADER */

.top-header{background: #222; padding: 10px 0; font-weight: 700; text-transform: uppercase; color: #fff;}
.top-header a{display: block; padding: 0 15px; opacity: .5;}
.top-header a:hover{opacity: 1;}
.top-header .wrap{display: flex; justify-content: flex-end;}

.bottom-header{padding: 10px 0; border-bottom: 1px #ddd solid;}
.bottom-header .wrap{display: flex; align-items: center; flex-wrap: wrap;}
.bottom-header .logo{max-width: 200px;}
.bottom-header .navigation{flex: 1;}
.bottom-header .search a{display: block; padding: 12px 20px;}

/* NAVIGATION */

nav.primary{display: inline-block; text-align: center; position: relative; width: 100%; z-index: 999;}
nav.primary ul{display: flex; justify-content: flex-end; width: 100%; margin: 0; padding: 0;}
nav.primary ul li{display: inline-block; position: relative; height: 100%; transition: 0.3s;}
nav.primary ul li a{display: block; padding: 12px 20px; font-size: 16px; font-weight: 700; text-transform: uppercase; text-align: center; transition: 0.2s ease-in;}
nav.primary ul li:hover > a{background: #f5f5f5;}

/* SEARCH */

.searchbar{display: none; position: relative; background: #131313; width: 100%; z-index: 9999;}
.searchbar form{display: flex; align-items: center; flex-wrap: wrap; position: relative; max-width: 1440px; margin: auto;}
.searchbar form:before{position: absolute; font-family: "Font Awesome 6 Free"; content: "\f002"; right: 25px; font-size: 24px; font-weight: 900; color: #fff;}
.searchbar input[type="text"]{width: 100%; background: #131313; border: 0; outline: none; padding: 25px; font-family: 'Roboto Condensed', sans-serif; font-size: 24px; color: #fff;}
.searchbar input[type="submit"]{position: absolute; top: 0; right: 0; width: 79px; height: 79px; opacity: 0; cursor: pointer;}

.searchbar ::-webkit-input-placeholder{color: #aaa;}
.searchbar :-moz-placeholder{color: #aaa;}
.searchbar ::-moz-placeholder{color: #aaa;}
.searchbar :-ms-input-placeholder{color: #aaa;}

/* HOME */

.hero{display: flex; flex-wrap: wrap;}
.hero .hero-text{display: flex; align-items: center; justify-content: center; flex: 1; padding: 100px 0; padding-left: calc(50% - 720px);}
.hero .hero-text p{margin: 25px 0; font-size: 20px;}
.hero .hero-image{background: url(/siteart/hero-desktop.jpg) left center no-repeat; background-size: cover; width: 40%;}

.home-tiles{background: #000; padding: 50px 0 25px; color: #fff;}
.home-tiles .wrap{display: flex; flex-wrap: wrap; gap: 10px;}
.home-tiles .home-tile{flex: 1; position: relative; color: #ccc;}

.home-tiles a{display: flex; background: #222; border-radius: 5px;}
.home-tiles a:hover .tile-text strong{color: #FFF324;}
.home-tiles a:hover .tile-img img{filter: brightness(1) invert(.7) sepia(0) hue-rotate(0deg) saturate(0%);}

.home-tiles .tile-text{flex: 1; padding: 35px 20px;}
.home-tiles .tile-text strong{display: block; font-size: 24px; font-weight: 900; text-transform: uppercase; line-height: 1; color: #fff; transition: all .2s ease-in-out;}
.home-tiles .tile-img{display: flex; position: relative; width: 145px;}
.home-tiles .tile-img img{display: block; position: absolute; top: -15px; right: 10px; transition: all .2s ease-in-out;}

.home-about{background: url(/siteart/light-bg.jpg) center center fixed no-repeat; background-size: cover;}
.home-about .main{display: block; max-width: 900px; margin: auto; text-align: center;}
.home-about .main h2{font-weight: 700;}
.home-about .main h2 strong{display: block; margin: 5px 0; font-size: 36px; font-weight: 900;}
.home-about .main p{margin: 25px;}

.home-location{display: flex; flex-wrap: wrap; background: #000; width: 1440px; max-width: calc(100% - 40px); margin: auto; padding: 25px; color: #fff; border-radius: 5px;}
.home-location iframe{display: block; width: 100%; height: 250px;}
.home-location .location-left{flex: 1;}
.home-location .location-right{flex: 1; padding-left: 50px;}
.home-location .location-right h2{margin-bottom: 15px;}

.home-manus{padding: 75px 0 0; text-align: center;}
.home-manus h2{margin-bottom: 25px;}

.circle-img{display: block; width: 100%; margin: auto;}
.circle-img img{display: block; margin: auto}

.contact-icon{display: flex; align-items: center;}
.contact-icon i{display: flex; align-items: center; justify-content: center; background: #222; width: 40px; height: 40px; margin: 5px 0; color: #FFF324; border-radius: 5px;}
.contact-icon span{flex: 1; margin-left: 15px;}
.contact-icon:hover > span{text-decoration: underline;}

/* SLIDER */

.slider{background: #fff; padding: 20px;}
.slider a:hover{opacity: .75;}

.slick-slider{position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent;}
.slick-list{position: relative; display: block; overflow: hidden; margin: 0 auto; max-width: calc(100% - 50px); padding: 0;}
.slick-list:focus{outline: none;}
.slick-list.dragging{cursor: pointer; cursor: hand;}
.slick-slider .slick-track,.slick-slider .slick-list{transform: translate3d(0, 0, 0);}
.slick-track{position: relative; top: 0; left: 0; display: block; margin-left: auto; margin-right: auto;}
.slick-track:before, .slick-track:after{display: table; content: '';}
.slick-track:after{clear: both;}
.slick-loading .slick-track{visibility: hidden;}
.slick-slide{display: none; float: left; min-height: 1px;}
[dir='rtl'] .slick-slide{float: right;}
.slick-slide img{display: block; max-width: 100%;}
.slick-slide.slick-loading img{display: none;}
.slick-slide.dragging img{pointer-events: none;}
.slick-initialized .slick-slide{display: block; padding: 0 10px;}
.slick-loading .slick-slide{visibility: hidden;}
.slick-vertical .slick-slide{display: block; height: auto; border: 1px solid transparent;}
.slick-arrow.slick-hidden{display: none;}

.slick-prev, .slick-next{display: block; position: absolute; padding: 0; top: 50%; padding: 10px; font-size: 0; transform: translate(0, -50%); border: none; outline: none; background: transparent;}
.slick-prev:before, .slick-next:before{font-family: "Font Awesome 6 Free"; font-size: 20px; font-weight: 900; opacity: .5; color: #000; transition: all .2s ease-in-out; cursor: pointer;}
.slick-prev{left: 0;} .slick-prev:before{content: '\f104';}
.slick-next{right: 0;} .slick-next:before{content: '\f105';}
.slick-prev:hover:before, .slick-next:hover:before{opacity: 1;}

/* SUB PAGES */

.sub-location iframe{display: block; width: 100%; height: 250px; margin: 25px 0;}
.sub-location h2{margin-bottom: 20px;}

.brand-container{display: flex; flex-wrap: wrap; margin: 25px 0;}
.brand-box{line-height: 1;display: block; background: #fff; width: calc(16.6666% - 4px); margin: 2px; padding: 10px; text-align: center; border: 1px #ddd solid; transition: all .5s ease;}
.brand-box:hover{transform: scale(1.05); box-shadow: 0px 10px 70px 0px rgb(0 0 0 / 50%); z-index: 9;}
.brand-box img{display: block; position: relative; max-width: 100% !important; z-index: 0;}

.form{padding: 25px; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1);}
.form h3{margin-bottom: 20px; text-transform: uppercase;}
.form input[type="text"], .form select, .form textarea{background: #fafafa; width: 100%; padding: 15px 12px; font-family: inherit; border: 1px #eee solid; border-radius: 5px;}
.form textarea{height: 140px;}
.form input[type="checkbox"], .form input[type="radio"]{position: relative; margin: 0 10px 0 0;}
.form input[type="submit"]{display: block; width: 100%; max-width: 250px; background: #222; margin: 25px auto 0; padding: 15px; font-family: inherit; font-size: 16px; font-weight: 700; text-transform: uppercase; color: #fff; border-radius: 5px; border: none; transition: all .2s ease-in-out; cursor: pointer;}
.form input[type="submit"]:hover{background: #333;}

.form .form-row{display: block; margin-bottom: 10px;}
.form .form-group{display: flex; position: relative;}
.form .form-group label{position: absolute; top: 13px; left: 15px; color: #666; pointer-events: none; transition: 0.2s ease all;}
.form .form-group label span{color: red;}
.form .form-group.active label{top: 5px; left: 12px; font-size: 10px; font-weight: 700; color: #555;}
.form .form-group.active input[type="text"], .form .form-group.active textarea{padding: 20px 12px 10px 12px;}
.form .form-group.active select{padding: 20px 12px 10px 8px;}

.CaptchaPanel{margin: 0 !important; padding: 0 !important; line-height: normal !important;}
.CaptchaImage{margin: auto;}
.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;}
.CaptchaAnswerPanel input{width: 250px; max-width: 100%; padding: 5px; margin: 5px 0;}
.CaptchaWhatsThisPanel{line-height: 0; margin: 0; padding: 8px 0 8px 0 !important;}
.CaptchaWhatsThisPanel a{text-decoration: underline; font-size: 12px; color: #000;} .CaptchaWhatsThisPanel a:hover{text-decoration: none;}

@media screen and (max-width: 768px){
	.form .label-field label{display: block; width: 100%;}
	.form input[type="submit"]{max-width: 100%;}
}

/* FOOTER */

.top-footer{background: #000; padding: 100px 0; color: #fff;}
.top-footer strong{display: block; margin-bottom: 10px; font-size: 20px; font-weight: 900; text-transform: uppercase;}
.top-footer a{display: inline-block; padding: 2px 0; opacity: .75;}
.top-footer a:hover{opacity: 1;}

.bottom-footer{background: #222; padding: 10px 0; color: #ccc;}

/* RESPONSIVE */

#menu-button{display: none; position: relative; width: 100%; font-size: 20px; font-weight: 700; text-align: right; z-index: 1000;}
#menu-button a{display: inline-block; padding: 12px 15px;}
#menu-button i{position: relative; top: 1px; margin-right: 5px; font-size: 18px;}

nav.mobile{display: none; position: fixed; top: 0; left: -300px; width: 300px; height: 100%; background: #000; 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; height: 60px; padding: 10px 15px; font-size: 18px; font-weight: 700; text-transform: uppercase; border-bottom: 4px #FFF324 solid;}
nav.mobile .mobile-nav{display: flex; flex-direction: column; height: calc(100vh - 60px);}
nav.mobile .menu-toggle{display: block; font-size: 18px; padding: 5px;}
nav.mobile .menu-toggle:hover{opacity: .5;}

nav.mobile .social{padding: 25px 0 10px; text-align: center;}
nav.mobile .social a{padding: 0 10px; opacity: .75;}
nav.mobile .social a:hover{opacity: 1;}
nav.mobile .nav-footer{font-size: 10px; text-align: center; text-transform: uppercase; letter-spacing: 2px; opacity: .75;}

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: 14px; padding: 15px; font-weight: 700; text-transform: uppercase; color: #fff;}
nav.mobile ul li a:hover{background: #333;}

nav.mobile ul ul li a{background: #444;}
nav.mobile ul ul ul li a{background: #555;}

@media screen and (max-width: 1550px){
	h1{font-size: 36px;}

	.hero .hero-text{padding: 100px 20px;}
	.hero .hero-text p{font-size: 18px;}
}
@media screen and (max-width: 980px){
	.bottom-header .logo{max-width: 150px;}
	nav.primary{display: none;}
	nav.mobile, #menu-button{display: block;}

	.hero .hero-text{padding: 50px 20px; order: 2;}
	.hero .hero-image{background: url(/siteart/hero-mobile.jpg) bottom center no-repeat; background-size: cover; width: 100%; height: 100px; order: 1;}
	.home-tiles{padding: 35px 0;}
	.home-tiles .home-tile{flex: none; width: 100%;}
	.home-tiles .tile-img img{top: 0;}
	.home-tiles .circle-img{display: none;}
	
	.brand-box{width: calc(20% - 4px);}
}
@media screen and (max-width: 768px){
	.main{padding: 50px 0;}
	.flex-row .flex-col{flex: none; width: 100%; margin-bottom: 15px; padding-right: 0;}
	.flex-row .flex-col:last-child{margin-bottom: 0;}

	.home-location .location-left, .home-location .location-right{flex: none; width: 100%; padding: 0;}
	.home-location .location-right h2{margin: 15px 0;}
	
	.brand-box{flex-basis: 30% !important;flex-grow: 1 !important;}

	.footer{text-align: center;}
	.top-footer{padding: 50px 0;}
}
@media screen and (max-width: 620px){
		.brand-box{flex-basis: 40% !important;flex-grow: 1 !important;}
}
@media screen and (max-width: 480px){
	h1{font-size: 30px;}

	.top-header .wrap{justify-content: center;}
	.bottom-header .logo{max-width: 120px;}
	.bottom-header .search a{padding: 12px;}

	.btn{width: 100%;}
	
	.home-tiles .tile-text strong{font-size: 18px;}
	.home-tiles .tile-img{width: 125px;}
	.home-about .main h2 strong{font-size: 28px;}
	
	.brand-box{flex-basis: 100% !important;}
}