/*
Author: Cole Thorsen

TABLE OF CONTENTS 

MAIN ............. HTML/BODY, tags
GRID ............. Grid framework
HEADER ........... Logo
MAIN_NAV ......... Main navigation
FOOTER ........... Disclaimer, Links
LAYOUT ........... General Layout
HERO ............. Hero styling
CONTENT .......... General Content Styles
FORMS ............ Form styling.
MESSAGES ......... Alert, Info, Success message design.
*/

@font-face {
	font-family: 'montserrat';
	src: url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-light.eot');
	src: url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-light.eot?#iefix') format('embedded-opentype'),
		url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-light.woff2') format('woff2'),
		url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-light.woff') format('woff'),
		url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-light.ttf') format('truetype'),
		url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-light.svg#montserratlight') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'montserrat';
	src: url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-regular.eot');
	src: url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-regular.eot?#iefix') format('embedded-opentype'),
		url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-regular.woff2') format('woff2'),
		url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-regular.woff') format('woff'),
		url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-regular.ttf') format('truetype'),
		url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-regular.svg#montserratregular') format('svg');
	font-weight: bold;
	font-style: normal;
}

@font-face {
    font-family: 'montserratbold';
    src: url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-bold.eot');
    src: url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-bold.eot?#iefix') format('embedded-opentype'),
         url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-bold.woff2') format('woff2'),
         url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-bold.woff') format('woff'),
         url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-bold.ttf') format('truetype'),
         url('//a.iscdn.net/tj-farms/f/montserrat/montserrat-bold.svg#montserratbold') format('svg');
    font-weight: normal;
    font-style: normal;

}

/* $MAIN
____________________________________*/
body, select, input, textarea { 
	color: #555;
	font-size: 17px;
	font-family: 'montserrat', helvetica, arial, sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
h1,
.address_title,
.content_services h2,
.card_header,
.card_title {
	font-family: 'montserratbold', helvetica, arial, sans-serif;
	font-weight: normal !important;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
}
h1 {
	font-size: 30px;
	line-height: .95em;
	text-transform: uppercase;
	color: #0d5230;
}
h2,
h3 {
	color: #0d5230;
	text-transform: uppercase;
	font-weight: bold;
}
h2 {
	font-size: 28px;
	margin: 30px 0 10px;
}
h3 {
	font-size: 22px;
}
a { 
	color: #0d5230;
	text-decoration: none;
	transition: 2s;
}
a:hover { 
	color: #448613; 
}
::-moz-selection { 
	background: #00d5230; 
	color:#fff; 
	text-shadow: none; 
}
::selection { 
	background:#0d5230; 
	color:#fff; 
	text-shadow: none; 
}
a:link { 
	-webkit-tap-highlight-color: #0d5230; 
}
.edit {
	position: fixed;
	right: 0;
	bottom: 0;
	padding: 10px;
	background: #fff;
	z-index:10;
	width: 35px;
	text-align: center;
}

/* $GRID
^div ^columns ^table ^ul ^ol
____________________________________*/
.grid {
	margin: 0 -15px;
	padding: 0;
	list-style: none;
}
.col_1,
.col_1_2,
.col_1_3,
.col_1_4 {
	float: left;
	width: 100%
}
.module {
	margin: 15px;
}

@media only screen and (min-width: 650px) {
	.col_1_4 {
		width: 33.33%;
	}
}

@media only screen and (min-width: 700px) {
	.col_1_3 {
		width: 50%;
	}
}

@media only screen and (min-width: 800px) {
	.col_1_2 {
		width: 50%
	}
	.col_1_3 {
		width: 33.33%;
	}
	.col_1_4 {
		width: 25%;
	}
}

.hide_800 {
	display: none;
}
@media only screen and (min-width: 800px) {
	.hide_800 {
		display: block;
	}
}

@media only screen and (max-width: 800px) {
	.full_width_800 {
		width: 100%;
	}
}

/* $HEADER
^header ^div
____________________________________*/
.header {
	position: relative;
	z-index: 2;
}
	.logo {
		margin: 0;
	}
		.logo a {
			display: block;
			padding: 10px 0;
			width: 100%;
			text-align: center;
		}
		.logo img {
			width: 150px;
		}
	.header_phone {
		text-align: center;
		margin: 10px 0;
	}
		.header_phone_intro {
			display: none;
		}	

@media only screen and (min-width: 750px) {
	.logo a {
		width: auto;
		text-align: left;
		background: #fff;
		padding: 15px 30px 10px;
		float: left;
		margin-left: -30px;
		margin-bottom: -40px;
		-webkit-border-radius: 8px;
		-moz-border-radius: 8px;
		border-radius: 8px;
	}
	.header_phone {
		float: right;
		margin: 17px 0 0;
		font-weight: bold;
	}
		.header_phone_intro {
			display: inline;
		}
		.header_phone_number {
			font-size: 20px;
			margin-left: 6px;
		}
}

@media only screen and (min-width: 1200px) {
	.logo img {
		width: 200px;
	}
}


/* $MAIN_NAV
^nav ^ul ^ol
____________________________________*/
.nav_main {
	background: #fff;
	position: fixed;
	width: 100%;
	font-size: 16px;
	top: 0;
	left: 0;	
	padding: 10px 0;
	z-index: 10;
	display: none;
}
	.nav_main .main {
		font-weight: bold;
		text-transform: uppercase;
	}
	.nav_main a {
		display: block;
		padding: 8px 25px;
	}
		.nav_main .subnav a {
			padding-left: 45px;
		}

.show_nav {
	display: block;
}		


@media only screen and (min-width: 1020px) {
	.grid-button {
		display: none;
	}
	.nav_main {
		position: relative;
		float: right;
		display: block;
		padding: 0;
		width: auto;
		clear: right;
		margin-right: -20px;
	}
		.nav_main > ul {
			float: right;
		}
		.nav_main > ul > li {
			display: inline-block;
		}
			.nav_main .main {
				padding: 20px;
			}
		
		.nav_main .subnav {
			display: none;
			position: absolute;
			background: #fff;
			padding-bottom: 10px;
		}
			.nav_main .subnav a {
				padding: 8px 20px;
			}
		.nav_main li:hover .subnav {
			display: block;
		}
}

/* $GRID_BUTTON
____________________________________*/
.grid-button {
	position: relative;
	float: right;
	margin: 0 1em;
	border: none;
	background: none;
	padding: 27px 40px;
	cursor: pointer;
	user-select: none;
	outline: 0;
	z-index: 11;
	margin-right: -40px;
}

.grid-button span {
	display: block;
}

.grid-button .grid {
	width: 1rem;
	height: 1rem;
	background: #ccc;
	color: #ccc;
	/* Not in use when the colors are specified below */
	transition: 0.3s;
}

.grid-button.close .grid {
	-webkit-transform: rotate3d(0, 0, 1, -45deg) scale3d(0.8, 0.8, 0.8);
	transform: rotate3d(0, 0, 1, -45deg) scale3d(0.8, 0.8, 0.8);
}

.grid-button.rearrange .grid {
	box-shadow: -1.25rem -1.25rem, 0 -1.25rem, 1.25rem -1.25rem, -1.25rem 0, 1.25rem 0, -1.25rem 1.25rem, 0 1.25rem, 1.25rem 1.25rem;
}

.grid-button.rearrange.close .grid {
	box-shadow: 0 -1rem, 0 -2rem, 1rem 0, -2rem 0, 2rem 0, -1rem 0, 0 2rem, 0 1rem;
}

/* $FOOTER
^footer ^div
____________________________________*/
.footer {
	background: #0d5230;
	color: #fff;
	padding: 40px 0;
}
	.footer a {
		color: #fff;
	}
	.sales_rep {
		font-size: 14px;
		line-height: 17px;
		margin: 40px 0 8px;
	}
	.footer .micro a {
		color: #06371f;
	}
	.footer .micro {
		color: #06371f;
		font-size: 12px;
		line-height: 14px;
		text-align: center;
	}

.footer_copyright {
	background: #06371f;
	color: #fff;
	font-size: 14px;
	padding: 17px 0;
	line-height: 15px;
}
	.copyright {
		float: left;
	}
	.authorship {
		float:right;
		margin: -5px 0;
	}
	.authorship img {
		vertical-align:middle;
	}
	.footer_copyright a {
		color: #fff;
	}


/* $FOOTER_NAV
____________________________________*/
.footer_nav a {
	display: block;
	padding: 9px 0;
}
	.footer_nav .subnav {
		display: none;
	}


/* $LAYOUT
____________________________________*/
.container {
	position:relative;
	margin:0px auto;
	max-width: 1170px;
	padding: 0 40px;
}

/* $HERO
____________________________________*/
.hero {
	position:relative;
	background-position: center top;
	background-size: auto 100%;
	text-align: center;
	padding: 25px;
}
	.hero h1 {
		font-size: 30px;
		line-height: .95em;
		text-transform: uppercase;
		margin: 10px 0;
		color: #fff;
	}
	.hero .title_image {
		height: 35px;
	}
	.hero h2 {
		text-transform: none;
		font-size: 20px;
		margin: 10px 0;
		color: #fff;
	}

	h1 {
	
}
.hero .btn {
	margin-left: 5px;
	margin-right: 5px;
}

@media only screen and (min-width: 650px) {
	.hero {
		padding-top: 70px;
		padding-bottom: 70px;
	}
}	

@media only screen and (min-width: 750px) {
	.hero h2 {
		margin-bottom: 20px;
	}
}
@media only screen and (min-width: 850px) {
	.hero {
		padding-top: 130px;
		padding-bottom: 130px;
	}

}

@media only screen and (min-width: 950px) {
	.hero h1 {
		font-size: 46px;
	}
	.hero .title_image {
		height: 43px;
	}
	.hero h2 {
		font-size: 24px;
	}
}	

@media only screen and (min-width: 1000px) {
	.hero {
		padding-top: 190px;
		padding-bottom: 190px;
	}
	.hero h1 {
		margin-bottom: 15px;
	}
	.hero h2 {
		margin-bottom: 45px;
	}
}	

@media only screen and (min-width: 1400px) {
	.hero {
		padding-top: 230px;
		padding-bottom: 230px;
	}
}

.hero_thin {
	padding-top: 60px;
	padding-bottom: 60px;
}

/* $ADDRESS
____________________________________*/
.address {
	line-height: 37px;
}
.address_wrap {
	text-align: center;
}
	.address_main {
		text-align: left;
		display: inline-block;
	}
.contact_wrap {
	max-width: 500px;
	margin: 40px auto 0;
}

/* $CONTENT
____________________________________*/
.content {
	background: url(//a.iscdn.net/tj-farms/i/layout/wheat.png) #fff bottom center no-repeat;
	background-size: 180px 150px
}
.content .container {
	padding-top: 45px;
	padding-bottom: 60px;
}
.content_odd {
	background: #efefef;
}
.content h1,
.content h2,
.content h3,
.content h4,
.content ul,
.content li,
.content p {
	max-width: 970px;
	margin-left: auto;
	margin-right: auto;
}
p {
	line-height: 32px;
	max-width: 970px;
	margin-top: 10px;
	margin-bottom: 10px;
}

/* $CONTENT_SERVICES
____________________________________*/
.content_services {
	background: url('//a.iscdn.net/tj-farms/i/layout/services_bg.jpg') #062e1a center top;
	background-size: auto 100%;
	color: #fff;
}
	.content_services h2 {
		font-size: 24px;
		color: #fff;
		padding: 0 0 20px;
		border-bottom: 4px solid #fff;
		margin: 0 0 30px;
	}

/* $CARDS
____________________________________*/
.card {
	background: #fff;
	color: #555;
	display: block;
	position: relative;
}
	.card_content {
		display: block;
		padding: 20px 25px 35px;
	}
		.card_header {
			display: block;
			color: #0d5230;
			text-transform: uppercase;
			margin: 0 0 10px;
		}
		.card_body {
			line-height: 27px;
			display: block;
			color: #555;
		}
	.card_top {
		position: relative;
		display: block;
	}
	.card_image {
		width: 100%;
	}
	.card_title_wrap {
		position: absolute;
		width: 100%;
		display: block;
		bottom: 0;
		overflow: hidden;
	}
		.card_title {
			display: block;
			font-size: 30px;
			text-transform: uppercase;
			line-height: 28px;
			color: #fff;
			margin: 25px 50px;
			transition: 5s;
		}
			.card_title .title_image {
				height: 30px;
				transition: 5s;
			}
		.card:hover .card_title .title_image {
			transform: scale(1.2) translate(10px, 0px);
		}
		.card:hover .card_title {
			transform: scale(1.2);
		}
			.card_title .title_logo {
				width: 100%;
				display: block;
				text-align: center;
				margin-bottom: 20px;
			}
				.card_title .title_logo img {
					width: 100px;
				}

@media only screen and (min-width: 1200px) {
	.card_title {
			font-size: 36px;
			line-height: 32px;
		}
			.card_title .title_image {
				height: 35px;
			}
			.card_title .title_logo img {
				width: 155px;
			}
}

/* CONTACT_BAR
____________________________________*/
.contact_bar .container {
	text-align: center;
}
.contact_bar h1 {
	font-size: 20px;
}
.contact_bar .btn {
	margin: 0;
}

@media only screen and (min-width: 800px) {
	.contact_bar .container {
		max-width: 970px;
		text-align: left;
		padding-bottom: 45px;
	}
	.contact_bar h1 {
		float: left;
	}
	.contact_bar .btn {
		float: right;
	}
}

@media only screen and (min-width: 900px) {
	.contact_bar h1 {
		font-size: 26px;
	}
}

/* ICON_LIST
____________________________________*/
.icon_list_wrap {
	display: inline-block;
	text-align: left;
}
.icon_list {
	list-style: none;
	padding: 0;
	margin-bottom: -20px;
}
	.icon_list li {
		position: relative;
		margin: 35px 0;
		padding-left: 60px;
		line-height: 23px;
	}
		.icon_list .i {
			display: block;
			position: absolute;
			top: -13px;
			left: 0;
		}

/* $ICONS
____________________________________*/
.i {
	background:url(//a.iscdn.net/tj-farms/i/icons/icons.png) no-repeat;
	background-size: 45px auto;
	width: 45px;
	height: 45px;
	display: inline-block;
}
.i_farm {
	background-position: 0 0;
}
.i_calendar {
	background-position: 0 -45px;
}
.i_farmer {
	background-position: 0 -90px;
}
.i_divided_land {
	background-position: 0 -135px;
}
.i_money {
	background-position: 0 -180px;
}
.i_checklist {
	background-position: 0 -225px;
}
.i_education {
	background-position: 0 -270px;
}
.i_people {
	background-position: 0 -315px;
}

.i_arrow {
	background-position: 0 -367px;
	height: 18px;
	width: 12px;
	margin: 0 0 -2px 8px;
	transition: .5s;
}
.i_arrow_white,
.btn:hover .i_arrow {
	background-position: 0 -387px;
}

/* $MAP
__________________________________*/
.map > div {
	width: 100%;
	height: 300px !important;
}

/* $FORMS
^input ^label
____________________________________*/
label {
	display: block;
}
input[type="text"], input[type="password"], input[type="tel"], input[type="email"], input[type="url"] , input[type="number"], textarea {
	border: 0;
	padding:15px;
	width:100%;
	box-sizing: border-box;
}
input:focus, textarea:focus {
	outline: none;
	box-shadow: 0 0 5px rgba(0,0,0,.2);
}
input[type="checkbox"], input[type="radio"] {
	float: left;
	margin: 2px 5px 0 0;
}
input:invalid, textarea:invalid {
	background: #fff;
}
.specialclass {
	width: 0;
	opacity: 0;
	border: 0;
	padding: 0;
	height: 0;
}

.footer_contact input,
.footer_contact textarea {
	font-size: 14px;
}
.footer_contact textarea {
	height: 120px;
}

/* $BUTTONS
^button ^a ^input ^submit
*
* delete this if you are using buttons.css
*
____________________________________*/
.btn {
	display: inline-block;
	*display: inline;
	/* IE7 inline-block hack */
	*zoom: 1;
	font-size: 18px;
	padding: 15px 25px;
	background: #0d5230;
	line-height: 20px;
	*line-height: 20px;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	margin-top: 10px;
	color: #fff;
	border: 0;
	transition: 2s;
}

.btn:active,
.btn.active {
	background-color: #cccccc;
}
.btn:first-child {
	*margin-left: 0;
}
.btn:hover {
	text-decoration: none;
	background-color: #a0a65c;
	color: #fff;
}
.btn:focus {
	outline: thin dotted #333;
	outline: 5px auto -webkit-focus-ring-color;
	outline-offset: -2px;
}
.btn.active,
.btn:active {
	background-color: #e6e6e6;
	background-image: none;
	outline: 0;
}

.btn_grey {
	background: #a0a0a3;
}

.btn_sm {
	font-size: 16px;
	padding: 10px 15px;
}
.btn_card {
	margin-top: 30px;
}

.btn_white {
	background: #fff;
	color: #0d5230;
}

.btn_lg {
	font-weight: bold;
}

@media only screen and (min-width: 950px) {
	.btn_lg {
		font-size: 20px;
		padding: 18px 25px;
	}
}


/* $MESSAGES
__________________________________*/
.message {
	padding:10px;
	background: #ffdedb;
	border: 1px solid #e02929;
	z-index: 4;
	position: relative;
	clear: both;
}
	.message > i {
		display: block;
		float: left;
		background: url(//a.iscdn.net/tj-farms/i/icons/info-icons.png);
		background-size: 26px auto;
		height: 26px;
		width: 26px;
		margin: -6px 10px 0 0;
	}

.success {
	background: #e9fece;
	border-color: #68b904;
}
	.success > i {
		background-position: 0 53px;
	}
.info {
	background: #ddeefc;
	border-color: #68abdd;
}
	.info > i {
		background-position: 0 26px;
	}

@media only screen and (min-width: 480px) {


}

@media only screen and (min-width: 768px) {

}

@media all and (orientation:portrait) {

}

@media all and (orientation:landscape) {

}

@media screen and (max-device-width: 480px) {
  
  /* html { -webkit-text-size-adjust:none; -ms-text-size-adjust:none; } */
}

@media print {

}