/* 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;} img{max-width: 100%; height: auto; image-rendering: -webkit-optimize-contrast;}

/* FRAMEWORK */

html, body{font-family: roboto, sans-serif; font-size: 14px; -webkit-text-size-adjust: none}
::-moz-selection{background: #E12021; color: #fff; text-shadow: none} ::selection{background: #E12021; color: #fff; text-shadow: none}

.main{padding: 50px 0;}
.container{max-width: 1200px; margin: 0 auto; padding: 0 20px;}
.black {color: #000;}
.grey{background: #f5f5f5;}
.grey-box{background: #f5f5f5; padding: 20px;}
.grey-box img {width: 100%; max-width: 333px; margin: 0 auto;}
.shadow{display: block; box-shadow: 0 6px 26px -1px rgba(0,0,0,.35); border-bottom: 1px solid #fff;}

.column12, .column11, .column10, .column9, .column8, .column7, .column6, .column5, .column4, .column3, .column2, .column1{float: left; padding: 0 25px 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;} .cf{zoom: 1;} .cf:before, .cf:after{content: ""; display: table;} .cf:after{clear: both;} .clear{clear: both;} *{box-sizing: border-box;}

hr{border: none; border-top: 1px #ddd solid; padding: 0; margin: 35px 0;}
.flex-box{display: flex; align-items: center;}
.flex-box a, .flex-box div{flex: 1;}

.img-float{float: right; padding: 5px 0 15px 15px; max-width: 250px;}

/* TYPOGRAPHY */

h1, h2, h3, h4, h5, h6{font-family: teko, sans-serif; font-weight: 400; text-transform: uppercase;}
h1{font-size: 36px;}
h2{font-size: 32px; color: #E12021;}
h3{font-size: 24px;}

p{font-size: 14px; line-height: 24px; color: #2E2F33;}
p strong{font-family: teko, sans-serif; font-size: 20px; font-weight: 400;}
a{text-decoration: none; color: inherit; transition: all .2s ease-in-out;} a:hover{color: inherit;}

.ghost-button{display: block; max-width: 350px; border: 1px #000000 solid; margin: 2px; padding: 14px 14px 12px; font-family: teko, sans-serif; font-size: 20px; text-align: center; text-transform: uppercase;}
.ghost-button:hover{border: 1px #E12021 solid; color: #E12021;}
.button{display: block; max-width: 350px; background: #E12021; padding: 14px 14px 12px; margin: 2px; font-family: teko, sans-serif; font-size: 20px; text-transform: uppercase; text-align: center; color: #fff;}
.button:hover{background: #9B0909; color: #fff;}

.center{text-align: center;}
.red{color: #E12021;}
.italic{font-size: 12px; font-style: italic;}
.quote{border-left: 5px #ddd solid; padding-left: 25px; font-size: 16px; font-style: italic; line-height: 26px; color: #2E2F33;}

/* HEADER */

.header {padding: 20px!important;}
.header .container{padding: 0 20px!important;}
.header .logo{float: left; width: calc(100% - 335px);}
.header .logo img{max-height: 75px;}
.header .contact{float: left; width: 175px; font-size: 16px; text-align: right; padding-right: 25px;}
.header .contact a{font-family: teko, sans-serif; font-size: 30px;}
.header .social{float: left; width: 160px; text-align: right;}
.header .social a{display: inline-block; background: #E12021; height: 50px; width: 50px; font-size: 22px; text-align: center; line-height: 49px; color: #fff; border-radius: 50px;}
.header .social a:hover{background: #9B0909;}

.banner{background: url("../siteart/bar-bkg.jpg") center center no-repeat; background-size: cover; padding: 35px 0; color: #fff; box-shadow: 0 6px 26px -1px rgba(0,0,0,.35); border-bottom: 1px solid #fff; background-color:black;}
.banner .container{padding: 0 20px!important;}

/* HOME */

.hero {display: flex;}
.hero .hero-video{flex: 1;}
.hero .hero-video iframe{display: block; height: 400px;}
.hero .hero-inventory{flex: 1; position: relative; background: url("../siteart/hero2.jpg") center center no-repeat; background-size: cover; font-family: teko, sans-serif; font-size: 30px; color: #fff; background-color: black;}
.hero .hero-inventory .hero-inner{position: absolute; bottom: 20px; right: 20px; text-align: right; max-width: 400px;}
.hero .hero-inventory a{display: inline-block; background: #E12021; margin-top: 15px; padding: 12px 50px; font-family: teko, sans-serif; font-size: 20px; text-transform: uppercase;}
.hero .hero-inventory a:hover{background: #9B0909;}

.image-banner{position: relative; margin-bottom: 15px;}
.image-banner img{display: block; margin: 0 auto;}
.image-banner div{position: absolute; background: rgba(225,32,33,0.75); bottom: 0; left: 0; width: 100%; padding: 10px; font-family: teko, sans-serif; font-size: 20px; text-transform: uppercase; color: #fff; z-index: 999;}

.search-wrapper {width: 100%; display: flex; justify-content: center; padding: 2.5em 10%; background: #f3f3f3; border-top: 1px solid #fff;}
.search-wrapper form {width: 100%; display: flex; align-items: center;}
.search-wrapper form input[type="text"]{width: 100%; margin: 5px; padding: 10px; border: 1px solid #ccc;}
.search-wrapper form button[type="submit"]{display: block; margin: 5px; width: 100%; max-width: 250px; background: #E12021; padding: 10px; font-family: teko, sans-serif; font-size: 16px; color: #fff; border: none; transition: all .2s ease-in-out; cursor: pointer;} 
.search-wrapper form button[type="submit"]:hover{background: #9B0909;}

/* NAVIGATION */

#cssmenu{background: #E12021; position: relative; font-size: 0; text-align: center; border-bottom: 1px #fff solid; z-index: 999;}
#cssmenu ul li{display: inline-block; position: relative;}
#cssmenu ul li a{display: block; font-family: teko, sans-serif; font-size: 20px; text-transform: uppercase; color: #fff; padding: 15px 1.5vw;}
#cssmenu ul li:hover > a{background: #9B0909;}
#cssmenu ul li:hover > ul{left: auto;}
#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: #333; width: 250px; font-size: 16px; text-decoration: none; color: #ddd; padding: 15px 20px;}
#cssmenu ul ul li a:hover, #cssmenu ul ul li:hover > a{background: #555; color: #fff;}
#cssmenu ul ul ul{margin-left: 100%; top: -1px;}
#cssmenu #menu-button{display: none;}

/* BODY */

.scrolling-wrap{width: 100%; height: 100px; border-top: 5px #E12021 solid; border-bottom: 5px #E12021 solid; overflow: hidden;}
.scrolling-wrap .scrolling{width: 100%; height: 92px;}

.js-video-button{display: block; margin-bottom: 15px;}
.modal-video{position: fixed; top: 0; left: 0; height: 100%; background-color: rgba(0,0,0,.5); z-index: 1000000; cursor: pointer; opacity: 1; animation-name: modal-video; transition: opacity .3s ease-out}
.modal-video-close{opacity: 0}
.modal-video-close .modal-video-movie-wrap{transform: translate(0,100px)}
.modal-video-body{max-width: 940px; width: 100%; height: 100%; margin: 0 auto; display: table}
.modal-video-inner{display: table-cell; vertical-align: middle; width: 100%; height: 100%}
.modal-video-movie-wrap{height: 0; position: relative; padding-bottom: 56.25%; background-color: #333; animation-name: modal-video-inner; transform: translate(0,0);  transition: transform .3s ease-out}
.modal-video-movie-wrap iframe{position: absolute; top: 0; left: 0; width: 100%; height: 100%}
.modal-video-close-btn{position: absolute; padding: 0; margin: 0; z-index: 2; top: -35px; right: 0; display: inline-block; width: 25px; height: 25px; overflow: hidden; border: none; background: 0 0; cursor: pointer}
.modal-video-close-btn:after{font-family: FontAwesome; content: '\f00d'; font-size: 24px; color: #ccc;}
.modal-video-close-btn:hover:after{color: #fff;}
.modal-video, .modal-video-movie-wrap{animation-timing-function: ease-out; animation-duration: .3s; width: 100%}

@keyframes modal-video{
    from{opacity: 0} to{opacity: 1}
}
@keyframes modal-video-inner{
    from{transform: translate(0,100px)} to{transform: translate(0,0)}
}

/* GOOD ENERGY */
.image-wrapper {width: 100%; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; text-align: center;}
.image-wrapper div {width: calc(50% - 2em); margin: 1em; display: flex; justify-content: center; flex-direction: column;}
.image-wrapper div img:first-child {width: 100%; max-width: 250px; height: auto; margin: 0 auto;}
.image-wrapper div img:nth-child(2) {width: 100%; max-width: 300px; height: auto; margin: 0 auto;}

/* 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; border: 1px solid #ccc;}
#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: #E12021; margin: 5px auto; padding: 10px;  font-family: teko, sans-serif; font-size: 16px; color: #fff; border: none; transition: all .2s ease-in-out; cursor: pointer;} #form input[type="submit"]:hover{background: #9B0909;}
#form textarea{height: 90px; padding: 10px;}

.CaptchaPanel{margin: 0 !important; padding: 0 !important; line-height: normal !important;}
.CaptchaAnswerPanel input{width: 250px; max-width: 100%; padding: 10px; 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: #333; padding: 50px 0 15px; color: #fff; border-top: 10px #E12021 solid;}
.footer .host{border-top: 1px #fff solid; margin-top: 50px; padding-top: 20px;}
.footer .footer-logo{float: left;}
.footer-logo img{max-height: 75px;}
.footer .footer-contact{float: right; font-size: 16px; text-align: right;}
.footer .footer-contact a{font-family: teko, sans-serif; font-size: 30px; color: #eee;}
.footer .footer-contact a:hover{color: #fff;}
.footer .host {color: #aaa;}


/* RESPONSIVE */

@media screen and (max-width: 1200px){
	#cssmenu ul li a{font-size: 19px; padding: 15px 1vw;}
	.search-wrapper {padding: 2.5em 20px;}
}
@media screen and (max-width: 1024px){
	.main{padding: 30px 0;}
	.header .logo img{max-height: 50px;}
	#cssmenu ul li a{font-size: 18px; padding: 15px .75vw;}
	.search-wrapper form button[type="submit"] {max-width: 150px;}
}
@media screen and (max-width: 768px){
	.column8, .column6, .column4{float: none; width: 100%; padding: 0; margin-bottom: 15px;}
	.button, .ghost-button{font-size: 18px;}

	.header .logo{width: 100%; text-align: center; margin-bottom: 10px;}
	.header .logo img{margin: 0 auto;}
	.header .contact{width: 50%; font-size: 14px; text-align: right;}
	.header .contact a{font-size: 22px;}
	.header .social{width: 50%; text-align: left;}
	.header .social a{font-size: 18px; height: 35px; width: 35px; line-height: 34px;}
	
	#cssmenu{width: 100%; text-align: left;}
	#cssmenu ul{width: 100%; display: none;}
	#cssmenu ul li{width: 100%; border: none; border-top: 1px solid #ccc;}
	#cssmenu ul li a{font-size: 16px; padding: 15px 20px; width: 100%;}
	#cssmenu ul ul{display: none; position: relative; left: 0; right: auto; width: 100%; margin: 0;}
	#cssmenu ul ul li{width: 100%; border: none; border-top: 1px solid #ccc;}
	#cssmenu ul ul li a{background: #333; font-size: 16px; color: #fff; padding: 15px 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-family: teko, sans-serif; font-size: 16px; text-transform: uppercase;}
	#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';}
	
	.hero{display: block;}
	.hero .hero-video{flex: none;}
	.hero .hero-video iframe{height: 200px;}
	.hero .hero-inventory{flex: none; border-top: 1px #fff solid;}
	.hero .hero-inventory .hero-inner{position: relative; max-width: 100%; bottom: 0; left: 0; right: 0; padding: 1.5em 10%; text-align: center;}	
	
	.search-wrapper form {flex-wrap: wrap;}
	.search-wrapper form button[type="submit"] {max-width: none;}
	
    #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 15px;}
	.footer .footer-logo{width: 100%; text-align: center; margin-bottom: 10px;}
	.footer .footer-logo img{max-height: 50px; margin: 0 auto;}
	.footer .footer-contact{width: 100%; margin: 15px 0 0; font-size: 14px; text-align: center;}
	.footer .host{margin-top: 25px; text-align: center;}
}
@media screen and (max-width: 480px){
	.banner{padding: 15px 0;}
	.banner h1{font-size: 18px;}
	.img-float{max-width: 150px;}
}