/* plans.css — shared styles for single-plan pages (basic.html, pro.html,
   enterprise.html), extracted from inline <style> blocks because the site
   CSP's style-src has no 'unsafe-inline' */

.plan-page { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 100px 24px 64px; }
.plan-card { max-width: 540px; width: 100%; background: var(--s1); border: 1px solid var(--bd); border-radius: 20px; padding: 48px 44px; }
.plan-card.plan-card-featured { border: 1px solid rgba(34,211,238,.25); }
.plan-name { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 2px; color: var(--mu); margin-bottom: 16px; }
.plan-popular { display: inline-block; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .4px; background: var(--acd); color: var(--ac); padding: 3px 10px; border-radius: 4px; margin-left: 8px; }
.plan-card h1 { font-family: 'Bricolage Grotesque', sans-serif; font-size: 42px; font-weight: 800; letter-spacing: -2px; color: var(--wh); margin: 0 0 6px; }
.plan-price { font-size: 15px; color: var(--ac); margin-bottom: 32px; font-weight: 500; }
.plan-feats { list-style: none; margin: 0 0 36px; border-top: 1px solid var(--bd); }
.plan-feats li { display: flex; align-items: center; gap: 12px; padding: 14px 0; border-bottom: 1px solid var(--bd); font-size: 14px; color: var(--su); }
.plan-feats li i { color: var(--ac); font-size: 12px; flex-shrink: 0; }
.plan-price-sub { font-size: 22px; font-weight: 600; color: var(--mu); }
.plan-cta-btn { display: block; text-align: center; width: 100%; box-sizing: border-box; }
.plan-back { text-align: center; font-size: 12px; color: var(--mu); margin-top: 14px; }
.plan-back a { color: var(--ac); text-decoration: none; }
@media(max-width:540px) { .plan-card { padding: 36px 24px; } }
