/* === Pricing Page Specific Styles (Final Corrected Version) === */

main {
    padding-top: 68px; /* Adjust this value if your header height changes */
}

/* --- 1. Main Layout & Mobile Reordering Logic --- */
/* This ensures the content reorders correctly on mobile devices */
@media (max-width: 767.98px) {
    .mobile-order-wrapper {
        display: flex;
        flex-direction: column;
    }
    .hero-main-block       { order: 1; } /* Main Title */
    .comparison-block      { order: 2; } /* Pricing Cards & Table */
    .included-block        { order: 3; } /* Included Features */
    .hero-details-block    { order: 4; } /* Supporting Text & Trust Badges */
    .faq-block             { order: 5; } /* FAQ Section */
    .investment-block      { order: 6; } /* Final CTA */
}

/* --- 2. Pricing Cards Grid --- */
.pricing-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
}

/* Base style for all pricing cards */
.pricing-column {
    display: flex;
    flex-direction: column;
    text-align: center;
    background-color: #fff;
    border: 1px solid #dee2e6;
    border-radius: 0.5rem;
    transition: all 0.2s ease-in-out;
}

/* Subtle highlight for the recommended plan */
.pricing-column.pricing-highlight {
    border: 2px solid var(--bs-primary);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
    transform: scale(1.02);
}

/* Card internal structure */
.pricing-header {
    flex-grow: 1; /* Pushes footer down */
    padding: 1.5rem;
}

.pricing-footer {
    padding: 1.5rem;
    padding-top: 0;
    margin-top: auto; /* Aligns footer to the bottom */
    border-top: 1px solid #dee2e6;
}


/* --- 3. Detailed Feature Comparison Table --- */
.feature-table th {
    font-weight: 600;
}

.feature-table .bi {
    font-size: 1.5rem;
}


/* --- 4. Responsive Adjustments for Grid and Table --- */
@media (max-width: 991.98px) {
    .pricing-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767.98px) {
    .pricing-grid {
        grid-template-columns: 1fr;
    }
    .table-responsive {
        border: 1px solid #dee2e6;
        border-radius: 0.375rem;
    }
}


    /* Mobile-First Content Reordering Logic */
    @media (max-width: 767.98px) {
        .mobile-order-wrapper {
            display: flex;
            flex-direction: column;
        }
        .hero-main-block       { order: 1; } /* Main Title */
        .comparison-block      { order: 2; } /* Pricing Cards & Table */
        .included-block        { order: 3; } /* Included Features */
        .hero-details-block    { order: 4; } /* Supporting Text & Trust Badges */
        .faq-block             { order: 5; } /* FAQ Section */
        .investment-block      { order: 6; } /* Final CTA */
    }

    /* --- 2. Pricing Cards Grid --- */
    .pricing-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 1.5rem;
    }

    /* Base style for all pricing cards */
    .pricing-column {
        display: flex;
        flex-direction: column;
        text-align: center;
        background-color: #fff;
        border: 1px solid #dee2e6;
        border-radius: 0.5rem;
        transition: all 0.2s ease-in-out;
    }

    /* Subtle highlight for the recommended plan */
    .pricing-column.pricing-highlight {
        border: 2px solid var(--bs-primary);
        box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
        transform: scale(1.02);
    }

    /* Card internal structure */
    .pricing-header {
        flex-grow: 1; /* Pushes footer down */
        padding: 1.5rem;
    }

    .pricing-footer {
        padding: 1.5rem;
        padding-top: 0;
        margin-top: auto; /* Aligns footer to the bottom */
        border-top: 1px solid #dee2e6;
    }


    /* --- 3. Detailed Feature Comparison Table --- */
    .feature-table th {
        font-weight: 600;
    }

    .feature-table .bi {
        font-size: 1.5rem;
    }


    /* --- 4. Responsive Adjustments for Grid and Table --- */
    @media (max-width: 991.98px) {
        .pricing-grid {
            grid-template-columns: repeat(2, 1fr);
        }
    }

    @media (max-width: 767.98px) {
        .pricing-grid {
            grid-template-columns: 1fr;
        }
        .table-responsive {
            border: 1px solid #dee2e6;
            border-radius: 0.375rem;
        }
    }