/*
Theme Name: Atlantic Building Solutions
Description: Custom theme for Atlantic Building Solutions
Author: Click Optimize
Author URI: http://www.clickoptimize.com
version: 1.0
Tags: two-column, site, photo gallery, blog, lead form
*/
/* HTML5 ✰ Boilerplate
 * ==|== normalize ==========================================================
 */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

html { font-size: 100%; overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { margin: 0; font-size: 13px; line-height: 1.231; }
body, button, input, select, textarea { font-family: sans-serif; color: #222; }

::-moz-selection { background: #fe57a1; color: #fff; text-shadow: none; }
::selection { background: #fe57a1; color: #fff; text-shadow: none; }

a { color: #00e; }
a:visited { color: #551a8b; }
a:hover { color: #06e; }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }

abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, monospace; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }
img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
figure { margin: 0; }

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; *overflow: visible; }
table button, table input { *overflow: auto; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }


/* ==|== primary styles =====================================================
   Author: Joel Rogers @ Click Optimize
   ========================================================================== */

/* ===================== Basics ===================== */
body { background: url(images/bg-page.png) top center repeat-x #f8f8f8; }
.body-home { background: url(images/bg-page-home.png) top center repeat-x #f8f8f8; }

/* Basics */
body { font-family: 'Open Sans', Arial, Verdana, sans-serif; font-size: 14px; font-weight: 400; text-align: left; color: #515151; margin: 0; padding: 0; }
::-moz-selection { background: #64bc1d; color: #fff; text-shadow: none; }
::selection { background: #64bc1d; color: #fff; text-shadow: none; }
#container, #footer, footer, #footer-fixed, #content, #content, #sidebar, aside, #header, header, #main, #logo, #submenu, #phones, #menu, #home-slider, #home-slider-overlay, #home-slider-image, #carousel-container, #carousel-title, #carousel, #interior-header, #interior-header-overlay, #interior-header-image { display: block; }

/* paragraphs and h tags */
p { color: #515151; font-family: 'Open Sans', Arial, sans-serif; font-weight: 400; font-size: 1em; line-height: 1.8em; padding: 0; margin: 1em 0px; }
strong, .bold { font-weight: bold; }
em, .italic { font-style: italic; }
h1, h2, h3, h4, h5, h6 { color: #2d2d2d; font-family: Palatino, Times New Roman, Times, serif; line-height: 1.3em; font-weight: bold; text-transform: none; }
h2, h3, h4, h5, h6 { margin: 1em 0 0 0; }
h1 { font-size: 2.2em; padding: 0; margin: 0 0 0.5em 0; line-height: 1.3em; } /* Title size */
#content h1:first-child { padding-top: 0 !important; margin-top: 0px !important; }
h2 { font-size: 1.7em; color: #575757; } 
h3 { font-size: 1.5em; }
h4 { font-size: 1.2em; }
h5 { font-size: 1.2em; }
h6 { font-size: 1em; }

/* list items */
#content ul, #content ol, #content-3rd ul, #content-3rd ol { padding: 0.5em 0 0.5em 3em; margin: 0px 0px 1em 1em; line-height: 1.5em; }
#content ul, #content-3rd ul { list-style: disc outside; }
#content li, #content-3rd li { padding-top: 0.5em; font-size: 1em; }

/* images in content */
#content img, #content-3rd img { float: right; margin: 0 0 10px 20px; background: #fff; border: 1px solid #a2e46c; padding: 3px; }
img.alignleft, .alignleft, left { float: left !important; margin: 0px 20px 10px 0 !important; }
img.alignright, .alignright, .right { float: right !important; margin: 0px 0px 10px 20px !important; }
img.alignnone { float: none !important; margin: 0px !important; }
img.aligncenter { float: none !important; margin: 0 auto !important; display: block; }

/* links */
a, a:visited, a:active { color: #5db318; text-decoration: none; font-weight: 700; cursor: pointer; }
a:hover { color: #408e02; text-decoration: none; background-color: #dff9ca; cursor: pointer; }
/* automatically apply this style to links to files with the extenstion of .pdf */
a[href$='.pdf'], a.pdf { background-image: url(images/pdf.gif); background-repeat: no-repeat; padding-left: 20px !important; }

/* Gray Button */
a.button, .gform_button, #mc-embedded-subscribe { padding: 6px 30px; background: url(images/btn-gray.png) top left repeat-x !important; height: 20px; font-size: 16px; color: #fff; text-decoration: none; text-align: center; display: block; position: relative; line-height: 1.3em; border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; }
a.button:hover, a.button:active { background: url(images/btn-gray.png) bottom left repeat-x; }
a.button:active { padding-top: 7px; padding-bottom: 5px; }
a.button:before { display: block; content: ""; position: absolute; right: 20px; top: 11px; height: 11px; width: 10px; background: url(images/white-arrow.png) top center no-repeat; }

/* Green Button */ 
a.button-green { padding: 6px 30px; background: url(images/btn-green.png) top left repeat-x; height: 27px; font-size: 18px; color: #fff; text-decoration: none; text-align: center; display: block; position: relative; line-height: 1.3em; border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; box-shadow: 0px 0px 12px rgba(0,0,0,0.15) inset; -moz-box-shadow: 0px 0px 12px rgba(0,0,0,0.15) inset; -webkit-box-shadow: 0px 0px 12px rgba(0,0,0,0.15) inset; }
a.button-green:hover, a.button-green:active { background: url(images/btn-green.png) bottom left repeat-x; }
a.button-green:active { padding-top: 7px; padding-bottom: 5px; }
a.button-green:before { display: block; content: ""; position: absolute; right: 20px; top: 15px; height: 11px; width: 10px; background: url(images/white-arrow.png) top center no-repeat; }

a.sidebar-btn { width: 130px; margin: 10px auto; }


/* ===================== Container + Header ===================== */

.gray-line { background: #4b4b4b; height: 2px; display: block; position: relative; min-width: 1000px; top: 0; margin: 0; padding: 0; }

/* container */
#container { width: 976px; display: block; position: relative; margin: 0 auto; background: #fff; box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2); -moz-box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2); -webkit-box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2); z-index: 2; border-bottom: 8px solid #a2e46c; }
.header-shadow-left, .header-shadow-right { width: 12px; height: 207px; display: block; position: absolute; top: 0; }
.header-shadow-left { background: url(images/header-shadow-left.png) top right no-repeat; left: -12px; }
.header-shadow-right { background: url(images/header-shadow-right.png) top left no-repeat; right: -12px; }

/* header */
header { width: 976px; position: relative; top: 0; z-index: 15; margin: 0; display: block; z-index: 20; }
#header-top { width: 976px; height: 207px; position: relative; z-index: 15; margin: 0; display: block; z-index: 21; }
#logo { width: 214px; height: 110px; background: url(images/logo.png) top left no-repeat; border: none; position: relative; top: 0px; margin: 0 0 0 34px; z-index: 100; text-indent: -99999px; float: left; }
#logo a, #logo a:hover, #logo a:active { width: 214px; height: 110px; display: block; text-indent: -99999px; background: none; }

/* utility menu */
#utility-menu { z-index: 99; position: relative; margin: 5px 15px 0 0; padding: 0; background: none; position: relative; float: right; width: 500px; height: 15px; }
#utility-menu ul { position: relative; padding: 0; margin: 0; display: block; z-index: 98; width: 500px; height: 15px; }
#utility-menu ul li { float: right; display: block; height: 15px; position: relative; padding: 0px 0.5em; margin: 0; text-align: center; z-index: 97; border-right: 1px solid #494949; }
#utility-menu ul li:first-child { border-right: none; }
#utility-menu a, #utility-menu a:hover, #utility-menu a:visited, #utility-menu a:active { position: relative; z-index: 96; text-decoration: none; font-weight: 400; font-size: 0.9em; color: #494949; display: block; text-align: center; float: left; /* float: right; */ height: 15px; padding: 0; margin: 0; text-transform: none; }
#utility-menu a:hover { color: #5db318; background: none; }

/* phone + seal logo */
#phone, #certified-logo { display: block; position: relative; float: right; height: 56px; }
#phone { width: 300px; padding: 0; margin: 0; text-align: right; }
#phone h2, #phone h2 a { color: #2f2f2f; margin: 0; padding: 20px 0 0 0; font-size: 26px; text-decoration: none; font-family: 'Open Sans', Arial, sans-serif; font-weight: 700; }
#certified-logo { width: 56px; clear: right; margin: 7px 15px 0 10px; }
#certified-logo img { border: none; padding: 0; margin: 0; }

/* quote request dropdown */
#quote-form-wrapper { width: 976px; position: relative; margin: 0 auto; z-index: 999; }
#quote-button { display: block; position: fixed; float: right; padding-left: 500px; width: 184px; height: 36px; z-index: 999; margin-top: -3px; }
a.quote-button { display: block; width: 184px; height: 36px; background: url('images/request-a-quote.png') 0 36px; text-indent: -9999px; font-size: 0; }
a.quote-button:hover,
a.quote-button.expanded { background-position: 0 0; }

#quote-form { display: none; width: 450px; position: absolute; top: 40px; z-index: 999; background: #fff; padding: 12px; border: solid #70c21d 3px; border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px; }
#quote-form label { display: none; }
#quote-form li.gfield { display: block; width: 50%; clear: none; float: left; margin-bottom: 10px; padding: 0; }
#quote-form li.gfield .ginput_container,
#quote-form li.gfield .ginput_container input[type="text"],
#quote-form li.gfield .ginput_container select,
#quote-form li.gfield .ginput_container textarea { width: 205px; outline: none; }
#quote-form li.gfield .ginput_container input[type="text"] { display: block; width: 199px; height: 22px; line-height: 22px; border: solid #ccc 1px; padding: 2px 6px; margin-left: 3%; margin-right: 3%; }
#quote-form li.gfield .ginput_container select { display: block; margin-left: 3%; margin-right: 3%; }
#quote-form #field_4_6 { clear: left; width: 100%; }
#quote-form #field_4_6 .ginput_container { height: 50px; width: 100%; }
#quote-form #field_4_6 textarea { display: block; height: 50px; width: 425px; border: solid #ccc 1px; padding: 5px; margin: 0 auto; }
#quote-form .gform_footer { margin: 0; padding: 8px 0 0; }
#quote-form .gform_wrapper { margin: 0; max-width: inherit; }
#quote-form .gfield_error { margin: 0 0 10px 0 !important; padding: 0 !important; background-color: transparent; border: none; }
#quote-form .gfield_error input[type="text"] { background-color: #FFDFDF; border: 1px solid #C89797; }
#quote-form .gfield_error .ginput_container { margin: 0 !important; }
#quote-form .validation_message { display: none; }
#quote-form .validation_error { margin: 0 auto 10px !important; }

/* top header buttons */
#header-links { display: block; position: relative; float: right; width: 400px; height: 48px; clear: right; }
a.btn-facebook, a.btn-find-service { display: block; position: relative; float: right; padding: 0; height: 37px; text-indent: -9999px; cursor: pointer; z-index: 12; }
a.btn-facebook { margin: 10px 15px 0 5px; width: 44px; background: url(images/btn-facebook.png) top left no-repeat; clear: right; }
a.btn-facebook:hover, a.btn-facebook:active { background: url(images/btn-facebook.png) bottom left no-repeat; }
a.btn-find-service { margin: 10px 0 0 0; width: 152px; background: url(images/btn-find-service.png) top left no-repeat; }
a.btn-find-service:hover, a.btn-find-service:active { background: url(images/btn-find-service.png) bottom left no-repeat; }
.green-bar { width: 976px; height: 8px; display: block; position: absolute; z-index: 2; background: #a2e46c; top: 123px; }

/* Click Nav */
.js { margin: 0; padding: 0; }
.click-nav {margin: 0;width:200px; position: absolute; z-index: 999; top: 10px; left: 150px; }
.click-nav ul {position:relative;font-weight:900;}
.click-nav ul li {position:relative;list-style:none;cursor:pointer;}
.click-nav ul li ul {position:absolute;left:0;right:0; margin: 0; padding: 0; 	-webkit-box-shadow: 0 8px 6px -6px black;
	   -moz-box-shadow: 0 8px 6px -6px black;
	        box-shadow: 0 8px 6px -6px black; border: 1px solid #eee; margin-top: 1px; }
.click-nav ul .clicker {position:relative;background: url(images/btn-find-service.png) top left no-repeat;  text-indent: -9999px; height: 21px; }
.click-nav ul .clicker:hover,.click-nav ul .active {background: url(images/btn-find-service.png) bottom left no-repeat; }
.click-nav img {position:absolute;top:9px;left:12px;}
.click-nav ul li a {transition:background-color 0.2s ease-in-out;-webkit-transition:background-color 0.2s ease-in-out;
-moz-transition:background-color 0.2s ease-in-out;display:block;padding:8px 10px; background:#FFF;color:#333;text-decoration:none; }
.click-nav ul li ul li a { border-bottom: 1px solid #efefef; }
.click-nav ul li a:hover {background:#F2F2F2;}

/* Fallbacks */
.click-nav .no-js ul {display:none;}
.click-nav .no-js:hover ul {display:block;}


/* ===================== Menu ===================== */

/* menu */ 
#menu { z-index: 99; position: relative; margin: 0; height: 57px; width: 976px; background: none; position: relative; clear: both; background: #5db318; border-top: 1px solid #5ba31a; border-bottom: 2px solid #5ba31a; }
#menu ul { height: 57px; width: 976px; position: relative; padding: 0px; margin: 0; display: block; z-index: 98; background: url(images/menu-bg.png) top repeat-x #5db318; }
#menu ul li { float: left; display: block; height: 57px; position: relative; padding: 0px; margin: 0px; text-align: center; z-index: 97; border-left: 1px solid #549716; border-right: 1px solid #87ca49;  }
#menu ul li:first-child { border-left: none; }
#menu ul li:last-child { border-right: none; }
#menu a, #menu a:hover, #menu a:visited, #menu a:active { position: relative; z-index: 96; text-decoration: none; font-weight: 700; font-size: 1.1em; color: #fff; display: block; text-align: center; float: left; height: 38px; padding: 19px 1.34em 0; font-family: 'Open Sans', Arial, sans-serif; margin: 0; text-transform: none; margin: 0; }
#menu a:hover, #menu .current_page_item a, #menu li.menu-open a, #menu .current_page_ancestor a, #menu .current-menu-item a, #menu .current-post-ancestor a, #menu .current-page-ancestor a { color: #fff; background: url(images/menu-over-arrow.png) top center no-repeat #2d2d2d; box-shadow: 0px -8px 9px rgba(0,0,0,1) inset; -moz-box-shadow: 0px -8px 9px rgba(0,0,0,1) inset; -webkit-box-shadow: 0px -8px 9px rgba(0,0,0,1) inset; margin-top: -1px; padding-top: 20px; }

/* menu sub-nav */
#menu ul ul { display: none; position: absolute; top: 57px; left: 0px; z-index: 9996 !important; padding: 0; line-height: 1em; width: auto; height: auto; box-shadow: 1px 5px 4px rgba(0,0,0,0.6); -moz-box-shadow: 1px 5px 4px rgba(0,0,0,0.6); -webkit-box-shadow: 1px 5px 4px rgba(0,0,0,0.6); background: #2d2d2d; padding: 10px 0 6px 0; box-shadow: 0px 0px 9px rgba(0,0,0,1) inset; -moz-box-shadow: 0px 0px 9px rgba(0,0,0,1) inset; -webkit-box-shadow: 0px 0px 9px rgba(0,0,0,1) inset; }
#menu ul ul:before { background: #5db318;; display: block; width: 100%; content: ""; position: absolute; bottom: 0px; left: 0px; z-index: 9999 !important; height: 2px; }
#menu ul ul li { padding: 0px !important; margin: 0 !important; display: block !important; height: auto !important; width: auto; background: none; border-right: none; border-left: none !important; float: left !important; z-index: 9995 !important; border-bottom: 1px solid #4e4e4e; border-top: none; }
#menu ul ul li:last-child { border-bottom: none; }
#menu ul ul a, #menu ul ul a:visited, #menu ul ul a:active, #menu ul ul a:hover, #menu ul ul .current_page_item a { text-align: left; display: block; height: auto !important; padding: 5px 10px !important; text-transform: none; font-weight: 700; font-size: 1em !important; width: 174px; float: none !important; line-height: 1.3em; color: #fff !important; margin: 0; -moz-box-shadow: none !important; -webkit-box-shadow: none !important; box-shadow: none !important; z-index: 9994; background: none !important; }
#menu ul ul a:hover, #menu ul ul .current_page_item a { color: #161616 !important; background: #a2e46c !important; margin: 0 !important; padding: 5px 10px !important; box-shadow: 0px 0px 7px rgba(59,133,0,0.7) inset !important; -moz-box-shadow: 0px 0px 7px rgba(59,133,0,0.7) inset !important; -webkit-box-shadow: 0px 0px 7px rgba(59,133,0,0.7) inset !important; }


/* ===================== Banners ===================== */
#home-banner { background: #fff; display: block; position: relative; margin: 0; padding: 0; width: 992px; height: 318px; left: -8px; border-top: 3px solid #a2e46c; z-index: 1; }
#home-banner-frame { display: block; position: absolute; margin: 0; padding: 0; width: 990px; height: 316px; background: url(images/home-banner-frame.png) top left no-repeat; border: 1px solid #9d9d9d; z-index: 3; }
#home-banner-frame h3 { z-index: 3; position: relative; text-align: right; margin: 255px 20px 0 0; font-style: italic; font-weight: bold; font-size: 1.5em; line-height: 1.3em; }
#home-banner-image { position: relative; z-index: 2; margin-left: 1px; }
.banner-corner-left, .banner-corner-right { width: 8px; height: 6px; display: block; position: absolute; bottom: -6px; }
.banner-corner-left { background: url(images/banner-corner-left.png) top right no-repeat; left: 0px; }
.banner-corner-right { background: url(images/banner-corner-right.png) top left no-repeat; right: 0px; }

#interior-banner { background: #fff; display: block; position: relative; margin: 0; padding: 0; width: 992px; height: 236px; left: -8px; border-top: 3px solid #a2e46c; z-index: 1; }
#interior-banner-frame { display: block; position: absolute; margin: 0; padding: 0; width: 990px; height: 235px; background: url(images/interior-banner-frame.png) top left no-repeat; border: 1px solid #9d9d9d; z-index: 3; }
#interior-banner-image { position: relative; z-index: 2; margin-left: 1px; }
#interior-banner-shadow { background: url(images/banner-shadow.png) top center no-repeat; width: 940px; height: 20px; display: block; position: relative; margin: 0 auto; }


/* ABS Difference */
#abs-difference { width: 940px; background: url(images/banner-shadow.png) top center no-repeat #eeeeee; display: block; position: relative; margin: 0 auto; box-shadow: 0px 0px 21px rgba(0,0,0,0.1) inset; -moz-box-shadow: 0px 0px 21px rgba(0,0,0,0.1) inset; -webkit-box-shadow: 0px 0px 21px rgba(0,0,0,0.1) inset; padding-top: 20px; }
#abs-difference h2 { margin: 0; padding: 0; text-align: center; text-transform: uppercase; color: #1d1c1c; font-size: 2.2em; font-weight: bold; font-style: italic; text-shadow: 0px 1px 0px #fff; letter-spacing: 0.02em; }
#abs-difference img { position: relative; left: -8px; }
#abs-difference p { display: block; position: relative; float: left; width: 685px; margin: 5px 15px 15px 25px; color: #2f2f2f; font-style: italic; line-height: 1.3em; text-align: right; }
a.btn-get-started { width: 100px; float: left; text-align: left; margin-top: 7px; }

/* ===================== Main ===================== */

/* main area */
#main { width: 976px; margin: 0 auto; padding-bottom: 30px; position: relative; z-index: 10; top: 0; display: block; }
.blog-line-separator { display: block; position: relative; margin: 40px 0; height: 2px; background: #dddddd; }


/* ===================== Content ===================== */

/* content area */
#content, #content-3rd { padding: 0; float: left; z-index: 5; position: relative; display: block; min-height: 200px; margin: 40px 18px 0 18px; }
#content { width: 676px; }
#content-3rd { width: 412px; }
#content .gform_wrapper ul { margin-left: 0; padding-left: 0; }
#content .gform_wrapper img { float: none; border: none; margin: 0; }

.gform_wrapper h2.gsection_title { font-size: 1.8em !important; padding: 20px 0 0 0 !important; border-top: 1px dashed #666; line-height: 2em !important; background: #e5e5e5; }
.gform_wrapper .smaller-title h2 { font-size: 1.3em !important; border-top: none; background: none; }


/* ===================== Find Service Page Accordian ===================== */

div.service-areas-container { margin-top: 30px; }
div.service-areas-container h2 { display: block; clear: both; background: url(images/down-arrow.png) 5px 3px no-repeat #6cc922; color: #fff; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px; margin: 10px 0 5px; padding: 7px 40px 3px; line-height: 1.3em; text-align: left; font-size: 20px; cursor: pointer; }
div.service-areas-container h2:hover { background: url(images/down-arrow.png) 5px 3px no-repeat #4c8b19; box-shadow: 0px 0px 8px rgba(0,0,0,0.3) inset; -moz-box-shadow: 0px 0px 8px rgba(0,0,0,0.3) inset; -webkit-box-shadow: 0px 0px 8px rgba(0,0,0,0.3) inset; }
div.service-areas-container h2:active { background: url(images/down-arrow.png) 5px 3px no-repeat #3e7413; }
div.service-areas-container ul { margin: 0 !important; padding: 5px 20px !important; }
div.service-areas-container ul li { display: block; position: relative; float: left; width: 190px; text-align: left; border-bottom: 1px solid #ccc; margin: 0 20px 5px 0; }
div.service-areas-container ul li.last { margin-bottom: 40px; }


/* ===================== Sidebar ===================== */

/* sidebar area */
aside, #left { width: 264px; margin: 40px 0 0 0; float: left; z-index: 5; position: relative; padding: 0; }
aside ul { margin: 0; padding: 0; }
aside li { list-style: none; text-align: center; margin: 0.3em auto; padding: 0; }
aside h2, aside h3 { text-align: center; }

/* green box */
.green-box { background: #a2e46c; box-shadow: 0px 0px 20px rgba(0,0,0,0.15) inset; -moz-box-shadow: 0px 0px 20px rgba(0,0,0,0.15) inset; -webkit-box-shadow: 0px 0px 20px rgba(0,0,0,0.15) inset; width: 242px; left: -8px; display: block; position: relative; padding: 15px; text-align: left; }
.green-box h3 { font-size: 1.6em; margin: 0; padding-bottom: 5px; }
.green-box ul { text-align: left; }
.green-box ul li { text-align: left; display: block; }
.green-box ul li a { border: 1px solid #dafebd; background: #fff; box-shadow: 0px 0px 7px rgba(0,0,0,0.13) inset; -moz-box-shadow: 0px 0px 7px rgba(0,0,0,0.13) inset; -webkit-box-shadow: 0px 0px 7px rgba(0,0,0,0.13) inset; padding: 8px; text-align: left; color: #626262; display: block; font-weight: 400; font-size: 1.15em; }
.green-box ul li a:hover, .green-box ul li a:active { background: #2d2d2d; color: #fff; box-shadow: 0px -8px 9px rgba(0,0,0,1) inset; -moz-box-shadow: 0px -8px 9px rgba(0,0,0,1) inset; -webkit-box-shadow: 0px -8px 9px rgba(0,0,0,1) inset; border-color: #000; }

/* gray box */
.gray-box, .blog-box { background: #eeeeee; box-shadow: 0px 0px 21px rgba(0,0,0,0.1) inset; -moz-box-shadow: 0px 0px 21px rgba(0,0,0,0.1) inset; -webkit-box-shadow: 0px 0px 21px rgba(0,0,0,0.1) inset; width: 252px; display: block; position: relative; padding: 15px 0; }
.gray-box h3, .blog-box h3 { margin: 0; padding: 0; text-align: center; }
.gray-box ul { padding-left: 20px; }
.gray-box ul li, .blog-box ul li { color: #717171; text-decoration: none; font-size: 1em; line-height: 1.4em; list-style: none; text-align: left; background: url(images/green-checkmark.png) left top no-repeat; padding: 3px 0 0 35px; }
.gray-box ul li a { color: #717171; text-decoration: none; font-size: 1.1em; line-height: 1.4em; text-align: left; display: block; }
.gray-box ul li a:hover, .gray-box ul li a:active { background: none; color: #000; }

/* blog gray box */
.blog-box { margin-bottom: 25px; }
.blog-box ul { padding-left: 0; }
.blog-box ul li { background: none; list-style: disc; list-style-position: inside; padding: 3px 0 0 15px; }

/* sidebar box shadow */
.sidebar-box-shadow { width: 264px; height: 12px; background: url(images/sidebar-box-shadow.png) top center no-repeat; display: block; position: absolute; bottom: -12px; left: 0; }

/* gray box with outline */
.gray-box-outline { display: block; position: relative; width: 220px; margin: 30px auto; background: #eeeeee; box-shadow: 0px 0px 21px rgba(0,0,0,0.13) inset; -moz-box-shadow: 0px 0px 21px rgba(0,0,0,0.13) inset; -webkit-box-shadow: 0px 0px 21px rgba(0,0,0,0.13) inset; border: 2px solid #f8f8f8; }
.gray-box-outline:before { content: ""; border: 1px solid #e3e3e3; display: block; position: absolute; height: 103%; width: 102%; left: -3px; top: -3px; }
.gray-box-outline h3 { font-size: 1.5em; text-align: center; padding: 15px 10px 5px; margin: 0; }


/* testimonials widget */
.testimonials { width: 252px; border-top: 1px dashed #a2a2a2; border-bottom: 1px dashed #a2a2a2; }
.testimonials p { font-size: 0.9em; color: #535353; line-height: 1.5em; margin: 10px; font-style: italic; }
.testimonials a { float: left; margin: 0; font-style: normal; }
.testimonials cite { font-weight: bold; }
.testimonials img { position: relative; margin: 5px auto; display: block; }

/* testimonials page */
.ltw_tes_content_cont { width: 100% !important; }
.ltw_tes_item { margin: 10px 0 !important; width: 100% !important; border-bottom: 1px dashed #eeeeee !important; }
.ltw_tes_image_cont { float: left !important; height: 60px !important; margin: 0px 15px 10px 0px !important; width: 150px !important; }
.ltw_tes_content_cont { float: left !important; width: 510px !important; }
.ltw_tes_testimonial { color: #555555; font-size: 1em !important; line-height: 1.7em !important; margin: 0 0 12px; }
.ltw_tes_testimonial:before { content: '"'; }
.ltw_tes_testimonial:after { content: '"'; }
.ltw_tes_client_name { font-weight: bold; margin-top: 10px; font-size: 1em !important; }
.ltw_tes_image_cont img { border: none !important; }



/* ===================== Callouts - home page ===================== */
#callouts-menu { width: 946px; margin: 5px auto 0; position: relative; display: block; clear: both; }
#callouts-menu ul { width: 946px; margin: 0; padding: 0; display: block; }
#callouts-menu ul li { width: 234px; height: 71px; display: block; position: relative; float: left; margin: 0 2px 0 0; }
#callouts-menu ul li a { width: 214px; padding: 30px 10px 0; height: 41px; background: url(images/btn-callout.png) top left no-repeat; cursor: pointer; text-align: center; color: #1a1a1a; text-shadow: 0px 1px 0px rgba(255,255,255,0.3); display: block; float: left; font-size: 1.5em; font-family: Palatino, Times New Roman, Times, serif; }
#callouts-menu li.two-lines a { padding: 17px 24px 0; height: 54px; width: 186px; }
#callouts-menu ul li a:hover, #callouts-menu ul li a:active { background: url(images/btn-callout.png) bottom left no-repeat; }


/* ===================== Footer ===================== */

/* footer */
footer { min-width: 1000px; padding: 0; margin: -50px auto 0 auto; position: relative; background: url(images/footer-bg.png) top left repeat-x #020202; z-index: 1; }
#footer-fixed { width: 976px; margin: 0 auto; padding: 50px 0 0 0; display: block; position: relative; background: url(images/footer-shadow.png) 0px 50px no-repeat; }
.footer-column { width: 212px; margin: 25px 0 0 20px; padding: 0; float: left; display: block; }

/* footer columns */
#column1, #column2 { background: rgba(0, 0, 0, 0.6); min-height: 260px; }
#column1 ul, #column2 ul { padding: 2px 15px; margin: 0; width: 182px; }
#column1 ul li, #column2 ul li { list-style: none; border-bottom: 1px solid #6e6e6e; width: 182px; }
#column1 ul li:last-child, #column2 ul li:last-child { border-bottom: none; }
#column1 ul li a, #column2 ul li a { color: #fff; text-decoration: none; font-size: 1.1em; font-weight: 400; text-align: left; display: block; padding: 13px 0; text-shadow: 1px 1px 3px #000; }
#column1 ul li a:hover, #column1 ul li a:active, #column2 ul li a:hover, #column2 ul li a:active { background: #3b3b3b; color: #fff; box-shadow: 0px 0px 8px rgba(0,0,0,0.7) inset; -moz-box-shadow: 0px 0px 8px rgba(0,0,0,0.7) inset; -webkit-box-shadow: 0px 0px 8px rgba(0,0,0,0.7) inset; width: 197px; margin-left: -15px; padding-left: 15px; text-shadow: 1px 1px 3px #000; }

#column3 {  }
#column3 h3, #column4 h3 { color: #fff; font-size: 1.8em; text-shadow: 1px 1px 3px #000; margin-top: 0; }
#column3 h4, #column3 h4 a { font-family: 'Open Sans', Arial, sans-serif; font-weight: 700; font-size: 1em; text-align: left; line-height: 1.3em; color: #fff; text-decoration: none; }
#column3 a:hover, #column3 a:active { color: #a2e46c; background: none; }
#column3 p { color: #c8c8c8; font-size: 0.9em; margin: 0.8em 0; }
#column3 p.date { font-size: 0.8em; font-style: italic; }
#column3 p a { color: #fff; text-decoration: none; font-weight: bold; }
#column3 p.copyright { font-size: 0.8em; color: #666666; margin-top: 30px; }

#column4 {  }
#column4 h4 { color: #fff; font-size: 1.6em; }
#mc_embed_signup input { margin-bottom: 10px; }
#mc_embed_signup label { color: #e5e5e5; font-size: 0.9em; }
#mc-embedded-subscribe { width: 130px; height: 32px; border: none; outline: none; font-size: 0.9em; background: url(images/btn-gray.png) top left repeat-x; }
#mc-embedded-subscribe:hover, #mc-embedded-subscribe:active { cursor: pointer; background: url(images/btn-gray.png) bottom left repeat-x; }

#clickoptimize { display: block; position: relative; }
#clickoptimize .link a { display: block; width: 120px; height: 25px; background: url(images/clickoptimize.png) top left no-repeat; text-indent: -99999px; margin: 4px 0 15px; }
#clickoptimize .link a:hover { background: url(images/clickoptimize.png) bottom left no-repeat; }
#clickoptimize p { margin: 0; }
#clickoptimize p, #clickoptimize p a { color: #666; text-decoration: none; font-size: 10px; }
#clickoptimize p a:hover, #clickoptimize p a:active { background: none; color: #bababa; }

/* ===================== Sidebar Form Overrides ===================== */
aside .gform_heading { background: url(images/form-bg.png) top center no-repeat; width: 272px !important; height: 75px !important; display: block; position: relative; margin-bottom: -12px !important; }
aside .gform_heading h3 { color: #c5f79d; font-family: Palatino, Times New Roman, Times, serif; text-align: center !important; font-size: 20px !important; line-height: 1.3em; padding: 10px 20px 0 !important; width: 232px !important; }
aside .gform_wrapper { background: #eeeeee; box-shadow: 0 0 21px rgba(0,0,0,0.1) inset; -moz-box-shadow: 0 0 21px rgba(0,0,0,0.1) inset; -webkit-box-shadow: 0 0 21px rgba(0,0,0,0.1) inset; max-width: none !important; width: 272px !important; }
aside .gform_body { padding-top: 20px; }
aside .gform_footer { padding: 10px 0 0 0 !important; }
aside .gform_wrapper:after { background: url(images/form-bottom.png) top left no-repeat; width: 272px; height: 15px; display: block; position: relative; content: ""; bottom: -15px; left: 0px; }
aside .gform_wrapper .gfield_label { float: left; clear: both; padding: 0 0 0 10px !important; color: #5e5e5e !important; font-size: 0.9em !important; font-weight: 400 !important; }
aside .gform_wrapper .ginput_container { float: right; margin: 6px 10px 0 0 !important; }
aside .gform_wrapper input { border: 1px solid #c3c3c3; background: #fff; background:-webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#fff)); background:-moz-linear-gradient(top,  #ebebeb,  #fff); width: 190px !important; }
aside .gform_wrapper input.small { width: 130px !important; }
aside .gform_wrapper select { width: 160px !important; }
aside .gform_wrapper textarea { border: 1px solid #c3c3c3; background: #ffffff; background:-webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#fff)); background:-moz-linear-gradient(top,  #ebebeb,  #fff); width: 250px !important; }
aside .gform_wrapper textarea:focus, aside .gform_wrapper input:focus { border: 1px solid #8b8b8b; box-shadow: 0px 0px 3px #8b8b8b; -moz-box-shadow: 0px 0px 3px #8b8b8b; -webkit-box-shadow: 0px 0px 3px #8b8b8b; }

/* form button */
.gform_button { height: 30px !important; margin: 10px auto; }
.gform_button:hover, .gform_button:active { background-position-y: -35px !important; }

/* form error overrides */
.gform_wrapper li.gfield.gfield_error, .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning { padding: 0 !important; }
.gform_wrapper .validation_error { margin: 20px 0 0 10px !important; }
#gform_widget-3 .gform_body {
    margin: 12px 10px 0;
    box-sizing: border-box;
}

/* ==|== non-semantic helper classes ======================================== */
.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; }
.ir br { display: none; }
.hidden { display: none !important; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }


/* ==|== media queries ====================================================== */

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


}

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

}



/* ==|== print styles ======================================================= */
 
@media print {
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } 
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; } 
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; }
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}
