/*
 Theme Name:   Divi Child Theme From MP-Webdesign
 Theme URI:    https://www.elegantthemes.com/
 Description:  This child theme made by MP-Webdesign
 Author:       MP-Webdesign
 Author URI:   https://maxpruegner.com/
 Template:     Divi
 Version:      2.3.0
*/

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


header.et-l.et-l--header {
    position: absolute;
    width: 100%;
    z-index: 99999;
}
.et_pb_section.et-first-child>.et-vb-module-options.et-vb-ui {
    top: 110px;
}

.et_pb_button {
    position: relative;
}
.button-child {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    overflow: hidden;
    border-radius: inherit;
	pointer-events: none;
}
.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 .button-child-inner {
    background: rgb(14 36 56 / 12%) !important;
}


.footer-links a,
.c-menu-style .et_pb_menu__menu>nav>ul>li>a {
    position: relative;
	opacity: 1 !important;
}
.footer-links a:before,
.c-menu-style .et_pb_menu__menu>nav>ul>li>a:before {
    content: "";
    background: currentColor;
    position: absolute;
    width: 0;
    height: 2px;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
	transition: all .2s ease-in-out;
}
.footer-links a:hover:before,
.c-menu-style .et_pb_menu__menu ul.et-menu.nav>li.current-menu-item:not(.not-in-viewport)>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%;
}
.c-menu-style .et_pb_menu__menu ul.et-menu.nav>li.in-viewport>a{
    color: var(--gcid-hlqfco0ntk)!important;
}
.footer-links a:before {
    height: 1px;
}
@media (max-width: 980px) {
	.et_pb_column:has(.et_pb_menu.c-menu-style), .et_pb_menu.c-menu-style, .et_pb_menu.c-menu-style .et_pb_menu_inner_container {
		position: static;
	}
}


.subhead-text .et_pb_text_inner p,
.subhead-text .et_pb_text_inner div,
.subhead-text .et_pb_text_inner{
    display: inline;
}

.subhead-text .et_pb_text_inner{
    padding-left: 5px;
}

.live-pulse-dot{
    width: 8px;
    height: 8px;
    border-radius: 50%;
    display: inline-block;
    margin-right: 12px;
    margin-bottom: 3px;
    vertical-align: middle;
    position: relative;
}

@media (max-width: 767px) {
	div#header-button-wrap {
		visibility: hidden;
		z-index: -111;
		position: absolute !important;
	}
	li.menu-item.mobile-contact-button {
		padding-left: 5%;
		padding-top: 15px;
	}
}
.mobile_nav div#header-button-wrap {
    visibility: visible;
    z-index: 999;
	position: relative !important;
}
li.menu-item.mobile-contact-button div#header-button-wrap {
    display: flex;
    flex-direction: row-reverse;
}
li.menu-item.mobile-contact-button div#header-button-wrap .et_pb_button_module_wrapper:first-child {
    margin-right: auto;
}

.icon-animation .et_pb_main_blurb_image {
    transition: all .3s ease-in-out;
}
.et_pb_column:hover .icon-animation .et_pb_main_blurb_image {
    animation: IconRotate 1.5s linear .3s infinite;
    transform: scale(1.2) translateY(-5px);
}

@keyframes IconRotate {
	0% {
		transform: scale(1.2) translateY(-5px) rotateY(0deg);
	}
	50% {
		transform: scale(1.2) translateY(-5px) rotateY(360deg);
	}
	100% {
		transform: scale(1.2) translateY(-5px) rotateY(360deg);
	}
}


.et_pb_column:hover .l-img-hover img {
    transform: scale(1.06);
}
.l-img-hover span.et_pb_image_wrap {
    overflow: hidden;
}
.l-img-hover img {
    transition: all .5s ease-in-out;
}


.timeline-num-icon .et_pb_blurb_container {
    position: absolute !important;
    aspect-ratio: 1/1;
    right: 0;
    top: 0;
    width: 33px;
    background: var(--gcid-hlqfco0ntk);
    display: flex;
    align-items: center;
    border-radius: 100%;
    transform: translate(50%, -50%);
    justify-content: center;
}




/* =========================================
   Custom Timeline
========================================= */

.c-timeline-row {
    position: relative;
}
.c-timeline-row .c-timeline-item {
    position: relative;
    z-index: 2;
}
.c-timeline-track {
    position: absolute;
    z-index: 1;
    pointer-events: none;
}
.c-timeline-line {
    position: absolute;
    background: #d9d9d9;
}
.c-timeline-progress {
    position: absolute;
    background: var(--gcid-primary-color);
    width: 0;
    height: 0;
    transition:
        width 0.25s ease,
        height 0.25s ease;
}
@media (min-width: 981px) {
    .c-timeline-track {
        height: 4px;
    }
    .c-timeline-line,
    .c-timeline-progress {
        top: 0;
        left: 0;
        height: 4px;
    }
    .c-timeline-line {
        width: 100%;
    }
}
@media (max-width: 980px) {
    .c-timeline-track {
        width: 4px;
    }
    .c-timeline-line,
    .c-timeline-progress {
        top: 0;
        left: 0;
        width: 4px;
    }
    .c-timeline-line {
        height: 100%;
    }
}
.active .timeline-num-icon .et_pb_blurb_container .et_pb_blurb_description {
    color: #ffffff !important;
}


.et_pb_module.faq-tabs {
    display: flex;
    gap: 32px;
}
.et_pb_module.faq-tabs ul.et_pb_tabs_controls {
    width: 31.25%;
    background: transparent;
    display: flex;
    flex-direction: column;
	padding-left: 3px !important;
	position: relative;
}
.et_pb_module.faq-tabs .et_pb_all_tabs {
    width: calc(68.75% - 32px);
}
.faq-tabs a.et_pb_tab_nav_item_link {
    padding: 17px 20px !important;
}
.et_pb_module.faq-tabs li.et_pb_tab_nav_item {
    border: unset !important;
}
.et_pb_module.faq-tabs ul.et_pb_tabs_controls:after {
    width: 3px;
    height: 100%;
    top: 0;
	left: 0;
    border: 0;
    background: #E2E8F1;
    position: absolute;
}
.faq-tabs li.et_pb_tab_nav_item:before,
.faq-tabs li.et_pb_tab_nav_item:after {
    content: "";
    position: absolute;
    left: -3px;
    top: 0;
    background: transparent;
    width: 3px;
    height: 100%;
    transition: all .3s ease-in-out;
}
.faq-tabs li.et_pb_tab_nav_item.et_pb_tab_active:after {
    background: var(--gcid-primary-color);
}
.faq-tabs li.et_pb_tab_nav_item:before {
    left: auto;
	right: 0;
}
.faq-tabs .et_pb_all_tabs {
    border: 1px solid #E2E8F1;
}
@media (max-width: 767px) {
	.et_pb_module.faq-tabs {
		display: flex;
		flex-direction: column;
	}
	.et_pb_module.faq-tabs ul.et_pb_tabs_controls {
		width: 100%;
		flex-wrap: wrap;
        flex-direction: row;
	}
	.et_pb_module.faq-tabs .et_pb_all_tabs {
		width: 100%;
	}
	.et_pb_module.faq-tabs li.et_pb_tab_nav_item {
		width: 50%;
	}
	.faq-tabs li.et_pb_tab_nav_item:before,
	.faq-tabs li.et_pb_tab_nav_item:after {
		background: #E2E8F1;
	}
}
@media (max-width: 450px) {
	.et_pb_module.faq-tabs li.et_pb_tab_nav_item {
		width: 100%;
	}
}

.small-texarea textarea {
    min-height: unset !important;
    height: 100px;
}
.extra-small.small-texarea textarea {
    height: 70px;
} 
.et_contact_bottom_container {
    margin-left: 0 !important;
    display: flex;
    flex-wrap: wrap;
}
.et_pb_contact_form .et_pb_button_wrapper {
    width: 100%;
    margin-top: 25px;
}
.et_pb_contact_form .et_pb_button_wrapper button.et_pb_button {
    margin: unset;
}

.et_clickable.contact-items .et_pb_icon span.et-pb-icon,
.et_clickable.contact-items .et_pb_icon {
	transition: all .3s ease-in-out !important;
}
.et_clickable.contact-items:hover .et_pb_icon span.et-pb-icon {
    color: #fff;
}
.et_clickable.contact-items:hover .et_pb_icon {
    background-color: var(--gcid-secondary-color);
	border-color: var(--gcid-secondary-color) !important;
}
