/* ─── Pricing page (nova/pricing) ────────────────────────────── */
.np-hero {
  background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 60%, #000000 100%);
  padding: 80px 0 64px; text-align:center; color:#fff;
}
.np-hero-badge { display:inline-block; background:rgba(245,158,11,.18); color:#fbbf24; border:1px solid rgba(245,158,11,.35); padding:5px 18px; border-radius:99px; font-size:.8rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; margin-bottom:20px; }
.np-hero h1 { font-size:clamp(2rem,4vw,3rem); font-weight:900; margin:0 0 14px; letter-spacing:-.04em; }
.np-hero h1 em { font-style:normal; background:linear-gradient(90deg,#34d399,#6ee7b7); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.np-hero p { font-size:1.1rem; color:rgba(255,255,255,.75); max-width:580px; margin:0 auto 24px; line-height:1.7; }
.np-trial-notice { display:inline-block; background:rgba(16,185,129,.15); border:1px solid rgba(16,185,129,.3); color:#6ee7b7; border-radius:10px; padding:10px 24px; font-size:.9rem; }

.np-section { max-width:1200px; margin:0 auto; padding:60px 24px; }
.np-tabs { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:40px; }
.np-tab { padding:10px 24px; border-radius:99px; border:2px solid var(--n-border); background:#fff; font-size:.9rem; font-weight:600; color:var(--n-text-muted); cursor:pointer; transition:var(--n-transition); font-family:inherit; }
.np-tab.active { border-color:var(--n-primary); background:var(--n-primary); color:#fff; }
.np-tab:hover:not(.active) { border-color:var(--n-primary); color:var(--n-primary); }

.np-plans-wrap { display:none; }
.np-plans-wrap.active { display:block; }

.np-type-hd { display:flex; align-items:flex-start; gap:20px; margin-bottom:28px; padding-bottom:24px; border-bottom:1px solid var(--n-border); }
.np-type-icon { font-size:2.4rem; line-height:1; }
.np-type-info h2 { font-size:1.3rem; font-weight:800; color:var(--n-text); margin:0 0 4px; }
.np-type-info p { font-size:.9rem; color:var(--n-text-muted); margin:0; }
.np-billing-tag { display:inline-block; background:var(--n-bg); color:var(--n-text-muted); border-radius:6px; padding:3px 10px; font-size:.78rem; font-weight:600; margin-top:6px; }

.np-tiers-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(175px,1fr)); gap:16px; margin-bottom:28px; }
.np-tier { background:#fff; border:2px solid var(--n-border); border-radius:16px; padding:24px 18px; position:relative; transition:var(--n-transition); }
.np-tier:hover { border-color:var(--n-primary-l); box-shadow:var(--n-shadow); transform:translateY(-3px); }
.np-tier.popular { border-color:var(--n-primary); box-shadow:0 0 0 3px rgba(5,150,105,.1); }
.np-tier-badge { position:absolute; top:-12px; left:50%; transform:translateX(-50%); background:var(--n-primary); color:#fff; font-size:.7rem; font-weight:700; padding:4px 14px; border-radius:99px; text-transform:uppercase; letter-spacing:.07em; white-space:nowrap; }
.np-tier-name { font-size:.88rem; font-weight:700; color:var(--n-text-muted); margin:0 0 6px; }
.np-tier-price { font-size:1.9rem; font-weight:900; color:var(--n-text); letter-spacing:-.04em; line-height:1.1; }
.np-tier-per   { font-size:.8rem; color:var(--n-text-muted); margin:2px 0 12px; }
.np-tier-gb    { background:var(--n-bg); border-radius:8px; padding:6px 10px; font-size:.83rem; text-align:center; color:var(--n-text-muted); margin-bottom:14px; }
.np-tier-cta   { display:block; width:100%; padding:10px; border-radius:10px; text-align:center; font-size:.85rem; font-weight:700; background:var(--n-primary); color:#fff; border:none; cursor:pointer; transition:var(--n-transition); text-decoration:none; font-family:inherit; }
.np-tier-cta:hover { opacity:.85; text-decoration:none; }
.np-tier-cta.outline { background:transparent; border:2px solid var(--n-primary); color:var(--n-primary); }
.np-tier-cta.outline:hover { background:var(--n-primary); color:#fff; }

.np-feats-strip { background:var(--n-bg); border-radius:14px; padding:24px 28px; }
.np-feats-title { font-size:.92rem; font-weight:700; color:var(--n-text); margin:0 0 14px; }
.np-feats-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:8px; list-style:none; }
.np-feats-list li { display:flex; align-items:center; gap:8px; font-size:.87rem; color:var(--n-text-muted); }
.np-feats-list li::before { content:'✓'; color:#111827; font-weight:800; flex-shrink:0; }

.np-compare { max-width:1200px; margin:0 auto; padding:0 24px 60px; }
.np-compare-title { font-size:1.4rem; font-weight:800; color:var(--n-text); margin:0 0 8px; }
.np-compare-sub { color:var(--n-text-muted); margin:0 0 28px; font-size:.95rem; }
.np-table { width:100%; border-collapse:separate; border-spacing:0; border-radius:14px; overflow:hidden; border:1px solid var(--n-border); background:#fff; }
.np-table th { background:var(--n-bg); padding:14px 18px; text-align:left; font-size:.82rem; font-weight:700; color:var(--n-text-muted); border-bottom:1px solid var(--n-border); }
.np-table td { padding:14px 18px; font-size:.9rem; color:var(--n-text-muted); border-bottom:1px solid #f8fafc; }
.np-table tr:last-child td { border-bottom:none; }
.np-table tr:hover td { background:#fafafa; }
.np-table td:first-child { font-weight:700; color:var(--n-text); }
.np-table .best { color:var(--n-primary); font-weight:700; }

.np-faq { max-width:820px; margin:0 auto; padding:0 24px 80px; }
.np-faq-title { font-size:1.55rem; font-weight:800; color:var(--n-text); margin:0 0 32px; text-align:center; letter-spacing:-.03em; }
.np-faq-item { border:1px solid var(--n-border); border-radius:12px; margin-bottom:10px; overflow:hidden; }
.np-faq-q { width:100%; background:#fff; border:none; padding:18px 22px; font-size:.95rem; font-weight:600; color:var(--n-text); text-align:left; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:12px; font-family:inherit; }
.np-faq-icon { font-size:1.3rem; color:var(--n-primary); flex-shrink:0; transition:.2s; }
.np-faq-a { display:none; padding:0 22px 18px; font-size:.9rem; color:var(--n-text-muted); line-height:1.75; }

.np-cta { background:linear-gradient(135deg, var(--n-primary-d), #0a0a0a); padding:72px 24px; text-align:center; color:#fff; }
.np-cta h2 { font-size:2rem; font-weight:900; margin:0 0 12px; letter-spacing:-.03em; }
.np-cta p { color:rgba(255,255,255,.75); font-size:1.05rem; margin:0 0 28px; }
.np-cta-btns { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }
.np-cta-btns a { padding:14px 32px; border-radius:10px; font-size:1rem; font-weight:700; transition:var(--n-transition); }
.np-cta-btns .solid { background:#fff; color:var(--n-primary); }
.np-cta-btns .outline { border:2px solid rgba(255,255,255,.4); color:#fff; }
.np-cta-btns a:hover { opacity:.88; text-decoration:none; }

@media(max-width:768px) {
  .np-tiers-grid { grid-template-columns:repeat(2,1fr); }
  .np-type-hd { flex-direction:column; gap:10px; }
  .np-compare { overflow-x:auto; }
}
@media(max-width:480px) {
  .np-tiers-grid { grid-template-columns:1fr; }
  .np-tabs { gap:6px; }
  .np-tab { padding:8px 14px; font-size:.82rem; }
}
