body {
	font-family: apertura, sans-serif;
	font-weight: 300;
	color: #292B36;
}

body.no-scroll {
    overflow: hidden;
}

.hamburger .line {
    width: 35px;
    height: 2px;
    background-color: #0060A8;
    display: block;
    margin: 8px auto;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.hamburger:hover{
  cursor: pointer;
}

/* ONE */

#hamburger-1.is-active .line:nth-child(2){
  opacity: 0;
}

#hamburger-1.is-active .line:nth-child(1){
  -webkit-transform: translateY(7px) rotate(45deg);
  -ms-transform: translateY(7px) rotate(45deg);
  -o-transform: translateY(7px) rotate(45deg);
  transform: translateY(7px) rotate(45deg);
}

#hamburger-1.is-active .line:nth-child(3){
  -webkit-transform: translateY(-13px) rotate(-45deg);
  -ms-transform: translateY(-13px) rotate(-45deg);
  -o-transform: translateY(-13px) rotate(-45deg);
  transform: translateY(-13px) rotate(-45deg);
}

nav {
	height: 9.5rem;
	z-index: 9999;
	position: fixed;
	top: 0;
	background-color: transparent;
	transition: all 0.5s ease-in-out;
	width: 100%;
}

nav img.logo {
    left: 0;
    right: 0;
    margin: auto;
    margin-left: 0;
    top: 50%;
    transform: translateY(-50%);
    position: absolute;
    /* Constrain by height so the logo always sits inside the bar. */
    height: 7.5rem;
    width: auto;
    max-width: none;
    -webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

/* Shrink the logo with the bar when scrolled. */
nav.active img.logo, nav.hidden img.logo {
    height: 5rem;
}

.navbar-brand {
    width: 10rem;
    height: 100%;
}

nav.active img.logo.light, nav.hidden img.logo.light {
    opacity: 0;
}

nav.active, nav.hidden {
    height: 6.5rem;
    position: fixed;
    background-color: #fefefe;
    width: 100%;
}

nav a {
    transition: color 0.3s ease-in;
}

/*nav.hidden {
    transform: translateY(-100%);
}*/

nav.active {
    background-color: white;
}

nav.hidden {
    background-color: white;
}

nav.light ul.nav li.nav-item a.nav-link, nav.light ul.nav.portal-links li.nav-item a.nav-link {
	color: #4A4A4A;
}

nav.dark ul.nav li.nav-item a.nav-link, nav.dark ul.nav.portal-links li.nav-item a.nav-link {
	color: #fefefe;
}

nav.active ul.nav li.nav-item a.nav-link, nav.active ul.nav.portal-links li.nav-item a.nav-link {
    color: #4A4A4A;
}

nav.hidden ul.nav li.nav-item a.nav-link, nav.hidden ul.nav.portal-links li.nav-item a.nav-link {
    color: #4A4A4A;
}

nav.light ul.nav.portal-links li.nav-item a.nav-link {
    border-bottom: 1px solid #4A4A4A;
}

nav.dark ul.nav.portal-links li.nav-item a.nav-link {
    border-bottom: 1px solid #fefefe;
}

nav.active ul.nav.portal-links li.nav-item a.nav-link, nav.hidden ul.nav.portal-links li.nav-item a.nav-link {
    border-bottom: 1px solid #4A4A4A;
}

nav ul.nav li.nav-item a.nav-link {
	font-family: 'Antonio', sans-serif;
	font-size: 1em;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	padding: 0.5em 2em;
}

nav ul.nav li.nav-item a.nav-link.mobile {
	display: none;
}

@media only screen and (max-width: 1069px) {

	nav ul.nav li.nav-item a.nav-link {
		font-size: 0.9em;
		letter-spacing: 0.35px;
		padding: 0.5em 1.5em;
	}

}

@media only screen and (max-width: 895px) {

	nav ul.nav li.nav-item a.nav-link {
		font-size: 0.85em;
		letter-spacing: 0.35px;
		padding: 0.5em 1.25em;
	}

}

@media only screen and (max-width: 860px) {

	nav ul.nav li.nav-item a.nav-link {
		display: none;
	}

	nav ul.nav li.nav-item a.nav-link.mobile {
		display: inline-block;
	}

}

nav ul.nav.portal-links li.nav-item a.nav-link {
	font-family: apertura, sans-serif;
	font-weight: 400;
	font-size: 0.8em;
	text-transform: none;
	letter-spacing: 0;
	padding: 0.5em 1em;
    border-bottom: 1px solid #4A4A4A;
}

nav ul.nav li.nav-item a.nav-link.nav-btn {
	background: #0060A8;
	padding: 0.5em 3em;
	color: #fefefe !important;
}

nav.hidden .logo, nav.active .logo {
    max-width: 175px;
    transition: all 0.3s ease-in-out;
}

nav.hidden ul.nav.portal-links, nav.active ul.nav.portal-links {
    display: none;
}

ul.nav.portal-links {
    padding-bottom: 1rem!important;
}

.logo {
    max-width: 200px;
    transition: all 0.3s ease-in-out;
}


.hero {
	background: url('../img/hero.png');
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	height: 100vh;
	min-height: 600px;
	position: relative;
	color: #fefefe !important;
}

.hero:after {
	content: '';
	position: absolute;
	background: linear-gradient(180deg, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.15) 35%, rgba(0,0,0,0.30) 60%, rgba(0,0,0,0.78) 100%);
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
}

/* Optional hero background video (behind the overlay + content). */
.hero-video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
}

.hero h1 {
	font-size: 5em;
	font-weight: 800;
	text-shadow: 0px 3px 6px #00000029;
    line-height: 1.1em;
    display: inline-block;
}

.header h1 {
    font-size: 5em;
    font-weight: 800;
}

.swatches h1 {
    font-size: 5em;
    font-weight: 800;
    line-height: 1;
}

.swatches hr {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.hero p.lead {
	font-size: 2em;
	font-weight: 400;
	text-shadow: 0px 3px 6px #00000029;
	margin-bottom: 2em;
    display: inline-block;
}

.hero p {
	font-size: 1.25em;
	font-weight: 400;
	text-shadow: 0px 3px 6px #00000029;
    display: inline-block;
}

@media only screen and (max-width: 910px) {

    .hero h1 {
        font-size: 4em;
        font-weight: 800;
        text-shadow: 0px 3px 6px #00000029;
    }

    .header h1 {
        font-size: 4em;
        font-weight: 800;
    }

    .swatches h1 {
        font-size: 4em;
        font-weight: 800;
    }

    .hero p.lead {
        font-size: 1.5em;
        font-weight: 400;
        text-shadow: 0px 3px 6px #00000029;
        margin-bottom: 2em;
    }

}

@media only screen and (max-width: 799px) {

    .hero h1 {
        font-size: 3.5em;
        font-weight: 800;
        text-shadow: 0px 3px 6px #00000029;
    }

    .header h1 {
        font-size: 3.5em;
        font-weight: 800;
    }

    .swatches h1 {
        font-size: 3.5em;
        font-weight: 800;
    }

    .hero p.lead {
        font-size: 1.25em;
        font-weight: 400;
        text-shadow: 0px 3px 6px #00000029;
        margin-bottom: 4em;
    }

}

.hero a {
    color: #fefefe;
    display: flex;
}

.pad {
	padding: 6em 0;
}

.purple-text {
	color: #001848;
}

.grey-text {
	color: #7C7C7C;
}

.blue-text {
	color: #0060A8;
}

h2.subhead {
    font-family: 'Antonio', sans-serif;
    font-size: 1.25em;
    display: inline-block;
    text-transform: uppercase;
    margin-bottom: 1.5em;
    font-weight: 200;
    letter-spacing: 1px;
}

h2.subhead.underline {
	border-bottom: 1px solid #A09F9F;
}

h3 {
	font-size: 1.65em;
}

p {
	font-size: 1em;
	line-height: 1.75;
}

p.lead {
    font-size: 2em;
    font-weight: 400;
    line-height: 1.5;
}

.btn {
	font-weight: 900;
	padding: 1.25em 3em;
	font-size: 0.9em;
	border-radius: 0;
	text-transform: uppercase;
	line-height: 1;
    letter-spacing: 1px;
}

.btn-primary {
    color: #fefefe;
    background-color: #0060A8;
    border-color: #0060A8;
}

.btn-primary:hover, .btn-primary:active, .btn-promary:focus {
    color: #fefefe;
    background-color: #004A85;
    border-color: #004A85;
}

.btn-outline-primary {
	color: #000;
	border-color: #0060A8;
}

.btn-outline-primary:hover {
	color: #fff;
	background-color: #0060A8;
	border-color: #0060A8;
}

.testimonials {
    position: relative; 
    background-image: url('../img/testimonial-hp.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-color: #0060A8;
}

p.testimonial-source {
	letter-spacing: 1.65px;
	text-transform: uppercase;
}

p.blog-cat {
	font-size: 0.8em;
	margin-bottom: 10px;
}

img.blog-thumb {
	margin-bottom: 20px;
}

.footer {
	background: #EAE8E8;
	color: #666666;
	padding: 4em 0 1em;
}

.footer a {
	color: #666666;
}

.footer p {
	font-size: 0.8em;
	margin-bottom: 0.75em;
}

@media only screen and (max-width: 767px) {

    .footer p {
        font-size: 0.95em;
    }

}

.grey-bg {
	background: #F5F5F5;
}

.header {
	padding: 12em 0 5em;
}

.dark-bg {
	background: #001848;
}

img.partners {
	max-width: 90px;
}

.partners-footer-bg, .cta-bg {
	background: linear-gradient(to top, #EAE8E8 25%, white 0%);
}

.cta-bg {
    padding-top: 8em;
    padding-left: 2em;
    padding-right: 2em;
}

.holiday-hours-container {
	max-width: 480px;
	position: relative;
	margin-left: auto;
	margin-right: auto;
}

.holiday-hours-container:before {
	content: '';
	position: absolute;
	top: 18px;
	left: -102%;
	height: 1px;
	width: 100%;
	background: #707070;
}

.line-container {
	max-width: 480px;
	position: relative;
}

.line-container:before {
	content: '';
	position: absolute;
	top: 18px;
	left: -102%;
	height: 1px;
	width: 100%;
	background: #707070;
}


.holiday-hours-container ul {
	margin-top: 1em;
}

.holiday-hours-container li {
	margin-bottom: 8px;
	font-size: 1.05em;
}

.cta-container {
	position: relative;
}

.cta-container:before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: #2E303B76;
}

.cta-content {
	position: relative;
	z-index: 3;
}

.contact-bg {
	background: linear-gradient(to right, #F5F5F5 25%, white 0%);
}

.contact-bg ul.fa-ul {
	margin-bottom: 2em;
}

.contact-bg li {
    margin-bottom: 7px;
}

.contact-bg li, .contact-bg p {
    font-size: 1.1em;
}

.contact-bg p {
	margin-bottom: 0.5em;
}

.contact-bg p.lead {
    font-size: 1.65em;
    font-weight: 400;
    line-height: 1.2;
    padding-bottom: 5px;
}

.contact-bg p.small {
	font-size: 0.85em;
}

h3.staff-name {
	font-family: 'Antonio', sans-serif;
	font-weight: 200;
	color: #4A4A4A;
	text-transform: uppercase;
}

p.staff-title {
	text-transform: uppercase;
	margin-bottom: 0;
}

.about-01-container, .resources-container {
	max-width: 480px;
	position: relative;
	margin-left: auto;
	margin-right: auto;
}

.about-slider {
    position: relative; 
    background-image: url('../img/about-slider.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-color: #292b36;
}

.process-img {
	background: linear-gradient(to bottom, #001848 50%, white 0%);
}

.product-img {
    background: linear-gradient(to bottom, #001848 50%, white 0%);
}

.membrane-bg {
	background: linear-gradient(to right, #F5F5F5 25%, white 0%);
}

strong {
    font-weight: 600;
}

.container.downloads {
	position: relative;
}

.container.downloads:before {
	content: '';
	position: absolute;
	top: 18px;
	left: -100%;
	height: 1px;
	width: 100%;
	background: #707070;
}

.grey-text a {
    color: #7C7C7C;
    text-decoration: underline;
    background-color: transparent;
}

.filters h3 {
    font-family: 'Antonio', sans-serif;
    font-size: 1.1em;
    display: inline-block;
    text-transform: uppercase;
    margin-bottom: 1em;
    margin-top: 1.2em;
    font-weight: 200;
}

.filters label.form-check-label {
    color: #666666;
    font-size: 0.85em;
    margin-bottom: 6px;
}

.pad.swatches {
    margin-top: 4em;
}

.filters {
	border-right: 1px solid #666666;
}

@media only screen and (max-width: 767px) {
    .filters {
        border-right: none;
        margin-top: 3em;
    }
}

.has-search {
  position: relative;
}

.filters .form-control {
    background-color: #F5F5F5;
    border: 1px solid #F5F5F5;
    border-radius: 0;
}

.has-search .form-control {
  padding-right: 2.375rem;
}

.has-search .form-control-feedback {
    position: absolute;
    z-index: 2;
    display: block;
    width: 2.375rem;
    height: 2.375rem;
    line-height: 2.375rem;
    text-align: center;
    pointer-events: none;
    color: #001848;
    right: 0;
    top: 0;
}

.product-container {
    height: 400px;
    display: flex;
    align-items: flex-end;
    padding: 20px;
    color: #fefefe !important;
}

.product-container h3 {
	font-family: 'Antonio', sans-serif;
    font-size: 1.4em;
    font-weight: 300;
    display: inline-block;
    text-transform: uppercase;
    margin-bottom: 0.5em;
	text-shadow: 0px 3px 6px #00000029;
}

.product-container p {
	font-size: 1em;
	text-shadow: 0px 3px 6px #00000029;
	margin-bottom: 0;
}

/* Process/Service Area media — fills the section height on desktop (columns
   stretch), switches to a 4:3 image when the layout stacks on mobile. */
.process-media {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 380px;
	object-fit: cover;
}

@media (max-width: 767.98px) {
	.process-media {
		height: auto;
		min-height: 0;
		aspect-ratio: 4 / 3;
	}
}

.hero .row {
    position: relative;
    z-index: 100;
}

.hero-link i {
    font-size: 1.5em;
    margin-left: 7px;
}

.hero-link {
    display: inline-block;
    margin-bottom: 3em;
}

.hero-link a:hover, a.blog-link:hover {
	text-decoration: none;
}


.product-slides {
    margin-bottom: -75px;
    margin-top: 75px;
}

@media (max-width: 767px) {

    .product-slides {
        margin-bottom: 50px;
        margin-top: 0;
    }

}

a.blog-link {
    color: #0060A8;
    text-transform: uppercase;
    font-weight: 600;
    display: flex;
    letter-spacing: 1px;
    font-size: 0.8em;
}

a.blog-link.black {
    color: #292B36;
    text-transform: uppercase;
    font-weight: 600;
    display: flex;
}

a.blog-link i {
    font-size: 1.2em;
    margin-left: 7px;
}

.take-tour-container {
    height: 500px;
    display: flex;
    align-items: flex-end;
    padding: 20px;
}

.take-tour-container h3 {
	font-family: 'Antonio', sans-serif;
    font-size: 1.2em;
    font-weight: 300;
    display: inline-block;
    text-transform: uppercase;
    margin-bottom: 0.5em;
	text-shadow: 0px 3px 6px #00000029;
}

.take-tour-container a {
	color: #fefefe;
}

.take-tour-container a:hover {
	text-decoration: none;
}

label {
    width: 100%;
}

.wpcf7 .ajax-loader {
    display: block;
    margin-left: auto;
}


.section-grid {
    display: grid;
    grid-template-columns: 2fr 4fr 2fr 2fr 1fr 2fr 3fr 2fr;
    grid-template-rows: 100px 350px 75px 50px 100px 100px;
}

.section-01 {
    grid-column: 2 / 4;
    grid-row: 2 / 3;
    color: #fefefe;
}

.section-01-bg {
    background: #292B36;
    grid-column: 1 / 6;
    grid-row: 1 / 4;
}

.section-img-01 {
    grid-row: 2 / 5;
    grid-column: 5 / 8;
}

.section-img-02 {
    grid-row: 3 / 6;
    grid-column: 4 / 7;
}

@media only screen and (max-width: 1220px) {

    .section-grid {
        grid-template-columns: 1fr 4fr 2fr 2fr 1fr 2fr 3fr 1fr;
    }

}

@media only screen and (max-width: 1112px) {

    .section-01-bg {
        grid-row: 1 / 5;
    }

}

@media only screen and (max-width: 860px) {

    .section-grid {
        grid-template-columns: auto 720px auto;
        grid-template-rows: 100px auto 50px 50px 300px;
        padding-bottom: 75px;
    }

    .section-01-bg {
        grid-row: 1 / 5;
        grid-column: 1 / 4;
    }   

    .section-01 {
        grid-column: 2;
        color: #fefefe;
    }

    .section-img-01 {
        grid-row: 4 / 6;
        grid-column: 2;
    }

    .section-img-02 {
        display: none;
    }

}

@media only screen and (max-width: 720px) {

    .section-grid {
        grid-template-columns: auto 540px auto;
    }

}

@media only screen and (max-width: 540px) {

    .section-grid {
        grid-template-columns: 15px auto 15px;
    }

}

@media only screen and (max-width: 860px) {

.wpcf7-form-control-wrap .form-control {
    border-radius: 0;
}

.owl-carousel .owl-nav {
    display: block;
    text-align: end;
}

}

@media only screen and (max-width: 767px) {
    .owl-carousel .owl-nav {
        text-align: start;
    }
}

.owl-theme .owl-nav [class*=owl-]:hover {
    background: transparent;
    color: unset;
}

button.owl-next {
    margin-left: 2em !important;
}

#mobile_menu .mobile-container {
    align-items: flex-end;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
}

#mobile_menu .mobile-nav {
    align-items: flex-start;
    color: #121212;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    height: 100vh;
    min-height: 500px;
    justify-content: center;
    pointer-events: none;
    position: fixed;
    top: 0;
    left: 28px;
    min-width: 389px;
    z-index: 11;
}

div#mobile_menu {
    position: fixed;
    top: 0;
    height: 100vh;
    min-height: 500px;
    z-index: 999;
}

div#mobile_menu:after {
  animation: none;
}

div#mobile_menu.active::after {
    background: #fff;
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 10;
    -webkit-animation: slide-in-right 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
            animation: slide-in-right 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

.mobile-nav a {
    font-size: 1.5em;
    margin-bottom: 20px;
    font-weight: 300;
    text-decoration: none !important;
    pointer-events: none;
    opacity: 0;
    color: #4A4A4A;
    font-family: 'Antonio', sans-serif;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

div#mobile_menu.active .mobile-nav a {
    -webkit-animation: fade-in-top 0.6s ease-in-out 0.6s both;
                animation: fade-in-top 0.6s ease-in-out 0.6s both;
    pointer-events: all;
}

.mobile-nav a:last-child {
    margin-bottom: 25px;
}

@-webkit-keyframes slide-in-right {
  0% {
    -webkit-transform: translateX(1000px);
            transform: translateX(1000px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}
@keyframes slide-in-right {
  0% {
    -webkit-transform: translateX(1000px);
            transform: translateX(1000px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
}

@keyframes fade-in-top {
  0% {
    -webkit-transform: translateY(-50px);
            transform: translateY(-50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

@-webkit-keyframes fade-in-top {
  0% {
    -webkit-transform: translateY(-50px);
            transform: translateY(-50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

@media only screen and (min-width: 961px) {

    div#mobile_menu.active::after {
        display: none;
    }

    .mobile-nav a {
        opacity: 0;
    }

    div#mobile_menu.active .mobile-nav a {
        display: none;
        pointer-events: none;
    }
}

.swatch-tile a {
	color: #4A4A4A;
}

.swatch-tile a:hover {
	text-decoration: none;
}

h2.underline {
    border-bottom: 1px solid #A09F9F;
    display: inline;
}

p.underline {
    border-bottom: 1px solid #A09F9F;
    display: inline;
}

.nav.blog-filter a {
    text-transform:  uppercase;
    color: #001848;
}

.nav.blog-filter a.active {
    color: #292B36;
}

.featured h3 {
    font-size: 2em;
}

.modal-btn:hover {
    cursor: pointer;
}

.tour .modal-content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    pointer-events: auto;
    background-color: transparent;
    background-clip: padding-box;
    border: none;
    border-radius: 0;
    outline: 0;
}

.tour .modal-header {
    padding: 0;
    border-bottom: none;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.modal-backdrop.show {
    opacity: .8;
}

.dark-text {
    color: #4A4A4A;
}

.video-grey-text {
    color: #C7C7C7;
}

.partners h2 {
    font-size: 2.25rem;
    line-height: 1.5;
}

p.partner_description {
    text-transform: uppercase;
    font-style: italic;
}

ul.downloads li {
    margin-bottom: 8px;
}

ul.blog-filter li a {
    font-size: 0.8em;
}

.cta-container.pad {
    padding: 4em 0;
}

.stock {
    font-size: 1.3em;
    font-weight: 300;
}

.price-category {
    border-left: 1px solid #707070;
    padding: 4px 0 3px 5px;
}

.contact-bg ul.fa-ul a {
    color: #292B36;
}

.filters input[type=checkbox] {
    -webkit-appearance: none;
    background-color: #fafafa;
    border: 1px solid #cacece;
    padding: 6px;
    display: inline-block;
}

.filters input[type=checkbox]:active, .filters input[type=checkbox]:checked:active {
    box-shadow: 0 1px 2px rgba(0,0,0,0.05), inset 0px 1px 3px rgba(0,0,0,0.1);
}

.filters input[type=checkbox]:checked {
    background-color: #0060A8;
    border: 1px solid #0060A8;
    color: #fefefe;
}

.filters input[type=checkbox]:checked:after {
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    content: "\f00c";
    font-size: 10px;
    position: absolute;
    top: -1.25px;
    left: 1.5px;
    color: #fefefe;
}

.timelinecontain {
    opacity: 0;
    transition: all 0.5s ease-in-out;
    visibility: hidden;
    height: 0;
    overflow: hidden;
}

.timelinecontain.showcontainer {
    opacity: 1;
    visibility: visible;
    height: auto;
}

.years-nav h3 {
    font-family: 'Antonio', sans-serif;
    font-size: 1.25em;
    text-transform: uppercase;
    margin-bottom: 1em;
    padding-bottom: 8px;
    font-weight: 200;
    letter-spacing: 1px;
    opacity: 0.3;
    transition: all 0.5s ease-in-out;
    border-bottom: 2px solid transparent;
    cursor: pointer;
}

.years-nav.active h3 {
    border-bottom: 2px solid #001848;
    opacity: 1;
}

.tl-next {
    text-transform: uppercase;
    font-weight: 600;
    display: flex;
    letter-spacing: 1px;
    font-size: 0.8em;
    cursor: pointer;
    margin-top: 2.5em;
}

.tl-next.products, .tl-prev.products {
    text-transform: uppercase;
    font-weight: 600;
    display: inline-block;
    letter-spacing: 1px;
    cursor: pointer;
    font-size: 0.8em;
    margin-top: 2.5em;
}

.tl-next i, .tl-prev i {
    font-size: 1.65em;
    margin-left: 10px;
}

.tl-next.last i, .tl-prev.last i   {
    font-size: 1.65em;
    margin-left: 0;
    margin-right: 10px;
}

.hero-bg-slider {
    position: absolute;
    bottom: 2em;
    right: 1em;
    z-index: 1000;
}

.hero-bg-slide-item {
    opacity: 0.6;
    transition: all 0.5s ease-in-out;
    padding: 0 5px;
    text-shadow: 0px 3px 6px #00000029;
}

.hero-bg-slide-item.active {
    opacity: 1;
}

.slick-slider .slick-prev, .slick-slider .slick-next {
    z-index: 5;
    font-size: 2.5em;
    height: 40px;
    width: 40px;
    margin-top: -20px;
    color: #B7B7B7;
    position: absolute;
    top: 50%;
    text-align: center;
    color: #016daa;
    opacity: 1;
    transition: opacity .25s;
    cursor: pointer;
}
.slick-slider .slick-prev:hover, .slick-slider .slick-next:hover {
  opacity: .65;
}
.slick-slider .slick-prev {
    left: 5px;
}
.slick-slider .slick-next {
    right: 5px;
}

#detail .product-images {
    width: 100%;
    margin: 0 auto;
    border: none;
    background: #ffffff;
}

#detail .product-images li, #detail .product-images figure, #detail .product-images a, #detail .product-images img {
  display: block;
  outline: none;
  border: none;
}
#detail .product-images .main-img-slider figure {
  margin: 0 auto;
  padding: 0 2em;
}
#detail .product-images .main-img-slider figure a {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}
#detail .product-images .main-img-slider figure a img {
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
}
#detail .product-images .thumb-nav {
    margin: 0;
    padding: 20px 0;
    max-width: 600px;
    max-height: 140px;
}
#detail .product-images .thumb-nav.slick-slider .slick-prev, #detail .product-images .thumb-nav.slick-slider .slick-next {
  font-size: 1.2em;
  height: 20px;
  width: 26px;
  margin-top: -10px;
}
#detail .product-images .thumb-nav.slick-slider .slick-prev {
  margin-left: -30px;
}
#detail .product-images .thumb-nav.slick-slider .slick-next {
  margin-right: -30px;
}
#detail .product-images .thumb-nav li {
  display: block;
  margin: 0 auto;
  cursor: pointer;
}
#detail .product-images .thumb-nav li img {
  display: block;
  width: 100%;
  margin: 0 auto;
  border: 2px solid transparent;
  -webkit-transition: border-color .25s;
  -ms-transition: border-color .25s;
  -moz-transition: border-color .25s;
  transition: border-color .25s;
}
#detail .product-images .thumb-nav li:hover, #detail .product-images .thumb-nav li:focus {
  border-color: #999;
}
#detail .product-images .thumb-nav li.slick-current img {
  border-color: #d12f81;
}

#detail .thumb-nav .slick-slide img {
    object-fit: contain;
    object-position: 50% 50%;
    width: 100% !important;
    height: 6rem;
    padding: 0 1.5rem;
}

.main_container {
    height: auto;
    width: 100%;
    background: #ffffff;
    overflow: hidden;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

img.main {
    margin: auto;
    object-fit: contain;
    max-height: 400px;
}

.slick-slide {
  max-height: 400px;
  height: unset !important
}

.slick-list {
  max-height: 400px !important;
}

.slick-prev:before, .slick-next:before {
    content: '' !important;
}

@media (max-width: 767px) {
  .main_container {
    height: 300px;
  }

  .slick-slide {
    max-height: 300px;
    height: unset !important
  }

  .slick-list {
    max-height: 300px !important;
  }

  img.main {
    max-height: 300px;
  }
}

.blog-post-header {
    position: relative;
    padding-top: 17em;
    padding-bottom: 8em;
}

.blog-post-header:after {
    content: '';
    position: absolute;
    background: #292B36;
    opacity: 0.3;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.blog-post-header .container {
    position: relative;
    z-index: 1;
}

.blog-post-header h1 {
    font-size: 5em;
    font-weight: 800;
    text-shadow: 0px 3px 6px #00000029;
    line-height: 1.1em;
    color: #fefefe;
    display: inline-block;
}

@media only screen and (max-width: 910px) {

    .blog-post-header h1 {
        font-size: 4em;
        font-weight: 800;
        text-shadow: 0px 3px 6px #00000029;
    }

}

@media only screen and (max-width: 799px) {

    .blog-post-header h1 {
        font-size: 3.5em;
        font-weight: 800;
        text-shadow: 0px 3px 6px #00000029;
    }

}

.blog-post-header p.lead {
    font-size: 2em;
    font-weight: 400;
    letter-spacing: 1px;
    text-shadow: 0px 3px 6px #00000029;
    color: #fefefe;
    text-transform: uppercase;
}

.blog-post-header p.lead span {
    position: relative;
}

.blog-post-header p.lead span:before, .blog-post-header p.lead span:after {
    content: "";
    position: absolute;
    height: 1px;
    background: #fefefe;
    top: 45%;
    width: 18vw;
}

.blog-post-header p.lead span:before {
    right: 100%;
    margin-right: 15px;
}
.blog-post-header p.lead span:after {
    left: 100%;
    margin-left: 15px;
}

.blog-post h4 {
    font-size: 1.2em;
    line-height: 1.5em;
    color: #001848;
    margin-bottom: 2em;
}

h2.subhead {
    font-family: 'Antonio', sans-serif;
    font-size: 1.25em;
    display: inline-block;
    text-transform: uppercase;
    margin-bottom: 1.5em;
    font-weight: 200;
    letter-spacing: 1px;
}

blockquote {
    background: #EAE8E8;
    padding: 3em;
    margin-bottom: 3em;
    margin-top: 3em;
}

blockquote p {
    font-size: 1.2em;
    line-height: 1.5em;
    color: #0060A8;
    margin-bottom: 0;
    border-left: 2px solid #0060A8;
    padding-left: 1.5em;
}

.blog-post img {
    max-width: 100%;
    height: auto;
}

.owl-theme .owl-nav {
    text-align: right;
}

.timelinecontain.products {
    overflow: visible;
}

.tl-next.products i, .tl-prev.products i  {
    font-size: 3em;
    margin-right: 0.5em;
}

.misha_loadmore {
    max-width: 200px;
    margin-left: auto;
    margin-right: auto;
}


.related-posts {
    background: linear-gradient(to top, white 50%, #292B36 0%);
    margin-top: 100px;
}

@media (max-width: 767px) {

    .related-posts {
        background: linear-gradient(to top, white 80%, #292B36 0%);
    }

}

.social-container {
    position: sticky;
    top: 120px;
    left: 0;
    background: #292B36;
    width: 75px;
    color: #fefefe;
    padding: 10px 0;
}

.social-share {
    border: 1px solid #fefefe;
    border-radius: 100px;
    width: 35px;
    height: 35px;
    text-align: center;
    margin: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.social-share a {
    color: #fefefe !important;
}

.social-share:hover {
    background: #fefefe;
}

.social-share:hover a {
    color: #292B36 !important;
}

.socialshare-mobile {
    display: none;
}

@media (max-width: 730px) {
    .social-container {
        display: none;
    }

    .blog-post .container {
        margin-top: 0 !important;
    }

    .social-container-mobile {
        background: #292B36;
        text-align: center;
    }

    .social-container-mobile .social-share {
        border: 1px solid #fefefe;
        border-radius: 100px;
        width: 35px;
        height: 35px;
        text-align: center;
        margin: 20px;
        display: inline-flex;
        justify-content: center;
        align-items: center;
    }

    .socialshare-mobile {
        display: block;
    }
}

.blog-post { 
    position: relative;
}


.blog-post .container {
    margin-top: -260px;
}

.blog-post h2 {
    font-size: 2em;
}

.blog-post h3 {
    font-size: 1.65em;
    color: #7C7C7C;
    margin-top: 1em;
}

p.wp-caption-text {
    text-align: center;
    font-size: 0.9em;
    font-style: italic;
    color: #7c7c7c;
    margin-top: 0.5em;
}

.wp-caption {
    max-width: 100%;
}

.blog-post img {
    max-width: 100%;
    height: auto;
}

img.alignright { float: right; margin: 0 0 1em 1em; }
img.alignleft { float: left; margin: 0 1em 1em 0; padding: 0 1em 1em 0; }
img.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignright { float: right; }
.alignleft { float: left; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }

.btn-sm {
    padding: 0.85em 2em !important;
    font-size: .875rem !important;
    line-height: 1.5;
    border-radius: .2rem;
}

p.small.blue-text a {
    color: #0060A8;
}

.header.abt h2 {
    font-size: 3em;
}

.header.abt h3 span {
    color: #D5CF14;
}

.header.abt h3 {
    line-height: 1.65;
}

.abt-container {
    max-width: 500px;
    position: relative;
    margin-left: auto;
    margin-right: auto;
}

.main_container.profile {
    background: #292B36;
}

.main_container.profile img.main {
    max-height: 400px;
    padding: 20px;
}

ul .slick-slide {
    margin-right: 10px;
    border: 1px solid rgba(0,0,0,.1);
}

.main-img-slider .slick-track {
    display: flex;
    align-items: center;
    justify-content: center;
}

@media only screen and (max-width: 991px) {
    .cta-bg {
        padding-top: 8em;
        padding-left: 0.5em;
        padding-right: 0.5em;
    }

    .cta-container.pad {
        padding: 3em 0;
    }
}

/* Primary-nav Services dropdown */
.nav-item.services-nav {
	position: relative;
}
.services-dropdown {
	list-style: none;
	margin: 0;
	padding: 0.5rem 0;
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 230px;
	background: #ffffff;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
	border-radius: 4px;
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
	z-index: 10000;
	/* Safety for short viewports: scroll rather than run off-screen. */
	max-height: calc(100vh - 9rem);
	overflow-y: auto;
}
/* Two columns on larger screens so the 14-item list stays short. */
@media (min-width: 768px) {
	.services-dropdown {
		min-width: 460px;
		column-count: 2;
		column-gap: 0;
	}
	.services-dropdown li {
		break-inside: avoid;
	}
}
.nav-item.services-nav:hover .services-dropdown,
.nav-item.services-nav:focus-within .services-dropdown {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.services-dropdown li {
	display: block;
}
.services-dropdown li a {
	display: block;
	padding: 0.45rem 1.25rem;
	color: #4A4A4A;
	white-space: nowrap;
	font-size: 0.95rem;
	transition: background 0.15s ease, color 0.15s ease;
}
.services-dropdown li a:hover {
	background: #f4f6fa;
	color: #0060A8;
}

/* FAQ accordion */
.faq-accordion.accordion > .card {
	border: none;
	border-radius: 0;
	overflow: visible;
}
/* Divider between questions (beats Bootstrap's border-removal specificity). */
.faq-accordion.accordion > .card:not(:last-of-type) {
	border-bottom: 1px solid #d9d9d9;
}
.faq-accordion .card-header {
	background: transparent;
	border: none;
	padding: 0;
}
.faq-accordion .btn-link {
	color: #001848;
	text-decoration: none;
	font-weight: 400;
	font-size: 1.15rem;
	padding: 1.1rem 0.25rem;
	white-space: normal;
	width: 100%;
}
.faq-accordion .btn-link:hover,
.faq-accordion .btn-link:focus {
	text-decoration: none;
	color: #0060A8;
	box-shadow: none;
}
.faq-accordion .btn-link[aria-expanded="true"] {
	color: #0060A8;
}
.faq-accordion .faq-chevron {
	transition: transform 0.25s ease;
	font-size: 0.9rem;
	flex-shrink: 0;
}
.faq-accordion .btn-link[aria-expanded="true"] .faq-chevron {
	transform: rotate(180deg);
}
.faq-accordion .card-body {
	padding: 0 0.25rem 1.25rem;
}
