
:root {
	--bg: #090b10;
	--panel: rgba(255, 255, 255, .08);
	--panel-strong: rgba(255, 255, 255, .13);
	--line: rgba(255, 255, 255, .15);
	--text: #f7fbff;
	--soft: #aeb9c8;
	--ink: #151926;
	--muted: #667085;
	--orange: #ff6a00;
	--cyan: #35e0d1;
	--violet: #7c5cff;
	--lime: #b8f56d;
}

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: "Segoe UI", Roboto, Arial, sans-serif;
}

html {
	scroll-behavior: smooth;
}

body {
	background: var(--bg);
	color: var(--text);
	line-height: 1.5;
}

a {
	color: inherit;
	text-decoration: none;
}

ul {
	list-style: none;
}

button,
input {
	font: inherit;
}

.page {
	overflow: hidden;
	background:
		radial-gradient(circle at 18% 12%, rgba(53, 224, 209, .20), transparent 28%),
		radial-gradient(circle at 82% 10%, rgba(124, 92, 255, .22), transparent 30%),
		radial-gradient(circle at 70% 60%, rgba(255, 106, 0, .18), transparent 32%),
		#090b10;
}

.wrap {
	width: min(1120px, calc(100% - 44px));
	margin: 0 auto;
}

.hero {
	position: relative;
	width: 100%;
	aspect-ratio: 24 / 7;
	height: auto;
	min-height: 0;
	display: flex;
	align-items: center;
	padding: 0;
	overflow: hidden;
	isolation: isolate;
}

.hero-video-stage {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	background:
		radial-gradient(circle at 16% 18%, rgba(53,224,209,.18), transparent 30%),
		radial-gradient(circle at 82% 22%, rgba(255,106,0,.14), transparent 28%),
		#090b10;
}

.hero-bg-image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	display: block;
	transform: none;
	filter: none;
	pointer-events: none;
}

.hero-shell {
	position: relative;
	z-index: 1;
	text-align: center;
	transform: translateY(60px);
}

.hero-title {
	max-width: min(1120px, 100%);
	width: 100%;
	margin: 0 auto;
	color: #fff;
	font-size: clamp(42px, 5.8vw, 78px);
	line-height: .96;
	letter-spacing: 0;
	font-weight: 900;
	white-space: normal;
	overflow-wrap: anywhere;
	text-wrap: balance;
}

.hero-title span {
	display: inline-block;
	max-width: 100%;
	background: linear-gradient(90deg, var(--cyan), #fff, var(--orange));
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.launch-card {
	position: relative;
	max-width: 860px;
	margin: 36px auto 0;
	padding: 10px;
	border: 1px solid rgba(255,255,255,.18);
	border-radius: 8px;
	background:
		linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,.06)),
		rgba(5, 8, 13, .58);
	box-shadow: 0 34px 95px rgba(0,0,0,.45), 0 0 46px rgba(53,224,209,.12);
	overflow: hidden;
	transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}

.launch-card:focus-within,
.launch-card:hover {
	border-color: rgba(53,224,209,.42);
	box-shadow: 0 36px 100px rgba(0,0,0,.48), 0 0 58px rgba(53,224,209,.18), 0 0 44px rgba(255,106,0,.12);
	transform: translateY(-2px);
}

.launch-card::before {
	content: "";
	position: absolute;
	inset: -1px;
	border-radius: 8px;
	padding: 1px;
	background: linear-gradient(90deg, rgba(53,224,209,.85), rgba(255,106,0,.85), rgba(124,92,255,.85));
	mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	mask-composite: exclude;
	pointer-events: none;
}

.launch-card::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(110deg, transparent 0 36%, rgba(255,255,255,.10) 46%, transparent 58%);
	transform: translateX(-80%);
	animation: searchSheen 5.8s ease-in-out infinite;
	pointer-events: none;
}

@keyframes searchSheen {
	0%, 62% { transform: translateX(-80%); opacity: 0; }
	72% { opacity: .8; }
	100% { transform: translateX(80%); opacity: 0; }
}

.hero-search {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: 1fr 54px 166px;
	gap: 10px;
	align-items: center;
}

.hero-search input[type="text"] {
	width: 100%;
	min-width: 0;
	height: 62px;
	border: 1px solid rgba(255,255,255,.16);
	border-radius: 8px;
	outline: 0;
	padding: 0 20px;
	background: rgba(5, 8, 13, .74);
	color: #fff;
	font-size: 15px;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
	transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.hero-search input[type="text"]:focus {
	border-color: rgba(53,224,209,.55);
	background: rgba(5, 8, 13, .84);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 0 0 3px rgba(53,224,209,.10);
}

.hero-search input[type="text"]::placeholder {
	color: #9da9b8;
}

.hero-camera-icon {
	width: 54px;
	height: 54px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(255,255,255,.18);
	border-radius: 8px;
	background: rgba(5, 8, 13, .66);
	color: #dce7f3;
	cursor: pointer;
	transition: .18s ease;
}

.hero-camera-icon svg {
	width: 28px;
	height: 28px;
	stroke: currentColor;
	stroke-width: 1.9;
	fill: none;
	stroke-linecap: round;
	stroke-linejoin: round;
	transition: transform .18s ease;
}

.hero-camera-icon:hover {
	color: var(--cyan);
	border-color: rgba(53,224,209,.65);
}

.hero-camera-icon:hover svg {
	transform: scale(1.05);
}

.hidden-upload {
	display: none;
}

.search-btn {
	height: 62px;
	border: 0;
	border-radius: 8px;
	background: linear-gradient(135deg, #ff7a12, var(--orange) 58%, #f04e00);
	color: #fff;
	font-size: 15px;
	font-weight: 900;
	cursor: pointer;
	box-shadow: 0 18px 34px rgba(255,106,0,.34), inset 0 1px 0 rgba(255,255,255,.25);
	transition: .18s ease;
}

.search-btn:hover {
	background: #f15f00;
	transform: translateY(-1px);
}

.search-btn:disabled {
	background: #ffad7a;
	cursor: not-allowed;
	transform: none;
}

.section {
	position: relative;
	padding: 56px 0;
	background:
		radial-gradient(circle at 14% 0, rgba(53, 224, 209, .16), transparent 30%),
		radial-gradient(circle at 88% 8%, rgba(255, 106, 0, .13), transparent 28%),
		#0d1017;
	color: #fff;
}

.section.dark {
	background:
		radial-gradient(circle at 82% 0, rgba(124, 92, 255, .14), transparent 30%),
		#0d1017;
	color: #fff;
}

.section.dark {
	display: none !important;
}

.section-head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 28px;
	margin-bottom: 24px;
}

.kicker {
	color: var(--orange);
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
}

.section-title {
	margin-top: 6px;
	font-size: 32px;
	line-height: 1.14;
	font-weight: 900;
	letter-spacing: 0;
	overflow-wrap: anywhere;
}

.section-note {
	max-width: 430px;
	color: #aeb9c8;
	font-size: 14px;
	overflow-wrap: anywhere;
}

.dark .section-note {
	color: #aeb9c8;
}.motion-copy .section-head {
	display: block;
	margin-bottom: 22px;
}frames scanDrop {
	to { transform: translateY(330%); }
}tion-node.one { left: 10%; }
.motion-node.two { left: 38%; }
.motion-node.three { left: 64%; }ames truckToQc {
	0%, 10% {
		left: 7%;
		opacity: 0;
		transform: translateY(4px);
	}
	18%, 42% {
		opacity: 1;
	}
	48%, 54% {
		left: 35%;
		opacity: 1;
		transform: translateY(-9px);
	}
	62%, 100% {
		left: 35%;
		opacity: 0;
		transform: translateY(-9px);
	}
}

@keyframes planeToShip {
	0%, 48% {
		left: 61%;
		opacity: 0;
		transform: translateY(10px) rotate(-7deg) scale(.92);
	}
	56%, 78% {
		opacity: 1;
	}
	94%, 100% {
		left: 86%;
		opacity: 0;
		transform: translateY(-16px) rotate(-7deg) scale(1.03);
	}
}choice-section {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding: 74px 0 88px;
	background:
		radial-gradient(circle at 14% 18%, rgba(53,224,209,.20), transparent 32%),
		radial-gradient(circle at 86% 22%, rgba(255,106,0,.15), transparent 30%),
		linear-gradient(180deg, #0d1017 0%, #090b10 100%);
	color: #fff;
}

.buy-steps-section {
	padding: 18px 0 46px;
	background:
		radial-gradient(circle at 18% 0, rgba(53,224,209,.16), transparent 34%),
		radial-gradient(circle at 84% 8%, rgba(255,106,0,.12), transparent 30%),
		#0d1017;
	color: #fff;
}

.buy-steps-section > .wrap {
	width: min(1250px, calc(100% - 44px));
}

.buy-steps-section + .choice-section {
	padding-top: 58px;
}

.setmain-carousel {
	position: relative;
	left: 50%;
	z-index: 2;
	width: min(1250px, calc(100vw - 44px));
	height: 240px;
	min-height: 240px;
	max-width: none;
	margin: 0 auto 26px;
	padding: 0 0 24px;
	transform: translateX(-50%);
}

.setmain-carousel.is-empty {
	display: none;
}

.setmain-carousel__viewport {
	position: relative;
	width: 100%;
	height: 216px;
	min-height: 216px;
	overflow: hidden;
}

.setmain-carousel__track {
	display: flex;
	gap: 18px;
	height: 216px;
	min-height: 216px;
	transform: translateX(0);
	transition: transform .42s ease;
	will-change: transform;
}

.setmain-carousel__slide {
	flex: 0 0 calc((100% - 36px) / 3);
	width: calc((100% - 36px) / 3);
	height: 216px;
	min-height: 216px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(255,255,255,.14);
	border-radius: 10px;
	background:
		linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,.04)),
		rgba(8,10,15,.72);
	box-shadow: 0 22px 58px rgba(0,0,0,.28), 0 0 24px rgba(53,224,209,.10);
	overflow: hidden;
}

.setmain-carousel__slide img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: fill;
	object-position: center;
}

.setmain-carousel__nav {
	position: absolute;
	top: calc((100% - 24px) / 2);
	z-index: 3;
	width: 42px;
	height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(255,255,255,.24);
	border-radius: 50%;
	background: rgba(7, 11, 17, .92);
	color: #fff;
	cursor: pointer;
	opacity: 0;
	pointer-events: none;
	transform: translateY(-50%) scale(.94);
	box-shadow: 0 12px 30px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.12);
	transition: opacity .18s ease, transform .18s ease, border-color .2s ease, background .2s ease, color .2s ease, box-shadow .2s ease;
}

.setmain-carousel__nav svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2.4;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.setmain-carousel:hover .setmain-carousel__nav,
.setmain-carousel:focus-within .setmain-carousel__nav {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(-50%) scale(1);
}

.setmain-carousel__nav:hover,
.setmain-carousel__nav:focus {
	border-color: rgba(53,224,209,.75);
	background: #0b2325;
	color: #7ff3e6;
	transform: translateY(-50%) scale(1.06);
	outline: none;
	box-shadow: 0 12px 30px rgba(0,0,0,.40), 0 0 20px rgba(53,224,209,.35), inset 0 1px 0 rgba(255,255,255,.12);
}

.setmain-carousel__nav--prev {
	left: 14px;
}

.setmain-carousel__nav--next {
	right: 14px;
}

.setmain-carousel__dots {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 10px;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
}

.setmain-carousel__dot {
	width: 7px;
	height: 7px;
	border: 0;
	border-radius: 999px;
	background: rgba(255,255,255,.42);
	cursor: pointer;
	transition: width .2s ease, background .2s ease;
}

.setmain-carousel__dot.is-active {
	width: 20px;
	background: var(--cyan);
}

.setmain-notice {
	width: min(1250px, calc(100vw - 44px));
	height: 40px;
	margin: 0 auto 18px;
	padding: 0 9px 0 8px;
	border: 1px solid rgba(53,224,209,.22);
	border-radius: 10px;
	background: linear-gradient(90deg, rgba(53,224,209,.11), rgba(255,255,255,.035) 42%, rgba(255,255,255,.02));
	box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 12px 28px rgba(0,0,0,.16);
	display: none;
	align-items: center;
	gap: 10px;
	overflow: hidden;
}

.setmain-notice.is-visible {
	display: flex;
}

.setmain-notice__icon {
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	color: #042a2c;
	background: linear-gradient(160deg, #6ef4ea, #2fd0c8);
	box-shadow: 0 0 0 0 rgba(53,224,209,.42);
	animation: setmainNoticePulse 2.8s ease-out infinite;
}

.setmain-notice__icon svg {
	width: 15px;
	height: 15px;
	display: block;
}

@keyframes setmainNoticePulse {
	0% { box-shadow: 0 0 0 0 rgba(53,224,209,.40); }
	65% { box-shadow: 0 0 0 7px rgba(53,224,209,0); }
	100% { box-shadow: 0 0 0 0 rgba(53,224,209,0); }
}

.setmain-notice__viewport {
	flex: 1 1 auto;
	min-width: 0;
	height: 100%;
	overflow: hidden;
	display: flex;
	align-items: center;
	-webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 30px), transparent);
	mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 30px), transparent);
}

.setmain-notice__viewport.is-fit {
	-webkit-mask-image: none;
	mask-image: none;
}

.setmain-notice__track {
	display: flex;
	align-items: center;
	height: 100%;
	will-change: transform;
}

.setmain-notice__track.is-running {
	animation: setmainNoticeScroll var(--notice-duration, 32s) linear infinite;
}

.setmain-notice__track.is-running:hover {
	animation-play-state: paused;
}

@keyframes setmainNoticeScroll {
	from { transform: translateX(0); }
	to { transform: translateX(var(--notice-shift, -100%)); }
}

.setmain-notice__group {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
}

.setmain-notice__item {
	position: relative;
	flex: 0 0 auto;
	padding: 0 21px 0 0;
	border: 0;
	color: rgba(224,236,247,.90);
	background: transparent;
	font-size: 12.5px;
	font-weight: 700;
	line-height: 20px;
	white-space: nowrap;
	cursor: pointer;
	transition: color .18s ease;
}

.setmain-notice__item::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 8px;
	width: 3px;
	height: 3px;
	margin-top: -1.5px;
	border-radius: 50%;
	background: rgba(53,224,209,.55);
}

.setmain-notice__item:hover,
.setmain-notice__item:focus-visible {
	color: #7ff6ec;
}

.setmain-notice__more {
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	display: grid;
	place-items: center;
	padding: 0;
	border: 1px solid rgba(53,224,209,.28);
	border-radius: 50%;
	color: rgba(53,224,209,.92);
	background: rgba(53,224,209,.09);
	cursor: pointer;
	transition: color .18s ease, background .18s ease, transform .18s ease;
}

.setmain-notice__more svg {
	width: 13px;
	height: 13px;
	display: block;
}

.setmain-notice__more:hover,
.setmain-notice__more:focus-visible {
	color: #042a2c;
	background: var(--cyan);
	transform: translateX(1px);
}

@media (prefers-reduced-motion: reduce) {
	.setmain-notice__icon { animation: none; }
	.setmain-notice__track.is-running { animation: none; }
	.setmain-notice__viewport {
		overflow-x: auto;
		-webkit-mask-image: none;
		mask-image: none;
	}
}

.setmain-notice-modal {
	position: fixed;
	inset: 0;
	z-index: 10061;
	display: none;
	place-items: center;
	padding: 24px;
	background: rgba(0,0,0,.66);
	backdrop-filter: blur(10px);
}

.setmain-notice-modal.is-open {
	display: grid;
}

.setmain-notice-modal__dialog {
	width: min(100%, 680px);
	max-height: min(680px, calc(100vh - 48px));
	display: grid;
	grid-template-rows: auto minmax(0, 1fr);
	overflow: hidden;
	border: 1px solid rgba(53,224,209,.34);
	border-radius: 8px;
	background: linear-gradient(145deg, rgba(255,255,255,.09), rgba(255,255,255,.03)), #08181d;
	box-shadow: 0 30px 86px rgba(0,0,0,.52);
}

.setmain-notice-modal__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 18px 20px;
	border-bottom: 1px solid rgba(255,255,255,.11);
}

.setmain-notice-modal__head strong {
	min-width: 0;
	color: #fff;
	font-size: 18px;
	overflow-wrap: anywhere;
}

.setmain-notice-modal__close {
	width: 34px;
	height: 34px;
	flex: 0 0 34px;
	border: 1px solid rgba(255,255,255,.16);
	border-radius: 8px;
	color: #fff;
	background: rgba(255,255,255,.06);
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
}

.setmain-notice-modal__body {
	min-height: 0;
	overflow: auto;
	padding: 20px;
	color: rgba(238,252,255,.82);
	font-size: 14px;
	line-height: 1.65;
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}

.setmain-promo-modal {
	position: fixed;
	inset: 0;
	z-index: 10060;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(3, 7, 13, .72);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
}

.setmain-promo-modal.is-open {
	display: flex;
}

body.setmain-promo-open {
	overflow: hidden;
}

.setmain-promo-dialog {
	position: relative;
	width: min(100%, 920px);
	overflow: hidden;
	border: 1px solid rgba(255,255,255,.14);
	border-radius: 14px;
	background: rgba(11, 16, 24, .94);
	box-shadow: 0 34px 90px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.08);
}

.setmain-promo-close {
	position: absolute;
	top: 14px;
	right: 14px;
	z-index: 2;
	width: 38px;
	height: 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(255,255,255,.20);
	border-radius: 50%;
	color: #fff;
	background: rgba(5, 8, 13, .58);
	font-size: 26px;
	line-height: 1;
	cursor: pointer;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.setmain-promo-close:hover,
.setmain-promo-close:focus {
	border-color: rgba(53,224,209,.58);
	background: rgba(6, 23, 27, .86);
	transform: translateY(-1px);
	outline: none;
}

.setmain-promo-image {
	position: relative;
	min-height: clamp(360px, 58vw, 560px);
	background:
		linear-gradient(90deg, rgba(8,11,16,.92) 0%, rgba(8,11,16,.62) 42%, rgba(8,11,16,.18) 100%),
		url("../image/lbt3.webp") center / cover no-repeat;
	isolation: isolate;
}

.setmain-promo-image::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	z-index: -1;
	height: 42%;
	background: linear-gradient(180deg, transparent, rgba(8,11,16,.84));
}

.setmain-promo-copy {
	position: absolute;
	left: clamp(20px, 5vw, 58px);
	bottom: clamp(24px, 5vw, 58px);
	width: min(440px, calc(100% - 40px));
}

.setmain-promo-kicker {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 0 10px;
	border: 1px solid rgba(22,199,132,.36);
	border-radius: 999px;
	color: #caffdf;
	background: rgba(22,199,132,.12);
	font-size: 12px;
	font-weight: 950;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.setmain-promo-copy h3 {
	margin: 14px 0 10px;
	color: #fff;
	font-size: clamp(34px, 6vw, 64px);
	line-height: 1.02;
	letter-spacing: 0;
}

.setmain-promo-copy p {
	max-width: 390px;
	margin: 0 0 22px;
	color: #b7c3d1;
	font-size: 15px;
	line-height: 1.6;
}

.setmain-promo-claim {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 154px;
	min-height: 48px;
	padding: 0 22px;
	border: 0;
	border-radius: 8px;
	color: #fff;
	background: linear-gradient(135deg, #16c784, var(--orange));
	box-shadow: 0 18px 44px rgba(22,199,132,.24), 0 10px 24px rgba(255,106,0,.18);
	font-size: 15px;
	font-weight: 950;
	cursor: pointer;
	transition: transform .18s ease, filter .18s ease;
}

.setmain-promo-claim:hover {
	filter: brightness(1.05);
	transform: translateY(-1px);
}

.setmain-promo-claim:focus-visible {
	outline: 3px solid rgba(22,199,132,.28);
	outline-offset: 3px;
}

.setmain-promo-claim:disabled {
	opacity: .68;
	cursor: wait;
	filter: saturate(.72);
	transform: none;
}

.choice-section::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background:
		linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
		linear-gradient(180deg, rgba(255,255,255,.03) 1px, transparent 1px);
	background-size: 64px 64px;
	opacity: .56;
	pointer-events: none;
}

.choice-section::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(90deg, rgba(9,11,16,.88) 0%, rgba(9,11,16,.22) 22%, rgba(9,11,16,.08) 50%, rgba(9,11,16,.22) 78%, rgba(9,11,16,.88) 100%),
		linear-gradient(180deg, rgba(9,11,16,.64) 0%, rgba(9,11,16,.06) 42%, rgba(9,11,16,.66) 100%);
	pointer-events: none;
}

.choice-map {
	position: absolute;
	inset: 34px 0 0;
	z-index: 1;
	width: 100%;
	height: calc(100% - 34px);
	display: block;
	object-fit: contain;
	object-position: center;
	pointer-events: none;
	opacity: .95;
}

.choice-section > .wrap {
	position: relative;
	z-index: 2;
	display: grid;
	gap: 58px;
}

.choice-grid {
	position: relative;
	z-index: 2;
	display: grid;
	gap: 48px;
	text-align: center;
}

.choice-copy {
	max-width: 760px;
	margin: 0 auto;
}

.choice-copy .section-head {
	display: block;
	margin: 0;
}

.choice-copy .kicker,
.choice-copy .section-note {
	display: none;
}

.choice-copy .section-title {
	margin: 0;
	color: #fff;
	font-size: 32px;
	line-height: 1.18;
	font-weight: 900;
	text-shadow: 0 18px 42px rgba(0,0,0,.36);
}

.choice-rank {
	display: contents;
}

.choice-rank span,
.choice-rank strong,
.choice-rank em {
	display: none;
}

.buy-steps {
	position: relative;
	z-index: 2;
	margin-bottom: 0;
	padding: 26px 30px 28px;
	border: 1px solid rgba(255,255,255,.14);
	border-radius: 10px;
	background:
		radial-gradient(circle at 14% 18%, rgba(53,224,209,.20), transparent 28%),
		radial-gradient(circle at 88% 72%, rgba(255,106,0,.18), transparent 30%),
		linear-gradient(180deg, rgba(5,13,18,.96), rgba(8,12,18,.92));
	box-shadow: 0 28px 86px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.08);
	overflow: hidden;
}

.buy-steps::before {
	content: "";
	position: absolute;
	inset: 10px;
	border: 1px solid rgba(53,224,209,.10);
	border-radius: 8px;
	pointer-events: none;
}

.buy-steps__head {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 24px;
	text-align: left;
}

.buy-steps__kicker {
	display: block;
	margin-bottom: 5px;
	color: var(--cyan);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.buy-steps__head h3 {
	margin: 0;
	color: #fff;
	font-size: clamp(22px, 2.5vw, 32px);
	line-height: 1.1;
	font-weight: 900;
	letter-spacing: 0;
	overflow-wrap: anywhere;
	text-wrap: balance;
}

.buy-steps__head p {
	max-width: 360px;
	margin: 0;
	color: #aeb9c8;
	font-size: 13px;
	font-weight: 700;
	text-align: right;
	overflow-wrap: anywhere;
}

.buy-steps__grid {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	padding-top: 38px;
}

.buy-steps__grid::before {
	content: "";
	position: absolute;
	left: 16.66%;
	right: 16.66%;
	top: 18px;
	height: 6px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--cyan), var(--lime), var(--orange));
	box-shadow: 0 0 20px rgba(53,224,209,.28), 0 0 24px rgba(255,106,0,.18);
	opacity: .95;
}

.buy-step {
	position: relative;
	min-width: 0;
	padding: 36px 18px 18px;
	border: 1px solid rgba(255,255,255,.12);
	border-radius: 8px;
	background:
		linear-gradient(180deg, rgba(255,255,255,.085), rgba(255,255,255,.035)),
		rgba(5,12,17,.72);
	text-align: center;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 18px 44px rgba(0,0,0,.22);
	overflow: visible;
}

.buy-step__num {
	position: absolute;
	left: 50%;
	top: -36px;
	width: 42px;
	height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background:
		linear-gradient(135deg, rgba(255,106,0,.95), rgba(53,224,209,.84)),
		#111722;
	color: #fff;
	font-size: 17px;
	font-weight: 900;
	transform: translateX(-50%);
	box-shadow: 0 0 0 4px rgba(255,255,255,.08), 0 8px 20px rgba(0,0,0,.28), 0 0 18px rgba(53,224,209,.20);
	z-index: 3;
}

.buy-step svg {
	width: 30px;
	height: 30px;
	margin-bottom: 10px;
	display: inline-block;
	color: var(--cyan);
	stroke: currentColor;
	stroke-width: 1.9;
	fill: none;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.buy-step:nth-child(2) svg {
	color: var(--lime);
}

.buy-step:nth-child(3) svg {
	color: var(--orange);
}

.buy-step h4 {
	margin: 0 0 8px;
	color: #fff;
	font-size: 17px;
	line-height: 1.2;
	font-weight: 900;
	overflow-wrap: anywhere;
}

.buy-step p {
	margin: 0;
	color: #dce8f5;
	font-size: 13px;
	line-height: 1.42;
	font-weight: 700;
	overflow-wrap: anywhere;
}

.choice-cards {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 26px;
	align-items: start;
}

.choice-card {
	position: relative;
	min-width: 0;
	padding: 0 4px;
}

.choice-card b {
	display: block;
	background: linear-gradient(90deg, var(--cyan), #fff 46%, var(--orange));
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	font-size: clamp(42px, 4.5vw, 62px);
	line-height: .95;
	font-weight: 900;
	letter-spacing: 0;
	white-space: nowrap;
}

.choice-card b small {
	font-size: .64em;
	font-weight: 900;
}

.choice-card strong {
	display: block;
	margin-top: 16px;
	color: #dce8f5;
	font-size: 16px;
	line-height: 1.35;
	font-weight: 800;
}

.choice-card span {
	display: none;
}

.choice-source {
	margin-top: 68px;
	color: rgba(220,232,245,.72);
	font-size: 12px;
	font-weight: 500;
}

.mobile-quick-access {
	display: none;
}

.quick-access-panel {
	position: relative;
	overflow: hidden;
}

.quick-access-panel::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 18% 0, rgba(53,224,209,.20), transparent 36%),
		radial-gradient(circle at 86% 8%, rgba(255,106,0,.17), transparent 32%);
	pointer-events: none;
}

.quick-access-title {
	position: relative;
	z-index: 1;
}

.quick-access-grid {
	position: relative;
	z-index: 1;
	display: grid;
}

.quick-access-item {
	min-width: 0;
	color: inherit;
	text-align: center;
}

.quick-access-item span:not(.quick-access-icon) {
	min-width: 0;
	max-width: 100%;
	overflow-wrap: anywhere;
}

.quick-access-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.quick-access-icon svg {
	width: 24px;
	height: 24px;
	stroke: currentColor;
	stroke-width: 1.9;
	fill: none;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.activity-board {
	display: grid;
	grid-template-columns: minmax(260px, .86fr) minmax(0, 1.14fr);
	gap: 14px;
}

.activity-feature,
.activity-card {
	position: relative;
	border: 1px solid rgba(255,255,255,.14);
	border-radius: 8px;
	background: rgba(255,255,255,.07);
	overflow: hidden;
}

.activity-feature {
	min-height: 292px;
	padding: 26px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	background:
		linear-gradient(145deg, rgba(53,224,209,.24), rgba(255,106,0,.16)),
		radial-gradient(circle at 78% 18%, rgba(255,255,255,.24), transparent 28%),
		rgba(255,255,255,.07);
	box-shadow: 0 24px 70px rgba(0,0,0,.25);
}

.activity-feature::before {
	content: "";
	position: absolute;
	inset: 18px 18px auto auto;
	width: 116px;
	height: 116px;
	border-radius: 50%;
	border: 1px solid rgba(255,255,255,.24);
	box-shadow: 0 0 0 22px rgba(255,255,255,.05), 0 0 46px rgba(53,224,209,.25);
}

.activity-status,
.activity-date {
	color: var(--cyan);
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
}

.activity-feature h3 {
	position: relative;
	max-width: 360px;
	margin-top: 18px;
	color: #fff;
	font-size: 32px;
	line-height: 1.08;
	letter-spacing: 0;
}

.activity-feature p {
	position: relative;
	max-width: 420px;
	margin-top: 12px;
	color: #d7e2ee;
	font-size: 14px;
}

.activity-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.activity-card {
	min-height: 139px;
	padding: 18px;
}

.activity-card::after {
	content: "";
	position: absolute;
	left: 18px;
	right: 18px;
	bottom: 0;
	height: 3px;
	border-radius: 999px 999px 0 0;
	background: linear-gradient(90deg, var(--cyan), var(--orange));
	opacity: .72;
}

.activity-card strong {
	display: block;
	margin-top: 12px;
	color: #fff;
	font-size: 18px;
	line-height: 1.2;
}

.activity-card p {
	margin-top: 8px;
	color: #aeb9c8;
	font-size: 13px;
}

.activity-tag {
	position: absolute;
	right: 16px;
	top: 16px;
	min-height: 24px;
	padding: 4px 9px;
	border-radius: 999px;
	background: rgba(255,255,255,.09);
	color: #fff;
	font-size: 11px;
	font-weight: 900;
}




@media (prefers-reduced-motion: reduce) {}

.buy-steps-section .setmain-carousel {
	left: 50% !important;
	width: min(1250px, calc(100vw - 44px)) !important;
	height: 240px !important;
	min-height: 240px !important;
	max-width: none !important;
	transform: translateX(-50%) !important;
}

.buy-steps-section .setmain-carousel__viewport,
.buy-steps-section .setmain-carousel__track,
.buy-steps-section .setmain-carousel__slide {
	height: 216px !important;
	min-height: 216px !important;
}

/* ================= Halloween product marquee (between carousel and recommendations) ================= */
.setmain-marquee {
	position: relative;
	width: 100%;
	margin: 0 auto 22px;
	padding: 15px 0 16px;
	border: 1px solid rgba(255, 148, 56, .34);
	border-radius: 12px;
	background:
		radial-gradient(circle at 6% 0, rgba(255, 138, 32, .17), transparent 34%),
		radial-gradient(circle at 94% 108%, rgba(124, 63, 208, .22), transparent 42%),
		linear-gradient(180deg, rgba(30, 15, 43, .96), rgba(11, 8, 20, .95));
	box-shadow: 0 22px 58px rgba(0, 0, 0, .34), inset 0 1px 0 rgba(255, 255, 255, .07);
	overflow: hidden;
	isolation: isolate;
}

/* Faint cobweb-ish corner glow + rim light */
.setmain-marquee::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	background:
		radial-gradient(circle at 100% 0, rgba(255, 122, 26, .16), transparent 26%),
		linear-gradient(90deg, rgba(255, 169, 77, .30), transparent 18%, transparent 82%, rgba(255, 169, 77, .30));
	-webkit-mask: linear-gradient(#000, #000) top / 100% 1px no-repeat;
	mask: linear-gradient(#000, #000) top / 100% 1px no-repeat;
}

.setmain-marquee__head {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 0 18px;
	margin-bottom: 13px;
}

.setmain-marquee__pumpkin {
	flex: 0 0 34px;
	width: 34px;
	height: 34px;
	display: grid;
	place-items: center;
	border: 1px solid rgba(255, 169, 77, .45);
	border-radius: 50%;
	background: radial-gradient(circle at 50% 32%, rgba(255, 176, 66, .40), rgba(255, 106, 0, .10));
	box-shadow: 0 0 18px rgba(255, 106, 0, .34), inset 0 1px 0 rgba(255, 255, 255, .18);
	font-size: 17px;
	line-height: 1;
	animation: setmainMarqueePulse 2.8s ease-in-out infinite;
}

@keyframes setmainMarqueePulse {
	0%, 100% { box-shadow: 0 0 14px rgba(255, 106, 0, .26), inset 0 1px 0 rgba(255, 255, 255, .18); }
	50% { box-shadow: 0 0 26px rgba(255, 122, 26, .58), inset 0 1px 0 rgba(255, 255, 255, .18); }
}

.setmain-marquee__heading { min-width: 0; }

.setmain-marquee__heading h2 {
	margin: 0;
	color: #fff3e0;
	font-size: 18px;
	font-weight: 850;
	line-height: 1.2;
	letter-spacing: .01em;
}

.setmain-marquee__heading p {
	margin: 3px 0 0;
	color: #b7a5c8;
	font-size: 11.5px;
	font-weight: 650;
	line-height: 1.35;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.setmain-marquee__tag {
	flex: 0 0 auto;
	margin-left: auto;
	padding: 4px 11px;
	border: 1px solid rgba(255, 169, 77, .48);
	border-radius: 999px;
	background: rgba(255, 106, 0, .15);
	color: #ffc98a;
	font-size: 9.5px;
	font-weight: 900;
	letter-spacing: .15em;
	text-transform: uppercase;
	white-space: nowrap;
}

.setmain-marquee__viewport {
	position: relative;
	z-index: 1;
	width: 100%;
	overflow: hidden;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 34px, #000 calc(100% - 34px), transparent);
	mask-image: linear-gradient(90deg, transparent, #000 34px, #000 calc(100% - 34px), transparent);
}

.setmain-marquee__track {
	display: flex;
	align-items: stretch;
	width: max-content;
	will-change: transform;
	animation: setmainMarqueeMove var(--marquee-duration, 96s) linear infinite;
}

.setmain-marquee__track.is-static {
	width: 100%;
	justify-content: center;
	animation: none;
}

.setmain-marquee__viewport:hover .setmain-marquee__track,
.setmain-marquee__viewport:focus-within .setmain-marquee__track {
	animation-play-state: paused;
}

@keyframes setmainMarqueeMove {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

.setmain-marquee__group {
	display: flex;
	flex: 0 0 auto;
	gap: 12px;
	padding-right: 12px;
}

/* Group is aria-hidden in the clone; hide it from a11y without affecting layout */
.setmain-marquee__card {
	position: relative;
	display: flex;
	flex-direction: column;
	flex: 0 0 auto;
	width: 152px;
	border: 1px solid rgba(255, 154, 57, .24);
	border-radius: 12px;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .015)),
		rgba(13, 9, 22, .92);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06), 0 8px 20px rgba(0, 0, 0, .26);
	overflow: hidden;
	text-decoration: none;
	transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.setmain-marquee__card:hover {
	border-color: rgba(255, 177, 77, .88);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .10), 0 14px 30px rgba(0, 0, 0, .48), 0 0 24px rgba(255, 106, 0, .26);
	transform: translateY(-4px);
}

.setmain-marquee__card.is-loading {
	opacity: .6;
	pointer-events: none;
}

.setmain-marquee__pic {
	position: relative;
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: #0f0a18;
}

.setmain-marquee__pic img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .35s ease, filter .35s ease;
}

.setmain-marquee__card:hover .setmain-marquee__pic img {
	transform: scale(1.06);
	filter: brightness(1.06);
}

.setmain-marquee__badge {
	position: absolute;
	left: 8px;
	top: 8px;
	padding: 2px 7px;
	border: 1px solid rgba(255, 169, 77, .5);
	border-radius: 999px;
	background: rgba(12, 9, 22, .74);
	color: #ffcf8a;
	font-size: 8.5px;
	font-style: normal;
	font-weight: 900;
	letter-spacing: .09em;
	text-transform: uppercase;
	text-shadow: 0 1px 3px rgba(0, 0, 0, .6);
}

.setmain-marquee__body {
	display: grid;
	gap: 6px;
	padding: 9px 10px 11px;
}

.setmain-marquee__name {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	min-height: 31px;
	overflow: hidden;
	color: #ebe1f5;
	font-size: 11.5px;
	font-weight: 650;
	line-height: 1.35;
	word-break: break-word;
}

.setmain-marquee__price {
	color: #ffb15e;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: .01em;
}

/* Loading shell */
.setmain-marquee__card.is-skeleton { pointer-events: none; }
.setmain-marquee__card.is-skeleton .setmain-marquee__pic,
.setmain-marquee__card.is-skeleton .setmain-marquee__name,
.setmain-marquee__card.is-skeleton .setmain-marquee__price {
	background: linear-gradient(90deg, rgba(255, 255, 255, .05) 25%, rgba(255, 255, 255, .11) 37%, rgba(255, 255, 255, .05) 63%) 0 0 / 400% 100%;
	animation: setmainMarqueeSkeleton 1.3s ease-in-out infinite;
	border-radius: 4px;
	color: transparent;
}
.setmain-marquee__card.is-skeleton .setmain-marquee__name { height: 12px; min-height: 0; }
.setmain-marquee__card.is-skeleton .setmain-marquee__price { height: 12px; width: 56%; }

@keyframes setmainMarqueeSkeleton {
	from { background-position: 100% 0; }
	to { background-position: 0 0; }
}

@media (prefers-reduced-motion: reduce) {
	.setmain-marquee__track { animation: none; }
	.setmain-marquee__viewport { overflow-x: auto; scrollbar-width: thin; }
	.setmain-marquee__pumpkin { animation: none; }
}

.setmain-recommendations {
	position: relative;
	width: min(1250px, calc(100vw - 44px));
	margin: 0 auto 18px;
	padding: 20px 24px 24px;
	border: 1px solid rgba(255,255,255,.14);
	border-radius: 10px;
	background:
		radial-gradient(circle at 14% 18%, rgba(53,224,209,.13), transparent 30%),
		radial-gradient(circle at 88% 72%, rgba(255,106,0,.11), transparent 32%),
		linear-gradient(180deg, rgba(5,13,18,.96), rgba(8,12,18,.92));
	box-shadow: 0 28px 86px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.08);
	opacity: 0;
	transform: translateY(14px);
	transition: opacity .45s ease, transform .45s ease;
}

.setmain-recommendations.is-visible {
	opacity: 1;
	transform: none;
}

.setmain-recommendations__intro h2 {
	margin: 0;
	color: #fff;
	font-size: 22px;
	line-height: 1.2;
	letter-spacing: .01em;
}

.setmain-recommendations__intro {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.setmain-recommendations__tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	max-height: 88px;
	margin: 12px 0 6px;
	padding: 8px;
	overflow: hidden;
	transition: max-height .28s ease;
}

.setmain-recommendations__tabs.is-expanded {
	max-height: none;
	overflow: auto;
	scrollbar-width: thin;
	scrollbar-color: rgba(53,224,209,.38) rgba(255,255,255,.04);
}

.setmain-recommendations__tabs-toggle {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 6px;
	margin: 0;
	padding: 5px 13px;
	border: 1px dashed rgba(53,224,209,.42);
	border-radius: 99px;
	background: rgba(53,224,209,.06);
	color: #56f1df;
	font: inherit;
	font-size: 12px;
	font-weight: 800;
	white-space: nowrap;
	cursor: pointer;
	transition: background .16s ease, border-color .16s ease;
}

.setmain-recommendations__tabs-toggle:hover { background: rgba(53,224,209,.14); border-color: rgba(53,224,209,.7); }

.setmain-recommendations__tabs-toggle svg {
	width: 12px;
	height: 12px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2.4;
	stroke-linecap: round;
	stroke-linejoin: round;
	transition: transform .2s ease;
}

.setmain-recommendations__tabs-toggle.is-expanded svg { transform: rotate(180deg); }

/* Dark themed page scrollbar for setmain */
html::-webkit-scrollbar,
body::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}

html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track {
	background: #0a0e15;
}

html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb {
	border: 2px solid #0a0e15;
	border-radius: 99px;
	background: rgba(255,255,255,.18);
}

html::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:hover {
	background: rgba(53,224,209,.55);
}

html {
	scrollbar-width: thin;
	scrollbar-color: rgba(255,255,255,.22) #0a0e15;
}

.setmain-recommendations__tab {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 32px;
	padding: 0 13px;
	border: 1px solid rgba(255,255,255,.12);
	border-radius: 10px;
	background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
	color: #c5cfdd;
	font: inherit;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
	transition: border-color .16s ease, background .16s ease, color .16s ease, transform .16s ease, box-shadow .16s ease;
}

.setmain-recommendations__tab:hover { border-color: rgba(53,224,209,.55); color: #fff; transform: translateY(-1px); }

.setmain-recommendations__tab.is-active {
	border-color: rgba(53,224,209,.75);
	background: linear-gradient(180deg, rgba(53,224,209,.22), rgba(53,224,209,.10));
	color: #56f1df;
	box-shadow: 0 0 14px rgba(53,224,209,.16), inset 0 1px 0 rgba(255,255,255,.12);
}

.setmain-recommendations__grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	grid-auto-flow: row;
	gap: 14px 16px;
	min-width: 0;
}

.setmain-recommendations__card {
	position: relative;
	display: block;
	min-width: 0;
	border: 1px solid rgba(255,255,255,.10);
	border-radius: 12px;
	background:
		linear-gradient(180deg, rgba(255,255,255,.09), rgba(255,255,255,.03)),
		rgba(6,12,18,.78);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 10px 24px rgba(0,0,0,.22);
	overflow: hidden;
	text-decoration: none;
	transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.setmain-recommendations__card:hover {
	border-color: rgba(53,224,209,.60);
	transform: translateY(-4px);
	box-shadow: 0 18px 38px rgba(0,0,0,.42), 0 0 18px rgba(53,224,209,.14);
}

.setmain-recommendations__card.is-loading { opacity: .6; pointer-events: none; }

.setmain-recommendations__image-wrap {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: #0b1018;
}

.setmain-recommendations__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .25s ease;
}

.setmain-recommendations__card:hover .setmain-recommendations__image { transform: scale(1.05); }

.setmain-recommendations__body {
	display: block;
	padding: 10px 12px 12px;
}

.setmain-recommendations__name {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	min-height: 2.6em;
	color: #e8eef6;
	font-size: 13px;
	font-weight: 650;
	line-height: 1.3;
}

.setmain-recommendations__price {
	display: block;
	margin-top: 7px;
	color: #56f1df;
	font-size: 16px;
	font-weight: 900;
	letter-spacing: .01em;
}

.setmain-recommendations__foot {
	margin-top: 18px;
	text-align: center;
}

.setmain-recommendations__more {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 180px;
	min-height: 42px;
	padding: 0 26px;
	border: 1px solid rgba(53,224,209,.55);
	border-radius: 99px;
	background: rgba(53,224,209,.10);
	color: #56f1df;
	font: inherit;
	font-size: 14px;
	font-weight: 800;
	cursor: pointer;
	transition: background .16s ease, color .16s ease, border-color .16s ease;
}

.setmain-recommendations__more:hover {
	border-color: #56f1df;
	background: rgba(53,224,209,.2);
	color: #fff;
}

.setmain-recommendations__grid.is-swap > .setmain-recommendations__card {
	animation: setmainRecFade .32s ease both;
}

@keyframes setmainRecFade {
	from { opacity: 0; transform: translateY(8px); }
	to { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
	.setmain-recommendations,
	.setmain-recommendations__image,
	.setmain-recommendations__card,
	.setmain-recommendations__grid.is-swap > .setmain-recommendations__card {
		transition: none !important;
		animation: none !important;
	}
}

/* ================= Halloween Lucky Draw (Halloween theme, fully rewritten) ================= */
/* Overlay shells */
.halloween-draw-modal,
.halloween-result-modal {
	position: fixed;
	inset: 0;
	z-index: 10150;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background:
		radial-gradient(circle at 50% -12%, rgba(255, 122, 26, .16), transparent 42%),
		radial-gradient(circle at 88% 92%, rgba(124, 63, 208, .22), transparent 46%),
		rgba(9, 5, 16, .86);
}

.halloween-draw-modal.is-open,
.halloween-result-modal.is-open {
	display: flex;
}

.halloween-result-modal { z-index: 10155; }

body.halloween-modal-open { overflow: hidden; }

.halloween-draw-dialog,
.halloween-result-dialog {
	transform: translateY(16px) scale(.97);
	opacity: 0;
	transition: opacity .28s ease, transform .28s ease;
}

/* Main draw dialog: frameless — only the circular wheel + a floating close button */

/* Chances pill (wheel hub restyles it further) */

/* Winning history modal */

/* Guest state: centered sign-in prompt instead of records */

/* Prize wheel */

/* Alternating prize-wheel wedges behind the slots */

/* Soft outer halo */

/* Rotating marquee bulbs around the rim */

@keyframes halloweenMarquee {
}

/* Sphere gloss: top light + bottom shade for a 3D bead look */

/* 0-value coupon = shipping coupon: 10KG + Shipping label; other coupons show $X + Coupon */

/* Gift badge overlaid on the product image (code 1 = physical gift) */

/* Cursor-following large product preview when hovering a gift slot */

/* Wheel hub: chances + draw button + history */

/* Slowly spinning halo behind the hub for depth */

@keyframes halloweenGlow {
}

/* Round "?" badge next to the chances number */

/* Event rules dialog */

/* Prize List modal: gift product cards + coupon image cards (image/coupon_*.png) */

/* Gifts: product-card style (image + name), like the storefront */

/* Coupons: compact vertical ticket, same 3-per-row grid as gift cards.
   Explicit heights everywhere: site-wide global styles can collapse
   content-driven heights (this bit us twice already). */


/* Floating pumpkin launcher */
/* Floating pumpkin launcher: cartoon jack-o'-lantern */
/* 初始位置：右下角，叠在"小电视按钮 + 音乐开关"上方；视频展开时(body.hv-card-open)自动上抬到卡片之上 */
.halloween-draw-mini {
	position: fixed;
	left: auto;
	right: 18px;
	bottom: 140px;
	z-index: 10250;
	display: none;
	width: 104px;
	height: 104px;
	border: 0;
	border-radius: 50%;
	background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANAAAACpCAMAAABtV0NPAAADAFBMVEWabF/j4NmZalnQnp4uJiTGnpiloZlwZGNlUlLDm5OXcGbenFpxVlIxKRuZjI+zjpBzYVushnpdKSQ+PimVkm/NxLdlPUW3mJLDYlHDqKCOdnKxcSubaJbm0tTlyWWLeoLywLobHBxmSTx/fz+iPiCrgWT//wDIjH7ekxz/f//hVii/z7+0tMMAfwC+gTG/fz/fs8NUP0R/AH9gPjlIPj4AAAAsCgBPFwIRBACLKQJzJAOVNAeyRQ6pOQVqGwE3EwbKVRL8yS792Ujyhg3+1DbveAvESgfPZTC3VS7+6Gz+41XGWipRIhTUdVHIaUmsSidQKCjxlQ/qaQv9/v5FDQD7uBXKeWvUhXP0uC3yhimjKwHTlZPUZRDpeCmWRS7+843MiYa6UxS2ZFA0JBMZEwuwWkdsNi5+fn7ypRZUNS78xRuOOiXuqCqFHABVVVX1yUnXpqzQdxf+8XdrRzC0dW34liqrqan+7Yf+9qwZFxaTVknlqaopJibVlzE/Pz/UdS7kl4rnucabQRf++8zSnKTNhibkinFRNBq/f39zWEwnJCOOZkxzVTjmXAlYVlXos7fppZm2k5B/AACtior32mWqVVVsZmZVAAA/AADot0hXRC5IRkSNVjfjg1mPdnFtWFYrKScaGBg5JyKOWE0mGxm1hHfiek7mbCNkKyOHaGZ2Mxh/Pz+zbGP94Tt2dHH/f3/olHrU1s+5Zxf//edzRkXNtrI2NTT/AADYgVxRNTIjHBuXko16ZmK0mJJpW1gzJSLVhBttR0RWVlZKRkbxxs1EPTs7MyWqdmpaRUnn5+tORUPBPQFyZVc4NDSlmJQsKSlQOza8mpTKxsbHrKePe3hRNzS9YTu0mI9JLS27lI+4pKduV1Y1IhxWSEV5VVIaGRlrSEm4uLjYoJeFSTjLra3EoZzQrq5/fwDcqDjItbnp2Ni1hHm2gnSyiHvSsblYOUSVamZUPEFMOTdILCW1k5K8k4pDHyKamJrxp0r/qqqVh4eahImock67p6fp6dOyqKV+MA4PAAABAHRSTlOaJePblKYaWJxnZf/R6eeyIWPiJRIY8Vv7NDH/GF3/7f9q7wT//wGR/wL/EBEC/wT+lAKkNQD+/v7+/v7+/v7+///////////+///+/v/+/v3//wT///7+/////f///v/9//7++f79A//8//7//wP//f///vr/B///z/3/jv8E///////8////BP6z/v//Mf7/+wL7/wMtAwT//Uv///9PdK/3y8z6///++v4E/v8rAv8U///2M24B/9GtGvtSNcv/qk00/k//spAQbv//URhXbXMUSy6R/y3Mkohn2fasl5AR/8mSd6YC/0oPhKXV+fjUrLKTqMr9Jf8DKf//8Qwm1Y7FtgAAMAVJREFUeNrVfQVgXOeV7oTLDNt2GR7zezN3Ls9IGrCGJI0yI2kkWQyWHNmW7MQUQw0x27HDjA1TkzbZpGnaFLbcLTO/bre03W67paXvnPP/d+4I7IDtTW5iCz1zv/ud8x28M5Ho6TjK0ei5573ksTN/ctYrXnkef3nKjkj09By/unXYn6x9p3Zn/OavnFJEpwfQR15y9WQ8PrlhdsPsnn1HflE+hYhOA6C/iR782of2X+3j2L1hw+SGo0df8pnouhc1Qz/3/RF/38eHR4Znr53Mzx2984/OOGWITj2g8ejlw3Ec/jCxNHttPj935+9eVcb3X7QMbYrL4e/ZH/f3XWvMzt35R686VX50OgDtjWtEs/v84duuze/f98T1kejdL3qGcOzfN7x7Xz5//Z49e95zaozudAAq/2UAyN+/35/d708eefiJJ86IXvZiVbkGRLv92bw/e2TPnp+Vx8sv2kxBIfLx5+rh/O547C+OTl7/lVNB0WkBNB4tr69zdLW/2/fHjtx859HHy+Mv2lzu6XjA0eTs7lnfn7zz5iNfOQXh9XQBChmdPzu524/5qyYnf1qO/ucXLaDXK0BAlN+fz/vDe476158Cik4boOhNgmh4hKJRf37Y/+kTk/988vOF0wXoyuinFEVI7PJ/8U+787Gjq9qOnvzoeroAIUWtA4pf+0+zw/HZVZP7Xh299EVrckq5fbK53W/bPRw3jtw5dtuDJ9vmTgmgcnl8/P777y+XG072VqFochjKcO1sPu5f/zv/trdE3/ACBzR+ccOXl12Bvy69YN26C8qSdPvXEqDZa6/2Y/uO+P/00uglL2RA41cKQw+uO/eRR/71wUaGzhZAd1H+k390vx+frQ1viLz74hcWoPHL/uzuu69gz770MnwoX/7Vb7ziFQ9v2Dc3N3fb0Z+cdU7kfbecec73v/fmT5ZfwYBiu7l+HZv0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") center / contain no-repeat;
	filter: drop-shadow(0 12px 22px rgba(0, 0, 0, .45)) drop-shadow(0 0 16px rgba(255, 122, 26, .35));
	cursor: pointer;
	touch-action: none;
	transition: transform .18s ease, filter .18s ease;
	animation: halloweenMiniBob 3.4s ease-in-out infinite;
}

.halloween-draw-mini.is-visible { display: block; }

/* 首页视频卡展开时：南瓜初始位再往上抬到卡片上方（与音乐开关保持同间距） */
body.hv-card-open .halloween-draw-mini { bottom: 276px; }
@media (max-width: 1100px) {
	body.hv-card-open .halloween-draw-mini { bottom: 258px; }
}
@media (max-width: 820px) {
	.halloween-draw-mini { right: 12px; bottom: 128px; }
	body.hv-card-open .halloween-draw-mini { bottom: 230px; }
}

.halloween-draw-mini.is-dragging {
	animation: none;
	transition: none;
	cursor: grabbing;
	transform: scale(1.14);
	filter: drop-shadow(0 22px 34px rgba(0, 0, 0, .55)) drop-shadow(0 0 30px rgba(255, 150, 40, .55));
}

.halloween-draw-mini::after {
	content: "LUCKY DRAW";
	position: absolute;
	left: 50%;
	bottom: -6px;
	padding: 4px 10px;
	border: 1px solid rgba(255, 189, 112, .55);
	border-radius: 99px;
	background: #23122c;
	color: #fff0cb;
	font-size: 9px;
	font-weight: 900;
	letter-spacing: .08em;
	transform: translateX(-50%);
	white-space: nowrap;
	box-shadow: 0 6px 14px rgba(0, 0, 0, .4);
}

.halloween-draw-mini:hover {
	transform: scale(1.09) rotate(-4deg);
	filter: drop-shadow(0 16px 26px rgba(0, 0, 0, .5)) drop-shadow(0 0 26px rgba(255, 150, 40, .6));
	animation-play-state: paused;
}

@keyframes halloweenMiniBob {
	0%, 100% { transform: translateY(0) rotate(-2deg); }
	50% { transform: translateY(-8px) rotate(2deg); }
}

.halloween-result-dialog {
	transform: translateY(16px) scale(.97);
	opacity: 0;
	transition: opacity .28s ease, transform .28s ease;
}

.halloween-draw-modal.is-open .halloween-draw-dialog,
.halloween-result-modal.is-open .halloween-result-dialog {
	transform: none;
	opacity: 1;
}

/* Main draw dialog: frameless — only the circular wheel + a floating close button */
.halloween-draw-dialog {
	position: relative;
	width: min(94vw, 566px);
	border: 0;
	padding: 0;
	background: none;
	box-shadow: none;
}

.halloween-draw-close {
	position: absolute;
	top: -13px;
	right: -5px;
	z-index: 6;
	width: 38px;
	height: 38px;
	display: grid;
	place-items: center;
	border: 1px solid rgba(255, 177, 94, .55);
	border-radius: 50%;
	background: rgba(30, 17, 46, .94);
	color: #ffd98a;
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
	box-shadow: 0 6px 16px rgba(0, 0, 0, .45);
	transition: background .16s ease, border-color .16s ease, transform .16s ease;
}

.halloween-draw-close:hover { background: rgba(255, 122, 26, .30); border-color: #ffb15e; color: #fff; transform: scale(1.06); }

/* Chances pill (wheel hub restyles it further) */
.halloween-draw-chances {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 9px 18px;
	border: 1px solid rgba(255, 169, 77, .38);
	border-radius: 999px;
	background: rgba(255, 122, 26, .08);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
}

.halloween-draw-chances::before { content: "\1F36D"; font-size: 18px; line-height: 1; }

.halloween-draw-chances span { color: #cbb9dd; font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }

.halloween-draw-chances strong { min-width: 2ch; color: #ffc15d; font-size: 22px; font-weight: 900; text-align: center; }

.halloween-history-toggle {
	padding: 9px 16px;
	border: 1px solid rgba(255, 190, 112, .40);
	border-radius: 999px;
	background: rgba(255, 255, 255, .05);
	color: #ffd18c;
	font-size: 12px;
	font-weight: 900;
	cursor: pointer;
	white-space: nowrap;
	transition: background .16s ease, border-color .16s ease;
}

.halloween-history-toggle:hover { background: rgba(255, 122, 26, .14); border-color: #ffb15e; }

/* Winning history modal */
.halloween-history-panel { display: none; }

.halloween-history-panel.is-open {
	position: fixed;
	inset: 0;
	z-index: 10160;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(9, 5, 16, .82);
}

.halloween-history-card {
	width: min(100%, 430px);
	max-height: min(560px, 78vh);
	display: flex;
	flex-direction: column;
	border: 1px solid rgba(255, 160, 66, .40);
	border-radius: 18px;
	background: linear-gradient(180deg, #2a1840, #170d26);
	box-shadow: 0 30px 80px rgba(0, 0, 0, .65), 0 0 30px rgba(255, 106, 0, .12);
	overflow: hidden;
}

.halloween-history-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 15px 18px;
	border-bottom: 1px solid rgba(255, 160, 66, .22);
	background: rgba(255, 122, 26, .08);
	color: #ffca82;
	font-size: 14px;
	font-weight: 900;
	letter-spacing: .04em;
}

.halloween-history-close {
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	display: grid;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 50%;
	background: rgba(255, 255, 255, .06);
	color: #fff;
	font-size: 14px;
	line-height: 1;
	cursor: pointer;
	transition: background .16s ease, border-color .16s ease;
}

.halloween-history-close:hover { background: rgba(255, 122, 26, .25); border-color: #ffb15e; }

.halloween-history-list {
	flex: 1;
	display: grid;
	gap: 8px;
	align-content: start;
	padding: 14px 16px 16px;
	overflow: auto;
	scrollbar-width: thin;
}

/* Guest state: centered sign-in prompt instead of records */
.halloween-history-guest {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	padding: 34px 10px 26px;
	text-align: center;
}
.halloween-history-guest__icon { font-size: 30px; line-height: 1; opacity: .9; }
.halloween-history-guest p { margin: 0; color: #b3a6c6; font-size: 12.5px; line-height: 1.5; }
.halloween-history-signin {
	display: inline-block;
	padding: 10px 38px;
	border-radius: 999px;
	background: linear-gradient(180deg, #ffc15d, #f26b14);
	color: #2a1204;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .06em;
	text-decoration: none;
	box-shadow: 0 8px 20px rgba(242, 107, 20, .40), inset 0 1px 0 rgba(255, 255, 255, .5);
	transition: transform .16s ease, filter .16s ease, box-shadow .16s ease;
}
.halloween-history-signin:hover { transform: translateY(-2px); filter: brightness(1.06); box-shadow: 0 12px 26px rgba(242, 107, 20, .55), inset 0 1px 0 rgba(255, 255, 255, .5); }

.halloween-history-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 12px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 14px;
	background: linear-gradient(180deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .02));
	transition: border-color .16s ease, transform .16s ease, box-shadow .16s ease;
}

.halloween-history-item:hover {
	border-color: rgba(255, 177, 77, .55);
	transform: translateX(2px);
	box-shadow: 0 6px 16px rgba(0, 0, 0, .3);
}

.halloween-history-item__pic {
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	object-fit: cover;
	border: 2px solid rgba(255, 203, 126, .45);
	border-radius: 50%;
	background: #0f0a18;
	box-shadow: 0 4px 12px rgba(0, 0, 0, .35);
}

.halloween-history-item strong { min-width: 0; overflow: hidden; color: #f8edff; font-size: 13px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }

/* Prize wheel */
.halloween-wheel {
	position: relative;
	width: min(100%, 540px);
	aspect-ratio: 1 / 1;
	margin: 0 auto;
	--wheel-r: 210px;
	--wheel-slot: 66px;
}

.halloween-wheel__ring {
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background:
		radial-gradient(circle at 50% 26%, rgba(124, 63, 208, .22), transparent 56%),
		radial-gradient(circle, rgba(70, 32, 96, .32), rgba(12, 9, 22, .90) 74%);
	box-shadow:
		inset 0 0 0 1px rgba(255, 255, 255, .04),
		inset 0 18px 46px rgba(0, 0, 0, .40),
		0 0 0 7px #170d26,
		0 0 0 9px rgba(255, 169, 77, .55),
		0 0 0 11px rgba(124, 63, 208, .35),
		0 26px 60px rgba(0, 0, 0, .55);
}

/* Alternating prize-wheel wedges behind the slots */
.halloween-wheel__ring::before {
	content: "";
	position: absolute;
	inset: 6px;
	border-radius: 50%;
	background: repeating-conic-gradient(from -90deg,
		rgba(255, 140, 40, .10) 0deg 15deg,
		rgba(124, 63, 208, .13) 15deg 30deg);
	box-shadow: inset 0 0 40px rgba(0, 0, 0, .45);
}

/* Soft outer halo */
.halloween-wheel::before,
.halloween-wheel::after {
	content: "";
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
}

.halloween-wheel::before {
	inset: -34px;
	background: radial-gradient(circle, transparent 56%, rgba(124, 63, 208, .20) 70%, transparent 82%);
	filter: blur(8px);
}

/* Rotating marquee bulbs around the rim */
.halloween-wheel::after {
	inset: -18px;
	opacity: .9;
	background: repeating-conic-gradient(from 0deg,
		#ffcf7d 0deg 4deg,
		rgba(255, 154, 57, .10) 4deg 16deg);
	-webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 9px), #000 calc(100% - 8px));
	mask: radial-gradient(farthest-side, transparent calc(100% - 9px), #000 calc(100% - 8px));
	animation: halloweenMarquee 26s linear infinite;
}

@keyframes halloweenMarquee {
	to { transform: rotate(360deg); }
}

.halloween-wheel__pointer {
	position: absolute;
	top: -16px;
	left: 50%;
	z-index: 5;
	width: 34px;
	height: 24px;
	transform: translateX(-50%);
	background: linear-gradient(180deg, #ffc15d, #f26b14);
	clip-path: polygon(50% 100%, 0 0, 100% 0);
	filter: drop-shadow(0 3px 8px rgba(0, 0, 0, .5));
}

.halloween-wheel-slot {
	position: absolute;
	top: 50%;
	left: 50%;
	width: var(--wheel-slot, 64px);
	height: var(--wheel-slot, 64px);
	margin: calc(var(--wheel-slot, 64px) / -2) 0 0 calc(var(--wheel-slot, 64px) / -2);
	overflow: hidden;
	display: grid;
	place-items: center;
	border: 2px solid rgba(255, 169, 77, .42);
	border-radius: 50%;
	background: linear-gradient(180deg, #2b1e44, #1a1229);
	box-shadow:
		0 7px 16px rgba(0, 0, 0, .52),
		0 0 0 3px rgba(12, 9, 22, .60),
		inset 0 1px 0 rgba(255, 255, 255, .10);
	transform: rotate(var(--a)) translateY(calc(var(--wheel-r) * -1)) rotate(calc(var(--a) * -1)) rotate(calc(var(--spin, 0deg) * -1));
	transition: border-color .14s ease, box-shadow .14s ease;
	cursor: default;
}

/* Sphere gloss: top light + bottom shade for a 3D bead look */
.halloween-wheel-slot::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 50%;
	box-shadow:
		inset 0 2px 3px rgba(255, 255, 255, .30),
		inset 0 -8px 12px rgba(0, 0, 0, .48);
	pointer-events: none;
}

.halloween-wheel-slot img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

/* Badge shared by gift and coupon slots (both render an image now) */
.halloween-wheel-slot--gift .halloween-wheel-slot__gift,
.halloween-wheel-slot--coupon .halloween-wheel-slot__gift {
	font-style: normal;
	color: #ffd98a;
	font-size: 8px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
	text-shadow: 0 1px 3px rgba(0, 0, 0, .5);
}

/* Gift/Coupon badge overlaid on the slot image (code 0 = coupon, code 1 = physical gift) */
.halloween-wheel-slot--gift .halloween-wheel-slot__gift,
.halloween-wheel-slot--coupon .halloween-wheel-slot__gift {
	position: absolute;
	left: 50%;
	bottom: 3px;
	transform: translateX(-50%);
	max-width: 92%;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	padding: 1px 6px;
	border-radius: 999px;
	background: rgba(12, 9, 22, .72);
	box-shadow: 0 1px 4px rgba(0, 0, 0, .4);
}

.halloween-wheel-slot:hover { border-color: rgba(255, 205, 120, .8); filter: brightness(1.12); }

/* Cursor-following large product preview when hovering a gift slot */
.halloween-hover-preview {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10250;
	width: 200px;
	height: 200px;
	object-fit: cover;
	pointer-events: none;
	opacity: 0;
	border: 2px solid rgba(255, 169, 77, .65);
	border-radius: 12px;
	background: #140d22;
	box-shadow: 0 18px 44px rgba(0, 0, 0, .55), 0 0 26px rgba(255, 106, 0, .18);
	transform: scale(.92);
	transition: opacity .14s ease, transform .14s ease;
}

.halloween-hover-preview.is-visible { opacity: 1; transform: scale(1); }

.halloween-wheel-slot.is-active {
	border-color: #ffd08a;
	box-shadow:
		0 0 0 3px rgba(255, 126, 42, .55),
		0 0 30px rgba(255, 106, 0, .65),
		0 0 0 6px rgba(12, 9, 22, .60),
		inset 0 2px 3px rgba(255, 255, 255, .30),
		inset 0 -8px 12px rgba(0, 0, 0, .48);
	z-index: 2;
}

/* Wheel hub: chances + draw button + history */
.halloween-wheel__hub {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 4;
	width: 244px;
	transform: translate(-50%, -50%);
	display: grid;
	justify-items: center;
	gap: 10px;
	padding: 18px 16px;
	border: 1px solid rgba(255, 169, 77, .55);
	border-radius: 50%;
	background:
		radial-gradient(circle at 50% 18%, rgba(255, 122, 26, .20), transparent 60%),
		radial-gradient(circle at 50% 50%, #35204f 0%, #1c1030 72%, #150b26 100%);
	box-shadow:
		0 22px 48px rgba(0, 0, 0, .62),
		0 0 0 5px rgba(23, 13, 38, .92),
		0 0 0 7px rgba(255, 169, 77, .40),
		inset 0 1px 0 rgba(255, 255, 255, .10),
		inset 0 -14px 26px rgba(0, 0, 0, .45);
	text-align: center;
}

/* Slowly spinning halo behind the hub for depth */
.halloween-wheel__hub::before {
	content: "";
	position: absolute;
	inset: -10px;
	z-index: -1;
	border-radius: 50%;
	background: conic-gradient(from 0deg,
		rgba(255, 154, 57, .75),
		rgba(124, 63, 208, .70),
		rgba(53, 224, 209, .60),
		rgba(255, 154, 57, .75));
	opacity: .45;
	filter: blur(9px);
	animation: halloweenMarquee 10s linear infinite;
}

.halloween-wheel__hub .halloween-draw-chances {
	flex-direction: column;
	gap: 2px;
	padding: 0;
	border: 0;
	background: none;
	box-shadow: none;
}

.halloween-wheel__hub .halloween-draw-chances::before { content: none; }

.halloween-wheel__hub .halloween-draw-chances span { color: #cbb9dd; font-size: 9px; letter-spacing: .12em; }

.halloween-wheel__hub .halloween-draw-chances strong {
	min-width: 0;
	color: #ffc15d;
	font-size: 30px;
	line-height: 1;
	text-shadow: 0 0 16px rgba(255, 193, 93, .50), 0 2px 4px rgba(0, 0, 0, .55);
}

.halloween-wheel__hub .halloween-draw-button {
	width: 52%;
	min-width: 0;
	height: 46px;
	padding: 0 10px;
	font-size: 15px;
	letter-spacing: .12em;
	animation: none;
}

.halloween-wheel__hub .halloween-draw-button::before { content: none; }

.halloween-wheel__hub .halloween-history-toggle { padding: 5px 13px; font-size: 10px; }

.halloween-draw-button {
	min-width: 250px;
	height: 60px;
	padding: 0 34px;
	border: 1px solid #ffd08a;
	border-radius: 999px;
	background: linear-gradient(180deg, #ffab3d, #f26b14);
	color: #26120a;
	font-size: 17px;
	font-weight: 900;
	letter-spacing: .04em;
	cursor: pointer;
	box-shadow: 0 14px 30px rgba(255, 95, 9, .30), inset 0 1px 0 rgba(255, 255, 255, .35);
	transition: filter .16s ease, transform .16s ease;
}

.halloween-draw-button::before { content: "\1F383"; margin-right: 10px; font-size: 22px; }

.halloween-draw-button:hover:not(:disabled) { filter: brightness(1.07); transform: translateY(-1px); }

.halloween-draw-button:disabled { opacity: .55; cursor: not-allowed; box-shadow: none; }

.halloween-draw-button:not(:disabled) { animation: halloweenGlow 2.4s ease-in-out infinite; }

@keyframes halloweenGlow {
	0%, 100% { box-shadow: 0 14px 30px rgba(255, 95, 9, .28), inset 0 1px 0 rgba(255, 255, 255, .35); }
	50% { box-shadow: 0 14px 40px rgba(255, 95, 9, .50), inset 0 1px 0 rgba(255, 255, 255, .35); }
}

.halloween-draw-status { margin: 2px 0 4px; color: #a99eb3; font-size: 12px; letter-spacing: .02em; text-align: center; }

.halloween-draw-status a { color: #ffab3d; text-decoration: underline; text-underline-offset: 2px; }
.halloween-draw-status a:hover { color: #ffd98a; }

.halloween-draw-status.is-error { color: #ff9d7a; }

.halloween-draw-status.is-success { color: #5ff0c8; }

/* Round "?" badge next to the chances number */
.halloween-chance-row { display: flex; align-items: center; justify-content: center; gap: 8px; }
.halloween-rules-fab {
	width: 20px;
	height: 20px;
	display: grid;
	place-items: center;
	padding: 0;
	border: 1px solid rgba(255, 193, 93, .65);
	border-radius: 50%;
	background: rgba(255, 154, 57, .16);
	color: #ffd98a;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	cursor: pointer;
	transition: transform .16s ease, background .16s ease, box-shadow .16s ease;
}
.halloween-rules-fab:hover { transform: scale(1.12); background: rgba(255, 122, 26, .32); box-shadow: 0 0 12px rgba(255, 154, 57, .5); }

/* Event rules dialog */
.halloween-rules-modal {
	position: fixed;
	inset: 0;
	z-index: 10160;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background:
		radial-gradient(circle at 50% -12%, rgba(255, 122, 26, .14), transparent 42%),
		rgba(9, 5, 16, .88);
}
.halloween-rules-modal.is-open { display: flex; }

.halloween-rules-dialog {
	position: relative;
	width: min(92vw, 470px);
	max-height: 90vh;
	overflow: auto;
	padding: 30px 34px 26px;
	border: 1px solid rgba(255, 148, 53, .45);
	border-radius: 22px;
	background:
		radial-gradient(circle at 12% -6%, rgba(255, 122, 26, .16), transparent 34%),
		radial-gradient(circle at 90% 108%, rgba(124, 63, 208, .26), transparent 40%),
		linear-gradient(180deg, #261639, #140b22);
	box-shadow: 0 34px 90px rgba(0, 0, 0, .66), 0 0 40px rgba(255, 106, 0, .14), inset 0 1px 0 rgba(255, 255, 255, .06);
	transform: translateY(16px) scale(.97);
	opacity: 0;
	transition: opacity .26s ease, transform .26s ease;
	scrollbar-width: thin;
}
.halloween-rules-modal.is-open .halloween-rules-dialog { transform: none; opacity: 1; }

.halloween-rules-dialog .halloween-rules-close { top: 14px; right: 14px; }

.halloween-rules-kicker {
	display: inline-block;
	padding: 5px 15px;
	border: 1px solid rgba(255, 169, 77, .45);
	border-radius: 999px;
	background: rgba(255, 122, 26, .12);
	color: #ffb15e;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.halloween-rules-title {
	margin: 12px 0 2px;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 34px;
	font-weight: 900;
	line-height: 1.05;
	letter-spacing: .06em;
	background: linear-gradient(180deg, #ffe9c7 12%, #ffb15e 58%, #ff7a1a);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	text-shadow: 0 10px 26px rgba(255, 122, 26, .25);
}

.halloween-rules-sub {
	margin: 0 0 16px;
	color: #a996c2;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .26em;
	text-transform: uppercase;
}

.halloween-rules-list {
	display: flex;
	flex-direction: column;
	gap: 9px;
	margin: 0 0 18px;
	padding: 14px 16px;
	list-style: none;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 16px;
	background: rgba(255, 255, 255, .035);
}
.halloween-rules-list li { display: flex; align-items: flex-start; gap: 11px; }
.halloween-rules-list i {
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	display: grid;
	place-items: center;
	margin-top: 1px;
	border-radius: 50%;
	background: linear-gradient(180deg, #ffc15d, #f26b14);
	color: #2a1204;
	font-size: 11px;
	font-style: normal;
	font-weight: 900;
	box-shadow: 0 3px 8px rgba(242, 107, 20, .35), inset 0 1px 0 rgba(255, 255, 255, .45);
}
.halloween-rules-list p { margin: 0; color: #cfc3de; font-size: 12.5px; line-height: 1.5; }
.halloween-rules-list strong { color: #ffd98a; font-weight: 800; }

.halloween-rules-ok {
	display: block;
	width: 100%;
	height: 46px;
	border: 1px solid #ffd08a;
	border-radius: 999px;
	background: linear-gradient(180deg, #ffab3d, #f26b14);
	color: #26120a;
	font-size: 15px;
	font-weight: 900;
	letter-spacing: .08em;
	cursor: pointer;
	box-shadow: 0 12px 28px rgba(255, 95, 9, .32), inset 0 1px 0 rgba(255, 255, 255, .35);
	transition: filter .16s ease, transform .16s ease;
}
.halloween-rules-ok:hover { filter: brightness(1.07); transform: translateY(-1px); }

/* Prize List modal: gift product cards + coupon image cards (image/coupon_*.png) */
.halloween-prizelist-modal {
	position: fixed;
	inset: 0;
	z-index: 10165;
	display: grid;
	place-items: center;
	padding: 24px 16px;
	background: rgba(8, 5, 16, .78);
	opacity: 0;
	visibility: hidden;
	transition: opacity .18s ease, visibility .18s ease;
}

.halloween-prizelist-modal.is-open { opacity: 1; visibility: visible; }

.halloween-prizelist-dialog {
	position: relative;
	width: min(94vw, 640px);
	max-height: min(86vh, 760px);
	display: flex;
	flex-direction: column;
	padding: 26px 26px 22px;
	border: 1px solid rgba(255, 148, 53, .45);
	border-radius: 18px;
	background:
		radial-gradient(circle at 12% -6%, rgba(255, 122, 26, .14), transparent 34%),
		radial-gradient(circle at 90% 108%, rgba(124, 63, 208, .20), transparent 40%),
		linear-gradient(180deg, #241536, #150c24);
	box-shadow: 0 34px 90px rgba(0, 0, 0, .66), inset 0 1px 0 rgba(255, 255, 255, .06);
}

.halloween-prizelist-dialog .halloween-draw-close {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 32px;
	height: 32px;
	font-size: 16px;
}

.halloween-prizelist-title {
	margin: 10px 0 2px;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 30px;
	font-weight: 900;
	text-align: center;
	color: #ffe9c7;
	text-shadow: 0 2px 0 rgba(96, 42, 10, .55);
}

.halloween-prizelist-sub { margin: 0 0 14px; color: #b3a6c6; font-size: 12px; text-align: center; }

.halloween-prizelist-body {
	flex: 1;
	overflow: auto;
	scrollbar-width: thin;
	display: grid;
	gap: 12px;
	align-content: start;
	padding-right: 4px;
}

.halloween-prizelist-empty { padding: 34px 0; color: #a99eb3; font-size: 13px; text-align: center; }

/* Gifts: product-card style (image + name), like the storefront */
.halloween-prizelist-body { grid-template-columns: repeat(3, 1fr); }

.halloween-prize-card {
	display: grid;
	gap: 8px;
	padding: 10px 10px 12px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 12px;
	background: linear-gradient(180deg, #ffffff, #f4f0fa);
	box-shadow: 0 6px 16px rgba(0, 0, 0, .30);
	justify-items: center;
	text-align: center;
	position: relative;
	transition: transform .16s ease, box-shadow .16s ease;
}

.halloween-prize-card:hover { transform: translateY(-3px); box-shadow: 0 12px 24px rgba(0, 0, 0, .42); }

.halloween-prize-card img {
	width: 100%;
	aspect-ratio: 1;
	object-fit: contain;
	border-radius: 8px;
	background: #fff;
}

.halloween-prize-card strong {
	color: #241a33;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.35;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.halloween-prize-card em {
	position: absolute;
	top: 8px;
	right: 8px;
	font-style: normal;
	padding: 2px 8px;
	border-radius: 999px;
	background: rgba(36, 20, 56, .85);
	color: #ffd98a;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}



/* Result dialog */
.halloween-result-dialog {
	position: relative;
	width: min(92vw, 430px);
	padding: 38px 32px 30px;
	border: 1px solid rgba(255, 148, 53, .50);
	border-radius: 18px;
	background:
		radial-gradient(circle at 16% 0, rgba(129, 69, 170, .42), transparent 32%),
		radial-gradient(circle at 88% 100%, rgba(255, 106, 0, .16), transparent 36%),
		linear-gradient(180deg, #2b1850, #190e2c);
	box-shadow: 0 30px 80px rgba(0, 0, 0, .70), 0 0 36px rgba(255, 106, 0, .18);
	text-align: center;
}

.halloween-result-dialog::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 5px;
	border-radius: 18px 18px 0 0;
	background: linear-gradient(90deg, #ff6a00, #ffc15d, #7d3fa0, #35e0d1);
}

.halloween-result-dialog h3 {
	margin: 0 0 6px;
	color: #ffd18c;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 28px;
	letter-spacing: .01em;
	text-shadow: 0 2px 0 rgba(96, 42, 10, .45), 0 10px 24px rgba(0, 0, 0, .45);
}

.halloween-result-image {
	display: block;
	width: min(220px, 62%);
	aspect-ratio: 1 / 1;
	object-fit: contain;
	margin: 0 auto 14px;
	padding: 6px;
	border: 1px solid rgba(255, 169, 77, .40);
	border-radius: 14px;
	background: rgba(255, 255, 255, .05);
}

.halloween-result-copy { margin: 0 0 20px; color: #cfc3da; font-size: 13px; line-height: 1.6; }

.halloween-result-actions { display: flex; justify-content: center; gap: 10px; }

.halloween-result-claim {
	min-width: 180px;
	height: 48px;
	padding: 0 30px;
	border: 1px solid #ffd08a;
	border-radius: 999px;
	background: linear-gradient(180deg, #ffab3d, #f26b14);
	color: #21100a;
	font-size: 14px;
	font-weight: 900;
	letter-spacing: .02em;
	cursor: pointer;
	box-shadow: 0 10px 22px rgba(255, 95, 9, .26), inset 0 1px 0 rgba(255, 255, 255, .34);
	transition: filter .16s ease, transform .16s ease;
}

.halloween-result-claim:hover { filter: brightness(1.08); transform: translateY(-1px); }

.halloween-result-close {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 32px;
	height: 32px;
	display: grid;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 50%;
	background: rgba(255, 255, 255, .07);
	color: #fff;
	font-size: 17px;
	line-height: 1;
	cursor: pointer;
}

.halloween-result-close:hover { background: rgba(255, 122, 26, .25); border-color: #ffb15e; }

/* Win confetti */
.halloween-confetti {
	position: absolute;
	top: -14px;
	z-index: 5;
	width: 9px;
	height: 14px;
	border-radius: 2px;
	pointer-events: none;
	animation: halloweenConfettiFall linear both;
}

@keyframes halloweenConfettiFall {
	0% { opacity: 1; transform: translate(0, -10px) rotate(0deg); }
	100% { opacity: 0; transform: translate(var(--dx, 40px), 480px) rotate(var(--rot, 540deg)); }
}


@media (prefers-reduced-motion: reduce) {
	.halloween-draw-dialog,
	.halloween-result-dialog,
	.halloween-wheel-slot,
	.halloween-draw-button,
	.halloween-draw-mini,
	.halloween-confetti {
		transition: none !important;
		animation: none !important;
	}

	.halloween-wheel::after,
	.halloween-wheel__hub::before {
		animation: none !important;
	}

	.halloween-wheel__ring { transition: none !important; }
}

/* Keep recommendation cards stable even when page zoom or shared grid rules change. */
@media (min-width: 961px) {
	.setmain-recommendations__grid {
		display: grid !important;
		grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
		grid-auto-flow: row;
		gap: 14px 16px !important;
	}
}

.setmain-recommendations__card {
	min-width: 0 !important;
	max-width: none !important;
}

.setmain-recommendations__image-wrap {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 1 / 1 !important;
	overflow: hidden !important;
}

.setmain-recommendations__image {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	object-fit: cover !important;
}


/* Scroll performance: skip render work for below-fold sections until near viewport */
.buy-steps-section,
.motion-section {
	content-visibility: auto;
	contain-intrinsic-size: auto 1100px;
}

/* Loading skeleton for recommendations */
.setmain-recommendations__card--skeleton {
	pointer-events: none;
}

.setmain-recommendations__skeleton-img {
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(100deg, rgba(255,255,255,.05) 40%, rgba(255,255,255,.13) 50%, rgba(255,255,255,.05) 60%);
	background-size: 220% 100%;
	animation: setmainRecShimmer 1.5s linear infinite;
}

.setmain-recommendations__skeleton-line {
	display: block;
	width: 88%;
	height: 13px;
	margin-top: 9px;
	border-radius: 4px;
	background: linear-gradient(100deg, rgba(255,255,255,.05) 40%, rgba(255,255,255,.13) 50%, rgba(255,255,255,.05) 60%);
	background-size: 220% 100%;
	animation: setmainRecShimmer 1.5s linear infinite;
}

.setmain-recommendations__skeleton-line.is-short {
	width: 52%;
}

@keyframes setmainRecShimmer {
	from { background-position: 170% 0; }
	to { background-position: -70% 0; }
}

@media (prefers-reduced-motion: reduce) {
	.setmain-recommendations__skeleton-img,
	.setmain-recommendations__skeleton-line {
		animation: none !important;
	}
}

