/*
 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-------------------*/
.c-number-counter .percent {
    height: fit-content;
}

header.et-l.et-l--header {
    position: absolute;
    width: 100%;
}

.et-fb .menu-section {
	margin-top: 0 !important;
}

.add-tick ul {
    list-style-type: none;
	padding-left: 0;
}
.add-tick ul li {
    position: relative;
}

.add-tick ul li:before {
    content: "-";
    color: transparent;
    background: url('/wp-content/uploads/2026/05/tick.png') no-repeat center / 100%;
    width: 14px;
    aspect-ratio: 1/1;
    display: inline-block;
    margin-right: 14px;
}


.headshot-blurb .et_pb_blurb_content.et_flex_module {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 0;
}
.headshot-blurb .et_pb_blurb_content.et_flex_module .et_pb_main_blurb_image {
    width: fit-content;
}



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

.custom-timeline .c-timeline-dot:before{
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: rgba(35,6,218,.6);
    animation: timelinePulse 2s ease-out infinite;
    z-index: -1;
}
.custom-timeline .et_pb_column {
	transition: all .3s ease-in-out;
}
.custom-timeline .et_pb_column.is-active {
    box-shadow: 0px 26px 50px -28px rgba(20,22,58,30);
	background: #fff;
}
@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) {
	.c-timeline-wrap {
		width: fit-content !important;
		left: 1px;
	}
}


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

.steps-row .et_pb_column {
    transition: all .2s ease-in-out !important;
}
.steps-row .et_pb_column.active {
    background-color: var(--gcid-primary-color)!important;
}
body #page-container .et_pb_section .et_pb_row.steps-row .et_pb_column.active .et_pb_module, body #page-container .et_pb_section .et_pb_row.steps-row .et_pb_column.active .et_pb_module div,  body #page-container .et_pb_section .et_pb_row.steps-row .et_pb_column.active .et_pb_module .et_pb_module_header {
    color: #fff !important;
}

.et_pb_button {
    position: relative;
}
.button-child {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    overflow: hidden;
    border-radius: inherit;
}
.border-animation {
    position: absolute;
}
.button-child-inner{
    position: absolute;
    top: 0;
    left: -105%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255,255,255,0.30) 50%,
    transparent 100%
  );
    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;
}


.custom-accordion .et_pb_toggle_title {
    padding: 26px 40px 26px 0 !important;
}
.custom-accordion .et_pb_toggle_content {
    padding: 10px 40px 26px 0;
    padding-right: 40px !important;
}
.custom-accordion .et_pb_accordion_item {
    padding: 0;
}
.custom-accordion .et_pb_accordion_item:not(:last-child) {
    border-bottom: 0 !important;
}
.custom-accordion .et_pb_accordion_item .et_pb_toggle_title::before {
    content: '\4c'!important;
    border: 1px solid var(--gcid-primary-color);
    border-radius: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    aspect-ratio: 1/1;
    color: var(--gcid-primary-color)!important;
    font-size: 20px !important;
    right: 2px !important;
    top: 50%;
    margin: 0;
    transform: translateY(-50%);
	transition: all .2s ease-in-out !important;
}
.custom-accordion .et_pb_accordion_item.et_pb_toggle_open .et_pb_toggle_title::before {
    transform: translateY(-50%) rotate(45deg);
	color: #fff !important;
	background-color:  var(--gcid-primary-color)!important;
}
.contact-blurb .et_pb_blurb_container {
    padding-left: 0;
}


.et_pb_contact_field input:focus, .et_pb_contact_field textarea:focus, .et_pb_contact_field select:focus {
    outline: none;
    border-color: var(--gcid-secondary-color) !important;
    box-shadow: 0 0 0 3px rgba(35,6,218,.12);
}

.Subhead-text .et_pb_text_inner:before {
    content: "—————";
    letter-spacing: -2px;
    position: relative;
    left: 0;
    bottom: -43px;
}
.Subhead-text .et_pb_text_inner:after {
    content: "————————";
    letter-spacing: -2px;
    position: relative;
    left: 0;
   bottom: 2px;
}
.contact-blurb a,
.footer-links a,
.et_pb_menu.c-menu-style .et_pb_menu__menu>nav>ul>li>a{
	position: relative;
	opacity: 1;
}

.contact-blurb a:before,
.footer-links a:before,
.et_pb_menu.c-menu-style .et_pb_menu__menu>nav>ul>li>a:before {
    content: "";
    position: absolute;
    top: calc(50% + 10px);
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 2px;
    background: #fff;
    transition: all .2s ease-in-out;
}
.contact-blurb a:hover:before,
.footer-links a:hover:before,
.et_pb_menu.c-menu-style .et_pb_menu__menu>nav>ul>li.in-viewport>a:before,
.et_pb_menu.c-menu-style .et_pb_menu__menu>nav>ul>li>a:hover:before {
    width: 100%;
}


.contact-blurb a:before,
.footer-links a:before{
	top: auto;
	bottom: -2px;
}
.footer-links .et_pb_image a:before {
	display: none;
}

.et_pb_group.inline-text-grid .et_pb_text {
    padding: 0 !important;
}
.et_pb_group.inline-text-grid .et_pb_text .et_pb_text_inner {
    padding: 7px 16px;
}