/*
	Theme Name: Tech Site Builder
	Description: Tech Site Builder version 3.1
	Theme Version: 3.1
	Template: genesis
	Template Version: 2.0.1

*/

img {
	vertical-align: bottom;
}

#clear {
	clear: both;
}

/**********************
WordPress Admin Bar
**********************/

#wpadminbar {
    color: #818385;
    background: #ffffff;
}

#wpadminbar .ab-empty-item,
#wpadminbar a.ab-item,
#wpadminbar>#wp-toolbar span.ab-label,
#wpadminbar>#wp-toolbar span.noticon,
#wpadminbar #adminbarsearch:before,
#wpadminbar .ab-icon:before,
#wpadminbar .ab-item:before {
	color: #818385;
}

#wpadminbar:not(.mobile) .ab-top-menu>#wp-admin-bar-ub_admin_bar_70:hover>.ab-item {
	background: #fff;
}

/*#wpadminbar #wp-admin-bar-customize {
	display: none;
}*/

/**********************
General
**********************/
h1, h2, h3, h4, h5, h6, body {
	font-family: 'Slabo 27px', serif;
}

body {
	background-color: #f5f5f5;
	color: #555;
}

.entry-content a,
.sidebar a,
a {
    border-bottom: none;
    color: #2383dc;
	text-decoration: none;
}

a i.fa, i.fa{
	color: #555;
}


h1, h2, h3, h4, h5, h6 {
	font-weight: bold;
	color: #555;
    word-wrap: break-word;
}

.entry-content a:hover,
.sidebar a:hover,
a:hover {
    text-decoration:underline;
	color: #2383dc;
}

.entry-content a:visited,
.sidebar a:visited,
a:visited {
    /*color: #aaa;*/
}

.nav-primary a {
	color: #fff;
}

blockquote {
    background: #eee;
    border: 2px dashed #bbb;
    margin: 4rem 2rem 2.4rem;
    padding: 20px;
}

blockquote:before {
    content: "";
}

blockquote h3 {
	margin: 0;
}

.content a.button, .content a.button:visited {
	padding: 6px 14px;
	color: #fff;
}

.content .entry {
    background-color: #fff;
}

.entry {
    padding: 50px 60px;
}

.sidebar .widget {
    background-color: #fff;
}

.a2a_default_style {
	margin-top: 20px;
}

.a2a_default_style p {
	margin-bottom: 0;
}

/**********************
Header
**********************/

.site-header {
	min-height: 0;
}

.site-header,
.nav-primary {
	border-bottom: 0;
}

header .title-area h1.site-title {
	font-weight: bold;
	font-size: 2.8em;
}

header .title-area {
	width: 100%;
}

.title-area h1 a:hover {
	text-decoration: none;
}

header .header-left-third .wrap {
	padding: 0;
}

header .header-left-third .title-area  h1{
	font-size: 2.2em;
}

.site-header .wrap {
	padding: 30px 0;
	position: relative;
}

.header-right-half {
	float: right;
	width: 600px;
	text-align: right;
}

.header-left-half {
	width: 600px;
}

.header-right-half,
.header-right-third {
	height: 105px;

	/* Internet Explorer 10 */
	display:-ms-flexbox;
	-ms-flex-pack:end;
	-ms-flex-align:center;

	/* Firefox */
	display:-moz-box;
	-moz-box-pack:end;
	-moz-box-align:center;

	/* Safari, Opera, and Chrome */
	display:-webkit-box;
	-webkit-box-pack:end;
	-webkit-box-align:center;

	/* W3C */
	display:box;
	box-pack:end;
	box-align:center;
}

.header-middle-third {
	height: 105px;

	/* Internet Explorer 10 */
	display:-ms-flexbox;
	-ms-flex-pack:center;
	-ms-flex-align:center;

	/* Firefox */
	display:-moz-box;
	-moz-box-pack:center;
	-moz-box-align:center;

	/* Safari, Opera, and Chrome */
	display:-webkit-box;
	-webkit-box-pack:center;
	-webkit-box-align:center;

	/* W3C */
	display:box;
	box-pack:center;
	box-align:center;
}

.header-left-third {
	float: left;
	width: 395px;
}

.header-middle-third {
	float: left;
	width: 395px;
	text-align: center;
}

.header-right-third {
	float: left;
	width: 395px;
	text-align: right;
}

.headerphone {
	font-size: 1.8em;
	display: inline-block;
	vertical-align: bottom;
	font-weight: bold;
	line-height: 130%;
}

.headeraddress {
	font-size: 1.2em;
}

.headeraddress a:hover {
	text-decoration: none;
}

.tsb-phone, .tsb-soc, .tsb-addy{
	display: inline-block;
}

.header-middle-third .headeraddress,
.header-right-third .headeraddress {
	font-size: 1.7em;
	line-height: 100%;
}

.callus, .followus {
	font-size: 1.3em;
	vertical-align: bottom;
	line-height: 100%;
	font-weight: bold;
}

header .site-title {
	font-size: 2.2em;
}

header .site-description {
	font-size: 1.2em;
}

i.socialicon {
	margin: 5px 5px 0;
	font-size: 1.6em;
}

.header-middle-third i.socialicon,
.header-right-third i.socialicon {
	margin: 10px 5px 0;
	font-size: 1.8em;
}

.header-image .site-header a {
	display: block;
}

.header-image .site-header .headeraddress a,
.header-image .tsb-phone a {
	display: inline;
}

/**********************
Navigation
**********************/

.nav-primary {
    background-color: #333;
}

.navtoggle {
	display: none;
}

.genesis-nav-menu a {
	font-weight:bold;
	padding: 25px 15px;
	margin: 0 10px;
}

nav .genesis-nav-menu li {
	display: inline-block;
	text-align: left;
}

.genesis-nav-menu .sub-menu a {
	font-weight:bold;
	padding: 15px 15px;
	margin:0;

}

body .nav-primary a:hover,
body .nav-primary .current-menu-item > a {
	color: #333;
	text-decoration: none;
	background: #fff;
}
.nav-primary .genesis-nav-menu a {
	color: #fff;
}
body .nav-primary .genesis-nav-menu a:hover,
body .nav-primary .genesis-nav-menu a:focus,
body .nav-primary .genesis-nav-menu .current-menu-item > a {
	text-decoration: none;
}

.nav-primary .genesis-nav-menu .sub-menu a:hover {
	background: #333;
	color: #fff!important;
	text-decoration: none;
}

}

/**********************
Home Page
**********************/

.home .site-container {
	background: url("/../wp-content/uploads/2014/06/computer-background2.jpg") no-repeat center -100px;

}

#slogan {
	width: 960px;
	margin: 30px auto;
	text-align: center;

}

#slogan h2 {
	font-size: 4rem;
	text-shadow: 1px 1px 0 #ddd, -1px -1px 0 #ddd, -1px 1px 0 #ddd, 1px -1px 0 #ddd;
}

#main-boxes {
	white-space: nowrap;
}

#main-boxes .box {
	white-space: normal;
    background: #FFFFFF;
    margin: 0 30px 0 0;
    padding: 30px;
    text-align: center;
	width: calc(33% - 20px);
    position: relative;
	display: inline-block;
	vertical-align: top;
}

#main-boxes .box i {
	color: #888;
}

#main-boxes .box:hover, #main-boxes .box:hover h3 {
	text-decoration: none;
}

#main-boxes .box:last-child {
	margin-right: 0;
}

#main-boxes .box .fa-5x {
	font-size: 6em;
	margin-bottom: 10px;
}

#big-box {
	background: #fff;
	margin: 30px 0;
	padding: 30px 30px 30px 30px;
}

#featured-boxes #featured-box {
    background: #FFFFFF;
    float: left;
    margin: 30px 68px 30px 0;
    padding: 30px;
    text-align: center;
    width: 47%;
}

#featured-boxes #featured-box:last-child {
	margin-right: 0;
}

#featured-box  h3 {
	margin-bottom: 30px;
}

#featured-box  h4, #featured-box p {
	text-align: left;
}

#featured-box  img {
	float: left;
	text-align: left;
	width: 180px;
	margin: 5px 20px 5px 0;
}

.input-name,
.input-phone
{
	width: 45%;
	float: left;
	margin-right: 5%;
}

.input-email,
.input-location {
	width: 50%;
	float: left;
	margin-right: 0;
}
 form input {
	padding: 10px;
 }

/* Home Page */

.front-page-contact {
	width: 50%;
	float: right;
	margin: 0 0 0 50px;
}

/**********************
Slider
**********************/
.flexslider {
	box-sizing: content-box;
}

@media only screen and (max-width: 801px) {

	.flexslider.hide-slider-sm {
		display: none;
	}
}

.slides {
	position: relative;
	/*min-height: 354px;*/
}

.slide-item {
	position: relative;
	/*min-height: 300px;*/
	overflow: hidden;
}

.slide-item a {
	display: block;
	position: relative;
	height: 100%;
}

.slides a img {
	margin-bottom: 0;
}

.slide-message {
	position: absolute;
	display: block;
	background: #ddd;
	background-color:rgba(250, 250, 250, 0.9);
	max-width: 50%;
	padding: 2% 2% 0;
	bottom: 15%;
    left: 5%;
}

.slide-message-top-left,
.slide-message-top-right {
	top: 15%;
	bottom: auto;
}

.slide-message-bottom-left,
.slide-message-bottom-right {
	bottom: 15%;
}

.slide-message-top-right,
.slide-message-bottom-right {
	right: 5%;
	left: auto;
}

.slide-message-top-left,
.slide-message-bottom-left {
	left: 5%;
}

.slide-message h1 {
	font-size: 30px;
	color: #555;
}

.slide-message p {
	color: #333;
}

.flex-control-nav {
	z-index: 5;
}

img.alignleft,
.wp-caption.alignleft {
	margin: 0 24px 20px 0;
	margin: 0 2.4rem 2rem 0;
}

img.alignright,
.wp-caption.alignright {
	margin: 0 0 20px 24px;
	margin: 0 0 2rem 2.4rem;
}

/**********************
Services List Page
**********************/

#service-boxes .box {
    background: #FFF;
    float: left;
    margin: 20px 39px 20px 0;
    padding: 30px;
    text-align: left;
    width: 30%;
	position: relative;
}

#service-boxes .box:nth-child(3n+4) {
	clear: left;
}

#service-boxes .box i {
	color: #888;
	margin-bottom: 25px;
}

#service-boxes .box:last-child {
	margin-right: 0;
}

#service-boxes .box .fa-5x {
	font-size: 6em;
	margin-bottom: 10px;
}

#service-boxes .price {
	float: right;
	background: #555;
	color: white;
	position: absolute;
	right: 0;
	top: 0;
	padding: 10px;
	font-size: 20px;
	font-weight: bold;
	z-index: 10;
}

.service-image-spacer {
	height: 118px;
}

.service-image {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
}

#service-boxes h3 a {
	color: inherit;
}

#service-boxes h3 a:hover {
	text-decoration: none;
}

/**********************
Single Service Page
**********************/

.single-services .entry-meta {
	display: none;
}

.single-services article {
	position: relative;

}

.single-service-price {
	position: absolute;
	top: 50px;
	right: 0;
	background: ##555;
	color: white;
	padding: 10px;
	font-size: 20px;
	font-weight: bold;

}

/**********************
Testimonials Page
**********************/

.entry .fa-quote-left {
	float: left;
	margin-top: 5px;
}

.entry .testimonial {
	margin-left: 40px;
}

.testimonial-text {
	font-size: 1.3em;
	line-height: 1em;
}

.testimonial-credit {
	margin-top: 20px;
	line-height: 1em;
}

.testimonial-credit img {
	float: left;
	margin-right: 10px;
	width: 65px;
}

.testimonial-credit .testimonial-name {
	font-weight: bold;
	display: inline-block;
	margin-top: 20px;
}

.testimonial-credit .testimonial-name,
.testimonial-credit .testimonial-company {
	font-size: 15px;
	line-height: 100%;
}

/**********************
Testimonials Widget
**********************/

body .flexslider.testimonials {
	margin: 0;
	border: none;
	border-radius: 0;
	box-shadow: none;
}

.flexslider.testimonials ol.flex-control-paging {
	display: none;
}

.sidebar .flexslider.testimonials li {
	border-bottom: none;
}

body .flexslider.testimonials  .slides img {
	width: 65px;
}

body .flexslider.testimonials .testimonial {
	width: 92%;
	float: right;
}

body .flexslider.testimonials i {
	position: absolute;
}

.widget-wrap .testimonial-credit .testimonial-name  {
	margin-top: 0;
}

.footer-widgets .flexslider {
	background: none;
}

.footer-widgets .flexslider.testimonials i  {
	color: #fff;
}

.footer-widgets .flex-direction-nav {
	display: none;
}

.footer-widgets .flexslider li {
	border-bottom: none;
}

/**********************
Sidebar
**********************/

aside.sidebar i.socialicon {
	margin: 0 5px;
	font-size: 1.8em;
}

.sidebar .widget {
	padding: 0;
}

.sidebar .widget-wrap {
	padding: 40px;
}

h4.widget-title {
	text-transform: uppercase;
}

/**********************
Footer
**********************/

/* # Footer Widgets
---------------------------------------------------------------------------------------------------- */

.footer-widgets {
	background-color: #333;
	clear: both;
	padding-top: 40px;
}

.footer-widgets,
.footer-widgets a {
	color: #999;
}

.footer-widgets input {
	border: 1px solid #333;
}

.footer-widgets a.button,
.footer-widgets a:hover {
	color: #fff;
}

.footer-widgets .widget_tsb_social_widget a {
	float: left;
}

.footer-widgets li {
	border-bottom: 1px dotted #666;
	margin-bottom: 10px;
	padding-bottom: 10px;
}

.footer-widgets .widget {
	margin-bottom: 40px;
}

.footer-widgets p:last-child {
	margin-bottom: 0;
}

.footer-widgets-1,
.footer-widgets-2,
.footer-widgets-3 {
	width: 340px;
}

.footer-widgets-1 {
	margin-right: 60px;
}

.footer-widgets-1,
.footer-widgets-2 {
	float: left;
}

.footer-widgets-3 {
	float: right;
}

.footer-widgets {
	color: #ccc;
}

.footer-widgets i.socialicon,
.footer-widgetsa i.fa,
.footer-widgets i.fa {
	color: #ccc;
}

.footer-widgets i.socialicon {
	margin: 0 5px;
	font-size: 1.8em;
}

.footer-widgets a:hover i.socialicon {
	color: #fff;
}

.footer-widgets .widget-title {
    color: #fff;
}

.creds {
	text-align: center;
}

/***************
404 Page
***************/
.error404 .entry-content input[type="search"] {
	float: left;
    width: 50%;
    padding: 14px
}

.error404 .entry-content input[type="submit"] {
	float: left;
    display: inline;
}

.error404 .entry-content .search-form {
	width: 100%;
}


/***************
Beaver Builder
***************/

.fl-pricing-table .fl-pricing-table-features li {
	list-style-type: none;
}

/**
 * Helpers
 */
.no-padding {
	padding: 0 !important;
}

/*************************************************
Responsive
**************************************************/

@media only screen and (max-width: 1281px) {

	.header-left-third,
	.header-middle-third,
	.header-right-third {
		width: 33%;
	}

	.header-right-half,
	.header-left-half {
		width: 48%;
	}

	#main-boxes .box {
		margin: 30px 37px 30px 0;
		padding: 30px 10px 0;
		width: calc(33% - 25px);
	}

	#featured-boxes #featured-box {
		margin-right: 48px;
	}

	#service-boxes .box {
		margin: 15px;
	}

	#service-boxes .box .fa-5x {
			font-size: 5em;
	}

	.service-image-spacer {
		height: 100px;
	}
	.footer-widgets .widget-area{
		width: 30%;
	}

}

@media only screen and (max-width: 961px) {

	.site-inner, .wrap {
		max-width: 940px;
	}

	.header-left-third,
	.header-middle-third,
	.header-right-third {
		width: 260px;
	}

	.header-middle-third .headeraddress,
	.header-right-third .headeraddress {
		font-size: 1.5em;
	}



	#main-boxes .box {
		margin: 30px 30px 30px 0;
		width: calc(33% - 20px);
		min-height: 350px;
	}

	#featured-boxes #featured-box {
		margin: 0;
		width: 100%;
	}

	#service-boxes .box {
		width: 45%;
		height: auto;
	}

	#service-boxes .box .fa-5x {
			font-size: 6em;
	}

	.service-image-spacer {
		height: 118px;
	}
}

@media only screen and (max-width: 801px) {

	.header-left-third,
	.header-middle-third,
	.header-right-third {
		width: 100%;
		text-align: center;
		font-size: 1.4em;
		height: auto;
		margin-top: 10px;
		margin-bottom: 10px;
		display: block;
	}

	.header-right-half,
	.header-left-half {
		width: 100%;
		display: block;
		height: auto;
	}

	.header-right-half {
		margin-top: 120px;
	}

	.header-left-half {
		height: 120px;
		position: absolute;
		text-align: center;
		top:0;
	}

	.tsb-social, .tsb-phone {
		max-width: 250px;
		margin: 0 auto;
		display: block;
		text-align: center;
	}


	.tsb-addy, .tsb-soc {
		max-width: 450px;
		text-align: center;
		margin: 0 auto;
		font-size: 1.5em;
		line-height: 1.5em;
		display: block;
	}

	.headeraddress {
		max-width: 450px;
		display: block;
		margin-left: auto;
		margin-right: auto;
		float: none;
	}

	.headeraddress.half {

		display: inline;

	}

	.navtoggle {
		display: block;
		width: 100%;
		font-weight: bold;
	}

	.navtoggle i.fa {
		color: #fff;
	}

	nav {
		display: none;
	}

	nav .wrap {
		padding: 0;
	}

	.genesis-nav-menu .menu-item {
		width: 100%;
	}

	.genesis-nav-menu a {
		margin: 0;
	}

	.slide-message {
		max-width: 100%;

	}

	.slide-message h1 {
		font-size: 1em;
	}

	.slide-message p {
		display: none;
	}

	#main-boxes {
		white-space: normal;
	}

	#main-boxes .box {
		margin: 20px 0;
		width: 100%;
		max-width: 100%;
		height: auto;
	}

	#service-boxes .box {
		width: 96%;
		height: auto;
		text-align: center;
	}

	.front-page-contact {
		width: 100%;
	}

	.service-image {
		position: relative;
		top: 0;
		left: 0;
	}

	.service-image-spacer {
		max-height: 0;
	}

	article, .entry, article {
		padding: 20px;
	}
	.footer-widgets .widget-area{
		width: 100%;
	}

}

/**
 * Sticky header
 */

/* Desktop */
body.has-sticky-header.is-header-sticked .site-inner {
	margin-top: 66px;
}

body.has-sticky-header.is-header-sticked .nav-primary {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
}

body.has-sticky-header.is-header-sticked .site-header a[itemprop=url] {
	position: fixed;
	top: 0;
	z-index: 10000;
	margin-top: 13px;
}

body.has-sticky-header.is-header-sticked .site-header a[itemprop=url] img {
	height: 40px;
	vertical-align: initial;
}

body.has-sticky-header.is-header-sticked .nav-primary .genesis-nav-menu {
	text-align: right;
}

/* Desktop - Admin */
body.has-sticky-header.is-header-sticked.admin-bar .nav-primary,
body.has-sticky-header.is-header-sticked.admin-bar .site-header a[itemprop=url] {
	top: 32px;
}

/* Desktop - No overflow */
@media( max-width: 1020px ) {
	body.has-sticky-header.is-header-sticked .site-header a[itemprop=url] {
		left: 13px;
	}
}

/* Tablet */
@media( max-width: 801px ) {
	body.has-sticky-header.is-header-sticked .site-inner {
		margin-top: 50px;
	}

	body.has-sticky-header.is-header-sticked .navtoggle {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 9999;
	}

	body.has-sticky-header.is-header-sticked .nav-primary {
		top: 50px;
	}

	body.has-sticky-header.is-header-sticked .site-header a[itemprop=url] {
		margin-top: 8px;
		left: 8px;
	}

	body.has-sticky-header.is-header-sticked .site-header a[itemprop=url] img {
		height: 34px;
	}

	/* Tablet - Admin Desktop */
	body.has-sticky-header.is-header-sticked.admin-bar .navtoggle,
	body.has-sticky-header.is-header-sticked.admin-bar .site-header a[itemprop=url] {
		top: 32px;
	}

	body.has-sticky-header.is-header-sticked.admin-bar .nav-primary {
		top: 82px;
	}
}

/* Tablet - Admin Tablet */
@media( max-width: 780px ) {
	body.has-sticky-header.is-header-sticked.admin-bar .navtoggle,
	body.has-sticky-header.is-header-sticked.admin-bar .site-header a[itemprop=url] {
		top: 46px;
	}

	body.has-sticky-header.is-header-sticked.admin-bar .nav-primary {
		top: 96px;
	}
}

/* Mobile */
@media( max-width: 600px ) {
	body.has-sticky-header.is-header-sticked.admin-bar .navtoggle,
	body.has-sticky-header.is-header-sticked.admin-bar .site-header a[itemprop=url] {
		top: 0;
	}

	body.has-sticky-header.is-header-sticked.admin-bar .navtoggle {
		text-align: right;
	}

	body.has-sticky-header.is-header-sticked.admin-bar .nav-primary {
		top: 50px;
	}
}

/**
 * Open Text Header
 */
.header-right-half.header-right-half-righthalftext,
.header-middle-third.header-middle-third-middlethirdtext,
.header-right-third.header-right-third-rightthirdtext {
	height: auto;
	display: block;
	margin-bottom: -30px;
}

@media only screen and (max-width: 801px) {
	.header-middle-third.header-middle-third-middlethirdtext {
		margin-bottom: 0px;
	}
}
