/* رنگ‌های لوگو: گرادیان، شکل‌ها و جداکننده‌ها */

/* پس‌زمینه کلی صفحه */
.page-body {
  background-color: #ffffff;
  background-image:
    radial-gradient(ellipse 120% 90% at 100% -10%, rgba(181, 232, 250, 0.14), transparent 72%),
    radial-gradient(ellipse 100% 70% at 0% 25%, rgba(255, 122, 0, 0.04), transparent 68%),
    radial-gradient(ellipse 90% 60% at 95% 95%, rgba(159, 216, 56, 0.05), transparent 65%),
    radial-gradient(ellipse 70% 50% at 5% 90%, rgba(233, 30, 140, 0.03), transparent 60%);
  background-attachment: fixed;
}

/* لایه شکل‌های تزئینی داخل سکشن */
.deco-layer {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: 0;
}

.deco-blob {
  position: absolute;
  border-radius: 50%;
  filter: blur(88px);
  opacity: 0.16;
}

.deco-blob--orange {
  background: #ff7a00;
}

.deco-blob--green {
  background: #9fd838;
}

.deco-blob--blue {
  background: #b5e8fa;
}

.deco-blob--pink {
  background: #e91e8c;
}

.deco-blob--yellow {
  background: #ffb300;
}

/* فاصله بالا/پایین باند آمار (بدون لبه سخت با سکشن‌های مجاور) */
.stats-band-wrap {
  padding: 3rem 0 3.5rem;
  width: 100%;
}

/* باند گرادیانی آمار: گوشه گرد و محو شدن لبه‌ها (فقط پس‌زمینه) */
.section-band-gradient {
  position: relative;
  isolation: isolate;
}

.section-band-gradient::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(
    105deg,
    rgba(255, 122, 0, 0.05) 0%,
    rgba(159, 216, 56, 0.06) 35%,
    rgba(181, 232, 250, 0.12) 65%,
    rgba(233, 30, 140, 0.04) 100%
  );
}

/* فاصله یکنواخت بین سکشن‌های صفحه اصلی؛ blobها بیرون کلیپ نمی‌شوند */
.section-deco {
  overflow: visible;
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (min-width: 768px) {
  .section-deco {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

/* دوره‌ها */
.course-theme-yellow {
  background: linear-gradient(160deg, #ffe082, #ffb300);
}

.course-theme-pink {
  background: linear-gradient(160deg, #f48fb1, #e91e8c);
}

.course-theme-cyan {
  background: linear-gradient(160deg, #b5e8fa, #5eb8e5);
}

.course-theme-navy {
  background: linear-gradient(160deg, #9fd838, #4caf50);
}

.feature-icon-orange {
  background: rgba(255, 240, 224, 0.55);
}

.feature-icon-green {
  background: rgba(237, 248, 212, 0.55);
}

.feature-icon-blue {
  background: rgba(232, 247, 252, 0.55);
}

.feature-icon-yellow {
  background: rgba(255, 248, 225, 0.55);
}

.feature-icon-pink {
  background: rgba(252, 228, 240, 0.55);
}

.newsletter-msg.is-success {
  color: #9fd838;
}

.newsletter-msg.is-error {
  color: #fca5a5;
}

/* منوی موبایل */
.site-nav-link {
  position: relative;
  display: block;
  border-radius: 0.75rem;
  padding: 0.625rem 0.875rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: #334155;
  transition:
    color 0.22s ease,
    background-color 0.22s ease,
    transform 0.22s ease;
}

.site-nav-link:hover {
  color: #ff7a00;
  background: rgba(255, 122, 0, 0.08);
}

.site-nav-link.is-active {
  color: #ff7a00;
  font-weight: 700;
  background: rgba(255, 122, 0, 0.12);
}

@media (max-width: 1023px) {
  .nav-toggle {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 0.625rem;
    padding: 0;
    transition: background-color 0.2s ease;
  }
}

@media (min-width: 1024px) {
  .nav-toggle {
    display: none;
  }
}

.nav-toggle:hover {
  background: rgba(255, 122, 0, 0.08);
}

.nav-toggle__bar {
  position: absolute;
  left: 50%;
  width: 1.5rem;
  height: 2px;
  margin-left: -0.75rem;
  border-radius: 999px;
  transition:
    transform 0.32s cubic-bezier(0.4, 0, 0.2, 1),
    top 0.32s cubic-bezier(0.4, 0, 0.2, 1),
    bottom 0.32s cubic-bezier(0.4, 0, 0.2, 1),
    opacity 0.2s ease;
}

.nav-toggle__bar--1 {
  top: 0.75rem;
  background: #ff7a00;
}

.nav-toggle__bar--2 {
  top: 50%;
  margin-top: -1px;
  background: #9fd838;
}

.nav-toggle__bar--3 {
  bottom: 0.75rem;
  background: #5eb8e5;
}

.nav-toggle.is-active .nav-toggle__bar--1 {
  top: 50%;
  margin-top: -1px;
  transform: rotate(45deg);
}

.nav-toggle.is-active .nav-toggle__bar--2 {
  opacity: 0;
  transform: scaleX(0);
}

.nav-toggle.is-active .nav-toggle__bar--3 {
  top: 50%;
  bottom: auto;
  margin-top: -1px;
  transform: rotate(-45deg);
}

@media (max-width: 1023px) {
  .site-header-shell {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .site-nav {
    position: absolute;
    inset-inline: 0;
    top: 100%;
    z-index: 50;
    display: block;
    overflow: hidden;
    max-height: 0;
    transform: translateY(-8px);
    background: #ffffff;
    padding-inline: 1.25rem;
    padding-block: 0;
    border-bottom: 1px solid transparent;
    box-shadow: none;
    pointer-events: none;
    transition:
      max-height 0.42s cubic-bezier(0.4, 0, 0.2, 1),
      transform 0.36s cubic-bezier(0.4, 0, 0.2, 1),
      padding 0.36s ease,
      border-color 0.25s ease,
      box-shadow 0.36s ease;
  }

  @media (min-width: 640px) {
    .site-nav {
      padding-inline: 2rem;
    }
  }

  .site-nav.is-open {
    max-height: 24rem;
    transform: translateY(0);
    padding-block: 1rem;
    border-bottom-color: rgb(226 232 240);
    box-shadow: 0 16px 32px rgba(15, 23, 42, 0.1);
    pointer-events: auto;
  }

  .site-nav li {
    opacity: 0;
    transform: translateY(-8px);
    transition:
      opacity 0.28s ease,
      transform 0.32s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .site-nav.is-open li {
    opacity: 1;
    transform: translateY(0);
  }

  .site-nav.is-open li:nth-child(1) {
    transition-delay: 0.05s;
  }

  .site-nav.is-open li:nth-child(2) {
    transition-delay: 0.09s;
  }

  .site-nav.is-open li:nth-child(3) {
    transition-delay: 0.13s;
  }

  .site-nav.is-open li:nth-child(4) {
    transition-delay: 0.17s;
  }

  .site-nav.is-open li:nth-child(5) {
    transition-delay: 0.21s;
  }

  .site-nav.is-open li:nth-child(6) {
    transition-delay: 0.25s;
  }

  .site-nav:not(.is-open) li {
    transition-delay: 0s;
  }
}

@media (min-width: 1024px) {
  .site-nav {
    position: static;
    display: block;
    max-height: none;
    transform: none;
    overflow: visible;
    background: transparent;
    padding: 0;
    border-bottom: 0;
    box-shadow: none;
    pointer-events: auto;
  }

  .site-nav li {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

body.nav-open {
  overflow: hidden;
}

@media (min-width: 1024px) {
  body.nav-open {
    overflow: auto;
  }
}

.nav-toggle:focus-visible {
  outline: 2px solid #ff7a00;
  outline-offset: 2px;
}

/* Course buy modal: success / error messages */
.course-buy-message--success {
  border-color: rgba(76, 175, 80, 0.45);
  background-color: #edf8d4;
  color: #2e7d32;
}

.course-buy-message--error {
  border-color: #fecaca;
  background-color: #fef2f2;
  color: #b91c1c;
}
