/*
 Theme Name:   Maven
 Theme URI:    firespring.com
 Description:  Twenty Fifteen Child Theme
 Author:       Firespring
 Author URI:   http://example.com
 Template:     Divi
 Version:      1.0.0
 License:      Contact Firespring
*/

/* Style navigation hover effects */
#et-top-navigation nav > ul > li > a {
    padding-bottom: 20px!important;
}

#top-menu-nav > ul > li > a {
    display: inline-block;
    position: relative;
    padding-bottom: 1px;
}

#top-menu-nav > ul > li > a:after {
    content: '';
    display: block;
    margin: auto;
    margin-top:10px;
    height: 2px;
    width: 0px;
    background: transparent;
    transition: width .5s ease, background-color .5s ease;
}

#top-menu-nav > ul > li > a:hover:after {
    width: 100%;
    background: #ffff00;
}

#top-menu-nav > ul > li.current-menu-ancestor > a:hover:after {
    width: 0%;
    background: #fff !important;
}

#top-menu-nav > ul > li.menu-item-has-children > a:hover:after {
    width: 0%;
    background: #fff !important;
}

.woocommerce-checkout #payment ul.payment_methods li img {
	max-width: 55px;
}

/* Style scroll bar */
::-webkit-scrollbar {
	width: 10px;
}

::-webkit-scrollbar-track {
	background-color: #282828;
   	border-radius: 2px;
}

::-webkit-scrollbar-thumb {
	background-color: #ffff00;
   	border-radius: 2px;
}

/* Blurb card hover effect */
.grow { 
	transition: all .2s ease-in-out; 
}

.grow:hover { 
	transform: scale(1.1); 
	background-image: url("http://mavenbithamster.flywheelsites.com/wp-content/uploads/2019/04/homeBlurbCardBackground.jpg");
	-webkit-box-shadow: 0px 1px 5px 0px rgba(0,0,0,0.35);
	-moz-box-shadow: 0px 1px 5px 0px rgba(0,0,0,0.35);
	box-shadow: 0px 1px 5px 0px rgba(0,0,0,0.35);
	border-radius: 10px;
}

.grow h4 {
	transition: all .2s ease-in-out; 
	display: inline-block;
}

.grow:hover h4 {
	color: #fff;
	background: #0070C0;
	padding: 2% 5% 3%;
	margin-bottom: 2%;
	border-bottom: 3px solid #0070C0;
}

/* Add underline to h2 tag */
h2.subHeader:after {
	background: none repeat scroll 0 0 #ffcb00;
	bottom: -20px;
	content: "";
	display: block;
	height: 3px;
	position: relative;
	width: 75px;
	margin: auto;
}

h2.subHeaderLight:after {
	background: none repeat scroll 0 0 #fff;
	bottom: -20px;
	content: "";
	display: block;
	height: 3px;
	position: relative;
	width: 75px;
	margin: auto;
}

h2.subHeaderLeft:after {
	background: none repeat scroll 0 0 #ffcb00;
	bottom: -20px;
	content: "";
	display: block;
	height: 3px;
	position: relative;
	width: 75px;
}

h2.subHeaderLeftLight:after {
	background: none repeat scroll 0 0 #fff;
	bottom: -20px;
	content: "";
	display: block;
	height: 3px;
	position: relative;
	width: 75px;
}

/* Blurb underline hover effect */
.blurbUnderline {
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -o-transition: all .5s ease;
    -ms-transition: all .5s ease;
    transition: all .5s ease;
}

.blurbUnderline:hover {
    transform: translateY(-20px);
}

.blurbUnderline:before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    height: 10px;
    width: 0;
    transition: width 0s ease, background .5s ease;
}

.blurbUnderline:after {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    height: 10px;
    width: 0;
    background: #0070C0;
    transition: width .5s ease;
}

.blurbUnderline:hover:before {
    width: 100%;
    background: #0070C0;
    transition: width .5s ease;
}

.blurbUnderline:hover:after {
    width: 100%;
    background: transparent;
    transition: all 0s ease;
}

/* Service blurb card hover effect */
.blurbCard {
	transition: all .2s ease-in-out;
}

.blurbCard:hover {
	background-color: #0070C0 !important;
	color: #fff;
}

.blurbCard h4 {
	transition: all .2s ease-in-out;
}

.blurbCard:hover h4 {
	color: #fff;
}

/* Style fullwidth call to action hover effect */
.fullWidthCTA {
	transition: all .5s ease-in-out; 
}

.fullWidthCTA:hover {
	background-color: #282828;
}

.fullWidthCTA:hover .et_pb_button_1 {
	background-color: #fff !important;
	border-color: #fff !important;
}

/* Button scale effect */
.et_pb_button.buttonScale {
    -webkit-transition: -webkit-transform 0.4s;
    -o-transition: transform 0.4s;
    transition: transform 0.4s, -webkit-transform 0.4s;
    -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}

.et_pb_button.buttonScale:hover, 
.et_pb_button.buttonScale:focus, 
.et_pb_button.buttonScale:active {
    -webkit-transform: scale(1.15);
    -ms-transform: scale(1.15);
    transform: scale(1.15);
}

/* Fullwidth header scroll down arrow animation */
.et_pb_fullwidth_header_scroll a {
	-webkit-transform: translateZ(0px);
	-moz-transform: translateZ(0px);
	-ms-transform: translateZ(0px);
	-o-transform: translateZ(0px);
	transform: translateZ(0px);
}

.et_pb_fullwidth_header_scroll .et-pb-icon {
	-webkit-animation: et_bounce 1s infinite;
	-moz-animation: et_bounce 1s infinite;
	-ms-animation: et_bounce 1s infinite;
	-o-animation: et_bounce 1s infinite;
	animation: et_bounce 1s infinite;
}
 
@-webkit-keyframes et_bounce {
    0% {-webkit-transform: translateY(0);}
    40% {-webkit-transform: translateY(-15px);}
    100% {-webkit-transform: translateY(0px);}
}

@-moz-keyframes et_bounce {
    0% {-moz-transform: translateY(0);}
    40% {-moz-transform: translateY(-10px);}
    100% {-moz-transform: translateY(0px);}
}

@-o-keyframes et_bounce {
    0% {-o-transform: translateY(0);}
    40% {-o-transform: translateY(-10px);}
    100% {-o-transform: translateY(0px);}
}

@keyframes et_bounce {
    0% {transform: translateY(0);}
    40% {transform: translateY(-10px);}
    100% {transform: translateY(0px);}
}

/* Ken Burns header animation effect */
.kb-zoomout .et_pb_slide .et_parallax_bg {
	animation: zoomout 7s forwards;
	-ms-animation: zoomout 7s forwards;
	-webkit-animation: zoomout 7s forwards;
	-o-animation: zoomout 7s forwards;
	-moz-animation: zoomout 7s forwards;
}
 
.kb-zoomin .et_pb_slide .et_parallax_bg {
	animation: zoomin 7s forwards;
	-ms-animation: zoomin 7s forwards;
	-webkit-animation: zoomin 7s forwards;
	-o-animation: zoomin 7s forwards;
	-moz-animation: zoomin 7s forwards; 
}
 
.kb-zoomin-right .et_pb_slide .et_parallax_bg {
	animation: zoomin-right 7s forwards;
	-ms-animation: zoomin-right 7s forwards;
	-webkit-animation: zoomin-right 7s forwards;
	-o-animation: zoomin-right 7s forwards;
	-moz-animation: zoomin-right 7s forwards; 
}
 
.kb-zoomout-right .et_pb_slide .et_parallax_bg {
	animation: zoomout-right 7s forwards;
	-ms-animation: zoomout-right 7s forwards;
	-webkit-animation: zoomout-right 7s forwards;
	-o-animation: zoomout-right 7s forwards;
	-moz-animation: zoomout-right 7s forwards; 
}
 
.kb-zoomout .et_parallax_bg {
	animation: zoomout 17s forwards;
	-ms-animation: zoomout 17s forwards;
	-webkit-animation: zoomout 17s forwards;
	-o-animation: zoomout 17s forwards;
	-moz-animation: zoomout 17s forwards;
}
 
.kb-zoomin .et_parallax_bg {
	animation: zoomin 17s forwards;
	-ms-animation: zoomin 17s forwards;
	-webkit-animation: zoomin 17s forwards;
	-o-animation: zoomin 17s forwards;
	-moz-animation: zoomin 17s forwards;
}
 
.kb-zoomin-right .et_parallax_bg {
	animation: zoomin-right 7s forwards;
	-ms-animation: zoomin-right 17s forwards;
	-webkit-animation: zoomin-right 17s forwards;
	-o-animation: zoomin-right 17s forwards;
	-moz-animation: zoomin-right 17s forwards; 
}
 
.kb-zoomout-right .et_parallax_bg {
	animation: zoomout-right 7s forwards;
	-ms-animation: zoomout-right 17s forwards;
	-webkit-animation: zoomout-right 17s forwards;
	-o-animation: zoomout-right 17s forwards;
	-moz-animation: zoomout-right 17s forwards; 
} 
 
@keyframes zoomout{
0% {
    -ms-transform: scale3d(1.5, 1.5, 1.5) translate3d(-0px, 0px, 0px);
    -webkit-transform: scale3d(1.5, 1.5, 1.5) translate3d(0px, 0px, 0px);
    -o-transform: scale3d(1.5, 1.5, 1.5) translate3d(0px, 0px, 0px);
    -moz-transform: scale3d(1.5, 1.5, 1.5) translate3d(0px, 0px, 0px);
    transform: scale3d(1.5, 1.5, 1.5) translate3d(0px, 0px, 0px);
    animation-timing-function: linear;
} 
 
100% {
    -ms-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -webkit-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -o-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -moz-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px); 
	}
}
 
@keyframes zoomin{
0% {
    -ms-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -webkit-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -o-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -moz-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    animation-timing-function: linear; 
} 
 
100% {
    -ms-transform: scale3d(1.5, 1.5, 1.5) translate3d(-0px, 0px, 0px);
    -webkit-transform: scale3d(3.5, 3.5, 3.5) translate3d(0px, 0px, 0px);
    -o-transform: scale3d(1.5, 1.5, 1.5) translate3d(0px, 0px, 0px);
    -moz-transform: scale3d(1.5, 1.5, 1.5) translate3d(0px, 0px, 0px);
    transform: scale3d(1.5, 1.5, 1.5) translate3d(0px, 0px, 0px);
	}
}
 
@keyframes zoomout-right{
0% {
    -ms-transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
    -webkit-transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
    -o-transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
    -moz-transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
    transform: scale3d(1.5, 1.5, 1.5) translate3d(-150px, -20px, 0px);
    animation-timing-function: linear;
}
 
100% {
    -ms-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -webkit-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -o-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    -moz-transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
    transform: scale3d(1.1, 1.1, 1.1) translate3d(0px, 0px, 0px);
	}
}
 
@keyframes zoomin-right{
0% {
    -ms-transform: scale3d(1, 1, 1) translate3d(0px, 0px, 0px);
    -webkit-transform: scale3d(1, 1, 1) translate3d(0px, 0px, 0px);
    -o-transform: scale3d(1, 1, 1) translate3d(0px, 0px, 0px);
    -moz-transform: scale3d(1, 1, 1) translate3d(0px, 0px, 0px);
    transform: scale3d(1, 1, 1) translate3d(0px, 0px, 0px);
    animation-timing-function: linear;
}
 
100% {
    -ms-transform: scale3d(1.2, 1.2, 1.2) translate3d(0px, 0px, 0px);
    -webkit-transform: scale3d(1.2, 1.2, 1.2) translate3d(0px, 0px, 0px);
    -o-transform: scale3d(1.2, 1.2, 1.2) translate3d(0px, 0px, 0px);
    -moz-transform: scale3d(1.2, 1.2, 1.2) translate3d(0px, 0px, 0px);
    transform: scale3d(1.2, 1.2, 1.2) translate3d(0px, 0px, 0px);
	}
}

/* Wobble button hover effect */
.et_pb_button.wobble-timed:hover, 
.et_pb_button.wobble-timed:focus, 
.et_pb_button.wobble-timed:active {
    -webkit-animation: wobble-timed 0.2s 3 linear;
    animation: wobble-timed 0.2s 3 linear; 
    -webkit-box-shadow: 0 0 1px rgba(0, 0, 0, 0); 
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}

@keyframes wobble-timed {
    50% {
        -webkit-transform: translateX(3px) rotate(2deg);
        transform: translateX(3px) rotate(2deg);
    }
    100% {
        -webkit-transform: translateX(-3px) rotate(-2deg);
        transform: translateX(-3px) rotate(-2deg);
    }
}

@-webkit-keyframes wobble-timed {
    50% {-webkit-transform: translateX(3px) rotate(2deg);}
    100% {-webkit-transform: translateX(-3px) rotate(-2deg);}
}

/* CSS preloader */
.preloader {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #fefefe;
	z-index: 100000;
	height: 100%;
	width: 100%;
	overflow: hidden !important;
}

.preloader .status {
	width: 100px;
	height: 100px;
	position: absolute;
	left: 50%;
	top: 50%;
	background-image: url("http://mavenbithamster.flywheelsites.com/wp-content/uploads/2019/04/Preloader_3.gif"); /* Add preloader URL here */
	background-repeat: no-repeat;
	background-position: center;
	-webkit-background-size: cover;
	background-size: cover;
	margin: -50px 0 0 -50px;
}

/* Style social media icons in the primary navigation */
.navSocialIcon {
	font-size: 18px !important;
}

/* Style the mobile menu */
@media (max-width: 980px) {
	.container.et_menu_container { 
		width: calc( 100% - 60px);
	}
	.navSocialIcon {
		display: none;
	}
}

.et_mobile_menu {
	margin-left: -30px;
	padding: 5%;
	width: calc( 100% + 60px);
}

.mobile_nav.opened .mobile_menu_bar:before {
 	content: "4d";
}

/* Flip card effect */
/* Set height of card. The image is set to cover, so increasing the height won't distort the image.*/
.flip-card {
	height: 300px;
	perspective: 1000px;
	-webkit-perspective: 1000px;
}
 
/* This container is needed to position the front and back side */
.flip-card-inner {
	position: relative;
	width: 100%;
	height: 100%;
	text-align: center;
	transition: transform 0.8s;
	-webkit-transition: transform 0.8s;
	-webkit-transition: -webkit-transform 0.8s;
	transform-style: preserve-3d;
	-webkit-transform-style: preserve-3d;
}
 
/* Position the front and back side */
.flip-card-front, .flip-card-back {
	position: absolute;
	width: 100%;
	height: 100%;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}
 
/* Add background to front incase image doesn't load */
.flip-card-front {
 	background: #282828;
}
 
/* Set the image to cover, so if you increase height it won't skew image. Image height and .flip-card height should be the same. */
.flip-card-front img {
	height: 300px;
	object-fit: cover;
}
 
/* Style the back side */
.flip-card-back {
	padding: 40px;
	background-color: #282828;
	display: table;
}
 
/* Vertically centre align text on back */
.flip-card-back-inner {
	display: table-cell;
	vertical-align: middle;
	max-width: 300px;
}
 
.flip-card-back h3 {
	color: white;
	margin-bottom: 10px;
}
 
/* Color the view project text to look like a link */
.link-styling {
 	color: #fff !important;
}

p.flipCardCTA {
	color: #0070C0;
}

p.flipCardContent {
	color: #fff;
}

span.flipCardSpan {
	color: #0070C0;
}
 
/* Reverse back of card so is correct orientation after flip */
.flip-card-rotate-left .flip-card-back,
.flip-card-rotate-right .flip-card-back {
	 transform: rotateY(180deg);
	 -webkit-transform: rotateY(180deg);
}
 
.flip-card-rotate-up .flip-card-back,
.flip-card-rotate-down .flip-card-back {
 	transform: rotateX(180deg);
 	-webkit-transform: rotateX(180deg);
}
 
/* Flip animation on mouse hover - rotate right */
.flip-card-rotate-right .flip-card:hover .flip-card-inner {
   	transform: rotateY(180deg);
 	-webkit-transform: rotateY(180deg);
}
 
/* Flip animation on mouse hover - rotate left */
.flip-card-rotate-left .flip-card:hover .flip-card-inner {
   	transform: rotateY(-180deg);
 	-webkit-transform: rotateY(-180deg);
}
 
/* Flip animation on mouse hover - rotate up */
.flip-card-rotate-up .flip-card:hover .flip-card-inner {
   	transform: rotateX(180deg);
 	-webkit-transform: rotateX(180deg);
}
 
/* Flip animation on mouse hover - rotate down */
.flip-card-rotate-down .flip-card:hover .flip-card-inner {
   	transform: rotateX(-180deg);
 	-webkit-transform: rotateX(-180deg);
}
 
/* Responsiveness - turns off the flip animation on mobile and layers the text over the image with a background overlay.*/
 
@media (max-width: 980px) {
.flip-card-rotate-left .flip-card-back,
.flip-card-rotate-right .flip-card-back{
	transform: rotateY(0deg);
	-webkit-transform: rotateY(0deg);
	background-color: #282828;
}
 
.flip-card-rotate-up .flip-card-back,
.flip-card-rotate-down .flip-card-back {
	transform: rotateX(0deg);
	-webkit-transform: rotateX(0deg);
	background-color: #282828;
}
 
.flip-card-back p {
 	color: white;
}
 
.flip-card-rotate-left .flip-card:hover .flip-card-inner,
.flip-card-rotate-right .flip-card:hover .flip-card-inner{
	transform: rotateY(0deg);
	-webkit-transform: rotateY(0deg);
}
 
.flip-card-rotate-up .flip-card:hover .flip-card-inner,
.flip-card-rotate-down .flip-card:hover .flip-card-inner {
   	transform: rotateX(0deg);
 	-webkit-transform: rotateX(0deg);
}
}

/* Adjust button width globally */
.et_pb_button { 
	min-width: 180px; 
	text-align:center; 
}

/* Logo content reveal section */
.logoImage {
	transition: filter .5s ease-in-out;
	-webkit-filter: grayscale(100%); 
	filter: grayscale(100%); 
}
.logoImage:hover {
	-webkit-filter: grayscale(0%); 
	filter: grayscale(0%); 
}

.logoImage.closed:after {
	content:"";
}

.logoImage.opened:after{
	content:"";
}

.logoImage2 {
	transition: filter .5s ease-in-out;
	-webkit-filter: grayscale(100%); 
	filter: grayscale(100%); 
}
.logoImage2:hover {
	-webkit-filter: grayscale(0%); 
	filter: grayscale(0%); 
}

.logoImage2.closed:after {
	content:"";
}

.logoImage2.opened:after{
	content:"";
}

.logoImage3 {
	transition: filter .5s ease-in-out;
	-webkit-filter: grayscale(100%); 
	filter: grayscale(100%); 
}
.logoImage3:hover {
	-webkit-filter: grayscale(0%); 
	filter: grayscale(0%); 
}

.logoImage3.closed:after {
	content:"";
}

.logoImage3.opened:after{
	content:"";
}

.logoImage4 {
	transition: filter .5s ease-in-out;
	-webkit-filter: grayscale(100%); 
	filter: grayscale(100%); 
}
.logoImage4:hover {
	-webkit-filter: grayscale(0%); 
	filter: grayscale(0%); 
}

.logoImage4.closed:after {
	content:"";
}

.logoImage4.opened:after{
	content:"";
}

/* Reduce padding between accordian toggles */
.et_pb_gutters3 .et_pb_column_1_2 .et_pb_module, .et_pb_gutters3.et_pb_row .et_pb_column_1_2 .et_pb_module {
	margin-bottom: 2%;
}

/* Slim email optin styles */
@media (min-width:981px) {
	.slimEmailOptin .et_pb_newsletter_description {
		width: 30%;
	}
	.slimEmailOptin .et_pb_newsletter_form {
		width:70%;
	}
}

.slimEmailOptin .et_pb_newsletter_field,
.slimEmailOptin .et_pb_newsletter_button_wrap {
	flex-basis:32.5%;
}

.slimEmailOptin .et_pb_newsletter_footer {
	margin-top:0;
}

.slimEmailOptin .et_pb_module_header {
	padding-bottom:0; 
}

@media (max-width: 980px) {
	.et_pb_column_4_4 .slimEmailOptin {
		display:block;
	}
	.slimEmailOptin .et_pb_newsletter_description,
	.slimEmailOptin .et_pb_newsletter_form {
		width: 100%;
		padding: 0;
	}
	.et_pb_column_4_4 .slimEmailOptin .et_pb_newsletter_description {
		text-align:center;
		margin-bottom:10px;
	}
	.slimEmailOptin .et_pb_newsletter_footer {
		text-align:center;
	}

	body #et-main-area #main-content h1{
		font-size: 38px;
		line-height: 42px;
	}
}

@media (max-width:600px) {
	.slimEmailOptin .et_pb_newsletter_field {
		flex-basis:49%;
	}
	.slimEmailOptin .et_pb_newsletter_button_wrap {
		flex-basis:100%;
	}
}

@media (max-width:479px) {
	.slimEmailOptin .et_pb_newsletter_field{
		flex-basis:100%;
	}
}

/* Featured post slider hover effects */
.et_pb_post_slider_0 .et_pb_slide .et_pb_text_overlay_wrapper {
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -o-transition: all .5s ease;
    -ms-transition: all .5s ease;
    transition: all .5s ease;
}

.et_pb_post_slider_0 .et_pb_slide .et_pb_text_overlay_wrapper:hover {
    transform: translateY(-20px);
	background-color: #0070C0;
}

.et_pb_post_slider_0 .et_pb_slide .et_pb_text_overlay_wrapper:before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    height: 10px;
    width: 0;
    transition: width 0s ease, background .5s ease;
}

.et_pb_post_slider_0 .et_pb_slide .et_pb_text_overlay_wrapper:after {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    height: 10px;
    width: 0;
    background: #ffff00;
    transition: width .5s ease;
}

.et_pb_post_slider_0 .et_pb_slide .et_pb_text_overlay_wrapper:hover:before {
    width: 100%;
    background: #fff;
    transition: width .5s ease;
}

.et_pb_post_slider_0 .et_pb_slide .et_pb_text_overlay_wrapper:hover:after {
    width: 100%;
    background: transparent;
    transition: all 0s ease;
}

/* Animated call to action section */
 
/* style CTA section and row when waypoint is not triggered */
#cta-section {
    padding: 0 80px;
    transition: all .8s ease;
    -moz-transition: all .8s ease;
    -webkit-transition: all .8s ease;
}

#cta-row {
    margin: 80px auto 0 auto;
    padding: 80px 0;
    max-width: 100%;
    background-color: #0070C0;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    transition: all .8s ease;
    -moz-transition: all .8s ease;
    -webkit-transition: all .8s ease;
}

/* Style CTA section and row once waypoint toggles animate-cta class */
#cta-section.animate-cta {
    padding: 20px 0 0 0;
    overflow: hidden;
}

.animate-cta #cta-row {
    margin: 0 auto 0 auto;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    background-color: #0070C0;
    width: inherit;
}

/* style button */
#sign {
    display: inline-block;
    width: 246px;  
    color: #282828;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 600;
    background-color: #fff;
    padding: 10px 0px;
    margin-top: 30px;
    border-radius: 0px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    transition: all .8s ease;
    -webkit-transition: all .8s ease;
}

#sign:hover {
    background-color: #282828;
	color: #fff !important;
}
 
/* style content within the code module */
.cta-info{
    color: #fff;
    text-align: center;
    margin: 0 auto !important;
    max-width: 800px;
    padding: 50px;
}

.cta-info h3 {
    color: #fff;
    font-size: 35px;
    line-height: 1.3em;
	margin-bottom: 15px;
}

.cta-info p{
	line-height: 26px;
	font-size: 18px;
}

/* Center footer info */
#footer-info {
	float: none; 
	text-align: center;
}

.footer-section:after{
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #000;
	top: 0;
	opacity: .7;
	z-index: 0;
}

/* Fix video background width issue */
.et_pb_section_video_bg video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Hide drop down caret in primary navigation */
/* remove divi default effects for items with a drop down menu */
‪#top‬-menu .menu-item-has-children > a:first-child {
	padding-right: 0px; 
	padding-bottom: 17px!important;
}

#top-menu .menu-item-has-children > a:first-child:after{
	content: ''; 
	margin-top: -2px;
}

#top-menu .menu-item-has-children {
	padding-right: 0px;
}

body .mobile_menu_bar:before{
	color: #fff !important;
}

/*------ Change li size in Nav ------*/
@media screen and (min-width: 1240px) {
	#top-menu li li a {
		font-size: 10px !important;
	}
}

#top-menu li li a { 
	width: 300px; 
}

.nav li ul { 
	width: 320px; 
}

/* Style subheader CTA section */
.subHeaderCTA {
	-webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -o-transition: all .5s ease;
    -ms-transition: all .5s ease;
    transition: all .5s ease;
}

.subHeaderCTA:hover {
	background-color: #282828;
}

.subHeaderIcon {
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.subHeaderCTA:hover .subHeaderIcon {
	-webkit-transform: scale(1.2) rotate(360deg);
    transform: scale(1.2) rotate(360deg);
}

/* Style subpage highlight text */
.subpageHighlight {
	display: inline;
	background-color: #0070C0;
	padding: 2% 5% 2% !important;
	font-weight: 700;
	-webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.subpageHighlightSection:hover .subpageHighlight {
	background-color: #282828;
	padding-right: 30% !important;
}

/* Style team member section */
.teamSection .et_pb_team_member_description {
	padding: 30px;
	text-align: center;
}

.teamSection .et_pb_member_position {
	text-transform: uppercase;
	font-size: 13px;
	font-weight: 600;
}

.teamSection .et_pb_member_position:after {
	content: ' ';
	display: block;
	width: 20px;
	margin: 5px auto 0;
	border: 1px solid;
}

.teamSection:hover .et_pb_member_social_links a {
	opacity:1;
	transform: translate(0px, -15px);
	-webkit-transform: translate(0px, -15px);
	-ms-transform: translate(0px, -15px);
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}

.teamSection .et_pb_member_social_links a {
	opacity:1;
	margin-top: 20px;
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}

.teamSection:hover img {
	-ms-transform: scale(1.00) !important;
	-webkit-transform: scale(1.00) !important;
	transform: scale(1.00) !important;
	-webkit-transition: all 500ms cubic-bezier(0.170, 0.690, 0.470, 0.995);
	-moz-transition: all 500ms cubic-bezier(0.170, 0.690, 0.470, 0.995);
	-o-transition: all 500ms cubic-bezier(0.170, 0.690, 0.470, 0.995);
	transition: all 500ms cubic-bezier(0.170, 0.690, 0.470, 0.995);
}

.teamSection {
	border: none !important;
	border-radius: 15px;
	-moz-border-radius:15px;
	-webkit-border-radius: 15px;
	-o-border-radius: 15px;
	overflow: hidden;
	width: 100%;
	position: relative;
	z-index: 1;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-ms-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	box-shadow:0 20px 150px rgba(0,0,0,0.2);
	-webkit-box-shadow:0 20px 150px rgba(0,0,0,0.2);
	-moz-box-shadow:0 20px 150px rgba(0,0,0,0.2);
}

.teamSection img {
	-webkit-transition: all .5s ease;
	-moz-transition: all .5s ease;
	-ms-transition: all .5s ease;
	-o-transition: all .5s ease;
	transition: all .5s ease;
	-ms-transform: scale(1.03);
	-webkit-transform: scale(1.03);
	transform: scale(1.03);
	-webkit-transform-origin: bottom;
	-moz-transform-origin: bottom;
	-ms-transform-origin: bottom;
	-o-transform-origin: bottom;
	transform-origin: bottom;
}

.et_pb_team_member_image {
	max-width: 600px;
}

/* Style FAQ toggles */
.et_pb_accordion_0.et_pb_accordion .et_pb_accordion_item {
	margin-bottom: 15px; 
	padding: 3%;
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-ms-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}

.et_pb_accordion_0.et_pb_accordion .et_pb_accordion_item:hover {
	background-color: #0070C0;
	border: 1px solid #0070C0;
}

.et_pb_toggle_title {
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-ms-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}

.et_pb_accordion_0.et_pb_accordion .et_pb_accordion_item:hover .et_pb_toggle_title {
	color: #fff !important;
	padding-left: 5%;
}

.et_pb_toggle_title:before {
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-ms-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}

.et_pb_accordion_0.et_pb_accordion .et_pb_accordion_item:hover .et_pb_toggle_title:before {
	color: #fff !important;
	animation: pulse 1s infinite;
  	animation-timing-function: linear;   
}

@keyframes pulse {
  	0% { transform: scale(1); }
	50% { transform: scale(2); }
  	100% { transform: scale(1); }
}

.et_pb_accordion_0.et_pb_accordion .et_pb_accordion_item:hover .et_pb_toggle_content {
	color: #fff !important;
	padding-left: 5%;
	padding-right: 5%;
}

.et_pb_accordion_0 .et_pb_toggle_open h5.et_pb_toggle_title, .et_pb_accordion_0 .et_pb_toggle_open h1.et_pb_toggle_title, .et_pb_accordion_0 .et_pb_toggle_open h2.et_pb_toggle_title, .et_pb_accordion_0 .et_pb_toggle_open h3.et_pb_toggle_title, .et_pb_accordion_0 .et_pb_toggle_open h4.et_pb_toggle_title, .et_pb_accordion_0 .et_pb_toggle_open h6.et_pb_toggle_title {
	padding-left: 5%;
	padding-right: 5%;
}

.et_pb_toggle_content {
	padding-left: 5%;
	padding-right: 5%;
}

/* Service tile hover effects */
.serviceTile {
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-ms-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}

.serviceTile:hover {
    transform: translateY(-20px);
}

.serviceTile:before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    bottom: -20px;
    height: 10px;
    width: 0;
    transition: width 0s ease, background .5s ease;
}

.serviceTile:after {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    bottom: -20px;
    height: 10px;
    width: 0;
    background: #ffff00;
    transition: width .5s ease;
}

.serviceTile:hover:before {
    width: 100%;
    background: #ffff00;
    transition: width .5s ease;
}

.serviceTile:hover:after {
    width: 100%;
    background: transparent;
    transition: all 0s ease;
}

/* Services sidebar styles */
.serviceSidebarHeader {
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-ms-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}

.serviceSidebarHeader:hover {
	padding-left: 15%;
}

.serviceSidebarLinkContainer {
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-ms-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}

.serviceSidebarLinkContainer:hover {
	background-color: #0070C0;
}

.serviceSidebarLinkContainer h4 {
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	-ms-transition: all .5s ease-in-out;
	-o-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
}

.serviceSidebarLinkContainer:hover h4 {
	color: #fff;
	padding-left: 10%;
}

/* Image reveal text hover effect */
.imageRevealText {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transition: all .7s ease;
    transition: all .7s ease;
    opacity: 0;
	-webkit-filter: grayscale(0%); 
	filter: grayscale(0%); 
}

.imageRevealText:hover {
    opacity: 1;
}

.imageRevealText a {
    color: #fff;
}

.imageRevealText mark {
    display: block;
    background: transparent;
    font-weight: bold;
    color: #fff;
}

/* Portfolio grid style */
@media only screen and ( min-width: 768px ) {
	.portfolioGridLayout .et_pb_grid_item {
		width: 31.1% !important;
		margin: 0 3% 3% 0 !important;
		padding: 0;
		-webkit-transition: all .5s ease-in-out;
		-moz-transition: all .5s ease-in-out;
		-ms-transition: all .5s ease-in-out;
		-o-transition: all .5s ease-in-out;
		transition: all .5s ease-in-out;
	}
	
	.portfolioGridLayout .et_pb_grid_item:hover {
		transform: scale(1.05);
		border-top: 5px solid #0070C0;
		margin-bottom: 2.5% !important;
	}

	.portfolioGridLayout .et_pb_grid_item:nth-child(3n) {
		margin-right: 0 !important;
	}

	.portfolioGridLayout .et_pb_grid_item:nth-child(3n+1) {
		clear: left;
	}

	.portfolioGridLayout .et_pb_grid_item:nth-child(4n+1) {
		clear: unset !important;
	}
}

/* Hide margin at the bottom of project posts */
.single .et_pb_post {
	margin-bottom: 0px;
}

#main-content {
	overflow: hidden;
}

/* Style blog layout */
.et_pb_module .et_pb_blog_0 .mavenBlogLayout .et_pb_posts .et_pb_bg_layout_light {
	transition: box-shadow 0.3s ease-in-out,transform 0.3s ease-in-out;
}

.mavenBlogLayout .et_pb_ajax_pagination_container{
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.mavenBlogLayout .entry-featured-image-url{
	position: relative;
	overflow: hidden;
}

.mavenBlogLayout .et_pb_image_container img {
	transition: .3s;
}

.mavenBlogLayout .et_pb_image_container:hover img, .et_pb_post:hover a img{
	-webkit-transform: scale(1.2);
	-moz-transform: scale(1.2);
	-ms-transform: scale(1.2);
	-o-transform: scale(1.2);
	transform: scale(1.2);
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.mavenBlogLayout .et_pb_blog_grid .et_pb_post {
    background-color: transparent;
    border: none;
	padding:0;
}

.mavenBlogLayout .entry-title, .mavenBlogLayout .post-meta, .mavenBlogLayout .post-content {
    background-color: #f4f4f4;
	position: relative;
}

.mavenBlogLayout .entry-title {
    margin-top: -75px;
	text-transform: uppercase;
	font-weight: bold;
}

.mavenBlogLayout .post-meta {
    margin-bottom: 0 !important;
}

.mavenBlogLayout .post-content p {
    padding: 10px 15px 20px 15px;
	color: #000000;
}

.mavenBlogLayout p, .mavenBlogLayout h2 {
    padding: 20px 15px 0;
}

@media only screen and (max-width: 980px) {
	.mavenBlogLayout .column {
		width: 100% !important;
		margin: 0px;
	}
	.mavenBlogLayout .column .et_pb_post {
		width: 370px;
		margin: 0 auto;
		margin-bottom: 40px !important;
	}
}

@media only screen and (max-width: 479px) {
	.mavenBlogLayout .post-meta {
		padding: 10px 15px 0 !important;
	}
}



/* Hide sidebar */
body #sidebar {
	display:none;
}
/* Remove thin line */
body #main-content .container:before {
	background: none;
}
/* Make content 100% width */
@media (min-width: 981px){
	body #left-area {
		width: 100%;
		padding-right: 0px !important;
	}
}

/***
Login styles - START
 */

body.login div#login h1{
	display:none;
}

#login{
	position:relative;
	margin-top: 100px;
}

#login:before {
	content: '';
	background: url('/wp-content/uploads/2020/07/JOY-LOGO_Yellow-Blue-site.png') no-repeat center center ;
	background-size: 100%;
	width: 110px;
	height: 110px;
	display: block;
	margin: auto;
	margin-bottom: 30px;
	left: 0;
	right: 0;
	z-index: 2;
	position:relative;
}


/**
Login Styles - END
 */


/** Blurb Color Fix - Start **/
.et_pb_blurb.et_pb_bg_layout_dark .et_pb_blurb_container .et_pb_module_header,
.et_pb_blurb.et_pb_bg_layout_dark .et_pb_blurb_container .et_pb_blurb_description {
	color: #fff !important;
}
/** Blurb Color Fix - END **/
