/* =====================================================================
   بهباد کمپرسور — طراحی جدید «پلاک فنی» (نسخه ۱، مهر ۱۴۰۵)
   ---------------------------------------------------------------------
   ایده: زبان بصری دنیای هوای فشرده. سرمه‌ای عمیق مثل بدنهٔ کمپرسور،
   آبی برند برای ناوبری، قرمز علامت فقط برای اقدام اصلی (خرید/استعلام)
   و «پلاک فنی» فلزی پرچ‌شده — همان پلاکی که روی هر دستگاه هست — برای
   برندها و مشخصات فنی. بقیهٔ صفحه آرام و منظم است.

   همه قانون‌ها زیر body.bp هستند؛ با برداشتن کلاس bp از master ظاهر قبلی
   برمی‌گردد. این فایل بعد از behbad-theme.css و behbad-vitrine.css لود می‌شود.
   این فایل همچنین رفع اشکال‌های «چک‌لیست ۱۹ مهر» در موبایل را دارد.
   ===================================================================== */

@font-face { font-family: "BB Yekan"; font-weight: 400; font-display: swap; src: url("../fonts/Yekan-Bakh-FaNum-04-Regular.woff") format("woff"); }
@font-face { font-family: "BB Yekan"; font-weight: 500; font-display: swap; src: url("../fonts/Yekan-Bakh-FaNum-05-Medium.woff") format("woff"); }
@font-face { font-family: "BB Yekan"; font-weight: 700; font-display: swap; src: url("../fonts/Yekan-Bakh-FaNum-06-Bold.woff") format("woff"); }
@font-face { font-family: "BB Yekan"; font-weight: 800; font-display: swap; src: url("../fonts/Yekan-Bakh-FaNum-07-Heavy.woff") format("woff"); }
@font-face { font-family: "BB Yekan"; font-weight: 900; font-display: swap; src: url("../fonts/Yekan-Bakh-FaNum-08-Fat.woff") format("woff"); }

/* ---------- توکن‌ها ---------- */
body.bp {
  --bp-ink: #0D1B33;      /* سرمه‌ای بدنهٔ دستگاه — متن و پنل‌های تیره */
  --bp-ink2: #15284A;
  --bp-blue: #1C4FD6;     /* آبی برند — لینک و ناوبری */
  --bp-red: #D7232F;      /* قرمز علامت — فقط اقدام اصلی و تخفیف */
  --bp-red2: #B3141F;
  --bp-steel: #E6EBF1;    /* پنل فلزی */
  --bp-paper: #F4F6F9;    /* زمینهٔ صفحه */
  --bp-line: #D6DDE7;
  --bp-mut: #5A687E;
  --bp-ok: #0E8A5F;
  --bp-r-lg: 18px; --bp-r: 12px; --bp-r-sm: 6px;
  --bp-font: "BB Yekan", "Vazirmatn", Tahoma, sans-serif;
  /* هم‌راستا کردن توکن‌های قدیمی با پالت جدید */
  --vt-navy: var(--bp-ink); --vt-navy2: var(--bp-ink2); --vt-blue: var(--bp-blue); --vt-sky: #4C7DFF;
  --vt-red: var(--bp-red); --vt-red2: var(--bp-red2); --vt-bg: var(--bp-paper); --vt-line: var(--bp-line);
  --vt-mut: var(--bp-mut); --vt-ink: var(--bp-ink); --vt-green: var(--bp-ok); --vt-r: var(--bp-r-lg);
  --bb-navy: var(--bp-ink); --bb-navy2: var(--bp-ink2); --bb-blue: var(--bp-blue); --bb-red: var(--bp-red);
  --bb-red2: var(--bp-red2); --bb-bg: var(--bp-paper); --bb-line: var(--bp-line); --bb-mut: var(--bp-mut); --bb-ink: var(--bp-ink);
  --sh-primary: var(--bp-ink); --sh-ink: var(--bp-ink); --sh-muted: var(--bp-mut); --sh-border: var(--bp-line); --sh-soft: var(--bp-paper);
  --az-primary: var(--bp-ink);
  font-family: var(--bp-font) !important;
  color: var(--bp-ink);
  background: #fff;
  overflow-x: clip;
}
body.bp, body.bp .vt-home, body.bp button, body.bp input, body.bp select, body.bp textarea { font-family: var(--bp-font) !important; }
body.bp :focus-visible { outline: 2px solid var(--bp-blue); outline-offset: 2px; }

/* «پلاک فنی»: فلز برس‌خورده با چهار پرچ — برای برندها و مشخصات */
body.bp .bp-plate,
body.bp .vt-logo {
  background:
    radial-gradient(circle at 9px 9px, #9AA6B6 0 2.2px, #F7F9FB 2.6px, transparent 3.4px),
    radial-gradient(circle at calc(100% - 9px) 9px, #9AA6B6 0 2.2px, #F7F9FB 2.6px, transparent 3.4px),
    radial-gradient(circle at 9px calc(100% - 9px), #9AA6B6 0 2.2px, #F7F9FB 2.6px, transparent 3.4px),
    radial-gradient(circle at calc(100% - 9px) calc(100% - 9px), #9AA6B6 0 2.2px, #F7F9FB 2.6px, transparent 3.4px),
    repeating-linear-gradient(90deg, rgba(255,255,255,.55) 0 1px, rgba(0,0,0,.018) 1px 3px),
    linear-gradient(180deg, #F3F6F9, #DCE3EB);
  border: 1px solid #C5CEDA;
  box-shadow: inset 0 1px 0 #fff, inset 0 -1px 0 rgba(13, 27, 51, .08);
  border-radius: var(--bp-r-sm);
}

/* ---------- سربرگ ---------- */
body.bp .vt-topbar { background: var(--bp-ink); font-size: 12.5px; }
body.bp .sh { box-shadow: 0 1px 0 var(--bp-line); background: #fff; }
body.bp .sh-nav a, body.bp .sh-nav button { font-weight: 700; }
body.bp .sh-nav .is-active > a, body.bp .sh-nav a.is-active { color: var(--bp-blue); }
body.bp .sh-nav__cta { background: var(--bp-ink) !important; color: #fff !important; border-color: var(--bp-ink) !important; border-radius: 10px !important; }
body.bp .sh-nav__cta * { color: inherit !important; }
body.bp .sh-act__icon { border-radius: 10px; }
body.bp .sh form input[type="search"], body.bp .sh form input[type="text"] { border-radius: 10px; }

/* ---------- عنوان بخش‌ها ---------- */
body.bp .vt-head, body.bp .vt-head > div, body.bp .vt-head-row { min-width: 0; }
body.bp .vt-head { margin-bottom: 30px; }
body.bp .vt-eyebrow { color: var(--bp-blue); font-weight: 700; font-size: 13.5px; gap: 10px; }
body.bp .vt-eyebrow::before { width: 18px; height: 2px; background: var(--bp-red); }
body.bp [data-bg="navy"] .vt-eyebrow { color: #8FB0FF; }
body.bp .vt-h2 { font-weight: 900; letter-spacing: -.01em; line-height: 1.35; font-size: clamp(23px, 2.6vw, 34px); }
body.bp .vt-sub { color: var(--bp-mut); font-size: 14.5px; line-height: 1.9; max-width: 62ch; }
body.bp .vt-h2 em, body.bp .vt-h2 span { color: inherit; font-style: normal; } /* بدون رنگ‌کردن تک‌کلمه */
body.bp .vt-tabs { max-width: 100%; background: var(--bp-steel); border-radius: 10px; scrollbar-width: none; }
body.bp .vt-tabs::-webkit-scrollbar { display: none; }
body.bp .vt-tabs button { border-radius: 8px; font-weight: 700; }
body.bp .vt-tabs button.is-on { background: var(--bp-ink); }

/* ---------- زمینهٔ بخش‌ها ---------- */
body.bp [data-bg="bg"] { background: var(--bp-paper); }
body.bp [data-bg="navy"] {
  background:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px) 0 0 / 40px 40px,
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px) 0 0 / 40px 40px,
    var(--bp-ink);
}
body.bp [data-bg="red"] { background: linear-gradient(135deg, var(--bp-red2), var(--bp-red)); }

/* ---------- دکمه‌ها ---------- */
body.bp .vt-btn { border-radius: 10px; font-weight: 800; }
body.bp .vt-btn--red { background: var(--bp-red); box-shadow: 0 10px 24px -14px rgba(215, 35, 47, .8); }
body.bp .vt-btn--red:hover { background: var(--bp-red2); }
body.bp .vt-btn--line { border: 1.5px solid var(--bp-line); background: #fff; color: var(--bp-ink); }
body.bp .vt-btn--line:hover { border-color: var(--bp-ink); }

/* ---------- بنر اصلی ---------- */
body.bp .vt-bnr__view { border-radius: var(--bp-r-lg); }
body.bp .vt-bnr__slide img { background: var(--bp-steel); }
body.bp .vt-bnr__tabs { scrollbar-width: none; scroll-snap-type: x proximity; padding: 2px 2px 4px; }
body.bp .vt-bnr__tabs::-webkit-scrollbar { display: none; }
body.bp .vt-bnr__tabs button { border-radius: 10px; scroll-snap-align: start; max-width: 240px; }
/* عنوان بنر دیگر با «…» بریده نمی‌شود؛ حداکثر دو خط */
body.bp .vt-bnr__tabs button > b, body.bp .vt-bnr__tabs button small {
  white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: clip;
}
body.bp .vt-bnr__tabs button small { -webkit-line-clamp: 1; }
body.bp .vt-bnr__tabs button.is-on { background: var(--bp-ink); border-color: var(--bp-ink); }
@media (max-width: 767px) {
  body.bp .vt-bnr--peek .vt-bnr__view { margin-inline: 0; }
  body.bp .vt-bnr__tabs button { max-width: 200px; padding: 8px 12px 10px; }
}

/* ---------- جستجوی صفحه اصلی ---------- */
body.bp .vt-finder, body.bp .fdr { border-radius: var(--bp-r-lg); }

/* ---------- مزایا ---------- */
body.bp .vt-benefits { border-radius: var(--bp-r-lg); border: 1px solid var(--bp-line); box-shadow: none; }

/* ---------- دسته‌بندی‌ها (بنتو) ---------- */
body.bp .vt-cat { border-radius: var(--bp-r-lg); background: var(--bp-paper); border: 1px solid var(--bp-line); box-shadow: none; }
body.bp .vt-cat:hover { border-color: var(--bp-ink); transform: translateY(-2px); }
body.bp .vt-cat b { font-weight: 900; }
body.bp .vt-cat small { background: #fff; color: var(--bp-ink); border: 1px solid var(--bp-line); }
body.bp .vt-cat--xl {
  background:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px) 0 0 / 32px 32px,
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px) 0 0 / 32px 32px,
    linear-gradient(160deg, var(--bp-ink2), var(--bp-ink));
  border-color: var(--bp-ink); color: #fff;
}
body.bp .vt-cat--xl small { background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.2); color: #fff; }
body.bp .vt-cat--red { background: linear-gradient(150deg, var(--bp-blue), #163FAE); border-color: var(--bp-blue); color: #fff; }
body.bp .vt-cat--red small { background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.25); color: #fff; }
body.bp .vt-cat img { border-radius: var(--bp-r); background: #fff; }
body.bp .vt-cat__go { background: var(--bp-ink); }
body.bp .vt-cat--xl .vt-cat__go, body.bp .vt-cat--red .vt-cat__go { background: var(--bp-red); }

/* ---------- کارت محصول ---------- */
body.bp .vt-pc, body.bp .bb-theme .pf-card {
  border-radius: 14px; border: 1px solid var(--bp-line); box-shadow: none; background: #fff;
  transition: border-color .2s, box-shadow .2s;
}
body.bp .vt-pc:hover { border-color: #AFC0D6; box-shadow: 0 18px 34px -26px rgba(13, 27, 51, .55); }
body.bp .vt-pc__media { background: var(--bp-paper); border-radius: 10px; }
body.bp .vt-pc__media img { mix-blend-mode: multiply; }
body.bp .vt-pc__brand { background: transparent; color: var(--bp-blue); padding: 0; font-weight: 800; }
body.bp .vt-pc__name { font-weight: 700; line-height: 1.85; }
body.bp .vt-pc__name a { color: var(--bp-ink); }
body.bp .vt-pc__stock { color: var(--bp-ok); font-weight: 700; }
body.bp .vt-pc__stock.is-out { color: var(--bp-mut); }
body.bp .vt-pc__price b { color: var(--bp-ink); font-weight: 900; }
body.bp .vt-pc__call { color: var(--bp-blue); font-weight: 800; }
body.bp .vt-pc__off { background: var(--bp-red); border-radius: 6px; }
body.bp .vt-pc__cart { background: var(--bp-ink); border-radius: 10px; }
body.bp .vt-pc__cart:hover { background: var(--bp-red); }

/* ---------- برندها: پلاک فنی ---------- */
body.bp .vt-logos { grid-template-columns: repeat(auto-fill, minmax(132px, 1fr)); gap: 12px; }
body.bp .vt-logo { height: 96px; padding: 16px 14px; transition: border-color .2s, transform .2s; }
body.bp .vt-logo:hover { transform: translateY(-2px); border-color: #8E9BAE; }
body.bp .vt-logo b {
  color: #27344A; font-weight: 900; font-size: 16px; line-height: 1.3; text-align: center;
  text-shadow: 0 1px 0 rgba(255,255,255,.9); overflow-wrap: anywhere; max-width: 100%;
}
body.bp .vt-logo img { max-height: 50px; }
body.bp .vt-logo.is-official { border-color: var(--bp-blue); }
body.bp .vt-logo em { background: var(--bp-blue); border-radius: 4px; top: -9px; }
/* نام برند فقط یک بار (قبلاً زیر نام بزرگ دوباره کوچک تکرار می‌شد و روی هم می‌افتاد) */
body.bp .vt-logo b + small { display: none; }
@media (max-width: 767px) {
  body.bp .vt-logos { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
  body.bp .vt-logo { height: 80px; padding: 12px 8px; }
  body.bp .vt-logo b { font-size: 13.5px; }
}

/* ---------- محصول ویژه با نقطه‌ها ---------- */
body.bp .vt-spot__bgtext { max-width: 100%; overflow: hidden; }
body.bp .vt-spot__media { min-height: 260px; background: #fff; }
body.bp .vt-spot__media img { object-fit: contain; }
body.bp .vt-spot__media .vt-hp { max-width: calc(100% - 16px); }

/* ---------- نظرات مشتریان ---------- */
body.bp .vt-quotes { scrollbar-width: none; padding-bottom: 6px; scroll-padding-inline: 16px; }
body.bp .vt-quotes::-webkit-scrollbar { display: none; }
body.bp .vt-quote { border-radius: 14px; border: 1px solid var(--bp-line); }
body.bp .vt-quote.is-hi { background: var(--bp-ink); border-color: var(--bp-ink); }

/* ---------- خدمات، مشاوره، باشگاه ---------- */
body.bp .vt-svc [data-bg="red"], body.bp .vt-svc[data-bg="red"] { background: linear-gradient(135deg, var(--bp-ink2), var(--bp-ink)); }

/* ---------- فوتر ---------- */
body.bp .ft { background: var(--bp-ink); }
body.bp .ft a { color: #C9D4E5; }
body.bp .ft a:hover { color: #fff; }
body.bp .ft h3, body.bp .ft h4, body.bp .ft b { color: #fff; }
body.bp .ft small, body.bp .ft p { color: #AFBCD0; }
/* نماد اعتماد اگر از سرور اینماد نیامد، به‌صورت دکمه نمایش داده می‌شود */
body.bp .bp-img-fallback-enamad { display: inline-flex; align-items: center; gap: 6px; padding: 8px 12px; border: 1px solid rgba(255,255,255,.25); border-radius: 8px; color: #fff; font-size: 12.5px; }

/* ---------- تصاویر خراب ---------- */
body.bp img.bp-broken { object-fit: contain !important; background: var(--bp-paper) !important; padding: 14%; }

/* ---------- شماره تلفن در متن راست‌به‌چپ ---------- */
body.bp a[href^="tel:"] bdi, body.bp .bp-ltr { direction: ltr; unicode-bidi: isolate; }

/* ---------- دکمه‌های شناور و نوار پایین موبایل (چک‌لیست ۱۹ مهر S1) ---------- */
@media (max-width: 991px) {
  /* دکمهٔ تماس شناور تکراری است؛ نوار پایین خودش دکمهٔ تماس دارد */
  body.bp .vt-float__call { display: none !important; }
  body.bp .vt-float { bottom: calc(92px + env(safe-area-inset-bottom, 0px)); gap: 8px; z-index: 1020; }
  body.bp .vt-float a, body.bp .vt-float button { width: 42px; height: 42px; font-size: 19px; box-shadow: 0 8px 18px -8px rgba(0,0,0,.45); }
  body.bp .vt-float--left { left: 12px; }
  body.bp .vt-float--right { right: 12px; }
  /* فضای خالی زیر صفحه تا آخرین محتوا زیر نوار پایین نرود */
  body.bp .mn-space { display: block; height: calc(96px + env(safe-area-inset-bottom, 0px)); }
  body.bp .mn { bottom: calc(10px + env(safe-area-inset-bottom, 0px)); }
}

/* ---------- سرریز افقی در موبایل (S2) ---------- */
@media (max-width: 767px) {
  body.bp .vt-wrap { width: calc(100% - 28px); }
  body.bp main, body.bp .vt-home, body.bp .page-wrapper { overflow-x: clip; }
  body.bp .vt-grid, body.bp .vt-products { min-width: 0; }
}

@media (prefers-reduced-motion: reduce) {
  body.bp *, body.bp *::before, body.bp *::after { transition: none !important; animation: none !important; }
}

/* ---------- بدون انیمیشن ورود بخش‌ها ----------
   محو-و-بالاآمدن روی همهٔ بخش‌ها در موبایل جای خالی بزرگ می‌ساخت (S3) و چیزی به محتوا اضافه نمی‌کرد.
   بخش‌ها از همان اول دیده می‌شوند. */
body.bp .vt-home.vt-js .vt-sec, body.bp .vt-home.vt-js .vt-benefits, body.bp .vt-home.vt-js .vt-stats,
body.bp .hm-reveal, body.bp .pg-js .pg-reveal { opacity: 1 !important; transform: none !important; transition: none !important; }

/* دکمهٔ تماس شناور در دسکتاپ هم تکراری است (دکمهٔ تماس گرد پایین صفحه همان کار را می‌کند) */
body.bp .vt-float__call { display: none !important; }
body.bp .myfab-main { background: var(--bp-ink) !important; }
body.bp .vt-float__top { background: #fff !important; color: var(--bp-ink) !important; border: 1px solid var(--bp-line) !important; }

/* =====================================================================
   سرصفحهٔ «خط محصول» — تنها لحظهٔ پرجسارت صفحه
   زمینهٔ سرمه‌ای با شبکهٔ نقشه‌کشی، نقشهٔ خطی هر دستگاه که یک بار هنگام
   باز شدن صفحه کشیده می‌شود، و پلاک فنی تعداد/قیمت.
   ===================================================================== */
body.bp .bp-lines {
  position: relative; color: #fff; padding: 46px 0 40px; overflow: hidden;
  background:
    linear-gradient(rgba(143, 176, 255, .07) 1px, transparent 1px) 0 0 / 28px 28px,
    linear-gradient(90deg, rgba(143, 176, 255, .07) 1px, transparent 1px) 0 0 / 28px 28px,
    linear-gradient(rgba(143, 176, 255, .1) 1px, transparent 1px) 0 0 / 140px 140px,
    linear-gradient(90deg, rgba(143, 176, 255, .1) 1px, transparent 1px) 0 0 / 140px 140px,
    linear-gradient(170deg, #12264A 0%, var(--bp-ink) 70%);
}
body.bp .bp-lines__wrap { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 8fr); gap: 40px; align-items: center; }
body.bp .bp-lines__h { font-size: clamp(26px, 3.3vw, 44px); font-weight: 900; line-height: 1.35; letter-spacing: -.015em; margin: 0; color: #fff; }
body.bp .bp-lines__p { color: #B9C7DE; font-size: 15.5px; line-height: 2; margin: 16px 0 26px; max-width: 46ch; }
body.bp .bp-lines__cta { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
body.bp .bp-lines__cta .vt-btn { padding: 14px 22px; }
body.bp .bp-lines__tel { color: #fff !important; font-weight: 800; font-size: 17px; display: inline-flex; gap: 8px; align-items: center; padding: 12px 6px; }
body.bp .bp-lines__tel i { color: #8FB0FF; }

body.bp .bp-lines__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
body.bp .bp-line { background: rgba(255, 255, 255, .045); border: 1px solid rgba(143, 176, 255, .22); border-radius: 14px; display: flex; flex-direction: column; transition: border-color .2s, background .2s; }
body.bp .bp-line:hover { border-color: rgba(143, 176, 255, .6); background: rgba(255, 255, 255, .07); }
body.bp .bp-line__main { display: grid; grid-template-columns: 116px minmax(0, 1fr); grid-template-areas: "art t" "plate plate"; gap: 10px 14px; padding: 16px; color: #fff !important; }
body.bp .bp-line__art { grid-area: art; display: grid; place-items: center; height: 80px; color: #8FB0FF; }
body.bp .bp-line__art svg { width: 116px; height: 80px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
body.bp .bp-line__t { grid-area: t; align-self: center; min-width: 0; }
body.bp .bp-line__t b { display: block; font-size: 19px; font-weight: 900; line-height: 1.4; }
body.bp .bp-line__t small { display: block; color: #9FB0CC; font-size: 12.5px; line-height: 1.8; margin-top: 2px; }
body.bp .bp-line__plate { grid-area: plate; display: grid; grid-template-columns: 1fr 1.6fr; padding: 9px 16px; color: #1C2A42; }
body.bp .bp-line__plate > span { display: flex; flex-direction: column; min-width: 0; }
body.bp .bp-line__plate > span + span { border-inline-start: 1px solid #BCC6D3; padding-inline-start: 14px; }
body.bp .bp-line__plate em { font-style: normal; font-size: 11px; color: #5A687E; font-weight: 700; }
body.bp .bp-line__plate b { font-size: 16px; font-weight: 900; text-shadow: 0 1px 0 rgba(255,255,255,.8); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.bp .bp-line__plate b small { font-size: 11px; font-weight: 700; }
body.bp .bp-line__subs { display: flex; flex-wrap: wrap; gap: 6px; padding: 0 16px 14px; margin-top: -2px; }
body.bp .bp-line__subs a { font-size: 12px; font-weight: 700; color: #C9D6EE !important; border: 1px solid rgba(143, 176, 255, .28); border-radius: 999px; padding: 4px 11px; }
body.bp .bp-line__subs a:hover { background: rgba(143, 176, 255, .16); color: #fff !important; }

/* یک لحظهٔ حرکتی: کشیده شدن نقشهٔ دستگاه‌ها هنگام باز شدن صفحه */
@media (prefers-reduced-motion: no-preference) {
  body.bp .bp-line__art svg * { stroke-dasharray: 420; stroke-dashoffset: 420; animation: bpDraw 1.6s cubic-bezier(.4, 0, .2, 1) forwards; }
  body.bp .bp-line:nth-child(2) .bp-line__art svg * { animation-delay: .15s; }
  body.bp .bp-line:nth-child(3) .bp-line__art svg * { animation-delay: .3s; }
  body.bp .bp-line:nth-child(4) .bp-line__art svg * { animation-delay: .45s; }
}
@keyframes bpDraw { to { stroke-dashoffset: 0; } }

@media (max-width: 1099px) {
  body.bp .bp-lines__wrap { grid-template-columns: 1fr; gap: 26px; }
}
@media (max-width: 767px) {
  body.bp .bp-lines { padding: 28px 0 26px; }
  body.bp .bp-lines__p { font-size: 14px; margin: 10px 0 18px; }
  /* موبایل: دو ستون جمع‌وجور؛ نقشه بالا، نام و پلاک زیر آن */
  body.bp .bp-lines__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  body.bp .bp-line__main { grid-template-columns: 1fr; grid-template-areas: "art" "t" "plate"; padding: 12px 10px 10px; gap: 6px; text-align: center; }
  body.bp .bp-line__art, body.bp .bp-line__art svg { width: 92px; height: 62px; margin-inline: auto; }
  body.bp .bp-line__t b { font-size: 15.5px; }
  body.bp .bp-line__t small, body.bp .bp-line__subs { display: none; }
  body.bp .bp-line__plate { grid-template-columns: 1fr; padding: 8px 10px; text-align: center; }
  body.bp .bp-line__plate > span:first-child { display: none; }
  body.bp .bp-line__plate > span + span { border: 0; padding: 0; }
  body.bp .bp-line__plate b { font-size: 14px; }
}

/* S6: در موبایل بنر تمام‌عرض؛ بنرهای کناری بریده و خاکستری دیگر دیده نمی‌شوند */
@media (max-width: 767px) {
  body.bp .vt-bnr--peek .vt-bnr__view { overflow: hidden; border-radius: 14px; }
  body.bp .vt-bnr--peek .vt-bnr__slide { flex-basis: 100%; opacity: 1; transform: translateX(var(--fx, 0px)); }
  body.bp .vt-bnr--peek .vt-bnr__nav--prev { right: 10px; } body.bp .vt-bnr--peek .vt-bnr__nav--next { left: 10px; }
}

/* S13: تا وقتی ساعت تهران بررسی نشده، نقطهٔ وضعیت خنثی است (قبلاً اول قرمز «بسته» نشان می‌داد) */
body.bp .pg-live:not(.is-open):not(.is-closed), body.bp .vp-live:not(.is-open):not(.is-closed) { background: #A9B4C4; }
body.bp .pg-live.is-closed { background: #FF6B78; }

/* S1: در موبایل دکمهٔ گرد وسط نوار پایین همهٔ راه‌های تماس (تماس/واتساپ/پیامک) را دارد؛
   دکمه‌های شناور جداگانه فقط محتوا را می‌پوشاندند */
@media (max-width: 991px) {
  body.bp .vt-float { display: none !important; }
}

/* صفحه‌های داخلی: سربرگ هم‌خانوادهٔ سرصفحهٔ خط محصول (شبکهٔ نقشه‌کشی، بدون نور رنگی) */
body.bp .vp-hero {
  background:
    linear-gradient(rgba(143, 176, 255, .07) 1px, transparent 1px) 0 0 / 28px 28px,
    linear-gradient(90deg, rgba(143, 176, 255, .07) 1px, transparent 1px) 0 0 / 28px 28px,
    linear-gradient(170deg, #12264A 0%, var(--bp-ink) 70%);
}
body.bp .vp-hero::before, body.bp .vp-hero::after { display: none; }
/* S14: آمار درباره ما — سه عدد در یک ردیف، بدون خانهٔ خالی */
@media (max-width: 767px) {
  body.bp .vp-numbers { grid-template-columns: repeat(var(--n, 3), minmax(0, 1fr)) !important; }
  body.bp .vp-numbers > div { padding: 18px 6px; border-top: 0 !important; }
  body.bp .vp-numbers > div + div { border-inline-start: 1px solid var(--bp-line) !important; }
  body.bp .vp-numbers b { font-size: 22px; }
  body.bp .vp-numbers small { font-size: 11px; }
}
/* شماره‌های ۰۱/۰۲/۰۳ روی کارت‌های اصول: بالای آیکون نه زیر آن */
body.bp .vp-principle__n, body.bp [class*="__num"] { z-index: 0; }

/* A10: نقطه دقیقاً روی همان جای عکس؛ برچسب به سمت داخل عکس باز می‌شود (قبلاً نقطه‌های سمت راست از کارت بیرون می‌زدند) */
body.bp .vt-hot { transform: translate(calc(-100% + 7px), -50%); }
body.bp .vt-hot.vt-hot--flip { transform: translate(-7px, -50%); }
body.bp .vt-spot__stage { overflow: hidden; }

/* ---------- جاهای خالی (گزارش ۱۹ مهر، عکس‌های ۳ تا ۵) ----------
   در موبایل .vt-head-row ستونی می‌شود و flex-basis: 360px به‌جای عرض، ارتفاع ۳۶۰ پیکسلی
   خالی زیر عنوان «محصولات منتخب»، «مشتری‌ها چه می‌گویند» و «اخیراً دیده‌اید» می‌ساخت. */
body.bp .vt-head-row .vt-head { flex: 1 1 auto; }
@media (max-width: 767px) {
  body.bp .vt-head-row { gap: 14px; margin-bottom: 20px; }
  body.bp .vt-head-row .vt-head { flex: none; }
  body.bp .vt-head-row > :not(.vt-head) { max-width: 100%; }
}
/* فاصلهٔ عمودی بخش‌ها کمتر و یکدست (بین جستجو و دسته‌بندی‌ها فضای زیادی خالی بود) */
body.bp .vt-sec { padding: 60px 0; }
body.bp .vt-sec--tight { padding: 30px 0; }
body.bp .vt-sec--tight + .vt-sec, body.bp .vt-benefits + .vt-sec { padding-top: 36px; }
@media (max-width: 767px) {
  body.bp .vt-sec { padding: 36px 0; }
  body.bp .vt-sec--tight { padding: 20px 0; }
  body.bp .vt-sec--tight + .vt-sec, body.bp .vt-benefits + .vt-sec { padding-top: 24px; }
}
