/* ------------------------------------------------------ FIXES AND PRINT ------------------------------------------------------ */

.ir {background-color: transparent; border: 0; overflow: hidden; *text-indent: -9999px;}

.ir:before {content: ""; display: block; width: 0; height: 150%;}

.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;}

.chromeframe {margin: 0.2em 0; background: #ccc; color: #000; padding: 0.2em 0;}

@media print {

  * {background: transparent !important; color: #000 !important; 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) ")";}

  .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;}
}

/* ------------------------------------------------------ HTML/BODY ------------------------------------------------------ */

body {font-family: 'Sentinel SSm A', 'Sentinel SSm B', georgia, "times new roman", times, sans-serif;  margin: 0; padding: 0; color: #393939; background-color: #333; width: 100%; position: relative;  font-size: 15px; line-height:1.5em}

h1, h2, h3 {font-weight: 400;margin: 0;padding: 0;}

h1 {font-size: 40px; line-height: 1.1em;}

	h1 a {text-decoration: none;}

h2 {color: #c83838; font-size: 20px; line-height: 1.2em; margin-top: 10px; margin-bottom: 0px;}

	h2 a, #main h2 a {text-decoration: none;color: #c83838; border: 0;}

	h2 a:hover, #main h2 a:hover {color: #b32d2d; border-bottom: 1px solid #b32d2d;}
	
h3 {font-weight: 700;margin-bottom: -10px; }

img.scale-with-grid {max-width: 100%;height: auto;}

#main {background-color: #FFF;}

	#main a {color: #54899d; text-decoration: none; border-bottom: 1px solid #72a7bb;}

	#main a:hover {color: #304f5b; border-bottom: 1px solid #43636f}

#services .one.column.alpha a {border: 0;}


/* ------------------------------------------------------ CONTENT ------------------------------------------------------ */

#topBar {width: 100%; height: 40px; padding: 30px 0; overflow: auto; background-color: #54899d;}

#topBar #logo a {display: block; float: left; height: 40px; width: 115px; background-image: url("../images/logo.png"); background-size: 100%; background-repeat: no-repeat;}

#topBar #desktopNav {float: right; max-width: 100%;}

#topBar #desktopNav .menu ul {margin: 0; padding: 0;list-style-type: none;}

#topBar #desktopNav .menu ul li {float: left;}

#topBar #desktopNav .menu ul li a {text-decoration: none; color: #FFF; margin-left: 20px; line-height: 40px; font-size: 14px;}

#topBar #desktopNav .menu ul li a:hover {border-bottom: 1px solid #fff; border-bottom: 1px solid rgba(255,255,255,0.9);}

#topBar #desktopNav .menu ul li.current_page_item a {border-bottom: 1px solid #fff; border-bottom: 1px solid rgba(255,255,255,0.9)}

#topBar #desktopNav .children {display: none;}

#mobileNav, #mobileNavOpen {background-color: #54899d;position: absolute;top: 45px;right: 15px;}

#mobileNav .menu ul {margin: 0;margin-bottom: -1px;padding: 0;list-style-type: none;}

#mobileNav .menu ul li {border-top: 1px solid #162429;border-bottom: 1px solid #040707;}

#mobileNav .menu ul li a {font-size: 18px; display: block; color: #FFF; height: 44px; line-height: 44px; text-decoration: none; padding-left: 20px;}

.close-btn {font-family: helvetica; text-transform: uppercase; font-size: 12px; line-height: 1em;}

#hero {background-color: #54899d; color: #FFF; padding: 70px 0;}

#hero h2 {color: #a3c2ce;}

#hero #heroCTA a {margin-top: 30px; display: block; width: 160px; height: 50px; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; -o-border-radius: 5px; border-radius: 5px; font-size: 15px; line-height: 50px; text-align: center; text-decoration: none; color: #fff; background-color: #1f3239; -webkit-transition: 200ms; -moz-transition: 200ms; -o-transition: 200ms; transition: 200ms;}

#hero #heroCTA a:hover {background-color: #0d1518;}

#hero #heroCTA a.oneLine {margin-top: 0px;}

#hero #heroCTA a.twoLine {margin-top: 30px;}

#main .alignleft {float: left; padding: 10px 10px 10px 0}

#main .alignright {float: right; padding: 10px 0 10px 10px}

#main h2 {clear: both}

#homeContent aside {text-align: center;}

#services {margin-top: -30px;}

#services .eight.columns {margin-top: 40px;}

#service article {margin-top: -40px;}

#services h2 {margin-top: 0px;}

#servicesAside {margin-top: 35px;}

#servicesAside a {line-height: 35px; border:0;}

#main #services .one.column.alpha a {border: 0px; overflow: hidden; display: block}

#main #services .one.column.alpha a img {border: 0}


/* ------------------------------------------------------ FOOTER ------------------------------------------------------ */

footer {background-color: #1F3239; color: #999; font-size: 14px; line-height: 20px;}

footer #blog-reference {padding: 30px 0 20px;background-color: #71a1b3;color: #dbe6ea;}

footer #blog-reference .label {color: #b8d0d9; margin-bottom: 10px;}

footer #blog-reference .ten.columns {color: #1c2a2f;}

footer #blog-reference .ten.columns a {color: #1c2a2f;text-decoration: underline;}

footer #blog-reference .ten.columns a:hover {color: #000;text-decoration: none;}

footer #blog-reference .two.columns {color: #b8d0d9;}

.blog-post-short {overflow: hidden; clear: both;}

.blog-post-short:last-child {margin-right: 0;}

.read-more-link {float: left; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px;-o-border-radius: 5px; border-radius: 5px; padding: 5px 10px; text-align: center;text-decoration: none; color: #fff; background-color: #1f3239; border: 0;}

.footer-blog-title {margin-bottom: 10px; line-height: 1.3em; font-size: 16px; line-height: 1.3em;}

.footer-blog-title a {color: #fff; text-decoration: none; font-weight: bold;}

.footer-blog-title a:hover {border-bottom: 1px solid #fff;}

.the-date {clear: both;}

footer #footer {padding-top: 20px; padding-bottom: 20px;}

footer #footer a {color: #71a1b3;}

footer #footer a:hover {color: #54899d;}

footer p {margin-top: 0} 

footer #copyright {padding: 20px 0 10px;}

footer #copyright ul {padding: 0; margin: 0; font-size: 12px; line-height: 1.2em}

footer #copyright ul li {float: left; list-style: none; padding: 0 10px 0 0; margin: 0 10px 0 0; border-right: 1px solid rgba(255,255,255,0.1)}

footer #copyright ul li:last-child {margin: 0; padding: 0; border: 0}

footer #copyright a {color: #999; text-decoration: none}

footer h3 {font-size: 16px;line-height: 20px; margin-top: 20px; margin-bottom: 0; font-weight: 300; color: #eee;}


/* ------------------------------------------------------ BLOG ------------------------------------------------------ */

#blog {margin-top: -40px; position: relative}

#blog-header { position: absolute; top: 60px}

#blog-entries { padding-top: 50px; margin-bottom: 30px}

#blog .blogEntry {padding-top: 20px; padding-bottom: 20px; border-bottom: 1px solid #eee;}

#blog .blogEntry aside {color: #aaa;font-size: 14px;line-height: 1.4em; margin: 20px 0 0; padding-bottom: 4px; overflow: hidden}

#blog .blogEntry aside p {margin: 0;}

#featured {padding: 0; margin: 0; font-size: 16px; line-height: 1.4em; margin-top: 30px; clear: both}

#featured ul {padding: 0; margin: 0 0 25px}

#featured li {margin: 0; padding: 0; list-style: none; margin-bottom: 10px}

#featured a {text-decoration: none; border: 0}

#featured h3 {margin-bottom: 10px}

#searchform {margin-top: -7px}

.screen-reader-text {display: none}

#blog img {max-width: 100%;}

#navPosts {padding-top: 50px; overflow: auto; clear: both}

#navPosts .prev {float: left;}

#navPosts .next {float: right; text-align: right;}

#main a.serviceCTA {margin-top: 30px; display: block; width: 160px; height: 60px; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; -o-border-radius: 5px; border-radius: 5px; font-size: 18px; line-height: 60px; text-align: center; text-decoration: none; color: #fff; background-color: #1f3239; -webkit-transition: 200ms; -moz-transition: 200ms; -o-transition: 200ms; transition: 200ms; border: 0;}

a.serviceCTA:hover {background-color: #0d1518;}

#imageAside {font-size: 0; padding-top: 20px;}

#category-tag-title {font-size: 20px; line-height: 1em; font-weight: bold; margin-top: 50px}

h3#comments {margin: 30px 0 10px; line-height: 1.2em}

#respond {padding-top: 20px}

.commentlist {list-style: none; padding-left: 0; margin-left: 0}

.commentlist {margin-left: 0; padding-left: 0}

.comment-body {font-size: 14px; line-height: 1.4em; clear: both}

.avatar {-webkit-border-radius: 2px; -moz-border-radius: 2px; -ms-border-radius: 2px; -o-border-radius: 2px; border-radius: 2px; margin-right: 10px; float: left}

.says {display: none}

.pingback {display: none}

.comment-body {background: #f5f5f5; padding: 20px 20px 4px; margin-bottom: 15px; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; -o-border-radius: 5px; border-radius: 5px;}

.comment-author {float: left; height: 32px; padding-bottom: 13px}

.commentmetadata {float: right; height: 32px; font-size: 12px; line-height: 1em; margin-top: 10px}

#main .commentmetadata a {color: #777; text-decoration: none; border: 0}

cite.fn {font-style: normal; float: left; font-weight: bold; line-height: 32px; padding-top: 1px}

#main cite.fn a {border: 0}

#main cite.fn a:hover {border-bottom: 1px solid #72A7BB}

.comment-body p {clear: both}

#respond label {font-weight: bold}




/* ------------------------------------------------------ MOBILE NAV ------------------------------------------------------ */

#outer-wrap {position: relative; overflow: hidden; width: 100%;}

#inner-wrap {position: relative; width: 100%;}

.block {position: relative; margin: 0 auto; padding: 1.5em 1.25em; max-width: 60em;}

#main .block {padding: 2.625em 1.875em;}

#nav .block {position: relative; padding: 0;}

#nav {font-size: 16px; position: absolute; top: 0;}

#nav:not(:target) {z-index: 1;height: 0;}

#nav .children {display: none;}

#nav div ul {margin: 0;padding: 0;}

	#nav div ul li {position: relative;border-bottom: 1px solid rgba(255, 255, 255, 0.1);}

	#nav div ul li a {display: block; height: 40px; line-height: 40px; padding: 0 0 0 15px; text-decoration: none; color: #999;}

	#nav div ul li a:hover {color: #FFF;}

	#nav div ul li:hover {background-color: #4d4d4d;}

	#nav div ul li.current_page_item a {color: #FFF;}

.close-btn-container {padding: 15px;}

.close-btn-container .close-btn {display: block; width: 100%; height: 40px; background-color: #1a1a1a; text-align: center; line-height: 40px; color: #FFF; text-decoration: none; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; -o-border-radius: 5px; border-radius: 5px; filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70); opacity: 0.7;}

.close-btn-container .close-btn:hover {filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100); opacity: 1;}

.js-ready #nav {height: 100%; width: 70%; background: #333333; -webkit-box-shadow: inset -1.5em 0 1.5em -0.75em rgba(0, 0, 0, 0.25); -moz-box-shadow: inset -1.5em 0 1.5em -0.75em rgba(0, 0, 0, 0.25); box-shadow: inset -1.5em 0 1.5em -0.75em rgba(0, 0, 0, 0.25);
}

#mobileNavOpen img {display: block;}


/* ------------------------------------------------------ CONTACT FORM ------------------------------------------------------ */

.wpcf7-form {font-weight: bold; padding: 0px 15px 0px; background: #eee; overflow: hidden; margin: 20px 0 40px; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;}

	.wpcf7-submit, .wpcf7-form input[type="text"], .wpcf7-form textarea, .wpcf7-form input[type="email"], #respond input[type="text"], #respond textarea {font-family: 'Sentinel SSm A', 'Sentinel SSm B', georgia, "times new roman", times, sans-serif;}

	.wpcf7-form input[type="text"], .wpcf7-form textarea, .wpcf7-form input[type="email"], #searchform input[type="text"], #respond input[type="text"], #respond textarea {moz-box-shadow:rgba(0, 0, 0, 0.0976563) 0 1px 2px inset, transparent 0 0 0; -webkit-box-shadow:rgba(0, 0, 0, 0.0976563) 0 1px 2px inset, transparent 0 0 0; box-shadow:rgba(0, 0, 0, 0.0976563) 0 1px 2px inset, transparent 0 0 0; color:#666666;transition: background 0.3s ease-in-out; -moz-transition: background 0.3s ease-in-out; /* Firefox 4 */ -webkit-transition: background 0.3s ease-in-out; /* Safari and Chrome */ -o-transition: background 0.3s ease-in-out; /* Opera */ background-color:#FFFFFF; border:1px solid #B3B3B3; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px;  font-size:15px; outline:0; padding:0.5em; width: 95%;  }
  
	.wpcf7-form textarea, #respond textarea {height: 90px; resize:none; max-height: 90px;}
	
	 #searchform input[type="text"] {width: 200px}

.wpcf7-submit, #searchsubmit, #respond #submit {margin-top: 30px; display: block; width: 160px; height: 50px; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; -o-border-radius: 5px; border-radius: 5px; font-size: 15px; line-height: 50px; text-align: center; text-decoration: none; color: #fff; background-color: #1f3239; -webkit-transition: 200ms; -moz-transition: 200ms; -o-transition: 200ms; transition: 200ms; border: 0; font-family:'Sentinel SSm A', 'Sentinel SSm B', georgia, "times new roman", times, sans-serif; }
  
  .wpcf7-submit:hover, #searchsubmit:hover, .search-results #main a.serviceCTA:hover, #respond #submit:hover {cursor: pointer; background-color: #0d1518;}

	#searchsubmit, .search-results #main a.serviceCTA {margin-top: 15px; width: 100px; height: 40px; line-height: 38px; max-width: 200px}
	
	.search-results #main a.serviceCTA {font-size: 15px; width: 120px; line-height: 40px; margin-bottom: 10px}

	.wpcf7-form p {margin-bottom: 15px} 

	.wpcf7-form p:last-child {margin-bottom: 0}

	.ajax-loader {float: left; margin-top: 8px}

	.wpcf7-not-valid-tip {left: 0 !important; top: 32px !important; padding: 0 !important; border: 0 !important; background: none !important; text-transform: uppercase; font-size: 11px !important; line-height: 1em !important; color: #aaa !important}

	.your-message .wpcf7-not-valid-tip {top: 24px !important}

	.div.wpcf7-response-output, .wpcf7-display-none, .wpcf7-validation-errors, .wpcf7-mail-sent-ng {clear: both !important; top: 40px !important}

.wpcf7-display-none {display: none;}

.wpcf7-response-output {padding: 10px 0;}

.page-id-48 #heroCTA {display: none}

.blog #topBar, .single #topBar, .archive #topBar, .search-results #topBar {padding-bottom: 60px; position: relative; z-index: 10000}

#client-logos {width: 100%; padding: 10px 0 0; margin: 0 12px; clear: both; list-style: none;}

#client-logos li {margin: 0 30px 30px 0; width: 210px; padding: 20px 0; float: left; background: #eee; text-align: center; height: 150px;}

#client-logos li img {height: 150px; margin-bottom: 0;}

.page-id-20 #imageAside {clear: both}

.addtoany_share_save_container {padding-top: 10px; margin-bottom: 0 !important}

#main .addtoany_share_save_container a {border: 0; text-decoration: none}

/* ------------------------------------------------------ MEDIA QUERIES ------------------------------------------------------ */

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi) { 

	#topBar #logo a {height: 40px; width: 115px; background-image: url("../images/logo@2x.png"); background-size: 100%;background-repeat: no-repeat;}

}

@media (max-width: 479px) {
	.js-ready #nav {left: -70%;}
	#topBar #desktopNav {display: none;}
	ul {padding-left: 20px;}
	h1 {font-size: 30px;line-height: 40px;}
	#hero {padding: 40px 0;}
	#services .one.column {text-align: center;}
	#services h2 {text-align: center;}
	#service aside {margin-top: 40px;}
	#nav {position: absolute; top: 0;overflow: hidden;}
}

@media (min-width: 480px) and (max-width: 767px) {
	body {font-size: 16px; line-height:1.5em}
	.js-ready #nav {left: -70%;}
	#topBar #desktopNav {display: none;}
	#topBar #mobileNavOpen {display: none;height: 40px;width: 40px;color: #FFF;float: right;display: block;}
	ul {padding-left: 20px;}
	#hero {padding: 40px 0;}
	#services .one.column {text-align: center;}
	#services h2 {text-align: center;}
	#service aside {margin-top: 40px;}
	#nav {position: absolute;top: 0;overflow: hidden;}	
	h1 {line-height: 50px;}
	.footer-blog-title {font-size: 18px; line-height: 1.4em;}
	#footer .four.columns {width: 48%; float: left;}
	#footer .sixteen.columns {clear: both;}
}

@media (min-width: 768px) {
	body {font-size: 20px; line-height: 28px;}
	#mobileNav, #mobileNavOpen img {display: none;}
	#homeContent aside {text-align: center;}
	#heroText {width: 70%; float: left;}
	#hero #heroCTA {float: right; width: 100px;}
	#hero #heroCTA a {margin-top:17px;float: right; height: 60px; font-size: 16px; line-height: 60px;}
	footer #blog-reference .two.columns {text-align: right; float: right;}
	#nav {display: none;}
	h1 {font-size: 35px;line-height: 45px;}
	h2 {font-size: 30px;line-height: 40px;}
	h3 {font-size: 20px;line-height: 40px;}
	
	#blog .blogEntry {padding-top: 20px; padding-bottom: 20px;}
	.footer-blog-title {font-size: 20px; float: left;}
	#blog-entries {float: left;}
	#blog-reference .container {}
		
	.wpcf7-form {padding: 10px 20px 10px}
	#footer .four.columns {width: 22%; float: left;}
	#footer .sixteen.columns {clear: both;}
		
	#category-tag-title	{margin-top: 25px}
		
	#services h2 {float: left; margin-bottom: 10px}
	
	.seven.columns.omega > p {clear: both}
	.blog #main, .single #main, .archive #main, .search-results #main {padding-top: 40px}
	
	#blog-header {top: 10px}

#blog-entries { padding-top: 0px}

.comment-body {font-size: 16px; line-height: 1.4em;}

}

@media (min-width: 820px) {
	h1 {font-size: 38px;line-height: 48px;}
	#hero #heroCTA a {margin-top:21px;}
	#topBar #desktopNav .menu ul li a {font-size: 16px; margin-left: 25px;}
}

@media (min-width: 850px) {
	h1 {font-size: 40px;line-height: 52px;}
	#hero #heroCTA a {margin-top:25px; width: 170px;}
	
}

@media (min-width: 900px) {
	.the-date {clear: none; float: right; line-height: 26px;}
	footer #blog-reference {padding: 40px 0;}
}

@media (min-width: 960px) {
	#hero #heroCTA a { margin-top:34px; font-size: 18px; line-height: 60px; width: 200px;}
	.blog-post-short {clear: none;  margin-bottom: 0;}
	h1 {font-size: 46px;line-height: 60px;}
	#main {padding: 40px 0 60px 0;}
	#servicesAside {margin-top: 13px;}
	#homeContent aside {text-align: right;}
	.wpcf7-form input[type="text"], .wpcf7-form textarea, .wpcf7-form input[type="email"] { font-size:20px;}
	#footer .four.columns {width: 220px}
	.blog #topBar, .single #topBar, .archive #topBar, .search-results #topBar {padding-bottom: 30px; }
	#blog .blogEntry {padding-top: 60px; padding-bottom: 40px;}
	.search-results #blog .blogEntry {padding-top: 20px; padding-bottom: 20px;}	
	.page-id-20 #main .container {position: relative}
	.page-id-20 #imageAside {position: absolute; right: 0; top: 0}
	.search-results #blog-entries {padding-top: 40px}
	#blog-header {top: 25px; left: 10px}
	#featured {clear: none; float: right;}
	 #searchform input[type="text"] {width: 90%}
}

@media (min-width: 1200px) {
#topBar {position: fixed; z-index: 100; transition: all 0.2s ease-in-out 0s;}
.blog #topBar, .single #topBar, .archive #topBar, .search-results #topBar { position: fixed; z-index: 100}
#hero {padding-top: 170px}
#topBar.fixedHeader {padding: 12px 0; transition: all 0.4s ease-in-out 0s;}
#blog {margin-top: 30px;}
.blog #main, .single #main, .archive #main, .search-results #main {padding-top: 80px}




}
