
.hero { background: linear-gradient(135deg, #fdfbf5 0%, #e8e5db 100%); border-bottom: 1px solid var(--line); }
.brand-mark { width: 74px; height: 74px; border-radius: 50%; display: grid; place-items: center; background: var(--ink); color: #fff; font: italic 700 2.7rem/1 Georgia, serif; box-shadow: 0 8px 24px rgba(0,0,0,.12); }
.eyebrow, .section-kicker { text-transform: uppercase; letter-spacing: .16em; font-size: .76rem; font-weight: 700; color: var(--accent); }
.hero h1 { font-family: Georgia, "Times New Roman", serif; letter-spacing: -.025em; }
.hero .lead { color: var(--muted); }
.price-card { overflow: hidden; border: 1px solid var(--line); border-radius: 1.1rem; background: var(--surface); }
.section-heading { padding: 1.35rem 1.5rem; border-bottom: 1px solid var(--line); background: rgba(231,232,223,.45); }
.section-heading h2 { font-family: Georgia, "Times New Roman", serif; }
.season-legend { color: var(--muted); font-size: .82rem; text-align: right; }
.season-legend span { color: var(--accent); font-weight: 700; }
.price-table > :not(caption) > * > * { padding: 1rem 1.5rem; border-color: var(--line); background: transparent; }
.price-table thead th { color: var(--muted); text-transform: uppercase; letter-spacing: .06em; font-size: .74rem; font-weight: 700; white-space: nowrap; }
.price-table thead th small { font-size: .84rem; font-weight: 700; }

.price-table td strong { display: block; font-weight: 650; }
.price-table td small { display: block; margin-top: .2rem; color: var(--muted); }


.price-table .price { min-width: 145px; text-align: right; white-space: nowrap; font-size: 1.06rem; font-weight: 750; font-variant-numeric: tabular-nums; }
.price-table tbody tr:hover { background: #f4f3ed; }
.note { color: var(--muted); font-size: .9rem; }

@media (max-width: 767.98px) {
  .hero { padding-top: 2.25rem !important; padding-bottom: 2.25rem !important; }
  .hero h1 { font-size: 2.25rem; }
  main.container { padding-top: 2rem !important; padding-bottom: 2rem !important; }
  .season-legend { text-align: left; }
  .price-table > :not(caption) > * > * { padding: .85rem .9rem; }
  .price-table .price { min-width: 100px; font-size: .96rem; }
  
  
  
  
}
