.membership-page{padding-top:36px;padding-bottom:48px}.membership-content{width:100%;max-width:1050px;margin-inline:auto}.membership-hero{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:start;gap:64px;display:grid}.membership-intro{min-width:0}.membership-page .membership-heading{text-align:left;max-width:none;margin:0}.membership-page .membership-heading h1{letter-spacing:-.04em;font-size:2.5rem;line-height:1.4}.membership-page .membership-heading>p{color:var(--muted);margin-top:16px;line-height:1.8}.membership-page .membership-heading .membership-eyebrow{color:var(--accent);letter-spacing:.12em;margin:0 0 18px;font-size:.75rem;font-weight:600}.membership-intro-actions{flex-wrap:wrap;align-items:center;gap:14px 20px;margin-top:24px;display:flex}.membership-intro-actions .button{min-height:46px}.membership-intro-actions .text-link{font-size:.8125rem}.membership-page .membership-heading .membership-sample-note{margin-top:10px;font-size:.75rem}.membership-benefits{border-top:1px solid var(--line);margin-top:30px;padding-top:24px}.membership-benefits h2{font-size:1rem;font-weight:500}.membership-benefits ul{gap:11px;margin:14px 0;padding:0;list-style:none;display:grid}.membership-benefits li{align-items:center;gap:10px;font-size:.9375rem;display:flex}.membership-benefits li svg{color:var(--accent)}.membership-purchase{border:1px solid var(--line);background:var(--surface);border-radius:6px;min-width:0;padding:24px;scroll-margin-top:96px}.membership-purchase>h2{font-family:var(--serif);margin:0 0 12px;font-size:1.25rem}.membership-purchase fieldset{border:0;min-width:0;padding:0}.membership-purchase legend{color:var(--muted);margin-bottom:9px;padding:0;font-size:.8125rem}.membership-purchase .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:none;margin:0;display:grid}.membership-purchase .price-card{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:4px;align-content:start;gap:5px;min-width:0;padding:14px 12px 14px 34px;display:grid;position:relative}.membership-purchase .price-card.featured{border:1px solid var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:color-mix(in srgb, var(--accent) 4%, var(--surface));padding-top:14px}.membership-purchase .price-card input{width:14px;height:14px;accent-color:var(--accent);margin:0;position:absolute;top:18px;left:12px}.membership-purchase .price-card:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.membership-purchase .price-card:has(input:disabled){cursor:default}.membership-plan-name{font-size:.875rem;font-weight:500}.membership-purchase .price-value{font-family:var(--sans);font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.04em;margin:1px 0 0;font-size:1.875rem;font-weight:500;line-height:1.3}.membership-purchase .price-value small{color:var(--muted);letter-spacing:0;white-space:nowrap;font-size:.6875rem}.membership-purchase .price-regular,.membership-purchase .price-monthly-equivalent{color:var(--muted);margin:0;font-size:.6875rem;line-height:1.5}.membership-plan-saving{width:fit-content;color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--surface));border-radius:3px;margin-top:4px;padding:3px 7px;font-size:.6875rem;font-weight:600}.price-saving-detail{color:var(--muted);font-size:.6875rem;line-height:1.5}.membership-offer-notice{border-left:2px solid var(--accent);background:var(--paper);margin:12px 0 0;padding:8px 10px;font-size:.6875rem;line-height:1.5}.membership-offer-notice strong{color:var(--accent);font-weight:500}.membership-offer-notice p{color:var(--muted);margin-top:2px}.membership-purchase .membership-purchase-options{margin:12px 0 0}.membership-option-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.membership-option-controls label{border:1px solid var(--line);cursor:pointer;border-radius:4px;align-items:center;gap:8px;min-height:40px;padding:8px 10px;font-size:.8125rem;display:flex}.membership-option-controls label:has(input:checked){border-color:var(--accent)}.membership-option-controls input{width:14px;height:14px;accent-color:var(--accent);flex-shrink:0;margin:0}.membership-renewal-note{color:var(--ink);grid-column:1/-1;margin:0;font-size:.8125rem;line-height:1.65}.membership-checkout{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 16px;padding-top:12px;display:grid}.membership-total{grid-template-columns:auto 1fr;align-items:baseline;gap:0 8px;display:grid}.membership-total>span{color:var(--muted);grid-column:1/-1;font-size:.6875rem}.membership-total strong{font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:1.625rem;font-weight:500;line-height:1.5}.membership-total small{color:var(--muted);grid-column:1/-1;font-size:.6875rem}.membership-pay-button{min-height:48px}.membership-checkout .form-error,.membership-provider-status{grid-column:1/-1;margin:0;font-size:.75rem}.membership-provider-status{color:var(--muted)}.membership-payment-info{color:var(--muted);margin-top:12px;font-size:.6875rem;line-height:1.7}.membership-gift-links{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:14px;padding-top:14px;display:flex}.membership-gift-links .text-link{padding:0;font-size:.75rem}.membership-gift-toggle{color:var(--accent)}.membership-local-test{border-top:1px dashed var(--line);color:var(--muted);margin-top:14px;padding-top:10px;font-size:.75rem}.membership-local-test summary{cursor:pointer}.membership-local-test p{margin:10px 0}.membership-page .faq{margin:40px 0 0;padding-top:28px}@media (max-width:1050px) and (min-width:761px){.membership-hero{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:28px}.membership-page .membership-heading h1{font-size:2.125rem}.membership-purchase{padding:20px}}@media (max-width:760px){.membership-page{padding-top:24px;padding-bottom:32px}.membership-hero{grid-template-columns:minmax(0,1fr);gap:22px}.membership-intro{display:block}.membership-page .membership-heading .membership-eyebrow{margin-bottom:10px;font-size:.6875rem}.membership-page .membership-heading h1{font-size:1.875rem;line-height:1.3}.membership-page .membership-heading>p{margin-top:10px;font-size:.8125rem;line-height:1.7}.membership-intro-actions{gap:12px 18px;margin-top:18px}.membership-purchase{padding:18px}.membership-purchase>h2{margin-bottom:14px;font-size:1.125rem}.membership-purchase .price-card{padding-left:28px;padding-right:8px}.membership-purchase .price-card input{width:13px;height:13px;left:9px}.membership-purchase .price-value{font-size:1.625rem}.membership-purchase .membership-plan-name{font-size:.8125rem}.membership-option-controls{gap:8px}.membership-option-controls label{gap:6px;padding:8px}.membership-checkout{z-index:30;padding:12px 22px calc(12px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);position:fixed;inset:auto 0 0;box-shadow:0 -6px 24px #00000008}.membership-pay-button{min-height:48px;padding-inline:18px}.membership-total strong{font-size:1.5rem}.membership-benefits{margin-top:22px;padding-top:18px}.membership-benefits h2{font-size:.9375rem}.membership-benefits li{font-size:.875rem}.membership-benefits li svg{flex-shrink:0}.membership-page .faq{margin-top:28px;padding-top:24px}body:has(.membership-page) .site-footer{padding-bottom:calc(260px + env(safe-area-inset-bottom))}}@media (max-width:360px){.membership-purchase{padding:14px}.membership-purchase .pricing-grid{gap:8px}.membership-purchase .price-value{font-size:1.375rem}.membership-checkout{gap:8px;padding-inline:16px}.membership-pay-button{padding-inline:12px;font-size:.8125rem}}
