/**
 * © راست نت (rastnet.net) – مهندس محمدرسول خانی
 * هرگونه کپی‌برداری و تکثیر ممنوع است. تمام حقوق محفوظ است.
 */
.rnps{width:100%;max-width:100%;font-family:var(--rnps-font);box-sizing:border-box}
.rnps *{box-sizing:border-box}
.rnps-boxed{background:var(--rnps-boxed-bg);padding:16px}
.rnps-shell{width:100%;margin:0 auto}
.rnps-boxed .rnps-shell{max-width:var(--rnps-max)}

/* Full-bleed: break out of theme / Elementor / boxed containers */
.rnps-breakout{
	position:relative;
	width:100vw;
	max-width:100vw;
	margin-left:calc(50% - 50vw);
	margin-right:calc(50% - 50vw);
	margin-inline-start:calc(50% - 50vw);
	margin-inline-end:calc(50% - 50vw);
	left:auto;
	right:auto;
	box-sizing:border-box;
}
.rnps.rnps-full,
.rnps-breakout .rnps,
.rnps-breakout .rnps-shell,
.rnps-full .rnps-shell,
.rnps-full .rnps-swiper{
	width:100% !important;
	max-width:none !important;
}
.rnps-full .rnps-swiper{
	border-radius:var(--rnps-radius,0);
}
.elementor-widget-shortcode:has(.rnps-breakout),
.elementor-widget-shortcode:has(.rnps-full),
.elementor-shortcode:has(.rnps-breakout){
	width:100%;
	max-width:none;
}
html:has(.rnps-breakout){overflow-x:hidden}

.rnps-swiper{
	height:var(--rnps-h-d);
	border-radius:var(--rnps-radius);
	overflow:hidden;
	background:var(--rnps-bg);
	isolation:isolate;
	box-shadow:var(--rnps-shadow);
}
.rnps-full .rnps-swiper{box-shadow:none}
.rnps-c-sharp .rnps-swiper{border-radius:0 !important}
.rnps-c-soft .rnps-swiper{border-radius:28px}
.rnps-c-pill .rnps-swiper{border-radius:48px}

.rnps-slide-inner{
	position:relative;display:flex;width:100%;height:100%;
	align-items:var(--rnps-items);justify-content:var(--rnps-justify);overflow:hidden
}
.rnps-media-wrap{position:absolute;inset:0;z-index:1}
.rnps-media-wrap picture,
.rnps-media-wrap img,
.rnps-media{
	width:100%;height:100%;display:block;
	object-fit:var(--rnps-fit);object-position:var(--rnps-pos);
	background:var(--rnps-bg)
}
.rnps-media-empty{background:var(--rnps-bg)}

.rnps-video[data-bp="t"],
.rnps-video[data-bp="m"]{display:none}
@media(max-width:1024px){
	.rnps-video[data-bp="d"]{display:none}
	.rnps-video[data-bp="t"]{display:block}
	.rnps-video[data-bp="m"]{display:none}
}
@media(max-width:640px){
	.rnps-video[data-bp="d"],
	.rnps-video[data-bp="t"]{display:none}
	.rnps-video[data-bp="m"]{display:block}
}

.rnps-overlay{position:absolute;inset:0;background:var(--rnps-overlay);z-index:2;pointer-events:none}
.rnps-content{
	position:relative;z-index:3;width:min(100%,var(--rnps-cw));padding:var(--rnps-pad);
	display:flex;flex-direction:column;gap:var(--rnps-gap,12px);
	text-align:var(--rnps-text-align);color:var(--rnps-text);
	max-height:100%;box-sizing:border-box
}
.rnps .rnps-title,
.rnps h2.rnps-title,
.rnps .rnps-content .rnps-title{
	margin:0 !important;
	padding:0 !important;
	font-size:var(--rnps-title-size,34px) !important;
	line-height:var(--rnps-title-lh,1.35) !important;
	font-weight:var(--rnps-title-w,900) !important;
	letter-spacing:var(--rnps-title-ls,0) !important;
	color:var(--rnps-text,#fff) !important;
	font-family:var(--rnps-font,inherit) !important;
	max-width:100%;
	word-wrap:break-word
}
.rnps .rnps-desc,
.rnps p.rnps-desc,
.rnps .rnps-content .rnps-desc{
	margin:0 !important;
	padding:0 !important;
	font-size:var(--rnps-desc-size,16px) !important;
	line-height:var(--rnps-desc-lh,1.9) !important;
	font-weight:var(--rnps-desc-w,400) !important;
	letter-spacing:var(--rnps-desc-ls,0) !important;
	color:var(--rnps-muted,#e8eef7) !important;
	font-family:var(--rnps-font,inherit) !important;
	max-width:100%;
	word-wrap:break-word
}

/* Visibility per device */
.rnps-hide-title-d .rnps-title{display:none !important}
.rnps-hide-desc-d .rnps-desc{display:none !important}
.rnps-hide-btns-d .rnps-buttons{display:none !important}

/* Buttons */
.rnps-buttons,
.rnps-buttons.rnps-buttons-layout{
	display:flex !important;
	flex-wrap:wrap;
	gap:var(--rnps-btn-gap,10px);
	margin-top:4px;
	justify-content:var(--rnps-btn-align,center);
	width:100%
}
.rnps-ba-center .rnps-buttons{justify-content:center !important}
.rnps-ba-start .rnps-buttons{justify-content:flex-start !important}
.rnps-ba-end .rnps-buttons{justify-content:flex-end !important}

/* Desktop layout – class + attribute */
.rnps-bl-row .rnps-buttons,
.rnps-buttons[data-layout="row"]{
	flex-direction:row !important;
	align-items:center !important
}
/* column: use button_align for cross-axis; stretch ONLY when full width */
.rnps-bl-col .rnps-buttons,
.rnps-buttons[data-layout="col"]{
	flex-direction:column !important;
	align-items:var(--rnps-btn-align,center) !important
}
.rnps-bl-col.rnps-bw-full .rnps-buttons,
.rnps-bw-full .rnps-buttons[data-layout="col"]{
	align-items:stretch !important
}

.rnps-btn{
	display:inline-flex !important;
	align-items:center;
	justify-content:center;
	gap:var(--rnps-icon-gap,8px);
	min-height:var(--rnps-btn-mh,42px);
	padding:var(--rnps-btn-py,0) var(--rnps-btn-px,22px);
	width:var(--rnps-btn-width,auto) !important;
	max-width:var(--rnps-btn-maxw,100%) !important;
	border-radius:var(--rnps-btn-radius);
	font-size:var(--rnps-btn-size,14px) !important;
	font-weight:var(--rnps-btn-w,800);
	letter-spacing:var(--rnps-btn-ls,0);
	text-transform:var(--rnps-btn-tt,none);
	text-decoration:none !important;
	line-height:var(--rnps-btn-lh,1.25);
	white-space:var(--rnps-btn-wrap,nowrap);
	word-break:break-word;
	text-align:center;
	cursor:pointer;
	font-family:inherit;
	transition:transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease, border-color .2s ease, filter .2s ease, backdrop-filter .2s ease;
	box-sizing:border-box !important;
	box-shadow:var(--rnps-btn-shadow,none);
	border-style:solid;
	border-width:0;
	margin-inline:0 !important;
	-webkit-tap-highlight-color:transparent;
	touch-action:manipulation
}
/* Width modes via class (desktop) */
.rnps-bw-auto .rnps-btn{width:auto !important}
.rnps-bw-full .rnps-btn{width:100% !important}
.rnps-bw-custom .rnps-btn{width:var(--rnps-btn-width) !important}

.rnps-btn-icon{
	display:inline-flex !important;align-items:center;justify-content:center;line-height:1;
	font-size:var(--rnps-icon-size,18px) !important;
	width:var(--rnps-icon-size,18px);
	height:var(--rnps-icon-size,18px);
	color:var(--rnps-icon-color,currentColor) !important;
	flex:0 0 auto
}
.rnps-btn-icon svg{width:1em;height:1em;display:block;fill:currentColor}
.rnps-btn-icon.dashicons,
.rnps-btn-icon[class*="dashicons"]{
	width:var(--rnps-icon-size,18px) !important;
	height:var(--rnps-icon-size,18px) !important;
	font-size:var(--rnps-icon-size,18px) !important;
	display:inline-flex !important;align-items:center;justify-content:center
}
.rnps-btn:hover .rnps-btn-icon,
.rnps-btn:focus .rnps-btn-icon{
	color:var(--rnps-icon-h-color,var(--rnps-icon-color,currentColor)) !important
}

.rnps-btn-primary{
	background:var(--rnps-btn-bg) !important;
	color:var(--rnps-btn-text) !important;
	border:0 !important;
	box-shadow:var(--rnps-btn-shadow)
}
.rnps-btn-primary:hover,
.rnps-btn-primary:focus{
	background:var(--rnps-btn-h-bg) !important;
	color:var(--rnps-btn-h-text) !important;
	transform:var(--rnps-btn-lift,translateY(-2px));
	filter:none !important;
	box-shadow:var(--rnps-btn-h-shadow)
}
.rnps-btn-secondary{
	background:var(--rnps-btn2-bg) !important;
	color:var(--rnps-btn2-text) !important;
	border:var(--rnps-btn-border-w,2px) solid var(--rnps-btn2-border) !important;
	box-shadow:none
}
.rnps-btn-secondary:hover,
.rnps-btn-secondary:focus{
	background:var(--rnps-btn2-h-bg) !important;
	color:var(--rnps-btn2-h-text) !important;
	border-color:var(--rnps-btn2-h-border) !important;
	transform:var(--rnps-btn-lift,translateY(-2px));
	filter:none !important
}
.rnps-btn-outline{
	background:transparent !important;
	color:var(--rnps-btn2-text) !important;
	border:var(--rnps-btn-border-w,2px) solid var(--rnps-btn2-border) !important;
	box-shadow:none
}
.rnps-btn-outline:hover,
.rnps-btn-outline:focus{
	background:var(--rnps-btn2-h-bg) !important;
	color:var(--rnps-btn2-h-text) !important;
	border-color:var(--rnps-btn2-h-border) !important;
	transform:var(--rnps-btn-lift,translateY(-2px));
	filter:none !important
}
.rnps-btn-ghost{
	background:rgba(255,255,255,.14) !important;
	color:#fff !important;
	border:1px solid rgba(255,255,255,.25) !important;
	backdrop-filter:blur(6px);
	-webkit-backdrop-filter:blur(6px);
	box-shadow:none
}
.rnps-btn-ghost:hover,
.rnps-btn-ghost:focus{
	background:var(--rnps-btn2-h-bg) !important;
	color:var(--rnps-btn2-h-text) !important;
	transform:var(--rnps-btn-lift,translateY(-2px));
	filter:none !important
}
/* Glass morphism */
.rnps-btn-glass{
	background:var(--rnps-glass-bg) !important;
	color:var(--rnps-glass-text) !important;
	border:1px solid var(--rnps-glass-border) !important;
	backdrop-filter:blur(var(--rnps-glass-blur,14px)) saturate(var(--rnps-glass-sat,160%));
	-webkit-backdrop-filter:blur(var(--rnps-glass-blur,14px)) saturate(var(--rnps-glass-sat,160%));
	box-shadow:0 8px 32px rgba(0,0,0,.12);
}
.rnps-btn-glass:hover,
.rnps-btn-glass:focus{
	background:var(--rnps-glass-h-bg) !important;
	color:var(--rnps-glass-h-text) !important;
	transform:var(--rnps-btn-lift,translateY(-2px));
	filter:none !important;
	box-shadow:0 12px 36px rgba(0,0,0,.18)
}

.rnps-full-link{position:absolute;inset:0;z-index:4}

.rnps-nav{
	position:absolute;top:50%;z-index:6;width:var(--rnps-arrow-size,42px);height:var(--rnps-arrow-size,42px);border:0;cursor:pointer;
	transform:translateY(-50%);transition:background .2s, opacity .2s;opacity:.92
}
.rnps-nav:hover{opacity:1}
.rnps-prev{right:18px}.rnps-next{left:18px}
.rnps-arrow-soft{border-radius:14px;background:rgba(255,255,255,.9);box-shadow:0 10px 30px rgba(0,0,0,.14)}
.rnps-arrow-circle{border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 8px 24px rgba(0,0,0,.16)}
.rnps-arrow-minimal{border-radius:8px;background:rgba(0,0,0,.35)}
.rnps-nav:before{
	content:"";position:absolute;inset:0;margin:auto;width:10px;height:10px;
	border-top:3px solid var(--rnps-accent);border-left:3px solid var(--rnps-accent)
}
.rnps-prev:before{transform:rotate(135deg)}.rnps-next:before{transform:rotate(-45deg)}
.rnps-arrow-minimal:before{border-color:#fff}

.rnps-pagination{position:absolute!important;z-index:6;display:flex!important;justify-content:center;align-items:center;gap:var(--rnps-pag-gap,6px);width:auto!important;left:auto!important;right:auto!important;bottom:auto!important;top:auto!important;transform:none!important}
.rnps-pagination .swiper-pagination-bullet{
	width:var(--rnps-pag-size,8px);height:var(--rnps-pag-size,8px);
	background:var(--rnps-pag-color,rgba(255,255,255,.55));opacity:1;cursor:pointer;margin:0!important;
	transition:width .2s ease,transform .2s ease,opacity .2s ease,background .2s ease
}
.rnps-pag-pill .swiper-pagination-bullet-active{width:calc(var(--rnps-pag-size,8px) * 3.2);border-radius:99px;background:var(--rnps-pag-active,var(--rnps-accent));opacity:1}
.rnps-pag-dot .swiper-pagination-bullet-active{background:var(--rnps-pag-active,var(--rnps-accent));opacity:1;transform:scale(1.25)}
.rnps-pag-line .swiper-pagination-bullet{width:calc(var(--rnps-pag-size,8px) * 2.2);height:calc(var(--rnps-pag-size,8px) * .4);border-radius:2px}
.rnps-pag-line .swiper-pagination-bullet-active{width:calc(var(--rnps-pag-size,8px) * 3.5);background:var(--rnps-pag-active,var(--rnps-accent));opacity:1}
/* Wave pocket: sit in the empty curve area of wave variant */
.rnps-pag-pos-wave{
	bottom:var(--rnps-pag-oy,28px)!important;left:50%!important;transform:translateX(-50%)!important;z-index:7
}
.rnps-v-wave .rnps-pag-pos-wave{bottom:var(--rnps-pag-oy,36px)!important}

/* Pagination positions */
.rnps-pag-pos-bottom-center{bottom:var(--rnps-pag-oy,14px)!important;left:50%!important;transform:translateX(-50%)!important}
.rnps-pag-pos-bottom-left{bottom:var(--rnps-pag-oy,14px)!important;left:var(--rnps-pag-ox,16px)!important;right:auto!important}
.rnps-pag-pos-bottom-right{bottom:var(--rnps-pag-oy,14px)!important;right:var(--rnps-pag-ox,16px)!important;left:auto!important}
.rnps-pag-pos-top-center{top:var(--rnps-pag-oy,14px)!important;left:50%!important;transform:translateX(-50%)!important}
.rnps-pag-pos-top-left{top:var(--rnps-pag-oy,14px)!important;left:var(--rnps-pag-ox,16px)!important}
.rnps-pag-pos-top-right{top:var(--rnps-pag-oy,14px)!important;right:var(--rnps-pag-ox,16px)!important}

/* ===== Progress bar (unified) ===== */
.rnps-progress{
	position:absolute;z-index:9;pointer-events:none;box-sizing:border-box;
	left:0;right:0;bottom:0;top:auto;
	width:100%;height:var(--rnps-prog-h,4px);
	background:var(--rnps-prog-bg,rgba(255,255,255,.28));
	border-radius:0;overflow:hidden;margin:0;transform:none
}
.rnps-progress-bar{
	display:block;height:100%;width:0;max-width:100%;
	background:var(--rnps-prog-color,var(--rnps-accent));
	border-radius:inherit;will-change:width
}
.rnps-prog-pos-bottom{bottom:0;top:auto}
.rnps-prog-pos-bottom-inset{bottom:var(--rnps-prog-inset,12px);top:auto;left:var(--rnps-prog-inset,12px);right:var(--rnps-prog-inset,12px);width:auto}
.rnps-prog-pos-top{top:0;bottom:auto}
.rnps-prog-pos-top-inset{top:var(--rnps-prog-inset,12px);bottom:auto;left:var(--rnps-prog-inset,12px);right:var(--rnps-prog-inset,12px);width:auto}
.rnps-prog-pos-left,.rnps-prog-pos-right{
	width:var(--rnps-prog-th,4px);height:auto;top:var(--rnps-prog-inset,12px);bottom:var(--rnps-prog-inset,12px);left:auto;right:auto
}
.rnps-prog-pos-left{left:0;right:auto}
.rnps-prog-pos-right{right:0;left:auto}
.rnps-prog-pos-left .rnps-progress-bar,
.rnps-prog-pos-right .rnps-progress-bar{position:absolute;bottom:0;left:0;right:0;width:100%;height:0;max-height:100%}
.rnps-prog-align-center.rnps-prog-pos-bottom,
.rnps-prog-align-center.rnps-prog-pos-top{left:50%;right:auto;width:var(--rnps-prog-w,80%);max-width:calc(100% - 24px);transform:translateX(-50%)}
.rnps-prog-align-start.rnps-prog-pos-bottom,
.rnps-prog-align-start.rnps-prog-pos-top{left:0;right:auto;width:var(--rnps-prog-w,50%);transform:none}
.rnps-prog-align-end.rnps-prog-pos-bottom,
.rnps-prog-align-end.rnps-prog-pos-top{right:0;left:auto;width:var(--rnps-prog-w,50%);transform:none}
.rnps-prog-rounded{border-radius:8px}
.rnps-prog-pill{border-radius:99px}
.rnps-prog-type-circular{
	width:44px;height:44px;left:auto;right:16px;bottom:16px;top:auto;
	background:transparent;overflow:visible;border-radius:50%;transform:none
}
.rnps-prog-type-circular.rnps-prog-pos-top{top:16px;bottom:auto}
.rnps-prog-type-circular.rnps-prog-pos-left{left:16px;right:auto}
.rnps-progress-ring{width:100%;height:100%;display:block;transform:rotate(-90deg)}
.rnps-progress-ring-bg,.rnps-progress-ring-bar{fill:none;stroke-width:3;stroke-linecap:round}
.rnps-progress-ring-bg{stroke:var(--rnps-prog-bg,rgba(255,255,255,.25))}
.rnps-progress-ring-bar{stroke:var(--rnps-prog-color,var(--rnps-accent));stroke-dasharray:100;stroke-dashoffset:100}
.rnps-prog-type-path,
.rnps-prog-follow{
	left:0!important;right:0!important;width:100%!important;max-width:none!important;
	height:var(--rnps-wave-h,48px)!important;bottom:0!important;top:auto!important;
	transform:none!important;background:transparent!important;border-radius:0!important;
	overflow:visible!important;margin:0!important
}
.rnps-prog-follow.rnps-prog-edge-top,
.rnps-prog-type-path.rnps-prog-edge-top{top:0!important;bottom:auto!important}
.rnps-progress-path-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;display:block}
.rnps-progress-path-bg,.rnps-progress-path-bar{
	fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-width:var(--rnps-prog-h,4px)
}
.rnps-progress-path-bg{stroke:var(--rnps-prog-bg,rgba(255,255,255,.3))}
.rnps-progress-path-bar{stroke:var(--rnps-prog-color,var(--rnps-accent));stroke-dasharray:100;stroke-dashoffset:100}
.rnps-prog-follow .rnps-progress-bar,
.rnps-prog-type-path .rnps-progress-bar{display:none}
.rnps-prog-glow .rnps-progress-bar,
.rnps-prog-glow .rnps-progress-path-bar{filter:drop-shadow(0 0 var(--rnps-prog-glow,10px) var(--rnps-prog-glow-c,var(--rnps-prog-color)))}
.rnps-prog-fx-pulse .rnps-progress-bar,
.rnps-prog-fx-pulse .rnps-progress-path-bar{animation:rnpsProgPulse 1.5s ease-in-out infinite}
@keyframes rnpsProgPulse{0%,100%{opacity:1}50%{opacity:.7}}
.rnps-prog-fx-electric .rnps-progress-bar,
.rnps-prog-fx-electric .rnps-progress-path-bar{filter:drop-shadow(0 0 6px #fff) drop-shadow(0 0 12px var(--rnps-prog-glow-c,var(--rnps-prog-color)))}
.rnps-progress-slide{z-index:5}
.rnps-slide-inner .rnps-progress-slide{position:absolute}

/* Content entrance animations */
.rnps-anim-fade .rnps-content{opacity:0;transition:opacity .55s ease}
.rnps-anim-fade-up .rnps-content{opacity:0;transform:translateY(22px);transition:opacity .55s ease,transform .55s ease}
.rnps-anim-fade-down .rnps-content{opacity:0;transform:translateY(-22px);transition:opacity .55s ease,transform .55s ease}
.rnps-anim-scale .rnps-content{opacity:0;transform:scale(.94);transition:opacity .55s ease,transform .55s ease}
.rnps-anim-slide-x .rnps-content{opacity:0;transform:translateX(28px);transition:opacity .55s ease,transform .55s ease}
.rnps-anim-fade.rnps-content-in .rnps-content,
.rnps-anim-fade-up.rnps-content-in .rnps-content,
.rnps-anim-fade-down.rnps-content-in .rnps-content,
.rnps-anim-scale.rnps-content-in .rnps-content,
.rnps-anim-slide-x.rnps-content-in .rnps-content{opacity:1;transform:none}
.swiper-slide-active .rnps-content{/* active handled by JS class on root/slide */}
.rnps .swiper-slide-active.rnps-content-in .rnps-content,
.rnps.rnps-content-in .swiper-slide-active .rnps-content{opacity:1;transform:none}

/* Mouse parallax media */
.rnps-parallax-on .rnps-media-wrap{
	transition:transform .15s ease-out;will-change:transform
}
.rnps-tilt-on .rnps-swiper{
	transform-style:preserve-3d;transition:transform .2s ease-out
}

@media (max-width:1024px){
	.rnps-pagination{gap:var(--rnps-pag-gap-t,var(--rnps-pag-gap,6px))}
	.rnps-pagination .swiper-pagination-bullet{
		width:var(--rnps-pag-size-t,var(--rnps-pag-size,8px));
		height:var(--rnps-pag-size-t,var(--rnps-pag-size,8px));
		background:var(--rnps-pag-color-t,var(--rnps-pag-color,rgba(255,255,255,.55)))
	}
	.rnps-pag-pill .swiper-pagination-bullet-active,
	.rnps-pag-dot .swiper-pagination-bullet-active,
	.rnps-pag-line .swiper-pagination-bullet-active{
		background:var(--rnps-pag-active-t,var(--rnps-pag-active,var(--rnps-accent)))
	}
	.rnps-progress{
		--rnps-prog-h:var(--rnps-prog-h-t,var(--rnps-prog-h,4px));
		--rnps-prog-r:var(--rnps-prog-r-t,var(--rnps-prog-r,99px));
		--rnps-prog-w:var(--rnps-prog-w-t,var(--rnps-prog-w,100%));
		--rnps-prog-th:var(--rnps-prog-th-t,var(--rnps-prog-th,4px));
		--rnps-prog-inset:var(--rnps-prog-inset-t,var(--rnps-prog-inset,0px));
		background:var(--rnps-prog-bg-t,var(--rnps-prog-bg,rgba(255,255,255,.25)))
	}
	.rnps-progress-bar{background:var(--rnps-prog-color-t,var(--rnps-prog-color,var(--rnps-accent)))}
	.rnps-progress-ring-bar{stroke:var(--rnps-prog-color-t,var(--rnps-prog-color,var(--rnps-accent)))}
	.rnps-nav{width:var(--rnps-arrow-size-t,var(--rnps-arrow-size,42px));height:var(--rnps-arrow-size-t,var(--rnps-arrow-size,42px))}
	.rnps-title{color:var(--rnps-text-t,var(--rnps-text))}
	.rnps-desc{color:var(--rnps-muted-t,var(--rnps-muted))}
}
@media (max-width:640px){
	.rnps-pagination{gap:var(--rnps-pag-gap-m,var(--rnps-pag-gap,6px))}
	.rnps-pagination .swiper-pagination-bullet{
		width:var(--rnps-pag-size-m,var(--rnps-pag-size,8px));
		height:var(--rnps-pag-size-m,var(--rnps-pag-size,8px));
		background:var(--rnps-pag-color-m,var(--rnps-pag-color,rgba(255,255,255,.55)))
	}
	.rnps-pag-pill .swiper-pagination-bullet-active,
	.rnps-pag-dot .swiper-pagination-bullet-active,
	.rnps-pag-line .swiper-pagination-bullet-active{
		background:var(--rnps-pag-active-m,var(--rnps-pag-active,var(--rnps-accent)))
	}
	.rnps-progress{
		--rnps-prog-h:var(--rnps-prog-h-m,var(--rnps-prog-h,6px));
		--rnps-prog-r:var(--rnps-prog-r-m,var(--rnps-prog-r,99px));
		--rnps-prog-w:var(--rnps-prog-w-m,var(--rnps-prog-w,100%));
		--rnps-prog-th:var(--rnps-prog-th-m,var(--rnps-prog-th,6px));
		--rnps-prog-inset:var(--rnps-prog-inset-m,var(--rnps-prog-inset,12px));
		background:var(--rnps-prog-bg-m,var(--rnps-prog-bg,rgba(255,255,255,.25)))
	}
	.rnps-progress-bar{background:var(--rnps-prog-color-m,var(--rnps-prog-color,var(--rnps-accent)))}
	.rnps-progress-ring-bar{stroke:var(--rnps-prog-color-m,var(--rnps-prog-color,var(--rnps-accent)))}
	.rnps-nav{width:var(--rnps-arrow-size-m,var(--rnps-arrow-size,34px));height:var(--rnps-arrow-size-m,var(--rnps-arrow-size,34px))}
	.rnps-title{color:var(--rnps-text-m,var(--rnps-text))}
	.rnps-desc{color:var(--rnps-muted-m,var(--rnps-muted))}
}

.rnps-v-glass .rnps-content{
	margin:20px;border-radius:18px;background:rgba(255,255,255,.12);
	backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.18)
}
.rnps-v-gradient .rnps-swiper{border:2px solid transparent;background-clip:padding-box}
.rnps-v-gradient .rnps-slide-inner:after{
	content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
	background:linear-gradient(135deg,rgba(14,165,233,.25),transparent 40%,rgba(7,27,52,.45))
}
.rnps-v-shadow .rnps-swiper{box-shadow:0 24px 60px rgba(15,23,42,.28)}
.rnps-v-framed .rnps-swiper{border:4px solid #fff;outline:1px solid rgba(15,23,42,.08)}
.rnps-v-minimal .rnps-overlay{opacity:.35}
.rnps-v-cinematic .rnps-overlay{background:linear-gradient(180deg,rgba(0,0,0,.15),rgba(0,0,0,.72))!important}
.rnps-v-cinematic .rnps-content{align-self:flex-end}
/* Classic simple bottom pocket (centered indentation) – original look */
.rnps-wave{
	position:absolute;left:50%;bottom:-2px;z-index:4;width:360px;height:54px;
	transform:translateX(-50%);fill:var(--rnps-boxed-bg,#fff);pointer-events:none;display:none
}
.rnps-v-wave .rnps-wave{display:block}
/* Full-width bottom wave edge */
.rnps-v-wave-deep .rnps-wave{
	display:block;left:0;right:0;width:100%;height:var(--rnps-wave-h,72px);
	transform:none;bottom:-1px
}

.rnps-zoom .swiper-slide-active .rnps-media{animation:rnpsZoom 7s ease both}
@keyframes rnpsZoom{from{transform:scale(1)}to{transform:scale(var(--rnps-zoom,1.06))}}

/* ===== Tablet ===== */
@media(max-width:1024px){
	.rnps-swiper{height:var(--rnps-h-t)}
	.rnps-boxed{padding:12px}
	.rnps-slide-inner{
		align-items:var(--rnps-items-t);
		justify-content:var(--rnps-justify-t)
	}
	.rnps-content{
		width:min(100%,var(--rnps-cw-t));
		padding:var(--rnps-pad-t);
		gap:var(--rnps-gap-t);
		text-align:var(--rnps-text-align-t)
	}
	.rnps .rnps-title,
	.rnps h2.rnps-title,
	.rnps .rnps-content .rnps-title{
		font-size:var(--rnps-title-size-t,var(--rnps-title-size)) !important;
		font-weight:var(--rnps-title-w-t,var(--rnps-title-w)) !important;
		line-height:var(--rnps-title-lh-t,var(--rnps-title-lh)) !important;
		letter-spacing:var(--rnps-title-ls-t,var(--rnps-title-ls)) !important
	}
	.rnps .rnps-desc,
	.rnps p.rnps-desc,
	.rnps .rnps-content .rnps-desc{
		font-size:var(--rnps-desc-size-t,var(--rnps-desc-size)) !important;
		font-weight:var(--rnps-desc-w-t,var(--rnps-desc-w)) !important;
		line-height:var(--rnps-desc-lh-t,var(--rnps-desc-lh)) !important;
		letter-spacing:var(--rnps-desc-ls-t,var(--rnps-desc-ls)) !important
	}

	.rnps-buttons{
		gap:var(--rnps-btn-gap-t);
		justify-content:var(--rnps-btn-align-t)
	}
	.rnps-bat-center .rnps-buttons{justify-content:center}
	.rnps-bat-start .rnps-buttons{justify-content:flex-start}
	.rnps-bat-end .rnps-buttons{justify-content:flex-end}
	.rnps-blt-row .rnps-buttons,
	.rnps-buttons[data-layout-t="row"]{flex-direction:row !important;align-items:center !important}
	.rnps-blt-col .rnps-buttons,
	.rnps-buttons[data-layout-t="col"]{
		flex-direction:column !important;
		align-items:var(--rnps-btn-align-t,var(--rnps-btn-align,center)) !important
	}
	.rnps-blt-col.rnps-bwt-full .rnps-buttons,
	.rnps-bwt-full .rnps-buttons[data-layout-t="col"]{align-items:stretch !important}
	.rnps-bwt-auto .rnps-btn{width:auto !important}
	.rnps-bwt-full .rnps-btn{width:100% !important}
	.rnps-bwt-custom .rnps-btn{width:var(--rnps-btn-width-t) !important}
	.rnps-btn{
		min-height:var(--rnps-btn-mh-t);
		padding:var(--rnps-btn-py-t,var(--rnps-btn-py,0)) var(--rnps-btn-px-t);
		font-size:var(--rnps-btn-size-t);
		font-weight:var(--rnps-btn-w-t);
		border-radius:var(--rnps-btn-radius-t);
		width:var(--rnps-btn-width-t,var(--rnps-btn-width,auto)) !important;
		max-width:var(--rnps-btn-maxw-t,var(--rnps-btn-maxw,100%)) !important;
		line-height:var(--rnps-btn-lh-t,var(--rnps-btn-lh,1.25));
		white-space:var(--rnps-btn-wrap-t,var(--rnps-btn-wrap,nowrap))
	}
	.rnps-bwt-auto .rnps-btn{width:auto !important}
	.rnps-bwt-full .rnps-btn{width:100% !important}
	.rnps-bwt-custom .rnps-btn{width:var(--rnps-btn-width-t) !important}
	.rnps-btn-icon{
		font-size:var(--rnps-icon-size-t,var(--rnps-icon-size,18px)) !important;
		width:var(--rnps-icon-size-t,var(--rnps-icon-size,18px));
		height:var(--rnps-icon-size-t,var(--rnps-icon-size,18px))
	}
	.rnps-btn-icon.dashicons,
	.rnps-btn-icon[class*="dashicons"]{
		width:var(--rnps-icon-size-t,var(--rnps-icon-size,18px)) !important;
		height:var(--rnps-icon-size-t,var(--rnps-icon-size,18px)) !important;
		font-size:var(--rnps-icon-size-t,var(--rnps-icon-size,18px)) !important
	}
	.rnps-hide-title-t .rnps-title{display:none !important}
	.rnps-hide-desc-t .rnps-desc{display:none !important}
	.rnps-hide-btns-t .rnps-buttons{display:none !important}
	/* undo desktop-only hide when tablet shows */
	.rnps-hide-title-d:not(.rnps-hide-title-t) .rnps-title{display:block !important}
	.rnps-hide-desc-d:not(.rnps-hide-desc-t) .rnps-desc{display:block !important}
	.rnps-hide-btns-d:not(.rnps-hide-btns-t) .rnps-buttons{display:flex !important}

	/* Tablet button color overrides */
	.rnps-btn-primary{
		background:var(--rnps-btn-bg-t,var(--rnps-btn-bg)) !important;
		color:var(--rnps-btn-text-t,var(--rnps-btn-text)) !important
	}
	.rnps-btn-primary:hover,
	.rnps-btn-primary:focus{
		background:var(--rnps-btn-h-bg-t,var(--rnps-btn-h-bg)) !important;
		color:var(--rnps-btn-h-text-t,var(--rnps-btn-h-text)) !important
	}
	.rnps-btn-secondary{
		background:var(--rnps-btn2-bg-t,var(--rnps-btn2-bg)) !important;
		color:var(--rnps-btn2-text-t,var(--rnps-btn2-text)) !important;
		border-color:var(--rnps-btn2-border-t,var(--rnps-btn2-border)) !important
	}
	.rnps-btn-secondary:hover,
	.rnps-btn-secondary:focus{
		background:var(--rnps-btn2-h-bg-t,var(--rnps-btn2-h-bg)) !important;
		color:var(--rnps-btn2-h-text-t,var(--rnps-btn2-h-text)) !important
	}
	.rnps-btn-glass{
		background:var(--rnps-glass-bg-t,var(--rnps-btn-bg-t,var(--rnps-glass-bg))) !important;
		color:var(--rnps-glass-text-t,var(--rnps-btn-text-t,var(--rnps-glass-text))) !important;
		border:1px solid var(--rnps-glass-border-t,var(--rnps-glass-border)) !important
	}
	.rnps-btn-glass:hover,
	.rnps-btn-glass:focus{
		background:var(--rnps-glass-h-bg-t,var(--rnps-btn-h-bg-t,var(--rnps-glass-h-bg))) !important;
		color:var(--rnps-glass-h-text-t,var(--rnps-btn-h-text-t,var(--rnps-glass-h-text))) !important
	}
}


/* ===== Mobile ===== */
@media(max-width:640px){
	.rnps-swiper{height:var(--rnps-h-m);border-radius:calc(var(--rnps-radius) * .75)}
	.rnps-c-sharp .rnps-swiper{border-radius:0 !important}
	.rnps-boxed{padding:10px}
	.rnps-slide-inner{
		align-items:var(--rnps-items-m);
		justify-content:var(--rnps-justify-m)
	}
	.rnps-content{
		width:min(100%,var(--rnps-cw-m));
		padding:var(--rnps-pad-m);
		gap:var(--rnps-gap-m);
		text-align:var(--rnps-text-align-m)
	}
	.rnps .rnps-title,
	.rnps h2.rnps-title,
	.rnps .rnps-content .rnps-title{
		font-size:var(--rnps-title-size-m,var(--rnps-title-size)) !important;
		font-weight:var(--rnps-title-w-m,var(--rnps-title-w)) !important;
		line-height:var(--rnps-title-lh-m,var(--rnps-title-lh)) !important;
		letter-spacing:var(--rnps-title-ls-m,var(--rnps-title-ls)) !important
	}
	.rnps .rnps-desc,
	.rnps p.rnps-desc,
	.rnps .rnps-content .rnps-desc{
		font-size:var(--rnps-desc-size-m,var(--rnps-desc-size)) !important;
		font-weight:var(--rnps-desc-w-m,var(--rnps-desc-w)) !important;
		line-height:var(--rnps-desc-lh-m,var(--rnps-desc-lh)) !important;
		letter-spacing:var(--rnps-desc-ls-m,var(--rnps-desc-ls)) !important
	}

	.rnps-buttons{
		gap:var(--rnps-btn-gap-m);
		justify-content:var(--rnps-btn-align-m)
	}
	.rnps-bam-center .rnps-buttons{justify-content:center}
	.rnps-bam-start .rnps-buttons{justify-content:flex-start}
	.rnps-bam-end .rnps-buttons{justify-content:flex-end}
	.rnps-blm-row .rnps-buttons,
	.rnps-buttons[data-layout-m="row"]{flex-direction:row !important;align-items:center !important}
	.rnps-blm-col .rnps-buttons,
	.rnps-buttons[data-layout-m="col"]{
		flex-direction:column !important;
		align-items:var(--rnps-btn-align-m,var(--rnps-btn-align,center)) !important
	}
	.rnps-blm-col.rnps-bwm-full .rnps-buttons,
	.rnps-bwm-full .rnps-buttons[data-layout-m="col"]{align-items:stretch !important}
	.rnps-bwm-auto .rnps-btn{width:auto !important}
	.rnps-bwm-full .rnps-btn{width:100% !important}
	.rnps-bwm-custom .rnps-btn{width:var(--rnps-btn-width-m) !important}
	.rnps-btn{
		min-height:var(--rnps-btn-mh-m);
		padding:var(--rnps-btn-py-m,var(--rnps-btn-py,0)) var(--rnps-btn-px-m);
		font-size:var(--rnps-btn-size-m);
		font-weight:var(--rnps-btn-w-m);
		border-radius:var(--rnps-btn-radius-m);
		width:var(--rnps-btn-width-m,var(--rnps-btn-width,auto)) !important;
		max-width:var(--rnps-btn-maxw-m,var(--rnps-btn-maxw,100%)) !important;
		line-height:var(--rnps-btn-lh-m,var(--rnps-btn-lh,1.3));
		white-space:var(--rnps-btn-wrap-m,normal)
	}
	.rnps-bwm-auto .rnps-btn{width:auto !important}
	.rnps-bwm-full .rnps-btn{width:100% !important}
	.rnps-bwm-custom .rnps-btn{width:var(--rnps-btn-width-m) !important}
	.rnps-btn-icon{
		font-size:var(--rnps-icon-size-m,var(--rnps-icon-size,16px)) !important;
		width:var(--rnps-icon-size-m,var(--rnps-icon-size,16px));
		height:var(--rnps-icon-size-m,var(--rnps-icon-size,16px))
	}
	.rnps-btn-icon.dashicons,
	.rnps-btn-icon[class*="dashicons"]{
		width:var(--rnps-icon-size-m,var(--rnps-icon-size,16px)) !important;
		height:var(--rnps-icon-size-m,var(--rnps-icon-size,16px)) !important;
		font-size:var(--rnps-icon-size-m,var(--rnps-icon-size,16px)) !important
	}
	/* Mobile button color overrides */
	.rnps-btn-primary{
		background:var(--rnps-btn-bg-m,var(--rnps-btn-bg)) !important;
		color:var(--rnps-btn-text-m,var(--rnps-btn-text)) !important
	}
	.rnps-btn-primary:hover,
	.rnps-btn-primary:focus{
		background:var(--rnps-btn-h-bg-m,var(--rnps-btn-h-bg)) !important;
		color:var(--rnps-btn-h-text-m,var(--rnps-btn-h-text)) !important
	}
	.rnps-btn-secondary{
		background:var(--rnps-btn2-bg-m,var(--rnps-btn2-bg)) !important;
		color:var(--rnps-btn2-text-m,var(--rnps-btn2-text)) !important;
		border-color:var(--rnps-btn2-border-m,var(--rnps-btn2-border)) !important
	}
	.rnps-btn-secondary:hover,
	.rnps-btn-secondary:focus{
		background:var(--rnps-btn2-h-bg-m,var(--rnps-btn2-h-bg)) !important;
		color:var(--rnps-btn2-h-text-m,var(--rnps-btn2-h-text)) !important
	}
	.rnps-btn-outline{
		color:var(--rnps-btn2-text-m,var(--rnps-btn2-text)) !important;
		border-color:var(--rnps-btn2-border-m,var(--rnps-btn2-border)) !important
	}
	.rnps-btn-outline:hover,
	.rnps-btn-outline:focus{
		background:var(--rnps-btn2-h-bg-m,var(--rnps-btn2-h-bg)) !important;
		color:var(--rnps-btn2-h-text-m,var(--rnps-btn2-h-text)) !important;
		border-color:var(--rnps-btn2-border-m,var(--rnps-btn2-border)) !important
	}
	.rnps-btn-ghost:hover,
	.rnps-btn-ghost:focus{
		background:var(--rnps-btn2-h-bg-m,var(--rnps-btn2-h-bg)) !important;
		color:var(--rnps-btn2-h-text-m,var(--rnps-btn2-h-text)) !important
	}
	.rnps-btn-glass{
		background:var(--rnps-glass-bg-m,var(--rnps-btn-bg-m,var(--rnps-glass-bg))) !important;
		color:var(--rnps-glass-text-m,var(--rnps-btn-text-m,var(--rnps-glass-text))) !important;
		border:1px solid var(--rnps-glass-border-m,var(--rnps-glass-border)) !important;
		backdrop-filter:blur(var(--rnps-glass-blur,14px)) saturate(var(--rnps-glass-sat,160%));
		-webkit-backdrop-filter:blur(var(--rnps-glass-blur,14px)) saturate(var(--rnps-glass-sat,160%));
		box-shadow:0 6px 20px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.25);
		-webkit-background-clip:padding-box;
		background-clip:padding-box
	}
	.rnps-btn-glass:hover,
	.rnps-btn-glass:focus{
		background:var(--rnps-glass-h-bg-m,var(--rnps-btn-h-bg-m,var(--rnps-glass-h-bg))) !important;
		color:var(--rnps-glass-h-text-m,var(--rnps-btn-h-text-m,var(--rnps-glass-h-text))) !important;
		box-shadow:0 10px 28px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.3)
	}
	.rnps-content{
		max-height:100%;
		overflow-y:auto;
		-webkit-overflow-scrolling:touch;
		scrollbar-width:thin
	}
	.rnps-nav{width:34px;height:34px}
	.rnps-prev{right:10px}.rnps-next{left:10px}
	.rnps-v-wave .rnps-wave{width:260px;height:38px}
	.rnps-v-wave-deep .rnps-wave{width:100%;height:var(--rnps-wave-h,38px)}
	.rnps-hide-title-m .rnps-title{display:none !important}
	.rnps-hide-desc-m .rnps-desc{display:none !important}
	.rnps-hide-btns-m .rnps-buttons{display:none !important}
	.rnps-hide-title-d:not(.rnps-hide-title-m) .rnps-title,
	.rnps-hide-title-t:not(.rnps-hide-title-m) .rnps-title{display:block !important}
	.rnps-hide-desc-d:not(.rnps-hide-desc-m) .rnps-desc,
	.rnps-hide-desc-t:not(.rnps-hide-desc-m) .rnps-desc{display:block !important}
	.rnps-hide-btns-d:not(.rnps-hide-btns-m) .rnps-buttons,
	.rnps-hide-btns-t:not(.rnps-hide-btns-m) .rnps-buttons{display:flex !important}
}


/* Optional custom arrow colors when CSS vars are set */
.rnps-nav[style*="--rnps-arrow-bg"],
.rnps:not([style*="--rnps-arrow-bg:"]) .rnps-nav{}
.rnps-nav{background-color:var(--rnps-arrow-bg,unset)}
.rnps-arrow-soft{background:var(--rnps-arrow-bg,rgba(255,255,255,.9))}
.rnps-arrow-circle{background:var(--rnps-arrow-bg,rgba(255,255,255,.92))}
.rnps-arrow-minimal{background:var(--rnps-arrow-bg,rgba(0,0,0,.35))}
.rnps-nav:before{border-color:var(--rnps-arrow-icon,var(--rnps-accent))}
.rnps-arrow-minimal:before{border-color:var(--rnps-arrow-icon,#fff)}


/* ===== Text visual effects ===== */
.rnps .rnps-fx-glow{
	text-shadow:0 0 8px var(--rnps-title-fx,var(--rnps-accent)),0 0 20px rgba(14,165,233,.35),0 2px 8px rgba(0,0,0,.25) !important
}
.rnps .rnps-desc.rnps-fx-glow{
	text-shadow:0 0 6px var(--rnps-desc-fx,var(--rnps-accent)),0 0 14px rgba(14,165,233,.3) !important
}
.rnps .rnps-fx-neon{
	text-shadow:
		0 0 4px #fff,
		0 0 10px var(--rnps-title-fx,var(--rnps-accent)),
		0 0 20px var(--rnps-title-fx,var(--rnps-accent)),
		0 0 40px var(--rnps-title-fx,var(--rnps-accent)) !important;
	color:#fff !important
}
.rnps .rnps-desc.rnps-fx-neon{
	text-shadow:0 0 4px #fff,0 0 12px var(--rnps-desc-fx,var(--rnps-accent)),0 0 24px var(--rnps-desc-fx,var(--rnps-accent)) !important
}
.rnps .rnps-fx-shine{
	position:relative;
	background:linear-gradient(110deg,currentColor 30%,#fff 50%,currentColor 70%);
	background-size:200% auto;
	-webkit-background-clip:text;background-clip:text;
	-webkit-text-fill-color:transparent;
	animation:rnpsShine 3s linear infinite
}
.rnps .rnps-fx-gradient{
	background:linear-gradient(90deg,var(--rnps-title-fx,var(--rnps-accent)),#fff 45%,var(--rnps-title-fx,var(--rnps-accent)));
	background-size:200% auto;
	-webkit-background-clip:text;background-clip:text;
	-webkit-text-fill-color:transparent;
	animation:rnpsGradShift 4s ease infinite
}
.rnps .rnps-desc.rnps-fx-gradient{
	background:linear-gradient(90deg,var(--rnps-desc-fx,var(--rnps-accent)),#e2e8f0,var(--rnps-desc-fx,var(--rnps-accent)));
	background-size:200% auto;
	-webkit-background-clip:text;background-clip:text;
	-webkit-text-fill-color:transparent
}
.rnps .rnps-fx-shadow{
	text-shadow:0 4px 0 rgba(0,0,0,.15),0 8px 24px rgba(0,0,0,.35) !important
}
.rnps .rnps-fx-outline{
	-webkit-text-stroke:1px rgba(255,255,255,.85);
	text-shadow:0 2px 8px rgba(0,0,0,.35) !important
}
@keyframes rnpsShine{
	0%{background-position:200% center}
	100%{background-position:-200% center}
}
@keyframes rnpsGradShift{
	0%,100%{background-position:0% center}
	50%{background-position:100% center}
}

/* ===== Per-text entrance / loop animations ===== */
.rnps .rnps-ta-fade-in,
.rnps .rnps-ta-slide-up,
.rnps .rnps-ta-slide-down,
.rnps .rnps-ta-zoom-in,
.rnps .rnps-ta-blur-in,
.rnps .rnps-ta-bounce,
.rnps .rnps-ta-typewriter{
	opacity:0
}
.swiper-slide-active .rnps-ta-fade-in.rnps-ta-play,
.rnps-content-in .swiper-slide-active .rnps-ta-fade-in{
	animation:rnpsTaFade .7s ease forwards
}
.swiper-slide-active .rnps-ta-slide-up.rnps-ta-play,
.rnps-content-in .swiper-slide-active .rnps-ta-slide-up{
	animation:rnpsTaUp .7s cubic-bezier(.22,1,.36,1) forwards
}
.swiper-slide-active .rnps-ta-slide-down.rnps-ta-play,
.rnps-content-in .swiper-slide-active .rnps-ta-slide-down{
	animation:rnpsTaDown .7s cubic-bezier(.22,1,.36,1) forwards
}
.swiper-slide-active .rnps-ta-zoom-in.rnps-ta-play,
.rnps-content-in .swiper-slide-active .rnps-ta-zoom-in{
	animation:rnpsTaZoom .65s cubic-bezier(.22,1,.36,1) forwards
}
.swiper-slide-active .rnps-ta-blur-in.rnps-ta-play,
.rnps-content-in .swiper-slide-active .rnps-ta-blur-in{
	animation:rnpsTaBlur .75s ease forwards
}
.swiper-slide-active .rnps-ta-bounce.rnps-ta-play,
.rnps-content-in .swiper-slide-active .rnps-ta-bounce{
	animation:rnpsTaBounce .8s cubic-bezier(.34,1.56,.64,1) forwards
}
.rnps .rnps-ta-pulse.rnps-ta-play{
	animation:rnpsTaPulse 2.2s ease-in-out infinite;
	opacity:1
}
@keyframes rnpsTaFade{from{opacity:0}to{opacity:1}}
@keyframes rnpsTaUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes rnpsTaDown{from{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:none}}
@keyframes rnpsTaZoom{from{opacity:0;transform:scale(.88)}to{opacity:1;transform:none}}
@keyframes rnpsTaBlur{from{opacity:0;filter:blur(8px)}to{opacity:1;filter:none}}
@keyframes rnpsTaBounce{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.06)}100%{transform:scale(1)}}
@keyframes rnpsTaPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.88;transform:scale(1.03)}}

/* Typewriter — no blinking caret */
.rnps .rnps-ta-typewriter.rnps-ta-play{
	opacity:1
}
@media (prefers-reduced-motion:reduce){
	.rnps .rnps-fx-shine,.rnps .rnps-fx-gradient,
	.rnps [class*="rnps-ta-"]{animation:none!important;opacity:1!important;-webkit-text-fill-color:unset;background:none}
}

/* ===== Enhanced Wave / Organic Shape Variants ===== */
.rnps-v-wave-sides .rnps-swiper,
.rnps-v-wave-left .rnps-swiper,
.rnps-v-wave-right .rnps-swiper,
.rnps-v-organic .rnps-swiper{
	overflow:hidden;
}
/*
 * Soft side indentations (فرورفتگی دو طرف) – inward bites on left/right.
 * Controllable via --rnps-wave-side-amp / --rnps-wave-side-pos / --rnps-wave-side-w
 */
.rnps-v-wave-sides .rnps-swiper{
	border-radius: 24px;
	/* polygon: top edge, right edge with inward notch, bottom, left edge with inward notch */
	clip-path: polygon(
		0% 0%,
		100% 0%,
		100% calc(var(--rnps-wave-side-pos,50%) - 18%),
		calc(100% - var(--rnps-wave-side-amp,36px)) var(--rnps-wave-side-pos,50%),
		100% calc(var(--rnps-wave-side-pos,50%) + 18%),
		100% 100%,
		0% 100%,
		0% calc(var(--rnps-wave-side-pos,50%) + 18%),
		var(--rnps-wave-side-amp,36px) var(--rnps-wave-side-pos,50%),
		0% calc(var(--rnps-wave-side-pos,50%) - 18%)
	);
}
.rnps-v-wave-left .rnps-swiper{
	border-radius: 24px 16px 16px 24px;
	clip-path: polygon(
		0% 0%, 100% 0%, 100% 100%, 0% 100%,
		0% calc(var(--rnps-wave-side-pos,50%) + 18%),
		var(--rnps-wave-side-amp,36px) var(--rnps-wave-side-pos,50%),
		0% calc(var(--rnps-wave-side-pos,50%) - 18%)
	);
}
.rnps-v-wave-right .rnps-swiper{
	border-radius: 16px 24px 24px 16px;
	clip-path: polygon(
		0% 0%, 100% 0%,
		100% calc(var(--rnps-wave-side-pos,50%) - 18%),
		calc(100% - var(--rnps-wave-side-amp,36px)) var(--rnps-wave-side-pos,50%),
		100% calc(var(--rnps-wave-side-pos,50%) + 18%),
		100% 100%, 0% 100%
	);
}
/* Organic / blob-like shape matching the sample screenshot style */
.rnps-v-organic .rnps-swiper{
	border-radius: 28px 32px 36px 30px / 36px 28px 40px 34px;
	clip-path: path("M 4% 8% C 0% 22%, 2% 38%, 0% 52% C 2% 68%, 0% 82%, 6% 94% C 18% 100%, 38% 98%, 55% 100% C 72% 98%, 88% 100%, 96% 92% C 100% 78%, 98% 62%, 100% 48% C 98% 32%, 100% 18%, 94% 6% C 78% 0%, 58% 2%, 42% 0% C 26% 2%, 12% 0%, 4% 8% Z");
}

/* ===== Path / Follow-shape Progress ===== */
.rnps-progress-path-svg{
	position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none
}
.rnps-progress-path-bg,
.rnps-progress-path-bar{
	fill:none;
	stroke-width:var(--rnps-prog-h,5px);
	stroke-linecap:round;
	vector-effect:non-scaling-stroke
}
.rnps-progress-path-bg{stroke:var(--rnps-prog-bg,rgba(255,255,255,.3));opacity:.95}
.rnps-progress-path-bar{
	stroke:var(--rnps-prog-color,var(--rnps-accent));
	stroke-dasharray:100;
	stroke-dashoffset:100;
	transition:stroke-dashoffset .12s linear
}
.rnps-prog-type-path,
.rnps-prog-follow{
	height:var(--rnps-wave-h,48px)!important;
	bottom:0;top:auto;left:0;right:0;width:100%!important;max-width:none!important;
	transform:none!important;background:transparent!important;border-radius:0!important;overflow:visible
}
.rnps-prog-type-path.rnps-prog-pos-top,
.rnps-prog-follow.rnps-prog-pos-top{top:0;bottom:auto}
.rnps-prog-type-path .rnps-progress-bar,
.rnps-prog-follow .rnps-progress-bar{display:none}
/* Keep path SVG filling the progress container so curve aligns with wave edge */
.rnps-prog-follow .rnps-progress-path-svg,
.rnps-prog-type-path .rnps-progress-path-svg{
	position:absolute;left:0;right:0;bottom:0;width:100%;height:100%;overflow:visible
}

/* Progress visual effects */
.rnps-prog-glow .rnps-progress-bar,
.rnps-prog-glow .rnps-progress-path-bar,
.rnps-prog-glow .rnps-progress-ring-bar{
	filter:drop-shadow(0 0 var(--rnps-prog-glow,12px) var(--rnps-prog-glow-c,var(--rnps-prog-color)));
	box-shadow:0 0 var(--rnps-prog-glow,12px) var(--rnps-prog-glow-c,var(--rnps-prog-color))
}
.rnps-prog-fx-glow .rnps-progress-bar,
.rnps-prog-fx-glow .rnps-progress-path-bar{
	box-shadow:0 0 8px var(--rnps-prog-glow-c),0 0 18px var(--rnps-prog-glow-c);
	filter:drop-shadow(0 0 6px var(--rnps-prog-glow-c))
}
.rnps-prog-fx-pulse .rnps-progress-bar,
.rnps-prog-fx-pulse .rnps-progress-path-bar{
	animation:rnpsProgPulse 1.6s ease-in-out infinite
}
@keyframes rnpsProgPulse{
	0%,100%{opacity:1;filter:brightness(1)}
	50%{opacity:.75;filter:brightness(1.35)}
}
.rnps-prog-fx-shine .rnps-progress-bar,
.rnps-prog-fx-shine .rnps-progress-path-bar{
	position:relative;overflow:hidden;
	background:linear-gradient(90deg,var(--rnps-prog-color),#fff 45%,var(--rnps-prog-color) 70%);
	background-size:200% 100%;
	animation:rnpsProgShine 2.2s linear infinite
}
@keyframes rnpsProgShine{0%{background-position:100% 0}100%{background-position:-100% 0}}
.rnps-prog-fx-electric .rnps-progress-bar,
.rnps-prog-fx-electric .rnps-progress-path-bar{
	box-shadow:0 0 4px #fff,0 0 10px var(--rnps-prog-glow-c),0 0 20px var(--rnps-prog-glow-c);
	animation:rnpsProgElectric 1.1s ease-in-out infinite alternate
}
@keyframes rnpsProgElectric{
	0%{filter:brightness(1) drop-shadow(0 0 4px var(--rnps-prog-glow-c))}
	100%{filter:brightness(1.4) drop-shadow(0 0 14px #fff)}
}
.rnps-prog-fx-neon .rnps-progress-bar,
.rnps-prog-fx-neon .rnps-progress-path-bar{
	box-shadow:0 0 5px var(--rnps-prog-glow-c),0 0 15px var(--rnps-prog-glow-c),0 0 30px var(--rnps-prog-glow-c);
	filter:drop-shadow(0 0 8px var(--rnps-prog-glow-c))
}

/* ===== Button visual FX ===== */
.rnps-btnfx-glow .rnps-btn{
	box-shadow:0 0 12px color-mix(in srgb,var(--rnps-btn-fx-c) calc(var(--rnps-btn-fx-i)*100%),transparent),
	           0 8px 24px rgba(15,23,42,.12)
}
.rnps-btnfx-pulse .rnps-btn{animation:rnpsBtnPulse 2s ease-in-out infinite}
@keyframes rnpsBtnPulse{
	0%,100%{transform:scale(1);box-shadow:0 0 0 0 color-mix(in srgb,var(--rnps-btn-fx-c) 40%,transparent)}
	50%{transform:scale(1.03);box-shadow:0 0 0 10px color-mix(in srgb,var(--rnps-btn-fx-c) 0%,transparent)}
}
.rnps-btnfx-blink .rnps-btn{animation:rnpsBtnBlink 1.4s ease-in-out infinite}
@keyframes rnpsBtnBlink{0%,100%{opacity:1}50%{opacity:.55}}
.rnps-btnfx-shine .rnps-btn{
	position:relative;overflow:hidden
}
.rnps-btnfx-shine .rnps-btn:after{
	content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);
	transform:translateX(-120%);animation:rnpsBtnShine 2.8s ease-in-out infinite
}
@keyframes rnpsBtnShine{0%{transform:translateX(-120%)}40%,100%{transform:translateX(120%)}}
.rnps-btnfx-neon .rnps-btn{
	box-shadow:0 0 6px var(--rnps-btn-fx-c),0 0 16px var(--rnps-btn-fx-c),0 0 28px color-mix(in srgb,var(--rnps-btn-fx-c) 50%,transparent);
	text-shadow:0 0 8px color-mix(in srgb,var(--rnps-btn-fx-c) 60%,transparent)
}
.rnps-btnfx-bounce .rnps-btn{animation:rnpsBtnBounce 2.2s ease-in-out infinite}
@keyframes rnpsBtnBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.rnps-btnfx-float .rnps-btn{animation:rnpsBtnFloat 3.2s ease-in-out infinite}
@keyframes rnpsBtnFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}

@media (prefers-reduced-motion:reduce){
	.rnps-prog-fx-pulse .rnps-progress-bar,
	.rnps-prog-fx-shine .rnps-progress-bar,
	.rnps-prog-fx-electric .rnps-progress-bar,
	.rnps-btnfx-pulse .rnps-btn,
	.rnps-btnfx-blink .rnps-btn,
	.rnps-btnfx-shine .rnps-btn:after,
	.rnps-btnfx-bounce .rnps-btn,
	.rnps-btnfx-float .rnps-btn{animation:none!important}
}

/* ===== Shape edges: pockets, curves, cards ===== */
.rnps-edge-pocket,
.rnps-edge-pocket-narrow,
.rnps-edge-pocket-top,
.rnps-edge-curve-top,
.rnps-wave-edge{display:none;pointer-events:none;z-index:4;fill:var(--rnps-boxed-bg,#fff)}

/* Classic centered pocket (wave) */
.rnps-v-wave .rnps-edge-pocket{display:block;position:absolute;left:50%;bottom:-2px;width:360px;height:54px;transform:translateX(-50%)}

/* Narrow bottom pocket – pagination/arrows sit inside */
.rnps-v-pocket-bottom .rnps-edge-pocket-narrow,
.rnps-v-card-soft .rnps-edge-pocket-narrow{
	display:block;position:absolute;left:50%;bottom:-1px;width:160px;height:28px;transform:translateX(-50%)
}
.rnps-v-card-soft .rnps-swiper{border-radius:28px;overflow:hidden}

/* Full-width soft bottom curve */
.rnps-v-curve-bottom .rnps-wave-edge,
.rnps-v-wave-deep .rnps-wave-edge{
	display:block;position:absolute;left:0;right:0;bottom:-1px;width:100%;height:var(--rnps-wave-h,56px);transform:none
}

/* Top pocket / curve */
.rnps-v-pocket-top .rnps-edge-pocket-top{
	display:block;position:absolute;left:50%;top:-1px;width:160px;height:28px;transform:translateX(-50%)
}
.rnps-v-curve-top .rnps-edge-curve-top{
	display:block;position:absolute;left:0;right:0;top:-1px;width:100%;height:var(--rnps-wave-h,56px);transform:none
}

/* Both top+bottom pockets */
.rnps-v-pocket-both .rnps-edge-pocket-narrow{
	display:block;position:absolute;left:50%;bottom:-1px;width:160px;height:28px;transform:translateX(-50%)
}
.rnps-v-pocket-both .rnps-edge-pocket-top{
	display:block;position:absolute;left:50%;top:-1px;width:160px;height:28px;transform:translateX(-50%)
}

/* Side indentations already defined above – ensure overflow */
.rnps-v-sides-bottom .rnps-swiper{
	overflow:hidden;border-radius:24px;
	clip-path: polygon(
		0% 0%, 100% 0%,
		100% calc(var(--rnps-wave-side-pos,50%) - 18%),
		calc(100% - var(--rnps-wave-side-amp,36px)) var(--rnps-wave-side-pos,50%),
		100% calc(var(--rnps-wave-side-pos,50%) + 18%),
		100% 92%,
		50% 100%,
		0% 92%,
		0% calc(var(--rnps-wave-side-pos,50%) + 18%),
		var(--rnps-wave-side-amp,36px) var(--rnps-wave-side-pos,50%),
		0% calc(var(--rnps-wave-side-pos,50%) - 18%)
	);
}
.rnps-v-split-organic .rnps-swiper{
	overflow:hidden;border-radius:32px 20px 32px 20px;
	clip-path: polygon(
		3% 0%, 97% 0%, 100% 8%, 100% 92%, 97% 100%, 3% 100%, 0% 92%, 0% 8%
	);
}

/* progress edge alignment handled by .rnps-prog-follow */

/* pan-y: اسکرول عمودی صفحه آزاد؛ سوایپ افقی با Swiper */
.rnps .rnps-swiper{touch-action:pan-y;}
.rnps .swiper-wrapper{touch-action:pan-y;}



/* === 1.1.6 touch: اسکرول عمودی + سوایپ افقی فقط داخل .rnps === */
.rnps .rnps-swiper,
.rnps .swiper-wrapper {
	touch-action: pan-y;
}
.rnps .swiper-slide {
	opacity: 1;
	visibility: visible;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.rnps .swiper-slide-active .rnps-media-wrap,
.rnps .swiper-slide-active .rnps-slide-inner {
	opacity: 1 !important;
	visibility: visible !important;
}
