/* Custom styles for equal height service cards */
.service-slider-s2 {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    align-items: stretch; /* This ensures all items stretch to the same height */
}

.service-card-s2 {
    display: flex !important;
    flex-direction: column !important;
    flex: 1;
    min-height: 400px !important; /* Increased minimum height */
    max-width: calc(33.333% - 15px); /* 3 cards per row with gap */
    position: relative;
    box-sizing: border-box;
}

.service-card-s2 .content {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important; /* Allow content to grow and fill space */
    justify-content: space-between !important;
    height: 100%;
    padding: 20px;
}

.service-card-s2 .content h2 {
    margin-bottom: 15px;
    flex-shrink: 0; /* Don't shrink the title */
}

.service-card-s2 .content p {
    flex-grow: 1 !important; /* Allow paragraph to expand and take available space */
    margin-bottom: 20px;
    display: flex;
    align-items: flex-start;
}

.service-card-s2 .services-btn {
    margin-top: auto !important; /* Push button to bottom */
    flex-shrink: 0; /* Don't shrink the button area */
}

.service-card-s2 .icon {
    flex-shrink: 0; /* Don't shrink the icon */
    margin-bottom: 15px;
}

/* Force equal heights for carousel/slider items */
.service-slider-s2 .service-card-s2 {
    height: 400px !important;
}

/* Responsive adjustments */
@media (max-width: 992px) {
    .service-card-s2 {
        max-width: calc(50% - 10px); /* 2 cards per row on tablets */
        min-height: 350px !important;
        height: 350px !important;
    }
}

@media (max-width: 768px) {
    .service-card-s2 {
        max-width: 100%; /* 1 card per row on mobile */
        min-height: 320px !important;
        height: 320px !important;
    }
    
    .service-slider-s2 {
        flex-direction: column;
    }
}

/* Override any existing slider styles that might interfere */
.service-slider-s2 .slick-track,
.service-slider-s2 .owl-stage {
    display: flex !important;
    align-items: stretch !important;
}

.service-slider-s2 .slick-slide,
.service-slider-s2 .owl-item {
    height: auto !important;
    display: flex !important;
}

.service-slider-s2 .slick-slide .service-card-s2,
.service-slider-s2 .owl-item .service-card-s2 {
    height: 100% !important;
}

/* Remove any default separators or formatting elements */
.odometer.odometer-auto-theme .odometer-formatting-mark,
.odometer.odometer-theme-default .odometer-formatting-mark,
.odometer .odometer-separator {
    display: none !important;
}

/* Custom Banner Image Scaling - Fix 1680x834 to display as 1920x834 */
/*.hero-section .slider-item .bg-image {*/
/*    position: absolute !important;*/
/*    left: 0;*/
/*    top: 0;*/
/*    width: 100% !important;*/
/*    height: 100% !important;*/
/*    z-index: -11;*/
/*    overflow: hidden;*/
/*}*/

/*.hero-section .slider-item .bg-image img {*/
/*    width: 114.3% !important; !* Scale factor: 1920/1680 = 1.143 *!*/
/*    height: 100% !important;*/
/*    object-fit: cover !important;*/
/*    object-position: center center !important;*/
/*    transform: translateX(-7.15%) !important; !* Center the scaled image: (114.3-100)/2 = 7.15% *!*/
/*    transition: all 0.3s ease-in;*/
/*}*/

/*!* Ensure the hero section maintains proper aspect ratio *!*/
/*.hero-section {*/
/*    min-height: 834px;*/
/*}*/

/*.hero-section .slider-item {*/
/*    min-height: 834px;*/
/*}*/

/*!* Media queries for responsive banner scaling *!*/
/*@media (max-width: 1920px) {*/
/*    .hero-section .slider-item .bg-image img {*/
/*        width: 100% !important;*/
/*        transform: none !important;*/
/*    }*/
/*}*/

/*@media (max-width: 1680px) {*/
/*    .hero-section .slider-item .bg-image img {*/
/*        width: 100% !important;*/
/*        transform: none !important;*/
/*    }*/
/*}*/