/* ═══════════════════════════════════════════════════════════
   SLR Academy — استایل مشترک سایت
   شامل: فونت‌های لوکال + فوتر سراسری (اطلاعات تماس)
   ═══════════════════════════════════════════════════════════ */

/* ─── فونت‌ها (لوکال — بدون وابستگی به Google Fonts) ───
   قبلاً فونت‌ها از fonts.googleapis.com می‌آمدند که در ایران
   کند یا مسدود است و باعث دیرتر نمایش داده شدن متن می‌شد. */

@font-face {
  font-family: 'Vazirmatn';
  src: url('../fonts/Vazirmatn-var.woff2') format('woff2-variations');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Montserrat';
  src: url('../fonts/Montserrat-var.woff2') format('woff2-variations');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
                 U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122,
                 U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* ═══ فوتر سراسری ═══
   طراحی تازه — فقط CSS، مارک‌آپ صفحات دست‌نخورده است. */

footer.site-footer {
  position: relative;
  z-index: 3;
  max-width: 1060px;
  width: 100%;
  margin: 72px auto 0;
  padding: 0 24px 26px;
  font-family: 'Vazirmatn', sans-serif;
  font-size: 13.5px;
  line-height: 2;
  letter-spacing: normal;
  text-transform: none;
  text-align: right;
  color: var(--text-dim, #7A7875);
  opacity: 1;
  border-top: 0;
}

/* خط طلایی محوشونده در بالای فوتر */
footer.site-footer::before {
  content: '';
  position: absolute;
  inset-inline: 0;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201,168,118,.42), transparent);
}

/* درخشش بسیار ملایم پشت فوتر */
footer.site-footer::after {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(720px, 92%);
  height: 190px;
  pointer-events: none;
  z-index: -1;
  background: radial-gradient(ellipse at top, rgba(201,168,118,.075), transparent 72%);
}

.site-footer .footer-inner {
  display: grid;
  grid-template-columns: 1.15fr .92fr 1.05fr;
  gap: 40px 44px;
  padding-top: 46px;
  margin-bottom: 30px;
}

.site-footer .footer-col > p { margin: 0 0 6px; }

/* ── نام برند ── */
.site-footer .footer-name {
  font-family: 'Montserrat', sans-serif;
  font-size: 19px;
  font-weight: 600;
  letter-spacing: .2em;
  color: var(--text, #F0EDE8);
  margin: 0 0 15px;
  padding-bottom: 15px;
  position: relative;
}
.site-footer .footer-name::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  width: 46px;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(90deg, transparent, var(--gold, #C9A876));
}
.site-footer .footer-tagline {
  color: var(--text-mid, #B0ADA8);
  margin: 0 0 8px;
}

/* ── تیتر ستون‌ها ── */
.site-footer .footer-head {
  font-family: 'Montserrat', sans-serif;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: var(--gold, #C9A876);
  margin: 0 0 16px;
}

/* ── فهرست دوره‌ها ── */
.site-footer ul { list-style: none; margin: 0; padding: 0; }
.site-footer li { margin: 0; }
.site-footer li a {
  display: inline-block;
  padding: 4px 0;
  color: var(--text-dim, #7A7875);
  text-decoration: none;
  transition: color .25s ease, transform .25s ease;
}
.site-footer li a:hover,
.site-footer li a:focus-visible {
  color: var(--gold, #C9A876);
  transform: translateX(-4px);
}

/* ── تماس و آدرس ── */
.site-footer address { font-style: normal; }

.site-footer address p:nth-of-type(2),
.site-footer address p:nth-of-type(4) {
  position: relative;
  padding-inline-start: 27px;
  margin: 0 0 12px;
  line-height: 1.95;
}
.site-footer address p:nth-of-type(2)::before,
.site-footer address p:nth-of-type(4)::before {
  content: '';
  position: absolute;
  inset-inline-start: 0;
  top: 7px;
  width: 16px;
  height: 16px;
  background: var(--gold, #C9A876);
  opacity: .8;
  -webkit-mask: var(--sl-ic) center / contain no-repeat;
  mask: var(--sl-ic) center / contain no-repeat;
}
.site-footer address p:nth-of-type(2) { --sl-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2021.5s-6.5-5.9-6.5-10.5a6.5%206.5%200%201%201%2013%200c0%204.6-6.5%2010.5-6.5%2010.5z%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2211%22%20r%3D%222.4%22%2F%3E%3C%2Fsvg%3E"); }
.site-footer address p:nth-of-type(4) { --sl-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%228.6%22%2F%3E%3Cpath%20d%3D%22M12%207.4V12l3.1%201.9%22%2F%3E%3C%2Fsvg%3E"); }

/* ── شماره تماس ──
   فونت قبلی Montserrat بود که رقم فارسی ندارد و مرورگر به فونت
   پیش‌فرض سیستم می‌افتاد؛ حالا Vazirmatn با ارقام هم‌عرض. */
.site-footer address p:nth-of-type(3) { margin: 20px 0 16px; }

.site-footer address a.footer-phone {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  box-sizing: border-box;
  min-height: 50px;
  padding: 0 24px;
  border-radius: 999px;
  border: 1px solid rgba(201,168,118,.4);
  background: linear-gradient(180deg, rgba(201,168,118,.16), rgba(201,168,118,.055));
  color: var(--gold, #C9A876);
  font-family: 'Vazirmatn', sans-serif;
  font-size: 19px;
  font-weight: 700;
  letter-spacing: .05em;
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum";
  direction: ltr;
  white-space: nowrap;
  text-decoration: none;
  transition: background .3s ease, color .3s ease, border-color .3s ease,
              box-shadow .3s ease, transform .2s ease;
}
.site-footer address a.footer-phone::before {
  content: '';
  width: 17px;
  height: 17px;
  flex: none;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6.6%203.5h3l1.5%203.8-1.9%201.4a12%2012%200%200%200%205.1%205.1l1.4-1.9%203.8%201.5v3a1.7%201.7%200%200%201-1.9%201.7A15.8%2015.8%200%200%201%204.9%205.4%201.7%201.7%200%200%201%206.6%203.5z%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6.6%203.5h3l1.5%203.8-1.9%201.4a12%2012%200%200%200%205.1%205.1l1.4-1.9%203.8%201.5v3a1.7%201.7%200%200%201-1.9%201.7A15.8%2015.8%200%200%201%204.9%205.4%201.7%201.7%200%200%201%206.6%203.5z%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
}
.site-footer address a.footer-phone:hover,
.site-footer address a.footer-phone:focus-visible {
  background: var(--gold, #C9A876);
  border-color: var(--gold, #C9A876);
  color: #0B0B0C;
  box-shadow: 0 10px 28px -10px rgba(201,168,118,.55);
  transform: translateY(-1px);
}

/* ── شبکه‌های اجتماعی ── */
.site-footer .footer-social {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0;
}
.site-footer .footer-social a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 40px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid var(--line, rgba(255,255,255,.09));
  background: rgba(255,255,255,.025);
  color: var(--text-mid, #B0ADA8);
  font-size: 12.5px;
  text-decoration: none;
  transition: color .28s ease, border-color .28s ease, background .28s ease;
}
.site-footer .footer-social a::before {
  content: '';
  width: 15px;
  height: 15px;
  flex: none;
  background: currentColor;
  -webkit-mask: var(--sl-ic) center / contain no-repeat;
  mask: var(--sl-ic) center / contain no-repeat;
}
.site-footer .footer-social a:nth-of-type(1) { --sl-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.9%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223.4%22%20y%3D%223.4%22%20width%3D%2217.2%22%20height%3D%2217.2%22%20rx%3D%225%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%224%22%2F%3E%3Ccircle%20cx%3D%2217.1%22%20cy%3D%226.9%22%20r%3D%221.05%22%20fill%3D%22black%22%20stroke%3D%22none%22%2F%3E%3C%2Fsvg%3E"); }
.site-footer .footer-social a:nth-of-type(2) { --sl-ic: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22black%22%3E%3Cpath%20d%3D%22M21.6%207.4a2.5%202.5%200%200%200-1.8-1.8C18.2%205.2%2012%205.2%2012%205.2s-6.2%200-7.8.4A2.5%202.5%200%200%200%202.4%207.4C2%209%202%2012%202%2012s0%203%20.4%204.6a2.5%202.5%200%200%200%201.8%201.8c1.6.4%207.8.4%207.8.4s6.2%200%207.8-.4a2.5%202.5%200%200%200%201.8-1.8C22%2015%2022%2012%2022%2012s0-3-.4-4.6zM10%2015.1V8.9l5.2%203.1z%22%2F%3E%3C%2Fsvg%3E"); }
.site-footer .footer-social a:hover,
.site-footer .footer-social a:focus-visible {
  color: var(--gold, #C9A876);
  border-color: rgba(201,168,118,.45);
  background: rgba(201,168,118,.075);
}

/* ── لینک‌های عمومی فوتر ── */
.site-footer a { color: var(--text-dim, #7A7875); text-decoration: none; }
.site-footer a:hover,
.site-footer a:focus-visible { color: var(--gold, #C9A876); }

/* ── نوار پایانی ── */
.site-footer .footer-copy {
  margin: 0;
  padding-top: 22px;
  border-top: 1px solid var(--line, rgba(255,255,255,.06));
  font-family: 'Montserrat', sans-serif;
  font-size: 11.5px;
  letter-spacing: .07em;
  text-align: center;
  color: var(--text-dim, #7A7875);
  opacity: .75;
}

/* ═══ موبایل ═══ */
@media (max-width: 680px) {
  footer.site-footer {
    margin-top: 56px;
    padding: 0 20px 22px;
    line-height: 1.85;
  }
  .site-footer .footer-inner {
    grid-template-columns: 1fr;
    gap: 30px;
    padding-top: 36px;
    text-align: center;
  }
  .site-footer .footer-name {
    font-size: 20px;
    padding-bottom: 13px;
  }
  .site-footer .footer-name::after {
    right: 50%;
    transform: translateX(50%);
    background: linear-gradient(90deg, transparent, var(--gold, #C9A876), transparent);
    width: 60px;
  }
  .site-footer .footer-head { margin-bottom: 13px; }

  /* ناحیه‌ی لمسی مناسب، بدون کشیده‌شدن بیش‌ازحد فوتر */
  .site-footer li a { padding: 6px 0; }
  .site-footer .footer-tagline { margin-bottom: 4px; }
  .site-footer li a:hover { transform: none; }

  /* آیکن آدرس و ساعت کاری بالای متن، وسط‌چین */
  .site-footer address p:nth-of-type(2),
  .site-footer address p:nth-of-type(4) {
    padding-inline-start: 0;
    padding-top: 23px;
    margin-bottom: 8px;
  }
  .site-footer address p:nth-of-type(2)::before,
  .site-footer address p:nth-of-type(4)::before {
    inset-inline-start: auto;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
  }

  /* دکمه‌ی تماس تمام‌عرض */
  .site-footer address p:nth-of-type(3) { margin: 18px 0 16px; }
  .site-footer address a.footer-phone {
    display: flex;
    width: 100%;
    justify-content: center;
    min-height: 54px;
    font-size: 20px;
  }
  .site-footer .footer-social { justify-content: center; }
  .site-footer .footer-social a { height: 44px; padding: 0 18px; }

  .site-footer .footer-copy { padding-top: 20px; line-height: 1.9; }
}

@media (prefers-reduced-motion: reduce) {
  .site-footer li a,
  .site-footer address a.footer-phone { transition: none; }
  .site-footer li a:hover { transform: none; }
}


/* ═══ شماره‌های تماس بیرون از فوتر ═══
   .btn-tel در استایل داخل صفحات با Montserrat تعریف شده که رقم فارسی
   ندارد. این قانون با ویژگی (specificity) بالاتر آن را اصلاح می‌کند
   بدون آنکه لازم باشد HTML صفحات دست بخورد. */

a[href^="tel:"] {
  font-family: 'Vazirmatn', sans-serif;
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum";
  font-weight: 600;
  letter-spacing: .04em;
}


/* ═══ Breadcrumb ═══ */

.breadcrumb {
  max-width: 1000px;
  margin: 0 auto;
  padding: 12px 24px 0;
  font-family: 'Vazirmatn', sans-serif;
  font-size: 12px;
  color: var(--text-dim, #7A7875);
  position: relative;
  z-index: 3;
}

.breadcrumb ol {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
}

.breadcrumb li { display: flex; align-items: center; gap: 8px; }

.breadcrumb li + li::before {
  content: '‹';
  color: var(--text-dim, #7A7875);
  opacity: 0.5;
}

.breadcrumb a {
  color: var(--text-dim, #7A7875);
  text-decoration: none;
}

.breadcrumb a:hover,
.breadcrumb a:focus-visible { color: var(--gold, #C9A876); }

.breadcrumb [aria-current="page"] { color: var(--text-mid, #B0ADA8); }


/* ═══ دسترس‌پذیری ═══ */

.visually-hidden {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

:where(a, button, input, [tabindex]):focus-visible {
  outline: 2px solid var(--gold, #C9A876);
  outline-offset: 2px;
}
