/*
Theme Name: Greene's Rolloff Service
Author: Tomato Fish Marketing
Author URI: http://www.tomatofishmarketing.com
Description: A custom starter WordPress theme for Greene's Rolloff.
Version: 1.0
*/

/* =Reset
-------------------------------------------------------------- */
*, *:before, *:after {
  -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
 }
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, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}
html {
	background: #343536;
	font-size: 62.5%; /* Corrects text resizing oddly in IE6/7 when body font-size is set using em units http://clagnut.com/blog/348/#c790 */
	overflow-y: scroll; /* Keeps page centred in all browsers regardless of content height */
	-webkit-text-size-adjust: 100%; /* Prevents iOS text size adjust after orientation change, without disabling user zoom */
	-ms-text-size-adjust: 100%; /* www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/ */
}
body {
	background: #343536;
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 400;
	width: auto;
	-webkit-backface-visibility: hidden;
	-webkit-font-smoothing: antialiased;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
nav,
section {
	display: block;
}
ol, ul {
	list-style: none;
}
table { /* tables still need 'cellspacing="0"' in the markup */
	border-collapse: separate;
	border-spacing: 0;
}
caption, th, td {
	font-weight: normal;
	text-align: left;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
}
blockquote, q {
	quotes: "" "";
}
a:focus {
	outline: thin dotted;
}
a:hover,
a:active { /* Improves readability when focused and also mouse hovered in all browsers people.opera.com/patrickl/experiments/keyboard/test */
	outline: 0;
}
a img {
	border: 0;
}




/* =Global
----------------------------------------------- */
body,
button,
input,
select,
textarea {
	color: #343536;
	font-family: sans-serif;
	font-size: 16px;
	line-height: 1.5;
}

/* Headings */
h1,h2,h3,h4,h5,h6 {
	clear: both;
}
hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

/* Text elements */
ul, ol {
	margin: 0 0 1.5em 3em;
}
ul {
	list-style: disc;
}
ol {
	list-style: decimal;
}
li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}
ul li, ol li {
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 400;
	font-size: 1em;
	color: #343536;
}
dt {
	font-weight: bold;
}
dd {
	margin: 0 1.5em 1.5em;
}
b, strong {
	font-weight: bold;
}
dfn, cite, em, i {
	font-style: italic;
}
blockquote {
	margin: 0 1.5em;
}
address {
	margin: 0 0 1.5em;
}
pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	padding: 1.6em;
	overflow: auto;
	max-width: 100%;
}
code, kbd, tt, var {
	font: 15px Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}
abbr, acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}
mark, ins {
	background: #fff9c0;
	text-decoration: none;
}
sup,
sub {
	font-size: 75%;
	height: 0;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup {
	bottom: 1ex;
}
sub {
	top: .5ex;
}
small {
	font-size: 75%;
}
big {
	font-size: 125%;
}
figure {
	margin: 0;
}
table {
	margin: 0 0 1.5em;
	width: 100%;
}
th {
	font-weight: bold;
}
img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
	height: auto;
	vertical-align: middle;
}
img,
object,
embed {
  max-width: 100%;
}
button,
input,
select,
textarea {
	font-size: 100%; /* Corrects font size not being inherited in all browsers */
	margin: 0; /* Addresses margins set differently in IE6/7, F3/4, S5, Chrome */
	vertical-align: baseline; /* Improves appearance and consistency in all browsers */
	*vertical-align: middle; /* Improves appearance and consistency in all browsers */
}
button,
input {
	line-height: normal; /* Addresses FF3/4 setting line-height using !important in the UA stylesheet */
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	display: inline-block;
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 800;
	font-size: 1em;
	color: #fff;
	letter-spacing: 2px;
	line-height: 1;
	text-transform: uppercase;
	padding: 1em 3em;
	background: #e55757;
	border-radius: 40px;
	outline: none;
	border: none;
	-webkit-transition: 0.3s ease;
	-moz-transition: 0.3s ease;
	-o-transition: 0.3s ease;
	transition: 0.3s ease;
}
button:hover,
html input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	background: #c04040;
	outline: none;
}
button:focus,
html input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
button:active,
html input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
	border: none;
	box-shadow: none;
}
input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box; /* Addresses box sizing set to content-box in IE8/9 */
	padding: 0; /* Addresses excess padding in IE8/9 */
}
input[type="search"] {
	-webkit-appearance: textfield; /* Addresses appearance set to searchfield in S5, Chrome */
	-webkit-box-sizing: content-box; /* Addresses box sizing set to border-box in S5, Chrome (include -moz to future-proof) */
	-moz-box-sizing:    content-box;
	box-sizing:         content-box;
}
input[type="search"]::-webkit-search-decoration { /* Corrects inner padding displayed oddly in S5, Chrome on OSX */
	-webkit-appearance: none;
}
button::-moz-focus-inner,
input::-moz-focus-inner { /* Corrects inner padding and border displayed oddly in FF3/4 www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ */
	border: 0;
	padding: 0;
}
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
textarea {
	color: #666;
	border: 1px solid #bcbec0;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
	color: #111;
	outline: none;
}
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"] {
	padding: 10px !important;
}
textarea {
	overflow: auto; /* Removes default vertical scrollbar in IE6/7/8/9 */
	padding-left: 3px;
	vertical-align: top; /* Improves readability and alignment in all browsers */
	width: 98%;
}
select {
	-webkit-appearance: none;
	padding: 10px !important;
	border: none;
	border-radius: 0;
	background: url('img/select-arrow.png') no-repeat 98% center #fff;
	background-size: 10px;
	border: 1px solid #bcbec0;
} 
.gform_wrapper li.hidden_label input {
	margin-top: 5px !important; 
}
.gform_wrapper .field_sublabel_hidden_label .ginput_complex.ginput_container input[type=text], .gform_wrapper .field_sublabel_hidden_label .ginput_complex.ginput_container select {
	margin-bottom: 0 !important; 
}

/* Alignment */
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}
.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}
.aligncenter {
	clear: both;
	display: block;
	margin: 0 auto;
}

/* Text meant only for screen readers */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
}

.screen-reader-text:hover,
.screen-reader-text:active,
.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar */
}

/* Clearing */
/* .clear:before,
.clear:after,
[class*="content"]:before,
[class*="content"]:after,
[class*="site"]:before,
[class*="site"]:after {
	content: '';
	display: table;
} */

.clear:after,
[class*="content"]:after,
[class*="site"]:after {
	clear: both;
}
.site {
	background: #fff;
}


/*********************************
	Global Styles
*********************************/
p {
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 400;
	font-size: 1.15em;
	color: #343536;
	line-height: 1.5;
	margin-bottom: 1.5em;
}
p.page-intro {
	font-weight: 300;
	font-size: 1.5em;
}
a, a:visited {
	color: #109358;
	outline: none;
	text-decoration: none;
	-webkit-transition: 0.3s ease;
	-moz-transition: 0.3s ease;
	-o-transition: 0.3s ease;
	transition: 0.3s ease;
}
a:hover, a:focus, a:active {
	color: #4eb281;
	outline: none;
}
a.button {
	display: inline-block;
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 800;
	font-size: 1em;
	color: #fff;
	letter-spacing: 2px;
	line-height: 1;
	text-transform: uppercase;
	padding: 1em 3em;
	background: #109358;
	border-radius: 40px;
	outline: none;
	-webkit-transition: 0.3s ease;
	-moz-transition: 0.3s ease;
	-o-transition: 0.3s ease;
	transition: 0.3s ease;
}
a.button:hover, a.button:focus, a.button:active {
	background: #4eb281;
	outline: none;
}
a.button.red {
	background: #e55757;
}
a.button.red:hover, a.button.red:focus, a.button.red:active {
	background: #c04040;
}
a.text-link {
	display: inline-block;
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 800;
	font-size: 1em;
	color: #109358;
	text-transform: uppercase;
}
h1 {
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 800;
	font-size: 4em;
	color: #343536;
	line-height: 0.95;
	margin-bottom: 0.5em;
}
h1 a, h1 a:visited {
	color: #343536;
}
h2 {
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 800;
	font-size: 2.625em;
	color: #109358;
	line-height: 1.25;
	margin-bottom: 0.5em;
}
h2 a, h2 a:visited {
	color: #109358;
}
h3 {
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 800;
	font-size: 2.375em;
	color: #109358;
	letter-spacing: 2px;
	line-height: 1.25;
	text-transform: uppercase;
	margin-bottom: 0.5em;
}
h3 a, h3 a:visited {
	color: #109358;
}
h4 {
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 400;
	font-size: 1.8125em;
	color: #343536;
	line-height: 1.25;
	letter-spacing: 2px;
	margin-bottom: 0.5em;
}
h4 a, h4 a:visited {
	color: #343536;
}
h5 {
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 600;
	font-size: 1.5em;
	color: #109358;
	line-height: 1.25;
	letter-spacing: 1px;
	margin-bottom: 0.5em;
}
h5 a, h5 a:visited {
	color: #343536;
}
h6 {
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 900;
	font-size: 1em;
	color: #343536;
	line-height: 1.25;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	margin-bottom: 0.5em;
}
h6 a, h6 a:visited {
	color: #343536;
}
h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
	color: #109358;
}
.two-column {
	-webkit-column-count: 2;
     -moz-column-count: 2;
          column-count: 2;
           column-gap: 60px;
}
	
/*********************************
	Header Styles
*********************************/
.site-header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 99;
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	transition: 0.2s ease;
}
.site-header.scrolled {
	background: #fff;
	box-shadow: 0 4px 8px rgba(0,0,0,0.05);
}
.site-header .logo, .site-header nav {
	display: inline-block;
}
.site-header .logo img {
	max-width: 375px;
    padding: 5px 0;
    -webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	transition: 0.2s ease;
}
.site-header.scrolled .logo img {
	max-width: 240px;
}
nav.main-nav {
	float: right;
}
nav.main-nav ul {
	text-align: right;
	margin: 0;
}
nav.main-nav ul li {
	list-style: none;
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin: 2.75em 0 0 -4px;
}
.site-header.scrolled nav.main-nav ul li {
	margin-top: 2em;
}
nav.main-nav ul li a {
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 400;
	font-size: 1.125em;
	color: #343536;
	padding: 2.51em 1.25em 1.5em;
	position: relative;
}
.site-header.scrolled nav.main-nav ul li a {
	padding: 1.85em 1.25em 2.1em;
}
nav.main-nav ul li a:before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,0);
	height: 4px;
	width: 0;
	background: #e55757;
	-webkit-transition: 0.3s ease;
	-moz-transition: 0.3s ease;
	-o-transition: 0.3s ease;
	transition: 0.3s ease;
}
nav.main-nav ul li:hover a:before, nav.main-nav ul li.current-menu-item a:before, nav.main-nav ul li.current-menu-parent a:before {
	width: 100%;
}
nav.main-nav ul li ul.sub-menu {
	max-height: 0;
	overflow: hidden;
	position: absolute;
	margin: 1em 0 0 0;
	padding: 0;
	text-align: left;
	z-index: 99;
	left: 50%;
	transform: translate(-50%,0);
}
nav.main-nav ul li ul.sub-menu:before {
	content: '';
	position: absolute;
	top: -6px;
	left: 50%;
	transform: translate(-50%,0);
	width: 0; 
	height: 0; 
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-bottom: 8px solid #109358;
}
nav.main-nav ul li:hover ul.sub-menu {
	display: block;
	max-height: 1000px;
	min-width: 12em;
	background: #109358;
	padding: 0.25em 0.75em;
	text-align: center;
	overflow: visible;
	border-radius: 10px;
}
nav.main-nav ul li ul.sub-menu li {
	margin: 0;
	display: block;
	width: 100%;
	line-height: 1;
	margin: 0.75em 0 !important;
	padding-bottom: 0.75em;
	border-bottom: 1px solid rgba(255,255,255,0.5);
}
nav.main-nav ul li ul.sub-menu li:last-child {
	margin-bottom: 0;
	border-bottom: 0;
}
nav.main-nav ul li ul.sub-menu li:after, nav.main-nav ul li ul.sub-menu li a:before {
	display: none;
}
nav.main-nav ul li ul.sub-menu li a, nav.main-nav ul li.current-menu-item ul li a {
	font-size: 1em; 
	color: #fff;
	padding: 0 !important;
}
nav.main-nav ul li ul.sub-menu li a:hover, nav.main-nav ul li.current-menu-item ul li a:hover, nav.main-nav ul li ul li.current-menu-item a {
	opacity: 0.8;
}
.nav-button {
	display: none;
	position: relative;
	float: right;
	height: 40px;
	width: 40px;
	margin: 1.75em 0 0;
	cursor: pointer;
	z-index: 9999;
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	transition: 0.2s ease;
}
.nav-button .first, .nav-button .second, .nav-button .third {
	position: absolute;
	right: 7px;
	width: 100%;
	height: 2px;
	background: #4eb281;
	border-radius: 4px;
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	transition: 0.2s ease;
}
.nav-button .first {
	top: 11px;
}
.nav-button .second {
	top: 19px;
}
.nav-button .third {
	top: 27px;
	width: 18px;
}
.nav-button .first, .nav-button .second, .nav-button:hover .third {
	width: 24px;
}
.nav-button.active .first {
	transform: rotate(-45deg);
	transform-origin: top right;
	right: 11px;
}
.nav-button.active .second {
	transform: rotate(45deg);
}
.nav-button.active .third {
	width: 0;
}
.pull-tab {
	position: fixed;
	top: 240px;
	right: -300px;
	cursor: pointer;
	z-index: 98;
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	transition: 0.2s ease;
}
.pull-tab.open {
	right: 0;
}
.pull-tab img {
	max-width: 40px;
	padding: 2px 5px 2px 2px;
	background: #fff;
	border-radius: 50% 0 0 50%;
	float: left;
	margin-top: 1em;
	box-shadow: 0 0 8px rgba(0,0,0,0.15);
}
.pull-tab.open img {
	box-shadow: none;
}
.pull-tab img.close {
	max-width: 15px;
	position: absolute;
	top: 10px;
	right: 5px;
	background: none;
	border-radius: 0;
	margin: 0;
	box-shadow: none;
	float: none;
	z-index: 2;
}
.pull-tab-info {
	position: relative;
	background: #fff;
	padding: 2em 2em 0.5em;
	float: left;
	width: 300px;
	border-radius: 10px 0 0 10px;
	z-index: 1;
}
.pull-tab.open .pull-tab-info {
	opacity: 1;
}
.body-wrap {
	position: relative;
	background: #fff;
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	transition: 0.2s ease;
	z-index: 9;
	overflow: hidden;
}
.body-wrap.open {
	transform: translate(-85%,0);
}
.mobile-menu {
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100vh;
	padding-left: 20%;
	padding-top: 3em;
	background: #2b2c2d;
	z-index: 8;
	text-align: center;
}
nav.mobile-nav ul {
	margin: 0 0 2em;
}
nav.mobile-nav ul li {
	list-style: none;
	position: relative;
	display: block;
	line-height: 1.25;
	margin-bottom: 0.75em;
}
nav.mobile-nav ul li a {
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 800;
	font-size: 1em;
	color: #fff;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}
nav.mobile-nav ul li a:hover {
	opacity: 0.8;
}
nav.mobile-nav ul li ul {
	margin-top: 1em;
	margin-bottom: 0.5em;
}
nav.mobile-nav ul li ul li a {
	font-weight: 600;
	text-transform: none;
}


/*********************************
	Banner Styles
*********************************/
.main-banner {
	position: relative;
	padding-top: 12em;
}
.home-banner {
	padding-top: 10em;
	padding-bottom: 8em;
	text-align: center;
}
.home-banner h1 {
	max-width: 50%;
	margin: 0 auto 0.5em;
}
.home-banner.has-image {
	padding-top: 15em;
	padding-bottom: 10em;
	text-align: left;
}
.home-banner.has-image h1 {
	margin: 0 0 0.5em;
}
.page-banner, .faqs-banner, .blog-banner, .post-banner, .error-banner {
	background: #f4f4f4;
}
.page-banner h1, .form-banner h1, .faqs-banner h1, .blog-banner h1, .error-banner h1 {
	font-size: 3.875em;
	text-transform: lowercase;
}
#breadcrumbs {
	font-size: 0.75em;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 0.75em;
}
#breadcrumbs span {
	color: #bcbec0;
	font-weight: 800;
}	
#breadcrumbs a {
	color: #bcbec0;
	font-weight: 400;
}
.form-content-area {
	display: flex;
	flex-wrap: nowrap;
}
.form-banner {
	width: 36.4%;
	background: #fff;
	padding-left: 6em;
	padding-right: 2em;
	padding-bottom: 4em;
}

/*********************************
	Page Content Styles
*********************************/
.site-content {
	padding: 4em 0;
}
.form-content {
	width: 63.6%;
	background: #f4f4f4;
	padding: 10em 6em;
}
.accordion ul {
	margin: 0;
}
.accordion ul li {
	position: relative;
	list-style: none;
	display: block;
}
.accordion ul li.first .accordion-hide {
	display: block;
}
.accordion ul li .accordion-hide {
	display: none;
}
.faq h2 { 
	font-size: 1.375em;
	color: #fff;
	background: #109358;
	width: 100%;
	padding: 15px 25px;
	cursor: pointer;
}
.faq:nth-child(2n+2) h2 {
	background: #4eb281;
}
.accordion-title img {
	float: right;
	max-width: 26px;
	margin-top: 8px;
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	transition: 0.2s ease;
}
.accordion-title.active img {
	transform: rotate(180deg);
}
.answer {
	padding: 1em 30px 1.5em;
}
.blog-posts {
	display: flex;
	flex-wrap: wrap;
}
.blog-post {
	float: left;
	width: 48%;
	padding: 4em;
	margin: 0 1% 2em;
	background: #fff;
	box-shadow: 0 0 20px rgba(0,0,0,0.05);
}
#nav-below {
	padding: 1em 1em 0;
}
.nav-previous, .nav-next {
	float: left;
	width: 50%;
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 900;
	font-size: 0.75em;
	line-height: 1.25;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	margin-bottom: 0.5em;
}
.nav-next {
	text-align: right;
}
.error-content {
	text-align: center;
}

/*********************************
	Module Styles
*********************************/
.module {
	position: relative;
	padding: 4em 0;
}
.steps {
	padding: 4em 0 6em;
	background: #fff;
	text-align: center;
}
.steps h4 {
	margin-bottom: 1.5em;
}
.steps ul {
	margin: 0;
	display: flex;
	flex-wrap: nowrap;
}
.steps ul li {
	list-style: none;
	display: inline-block;
	position: relative;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 0 20px rgba(0,0,0,0.05);
	width: 28.33%;
	margin: 0 2.5%;
	padding: 3em 2em 2em;
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	transition: 0.2s ease;
}
.steps ul li:hover {
	transform: scale(1.05);
}
.steps ul li h1 {
	position: absolute;
	top: -22px;
	left: 50%;
	transform: translate(-50%,0);
	color: #fff;
	background: #e55757;
	border-radius: 50%;
	padding: 10px 15px;
	font-size: 1.875em;
}
.steps ul li img {
	display: inline-block;
	max-height: 100px;
	margin-bottom: 1em;
}
.steps ul li p {
	font-size: 1.125em;
}
.cta {
	text-align: center;
}
.dark-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(52,53,54,0.8);
	z-index: 1;
}
.cta .cta-content {
	position: relative;
	z-index: 2;
	max-width: 800px;
	margin: 0 auto;
}
.cta .cta-content p {
	font-weight: 900;
	font-size: 2.625em;
	color: #343536;
	line-height: 1.25;
	margin-bottom: 0.75em;
	letter-spacing: 1px;
}
.cta .cta-content.white p {
	color: #fff;
}
.image-content img {
	position: relative;
	float: left;
	width: 50%;
	z-index: 2;
	margin-top: 3em;
}
.image-content .block-content {
	position: relative;
	float: left;
	width: 70%;
	margin-left: -20%;
	background: #109358;
	padding: 6em 4em 4.5em 25%;
	z-index: 1;
}
.image-content .block-content h3, .image-content .block-content p {
	color: #fff;
}
.testimonials {
	background: #f4f4f4;
	text-align: center;
}
.testimonials h5 {
	margin-bottom: 0.25em;
}
.testimonials ul {
	margin: 0;
}
.testimonials ul li {
	list-style: none;
	position: relative;
	display: inline-block !important;
	vertical-align: middle;
	padding: 0 6em;
}
.testimonials ul li p {
	font-size: 1.75em;
}
.split {
	padding: 0;
}
.split-block {
	display: flex;
	background: #f4f4f4;
}
.block-image, .split-block .block-content {
	width: 50%;
}
.split-block .block-content {
	padding: 6em; 
}
.split-block:nth-child(2n+2) {
	flex-flow: row-reverse;
}
.content-slider {
	padding: 6em 0;
}
.content-slider h3 {
	text-align: center;
	margin-bottom: 1em;
}
.content-slide img {
	float: left;
	width: 40%; 
	margin: 0 5%;
}
.slide-content {
	padding: 0 5em;
}
.content-slide ul {
	max-width: 500px;
	text-align: left;
	margin: 0 auto;
}
.location-content {
	position: relative;
	z-index: 2;
	padding-top: 6em;
}
.location-content.white p, .location-content.white h1, .location-content.white h2, .location-content.white h3,
.location-content.white h4, .location-content.white h5, .location-content.white h6 {
	color: #fff;
}
.location-map {
	position: relative;
	z-index: 2;
}

/*********************************
	Footer Styles
*********************************/
.site-footer {
	position: relative;
	background: #343536;
}
.site-footer p {
	color: #bcbec0;
}
.footer-sec-wrap {
	display: flex;
	flex-wrap: wrap;
}
.footer-sec {
	width: 50%;
	padding: 2em 0;
}
.footer-contact {
	padding-right: 2.5em;
}
.footer-contact .logo img {
	max-width: 240px;
}
.footer-contact-info {
	padding-top: 1em;
	padding-left: 3.25em;
}
.footer-contact p.contact-details a {
	font-weight: 900;
}
.footer-contact p.contact-details a.phone-number {
	font-size: 1.5em;
	letter-spacing: 1px;
}
.footer-contact p.copyright {
	font-size: 0.8em;
}
.footer-contact p.copyright a {
	font-weight: 400;
	color: #bcbec0;
}
.footer-links {
	text-align: center;
	padding: 4em 2em 2em;
}
.footer-bg {
	position: absolute;
	top: 0;
	right: 0;
	width: 50%;
	height: 100%;
	background: #2b2c2d;
}
nav.footer-nav ul {
	margin: 0 0 2em;
}
nav.footer-nav ul li {
	list-style: none;
	position: relative;
	display: block;
	line-height: 1.25;
	margin-bottom: 0.75em;
}
nav.footer-nav ul li a {
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 800;
	font-size: 1em;
	color: #fff;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}
nav.footer-nav ul li a:hover {
	opacity: 0.8;
}
ul.social {
	margin: 0;
}
ul.social li {
	position: relative;
	list-style: none;
	display: inline-block;
}
ul.social li {
	padding: 1px 6px 1px;
	background: #109358;
	border-radius: 50%;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
ul.social li:hover {
	background: #4eb281;
}
ul.social li img {
	max-width: 15px;
}
ul.footer-accs {
	margin: 2em 0 0;
	text-align: center;
}
ul.footer-accs li {
	list-style: none;
	position: relative;
	display: inline-block;
	max-width: 150px;
	vertical-align: middle;
}
.footer-social-feed {
	padding-top: 4em;
	padding-left: 3.25em;
}

/***************************************************************************************************
								Responsive Styles
***************************************************************************************************/
@media all and (max-width: 1276px) {
	.site-header, .home-banner, .page-banner, .faqs-banner, .blog-banner, .post-banner, .error-banner, .blog-posts,
	.locations, .cta, .accordion, .image-content, .content, .testimonials, .site-footer { padding-left: 2em !important; padding-right: 2em !important; }
	.content-slider { padding-left: 1em !important; padding-right: 1em !important; }
}
@media all and (max-width: 1250px) {
	h1 { font-size: 4.25em; }
}
@media all and (max-width: 1185px) {
	nav.main-nav ul li a { padding-left: 0.75em; padding-right: 0.75em; }
}
@media all and (max-width: 1110px) {
	nav.main-nav { display: none; }
	.site-header { background: #fff; box-shadow: 0 4px 8px rgba(0,0,0,0.05); }
	.nav-button { display: block; }
	.home-banner.has-image { padding-top: 12em; padding-bottom: 6em; }
	.image-content .block-content { padding: 4.5em 4em 3.5em 25%; }
	.image-content .block-content p { font-size: 1.25em; }
	.form-content-area { display: block; }
	.form-banner, .form-content { width: 100%; }
	.form-banner { padding: 8em 4em 4em; }
	.form-content { padding: 4em; }
	.site-header .logo img { max-width: 260px; }
}
@media all and (max-width: 1024px) {
	.footer-links { display: none !important; }
	.footer-sec-wrap, .split-block { display: block; }
	.split-block .block-image, .split-block .block-content, .footer-sec { width: 100%; }
	.split-block .block-image { height: 250px; }
	.blog-content { padding: 3em 0; }
	.content-wrap { padding-left: 2em !important; padding-right: 2em !important; }
	.post-content { padding: 3em 0; }
}
@media all and (max-width: 975px) {
	h1 { font-size: 3.5em; }
	.steps ul { display: block; }
	.steps ul li { width: 80%; margin: 0 10% 3em; }
	.image-content { padding: 2em; }
	.image-content img, .image-content .block-content { float: none; width: 100%; margin: 0; }
	.image-content .block-content { padding: 4em; }
	.location-content { padding-top: 0; }
}
@media all and (max-width: 875px) {
	.pull-tab { top: 225px; }
	.home-banner { background: #f4f4f4 !important; text-align: center !important; padding: 9em 2em 4em !important;  }
	.home-banner h1 { max-width: 80%; margin: 0 auto 0.5em !important; }
	.steps ul li h1 { font-size: 1.5em; }
	.faqs-content, .content { padding-top: 4em; padding-bottom: 2em; }
	.blog-posts { display: block; }
	.blog-post { width: 100%; }
	.content-slide { padding-left: 5em; padding-right: 5em; }
	.content-slide img, .slide-content { float: none !important; width: 100% !important; }
	.content-slide img { margin-bottom: 2em; }
}
@media all and (max-width: 768px) {
	.cta { padding-top: 6em !important; padding-bottom: 6em !important; }
	.cta .cta-content p { font-size: 2em; }
	.split-block .block-content { padding: 4em !important; }
	.locations { padding: 4em; }
	.location-content { margin-bottom: 2em; }
	.location-content, .location-map { width: 100% !important; padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important; text-align: center; }
	.location-map { padding-right: 2em !important; }
	.two-column { -webkit-column-count: 1; -moz-column-count: 1; column-count: 1; }
	.location-content .two-column { -webkit-column-count: 2; -moz-column-count: 2; column-count: 2; }
	.form-banner { padding: 8em 2em 2em; }
	.site-content { padding: 3em 0; }
	.form-content { padding: 3em 2em; }
	.slide-content { padding: 0; }
}
@media all and (max-width: 650px) {
	.testimonials ul li p { font-size: 1.25em; }
	.testimonials { padding-top: 2em !important; padding-bottom: 2em !important; }
}
@media all and (max-width: 600px) {
	h1 { font-size: 2.75em; }
	h3 { font-size: 1.75em; }
	h4 { font-size: 1.35em; }
	.steps { padding-top: 2em !important; padding-bottom: 2em !important; }
	.split-block .block-content { padding: 3em 2em !important; }
	.content-slider { padding: 3em 1em !important; }
}