/* 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;}
hr{display: block; margin: 40px 0; border: none; border-top: 1px #ddd solid;}
.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: "Inter", sans-serif; line-height: 1.5; height: 100%; width: 100%;}
body{display: flex; min-height: 100vh; flex-direction: column;}
::-moz-selection{background: #08AE49; color: #fff; text-shadow: none} ::selection{background: #08AE49; color: #fff; text-shadow: none}

.main{flex: 1; padding: 50px 0;}
.wrap{max-width: 1540px; margin: 0 auto; padding: 0 20px;}

.flex-row{display: flex; flex-wrap: wrap; gap: 50px;}
.flex-row .flex-col{flex: 1;}

.bw-hover img{
	transition: ease all 0.3s;
	filter: grayscale(1);
	padding: 10px;
	box-sizing: border-box;
}
.bw-hover img:hover{
	filter: grayscale(0);
}

/* TYPOGRAPHY */

h1, h2, h3, h4, h5, h6{font-weight: 700; text-transform: uppercase; line-height: 1;}
a{text-decoration: none; color: inherit; cursor: pointer; transition: all .2s ease-in-out;} a:hover{color: inherit;}

.color-shift div:nth-child(1){color: #21C360;}
.color-shift div:nth-child(2){color: #08AE49;}
.color-shift div:nth-child(3){color: #078E3C;}

.bullet-list li{margin-left: 15px; list-style: disc; font-weight: 700;}

.underline-link{font-weight: 700; text-decoration: underline; color: #08AE49;}
.underline-link:hover{text-decoration: none;}

.btn{display: inline-flex; align-items: center; justify-content: center; background: #08AE49; padding: 12px 35px; font-weight: 700; text-align: center; color: #fff;}
.btn:hover{background: #078E3C; color: #fff;}

/* HEADER */

.top-header{display: flex; align-items: center; justify-content: flex-end; background: #13322B; color: #fff;}
.top-header .contact{display: flex; align-items: center; gap: 0 35px; padding: 0 25px;}
.top-header .contact i{margin-right: 10px; color: #08AE49;}
.top-header .contact a:hover{opacity: .75;}
.top-header .social{background: #08AE49; padding: 15px 25px;}
.top-header .social ul{display: flex; align-items: center; justify-content: center; gap: 0 15px;}
.top-header .social ul li a{display: block; padding: 0 5px;}
.top-header .social ul li a:hover{opacity: .75;}

.bottom-header{background: #000; padding: 20px 0;}
.bottom-header .wrap{display: flex; align-items: center; flex-wrap: wrap;}
.bottom-header .logo{width: 350px;}
.bottom-header .nav{flex: 1;}

/* 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 15px; font-size: 16px; font-weight: 500; text-align: center; color: #fff; transition: 0.2s ease-in;}
nav.primary ul li:hover > a{background: #222;}

nav.primary .primary-sub-menu li{border-bottom: 1px #555 solid;}
nav.primary .primary-sub-menu li:last-child{border-bottom: none;}
nav.primary .primary-sub-menu li a{display: block; background: #333; padding: 12px 14px; font-size: 12px; text-align: left;}
nav.primary .primary-sub-menu li:hover > a{background: #555;}

nav.primary ul ul{display: none; position: absolute; 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;}

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"; color: #fff;}
nav.primary ul li.has-sub-menu ul a:after{content: "";}

/* HOME */

.hero{background: url(/siteart/bg-hero.png) top -35px right no-repeat; background-size: contain; padding: 125px 0;}
.hero .wrap{display: flex; align-items: center; gap: 20px 50px; flex-wrap: wrap;}

.hero-text{width: 600px; max-width: 100%;}
.hero-text .color-shift{display: block; margin-bottom: 25px; font-size: 80px; font-weight: 900; line-height: 1; text-transform: uppercase; font-style: italic;}
.hero-text .color-shift:after{display: block; margin-top: 25px; content: ""; background: #078E3C; width: 100px; height: 5px;}
.hero-text h1{font-size: 20px; font-weight: 900; letter-spacing: 4px;}
.hero-text p{display: block; margin: 15px 0; color: #555;}
.hero-links{display: flex; align-items: center; justify-content: center; gap: 10px 15px; flex: 1; flex-wrap: wrap;}
.hero-links span:after{margin-left: 10px; font-family: "Font Awesome 6 Free"; font-weight: 900; content: "\f101"; transition: all .2s ease-in-out;}
.hero-links a{flex: 1; background: #13322B; padding: 75px 25px; text-align: center; border-radius: 40px; transition: all .5s ease;}
.hero-links a:hover{transform: scale(1.05); box-shadow: 0px 10px 70px 0px rgb(0 0 0 / 50%); z-index: 9;}
.hero-links a:hover > span:after{margin-left: 12px;}
.hero-links i{display: block; font-size: 48px; color: #26E16F;}
.hero-links strong{display: block; margin: 25px 0; font-size: 40px; font-weight: 900; text-transform: uppercase; line-height: 1; color: #fff;}
.hero-links span{display: block; font-size: 16px; font-weight: 500; color: #26E16F;}

.contact-bar{background: #0E110F; max-width: calc(100% - 40px); width: 100%; margin: auto; padding: 75px 20px; color: #fff; border-radius: 40px;}
.contact-bar .wrap{display: flex; align-items: center; flex-wrap: wrap; gap: 15px;}
.contact-bar .text{flex: 1; font-size: 56px; font-weight: 900; text-transform: uppercase; line-height: 1;}
.contact-bar .text strong{display: block; margin-bottom: 10px; font-size: 18px; letter-spacing: 5px; color: #08AE49;}
.contact-bar .social{flex: 1;}
.contact-bar .social ul{display: flex; align-items: center; gap: 0 12px;}
.contact-bar .social ul li a{display: flex; align-items: center; justify-content: center; width: 65px; height: 65px; font-size: 20px; color: #fff; border: 1px #777 solid; border-radius: 50px;}
.contact-bar .social ul li a:hover{background: #fff; color: #000;}
.contact-bar .contact{width: 300px;}
.contact-bar .contact a{display: flex; align-items: center; position: relative; background: #08AE49; padding: 25px 35px; font-weight: 700; border-radius: 100px;}
.contact-bar .contact a:hover{background: #078E3C;}
.contact-bar .contact a:after{position: absolute; right: 25px; font-family: "Font Awesome 6 Free"; font-weight: 900; content: "\f101"; transition: all .2s ease-in-out;}
.contact-bar .contact a:hover:after{right: 30px;}

.customer-service{background: url(/siteart/bg-commited.png) bottom left no-repeat; padding: 100px 0;}
.customer-service .wrap{display: flex; align-items: center; gap: 0 50px; flex-wrap: wrap;}
.customer-service .color-shift{font-size: 48px;}
.customer-service .hero-text{width: 400px;}

/* SUB PAGES */

.banner{position: relative;}
.banner:before{position: absolute; content: ""; left: 0; top: 0; width: 100%; height: 100%; background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 75%, rgba(255,255,255,1) 75%, rgba(255,255,255,1) 100%); z-index: 0;}
.banner .wrap{position: relative; background: url(/siteart/banner.png) top -20px right no-repeat; background-size: contain; max-width: 100%; padding: 30px 0 90px; padding-left: calc(50% - 750px); color: #fff; z-index: 9;}
.banner h1{margin-bottom: 5px; font-size: 36px; font-weight: 900; text-transform: uppercase; color: #08AE49;}

/* FORM */

.form{padding: 10px 25px 25px; border-radius: 5px; box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1);}
.form h2{position: relative; top: -10px; left: -25px; background: #333; width: calc(100% + 50px); padding: 20px; font-size: 20px; text-align: center; color: #fff; border-radius: 5px 5px 0 0;}
.form h3{margin: 20px 0; font-size: 16px; text-transform: none;}
.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: 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: #333; margin: 15px 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: #555;}

.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; 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: #B12A1C;}
.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: #fafafa; padding: 8px 16px; border: 1px #eee solid; border-radius: 5px; transition: all .2s ease-in-out; cursor: pointer;}
.form .label-field label:hover{background: #f5f5f5;}

.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 */

.scrolling-wrap, .scrolling-wrap iframe{display: block; width: 100%; height: 90px;}

.footer{background: #000; padding: 25px 0; color: #fff;}
.footer .wrap{display: flex; align-items: center; flex-wrap: wrap;}
.footer .social ul{display: flex; align-items: center;}
.footer .social ul li a{display: block; padding: 12px;}
.footer .social ul li a:hover{opacity: .75;}
.footer .copyright{margin-left: auto; color: #ccc;}

/* RESPONSIVE */

#menu-button{display: none; position: relative; z-index: 1000;}
#menu-button .menu-toggle{padding: 12px 20px; font-size: 22px; font-weight: 700; text-align: center; color: #08AE49; transition: all .2s ease-in-out; cursor: pointer;}

nav.mobile{display: none; position: fixed; top: 0; left: -300px; width: 300px; height: 100%; background: #333; color: #fff; z-index: 999999; overflow: hidden; 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 #08AE49 solid;}
nav.mobile .mobile-navigation{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: 25px 0; 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: 9px; 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: 12px; padding: 15px; font-weight: 700; text-transform: uppercase; color: #fff;}
nav.mobile ul li a:hover{background: #08AE49;}

nav.mobile ul ul li a{background: #444;}
nav.mobile ul ul ul li a{background: #555;}

@media screen and (max-width: 1550px){
	.banner .wrap{background: #000; padding: 30px 20px;}
}
@media screen and (max-width: 1300px){
	nav.primary ul li a{padding: 12px; font-size: 15px;}
	.bottom-header .logo{width: 200px;}
	.hero{background: url(/siteart/bg-hero.png) top -320px right -200px no-repeat; background-size: auto; padding: 50px 0;}
	.hero-text{flex: none; width: 100%;}
	.hero-links{flex: none; width: 100%;}
	.contact-bar .text{font-size: 48px;}
	.contact-bar .contact{flex: none; width: 100%;}
	.contact-bar .social ul{justify-content: flex-end;}
	.contact-bar .social ul li a{height: 50px; width: 50px;}
	.customer-service .hero-text{flex: none; width: 100%; order: 1;}
	.customer-service .hero-links{order: 2;}
}
@media screen and (max-width: 1024px){
	.top-header{justify-content: flex-start;}
	.top-header .contact{flex: 1;}
	.bottom-header .nav{display: flex; justify-content: flex-end;}
	nav.primary{display: none;}
	nav.mobile, #menu-button{display: block;}

	.main{padding: 50px 0;}
	.flex-row{gap: 20px;}
	.flex-row .flex-col{flex: none; width: 100%;}

	.banner h1{font-size: 32px;}
}
@media screen and (max-width: 768px){
	.top-header .contact{justify-content: center; padding: 10px;}
	.top-header .contact a:first-child{display: none;}
	.top-header .social{flex: 1; padding: 10px;}
	.top-header .social ul{gap: 10px;}
	
	.hero{background: url(/siteart/bg-hero.png) top -600px right -500px no-repeat; background-size: auto; padding: 50px 0;}
	.hero-text .color-shift{font-size: 56px;}
	.hero-links strong{font-size: 24px;}
	.contact-bar .text{flex: none; width: 100%; text-align: center;}
	.contact-bar .social{flex: none; width: 100%; margin: 15px 0;}
	.contact-bar .social ul{justify-content: center;}
	.customer-service{padding: 50px 0;}
	.customer-service .color-shift{font-size: 36px;}
}
@media screen and (max-width: 768px){
	.top-header{font-size: 14px;}
	
	.hero-links a{flex: none; width: 100%; padding: 35px 20px;}
	.contact-bar .text strong{font-size: 16px;}
	.contact-bar .text{font-size: 36px;}

	.banner h1{font-size: 24px;}

	.footer .social{width: 100%;}
	.footer .social ul{justify-content: center;}
	.footer .copyright{width: 100%; margin: auto; text-align: center;}
}