/* ============================================================
   صفحه‌ی اول (Landing) — تجربه‌ی Premium / سینمایی
   فقط ظاهرِ صفحه‌ی اول؛ روی منطقِ سالمِ فعلی سوار می‌شود.
   ============================================================ */

/* ---------- ورودِ سینمایی ---------- */
.intro{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;overflow:hidden;
  background:radial-gradient(60% 60% at 50% 45%, #12285a 0%, #0B1B3B 60%, #070f22 100%);
  transition:opacity .7s ease, visibility .7s ease}
.intro.hide{opacity:0;visibility:hidden;pointer-events:none}
.intro-inner{position:relative;text-align:center}
.intro-logo{width:120px;height:120px;object-fit:contain;filter:drop-shadow(0 10px 30px rgba(0,0,0,.5));
  animation:introLogo 2s cubic-bezier(.2,.8,.2,1) both}
.intro-title{margin-top:14px;color:#eaf1ff;font-size:1rem;letter-spacing:.5px;opacity:0;
  animation:introText .7s ease .7s both}
.intro-sweep{position:absolute;top:0;left:-40%;width:40%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(120,170,255,.35),transparent);
  transform:skewX(-18deg);animation:introSweep 1.4s ease .2s both}
.intro-skip{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);color:#cdd8f0;
  border-radius:999px;padding:7px 16px;font-family:inherit;font-size:.82rem;cursor:pointer}
@keyframes introLogo{0%{opacity:0;transform:scale(.9)}100%{opacity:1;transform:scale(1)}}
@keyframes introText{to{opacity:1}}
@keyframes introSweep{0%{left:-40%}100%{left:120%}}

/* ---------- چیدمانِ کلیِ لندینگ ---------- */
#s-hero.landing{padding:0}
.lp-section{position:relative;padding:78px 20px;max-width:1080px;margin:0 auto}
.lp-eyebrow{color:var(--accent);font-weight:800;font-size:.82rem;letter-spacing:1px;margin-bottom:10px}
.lp-h{color:#fff;font-size:1.6rem;line-height:1.7;margin-bottom:12px;font-weight:800}
.lp-p{color:#c4d0ea;font-size:1rem;line-height:2;max-width:640px}

/* ---------- HERO ---------- */
.lp-hero{position:relative;min-height:calc(100svh - 68px);display:flex;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;padding:20px 20px 90px;overflow:hidden}
.lp-hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.lp-glow{position:absolute;inset:0;
  background:
    radial-gradient(50% 40% at 50% 22%, rgba(37,99,235,.28), transparent 60%),
    radial-gradient(40% 30% at 80% 80%, rgba(201,162,74,.12), transparent 60%)}
.lp-beam{position:absolute;top:-10%;left:50%;width:2px;height:60%;transform:translateX(-50%);
  background:linear-gradient(180deg,rgba(120,170,255,.6),transparent);filter:blur(1px);
  animation:beam 6s ease-in-out infinite alternate}
@keyframes beam{from{opacity:.25}to{opacity:.7}}
.lp-skyline{position:absolute;left:0;right:0;bottom:0;width:100%;height:auto;opacity:.5;z-index:0}
.lp-hero-inner{position:relative;z-index:2;max-width:760px}
.lp-emblem{width:116px;height:116px;object-fit:contain;filter:drop-shadow(0 12px 30px rgba(0,0,0,.5));
  animation:heroLogo 1s cubic-bezier(.2,.8,.2,1) both}
@keyframes heroLogo{0%{opacity:0;transform:scale(.94)}100%{opacity:1;transform:none}}
.lp-badge{display:inline-block;margin:16px 0 8px;background:rgba(255,255,255,.06);
  border:1px solid rgba(201,162,74,.5);color:var(--accent-2);border-radius:999px;
  padding:6px 16px;font-size:.82rem}
.lp-title{color:#fff;font-size:2.15rem;line-height:1.55;font-weight:800;margin:6px 0 14px;
  text-shadow:0 6px 30px rgba(0,0,0,.4)}
.lp-title b{color:var(--accent-2)}
.lp-sub{color:#c9d5ef;font-size:1.06rem;line-height:2;max-width:520px;margin:0 auto 26px}
.lp-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.lp-btn{border:none;border-radius:16px;padding:15px 30px;font-family:inherit;font-size:1.06rem;
  font-weight:800;cursor:pointer;transition:.16s;text-decoration:none;display:inline-flex;align-items:center;gap:8px}
.lp-btn.gold{background:linear-gradient(180deg,var(--accent-2),var(--accent));color:#3a2c00;
  box-shadow:0 16px 34px -14px rgba(201,162,74,.7)}
.lp-btn.gold:hover{filter:brightness(1.05);transform:translateY(-1px)}
.lp-btn.ghost{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.28);color:#eaf1ff}
.lp-btn.ghost:hover{background:rgba(255,255,255,.1)}
.lp-scroll{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:2;
  color:#9fb0d6;font-size:.78rem;display:flex;flex-direction:column;align-items:center;gap:6px}
.lp-scroll .mouse{width:22px;height:34px;border:2px solid #7f90b8;border-radius:14px;position:relative}
.lp-scroll .mouse::after{content:"";position:absolute;top:6px;left:50%;width:3px;height:6px;border-radius:2px;
  background:#aab8dd;transform:translateX(-50%);animation:wheel 1.6s ease-in-out infinite}
@keyframes wheel{0%{opacity:0;transform:translate(-50%,0)}30%{opacity:1}100%{opacity:0;transform:translate(-50%,8px)}}

/* ---------- Progress ناوبریِ کناری ---------- */
.lp-nav{position:fixed;top:50%;right:16px;transform:translateY(-50%);z-index:30;
  display:flex;flex-direction:column;gap:14px}
.lp-nav a{display:flex;align-items:center;gap:8px;color:#8ea0c8;text-decoration:none;font-size:.72rem;opacity:.7;transition:.2s}
.lp-nav a .dot{width:9px;height:9px;border-radius:50%;background:#43557f;transition:.2s}
.lp-nav a.active{opacity:1;color:#fff}
.lp-nav a.active .dot{background:var(--accent);box-shadow:0 0 0 4px rgba(201,162,74,.2)}

/* ---------- کارت‌های فرهنگ ---------- */
.lp-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}
.lp-card{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:22px 18px;text-align:center}
.lp-card .ic{width:52px;height:52px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;
  border-radius:14px;background:rgba(37,99,235,.16);border:1px solid rgba(37,99,235,.4)}
.lp-card h3{color:#fff;font-size:1.05rem;margin-bottom:6px}
.lp-card p{color:#b9c6e4;font-size:.9rem;line-height:1.9}

/* ---------- مراحلِ شرکت ---------- */
.lp-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px}
.lp-step{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:18px 14px}
.lp-step .n{font-size:1.5rem;font-weight:800;color:var(--accent)}
.lp-step h4{color:#fff;font-size:.98rem;margin:6px 0 4px}
.lp-step p{color:#aebbd9;font-size:.85rem;line-height:1.8}

/* ---------- اسپانسر ---------- */
.lp-sponsor{text-align:center}
.lp-sponsor-box{margin-top:18px;display:inline-flex;flex-direction:column;align-items:center;gap:12px;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
  border:1px solid rgba(201,162,74,.35);border-radius:20px;padding:26px 40px}
.lp-sponsor-logo{width:120px;height:70px;display:flex;align-items:center;justify-content:center;
  color:#93a3c8;font-size:.8rem;border:1px dashed rgba(255,255,255,.25);border-radius:12px}
.lp-sponsor small{color:#9fb0d6}

/* ---------- هویتِ نیشابور ---------- */
.lp-identity{position:relative;text-align:center;overflow:hidden}
.lp-identity .sky{position:absolute;left:0;right:0;bottom:0;width:100%;opacity:.35;z-index:0}
.lp-identity .inner{position:relative;z-index:1}
.lp-identity .names{display:flex;gap:22px;justify-content:center;flex-wrap:wrap;margin-top:16px;color:var(--accent-2);font-weight:700}

/* ---------- CTA نهایی ---------- */
.lp-final{text-align:center;background:radial-gradient(60% 100% at 50% 0%, rgba(37,99,235,.18), transparent 70%)}
.lp-final .lp-h{font-size:1.9rem}

/* ---------- فوترِ لندینگ ---------- */
.lp-footer{border-top:1px solid rgba(255,255,255,.08);padding:26px 20px;text-align:center;color:#9fb0d6;font-size:.85rem}
.lp-footer b{color:#dfe7f7}

/* ---------- Reveal ---------- */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease, transform .6s cubic-bezier(.2,.8,.2,1)}
.reveal.in{opacity:1;transform:none}
.reveal.d1{transition-delay:.12s}.reveal.d2{transition-delay:.24s}.reveal.d3{transition-delay:.36s}

/* ---------- ریسپانسیو ---------- */
@media (max-width:820px){
  .lp-cards{grid-template-columns:1fr}
  .lp-steps{grid-template-columns:repeat(2,1fr)}
  .lp-nav{display:none}
  .lp-title{font-size:1.7rem}
  .lp-section{padding:60px 18px}
}
@media (max-width:430px){
  .lp-title{font-size:1.5rem}
  .lp-emblem{width:96px;height:96px}
  .lp-btn{padding:14px 22px;font-size:1rem}
  .lp-steps{grid-template-columns:1fr}
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  .intro{display:none!important}
  .reveal{opacity:1;transform:none;transition:none}
  .lp-beam,.lp-scroll .mouse::after,.intro-sweep,.intro-logo,.intro-title{animation:none!important}
}
