/*
 * BEAULANCE narrow-phone reliability layer.
 * Loaded after the measured Figma styles so 390px remains literal while
 * narrower phones and CMS-authored copy can grow without clipping.
 */

@media (max-width: 767px) {
    .b2-view.b2-state--404,
    .b2-view.b2-state--maintenance {
        grid-template-columns: minmax(0, 1fr);
    }

    .b2-view.b2-state--404 .b2-state__card,
    .b2-view.b2-state--maintenance .b2-state__card {
        width: 100%;
        min-width: 0;
        max-width: 100%;
    }

    .b2-view.b2-state--404 .b2-state__card > p,
    .b2-view.b2-state--maintenance .b2-state__card > p {
        overflow-wrap: anywhere;
    }

    .b2-view.b2-state--404 .b2-state__actions {
        width: min(320px, 100%);
        min-width: 0;
    }

    .b2-view.b2-state--404 .b2-state__actions .b2-button {
        width: 100%;
        max-width: 100%;
    }

    .b2-view.b2-faq-page .b2-faq-list details:not([open]) {
        height: auto;
        min-height: 62px;
    }

    .b2-view.b2-faq-page .b2-faq-list summary {
        height: auto;
        min-height: 60px;
        grid-template-rows: minmax(28px, auto);
    }

    .b2-blog-detail .b2-blog-cta strong {
        overflow-wrap: anywhere;
        white-space: normal;
    }

    .b2-notices .b2-notice-list article,
    .b2-notices .b2-notice-list a {
        height: auto;
    }

    .b2-notices .b2-notice-list article {
        min-height: 110px;
    }

    .b2-notices .b2-notice-list a {
        min-height: 108px;
    }

    .b2-notices .b2-notice-list h2 {
        overflow-wrap: anywhere;
    }

    .b2-view.b2-content-detail .b2-breadcrumb {
        min-width: 0;
    }

    .b2-view.b2-profile .b2-breadcrumb {
        width: 100%;
        max-width: 100%;
    }

    .b2-view.b2-content-detail .b2-breadcrumb > [aria-current="page"] {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .b2-view.b2-content-detail .b2-detail-title__actions {
        height: auto;
        min-height: 53.39px;
        flex-wrap: wrap;
    }

    .b2-view.b2-content-detail .b2-detail-title__actions form,
    .b2-view.b2-content-detail .b2-favorite,
    .b2-view.b2-content-detail .b2-access-pill {
        width: 100%;
        max-width: 100%;
    }

    .b2-view.b2-content-detail .b2-favorite,
    .b2-view.b2-content-detail .b2-access-pill {
        height: auto;
        overflow: visible;
        text-overflow: clip;
        white-space: normal;
    }
}

@media (max-width: 389px) {
    .b2-view.b2-faq-page > .b2-container,
    .b2-view.b2-faq-page .b2-heading > p,
    .b2-view.b2-faq-page .b2-faq-list {
        width: 100%;
        max-width: 100%;
    }

    .b2-view.b2-faq-page .b2-faq-tabs {
        width: 100vw;
        max-width: none;
        margin-right: calc(50% - 50vw);
        margin-left: calc(50% - 50vw);
        padding-right: max(16px, calc((100vw - 310px) / 2));
        padding-left: max(16px, calc((100vw - 310px) / 2));
    }

    .b2-view.b2-legal-page > .b2-container,
    .b2-view.b2-legal-page .b2-legal {
        width: 100%;
        max-width: 100%;
    }

    .b2-view.b2-legal-page .b2-breadcrumb,
    .b2-view.b2-legal-page .b2-legal-table-wrap {
        width: calc(100% - 32px);
        max-width: calc(100% - 32px);
        margin-right: 16px;
        margin-left: 16px;
    }

    .b2-view.b2-content-detail .b2-detail-title__actions {
        height: auto;
        min-height: 53.39px;
        flex-wrap: wrap;
    }

    .b2-view.b2-content-detail .b2-detail-title__actions form,
    .b2-view.b2-content-detail .b2-favorite,
    .b2-view.b2-content-detail .b2-access-pill {
        width: 100%;
        max-width: 100%;
    }

    .b2-view.b2-content-detail .b2-favorite,
    .b2-view.b2-content-detail .b2-access-pill {
        height: auto;
        overflow: visible;
        text-overflow: clip;
        white-space: normal;
    }

    .b2-notices .b2-notice-list {
        width: calc(100% - 52px);
        max-width: calc(100% - 52px);
    }

    .b2-notices .b2-notice-list article {
        width: 100%;
        max-width: 100%;
    }

    .b2-view.b2-subpage.b2-pricing .b2-heading > p {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
    }
}
/* Direct subscription CTAs keep the exact existing card geometry while the
 * surrounding element becomes a nonce-protected Stripe POST form. */
.beaulance-direct-plan-form {
  display: contents;
}

.beaulance-direct-plan-form button {
  appearance: none;
  -webkit-appearance: none;
  font: inherit;
  cursor: pointer;
}
