/* NEARpn1930 styles */
:root{
  --bg:#f5f6ff;
  --bg-alt:#0c1020;
  --surface:#ffffff;
  --ink:#12172b;
  --muted:#5a6282;
  --brand:#5f04ff;
  --brand2:#00c3ff;
  --brand-grad:linear-gradient(135deg,#5f04ff 0%,#00c3ff 100%);
  --accent:#ff8a00;
  --shadow:0 20px 60px rgba(59,42,150,.12);
  --radius:20px;
  --maxw:1180px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Inter','Vazirmatn',system-ui,sans-serif;
  background:var(--bg);color:var(--ink);
  line-height:1.6;-webkit-font-smoothing:antialiased;
}
body[dir="rtl"]{font-family:'Vazirmatn','Inter',sans-serif;text-align:right}
.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3{line-height:1.15;font-weight:800;letter-spacing:-.02em}
h2{font-size:clamp(1.8rem,4vw,2.6rem);margin-bottom:14px}
p.lead{color:var(--muted);font-size:1.1rem;max-width:680px;margin:0 auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(245,246,255,.85);backdrop-filter:blur(14px);border-bottom:1px solid rgba(18,23,43,.06)}
.nav{display:flex;align-items:center;justify-content:space-between;height:70px}
.brand{display:flex;align-items:center;gap:10px;font-size:1.15rem;font-weight:700}
.brand-mark{width:14px;height:14px;border-radius:4px;background:var(--brand-grad);box-shadow:0 0 14px var(--brand2)}
.brand-name b{color:var(--brand)}
.nav-menu{display:flex;align-items:center;gap:28px}
.nav-menu a{font-weight:600;color:var(--ink);position:relative;opacity:.85;transition:.2s}
.nav-menu a:hover{opacity:1;color:var(--brand)}
.lang-toggle{
  cursor:pointer;border:1.5px solid var(--brand);color:var(--brand);background:transparent;
  font-weight:700;font-size:.85rem;padding:8px 14px;border-radius:999px;transition:.2s;
}
.lang-toggle:hover{background:var(--brand);color:#fff}
.nav-toggle{display:none;background:none;border:0;cursor:pointer;flex-direction:column;gap:5px}
.nav-toggle span{width:24px;height:2px;background:var(--ink);border-radius:2px;transition:.3s}

/* Hero */
.hero{padding:80px 0 70px;position:relative;overflow:hidden;
  background:radial-gradient(1200px 500px at 80% -10%,rgba(95,4,255,.08),transparent 60%),
             radial-gradient(900px 400px at 10% 100%,rgba(0,195,255,.10),transparent 55%);
}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.hero h1{font-size:clamp(2.2rem,5vw,3.4rem);margin:12px 0 18px}
.hero h1 span{background:var(--brand-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-sub{color:var(--muted);font-size:1.15rem;max-width:520px}
.eyebrow{display:inline-block;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brand);background:rgba(95,4,255,.08);padding:6px 14px;border-radius:999px}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.btn{display:inline-block;font-weight:700;padding:14px 26px;border-radius:14px;transition:.25s;font-size:.95rem}
.btn-primary{background:var(--brand-grad);color:#fff;box-shadow:0 12px 30px rgba(95,4,255,.35)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(95,4,255,.4)}
.btn-ghost{border:2px solid var(--ink);color:var(--ink)}
.btn-ghost:hover{background:var(--ink);color:#fff}

/* Globe visual */
.hero-visual{display:flex;justify-content:center;align-items:center}
.globe{position:relative;width:300px;height:300px;display:flex;align-items:center;justify-content:center}
.ring{position:absolute;border-radius:50%;border:1.5px solid rgba(95,4,255,.35)}
.ring1{width:100%;height:100%;animation:spin 18s linear infinite}
.ring2{width:78%;height:78%;border-color:rgba(0,195,255,.4);animation:spin 12s linear infinite reverse}
.ring3{width:56%;height:56%;border-color:rgba(255,138,0,.35);animation:spin 9s linear infinite}
.core{width:140px;height:140px;border-radius:50%;background:var(--brand-grad);color:#fff;font-weight:800;font-size:1.6rem;
  display:flex;align-items:center;justify-content:center;box-shadow:0 0 60px rgba(95,4,255,.5)}
@keyframes spin{to{transform:rotate(360deg)}}
[data-reveal]{opacity:0;transform:translateY(24px);transition:.7s ease}
[data-reveal].in{opacity:1;transform:none}

/* Sections */
.section{padding:80px 0}
.section-alt{background:var(--bg-alt);color:#fff}
.section-alt .eyebrow{background:rgba(255,255,255,.1);color:var(--brand2)}
.section-alt p.lead{color:#a8b0d0}
.section-head{text-align:center;margin-bottom:50px}
.section-alt h2{color:#fff}

/* Features */
.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}
.feature{background:var(--surface);padding:28px 24px;border-radius:var(--radius);box-shadow:var(--shadow);transition:.25s;border:1px solid rgba(18,23,43,.04)}
.feature:hover{transform:translateY(-4px)}
.feature-icon{font-size:1.8rem;width:54px;height:54px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:var(--brand-grad);margin-bottom:16px}
.feature h3{margin-bottom:8px;font-size:1.15rem}
.feature p{color:var(--muted);font-size:.95rem}

/* Cards */
.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;max-width:var(--maxw);margin:0 auto}
.project-card{background:#141a33;border:1px solid rgba(255,255,255,.07);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:.25s}
.project-card:hover{transform:translateY(-5px);border-color:var(--brand2)}
.card-banner{height:150px;background:linear-gradient(135deg,var(--b1,#5f04ff),var(--b2,#00c3ff));display:flex;align-items:center;justify-content:center;font-size:3rem;position:relative;overflow:hidden}
.card-logo{position:relative;z-index:1;width:100%;height:100%;padding:18px;object-fit:contain;background:#0b1020;filter:drop-shadow(0 6px 18px rgba(0,0,0,.45))}
.card-banner::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.2),transparent 60%)}
.card-body{padding:22px;display:flex;flex-direction:column;flex:1;gap:10px}
.card-body h3{color:#fff;font-size:1.25rem}
.card-body p{color:#a8b0d0;font-size:.93rem;flex:1}
.tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--brand2);background:rgba(0,195,255,.12);padding:4px 10px;border-radius:999px;align-self:flex-start}
.card-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.card-links a{font-size:.82rem;font-weight:600;padding:8px 14px;border-radius:10px;transition:.2s}
.card-links .visit{background:var(--brand-grad);color:#fff}
.card-links .visit:hover{opacity:.9}
.card-links .soc{border:1px solid rgba(255,255,255,.2);color:#fff}
.card-links .soc:hover{background:rgba(255,255,255,.1)}

/* Social */
.social-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.social-block{background:var(--surface);padding:28px;border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid rgba(18,23,43,.04)}
.social-block h3{margin-bottom:16px;font-size:1.15rem}
.social-list{list-style:none;display:flex;flex-direction:column;gap:6px}
.social-list a{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;transition:.2s;font-weight:600;color:var(--ink)}
.social-list a:hover{background:rgba(95,4,255,.06);color:var(--brand)}

/* About */
.about-copy{max-width:760px;margin:0 auto;text-align:center;color:#a8b0d0}
.about-copy h2{color:#fff;margin-bottom:16px}
.about-copy p{font-size:1.1rem}

/* Footer */
.site-footer{padding:40px 0;background:#0a0d1a;color:#a8b0d0;border-top:1px solid rgba(255,255,255,.06)}
.footer-inner{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center}
.footer-links{display:flex;gap:18px}
.footer-links a{color:#cfd6ff}
.footer-links a:hover{color:var(--brand2)}

/* Responsive */
@media(max-width:860px){
  .hero-grid{grid-template-columns:1fr;text-align:center}
  .hero-sub{margin:0 auto}
  .hero-actions{justify-content:center}
  .hero-visual{order:-1}
  .globe{width:220px;height:220px}
  .core{width:110px;height:110px;font-size:1.2rem}
  .nav-toggle{display:flex}
  .nav-menu{position:absolute;top:70px;left:0;right:0;flex-direction:column;gap:18px;background:#fff;
    padding:24px;box-shadow:var(--shadow);border-bottom:1px solid rgba(18,23,43,.06);transform:translateY(-140%);transition:.3s}
  .nav-menu.open{transform:none}
  .footer-inner{flex-direction:column;text-align:center}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  [data-reveal]{opacity:1;transform:none}
}