/* Membership-only presentation; keep public research and signup behavior unchanged. */
.pi-membership-page .pi-membership-hero h1 { font-size: clamp(2.25rem, 4.3vw, 3.6rem); line-height: 1.12; }
.pi-membership-page .pi-membership-ladder { list-style: none; margin: 0; padding: 0; }
.pi-membership-ladder li { display: flex; gap: 1rem; align-items: center; padding: 1rem 0; border-bottom: 1px solid var(--pi-border); }
.pi-membership-ladder li:last-child { border-bottom: 0; }
.pi-membership-ladder li > span { color: #ffb47d; font-family: var(--pi-font-mono); font-size: 0.85rem; }
.pi-membership-ladder strong { color: #f5f8fb; }
.pi-membership-hero-panel .pi-membership-ladder p { margin: 0.25rem 0 0; font-size: 0.9rem; }
.pi-membership-fit-grid, .pi-membership-process { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.pi-membership-fit-grid h3 { color: #153447; }
.pi-membership-fit-grid p { color: #455a66; line-height: 1.7; }
.pi-membership-page .pi-light-band a:not(.pi-button) { color: #086477; }
.pi-membership-page .pi-light-band .pi-kicker { color: #086477; }
.pi-membership-page .pi-price-card { display: flex; flex-direction: column; min-width: 0; gap: 0.85rem; padding: 1.4rem; }
.pi-membership-page .pi-price-card > * { margin: 0; }
.pi-membership-page .pi-price-card h3 { min-height: 2.6em; font-size: 1.35rem; line-height: 1.3; }
.pi-membership-page .pi-price-placeholder { color: #ffb47d !important; font-size: 0.72rem; line-height: 1.5; }
.pi-membership-page .pi-price-card-primary { border: 2px solid #70d5c7; }
.pi-membership-page .pi-membership-price { font-size: 2.6rem; white-space: nowrap; }
.pi-membership-price span { font-family: var(--pi-font-body); font-size: 0.95rem; font-weight: 500; margin-left: 0.2rem; }
.pi-membership-page .pi-membership-billing { font-size: 0.82rem; color: #bdcddd; }
.pi-membership-page .pi-membership-best-for { min-height: 4.8em; }
.pi-membership-page .pi-membership-value { color: #eef8fb; font-weight: 650; line-height: 1.5; min-height: 3em; }
.pi-membership-page .pi-price-card ul { margin: 0 0 0.5rem; font-size: 0.9rem; line-height: 1.65; }
.pi-membership-page .pi-membership-delivery { border-top: 1px solid #466078; padding-top: 1rem; font-size: 0.85rem; line-height: 1.7; }
.pi-membership-page .pi-membership-exclusion { font-size: 0.8rem; line-height: 1.6; color: #b7c9d7; }
.pi-membership-page .pi-price-card .pi-button { margin-top: auto; width: 100%; min-height: 48px; white-space: normal; text-align: center; font-size: 0.85rem; }
.pi-membership-footnote { font-size: 0.85rem; line-height: 1.8; color: #bacdd9; margin: 1.5rem 0 0; }
.pi-membership-comparison-table caption { text-align: left; padding: 1rem; color: #d4e5ee; font-weight: 650; }
.pi-membership-page .pi-membership-comparison-wrap { max-width: 100%; }
.pi-membership-detail-grid { display: grid; gap: 2rem; }
.pi-membership-detail-grid section { border-bottom: 1px solid #c1ced1; padding-bottom: 2rem; }
.pi-membership-detail-grid section:last-child { border: 0; padding-bottom: 0; }
.pi-membership-detail-grid h2 { font-size: clamp(1.5rem, 2.5vw, 2rem); line-height: 1.25; }
.pi-membership-detail-grid p:not(.pi-kicker) { color: #455a66; line-height: 1.8; max-width: 85ch; }
.pi-membership-process { padding-left: 1.4rem; gap: 2.5rem; }
.pi-membership-process li::marker { color: #89e4d6; font-weight: 750; }
.pi-membership-process h3 { font-size: 1.2rem; }
.pi-membership-process p { color: #c0d2df; line-height: 1.75; }
.pi-membership-page a:focus-visible, .pi-membership-page summary:focus-visible, .pi-membership-comparison-wrap:focus-visible { outline: 3px solid #f5ae72; outline-offset: 4px; }
.pi-membership-page .pi-light-band a:focus-visible, .pi-membership-page .pi-light-band summary:focus-visible { outline-color: #086477; }
.pi-membership-page #membership-options, .pi-membership-page #research-plus-included, .pi-membership-page #research-plus-beta { scroll-margin-top: calc(var(--pi-header-anchor-offset, 160px) + 24px); }
@media (min-width: 701px) and (max-width: 1100px) {
  .pi-membership-page .pi-membership-pricing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .pi-membership-page .pi-membership-pricing-grid, .pi-membership-fit-grid, .pi-membership-process { grid-template-columns: minmax(0, 1fr); }
  .pi-membership-page .pi-price-card h3, .pi-membership-page .pi-membership-best-for, .pi-membership-page .pi-membership-value { min-height: 0; }
  .pi-membership-page .pi-membership-hero .pi-hero-actions { align-items: stretch; flex-direction: column; }
  .pi-membership-page .pi-membership-hero .pi-button { white-space: normal; text-align: center; }
  .pi-membership-process { gap: 1rem; }
}
