/*
 Theme Name:   Divi Child Theme
 Theme URI:    https://www.elegantthemes.com/
 Description:  Child Theme for Divi
 Author:       MD Rahu
 Author URI:   https://www.fiverr.com/raahuu?source=gig_page
 Template:     Divi
 Version:      2.0.0
*/

/*-------------------Add any custom CSS below this line-------------------*/

.footer-links a,
.c-menu-style .et_pb_menu__menu ul.et-menu.nav>li>a {
    position: relative;
}
.footer-links .et_pb_module:not(.et_pb_social_media_follow) a:before, .c-menu-style .et_pb_menu__menu ul.et-menu.nav>li>a:before {
    content: "";
    background: linear-gradient(90deg, #83b82a 0%, #a0ff00 50%, #83b82a 100%);
    background-size: 150%;
    height: 1px;
    width: 0;
    position: absolute;
    transition: all .3s ease-in-out;
    left: 50%;
    transform: translatex(-50%);
}
.c-menu-style .et_pb_menu__menu ul.et-menu.nav>li>a:before {
    transform: translate(-50%, 13px);
}
.footer-links .et_pb_module:not(.et_pb_social_media_follow) a:before {
    bottom: -2px !important;
}
.footer-links .et_pb_module:not(.et_pb_social_media_follow) a:hover:before,
.c-menu-style .et_pb_menu__menu ul.et-menu.nav>li.current-menu-item:first-child>a:before,
.c-menu-style .et_pb_menu__menu ul.et-menu.nav>li>a:hover:before,
.c-menu-style .et_pb_menu__menu ul.et-menu.nav>li.in-viewport>a:before{
    width: 100%;
	animation: menuitemAnimate 1.5s linear infinite;
}

@keyframes menuitemAnimate {
	0% {
		background-position-x: 0%;
	}
	100% {
		background-position-x: 300%;
	}
}
.et_pb_image a:before {
	display: none !important;
}






.et_pb_button {
    position: relative;
}
.button-child {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    overflow: hidden;
    border-radius: inherit;
}
.button-child-inner{
    position: absolute;
    top: 0;
    left: -105%;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.2);
    transition: all 0.5s ease;
	pointer-events: none;
	transform: skewX(10deg);
}
.et_pb_button:hover .button-child-inner{
    left: 105%;
}
.et_pb_button.transparent-button-green .button-child-inner {
    background: rgb(28 169 164 / 10%) !important;
}
.border-animation {
	display:none;
}




/* Border styled button */
.had-border-animation .border-animation {
    position: absolute;
    inset: 0;
    height: 100%;
    width: 100%;
	display:block;
}
.border-animation span {
	position: absolute;
    background: #5c4a3e;
	transition: all .3s ease-in-out;
}
.whiteon-hover .border-animation span {
    background: #fff !important;
}
span.border-bottom {
    width: calc(100% + 3px);
    left: -1px;
    height: 2px;
    bottom: -2px;
	transform-origin: left;
	transform: scalex(0);
}
.et_pb_button:hover span.border-bottom {
	transform: scalex(1);
}
span.border-right {
    width: 2px;
    right: -2px;
    height: calc(100% + 3px);
    bottom: -1px;
	transform-origin: bottom;
	transform: scaley(0)
}
.et_pb_button:hover span.border-right {
	transform: scaley(1);
}
span.border-top {
    width: calc(100% + 3px);
    left: -1.5px;
    height: 2px;
    top: -2px;
	transform-origin: right;
	transform: scalex(0);
}
.et_pb_button:hover span.border-top {
	transform: scalex(1);
}
span.border-left {
    width: 2px;
    left: -1.5px;
    height: calc(100% + 3px);
    bottom: -1.5px;
	transform-origin: top;
	transform: scaley(0)
}
.et_pb_button:hover span.border-left {
	transform: scaley(1);
}
span.border-left, span.border-right {
	transition-delay: 0s;
	transition: all .15s;
}
.et_pb_button:hover span.border-left, .et_pb_button:hover span.border-right {
	transition-delay: .3s;
}
span.border-top, span.border-bottom {
	transition-delay: .15s;
}
.et_pb_button:hover span.border-top, .et_pb_button:hover span.border-bottom {
	transition-delay: 0s;
}

/* Header */
a.et_pb_button.header-button::before {
    position: relative;
    margin-left: 0 !important;
    margin-right: 10px !important;
    top: 2px;
}
.header-menu-row .et_pb_column:nth-child(2) {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
}
body #page-container .et_pb_button.bold-button {
    transition: all 0.15s ease !important;
}
body #page-container .et_pb_button.bold-button:active {
    box-shadow: 0px 0px 0px 0px #4a7010 !important;
	transform: translatey(3px) !important;
}
a.et_pb_button.no-hover-animate div {
    display: none;
}




.subhead-text {
    perspective: 600px;
}

.subhead-text .letter {
    display: inline-block;
    transform: rotateY(0deg) scale(1); /* always visible */
    transform-origin: center;
}

.subhead-text .letter.flip-animate {
    animation: flipPop 0.6s ease;
}

@keyframes flipPop {
    0% {
        transform: rotateY(0deg) scale(1);
    }
    40% {
        transform: rotateY(90deg) scale(1.1);
    }
    70% {
        transform: rotateY(-10deg) scale(1.2);
    }
    100% {
        transform: rotateY(0deg) scale(1);
    }
}


.list-blurb .et_pb_main_blurb_image, .list-blurb .et_pb_main_blurb_image span.et_pb_image_wrap {
    width: fit-content;
    margin: 0;
}
.list-blurb .et_pb_blurb_container {
    padding-left: 0 !important;
}

.card-blurb:hover .et_pb_main_blurb_image {
    transform: translateY(-8px) scale(1.08);
}
.card-blurb .et_pb_main_blurb_image {
    transition: all .3s ease-in-out;
}
.card-blurb {
	overflow: visible;
}


body:not(.et-fb) .custom-slider .et_pb_column {
    margin-right: 20px !important;
	margin-left: 20px !important;
	margin-top: 20px !important;
	margin-bottom: 20px !important;
}
.et_pb_module.et_pb_image.cropped-image {
	overflow: hidden !important;
}
.cropped-image img {
    aspect-ratio: 16/6;
    object-fit: cover;
	transition: all .5s ease-in-out;
}
.et_pb_column:hover .cropped-image img {
    transform: scale(1.09);
}
.custom-slider button.slick-arrow {
    position: absolute;
    background: linear-gradient(180deg,#83b82a 0%,#6a9a1f 100%) !important;
    width: 45px;
    height: 45px;
    border-radius: 100px;
    transition: all .2s ease-in-out;
    bottom: 0;
    top: auto;
    left: auto;
    transform: unset;
    bottom: auto;
    top: 0;
}
.custom-slider button.slick-arrow:hover {
    transform: scale(1.1);
}
.custom-slider button.slick-arrow.slick-next {
    right: 0;
}
.custom-slider button.slick-arrow.slick-prev {
    right: 55px;
}
.custom-slider button.slick-arrow:before {
    font-family: 'ETmodules';
    color: #fff !important;
    font-weight: 500;
    font-size: 25px;
    opacity: 1;
}
.custom-slider button.slick-arrow.slick-prev:before {
    content: "4";
}
.custom-slider button.slick-arrow.slick-next:before {
    content: "5";
}
.custom-slider .slick-track {
    display: flex;
}


.numbered-blurb .et_pb_module_header {
    border: 2px solid #83B82A;
    width: 45px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100px;
    padding-bottom: 5px;
}
.numbered-blurb .et_pb_blurb_container {
    display: flex;
    align-items: center;
    column-gap: 13px;
}
.et_pb_column .changing-color .et_pb_module_header {
    transition: all .3s ease-in-out;
}
.et_pb_column:hover .changing-color .et_pb_module_header {
    color: #83B82A !important;
}


.et_pb_number_counter .percent, .et_pb_number_counter .percent p {
    height: fit-content !important;
    margin-bottom: 10px !important;
}

.et_pb_module.full-height-image, .full-height-image span.et_pb_image_wrap, .full-height-image span.et_pb_image_wrap img {
    height: 100%;
    object-fit: cover;
}
.s-comumn-inline-imgs>.et_pb_row {
    border-radius: 10px;
    overflow: hidden;
}



.custom-effects .dipi-carousel-item-content {
    position: absolute;
    bottom: 0;
    left: 0;
    transition: all .4s ease-in-out;
}
.custom-effects .dipi_carousel_child:hover .dipi-carousel-item-content {
    transform: translateY(-10px);
}

.custom-effects .dipi_carousel_child .et_pb_module_inner .dipi-image-wrap:after {
    content: "";
    width: 100%;
    height: 50%;
    position: absolute;
    bottom: 0;
    left: 0;
	opacity: .6;
    background-image: linear-gradient(0deg, rgb(0 0 0 / 75%), transparent);
    transition: all .4s ease-in-out;
	pointer-events: none;
}
.custom-effects .dipi_carousel_child:hover .et_pb_module_inner .dipi-image-wrap:after {
	opacity: 1;
}
.custom-effects .dipi_carousel_child .et_pb_module_inner .dipi-image-wrap img {
    transition: all .4s ease-in-out;
}
.custom-effects .dipi_carousel_child:hover .et_pb_module_inner .dipi-image-wrap img {
    transform: scale(1.05);
}
body #page-container .et_pb_section .custom-effects .swiper-pagination.swiper-pagination-clickable {
    display: flex !important;
    flex-wrap: wrap !important;
    align-content: center;
    width: 100% !important;
    justify-content: center;
    align-items: center;
}
.custom-effects span.swiper-pagination-bullet {
    opacity: 1;
    transform: unset !important;
	transition: all .3s ease-in-out !important;
    border-radius: 100px;
	
}
.custom-effects span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 22px;
}

.paralax-fix span.et_parallax_bg_wrap {
    z-index: -1;
}
.contact-blurb .et_pb_blurb_content .et_pb_main_blurb_image {
    margin-bottom: 0;
    width: fit-content;
	margin-top: 2px;
}
.contact-blurb  .et_pb_blurb_content {
    display: flex;
    align-items: flex-start;
}
input.input.et_pb_contact_captcha {
    line-height: 1 !important;
    padding: 10px;
}
button.et_pb_contact_submit.et_pb_button {
    transition: all .2s ease-in-out;
}
button.et_pb_contact_submit.et_pb_button:hover {
    transform: translateY(2px);
}
button.et_pb_contact_submit.et_pb_button:active {
    transform: translateY(3px);
	box-shadow: unset !important;
}


/* Contact page */
.et_pb_module.button-type-blurb span.et_pb_image_wrap img,
.et_pb_module.button-type-blurb span.et_pb_image_wrap span {
    aspect-ratio: 1/1;
    display: flex;
    align-items: center;
    justify-content: center;
	object-fit: cover;
}
.et_pb_module.button-type-blurb .et_pb_blurb_content {
    display: flex;
    align-items: center;
}
.et_pb_module.button-type-blurb  .et_pb_main_blurb_image {
    margin-bottom: 0;
    width: fit-content;
}
.et_pb_module.button-type-blurb .et_pb_image_wrap {
    aspect-ratio: 1/1;
    width: fit-content;
}
.et_pb_module.button-type-blurb.image-on-top .et_pb_main_blurb_image {
    margin-bottom: auto;
}



.headshot-img{
	overflow: hidden;
}
.headshot-img img {
    aspect-ratio: 1/1.05;
    object-fit: cover;
    transition: all .5s ease-in-out;
	width: 100%;
}
.headshot-img span {
    width:100%;
}
.et_pb_column:hover .headshot-img img {
	transform: scale(1.06);
}


.s-sec-c-width>.et_pb_row {
    display: flex !important;
    flex-wrap: wrap !important;
}
.s-sec-c-width>.et_pb_row .s-col-one {
    order: 2 !important;
	width: 100%;
}
.s-sec-c-width>.et_pb_row .s-col-two {
    order: 3 !important;
	width: 100%;
}
.s-sec-c-width>.et_pb_row .s-sec-three {
    order: 1 !important;
	width: 100%;
}
@media (min-width: 981px) {
	.s-sec-c-width>.et_pb_row .s-col-one {
		width: 48.5% !important;
		margin-right: 3% !important;
	}
	.s-sec-c-width>.et_pb_row .s-col-two {
		width: 47.5% !important;
		margin-right: 0 !important;
	}
	.s-sec-c-width>.et_pb_row .s-sec-three {
		width: 100% !important;
	}
}

.toggle-to-accordion .et_pb_toggle_title {
    padding: 24px 28px !important;
}
.toggle-to-accordion .et_pb_toggle_content.clearfix {
    padding: 10px 28px 24px 28px;
}
.toggle-to-accordion .et_pb_module .et_pb_toggle_title::before {
    right: 10px !important;
    background: #d6d3d3;
    top: 50%;
    transform: translateY(-50%);
    margin: 0;
    width: 20px;
    border-radius: 100%;
    transition: all .2s ease-in-out;
    aspect-ratio: 1/1;
    display: flex;
    align-items: center;
    justify-content: center;
}
.toggle-to-accordion .et_pb_module .et_pb_toggle_title:hover::before {
    background: #83b82a;
}
.toggle-to-accordion .et_pb_module.et_pb_toggle_open .et_pb_toggle_title::before {
    background: #83b82a;
    transform: translateY(-50%) rotate(-45deg);
}
.toggle-to-accordion .et_pb_module.et_pb_toggle_open .et_pb_toggle_title:hover::before {
    transform: translateY(-50%) scale(1.2);
}

.counter-styles .percent, .counter-styles .percent p {
    height: fit-content !important;
}



.et_pb_module.full-height-img, .full-height-img span.et_pb_image_wrap, .full-height-img span.et_pb_image_wrap img {
    height: 100%;
    object-fit: cover;
}
