/* Themify Customize Styling */
:root {	
	--theme_accent: #035098; 
}
.post-title, .post-title a, .loops-wrapper .post-image + .post-content .post-title a {	
	color: #000000; 
}
.post-title a:hover, .loops-wrapper .post-image + .post-content .post-title a:hover {	
	color: #1f78d1; 
}
.single-post .has-post-title .post-title,.single-post .featured-area .post-title {		text-align:left; 
}
.more-link {	background: none;
	background-color: #035098;
	padding: 10px;
	color: #ffffff; 
}
.more-link:hover {	background: none;
	background-color: #1f78d1;
	color: #ffffff; 
}
#sidebar a, #sidebar-alt a {	
	color: #035098; 
}
#sidebar a:hover, #sidebar-alt a:hover {	
	color: #1f78d1; 
}

/* Themify Custom CSS */
/*
 * NUCO Controls - Custom CSS
 * Themify Ultra / Builder Pro
 */


/* =========================================================
   STICKY HEADER
   ========================================================= */

/* Hide secondary header until Themify activates sticky */
body:not(.themify_builder_active)
.hide-until-sticky:not(.tb_sticky_scroll_active) {
	height: 0 !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	overflow: hidden !important;

	opacity: 0;
	visibility: hidden;
	font-size: 0 !important;
	pointer-events: none;
}

/* Reveal secondary header when sticky */
body:not(.themify_builder_active)
.hide-until-sticky.tb_sticky_scroll_active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transition: opacity 0.35s ease;
}

/* Prevent Themify sticky placeholder from creating white space */
body:not(.themify_builder_active)
#tbp_header .tb_sticky_wrapper {
	height: 0 !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
}


/* =========================================================
   MAIN NAVIGATION DROPDOWNS
   ========================================================= */

.module-menu .nav > li.menu-item-has-children {
	position: relative;
}

.module-menu .nav > li.menu-item-has-children > .sub-menu {
	margin-top: 0 !important;
	top: 100% !important;
}

/* Invisible bridge prevents submenu hover from dropping */
.module-menu .nav > li.menu-item-has-children > .sub-menu::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: -15px;
	height: 15px;
}


/* =========================================================
   HOMEPAGE HERO
   ========================================================= */

.home-hero-title h1 {
	font-size: clamp(38px, 5vw, 72px);
	line-height: 1.05;
}

@media (max-width: 600px) {
	.home-hero-title h1 {
		font-size: 38px;
		line-height: 1.08;
	}
}


/* =========================================================
   PAGE CONTENT
   Remove Ultra spacing below Builder Pro header
   ========================================================= */

.default_width #content {
	padding-top: 0 !important;
}


/* =========================================================
   INDUSTRIES SERVED CARDS
   Add class "industries-card-row" to each relevant subrow.
   ========================================================= */

.industries-card-row .module-image .image-wrap {
	width: 100%;
	aspect-ratio: 4 / 3;
	overflow: hidden;
}

.industries-card-row .module-image .image-wrap a {
	display: block;
	width: 100%;
	height: 100%;
}

.industries-card-row .module-image img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	object-fit: cover;
	object-position: center center;
}


/* =========================================================
   DESKTOP FOOTER ADDRESS
   ========================================================= */

.footer-address {
	text-align: right;
}

.footer-address p {
	margin: 0 0 6px;
	padding: 0;
	line-height: 1.35;
	word-break: normal;
	overflow-wrap: normal;
}


/* =========================================================
   MOBILE FOOTER ADDRESS
   ========================================================= */

.nuco-mobile-address {
	box-sizing: border-box;
	width: 100%;
	max-width: 340px;
	margin: 18px 0 0 auto;
	padding: 0 16px;
	text-align: right;
}

.nuco-mobile-address p {
	margin: 4px 0;
	padding: 0;
	font-size: 16px;
	line-height: 1.4;
	text-align: right !important;
	word-break: normal;
	overflow-wrap: normal;
}

.nuco-mobile-address a {
	display: inline-block;
	text-decoration: none;
}

@media (max-width: 600px) {
	.nuco-mobile-address {
		max-width: 320px;
		margin: 16px 0 0 auto;
		padding-left: 12px;
		padding-right: 12px;
		text-align: right;
	}

	.nuco-mobile-address p {
		font-size: 16px;
		line-height: 1.4;
		text-align: right !important;
	}
}