.elementor-273 .elementor-element.elementor-element-ef34e44{--display:flex;--overlay-opacity:0.5;}.elementor-273 .elementor-element.elementor-element-ef34e44::before, .elementor-273 .elementor-element.elementor-element-ef34e44 > .elementor-background-video-container::before, .elementor-273 .elementor-element.elementor-element-ef34e44 > .e-con-inner > .elementor-background-video-container::before, .elementor-273 .elementor-element.elementor-element-ef34e44 > .elementor-background-slideshow::before, .elementor-273 .elementor-element.elementor-element-ef34e44 > .e-con-inner > .elementor-background-slideshow::before, .elementor-273 .elementor-element.elementor-element-ef34e44 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://ascentnewhaven.org/wp-content/uploads/2025/08/Noisy-Texture-200x200-5.png");--background-overlay:'';}.elementor-273 .elementor-element.elementor-element-cf63fbe{--display:flex;}.elementor-273 .elementor-element.elementor-element-ad61bb3{--spacer-size:50px;}.elementor-273 .elementor-element.elementor-element-2a624d9{--spacer-size:50px;}.elementor-273 .elementor-element.elementor-element-37f7ee3{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-273 .elementor-element.elementor-element-13506ce{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Inter Tight", Sans-serif;font-size:18px;font-weight:300;line-height:1.5em;}.elementor-273 .elementor-element.elementor-element-642e450{--display:flex;}.elementor-273 .elementor-element.elementor-element-2348ede{font-family:"Inter Tight", Sans-serif;font-size:18px;font-weight:300;line-height:1.5em;}.elementor-273 .elementor-element.elementor-element-4d60483{--display:flex;}.elementor-273 .elementor-element.elementor-element-50866cb{margin:20px 20px calc(var(--kit-widget-spacing, 0px) + 20px) 20px;font-family:"Inter Tight", Sans-serif;font-size:18px;font-weight:300;line-height:1.5em;}.elementor-273 .elementor-element.elementor-element-bcdfcc3{--display:flex;}.elementor-273 .elementor-element.elementor-element-57b0ff7{--display:flex;}.elementor-273 .elementor-element.elementor-element-4dafc48{--display:flex;}.elementor-273 .elementor-element.elementor-element-2cf9806{--display:flex;}.elementor-273 .elementor-element.elementor-element-04b2e02{--display:flex;}.elementor-273 .elementor-element.elementor-element-d645678{--n-accordion-title-font-size:26px;border-style:none;--n-accordion-item-title-space-between:13px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-border-radius:0px 0px 0px 0px;--n-accordion-title-normal-color:#FFFAF6;--n-accordion-title-hover-color:#FFFAF6;--n-accordion-title-active-color:#4D4B4B;--n-accordion-icon-size:17px;--n-accordion-icon-gap:21px;}.elementor-273 .elementor-element.elementor-element-d645678 > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title:hover{background-color:#FFA27D;}:where( .elementor-273 .elementor-element.elementor-element-d645678 > .e-n-accordion > .e-n-accordion-item ) > .e-con{background-color:#FDF4F2;border-style:none;--padding-top:40px;--padding-right:40px;--padding-bottom:20px;--padding-left:40px;}.elementor-273 .elementor-element.elementor-element-d645678 > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title{border-style:none;}.elementor-273 .elementor-element.elementor-element-d645678 {--n-accordion-padding:40px 40px 40px 40px;}:where( .elementor-273 .elementor-element.elementor-element-d645678 > .e-n-accordion > .e-n-accordion-item > .e-n-accordion-item-title > .e-n-accordion-item-title-header ) > .e-n-accordion-item-title-text{font-family:"Inter Tight", Sans-serif;}.elementor-273 .elementor-element.elementor-element-5f4bf4e{--spacer-size:50px;}@media(max-width:1024px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}body.elementor-page-273{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}}@media(max-width:767px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-273 .elementor-element.elementor-element-4d60483{--content-width:500px;}.elementor-273 .elementor-element.elementor-element-50866cb{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}/* Start custom CSS for nested-accordion, class: .elementor-element-d645678 *//* Base accordion container */
.accordion,
.elementor-accordion,
.wp-block-details {
    position: relative;
    isolation: isolate;
}

/* Accordion item base styles - DARKER */
.accordion-item,
.elementor-accordion-item,
.accordion .card,
details {
    position: relative;
    margin-bottom: 16px;
    border-radius: 16px;
    overflow: hidden;
    backdrop-filter: blur(20px) brightness(0.7);
    -webkit-backdrop-filter: blur(20px) brightness(0.7);
    background: rgba(0,0,0,0.1); /* Much darker background */
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 20px rgba(0,0,0,0.4); /* Darker shadow */
}

/* Hover effects for liquid glass - DARKER */
.accordion-item:hover,
.elementor-accordion-item:hover,
.accordion .card:hover,
details:hover {
    background: rgba(0,0,0,0.5);
    backdrop-filter: blur(25px) saturate(150%) brightness(0.8);
    -webkit-backdrop-filter: blur(25px) saturate(150%) brightness(0.8);
    border-color: rgba(255,255,255,0.12);
    transform: translateY(-2px);
    box-shadow: 
        0 8px 32px rgba(0,0,0,0.4),
        0 2px 8px rgba(255,255,255,0.05) inset;
}

/* Accordion headers/titles - DARKER */
.accordion-header,
.elementor-accordion-title,
.accordion .card-header,
.accordion-button,
summary {
    position: relative;
    padding: 20px 24px;
    background: transparent;
    border: none; /* Remove any conflicting borders */
    border-radius: 16px 16px 0 0;
    cursor: pointer;
    transition: all 0.3s ease;
    backdrop-filter: blur(15px) brightness(0.8);
    -webkit-backdrop-filter: blur(15px) brightness(0.8);
}

/* Header hover effects - DARKER */
.accordion-header:hover,
.elementor-accordion-title:hover,
.accordion .card-header:hover,
.accordion-button:hover,
summary:hover {
    background: rgba(0,0,0,0.2);
    backdrop-filter: blur(20px) brightness(0.9);
    -webkit-backdrop-filter: blur(20px) brightness(0.9);
}

/* Active/open state - DARKER */
.accordion-item.active,
.elementor-accordion-item.elementor-active,
.accordion .card.show,
details[open] {
    background: rgb(255,255,255);
    backdrop-filter: blur(30px) saturate(180%) brightness(0.6);
    -webkit-backdrop-filter: blur(30px) saturate(180%) brightness(0.6);
    box-shadow: 
        0 12px 40px rgba(0,0,0,0.5),
        0 2px 8px rgba(255,255,255,0.03) inset;
}

/* Accordion content/body - DARKER */
.accordion-content,
.elementor-accordion-content,
.accordion .card-body,
.accordion-collapse,
details > div:not(summary) {
    position: relative;
    padding: 0 24px 24px 24px;
    background: rgba(0,0,0,0.1);
    backdrop-filter: blur(10px) brightness(0.9);
    -webkit-backdrop-filter: blur(10px) brightness(0.9);
    border-top: 1px solid rgba(255,255,255,0.05);
    border-left: none; /* Remove side borders */
    border-right: none;
    border-bottom: none;
}

/* Liquid ripple effect on click - DARKER */
.accordion-item::before,
.elementor-accordion-item::before,
.accordion .card::before,
details::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(circle at var(--x, 50%) var(--y, 50%), 
                rgba(255,255,255,0.1) 0%, 
                transparent 60%);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.6s ease;
    border-radius: inherit;
}

/* Ripple animation trigger */
.accordion-item:active::before,
.elementor-accordion-item:active::before,
.accordion .card:active::before,
details:active::before {
    opacity: 1;
    animation: liquidRipple 0.8s ease-out;
}

/* Liquid ripple keyframes */
@keyframes liquidRipple {
    0% {
        transform: scale(0);
        opacity: 1;
    }
    100% {
        transform: scale(2);
        opacity: 0;
    }
}

/* Smooth animations for content reveal */
.accordion-content,
.elementor-accordion-content,
.accordion-collapse {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* REMOVED: Conflicting border animation to fix double border issue */
/* The ::after pseudo-element that was creating the second border has been removed */

/* Optional: Enhanced dark glass effect */
.accordion-item,
.elementor-accordion-item,
.accordion .card,
details {
    /* Single shadow instead of multiple conflicting ones */
    box-shadow: 
        0 4px 20px rgba(0,0,0,0.4),
        inset 0 1px 0 rgba(255,255,255,0.03);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ef34e44 */.background-mesh {
    background-color: #5DADEC;
    background-image:
        radial-gradient(at 62% 22%, #5DADEC 0px, transparent 50%),
        radial-gradient(at 64% 5%, #96473B 0px, transparent 50%),
        radial-gradient(at 45% 70%, #FFA27D 0px, transparent 50%),
        radial-gradient(at 25% 35%, #F2D8CB 0px, transparent 50%);
    
    animation: dynamicGradient 18s ease-in-out infinite;
    background-size: 300% 300%;
}

@keyframes dynamicGradient {
    0% {
        background-position: 0% 20%, 100% 0%, 80% 100%, 60% 40%, 20% 80%;
    }
    12% {
        background-position: 30% 40%, 70% 20%, 90% 80%, 40% 60%, 50% 10%;
    }
    25% {
        background-position: 80% 60%, 20% 50%, 60% 40%, 90% 20%, 10% 70%;
    }
    37% {
        background-position: 100% 80%, 0% 70%, 40% 20%, 70% 90%, 30% 50%;
    }
    50% {
        background-position: 70% 100%, 40% 90%, 20% 0%, 50% 70%, 80% 30%;
    }
    62% {
        background-position: 20% 80%, 90% 60%, 50% 30%, 10% 40%, 70% 90%;
    }
    75% {
        background-position: 0% 40%, 60% 20%, 100% 70%, 80% 10%, 40% 60%;
    }
    87% {
        background-position: 40% 0%, 80% 40%, 70% 90%, 20% 30%, 60% 80%;
    }
    100% {
        background-position: 0% 20%, 100% 0%, 80% 100%, 60% 40%, 20% 80%;
    }
}/* End custom CSS */