.pricing-main { padding: 4rem 0 5rem; }
.pricing-hero { max-width: 48rem; margin-bottom: 2.8rem; }
.pricing-hero h1 { max-width: none; font-size: clamp(2.7rem, 10vw, 5.2rem); }
.pricing-hero p { color: var(--muted); font-size: clamp(1.05rem, 2.5vw, 1.28rem); }
.pricing-grid { display: grid; gap: 1rem; align-items: stretch; }
.pricing-card { display: flex; flex-direction: column; padding: 1.5rem; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow); }
.pricing-card.premium { border-color: rgba(232, 180, 85, .72); background: linear-gradient(145deg, rgba(34, 48, 82, .98), rgba(27, 39, 66, .96)); }
.pricing-card h2 { margin-bottom: .6rem; font-family: var(--serif); font-size: 2rem; }
.pricing-card .price { margin: .3rem 0 1.1rem; color: var(--gold-light); font-family: var(--serif); font-size: 2.5rem; line-height: 1.1; }
.pricing-card .price small { display: block; margin-top: .35rem; color: var(--muted); font-family: var(--sans); font-size: .9rem; line-height: 1.4; }
.pricing-card p { color: var(--muted); }
.pricing-card ul { display: grid; gap: .55rem; margin: 1rem 0 1.5rem; padding-left: 1.2rem; color: var(--muted); }
.pricing-card li::marker { color: var(--gold); }
.pricing-card .card-note { margin-top: auto; color: var(--gold-light); font-size: .88rem; }
.pricing-badge { display: inline-flex; align-self: flex-start; margin-bottom: .8rem; padding: .3rem .65rem; border: 1px solid rgba(232, 180, 85, .4); border-radius: 999px; color: var(--gold-light); font-size: .75rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.saving-note { margin-top: 1.2rem; padding: .85rem 1rem; border-left: 3px solid var(--gold); background: rgba(232, 180, 85, .1); color: var(--text); }
.pricing-section { padding: 3.8rem 0 0; }
.pricing-section h2 { max-width: 42rem; }
.pricing-faq { display: grid; gap: 1rem; margin-top: 1.7rem; }
.pricing-faq details { padding: 1rem 0; }
.pricing-faq summary { color: var(--text); }
.pricing-faq p { max-width: 48rem; color: var(--muted); }
.pricing-availability { margin-top: 2rem; padding: 1.25rem 1.35rem; border: 1px solid rgba(232, 180, 85, .35); border-radius: var(--radius); background: linear-gradient(135deg, rgba(232, 180, 85, .12), rgba(74, 111, 216, .12)); }
.pricing-availability p { margin: .35rem 0 0; color: var(--muted); }
.pricing-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.5rem; }
@media (min-width: 700px) { .pricing-main { padding-top: 5.5rem; } .pricing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
