.pricing { text-align: center; }
.pricing h2 { font-size: clamp(28px, 3vw, 40px); margin-top: 14px; letter-spacing: -0.04em; }
.price-card { position: relative; margin: 40px auto 0; max-width: 400px; padding: 32px 30px; border-radius: var(--radius-lg); border: 1px solid var(--line-2); background: linear-gradient(180deg, var(--surface), var(--bg-2)); text-align: left; }
.price-card::before { content: ''; position: absolute; top: -1px; left: 20%; right: 20%; height: 1px; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.45), transparent); }
.price-line { display: flex; align-items: baseline; gap: 6px; }
.price-val { font-size: 54px; font-weight: 500; letter-spacing: -0.04em; line-height: 1; }
.price-cycle { color: var(--muted); font-size: 16px; }
.price-renewal { margin-top: 8px; color: var(--muted); font-size: 14px; }
.price-list { list-style: none; margin: 26px 0; padding: 24px 0 0; border-top: 1px solid var(--line); display: grid; gap: 12px; }
.price-list li { display: flex; gap: 10px; align-items: center; font-size: 15px; }
.price-list svg { width: 18px; height: 18px; flex: none; padding: 3px; border-radius: 0; background: rgba(255, 255, 255, 0.08); stroke: var(--text); }
.price-card .btn { width: 100%; justify-content: center; }
.price-note { margin-top: 14px; font-size: 12px; color: var(--dim); }
