@charset "UTF-8";
/* ==========================================================================
   نسخه دسکتاپ — طراحی اختصاصی (۱۱۸۰ پیکسل به بالا)
   اولویت: چیدمان چندستونه، افکت‌های سه‌بعدی کامل، هاور غنی
   ========================================================================== */

:root {
  --header-h: 84px;
  --container: 1240px;
}

body.is-desktop { line-height: 1.92; }

.is-desktop .burger,
.is-desktop .mobile-nav { display: none; }
.is-desktop .nav { display: flex; }

/* ---------- هیرو دسکتاپ: دو ستون بزرگ ---------- */
.is-desktop .hero { padding-block: var(--sp-8) var(--sp-10); }
.is-desktop .hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  gap: var(--sp-7);
  align-items: center;
}
.is-desktop .hero__title { font-size: clamp(2.4rem, 1.9rem + 2vw, 3.6rem); }
.is-desktop .hero__text { font-size: 1.15rem; }
/* دکمه‌های هیرو کنار هم جا شوند */
.is-desktop .hero .btn--lg { padding-inline: 1.7rem; font-size: 1.02rem; }

.is-desktop .scene3d { min-height: 620px; perspective: 1600px; }
.is-desktop .flipcard { width: 118px; height: 158px; }
.is-desktop .carousel3d { height: 520px; }
.is-desktop .carousel3d__item {
  width: 252px; height: 340px;
  margin-block-start: -170px; margin-inline-start: -126px;
}

/* ---------- شبکه‌ها ---------- */
.is-desktop .grid--2 { grid-template-columns: repeat(2, 1fr); }
.is-desktop .grid--3 { grid-template-columns: repeat(3, 1fr); }
.is-desktop .grid--4 { grid-template-columns: repeat(4, 1fr); }
.is-desktop .grid--auto { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); }
.is-desktop .photo-grid { grid-template-columns: repeat(4, 1fr); }

/* ---------- بخش دو ستونه ---------- */
.is-desktop .split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--sp-7);
  align-items: center;
}
.is-desktop .split--media-first > .split__media { order: -1; }
.is-desktop .split--wide { grid-template-columns: 1.15fr .85fr; }

/* ---------- چیدمان چسبان ---------- */
.is-desktop .sticky-col {
  position: sticky;
  top: calc(var(--header-h) + 24px);
}

/* ---------- گالری تصاویر با ریتم نامنظم (مثل کلاژ) ---------- */
.is-desktop .photo-grid--collage {
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 200px;
}
.is-desktop .photo-grid--collage .photo-item { aspect-ratio: auto; }
.is-desktop .photo-grid--collage .photo-item:nth-child(6n+1) { grid-row: span 2; grid-column: span 2; }
.is-desktop .photo-grid--collage .photo-item:nth-child(6n+4) { grid-row: span 2; }

/* ---------- هاور غنی‌تر ---------- */
.is-desktop .card--tilt {
  transform-style: preserve-3d;
  transition: transform .35s var(--ease-soft), box-shadow .35s;
}
.is-desktop .program-card:hover { transform: translateY(-10px) scale(1.015); }
.is-desktop .photo-item:hover { transform: translateY(-8px) scale(1.03); }
.is-desktop .person:hover { transform: translateY(-10px) rotate(-1.5deg); }

/* درخشش نرم روی کارت هنگام حرکت ماوس */
.is-desktop .glow-card { position: relative; overflow: hidden; }
.is-desktop .glow-card::after {
  content: '';
  position: absolute;
  width: 320px; height: 320px;
  background: radial-gradient(circle, rgba(255,255,255,.85) 0, transparent 62%);
  transform: translate(-50%, -50%);
  inset-block-start: var(--glow-y, 50%);
  inset-inline-start: var(--glow-x, 50%);
  opacity: 0;
  transition: opacity .3s;
  pointer-events: none;
  z-index: 1;
}
.is-desktop .glow-card:hover::after { opacity: .55; }
.is-desktop .glow-card > * { position: relative; z-index: 2; }

/* ---------- فوتر ---------- */
.is-desktop .footer-grid { grid-template-columns: 1.5fr .8fr 1.2fr; }

/* ---------- فرم ---------- */
.is-desktop .form__row--3 { grid-template-columns: repeat(3, 1fr); }
.is-desktop .contact-layout {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: var(--sp-7);
  align-items: start;
}

/* ---------- برنامه روزانه ---------- */
.is-desktop .daily { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--sp-3); }

/* ---------- مقاله ---------- */
.is-desktop .article-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: var(--sp-7);
  align-items: start;
}

/* ---------- نوار CTA ---------- */
.is-desktop .cta-band { padding: var(--sp-9) var(--sp-8); }
.is-desktop .cta-band h2 { font-size: clamp(2rem, 1.5rem + 1.6vw, 2.9rem); }

/* ---------- صفحه‌های خیلی بزرگ ---------- */
@media (min-width: 1700px) {
  :root { --container: 1400px; }
  .is-desktop .scene3d { min-height: 680px; }
  .is-desktop .carousel3d { height: 580px; }
}
