/* ── Persian pages shared styles (RTL) ── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --black:#070707; --dark:#0c0c0c; --surface:#121212; --dim:#222; --white:#F3F1ED;
  --muted:#6E6A63; --faint:#1E1E1E; --accent:#B08B5A;
  --F:'Vazirmatn', -apple-system, sans-serif;
}
html { scroll-behavior: smooth; }
body { background: var(--black); color: var(--white); font-family: var(--F); overflow-x: hidden; }
body::after { content:''; position:fixed; inset:0; opacity:.04; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 300 300' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); pointer-events:none; z-index:9000; }
::selection { background: rgba(176,139,90,.4); color:#fff; }
:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }

/* NAV */
nav { position:fixed; top:0; right:0; left:0; z-index:500; height:60px; display:flex; align-items:center; justify-content:space-between; padding:0 44px; background:rgba(7,7,7,.85); backdrop-filter:blur(24px); -webkit-backdrop-filter:blur(24px); border-bottom:1px solid rgba(255,255,255,.05); }
.nav-logo { font-size:14px; font-weight:700; color:var(--white); text-decoration:none; }
.nav-links { display:flex; gap:26px; list-style:none; }
.nav-links a { font-size:12.5px; font-weight:400; color:rgba(243,241,237,.5); text-decoration:none; transition:color 180ms; }
.nav-links a:hover, .nav-links a.active { color:var(--white); }
.nav-en { font-size:12px; color:var(--muted); text-decoration:none; transition:color 180ms; }
.nav-en:hover { color:var(--white); }

/* HERO (hub) */
.hero { min-height:100vh; min-height:100dvh; display:flex; flex-direction:column; justify-content:center; padding:120px 44px 80px; max-width:900px; margin:0 auto; }
.eyebrow { font-size:12px; font-weight:500; letter-spacing:.06em; color:var(--accent); margin-bottom:18px; }
.hero h1 { font-size:clamp(34px,5.8vw,64px); font-weight:800; line-height:1.35; margin-bottom:22px; }
.lead { font-size:16.5px; font-weight:300; color:rgba(243,241,237,.72); line-height:2.15; max-width:660px; margin-bottom:40px; }
.lead strong { color:var(--white); font-weight:600; }
.stats { display:flex; gap:40px; padding:28px 0; border-top:1px solid var(--faint); border-bottom:1px solid var(--faint); margin-bottom:40px; flex-wrap:wrap; }
.stat-n { font-size:30px; font-weight:800; color:var(--white); line-height:1; }
.stat-l { font-size:12px; font-weight:300; color:var(--muted); margin-top:8px; }
.ctas { display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
.btn-wa { display:inline-flex; align-items:center; gap:10px; font-size:15px; font-weight:700; color:var(--black); background:var(--white); padding:15px 34px; border-radius:100px; text-decoration:none; transition:opacity 180ms, transform 240ms cubic-bezier(.22,1,.36,1); }
.btn-wa:hover { opacity:.88; transform:translateY(-2px); }
.btn-wa svg { width:18px; height:18px; fill:#25D366; }
.btn-ghost { font-size:13.5px; font-weight:400; color:rgba(243,241,237,.55); text-decoration:none; padding:15px 10px; transition:color 180ms; }
.btn-ghost:hover { color:var(--white); }

/* SECTIONS */
.sec { max-width:900px; margin:0 auto; padding:80px 44px; }
.sec + .sec { border-top:1px solid var(--faint); }
.sec h2, article h2 { font-size:clamp(23px,3.2vw,34px); font-weight:800; line-height:1.45; margin-bottom:22px; }
.sec p, article p { font-size:15px; font-weight:300; color:rgba(243,241,237,.68); line-height:2.2; margin-bottom:16px; }
.sec p strong, article p strong { color:var(--white); font-weight:600; }
.sec a, article a { color:var(--accent); text-decoration:none; border-bottom:1px solid rgba(176,139,90,.35); transition:border-color 160ms; }
.sec a:hover, article a:hover { border-color:var(--accent); }

.steps { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--faint); border:1px solid var(--faint); border-radius:12px; overflow:hidden; margin-top:32px; }
.step { background:var(--dark); padding:32px 28px; }
.step-n { font-size:13px; font-weight:700; color:var(--accent); margin-bottom:14px; }
.step-t { font-size:17px; font-weight:700; margin-bottom:10px; }
.step-b { font-size:13px; font-weight:300; color:rgba(243,241,237,.55); line-height:2.05; }

.gv-band { border:1px solid rgba(176,139,90,.3); background:rgba(176,139,90,.05); border-radius:12px; padding:26px 30px; margin-top:36px; }
.gv-band p { margin-bottom:0; font-size:14px; }
.gv-band strong { color:var(--accent); }

/* TESTIMONIALS (fa) */
.testi-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:8px; }
.testi { background:var(--dark); border:1px solid var(--faint); border-radius:12px; padding:28px 30px; }
.testi-stars { color:var(--accent); font-size:13px; letter-spacing:3px; margin-bottom:14px; }
.testi-q { font-size:13.5px !important; line-height:2.15 !important; color:rgba(243,241,237,.66) !important; margin-bottom:16px !important; }
.testi-n { font-size:12.5px; font-weight:600; color:var(--white); }

.final { text-align:center; padding:100px 44px 110px; }
.final h2 { margin-bottom:14px; }
.final p { max-width:500px; margin:0 auto 36px; }

/* ARTICLE LAYOUT */
main.art { max-width:760px; margin:0 auto; padding:130px 28px 90px; }
.crumbs { font-size:12px; color:var(--muted); margin-bottom:34px; }
.crumbs a { color:var(--muted); text-decoration:none; border-bottom:none; }
.crumbs a:hover { color:var(--white); }
.crumbs span { margin:0 8px; opacity:.5; }
.art-eyebrow { font-size:11px; font-weight:600; letter-spacing:.05em; color:var(--accent); margin-bottom:16px; }
article h1 { font-size:clamp(28px,4.4vw,42px); font-weight:800; line-height:1.5; margin-bottom:20px; }
.dek { font-size:16px; font-weight:300; color:rgba(243,241,237,.76); line-height:2.15; margin-bottom:26px; }
.dek strong { color:var(--white); font-weight:600; }
.byline { display:flex; align-items:center; gap:12px; padding:18px 0; border-top:1px solid var(--faint); border-bottom:1px solid var(--faint); margin-bottom:40px; }
.byline-avatar { width:38px; height:38px; border-radius:50%; object-fit:cover; }
.byline-name { font-size:13px; font-weight:700; color:var(--white); }
.byline-meta { font-size:11.5px; color:var(--muted); margin-top:2px; }
article h2 { margin-top:44px; margin-bottom:14px; font-size:clamp(20px,2.6vw,26px); }
article h3 { font-size:16px; font-weight:700; margin:26px 0 10px; }
article ul, article ol { margin:0 20px 18px 0; }
article li { font-size:14.5px; font-weight:300; color:rgba(243,241,237,.68); line-height:2.15; margin-bottom:9px; }
article li strong { color:var(--white); font-weight:600; }

.tbl-wrap { overflow-x:auto; margin:22px 0 28px; border:1px solid var(--faint); border-radius:8px; }
table { width:100%; border-collapse:collapse; font-size:13px; min-width:480px; }
th { text-align:right; font-size:11px; font-weight:700; color:var(--muted); padding:13px 16px; border-bottom:1px solid var(--faint); background:var(--dark); white-space:nowrap; }
td { padding:13px 16px; border-bottom:1px solid var(--faint); color:rgba(243,241,237,.72); font-weight:300; line-height:1.9; vertical-align:top; }
tr:last-child td { border-bottom:none; }
td strong { color:var(--white); font-weight:600; }

.note { border-right:2px solid var(--accent); border-left:none; background:rgba(176,139,90,.05); padding:16px 20px; border-radius:6px 0 0 6px; margin:24px 0; }
.note p { margin-bottom:0; font-size:13px; }

.faq { margin-top:50px; padding-top:36px; border-top:1px solid var(--faint); }
.faq-label { font-size:11px; font-weight:700; color:var(--muted); margin-bottom:22px; }
.faq-item { padding:20px 0; border-bottom:1px solid var(--faint); }
.faq-item:last-child { border-bottom:none; }
.faq-q { font-size:15.5px; font-weight:700; color:var(--white); margin-bottom:10px; line-height:1.7; }
.faq-a { font-size:13.5px; font-weight:300; color:rgba(243,241,237,.62); line-height:2.1; }

.art-cta { margin-top:52px; padding:38px 34px; border:1px solid var(--faint); border-radius:10px; background:var(--dark); text-align:center; position:relative; overflow:hidden; }
.art-cta::before { content:''; position:absolute; right:50%; top:-60px; transform:translateX(50%); width:420px; height:220px; pointer-events:none; background:radial-gradient(ellipse, rgba(176,139,90,.09), transparent 70%); }
.art-cta p { font-size:14.5px; font-weight:300; color:rgba(243,241,237,.7); line-height:2.1; max-width:480px; margin:0 auto 24px; position:relative; }

.related { margin-top:52px; }
.related-label { font-size:11px; font-weight:700; color:var(--muted); margin-bottom:16px; }
.related-list { list-style:none; margin:0; }
.related-list li { margin:0; border-bottom:1px solid var(--faint); }
.related-list li:last-child { border-bottom:none; }
.related-list a { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px 2px; font-size:14px; font-weight:400; color:rgba(243,241,237,.72); text-decoration:none; border-bottom:none; transition:color 180ms; }
.related-list a:hover { color:var(--white); }
.related-list a::after { content:'←'; color:var(--muted); flex-shrink:0; }

/* FOOTER */
footer { padding:22px 44px; border-top:1px solid var(--faint); display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; background:var(--dark); }
.foot-mark { font-size:13px; font-weight:700; }
.foot-note { font-size:12px; color:var(--muted); }
.foot-links { display:flex; gap:18px; }
.foot-links a, footer a { color:var(--muted); text-decoration:none; font-size:12px; transition:color 150ms; }
.foot-links a:hover, footer a:hover { color:var(--white); }

@keyframes rise { from { opacity:0; transform:translateY(24px); } }
.hero > * { animation: rise .8s cubic-bezier(.22,1,.36,1) both; }
.hero > *:nth-child(2) { animation-delay:.1s; } .hero > *:nth-child(3) { animation-delay:.2s; }
.hero > *:nth-child(4) { animation-delay:.3s; } .hero > *:nth-child(5) { animation-delay:.4s; }

@media (max-width:768px) {
  nav { padding:0 18px; }
  .nav-links { gap:14px; }
  .nav-links a { font-size:11px; }
  .hero { padding:100px 22px 60px; }
  .sec { padding:56px 22px; }
  .steps { grid-template-columns:1fr; }
  .testi-grid { grid-template-columns:1fr; }
  .stats { gap:26px; }
  .final { padding:70px 22px 80px; }
  main.art { padding:110px 20px 70px; }
  footer { padding:16px 22px; }
}
@media (prefers-reduced-motion: reduce) { * { animation:none !important; transition:none !important; } }
