/* ----------------------------------------------------------------
Custom CSS

Add all your Custom Styled CSS here for New Styles or
Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/

:root {
	--sl-blue: #002D55;
	--sl-blue-rgba: rgba(0, 45, 85, 1);
	--sl-blue-alt: #003F77;
	--sl-blue-alt-rgba: rgba(0, 63, 119, 1);
}

/* body:not(.stretched){
	background-color: #949494;
	background-image: -moz-radial-gradient(50% 50% 90deg,
		rgba(245, 245, 245, 1.0) 0%,
		rgba(100, 100, 100, 1.0) 100%);
	background-image: -webkit-gradient(radial,
		50% 50%, 0,
		50% 50%, 1000,
		from(rgba(245, 245, 245, 1.0)),
		to(rgba(100, 100, 100, 1.0)));
}  */

h1, h2, h3, h4, h5, h6 {
font-family: Cabin, sans-serif;
line-height: 1.2;
}

ul, ol {
	list-style-position: inside;
}

ul {
	list-style-type: square;
}

.bgcolor {
	background-color: var(--sl-blue) !important;
}
.hidden {
	display: none !important;
}

.show {
	display: inline-block !important;
}
.vertical-center {
	align-items: center;
}

.vertical-end {
	align-items: flex-end;
}

.vertical-start {
	align-items: flex-start;
}

.vertical-stretch {
	align-items: stretch;
}

/* Primary Menu */

.primary-menu ul li.new::before {
	content: "NEW";
	position: absolute;
	text-align: center;
	white-space: nowrap;
	font-size: 10px;
	font-weight: 700;
	line-height: 1.1;
	color: #fff;
	text-shadow: 1px 1px 1px rgba(0,0,0,.5);
	padding: 2px 3px;
	background: rgba(220, 53, 69, .9) !important;
	border-radius: 1px;
	z-index: 1;
}

.primary-menu li.new::before {
	top: 1.5rem;
	right: 8px;
}

.primary-menu li ul li.new::before {
	top: 6px;
	right: 32px;
}

.primary-menu-open .primary-menu li.new::before {
	top: .5rem;
	right: 3rem;
	margin-left: 1rem;
}

/* .mega-menu-column .menu-item .sub-menu-trigger {
	display: unset;
}

.primary-menu-inline .mega-menu-column .menu-item .sub-menu-trigger {
	display: none;
} */

#header.sticky-header:not(.static-sticky) .primary-menu > ul > li.new::before {
	top: 6px;
}

.icon-chevron-right:before,
.nav-tree li i.icon-angle-down:before {
	font-family: "Font Awesome 5 Pro";
	font-weight: 700;
	content: "\f054";
}
.menu-item:hover > .icon-chevron-right:before {
	color: #fff;
}
.icon-chevron-right.icon-rotate-90:before {
	font-family: "Font Awesome 5 Pro";
	font-weight: 700;
	content: "\f078";
}

.top-search-open #top-search a .close-search {
	margin-bottom: 3px;
}
.top-search-form input {
	font-size: 1.75rem !important;
}

.search-results ul {
  list-style-type: none;
}
.search-results ul li p {
  margin-bottom: 1.25rem;
}

.nav-tree li i.icon-angle-down {
	font-style: normal;
}

@media(max-width: 360px) {
	#logo img {
		height: 80px !important;
	}
}

/* Footer */

#footer.dark,
.dark #footer {
	background-color: var(--sl-blue);
	color: #CCC;
}

#footer.dark a,
.dark #footer a {
	text-decoration: none !important;
	color: #EEE;
}

@media(max-width: 600px) {

	#footer {
		text-align: center;
	}

	#footermenu {
		text-align: center;
		margin-top: 1em;
	}

}

/* Page Titles */
#page-title.page-title-mini {
	padding: 32px 0;
}
.page-title-dark span a {
	color: #ccc;
}

.sub-catalogs .separator:not(:last-child)::after {
	content: " • ";
	opacity: .5;
	margin: 0 .5em;
	font-size: .75em;
}

/* Slider */

.feature-overlay.below {
	position: relative;
	height: auto;
	width: 100%;
	background: rgba(0,45,85,1);
	color: #fff;
	text-align: center;
}

.feature-overlay p {
	font-size: 14px;
	margin: .5em 0;
	line-height: 1.2;
}

@media(min-width:768px){
	.feature-overlay p {
		font-size: 16px;
	}
}

@media(min-width:992px){
	.feature-overlay {
		display: block;
		position: absolute;
		bottom: 0;
		left: 0;
		height: auto;
		width: 100%;
		background: rgba(0, 45, 85, .5);
		text-align: center;
	}
	.feature-overlay p {
		font-size: 21px;
	}

}

.slider-caption.slider-caption-center.slider-caption-top{
  justify-content:start;
  margin-top:3%;
}

.isolation-solution > a {
  text-decoration: underline !important;
}

/* Pricing Boxes */

.pricing {
	margin: 15px auto;
}
.pricing-price {
	min-height: 330px;
}

.pricing-price img {
	max-height: 300px;
}
.pricing-box {
	margin-bottom: 30px;
}
.pricing-box.best-price .pricing-price {
	min-height: auto;
}

.pricing-box.best-price .pricing-price img {
	max-height: 100%;
}
.pricing-title h3 {
	font-size: 26px;
	font-weight: normal;
	text-transform: none;
	letter-spacing: normal;
}
.pricing-title span {
	text-transform: none;
}
.pricing-box.best-price .pricing-title h3 {
	color: var(--sl-blue);
	font-size: 32px;
	font-weight: bold;
	text-transform: none;
}
.pricing-box.best-price .pricing-title {
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.dark .pricing-box.best-price {
	box-shadow: 1px 1px 10px rgba(0, 0, 0, .7)
}
.dark .pricing-box.best-price {
	box-shadow: 1px 1px 10px rgba(0, 0, 0, .7)
}
.dark .pricing-box.best-price .pricing-price:after {
	border-top-color: rgba(0, 0, 0, 0.1);
}
.heading-block span,
.pricing-title span{
	text-transform: uppercase;
	font-size: 1.375rem;
	letter-spacing: normal;
}

/* AVAX Flex Slider */

.avax.fslider {
	max-width: 360px;
	max-height: 600px;
	margin: 0 auto;
}
.avax .slider-caption,
.avax .flex-caption {
	font-size: 1rem;
}
.avax .slider-caption-bg {
	bottom: 0;
	left: 0;
	width: 100%;
	margin-bottom: 0;
	background-color:var(--sl-blue);
	opacity: 0.6;
}
.device-md .avax .flex-item:nth-of-type(1) { order: 2; }
.device-md .avax .flex-item:nth-of-type(2) { order: 1; }
.device-md .avax .flex-item:nth-of-type(3) { order: 3; }

.fbox-right .fbox-icon {
	order: 2;
}
.fbox-right .fbox-content {
	text-align: right;
	order: 1;
}

.feature-box .fbox-icon svg {
	width: 4rem;
	height: 4rem;
}

/* Heading Block */
.heading-block h1,
.heading-block h2,
.heading-block h3,
.heading-block h4,
.emphasis-title h1,
.emphasis-title h2 {
	margin-bottom: 0;
	font-weight: bold;
	text-transform: none;
	letter-spacing: normal;
}
.heading-block h1 {
	font-size: 2.5rem;
}

.heading-block h2 {
	font-size: 1.75rem;
}
.heading-block:after {
	border-top: none;
}

/* Panels */

.translucent-panel {
	padding: 1.5em 3em;
}
.translucent-dark {
	background: rgba(0,0,0,.4);
	text-shadow: 1px 1px 5px rgba(0,0,0,1)
}
.translucent-light {
	background: rgba(255,255,255,.4);
	text-shadow: 1px 1px 5px rgba(0,0,0,.2)
}
.translucent-panel a.button {
	right: 3em !important;
}
.translucent-panel a:hover {
	background: #fff !important;
}
.parallax-spacer {
	display: block;
	height: 360px;
}

/* Process Step */

.dark .process-steps li.active a,
.dark .process-steps li.ui-tabs-active a {
	color: #eee;
	border: 1px solid #eee !important;
}

.dark .process-steps li.active h5,
.dark .process-steps li.active .h5,
.dark .process-steps li.ui-tabs-active h5,
.dark .process-steps li.ui-tabs-active .h5 {
	color: #eee;
}

/* Cart */

.shop-cart-attr {
	font-size: 14px;
	list-style-type: square;
	margin-left: 16px;
}

.cart-product-thumbnail a {
	display: block;
	width: 128px;
}

.cart-product-quantity {
	position: relative;
	width: 110px;
}

/* Cart Summary */

.cart-summary-product__qty {
	position: relative;
	max-width: 55px;
}
.cart-summary-product__qty input {
	max-width: 55px;
	padding: .25rem 0 .25rem .5rem;
}

.cart-summary-total__amt {
	display: block;
	font-size: 21px;
	margin-bottom: 10px;
}
.cart-attributes {
	list-style-position: inside;
}

.cart-attributes p {
	margin-bottom: 0;
	font-size: 14px;
}

/*-----------Number Input-----------*/

.number-input__controls {
	position: absolute;
	top: 0;
	right: -32px;
	width: 30px;
	height: 100%;
}

.number-input__controls button {
	width: 100%;
	height: 48%;
	position: absolute;
	right: 0;
	outline: none;
	border: none;
	background: var(--sl-blue);
	color: #fff;
	text-align: center;
	font-size: 1.000em;
	margin: 0;
	padding: 0;
	transition: background 250ms ease;
}

.number-input__controls button:hover {
	background: #333;
}

.number-input__controls button:active {
	background: #333;
}

.number-input__controls button:before {
	font-family: 'FontAwesome';
	line-height: 1;
	color: #fff;
	display: block;
}

.number-input__controls button.num-up {
	top: 0;
}

.number-input__controls button.num-up:before {
	content: "\f0d8";
}

.number-input__controls button.num-down {
	bottom: 0;
}

.number-input__controls button.num-down:before {
	content: "\f0d7";
}

/* Sweet Alert */

.swal-overlay {
	background-color: rgba(0,45,85, 0.45);
}
.swal-modal {

}
.swal-title {

}
.swal-text {
	font-size: 1rem;
	padding: 1.125rem;
	border: 0
	display: block;
	margin: 1.5rem;
	text-align: center;
}
.swal-footer {

}
.swal-button {
	padding: .5rem 1.25rem;
	border-radius: 2px;
	background-color: var(--sl-blue);
	font-size: 1rem;
	border: 1px solid var(--sl-blue);
	text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.3);
}
.swal-button--confirm {
	background-color: var(--sl-blue);
	font-size: 1rem;
	border: 1px solid var(--sl-blue);
	text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.3);
}
.swal-button:not([disabled]):hover {
	background-color: var(--sl-blue-alt);
}

/* Products */

.grid-switch-content:not(.col-grid)>div {
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
	-ms-flex-direction: column !important;
	flex-direction: column !important;
}

.grid-switch-content .card-img {
	-ms-flex: 1 1 auto !important;
	flex: 1 1 auto !important;
	border-radius: 0.25rem 0.25rem 0 0;
}

@media (min-width: 768px) {
	.grid-switch-content:not(.col-grid) .card-img {
		-ms-flex: 0 0 33%;
		flex: 0 0 33%;
		max-width: 33%;
	}

	.grid-switch-content .col-full .card-img {
		border-radius: 0.25rem 0 0 0.25rem;
	}
}

.supplier-logo img {
	max-height: 48px;
	max-width: 120px
}
.sub-menu-container .menu-item.current > .menu-link {
	color: #fff;
}
.card-footer {
	padding: 1rem 2rem;
	background-color: #fff;
	border-top: none;
}

/* Product Details */

.quantity .form-control {
	max-width: 85px;
	padding-right: 0;
}
.quantity {
	margin-right: initial;
	align-items: end;
}
#page-title .breadcrumb {
	right: 40px !important;
}
#product-attributes .form-group {
	border-bottom: 1px solid rgba(0,45,85,.1);
}
#productTabs .tab-pane {
	border-top: 0;
	border-right: 1px;
	border-bottom: 1px;
	border-left: 1px;
	border-color: rgba(0, 0, 0, .1);
	border-style: solid;
}
/* .form-group select, 
.form-group input, */
.form-group label {
	color: var(--sl-blue-alt)
}
.form-group label {
	margin-bottom: .375rem;
}
.poplet-images li {
	display: block;
	float: left;
	padding: 5px;
	width: 33%;
}
.poplet-images img {
	border: 1px solid #dbdee0;
	padding: 3px;
}
.poplet-images a,
.poplet-images img {
	display: block;
}
.poplet-images {
	list-style: none;
	margin: 0;
	margin-top: 0px;
	margin-bottom: 0px;
	padding: 0;
	text-align: center;
	overflow: hidden;
}

.poplet-images a,
.poplet-images img {
	display: block;
}
.description ul {
	list-style-position: inside;
}


/* Related Products */

.bg-overlay:hover {
	color: white;
	background-color: rgba(0, 45, 85, 0.6);
}
.dark .bg-overlay-bg,
.bg-overlay-bg.dark {
	background-color: transparent;
}

.bg-overlay a {
	position: relative;
	top: unset;
	left: unset;
	background-color: transparent;
	width: 100% !important;
	height: 100% !important;
	margin: 0;
	font-size: 1.5em;
	line-height: unset;
	color: #fff;
	border-radius: unset;
}

.portfolio-item .portfolio-image,
.portfolio-item .portfolio-image > a,
.portfolio-item .portfolio-image img {
	display: flex;
	width: 100%;
	height: 100%;
}

.owl-carousel .owl-nav [class*=owl-] {
	top: 36%;
}

.owl-carousel .owl-nav [class*=owl-]:hover {
	background-color: #ffffff !important;
	color: var(--sl-blue) !important;
	text-decoration: none;
}

/* Solutions */

a.solution-link {
	width: 100%;
	height: 100%;
	display: block;
	text-shadow: 1px 1px 5px rgba(0, 0, 0, .5);
}

/* Hover Links */

.link {
	position: relative;
	cursor: pointer;
	white-space: nowrap;
}

.link::before,
.link::after {
	position: absolute;
	width: 100%;
	height: 1px;
	background: currentColor;
	top: 100%;
	left: 0;
	pointer-events: none;
}

.link::before {
	content: '';
	/* show by default */
}

/* Links 1 */

.link-1::before {
	height: 2px;
	transform-origin: 100% 50%;
	transform: scale3d(0, 1, 1);
	transition: transform 0.3s;
}

.link-1:hover::before {
	height: 2px;
	transform-origin: 0% 50%;
	transform: scale3d(1, 1, 1);
}

/* Product Tabs */

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
	color: var(--sl-blue-alt);
}

/* Form */
.form-control, .form-select {
	color: var(--sl-blue-alt);
}

label:not(.btn) {
	margin: 1.25em 0 .25em 0;
	white-space: nowrap;
}

.form-check label {
	margin-top: 0;
	color:var(--sl-blue-alt);
	font-size: 1rem;
}

form input[type="text"],
form input[type="number"],
form input[type="email"],
form input[type="password"],
form input[type="tel"],
form select {
	font-size: 1.25rem;
	padding: .5rem 1rem;
}

form textarea.form-control {
	font-size: 1rem;
	padding: .5em .5em;
}

.form-control:active,
.form-control:focus {
	color: var(--sl-blue-alt);
	border-color: rgba(0, 63, 119, .8);
	outline: 0;
	outline: thin dotted\9;
	-webkit-box-shadow: 0 0 8px rgba(0, 63, 119, .6);
	box-shadow: 0 0 8px rgba(0, 63, 119, .6);
}

.form-control::placeholder {
	color: #bbb;
}

select.form-control {
	height: calc(1.5em + .875rem);
}

.my-input-error {
	font-size: 12px;
	color: red;
}

.iti .my-input-error {
	position: absolute;
	bottom: -17px;
	left: 0;
}

.iti {
	width: 100%;
}

/* Form Process Spinner */
#spinner-front,
#spinner-back {
	position: fixed;
	top: 0;
	left: 0;
	visibility: hidden;
	opacity: 0;
	width: 100%;
	transition: all 1s;
}

#spinner-front {
	z-index: 999;
	margin-top: 45vh;
	color: #fff;
	text-align: center;
}

#spinner-back {
	z-index: 998;
	height: 100vh;
	background: #000;
}

form.form_submitting #spinner-front {
	visibility: visible;
	opacity: 1;
}

form.form_submitting #spinner-back {
	visibility: visible;
	opacity: 0.7;
	background: #000;
}

/* Form with Full Address */
.country-text-switch .us {
	display: block;
}

.country-text-switch .non-us {
	display: none;
}

.country-text-switch.non-us .us {
	display: none;
}

.country-text-switch.non-us .non-us {
	display: block;
}
.cart td {
	vertical-align: top !important;
}
legend {
	opacity: .5;
}
#wrapper > #quote-request {
	background: #f9f9f9;
}

/* Homepage Slider */

.pushBtn {
	font-size: 14px;
	font-weight: bold;
	line-height: 1.1em;
	white-space: nowrap;
	display: inline-block;
	width: 140px;
}
.stopstart {
	border: 4px outset #f9f9f9;
	text-shadow: 0px -1px 1px #000;
	box-shadow: 0px 0px 4px rgba(0, 45, 85, .4);
	border-radius: 5px;
	text-align: center;
	cursor: pointer;
	padding: 10px;
}
.redBtn {
	background: #d40404;
	color: #fe999b;
}
.greenBtn {
	background: #39a810;
	color: #99d882;
}
.btnText {
	font-family: Cabin;
	font-size: 30px;
	font-weight: normal;
	line-height: 1;
	text-transform: uppercase;
	color: #f3f3f3;
}
.line, .double-line {
    margin: 2rem 0;
}
.accordion-active .accordion-title {
	opacity:.3;
}

.slider-caption-panel {
	background: rgba(0,45,85,.7);
	padding: 2rem;
}
.slider-caption-panel-white {
	background: rgba(255,255,255,.7);
	padding: 2rem;
}
.swiper-pagination {
	text-align: right;
	right: 10px;
}
/* .home-slider .swiper-slide-bg {
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
} */
.home-slider .swiper-pagination {
	bottom: 32px !important;
}
.solution-slides .swiper-slide-bg {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center bottom;
}
@media (max-width: 575.98px) {
	.slider-caption h2, .slider-caption .h2 {
		font-size: 1.75rem;
	}
}
@media (min-width: 576px) and (max-width: 991.98px) {
	.slider-caption h2, .slider-caption .h2 {
		font-size: 2.75rem;
	}
}
@media (min-width: 992px) {
	.slider-caption-left {
		margin-left: 4rem;
	}
	.slider-caption-right {
		margin-right: 4rem;
	}
}

/* @group UPDATES 2014 */

/* @group CSW Solutions Slider */

.flex-caption {
	position: absolute;
	bottom:0;
	height: 80px;
	flex-flow: row;
	align-items: center;
	justify-content: start;
	width:100%;
	max-width:100%;
	background: rgba(0,45,85,.6);
	text-shadow: 1px 1px 2px rgba(0,0,0.3);
	transition: top 0.3s ease;
	padding-left: 20px;
}

/* @end */

/* @group Picker Tables */

.picker th {
	color: #fff;
	padding: 4px 12px;
	background:-o-linear-gradient(bottom, #0f3a6e 5%, #0b2a50 100%);
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #0f3a6e), color-stop(1, #0b2a50) );
	background:-moz-linear-gradient( center top, #0f3a6e 5%, #0b2a50 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#0f3a6e", endColorstr="#0b2a50");
	background: -o-linear-gradient(top,#0f3a6e,0b2a50);
	background-color:#0f3a6e;
}
.picker td{
	vertical-align:middle;
	text-align:left;
}
.picker td.thumb {
	text-align: center;
	max-width: 80px;
	padding-left: 4px;
	padding-right: 4px;
}

.picker td:not(.thumb) {
	padding: 12px;
}


/* @end */

#combos {
	width:170px;
	height:170px;
}

.tab-icons em {
	margin-left: 2px;
	opacity: .4;
}

.badge {
	display: inline-block;
	padding: 0.25em 0.4em;
	font-size: 75%;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
	text-align: center;
	white-space: nowrap;
}
.border {
    border: 1px solid #dee2e6 !important;
}
.border-top-0 {
    border-top: 0 !important;
}
.client-list {
	columns: auto;
}
@media (min-width: 480px) {
	.client-list {
		columns: 2 auto;
	}
}
@media (min-width: 768px) {
	.client-list {
		columns: 3 auto;
	}
}
@media (min-width: 1200px) {
	.client-list {
		columns: 4 auto;
	}
}
.supplier-card .card-body {
	height: 4rem;
}
.supplier-card .card-img-top {
	object-fit: contain;
	height: 80px;
	padding: 10px;
	padding-top:20px;
}
.slider-caption h2, .slider-caption .h2 {
	line-height: 1.05;
}
.slider-arrow-left i, 
.slider-arrow-right i, 
.flex-prev i, 
.flex-next i, 
.slider-arrow-top-sm i, 
.slider-arrow-bottom-sm i {
  line-height: 60px;
  font-size: 36px;
}
.slider-arrow-left svg, 
.slider-arrow-right svg{
	width: 100% !important;
	height:100%;
	color: white;
}

.tab-nav li a {
  padding: 5px 15px;
}

.top-bar {
  box-shadow: inset 0px 0px 8px rgba(0,0,0,.1);
}
