/* ===== حریم خصوصی (طرح «Privacy») =====
   روی home.css سوار است (رنگ‌ها، هدر، فوتر)؛ فقط بخش‌های خاص این صفحه اینجاست.
   متن حقوقی همان متن قبلی سایت است؛ فقط چیدمان عوض شده. */

.blob1 { top: -260px; right: -160px; height: 640px; width: 640px; background: radial-gradient(closest-side, rgba(48,111,87,.14), rgba(48,111,87,0)); }
.blob2 { top: 40px; left: -220px; height: 560px; width: 560px; background: radial-gradient(closest-side, rgba(0,167,157,.09), rgba(0,167,157,0)); }

/* ---------- هیرو ---------- */
.pvhero { position: relative; margin: 0 auto; max-width: 1100px; padding: 40px 24px 16px; }
.pv-card { position: relative; overflow: hidden; border-radius: 32px; border: 1px solid #dfeae3; background: linear-gradient(160deg, #f4f9f6 0%, #eaf4ef 55%, #e3f1ec 100%); padding: 56px 40px 72px; text-align: center; box-shadow: 0 1px 2px rgba(16,40,32,.04), 0 40px 80px -56px rgba(16,48,36,.45); }
.pv-m1 { pointer-events: none; position: absolute; bottom: -70px; left: -30px; height: 300px; opacity: .05; }
.pv-m2 { pointer-events: none; position: absolute; top: -60px; right: -40px; height: 200px; opacity: .04; transform: scaleX(-1); }
.pv-in { position: relative; display: flex; flex-direction: column; align-items: center; }
.pv-ic { display: inline-grid; height: 60px; width: 60px; place-items: center; border-radius: 18px; background: var(--grad); color: #ffffff; box-shadow: 0 18px 36px -18px rgba(39,88,63,.7); }
.pv-kick { margin-top: 18px; font-size: 13px; font-weight: 700; letter-spacing: .02em; color: var(--g); }
.pv-in h1 { margin: 10px 0 0; font-size: clamp(30px, 4.4vw, 48px); font-weight: 900; line-height: 1.35; letter-spacing: -.02em; color: var(--ink); }
.pv-in > p { margin: 16px 0 0; max-width: 40rem; font-size: clamp(15.5px, 1.5vw, 17px); line-height: 2.1; color: var(--sub); text-wrap: balance; }
.pv-pills { margin-top: 22px; display: flex; align-items: center; justify-content: center; gap: 8px; flex-wrap: wrap; }
.pv-pills span { display: inline-flex; align-items: center; gap: 7px; border-radius: 999px; border: 1px solid #d7e6dc; background: rgba(255,255,255,.85); padding: 6px 13px; font-size: 12.5px; font-weight: 600; color: var(--sub); }

/* سه تعهد روی لبه‌ی پایین کارت */
.pv-prom { position: relative; margin: -26px auto 0; max-width: 980px; overflow: hidden; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-radius: 24px; background: linear-gradient(135deg, #337a5e 0%, #27583f 55%, #1b4230 100%); box-shadow: 0 30px 60px -36px rgba(24,64,46,.7); }
.pv-prom > div { display: flex; align-items: center; gap: 14px; padding: 20px 22px; }
.pv-prom > div + div { border-right: 1px solid rgba(255,255,255,.12); }
.pv-prom span { display: grid; height: 42px; width: 42px; flex-shrink: 0; place-items: center; border-radius: 12px; background: rgba(255,255,255,.14); color: #ffffff; }
.pv-prom b { font-size: 14.5px; font-weight: 700; line-height: 1.8; color: #ffffff; }

/* ---------- متن + فهرست ---------- */
.pvbody { margin: 0 auto; max-width: 1040px; padding: 40px 24px 96px; display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 56px; align-items: start; }
.toc { position: sticky; top: 104px; }
.toc-box { display: flex; flex-direction: column; max-height: calc(100vh - 128px); border-radius: 22px; border: 1px solid #e3ece6; background: linear-gradient(180deg, #f6faf7, #ffffff); padding: 18px 14px 14px; box-shadow: 0 1px 2px rgba(16,40,32,.04), 0 24px 50px -40px rgba(16,48,36,.35); }
.toc-head { padding: 0 6px 12px; font-size: 13.5px; font-weight: 800; color: var(--ink); }
.toc-list { min-height: 0; overflow-y: auto; scrollbar-width: thin; display: flex; flex-direction: column; gap: 2px; }
.toc-list a { display: flex; align-items: flex-start; gap: 10px; border-radius: 12px; padding: 8px; font-size: 13px; line-height: 1.75; font-weight: 500; color: var(--soft); transition: all .2s; }
.toc-list a:hover { background: #ffffff; color: var(--gd); }
.toc-list a > span:last-child { min-width: 0; }
.toc-n { display: grid; flex-shrink: 0; height: 22px; min-width: 22px; margin-top: 1px; place-items: center; border-radius: 7px; font-size: 11px; font-weight: 800; background: #edf3ef; color: #6b8a79; }
.toc-list a.on { background: #ffffff; color: var(--ink); font-weight: 700; box-shadow: 0 1px 2px rgba(16,40,32,.06), 0 6px 14px -10px rgba(16,40,32,.25); }
.toc-list a.on .toc-n { background: var(--g); color: #ffffff; }
.pv-print { margin-top: 12px; display: flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid #d7e6dc; background: #ffffff; cursor: pointer; border-radius: 12px; padding: 10px; font-size: 13px; font-weight: 700; color: var(--gd); }
.pv-print:hover { background: #f2f6f3; }

.pv-paper { min-width: 0; border-radius: 28px; border: 1px solid #e6ece8; background: #ffffff; padding: 44px 48px; box-shadow: 0 1px 2px rgba(16,40,32,.03), 0 30px 70px -56px rgba(16,48,36,.35); }
.pv-sec { padding: 34px 0; border-top: 1px solid #edf2ee; }
.pv-sec:first-child { padding-top: 0; border-top: none; }
.pv-sec:last-child { padding-bottom: 0; }
/* html در home.css خودش scroll-padding-top: 88px دارد؛ جمع دو مقدار حدود ۱۰۰ پیکسل (مثل طرح). */
.pv-sec h2 { scroll-margin-top: 12px; display: flex; align-items: center; gap: 14px; margin: 0 0 18px; font-size: 23px; font-weight: 900; line-height: 1.6; color: var(--ink); }
.pv-n { display: grid; flex-shrink: 0; height: 38px; min-width: 38px; place-items: center; border-radius: 12px; background: var(--mint2); font-size: 14px; font-weight: 800; color: var(--g); }
.pv-sec p { margin: 0 0 16px; font-size: 16.5px; line-height: 2.15; color: #2f3833; text-wrap: pretty; }
.pv-sec > p:last-child { margin-bottom: 0; }

.pv-defs { margin: 0; overflow: hidden; border-radius: 20px; border: 1px solid #e3ece6; }
.pv-defs > div { display: grid; grid-template-columns: 170px minmax(0, 1fr); gap: 6px 20px; padding: 18px 20px; background: #ffffff; }
.pv-defs > div + div { border-top: 1px solid var(--line2); }
.pv-defs > div:nth-child(even) { background: #fafcfb; }
.pv-defs dt { font-size: 14.5px; font-weight: 800; line-height: 1.9; color: var(--gd); }
.pv-defs dd { margin: 0; font-size: 15px; line-height: 2; color: var(--sub); }

.pv-list { border-radius: 20px; border: 1px solid #e3ece6; background: #ffffff; padding: 4px 20px; }
.pv-list > div { display: flex; align-items: flex-start; gap: 14px; padding: 14px 0; font-size: 15.5px; line-height: 2; color: #2f3833; }
.pv-list > div + div { border-top: 1px solid #f0f3f1; }
.pv-list strong { font-weight: 800; color: var(--ink); }
.pv-dot { flex-shrink: 0; height: 8px; width: 8px; margin-top: 12px; border-radius: 999px; background: #5fa383; box-shadow: 0 0 0 4px #e8f3ed; }

.pv-btns { display: flex; gap: 10px; flex-wrap: wrap; }
.pv-btns a { display: inline-flex; align-items: center; border-radius: 12px; padding: 11px 18px; font-size: 14.5px; font-weight: 700; }
.pv-b1 { background: var(--grad); color: #ffffff; }
.pv-b1:hover { color: #ffffff; filter: brightness(1.06); }
.pv-b2 { border: 1px solid #cfe0d6; background: #ffffff; color: var(--gd); }
.pv-b2:hover { background: #f2f6f3; color: var(--gd); }

/* ---------- تبلت و موبایل ---------- */
@media (max-width: 900px) {
  .pvhero { padding: 24px 14px 8px; }
  .pv-card { padding: 36px 20px 56px; }
  .pvbody { padding: 24px 14px 64px; grid-template-columns: minmax(0, 1fr); }
  .toc { display: none; }
  .pv-paper { padding: 26px 20px; }
}
@media (max-width: 720px) {
  .pv-prom { grid-template-columns: minmax(0, 1fr); }
  .pv-prom > div + div { border-right: 0; border-top: 1px solid rgba(255,255,255,.12); }
  .pv-defs > div { grid-template-columns: minmax(0, 1fr); }
}

/* ---------- چاپ / PDF: فقط متن سند ---------- */
@media print {
  @page { margin: 16mm 14mm; }
  .aprog, .bg, .hdr, .foot, .toc, .pv-prom, .pv-pills, .pv-btns, .pv-m1, .pv-m2 { display: none !important; }
  .page, body { background: #ffffff; }
  .pvhero { padding: 0; }
  .pv-card { border: 0; box-shadow: none; background: none; padding: 0 0 12px; }
  .r0, .r1, .r2, .r3 { animation: none !important; opacity: 1 !important; transform: none !important; }
  .grad-text { background: none; color: var(--gd); -webkit-text-fill-color: var(--gd); }
  .pvbody { display: block; padding: 0; max-width: none; }
  .pv-paper { border: 0; box-shadow: none; padding: 0; }
  /* کل بخش نه (بخش اول بلند است و جای خالی بزرگ می‌گذاشت)؛ فقط هر ردیف نصفه نشود. */
  .pv-defs > div, .pv-list > div { break-inside: avoid; }
  .pv-sec h2 { break-after: avoid; }
}
