/**
 * EQUAL HEIGHT CTA BUTTONS FIX
 * Universal flexbox solution for comparison cards
 */

/* Comparison card containers - apply flexbox column layout */
.comparison-card,
.pricing-card,
.plan-card {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

/* Content wrapper - grows to fill space */
.comparison-card > div:first-child,
.pricing-card > div:first-child,
.plan-card > div:first-child {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
}

/* Feature list - grows to push CTA to bottom */
.comparison-card ul,
.comparison-card .features-list,
.pricing-card ul,
.pricing-card .features-list,
.plan-card ul,
.plan-card .features-list {
    flex-grow: 1 !important;
}

/* CTA button wrapper - always at bottom */
.comparison-card .cta-wrapper,
.comparison-card .button-wrapper,
.pricing-card .cta-wrapper,
.pricing-card .button-wrapper,
.plan-card .cta-wrapper,
.plan-card .button-wrapper {
    margin-top: auto !important;
    padding-top: 1.5rem !important;
}

/* Specific fix for Try Once / Subscribe & Save cards */
.try-once-card,
.subscribe-save-card {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

.try-once-card > *:last-child,
.subscribe-save-card > *:last-child {
    margin-top: auto !important;
}

/* Grid container - equal row heights */
.comparison-grid {
    display: grid !important;
    grid-auto-rows: 1fr !important;
}

.comparison-grid > * {
    display: flex !important;
}
