/* Pricing */
.pricing .wrap { padding-block: 56px 80px; }
.pricing h1 { font-size: clamp(2rem, 4vw, 2.6rem); letter-spacing: -0.02em; }
.plans { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin-top: 40px; }
.plan { background: var(--surface); border: 1px solid var(--line); border-radius: 14px; padding: 26px 22px; display: flex; flex-direction: column; }
.plan-featured { border-color: var(--accent); box-shadow: 0 0 0 1px var(--accent); }
.plan h2 { font-size: 1.2rem; }
.plan-price { margin-top: 14px; color: var(--muted); }
.plan-price span { font-family: var(--font-display); font-size: 2.2rem; font-weight: 700; color: var(--ink); letter-spacing: -0.02em; }
.plan-yearly { margin-top: 2px; color: var(--muted); font-size: 0.9rem; }
.plan ul { list-style: none; padding: 0; margin: 18px 0 0; border-top: 1px solid var(--line); }
.plan li { padding: 9px 0; border-bottom: 1px solid var(--line); font-size: 0.95rem; }
.pricing-notes { max-width: 760px; margin-top: 56px; }
.pricing-notes h2 { font-size: 1.3rem; }
.pricing-notes ul { margin-top: 12px; padding-left: 1.2em; }
.pricing-notes li + li { margin-top: 8px; }
.pricing-notes li, .pricing-fine { color: var(--muted); }
.pricing-notes strong { color: var(--ink); }
.pricing-fine { margin-top: 24px; }
.legal h3 { font-size: 1.05rem; margin-top: 24px; }
.table-wrap { overflow-x: auto; margin-top: 16px; }
.legal table { border-collapse: collapse; width: 100%; font-size: 0.95rem; }
.legal th, .legal td { text-align: left; vertical-align: top; padding: 10px 12px; border-bottom: 1px solid var(--line); }
.legal th { font-weight: 600; }
@media (max-width: 980px) { .plans { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .plans { grid-template-columns: minmax(0, 1fr); } .pricing .wrap { padding-block: 36px 56px; } }
