/* plans intro hero — decorative corner blob */
.plans-intro-hero {
    overflow: hidden;
}

.plans-intro-hero__blob {
    width: 16rem;
    height: 16rem;
    top: -4rem;
    right: -4rem;
    transform: translate(25%, -25%);
}

.plans-intro-hero__title {
    letter-spacing: -0.02em;
}

.plans-intro-hero__lead {
    letter-spacing: -0.01em;
}

.plans-intro-hero__btn {
    min-width: 12rem;
}

@media (max-width: 767px) {
    .plans-intro-hero__btn {
        min-width: 0;
        width: 100%;
    }
}

/* plans split — soft blob decor, blockquote mark */
.plans-split__blob.plans-split__blob {
    width: 16rem;
    height: 16rem;
    transform: translate(2.5rem, -2.5rem);
}

.plans-split__title {
    letter-spacing: -0.01em;
}

.plans-split__mark {
    transform: scaleY(-1) rotate(180deg);
    display: inline-block;
    width: fit-content;
}

.plans-split__quote-text {
    quotes: none;
}

.plans-split__cta-box {
    margin-top: 0.5rem;
}

/* plans-split-quote */
.plans-split-quote__mark {
    font-family: Georgia, serif;
}

.plans-split-quote__panel {
    min-height: 24rem;
}

.plans-split-quote__card {
    min-height: 24rem;
}

@media (max-width: 767px) {
    .plans-split-quote__panel,
    .plans-split-quote__card {
        min-height: 0;
    }
}

/* plans-pro — split feature/quote module with decorative blob (no colors) */
.plans-pro__blob.plans-pro__blob {
    width: 10rem;
    height: 10rem;
    transform: translate(2.5rem, -2.5rem);
}

.plans-pro__avatar.plans-pro__avatar {
    width: 4rem;
    height: 4rem;
    object-fit: cover;
    flex: none;
}

.plans-pro__item {
    line-height: 1.5;
}

@media (max-width: 767px) {
    .plans-pro__cta-box {
        align-items: stretch;
    }
}

/* catalog invite — reverse stack module with image panel */
.catalog-invite__media.catalog-invite__media {
    min-height: 18.75rem;
}

.catalog-invite__link.catalog-invite__link {
    appearance: none;
    -webkit-appearance: none;
    font: inherit;
    cursor: pointer;
    outline-offset: -2px;
}

@media (max-width: 1023px) {
    .catalog-invite__media.catalog-invite__media {
        min-height: 12.5rem;
    }
}

.catalog-invite__img {
    object-fit: cover;
}

/* cta-badge-banner — photo with a figure chip beside a dark offer panel (no colors) */
.cta-badge-banner__media {
    aspect-ratio: 4 / 3;
}

.cta-badge-banner__img {
    object-fit: cover;
}

.cta-badge-banner__panel {
    width: 100%;
}

.cta-badge-banner__caption {
    font-size: 0.75rem;
    line-height: 1rem;
}

