.prices-page { margin-top: 24px; padding-bottom: 72px; }
.prices-heading { padding-bottom: 12px; }
.prices-subtitle { max-width: 650px; margin: 22px auto 0; color: #59554c; font: 15px/1.85 Arial, sans-serif; }
.prices-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 22px; margin-top: 28px; }
.price-card { position: relative; grid-column: span 4; min-width: 0; display: flex; flex-direction: column; padding: 28px 24px; border: 1px solid var(--pp-gold); border-radius: 14px; background: var(--pp-paper); box-shadow: 0 9px 17px var(--pp-shadow); color: #59554c; }
.price-card--featured { grid-column: span 6; border-width: 2px; }
.price-card--wide { grid-column: span 6; }
.price-card--full { grid-column: span 12; }
.price-card--asymmetric-narrow { grid-column: span 5; }
.price-card--asymmetric-wide { grid-column: span 7; }
.price-card--jazz-track { grid-column: span 8; }
.price-card--swing-out { grid-column: span 4; }
.price-card__tag { display: block; margin-bottom: 15px; color: var(--pp-accent); font: 11px/1.6 Arial, sans-serif; letter-spacing: .14em; text-transform: uppercase; }
.body-content .prices-page .price-card h2,
.body-content .prices-page .prices-lunchbox h2 { margin: 0; color: var(--pp-burgundy); font: 400 31px/1.2 'Bodoni MT', Didot, 'Times New Roman', serif !important; letter-spacing: -.025em; text-wrap: balance; text-shadow: none; }
.price-card__price { margin: 14px 0 16px; color: var(--pp-burgundy); font: 400 46px/1.1 'Bodoni MT', Didot, 'Times New Roman', serif; }
.price-card__early { align-self: flex-start; margin: 0 0 20px; padding: 7px 12px; border: 1px solid var(--pp-gold); border-radius: 5px; color: var(--pp-accent); background: var(--pp-inner, #fffdf8); font: 14px/1.5 Georgia, serif; }
.price-card ul { margin: 0; padding-left: 18px; color: #59554c; font: 14px/1.8 Arial, sans-serif; }
.price-card li + li { margin-top: 6px; }
.price-card li::marker { color: var(--pp-gold); }
.price-card__note { margin: 22px 0 0; padding-top: 18px; border-top: 1px solid rgba(191,149,63,.25); color: #59554c; font: 13px/1.8 Arial, sans-serif; }
.prices-lunchbox { margin-top: 28px; padding: 30px 26px; border: 1px solid var(--pp-gold); border-radius: 14px; background: var(--pp-paper); box-shadow: 0 9px 17px var(--pp-shadow); }
.prices-lunchbox__heading { text-align: center; margin-bottom: 24px; }
.prices-lunchbox__price { margin: 8px 0 0; color: var(--pp-burgundy); font: 36px/1.2 'Bodoni MT', Didot, 'Times New Roman', serif; }
.prices-lunchbox__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.prices-lunchbox__item { padding: 20px; border: 1px solid rgba(191,149,63,.3); border-radius: 8px; color: #59554c; background: var(--pp-inner, #fffdf8); font: 14px/1.8 Arial, sans-serif; }
.prices-lunchbox__item strong { display: block; margin-bottom: 8px; color: var(--pp-accent); font: 400 24px/1.2 'Bodoni MT', Didot, 'Times New Roman', serif; }
.prices-footnote { margin: 28px auto 0; max-width: 760px; color: var(--pp-accent); font: italic 14px/1.7 Georgia, serif; text-align: center; }
@media (max-width: 820px) { .prices-grid { gap: 20px; } .prices-page .price-card { grid-column: 1 / -1; } }
@media (max-width: 575px) { .prices-page { padding-left: 22px; padding-right: 22px; } .price-card { padding: 25px 20px; } .prices-lunchbox { padding: 26px 18px; } .prices-lunchbox__grid { grid-template-columns: 1fr; } .body-content .prices-page .price-card h2 { font-size: 29px !important; } .prices-subtitle { font-size: 14px; } }
