/* CSS Variables for Customization */
.luxury_experiences_5d858a48 {
    --le-transition-speed: 0.8s;
    --le-transition: var(--le-transition-speed) cubic-bezier(0.25, 0.8, 0.25, 1);
}

.le-container-5d858a48 {
    display: flex;
    width: 100%;
    overflow: hidden;
}

.le-card-5d858a48 {
    position: relative;
    flex: 1; /* All start equal */
    overflow: hidden;
    cursor: pointer;
    transition: flex var(--le-transition);
    display: flex;
    align-items: center; /* Center content vertically by default */
    justify-content: center; /* Center content horizontally by default */
}

.le-interaction-hover .le-card-5d858a48:hover,
.le-card-5d858a48.is-active {
    flex: 2.5; /* Expand on hover */
    align-items: center; 
}

.le-card-bg-5d858a48 {
    position: absolute;
    top: -5%; left: -5%; width: 110%; height: 110%; /* Slightly larger to allow scale/blur without edge issues */
    background-size: cover;
    background-position: center;
    transition: transform var(--le-transition), filter var(--le-transition);
    transform: scale(1);
    filter: blur(0px);
    z-index: 1;
}

.le-interaction-hover .le-card-5d858a48:hover .le-card-bg-5d858a48,
.le-card-5d858a48.is-active .le-card-bg-5d858a48 {
    transform: scale(1.05);
    /* Filter blur applied via Elementor control settings */
}

.le-card-overlay-5d858a48 {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    /* Default color applied via Elementor control settings */
    transition: background-color var(--le-transition);
    z-index: 2;
}

.le-card-content-5d858a48 {
    position: relative;
    z-index: 3;
    padding: 40px;
    color: #fff;
    width: 100%;
    text-align: center; /* Center text to match reference */
    display: flex;
    flex-direction: column;
    align-items: center;
}

.le-card-category-5d858a48 {
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 12px;
    margin-bottom: auto; /* Push to top or above title */
    opacity: 0;
    transition: opacity var(--le-transition);
    position: absolute;
    bottom: 40px;
    width: 100%;
    text-align: center;
    left: 0;
}

/* Show category on bottom when NOT hovered */
.le-card-5d858a48:not(:hover):not(.is-active) .le-card-category-5d858a48 {
     opacity: 1;
}

/* Hide category text when hovered to match reference (or move it) */
.le-interaction-hover .le-card-5d858a48:hover .le-card-category-5d858a48,
.le-card-5d858a48.is-active .le-card-category-5d858a48 {
    opacity: 0;
}

.le-card-title-5d858a48 {
    font-size: 32px;
    margin: 0;
    transition: transform var(--le-transition), opacity var(--le-transition);
    white-space: normal;
    text-align: center;
}

/* Hide title when not hovered to match reference style if needed, or keep it.
   Reference image shows "WELLBEING" (category) when small, and Title + Desc when large. */
.le-card-5d858a48:not(:hover):not(.is-active) .le-card-title-5d858a48 {
    opacity: 0;
    transform: translateY(20px);
}

.le-interaction-hover .le-card-5d858a48:hover .le-card-title-5d858a48,
.le-card-5d858a48.is-active .le-card-title-5d858a48 {
    opacity: 1;
    transform: translateY(0);
}


.le-card-desc-wrapper-5d858a48 {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height var(--le-transition), opacity var(--le-transition), margin-top var(--le-transition);
    max-width: 600px; /* Constrain width of description */
}

.le-interaction-hover .le-card-5d858a48:hover .le-card-desc-wrapper-5d858a48,
.le-card-5d858a48.is-active .le-card-desc-wrapper-5d858a48 {
    max-height: 300px;
    opacity: 1;
    margin-top: 15px;
}

.le-card-desc-5d858a48 {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 20px;
}

.le-card-btn-5d858a48 {
    display: inline-block;
    padding: 10px 25px;
    border: 1px solid #fff;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    text-transform: uppercase;
    transition: all 0.3s ease;
}

.le-card-btn-5d858a48:hover {
    background: #fff;
    color: #000;
}

/* Mobile adjustments */
@media (max-width: 767px) {
    .le-container-5d858a48 {
        flex-direction: column;
        height: auto !important;
    }
    
    .le-card-5d858a48 {
        height: 120px;
        transition: height var(--le-transition);
        flex: none;
    }
    
    .le-card-5d858a48.is-active,
    .le-interaction-hover .le-card-5d858a48:hover {
        height: 400px;
        flex: none;
    }
    
    .le-card-5d858a48:not(:hover):not(.is-active) .le-card-category-5d858a48 {
         bottom: 50%;
         transform: translateY(50%);
    }
}