/* =====================================================
   Prime Property Adda - Plans / Pricing page
   Load order: site.css -> pages.css -> plans.css
   Rules: sirf px units | har class parent .pp-site ke andar scoped
   ===================================================== */
.pp-site .pp-plans-sec { background:linear-gradient(180deg,#F4F6FD 0%,#FFFFFF 100%); }

/* ---------- Billing tabs ---------- */
.pp-site .pp-pl-top { display:flex; flex-direction:column; align-items:center; gap:18px; margin:0 0 44px; text-align:center; }
.pp-site .pp-pl-tabs { display:inline-flex; gap:6px; padding:6px; border-radius:40px; background:#fff; border:1px solid var(--pp-line); box-shadow:var(--pp-shadow); }
.pp-site .pp-pl-tab { position:relative; display:inline-flex; align-items:center; gap:8px; height:46px; padding:0 26px; border:0; border-radius:30px; background:transparent; font-size:15px; font-weight:700; color:var(--pp-text); cursor:pointer; transition:background 0.2s, color 0.2s; }
.pp-site .pp-pl-tab em { padding:2px 9px; border-radius:20px; background:#E7F8F0; color:#0A8A50; font-size:11px; font-style:normal; font-weight:800; }
.pp-site .pp-pl-tab:hover { color:var(--pp-primary); }
.pp-site .pp-pl-tab.is-on { background:var(--pp-primary); color:#fff; box-shadow:0 8px 20px rgba(52,84,209,0.32); }
.pp-site .pp-pl-tab.is-on em { background:rgba(255,255,255,0.22); color:#fff; }
.pp-site .pp-pl-note { display:inline-flex; align-items:center; gap:10px; padding:10px 20px; border-radius:30px; background:#FEF3E2; color:#8A5200; font-size:14px; }
.pp-site .pp-pl-note i { color:var(--pp-amber); }

/* ---------- Plan sets (billing cycle) ---------- */
.js .pp-site .pp-pl-set:not(.is-on) { display:none; }
.pp-site .pp-pl-set + .pp-pl-set { margin-top:56px; }
.pp-site .pp-pl-grid { display:grid; gap:26px; align-items:stretch; justify-content:center; grid-template-columns:repeat(auto-fit, minmax(270px, 340px)); }

/* ---------- Plan card ---------- */
.pp-site .pp-plan { position:relative; display:flex; flex-direction:column; padding:36px 30px 32px; background:#fff; border:1.5px solid var(--pp-line); border-radius:28px; box-shadow:var(--pp-shadow); transition:transform 0.25s, box-shadow 0.25s, border-color 0.25s; }
.pp-site .pp-plan:hover { transform:translateY(-8px); box-shadow:var(--pp-shadow-lg); border-color:var(--pp-primary); }
.pp-site .pp-plan.is-popular { border:0; color:#fff; background:linear-gradient(160deg,#101A4A 0%,#25399A 55%,#3454D1 100%); box-shadow:0 30px 70px rgba(52,84,209,0.4); transform:translateY(-14px); }
.pp-site .pp-plan.is-popular:hover { transform:translateY(-22px); }
.pp-site .pp-plan.is-popular::before { content:""; position:absolute; width:220px; height:220px; right:-70px; top:-90px; border-radius:50%; background:radial-gradient(circle,rgba(247,144,9,0.55),transparent 70%); pointer-events:none; }
.pp-site .pp-plan-ribbon { position:absolute; top:-15px; left:50%; transform:translateX(-50%); display:inline-flex; align-items:center; gap:8px; padding:7px 18px; border-radius:30px; background:var(--pp-amber); color:#fff; font-size:12px; font-weight:800; letter-spacing:0.5px; white-space:nowrap; box-shadow:0 10px 22px rgba(247,144,9,0.45); }
.pp-site .pp-plan-ic { width:60px; height:60px; margin:0 0 18px; border-radius:18px; background:var(--pp-primary-soft); color:var(--pp-primary); display:flex; align-items:center; justify-content:center; font-size:24px; }
.pp-site .pp-plan.is-free .pp-plan-ic { background:#E7F8F0; color:var(--pp-green); }
.pp-site .pp-plan.is-popular .pp-plan-ic { background:rgba(255,255,255,0.16); color:#fff; }
.pp-site .pp-plan-name { font-size:22px; line-height:28px; font-weight:800; letter-spacing:-0.3px; color:var(--pp-navy); }
.pp-site .pp-plan.is-popular .pp-plan-name { color:#fff; }
.pp-site .pp-plan-desc { min-height:48px; margin:8px 0 18px; font-size:14px; line-height:24px; color:var(--pp-muted); }
.pp-site .pp-plan.is-popular .pp-plan-desc { color:#D5DCF7; }
.pp-site .pp-plan-price { display:flex; align-items:baseline; gap:6px; }
.pp-site .pp-plan-price b { font-size:46px; line-height:52px; font-weight:800; letter-spacing:-1.4px; color:var(--pp-navy); }
.pp-site .pp-plan-price span { font-size:15px; font-weight:600; color:var(--pp-muted); }
.pp-site .pp-plan.is-popular .pp-plan-price b { color:#fff; }
.pp-site .pp-plan.is-popular .pp-plan-price span { color:#C5CEF3; }
.pp-site .pp-plan-sub { display:block; min-height:20px; margin:2px 0 22px; font-size:13px; font-weight:600; color:var(--pp-green); }
.pp-site .pp-plan.is-popular .pp-plan-sub { color:#8EF0C3; }
.pp-site .pp-plan-cta { width:100%; margin:0 0 26px; }
.pp-site .pp-plan-feat { display:flex; flex-direction:column; gap:14px; margin-top:auto; padding-top:24px; border-top:1px dashed var(--pp-line); }
.pp-site .pp-plan.is-popular .pp-plan-feat { border-top-color:rgba(255,255,255,0.25); }
.pp-site .pp-plan-feat li { display:flex; align-items:flex-start; gap:12px; font-size:14px; line-height:22px; font-weight:500; color:var(--pp-text); }
.pp-site .pp-plan-feat i { width:22px; height:22px; flex:none; margin-top:0; border-radius:50%; background:#E7F8F0; color:var(--pp-green); display:flex; align-items:center; justify-content:center; font-size:11px; }
.pp-site .pp-plan.is-popular .pp-plan-feat li { color:#EEF1FF; }
.pp-site .pp-plan.is-popular .pp-plan-feat i { background:rgba(255,255,255,0.18); color:#8EF0C3; }

/* ---------- Compare table ---------- */
.pp-site .pp-pl-compare { margin:70px 0 0; }
.pp-site .pp-pl-h2 { margin:0 0 22px; text-align:center; font-size:30px; line-height:38px; font-weight:800; letter-spacing:-0.6px; color:var(--pp-navy); }
.pp-site .pp-pl-scroll { overflow-x:auto; border:1px solid var(--pp-line); border-radius:24px; background:#fff; box-shadow:var(--pp-shadow); }
.pp-site .pp-pl-table { width:100%; min-width:640px; border-collapse:collapse; }
.pp-site .pp-pl-table th { padding:20px 22px; text-align:center; font-size:15px; font-weight:800; color:var(--pp-navy); background:#F8F9FE; border-bottom:1px solid var(--pp-line); }
.pp-site .pp-pl-table th:first-child, .pp-site .pp-pl-table td:first-child { text-align:left; }
.pp-site .pp-pl-table td { padding:16px 22px; text-align:center; font-size:14px; color:var(--pp-text); border-bottom:1px solid #EEF1F9; }
.pp-site .pp-pl-table td:first-child { font-weight:600; color:var(--pp-navy); }
.pp-site .pp-pl-table tbody tr:last-child td { border-bottom:0; }
.pp-site .pp-pl-table tbody tr:hover { background:#FAFBFF; }
.pp-site .pp-pl-table td b { font-size:16px; color:var(--pp-primary); }
.pp-site .pp-pl-table small { color:var(--pp-muted); }
.pp-site .pp-pl-table .pp-yes { color:var(--pp-green); font-size:17px; }
.pp-site .pp-pl-table .pp-no { color:#C5CBDB; }

/* ---------- Trust strip ---------- */
.pp-site .pp-pl-trust { display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:20px; margin:70px 0 0; padding:34px 20px; border-radius:26px; background:#fff; border:1px solid var(--pp-line); box-shadow:var(--pp-shadow); }
.pp-site .pp-pl-trust > div { display:flex; flex-direction:column; align-items:center; text-align:center; gap:2px; }
.pp-site .pp-pl-trust span { width:58px; height:58px; margin-bottom:10px; border-radius:18px; background:var(--pp-primary-soft); color:var(--pp-primary); display:flex; align-items:center; justify-content:center; font-size:22px; }
.pp-site .pp-pl-trust > div:nth-child(2) span { background:#E7F8F0; color:var(--pp-green); }
.pp-site .pp-pl-trust > div:nth-child(3) span { background:#FEF3E2; color:var(--pp-amber); }
.pp-site .pp-pl-trust > div:nth-child(4) span { background:#F0ECFE; color:var(--pp-violet); }
.pp-site .pp-pl-trust b { font-size:16px; color:var(--pp-navy); }
.pp-site .pp-pl-trust small { font-size:13px; color:var(--pp-muted); }

/* ---------- FAQ ---------- */
.pp-site .pp-pl-faq-wrap { display:grid; grid-template-columns:minmax(0,0.8fr) minmax(0,1.2fr); gap:56px; align-items:start; margin:80px 0 0; }
.pp-site .pp-pl-faq-intro .pp-btn { margin-top:24px; }

/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
  .pp-site .pp-pl-faq-wrap { grid-template-columns:minmax(0,1fr); gap:32px; }
  .pp-site .pp-pl-trust { grid-template-columns:repeat(2, minmax(0,1fr)); }
}
@media (max-width: 680px) {
  .pp-site .pp-pl-tabs { flex-wrap:wrap; justify-content:center; border-radius:24px; }
  .pp-site .pp-pl-tab { padding:0 18px; height:42px; font-size:14px; }
  .pp-site .pp-pl-grid { grid-template-columns:minmax(0,1fr); }
  .pp-site .pp-plan.is-popular, .pp-site .pp-plan.is-popular:hover { transform:none; }
  .pp-site .pp-plan-price b { font-size:38px; line-height:44px; }
  .pp-site .pp-pl-trust { grid-template-columns:minmax(0,1fr); }
  .pp-site .pp-pl-h2 { font-size:24px; line-height:32px; }
}
