.paywall-page { max-width: 820px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.paywall-reader > .paywall-page { min-width: 0; width: 100%; padding: 0 0 2rem; }
.paywall-page > nav { font-size: .875rem; color: var(--nav-ink-soft); }
.paywall-page > nav span { margin: 0 .6rem; }
.paywall-intro { margin: 2.5rem 0 2rem; }
.paywall-intro h1 { font-size: clamp(1.8rem, 5vw, 2.8rem); line-height: 1.15; margin: .5rem 0 1rem; }
.paywall-intro > p:last-child { font-size: 1.1rem; color: var(--nav-ink-soft); }
.paywall-eyebrow { font-size: .75rem; letter-spacing: .12em; font-weight: 800; color: var(--nav-deep); }
.paywall-card { padding: clamp(1.4rem, 4vw, 2.5rem); border: 2px solid var(--nav-turquoise); border-radius: 24px; background: color-mix(in srgb, var(--nav-turquoise) 7%, var(--nav-white)); box-shadow: 0 12px 36px #0000000d; }
.paywall-card h2 { margin: .5rem 0 1rem; font-size: clamp(1.4rem, 4vw, 2rem); line-height: 1.25; }
.paywall-card ul { padding-left: 1.4rem; margin: 1.4rem 0; }
.paywall-card li { margin: .5rem 0; }
.paywall-price { font-size: 2.1rem; font-weight: 800; margin: 1.5rem 0 .25rem; color: var(--nav-deep); }
.paywall-price span { font-size: 1rem; font-weight: 500; }
.paywall-terms { font-size: .85rem; color: var(--nav-ink-soft); }
.paywall-notice { padding: .8rem 1rem; background: var(--nav-white); border-radius: 10px; }
.paywall-actions { display: flex; flex-wrap: wrap; gap: 1rem 1.5rem; align-items: center; margin-top: 1.5rem; }
.paywall-actions .btn-primary { color: var(--nav-white); }
.paywall-actions > a:not(.btn), .paywall-sample a { text-decoration: underline; }
.paywall-sample { margin: 1.25rem 0; font-size: .9rem; }
@media(max-width: 480px) { .paywall-actions { flex-direction: column; align-items: stretch; } .paywall-actions .btn { text-align: center; white-space: normal; } .paywall-price span { display: block; } }
.paywall-jump { display: inline-block; margin-top: .5rem; text-decoration: underline; text-underline-offset: .2em; }
.paywall-preview { margin: 0 0 2.5rem; line-height: 1.8; overflow-wrap: anywhere; }
.paywall-preview h2 { font-size: clamp(1.4rem, 4vw, 1.8rem); line-height: 1.3; }
.paywall-preview h3 { font-size: 1.15rem; line-height: 1.4; margin: 0 0 .8rem; }
.paywall-preview h4 { font-size: 1rem; margin: 0; }
.paywall-preview-description p { margin: 1.25rem 0; }
.paywall-preview-questions { margin: 2rem 0; }
.paywall-example { margin-top: 1.25rem; padding: 1.2rem 1.4rem; border-left: 4px solid var(--nav-turquoise); border-radius: 0 12px 12px 0; background: color-mix(in srgb, var(--nav-turquoise) 7%, var(--nav-white)); }
.paywall-example p:last-child { margin-bottom: 0; }
.paywall-authority { padding: 1.25rem 1.4rem; border: 1px solid var(--nav-ink-soft); border-radius: 12px; }
.paywall-authority a { text-decoration: underline; text-underline-offset: .2em; }
.paywall-authority p:last-child { margin-bottom: 0; }
#paywall-heading { scroll-margin-top: 6rem; }
