/**
 * K2 Menu Showcase — scoped front-end styles.
 * No selector intentionally targets unprefixed theme or Elementor elements.
 */

.k2ms-showcase {
	--k2ms-accent: #ff6b4a;
	--k2ms-showcase-radius: 36px;
	--k2ms-active-accent: var(--k2ms-accent);
	--k2ms-stage-height: 820px;
	--k2ms-device-width: 324px;
	--k2ms-device-height: 664px;
	--k2ms-render-width: var(--k2ms-device-width);
	--k2ms-render-height: var(--k2ms-device-height);
	--k2ms-frame-padding: 10px;
	--k2ms-frame-border-width: 1px;
	--k2ms-frame-radius: 48px;
	--k2ms-screen-radius: 39px;
	--k2ms-frame-color: #16171a;
	--k2ms-frame-edge: #45474d;
	--k2ms-screen-background: #f5f3ef;
	--k2ms-motion-intensity: 100;
	--k2ms-visible-devices: 3;
	--k2ms-slide-gap: 24px;
	--k2ms-nav-size: 52px;
	--k2ms-nav-icon-size: 18px;
	--k2ms-nav-offset: 24px;
	--k2ms-pagination-size: 8px;
	--k2ms-pagination-gap: 8px;
	--k2ms-pagination-offset: 18px;
	--k2ms-decoration-scale: 1;
	--k2ms-decoration-opacity: 1;
	--k2ms-decoration-blur: 0px;
	--k2ms-decoration-primary: var(--k2ms-active-accent);
	--k2ms-decoration-secondary: #ffd75e;
	position: relative;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	border-radius: var(--k2ms-showcase-radius);
	box-sizing: border-box;
	isolation: isolate;
	contain: layout style;
	overflow: clip;
	font-family: inherit;
	-webkit-tap-highlight-color: transparent;
}

@supports not (overflow: clip) {
	.k2ms-showcase {
		overflow: hidden;
	}
}

.k2ms-showcase *,
.k2ms-showcase *::before,
.k2ms-showcase *::after {
	box-sizing: border-box;
}

.k2ms-showcase:focus {
	outline: none;
}

.k2ms-showcase:focus-visible {
	outline: 3px solid var(--k2ms-active-accent);
	outline: 3px solid color-mix(in srgb, var(--k2ms-active-accent) 72%, #ffffff);
	outline-offset: 4px;
}

.k2ms-showcase__surface {
	position: absolute;
	inset: 0;
	z-index: -3;
	border: 1px solid rgba(24, 28, 36, 0.07);
	border-radius: var(--k2ms-showcase-radius);
	background: #f6f7f8;
	pointer-events: none;
}

.k2ms-showcase__surface::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		linear-gradient(115deg, rgba(255, 255, 255, 0.82), transparent 38%),
		radial-gradient(circle at 76% 18%, color-mix(in srgb, var(--k2ms-active-accent) 12%, transparent), transparent 31%);
	opacity: 0.8;
	transition: background-color 500ms ease, opacity 500ms ease;
}

.k2ms-showcase__aura {
	position: absolute;
	left: 50%;
	top: 45%;
	z-index: -2;
	width: min(62%, 620px);
	aspect-ratio: 1;
	border-radius: 50%;
	background: radial-gradient(circle, color-mix(in srgb, var(--k2ms-active-accent) 18%, transparent) 0, transparent 68%);
	transform: translate(-50%, -50%);
	filter: blur(18px);
	pointer-events: none;
	transition: background 500ms ease;
}

.k2ms-showcase--preset-modern .k2ms-showcase__surface {
	background: linear-gradient(145deg, #f8fbff 0%, #f2f5f8 100%);
}

.k2ms-showcase--preset-premium .k2ms-showcase__surface {
	background: linear-gradient(145deg, #fbfaf8 0%, #f2efeb 100%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.k2ms-showcase--preset-minimal .k2ms-showcase__surface {
	background: transparent;
	border-color: rgba(24, 28, 36, 0.08);
}

.k2ms-showcase--preset-minimal .k2ms-showcase__surface::before,
.k2ms-showcase--preset-minimal .k2ms-showcase__aura {
	opacity: 0.26;
}

.k2ms-showcase--preset-restaurant .k2ms-showcase__surface {
	background: linear-gradient(145deg, #fffaf2 0%, #f6efe2 100%);
}

.k2ms-showcase--preset-dynamic .k2ms-showcase__surface {
	background: linear-gradient(145deg, #f5f7ff 0%, #eef1fa 52%, #f8f6fb 100%);
}

.k2ms-showcase--preset-showcase-3d .k2ms-showcase__surface {
	background: linear-gradient(145deg, #f2f4f8 0%, #e8ebf1 100%);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85), inset 0 -40px 80px rgba(51, 57, 71, 0.05);
}

.k2ms-showcase__stage {
	position: relative;
	z-index: 3;
	width: 100%;
	height: var(--k2ms-stage-height);
	min-height: 360px;
	perspective: 1600px;
	transform-style: preserve-3d;
	user-select: none;
	touch-action: pan-y pinch-zoom;
	outline: none;
}

.k2ms-showcase__slides {
	position: absolute;
	inset: 0;
	overflow: visible;
	transform-style: preserve-3d;
}

.k2ms-slide {
	--k2ms-slide-x: 0%;
	--k2ms-slide-y: 0px;
	--k2ms-slide-scale: 1;
	--k2ms-slide-rotate-y: 0deg;
	--k2ms-slide-rotate-z: 0deg;
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	margin: 0;
	padding: 18px 16px;
	transform: translate3d(var(--k2ms-slide-x), var(--k2ms-slide-y), 0) scale(var(--k2ms-slide-scale)) rotateY(var(--k2ms-slide-rotate-y)) rotateZ(var(--k2ms-slide-rotate-z));
	transform-origin: center center;
	transform-style: preserve-3d;
	opacity: var(--k2ms-slide-opacity, 0);
	visibility: hidden;
	pointer-events: none;
	will-change: auto;
	transition:
		transform var(--k2ms-transition-duration, 650ms) cubic-bezier(0.22, 0.78, 0.24, 1),
		opacity var(--k2ms-transition-duration, 650ms) ease,
		visibility 0s linear var(--k2ms-transition-duration, 650ms);
}

.k2ms-slide.is-visible {
	visibility: visible;
	will-change: transform, opacity;
	transition-delay: 0s;
}

.k2ms-showcase:not(.is-ready) .k2ms-slide:first-child {
	visibility: visible;
	opacity: 1;
}

.k2ms-slide.is-active {
	pointer-events: auto;
}

.k2ms-slide.is-neighbor {
	pointer-events: auto;
	cursor: pointer;
}

.k2ms-showcase.is-dragging .k2ms-slide {
	transition: none;
}

.k2ms-showcase.is-dragging,
.k2ms-showcase.is-dragging * {
	cursor: grabbing !important;
}

.k2ms-showcase--grab .k2ms-showcase__stage {
	cursor: grab;
}

.k2ms-slide__inner {
	position: relative;
	display: flex;
	width: 100%;
	height: 100%;
	min-width: 0;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	transform-style: preserve-3d;
}

.k2ms-slide__device-link {
	display: block;
	color: inherit;
	text-decoration: none;
	border-radius: var(--k2ms-frame-radius);
	outline: none;
}

.k2ms-slide__device-link:focus-visible {
	outline: 3px solid var(--k2ms-slide-accent, var(--k2ms-active-accent));
	outline-offset: 6px;
}

.k2ms-device {
	position: relative;
	width: var(--k2ms-render-width);
	height: var(--k2ms-render-height);
	max-width: calc(100% - 20px);
	flex: 0 0 auto;
	border: var(--k2ms-frame-border-width) solid var(--k2ms-frame-edge);
	border-radius: var(--k2ms-frame-radius);
	background:
		linear-gradient(118deg, rgba(255, 255, 255, 0.16), transparent 21%, transparent 78%, rgba(255, 255, 255, 0.06)),
		var(--k2ms-frame-color);
	box-shadow:
		0 28px 60px -26px rgba(24, 20, 17, 0.42),
		0 10px 24px -18px rgba(24, 20, 17, 0.34),
		inset 0 0 0 1px rgba(255, 255, 255, 0.06);
	transform: translateZ(0);
	transform-style: preserve-3d;
	transition: box-shadow 350ms ease, border-color 350ms ease;
}

.k2ms-slide.is-active .k2ms-device {
	box-shadow:
		0 32px 72px -27px color-mix(in srgb, var(--k2ms-slide-accent) 28%, rgba(16, 18, 22, 0.48)),
		0 12px 28px -19px rgba(20, 22, 27, 0.38),
		inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.k2ms-device__screen {
	position: absolute;
	inset: var(--k2ms-frame-padding);
	border-radius: var(--k2ms-screen-radius);
	background: var(--k2ms-screen-background);
	overflow: hidden;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.05), inset 0 0 0 1px rgba(4, 8, 12, 0.12);
	transform: translateZ(1px);
}

.k2ms-device__screen-viewport {
	position: absolute;
	inset: 0;
	overflow: hidden;
	border-radius: inherit;
	background: var(--k2ms-screen-background);
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}

.k2ms-device__image {
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	border: 0;
	backface-visibility: hidden;
	transform: translate3d(0, 0, 0);
}

.k2ms-slide--image-static .k2ms-device__image {
	height: 100%;
	object-fit: cover;
}

.k2ms-slide--image-static.k2ms-slide--fit-contain .k2ms-device__image {
	object-fit: contain;
}

.k2ms-slide--position-top .k2ms-device__image {
	object-position: center top;
}

.k2ms-slide--position-center .k2ms-device__image {
	object-position: center center;
}

.k2ms-slide--position-bottom .k2ms-device__image {
	object-position: center bottom;
}

.k2ms-slide--image-scrollable .k2ms-device__screen-viewport {
	overflow-x: hidden;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: color-mix(in srgb, var(--k2ms-slide-accent) 58%, transparent) transparent;
}

.k2ms-slide--image-scrollable .k2ms-device__screen-viewport::-webkit-scrollbar {
	width: 4px;
}

.k2ms-slide--image-scrollable .k2ms-device__screen-viewport::-webkit-scrollbar-thumb {
	border-radius: 8px;
	background: color-mix(in srgb, var(--k2ms-slide-accent) 58%, transparent);
}

.k2ms-slide--image-scrollable .k2ms-device__image,
.k2ms-slide--image-auto .k2ms-device__image {
	height: auto;
	min-height: 100%;
	object-fit: cover;
	transform-origin: center top;
}

.k2ms-device__screen-viewport:focus-visible {
	outline: 3px solid var(--k2ms-slide-accent);
	outline-offset: -4px;
}

.k2ms-device__screen-sheen {
	position: absolute;
	inset: 0;
	z-index: 3;
	border-radius: inherit;
	background: linear-gradient(115deg, rgba(255, 255, 255, 0.13), transparent 20%, transparent 72%, rgba(255, 255, 255, 0.04));
	pointer-events: none;
}

.k2ms-device__island {
	position: absolute;
	left: 50%;
	top: calc(var(--k2ms-frame-padding) + 8px);
	z-index: 5;
	display: flex;
	width: clamp(54px, calc(var(--k2ms-render-width) * 0.28), 92px);
	height: clamp(16px, calc(var(--k2ms-render-width) * 0.071), 25px);
	align-items: center;
	justify-content: flex-end;
	padding-right: 8%;
	border-radius: 99px;
	background: #050608;
	box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.08), 0 1px 4px rgba(0, 0, 0, 0.2);
	transform: translateX(-50%) translateZ(3px);
	pointer-events: none;
}

.k2ms-device__island i {
	display: block;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: radial-gradient(circle at 35% 35%, #324d76, #07111c 66%);
	box-shadow: 0 0 0 1px rgba(79, 118, 168, 0.2);
}

.k2ms-device__button {
	position: absolute;
	z-index: -1;
	display: block;
	width: 3px;
	border: 1px solid color-mix(in srgb, var(--k2ms-frame-edge) 80%, #000000);
	border-radius: 2px;
	background: var(--k2ms-frame-edge);
}

.k2ms-device__button--mute {
	left: -3px;
	top: 17%;
	height: 6%;
}

.k2ms-device__button--volume {
	left: -3px;
	top: 27%;
	height: 14%;
}

.k2ms-device__button--power {
	right: -3px;
	top: 28%;
	height: 15%;
}

.k2ms-device__label {
	position: absolute;
	left: 50%;
	bottom: 22px;
	z-index: 6;
	max-width: calc(100% - 44px);
	padding: 8px 12px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.56);
	border-radius: 99px;
	background: rgba(255, 255, 255, 0.88);
	box-shadow: 0 7px 22px -12px rgba(12, 15, 20, 0.34);
	color: #17191e;
	font-size: 11px;
	font-weight: 650;
	letter-spacing: 0.01em;
	line-height: 1.2;
	text-overflow: ellipsis;
	white-space: nowrap;
	transform: translateX(-50%);
	backdrop-filter: blur(10px);
}

.k2ms-slide--frame-minimal .k2ms-device {
	border-color: rgba(31, 34, 40, 0.34);
	border-radius: calc(var(--k2ms-frame-radius) * 0.76);
	background: color-mix(in srgb, var(--k2ms-frame-color) 18%, transparent);
	box-shadow: 0 24px 55px -30px rgba(18, 20, 25, 0.4), inset 0 0 0 1px rgba(255, 255, 255, 0.18);
}

.k2ms-slide--frame-minimal .k2ms-device__screen {
	border-radius: calc(var(--k2ms-screen-radius) * 0.78);
}

.k2ms-slide--frame-minimal .k2ms-device__island,
.k2ms-slide--frame-minimal .k2ms-device__button {
	display: none;
}

.k2ms-slide--frame-rounded .k2ms-device {
	border-color: color-mix(in srgb, var(--k2ms-frame-edge) 68%, #ffffff);
	background: linear-gradient(145deg, color-mix(in srgb, var(--k2ms-frame-color) 88%, #ffffff), var(--k2ms-frame-color));
}

.k2ms-slide--frame-dark .k2ms-device {
	background: linear-gradient(145deg, rgba(0, 0, 0, 0.48), rgba(0, 0, 0, 0.12)), var(--k2ms-frame-color);
	border-color: color-mix(in srgb, var(--k2ms-frame-edge) 70%, #000000);
}

.k2ms-slide--frame-light .k2ms-device {
	background: linear-gradient(145deg, rgba(255, 255, 255, 0.82), rgba(255, 255, 255, 0.44)), var(--k2ms-frame-color);
	border-color: color-mix(in srgb, var(--k2ms-frame-edge) 38%, #ffffff);
	box-shadow: 0 28px 64px -30px rgba(35, 38, 45, 0.35), inset 0 0 0 1px rgba(255, 255, 255, 0.56);
}

.k2ms-slide__meta {
	position: relative;
	z-index: 2;
	display: flex;
	width: calc(100% - 32px);
	max-width: 520px;
	min-width: 0;
	flex: 0 0 auto;
	flex-direction: column;
	align-items: center;
	margin-top: 18px;
	text-align: center;
	pointer-events: none;
}

.k2ms-slide__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 8px;
	padding: 5px 10px;
	border-radius: 99px;
	background: var(--k2ms-slide-accent, var(--k2ms-active-accent));
	color: #ffffff;
	font-size: 10px;
	font-weight: 750;
	letter-spacing: 0.09em;
	line-height: 1.15;
	text-transform: uppercase;
}

.k2ms-slide__title {
	margin: 0;
	padding: 0;
	color: #17191e;
	font-family: inherit;
	font-size: clamp(18px, 2vw, 26px);
	font-weight: 700;
	letter-spacing: -0.025em;
	line-height: 1.18;
}

.k2ms-slide__subtitle {
	max-width: 46ch;
	margin: 7px 0 0;
	padding: 0;
	color: #696d78;
	font-family: inherit;
	font-size: clamp(12px, 1.3vw, 15px);
	font-weight: 400;
	line-height: 1.55;
}

.k2ms-showcase--mode-floating .k2ms-slide.is-active .k2ms-slide__inner {
	animation: k2ms-active-float 5.8s ease-in-out infinite;
}

.k2ms-showcase--mode-minimal .k2ms-slide__meta {
	margin-top: 14px;
}

.k2ms-showcase--mode-stack .k2ms-slide:not(.is-active) .k2ms-slide__meta,
.k2ms-showcase--mode-multi-device .k2ms-slide:not(.is-active) .k2ms-slide__meta,
.k2ms-showcase--mode-coverflow .k2ms-slide:not(.is-active) .k2ms-slide__meta,
.k2ms-showcase--mode-showcase-3d .k2ms-slide:not(.is-active) .k2ms-slide__meta,
.k2ms-showcase--mode-center-focus .k2ms-slide:not(.is-active) .k2ms-slide__meta {
	opacity: 0;
	visibility: hidden;
}

.k2ms-showcase__navigation {
	position: absolute;
	inset: 0;
	z-index: 150;
	pointer-events: none;
}

.k2ms-nav {
	position: absolute;
	display: inline-grid;
	width: var(--k2ms-nav-size);
	height: var(--k2ms-nav-size);
	place-items: center;
	margin: 0;
	padding: 0;
	border: 1px solid rgba(32, 35, 42, 0.1);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.86);
	box-shadow: 0 12px 32px -18px rgba(20, 23, 29, 0.48);
	color: #20232a;
	font: inherit;
	line-height: 1;
	cursor: pointer;
	pointer-events: auto;
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	transition: transform 240ms ease, color 240ms ease, background-color 240ms ease, border-color 240ms ease, opacity 240ms ease;
}

.k2ms-nav:hover,
.k2ms-nav:focus-visible {
	border-color: transparent;
	background: var(--k2ms-active-accent);
	color: #ffffff;
	transform: translateY(-2px) scale(1.035);
}

.k2ms-nav:focus-visible {
	outline: 3px solid var(--k2ms-active-accent);
	outline: 3px solid color-mix(in srgb, var(--k2ms-active-accent) 38%, #ffffff);
	outline-offset: 3px;
}

.k2ms-nav:disabled,
.k2ms-nav[aria-disabled="true"] {
	opacity: 0.28;
	cursor: not-allowed;
	pointer-events: none;
	transform: none;
}

.k2ms-nav svg,
.k2ms-nav i {
	display: block;
	width: var(--k2ms-nav-icon-size);
	height: var(--k2ms-nav-icon-size);
	font-size: var(--k2ms-nav-icon-size);
	line-height: 1;
}

.k2ms-showcase--nav-sides .k2ms-nav,
.k2ms-showcase--nav-inside .k2ms-nav {
	top: 50%;
	transform: translateY(-50%);
}

.k2ms-showcase--nav-sides .k2ms-nav:hover,
.k2ms-showcase--nav-sides .k2ms-nav:focus-visible,
.k2ms-showcase--nav-inside .k2ms-nav:hover,
.k2ms-showcase--nav-inside .k2ms-nav:focus-visible {
	transform: translateY(calc(-50% - 2px)) scale(1.035);
}

.k2ms-showcase--nav-sides .k2ms-nav--previous {
	left: var(--k2ms-nav-offset);
}

.k2ms-showcase--nav-sides .k2ms-nav--next {
	right: var(--k2ms-nav-offset);
}

.k2ms-showcase--nav-inside .k2ms-nav--previous {
	left: max(var(--k2ms-nav-offset), calc(50% - (var(--k2ms-render-width) / 2) + 18px));
}

.k2ms-showcase--nav-inside .k2ms-nav--next {
	right: max(var(--k2ms-nav-offset), calc(50% - (var(--k2ms-render-width) / 2) + 18px));
}

.k2ms-showcase--nav-bottom .k2ms-showcase__navigation {
	top: auto;
	bottom: calc(var(--k2ms-pagination-offset) + 20px);
	left: 50%;
	display: flex;
	width: auto;
	gap: 10px;
	transform: translateX(-50%);
}

.k2ms-showcase--nav-bottom .k2ms-nav,
.k2ms-showcase--nav-top .k2ms-nav {
	position: relative;
}

.k2ms-showcase--nav-top .k2ms-showcase__navigation {
	inset: var(--k2ms-nav-offset) var(--k2ms-nav-offset) auto auto;
	display: flex;
	width: auto;
	height: auto;
	gap: 10px;
}

[dir="rtl"].k2ms-showcase--nav-sides .k2ms-nav--previous {
	right: var(--k2ms-nav-offset);
	left: auto;
}

[dir="rtl"].k2ms-showcase--nav-sides .k2ms-nav--next {
	right: auto;
	left: var(--k2ms-nav-offset);
}

[dir="rtl"].k2ms-showcase--nav-inside .k2ms-nav--previous {
	right: max(var(--k2ms-nav-offset), calc(50% - (var(--k2ms-render-width) / 2) + 18px));
	left: auto;
}

[dir="rtl"].k2ms-showcase--nav-inside .k2ms-nav--next {
	right: auto;
	left: max(var(--k2ms-nav-offset), calc(50% - (var(--k2ms-render-width) / 2) + 18px));
}

.k2ms-pagination {
	--k2ms-page-color: rgba(28, 31, 38, 0.22);
	--k2ms-page-active: var(--k2ms-active-accent);
	position: absolute;
	z-index: 160;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--k2ms-pagination-gap);
	min-width: 24px;
	min-height: 24px;
	pointer-events: auto;
}

.k2ms-showcase--pagination-bottom .k2ms-pagination {
	left: 50%;
	bottom: var(--k2ms-pagination-offset);
	transform: translateX(-50%);
}

.k2ms-showcase--pagination-top .k2ms-pagination {
	left: 50%;
	top: var(--k2ms-pagination-offset);
	transform: translateX(-50%);
}

.k2ms-showcase--pagination-left .k2ms-pagination,
.k2ms-showcase--pagination-right .k2ms-pagination {
	top: 50%;
	flex-direction: column;
	transform: translateY(-50%);
}

.k2ms-showcase--pagination-left .k2ms-pagination {
	left: var(--k2ms-pagination-offset);
}

.k2ms-showcase--pagination-right .k2ms-pagination {
	right: var(--k2ms-pagination-offset);
}

.k2ms-pagination__dot,
.k2ms-pagination__number {
	display: inline-grid;
	place-items: center;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	line-height: 1;
	cursor: pointer;
}

.k2ms-pagination__dot {
	width: max(18px, var(--k2ms-pagination-size));
	height: max(18px, var(--k2ms-pagination-size));
}

.k2ms-pagination__dot::before {
	content: "";
	display: block;
	width: var(--k2ms-pagination-size);
	height: var(--k2ms-pagination-size);
	border-radius: 99px;
	background: var(--k2ms-page-color);
	transform: scale(var(--k2ms-dot-scale, 1));
	transition: width 260ms ease, transform 260ms ease, background-color 260ms ease, opacity 260ms ease;
}

.k2ms-pagination__dot.is-active::before {
	width: calc(var(--k2ms-pagination-size) * 3);
	background: var(--k2ms-page-active);
}

.k2ms-pagination--dynamic-dots .k2ms-pagination__dot {
	width: max(14px, var(--k2ms-pagination-size));
}

.k2ms-pagination--dynamic-dots .k2ms-pagination__dot::before {
	opacity: var(--k2ms-dot-opacity, 1);
}

.k2ms-pagination__dot:focus-visible,
.k2ms-pagination__number:focus-visible {
	outline: 2px solid var(--k2ms-page-active);
	outline-offset: 2px;
	border-radius: 99px;
}

.k2ms-pagination__number {
	min-width: 28px;
	height: 28px;
	border-radius: 99px;
	color: color-mix(in srgb, currentColor 58%, transparent);
	font-size: max(11px, var(--k2ms-pagination-size));
	font-weight: 650;
	transition: color 220ms ease, background-color 220ms ease, transform 220ms ease;
}

.k2ms-pagination__number.is-active {
	background: var(--k2ms-page-active);
	color: #ffffff;
	transform: scale(1.06);
}

.k2ms-pagination__fraction {
	display: inline-flex;
	align-items: baseline;
	gap: 5px;
	min-width: 56px;
	color: #252830;
	font-size: 12px;
	font-variant-numeric: tabular-nums;
	font-weight: 600;
}

.k2ms-pagination__fraction-current {
	color: var(--k2ms-page-active);
	font-size: 18px;
	font-weight: 760;
}

.k2ms-pagination__progress {
	position: relative;
	display: block;
	width: min(180px, 32vw);
	height: max(3px, calc(var(--k2ms-pagination-size) / 2));
	overflow: hidden;
	border-radius: 99px;
	background: var(--k2ms-page-color);
}

.k2ms-pagination__progress-bar {
	position: absolute;
	inset: 0 auto 0 0;
	width: var(--k2ms-progress, 0%);
	border-radius: inherit;
	background: var(--k2ms-page-active);
	transition: width var(--k2ms-transition-duration, 650ms) cubic-bezier(0.22, 0.78, 0.24, 1);
}

.k2ms-autoplay-toggle {
	position: absolute;
	right: calc(var(--k2ms-pagination-offset) + 2px);
	bottom: calc(var(--k2ms-pagination-offset) + 2px);
	z-index: 165;
	display: inline-grid;
	width: 30px;
	height: 30px;
	place-items: center;
	margin: 0;
	padding: 0;
	border: 1px solid rgba(28, 31, 38, 0.1);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.72);
	color: #343842;
	cursor: pointer;
	backdrop-filter: blur(10px);
	transition: color 220ms ease, background-color 220ms ease, transform 220ms ease;
}

.k2ms-autoplay-toggle:hover,
.k2ms-autoplay-toggle:focus-visible {
	background: var(--k2ms-active-accent);
	color: #ffffff;
	transform: translateY(-1px);
}

.k2ms-autoplay-toggle:focus-visible {
	outline: 2px solid var(--k2ms-active-accent);
	outline-offset: 3px;
}

.k2ms-autoplay-toggle__pause {
	display: flex;
	gap: 3px;
}

.k2ms-autoplay-toggle__pause i {
	display: block;
	width: 2px;
	height: 10px;
	border-radius: 2px;
	background: currentColor;
}

.k2ms-autoplay-toggle__play {
	display: none;
	width: 0;
	height: 0;
	margin-left: 2px;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 8px solid currentColor;
}

.k2ms-autoplay-toggle.is-paused .k2ms-autoplay-toggle__pause {
	display: none;
}

.k2ms-autoplay-toggle.is-paused .k2ms-autoplay-toggle__play {
	display: block;
}

[dir="rtl"] .k2ms-pagination__progress-bar {
	right: 0;
	left: auto;
}

.k2ms-decorations {
	position: absolute;
	inset: 0;
	z-index: 1;
	overflow: hidden;
	border-radius: var(--k2ms-showcase-radius);
	pointer-events: none;
}

.k2ms-decoration {
	--k2ms-deco-size: 72px;
	--k2ms-deco-scale: 1;
	--k2ms-deco-rotation: 0deg;
	--k2ms-deco-opacity: 0.9;
	--k2ms-parallax-x: 0px;
	--k2ms-parallax-y: 0px;
	position: absolute;
	display: block;
	width: var(--k2ms-deco-size);
	height: var(--k2ms-deco-size);
	opacity: var(--k2ms-decoration-opacity);
	transform: translate3d(var(--k2ms-parallax-x), var(--k2ms-parallax-y), 0) scale(var(--k2ms-decoration-scale));
	transform-origin: center;
	will-change: transform;
}

.k2ms-decoration__motion,
.k2ms-decoration__visual {
	display: block;
	width: 100%;
	height: 100%;
}

.k2ms-decoration__motion {
	animation-delay: var(--k2ms-deco-delay);
	animation-duration: var(--k2ms-deco-duration);
	animation-iteration-count: infinite;
	animation-timing-function: ease-in-out;
}

.k2ms-decoration__motion--float {
	animation-name: k2ms-decoration-float;
}

.k2ms-decoration__motion--pulse {
	animation-name: k2ms-decoration-pulse;
}

.k2ms-decoration__motion--sway {
	animation-name: k2ms-decoration-sway;
}

.k2ms-decoration__visual {
	opacity: var(--k2ms-deco-opacity);
	filter: blur(var(--k2ms-decoration-blur));
	transform: rotate(var(--k2ms-deco-rotation)) scale(var(--k2ms-deco-scale));
	transform-origin: center;
}

.k2ms-decoration--slot-1 { left: 9%; top: 14%; }
.k2ms-decoration--slot-2 { right: 10%; top: 18%; }
.k2ms-decoration--slot-3 { left: 17%; bottom: 16%; }
.k2ms-decoration--slot-4 { right: 16%; bottom: 13%; }
.k2ms-decoration--slot-5 { left: 5%; top: 47%; }
.k2ms-decoration--slot-6 { right: 5%; top: 49%; }
.k2ms-decoration--slot-7 { left: 27%; top: 7%; }
.k2ms-decoration--slot-8 { right: 28%; bottom: 6%; }

.k2ms-decoration--orb .k2ms-decoration__visual {
	border-radius: 38% 62% 61% 39% / 54% 42% 58% 46%;
	background: var(--k2ms-decoration-primary);
	background: linear-gradient(145deg, color-mix(in srgb, var(--k2ms-decoration-primary) 78%, #ffffff), color-mix(in srgb, var(--k2ms-decoration-secondary) 66%, transparent));
	box-shadow: inset 7px 8px 18px rgba(255, 255, 255, 0.35), 0 18px 36px -22px color-mix(in srgb, var(--k2ms-decoration-primary) 64%, transparent);
}

.k2ms-decoration--ring .k2ms-decoration__visual {
	border: clamp(2px, calc(var(--k2ms-deco-size) * 0.06), 7px) solid var(--k2ms-decoration-primary);
	border: clamp(2px, calc(var(--k2ms-deco-size) * 0.06), 7px) solid color-mix(in srgb, var(--k2ms-decoration-primary) 46%, transparent);
	border-radius: 50%;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.52);
}

.k2ms-decoration--card {
	--k2ms-deco-size: 108px;
	height: calc(var(--k2ms-deco-size) * 0.68);
}

.k2ms-decoration--card .k2ms-decoration__visual {
	position: relative;
	display: flex;
	align-items: center;
	gap: 9%;
	padding: 12%;
	border: 1px solid rgba(255, 255, 255, 0.68);
	border-radius: 18%;
	background: rgba(255, 255, 255, 0.78);
	box-shadow: 0 18px 40px -25px rgba(18, 21, 27, 0.45);
	backdrop-filter: blur(12px);
}

.k2ms-decoration--card .k2ms-decoration__visual > i {
	width: 32%;
	aspect-ratio: 1;
	border-radius: 28%;
	background: linear-gradient(145deg, var(--k2ms-decoration-primary), var(--k2ms-decoration-secondary));
}

.k2ms-decoration--card .k2ms-decoration__visual > span {
	display: flex;
	width: 51%;
	flex-direction: column;
	gap: 5px;
}

.k2ms-decoration--card .k2ms-decoration__visual b {
	display: block;
	width: 100%;
	height: 4px;
	border-radius: 99px;
	background: rgba(33, 37, 45, 0.13);
}

.k2ms-decoration--card .k2ms-decoration__visual b:nth-child(2) { width: 74%; }
.k2ms-decoration--card .k2ms-decoration__visual b:nth-child(3) { width: 46%; background: color-mix(in srgb, var(--k2ms-decoration-primary) 40%, transparent); }

.k2ms-decoration--card .k2ms-decoration__visual em {
	position: absolute;
	right: 9%;
	bottom: 8%;
	max-width: 46%;
	overflow: hidden;
	color: #343842;
	font-size: 8px;
	font-style: normal;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.k2ms-decoration--rating {
	--k2ms-deco-size: 88px;
	height: calc(var(--k2ms-deco-size) * 0.48);
}

.k2ms-decoration--rating .k2ms-decoration__visual {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8%;
	border: 1px solid rgba(255, 255, 255, 0.72);
	border-radius: 99px;
	background: rgba(255, 255, 255, 0.82);
	box-shadow: 0 16px 36px -24px rgba(18, 20, 26, 0.48);
	color: #23262d;
	font-size: calc(var(--k2ms-deco-size) * 0.16);
	font-weight: 760;
	font-variant-numeric: tabular-nums;
	backdrop-filter: blur(12px);
}

.k2ms-decoration__star {
	color: #f3b325;
	font-size: 1.2em;
}

.k2ms-decoration--qr .k2ms-decoration__visual {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 6%;
	padding: 16%;
	border: 1px solid rgba(255, 255, 255, 0.76);
	border-radius: 20%;
	background: rgba(255, 255, 255, 0.88);
	box-shadow: 0 18px 34px -25px rgba(20, 23, 29, 0.42);
}

.k2ms-decoration--qr .k2ms-decoration__visual i {
	display: block;
	border-radius: 22%;
	background: #30343b;
	background: color-mix(in srgb, var(--k2ms-decoration-primary) 86%, #20242b);
}

.k2ms-decoration--qr .k2ms-decoration__visual i:nth-child(2),
.k2ms-decoration--qr .k2ms-decoration__visual i:nth-child(6),
.k2ms-decoration--qr .k2ms-decoration__visual i:nth-child(8) {
	opacity: 0.18;
}

.k2ms-decoration--food .k2ms-decoration__visual {
	display: grid;
	place-items: center;
	border-radius: 30%;
	background: rgba(255, 255, 255, 0.9);
	background: color-mix(in srgb, var(--k2ms-decoration-secondary) 30%, rgba(255, 255, 255, 0.9));
	box-shadow: 0 18px 36px -24px rgba(39, 32, 20, 0.38);
	color: var(--k2ms-decoration-primary);
	color: color-mix(in srgb, var(--k2ms-decoration-primary) 82%, #20242a);
}

.k2ms-decoration--food svg {
	width: 54%;
	height: 54%;
}

.k2ms-decoration--line {
	--k2ms-deco-size: 130px;
	height: calc(var(--k2ms-deco-size) * 0.4);
	color: var(--k2ms-decoration-primary);
	color: color-mix(in srgb, var(--k2ms-decoration-primary) 46%, transparent);
}

.k2ms-decoration--line svg {
	display: block;
	width: 100%;
	height: 100%;
}

.k2ms-decoration--emoji .k2ms-decoration__visual {
	display: grid;
	place-items: center;
	font-size: calc(var(--k2ms-deco-size) * 0.66);
	line-height: 1;
}

.k2ms-sr-only {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	clip-path: inset(50%) !important;
	border: 0 !important;
	white-space: nowrap !important;
}

.k2ms-editor-empty {
	padding: 32px;
	border: 1px dashed #c7cad0;
	border-radius: 14px;
	background: #f7f8fa;
	color: #555b66;
	font-size: 14px;
	text-align: center;
}

@keyframes k2ms-active-float {
	0%, 100% { transform: translate3d(0, 0, 0); }
	50% { transform: translate3d(0, -8px, 0); }
}

@keyframes k2ms-decoration-float {
	0%, 100% { transform: translate3d(0, 0, 0); }
	50% { transform: translate3d(0, -10px, 0); }
}

@keyframes k2ms-decoration-pulse {
	0%, 100% { transform: scale(1); opacity: 0.86; }
	50% { transform: scale(1.07); opacity: 1; }
}

@keyframes k2ms-decoration-sway {
	0%, 100% { transform: rotate(-2deg) translate3d(0, 1px, 0); }
	50% { transform: rotate(3deg) translate3d(0, -7px, 0); }
}

@media (max-width: 1024px) and (min-width: 768px) {
	.k2ms-decoration--hide-tablet {
		display: none !important;
	}

	.k2ms-decoration--slot-5,
	.k2ms-decoration--slot-6 {
		opacity: 0.64;
	}
}

@media (min-width: 1025px) {
	.k2ms-decoration--hide-desktop {
		display: none !important;
	}
}

@media (max-width: 767px) {
	.k2ms-showcase {
		--k2ms-nav-offset: 8px;
		--k2ms-pagination-offset: 10px;
		padding-right: 6px;
		padding-left: 6px;
	}

	.k2ms-showcase__surface::before {
		opacity: 0.58;
	}

	.k2ms-slide {
		padding: 12px 5px 44px;
	}

	.k2ms-slide__meta {
		width: calc(100% - 56px);
		margin-top: 12px;
	}

	.k2ms-slide__subtitle {
		max-width: 34ch;
	}

	.k2ms-showcase--nav-sides .k2ms-nav {
		top: 48%;
	}

	.k2ms-showcase--nav-inside .k2ms-nav--previous {
		left: var(--k2ms-nav-offset);
	}

	.k2ms-showcase--nav-inside .k2ms-nav--next {
		right: var(--k2ms-nav-offset);
	}

	.k2ms-decoration--hide-mobile {
		display: none !important;
	}

	.k2ms-decoration--slot-3,
	.k2ms-decoration--slot-4,
	.k2ms-decoration--slot-7,
	.k2ms-decoration--slot-8 {
		display: none;
	}

	.k2ms-decoration--slot-1 { left: -1%; top: 12%; }
	.k2ms-decoration--slot-2 { right: -2%; top: 14%; }
	.k2ms-decoration--slot-5 { left: -3%; top: 57%; }
	.k2ms-decoration--slot-6 { right: -3%; top: 60%; }

	.k2ms-showcase--mode-coverflow .k2ms-slide:not(.is-active) .k2ms-device,
	.k2ms-showcase--mode-showcase-3d .k2ms-slide:not(.is-active) .k2ms-device,
	.k2ms-showcase--mode-multi-device .k2ms-slide:not(.is-active) .k2ms-device {
		opacity: 0.74;
	}
}

@media (prefers-contrast: more) {
	.k2ms-nav,
	.k2ms-device,
	.k2ms-showcase__surface {
		border-width: 2px;
	}

	.k2ms-pagination__dot::before {
		outline: 1px solid currentColor;
	}
}

@media (prefers-reduced-motion: reduce) {
	.k2ms-showcase,
	.k2ms-showcase * {
		scroll-behavior: auto !important;
	}

	.k2ms-slide,
	.k2ms-nav,
	.k2ms-pagination__dot::before,
	.k2ms-pagination__number,
	.k2ms-pagination__progress-bar,
	.k2ms-showcase__surface::before,
	.k2ms-showcase__aura {
		transition-duration: 1ms !important;
	}

	.k2ms-slide__inner,
	.k2ms-decoration__motion {
		animation: none !important;
	}
}
