
/* 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 */

*{box-sizing: border-box;}
html, body{font-family: Futura Std, "Trebuchet MS", Arial, sans-serif; font-size: 16px; -webkit-text-size-adjust: none} 
html {scroll-behavior: smooth;}
body {overflow-x: hidden; line-height: 1.8; letter-spacing: .02em;}
::-moz-selection{background: #40a040; color: #fff; text-shadow: none} ::selection{background: #40a040; color: #fff; text-shadow: none;}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  /*margin: 0; /* 2 */
}
button,
input { /* 1 */
  overflow: visible;
}
button,
select { /* 1 */
  text-transform: none;
}
select,
button,
[type="button"],
[type="reset"],
[type="submit"],
[type="date"] {
  -webkit-appearance: button;
}

.marg60 {margin: 60px auto!important;}
.green {color: #40a040;}
.center {text-align: center;}
.align-right {text-align: right;}

.content-width {margin: 0 auto; width: 90%; max-width: 1200px; position: relative;}
.flex-wrapper {display: flex; flex-wrap: wrap; align-items: center;}
.inv-width {margin: 0 auto; width: 95%; max-width: 1400px;}

.column12, .column11, .column10, .column9, .column8, .column7, .column6, .column5, .column4, .column3, .column2, .column1{float: left; padding: 0 25px 0 0;} .column12{width: 100%; padding: 0; box-sizing: border-box;} .column11{width: 91.6666%;} .column10{width: 83.3333%;} .column9{width: 75%;} .column8{width: 66.6666%; box-sizing: border-box;} .column7{width: 58.3333%; position: relative; box-sizing: border-box;} .column6{width: 50%; position: relative; box-sizing: border-box;} .column5{width: 41.6666%; box-sizing: border-box;} .column4{width: 33.3333%; box-sizing: border-box;} .column3{width: 25%; box-sizing: border-box; position: relative;} .column2{width: 16.6666%; box-sizing: border-box;} .column1{width: 8.3333%;} .last{padding: 0;} .cf{zoom: 1;} .cf:before, .cf:after{content: ""; display: table;} .cf:after{clear: both;} .clear{clear: both;} 

a {text-decoration: none; color: inherit; transition: all .2s ease-in-out;} a:hover{color: inherit;}
a#cta-btn button i {margin-left: 10px;}
a#cta-btn button {margin: 2% 0; color: #fff; background: #78b630; padding: 1.25em 3%; cursor: pointer; font-size: 18px; font-weight: 600; transition: 0.2s ease-in; text-align: center; width: 90%; max-width: 555px; border: 1px solid transparent; letter-spacing: 1px;}
a#cta-btn button:hover, #form input[type="submit"]:hover {background: #40a040!important; color: #fff; border: 1px solid transparent;}
#form input[type="submit"] {color: #444; background: none; padding: 1em 3%; cursor: pointer; font-weight: 600; transition: 0.2s ease-in; width: 100%; max-width: 300px; line-height: 1.2; border: 1px solid #444; text-align: center;}

/* HEADER */
.header, .inv-header {width: 100%; position: relative;}
.header .column12, .inv-header .column12 {padding: 4em 7%;}
.header h3, .inv-header h3 {line-height: 1.5;}
#menu-button, .mobile-display {display: none;}
img.main-logo {width: 100%; max-width: 333px; height: auto;}
a#hdr-phone {color: #000; font-weight: 700; font-size: 20px;}
a#hdr-phone:hover {color: #444;}

/* ALL OTHER STYLES */
.hero-section {position: relative; z-index: 1; background-color: transparent;}
.hero-section:before {content: ''; display: block; position: absolute; z-index: 3; bottom: 0; width: 100%; height: 100%; background: linear-gradient(transparent, rgba(0,0,0,.75)); }
.hero-txt {position: absolute; z-index: 4; color: #fff; text-transform: uppercase; bottom: 10%; left: 7%;}
.hero-txt h1 {font-weight: 700; font-size: 60px; line-height: 1.2; letter-spacing: 1px;}
.hero-txt h1 span {font-style: italic; font-size: 50px; display: block; font-weight: 500;}
.hero-txt a#hero-cta {font-size: 24px; letter-spacing: 2px; display: block; margin-top: .5em; font-weight: 500;}
.hero-txt a#hero-cta:hover {color: #ddd;}

.content-wrapper h2 {font-size: 40px; line-height: 1.2; margin-bottom: 1em; font-weight: 600;}
.content-wrapper h2 span {display: block; font-size: 24px; font-weight: 500; margin-bottom: .25em; color: #444;}
.content-wrapper h5 {margin-bottom: .5em; font-size: 22px; letter-spacing: 2px; font-weight: 700;}

.welcome-section {padding: 6.5em 3%; display: flex; justify-content: center;}
.welcome-section p {font-weight: 500; font-size: 18px;}
.welcome-section a, .contact-info a {color: #348334; text-decoration: underline; font-weight: 500;}
.welcome-section a:hover, .contact-info a:hover {text-decoration: none;}
.welcome-section .column9 {padding-right: 10%;}

/* zoom buttons */
.zoom-wrapper {display: flex; flex-wrap: wrap; align-items: center; justify-content: center; border-top: 2px solid #fff; background: url("/siteart/balefield-bg1.jpg"); background-position: center; background-size: cover;}
.zoom-container {width: 25%; height: 375px;	position: relative;	overflow: hidden; box-sizing: border-box; border-right: 2px solid #fff;}
.zoom-container:nth-child(4) {border-right: none;}
.zoom-container img {width: 100%; height: auto; transition: all .5s ease; background: rgba(0, 0, 0, .70);}
.zoom-container:hover img {transform:scale(1.25); background: rgba(0, 0, 0, .6);}
.zoom-container .zoom-caption {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	display: inline-flex; 
	justify-content: center; 
	flex-direction: column;
	align-items: center;
    transition: all .5s ease;
	margin: 0 auto;
	height: 100%;
	background: rgba(64, 160, 64, .75);			
	/*text-shadow: 1px 1px 3px #222;*/
}
.zoom-container .zoom-caption:hover {background: rgba(120, 182, 46, .75);}
.zoom-container .zoom-caption h3 {font-size: 30px; letter-spacing: 2px; font-weight: 600; color: #fff;}
.zoom-container .zoom-caption p {font-size: 18px; color: #fff; display: block; font-weight: 500;}
.zoom-container .zoom-caption i {position: absolute; top: 0; right: 0; background: #444; color: #fff; padding: .75em 1em; font-size: 30px;}
.zoom-container .zoom-caption:hover i {color: #aaa; transition: all .5s ease;}

.page-title {position: relative; padding: 6em 12%; background: #444;}
.page-title h1 {text-transform: uppercase; font-size: 55px; line-height: 1.2; letter-spacing: 1px; color: #fff; font-weight: 700;}
.page-title p {font-size: 18px; color: #fff; font-weight: 500; line-height: 1.6; margin: 1em 0!important;}

/* scrolling inventory */
.scrolling-wrap {width:100%; height:100px; overflow:hidden; border-top: 7px solid #78b630; border-bottom: 7px solid #78b630;}
.scrolling {width:100%; height:92px;}

.contact-info {width: 100%; display: flex; justify-content: center; flex-wrap: wrap; text-align: center; margin-top: 4em;}
.contact-info div {width: calc(50% - 1em); margin: .5em; padding: 1em; border: 1px solid #aaa;}
.contact-info iframe {margin-top: 2em;}

/*  contact form + captcha
------------------------------*/
#form {padding: 0; width: 100%; margin: 0 auto; max-width: 1500px; display: flex; flex-wrap: wrap; align-items: flex-end;}
#form .form-row {display: block; text-align: left!important;}
#form .form-row label{font-weight: 600; color: #111;}
#form .form-row label span{font-weight: 700; font-size: 20px; vertical-align: top;}
#form input[type="submit"] {margin: 0 auto; display: block; background: none;}
#form input[type="text"], #form input[type="email"], #form select, #form textarea, #form input[type="date"] {width: 100%; margin: 5px 0 20px; padding: 10px; border: 1px solid #ccc; background: #f4f4f4; font-weight: 500; color: #000; height: 50px;}
#form textarea {height: 111px;}
#form h4 {margin: 1.5em 0 .75em;}

.CaptchaPanel{line-height: normal !important; width: 100%;}
.CaptchaAnswerPanel input{width: 100%; max-width: 350px; padding: 10px; margin: 5px 0; background: #f4f4f4; border: 1px solid #ccc; color: #000;}
.CaptchaMessagePanel{padding: 0 !important; margin: 0 !important; font-weight: normal !important; font-size: 12px; color: #444;}
.CaptchaImage {width: auto!important; padding: 0!important;}
.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: #333;} .CaptchaWhatsThisPanel a:hover{text-decoration: none;}

/*  footer
------------------------------*/
.footer {}
.manu-section {border-top: 2px solid #fff;}
.manu-section h4 {width: 100%; background: #444; color: #fff; font-weight: 400; letter-spacing: 2px; font-size: 28px; padding: 2em 7%; position: relative; line-height: 1.3;}
.manu-section h4:after {content: ''; position: absolute; z-index: 2; border: 25px solid transparent; border-top: 0; border-bottom-color: #444; right: 10%; bottom: -25px; transform: rotate(180deg);}
.logos-wrapper {width: 90%; max-width: 1300px; margin: 0 auto; display: flex; justify-content: center; flex-wrap: wrap; align-items: center; padding: 4em 0;}
.logos-wrapper a {width: calc(25% - 1em); margin: .5em; text-align: center;}
.site-host {width: 100%; background: #444; font-size: 12px; color: #999; text-transform: uppercase; line-height: 20px; padding: 3em 7%;}
.site-host a {color: #999!important;}
.site-host a:hover {color: #aaa!important; transition: all 0.3s ease-in-out;}

/* MEDIA QUERIES (RESPONSIVE) */
@media screen and (max-width: 1500px) {
	.hero-txt h1 {font-size: 50px;}
	.hero-txt h1 span {font-size: 45px;}
	.hero-txt a#hero-cta {font-size: 22px;}
}

@media screen and (max-width: 1300px) {		
	.hero-txt h1 {font-size: 45px;}
	.hero-txt h1 span {font-size: 40px;}
	.hero-txt a#hero-cta {font-size: 20px;}

	.zoom-container {width: 50%; height: 300px; border-right: none;}
	.zoom-container:nth-child(1), .zoom-container:nth-child(3) {border-right: 2px solid #fff;}
	.zoom-container:nth-child(1), .zoom-container:nth-child(2) {border-bottom: 2px solid #fff;}
}
	
@media screen and (max-width: 1150px){
	.mobile-display {display: block;}
	.align-right {text-align: center;}
	.header .column12, .inv-header .column12 {text-align: center; padding: 2em 10%;}
	a#hdr-phone {font-size: 28px;}
	
	.column1, .column2, .column3, .column4, .column5, .column6, .column7, .column8, .column9, .column10, .column11, .column12 {margin: 0 auto!important; width: 100%!important; float: none; padding: 0;}
	
	.page-title h1 {font-size: 50px;}
	.hero-txt h1 {font-size: 40px;}
	.hero-txt h1 span {font-size: 35px;}
	.hero-txt a#hero-cta {font-size: 18px;}
	
	.welcome-section {flex-direction: column; padding: 4.5em 7%;}
	.welcome-section .column9 {padding-right: 0; padding-bottom: 3em;}
	.logos-wrapper a {width: calc(33.33% - 1em);}
}

@media screen and (max-width: 767px) {	
	.pad60 {padding: 40px 5%!important;}	
	.logos-wrapper a {width: calc(50% - 1em);}
	
	.hero-section:before {display: none;}
	.hero-txt {position: relative; left: 0; bottom: 0; background: #444; padding: 3em 12%;}
	
	.zoom-container {width: 100%; height: 225px}
	.zoom-container .zoom-caption i {font-size: 24px;}
	.zoom-container:nth-child(1), .zoom-container:nth-child(3) {border-right: none;}
	.zoom-container:nth-child(1), .zoom-container:nth-child(2), .zoom-container:nth-child(3) {border-bottom: 2px solid #fff;}
	
	.manu-section h4 {padding: 1.75em 12%; font-size: 26px;}
	
	.content-wrapper h5 {font-size: 18px;}
	
	.contact-info {flex-direction: column;}
	.contact-info div {width: calc(100% - 1em);}
}

@media screen and (max-width: 480px) {	
	.header .column12, .inv-header .column12 {padding: 1.75em 10%;}
	img.main-logo {max-width: 300px;}
	a#cta-btn button {font-size: 15px; padding: 1em 3%;}
	a#hdr-phone {font-size: 22px;}
}