.pricing-cards {
    height: unset;
}

.price-time {
    font-size: var(--text-20);
}

.card-cta {
    display: flex;
    justify-content: center;
    width: 100%;
}

.btn-pricing {
    min-width: 250px;
}

.card-content {
    display: flex;
    flex-direction: column;
    gap: var(--space-12);
}

@media (max-width: 768px) {

  /* Layout: stack the section content and rows */
  .pricing-cards .section-content,
  .pricing-cards .row {
    flex-direction: column;
    gap: var(--space-16);
    align-items: stretch;
  }

  /* Ensure every column becomes full width */
  .pricing-cards .column,
  .pricing-cards .row > .column {
    width: 100%;
    flex: 1 1 100%;
    min-width: 0;
  }

  /* Cards: remove huge min-height, tighten padding, smaller radius */
  .card {
    min-height: auto;            /* content-driven height on mobile */
    padding: var(--space-16);    /* reduce internal padding for mobile */
    border-radius: var(--radius-small);
    align-items: stretch;        /* ensure card content fills width */
    gap: var(--space-12);
  }

  .card-content {
    gap: var(--space-8);
  }

  /* Headings and price scale for mobile */
  .heading-strong {
    font-size: var(--text-32);
  }

  .heading-weak {
    font-size: var(--text-20);
  }

  .price-value {
    font-size: var(--text-32);
  }

  .price-time {
    font-size: var(--text-14);
  }

  /* Buttons: full-width, touch-friendly, smaller min-height */
  .btn,
  .btn-primary {
    min-width: 0;
    width: 100%;
    min-height: 48px;            /* comfortable touch target */
    font-size: var(--text-16);
    border-radius: var(--radius-small);
  }

  .btn-pricing {
    width: 100%;
    min-width: 0;
  }

  /* CTA area spacing */
  .card-cta {
    display: flex;
    justify-content: center;     /* keep CTA centered within card */
    padding-top: var(--space-12);
  }

  /* Lists: readable line length and spacing */
  .card ul {
    padding-left: 1rem;
    margin-top: var(--space-8);
  }

  .card ul li {
    font-size: var(--text-14);
    line-height: 1.5;
  }

  /* Safety: avoid unexpected overflow from internal elements */
  .card,
  .card * {
    max-width: 100%;
    box-sizing: border-box;
    word-break: break-word;
  }
}
