.plus-public-shell {
    display: grid;
    gap: 18px;
    margin-top: 18px;
}
.plus-public-hero,
.plus-public-panel {
    border: 1px solid var(--line);
    border-radius: 12px;
    background: var(--paper);
    box-shadow: 0 8px 22px rgba(0, 0, 0, .07);
}
.plus-public-hero {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 20px;
    padding: 24px;
}
.plus-public-logo {
    display: block;
    width: auto;
    max-width: 138px;
    max-height: 66px;
}
.plus-public-eyebrow {
    display: block;
    margin-bottom: 5px;
    color: var(--pink-dark);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
}
.plus-public-hero h1,
.plus-public-section-head h2 {
    margin: 0;
    color: #232326;
}
.plus-public-hero h1 { font-size: clamp(22px, 3vw, 31px); }
.plus-public-hero p,
.plus-public-section-head p {
    margin: 7px 0 0;
    color: var(--muted);
    line-height: 1.55;
}
.plus-public-hero p { max-width: 720px; font-size: 13px; }
.plus-public-cta {
    display: inline-flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    padding: 10px 16px;
    border-radius: 8px;
    background: var(--pink);
    color: var(--theme-accent-text);
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
    white-space: nowrap;
}
.plus-public-cta:hover,
.plus-public-cta:focus-visible { background: var(--pink-dark); color: #fff; outline: none; }
.plus-public-panel { padding: 20px; }
.plus-public-section-head { margin-bottom: 14px; }
.plus-public-section-head h2 { font-size: 21px; }
.plus-public-section-head p { font-size: 12px; }
.plus-public-pricing { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.plus-public-pricing .upgrade-option-card { height: 100%; }
.plus-public-pricing .upgrade-option-card ul { line-height: 1.45; }
.plus-public-panel.plus-benefits { margin-top: 0; }
.plus-public-panel .plus-benefits-table-wrap { margin-top: 0; }
@media (max-width: 900px) {
    .plus-public-hero { grid-template-columns: auto minmax(0, 1fr); }
    .plus-public-cta { grid-column: 1 / -1; justify-self: start; }
    .plus-public-pricing { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
    .plus-public-hero { grid-template-columns: 1fr; padding: 18px; }
    .plus-public-logo { max-width: 120px; }
    .plus-public-panel { padding: 14px; }
    .plus-public-cta { width: 100%; }
}
