.pricing-page{max-width:980px;margin-inline:auto}
.pricing-hero{position:relative;text-align:center;padding:32px 125px 10px;min-height:155px}
.pricing-eyebrow{display:block;color:var(--green);font-size:13px;font-weight:700;letter-spacing:1.3px;margin-bottom:10px}
.pricing-hero h1{font-size:clamp(32px,3.2vw,44px);line-height:1.15;margin:0 0 11px;color:var(--ink)}
.pricing-hero p{font-size:17px;color:var(--muted);line-height:1.5;margin:0}
.pricing-mascot{position:absolute;right:15px;bottom:1px;width:112px;height:112px;object-fit:contain;filter:drop-shadow(0 8px 8px rgba(128,128,128,.2))}
.billing-selector{display:flex;gap:5px;max-width:430px;padding:5px;margin:22px auto 24px;border-radius:18px;border:1px solid var(--line);background:#f1f5ed;box-shadow:inset 0 1px 5px rgba(128,128,128,.12)}
.billing-selector button{flex:1;white-space:nowrap;border:0;border-radius:13px;background:none;padding:10px 12px;min-height:47px;color:var(--ink);font-size:16px}
.billing-selector button.selected{background:white;color:var(--green);box-shadow:0 5px 10px rgba(128,128,128,.19)}
.billing-discount{font-size:13px;color:#624d23;background:#f9e5aa;border-radius:40px;padding:4px 7px;margin-left:4px}
.pricing-page>.plan-grid{margin-top:0;gap:18px;max-width:880px}
.pricing-page .plan{min-height:390px;border:1px solid var(--line);border-radius:20px;background:#fff;padding:25px;box-shadow:0 10px 20px rgba(128,128,128,.22)}
.pricing-page .plan.featured{background:#f4f8ef;border:2px solid #88ad90}
.pricing-page .plan-label{color:var(--green)}
.pricing-page .plan h2{font-size:23px;margin-bottom:8px;min-height:0}
.pricing-page .plan-price{font-size:38px;min-height:78px;margin-bottom:3px}
.pricing-page .plan.featured .plan-price{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:18px;row-gap:2px}
.plan-old-price{font-size:20px;color:#8c918a;text-decoration:line-through;text-decoration-thickness:1.5px;white-space:nowrap}
.pricing-page .plan ul{font-size:16px;line-height:1.5;margin:10px 0 18px;padding-left:22px}
.pricing-page .plan li{margin:7px 0}
.pricing-page .plan .button{min-height:48px;border-radius:12px}
.pricing-free-link{text-align:center;margin:17px auto 22px}
.pricing-page .notice{max-width:880px;margin-inline:auto}
.pricing-details{max-width:830px;margin:28px auto 0}
.detail{grid-template-columns:minmax(0,410px) minmax(0,1fr);max-width:1180px;margin-inline:auto;align-items:start;gap:clamp(28px,4vw,58px)}
.detail-cover{width:100%;max-width:410px;margin-inline:auto}
.detail-cover>img{width:100%;max-height:410px;aspect-ratio:1/1;object-fit:contain;background:#fff;border-radius:20px;box-shadow:0 10px 20px rgba(128,128,128,.22)}
.purchase-options{display:grid;grid-template-columns:1fr;gap:12px;max-width:520px}
.buy-option{position:relative;border-radius:16px;border:1px solid #dbe4da;background:white;padding:16px 20px;box-shadow:0 6px 14px rgba(128,128,128,.18)}
.buy-option.subscription-option{background:#f5f8ef;border-color:#91b99a}
.buy-option strong{font-size:18px;color:var(--ink)}
.buy-option p{font-size:15px;margin:4px 0 12px;color:var(--muted)}
.buy-option .button{min-height:43px;border-radius:10px}
.buy-option button:disabled{opacity:.68}
.preview-status{font-size:15px;color:var(--muted);margin:14px 0}
.filters{max-height:calc(100dvh - var(--site-header-height,120px) - 16px);overflow-y:auto;scrollbar-gutter:stable}
@media(max-width:760px){.pricing-hero{padding:34px 8px 8px;min-height:0}.pricing-mascot{position:static;display:block;margin:-25px auto 3px;width:100px;height:100px}.billing-selector{margin-top:17px}.pricing-page>.plan-grid{grid-template-columns:1fr;max-width:430px}.pricing-page .plan{min-height:0}.detail{display:block}.detail-cover{max-width:min(100%,370px);margin-bottom:24px}.detail-cover>img{max-height:370px}}
@media(max-width:720px){.filters{max-height:none;overflow:visible;scrollbar-gutter:auto}.filters.open{max-height:68dvh;overflow-y:auto;scrollbar-gutter:stable}}
@media(max-width:440px){.billing-selector button{font-size:14px;padding-inline:7px}.billing-discount{font-size:12px;padding:3px 5px}.pricing-page .plan{padding:22px}}

@media(min-width:761px){.pricing-page .plan.featured{grid-column:2;grid-row:1}.pricing-page .plan.single{grid-column:1;grid-row:1}}
