/*!
Theme Name: humanitysoftware
Theme URI: http://underscores.me/
Author: Humanity Software
Author URI: http://humanitysoftware.com
Description: Humanity Software Custom Theme
Version: 1.3.3
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: humanitysoftware
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

humanitysoftware is based on Underscores https://underscores.me/, (C) 2012-2017 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
	## HST Image Tweaks
# HST Sections
	## Services
	## Footer
# HST Vendor Overides
	## Gravity Forms
	## Bootstrap	
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: sans-serif;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn, cite, em, i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code, kbd, tt, var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr, acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark, ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

*,
*:before,
*:after {
	/* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

body {
	background: #fff;
	/* Fallback for when there is no custom background color defined. */
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

.site-info {
	text-align:center;
}

h1.site-title, p.site-title {
	margin: 10px 0 0 -2px;
	padding: 0;
	line-height: 1em;
	font-size: 30px;
	letter-spacing: 1px;
}

.site-title a {
	margin: 0;
}

.site-title a:hover { 
	text-decoration: none; 
}

.site-description {
	font-size: 16px;
	margin: 10px 00;
	letter-spacing: 1px;
}

ul, ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto;
	/* Make sure images are scaled correctly. */
	max-width: 100%;
	/* Adhere to container width. */
}

figure {
	margin: 1em 0;
	/* Extra wide images within figure tags don't overflow the content area. */
}

.cat-links, .tags-links {
	margin-right: 5px;

}
.cat-links a, .tags-links a, .edit-link a {
	text-decoration: none;
	text-transform: uppercase;
	color: #2980b9;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

h1.entry-title, h2.entry-title {
	margin-top: 1em;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #568bc3 #bbb #568bc3;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1;
	padding: .6em 1em .4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #568bc3 #bbb #568bc3;
}

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #568bc3 #bbb #568bc3;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
	padding: 10px;
	width: 100%;
}

textarea {
	width: 100%;
}

label {
	font-weight: 700;
}
.login-remember {
	font-size: 12px;
}


/*--------------------------------------------------------------
# Navigation 
--------------------------------------------------------------*/
#mainNav {
	-webkit-transition: padding-top 0.3s, padding-bottom 0.3s;
	-moz-transition: padding-top 0.3s, padding-bottom 0.3s;
	transition: padding-top 0.3s, padding-bottom 0.3s;
	border: none;
	background-color: transparent;
  }
  #mainNav .navbar-brand {
	font-size: 1.75em;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
  }
  #mainNav .navbar-nav .nav-item .nav-link {
	padding: .4em 1em .4em 1em !important;
	font-size: 22px;
	color: #fff;
  }
  #mainNav.navbar-shrink {
	padding-top: 30px;
	padding-bottom: 0;
	padding-left: 25px;
	padding-right: 25px;
	background-color:rgba(255, 255, 255, 0.634);
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
  }
  #mainNav.navbar-shrink .custom-logo-link {
	height: 75%;
	width: 75%;
  }
  #mainNav.navbar-shrink .navbar-nav .nav-item .nav-link {
	  color:#000;
  }
/*// Extra small devices (portrait phones, less than 576px)
// No media query since this is the default in Bootstrap*/
#mainNav {
	padding: 5px 25px 5px 5px;
}
/*// Small devices (landscape phones, 576px and up)*/
@media (min-width: 576px) { 
	#mainNav { 
		padding: 10px 20px 10px 10px;
	}
	#mainNav .navbar-nav .nav-item .nav-link {	
		padding: .4em 1em .4em 1em !important;
		font-size: 22px;
	}
	#mainNav.navbar-shrink {
		padding-top: 15px;
		padding-left: 5px;
		padding-right: 5px;
	}
 }

/*// Medium devices (tablets, 768px and up)*/
@media (min-width: 768px) { 
	#mainNav {
		padding: 15px 10px 20px 30px;
	}
	#mainNav .navbar-nav .nav-item .nav-link {	
		padding: .8em .8em !important;
		font-size: 22px;
	}
	#mainNav.navbar-shrink {
		padding-top: 15px;		 
		padding-left: 10px;
		padding-right: 10px;
	}	
 }

/*// Large devices (desktops, 992px and up)*/
@media (min-width: 992px) { 
	#mainNav {
		padding: 20px 50px 25px 70px;
	}
	#mainNav .navbar-nav .nav-item .nav-link {	
		padding: .4em 1em .4em 1em !important;
		font-size: 22px;
	}
	#mainNav.navbar-shrink { 
		padding-top: 15px;		
		padding-left: 50px;
		padding-right: 50px;
	}		
}

/*// Extra large devices (large desktops, 1200px and up)*/
@media (min-width: 1200px) { 
	#mainNav {
		padding: 10px 80px 25px 120px;
	}	
	#mainNav .navbar-nav .nav-item .nav-link {	
		padding: 1.1em 1em !important;
		font-size: 24px;
	}
	#mainNav.navbar-shrink { 
		padding-left: 120px;
		padding-right: 120px;
	}			
  }

/*// Drop-Down Div on Small Devices*/
 @media (max-width: 767px) { 
	#bs4navbar ul, ol  {
	   background-color: #297fb9ec;
	   width: 180px;
	   float: left;
	}
   }	
   
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
	color: #568bc3; 
}

a:visited {
	color: #568bc3;
}

a:hover, a:focus, a:active {
	color: #000;
	text-decoration: none;
}

a:focus {
	outline: thin dotted;
}

a:hover, a:active {
	outline: 0;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/

.site-main .comment-navigation, .site-main
.posts-navigation, .site-main
.post-navigation {
	margin: 0 0 1.5em;
	overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	float: left;
	width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	float: right;
	text-align: right;
	width: 50%;
}

.navbar {
	padding-left: 0;
	padding-right: 0;
}

.open > .dropdown-menu {
	-webkit-transform: scale(1,1);
			transform: scale(1,1);
			opacity: 1;
}

.dropdown-menu {
	margin-top: 0;
	opacity: .5;
	-webkit-transform-origin: top;
	transform-origin: top;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
	-webkit-transform: scale(1,0);
	transition: all 0.3s linear;
}

.dropdown-toggle::after {
	vertical-align: .150em;
}

.top, .top:link {
	color: #fff;
	background: #333;
	position: fixed;
	z-index: 999;
	bottom: 20px;
	right: 20px;
	width: 40px;
	height: 40px;
	font-size: 24px;
	font-weight: 700;
	line-height: 40px;
	text-align: center;
	text-transform: uppercase;
	opacity: .9;
	border: none;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

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

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.alignflushtop {
	margin-top: -134px !important;

}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
	margin: 0 0 1.5em;
	/* Make sure select elements fit in widgets. */
}

.widget select {
	max-width: 100%;
}

.tagcloud a {
	border: 1px solid;
	border-radius: 2px;
	display: inline-block;
	line-height: 1;
	margin: 0 2px 5px 0;
	padding: 5px;
	text-decoration: none;
}

.tagcloud a:hover .tagcloud a:focused {
	color: #21759b;
	outline: 0;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.site-content {
	margin-top:110px;
}

.sticky {
	display: block;
}

.hentry {
	margin: 0 0 1.5em;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	/* Theme Footer (when set to scrolling) */
	display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}
/*--------------------------------------------------------------
## HST Image tweaks
--------------------------------------------------------------*/
.pages-header-image {
	width: 100%;
    height: 350px;	
}

/*--------------------------------------------------------------
# HST Sections
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Services
--------------------------------------------------------------*/
/* Service Box on Home Page */  
#services {
	margin-top: 30px;
}
.text-primary {
	color: #568bc3 !important;
}
.service-heading {
	margin: 15px 0;
	text-transform: none;
  }

/* Service Box on Services Pages */  
.serviceBox{
    z-index: 1;
	position: relative;
}
.serviceBox .service-content{
    padding: 20px;
    background: #fff;
    border: 1px solid #000;
    text-align: center;
    position: relative;
}
.serviceBox .service-content:after{
    content: "";
    width: 100%;
    height: 100%;
    background: #568bc3;
    position: absolute;
    top: 6px;
    left: 6px;
    z-index: -1;
    transition: all 0.5s ease 0s;
}
.serviceBox:hover .service-content:after{
    top: 0;
    left: 0;
}
.serviceBox .service-icon{
    display: inline-block;
    font-size: 50px;
    color: #568bc3;
    margin-bottom: 20px;
    transition: all 0.5s ease 0s;
}
.serviceBox:hover .service-icon{ transform: rotateY(180deg); }
.serviceBox .title{
    font-size: 20px;
    font-weight: 600;
    color: #474747;
    text-transform: uppercase;
    margin: 0 0 10px 0;
}
.serviceBox .description{
    font-size: 15px;
    color: #777;
    line-height: 25px;
    margin-bottom: 0;
}
@media only screen and (max-width:990px){
    .serviceBox{ margin-bottom: 30px; }
}

/*--------------------------------------------------------------
## Footer
--------------------------------------------------------------*/
 .site-footer {
	border-top: 1px solid #e6e6e6;	 
	padding: 25px 0;
	text-align: center;
  }
  
  .site-footer span.copyright {
	font-size: 90%;
	line-height: 40px;
	text-transform: none;
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  }
  
  .site-footer ul.quicklinks {
	font-size: 90%;
	line-height: 40px;
	margin-bottom: 0;
	text-transform: none;
	font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  }

  ul.social-buttons {
	margin-bottom: 0;
  }
  
  ul.social-buttons li a {
	font-size: 20px;
	line-height: 40px;
	display: block;
	width: 40px;
	height: 40px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	color: white;
	border-radius: 100%;
	outline: none;
	background-color: #212529;
  }
  
  ul.social-buttons li a:active, ul.social-buttons li a:focus, ul.social-buttons li a:hover {
	background-color: #568bc3;
  }

/*--------------------------------------------------------------
# HST Vendor  Overides 
--------------------------------------------------------------*/ 
/*--------------------------------------------------------------
## Gravity Forms Overides 
--------------------------------------------------------------*/ 
#gform_submit_button_1.gform_button {
	position: relative;
    padding: .3em 1em;
    border: 2px solid;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.7em!important;
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    transition: all .2s;
    color: #2ea3f2 !important;
}
#gform_submit_button_1.gform_button:hover {
  background-color: #fff !important;
  color: #000000 !important;
}

@media (min-width: 992px) {
	.contactGF {
		padding-left: 50px;
	}

 }

/*--------------------------------------------------------------
## Bootstrap Overides 
--------------------------------------------------------------*/ 
.container-fluid {
	padding: 0;
  }
  .btn-success, .btn-success:hover {
    color: #fff;
    background-color: #568bc3;
	border-color: rgb(206, 206, 206);
  } 

