.elementor-10791 .elementor-element.elementor-element-ddb8310{--display:flex;--min-height:67px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-10791 .elementor-element.elementor-element-ddb8310:not(.elementor-motion-effects-element-type-background), .elementor-10791 .elementor-element.elementor-element-ddb8310 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-10791 .elementor-element.elementor-element-ff47986{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:8%;--margin-bottom:1%;--margin-left:0%;--margin-right:0%;}.elementor-10791 .elementor-element.elementor-element-ff47986.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-10791 .elementor-element.elementor-element-cc20cb0 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:52px;font-weight:400;text-transform:capitalize;line-height:48px;letter-spacing:0px;}.elementor-10791 .elementor-element.elementor-element-da32dbd{--display:flex;--min-height:1133px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}.elementor-10791 .elementor-element.elementor-element-da32dbd:not(.elementor-motion-effects-element-type-background), .elementor-10791 .elementor-element.elementor-element-da32dbd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-accent );}.elementor-10791 .elementor-element.elementor-element-890698f{--display:flex;--min-height:208px;--margin-top:2%;--margin-bottom:0%;--margin-left:3%;--margin-right:3%;}.elementor-10791 .elementor-element.elementor-element-c6d55f2 .e-gallery-item:hover .elementor-gallery-item__overlay, .elementor-10791 .elementor-element.elementor-element-c6d55f2 .e-gallery-item:focus .elementor-gallery-item__overlay{background-color:rgba(0,0,0,0.5);}.elementor-10791 .elementor-element.elementor-element-c6d55f2{--image-transition-duration:800ms;--overlay-transition-duration:800ms;--content-text-align:center;--content-padding:20px;--content-transition-duration:800ms;--content-transition-delay:800ms;}@media(min-width:768px){.elementor-10791 .elementor-element.elementor-element-ff47986{--width:100%;}}@media(max-width:1024px){.elementor-10791 .elementor-element.elementor-element-cc20cb0 .elementor-heading-title{font-size:46px;line-height:1em;}}@media(max-width:767px){.elementor-10791 .elementor-element.elementor-element-cc20cb0 .elementor-heading-title{font-size:38px;}}/* Start custom CSS for gallery, class: .elementor-element-c6d55f2 *//* Container Setup */
.elementor-10791 .elementor-element.elementor-element-c6d55f2 .elementor-gallery-item__overlay {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px;
    box-sizing: border-box;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.8) !important;
    transition: opacity 0.2s ease-in-out;
}

/* Base text setups */
.elementor-10791 .elementor-element.elementor-element-c6d55f2 .elementor-gallery-item__title,
.elementor-10791 .elementor-element.elementor-element-c6d55f2 .custom-gallery-caption,
.elementor-10791 .elementor-element.elementor-element-c6d55f2 .elementor-gallery-item__description {
    opacity: 0;
    text-align: center;
    width: 100%;
    display: block;
    transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.2s ease;
}

/* ==========================================
   LEVEL 1: TITLE (Unique per image)
   ========================================== */
.elementor-10791 .elementor-element.elementor-element-c6d55f2 .elementor-gallery-item__title {
    font-size: 26px;
    font-weight: 700;
    color: #ffffff !important;
    margin-bottom: 5px !important;
    transform: translateY(-20px); /* Slides down */
}

/* ==========================================
   LEVEL 2: CAPTION (Unique per image)
   ========================================== */
.elementor-10791 .elementor-element.elementor-element-c6d55f2 .custom-gallery-caption {
    font-size: 18px;
    font-weight: 600;
    text-transform: capitalize; /* Forces all letters to be lowercase */
    letter-spacing: 1px; /* Reduced slightly since lowercase text looks better with tighter spacing */
    color: #C03627 !important; /* Accent Color */
    margin-bottom: 65px !important;

}

/* ==========================================
   LEVEL 3: DESCRIPTION (Unique per image)
   ========================================== */
.elementor-10791 .elementor-element.elementor-element-c6d55f2 .elementor-gallery-item__description {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #dddddd !important;
    transform: translateY(20px); /* Slides up */
}

/* ==========================================
   HOVER ACTIONS: Staggered Animations
   ========================================== */
.elementor-10791 .elementor-element.elementor-element-c6d55f2 .elementor-gallery-item:hover .elementor-gallery-item__overlay {
    opacity: 1;
}

/* Level 1 Reveal */
.elementor-10791 .elementor-element.elementor-element-c6d55f2 .elementor-gallery-item:hover .elementor-gallery-item__title {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.1s;
}

/* Level 2 Reveal */
.elementor-10791 .elementor-element.elementor-element-c6d55f2 .elementor-gallery-item:hover .custom-gallery-caption {
    opacity: 1;
    transform: scale(1);
    transition-delay: 0.2s;
}

/* Level 3 Reveal */
.elementor-10791 .elementor-element.elementor-element-c6d55f2 .elementor-gallery-item:hover .elementor-gallery-item__description {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.3s;
}/* End custom CSS */