al/*
Theme Name: Straight Line
Theme URI: http://www.digitalskydesign.com
Author: Digital Sky Design
Description: This is a custom theme built specifically for the Straight Line website.
Version: 1.0
License: GNU General Public License
License URI: license.txt
*/




/*! HTML5 Boilerplate v5.2.0 | MIT License | https://html5boilerplate.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
    color: #282828;
    font-size: 1em;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #282828;
    padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

/* Redefine Base HTML Tags */

html {
	height: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	background: url(/wp-content/themes/straight-line/images/background.jpg) top center;
	background-attachment: fixed;
}

body {
	margin: 0;
	font: normal normal 1em/1em "montserratlight", Arial, Helvetica, sans-serif;
}

*:focus {
    outline: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

div,
form,
header,
footer,
article,
aside,
textatea,
input {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;	
}

input,
select,
textarea {
	color: #282828;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;  
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	-ms-border-radius: 0;
	-o-border-radius: 0;		
}

input[type=text],
input[type=email],
input[type=tel] {
	width: 100%;
	border: 1px solid #999;
	font: normal normal 1em/1.25em "montserratlight", Arial, Helvetica, sans-serif;
	padding: 0.375em;
	margin-bottom: 0.75em;
}

textarea {
	width: 100%;
	border: 1px solid #999;
	font: normal normal 1em/1.25em "montserratlight", Arial, Helvetica, sans-serif;
	padding: 0.375em;
	margin-bottom: 0.375em;
}

select {
	color: #666;
	width: 100%;
	border: 1px solid #999;
	font: normal 400 1em/1em "myriad-pro-n4", "myriad-pro", Arial, Helvetica, sans-serif;
	padding: 0.5em;
	margin-bottom: 0.75em;
	background: url(/wp-content/themes/straight-line/images/select-arrow.png) #FFF no-repeat 99% center;
}

input[type=submit] {
	display: block;
	color: #FFF;
	font: normal normal 1em/1em "montserratsemi_bold", Arial, Helvetica, sans-serif;
	padding: 0.375em 0.750em;
	margin: 0;	
	border: 1px solid #015028;
	background-color: #015028;
}

input[type=submit]:hover {	cursor: pointer;	
}

input[type="checkbox"] {
	border: none;
}

::-webkit-input-placeholder {
	color: #666;
}

:-moz-placeholder {
	color: #666;
	opacity: 1;
}

::-moz-placeholder {
	color: #666;
	opacity: 1;
}

:-ms-input-placeholder {
	color: #666;
}

:placeholder-shown {
	color: #666;
}

img {
    max-width: 100%;
    height: auto;
    border: 0;
}

strong {
	font-family: "montserratsemi_bold", Arial, Helvetica, sans-serif;
	font-weight: normal;
	font-style: normal;
}

p {
	font-size: 1em;
	line-height: 1.375em;
	margin: 0 0 1.125em 0;	
}

figure {
	margin: 0;
	padding: 0;	
}




/* Fonts */

@font-face {
    font-family: 'montserratlight';
    src: url('/wp-content/themes/straight-line/fonts/montserrat-light-webfont.eot');
    src: url('/wp-content/themes/straight-line/fonts/montserrat-light-webfont.eot?#iefix') format('embedded-opentype'),
         url('/wp-content/themes/straight-line/fonts/montserrat-light-webfont.woff2') format('woff2'),
         url('/wp-content/themes/straight-line/fonts/montserrat-light-webfont.woff') format('woff'),
         url('/wp-content/themes/straight-line/fonts/montserrat-light-webfont.ttf') format('truetype'),
         url('/wp-content/themes/straight-line/fonts/montserrat-light-webfont.svg#montserratlight') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'montserratregular';
    src: url('/wp-content/themes/straight-line/fonts/montserrat-regular-webfont.eot');
    src: url('/wp-content/themes/straight-line/fonts/montserrat-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('/wp-content/themes/straight-line/fonts/montserrat-regular-webfont.woff2') format('woff2'),
         url('/wp-content/themes/straight-line/fonts/montserrat-regular-webfont.woff') format('woff'),
         url('/wp-content/themes/straight-line/fonts/montserrat-regular-webfont.ttf') format('truetype'),
         url('/wp-content/themes/straight-line/fonts/montserrat-regular-webfont.svg#montserratregular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'montserratsemi_bold';
    src: url('/wp-content/themes/straight-line/fonts/montserrat-semibold-webfont.eot');
    src: url('/wp-content/themes/straight-line/fonts/montserrat-semibold-webfont.eot?#iefix') format('embedded-opentype'),
         url('/wp-content/themes/straight-line/fonts/montserrat-semibold-webfont.woff2') format('woff2'),
         url('/wp-content/themes/straight-line/fonts/montserrat-semibold-webfont.woff') format('woff'),
         url('/wp-content/themes/straight-line/fonts/montserrat-semibold-webfont.ttf') format('truetype'),
         url('/wp-content/themes/straight-line/fonts/montserrat-semibold-webfont.svg#montserratsemi_bold') format('svg');
    font-weight: normal;
    font-style: normal;
}




/* Header */

.mobile-logo {
	width: 297px;
	height: 65px;
	margin: 1em;
	background: url(/wp-content/themes/straight-line/images/css-sprite.png) 0 0 no-repeat;
}

.call-for-quote {
	display: none;	
}




/* Primary Navigation */

.top-navigation {
	padding: 0.75em 1em;
	overflow: hidden;
	background-color: #015028;	
}

.hide {
	display: none;
}

.call-button {
	width: 20px;
	height: 20px;
	float: right;
	margin-right: 1em;
	background: url(/wp-content/themes/straight-line/images/css-sprite.png) -200px -85px no-repeat;
}

.menu-toggle {
	width: 26px;
	height: 20px;
	float: right;
	background: url(/wp-content/themes/straight-line/images/css-sprite.png) -200px -65px no-repeat;
}

.menu-toggle:active,
.menu-toggle:focus,
.menu-toggle:hover {
	cursor: pointer;
}

.primary-navigation .nav-menu {
	display: none;
}

.primary-navigation.toggled-on .nav-menu {
	display: block;
	width: 110%;
	float: left;
	margin: 0.75em 0 -0.75em -1em;
}

.primary-navigation ul {
	list-style: none;
	padding: 0;
	margin: 0;
	background-color: #282828;
}

.primary-navigation li {
	padding: 0.75em 0 0.75em 1em;
	border-bottom: 2px solid #FFF;
}

.primary-navigation li a {
	color: #FFF;
	font: normal normal 1em/1em "montserratregular";
	display: block;
	text-decoration: none;
	text-transform: uppercase;
}

.primary-navigation li a:hover {
	color: #015028;
	text-decoration: none;	
}

.primary-navigation ul ul {
	margin: 0.75em 1em 0.25em 1em;
}

.primary-navigation li li {
	border-bottom: none;
	padding: 0 0 1em 0;
	margin: 0;
}

.primary-navigation li li:last-child {
	padding: 0;	
}

.primary-navigation li li a {
	color: #FFF;
	font: normal normal 1em/1em "montserratlight";
	display: block;
	text-decoration: none;
	text-transform: none;
}

.primary-navigation li li a:hover {
	color: #BCD634;	
}

li.menu-item-has-children a:after {
	content: "";
	display: inline-block;
	width: 8px;
	height: 12px;
	margin-left: 10px;
	background: url(/wp-content/themes/straight-line/images/css-sprite.png) -200px -105px no-repeat;	
}

li.menu-item-has-children li a:after {
	background: none;	
}

li.sub-menu-active a:after {
	content: "";
	display: inline-block;
	width: 12px;
	height: 8px;
	margin-left: 10px;
	background: url(/wp-content/themes/straight-line/images/css-sprite.png) -208px -107px no-repeat;	
}




/* Home Page */

.mobile-description {
	padding: 1em;	
}

#large-features,
.large-feature {
	display: none;
}

.small-features {
	padding: 1em;
}

.small-feature {
	position: relative;
	margin-bottom: 1em;
}

.small-feature a {
	color: #282828;
	text-decoration: none;
}

.small-feature:last-child {
	margin-bottom: 0;
}

.small-feature img {
	max-width: 100%;	
	margin-bottom: 0.25em;
}

.small-feature h2 {
	width: 100%;
	position: absolute;
	top: 1em;
	left: 0;
	font: normal normal 0.875em/1em "montserratsemi_bold";
	padding: 0.5em;
	margin: 0;
	text-transform: uppercase;
	background: -moz-linear-gradient(left,  rgba(255,255,255,1) 65%, rgba(255,255,255,0) 90%, rgba(255,255,255,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  rgba(255,255,255,1) 65%,rgba(255,255,255,0) 90%,rgba(255,255,255,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(255,255,255,1) 65%,rgba(255,255,255,0) 90%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=1 ); /* IE6-9 */
}

.small-feature p {
	font-size: 0.875em;
	margin: 0;	
}

.small-feature p a {
	font-family: "montserratsemi_bold";
}




/* Home Page */

.content {
	padding: 2em 1em;	
}

h1.page-title {
	font: normal normal 1.75em/1em "montserratregular";
	margin: 0 0 0.25em 0;
	padding-bottom: 0.125em;
	border-bottom: 2px solid #CCC;
}

.content h2 {
	font: normal normal 1.25em/1em "montserratsemi_bold";
	margin: 0;
}

.content p + h2,
.content ul + h2,
.content ol + h2 {
	margin-top: 1.75em;	
}

.content a {
	color: #282828;
	text-decoration: underline;
}

.content a:hover {
	color: #015028;
}

.content ol {
	list-style: decimal outside;
	margin: 0 0 0.625em 2em;
	padding: 0;
}

.content ol li {
	line-height: 1.375em;	
	padding: 0 0 0.25em 0;
}

.content ul {
	list-style: square outside;
	margin: 0 0 0.625em 2em;
	padding: 0;	
}

.content ul li {
	line-height: 1.375em;	
	padding: 0 0 0.25em 0;
}

.left-col {
	margin-bottom: 2em;
}

.right-col {
	background-color: #FFF;
	border: 2px solid #999;
	padding: 1em;
}

h3.widget-title {
	color: #282828;
	font: normal normal 1em/1em "montserratsemi_bold";
	margin: 0 0 0.25em 0;
	padding: 0;
	text-transform: uppercase;
}

.right-col ul {
	list-style: none;
	margin: 0 0 1.5em 0;
	padding: 0;	
}

.right-col ul li {
	font-size: 0.875em;	
	margin: 0;
	padding: 0 0 0.375em 0;
}




/* Portfolio Landing Page */

.portfolio-filter {
	margin: 0 0 1em 0;	
}

.portfolio-filter p {
	font: normal normal 0.875em/1em "montserratregular";
	margin: 0 0 0.25em 0;
	text-transform: uppercase;
}

.portfolio-filter a {
	display: inline-block;
	color: #FFF;
	font: normal normal 0.875em/1em "montserratregular", Arial, Helvetica, sans-serif;
	padding: 0.375em 0.750em;
	margin: 0 0 0.25em 0;	
	border: 1px solid #015028;
	background-color: #015028;
	text-decoration: none;
}

.portfolio-filter a:hover {
  	color: #FFF;	
}

.grid-item {
  	width: 100%;
	margin: 6px;
}

.grid-item {
  	float: left;
}

.grid-item img {
  	display: block;
  	max-width: 100%;
}

.grid-item h2 {
	font: normal normal 0.75em/1.25em "montserratregular", Arial, Helvetica, sans-serif;
	margin: 0.25em 0;
}

.grid-item h2 a {
	color: #282828;
	text-decoration: none !important;	
}




/* Portfolio Pages */

h2.project-details {
	font: normal normal 1em/1em "montserratregular", Arial, Helvetica, sans-serif;
	border-bottom: 2px solid #CCC;
	margin: 0 0 0.75em 0;
	padding: 0 0 0.25em 0;
	text-transform: uppercase;
}




/* Blog Page */

article.post:first-of-type {
	margin-top: 2em;	
}

article.post {
	margin: 0 0 2em 0;	
}

h2.entry-title {
	color: #282828;
	font: normal normal 1.25em/1em "montserratsemi_bold";
	margin: 0 0 0.25em 0;
	padding: 0;
}

h2.entry-title a {
	text-decoration: none !important;	
}

h2.entry-title a:hover {
	text-decoration: underline !important;	
}

.entry-meta {
	color: #666;
	font-size: 0.875em;
}

.entry-content {
	margin: 1em 0;
}

.entry-utility,
.entry-utility-single {
	font-size: 0.875em;
	padding: 0.5em 0;
	border-top: 1px dotted #999;	
	border-bottom: 1px dotted #999;	
}

.entry-utility-single {
	margin-top: 1em;	
}

.navigation {
	overflow: hidden;
}

#nav-above {
	margin-bottom: 1.5em;	
}

#nav-below {
	margin-top: 1.5em;	
}

.nav-previous {
	width: 50%;
	float: left;
}

.nav-next {
	width: 50%;
	float: right;
	text-align: right;	
}

.social-sharing {
	display: table;
}

.social-buttons {
	display: table-cell;
	vertical-align: top;
	padding-top: 3px;
	padding-right: 10px;
}

.social-gplus {
	display: table-cell;
	padding-right: 10px;
}




/* Contact Us */

.gform_wrapper {
	overflow: inherit;
	margin: 0;
	max-width: 100%
}

.gform_wrapper ul,
.gform_wrapper li {
	list-style: none !important;
	margin: 0 !important;	
	padding: 0 !important;
}

.gfield label {
	display: none;	
}

.gform_wrapper .gform_footer {
	padding: 0;
	margin: 0;
	clear: both;
	text-align: left;
}

.gform_wrapper .gfield_required {
  color: #900;
  padding-left: 1px;
}

.gform_wrapper .validation_message {
	display: none;
}

.gform_wrapper .gfield_error label {
  color: #0F0;
}

.alert,
.validation_error {
  width: 100%;
  padding: 0.625em;
  margin-bottom: 0.938em;
  font: normal normal 1em/1.250em "montserratsemi_bold", Arial, Helvetica, sans-serif;
  color: #b94a48;
  background-color: #f2dede;
  border: 1px dashed #b94a48;
}

#gforms_confirmation_message {
  padding: 0.625em;
  margin-bottom: 0.938em;
  font: normal normal 1em/1.250em "montserratsemi_bold", Arial, Helvetica, sans-serif;
  color: #000000;
  background-color: #C2FFC1;
  border: 1px dashed #0C3;
}

.alert,
.alert h4 {
  color: #c09853;
}

.alert h4 {
  margin: 0;
}

.alert .close {
  position: relative;
  top: -2px;
  right: -21px;
  line-height: 20px;
}

.alert-success {
  color: #468847;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}

.alert-success h4 {
  color: #468847;
}

.alert-danger,
.alert-error,
.gform_wrapper .gfield_error input[type=text],
.gform_wrapper .gfield_error input[type=tel],
.gform_wrapper .gfield_error input[type=email],
.gform_wrapper .gfield_error textarea,
.gform_wrapper .gfield_error select {
  color: #b94a48;
  background-color: #f2dede;
  border-color: #b94a48;
}




/* Footer */

.footer {
	background: url(/wp-content/themes/straight-line/images/footer-background.jpg) bottom center no-repeat;
}

.footer-inner {
	padding: 1em;	
}

.footer-table {
	width: 100%;
	display: table;
}

.footer-navigation {
	width: 50%;
	display: table-cell;
	vertical-align: top;
}

.footer-navigation ul {
	list-style: none;
	margin: -0.375em 0 0 0;
	padding: 0;
}

.footer-navigation ul li a {
	color: #FFF;
	font-size: 0.875em;
	line-height: 1.375em;
	text-decoration: none;
}

.footer-navigation ul li a:hover {
	text-decoration: underline;
}

.footer-address {
	display: none;
}

.social {
	width: 50%;
	display: table-cell;
	vertical-align: top;
	text-align: right;
}

.facebook {
	display: inline-block;
	width: 32px;
	height: 32px;
	background-size: 190px 160px !important;
	background: url(/wp-content/themes/straight-line/images/css-sprite.png) 0 -42px no-repeat;	
}

.instagram {
	display: inline-block;
	width: 32px;
	height: 32px;
	background-size: 190px 160px !important;
	background: url(/wp-content/themes/straight-line/images/css-sprite.png) -32px -42px no-repeat;	
}

.yelp {
	display: inline-block;
	width: 32px;
	height: 32px;
	background-size: 190px 160px !important;
	background: url(/wp-content/themes/straight-line/images/css-sprite.png) -64px -42px no-repeat;	
}

.homeadvisor {
	display: inline-block;
	width: 32px;
	height: 32px;
	background-size: 190px 160px !important;
	background: url(/wp-content/themes/straight-line/images/css-sprite.png) -96px -42px no-repeat;	
}

.web-design {
	width: 100%;
	text-align: right;	
}

.web-design a {
	font-size: 0.5em;
	line-height: 0.5em;
	color: #FFF;
	text-decoration: none;
}

.web-design a:hover {
	text-decoration: underline;
}




/* Default WordPress Styles */

.alignleft,
.alignright {
	display: block;
	margin: 0 0 0.938em 0;
}




/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers:
 */

.hidden {
    display: none !important;
}

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 480px) {
	
	.grid-item {
		width: -moz-calc(50% - 12px);
		width: -webkit-calc(50% - 12px);
		width: calc(50% - 12px);
		margin: 6px;	
	}
	
}

@media only screen and (min-width: 768px) {
	
	.header {
		/* background-color: #FFF; */
		border-bottom: 2px solid #999;
	}	
	
	.header-inner {
		width: 100%;	
		padding: 1em;
	}
	
	.mobile-logo {
		display: none;	
	}
	
	.header-left {
		width: 100%;
		margin-bottom: 1em;
	}
	
	.logo {
		width: 297px;
		height: 65px;
		background: url(/wp-content/themes/straight-line/images/css-sprite.png) 0 0 no-repeat;
	}
	
	.header-right {
		width: 100%;
		position: relative;
	}
	
	.call-for-quote {
		display: inline;	
		position: absolute;
		top: -80px;
		right: 0;
		text-align: right;
	}
	
	.call-for-quote p:first-of-type {
		font: normal normal 0.875em/1em "montserratregular";
		margin: 0 0 0.125em 0;
		text-transform: uppercase;
	}
	
	.call-for-quote p:last-of-type {
		font: normal normal 1.5em/1em "montserratsemi_bold";
		margin: 0 0 1em 0;
	}
	
	a.header-phone {
		color: #282828;
		text-decoration: none;	
	}
	
	.top-navigation {
		padding: 0;
		text-align: right;
		background-color: transparent;	
	}
	
	.call-button,
	.menu-toggle {
		display: none;
		float: none;	
	}
	
	.primary-navigation .nav-menu {
		display: inline;
	}
	
	.primary-navigation ul {
		background-color: transparent;
	}
	
	.primary-navigation li {
		display: inline-block;
		padding: 0;
		margin: 0 1em 0 0;
	}
	
	.primary-navigation li:last-child {
		margin: 0;
	}
	
	.primary-navigation li a {
		color: #282828;
	}
	
	.primary-navigation li a:hover {
		color: #015028;
	}
	
	.primary-navigation ul ul {
		display: none;
		background-color: #FFF;
		border: 1px solid #282828;
		position: absolute;
		z-index: 9999999999;
		top: auto;
		left: auto;
		padding: 1em;
		margin: 0;
		text-align: left;
	}
	
	.primary-navigation ul li:hover > ul {
		display: block !important;
	}
	
	.primary-navigation li li {
		display: block;
	}
	
	.primary-navigation li li a {
		display: block;
		color: #282828;	
	}
	
	.free-quote {
		background-color: #015028;
		padding: 0.375em 0.75em !important;
	}
	
	.primary-navigation li.free-quote a {
		color: #FFF !important;:
	}
	
	li.menu-item-has-children a:after,
	li.sub-menu-active a:after {
		width: 0;
		height: 0;
		margin-left: 0;
		background: none;	
	}
	
    .mobile-image,
	.mobile-description {
		display: none;	
	}
		
	#large-features {
		display: block;
		margin: 0;
		padding: 0;
		position: relative;
	}
	
	/* Home Page Slideshow */

	.large-feature {
		display: block;
		height: 0;
		padding-bottom: 42.8571429%; /* for a 7:3 aspect ratio */
		background-position: center;
		background-size: cover;
		background-repeat: no-repeat;
	}
	
	.large-feature-text {
		width: 100%;
		position: absolute;
		left: 16px;
		bottom: 32px;
	}
	
	.large-feature-text-inner {
		width: 50%;
	}
	
	.large-feature-text-inner h1 {
		color: #FFF;
		font: normal normal 1.5em/1.125em "montserratsemi_bold";
		margin: 0 0 0.25em 0;
		padding: 0;
		text-transform: uppercase;
		text-shadow: 2px 2px 5px #282828,  2px 2px 10px #282828, 2px 2px 15px #282828;
	}
	
	.large-feature-text-inner p {
		color: #FFF;
		font: normal normal 1em/1.125em "montserratregular";
		margin: 0;
		padding: 0;	
		text-shadow: 2px 2px 5px #282828,  2px 2px 10px #282828, 2px 2px 15px #282828;
	}
	
	.owl-carousel .owl-wrapper:after {
		content: ".";
		display: block;
		clear: both;
		visibility: hidden;
		line-height: 0;
		height: 0;
	}
	
	.owl-carousel{
		display: none;
		position: relative;
		width: 100%;
		-ms-touch-action: pan-y;
	}
	
	.owl-carousel .owl-wrapper{
		display: none;
		position: relative;
		-webkit-transform: translate3d(0px, 0px, 0px);
	}
	
	.owl-carousel .owl-wrapper-outer{
		overflow: hidden;
		position: relative;
		width: 100%;
	}
	
	.owl-carousel .owl-wrapper-outer.autoHeight{
		-webkit-transition: height 500ms ease-in-out;
		-moz-transition: height 500ms ease-in-out;
		-ms-transition: height 500ms ease-in-out;
		-o-transition: height 500ms ease-in-out;
		transition: height 500ms ease-in-out;
	}
		
	.owl-carousel .owl-item{
		float: left;
	}
	
	.owl-controls .owl-page,
	.owl-controls .owl-buttons div{
		cursor: pointer;
	}
	
	.owl-controls {
		-webkit-user-select: none;
		-khtml-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
		-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	}
	
	.grabbing { 
		cursor:url(grabbing.png) 8 8, move;
	}
	
	.owl-carousel  .owl-wrapper,
	.owl-carousel  .owl-item{
		-webkit-backface-visibility: hidden;
		-moz-backface-visibility:    hidden;
		-ms-backface-visibility:     hidden;
		-webkit-transform: translate3d(0,0,0);
		-moz-transform: translate3d(0,0,0);
		-ms-transform: translate3d(0,0,0);
	}
	
	.owl-origin {
		-webkit-perspective: 1200px;
		-webkit-perspective-origin-x : 50%;
		-webkit-perspective-origin-y : 50%;
		-moz-perspective : 1200px;
		-moz-perspective-origin-x : 50%;
		-moz-perspective-origin-y : 50%;
		perspective : 1200px;
	}
	
	.owl-fade-out {
	  z-index: 10;
	  -webkit-animation: fadeOut .7s both ease;
	  -moz-animation: fadeOut .7s both ease;
	  animation: fadeOut .7s both ease;
	}
	
	.owl-fade-in {
	  -webkit-animation: fadeIn .7s both ease;
	  -moz-animation: fadeIn .7s both ease;
	  animation: fadeIn .7s both ease;
	}
	
	.owl-backSlide-out {
	  -webkit-animation: backSlideOut 1s both ease;
	  -moz-animation: backSlideOut 1s both ease;
	  animation: backSlideOut 1s both ease;
	}
	
	.owl-backSlide-in {
	  -webkit-animation: backSlideIn 1s both ease;
	  -moz-animation: backSlideIn 1s both ease;
	  animation: backSlideIn 1s both ease;
	}
	
	.owl-goDown-out {
	  -webkit-animation: scaleToFade .7s ease both;
	  -moz-animation: scaleToFade .7s ease both;
	  animation: scaleToFade .7s ease both;
	}
	
	.owl-goDown-in {
	  -webkit-animation: goDown .6s ease both;
	  -moz-animation: goDown .6s ease both;
	  animation: goDown .6s ease both;
	}
	
	.owl-fadeUp-in {
	  -webkit-animation: scaleUpFrom .5s ease both;
	  -moz-animation: scaleUpFrom .5s ease both;
	  animation: scaleUpFrom .5s ease both;
	}
	
	.owl-fadeUp-out {
	  -webkit-animation: scaleUpTo .5s ease both;
	  -moz-animation: scaleUpTo .5s ease both;
	  animation: scaleUpTo .5s ease both;
	}
	
	/* Keyframes */
	@-webkit-keyframes empty {
	  0% {opacity: 1}
	}
	
	@-moz-keyframes empty {
	  0% {opacity: 1}
	}
	
	@keyframes empty {
	  0% {opacity: 1}
	}
	
	@-webkit-keyframes fadeIn {
	  0% { opacity:0; }
	  100% { opacity:1; }
	}
	
	@-moz-keyframes fadeIn {
	  0% { opacity:0; }
	  100% { opacity:1; }
	}
	
	@keyframes fadeIn {
	  0% { opacity:0; }
	  100% { opacity:1; }
	}
	
	@-webkit-keyframes fadeOut {
	  0% { opacity:1; }
	  100% { opacity:0; }
	}
	
	@-moz-keyframes fadeOut {
	  0% { opacity:1; }
	  100% { opacity:0; }
	}
	
	@keyframes fadeOut {
	  0% { opacity:1; }
	  100% { opacity:0; }
	}
	
	@-webkit-keyframes backSlideOut {
	  25% { opacity: .5; -webkit-transform: translateZ(-500px); }
	  75% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(-200%); }
	  100% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(-200%); }
	}
	
	@-moz-keyframes backSlideOut {
	  25% { opacity: .5; -moz-transform: translateZ(-500px); }
	  75% { opacity: .5; -moz-transform: translateZ(-500px) translateX(-200%); }
	  100% { opacity: .5; -moz-transform: translateZ(-500px) translateX(-200%); }
	}
	
	@keyframes backSlideOut {
	  25% { opacity: .5; transform: translateZ(-500px); }
	  75% { opacity: .5; transform: translateZ(-500px) translateX(-200%); }
	  100% { opacity: .5; transform: translateZ(-500px) translateX(-200%); }
	}
	
	@-webkit-keyframes backSlideIn {
	  0%, 25% { opacity: .5; -webkit-transform: translateZ(-500px) translateX(200%); }
	  75% { opacity: .5; -webkit-transform: translateZ(-500px); }
	  100% { opacity: 1; -webkit-transform: translateZ(0) translateX(0); }
	}
	
	@-moz-keyframes backSlideIn {
	  0%, 25% { opacity: .5; -moz-transform: translateZ(-500px) translateX(200%); }
	  75% { opacity: .5; -moz-transform: translateZ(-500px); }
	  100% { opacity: 1; -moz-transform: translateZ(0) translateX(0); }
	}
	
	@keyframes backSlideIn {
	  0%, 25% { opacity: .5; transform: translateZ(-500px) translateX(200%); }
	  75% { opacity: .5; transform: translateZ(-500px); }
	  100% { opacity: 1; transform: translateZ(0) translateX(0); }
	}
	
	@-webkit-keyframes scaleToFade {
	  to { opacity: 0; -webkit-transform: scale(.8); }
	}
	
	@-moz-keyframes scaleToFade {
	  to { opacity: 0; -moz-transform: scale(.8); }
	}
	
	@keyframes scaleToFade {
	  to { opacity: 0; transform: scale(.8); }
	}
	
	@-webkit-keyframes goDown {
	  from { -webkit-transform: translateY(-100%); }
	}
	
	@-moz-keyframes goDown {
	  from { -moz-transform: translateY(-100%); }
	}
	
	@keyframes goDown {
	  from { transform: translateY(-100%); }
	}
	
	@-webkit-keyframes scaleUpFrom {
	  from { opacity: 0; -webkit-transform: scale(1.5); }
	}
	
	@-moz-keyframes scaleUpFrom {
	  from { opacity: 0; -moz-transform: scale(1.5); }
	}
	
	@keyframes scaleUpFrom {
	  from { opacity: 0; transform: scale(1.5); }
	}
	
	@-webkit-keyframes scaleUpTo {
	  to { opacity: 0; -webkit-transform: scale(1.5); }
	}
	
	@-moz-keyframes scaleUpTo {
	  to { opacity: 0; -moz-transform: scale(1.5); }
	}
	
	@keyframes scaleUpTo {
	  to { opacity: 0; transform: scale(1.5); }
	}
	
	/* Home Page Slideshow Theme */
	
	.straight-line-theme .owl-controls {
		width: 100%;
		margin: 0 auto;
		padding: 0 15px;
		text-align: center;
		position: absolute;
		bottom: 0.5em;
		z-index: 999;
	}
	
	.straight-line-theme .owl-controls .owl-buttons div {
		display: none;
	}
	
	.straight-line-theme .owl-controls.clickable .owl-buttons div:hover {
		display: none;
	}
	
	.straight-line-theme .owl-controls .owl-page {
		display: inline-block;
		zoom: 1;
		*display: inline;
	}
	
	.straight-line-theme .owl-controls .owl-page span {
		display: block;
		width: 8px;
		height: 8px;
		margin: 0 4px;
		border-radius: 100%;
		background-color: #FFF;
		border: 1px solid #FFF;
	}
	
	.straight-line-theme .owl-controls .owl-page.active span,
	.straight-line-theme .owl-controls.clickable .owl-page:hover span {
		background-color: #015028;
		border: 1px solid #015028;
	}
	
	.straight-line-theme .owl-controls .owl-page span.slideshow-numbers {
		height: auto;
		width: auto;
		color: #FFF;
		padding: 2px 10px;
		font-size: 1em;
		-webkit-border-radius: 30px;
		-moz-border-radius: 30px;
		border-radius: 30px;
	}
	
	.owl-item.loading {
		min-height: 150px;
		background: url(/wp-content/themes/straight-line/images/AjaxLoader.gif) no-repeat center center;
	}
	
	.small-features {
		padding: 1.5em 1em;
		overflow: hidden;
	}
	
	.small-feature {
		width: -moz-calc(33.333333333% - 12px);
		width: -webkit-calc(33.333333333% - 12px);
		width: calc(33.333333333% - 12px);
		float: left;	
		margin: 0;
	}
	
	.small-feature:nth-child(2) {
		margin: 0 18px;
	}
	
	.content {
		overflow: hidden;	
	}
	
	.left-col {
		width: 60%;
		float: left;
	}
	
	.right-col {
		width: 35%;
		float: right;
	}
	
	.grid-item {
		width: -moz-calc(33.33333% - 12px);
		width: -webkit-calc(33.33333% - 12px);
		width: calc(33.33333% - 12px);
		margin: 6px;
	}
	
	.gf-column-one {
		width: 49%;
		float: left;
		clear: left;
	}
	
	.gf-column-two {
		width: 49%;
		float: right;
	}
	
	.gf-column-three {
		width: 100%;
		float: left;
	}
	
	.footer-navigation {
		width: 180px;
	}
	
	.footer-address {
		width: 260px;
		display: table-cell;
		vertical-align: top;
		margin: 0;
		padding-left: 40px;
		background: url(/wp-content/themes/straight-line/images/css-sprite.png) -226px -65px no-repeat;	
	}
	
	.footer-address p {
		color: #FFF;
		font-size: 0.875em;
		font-style: normal;
		margin-top: -0.375em;	
	}
	
	a.footer-phone {
		color: #FFF;
		text-decoration: none;	
	}
	
	.social {
		width: auto;
	}
	
	.facebook {
		width: 50px;
		height: 50px;
		background-size: 297px 250px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite.png) 0 -65px no-repeat;	
	}
	
	.instagram {
		width: 50px;
		height: 50px;
		background-size: 297px 250px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite.png) -50px -65px no-repeat;	
	}
	
	.yelp {
		width: 50px;
		height: 50px;
		background-size: 297px 250px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite.png) -100px -65px no-repeat;	
	}
	
	.homeadvisor {
		width: 50px;
		height: 50px;
		background-size: 297px 250px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite.png) -150px -65px no-repeat;	
	}

	.alignleft {
		float: left;
		display: inline;
		margin: 0 2em 0 0;
	}
	
	.alignright {
		float: right;
		display: inline;
		margin: 0 0 0 2em;
	}
	
}

@media only screen and (min-width: 1024px) {
	
	.header-inner {
		display: table;
		padding: 0 1em;	
	}
	
	.header-left {
		display: table-cell;
		width: 297px;
		padding: 1em 0;
		vertical-align: middle;
	}
	
	.header-right {
		display: table-cell;
		width: auto;	
		padding: 1em 0 0.5em 0;
		text-align: right;
	}
	
	.call-for-quote {
		position: static;
	}
	
	.large-feature h1 {
		color: #FFF;
		font: normal normal 1.75em/1.125em "montserratsemi_bold";
		margin: 0 0 0.25em 0;
		padding: 0;
		text-transform: uppercase;
		text-shadow: 2px 2px 5px #282828,  2px 2px 10px #282828, 2px 2px 15px #282828;
	}
	
	.large-feature p {
		color: #FFF;
		font: normal normal 1.25em/1.125em "montserratregular";
		margin: 0;
		padding: 0;	
		text-shadow: 2px 2px 5px #282828,  2px 2px 10px #282828, 2px 2px 15px #282828;
	}
	
	.small-feature h2 {
		font-size: 1em;	
	}
	
	.primary-navigation li {
		margin: 0 1.5em 0 0;
	}
	
	.right-col ul li {
		font-size: 1em;
		line-height: 1.125em;
	}
	
	.address-hours {
		display: table;	
		width: 100%;
	}
	
	.address {
		display: table-cell;
		width: 50%;
	}	
	
	.hours {
		display: table-cell;
		width: 50%;
	}
	
	.grid-item {
		width: -moz-calc(25% - 12px);
		width: -webkit-calc(25% - 12px);
		width: calc(25% - 12px);
		margin: 6px;
	}	
	
}

@media only screen and (min-width: 1200px) {
	
	.header-inner,
	.small-features,
	.footer-inner {
		width: 1200px;
		margin: 0 auto;	
	}
	
	.large-feature {
		height: 600px;
		padding: 0;	
	}
	
	.large-feature-text {
		left: 16px;
		bottom: 64px;
	}
	
	.large-feature-text-inner {
		display: block;
		width: 1200px;
		margin: 0 auto;
	}
	
	.large-feature-text-inner h1 {
		width: 60%;
		font: normal normal 2em/1.125em "montserratsemi_bold";
		margin: 0 0 0.25em 0;
	}
	
	.large-feature-text-inner p {
		width: 60%;
		font: normal normal 1.25em/1.25em "montserratregular";
	}
	
	.content {
		margin: 0 auto;
		width: 1200px;
	}
	
	.grid-item {
		width: -moz-calc(25% - 12px);
		width: -webkit-calc(25% - 12px);
		width: calc(25% - 12px);
		margin: 6px;
	}
	
}

@media all and (-webkit-min-device-pixel-ratio: 1.5) {
	
	.logo,
	.mobile-logo {
		background-size: 297px 250px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite@2x.png) 0 0 no-repeat;
	}
	
	.call-button {
		background-size: 297px 250px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite@2x.png) -200px -85px no-repeat;
	}
	
	.menu-toggle {
		background-size: 297px 250px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite@2x.png) -200px -65px no-repeat;
	}
	
	.footer {
		background-size: 2000px 320px !important;
		background: url(/wp-content/themes/straight-line/images/footer-background@2x.jpg) center center no-repeat;	
	}
	
	.facebook {
		background-size: 190px 160px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite@2x.png) 0 -42px no-repeat;	
	}
	
	.instagram {
		background-size: 190px 160px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite@2x.png) -32px -42px no-repeat;	
	}
	
	.yelp {
		background-size: 190px 160px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite@2x.png) -64px -42px no-repeat;	
	}
	
	.homeadvisor {
		background-size: 190px 160px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite@2x.png) -96px -42px no-repeat;	
	}
	
	select {
		background-size: 20px 20px !important;
		background: url(/wp-content/themes/straight-line/images/select-arrow@2x.png) #FFF no-repeat 99% center;
	}
	
}

@media all and (-webkit-min-device-pixel-ratio: 1.5) and (min-width: 768px) {
	
	.facebook {
		background-size: 297px 250px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite@2x.png) 0 -65px no-repeat;	
	}
	
	.instagram {
		background-size: 297px 250px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite@2x.png) -50px -65px no-repeat;	
	}
	
	.yelp {
		background-size: 297px 250px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite@2x.png) -100px -65px no-repeat;	
	}
	
	.homeadvisor {
		background-size: 297px 250px !important;
		background: url(/wp-content/themes/straight-line/images/css-sprite@2x.png) -150px -65px no-repeat;	
	}

}

@media print,
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 1.25dppx),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after {
        background: transparent !important;
        color: #000 !important; /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}