/* Kanshi Reel Product Slider v2 - plain CSS scroll-snap */
.krs { --krs-bg:#faf6f1; --krs-gap:14px; --krs-n:2.2;
	display:block; width:100%; margin:0; padding:24px 0; background:var(--krs-bg);
	box-sizing:border-box; font-family:"Lora",Georgia,"Times New Roman",serif; }
.krs *, .krs *::before, .krs *::after { box-sizing:border-box; }

.krs .krs-wrap { position:relative; max-width:1600px; margin:0 auto; padding:0 12px; }

.krs .krs-track {
	display:flex; align-items:flex-start; gap:var(--krs-gap); margin:0; padding:6px 2px 18px;
	overflow-x:auto; overflow-y:hidden;
	scroll-snap-type:x mandatory; scroll-behavior:smooth;
	-webkit-overflow-scrolling:touch; overscroll-behavior-x:contain;
	scrollbar-width:none; outline:0;
}
.krs .krs-track::-webkit-scrollbar { display:none; }

.krs .krs-card {
	flex:0 0 calc((100% - (var(--krs-n) - 1) * var(--krs-gap)) / var(--krs-n));
	min-width:0; scroll-snap-align:start;
	display:block; margin:0; padding:0; background:#fff; color:#111; text-decoration:none;
	border:0; border-radius:8px; overflow:hidden; box-shadow:0 2px 10px rgba(0,0,0,.08);
}
.krs a.krs-card:hover, .krs a.krs-card:focus { color:#111; text-decoration:none; }

.krs .krs-media { display:block; width:100%; margin:0; padding:0; background:#e9e2da; overflow:hidden; line-height:0; }
.krs .krs-img, .krs .krs-video {
	display:block; position:static !important; width:100% !important; height:auto !important;
	max-width:100% !important; margin:0 !important; padding:0 !important; border:0 !important;
	border-radius:0 !important; box-shadow:none !important; object-fit:cover;
	aspect-ratio:auto 9/16; pointer-events:none; background:#e9e2da;
}

.krs .krs-info { padding:12px 14px 14px; text-align:left; }
.krs .krs-title {
	margin:0 0 4px; padding:0; font-family:inherit; font-weight:600; letter-spacing:0; text-transform:none;
	font-size:clamp(14px, 1vw + 6px, 19px); line-height:1.35; color:#111;
	white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.krs .krs-price { display:flex; flex-wrap:wrap; gap:2px 8px; margin:0; font-size:clamp(13px, .8vw + 6px, 17px); line-height:1.35; }
.krs .krs-regular { color:#111; font-weight:700; text-decoration:line-through; }
.krs .krs-sale { color:#8c8c8c; }

/* arrows: only on devices with a mouse */
.krs .krs-nav {
	-webkit-appearance:none; appearance:none; display:none;
	position:absolute; top:calc(50% - 9px); z-index:5; width:42px; height:42px; min-width:0; min-height:0;
	margin:-21px 0 0; padding:0 0 3px; border:0; border-radius:50%; background:#fff; color:#111;
	font:400 28px/1 Arial,sans-serif; text-align:center; cursor:pointer; box-shadow:0 2px 8px rgba(0,0,0,.25);
}
.krs .krs-nav:hover, .krs .krs-nav:focus { background:#fff; color:#111; }
.krs .krs-nav[disabled] { opacity:.35; cursor:default; }
.krs .krs-prev { left:20px; }
.krs .krs-next { right:20px; }
@media (hover:hover) and (pointer:fine) { .krs .krs-nav { display:block; } }

@media (min-width:600px)  { .krs { --krs-n:3.2; --krs-gap:16px; } }
@media (min-width:900px)  { .krs { --krs-n:4; --krs-gap:18px; padding:36px 0; } }
@media (min-width:1200px) { .krs { --krs-n:5; --krs-gap:20px; } }
@media (prefers-reduced-motion:reduce) { .krs .krs-track { scroll-behavior:auto; } }
