:root{
  --bg:#0b1020; --bg2:#10172e; --card:#121a33; --line:#222c4d;
  --text:#e8ecff; --muted:#9aa5cf; --accent:#7c8cff; --accent2:#5eead4;
  --radius:14px; --maxw:1040px;
  --font:'Inter','Vazirmatn',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
}
@media (prefers-color-scheme: light){
  :root{--bg:#f6f7fc; --bg2:#eceffa; --card:#ffffff; --line:#d9deef; --text:#121734; --muted:#55608a; --accent:#4b5df0; --accent2:#0f9d8a}
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);line-height:1.7;font-size:17px;-webkit-font-smoothing:antialiased}
html[lang="fa"] body{font-family:'Vazirmatn','Inter',system-ui,sans-serif}
a{color:inherit}
.bg-grid{position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:
   radial-gradient(900px 500px at 15% -10%, color-mix(in srgb,var(--accent) 22%,transparent), transparent 60%),
   radial-gradient(700px 400px at 100% 10%, color-mix(in srgb,var(--accent2) 12%,transparent), transparent 60%),
   linear-gradient(var(--line) 1px,transparent 1px) 0 0/48px 48px,
   linear-gradient(90deg,var(--line) 1px,transparent 1px) 0 0/48px 48px;
  opacity:.55;mask-image:linear-gradient(#000 0%,transparent 75%)}
.nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:20px;padding:12px max(20px,calc((100vw - var(--maxw))/2));
  background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.brand{text-decoration:none}
.mono{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--card);border:1px solid var(--line);font-weight:700;color:var(--accent);letter-spacing:.5px}
.links{display:flex;gap:4px;margin-inline-start:auto;flex-wrap:wrap}
.links a{padding:6px 12px;border-radius:8px;text-decoration:none;color:var(--muted);font-size:15px}
.links a:hover{color:var(--text);background:var(--card)}
.lang{font:inherit;font-size:14px;cursor:pointer;color:var(--text);background:var(--card);border:1px solid var(--line);border-radius:8px;padding:6px 12px}
.lang:hover{border-color:var(--accent)}
main{max-width:var(--maxw);margin:0 auto;padding:0 20px}
.hero{padding:84px 0 56px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;padding:6px 14px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--muted);font-size:14px}
.dot{width:8px;height:8px;border-radius:50%;background:var(--accent2);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent2) 25%,transparent)}
h1{font-size:clamp(40px,7vw,68px);line-height:1.1;margin:0 0 10px;letter-spacing:-.02em}
.role{font-size:clamp(18px,2.6vw,24px);color:var(--accent);margin:0 0 18px;font-weight:600}
.lead{max-width:640px;color:var(--muted);font-size:19px;margin:0 0 28px}
.cta{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-block;padding:11px 20px;border-radius:10px;border:1px solid var(--line);background:var(--card);text-decoration:none;font-weight:600;font-size:15px;transition:.15s}
.btn:hover{border-color:var(--accent);transform:translateY(-1px)}
.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:48px 0 0}
.stats div{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px}
.stats dt{color:var(--muted);font-size:13.5px;order:2}
.stats dd{margin:0 0 4px;font-size:22px;font-weight:700}
.stats div{display:flex;flex-direction:column}
.section{padding:56px 0;border-top:1px solid var(--line)}
h2{font-size:28px;margin:0 0 24px;letter-spacing:-.01em}
h3{font-size:18px;margin:0 0 12px}
.about-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:28px;align-items:start}
.about-grid p{margin:0 0 14px;color:var(--muted)}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px}
.facts ul{list-style:none;margin:0;padding:0}
.facts li{display:flex;flex-direction:column;padding:10px 0;border-top:1px solid var(--line)}
.facts li:first-child{border-top:0}
.facts li span{font-size:13px;color:var(--muted)}
.skill-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{padding:5px 12px;border-radius:999px;background:var(--bg2);border:1px solid var(--line);font-size:14px}
.projects{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.project{display:flex;flex-direction:column;gap:8px;transition:.15s}
.project:hover{border-color:var(--accent);transform:translateY(-2px)}
.project h3{margin:0;font-size:17px}
.project p{margin:0;color:var(--muted);font-size:15px}
.tag{align-self:flex-start;font-size:12.5px;color:var(--accent2);border:1px solid color-mix(in srgb,var(--accent2) 40%,transparent);border-radius:999px;padding:1px 10px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.plain{list-style:none;margin:0;padding:0}
.plain li{padding:10px 0;border-top:1px solid var(--line)}
.plain li:first-child{border-top:0}
.plain small{display:block;color:var(--muted)}
.contact p{color:var(--muted);max-width:620px;margin:0 0 22px}
.foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;max-width:var(--maxw);margin:0 auto;padding:28px 20px 40px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media (max-width:760px){
  .about-grid,.two-col{grid-template-columns:1fr}
  .hero{padding-top:56px}
  .links{display:none}
  .lang{margin-inline-start:auto}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
