/* top bar elements */

.top-contact {
	margin-top: 5px;
}

.top-contact a:hover {
	color: #e5f7ff;
	text-decoration: underline;
}

header.site-header {
	border-bottom: 1px solid #eee;
}

/* main menu hover effect */
#menu-main-menu li > a {
	text-decoration: none;
}

#menu-main-menu li > a:before {
	content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  bottom: 0;
  left: 0;
  background: #12abed;
  visibility: hidden;
  border-radius: 5px;
  transform: scaleX(0);
  transition: .25s linear;
}

#menu-main-menu li > a:hover:before, #menu-main-menu li > a:focus:before {
	visibility: visible;
  transform: scaleX(1);
}

/* give mobile menu items slight border */
.main-navigation.toggled .main-nav li {
	border-top: 1px solid #dfe5ee;
}

/* homepage steps and services text */
@media only screen and (max-width: 767px) { 
	.steps-col > .elementor-column-wrap {
		margin: 10px 0px!important;
	}
	.services-text {
		text-align: center;
	}
}



/* light text for full width sections */
.white-section-txt, .white-section-txt h2 {
	color: white;
}

.home-folio h1 {
	margin-bottom: 5px!important;
}

/* Customise ninja forms */
.nf-form-fields-required {
  display: none;
}

.nf-response-msg {
	background: #dfffdf;
	border: 1px solid green;
	padding: 5px 10px 0px 10px;
	margin-bottom: 20px;
}

/* give sticky header bg color */
.main-navigation.navigation-clone {
    background-color: rgba(255,255,255,1.0);
}

/* fix for conflict with pricing table */
#sticky-navigation {
	z-index: 150!important;
}

/* web packages page */
/* make popular column proper darker blue color */
#business-package-col .header:after {
	background-color: #42b3e5;
}

/* discount offer popup */
.mailchimp-optin .nf-field-description {
	margin-right: 0;
}

/* legal pages */
#menu-legal-stuff li.current_page_item a {
	color: #666;
}

#menu-legal-stuff a:before {
	content: "\00bb";
	padding-right: 5px
}

/* customise footer */
.site-footer p, .site-footer a {
	color: #c7dff0;
}

.site-footer a:hover {
	color: #fff;
}

.site-footer #menu-legal-stuff-1 a:before {
	content: "\00bb";
	padding-right: 5px
}

.site-footer .widget-title {
	color: white;
}

/* Social media icons */
.site-footer .socicon:before {
	color: #126FCC;
}

::placeholder {
	color: #ccc;
}

/* responsive overrides for ninja forms */
@media only screen and (max-width: 767px) { 
.nf-form-cont .one-half, .nf-form-cont .three-sixths, .nf-form-cont .two-fourths {
		width: 100%!important;
		margin-left: 0!important;
	}
}