.service-card {
    width: 100% !important;
    max-width: 404px !important;
    height: 604.5px !important;
    position: relative !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    padding-bottom: 10px !important;
    cursor: pointer;
    margin: 0 auto; 
}


.service-card .content-group {
    position: relative !important;
    z-index: 20 !important;
    transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    transform: translateY(0) !important;
    margin-bottom: 0 !important;
}

.service-card:hover .content-group {
    transform: translateY(-55px) !important;
}

.service-card .card-divider {
    opacity: 1 !important;
    max-height: 20px !important;
    margin: 10px 0 !important;
    transition: all 0.3s ease !important;
}

.service-card:hover .card-divider {
    opacity: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.service-card .card-button {
    position: absolute !important;
    bottom: 40px !important;
    left: 48px !important;
    opacity: 0 !important;
    transform: translateY(20px) !important;
    transition: all 0.4s ease 0.1s !important;
    z-index: 30 !important;
}

.service-card:hover .card-button {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

.service-card img {
    transition: none !important;
    transform: none !important;
}

.service-card .card-button a,
.service-card .card-button .elementor-button {
    opacity: 1 !important;
    transition: background-color 0.3s ease, color 0.3s ease !important;
}

.service-card .card-button a:hover,
.service-card .card-button .elementor-button:hover,
.service-card .card-button:hover {
    opacity: 1 !important;
}

@media (max-width: 1440px) { 
    .service-card {
        width: 100% !important; 
        max-width: 364px !important; 
        height: 400px !important;
        min-height: 400px !important;
    }

    .service-card:hover .content-group {
        transform: translateY(-45px) !important; 
    }
    
    .service-card .card-button {
        bottom: 35px !important; 
    }
}

@media (max-width: 1024px) {
    .service-card {
        height: 500px !important;
        padding-bottom: 20px !important;
    }

    .service-card .content-group {
        transform: translateY(-50px) !important;
    }

    .service-card .card-divider {
        opacity: 0 !important;
        max-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .service-card .card-button {
        opacity: 1 !important;
        transform: translateY(0) !important;
        pointer-events: auto !important;
        bottom: 30px !important;
    }
}