/* 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: "Barlow", sans-serif; font-size: 16px; line-height: 1.5; height: 100%; width: 100%;}
body{display: flex; min-height: 100vh; flex-direction: column;}
::-moz-selection{background: #003F7D; color: #fff; text-shadow: none} ::selection{background: #003F7D; color: #fff; text-shadow: none}

.main{flex: 1; padding: 50px 0;}
.wrap{width: 100%; max-width: 1640px; margin: 0 auto; padding: 0 20px;}
.blue-bg img{display: block; width: 100%; height: 100px;}

.flex-row{display: flex; flex-wrap: wrap; gap: 25px 50px;}
.flex-row .flex-col{flex: 1;}

.col-4{max-width: 38%;}

/* TYPOGRAPHY */

h1, h2, h3, h4, h5, h6{font-family: "Barlow Condensed", sans-serif; font-weight: 700; text-transform: uppercase; line-height: 1;}
p{font-size: 17px; line-height: 1.65;}
a{text-decoration: none; color: inherit; cursor: pointer; transition: all .2s ease-in-out;} a:hover{color: inherit;}

.underline-link{text-decoration: underline;} .underline-link:hover{text-decoration: none;}

.btn{display: inline-flex; align-items: center; justify-content: center; background: #003F7D; padding: 12px 35px; font-family: "Barlow Condensed", sans-serif; font-size: 20px; font-weight: 700; text-align: center; text-transform: uppercase; color: #fff!important; border-radius: 25px;}
.btn:hover{opacity: .85;}

.btn-container{display: flex; gap: 5px 10px; flex-wrap: wrap;}
.btn-container .btn:nth-child(even){background: #F5B010; color: #000!important; border: 1px solid #F5B010;}
.btn-container .btn:nth-child(even):hover{opacity: .85;}

.social ul{display: flex; gap: 0 10px;}
.social ul li a{display: flex; align-items: center; justify-content: center; background: #fff; height: 35px; color: #000; border-radius: 18px; padding: 0 15px; min-width: 35px; min-height: 35px;}
.social ul li a:hover{opacity: .85;}

/* HEADER */

.header{position: relative; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1); z-index: 999;}

.top-header{background: #003F7D; padding: 10px 0; color: #fff;}
.top-header .wrap{display: flex; align-items: center; gap: 0 35px;}
.top-header .contact{margin-left: auto;}
.top-header .contact ul{display: flex; gap: 0 25px;}
.top-header .contact ul li a{display: block; font-family: "Barlow Condensed", sans-serif; font-size: 20px; font-weight: 500; text-transform: uppercase;}
.top-header .contact ul li a:hover{opacity: .75;}

.bottom-header{padding: 10px 0;}
.bottom-header .wrap{display: flex; align-items: center; gap: 0 35px;}

.bottom-header .logo{display: flex; align-items: center; gap: 0 20px;}
.bottom-header .logo a:hover{opacity: .85;}
.bottom-header .logo hr{display: block; border: none; background: #ccc; width: 1px; height: 75px;}
.bottom-header .logo img{display: block; max-width: 165px;}

.bottom-header .navigation{margin-left: auto;}

/* 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: 12px 20px; font-family: "Barlow Condensed", sans-serif; font-size: 20px; font-weight: 800; 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{display: block; position: relative; float: none; margin: 0; border-bottom: 1px #eee solid;}
nav.primary .primary-sub-menu li a{display: block; padding: 12px 20px; font-family: "Barlow", sans-serif; font-size: 14px; font-weight: 600; text-align: left; text-transform: none;}
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 li.has-sub-menu a:after{display: inline-block; margin-left: 10px; font-family: "Font Awesome 6 Free"; font-size: 10px; font-weight: 900; content: "\f107";}
nav.primary ul li.has-sub-menu ul a:after{content: "";}

/* HOME */

.hero{background: #EAF7F9; padding: 10px 0;}

.about-container{display: flex; flex-wrap: wrap; padding: 50px 0;}
.about-container .about-img{flex: 1; max-width: 683px;}
.about-container .about-text{flex: 1; padding: 100px;}
.about-container .about-text h1{font-size: 48px; font-weight: 900;}
.about-container .about-text h2{margin: 8px 0 15px; font-size: 32px; font-weight: 500;}
.about-container .about-text p{width: min(100%, 75ch);}
.about-container .btn-container{margin-top: 50px;}

.icon-container{display: flex; justify-content: center; gap: 10px; flex-wrap: wrap;}
.icon-container a{display: block; flex: 1; position: relative; background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 49%, rgba(234,247,249,1) 49%, rgba(234,247,249,1) 100%); padding: 0 20px 20px; font-family: "Barlow Condensed", sans-serif; font-size: 20px; font-weight: 800; text-transform: uppercase; text-align: center; border-radius: 10px;}
.icon-container img{display: block; position: relative; top: 0; margin: auto; transition: all .2s ease-in-out;}
.icon-container a:hover > img{top: -5px;}

.zoom-container{display: flex; flex-wrap: wrap; gap: 5px; background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 75%, rgba(234,247,249,1) 75%, rgba(234,247,249,1) 100%); padding: 50px;}
.zoom-container .zoom-box{flex: 1; position: relative; background: #000; overflow: hidden; border-radius: 15px; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1); transition: all .5s ease;}
.zoom-container .zoom-box:after{display: block; position: absolute; content: ""; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(180deg, rgba(0,0,0,.1) 0%, rgba(0,0,0,.65) 100%); transition: all .5s ease;}
.zoom-container .zoom-box a{flex: 1; display: block; position: relative; padding: 150px 35px 35px; font-family: "Barlow Condensed", sans-serif; font-size: 32px; font-weight: 700; text-transform: uppercase; color: #fff; z-index: 9;}
.zoom-container .zoom-box img{position: absolute; top: 0; left: -25px; min-width: calc(100% + 50px); min-height: 100%; object-fit: cover;}
.zoom-container .zoom-box .content{position: relative; width: 100%; z-index: 1;  transition: all .5s ease;}
.zoom-container .zoom-box.full{flex: none; width: 100%;}
.zoom-container .zoom-box.full a{padding: 50px 35px;}
.zoom-container .zoom-box:hover{transform: scale(1.02); box-shadow: 0px 10px 70px 0px rgb(0 0 0 / 10%); z-index: 9;}

.showroom-container{position: relative;}
.showroom-container ul{display: flex; justify-content: center; flex-wrap: wrap; gap: 10px;}
.showroom-container ul li{width: calc(20% - 10px);}
.showroom-container ul li a{display: flex; align-items: center; justify-content: center; background: #fff; padding: 20px; border-radius: 15px; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1);}
.showroom-container ul li a:hover{transform: scale(1.02); box-shadow: 0px 10px 70px 0px rgb(0 0 0 / 10%); z-index: 9;}
.showroom-container img{display: block; max-width: 75%;}
.showroom-container .showroom-overlay{position: absolute; width: 100%; height: 100%; background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);}

.brands-container{padding: 50px; text-align: center;}
.brands-container h2{margin: 25px 0; font-size: 32px;}
.brands-container p{display: block; width: min(100%, 100ch); margin: auto;}
.brands-container .showroom-container ul{padding: 50px 0 20px; pointer-events: none;}

/* SUB PAGES */

.page-header{background: #EAF7F9; padding: 50px 0 0;}
.page-header h1{font-size: 36px; font-weight: 800;}

.location-frame{display: block; width: 100%; height: 350px; margin-bottom: 35px;}

.hours-container{background: #003F7D; padding: 20px; font-size: 14px; color: #fff; border-radius: 10px; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1);}
.hours-container h3{margin-bottom: 15px; padding: 0 10px; font-size: 20px;}
.hours-row{display: flex; align-items: center; flex-wrap: wrap; padding: 5px 12px;}
.hours-row:nth-child(even){background: #4e6f9e;}
.hours-row div:first-child{width: 150px; font-weight: 700;}
.hours-row div:last-child{flex: 1;}

.contact-icons{font-size: 18px; font-weight: 700;}
.contact-row{display: flex; align-items: center; gap: 25px; margin: 15px 0;}
.contact-row i{width: 50px; font-size: 28px; text-align: center; opacity: .85;}
.contact-row a{font-weight: 600; color: #003F7D;}
.contact-row a:hover{text-decoration: underline;}

/* SLIDESHOW */

.slick-slider{display: flex; justify-content: center; flex-wrap: wrap; gap: 0 10px; position: relative;}
.slick-list{display: block; width: 100%; margin: auto; padding: 0; overflow: hidden; order: -1;}
.slick-slide{display: block; float: left; min-height: 1px; padding: 20px;}
.slick-slide img{display: block; margin: auto; border-radius: 20px; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1); transition: all .2s ease-in-out;}
.slick-slide:not(.slick-current) img{opacity: .5;}

.slick-arrow{display: flex; align-items: center; justify-content: center; background: #003F7D; width: 50px; height: 50px; font-size: 0; border: none; outline: none; border-radius: 50px; cursor: pointer; transition: all .2s ease-in-out;}
.slick-arrow:hover{opacity: .85;}

.slick-arrow:before{font-family: "Font Awesome 6 Free"; font-size: 24px; font-weight: 900; color: #fff;}
.slick-prev:before{content: '\f0d9';}
.slick-next:before{content: '\f0da';}

/* FORM */

.form{background: #003F7D; padding: 35px; color: #fff; border-radius: 10px; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1);}
.form h3{margin: 20px 0;}
.form p{margin: 15px 0 25px}
.form input[type="text"], .form select, .form textarea{background: #fff; width: 100%; padding: 15px 12px; font-family: inherit; border: none; border-radius: 5px;}
.form textarea{height: 120px;}
.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: #F5B010; margin: auto; padding: 15px; font-family: "Barlow Condensed", sans-serif; font-size: 20px; font-weight: 700; text-align: center; text-transform: uppercase; color: #000; border-radius: 50px; border: none; transition: all .2s ease-in-out; cursor: pointer;}
.form input[type="button"]{display: block; width: 100%; max-width: 250px; background: #F5B010; margin: auto; padding: 15px; font-family: "Barlow Condensed", sans-serif; font-size: 20px; font-weight: 700; text-align: center; text-transform: uppercase; color: #000; border-radius: 50px; border: none; transition: all .2s ease-in-out; cursor: pointer;}
.form input[type="submit"]:hover{opacity: .85;}
.form input[type="button"]:hover{opacity: .85;}

.form .form-row{display: block; margin-bottom: 10px;}
.form .form-group{display: flex; position: relative;}
.form .form-group label{position: absolute; top: 12px; left: 15px; font-size: 14px; 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: #003F7D;}
.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;}

.form .label-field{display: flex; flex-wrap: wrap; margin: 10px 0;}
.form .label-field label{display: flex; align-items: center; margin: 0 5px 5px 0; background: #fff; padding: 8px 16px; font-size: 14px; border-radius: 5px; transition: all .2s ease-in-out; cursor: pointer;}
.form .label-field label:hover{background: #f5f5f5;}
.form .include-captcha{display: none;}

.CaptchaPanel{margin: 0 0 20px !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: #fff;} .CaptchaWhatsThisPanel a:hover{text-decoration: none;}


.finance-form {
    background: #003F7D;
    padding: 35px;
    color: #fff;
    border-radius: 10px;
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1);
}
.form .formfield {
    display: flex;
    margin-bottom: 10px;
    gap: 10px;
}





/* FOOTER */

.footer .flex-row{display: flex; flex-wrap: wrap; gap: 20px;}

.top-footer{display: flex; flex-wrap: wrap;}
.top-footer a:hover{opacity: .75;}
.top-footer .footer-left{display: flex; align-items: center; justify-content: center; background: #EAF7F9; padding: 50px 20px; width: 25%;}
.top-footer .footer-left .social ul{justify-content: center; margin-top: 15px;}
.top-footer .footer-left .social ul li a{background: #F5B010;}
.top-footer .footer-right{flex: 1; padding: 100px;}
.top-footer .footer-right a{font-family: "Barlow Condensed", sans-serif; font-size: 20px; font-weight: 700; text-transform: uppercase;}
.top-footer .footer-right .showroom-links{margin-top: 25px;}
.top-footer .footer-right .showroom-links a{font-weight: 500;}

.bottom-footer{background: #003F7D; padding: 10px 0; text-align: center; color: #fff;}

/* RESPONSIVE */

#menu-button{display: none; position: relative; z-index: 1000;}
#menu-button .menu-toggle{width: 100%; padding: 12px 0; font-size: 18px; font-weight: 700; text-align: center; color: #333; transition: all .2s ease-in-out; cursor: pointer;}
#menu-button .menu-toggle:hover{color: #000;}
#menu-button .menu-toggle span{margin-left: 7px;}

nav.mobile{display: none; position: fixed; top: 0; left: -300px; width: 300px; 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; height: 60px; padding: 10px 15px; font-size: 14px; font-weight: 700; text-transform: uppercase; border-bottom: 4px #003F7D 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; transition: all .2s ease-in-out; cursor: pointer;}
nav.mobile .menu-toggle:hover{opacity: .5;}

nav.mobile .social{margin-top: auto;}
nav.mobile .social ul{justify-content: center;}
nav.mobile .social ul li a{background: #003F7D; color: #fff;}
nav.mobile .nav-footer{padding: 20px 0; 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.has-sub-menu 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: 13px; padding: 15px; font-weight: 700; text-transform: uppercase; color: #fff;}
nav.mobile ul li a:hover{background: #003F7D;}

nav.mobile ul ul{display: none;}
nav.mobile ul ul li a{background: #444;}
nav.mobile ul ul ul li a{background: #555;}

@media screen and (max-width: 1300px){
	.top-footer .footer-right{padding: 50px;}
	.top-footer .flex-row .flex-col{flex: none; width: calc(50% - 25px);}
	.flex-row.financing {
    	display: flex;
		flex-direction: column;
		gap: 100px;
	}
}
@media screen and (max-width: 1024px){
	nav.primary ul li a{padding: 12px 12px; font-size: 18px;}
	.bottom-header .logo img{max-width: 115px;}
	
	.showroom-container ul li{width: calc(25% - 10px);}
}
@media screen and (max-width: 975px) {
	.header-more-detail {display: none;}
}
@media screen and (max-width: 900px) {
	.form .formfield {
		flex-direction: column;
	}
	.top-footer .footer-left, .top-footer .footer-right{flex: none; width: 100%;}
}
@media screen and (max-width: 780px){
	nav.primary{display: none;}
	nav.mobile, #menu-button{display: block;}p{font-size: 16px;}

	.main{padding: 35px 0;}
	.flex-row .flex-col{flex: none; width: 100%; max-width: 100%;}
	.page-header h1{font-size: 24px;}

	.about-container .about-img{flex: none; width: 100%; max-width: 100%; padding-right: 20px;}
	.about-container .about-text{padding: 35px 20px;}
	.about-container .about-text h1{font-size: 36px;}
	.about-container .about-text h2{font-size: 24px;} 

	.icon-container a{flex: none; width: calc(50% - 10px);}

	.zoom-container{padding: 35px 20px;}
	.zoom-container .zoom-box{flex: none; width: 100%; margin: 5px 0;}
	.zoom-container .zoom-box a{padding: 35px 20px; font-size: 28px;}
	.zoom-container .zoom-box.full a{padding: 35px 20px;}
	
	.showroom-container ul li{width: calc(33.3333% - 10px);}
	.brands-container{padding: 35px 20px;}
	.brands-container h2{font-size: 28px;}
	.brands-container .showroom-container ul li:nth-child(n+13){display: none;}
	
	.form{padding: 25px;}
	.form input[type="submit"]{max-width: 100%;}
	.form .label-field label{display: block; width: 100%;}

}
@media screen and (max-width: 480px){
	.top-header .wrap {gap: 0 15px;}
	.top-header .contact ul {gap: 0 15px;}
	.top-header .contact ul li a{font-size: 18px;}
	.menu-toggle span{display: none;}
	
	.page-header{padding: 35px 0;}
	.blue-bg img{height: 25px;}
	.social ul li a{width: 30px; height: 30px; font-size: 14px;}

	.btn{font-size: 18px;}
	.btn-container .btn{width: 100%;}
	
	.slick-slide{padding: 5px;}
	.slick-slide img{border-radius: 10px;}
	.slick-arrow{width: 35px; height: 35px;}
	.slick-arrow:before{font-size: 18px;}
	.about-container{padding-bottom: 0;}
	.showroom-container ul li{width: calc(50% - 10px);}
	.showroom-container img{max-width: 100%;}
	.brands-container .showroom-container ul li:nth-child(n+7){display: none;}
	.location-frame{height: 200px;}

	.top-footer .footer-right{padding: 25px;}
	.top-footer .footer-right a{font-size: 18px;}
}
@media screen and (max-width: 380px){
	.top-header .wrap {
		flex-direction: column;
	}
	.top-header .contact {
		margin: 10px auto 0;
	}
	.bottom-header .logo{flex-direction: column;}
	.bottom-header .logo hr{width: 100%; height: 1px;}
	.hours-row div:first-child{width: 100%;}
}