/* VoltSight storefront additions. Uses the variables from /styles.css. */
.tier-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; padding: 20px 0 40px; }
.tier { background: var(--bg-2); border: 1px solid var(--line); border-radius: 16px; padding: 32px; display: flex; flex-direction: column; }
.tier.featured { border-color: var(--teal); }
.tier h2 { font-family: var(--display); font-size: 1.3rem; font-weight: 600; margin: 0 0 6px; }
.tier .price { font-family: var(--display); font-size: 2.2rem; font-weight: 700; margin: 0 0 4px; color: var(--ink); }
.tier .price-note { color: var(--muted-dim); font-size: 0.85rem; margin: 0 0 20px; }
.tier p { color: var(--muted); font-size: 0.95rem; line-height: 1.6; margin: 0 0 18px; }
.tier .checklist { margin-bottom: 26px; flex: 1; }
.tier .cta { align-self: flex-start; }
.cta { display: inline-flex; align-items: center; background: var(--teal); color: #002018; font-weight: 600; font-size: 0.95rem; text-decoration: none; padding: 12px 22px; border-radius: 10px; transition: opacity 0.15s ease; }
.cta:hover { opacity: 0.88; }
.fine { color: var(--muted-dim); font-size: 0.88rem; line-height: 1.65; max-width: 70ch; padding-bottom: 12px; }
.fine a, .doc-section a { color: var(--teal-soft); }
.card .fine { padding-bottom: 0; }
.buy-facts { padding: 0 0 100px; }
.buy-facts .checklist li { font-size: 0.95rem; }
@media (max-width: 860px) { .tier-grid { grid-template-columns: 1fr; } }
