/* ============================================
   STRICT FIX: Why Choose Nalwaya Section
   All cards EXACTLY the same size
   ============================================ */

/* Target the specific "Why Choose Us" section */
.section.section-alt:has(.section-header h2:contains("Why Choose")) .card,
.section-alt .grid-4 .card {
    /* Force exact same height */
    min-height: 360px !important;
    max-height: 360px !important;
    height: 360px !important;

    /* Exact same padding */
    padding: 2.5rem !important;

    /* Flexbox for perfect alignment */
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
}

/* Icon - Exact same size */
.section-alt .grid-4 .card .card-icon {
    width: 80px !important;
    height: 80px !important;
    min-height: 80px !important;
    max-height: 80px !important;
    flex-shrink: 0 !important;
    margin-bottom: 1.5rem !important;
}

/* Heading - Allow full text display */
.section-alt .grid-4 .card h3 {
    min-height: 64px !important;
    max-height: none !important;
    height: auto !important;
    margin-bottom: 1rem !important;

    /* Text control - allow wrapping */
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.4 !important;
    word-wrap: break-word !important;

    /* Remove flexbox that was hiding text */
    display: block !important;
}

/* Description - Adjust to compensate */
.section-alt .grid-4 .card p {
    min-height: 85px !important;
    max-height: 85px !important;
    height: 85px !important;
    margin-bottom: 0 !important;

    /* Text clamp for uniformity */
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    line-height: 1.7 !important;

    /* Prevent flex grow */
    flex: 0 0 auto !important;
}

/* Grid - Force equal heights */
.section-alt .grid-4 {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 2.5rem !important;
    align-items: stretch !important;
}

.section-alt .grid-4>* {
    height: 360px !important;
}

/* Responsive - Maintain exact heights */
@media (max-width: 1024px) {
    .section-alt .grid-4 {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .section-alt .grid-4 .card {
        min-height: 340px !important;
        max-height: 340px !important;
        height: 340px !important;
    }

    .section-alt .grid-4>* {
        height: 340px !important;
    }
}

@media (max-width: 640px) {
    .section-alt .grid-4 {
        grid-template-columns: 1fr !important;
    }

    .section-alt .grid-4 .card {
        min-height: 320px !important;
        max-height: 320px !important;
        height: 320px !important;
    }

    .section-alt .grid-4>* {
        height: 320px !important;
    }

    .section-alt .grid-4 .card h3 {
        min-height: 50px !important;
        max-height: 50px !important;
        height: 50px !important;
    }

    .section-alt .grid-4 .card p {
        min-height: 96px !important;
        max-height: 96px !important;
        height: 96px !important;
    }
}

/* Ensure no overflow breaks layout */
.section-alt .grid-4 .card * {
    box-sizing: border-box !important;
}

/* Perfect vertical spacing */
.section-alt .grid-4 .card {
    gap: 0 !important;
}