.bsw{--bs-w:240px;--bs-h:44px;--bs-shift:0px;--bs-inset:-1px;
  position:relative;width:100%;height:520px;overflow:visible;margin-inline:auto;direction:ltr;touch-action:pan-y;-webkit-user-select:none;user-select:none}
.bsw *,.bsw *::before,.bsw *::after{box-sizing:border-box}
.bsw .bs-track{position:absolute;inset:0;overflow:hidden;border-radius:inherit}

.bsw .bs-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 24px 60px;
  background-size:cover;background-repeat:no-repeat;background-position:center;color:#fff}
.bsw .bs-slide::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none}
/* تصویر اسلاید: تگ img واقعی (برای سئو) که مثل background-size:cover کادر را پر می‌کند */
.bsw .bs-img{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;max-width:none;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;object-fit:cover;object-position:center;pointer-events:none;-webkit-user-drag:none}
.bsw .bs-inner{position:relative;width:100%;max-width:700px;text-align:center}
.bsw .bs-title{margin:0 0 10px;font-size:clamp(26px,4vw,44px);line-height:1.3;color:#fff}
.bsw .bs-desc{margin:0;font-size:clamp(15px,2vw,19px);line-height:1.8;color:#fff}
.bsw .bs-btn{display:inline-block;margin-top:22px;padding:12px 28px;border-radius:10px;background:#fff;color:#0a3ed6;text-decoration:none;font-weight:700;transition:background-color .2s,color .2s}

/* افکت‌ها */
.bsw[data-effect="fade"] .bs-slide{opacity:0;visibility:hidden;transition:opacity var(--bs-speed,700ms) ease,visibility var(--bs-speed,700ms)}
.bsw[data-effect="fade"] .bs-slide.is-active{opacity:1;visibility:visible;z-index:1}
.bsw[data-effect="slide"] .bs-slide{transition:transform var(--bs-speed,700ms) cubic-bezier(.4,0,.2,1);will-change:transform}

/* ===== نویگیشن برآمدگی ===== */
.bsw .bs-nav{position:absolute;z-index:5;display:flex;justify-content:center;pointer-events:none}
.bsw .bs-bump{position:relative;flex:0 0 auto;pointer-events:auto}
.bsw .bs-shape{position:absolute}
.bsw .bs-shape svg{position:absolute;inset:0;width:100%;height:100%;display:block;fill:#fafafa}
.bsw .bs-dots{position:absolute;left:0;right:0;bottom:8px;display:flex;flex-direction:row;justify-content:center;align-items:center;gap:8px;margin:0;padding:0}

/* پایین */
.bsw.bs-edge-bottom .bs-nav{left:0;right:0;bottom:var(--bs-inset);height:var(--bs-h);align-items:flex-end}
.bsw.bs-edge-bottom .bs-bump{width:var(--bs-w);height:var(--bs-h);transform:translateX(var(--bs-shift))}
.bsw.bs-edge-bottom .bs-shape{inset:0}

/* بالا */
.bsw.bs-edge-top .bs-nav{left:0;right:0;top:var(--bs-inset);height:var(--bs-h);align-items:flex-start}
.bsw.bs-edge-top .bs-bump{width:var(--bs-w);height:var(--bs-h);transform:translateX(var(--bs-shift))}
.bsw.bs-edge-top .bs-shape{inset:0;transform:rotate(180deg)}
.bsw.bs-edge-top .bs-dots{flex-direction:row-reverse}

/* چپ */
.bsw.bs-edge-left .bs-nav{top:0;bottom:0;left:var(--bs-inset);width:var(--bs-h);flex-direction:column;align-items:flex-start}
.bsw.bs-edge-left .bs-bump{width:var(--bs-h);height:var(--bs-w);transform:translateY(var(--bs-shift))}
.bsw.bs-edge-left .bs-shape{width:var(--bs-w);height:var(--bs-h);left:50%;top:50%;transform:translate(-50%,-50%) rotate(90deg)}

/* راست */
.bsw.bs-edge-right .bs-nav{top:0;bottom:0;right:var(--bs-inset);width:var(--bs-h);flex-direction:column;align-items:flex-end}
.bsw.bs-edge-right .bs-bump{width:var(--bs-h);height:var(--bs-w);transform:translateY(var(--bs-shift))}
.bsw.bs-edge-right .bs-shape{width:var(--bs-w);height:var(--bs-h);left:50%;top:50%;transform:translate(-50%,-50%) rotate(-90deg)}
.bsw.bs-edge-right .bs-dots{flex-direction:row-reverse}

/* ترتیب دات‌ها در حالت راست‌به‌چپ */
.bsw.is-rtl.bs-edge-bottom .bs-dots,.bsw.is-rtl.bs-edge-left .bs-dots{flex-direction:row-reverse}
.bsw.is-rtl.bs-edge-top .bs-dots,.bsw.is-rtl.bs-edge-right .bs-dots{flex-direction:row}

/* دات‌ها: span هستند تا استایل دکمه‌ی قالب اثر نکند */
.bsw .bs-dot{all:unset;display:block;flex:0 0 auto;box-sizing:border-box;width:14px;height:14px;border-radius:14px;background:#cfcfcf;cursor:pointer;
  transition:width .35s ease,background-color .35s ease}
.bsw .bs-dot.is-active{width:60px;background:#0a5cff}
.bsw .bs-dot:focus-visible,.bsw .bs-arrow:focus-visible{outline:2px solid #0a5cff;outline-offset:3px}

/* فلش‌ها: جایگاه با متغیرها تعیین می‌شود (--ap-i فاصله از لبه، --ap-s جابجایی، --af جایگاه روی لبه: ۰ / ۵۰ / ۱۰۰) */
.bsw .bs-arrow{all:unset;--ap-i:16px;--ap-s:0px;--af:50;position:absolute;z-index:6;display:flex;align-items:center;justify-content:center;box-sizing:border-box;
  width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.2);color:#fff;cursor:pointer;transition:background-color .2s,opacity .2s}
.bsw .bs-arrow svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.bsw .bs-al{left:var(--ap-i);right:auto;top:calc(var(--af)*1% + var(--ap-s));bottom:auto;transform:translateY(calc(var(--af)*-1%))}
.bsw .bs-ar{right:var(--ap-i);left:auto;top:calc(var(--af)*1% + var(--ap-s));bottom:auto;transform:translateY(calc(var(--af)*-1%))}
.bsw .bs-arrow.is-disabled{opacity:.35;pointer-events:none}

/* برش‌های اسلایدر: لایه‌ی رنگ‌پر‌کن / برآمدگی بیرونی (فقط برای اسلاید فعال دیده می‌شود) */
.bsw .bs-cutfx{position:absolute;inset:0;z-index:4;pointer-events:none}
.bsw .bs-cutfx-i{position:absolute;display:block;line-height:0;opacity:0;transition:opacity var(--bs-speed,700ms) ease}
.bsw .bs-cutfx-i.is-on{opacity:1}
.bsw .bs-cutfx-i svg{display:block;width:100%;height:100%}

@media (max-width:767px){
  .bsw .bs-title{font-size:clamp(22px,6vw,32px)}
}
@media (prefers-reduced-motion:reduce){
  .bsw .bs-slide,.bsw .bs-dot{transition:none !important}
}

/* ── لینک اسلاید ── */
.bsw .bs-slide-link {
	position: absolute;
	inset: 0;
	z-index: 2;
	display: block;
	text-decoration: none;
	cursor: pointer;
}
/* محتوای متن باید بالاتر از لینک باشد */
.bsw .bs-inner { position: relative; z-index: 3; }

/* ── آیکون SVG فلش (کلاس عمومی برای svg داخلی و آیکون‌های المنتور) ── */
.bsw .bs-arrow-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2.5;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.bsw .bs-arrow-icon i,
.bsw .bs-arrow-icon svg { display: block; width: 1em; height: 1em; }
