/*
 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-------------------*/

.et-l.et-l--header {
    position: absolute !important;
    width: 100% !important;
}
.theme-builder-area-content--post_content .et_pb_section:first-child>.et-fb-mousetrap .et-fb-component-settings {
    top: 150px !important;
}

@media (min-width: 981px) {
	.dynamic-font-size h1 {
		font-size: clamp(2.2rem, 5.4vw, 4.8rem);
	}
	.dynamic-font-size h2 {
		font-size: clamp(2.2rem, 5vw, 4.2rem);
	}
	.dynamic-font-size h3 {
		font-size: clamp(1.8rem, 4vw, 3rem);
	}
}


@media (max-width: 980px) {
	.et_pb_module.et_pb_menu .et_pb_menu__wrap {
		display: flex;
		justify-content: flex-end;
	}
}

.et_mobile_menu .et_pb_button_module_wrapper {
    position: relative !important;
    left: 0;
    top: 0 !important;
    padding-left: 5%;
    width: 100%;
    margin-top: 15px;
}
.et_mobile_menu .et_pb_button_module_wrapper .et_pb_button {
    transform: unset !important;
}
.hero-s-form .et_contact_bottom_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    width: 100%;
    padding-left: 3%;
}
.hero-s-form .et_contact_bottom_container button.et_pb_contact_submit {
    width: 100%;
    margin-top: 20px;
    margin-left: 0 !important;
}
.subhead-text .et_pb_text_inner:after {
    content: "————————";
    letter-spacing: -2px;
    position: absolute;
    left: 0;
    bottom: -11px;
}
.subhead-text .et_pb_text_inner:before {
    content: "—————";
    letter-spacing: -2px;
    position: absolute;
    left: 0;
    bottom: -17px;
}
.subhead-text.et_pb_text_align_center .et_pb_text_inner:after,
.subhead-text.et_pb_text_align_center .et_pb_text_inner:before {
    left: 50%;
	transform: translatex(-50%);
}
.subhead-text.et_pb_text_align_right .et_pb_text_inner:after,
.subhead-text.et_pb_text_align_right .et_pb_text_inner:before {
    right: 0;
	left: auto;
}


body #page-container .et_pb_section a.et_pb_button.transparent-button {
    border-bottom: 1px solid !important;
}


.card-col-row .et_pb_blurb_content, .card-col-row .et_pb_blurb, .card-col-row .et_pb_main_blurb_image, .card-col-row .et_pb_main_blurb_image span.et_pb_image_wrap {
    position: static !important;
}
.card-col-row .et_pb_blurb .et-fb-component-settings {
    top: 45% !important;
}
.card-col-row .et_pb_main_blurb_image {
    margin-bottom: 0;
}
.card-col-row .et_pb_main_blurb_image img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    height: 100%;
    width: 100%;
    object-fit: cover;
    animation: none !important;
    z-index: -2;
	transition: transform 900ms cubic-bezier(.2,.7,.2,1), filter 600ms ease;
}
.card-col-row .et_pb_column:hover .et_pb_main_blurb_image img {
    transform: translate(-50%, -50%) scale(1.05);
}
body:not(.et-fb) .card-col-row .et_pb_blurb_container {
    transition: all 900ms cubic-bezier(.2,.7,.2,1), filter 600ms ease;
    transform: translateY(10px);
}
body:not(.et-fb) .card-col-row .et_pb_column:hover .et_pb_blurb_container {
    transform: translateY(0);
}
body:not(.et-fb) .card-col-row .et_pb_column .et_pb_blurb_description {
	transition: all 500ms ease 80ms, transform 520ms cubic-bezier(.2,.7,.2,1) 80ms;
	transform: translateY(10px);
	opacity: 0;
}
body:not(.et-fb) .card-col-row .et_pb_column:hover .et_pb_blurb_description {
	transform: translateY(0);
	opacity: 1;
}
.card-col-row .et_pb_column span.et_pb_icon_wrap {
	transition: all 500ms ease 80ms, transform 520ms cubic-bezier(.2,.7,.2,1) 80ms;
}
.card-col-row .et_pb_column:hover span.et_pb_icon_wrap {
    border-color: rgba(246,242,236,1) !important;
}
.card-col-row .et_pb_column:hover .et_pb_module {
	opacity: 1 !important;
}
.card-col-row .et_pb_column {
	overflow: hidden !important;
}
.card-col-row .et_pb_column:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
	background-image: linear-gradient(180deg,rgba(31,29,26,0.32) 0%,rgba(31,29,26,0.6) 70%,rgba(31,29,26,0.85) 100%);
    background-color: inherit;
    z-index: -1;
}


@media (min-width: 981px) {
	.et_pb_row.card-col-row .et_pb_column {
		margin-right: 24px;
	}
	.et_pb_row.card-col-row .et_pb_column.et-last-child {
		margin-right: 0;
	}
}
body #page-container .et_pb_section .et_pb_row.card-col-row .et_pb_column {
    margin-bottom: 24px !important;
}


.c-timeline-wrap:after {
    content: "";
    position: absolute;
    width: 100%;
    background: #6b6453;
    height: 1px;
}

.custom-timeline .c-timeline-dot{
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translate(-50%, -50%);
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #6b6453;
    transition: left 0.08s linear, top 0.08s linear;
    z-index: 2;
}

/* Pulse ring */
.custom-timeline .c-timeline-dot:before{
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: rgba(107, 100, 83, 0.45);
    animation: timelinePulse 2s ease-out infinite;
    z-index: -1;
}
.custom-timeline .col-have-timeline .et-fb-mousetrap.et-fb-mousetrap--column {
	width: 0;
}
@keyframes timelinePulse{

    0%{
        transform: scale(1);
        opacity: 0.8;
    }

    70%{
        transform: scale(3.2);
        opacity: 0;
    }

    100%{
        transform: scale(3.2);
        opacity: 0;
    }

}
@media (max-width: 980px) {
	.et_pb_row.custom-timeline .et_pb_column {
		width: 100% !important;
		margin-right: 0 !important;
		margin-bottom: 30px !important;
	}
	.et_pb_row.custom-timeline .et_pb_column.et-last-child {
		margin-bottom: 0 !important;
	}
	.c-timeline-wrap:after {
		height: 100%;
		width: 1px;
		left: 1px;
	}
}


.et_pb_module.c-num-count .percent {
    height: auto;
    margin-bottom: 10px;
}
.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%;
    width: 100%;
    object-fit: cover;
}


.slider-styles .dipi-carousel-item-content {
    padding: 20px 0 0;
}
.et_pb_module.slider-styles .et_pb_module_inner .swiper-arrow-button {
    top: -60px;
    left: auto !important;
}
.slider-styles .swiper-button-prev.swiper-arrow-button {
    right: 60px !important;
}
.slider-styles .swiper-button-next.swiper-arrow-button {
    right: 0 !important;
}
@media (max-width: 767px) {
	.et_pb_module.slider-styles .et_pb_module_inner .swiper-arrow-button {
		top: -10px;
	}
}

.c-toggle-style .et_pb_toggle_content {
    padding: 10px 32px 28px 0;
}
.c-toggle-style .et_pb_toggle_title {
    padding: 20px 20px 20px 0 !important;
}
.c-toggle-style .et_pb_toggle_title::before {
    border: 1px solid;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-right: 2px;
    padding-bottom: 1px;
	transition: all .3s ease-in-out;
}
.c-toggle-style .et_pb_toggle_title:hover::before {
    transform: scale(1.15);
}


a.et_pb_button.fullwidth-button {
    width: 100%;
    text-align: center;
}
.remove-image  .et_pb_team_member_image {
    display: none;
}
.et_pb_module.person-custom-style {
    display: flex;
    align-items: center;
}
.person-custom-style .et_pb_team_member_description {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: center;
}
.person-custom-style .et_pb_member_position {
    margin-right: 0;
}
.person-custom-style.remove-image .et_pb_member_position {
    margin-right: 18px;
}
.person-custom-style .et_pb_team_member_description strong {
    font-weight: 500 !important;
}


.policy-text .et_pb_text_inner br {
    display: none;
}
.policy-text .et_pb_text_inner p:has(a),
.policy-text .et_pb_text_inner:not(:has(p)) {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    column-gap: 18px;
}



.footer-links a,
.c-menu-style .et_pb_menu__menu>nav>ul>li>a {
    position: relative;
}
.footer-links .et_pb_text a:before,
.c-menu-style .et_pb_menu__menu>nav>ul>li>a:before {
	content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: calc(50% + 10px);
    height: 1px;
    background: #1f1d1a;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 320ms ease;
}
.footer-links .et_pb_text a:hover:before, .c-menu-style .et_pb_menu__menu>nav>ul>li>a:hover:before, .c-menu-style .et_pb_menu__menu>nav>ul>li.current-menu-item:first-child>a:before, .c-menu-style .et_pb_menu__menu>nav>ul>li.in-viewport>a:before {
    transform: scaleX(1);
}