/* ── منتخب عمران · استایل مجله (هم‌خانواده سایت اصلی) ─────────── */
@font-face{
  font-family:'Vazirmatn';font-display:swap;font-weight:100 900;
  src:url('../fonts/Vazirmatn.woff2') format('woff2-variations'),url('../fonts/Vazirmatn.woff2') format('woff2');
}
:root{
  --bg:#0f1215;--bg2:#161b1f;--ink:#eef3f6;--mut:#9fb0b7;
  --acc:#6fb9ba;--acc2:#a3dddd;--line:rgba(255,255,255,.09);
  --card:rgba(22,28,32,.72);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:
    radial-gradient(60% 40% at 80% 0%,rgba(111,185,186,.08),transparent 60%),
    radial-gradient(50% 35% at 10% 100%,rgba(111,185,186,.06),transparent 60%),
    var(--bg);
  color:var(--ink);font-family:'Vazirmatn',Tahoma,sans-serif;
  font-size:16px;line-height:2;min-height:100vh;
}
img{max-width:100%;display:block}
a{color:var(--acc2)}
h1,h2,h3{line-height:1.7;margin:0}
.lat{direction:ltr;unicode-bidi:isolate}

/* ── هدر ── */
.b-head{
  position:sticky;top:0;z-index:50;display:flex;align-items:center;
  justify-content:space-between;gap:16px;padding:14px 5vw;
  background:rgba(12,15,18,.72);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.b-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.b-brand img{width:42px;height:42px;object-fit:contain}
.b-brand span{font-weight:300;font-size:1.15rem}
.b-brand b{font-weight:600;color:var(--acc2)}
.b-brand small{display:block;font-size:.62rem;color:var(--mut);letter-spacing:0}
.b-nav{display:flex;align-items:center;gap:6px}
.b-nav a{
  color:var(--mut);text-decoration:none;font-size:.92rem;padding:8px 14px;
  border-radius:99px;transition:.25s;
}
.b-nav a:hover{color:var(--ink);background:rgba(255,255,255,.05)}
.b-nav a.on{color:var(--acc2);background:rgba(111,185,186,.12)}
.b-nav .b-cta{color:#0c1214;background:var(--acc2);font-weight:600}
.b-nav .b-cta:hover{background:var(--acc);color:#0c1214}

/* ── بدنه ── */
.b-main{max-width:1180px;margin:0 auto;padding:0 5vw 80px}
.b-kicker{color:var(--acc2);font-size:.92rem;margin-bottom:10px}
.b-hero{padding:80px 0 40px;text-align:center}
.b-hero h1{font-size:clamp(1.8rem,4.6vw,3rem);font-weight:300}
.b-lede{color:var(--mut);max-width:640px;margin:14px auto 0;font-size:1.02rem}

/* ── شبکه کارت‌ها ── */
.b-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:26px;margin-top:26px}
.b-card{
  background:var(--card);border:1px solid var(--line);border-radius:22px;
  overflow:hidden;backdrop-filter:blur(10px);transition:transform .35s,border-color .35s,box-shadow .35s;
}
.b-card:hover{transform:translateY(-6px);border-color:rgba(163,221,221,.35);box-shadow:0 24px 60px rgba(0,0,0,.4)}
.b-thumb{position:relative;display:block;aspect-ratio:16/10;overflow:hidden}
.b-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.b-card:hover .b-thumb img{transform:scale(1.06)}
.b-date{
  position:absolute;bottom:12px;right:12px;background:rgba(8,12,14,.72);
  color:var(--acc2);font-size:.78rem;padding:4px 12px;border-radius:99px;backdrop-filter:blur(6px);
}
.b-body{padding:20px 22px 24px}
.b-body h2{font-size:1.12rem;font-weight:600;line-height:1.8}
.b-body h2 a{color:var(--ink);text-decoration:none}
.b-body h2 a:hover{color:var(--acc2)}
.b-body p{color:var(--mut);font-size:.9rem;line-height:1.95;margin:10px 0 16px;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.b-more{color:var(--acc2);text-decoration:none;font-size:.88rem;font-weight:600}
.b-more:hover{color:var(--acc)}

/* ── حالت خالی / 404 ── */
.b-empty{text-align:center;padding:90px 0}
.b-empty img{width:74px;margin:0 auto 20px;opacity:.8}
.b-empty h1,.b-empty h2{font-weight:300;font-size:1.7rem;margin-bottom:8px}
.b-empty p{color:var(--mut)}
.b-empty .b-btn{margin-top:22px;display:inline-block}

/* ── تک‌مقاله ── */
.b-article{max-width:840px}
.b-crumbs{margin:34px 0 10px;font-size:.85rem;color:var(--mut);display:flex;gap:10px;flex-wrap:wrap}
.b-crumbs a{color:var(--mut);text-decoration:none}
.b-crumbs a:hover{color:var(--acc2)}
.b-crumbs b{color:var(--ink);font-weight:400}
.b-ahead{margin:20px 0 26px}
.b-ahead h1{font-size:clamp(1.6rem,3.6vw,2.5rem);font-weight:400}
.b-ameta{color:var(--mut);font-size:.88rem;margin-top:12px;display:flex;gap:10px}
.b-ameta i{font-style:normal;opacity:.5}
.b-cover{margin:0 0 34px;border-radius:24px;overflow:hidden;border:1px solid var(--line)}
.b-cover img{width:100%;max-height:460px;object-fit:cover}

.b-prose{font-size:1.02rem;color:#dfe7ea}
.b-prose p{margin:0 0 22px}
.b-prose h3{font-size:1.3rem;font-weight:600;margin:38px 0 12px;color:var(--ink);position:relative;padding-right:16px}
.b-prose h3::before{content:"";position:absolute;right:0;top:14px;bottom:14px;width:3px;border-radius:3px;background:linear-gradient(var(--acc2),var(--acc))}
.b-prose h4{font-size:1.1rem;margin:30px 0 10px}
.b-prose ul,.b-prose ol{margin:0 0 22px;padding-right:22px;color:#dfe7ea}
.b-prose li{margin-bottom:8px}
.b-prose blockquote{
  margin:26px 0;padding:18px 22px;border-right:3px solid var(--acc);border-radius:12px;
  background:rgba(111,185,186,.07);color:var(--ink);
}
.b-prose img{border-radius:16px;margin:26px auto;border:1px solid var(--line)}
.b-prose a{color:var(--acc2)}
.b-prose strong{color:var(--ink)}

/* ── جعبه مشاوره ── */
.b-cta-box{
  margin-top:46px;padding:30px;border-radius:24px;text-align:center;
  background:linear-gradient(135deg,rgba(111,185,186,.14),rgba(111,185,186,.05));
  border:1px solid rgba(163,221,221,.28);
}
.b-cta-box h3{font-weight:400;font-size:1.4rem}
.b-cta-box p{color:var(--mut);margin:8px 0 20px}
.b-cta-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.b-btn{
  display:inline-block;background:var(--acc2);color:#0c1214;text-decoration:none;
  font-weight:600;padding:11px 24px;border-radius:99px;transition:.25s;
}
.b-btn:hover{background:var(--acc);transform:translateY(-2px)}
.b-btn.ghost{background:transparent;color:var(--acc2);border:1px solid rgba(163,221,221,.4)}
.b-btn.ghost:hover{background:rgba(163,221,221,.1)}

/* ── مرتبط‌ها ── */
.b-related{margin-top:70px}
.b-related>h2{font-size:1.3rem;font-weight:400;margin-bottom:8px}

/* ── فوتر ── */
.b-foot{border-top:1px solid var(--line);margin-top:30px;padding:44px 5vw 26px;background:rgba(10,13,15,.6)}
.b-foot-in{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:30px}
.b-fbrand{color:var(--acc2);font-size:1.05rem;font-weight:600}
.b-foot p{color:var(--mut);font-size:.88rem;margin:10px 0 0}
.b-fcol span{display:block;color:var(--mut);font-size:.8rem;margin-bottom:6px}
.b-fcol b{display:block;font-weight:400;font-size:.92rem}
.b-fcol a{color:var(--ink);text-decoration:none}
.b-fcol a:hover{color:var(--acc2)}
.b-copy{text-align:center;color:var(--mut);font-size:.8rem;margin-top:36px}

/* ── موبایل ── */
@media (max-width:760px){
  .b-hero{padding:56px 0 26px}
  .b-foot-in{grid-template-columns:1fr;gap:18px}
  .b-nav a{padding:7px 10px;font-size:.85rem}
}

/* ── صفحه پروژه (جزئیات + گالری) ─────────────────────────────── */
.p-main{max-width:980px}
.p-ahead{margin:34px 0 26px}
.p-ahead h1{font-size:clamp(1.6rem,3.6vw,2.6rem);font-weight:400;line-height:1.8}
.p-sub{color:var(--acc2);font-size:1rem;margin-top:10px}
.p-cover{margin:0 0 20px;border-radius:24px;overflow:hidden;border:1px solid var(--line);background:rgba(22,28,32,.5)}
.p-cover img{width:100%;max-height:540px;object-fit:cover;display:block}
.p-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:12px;margin:0 0 34px}
.p-thumbs button{
  display:block;width:100%;padding:0;border:2px solid transparent;border-radius:14px;overflow:hidden;
  background:none;cursor:pointer;aspect-ratio:4/3;transition:border-color .25s,transform .25s;
}
.p-thumbs button:hover{transform:translateY(-3px)}
.p-thumbs button.on{border-color:var(--acc2)}
.p-thumbs img{width:100%;height:100%;object-fit:cover;display:block}
.p-desc{font-size:1.06rem;color:#dfe7ea;line-height:2.2;max-width:820px}
.p-desc p{margin:0 0 20px}
.p-tags{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0 0}
.p-tags span{
  background:rgba(111,185,186,.1);color:var(--acc2);border:1px solid rgba(163,221,221,.25);
  padding:5px 14px;border-radius:99px;font-size:.85rem;
}
