/* ============================================================
   SCOPE GUARD
   قبلاً این فایل با سلکتورهای سراسری *, html, body کل سایت را
   تحت تأثیر قرار می‌داد (ریست مارجین/پدینگ همه‌ی المان‌ها، پس‌زمینه‌ی
   مشکی و رنگ سفید متن روی کل صفحه، حتی هدر/فوتر/محتوای اصلی وودمارت).
   این‌ها اکنون فقط داخل کانتینرهای خودِ این ویجت‌ها اعمال می‌شوند
   (کلاسی که المنتور به‌صورت خودکار به هر ویجت اضافه می‌کند)، نه کل صفحه.
   ============================================================ */
:is(
  .elementor-widget-benbeygi-intro,
  .elementor-widget-benbeygi-topbar,
  .elementor-widget-benbeygi-header,
  .elementor-widget-benbeygi-hero,
  .elementor-widget-benbeygi-collection,
  .elementor-widget-benbeygi-trust,
  .elementor-widget-benbeygi-services,
  .elementor-widget-benbeygi-faq,
  .elementor-widget-benbeygi-newsletter,
  .elementor-widget-benbeygi-footer
) :is(*, *::before, *::after),
:is(
  .elementor-widget-benbeygi-intro,
  .elementor-widget-benbeygi-topbar,
  .elementor-widget-benbeygi-header,
  .elementor-widget-benbeygi-hero,
  .elementor-widget-benbeygi-collection,
  .elementor-widget-benbeygi-trust,
  .elementor-widget-benbeygi-services,
  .elementor-widget-benbeygi-faq,
  .elementor-widget-benbeygi-newsletter,
  .elementor-widget-benbeygi-footer
) {
  margin: 0; padding: 0; box-sizing: border-box; -webkit-tap-highlight-color: transparent;
}

:root {
  --benbeygi-bg: #0a0908;
  --benbeygi-amber: #c9822f;
  --benbeygi-steel: #4a5c68;
  --benbeygi-leather: #6b3f2a;
  --benbeygi-ease: cubic-bezier(0.16, 1, 0.3, 1);
  --benbeygi-topbar-h: 64px;  /* height of .benbeygi-bw-topbar (search/account/cart row) */
  --benbeygi-nav-h: 76px;     /* height of #benbeygi-site-header (categories/nav row) */
}
@media (max-width: 860px)  { :root { --benbeygi-topbar-h: 56px; } }
/* #benbeygi-site-header is hidden below 1180px (its content now lives in the merged
   burger menu), so its reserved height collapses to 0 in that range */
@media (max-width: 1180px) { :root { --benbeygi-nav-h: 0px; } }

/* پس‌زمینه و تایپوگرافی پایه — قبلاً روی html/body کل سایت اعمال می‌شد،
   الان فقط روی خودِ کانتینرهای ویجت (برای پوشش کامل صفحه، این قالب باید
   به‌عنوان یک قالب Elementor Canvas/تمام‌عرض بدون هدر و فوتر تم استفاده شود؛
   این‌طوری حتی اگر اشتباهاً کنار هدر/فوتر وودمارت هم قرار بگیرد، آسیبی
   به آن‌ها نمی‌رساند). */
body:has(.elementor-widget-benbeygi-hero) { overflow-x: hidden; }
:is(
  .elementor-widget-benbeygi-intro,
  .elementor-widget-benbeygi-topbar,
  .elementor-widget-benbeygi-header,
  .elementor-widget-benbeygi-hero,
  .elementor-widget-benbeygi-collection,
  .elementor-widget-benbeygi-trust,
  .elementor-widget-benbeygi-services,
  .elementor-widget-benbeygi-faq,
  .elementor-widget-benbeygi-newsletter,
  .elementor-widget-benbeygi-footer
) {
  background: var(--benbeygi-bg);
  font-family: 'Vazirmatn', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.benbeygi-card-name, .benbeygi-card-blend, .benbeygi-card-ingredients, .benbeygi-card-meta, .benbeygi-card-price,
.benbeygi-card-btn, .benbeygi-collection-eyebrow, .benbeygi-collection-title,
.benbeygi-newsletter-title, .benbeygi-newsletter-sub, .benbeygi-newsletter-input, .benbeygi-newsletter-btn,
.benbeygi-footer-brand, .benbeygi-footer-center, .benbeygi-footer-links,
.benbeygi-header-brand, .benbeygi-header-shop, .benbeygi-loader-title, .benbeygi-loader-note,
.benbeygi-brand-word, .benbeygi-oline, .benbeygi-card-badge, .benbeygi-trust-eyebrow, .benbeygi-trust-title,
.benbeygi-trust-num, .benbeygi-trust-label {
  font-family: 'Vazirmatn', sans-serif;
  direction: rtl;
}

.benbeygi-card-name {
  font-family: 'Vazirmatn', sans-serif;
  font-size: clamp(24px, 3.2vw, 36px);
  letter-spacing: 0.02em;
  padding-left: 0;
}

.benbeygi-collection-title { direction: rtl; }
.benbeygi-newsletter-title { direction: rtl; }
.benbeygi-newsletter-sub   { direction: rtl; }
.benbeygi-trust-title      { direction: rtl; }

.benbeygi-card-body { text-align: right; }
.benbeygi-card-foot { text-align: right; }
.benbeygi-card-price-row { direction: rtl; }
.benbeygi-card-meta { direction: rtl; }

.benbeygi-oline {
  font-family: 'Vazirmatn', sans-serif;
  font-style: normal;
  direction: rtl;
}

.benbeygi-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;
}

body.benbeygi-loading { overflow: hidden; height: 100vh; }

::selection { background: rgba(201, 130, 47, 0.25); color: #fff; }

html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
.lenis.lenis-stopped { overflow: hidden; }
.lenis.lenis-smooth iframe { pointer-events: none; }

#benbeygi-loader {
  position: fixed;
  inset: 0;
  z-index: 1000;
  background: var(--benbeygi-bg);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: opacity 0.8s ease;
}
#benbeygi-loader.benbeygi-hidden { opacity: 0; pointer-events: none; }

.benbeygi-loader-title {
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 600;
  font-size: clamp(26px, 7vw, 48px);
  color: var(--benbeygi-amber);
  letter-spacing: 0.08em;
}

.benbeygi-loader-bar-track {
  width: 200px;
  height: 2px;
  margin-top: 32px;
  background: rgba(201, 130, 47, 0.15);
  border-radius: 2px;
  overflow: hidden;
}
.benbeygi-loader-bar-fill {
  width: 0%;
  height: 100%;
  background: var(--benbeygi-amber);
  transition: width 0.3s ease;
}

.benbeygi-loader-note {
  margin-top: 18px;
  font-size: 11px;
  font-weight: 300;
  letter-spacing: 0.05em;
  color: rgba(255, 255, 255, 0.3);
}

/* ============================================================
   Topbar widget (benbeygi-topbar): logo + search + account/cart
   Sits above #benbeygi-site-header and stays visible while scrolling.
   ============================================================ */
.benbeygi-bw-topbar {
  position: sticky;
  top: 0;
  z-index: 210; /* above #benbeygi-site-header (200) so its mobile dropdown can overlay the nav row too */
  background: var(--benbeygi-bg);
  border-bottom: 1px solid rgba(201, 130, 47, 0.14);
}
.benbeygi-bw-topbar-inner {
  display: flex;
  align-items: center;
  gap: 24px;
  height: var(--benbeygi-topbar-h);
  padding: 0 34px;
}
.benbeygi-bw-topbar-col { display: flex; align-items: center; }

/* --- logo --- */
.benbeygi-bw-topbar-logo { flex: 0 0 auto; }
.benbeygi-bw-topbar-logo-link { text-decoration: none; }
.benbeygi-bw-topbar-logo-text {
  font-family: 'Vazirmatn', sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: #fff;
  white-space: nowrap;
}

/* --- search --- */
.benbeygi-bw-topbar-search { flex: 1 1 auto; min-width: 0; }
.benbeygi-bw-search-form {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 480px;
  height: 40px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.04);
  overflow: hidden;
  transition: border-color 0.3s var(--benbeygi-ease), background 0.3s var(--benbeygi-ease);
}
.benbeygi-bw-search-form:focus-within {
  border-color: rgba(201, 130, 47, 0.55);
  background: rgba(255, 255, 255, 0.06);
}
.benbeygi-bw-search-cat-jump {
  flex: 0 0 auto;
  max-width: 130px;
  height: 100%;
  border: none;
  border-left: 1px solid rgba(255, 255, 255, 0.12);
  background: transparent;
  color: rgba(255, 255, 255, 0.65);
  font-family: 'Vazirmatn', sans-serif;
  font-size: 12px;
  padding: 0 12px;
  cursor: pointer;
}
.benbeygi-bw-search-input {
  flex: 1 1 auto;
  min-width: 0;
  height: 100%;
  border: none;
  background: transparent;
  color: #fff;
  font-family: 'Vazirmatn', sans-serif;
  font-size: 13px;
  padding: 0 14px;
}
.benbeygi-bw-search-input::placeholder { color: rgba(255, 255, 255, 0.35); }
.benbeygi-bw-search-input:focus { outline: none; }
.benbeygi-bw-search-btn {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 100%;
  border: none;
  background: transparent;
  color: var(--benbeygi-amber);
  cursor: pointer;
}

/* --- account / wishlist / cart --- */
.benbeygi-bw-topbar-actions { flex: 0 0 auto; gap: 22px; }
.benbeygi-bw-action {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: rgba(255, 255, 255, 0.75);
  white-space: nowrap;
  transition: color 0.25s var(--benbeygi-ease);
}
.benbeygi-bw-action:hover { color: var(--benbeygi-amber); }
.benbeygi-bw-action-icon { display: flex; position: relative; flex: 0 0 auto; }
.benbeygi-bw-action-text { font-family: 'Vazirmatn', sans-serif; font-size: 12px; }
.benbeygi-bw-action-cart .benbeygi-bw-badge {
  position: absolute;
  top: -6px; left: -8px;
  min-width: 15px;
  height: 15px;
  padding: 0 3px;
  border-radius: 100px;
  background: var(--benbeygi-amber);
  color: var(--benbeygi-bg);
  font-size: 9px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}
.benbeygi-bw-cart-subtotal { color: #fff; }

/* --- mobile burger (hidden on desktop) --- */
.benbeygi-bw-topbar-burger {
  display: none;
  position: relative;
  width: 38px;
  height: 38px;
  flex: 0 0 auto;
  border-radius: 50%;
  border: 1px solid rgba(201, 130, 47, 0.35);
 background-color: none !important;
  cursor: pointer;
  padding: 0;
  transition: background 0.3s var(--benbeygi-ease), border-color 0.3s var(--benbeygi-ease);
}
.benbeygi-bw-topbar-burger span {
  position: absolute;
  right: 11px; left: 11px;
  height: 1.5px;
  border-radius: 2px;
  background: var(--benbeygi-amber);
  transition: transform 0.3s var(--benbeygi-ease), opacity 0.3s var(--benbeygi-ease), top 0.3s var(--benbeygi-ease);
}
.benbeygi-bw-topbar-burger span:nth-child(1) { top: 14px; }
.benbeygi-bw-topbar-burger span:nth-child(2) { top: 19px; }
.benbeygi-bw-topbar-burger span:nth-child(3) { top: 24px; }
.benbeygi-bw-topbar-burger.benbeygi-is-open span:nth-child(1) { top: 19px; transform: rotate(45deg); }
.benbeygi-bw-topbar-burger.benbeygi-is-open span:nth-child(2) { opacity: 0; }
.benbeygi-bw-topbar-burger.benbeygi-is-open span:nth-child(3) { top: 19px; transform: rotate(-45deg); }

@media (hover: hover) {
  .benbeygi-bw-topbar-burger:hover {
    background: rgba(201, 130, 47, 0.12);
    border-color: rgba(201, 130, 47, 0.6);
  }
}

/* --- mobile dropdown panel (search + cat jump + account links) --- */
.benbeygi-bw-topbar-mobile {
  position: absolute;
  top: 100%; right: 0; left: 0;
  z-index: 220;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  background: var(--benbeygi-bg);
  border-bottom: 1px solid rgba(201, 130, 47, 0.18);
  box-shadow: 0 24px 48px -24px rgba(0, 0, 0, 0.6);
  transition: max-height 0.35s var(--benbeygi-ease), opacity 0.3s var(--benbeygi-ease);
}
.benbeygi-bw-topbar-mobile.benbeygi-is-open {
  max-height: 420px;
  opacity: 1;
  overflow-y: auto;
}
.benbeygi-bw-topbar-mobile .benbeygi-bw-search-form--mobile {
  margin: 16px 20px 0;
  width: auto;
  max-width: none;
}
.benbeygi-bw-search-cat-jump--mobile {
  display: block;
  width: calc(100% - 40px);
  margin: 10px 20px 0;
  height: 40px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.04);
  color: rgba(255, 255, 255, 0.75);
  font-family: 'Vazirmatn', sans-serif;
  font-size: 13px;
  padding: 0 12px;
}
.benbeygi-bw-topbar-mobile-actions {
  display: flex;
  flex-direction: column;
  margin: 16px 20px 18px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.benbeygi-bw-topbar-mobile-actions a {
  padding: 14px 4px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.85);
  text-decoration: none;
  font-family: 'Vazirmatn', sans-serif;
  font-size: 13px;
}
.benbeygi-bw-topbar-mobile-actions a:last-child { border-bottom: none; }

/* --- responsive collapse: tablet + mobile ---
   Breakpoint matches the header widget's own collapse point (1180px) since
   the burger button below is now the SINGLE trigger for both the search
   panel and the header's category menu — they must appear/disappear together. */
@media (max-width: 1180px) {
  .benbeygi-bw-topbar-inner { padding: 0 20px; gap: 12px; }
  .benbeygi-bw-topbar-actions { display: none; }        /* حساب کاربری/علاقه‌مندی/سبد میره داخل پنل کشویی یکپارچه */
  .benbeygi-bw-topbar-search  { flex: 1 1 auto; }        /* سرچ‌باکس باقی می‌مونه و جا رو پر می‌کنه */
  .benbeygi-bw-topbar-burger {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
@media (max-width: 480px) {
  .benbeygi-bw-topbar-inner   { padding: 0 12px; gap: 8px; }
  .benbeygi-bw-topbar-logo-text { font-size: 12px; }
  .benbeygi-bw-search-cat-jump { display: none; }        /* برای جا شدن سه عنصر در صفحه‌ی خیلی کوچیک */
  .benbeygi-bw-search-form    { max-width: none; }
}

/* --- merged search/account content once it's relocated into #benbeygi-mobileNav
   (see the topbar widget's script) — normalizes spacing so it reads as
   part of the same panel, not a separate floating block --- */
.benbeygi-mnav-search-block {
  margin: 0 0 22px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(201, 130, 47, 0.16);
}
.benbeygi-mnav-search-block .benbeygi-bw-search-form--mobile {
  margin: 0;
  width: 100%;
}
.benbeygi-mnav-search-block .benbeygi-bw-search-cat-jump--mobile {
  margin: 10px 0 0;
  width: 100%;
}
.benbeygi-mnav-search-block .benbeygi-bw-topbar-mobile-actions {
  margin: 16px 0 0;
}

#benbeygi-site-header {
  position: fixed;
  top: var(--benbeygi-topbar-h); left: 0; right: 0;
  height: var(--benbeygi-nav-h);
  z-index: 200;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 0 34px;
  transition: background 0.4s var(--benbeygi-ease), backdrop-filter 0.4s var(--benbeygi-ease), box-shadow 0.4s var(--benbeygi-ease);
}
#benbeygi-site-header.benbeygi-is-scrolled {
  background: rgba(10, 9, 8, 0.72);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow: 0 1px 0 rgba(201, 130, 47, 0.18);
}
.benbeygi-header-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}
.benbeygi-header-logo-mark {
  width: 30px; height: 30px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 30%, #e2a256, var(--benbeygi-amber) 60%, #8a5a1f);
  flex: 0 0 auto;
}
.benbeygi-header-brand {
  font-family: 'Vazirmatn', sans-serif;
  font-size: 17px;
  font-weight: 700;
  color: var(--benbeygi-amber);
  letter-spacing: 0.03em;
  text-shadow: 0 2px 24px rgba(0, 0, 0, 0.8);
}
.benbeygi-header-nav {
  display: flex;
  align-items: center;
  gap: 34px;
  list-style: none;
}
.benbeygi-header-nav a {
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.02em;
  color: rgba(255, 255, 255, 0.72);
  text-decoration: none;
  cursor: pointer;
  transition: color 0.35s var(--benbeygi-ease);
  text-shadow: 0 2px 24px rgba(0, 0, 0, 0.8);
}
.benbeygi-header-actions {
  display: flex;
  align-items: center;
  gap: 14px;
  flex: 0 0 auto;
}
.benbeygi-header-cta {
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.03em;
  color: var(--benbeygi-amber);
  border: 1px solid rgba(201, 130, 47, 0.55);
  border-radius: 100px;
  padding: 10px 22px;
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.35s var(--benbeygi-ease), color 0.35s var(--benbeygi-ease), border-color 0.35s var(--benbeygi-ease);
}
@media (hover: hover) {
  .benbeygi-wd-header-cats:hover .benbeygi-cats-dropdown {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }
}
.benbeygi-cats-dropdown::before {
  content: "";
  position: absolute;
  top: -16px;
  right: 0;
  left: 0;
  height: 16px;
}

.benbeygi-mobile-nav {
  position: fixed;
  top: calc(var(--benbeygi-topbar-h) + var(--benbeygi-nav-h));
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 190;
  background: rgba(10, 9, 8, 0.98);
  display: flex;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s var(--benbeygi-ease);
}
.benbeygi-mobile-nav.benbeygi-is-open { opacity: 1; pointer-events: auto; }
.benbeygi-mobile-nav-scroll { direction: rtl; }

/* ============================================================
   Header center: categories-opener + flat nav row
   ============================================================ */
.benbeygi-header-center {
  display: flex;
  align-items: center;
  gap: 36px;
  flex: 1 1 auto;
  min-width: 0;
  justify-content: center;
}

.benbeygi-wd-header-cats { position: relative; }
.benbeygi-cats-opener {
  display: flex;
  align-items: center;
  gap: 9px;
  background: transparent;
  border: 1px solid rgba(201, 130, 47, 0.4);
  border-radius: 100px;
  padding: 9px 18px 9px 16px;
  cursor: pointer;
  font-family: 'Vazirmatn', sans-serif;
  font-size: 13px;
  font-weight: 500;
  color: var(--benbeygi-amber);
  white-space: nowrap;
  transition: background 0.3s var(--benbeygi-ease), color 0.3s var(--benbeygi-ease);
}
.benbeygi-cats-opener-icon,
.benbeygi-cats-opener-icon::before,
.benbeygi-cats-opener-icon::after {
  width: 14px; height: 1.4px;
  background: currentColor;
  display: block;
  border-radius: 2px;
}
.benbeygi-cats-opener-icon { position: relative; }
.benbeygi-cats-opener-icon::before,
.benbeygi-cats-opener-icon::after { content: ''; position: absolute; right: 0; }
.benbeygi-cats-opener-icon::before { top: -4px; width: 14px; }
.benbeygi-cats-opener-icon::after { top: 4px; width: 9px; }

.benbeygi-cats-dropdown {
  position: absolute;
  top: calc(100% + 16px);
  right: 0;
  z-index: 80;
  width: min(920px, 82vw);
  background: rgba(13, 11, 9, 0.98);
  border: 1px solid rgba(201, 130, 47, 0.28);
  border-radius: 14px;
  box-shadow: 0 40px 80px -30px rgba(0, 0, 0, 0.9);
  padding: 30px 32px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(10px);
  transition: opacity 0.3s var(--benbeygi-ease), transform 0.3s var(--benbeygi-ease), visibility 0.3s;
}
.benbeygi-wd-header-cats.benbeygi-is-open .benbeygi-cats-dropdown {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}
.benbeygi-cats-dropdown-inner {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 26px 22px;
}
.benbeygi-cats-col-title {
  display: block;
  font-family: 'Vazirmatn', sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: #fff;
  text-decoration: none;
  padding-bottom: 12px;
  margin-bottom: 10px;
  border-bottom: 1px solid rgba(201, 130, 47, 0.25);
  transition: color 0.25s var(--benbeygi-ease);
}
.benbeygi-cats-col ul { list-style: none; }
.benbeygi-cats-col li { margin-top: 8px; }
.benbeygi-cats-col a.benbeygi-cats-sub-link {
  font-size: 12px;
  font-weight: 300;
  color: rgba(255, 255, 255, 0.62);
  text-decoration: none;
  transition: color 0.25s var(--benbeygi-ease), padding-right 0.25s var(--benbeygi-ease);
}

.benbeygi-header-nav { display: flex; align-items: center; gap: 26px; flex-wrap: wrap; }
.benbeygi-header-nav li.benbeygi-item-label-red a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.benbeygi-menu-label {
  font-size: 9.5px;
  font-weight: 500;
  color: #1a0f0a;
  background: var(--benbeygi-amber);
  border-radius: 100px;
  padding: 2px 8px;
  letter-spacing: 0.01em;
}

/* ============================================================
   Catalog download dropdown (desktop)
   ============================================================ */
.benbeygi-catalog-dd { position: relative; }
.benbeygi-catalog-dd-btn {
  font-family: 'Vazirmatn', sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: rgba(255, 255, 255, 0.78);
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 100px;
  padding: 10px 18px;
  cursor: pointer;
  white-space: nowrap;
  transition: border-color 0.3s var(--benbeygi-ease), color 0.3s var(--benbeygi-ease);
}
.benbeygi-catalog-dd-list {
  position: absolute;
  top: calc(100% + 12px);
  left: 0;
  min-width: 240px;
  z-index: 60;
  background: rgba(14, 12, 10, 0.97);
  border: 1px solid rgba(201, 130, 47, 0.28);
  border-radius: 12px;
  box-shadow: 0 30px 60px -24px rgba(0, 0, 0, 0.85);
  padding: 8px;
  list-style: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(8px);
  transition: opacity 0.3s var(--benbeygi-ease), transform 0.3s var(--benbeygi-ease), visibility 0.3s;
}
.benbeygi-catalog-dd.benbeygi-is-open .benbeygi-catalog-dd-list {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}
.benbeygi-catalog-dd-list a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 10px;
  font-size: 12.5px;
  font-weight: 300;
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
  border-radius: 8px;
  transition: background 0.25s var(--benbeygi-ease), color 0.25s var(--benbeygi-ease);
}
.benbeygi-catalog-dd-list img { width: 16px; height: 16px; flex: 0 0 auto; }

@media (hover: hover) {
  .benbeygi-mega-panel-list a:hover { color: var(--benbeygi-amber); padding-right: 8px; }
  .benbeygi-catalog-dd-btn:hover { color: var(--benbeygi-amber); border-color: rgba(201, 130, 47, 0.55); }
  .benbeygi-catalog-dd-list a:hover { background: rgba(201, 130, 47, 0.1); color: var(--benbeygi-amber); }
}

/* ============================================================
   Mobile accordion nav (departments + subcategories)
   ============================================================ */
.benbeygi-mobile-nav-scroll {
  width: 100%;
  max-width: 460px;
  max-height: calc(100vh - var(--benbeygi-topbar-h) - var(--benbeygi-nav-h));
  overflow-y: auto;
  overflow-x: hidden;
  padding: 24px 26px 30px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 4px;
}
.benbeygi-mnav-item { border-bottom: 1px solid rgba(201, 130, 47, 0.14); }
.benbeygi-mnav-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 2px;
}
.benbeygi-mnav-row a {
  font-family: 'Vazirmatn', sans-serif;
  font-size: 17px;
  font-weight: 500;
  color: #fff;
  text-decoration: none;
  overflow-wrap: break-word;
  word-break: break-word;
  min-width: 0;
}
.benbeygi-mnav-toggle {
  width: 34px; height: 34px;
  flex: 0 0 auto;
  border: none;
  background: transparent;
  color: var(--benbeygi-amber);
  font-size: 20px;
  font-weight: 300;
  cursor: pointer;
  transition: transform 0.3s var(--benbeygi-ease);
}
.benbeygi-mnav-item.benbeygi-is-open .benbeygi-mnav-toggle { transform: rotate(45deg); }
.benbeygi-mnav-sub {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s var(--benbeygi-ease);
}
.benbeygi-mnav-sub ul { list-style: none; padding: 2px 0 16px; }
.benbeygi-mnav-sub a {
  display: block;
  padding: 9px 2px;
  font-size: 14px;
  font-weight: 300;
  color: rgba(255, 255, 255, 0.65);
  text-decoration: none;
  overflow-wrap: break-word;
  word-break: break-word;
}
.benbeygi-mnav-cta-row {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 18px;
}
.benbeygi-mnav-cta-row .benbeygi-header-cta,
.benbeygi-mnav-cta-row .benbeygi-catalog-dd-btn { text-align: center; width: 100%; }
.benbeygi-mnav-cta-row .benbeygi-catalog-dd-btn { white-space: normal; }

#benbeygi-progress-track {
  position: fixed;
  top: 0; right: 0;
  width: 2px;
  height: 100vh;
  height: 100lvh;
  z-index: 100;
  background: rgba(201, 130, 47, 0.15);
}
#benbeygi-progress-fill {
  width: 100%;
  height: 100%;
  background: rgba(201, 130, 47, 0.8);
  transform: scaleY(0);
  transform-origin: top;
}

.benbeygi-hero {
  position: relative;
  width: 100%;
  height: 100vh;
  height: 100lvh;
  overflow: hidden;
  background: #000;
}
#benbeygi-hero-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 1;
  contain: paint;
}

.benbeygi-overlay {
  position: absolute;
  z-index: 2;
  pointer-events: none;
  line-height: 1.16;
  max-width: 42%;
}
.benbeygi-ov1 {
  top: 11%;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  max-width: 92%;
}
.benbeygi-ov2 { left: 8%; bottom: 15%; text-align: left; }
.benbeygi-ov3 { right: 8%; top: 50%; transform: translateY(-50%); text-align: right; }
.benbeygi-ov4 { left: 8%;  top: 50%; transform: translateY(-50%); text-align: left; }
.benbeygi-ov5 { left: 8%;  top: 16%; text-align: left; }

.benbeygi-title-text {
  display: inline-block;
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 600;
  font-size: clamp(40px, 9vw, 120px);
  letter-spacing: 0.05em;
  white-space: nowrap;
  color: rgba(201, 130, 47, 0.9);
  text-shadow: 0 2px 50px rgba(0, 0, 0, 0.9);
  opacity: 0;
}

.benbeygi-oline {
  display: block;
  white-space: nowrap;
  font-family: 'Vazirmatn', sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: clamp(22px, 4.2vw, 38px);
  color: rgba(255, 255, 255, 0.88);
  text-shadow: 0 2px 30px rgba(0, 0, 0, 0.95), 0 0 70px rgba(0, 0, 0, 0.8);
}
.benbeygi-word { display: inline-block; opacity: 0; }

/* ============================================================
   Scroll panels (index / kicker / title / spec)
   ============================================================ */
.benbeygi-panel {
  display: flex;
  flex-direction: column;
  gap: 12px;
  opacity: 0;
}
.benbeygi-panel__index {
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.14em;
  color: rgba(201, 130, 47, 0.6);
}
.benbeygi-panel__kicker {
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.22em;
  color: var(--benbeygi-amber);
  text-shadow: 0 2px 20px rgba(0, 0, 0, 0.9);
}
.benbeygi-panel__title {
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 600;
  font-size: clamp(26px, 4.4vw, 42px);
  line-height: 1.28;
  color: rgba(255, 255, 255, 0.92);
  text-shadow: 0 2px 30px rgba(0, 0, 0, 0.95), 0 0 70px rgba(0, 0, 0, 0.8);
}
.benbeygi-panel__spec {
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 300;
  font-size: 13.5px;
  color: rgba(255, 255, 255, 0.5);
}
.benbeygi-panel__spec i {
  font-style: normal;
  font-weight: 500;
  color: var(--benbeygi-amber);
  margin-left: 8px;
}
@media (max-width: 768px) {
  .benbeygi-panel__title { font-size: clamp(22px, 6.4vw, 32px); }
}

.benbeygi-brand-mark {
  position: absolute;
  z-index: 2;
  left: 50%;
  top: 83%;
  transform: translate(-50%, -50%);
  text-align: center;
  pointer-events: none;
}
.benbeygi-brand-word {
  display: block;
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 700;
  font-size: clamp(28px, 4.6vw, 60px);
  letter-spacing: 0.04em;
  white-space: nowrap;
  color: rgba(201, 130, 47, 0.95);
  text-shadow: 0 2px 50px rgba(0, 0, 0, 0.9);
}

.benbeygi-scroll-cue {
  position: absolute;
  z-index: 2;
  left: 50%;
  bottom: 6%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  pointer-events: none;
}
.benbeygi-scroll-cue span {
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.14em;
  color: rgba(255, 255, 255, 0.55);
}
.benbeygi-scroll-cue svg { animation: cueBob 1.6s ease-in-out infinite; }
@keyframes cueBob {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(6px); }
}

.benbeygi-collection {
  position: relative;
  padding: 150px 34px 170px;
  background:
    radial-gradient(ellipse 62% 46% at 50% 0%, rgba(201, 130, 47, 0.06), transparent 72%),
    var(--benbeygi-bg);
}
.benbeygi-collection-head { text-align: center; margin-bottom: 78px; }
.benbeygi-collection-eyebrow {
  display: block;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.3em;
  color: var(--benbeygi-amber);
}
.benbeygi-collection-title {
  margin-top: 16px;
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 600;
  font-size: clamp(28px, 4.6vw, 44px);
  color: #fff;
}

.benbeygi-cat-grid {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 250px));
  justify-content: center;
  gap: 20px;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}
.benbeygi-cat-grid li {
  margin: 0;
  padding: 0;
  list-style: none;
  min-width: 0;
}
@media (max-width: 1180px) {
  .benbeygi-cat-grid { grid-template-columns: repeat(3, minmax(0, 250px)); max-width: 840px; }
}
@media (max-width: 860px) {
  .benbeygi-cat-grid { grid-template-columns: repeat(2, minmax(0, 280px)); max-width: 620px; }
}
@media (max-width: 560px) {
  .benbeygi-cat-grid { grid-template-columns: minmax(0, 340px); max-width: 340px; }
}

.benbeygi-card {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  padding: 0;
  overflow: hidden;
  border-radius: 12px;
  box-shadow: 0 0 0 1px rgba(201, 130, 47, 0.3),
              0 24px 50px -34px rgba(0, 0, 0, 0.9);
  transition: transform 0.4s var(--benbeygi-ease), box-shadow 0.4s var(--benbeygi-ease);
}
.benbeygi-card-media {
  width: 100%;
  aspect-ratio: 4 / 2;
  object-fit: cover;
  display: block;
  transition: transform 0.5s var(--benbeygi-ease);
  background: #14110d;
}
.benbeygi-card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 18px 18px 20px;
}
.benbeygi-card-dawn     { background: linear-gradient(160deg, #1a140f, #241b12); }
.benbeygi-card-dusk     { background: linear-gradient(160deg, #0a0a0a, #1a1300); }
.benbeygi-card-night    { background: linear-gradient(160deg, #06090b, #0b1418); }
.benbeygi-card-steel    { background: linear-gradient(160deg, #0a0d10, #16232b); }
.benbeygi-card-leather  { background: linear-gradient(160deg, #120a08, #2a160f); }

.benbeygi-card-name {
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 700;
  font-size: clamp(17px, 1.5vw, 19px);
  letter-spacing: 0.02em;
  color: var(--benbeygi-amber);
}
.benbeygi-card-night .benbeygi-card-name,
.benbeygi-card-steel .benbeygi-card-name { color: #fff; }

.benbeygi-card-blend {
  margin-top: 3px;
  font-family: 'Vazirmatn', sans-serif;
  font-style: normal;
  font-size: 11.5px;
  color: rgba(255, 255, 255, 0.5);
}
.benbeygi-card-ingredients {
  margin-top: 10px;
  font-size: 11px;
  font-weight: 300;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.6);
}

.benbeygi-card-foot { margin-top: auto; padding-top: 14px; }
.benbeygi-card-price-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
}
.benbeygi-card-price {
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 500;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.7);
}
.benbeygi-card-btn {
  font-family: 'Vazirmatn', sans-serif;
  font-size: 10.5px;
  font-weight: 500;
  letter-spacing: 0.03em;
  color: var(--benbeygi-amber);
  background: transparent;
  border: 1px solid rgba(201, 130, 47, 0.45);
  border-radius: 6px;
  padding: 9px 14px;
  cursor: pointer;
  white-space: nowrap;
  text-decoration: none;
  transition: background 0.35s var(--benbeygi-ease), color 0.35s var(--benbeygi-ease),
              border-color 0.35s var(--benbeygi-ease);
}
.benbeygi-card-meta {
  display: block;
  margin-top: 12px;
  font-size: 9.5px;
  font-weight: 400;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, 0.3);
}
.benbeygi-card-badge {
  position: absolute;
  top: 12px; right: 12px;
  z-index: 3;
  font-size: 8.5px;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: var(--benbeygi-amber);
  border: 1px solid rgba(201, 130, 47, 0.4);
  border-radius: 100px;
  padding: 4px 9px;
  background: rgba(10, 9, 8, 0.55);
}

.benbeygi-trust {
  position: relative;
  padding: 130px 34px 150px;
  background: linear-gradient(180deg, var(--benbeygi-bg), #100b08 60%, var(--benbeygi-bg));
  border-top: 1px solid rgba(201, 130, 47, 0.12);
  border-bottom: 1px solid rgba(201, 130, 47, 0.12);
}
.benbeygi-trust-head { text-align: center; margin-bottom: 64px; }
.benbeygi-trust-eyebrow {
  display: block;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.3em;
  color: var(--benbeygi-amber);
}
.benbeygi-trust-title {
  margin-top: 16px;
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 600;
  font-size: clamp(26px, 4.2vw, 40px);
  color: #fff;
  max-width: 780px;
  margin-inline: auto;
}
.benbeygi-trust-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
  gap: 1px;
  max-width: 1120px;
  margin: 0 auto;
  background: rgba(201, 130, 47, 0.15);
  border: 1px solid rgba(201, 130, 47, 0.15);
  border-radius: 12px;
  overflow: hidden;
}
.benbeygi-trust-item {
  background: var(--benbeygi-bg);
  padding: 40px 28px;
  text-align: center;
}
.benbeygi-trust-num {
  display: block;
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 700;
  font-size: clamp(22px, 2.6vw, 30px);
  color: var(--benbeygi-amber);
}
.benbeygi-trust-label {
  display: block;
  margin-top: 10px;
  font-size: 13px;
  font-weight: 300;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.6);
}

.benbeygi-services {
  position: relative;
  padding: 130px 34px 150px;
  background: var(--benbeygi-bg);
}
.benbeygi-services-head { text-align: center; margin-bottom: 70px; }
.benbeygi-services-eyebrow {
  display: block;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.3em;
  color: var(--benbeygi-amber);
  font-family: 'Vazirmatn', sans-serif;
}
.benbeygi-services-title {
  margin-top: 16px;
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 600;
  font-size: clamp(28px, 4.6vw, 44px);
  color: #fff;
  direction: rtl;
}
.benbeygi-services-sub {
  margin-top: 18px;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.9;
  color: rgba(255, 255, 255, 0.55);
  max-width: 620px;
  margin-inline: auto;
  direction: rtl;
}

.benbeygi-services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  max-width: 1220px;
  margin: 56px auto 0;
  background: rgba(201, 130, 47, 0.15);
  border: 1px solid rgba(201, 130, 47, 0.15);
  border-radius: 12px;
  overflow: hidden;
  direction: rtl;
}
@media (max-width: 900px) { .benbeygi-services-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .benbeygi-services-grid { grid-template-columns: 1fr; } }

.benbeygi-service-item {
  background: var(--benbeygi-bg);
  padding: 38px 34px;
}
.benbeygi-service-item-title {
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 600;
  font-size: 17px;
  color: var(--benbeygi-amber);
  text-decoration: none;
  display: inline-block;
}
.benbeygi-service-item ul {
  list-style: none;
  margin-top: 18px;
}
.benbeygi-service-item li {
  position: relative;
  padding-right: 16px;
  margin-top: 10px;
  font-size: 13px;
  font-weight: 300;
  color: rgba(255, 255, 255, 0.6);
}
.benbeygi-service-item li::before {
  content: '';
  position: absolute;
  right: 0; top: 8px;
  width: 4px; height: 4px;
  border-radius: 50%;
  background: var(--benbeygi-amber);
}

.benbeygi-honors-title {
  text-align: center;
  margin-top: 110px;
  margin-bottom: 40px;
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 600;
  font-size: clamp(24px, 3.6vw, 34px);
  color: #fff;
  direction: rtl;
}
.benbeygi-honors-list {
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  list-style: none;
  direction: rtl;
}
.benbeygi-honors-list li {
  font-size: 12px;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.7);
  border: 1px solid rgba(201, 130, 47, 0.35);
  border-radius: 100px;
  padding: 10px 18px;
}

.benbeygi-founder-note {
  max-width: 780px;
  margin: 60px auto 0;
  text-align: center;
  font-size: 13px;
  font-weight: 300;
  line-height: 2;
  color: rgba(255, 255, 255, 0.55);
  direction: rtl;
}
.benbeygi-founder-note strong { color: var(--benbeygi-amber); font-weight: 600; }

.benbeygi-faq {
  position: relative;
  padding: 110px 34px 150px;
  background: linear-gradient(180deg, var(--benbeygi-bg), #100b08 60%, var(--benbeygi-bg));
  border-top: 1px solid rgba(201, 130, 47, 0.12);
}
.benbeygi-faq-head { text-align: center; margin-bottom: 56px; }
.benbeygi-faq-eyebrow {
  display: block;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.3em;
  color: var(--benbeygi-amber);
  font-family: 'Vazirmatn', sans-serif;
}
.benbeygi-faq-title {
  margin-top: 16px;
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 600;
  font-size: clamp(26px, 4.2vw, 40px);
  color: #fff;
  direction: rtl;
}
.benbeygi-faq-list {
  max-width: 820px;
  margin: 0 auto;
  direction: rtl;
}
.benbeygi-faq-item {
  border-bottom: 1px solid rgba(201, 130, 47, 0.2);
}
.benbeygi-faq-item:first-child { border-top: 1px solid rgba(201, 130, 47, 0.2); }
.benbeygi-faq-q {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 26px 4px;
  text-align: right;
  font-family: 'Vazirmatn', sans-serif;
  font-size: 15px;
  font-weight: 500;
  color: #fff;
}
.benbeygi-faq-q-icon {
  flex: 0 0 auto;
  width: 22px; height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--benbeygi-amber);
  font-size: 18px;
  font-weight: 300;
  transition: transform 0.35s var(--benbeygi-ease);
}
.benbeygi-faq-item.benbeygi-is-open .benbeygi-faq-q-icon { transform: rotate(45deg); }
.benbeygi-faq-a {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s var(--benbeygi-ease);
}
.benbeygi-faq-a-inner {
  padding: 0 4px 26px;
  font-size: 13px;
  font-weight: 300;
  line-height: 1.9;
  color: rgba(255, 255, 255, 0.6);
}

.benbeygi-newsletter {
  position: relative;
  padding: 168px 34px;
  text-align: center;
  background-size: cover;
  background-position: center;
}
/* background-image (gradient + photo) is injected inline by the widget
   so it can be changed from the Elementor "تصویر پس‌زمینه" control */
.benbeygi-newsletter-title {
  font-family: 'Vazirmatn', sans-serif;
  font-weight: 600;
  font-size: clamp(30px, 5.2vw, 48px);
  color: #fff;
}
.benbeygi-newsletter-sub {
  margin-top: 16px;
  font-size: 13px;
  font-weight: 300;
  letter-spacing: 0.02em;
  color: rgba(255, 255, 255, 0.45);
}
.benbeygi-newsletter-form {
  margin-top: 44px;
  display: inline-flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
  justify-content: center;
}
.benbeygi-newsletter-input {
  width: min(260px, 78vw);
  padding: 12px 4px;
  font-family: 'Vazirmatn', sans-serif;
  font-size: 13px;
  color: #fff;
  background: transparent;
  border: none;
  border-bottom: 1px solid rgba(201, 130, 47, 0.55);
  outline: none;
  transition: border-color 0.35s var(--benbeygi-ease);
}
.benbeygi-newsletter-input::placeholder { color: rgba(255, 255, 255, 0.3); }
.benbeygi-newsletter-input:focus { border-bottom-color: var(--benbeygi-amber); }
.benbeygi-newsletter-btn {
  font-family: 'Vazirmatn', sans-serif;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: var(--benbeygi-amber);
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 8px 2px;
  transition: opacity 0.3s ease;
}
.benbeygi-newsletter-btn span { border-bottom: 1px solid transparent; transition: border-color 0.3s ease; }
.benbeygi-newsletter-note {
  margin-top: 18px;
  font-size: 11px;
  font-weight: 300;
  color: rgba(255, 255, 255, 0.3);
}

.benbeygi-site-footer {
  padding: 90px 34px 40px;
  background: var(--benbeygi-bg);
  border-top: 1px solid rgba(201, 130, 47, 0.15);
}
.benbeygi-footer-top {
  display: flex;
  flex-wrap: wrap;
  gap: 60px;
  justify-content: space-between;
  max-width: 1220px;
  margin: 0 auto;
  padding-bottom: 60px;
}
.benbeygi-footer-about {
  flex: 1 1 260px;
  max-width: 320px;
}
.benbeygi-footer-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}
.benbeygi-footer-brand {
  font-family: 'Vazirmatn', sans-serif;
  font-size: 19px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--benbeygi-amber);
}
.benbeygi-footer-about p {
  margin-top: 18px;
  font-size: 13px;
  font-weight: 300;
  line-height: 1.9;
  color: rgba(255, 255, 255, 0.5);
  direction: rtl;
}
.benbeygi-footer-cols {
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
  direction: rtl;
}
.benbeygi-footer-col-title {
  font-family: 'Vazirmatn', sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.05em;
  color: rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
  margin-bottom: 20px;
}
.benbeygi-footer-col ul { list-style: none; display: flex; flex-direction: column; gap: 13px; }
.benbeygi-footer-col a {
  font-size: 13px;
  font-weight: 300;
  color: rgba(255, 255, 255, 0.72);
  text-decoration: none;
  transition: color 0.3s ease;
}
.benbeygi-footer-bottom {
  max-width: 1220px;
  margin: 0 auto;
  padding-top: 30px;
  border-top: 1px solid rgba(201, 130, 47, 0.12);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  direction: rtl;
}
.benbeygi-footer-copy {
  font-size: 11px;
  font-weight: 300;
  letter-spacing: 0.02em;
  color: rgba(255, 255, 255, 0.35);
}
.benbeygi-footer-copy a { color: rgba(255, 255, 255, 0.55); text-decoration: none; }
.benbeygi-footer-social { display: flex; gap: 18px; font-size: 11px; }
.benbeygi-footer-social a { color: rgba(255, 255, 255, 0.5); text-decoration: none; transition: color 0.3s ease; }

@media (min-width: 769px) {
  .benbeygi-newsletter { background-attachment: fixed; }
}
@media (max-width: 1180px) {
  /* #benbeygi-site-header only ever held the categories/nav row + the old burger
     button; the burger has moved into the topbar and now opens a single
     combined panel, so the whole row collapses to nothing on mobile/tablet */
  #benbeygi-site-header { display: none; }
}

@media (max-width: 768px) {
  #benbeygi-site-header { padding: 0 20px; }
  .benbeygi-collection { padding: 110px 22px 120px; }
  .benbeygi-trust { padding: 90px 22px 110px; }
  .benbeygi-services { padding: 90px 22px 110px; }
  .benbeygi-faq { padding: 90px 22px 110px; }
  .benbeygi-newsletter { padding: 120px 22px; }
  .benbeygi-overlay { max-width: 84%; }
  .benbeygi-ov2 { left: 7%; bottom: 12%; }
  .benbeygi-ov3 { right: 7%; }
  .benbeygi-ov4 { left: 7%; }
  .benbeygi-ov5 { left: 7%; }
}
@media (max-width: 600px) {
  .benbeygi-title-text { letter-spacing: 0.03em; }
  .benbeygi-oline { white-space: normal; }
  .benbeygi-card-body { padding: 18px 18px 20px; }
  .benbeygi-card-price-row { flex-direction: column; align-items: stretch; }
  .benbeygi-card-btn { padding: 13px; text-align: center; }
  .benbeygi-newsletter-btn { padding: 14px 10px; }
  .benbeygi-header-logo { min-height: 44px; }
}
@media (max-width: 680px) {
  .benbeygi-footer-top { flex-direction: column; gap: 40px; }
  .benbeygi-footer-bottom { flex-direction: column; text-align: center; }
}
/* #benbeygi-site-header height at ≤480px is now handled by the --nav-h var override above */
@media (max-width: 400px) {
  .benbeygi-overlay { max-width: 90%; }
  .benbeygi-ov2, .benbeygi-ov4, .benbeygi-ov5 { left: 5%; }
  .benbeygi-ov3 { right: 5%; }
}

@media (hover: hover) {
  .benbeygi-card:hover {
    transform: translateY(-12px);
    box-shadow: 0 0 0 1px rgba(201, 130, 47, 0.6),
                0 36px 64px -28px rgba(0, 0, 0, 0.9),
                0 0 60px -14px rgba(201, 130, 47, 0.28);
  }
  .benbeygi-card:hover .benbeygi-card-media { transform: scale(1.045); }
  .benbeygi-header-nav a:hover { color: var(--benbeygi-amber); }
  .benbeygi-header-cta:hover { background: var(--benbeygi-amber); color: #1a0f0a; }
  .benbeygi-card-btn:hover {
    background: var(--benbeygi-amber);
    border-color: var(--benbeygi-amber);
    color: #1a0f0a;
  }
  .benbeygi-newsletter-btn:hover span { border-bottom-color: var(--benbeygi-amber); }
  .benbeygi-footer-col a:hover { color: var(--benbeygi-amber); }
  .benbeygi-footer-social a:hover { color: var(--benbeygi-amber); }
  .benbeygi-service-item-title:hover { text-decoration: underline; }
}

@media (prefers-reduced-motion: reduce) {
  .benbeygi-card, .benbeygi-card-media, .benbeygi-card-btn, .benbeygi-newsletter-btn span, .benbeygi-footer-col a { transition: none !important; }
  .benbeygi-scroll-cue svg { animation: none; }
}
#benbeygi-intro-honor{
    position:fixed;
    inset:0;
    z-index:150;
    display:flex;
    align-items:center;
    justify-content:center;
    pointer-events:none;
    padding:24px;
    box-sizing:border-box;
}
#benbeygi-intro-honor .benbeygi-intro-honor-inner{
    width:min(760px,92vw);
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:22px;
    animation:introShow 1.5s cubic-bezier(.19,1,.22,1);
    /* تا پایان لودینگ بار، انیمیشن را روی فریم صفر (نامرئی) نگه دار */
    animation-play-state:paused;
}
body:not(.benbeygi-loading) #benbeygi-intro-honor .benbeygi-intro-honor-inner{
    animation-play-state:running;
}
@keyframes introShow{
    0%{
        opacity:0;
        transform:translateY(50px) scale(.94);
        filter:blur(16px);
    }
    60%{
        filter:blur(2px);
    }
    100%{
        opacity:1;
        transform:translateY(0) scale(1);
        filter:blur(0);
    }
}

/* خط طلایی بالای برند */
.benbeygi-intro-logo-mark{
    width:54px;
    height:2px;
    background:linear-gradient(90deg,transparent,#c8a56a,transparent);
    border-radius:50px;
    box-shadow:0 0 30px rgba(200,165,106,.55);
    animation:markGlow 3.5s ease-in-out infinite;
}
@keyframes markGlow{
    0%,100%{ opacity:.75; }
    50%{ opacity:1; }
}

/* عنوان برند */
.benbeygi-intro-brand{
    margin:0;
    font-size:clamp(38px,7vw,72px);
    font-weight:200;
    letter-spacing:clamp(4px,1.2vw,10px);
    color:#fff;
    line-height:1.05;
    text-shadow:
        0 2px 8px rgba(0,0,0,.25),
        0 14px 45px rgba(0,0,0,.4);
}

/* جداکننده وسط */
.benbeygi-intro-divider{
    width:90px;
    height:1px;
    background:linear-gradient(90deg,
        transparent,
        rgba(200,165,106,.9),
        transparent);
}

/* پیام اصلی */
.benbeygi-intro-msg{
    margin:0;
    max-width:640px;
    font-size:clamp(15px,2.2vw,20px);
    line-height:1.9;
    font-weight:300;
    color:rgba(255,255,255,.94);
    text-shadow:0 6px 25px rgba(0,0,0,.45);
}

/* امضا */
.benbeygi-intro-signature{
    font-size:13px;
    letter-spacing:3px;
    text-transform:uppercase;
    color:rgba(200,165,106,.8);
    font-weight:400;
}

/* هینت اسکرول */
.benbeygi-intro-scroll-hint{
    margin-top:34px;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:12px;
    color:rgba(255,255,255,.6);
    font-size:12px;
    letter-spacing:3px;
    text-transform:uppercase;
    animation:floatArrow 2.4s ease-in-out infinite;
}
.benbeygi-intro-scroll-hint::after{
    content:"";
    width:14px;
    height:14px;
    border-right:1.5px solid rgba(255,255,255,.6);
    border-bottom:1.5px solid rgba(255,255,255,.6);
    transform:rotate(45deg);
}
@keyframes floatArrow{
    0%,100%{
        transform:translateY(0);
        opacity:.55;
    }
    50%{
        transform:translateY(10px);
        opacity:1;
    }
}

/* واکنش‌گرا برای موبایل کوچک */
@media (max-width:420px){
    #benbeygi-intro-honor .benbeygi-intro-honor-inner{
        gap:16px;
    }
    .benbeygi-intro-msg{
        line-height:1.75;
    }
}
#benbeygi-intro-honor{
    transition:
        opacity .8s ease,
        transform .8s cubic-bezier(.22,.61,.36,1),
        filter .8s ease;

    opacity:1;
    transform:translateY(0) scale(1);
    filter:blur(0);
}

#benbeygi-intro-honor.benbeygi-intro-hide{
    opacity:0;
    transform:translateY(-70px) scale(.97);
    filter:blur(10px);
    pointer-events:none;
}


/* ============================================================
   ELEMENTOR EDITOR FIXES
   این استایل‌ها فقط در محیط ویرایش المنتور اعمال می‌شوند
   ============================================================ */

/* ─── Fix 1: Header menu – center alignment & standard layout ─── */
.elementor-editor-active #benbeygi-site-header,
.elementor-editor-active .elementor-widget-benbeygi-header .e-con-inner > #benbeygi-site-header {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
}

/* اطمینان از تراز عمودی و افقی صحیح آیتم‌های منو در ویرایشگر */
.elementor-editor-active .benbeygi-header-center {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 1 1 auto !important;
}

.elementor-editor-active .benbeygi-header-nav {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 26px !important;
  list-style: none !important;
}

.elementor-editor-active .benbeygi-header-nav li {
  display: flex !important;
  align-items: center !important;
}

.elementor-editor-active .benbeygi-header-nav a {
  display: flex !important;
  align-items: center !important;
  line-height: 1 !important;
  padding: 0 !important;
  vertical-align: middle !important;
}

.elementor-editor-active #benbeygi-site-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  height: 76px !important;
  padding: 0 34px !important;
}

/* ─── Fix 2: Welcome / Intro Honor – position in editor ─────── */
/*
  مشکل: position:fixed باعث می‌شود پیام در ویرایشگر
  بر روی صفحه ثابت بماند و هنگام اسکرول پانل تنظیمات حرکت کند.
  راه‌حل: در محیط ویرایش المنتور، position را به relative تغییر می‌دهیم.
*/
.elementor-editor-active #benbeygi-intro-honor {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  min-height: 100vh !important;
  z-index: 1 !important;
  pointer-events: auto !important;
}

.elementor-editor-active #benbeygi-intro-honor .benbeygi-intro-honor-inner {
  /* انیمیشن ورود را در حالت ویرایش غیرفعال می‌کنیم */
  animation: none !important;
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
}

.elementor-editor-active #benbeygi-intro-honor.benbeygi-intro-hide {
  /* کلاس hide را در ویرایشگر بی‌اثر می‌کنیم */
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  pointer-events: auto !important;
}

/* ─── Fix 3: Hero Image – unblock editor interaction ────────── */
/*
  مشکل: #benbeygi-hero-canvas با position:absolute و z-index:1 روی کل هیرو
  قرار می‌گیرد و کلیک روی المان‌های دیگر در ویرایشگر را block می‌کند.
  راه‌حل: در ویرایشگر pointer-events را غیرفعال می‌کنیم.
*/
.elementor-editor-active .benbeygi-hero {
  overflow: visible !important;
}

.elementor-editor-active #benbeygi-hero-canvas {
  pointer-events: none !important;
  z-index: 0 !important;
}

/* اطمینان از اینکه overlay‌های روی هیرو قابل انتخاب هستند */
.elementor-editor-active .benbeygi-overlay {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 5 !important;
}

/* ─── General editor improvements ───────────────────────────── */
/* جلوگیری از اینکه انیمیشن‌های lenis در ویرایشگر تداخل ایجاد کنند */
.elementor-editor-active html.lenis,
.elementor-editor-active html.lenis body {
  height: auto !important;
  overflow: auto !important;
}

.elementor-editor-active .lenis.lenis-smooth iframe {
  pointer-events: auto !important;
}

/* progress-track را در ویرایشگر پنهان می‌کنیم */
.elementor-editor-active #benbeygi-progress-track {
  display: none !important;
}

/* loader را در ویرایشگر پنهان می‌کنیم */
.elementor-editor-active #benbeygi-loader {
  display: none !important;
}
#benbeygi-site-header {
    top: 70px; 
    transition: top 0.35s ease; 
    
}
body.benbeygi-header-stuck #benbeygi-site-header { 
    top: 0;
    
} 

.benbeygi-header-nav{
    margin-top: 30px !important;
    }
/* REMOVED: an unscoped global ":is(.btn,.button,button,[type=submit],[type=button]):hover"
   rule used to live here. It targeted every button on the ENTIRE SITE (WooCommerce
   add-to-cart, theme buttons, other plugins' forms, etc.) and set their hover
   background to transparent with !important. None of this plugin's own buttons
   ever used .btn/.button, so the rule had zero benefit for this widget set and
   only caused site-wide visual bugs. Deleted rather than scoped. */
@media (max-width: 767px) {
    .benbeygi-bw-action-account,
    .benbeygi-bw-action-wishlist,
    .benbeygi-bw-action-cart {
        display: none !important;
    }
}
.benbeygi-card{
    overflow: hidden !important;
}

.benbeygi-card-media{
    width: 100% !important;
    aspect-ratio: 4 / 3 !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
}
.benbeygi-cat-grid{
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 18px !important;
      
    max-width: 100% !important;
}

@media (max-width: 1400px){
    .benbeygi-cat-grid{
        grid-template-columns: repeat(4, 1fr) !important;
    }
}

@media (max-width: 1100px){
    .benbeygi-cat-grid{
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media (max-width: 768px){
    .benbeygi-cat-grid{
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .benbeygi-card-media{
        height: 220px !important;
    }
}

@media (max-width: 480px){
    .benbeygi-cat-grid{
        grid-template-columns: repeat(1, 1fr) !important;
    }

    .benbeygi-card-media{
        height: 240px !important;
    }
}
.benbeygi-intro-scroll-hint{
    position: fixed;
    bottom: 32px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 500;
    transition: opacity .5s ease, visibility .5s ease;
}
.benbeygi-intro-scroll-hint.benbeygi-hint-hide{
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}
#benbeygi-intro-honor{
    position:fixed;
    inset:0;
    z-index:9999;
    display:flex;
    align-items:flex-end;   /* به‌جای center */
    justify-content:center;
    pointer-events:none;
    padding:24px;
    padding-bottom: 50px;  /* فاصله از پایین صفحه */
    box-sizing:border-box;
}