/*
Theme Name: KingStudioToy Redesign
Theme URI: https://kingstudiotoy.com/
Author: King Studio Toy
Description: React-powered P022 storefront theme with WooCommerce and KingStudio Preorder integration.
Version: 0.3.203
Requires at least: 6.9
Requires PHP: 8.2
Text Domain: kingstudiotoy-redesign
*/

@font-face { font-family: "KST Bodoni"; src: url("assets/static/fonts/bodoni-moda-500.ttf") format("truetype"); font-display: swap; font-weight: 500; }

/* The site already exposes support links in the footer; remove the duplicate floating chat bubble. */
/* WhatsApp floating chat uses the existing plugin visibility settings. */

body:is(.page-id-56566,.page-id-55423) .kst-world-locations.kst-world-locations--editorial {
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: #f8f3ec;
	box-shadow: none;
}

/* Bootstrap Icons remain available for the editorial service layout. */
@font-face {
	font-family: "KST Bootstrap Icons";
	src: url("assets/vendor/bootstrap-icons/fonts/bootstrap-icons.woff2") format("woff2");
	font-display: block;
	font-style: normal;
	font-weight: 400;
}

body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__inner { min-height: 142px; }
body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__item { gap: 22px; padding: 27px 24px; }
body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__icon {
	width: 58px;
	height: 58px;
	font-size: 43px;
	color: #ba8d3d;
}
body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__copy { gap: 8px; }
body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__copy strong {
	font: 700 20px/1.12 "KST Manrope", "Noto Sans SC", sans-serif;
	letter-spacing: .02em;
}
body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__copy small {
	font: 500 12px/1.2 "KST Manrope", "Noto Sans SC", sans-serif;
	letter-spacing: .03em;
}
body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__item.is-discount .kst-home-promotions__copy strong {
	font: 500 clamp(28px, 1.75vw, 34px)/1 "KST Bodoni", "Noto Serif SC", serif;
	letter-spacing: 0;
}
body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__item.is-discount .kst-home-promotions__copy small {
	font-size: 11px;
	font-weight: 600;
}

body:is(.page-id-56566,.page-id-55423) .elementor-widget-kst-service-strip > .elementor-widget-container {
	overflow: hidden;
	border: 1px solid rgba(185, 137, 53, .24);
	background: rgba(252, 249, 244, .92);
}
body:is(.page-id-56566,.page-id-55423) .kst-service-strip {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	padding: 50px 0 46px;
	border-bottom: 1px solid rgba(185, 137, 53, .36);
	background: transparent;
}
body:is(.page-id-56566,.page-id-55423) .kst-service-strip__item,
body:is(.page-id-56566,.page-id-55423) .kst-service-strip__item:last-child {
	min-height: 230px;
	padding: 8px clamp(28px, 3vw, 54px);
	border: 0;
	border-right: 1px solid rgba(185, 137, 53, .38);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}
body:is(.page-id-56566,.page-id-55423) .kst-service-strip__item:last-child { border-right: 0; }
body:is(.page-id-56566,.page-id-55423) .kst-service-strip__icon { margin-bottom: 16px; }
body:is(.page-id-56566,.page-id-55423) .kst-service-strip h3 {
	margin-bottom: 15px;
	font-size: clamp(27px, 1.8vw, 32px);
	font-weight: 500;
}
body:is(.page-id-56566,.page-id-55423) .kst-service-strip p { font-size: 16px; line-height: 1.7; }
body:is(.page-id-56566,.page-id-55423) .kst-service-strip__icon { font-size: 52px; }
body:is(.page-id-56566,.page-id-55423) .kst-service-strip__icon .bi::before { display: inline-block; font-family: "KST Bootstrap Icons" !important; font-style: normal; font-weight: 400 !important; line-height: 1; -webkit-font-smoothing: antialiased; }
body:is(.page-id-56566,.page-id-55423) .kst-service-strip__icon .bi-truck::before { content: "\f5ea"; }
body:is(.page-id-56566,.page-id-55423) .kst-service-strip__icon .bi-telephone::before { content: "\f5c1"; }

body:is(.page-id-56566,.page-id-55423) .kst-social-strip {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	background: transparent;
}
body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item {
	min-height: 214px;
	padding: 34px 24px 30px;
	border: 0;
	border-right: 1px solid rgba(185, 137, 53, .38);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}
body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item:last-child { border-right: 0; }
body:is(.page-id-56566,.page-id-55423) .kst-social-strip__icon,
body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item--tiktok .kst-social-strip__icon,
body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item--youtube .kst-social-strip__icon,
body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item--whatsapp .kst-social-strip__icon {
	margin-bottom: 14px;
	color: #3a172c;
	font-size: 46px;
	text-shadow: none;
}
body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item--instagram .kst-social-strip__icon i {
	background: none;
	color: #3a172c;
}
body:is(.page-id-56566,.page-id-55423) .kst-social-strip h3 {
	margin-bottom: 12px;
	font-size: clamp(24px, 1.7vw, 30px);
	font-weight: 500;
}
body:is(.page-id-56566,.page-id-55423) .kst-social-strip p { font-size: 15px; }

@media (max-width: 767px) {
	body:is(.page-id-56566,.page-id-55423) .kst-home-promotions { overflow: visible; }
	body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__inner { min-width: 0; min-height: 142px; }
	body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__item { gap: 14px; padding-inline: 14px; }
	body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__icon { width: 44px; height: 44px; font-size: 34px; }
	body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__copy strong { font-size: 17px; }
	body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__item.is-discount .kst-home-promotions__copy strong { font-size: 27px; }

	body:is(.page-id-56566,.page-id-55423) .kst-service-strip { grid-template-columns: 1fr; padding: 0; }
	body:is(.page-id-56566,.page-id-55423) .kst-service-strip__item,
	body:is(.page-id-56566,.page-id-55423) .kst-service-strip__item:last-child {
		min-height: 0;
		padding: 34px 22px 30px;
		border-right: 0;
		border-bottom: 1px solid rgba(185, 137, 53, .3);
	}
	body:is(.page-id-56566,.page-id-55423) .kst-service-strip__item:last-child { border-bottom: 0; }
	body:is(.page-id-56566,.page-id-55423) .kst-social-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item { min-height: 170px; padding: 26px 12px 22px; }
	body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item:nth-child(2) { border-right: 0; }
	body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item:nth-child(-n + 2) { border-bottom: 1px solid rgba(185, 137, 53, .3); }
}

.kst-rate-attribution {
	padding: 7px 18px 10px;
	background: #160f14;
	color: rgba(255, 255, 255, 0.52);
	font: 500 9px/1.4 Montserrat, Arial, sans-serif;
	letter-spacing: 0.04em;
	text-align: center;
}

.kst-rate-attribution a:hover {
	color: rgba(255, 255, 255, 0.82);
}
body:is(.page-id-56566,.page-id-55423) .kst-world-locations--editorial::before { display: none; }
body:is(.page-id-56566,.page-id-55423) .kst-world-locations--editorial .kst-world-locations__art { display: block; width: 100%; height: auto; margin: 0; }

.kst-el-service-strip-widget {
	width: 100%;
}

/* Real interactive global network map. */
.kst-world-locations { padding:clamp(32px,3vw,48px); background:radial-gradient(circle at 70% 30%,rgba(105,59,84,.34),transparent 38%),linear-gradient(145deg,#160e15 0%,#21131c 58%,#120b11 100%); }
.kst-world-locations__header { display:flex; align-items:end; justify-content:space-between; gap:40px; width:min(100%,1400px); margin:0 auto 24px; text-align:left; }
.kst-world-locations__header h2 { font-size:clamp(34px,2.7vw,48px); }
.kst-world-locations__header p { max-width:410px; margin:0 0 2px; text-align:right; }
.kst-world-locations__map-shell { position:relative; z-index:1; overflow:hidden; width:min(100%,1400px); margin:0 auto; border:1px solid rgba(224,188,115,.22); border-radius:12px; background:#120e13; }
.kst-world-locations__map { width:100%; height:clamp(360px,25vw,470px); margin:0; background:#120e13; }
.kst-world-locations .leaflet-container { font-family:"KST Manrope",sans-serif; }
.kst-world-locations .leaflet-tile-pane { filter:sepia(.22) saturate(.68) hue-rotate(288deg) brightness(.78) contrast(1.08); }
.kst-world-locations .leaflet-control-zoom a { border-color:rgba(224,188,115,.2); background:rgba(23,13,20,.88); color:#e5c782; }
.kst-world-locations .leaflet-control-attribution { background:rgba(15,10,14,.74); color:rgba(255,255,255,.48); font-size:9px; }
.kst-world-locations .leaflet-control-attribution a { color:#d5b469; }
.kst-world-locations .leaflet-interactive.kst-world-map-pin { filter:drop-shadow(0 0 9px rgba(243,204,114,.92)); }
.kst-world-map-tooltip { padding:8px 11px; border:1px solid rgba(224,188,115,.72); border-radius:8px; background:rgba(22,13,20,.94); box-shadow:0 8px 24px rgba(0,0,0,.28); color:#fff; }
.kst-world-map-tooltip::before { border-top-color:rgba(224,188,115,.72) !important; }
.kst-world-map-tooltip strong,.kst-world-map-tooltip span { display:block; }
.kst-world-map-tooltip strong { font-size:12px; }
.kst-world-map-tooltip span { margin-top:2px; color:rgba(255,255,255,.58); font-size:9px; }
.kst-world-locations__legend { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; width:min(100%,1400px); margin:18px auto 0; padding:0; list-style:none; }
.kst-world-locations__legend li { position:relative; padding:2px 18px 2px 20px; border-right:1px solid rgba(255,255,255,.1); }
.kst-world-locations__legend li:last-child { border-right:0; }
.kst-world-locations__legend i { position:absolute; top:9px; left:0; width:7px; height:7px; border-radius:50%; background:#f3cc72; box-shadow:0 0 12px rgba(243,204,114,.9); }
.kst-world-locations__legend strong,.kst-world-locations__legend small { display:block; }
.kst-world-locations__legend strong { color:#fff; font-size:13px; }
.kst-world-locations__legend small { margin-top:3px; color:rgba(255,255,255,.5); font-size:9px; letter-spacing:.06em; }

.kst-world-locations__map { position:relative; height:auto; aspect-ratio:1280/650; }
.kst-world-locations__map > img { display:block; width:100%; height:100%; object-fit:contain; opacity:.42; filter:sepia(.45) saturate(.7) hue-rotate(292deg) brightness(.75) contrast(1.25); }
.kst-map-pin { position:absolute; z-index:3; top:var(--map-y); left:var(--map-x); transform:translate(-50%,-50%); }
.kst-map-pin i { display:block; width:11px; height:11px; border:2px solid #ffe3a0; border-radius:50%; background:#e8b852; box-shadow:0 0 0 7px rgba(232,184,82,.12),0 0 24px rgba(232,184,82,.9); }
.kst-map-pin span { position:absolute; left:17px; top:50%; transform:translateY(-50%); min-width:max-content; padding:7px 11px; border:1px solid rgba(224,188,115,.58); border-radius:999px; background:rgba(20,12,18,.92); color:#fff3d7; font:600 11px/1 "KST Manrope",sans-serif; box-shadow:0 7px 20px rgba(0,0,0,.26); }
.kst-map-pin--california span { left:auto; right:17px; }
.kst-map-pin--hangzhou span { top:-33px; left:12px; }
.kst-map-pin--wuhan span { top:3px; left:25px; }
.kst-map-pin--jiangxi span { top:37px; left:18px; }
.kst-map-pin--vietnam span { top:36px; left:18px; }
@media (max-width:767px) { .kst-world-locations__header { align-items:start; } .kst-world-locations__header p { max-width:500px; text-align:left; } }

.kst-service-strip {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	width: 100%;
	padding: 58px clamp(50px, 6vw, 110px) 54px;
	border-top: 1px solid var(--kst-line);
	border-bottom: 1px solid var(--kst-line);
	background: #eee6dc;
	color: var(--kst-ink);
	text-align: center;
}

.kst-service-strip__item {
	min-width: 0;
	padding: 0 clamp(26px, 3vw, 58px);
	border-right: 1px solid rgba(57, 36, 47, 0.16);
}

.kst-service-strip__item:last-child {
	border-right: 0;
}

.kst-service-strip__icon {
	display: grid;
	place-items: center;
	width: 64px;
	height: 58px;
	margin: 0 auto 18px;
	color: var(--kst-plum);
	text-decoration: none;
	transition: transform 180ms ease, color 180ms ease;
}

.kst-service-strip__icon:hover {
	color: #63334f;
	transform: translateY(-3px);
}

.kst-service-strip__icon svg {
	width: 56px;
	height: 56px;
	fill: currentColor;
}

.kst-service-strip__paypal {
	display: grid;
	place-items: center;
	min-width: 58px;
	height: 40px;
	padding: 0 6px;
	border-radius: 4px;
	border: 1px solid var(--kst-plum);
	background: var(--kst-paper);
	color: var(--kst-plum);
	font: italic 700 14px/1 Arial, sans-serif;
}

.kst-service-strip h3 {
	margin: 0 0 18px;
	color: var(--kst-ink);
	font: 600 30px/1.15 "KST Bodoni", serif;
	letter-spacing: .01em;
	text-transform: uppercase;
}

.kst-service-strip h3 a {
	color: inherit;
	text-decoration: none;
}

.kst-service-strip p {
	margin: 0;
	color: var(--kst-muted);
	font: 400 15px/1.75 "KST Manrope", sans-serif;
}

.kst-social-strip {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(14px, 1.5vw, 24px);
	width: 100%;
	margin-top: 20px;
}

.kst-social-strip__item {
	display: grid;
	place-items: center;
	align-content: center;
	min-width: 0;
	min-height: 272px;
	padding: 42px clamp(24px, 3vw, 52px) 36px;
	border: 1px solid rgba(57, 36, 47, 0.14);
	border-radius: 14px;
	background: rgba(238, 230, 220, 0.92);
	box-shadow: 0 10px 24px rgba(56, 38, 46, 0.05);
	text-align: center;
}

.kst-social-strip__icon {
	display: grid;
	place-items: center;
	width: 64px;
	height: 58px;
	margin: 0 auto 18px;
	color: var(--kst-plum);
	font-size: 54px;
	line-height: 1;
	text-decoration: none;
	transition: color 180ms ease, transform 180ms ease;
}

.kst-social-strip__icon:hover {
	transform: translateY(-3px);
}

/* Official social-network colours while retaining the shared card styling. */
.kst-social-strip__item--tiktok .kst-social-strip__icon {
	color: #111111;
	text-shadow: -2px -1px 0 #25f4ee, 2px 1px 0 #fe2c55;
}

.kst-social-strip__item--instagram .kst-social-strip__icon i {
	display: block;
	background: radial-gradient(circle at 32% 104%, #ffd600 0 18%, #ff7a00 31%, #ff0169 53%, #d300c5 72%, #7638fa 94%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.kst-social-strip__item--youtube .kst-social-strip__icon {
	color: #ff0033;
}

.kst-social-strip__item--whatsapp .kst-social-strip__icon {
	color: #25d366;
}

.kst-social-strip h3 {
	margin: 0 0 18px;
	color: var(--kst-ink);
	font: 600 30px/1.15 "KST Bodoni", serif;
	letter-spacing: .01em;
	text-transform: uppercase;
}

.kst-social-strip h3 a {
	color: inherit;
	text-decoration: none;
}

.kst-social-strip p {
	margin: 0;
	color: var(--kst-muted);
	font: 400 15px/1.75 "KST Manrope", sans-serif;
}

@media (max-width: 720px) {
	.kst-social-strip {
		gap: 10px;
	}

	.kst-social-strip__item {
		min-height: 180px;
		padding: 26px 12px 24px;
	}

	.kst-social-strip__icon {
		font-size: 44px;
	}

	.kst-social-strip h3 {
		font-size: 22px;
	}
}
@font-face { font-family: "KST Manrope"; src: url("assets/static/fonts/manrope-400.ttf") format("truetype"); font-display: swap; font-weight: 400; }
@font-face { font-family: "KST Manrope"; src: url("assets/static/fonts/manrope-600.ttf") format("truetype"); font-display: swap; font-weight: 600; }

:root { --kst-plum: #321a2a; --kst-ink: #261e22; --kst-muted: #756970; --kst-line: #d9cfc8; --kst-paper: #f7f3ee; }
.kst-batch-marquee{overflow:hidden;width:100%}
.kst-batch-marquee__track{display:flex;flex-wrap:nowrap;gap:var(--kst-batch-gap);width:max-content;animation:kst-batch-marquee var(--kst-batch-duration) linear infinite;will-change:transform}
.kst-batch-marquee:hover .kst-batch-marquee__track,.kst-batch-marquee:focus-within .kst-batch-marquee__track{animation-play-state:paused}
.kst-batch-card{flex:0 0 var(--kst-batch-card-width);width:var(--kst-batch-card-width);min-width:0;padding-bottom:24px;border:1px solid rgba(52,31,43,.1);background:#eee6dc}
.kst-batch-card img{display:block;width:100%;height:340px;object-fit:contain;background:#f4efe9}
.kst-batch-card h3{margin:18px 20px 0;color:#2a1a23;font:600 26px/1.2 "KST Bodoni",serif}
.kst-batch-card p{margin:18px 20px 0;color:#77636e;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
@keyframes kst-batch-marquee{to{transform:translateX(var(--kst-batch-shift))}}
@media(prefers-reduced-motion:reduce){.kst-batch-marquee__track{animation:none}}
.kst-category-marquee{overflow:hidden;width:100%;margin-top:40px}
.kst-category-marquee__track{display:flex;flex-wrap:nowrap;gap:var(--kst-category-gap);width:max-content;animation:kst-category-marquee var(--kst-category-duration) linear infinite;will-change:transform}
.kst-category-marquee:hover .kst-category-marquee__track,.kst-category-marquee:focus-within .kst-category-marquee__track{animation-play-state:paused}
.kst-category-card{flex:0 0 var(--kst-category-width);width:var(--kst-category-width);min-width:0;overflow:hidden;background:#fff}
.kst-category-card a{display:block;color:inherit;text-decoration:none}
.kst-category-card img{display:block;width:100%;height:340px;object-fit:contain;background:#fff;transition:transform .25s ease}
.kst-category-card:hover img{transform:scale(1.025)}
.kst-category-card h3{margin:0;padding:30px 22px 0;color:#24171e;font:600 26px/1.2 "KST Bodoni",serif}
.kst-category-card p{min-height:58px;margin:0;padding:22px;color:#6b6066;font:600 11px/1.45 "KST Manrope",sans-serif;letter-spacing:.08em;text-transform:uppercase}
@keyframes kst-category-marquee{to{transform:translateX(var(--kst-category-shift))}}
@media(prefers-reduced-motion:reduce){.kst-category-marquee__track{animation:none}}
html, body { margin: 0; }
body { min-width: 320px; background: var(--kst-paper); color: var(--kst-ink); font-family: "KST Manrope", sans-serif; }
* { box-sizing: border-box; }
a { color: inherit; }
.kst-announcement { min-height: 30px; display: flex; align-items: center; justify-content: center; gap: 12px; padding: 6px 20px; background: #2d1927; color: #f8eef3; font-size: 9px; font-weight: 600; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.kst-announcement a { color: inherit; text-decoration: none; }
.kst-announcement a:hover { color: #e5bd57; }
.kst-announcement a:focus-visible { outline: 2px solid #e5bd57; outline-offset: 3px; }
.kst-announcement span { color: rgba(248, 238, 243, .48); }
.kst-standard-header {
	min-height: 92px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
	padding: 0 max(28px, 5vw);
	background: rgba(251, 248, 244, .96);
	border-bottom: 1px solid #e4dcd5;
	position: relative;
	top: 0;
	z-index: 20;
}

/* Keep product imagery consistent in Elementor and on the storefront. */
.kst-el-series-card .kst-el-card-title .elementor-heading-title {
	color: #fff !important;
	opacity: 1 !important;
}

.kst-el-series-card .kst-el-card-subtitle,
.kst-el-series-card .kst-el-card-subtitle p {
	color: rgba(255, 255, 255, 0.76) !important;
	opacity: 1 !important;
}

.kst-el-series-card .kst-el-card-image .elementor-widget-container,
.kst-el-product-card .kst-el-card-image .elementor-widget-container {
	display: flex;
	height: 340px;
	justify-content: center;
	overflow: hidden;
}

.kst-el-series-card .kst-el-card-image img,
.kst-el-product-card .kst-el-card-image img {
	height: 100% !important;
	max-height: none !important;
	object-fit: contain !important;
	width: 100% !important;
}

.kst-el-series-card .kst-el-card-image .elementor-widget-container {
	background: #fff;
}

.kst-el-best {
	overflow: hidden;
}

.kst-el-product-grid {
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	animation: none !important;
	transform: none !important;
	width: 100% !important;
}

.kst-el-product-grid > .e-con-inner {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 12px !important;
	margin-inline: 0 !important;
	max-width: none !important;
	width: max-content !important;
	animation: kst-el-product-marquee 34s linear infinite;
}

.kst-el-product-card {
	flex: 0 0 clamp(280px, 23vw, 360px) !important;
	width: clamp(280px, 23vw, 360px) !important;
}

.kst-el-product-grid:hover > .e-con-inner,
.kst-el-product-grid:focus-within > .e-con-inner {
	animation-play-state: paused;
}

@keyframes kst-el-product-marquee {
	to { transform: translateX(calc(-33.333333% - 4px)); }
}

@media (max-width: 767px) {
	.kst-el-product-grid {
		flex-direction: row !important;
	}
	.kst-el-product-card {
		flex-basis: 78vw !important;
		width: 78vw !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.kst-el-product-grid > .e-con-inner {
		animation: none;
	}
}
.kst-standard-brand { display: inline-flex; align-items: center; gap: 10px; color: var(--kst-ink); text-decoration: none; }
.kst-standard-brand-logo { width: 62px; height: 72px; display: block; object-fit: contain; }
.kst-standard-brand-mark { width: 36px; height: 42px; display: grid; place-items: center; border: 1px solid currentColor; font: 500 27px/1 "KST Bodoni", serif; }
.kst-standard-brand > span:last-child { display: grid; line-height: 1; }
.kst-standard-brand b { font: 500 22px/1 "KST Bodoni", serif; letter-spacing: .14em; }
.kst-standard-brand small { margin-top: 5px; font-size: 6px; letter-spacing: .29em; }
.kst-standard-nav { display: flex; align-items: center; justify-content: center; gap: clamp(14px, 1.7vw, 28px); }
.kst-standard-nav a { padding: 12px 0; color: #4d4147; text-decoration: none; font-size: 10px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.kst-standard-nav a:hover { color: var(--kst-plum); }
.kst-standard-nav a:focus-visible, .kst-standard-brand:focus-visible, .kst-standard-footer a:focus-visible, .kst-language-dropdown summary:focus-visible { outline: 2px solid var(--kst-plum); outline-offset: 4px; }
.kst-standard-actions { display: flex; align-items: center; gap: 15px; }
.kst-standard-account, .kst-standard-rewards { color: #4d4147; font-size: 9px; font-weight: 600; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; white-space: nowrap; }
.kst-standard-account:hover, .kst-standard-rewards:hover { color: var(--kst-plum); }
.kst-standard-search { color: #4d4147; font-size: 9px; font-weight: 600; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.kst-product-search { position: relative; z-index: 42; width: clamp(190px, 15vw, 260px); min-width: 190px; flex: 0 0 clamp(190px, 15vw, 260px); }
.kst-product-search__form { width: 100%; display: grid; grid-template-columns: minmax(0, 1fr) auto; overflow: hidden; border: 1px solid var(--kst-plum); border-radius: 999px; background: #fff; }
.kst-product-search__form:focus-within { border-color: var(--kst-plum); box-shadow: 0 0 0 2px rgba(50, 26, 42, .14); }
.kst-product-search__form input[type="search"] { width: 100% !important; max-width: none; min-width: 0; height: 38px; padding: 0 13px; border: 0; border-radius: 0; outline: 0; box-shadow: none; -webkit-appearance: none; appearance: none; background: transparent; color: var(--kst-ink); font: 400 11px/1.4 "KST Manrope", sans-serif; }
.kst-product-search__form input[type="search"]:focus, .kst-product-search__form input[type="search"]:focus-visible { border: 0 !important; outline: 0 !important; box-shadow: none !important; }
.kst-product-search__form button { min-height: 38px; padding: 0 14px; border: 0; border-radius: 0; background: var(--kst-plum); color: #fff; font: 600 9px/1 "KST Manrope", sans-serif; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.kst-product-search__form button:hover { background: #4a243a; }
.kst-product-search__form button:focus-visible { outline: 2px solid #fff; outline-offset: -4px; }
.kst-standard-cart { min-width: 78px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid var(--kst-plum); text-align: center; }
.kst-standard-cart span { min-width: 16px; height: 16px; display: grid; place-items: center; background: var(--kst-plum); color: #fff; font-size: 8px; }
.kst-mobile-menu { display: none; }
.kst-standard-shell {
	min-height: calc(100vh - 230px);
	padding: clamp(54px, 7vw, 104px) 24px clamp(70px, 8vw, 120px);
	background-color: var(--kst-paper);
	background-image: url("assets/static/reference/paper-texture-v3.jpg");
	background-repeat: repeat;
	background-size: 1024px 1024px;
}
.kst-standard-shell > article, .kst-standard-shell > .woocommerce, .kst-standard-shell > .kst-commerce-content { width: min(1360px, 100%); margin: 0 auto; }
.kst-standard-shell h1 { margin: 0 0 42px; font: 500 clamp(42px, 5vw, 68px)/1 "KST Bodoni", serif; letter-spacing: -.02em; text-align: center; }
.woocommerce .u-columns.col2-set { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(24px, 4vw, 56px); }
.woocommerce .u-columns.col2-set::before, .woocommerce .u-columns.col2-set::after { display: none; }
.woocommerce .u-column1.col-1, .woocommerce .u-column2.col-2 { width: auto; float: none; }
.woocommerce .u-column1 h2, .woocommerce .u-column2 h2 { margin: 0 0 16px; font: 500 32px/1.1 "KST Bodoni", serif; }
.woocommerce form.login, .woocommerce form.register {
	min-height: 390px;
	margin: 0;
	padding: clamp(26px, 3.2vw, 42px);
	border: 1px solid var(--kst-line);
	border-radius: 0;
	background: rgba(252, 249, 245, .82);
	box-shadow: 0 18px 34px rgba(56, 40, 47, .08);
}
.woocommerce form .form-row { margin: 0 0 20px; padding: 0; }
.woocommerce form .form-row label { margin-bottom: 8px; color: #4b3f45; font-size: 12px; font-weight: 600; letter-spacing: .025em; }
.woocommerce form .form-row .required { color: #8c243c; }
.woocommerce form .form-row input.input-text {
	min-height: 48px;
	padding: 11px 13px;
	border: 1px solid #bfb3b8;
	border-radius: 0;
	background: #fff;
	color: var(--kst-ink);
	font: 400 15px/1.4 "KST Manrope", sans-serif;
}
.woocommerce form .form-row input.input-text:focus { border-color: var(--kst-plum); outline: 2px solid rgba(50, 26, 42, .18); outline-offset: 1px; }
.woocommerce .show-password-input { top: .7em; }
.woocommerce .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: 7px; min-height: 42px; }
.woocommerce button.button, .woocommerce a.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 26px;
	border: 1px solid var(--kst-plum);
	border-radius: 0;
	background: var(--kst-plum);
	color: #fff;
	font: 600 10px/1.3 "KST Manrope", sans-serif;
	letter-spacing: .12em;
	text-align: center;
	text-transform: uppercase;
}
.woocommerce button.button:hover, .woocommerce a.button:hover { background: #533047; color: #fff; }
.woocommerce button.button:focus-visible, .woocommerce a.button:focus-visible { outline: 2px solid #8e657d; outline-offset: 3px; }
.woocommerce .woocommerce-privacy-policy-text, .woocommerce .lost_password { color: var(--kst-muted); font-size: 12px; line-height: 1.7; }
.woocommerce .woocommerce-privacy-policy-text a, .woocommerce .lost_password a { color: var(--kst-plum); text-underline-offset: 3px; }
.kst-standard-footer {
	min-height: 300px;
	display: grid;
	grid-template-columns: 1.5fr repeat(4, minmax(130px, .7fr));
	align-items: start;
	gap: 22px 48px;
	padding: 64px max(28px, 6vw) 34px;
	background: #24151e;
	color: #f4edef;
}
.kst-standard-footer > div { display: grid; gap: 12px; }
.kst-standard-footer .kst-footer-partners { align-content: start; gap: 14px; }
.kst-standard-footer .kst-footer-partners span { color: #c5b9bf; font-size: 10px; font-weight: 600; letter-spacing: .05em; }
.kst-standard-footer .kst-standard-brand { color: #fff; }
.kst-standard-footer p { max-width: 34ch; margin: 0; color: #c5b9bf; font-size: 11px; line-height: 1.7; }
.kst-standard-footer b { font: 500 18px/1 "KST Bodoni", serif; letter-spacing: .12em; }
.kst-standard-footer span, .kst-standard-footer small { color: #c5b9bf; font-size: 10px; }
.kst-standard-footer nav { display: grid; align-content: start; gap: 14px; }
.kst-standard-footer strong, .kst-footer-contact > strong { margin-bottom: 8px; color: #fff; font: 500 16px/1.2 "KST Bodoni", serif; letter-spacing: .08em; text-transform: uppercase; }
.kst-standard-footer a { color: inherit; font-size: 10px; font-weight: 600; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.kst-standard-footer .kst-footer-policy-links { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 11px 24px; padding-top: 24px; border-top: 1px solid rgba(255, 255, 255, .12); }
.kst-footer-policy-links a:hover { color: #e5bd57; }
.kst-footer-policy-links a:focus-visible { outline: 2px solid #e5bd57; outline-offset: 4px; }
.kst-standard-footer small { grid-column: 1 / -1; padding-top: 18px; border-top: 1px solid rgba(255, 255, 255, .12); }
.kst-home-complete-footer {
	display: block;
	width: 100%;
	min-height: 0;
	padding: 0;
	border-top: 1px solid rgba(214, 164, 69, .32);
	background: linear-gradient(135deg, #171015 0%, #100b0f 100%);
}
.kst-home-complete-footer > .kst-footer-inner {
	display: grid;
	grid-template-columns: minmax(260px, 1.5fr) repeat(2, minmax(130px, .65fr)) minmax(210px, .85fr);
	align-items: start;
	gap: 42px 72px;
	width: min(1344px, 100%);
	margin: 0 auto;
	padding: 68px 36px 30px;
}
.kst-home-complete-footer .kst-footer-brand { display: grid; gap: 20px; }
.kst-home-complete-footer .kst-standard-brand-logo {
	width: 102px;
	height: 86px;
	object-position: left center;
}
.kst-home-complete-footer .kst-footer-brand p {
	max-width: 300px;
	color: #b9adb3;
	font-size: 12px;
	line-height: 1.8;
}
.kst-home-complete-footer nav { gap: 13px; }
.kst-home-complete-footer strong,
.kst-home-complete-footer .kst-footer-contact > strong {
	margin-bottom: 12px;
	font-size: 20px;
	letter-spacing: .05em;
}
.kst-home-complete-footer a {
	font-size: 11px;
	letter-spacing: .055em;
	transition: color .18s ease, transform .18s ease;
}
.kst-home-complete-footer nav:not(.kst-footer-policy-links) a:hover { transform: translateX(3px); }
.kst-home-complete-footer .kst-footer-contact a { color: #d8cbd1; text-transform: none; }
.kst-home-complete-footer .kst-footer-policy-links {
	display: grid;
	grid-template-columns: repeat(4, minmax(150px, 1fr));
	gap: 15px 34px;
	padding-top: 30px;
}
.kst-home-complete-footer .kst-footer-policy-links a { color: #c8bbc1; }
.kst-home-complete-footer > .kst-footer-inner > small {
	padding-top: 20px;
	color: #897c82;
	letter-spacing: .08em;
}
.kst-original-footer {
	display: block !important;
	width: 100%;
	border-top: 1px solid #222;
	background: #050505;
	color: #fff;
	font-family: "KST Manrope", sans-serif;
}
.kst-original-footer__inner {
	display: grid;
	grid-template-columns: 1fr .9fr .9fr .7fr 1.3fr;
	gap: 48px 50px;
	width: min(1344px, 100%);
	margin: 0 auto;
	padding: 68px 36px 28px;
}
.kst-original-footer__column,
.kst-original-footer__partners,
.kst-original-footer__social,
.kst-original-footer__newsletter { display: grid; align-content: start; gap: 15px; }
.kst-original-footer strong {
	margin-bottom: 9px;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
}
.kst-original-footer a {
	width: fit-content;
	color: #bcbcbc;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.45;
	text-decoration: none;
	transition: color .18s ease;
}
.kst-original-footer__partners span {
	color: #bcbcbc;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.45;
}
.kst-original-footer a:hover,
.kst-original-footer a:focus-visible { color: #ff5a1f; }
.kst-original-footer__social-links { display: flex; flex-wrap: wrap; gap: 10px; }
.kst-original-footer__social-links a {
	width: 38px;
	height: 38px;
	display: grid;
	place-items: center;
	border: 1px solid #3b3b3b;
	border-radius: 50%;
	color: #fff;
	font-size: 15px;
}
.kst-original-footer__social-links a:hover,
.kst-original-footer__social-links a:focus-visible { border-color: #ff5a1f; background: #ff5a1f; color: #fff; }
.kst-original-footer__newsletter .fluentform { margin: 0; }
.kst-original-footer__newsletter .ff-el-input--label { display: none; }
.kst-original-footer__newsletter .ff-el-group { margin-bottom: 10px; }
.kst-original-footer__newsletter input[type="email"],
.kst-original-footer__newsletter input[type="text"] {
	width: 100%;
	min-height: 46px;
	padding: 0 15px;
	border: 1px solid #3a3a3a;
	border-radius: 0;
	background: #fff;
	color: #161616;
	font-size: 12px;
}
.kst-original-footer__newsletter .ff-btn-submit {
	min-height: 44px;
	padding: 0 24px;
	border: 0;
	border-radius: 0;
	background: #ff5a1f !important;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}
.kst-original-footer__copyright {
	grid-column: 1 / -1;
	margin: 10px 0 0;
	padding-top: 24px;
	border-top: 1px solid #252525;
	color: #858585;
	font-size: 11px;
}
@media (max-width: 900px) {
	.kst-original-footer__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 42px; }
}
@media (max-width: 600px) {
	.kst-original-footer__inner { grid-template-columns: 1fr; gap: 36px; padding: 48px 26px 26px; }
	.kst-original-footer__copyright { grid-column: 1; }
}

.kst-demo-payment { width: min(1120px, 100%); margin: 0 auto; }
.kst-demo-banner {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin-bottom: 34px;
	padding: 17px 20px;
	background: #321a2a;
	color: #fff8fb;
	box-shadow: 0 12px 28px rgba(50, 26, 42, .16);
}
.kst-demo-banner svg { flex: 0 0 auto; width: 22px; height: 22px; margin-top: 1px; }
.kst-demo-banner strong, .kst-demo-banner span { display: block; }
.kst-demo-banner strong { margin-bottom: 4px; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.kst-demo-banner span { color: #eadce3; font-size: 12px; line-height: 1.55; }
.kst-payment-heading { margin-bottom: 34px; }
.kst-standard-shell .kst-payment-heading h1 { margin-bottom: 12px; text-align: left; }
.kst-payment-heading p { max-width: 66ch; margin: 0; color: #675b61; font-size: 14px; line-height: 1.7; }
.kst-payment-layout { display: grid; grid-template-columns: minmax(0, 1fr) 390px; gap: clamp(28px, 5vw, 70px); align-items: start; }
.kst-payment-form h2, .kst-order-summary h2 { margin: 0 0 24px; font: 500 30px/1.1 "KST Bodoni", serif; }
.kst-payment-form { padding: clamp(26px, 4vw, 44px); background: rgba(252, 249, 245, .88); box-shadow: 0 20px 42px rgba(56, 40, 47, .1); }
.kst-payment-method { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 28px; padding-bottom: 20px; border-bottom: 1px solid var(--kst-line); }
.kst-payment-method span { font-size: 13px; font-weight: 600; }
.kst-payment-method small { display: block; margin-top: 4px; color: var(--kst-muted); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.kst-card-marks { display: flex; gap: 5px; }
.kst-card-marks i { width: 31px; height: 20px; display: grid; place-items: center; border: 1px solid #a99ca2; color: #675b61; font-style: normal; font-size: 8px; font-weight: 600; }
.kst-demo-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 16px; }
.kst-demo-field { display: grid; gap: 8px; }
.kst-demo-field-wide { grid-column: 1 / -1; }
.kst-demo-field label { color: #4b3f45; font-size: 11px; font-weight: 600; letter-spacing: .025em; }
.kst-demo-field input {
	width: 100%;
	min-height: 49px;
	padding: 11px 13px;
	border: 1px solid #bfb3b8;
	border-radius: 0;
	background: #fff;
	color: var(--kst-ink);
	font: 400 15px/1.4 "KST Manrope", sans-serif;
}
.kst-demo-field input:focus { border-color: var(--kst-plum); outline: 2px solid rgba(50, 26, 42, .18); outline-offset: 1px; }
.kst-demo-field input::placeholder { color: #887a81; opacity: 1; }
.kst-demo-help { grid-column: 1 / -1; margin: 0; color: #756970; font-size: 11px; line-height: 1.6; }
.kst-demo-pay-button {
	width: 100%;
	min-height: 56px;
	margin-top: 26px;
	border: 1px solid var(--kst-plum);
	border-radius: 0;
	background: var(--kst-plum);
	color: #fff;
	cursor: pointer;
	font: 600 11px/1 "KST Manrope", sans-serif;
	letter-spacing: .11em;
	text-transform: uppercase;
}
.kst-demo-pay-button:hover { background: #533047; }
.kst-demo-pay-button:focus-visible { outline: 2px solid #8e657d; outline-offset: 3px; }
.kst-demo-pay-button:disabled { cursor: wait; opacity: .65; }
.kst-payment-security { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 13px 0 0; color: #756970; font-size: 10px; }
.kst-payment-security svg { width: 15px; height: 15px; }
.kst-order-summary { position: sticky; top: 116px; padding: 30px; border: 1px solid var(--kst-line); background: rgba(247, 243, 238, .92); }
.kst-summary-product { display: grid; grid-template-columns: 86px 1fr; gap: 18px; align-items: center; padding-bottom: 24px; border-bottom: 1px solid var(--kst-line); }
.kst-summary-product img { width: 86px; height: 94px; object-fit: contain; }
.kst-summary-product span, .kst-summary-product strong { display: block; }
.kst-summary-product span { margin-bottom: 5px; color: var(--kst-muted); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.kst-summary-product strong { font: 500 21px/1.2 "KST Bodoni", serif; }
.kst-summary-line { display: flex; justify-content: space-between; gap: 20px; padding: 18px 0; color: #5f5359; font-size: 12px; }
.kst-summary-line + .kst-summary-line { border-top: 1px solid var(--kst-line); }
.kst-summary-total { color: var(--kst-ink); font-weight: 600; }
.kst-summary-total b { font: 500 24px/1 "KST Bodoni", serif; }
.kst-summary-note { margin: 8px 0 0; color: #756970; font-size: 10px; line-height: 1.6; }
.kst-demo-success[hidden], .kst-payment-workspace[hidden] { display: none; }
.kst-demo-success { max-width: 720px; margin: 4vh auto; padding: clamp(38px, 7vw, 76px); background: rgba(252, 249, 245, .9); text-align: center; box-shadow: 0 22px 50px rgba(56, 40, 47, .11); }
.kst-success-mark { width: 70px; height: 70px; display: grid; place-items: center; margin: 0 auto 28px; border: 1px solid #78566b; border-radius: 50%; color: var(--kst-plum); }
.kst-success-mark svg { width: 34px; height: 34px; }
.kst-demo-success h1 { margin-bottom: 18px; }
.kst-demo-success p { max-width: 54ch; margin: 0 auto 12px; color: #675b61; font-size: 14px; line-height: 1.7; }
.kst-demo-success .kst-success-detail { color: var(--kst-ink); font-weight: 600; }
.kst-success-actions { display: flex; justify-content: center; gap: 12px; margin-top: 30px; }
.kst-success-actions a { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; padding: 0 24px; border: 1px solid var(--kst-plum); color: var(--kst-plum); font-size: 10px; font-weight: 600; letter-spacing: .1em; text-decoration: none; text-transform: uppercase; }
.kst-success-actions a:first-child { background: var(--kst-plum); color: #fff; }

.woocommerce-notices-wrapper { width: min(1180px, 100%); margin: 0 auto 24px; }
.woocommerce-message, .woocommerce-info, .woocommerce-error {
	margin: 0 0 20px;
	padding: 16px 20px 16px 48px;
	border: 0;
	background: #efe8e4;
	color: var(--kst-ink);
	font-size: 12px;
	line-height: 1.6;
}
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { top: 16px; color: var(--kst-plum); }
.woocommerce-error { background: #f5e5e8; }
.woocommerce table.shop_table { margin: 0; border: 0; border-collapse: collapse; border-radius: 0; background: rgba(252, 249, 245, .88); }
.woocommerce table.shop_table th { padding: 16px; border-bottom: 1px solid var(--kst-line); color: #675b61; font-size: 10px; letter-spacing: .09em; text-transform: uppercase; }
.woocommerce table.shop_table td { padding: 20px 16px; border-top: 1px solid var(--kst-line); font-size: 13px; }
.woocommerce-cart-form { box-shadow: 0 20px 42px rgba(56, 40, 47, .08); }
.kst-cart-quick-checkout { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: 0 0 22px; padding: 16px 18px; border: 1px solid var(--kst-line); background: rgba(247, 243, 238, .94); }
.kst-cart-quick-checkout > div { display: flex; align-items: baseline; gap: 12px; }
.kst-cart-quick-checkout span { color: var(--kst-muted); font-size: 10px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.kst-cart-quick-checkout strong { font: 500 24px/1 "KST Bodoni", serif; }
.woocommerce .kst-cart-quick-checkout a.button { min-width: 190px; min-height: 46px; display: inline-flex; align-items: center; justify-content: center; margin: 0; font-size: 10px; }
.woocommerce-cart-form .product-thumbnail img { width: 86px; height: 94px; object-fit: contain; }
.woocommerce-cart-form .product-name > a { font: 500 21px/1.2 "KST Bodoni", serif; text-decoration: none; }
.woocommerce-cart-form .product-remove a.remove.kst-remove-item { width: auto; min-width: 84px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 0 13px; border: 1px solid #7f283d; border-radius: 0; color: #7f283d !important; font: 600 10px/1 "KST Manrope", sans-serif; letter-spacing: .06em; text-decoration: none; }
.woocommerce-cart-form .product-remove a.remove.kst-remove-item svg { width: 17px; height: 17px; }
.woocommerce-cart-form .product-remove a.remove.kst-remove-item:hover { background: #7f283d; color: #fff !important; }
.woocommerce-cart-form .product-remove a.remove.kst-remove-item:focus-visible { outline: 2px solid var(--kst-plum); outline-offset: 3px; }
.kst-cart-plan { display: grid; gap: 7px; max-width: 330px; margin-top: 16px; }
.kst-cart-plan label { color: #4b3f45; font-size: 11px; font-weight: 600; }
.kst-cart-plan select, .woocommerce form .form-row select, .woocommerce .select2-container .select2-selection--single {
	min-height: 46px;
	padding: 10px 12px;
	border: 1px solid #bfb3b8;
	border-radius: 0;
	background: #fff;
	color: var(--kst-ink);
	font: 400 13px/1.4 "KST Manrope", sans-serif;
}
.kst-cart-plan small { color: var(--kst-muted); font-size: 10px; line-height: 1.5; }
.woocommerce .cart-collaterals { margin-top: 34px; }
.woocommerce .cart-collaterals .cart_totals { width: min(440px, 100%); padding: 30px; border: 1px solid var(--kst-line); background: rgba(247, 243, 238, .92); }
.woocommerce .cart-collaterals .cart_totals h2, .woocommerce-checkout h3, .woocommerce-account .woocommerce h2 { margin: 0 0 22px; font: 500 30px/1.1 "KST Bodoni", serif; }
.woocommerce .wc-proceed-to-checkout { padding: 20px 0 0; }
.woocommerce .wc-proceed-to-checkout a.checkout-button { display: flex; align-items: center; justify-content: center; margin: 0; font-size: 10px; }
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt { border-color: var(--kst-plum); background: var(--kst-plum); color: #fff; }
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover { background: #533047; color: #fff; }
.woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled] { background: #8f8087; color: #fff; opacity: .68; }
.woocommerce .cart .button { margin-left: 10px; }

.woocommerce-checkout .woocommerce { width: min(1120px, 100%); }
.woocommerce-checkout form.checkout { display: grid; grid-template-columns: minmax(0, 1fr) 430px; gap: clamp(30px, 5vw, 70px); align-items: start; }
.woocommerce-checkout #customer_details { padding: clamp(26px, 4vw, 44px); background: rgba(252, 249, 245, .88); box-shadow: 0 20px 42px rgba(56, 40, 47, .1); }
.woocommerce-checkout #customer_details .col-1, .woocommerce-checkout #customer_details .col-2 { width: 100%; float: none; }
.woocommerce-checkout #order_review_heading { grid-column: 2; grid-row: 1; margin: 0 0 22px; padding: 30px 30px 0; border: 1px solid var(--kst-line); border-bottom: 0; background: rgba(247, 243, 238, .92); }
.woocommerce-checkout #order_review { grid-column: 2; grid-row: 1; margin-top: 53px; padding: 36px 30px 30px; border: 1px solid var(--kst-line); border-top: 0; background: rgba(247, 243, 238, .92); }
.woocommerce-checkout #payment { border-radius: 0; background: #eee6e2; }
.woocommerce-checkout #payment ul.payment_methods { padding: 20px; border-bottom: 1px solid #d2c4c8; }
.woocommerce-checkout #payment div.payment_box { margin: 14px 0 0; background: #321a2a; color: #fff8fb; font-size: 12px; line-height: 1.6; }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #321a2a; }
.woocommerce-checkout #payment div.form-row { padding: 20px; }
.woocommerce-checkout #place_order { width: 100%; }
.woocommerce-checkout .woocommerce-form-login-toggle, .woocommerce-checkout .woocommerce-form-coupon-toggle { margin-bottom: 14px; }
.woocommerce-checkout.kst-demo-direct-checkout form.checkout { grid-template-columns: minmax(0, 720px); justify-content: center; }
.woocommerce-checkout.kst-demo-direct-checkout #order_review_heading { grid-column: 1; grid-row: auto; }
.woocommerce-checkout.kst-demo-direct-checkout #order_review { grid-column: 1; grid-row: auto; margin-top: -22px; }

.kst-staff-login { width: min(560px, 100%); margin: 0 auto; padding: clamp(28px, 5vw, 48px); border: 1px solid var(--kst-line); background: rgba(247, 243, 238, .94); box-shadow: 0 22px 46px rgba(56, 40, 47, .1); }
.kst-staff-login h2 { margin: 0 0 12px; font: 500 36px/1.1 "KST Bodoni", serif; color: var(--kst-ink); }
.kst-staff-login > p { max-width: 52ch; margin: 0 0 24px; color: var(--kst-muted); }
.kst-staff-login form { display: grid; gap: 16px; }
.kst-staff-login form > p { margin: 0; }
.kst-staff-login label { display: block; color: var(--kst-ink); font-size: 12px; font-weight: 600; }
.kst-staff-login input[type="text"], .kst-staff-login input[type="password"] { width: 100%; min-height: 49px; margin-top: 6px; }
.kst-staff-login .login-remember label { display: inline-flex; align-items: center; gap: 8px; font-weight: 400; }
.kst-staff-login .button, .kst-staff-login input[type="submit"] { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 26px; border: 1px solid var(--kst-plum); border-radius: 0; background: var(--kst-plum); color: #fff; font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; cursor: pointer; }
.kst-staff-login > small { display: block; margin-top: 22px; color: var(--kst-muted); }

.woocommerce-account .woocommerce { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: clamp(28px, 5vw, 64px); align-items: start; }
.woocommerce-account .woocommerce::before, .woocommerce-account .woocommerce::after { display: none; }
.woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { width: auto; float: none; }
.woocommerce-account .woocommerce-MyAccount-navigation { padding: 18px 0; border: 1px solid var(--kst-line); background: rgba(247, 243, 238, .92); }
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0; padding: 0; list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation a { display: block; padding: 13px 20px; color: #5f5359; font-size: 11px; font-weight: 600; letter-spacing: .04em; text-decoration: none; }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a { background: var(--kst-plum); color: #fff; }
.woocommerce-account .woocommerce-MyAccount-content { min-width: 0; }
.kst-account-center > header { margin-bottom: 28px; }
.kst-account-center > header > p { margin: 0 0 8px; color: var(--kst-plum); font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.kst-account-center > header h2 { margin: 0 0 10px; font: 500 clamp(34px, 4vw, 52px)/1 "KST Bodoni", serif; }
.kst-account-center > header > span { display: block; max-width: 72ch; color: var(--kst-muted); font-size: 13px; line-height: 1.7; }
.kst-account-center__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.kst-account-center__card { min-height: 230px; display: flex; flex-direction: column; align-items: flex-start; padding: clamp(24px, 3vw, 34px); border: 1px solid var(--kst-line); background: rgba(252, 249, 245, .9); box-shadow: 0 16px 32px rgba(56, 40, 47, .06); }
.kst-account-center__card small { color: var(--kst-plum); font-size: 9px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.kst-account-center__card > strong { max-width: 100%; margin-top: 13px; color: var(--kst-ink); font: 500 clamp(25px, 2.5vw, 36px)/1.08 "KST Bodoni", serif; overflow-wrap: anywhere; }
.kst-account-center__card p { margin: 15px 0 24px; color: var(--kst-muted); font-size: 12px; line-height: 1.65; }
.kst-account-center__card a { margin-top: auto; color: var(--kst-plum); font-size: 10px; font-weight: 700; letter-spacing: .07em; text-decoration: none; text-transform: uppercase; }
.kst-account-center__card a:hover { text-decoration: underline; text-underline-offset: 4px; }
.kst-account-center__card a:focus-visible { outline: 2px solid var(--kst-plum); outline-offset: 4px; }
.woocommerce-account .woocommerce-orders-table__cell-order-actions .button {
	min-width: 68px;
	min-height: 38px;
	padding-inline: 16px;
	font-size: 11px;
	letter-spacing: .04em;
	text-transform: none;
}
.woocommerce-account .woocommerce-info .button {
	min-height: 42px;
	padding-inline: 20px;
	font-size: 11px;
	letter-spacing: .04em;
	text-transform: none;
}
.kst-my-preorders > header { margin-bottom: 28px; }
.kst-my-preorders > header h2 { margin-bottom: 10px; }
.kst-my-preorders > header p { max-width: 68ch; margin: 0; color: var(--kst-muted); font-size: 13px; line-height: 1.65; }
.kst-preorder-record { margin-bottom: 28px; padding: clamp(24px, 4vw, 38px); background: rgba(252, 249, 245, .9); box-shadow: 0 18px 36px rgba(56, 40, 47, .08); }
.kst-preorder-record__product { display: grid; grid-template-columns: 100px minmax(0, 1fr); gap: 22px; align-items: center; padding-bottom: 24px; border-bottom: 1px solid var(--kst-line); }
.kst-preorder-record__product.has-update { grid-template-columns: 100px minmax(0, 1fr) minmax(180px, 260px); }
.kst-preorder-record__product > img { width: 100px; height: 112px; object-fit: contain; }
.kst-preorder-record__identity { min-width: 0; }
.kst-preorder-record__product small { color: var(--kst-muted); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.kst-preorder-record__product h3 { margin: 6px 0 7px; font: 500 28px/1.1 "KST Bodoni", serif; }
.kst-preorder-record__product p { margin: 0; color: #5f5359; font-size: 12px; }
.kst-preorder-update { justify-self: end; width: 100%; max-width: 260px; margin: 0; }
.kst-preorder-update a { display: grid; color: inherit; text-decoration: none; }
.kst-preorder-update img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border: 1px solid var(--kst-line); background: #eee6e2; }
.kst-preorder-update figcaption { display: grid; gap: 5px; padding-top: 7px; }
.kst-preorder-update figcaption span { color: var(--kst-muted); font-size: 9px; letter-spacing: .07em; text-transform: uppercase; }
.kst-preorder-update figcaption strong { color: var(--kst-ink); font-size: 11px; font-weight: 500; line-height: 1.6; overflow-wrap: anywhere; }
.kst-preorder-update a:hover + figcaption span, .kst-preorder-update a:focus-visible + figcaption span { color: var(--kst-ink); }
.kst-preorder-update a:focus-visible { outline: 2px solid var(--kst-plum); outline-offset: 4px; }
.kst-preorder-record dl { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; padding: 22px 0; border-bottom: 1px solid var(--kst-line); }
.kst-preorder-record dl div { padding: 0 18px; border-right: 1px solid var(--kst-line); }
.kst-preorder-record dl div:first-child { padding-left: 0; }
.kst-preorder-record dl div:last-child { padding-right: 0; border-right: 0; }
.kst-preorder-record dt { margin-bottom: 7px; color: var(--kst-muted); font-size: 10px; letter-spacing: .07em; text-transform: uppercase; }
.kst-preorder-record dd { margin: 0; color: var(--kst-ink); font-size: 12px; font-weight: 600; }
.kst-stage-track { display: grid; grid-template-columns: repeat(5, 1fr); margin: 0; padding: 28px 0 20px; list-style: none; }
.kst-stage-track li { position: relative; display: grid; justify-items: center; gap: 9px; color: #8a7f84; text-align: center; font-size: 9px; line-height: 1.35; }
.kst-stage-track li::before { content: ""; position: absolute; top: 6px; left: -50%; width: 100%; height: 1px; background: #cfc3c8; }
.kst-stage-track li:first-child::before { display: none; }
.kst-stage-track i { position: relative; z-index: 1; width: 13px; height: 13px; border: 1px solid #a99ca2; border-radius: 50%; background: #faf7f3; }
.kst-stage-track .complete i, .kst-stage-track .current i { border-color: var(--kst-plum); background: var(--kst-plum); }
.kst-stage-track .complete::before, .kst-stage-track .current::before { background: var(--kst-plum); }
.kst-stage-track .current { color: var(--kst-ink); font-weight: 600; }
.kst-balance-state { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 8px; padding: 20px; background: #eee6e2; }
.kst-balance-state > span { display: grid; gap: 5px; color: var(--kst-muted); font-size: 10px; letter-spacing: .06em; text-transform: uppercase; }
.kst-balance-state b { color: var(--kst-ink); font: 500 24px/1 "KST Bodoni", serif; letter-spacing: 0; }
.kst-balance-state small { max-width: 46ch; color: #675b61; font-size: 10px; line-height: 1.6; }
.kst-preorder-empty { padding: 40px; border: 1px solid var(--kst-line); text-align: center; }
.kst-preorder-empty h3 { margin: 0 0 10px; font: 500 28px/1.1 "KST Bodoni", serif; }
.kst-preorder-empty p { margin: 0 auto 24px; max-width: 52ch; color: var(--kst-muted); font-size: 12px; line-height: 1.6; }

/* Product catalogue and search results. */
.woocommerce .woocommerce-breadcrumb { margin: 0 0 24px; color: var(--kst-muted); font-size: 10px; letter-spacing: .05em; text-transform: uppercase; }
.woocommerce .woocommerce-result-count, .woocommerce .woocommerce-ordering { margin-bottom: 34px; color: var(--kst-muted); font-size: 11px; }
.woocommerce .woocommerce-ordering select { min-height: 42px; padding: 0 34px 0 12px; border: 1px solid var(--kst-line); border-radius: 0; background: rgba(255,255,255,.75); color: var(--kst-ink); font: 500 11px/1 "KST Manrope", sans-serif; }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(24px, 3vw, 46px) clamp(18px, 2.4vw, 34px); margin: 0; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { width: auto; float: none; margin: 0; padding-bottom: 20px; border-bottom: 1px solid var(--kst-line); }
.woocommerce ul.products li.product a { text-decoration: none; }
.woocommerce ul.products li.product a img { width: 100%; aspect-ratio: 4 / 5; margin: 0 0 20px; padding: 0; background: rgba(239,233,226,.74); object-fit: cover; transition: transform .35s ease, background-color .35s ease; }
.woocommerce ul.products li.product a:hover img { background: #eee4dc; transform: translateY(-4px); }
.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	display: -webkit-box;
	min-height: 2.9em;
	margin: 0;
	padding: 0;
	overflow: hidden;
	color: var(--kst-ink);
	font: 600 clamp(14px, 1vw, 17px)/1.45 "KST Manrope", "Montserrat", sans-serif;
	letter-spacing: -.01em;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.woocommerce ul.products li.product .price { margin-top: 10px; color: var(--kst-plum); font: 600 13px/1.3 "KST Manrope", sans-serif; }
.woocommerce ul.products li.product .button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: 36px;
	margin-top: 14px;
	padding: 0 15px;
	border-radius: 2px;
	box-shadow: none;
	font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", "KST Manrope", sans-serif;
	font-size: 10px;
	font-weight: 500;
	line-height: 1 !important;
	letter-spacing: .02em;
	text-align: center;
	vertical-align: middle;
}
.woocommerce span.onsale { min-width: auto; min-height: auto; margin: 14px !important; padding: 7px 10px; border-radius: 0; background: var(--kst-plum); font: 600 8px/1 "KST Manrope", sans-serif; letter-spacing: .09em; text-transform: uppercase; }
.woocommerce nav.woocommerce-pagination { margin-top: 52px; }
.woocommerce nav.woocommerce-pagination ul { border: 0; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; margin: 0 4px; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { min-width: 40px; min-height: 40px; display: grid; place-items: center; padding: 0; border: 1px solid var(--kst-line); background: transparent; color: var(--kst-ink); font-size: 11px; }
.woocommerce nav.woocommerce-pagination ul li span.current { border-color: var(--kst-plum); background: var(--kst-plum); color: #fff; }

/* Product detail. */
.single-product div.product { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(380px, .92fr); gap: clamp(38px, 5vw, 76px); align-items: start; }
.single-product div.product::before, .single-product div.product::after { display: none; }
.single-product div.product .woocommerce-product-gallery, .single-product div.product .summary { width: 100% !important; float: none !important; margin: 0; }
.single-product div.product .woocommerce-product-gallery { min-width: 0; padding: clamp(20px, 3vw, 38px); overflow: hidden; background: rgba(239,233,226,.76); }
.single-product div.product .woocommerce-product-gallery__image img { width: 100%; max-height: 650px; aspect-ratio: 1 / 1; object-fit: contain; }
.single-product div.product .flex-control-thumbs { display: grid !important; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; margin-top: 14px !important; }
.single-product div.product .flex-control-thumbs li { width: 100% !important; float: none !important; margin: 0 !important; }
.single-product div.product .flex-control-thumbs img { width: 100% !important; aspect-ratio: 1 / 1; padding: 4px; border: 1px solid transparent; background: rgba(255,255,255,.68); object-fit: contain; }
.single-product div.product .flex-control-thumbs img.flex-active { border-color: var(--kst-plum); }
.single-product div.product .summary { padding-top: clamp(8px, 2vw, 28px); }
.single-product div.product .summary .product_title { max-width: 19ch; margin: 0 0 22px; font: 500 clamp(32px, 3.2vw, 48px)/1.02 "KST Bodoni", serif; letter-spacing: -.02em; overflow-wrap: anywhere; text-align: left; }
.single-product div.product .summary .price { margin: 0 0 25px; color: var(--kst-plum); font: 500 25px/1.2 "KST Bodoni", serif; }
.single-product div.product .woocommerce-product-details__short-description { color: #62565c; font-size: 13px; line-height: 1.8; }
.single-product div.product form.cart { display: flex; flex-wrap: wrap; gap: 10px; margin: 28px 0; padding: 24px 0; border-top: 1px solid var(--kst-line); border-bottom: 1px solid var(--kst-line); }
.single-product div.product form.cart .quantity .qty { min-height: 48px; border: 1px solid var(--kst-line); background: #fff; }
.single-product div.product .product_meta { display: grid; gap: 9px; color: var(--kst-muted); font-size: 10px; line-height: 1.6; text-transform: uppercase; }
.single-product div.product .product_meta a { color: var(--kst-ink); text-underline-offset: 3px; }
.single-product div.product .woocommerce-tabs { grid-column: 1 / -1; margin-top: 28px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { display: flex; gap: 28px; margin: 0; padding: 0; border-bottom: 1px solid var(--kst-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: 15px 0; color: var(--kst-muted); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--kst-plum); }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 860px; padding: 30px 0; color: #5f5359; font-size: 13px; line-height: 1.8; }
.single-product .related.products { grid-column: 1 / -1; margin-top: 30px; }
.single-product .related.products > h2 { margin: 0 0 34px; font: 500 clamp(34px, 4vw, 52px)/1 "KST Bodoni", serif; text-align: center; }

@media (max-width: 760px) {
	.kst-announcement { font-size: 8px; }
	.kst-standard-header { min-height: 76px; padding-inline: 16px; }
	.kst-standard-nav, .kst-standard-search { display: none; }
	.kst-standard-actions { margin-left: auto; gap: 8px; }
	.kst-product-search { width: min(160px, 40vw); }
	.kst-product-search__form input[type="search"] { height: 36px; padding-inline: 10px; font-size: 10px; }
	.kst-product-search__form button { min-height: 36px; padding-inline: 10px; font-size: 8px; }
	.kst-language-form select { max-width: 68px; font-size: 9px; }
	.kst-standard-cart { min-width: 58px; padding-inline: 7px; font-size: 8px !important; }
	.kst-mobile-menu { display: block; position: relative; }
	.kst-mobile-menu summary { min-width: 50px; height: 42px; display: grid; place-items: center; padding: 0 8px; border: 1px solid var(--kst-plum); color: var(--kst-plum); font-size: 8px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; list-style: none; }
	.kst-mobile-menu summary::-webkit-details-marker { display: none; }
	.kst-mobile-menu nav { position: absolute; top: 52px; right: 0; width: min(280px, calc(100vw - 32px)); display: grid; padding: 12px; background: #fbf8f4; border: 1px solid var(--kst-line); box-shadow: 0 18px 40px rgba(38,30,34,.16); }
	.kst-mobile-menu nav a { padding: 13px 12px; border-bottom: 1px solid var(--kst-line); color: var(--kst-ink); font-size: 10px; font-weight: 600; letter-spacing: .07em; text-decoration: none; text-transform: uppercase; }
	.kst-standard-shell { padding: 44px 16px 70px; }
	.kst-standard-shell h1 { margin-bottom: 30px; font-size: 44px; }
	.woocommerce .u-columns.col2-set { grid-template-columns: 1fr; gap: 38px; }
	.woocommerce form.login, .woocommerce form.register { min-height: 0; padding: 26px 20px; }
	.kst-standard-footer { grid-template-columns: 1fr 1fr; padding-top: 48px; }
	.kst-standard-footer .kst-footer-brand, .kst-standard-footer .kst-footer-contact { grid-column: 1 / -1; }
	.kst-standard-footer small { grid-column: auto; }
	.kst-standard-footer .kst-footer-policy-links { gap: 12px 18px; }
	.kst-payment-layout { grid-template-columns: 1fr; }
	.kst-order-summary { position: static; grid-row: 1; padding: 24px 20px; }
	.kst-payment-form { padding: 26px 20px; }
	.kst-demo-fields { grid-template-columns: 1fr; }
	.kst-demo-field-wide { grid-column: auto; }
	.kst-success-actions { flex-direction: column; }
	.woocommerce table.shop_table_responsive tr td { padding: 14px 16px; }
	.woocommerce-cart-form .product-remove { display: flex; justify-content: flex-end; }
	.woocommerce-cart-form .product-thumbnail { display: none; }
	.woocommerce-cart-form .product-name > a { font-size: 19px; }
	.kst-cart-quick-checkout { align-items: stretch; flex-direction: column; gap: 14px; }
	.kst-cart-quick-checkout > div { justify-content: space-between; }
	.woocommerce .kst-cart-quick-checkout a.button { width: 100%; }
	.woocommerce .cart .button { width: 100%; margin: 8px 0 0; }
	.woocommerce .cart-collaterals .cart_totals { padding: 24px 20px; }
	.woocommerce-checkout form.checkout { grid-template-columns: 1fr; }
	.woocommerce-checkout #customer_details { padding: 26px 20px; }
	.woocommerce-checkout #order_review_heading { grid-column: 1; grid-row: auto; padding: 24px 20px 0; }
	.woocommerce-checkout #order_review { grid-column: 1; grid-row: auto; margin-top: -22px; padding: 36px 20px 24px; }
	.woocommerce-account .woocommerce { grid-template-columns: 1fr; }
	.woocommerce-account .woocommerce-MyAccount-navigation { padding: 0; }
	.woocommerce-account .woocommerce-MyAccount-navigation ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; }
	.woocommerce-account .woocommerce-MyAccount-navigation a { min-height: 48px; display: flex; align-items: center; padding-inline: 14px; }
	.kst-account-center__grid { grid-template-columns: 1fr; }
	.kst-account-center__card { min-height: 0; }
	.kst-preorder-record__product, .kst-preorder-record__product.has-update { grid-template-columns: 76px minmax(0, 1fr); gap: 16px; }
	.kst-preorder-record__product > img { width: 76px; height: 90px; }
	.kst-preorder-update { grid-column: 1 / -1; justify-self: stretch; max-width: none; margin-top: 4px; }
	.kst-preorder-record dl { grid-template-columns: 1fr; gap: 16px; }
	.kst-preorder-record dl div, .kst-preorder-record dl div:first-child, .kst-preorder-record dl div:last-child { padding: 0 0 16px; border-right: 0; border-bottom: 1px solid var(--kst-line); }
	.kst-preorder-record dl div:last-child { padding-bottom: 0; border-bottom: 0; }
	.kst-stage-track { overflow-x: auto; grid-template-columns: repeat(5, minmax(82px, 1fr)); padding-bottom: 14px; }
	.kst-balance-state { align-items: stretch; flex-direction: column; }
	.woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 12px; }
	.woocommerce ul.products li.product a img { padding: 0; }
	.single-product div.product { grid-template-columns: 1fr; gap: 30px; }
	.single-product div.product .woocommerce-tabs, .single-product .related.products { grid-column: auto; }
	.single-product div.product .summary .product_title { max-width: none; font-size: clamp(30px, 9vw, 42px); }
	.single-product div.product .flex-control-thumbs { grid-template-columns: repeat(5, minmax(0, 1fr)); }
	.woocommerce div.product .woocommerce-tabs ul.tabs { overflow-x: auto; gap: 20px; }
}
/* Elementor-editable homepage preview. Every rule is scoped to the custom
 * section classes so existing Elementor pages keep their original styling. */
.kst-el-header,
.kst-el-hero,
.kst-el-trust,
.kst-el-preorders,
.kst-el-collections,
.kst-el-best,
.kst-el-footer {
	box-sizing: border-box;
	font-family: "Montserrat", sans-serif;
}

.kst-el-header {
	background: #f8f4ee;
	border-bottom: 1px solid rgba(48, 25, 39, 0.13);
	box-shadow: 0 8px 28px rgba(39, 25, 32, 0.05);
	position: relative;
	z-index: 5;
}

.kst-el-brand .elementor-heading-title {
	color: #20151c;
	font-family: "Cormorant Garamond", serif;
	font-size: 0;
	font-weight: 700;
	letter-spacing: 0.2em;
	line-height: 0.75;
	width: 66px;
	height: 72px;
	display: block;
	background: url("assets/static/brand/king-studio-gold-logo.png") center / contain no-repeat;
}

.kst-el-brand small {
	display: none;
	font-family: "Montserrat", sans-serif;
	font-size: 8px;
	letter-spacing: 0.34em;
	margin-top: 10px;
}

.kst-el-nav {
	gap: 2px;
}

.kst-el-nav-link .elementor-button,
.kst-el-footer-link .elementor-button {
	background: transparent;
	border: 0;
	box-shadow: none;
	color: #2d1d26;
	font-size: 12px;
	letter-spacing: 0.08em;
	padding: 12px 13px;
	text-transform: uppercase;
}

.kst-el-nav-link .elementor-button:hover {
	color: #6a304f;
}

.kst-el-hero {
	background-image: url("assets/static/reference/dragon-energy-battlefield-v1.png") !important;
	background-position: center !important;
	background-size: cover !important;
	color: #fff;
	overflow: hidden;
}

.elementor-widget-kst-hero-carousel,
.elementor-widget-kst-hero-carousel > .elementor-widget-container,
.kst-hero-carousel,
.kst-hero-carousel__slides {
	width: 100%;
}

.kst-hero-carousel {
	display: block !important;
	padding: 0 !important;
	position: relative;
}

.kst-hero-carousel__slide {
	display: none;
	min-height: 680px;
	padding: 70px 74px;
	align-items: center;
	box-sizing: border-box;
	isolation: isolate;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.kst-hero-carousel__background,
.kst-hero-carousel__overlay {
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.kst-hero-carousel__background {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: -2;
}

.kst-hero-carousel__overlay {
	background-image: linear-gradient(90deg, rgba(12, 7, 10, 0.68) 0%, rgba(12, 7, 10, 0.28) 46%, rgba(12, 7, 10, 0) 78%);
	z-index: -1;
}

.kst-hero-carousel__slide.is-active {
	display: flex;
}

.kst-hero-carousel__slide .kst-el-hero-copy {
	width: 48%;
}

.kst-hero-carousel__slide .kst-el-hero-visual {
	align-items: center;
	display: flex;
	justify-content: center;
	width: 52%;
}

.kst-hero-carousel__slide .kst-el-hero-actions {
	display: flex;
}

.kst-hero-carousel__slide .kst-el-primary-button,
.kst-hero-carousel__slide .kst-el-secondary-button {
	text-decoration: none;
}

.kst-hero-carousel__dots {
	align-items: center;
	bottom: 24px;
	display: flex;
	gap: 9px;
	justify-content: center;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	z-index: 8;
}

.kst-hero-carousel__dots button {
	background: rgba(255,255,255,.48);
	border: 0;
	border-radius: 10px;
	cursor: pointer;
	height: 7px;
	padding: 0;
	transition: width .25s ease, background .25s ease;
	width: 7px;
}

.kst-hero-carousel__dots button.is-active {
	background: #fff;
	width: 28px;
}

.kst-hero-carousel__arrow {
	align-items: center;
	backdrop-filter: blur(8px);
	background: rgba(16, 10, 14, 0.44);
	border: 1px solid rgba(255, 255, 255, 0.46);
	border-radius: 50%;
	color: #fff;
	cursor: pointer;
	display: flex;
	height: 44px;
	justify-content: center;
	padding: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: background .2s ease, border-color .2s ease, transform .2s ease;
	width: 44px;
	z-index: 9;
}

.kst-hero-carousel__arrow--prev { left: 14px; }
.kst-hero-carousel__arrow--next { right: 14px; }

/* Elementor's floating Structure/Navigator panel occupies the right edge of
 * the preview iframe. Keep the editor-only next arrow in the visible canvas. */
.elementor-editor-active .kst-hero-carousel__arrow--next {
	right: clamp(240px, 18vw, 300px);
}

.kst-hero-carousel__arrow svg {
	fill: none;
	height: 22px;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
	width: 22px;
}

.kst-hero-carousel__arrow:hover,
.kst-hero-carousel__arrow:focus-visible {
	background: rgba(91, 43, 70, 0.9);
	border-color: #fff;
	outline: none;
	transform: translateY(-50%) scale(1.06);
}

.kst-el-eyebrow p,
.kst-el-section-eyebrow p {
	color: #c8a7b8;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.26em;
	margin: 0 0 18px;
	text-transform: uppercase;
}

.kst-el-hero-title .elementor-heading-title {
	color: #fff;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(64px, 7vw, 118px);
	font-weight: 500;
	letter-spacing: -0.04em;
	line-height: 0.82;
}

.kst-el-hero-description {
	max-width: 620px;
}

.kst-el-hero-description p {
	color: rgba(255, 255, 255, 0.72);
	font-size: 16px;
	line-height: 1.8;
}

.kst-el-hero-price .elementor-heading-title {
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 34px;
	font-variant-numeric: lining-nums tabular-nums;
	font-weight: 600;
	margin-top: 18px;
}

.kst-el-hero-actions {
	gap: 12px;
	margin-top: 16px;
}

.kst-el-primary-button .elementor-button,
.kst-el-secondary-button .elementor-button {
	border: 1px solid #fff;
	border-radius: 0;
	font-size: 12px;
	letter-spacing: 0.08em;
	padding: 17px 28px;
	text-transform: uppercase;
}

.kst-el-primary-button .elementor-button {
	background: #fff;
	color: #271923;
}

.kst-el-secondary-button .elementor-button {
	background: transparent;
	color: #fff;
}

.kst-el-hero-image img {
	filter: drop-shadow(0 38px 28px rgba(0, 0, 0, 0.42));
	height: min(590px, 62vw) !important;
	object-fit: contain;
	object-position: center bottom;
	width: 100%;
}

.kst-el-trust {
	background: #efe8df;
	border-bottom: 1px solid rgba(57, 36, 47, 0.12);
	gap: 0;
}

.kst-el-trust-item {
	border-right: 1px solid rgba(57, 36, 47, 0.16);
	flex: 1 1 25%;
	padding: 8px 28px;
}

.kst-el-trust-item:last-child {
	border-right: 0;
}

.kst-el-trust-title .elementor-heading-title {
	color: #2d1d26;
	font-family: "Montserrat", sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.kst-el-trust-copy p {
	color: #76626d;
	font-size: 11px;
	margin: 4px 0 0;
}

.kst-el-preorders,
.kst-el-collections,
.kst-el-best {
	background: #f7f3ed;
}

.kst-el-section-title .elementor-heading-title {
	color: #2a1a23;
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(42px, 4vw, 66px);
	font-weight: 500;
	letter-spacing: -0.02em;
	line-height: 1;
	text-align: center;
}

.kst-el-section-eyebrow,
.kst-el-section-intro {
	text-align: center;
}

.kst-el-section-intro p {
	color: #77636e;
	font-size: 14px;
	margin: 8px 0 34px;
}

.kst-el-collections-grid,
.kst-el-product-grid {
	gap: 12px;
	margin-top: 40px;
}

.kst-el-series-card {
	background: #24171e;
	flex: 1 1 20%;
	min-width: 0;
	overflow: hidden;
	padding-bottom: 22px;
}

.kst-el-product-card {
	background: #eee6dc;
	border: 1px solid rgba(52, 31, 43, 0.1);
	flex: 1 1 25%;
	min-width: 0;
	padding-bottom: 24px;
}

.kst-el-card-image img {
	display: block;
	height: 370px !important;
	object-fit: cover;
	transition: transform 260ms ease;
	width: 100%;
}

.kst-el-product-card .kst-el-card-image img {
	background: #f4efe9;
	height: 340px !important;
	object-fit: contain;
}

.kst-el-series-card:hover .kst-el-card-image img,
.kst-el-product-card:hover .kst-el-card-image img {
	transform: scale(1.025);
}

.kst-el-card-title .elementor-heading-title,
.kst-el-card-subtitle p {
	margin-left: 20px;
	margin-right: 20px;
}

.kst-el-card-title .elementor-heading-title {
	color: #2a1a23;
	font-family: "Cormorant Garamond", serif;
	font-size: 26px;
	font-weight: 600;
	margin-top: 18px;
}

.kst-el-series-card .kst-el-card-title .elementor-heading-title,
.kst-el-series-card .kst-el-card-subtitle p {
	color: #fff;
}

.kst-el-card-subtitle p {
	color: #77636e;
	font-size: 11px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.kst-el-footer {
	color: #fff;
	gap: 60px;
}

.kst-el-footer-column {
	flex: 1 1 0;
}

.kst-el-footer-title .elementor-heading-title {
	color: #fff;
	font-family: "Cormorant Garamond", serif;
	font-size: 28px;
	font-weight: 600;
}

.kst-el-footer-copy p {
	color: rgba(255, 255, 255, 0.62);
	font-size: 13px;
	line-height: 1.7;
}

.kst-el-footer-link .elementor-button {
	color: rgba(255, 255, 255, 0.72);
	padding: 7px 0;
	text-align: left;
}

@media (max-width: 1024px) {
	.kst-el-header,
	.kst-el-hero,
	.kst-el-trust,
	.kst-el-collections-grid,
	.kst-el-product-grid,
	.kst-el-footer {
		flex-wrap: wrap;
	}
	.kst-el-nav {
		width: 100%;
	}
	.kst-el-hero-copy,
	.kst-el-hero-visual {
		width: 50% !important;
	}
	.kst-el-series-card {
		flex: 1 1 calc(33.333% - 12px);
	}
	.kst-el-product-card {
		flex: 1 1 calc(50% - 12px);
	}
}

@media (max-width: 767px) {
	.kst-el-header {
		padding: 16px 18px !important;
	}
	.kst-el-nav {
		display: flex !important;
		flex-wrap: nowrap !important;
		justify-content: flex-start;
		overflow-x: auto;
		width: 100%;
	}
	.kst-el-nav-link {
		flex: 0 0 auto;
	}
	.kst-el-hero {
		flex-direction: column !important;
		min-height: 0 !important;
		padding: 54px 20px 30px !important;
	}
	.kst-el-hero-copy,
	.kst-el-hero-visual {
		width: 100% !important;
	}
	.kst-el-hero-title .elementor-heading-title {
		font-size: 62px;
	}
	.kst-el-hero-actions,
	.kst-el-trust,
	.kst-el-collections-grid,
	.kst-el-product-grid,
	.kst-el-footer {
		flex-direction: column !important;
	}
	.kst-el-trust-item,
	.kst-el-series-card,
	.kst-el-product-card,
	.kst-el-footer-column {
		flex: 1 1 100%;
		width: 100%;
	}
	.kst-el-trust-item {
		border-bottom: 1px solid rgba(57, 36, 47, 0.16);
		border-right: 0;
		padding: 14px 4px;
	}
	.kst-el-preorders,
	.kst-el-collections,
	.kst-el-best {
		padding: 54px 16px !important;
	}
	.kst-el-card-image img,
	.kst-el-product-card .kst-el-card-image img {
		height: 360px !important;
	}
}

/* Keep this concept page's desktop composition on phones. Real phones use a
 * fixed desktop viewport; zoom mirrors that fit inside Elementor's 360px
 * responsive canvas. */
@media (max-width: 767px) {
	body:is(.page-id-56566,.page-id-55423) .elementor-56566 {
		width: 1440px;
		zoom: 25%;
	}
	body:is(.page-id-56566,.page-id-55423) .kst-el-header,
	body:is(.page-id-56566,.page-id-55423) .kst-el-hero,
	body:is(.page-id-56566,.page-id-55423) .kst-el-trust,
	body:is(.page-id-56566,.page-id-55423) .kst-el-collections-grid,
	body:is(.page-id-56566,.page-id-55423) .kst-el-footer {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
	}
	body:is(.page-id-56566,.page-id-55423) .kst-el-header { padding: 18px 34px !important; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-nav { width: auto; overflow: visible; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-hero { min-height: 680px !important; padding: 70px 74px !important; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-hero-copy { width: 48% !important; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-hero-visual { width: 52% !important; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-hero-actions { flex-direction: row !important; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-hero-title .elementor-heading-title { font-size: 100px; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-hero-image img { height: 590px !important; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-trust-item { flex: 1 1 25%; width: auto; border-right: 1px solid rgba(57,36,47,.16); border-bottom: 0; padding: 8px 28px; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-preorders { padding: 70px 28px !important; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-collections,
	body:is(.page-id-56566,.page-id-55423) .kst-el-best { padding: 82px 32px 90px !important; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-series-card { flex: 1 1 20%; width: auto; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-product-card { flex: 0 0 330px !important; width: 330px !important; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-card-image img,
	body:is(.page-id-56566,.page-id-55423) .kst-el-product-card .kst-el-card-image img { height: 340px !important; }
body:is(.page-id-56566,.page-id-55423) .kst-el-footer-column { flex: 1 1 0; width: auto; }
}

/* Reference-led homepage composition: a warm page canvas containing compact
 * editorial modules instead of full-viewport panels. */
body:is(.page-id-56566,.page-id-55423) {
	/* Keep the same visual proportion at 1366px, 1920px and ultrawide
	 * resolutions. A fixed 1640px cap created excessive side gutters when a
	 * browser used a wide CSS viewport or a non-100% page zoom. */
	--kst-home-content: 94vw;
	--kst-home-inset: 3vw;
	background-color: #f4f0e9;
	background-image: url("assets/static/reference/paper-texture-v3.jpg");
	background-repeat: repeat;
	background-size: 1024px 1024px;
	overflow-x: hidden;
	overflow-x: clip;
}

body:is(.page-id-56566,.page-id-55423) .elementor-56566 {
	padding-bottom: 24px;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-header {
	width: 100% !important;
	max-width: none !important;
	min-height: 86px;
	margin: 0 !important;
	padding-left: 36px !important;
	padding-right: 36px !important;
	padding-inline: max(var(--kst-home-inset), calc((100vw - var(--kst-home-content)) / 2)) !important;
	background: rgba(249, 246, 241, 0.94);
	box-shadow: none;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-header {
	display: grid !important;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	column-gap: clamp(22px, 2.2vw, 42px);
}

body:is(.page-id-56566,.page-id-55423) .kst-el-brand {
	justify-self: start;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-nav {
	width: auto !important;
	justify-self: start;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-nav > .e-con-inner {
	justify-content: flex-start;
	flex-wrap: nowrap;
}

.kst-home-quick-links {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.kst-home-quick-links a {
	padding: 12px 13px;
	color: #2d1d26;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .08em;
	text-decoration: none;
	text-transform: uppercase;
}

.kst-home-quick-links a:hover {
	color: #6a304f;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-header-actions-widget {
	width: auto;
	justify-self: end;
}

.kst-home-header-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 14px;
	white-space: nowrap;
}

.kst-language-dropdown { position: relative; z-index: 40; }
.kst-language-dropdown summary {
	min-width: 144px;
	height: 38px;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 0 12px;
	border: 1px solid rgba(50, 26, 42, .24);
	border-radius: 999px;
	background: rgba(255, 255, 255, .9);
	color: #3e2935;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .04em;
	list-style: none;
	cursor: pointer;
}
.kst-language-dropdown summary::-webkit-details-marker { display: none; }
.kst-language-dropdown summary img, .kst-language-dropdown__menu img { width: 22px; height: 15px; display: block; border-radius: 2px; box-shadow: 0 0 0 1px rgba(0, 0, 0, .12); object-fit: cover; }
.kst-language-dropdown__chevron { width: 7px; height: 7px; margin-left: auto; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .18s ease; }
.kst-language-dropdown[open] .kst-language-dropdown__chevron { transform: translateY(2px) rotate(225deg); }
.kst-language-dropdown__menu {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	width: 178px;
	display: grid;
	gap: 3px;
	padding: 7px;
	border: 1px solid rgba(50, 26, 42, .16);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 16px 38px rgba(48, 25, 39, .18);
}
.kst-language-dropdown__menu a { display: flex; align-items: center; gap: 10px; min-height: 38px; padding: 0 10px; border-radius: 7px; color: #493842; font-size: 11px; font-weight: 600; text-decoration: none; }
.kst-language-dropdown__menu a:hover, .kst-language-dropdown__menu a[aria-current="true"] { background: #f2e9ee; color: var(--kst-plum); }

.kst-home-header-actions__divider {
	width: 1px;
	height: 24px;
	background: rgba(50, 26, 42, .2);
}

.kst-home-header-actions__rewards,
.kst-home-header-actions__account,
.kst-home-header-actions__cart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	color: #33222b;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .06em;
	text-decoration: none;
	text-transform: uppercase;
}

.kst-home-header-actions__rewards:hover,
.kst-home-header-actions__account:hover {
	color: var(--kst-plum);
}

.kst-home-header-actions__cart {
	gap: 8px;
	padding: 0 11px;
	border: 1px solid var(--kst-plum);
	border-radius: 3px;
}

.kst-home-header-actions__cart span {
	min-width: 17px;
	height: 17px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	background: var(--kst-plum);
	color: #fff;
	font-size: 8px;
}

@media (max-width: 1180px) and (min-width: 768px) {
	body:is(.page-id-56566,.page-id-55423) .kst-el-header {
		grid-template-columns: auto minmax(0, 1fr) auto;
		column-gap: 10px;
		padding-inline: 18px !important;
	}
	body:is(.page-id-56566,.page-id-55423) .kst-el-brand .elementor-heading-title { width: 58px; height: 64px; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-nav-link .elementor-button,
	body:is(.page-id-56566,.page-id-55423) .kst-home-quick-links a { padding: 10px 6px; font-size: 9px; letter-spacing: .055em; }
	.kst-home-quick-links { gap: 0; }
	.kst-home-header-actions { gap: 6px; }
	.kst-home-header-actions .kst-product-search { width: 150px; min-width: 150px; flex-basis: 150px; }
	.kst-home-header-actions .kst-product-search__form input[type="search"] { height: 36px; padding-inline: 9px; font-size: 9px; }
	.kst-home-header-actions .kst-product-search__form button { min-height: 36px; padding-inline: 9px; font-size: 8px; }
	.kst-language-dropdown summary { min-width: 108px; height: 36px; padding-inline: 9px; }
	.kst-home-header-actions__divider { display: none; }
	.kst-home-header-actions__rewards,
	.kst-home-header-actions__account,
	.kst-home-header-actions__cart { min-height: 34px; font-size: 8.5px; letter-spacing: .035em; }
	.kst-home-header-actions__cart { gap: 5px; padding-inline: 7px; }
}

body:is(.page-id-56566,.page-id-55423) .kst-el-preorders {
	width: calc(100% - 72px) !important;
	max-width: 1640px !important;
	width: min(calc(100% - (2 * var(--kst-home-inset))), var(--kst-home-content)) !important;
	max-width: var(--kst-home-content) !important;
	margin: 0 auto 20px !important;
	padding: 0 !important;
	border: 1px solid rgba(57, 36, 47, 0.14);
	border-radius: 14px;
	background: rgba(248, 244, 238, 0.72);
	box-shadow: 0 12px 30px rgba(56, 38, 46, 0.05);
	overflow: hidden;
}

/* Group-order internals are owned by the preorder plugin, matching its editor preview. */

body:is(.page-id-56566,.page-id-55423) .elementor-widget-kst-service-strip {
	width: calc(100% - 72px) !important;
	max-width: 1640px !important;
	width: min(calc(100% - (2 * var(--kst-home-inset))), var(--kst-home-content)) !important;
	max-width: var(--kst-home-content) !important;
	margin: 0 auto 20px !important;
}

body:is(.page-id-56566,.page-id-55423) .kst-service-strip {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0;
	gap: clamp(14px, 1.5vw, 24px);
	border: 0;
	background: transparent;
	box-shadow: none;
}

body:is(.page-id-56566,.page-id-55423) .kst-service-strip__item {
	display: block;
	min-height: 272px;
	padding: 42px clamp(24px, 3vw, 52px) 36px;
	border: 1px solid rgba(57, 36, 47, 0.14);
	border-radius: 14px;
	background: rgba(238, 230, 220, 0.92);
	box-shadow: 0 10px 24px rgba(56, 38, 46, 0.05);
	text-align: center;
}

body:is(.page-id-56566,.page-id-55423) .kst-service-strip__item:last-child {
	border-right: 1px solid rgba(57, 36, 47, 0.14);
}

body:is(.page-id-56566,.page-id-55423) .kst-service-strip__icon {
	width: 64px;
	height: 58px;
	margin: 0 auto 18px;
	color: var(--kst-plum);
}

body:is(.page-id-56566,.page-id-55423) .kst-service-strip__icon svg {
	width: 56px;
	height: 56px;
}

body:is(.page-id-56566,.page-id-55423) .kst-service-strip__paypal {
	min-width: 64px;
	height: 42px;
	border-color: var(--kst-plum);
	background: #fff;
	color: var(--kst-plum);
	font-size: 14px;
}

body:is(.page-id-56566,.page-id-55423) .kst-service-strip h3 {
	margin: 0 0 18px;
	color: var(--kst-ink);
	font-family: "KST Bodoni", serif;
	font-size: 30px;
	font-weight: 600;
	letter-spacing: 0.01em;
}

body:is(.page-id-56566,.page-id-55423) .kst-service-strip p {
	color: var(--kst-muted);
	font-size: 15px;
	line-height: 1.75;
}

body:is(.page-id-56566,.page-id-55423) .elementor-widget-kst-hero-carousel {
	width: calc(100% - 72px) !important;
	max-width: 1640px !important;
	width: min(calc(100% - (2 * var(--kst-home-inset))), var(--kst-home-content)) !important;
	max-width: var(--kst-home-content) !important;
	margin: 0 auto 20px !important;
}

body:is(.page-id-56566,.page-id-55423) .elementor-widget-kst-hero-carousel > .elementor-widget-container {
	padding: 0;
	background: transparent;
}

body:is(.page-id-56566,.page-id-55423) .kst-hero-carousel {
	width: 100% !important;
	max-width: none !important;
	aspect-ratio: 9 / 4;
	margin: 0 !important;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.24);
	border-radius: clamp(14px, 1.25vw, 22px);
	background: #120d11;
	box-shadow: 0 18px 42px rgba(39, 25, 32, 0.12);
}

body:is(.page-id-56566,.page-id-55423) .kst-hero-carousel__slide,
body.admin-bar:is(.page-id-56566,.page-id-55423) .kst-hero-carousel__slide {
	height: 100%;
	min-height: 0;
	padding: 4.3vw;
}

body:is(.page-id-56566,.page-id-55423) .kst-hero-carousel__slides {
	height: 100%;
}

body:is(.page-id-56566,.page-id-55423) .kst-hero-carousel__slide .kst-el-hero-copy {
	width: 46%;
	max-width: 650px;
	padding-right: clamp(18px, 2vw, 38px);
}

body:is(.page-id-56566,.page-id-55423) .kst-hero-carousel__slide .kst-el-hero-visual {
	height: 100%;
	width: 54%;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-hero-title .elementor-heading-title {
	font-size: clamp(58px, 5.8vw, 96px);
	line-height: 0.88;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-hero-description p {
	font-size: 14px;
	line-height: 1.7;
}

body:is(.page-id-56566,.page-id-55423) .kst-hero-carousel__slide .kst-el-hero-image img {
	height: 37vw !important;
	max-height: none !important;
}

body:is(.page-id-56566,.page-id-55423) .kst-hero-carousel__arrow--prev { left: 16px; }
body:is(.page-id-56566,.page-id-55423) .kst-hero-carousel__arrow--next { right: 16px; }

body:is(.page-id-56566,.page-id-55423) .kst-el-collections,
body:is(.page-id-56566,.page-id-55423) .kst-el-best {
	width: calc(100% - 72px) !important;
	max-width: 1640px !important;
	width: min(calc(100% - (2 * var(--kst-home-inset))), var(--kst-home-content)) !important;
	max-width: var(--kst-home-content) !important;
	margin: 0 auto 20px !important;
	padding: clamp(30px, 3vw, 48px) clamp(12px, 1.5vw, 24px) clamp(28px, 3vw, 46px) !important;
	border: 1px solid rgba(57, 36, 47, 0.08);
	border-radius: 12px;
	background: rgba(250, 248, 244, 0.7);
	box-shadow: 0 10px 28px rgba(56, 38, 46, 0.045);
}

body:is(.page-id-56566,.page-id-55423) .kst-el-section-title .elementor-heading-title {
	font-size: clamp(34px, 3vw, 48px);
	letter-spacing: 0.01em;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-section-eyebrow p {
	margin-bottom: 10px;
	font-size: 9px;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-section-intro p {
	max-width: 640px;
	margin: 8px auto 22px;
	font-size: 12px;
	line-height: 1.6;
}

body:is(.page-id-56566,.page-id-55423) .kst-category-marquee {
	margin-top: 26px;
}

body:is(.page-id-56566,.page-id-55423) .kst-category-card {
	--kst-category-width: clamp(190px, 18vw, 280px);
	border-radius: 5px;
}

body:is(.page-id-56566,.page-id-55423) .kst-category-card img {
	height: clamp(190px, 17vw, 270px);
}

body:is(.page-id-56566,.page-id-55423) .kst-category-card h3 {
	padding: 20px 18px 0;
	font-size: 21px;
}

body:is(.page-id-56566,.page-id-55423) .kst-category-card p {
	min-height: 50px;
	padding: 15px 18px;
	font-size: 9px;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-product-grid {
	margin-top: 26px;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-product-card {
	flex-basis: clamp(210px, 18vw, 286px) !important;
	width: clamp(210px, 18vw, 286px) !important;
	border: 0;
	background: transparent;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-product-card .kst-el-card-image .elementor-widget-container,
body:is(.page-id-56566,.page-id-55423) .kst-el-product-card .kst-el-card-image img {
	height: clamp(210px, 17vw, 276px) !important;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-product-card .kst-el-card-title .elementor-heading-title {
	font-size: 20px;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-batch-card {
	flex: 0 0 clamp(210px, 18vw, 286px) !important;
	width: clamp(210px, 18vw, 286px) !important;
	padding-bottom: 16px;
	border-color: rgba(52, 31, 43, 0.08);
	background: rgba(239, 234, 228, 0.7);
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-batch-card img {
	height: clamp(210px, 17vw, 270px);
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-batch-card h3 {
	display: -webkit-box;
	height: 42px;
	margin: 14px 14px 0;
	overflow: hidden;
	font-size: 16px;
	line-height: 1.3;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-batch-card__price {
	display: block;
	margin: 9px 14px 0;
	color: var(--kst-plum);
	font-family: "Montserrat", sans-serif;
	font-size: 15px;
	font-weight: 600;
	font-variant-numeric: lining-nums tabular-nums;
	line-height: 1.1;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-batch-card p {
	margin: 8px 14px 0;
	font-size: 9px;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-sellers-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 18px 14px;
	width: 100%;
	margin-top: 26px;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-sellers-grid > :nth-child(n + 21) {
	display: none !important;
}

body:is(.page-id-56566,.page-id-55423) .kst-product-grid-more {
	display: flex;
	align-items: center;
	justify-content: center;
	width: max-content;
	min-width: 190px;
	min-height: 52px;
	margin: 26px auto 0;
	padding: 0 34px;
	border: 1px solid var(--kst-plum);
	border-radius: 999px;
	background: var(--kst-plum);
	color: #fff;
	font: 600 14px/1 "KST Manrope", sans-serif;
	letter-spacing: .06em;
	text-decoration: none;
}

body.kst-mobile-device:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-sellers-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.kst-mobile-device:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-sellers-grid > :nth-child(n + 10) {
	display: none !important;
}

body.kst-mobile-device:is(.page-id-56566,.page-id-55423) .kst-product-grid-more {
	display: flex;
	width: min(100%, 280px);
	min-height: 58px;
	padding-inline: 38px;
	font-size: 16px;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	border: 1px solid rgba(50, 26, 42, 0.12);
	border-radius: 10px;
	background: rgba(246, 241, 235, 0.92);
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card:hover {
	border-color: rgba(50, 26, 42, 0.28);
	box-shadow: 0 14px 30px rgba(50, 26, 42, 0.1);
	transform: translateY(-2px);
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__image {
	position: relative;
	display: block;
	aspect-ratio: 4 / 5;
	overflow: hidden;
	background: #eee8e1;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
	object-position: var(--kst-best-x, 50%) var(--kst-best-y, 0%);
	transform: scale(var(--kst-best-scale, 1));
	transform-origin: var(--kst-best-x, 50%) var(--kst-best-y, 0%);
	transition: transform 260ms ease;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__image[data-image-fit="contain"] img {
	object-fit: contain;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card:hover .kst-best-seller-card__image img {
	transform: scale(calc(var(--kst-best-scale, 1) * 1.025));
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__rank {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 1;
	padding: 5px 8px;
	border-radius: 999px;
	background: rgba(50, 26, 42, 0.92);
	color: #fff;
	font: 600 10px/1 "KST Manrope", sans-serif;
	letter-spacing: 0.08em;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 15px 16px 17px;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card h3 {
	display: -webkit-box;
	height: 44px;
	margin: 0;
	overflow: hidden;
	font: 600 15px/1.45 "KST Manrope", "Montserrat", sans-serif;
	letter-spacing: -.01em;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-batch-card h3,
body:is(.page-id-56566,.page-id-55423) .kst-el-product-card .kst-el-card-title .elementor-heading-title {
	font-family: "KST Manrope", "Montserrat", sans-serif;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: -.01em;
	text-transform: none;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card h3 a {
	color: var(--kst-ink);
	text-decoration: none;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__category {
	min-height: 14px;
	margin-top: 9px;
	overflow: hidden;
	color: #83737b;
	font: 600 9px/1.4 "KST Manrope", sans-serif;
	letter-spacing: 0.08em;
	text-overflow: ellipsis;
	text-transform: uppercase;
	white-space: nowrap;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__category a {
	color: inherit;
	text-decoration: none;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__price {
	min-height: 20px;
	margin-top: 10px;
	color: var(--kst-plum);
	font: 600 16px/1.25 "KST Manrope", sans-serif;
	font-variant-numeric: lining-nums tabular-nums;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__price del {
	margin-right: 6px;
	color: #94868d;
	font-size: 12px;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__price ins {
	text-decoration: none;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	margin-top: auto;
	padding-top: 15px;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__button,
body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__button.button {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	margin: 0;
	padding: 9px 8px;
	border: 1px solid var(--kst-plum);
	border-radius: 4px;
	box-shadow: none;
	font: 700 10px/1.25 "KST Manrope", sans-serif;
	letter-spacing: 0.04em;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: background 160ms ease, color 160ms ease, border-color 160ms ease;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__button--buy {
	background: var(--kst-plum);
	color: #fff;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__button--cart,
body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__button--cart.button {
	background: transparent;
	color: var(--kst-plum);
}

body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__button:hover,
body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-seller-card__button:focus-visible {
	border-color: #140d12;
	background: #140d12;
	color: #fff;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-footer {
	display: none !important;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-world-locations {
	width: min(calc(100% - (2 * var(--kst-home-inset))), var(--kst-home-content)) !important;
	max-width: var(--kst-home-content) !important;
	margin: 0 auto 20px !important;
	padding: 0 !important;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-world-locations > .elementor-element,
body:is(.page-id-56566,.page-id-55423) .kst-el-world-locations .elementor-widget-container {
	width: 100%;
}

body:is(.page-id-56566,.page-id-55423) .kst-el-world-locations > .e-con-inner {
	width: 100% !important;
	max-width: none !important;
}

.kst-world-locations {
	position: relative;
	overflow: hidden;
	padding: clamp(48px, 4.6vw, 78px) clamp(28px, 4vw, 68px) clamp(38px, 4vw, 66px);
	border: 1px solid rgba(224, 188, 115, .24);
	border-radius: 16px;
	background:
		radial-gradient(circle at 68% 42%, rgba(105, 59, 84, .46), transparent 34%),
		linear-gradient(145deg, #160e15 0%, #261520 52%, #120b11 100%);
	box-shadow: 0 18px 42px rgba(39, 25, 32, .13);
	color: #fff;
}

.kst-world-locations::before {
	content: "";
	position: absolute;
	inset: 12px;
	border: 1px solid rgba(255, 255, 255, .08);
	border-radius: 10px;
	pointer-events: none;
}

.kst-world-locations__header {
	position: relative;
	z-index: 2;
	text-align: center;
}

.kst-world-locations__header span {
	display: block;
	margin-bottom: 9px;
	color: #d7b66e;
	font: 600 9px/1 "KST Manrope", sans-serif;
	letter-spacing: .24em;
}

.kst-world-locations__header h2 {
	margin: 0;
	font: 500 clamp(38px, 3.5vw, 58px)/1 "KST Bodoni", serif;
	letter-spacing: .04em;
}

.kst-world-locations__header p {
	margin: 12px 0 0;
	color: rgba(255, 255, 255, .62);
	font: 400 12px/1.6 "KST Manrope", sans-serif;
	letter-spacing: .04em;
}

.kst-world-locations__map {
	position: relative;
	z-index: 1;
	width: min(100%, 1320px);
	margin: 18px auto 0;
}

.kst-world-locations__map svg {
	display: block;
	width: 100%;
	height: auto;
}

.kst-world-locations__grid {
	fill: none;
	stroke: rgba(255, 255, 255, .085);
	stroke-width: 1;
}

.kst-world-locations__land {
	fill: rgba(236, 225, 214, .19);
	stroke: rgba(244, 223, 183, .34);
	stroke-width: 1.2;
	stroke-linejoin: round;
}

.kst-world-locations__routes {
	fill: none;
	stroke: rgba(215, 182, 110, .42);
	stroke-width: 1.5;
	stroke-dasharray: 5 7;
}

.kst-map-location > path {
	fill: none;
	stroke: rgba(255, 222, 148, .72);
	stroke-width: 1.4;
}

.kst-map-location rect {
	fill: rgba(24, 13, 21, .9);
	stroke: rgba(224, 188, 115, .62);
	stroke-width: 1;
}

.kst-map-location text {
	fill: #fff4dc;
	font: 600 12px/1 "KST Manrope", sans-serif;
	letter-spacing: .04em;
	text-anchor: middle;
}

.kst-map-location__halo {
	fill: rgba(224, 188, 115, .18);
	stroke: #e0bc73;
	stroke-width: 1;
	transform-box: fill-box;
	transform-origin: center;
	animation: kst-map-pulse 2.4s ease-out infinite;
}

.kst-map-location__pin {
	fill: #f4cf7d;
	filter: url(#kst-pin-glow);
}

@keyframes kst-map-pulse {
	0%, 30% { opacity: .95; transform: scale(.55); }
	80%, 100% { opacity: .08; transform: scale(1.35); }
}

@media (prefers-reduced-motion: reduce) {
	.kst-map-location__halo { animation: none; }
}

/* Real map overrides the retired illustrated SVG treatment. */
.kst-world-locations { padding:clamp(32px,3vw,48px); background:radial-gradient(circle at 70% 30%,rgba(105,59,84,.34),transparent 38%),linear-gradient(145deg,#160e15 0%,#21131c 58%,#120b11 100%); }
.kst-world-locations__header { display:flex; align-items:end; justify-content:space-between; gap:40px; width:min(100%,1400px); margin:0 auto 24px; text-align:left; }
.kst-world-locations__header h2 { font-size:clamp(34px,2.7vw,48px); }
.kst-world-locations__header p { max-width:410px; margin:0 0 2px; text-align:right; }
.kst-world-locations__map-shell { position:relative; z-index:1; overflow:hidden; width:min(100%,1400px); margin:0 auto; border:1px solid rgba(224,188,115,.22); border-radius:12px; background:#120e13; }
.kst-world-locations__map { position:relative; width:100%; height:500px; aspect-ratio:auto; margin:0; background:#120e13; }
.kst-world-locations__map > img { display:block; width:100%; height:100%; object-fit:fill; opacity:.62; filter:invert(1) sepia(.28) saturate(.7) hue-rotate(292deg) brightness(.72) contrast(1.34); }
.kst-map-pin { position:absolute; z-index:3; top:var(--map-y); left:var(--map-x); transform:translate(-50%,-50%); }
.kst-map-pin i { display:block; width:11px; height:11px; border:2px solid #ffe3a0; border-radius:50%; background:#e8b852; box-shadow:0 0 0 7px rgba(232,184,82,.12),0 0 24px rgba(232,184,82,.9); }
.kst-map-pin span { position:absolute; left:17px; top:50%; transform:translateY(-50%); min-width:max-content; padding:7px 11px; border:1px solid rgba(224,188,115,.58); border-radius:999px; background:rgba(20,12,18,.92); color:#fff3d7; font:600 11px/1 "KST Manrope",sans-serif; box-shadow:0 7px 20px rgba(0,0,0,.26); }
.kst-map-pin--california span { left:auto; right:17px; }
.kst-map-pin--hangzhou span { top:-33px; left:12px; }
.kst-map-pin--wuhan span { top:3px; left:25px; }
.kst-map-pin--jiangxi span { top:37px; left:18px; }
.kst-map-pin--vietnam span { top:36px; left:18px; }
.kst-world-locations .leaflet-container { font-family:"KST Manrope",sans-serif; }
.kst-world-locations .leaflet-tile-pane { filter:sepia(.22) saturate(.68) hue-rotate(288deg) brightness(.78) contrast(1.08); }
.kst-world-locations .leaflet-control-zoom a { border-color:rgba(224,188,115,.2); background:rgba(23,13,20,.88); color:#e5c782; }
.kst-world-locations .leaflet-control-attribution { background:rgba(15,10,14,.74); color:rgba(255,255,255,.48); font-size:9px; }
.kst-world-locations .leaflet-control-attribution a { color:#d5b469; }
.kst-world-locations .leaflet-interactive.kst-world-map-pin { filter:drop-shadow(0 0 9px rgba(243,204,114,.92)); }
.kst-world-map-tooltip { padding:8px 11px; border:1px solid rgba(224,188,115,.72); border-radius:8px; background:rgba(22,13,20,.94); box-shadow:0 8px 24px rgba(0,0,0,.28); color:#fff; }
.kst-world-map-tooltip::before { border-top-color:rgba(224,188,115,.72) !important; }
.kst-world-map-tooltip strong,.kst-world-map-tooltip span { display:block; }
.kst-world-map-tooltip strong { font-size:12px; }
.kst-world-map-tooltip span { margin-top:2px; color:rgba(255,255,255,.58); font-size:9px; }
.kst-world-locations__legend { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; width:min(100%,1400px); margin:18px auto 0; padding:0; list-style:none; }
.kst-world-locations__legend li { position:relative; padding:2px 18px 2px 20px; border-right:1px solid rgba(255,255,255,.1); }
.kst-world-locations__legend li:last-child { border-right:0; }
.kst-world-locations__legend i { position:absolute; top:9px; left:0; width:7px; height:7px; border-radius:50%; background:#f3cc72; box-shadow:0 0 12px rgba(243,204,114,.9); }
.kst-world-locations__legend strong,.kst-world-locations__legend small { display:block; }
.kst-world-locations__legend strong { color:#fff; font-size:13px; }
.kst-world-locations__legend small { margin-top:3px; color:rgba(255,255,255,.5); font-size:9px; letter-spacing:.06em; }

@media (max-width: 767px) {
	body:is(.page-id-56566,.page-id-55423) {
		--kst-home-content: 1344px;
		--kst-home-inset: 36px;
	}
	body:is(.page-id-56566,.page-id-55423) .kst-el-header { padding-inline: 34px !important; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-preorders { padding: 0 !important; }
	body:is(.page-id-56566,.page-id-55423) .kst-el-preorders,
	body:is(.page-id-56566,.page-id-55423) .elementor-widget-kst-service-strip,
	body:is(.page-id-56566,.page-id-55423) .elementor-widget-kst-hero-carousel,
	body:is(.page-id-56566,.page-id-55423) .kst-el-collections,
	body:is(.page-id-56566,.page-id-55423) .kst-el-best {
		width: calc(100% - 72px) !important;
	}
	body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-sellers-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	body:is(.page-id-56566,.page-id-55423) .kst-el-best .kst-best-sellers-grid > :nth-child(n + 10) {
		display: none !important;
	}
	body:is(.page-id-56566,.page-id-55423) .kst-product-grid-more {
		display: flex;
		width: min(100%, 280px);
		min-height: 58px;
		padding-inline: 38px;
		font-size: 16px;
	}
	body:is(.page-id-56566,.page-id-55423) .kst-hero-carousel__slide,
	body.admin-bar:is(.page-id-56566,.page-id-55423) .kst-hero-carousel__slide {
		height: 100%;
		min-height: 0;
		padding: 4.3vw;
	}
	body:is(.page-id-56566,.page-id-55423) .kst-hero-carousel__slide .kst-el-hero-image img { height: 37vw !important; }
	body:is(.page-id-56566,.page-id-55423) .kst-home-complete-footer {
		padding: 0;
	}
	body:is(.page-id-56566,.page-id-55423) .kst-home-complete-footer > .kst-footer-inner {
		grid-template-columns: 1fr;
		gap: 34px;
		padding: 52px 28px 28px;
	}
	body:is(.page-id-56566,.page-id-55423) .kst-home-complete-footer .kst-footer-policy-links {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 14px 20px;
	}
	body:is(.page-id-56566,.page-id-55423) .kst-home-complete-footer .kst-footer-brand,
	body:is(.page-id-56566,.page-id-55423) .kst-home-complete-footer .kst-footer-contact,
	body:is(.page-id-56566,.page-id-55423) .kst-home-complete-footer .kst-footer-policy-links,
	body:is(.page-id-56566,.page-id-55423) .kst-home-complete-footer > .kst-footer-inner > small { grid-column: 1; }
}

@media (min-width: 768px) and (max-width: 1050px) {
	body:is(.page-id-56566,.page-id-55423) .kst-home-complete-footer > .kst-footer-inner {
		grid-template-columns: 1.3fr repeat(2, minmax(130px, .7fr));
		gap: 42px;
	}
	body:is(.page-id-56566,.page-id-55423) .kst-home-complete-footer .kst-footer-contact { grid-column: 1 / -1; }
	body:is(.page-id-56566,.page-id-55423) .kst-home-complete-footer .kst-footer-policy-links { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Editable light editorial global network. The base map is the only raster asset. */
body:is(.page-id-56566,.page-id-55423) .kst-world-locations.kst-world-locations--live {
	overflow: visible;
	padding: clamp(44px, 4.3vw, 76px) 0 clamp(34px, 3.5vw, 58px);
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--kst-plum, #3b172d);
}

body:is(.page-id-56566,.page-id-55423) .kst-world-locations.kst-world-locations--live::before {
	display: none;
}

body:is(.page-id-56566,.page-id-55423) .kst-world-live__header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 48px;
	width: min(100%, 1400px);
	margin: 0 auto clamp(18px, 2vw, 30px);
	padding: 0 clamp(18px, 2.3vw, 34px);
}

body:is(.page-id-56566,.page-id-55423) .kst-world-live__header span {
	display: block;
	margin-bottom: 8px;
	color: #b58738;
	font: 700 10px/1 "KST Manrope", sans-serif;
	letter-spacing: .22em;
}

body:is(.page-id-56566,.page-id-55423) .kst-world-live__header h2 {
	margin: 0;
	color: #281923;
	font: 500 clamp(38px, 3.2vw, 58px)/.98 "KST Bodoni", "Noto Serif SC", serif;
	letter-spacing: .02em;
}

body:is(.page-id-56566,.page-id-55423) .kst-world-live__header p {
	max-width: 500px;
	margin: 0 0 4px;
	color: #756970;
	font: 500 13px/1.65 "KST Manrope", "Noto Sans SC", sans-serif;
	letter-spacing: .02em;
	text-align: right;
}

body:is(.page-id-56566,.page-id-55423) .kst-world-live__map {
	position: relative;
	width: min(100%, 1400px);
	aspect-ratio: 1717 / 916;
	margin: 0 auto;
}

body:is(.page-id-56566,.page-id-55423) .kst-world-live__map > img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	opacity: 1;
	filter: none;
}

body:is(.page-id-56566,.page-id-55423) .kst-world-live__dot,
body:is(.page-id-56566,.page-id-55423) .kst-world-live__line,
body:is(.page-id-56566,.page-id-55423) .kst-world-live__label {
	position: absolute;
	z-index: 2;
}

body:is(.page-id-56566,.page-id-55423) .kst-world-live__dot {
	width: 16px;
	height: 16px;
	transform: translate(-50%, -50%);
	border: 2px solid #b98935;
	border-radius: 50%;
	background: #fffaf1;
	box-shadow: 0 0 0 4px rgba(185, 137, 53, .08);
}

body:is(.page-id-56566,.page-id-55423) .kst-world-live__dot::after {
	content: "";
	position: absolute;
	inset: 3px;
	border-radius: inherit;
	background: #b98935;
}

body:is(.page-id-56566,.page-id-55423) .kst-world-live__line {
	height: 1px;
	transform-origin: 0 50%;
	background: linear-gradient(90deg, rgba(181, 132, 47, .92), rgba(181, 132, 47, .45));
}

body:is(.page-id-56566,.page-id-55423) .kst-world-live__line--california::before {
	content: "";
	position: absolute;
	top: -3px;
	left: 0;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #b98935;
}

body:is(.page-id-56566,.page-id-55423) .kst-world-live__label {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: #3b172d;
	font: 700 clamp(13px, 1.05vw, 18px)/1 "KST Manrope", "Noto Sans SC", sans-serif;
	letter-spacing: .02em;
	white-space: nowrap;
}

body:is(.page-id-56566,.page-id-55423) .kst-world-live__label:not(.kst-world-live__label--california)::before {
	content: "";
	display: inline-block;
	width: 7px;
	height: 7px;
	margin: 0 14px 2px 0;
	border-radius: 50%;
	background: #b98935;
}

body:is(.page-id-56566,.page-id-55423) .kst-world-live__dot--california { left: 18.1%; top: 41.4%; }
body:is(.page-id-56566,.page-id-55423) .kst-world-live__line--california { display: none; }
body:is(.page-id-56566,.page-id-55423) .kst-world-live__label--california { left: 13.5%; top: 34.3%; }

body:is(.page-id-56566,.page-id-55423) .kst-world-live__dot--hangzhou { left: 73.7%; top: 41.4%; }
body:is(.page-id-56566,.page-id-55423) .kst-world-live__line--hangzhou { left: 73.7%; top: 41.4%; width: 19.6%; transform: rotate(-12deg); }
body:is(.page-id-56566,.page-id-55423) .kst-world-live__label--hangzhou { right: 2.9%; top: 31.6%; }

body:is(.page-id-56566,.page-id-55423) .kst-world-live__dot--wuhan { left: 72.1%; top: 45.9%; }
body:is(.page-id-56566,.page-id-55423) .kst-world-live__line--wuhan { left: 72.1%; top: 45.9%; width: 21.2%; }
body:is(.page-id-56566,.page-id-55423) .kst-world-live__label--wuhan { right: 2.9%; top: 43.7%; }

body:is(.page-id-56566,.page-id-55423) .kst-world-live__dot--jiangxi { left: 73.5%; top: 49.8%; }
body:is(.page-id-56566,.page-id-55423) .kst-world-live__line--jiangxi { left: 73.5%; top: 49.8%; width: 19.8%; transform: rotate(1.5deg); }
body:is(.page-id-56566,.page-id-55423) .kst-world-live__label--jiangxi { right: 2.9%; top: 49%; }

body:is(.page-id-56566,.page-id-55423) .kst-world-live__dot--vietnam { left: 69.3%; top: 52.7%; }
body:is(.page-id-56566,.page-id-55423) .kst-world-live__line--vietnam { left: 69.3%; top: 52.7%; width: 23.5%; transform: rotate(8deg); }
body:is(.page-id-56566,.page-id-55423) .kst-world-live__label--vietnam { right: 4.7%; top: 58.8%; }

@media (max-width: 767px) {
	body:is(.page-id-56566,.page-id-55423) .kst-world-locations.kst-world-locations--live { padding-top: 42px; }
	body:is(.page-id-56566,.page-id-55423) .kst-world-live__header { gap: 28px; padding-inline: 22px; }
	body:is(.page-id-56566,.page-id-55423) .kst-world-live__header p { max-width: 420px; font-size: 12px; }
	body:is(.page-id-56566,.page-id-55423) .kst-world-live__label { padding: 4px 7px; }
}

/* One-row homepage member offers, between the hero carousel and group orders. */
body:is(.page-id-56566,.page-id-55423) .kst-home-promotions {
	width: min(calc(100% - (2 * var(--kst-home-inset))), var(--kst-home-content));
	margin: 20px auto 0;
	border: 1px solid rgba(92, 65, 77, .14);
	background: rgba(252, 249, 244, .96);
	color: #3a172c;
}

body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__inner {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr)) repeat(2, minmax(0, 1.08fr));
	min-height: 142px;
}

body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__item {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 22px;
	min-width: 0;
	padding: 27px 24px;
	border-right: 1px solid rgba(185, 137, 53, .46);
	color: inherit;
	text-decoration: none;
	transition: background-color 180ms ease, color 180ms ease;
}

body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__item:last-child { border-right: 0; }

body:is(.page-id-56566,.page-id-55423) a.kst-home-promotions__item:hover,
body:is(.page-id-56566,.page-id-55423) a.kst-home-promotions__item:focus-visible {
	background: #f6eee5;
	color: #2d1022;
	outline: 0;
}

body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__icon {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 58px;
	height: 58px;
	color: #ba8d3d;
	font-size: 43px;
	line-height: 1;
}

body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__copy {
	display: grid;
	gap: 8px;
	min-width: 0;
}

body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__copy strong,
body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__copy small { display: block; }

body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__copy strong {
	font: 700 20px/1.12 "KST Manrope", "Noto Sans SC", sans-serif;
	letter-spacing: .02em;
	white-space: nowrap;
}

body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__copy small {
	color: #71646a;
	font: 500 12px/1.2 "KST Manrope", "Noto Sans SC", sans-serif;
	letter-spacing: .03em;
	white-space: nowrap;
}

body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__item.is-discount .kst-home-promotions__copy strong {
	font: 500 clamp(28px, 1.75vw, 34px)/1 "KST Bodoni", "Noto Serif SC", serif;
	letter-spacing: 0;
}

body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__item.is-discount .kst-home-promotions__copy small {
	font-size: 11px;
	font-weight: 600;
}

@media (max-width: 767px) {
	body:is(.page-id-56566,.page-id-55423) .kst-home-promotions { width: calc(100% - 72px); }
	body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__item { gap: 14px; padding-inline: 14px; }
	body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__icon { width: 44px; height: 44px; font-size: 34px; }
	body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__copy strong { font-size: 17px; }
	body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__item.is-discount .kst-home-promotions__copy strong { font-size: 27px; }
}


/* Final selected service/social layout (v0.3.141). Promotion styling above intentionally matches the returned original strip. */

body:is(.page-id-56566,.page-id-55423) .elementor-widget-kst-service-strip > .elementor-widget-container { overflow: hidden; border: 1px solid rgba(185, 137, 53, .24); background: rgba(252, 249, 244, .92); }
body:is(.page-id-56566,.page-id-55423) .kst-service-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; padding: 50px 0 46px; border-bottom: 1px solid rgba(185, 137, 53, .36); background: transparent; }
body:is(.page-id-56566,.page-id-55423) .kst-service-strip__item,
body:is(.page-id-56566,.page-id-55423) .kst-service-strip__item:last-child { min-height: 230px; padding: 8px clamp(28px, 3vw, 54px); border: 0; border-right: 1px solid rgba(185, 137, 53, .38); border-radius: 0; background: transparent; box-shadow: none; }
body:is(.page-id-56566,.page-id-55423) .kst-service-strip__item:last-child { border-right: 0; }
body:is(.page-id-56566,.page-id-55423) .kst-service-strip__icon { margin-bottom: 16px; }
body:is(.page-id-56566,.page-id-55423) .kst-service-strip h3 { margin-bottom: 15px; font-size: clamp(27px, 1.8vw, 32px); font-weight: 500; }
body:is(.page-id-56566,.page-id-55423) .kst-service-strip p { font-size: 16px; line-height: 1.7; }

body:is(.page-id-56566,.page-id-55423) .kst-social-strip { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin: 0; background: transparent; }
body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item { min-height: 214px; padding: 34px 24px 30px; border: 0; border-right: 1px solid rgba(185, 137, 53, .38); border-radius: 0; background: transparent; box-shadow: none; }
body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item:last-child { border-right: 0; }
body:is(.page-id-56566,.page-id-55423) .kst-social-strip__icon,
body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item--tiktok .kst-social-strip__icon,
body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item--youtube .kst-social-strip__icon,
body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item--whatsapp .kst-social-strip__icon { margin-bottom: 14px; color: #3a172c; font-size: 46px; text-shadow: none; }
body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item--instagram .kst-social-strip__icon i { background: none; color: #3a172c; }
body:is(.page-id-56566,.page-id-55423) .kst-social-strip h3 { margin-bottom: 12px; font-size: clamp(24px, 1.7vw, 30px); font-weight: 500; }
body:is(.page-id-56566,.page-id-55423) .kst-social-strip p { font-size: 15px; }

@media (max-width: 767px) {
	body:is(.page-id-56566,.page-id-55423) .kst-service-strip { grid-template-columns: 1fr; padding: 0; }
	body:is(.page-id-56566,.page-id-55423) .kst-service-strip__item,
	body:is(.page-id-56566,.page-id-55423) .kst-service-strip__item:last-child { min-height: 0; padding: 34px 22px 30px; border-right: 0; border-bottom: 1px solid rgba(185, 137, 53, .3); }
	body:is(.page-id-56566,.page-id-55423) .kst-service-strip__item:last-child { border-bottom: 0; }
	body:is(.page-id-56566,.page-id-55423) .kst-social-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item { min-height: 170px; padding: 26px 12px 22px; }
	body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item:nth-child(2) { border-right: 0; }
	body:is(.page-id-56566,.page-id-55423) .kst-social-strip__item:nth-child(-n + 2) { border-bottom: 1px solid rgba(185, 137, 53, .3); }
}

/* Homepage origin categories directly below the group-order storefront. */
body.home .kst-origin-categories {
	width: 100%;
	padding: 46px 64px 54px;
	background: #f6f2ed;
}
body.home .kst-origin-categories__header {
	display: flex;
	min-height: 70px;
	align-items: flex-start;
	justify-content: space-between;
	color: #35232d;
}
body.home .kst-origin-categories__header h2 {
	margin: 0;
	font-family: "KST Bodoni", Georgia, serif;
	font-size: 28px;
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: .025em;
}
body.home .kst-origin-categories__header p {
	margin: 8px 0 0;
	color: #9a7b49;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .28em;
}
body.home .kst-origin-categories__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	height: 450px;
	overflow: hidden;
	background: #140c11;
}
body.home .kst-origin-card {
	position: relative;
	display: block;
	min-width: 0;
	overflow: hidden;
	border-right: 2px solid #f6f2ed;
	background: #070708;
	color: #fff;
	text-decoration: none;
}
body.home .kst-origin-card:last-child { border-right: 0; }
body.home .kst-origin-card > img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: saturate(.98) contrast(1.06);
	transition: transform .35s ease;
}
body.home .kst-origin-card--anime > img {
	object-position: center 40%;
	transform: scale(1.01);
	transform-origin: center center;
}
body.home .kst-origin-card--comics > img { object-position: center 10%; }
body.home .kst-origin-card--chinese > img { object-position: center 38%; }
body.home .kst-origin-card__shade {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(15,8,12,.02) 20%, rgba(15,8,12,.08) 48%, rgba(15,8,12,.86) 100%);
}
body.home .kst-origin-card__copy {
	position: absolute;
	z-index: 2;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	height: 132px;
	align-items: center;
	justify-content: center;
	text-align: center;
}
body.home .kst-origin-card__copy strong,
body.home .kst-origin-card__copy small { display: block; }
body.home .kst-origin-card__copy strong {
	font-size: 30px;
	letter-spacing: .12em;
}
body.home .kst-origin-card__copy small {
	position: relative;
	margin-top: 9px;
	padding-bottom: 18px;
	color: #d9cbd1;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: .22em;
	text-transform: uppercase;
}
body.home .kst-origin-card__copy small::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 34px;
	height: 1px;
	background: #d5a447;
	content: "";
	transform: translateX(-50%);
}
body.home .kst-origin-card__copy i {
	position: absolute;
	right: 26px;
	bottom: 24px;
	color: #d5a447;
	font-size: 20px;
	font-style: normal;
}
body.home .kst-origin-card:hover > img { transform: scale(1.025); }
body.home .kst-origin-card--anime:hover > img { transform: scale(1.045); }
@media (max-width: 767px) {
	body.home .kst-origin-categories { padding: 30px 18px 36px; }
	body.home .kst-origin-categories__header { min-height: 62px; }
	body.home .kst-origin-categories__header h2 { font-size: 24px; }
	body.home .kst-origin-categories__header p { display: none; }
	body.home .kst-origin-categories__grid {
		grid-template-columns: repeat(3, 82vw);
		height: 410px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
	}
	body.home .kst-origin-card {
		border-right-width: 1px;
		scroll-snap-align: start;
	}
}

/* Correct wide-screen composition for homepage origin cards. */
body.home .kst-origin-card::before {
	position: absolute;
	z-index: 0;
	inset: -16px;
	background-image: var(--kst-origin-image);
	background-position: center;
	background-size: cover;
	content: "";
	filter: blur(12px) brightness(.42) saturate(.9);
}
body.home .kst-origin-card > img {
	position: relative;
	z-index: 1;
}
body.home .kst-origin-card--anime > img {
	object-fit: cover;
	object-position: center 40%;
}
body.home .kst-origin-card--comics > img,
body.home .kst-origin-card--chinese > img {
	height: 100%;
	margin-top: 0;
	object-fit: cover;
	object-position: center center;
	transform: scale(1.01);
}
body.home .kst-origin-card__shade { z-index: 2; }
body.home .kst-origin-card__copy { z-index: 3; }
body.home .kst-origin-card__titles {
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
}
body.home .kst-origin-card--comics:hover > img,
body.home .kst-origin-card--chinese:hover > img { transform: scale(1.045); }
/* Let the embedded plugin use the same viewport width as its standalone editor.
 * Keep theme rules away from its grid, images, plinths and responsive carousel. */
body:is(.page-id-56566,.page-id-55423) .kst-el-preorders:has(#kingstudio-preorder-root) {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
/* Contrast panel below white category artwork. */
.kst-category-card h3{background:#24171e;color:#fff}
.kst-category-card p{background:#24171e;color:rgba(255,255,255,.76)}

/* Product detail titles, including future products. */
body.single-product .product_title{ text-transform:uppercase!important; }

/* Original Astra footer layout, extended with partner studios. */
.kst-original-footer{background:#000;border-top:0}
.kst-original-footer__inner{width:min(1800px,100%);grid-template-columns:1fr 1fr 1fr 1.65fr;gap:64px 48px;padding:76px 64px 36px}
.kst-original-footer__column,.kst-original-footer__partners{gap:22px}
.kst-original-footer strong{font-size:22px;margin-bottom:4px;letter-spacing:0}
.kst-original-footer a,.kst-original-footer__partners span{font-size:15px;color:#eee;font-weight:400;line-height:1.5}
.kst-original-footer__column .kst-original-footer__social{margin-top:12px}
.kst-original-footer__social-links{gap:16px}
.kst-original-footer__social-links a{width:18px;height:24px;border:0;border-radius:0;font-size:16px}
.kst-original-footer__social-links a:hover,.kst-original-footer__social-links a:focus-visible{background:transparent;color:#f7bc25}
.kst-original-footer__newsletter{gap:34px}
.kst-original-footer__newsletter input[type="email"],.kst-original-footer__newsletter input[type="text"]{font-size:15px;min-height:46px;border-radius:5px;padding:12px 15px}
.kst-original-footer__newsletter .ff-btn-submit{width:100%;background:#f7bc25!important;color:#fff;font-size:16px;font-weight:400;letter-spacing:.12em;min-height:44px}
.kst-original-footer__newsletter .ff-el-group{margin-bottom:18px}
.kst-original-footer__copyright{border:0;text-align:center;color:#eee;margin-top:18px;font-size:12px;padding-top:24px}
@media(max-width:1100px){.kst-original-footer__inner{grid-template-columns:repeat(2,minmax(0,1fr));padding:56px 32px;gap:48px}}
@media(max-width:600px){.kst-original-footer__inner{grid-template-columns:1fr;padding:44px 24px 28px;gap:36px}.kst-original-footer__newsletter{gap:20px}}

/* Footer aligned with the ivory, plum and muted-gold storefront palette. */
.kst-original-footer{background:#f5f1eb;color:#321b2b;border-top:1px solid #d9c8a8}
.kst-original-footer__inner{width:min(1440px,100%);grid-template-columns:1fr 1fr .9fr 1.45fr;gap:40px 44px;padding:54px 48px 24px}
.kst-original-footer__column,.kst-original-footer__partners{gap:15px}
.kst-original-footer strong{color:#321b2b;font-size:20px;margin-bottom:10px}
.kst-original-footer a,.kst-original-footer__partners span{color:#655961;font-size:14px;line-height:1.65}
.kst-original-footer a:hover,.kst-original-footer a:focus-visible{color:#9d762f}
.kst-original-footer__social-links{gap:10px}
.kst-original-footer__social-links a{width:30px;height:30px;border:1px solid #d9cdbb;border-radius:50%;font-size:13px;color:#48263b}
.kst-original-footer__social-links a:hover,.kst-original-footer__social-links a:focus-visible{border-color:#aa8643;color:#48263b;background:#eee6d9}
.kst-original-footer__newsletter{gap:20px;padding-left:30px;border-left:1px solid #dfd3bf}
.kst-original-footer__newsletter input[type="email"],.kst-original-footer__newsletter input[type="text"]{border:1px solid #d3c5b2;border-radius:3px;background:#fffcf8;color:#321b2b;min-height:46px;font-size:14px}
.kst-original-footer__newsletter input:focus{outline:2px solid #b69254;outline-offset:2px}
.kst-original-footer__newsletter .ff-btn-submit{background:#48263b!important;color:#fffaf4;border-radius:3px;font-size:13px;font-weight:600;letter-spacing:.08em;min-height:44px}
.kst-original-footer__newsletter .ff-btn-submit:hover{background:#60374e!important}
.kst-original-footer__newsletter .ff-el-group{margin-bottom:12px}
.kst-original-footer__copyright{border-top:1px solid #dfd3bf;color:#8a7e82;font-size:11px;margin-top:0;padding-top:20px}
@media(max-width:1100px){.kst-original-footer__inner{grid-template-columns:repeat(2,minmax(0,1fr));padding:44px 32px 24px;gap:36px}.kst-original-footer__newsletter{padding-left:0;border-left:0}}
@media(max-width:600px){.kst-original-footer__inner{grid-template-columns:repeat(2,minmax(0,1fr));padding:36px 24px 22px;gap:30px 22px}.kst-original-footer strong{font-size:18px}.kst-original-footer a,.kst-original-footer__partners span{font-size:13px}.kst-original-footer__newsletter,.kst-original-footer__copyright{grid-column:1/-1}.kst-original-footer__newsletter{border-top:1px solid #dfd3bf;padding-top:26px;gap:14px}}

/* WhatsApp: clear the mobile bottom navigation. */
html body #ht-ctc-chat{bottom:calc(21vh - 25px) !important;right:calc(12.2vw - 25px) !important;}
@media(max-width:767px){html body #ht-ctc-chat{bottom:calc(110px + env(safe-area-inset-bottom,0px)) !important;right:32px !important;}}

/* Keep carousel CTA labels crisp on their solid backgrounds. */
html body .kst-hero-carousel .kst-el-hero-actions,html body .kst-hero-carousel .kst-el-hero-actions *{text-shadow:none !important;}

/* Holographic global network: shared desktop/mobile, editable location copy. */
html body #global-locations.kst-world-holographic{display:grid!important;grid-template-columns:minmax(0,1fr) 23%;background:#020d18!important;color:#edf7ff!important;padding:0!important;overflow:hidden;border-radius:12px;gap:0!important;isolation:isolate}
html body #global-locations.kst-world-holographic .kst-world-holographic__main{min-width:0;padding-top:32px}
html body #global-locations.kst-world-holographic .kst-world-live__header{display:block!important;padding:0 36px!important;margin:0!important;background:none!important}
html body #global-locations.kst-world-holographic .kst-world-live__header span{color:#e6b86c!important;letter-spacing:.3em!important;font:14px/1.6 Arial,sans-serif!important}
html body #global-locations.kst-world-holographic .kst-world-live__header h2{color:#eaf6ff!important;font-family:"KST Product Condensed",'Roboto Condensed',sans-serif!important;font-size:clamp(32px,4vw,76px)!important;line-height:1.12!important;font-weight:500!important;letter-spacing:.1em!important;text-transform:uppercase!important;margin:14px 0 10px!important;text-shadow:0 0 14px #398dc480!important}
html body #global-locations.kst-world-holographic .kst-world-live__header p{color:#a0c8e3!important;font:15px/1.6 Arial,sans-serif!important;letter-spacing:.09em!important;text-align:left!important;max-width:700px!important;margin:0!important}
html body #global-locations.kst-world-holographic .kst-world-live__map{height:auto!important;min-height:0!important;aspect-ratio:auto!important;padding:0!important;margin:0!important;background:none!important;position:relative!important}
html body #global-locations.kst-world-holographic .kst-world-live__map img{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;position:static!important;object-fit:contain!important;transform:none!important;opacity:1!important;filter:none!important}
html body #global-locations.kst-world-holographic .kst-world-holographic__locations{display:flex!important;flex-direction:column;justify-content:center;list-style:decimal!important;margin:32px 0!important;padding:0 28px 0 50px!important;border-left:1px solid #35556b;min-width:0;color:#efc571!important}
html body #global-locations.kst-world-holographic .kst-world-holographic__locations li{display:list-item!important;margin:0!important;padding:30px 0!important;border-bottom:1px solid #35556b;font:22px/1.5 "KST Product Condensed",sans-serif!important}
html body #global-locations.kst-world-holographic .kst-world-holographic__locations li:last-child{border-bottom:0}
html body #global-locations.kst-world-holographic .kst-world-live__label{display:block!important;position:static!important;inset:auto!important;transform:none!important;color:#edf7ff!important;font:clamp(16px,1.5vw,26px)/1.5 Arial,sans-serif!important;letter-spacing:.08em!important;white-space:normal!important;text-shadow:none!important;margin:0!important;padding:0!important;background:none!important}
html body #global-locations.kst-world-holographic .lab-location-list{display:none!important}
@media(max-width:767px){
html body #global-locations.kst-world-holographic{grid-template-columns:minmax(0,1fr)!important}
html body #global-locations.kst-world-holographic .kst-world-holographic__main{padding-top:24px}
html body #global-locations.kst-world-holographic .kst-world-live__header{padding:0 20px!important}
html body #global-locations.kst-world-holographic .kst-world-live__header h2{font-size:32px!important;letter-spacing:.04em!important}
html body #global-locations.kst-world-holographic .kst-world-live__header p{font-size:12px!important;letter-spacing:.03em!important}
html body #global-locations.kst-world-holographic .kst-world-holographic__locations{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px!important;border-left:0;border-top:1px solid #35556b;margin:0 20px 16px!important;padding:8px 0 0 22px!important}
html body #global-locations.kst-world-holographic .kst-world-holographic__locations li{padding:12px 0!important;font-size:16px!important}
html.lab-mobile body.kst-native-lab #global-locations.kst-world-holographic .kst-world-live__label{display:block!important;font-size:14px!important;letter-spacing:.02em!important}
}

html body #global-locations.kst-world-holographic .kst-world-live__label::before,html body #global-locations.kst-world-holographic .kst-world-live__label::after{display:none!important;content:none!important}

html body #global-locations.kst-world-holographic .kst-world-holographic__locations{list-style:none!important;counter-reset:network-node;justify-content:space-evenly!important;margin:36px 0!important;padding:12px clamp(20px,2.2vw,42px)!important;gap:0!important}
html body #global-locations.kst-world-holographic .kst-world-holographic__locations li{counter-increment:network-node;display:flex!important;align-items:center!important;gap:18px!important;padding:24px 0!important;min-width:0;flex:1;border-bottom:1px solid #294353!important}
html body #global-locations.kst-world-holographic .kst-world-holographic__locations li:last-child{border-bottom:0!important}
html body #global-locations.kst-world-holographic .kst-world-holographic__locations li::before{content:counter(network-node,decimal-leading-zero);display:flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;border:1px solid #d7ad62;border-radius:50%;color:#efc977;font:500 18px/1 "KST Product Condensed",sans-serif;box-shadow:0 0 14px #e4ae4e22}
html body #global-locations.kst-world-holographic .kst-world-location-copy{min-width:0}
html body #global-locations.kst-world-holographic .kst-world-live__label{font-size:clamp(16px,1.35vw,24px)!important;letter-spacing:.055em!important;line-height:1.35!important}
html body #global-locations.kst-world-holographic .kst-world-location-copy small{display:block;margin-top:9px;color:#7fa2be;font:10px/1.5 Arial,sans-serif;letter-spacing:.2em}
@media(max-width:767px){
html body #global-locations.kst-world-holographic .kst-world-holographic__locations{margin:0 20px 14px!important;padding:10px 0 0!important;gap:0 16px!important}
html body #global-locations.kst-world-holographic .kst-world-holographic__locations li{gap:10px!important;padding:15px 0!important}
html body #global-locations.kst-world-holographic .kst-world-holographic__locations li::before{flex-basis:30px;width:30px;height:30px;font-size:13px}
html body #global-locations.kst-world-holographic .kst-world-location-copy small{font-size:8px;letter-spacing:.1em;margin-top:5px}
}

/* Keep the five offers in one swipeable row on phones without overflowing the page. */
@media (max-width: 767px) {
 body:is(.page-id-56566,.page-id-55423) .kst-home-promotions { overflow-x: auto; overscroll-behavior-x: contain; }
 body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__inner { min-width: 950px; grid-template-columns: repeat(5, minmax(0, 1fr)); }
 body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__item { gap: 10px; padding: 18px 12px; }
 body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__copy { flex: 1 1 auto; }
 body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__copy strong,
 body:is(.page-id-56566,.page-id-55423) .kst-home-promotions__copy small { white-space: normal; overflow-wrap: anywhere; }
}

/* Translated navigation stays within the phone viewport and remains scrollable. */
@media (max-width: 767px) {
 body:is(.page-id-56566,.page-id-55423) .kst-el-header { grid-template-columns: auto minmax(0, 1fr); }
 body:is(.page-id-56566,.page-id-55423) .kst-el-brand { grid-column: 1; grid-row: 1; }
 body:is(.page-id-56566,.page-id-55423) .kst-el-header-actions-widget { grid-column: 1 / -1; grid-row: 2; width: 100%; min-width: 0; justify-self: stretch; }
 body:is(.page-id-56566,.page-id-55423) .kst-home-header-actions { width: 100%; flex-wrap: wrap; justify-content: flex-start; }
 body:is(.page-id-56566,.page-id-55423) .kst-home-header-actions .kst-product-search { width: 100%; min-width: 0; flex: 1 0 100%; }
 body:is(.page-id-56566,.page-id-55423) .kst-el-nav { grid-column: 1 / -1; grid-row: 3; }
 body:is(.page-id-56566,.page-id-55423) .kst-el-nav { width: 100% !important; min-width: 0 !important; max-width: 100%; overflow: hidden; }
 body:is(.page-id-56566,.page-id-55423) .kst-el-nav > .e-con-inner,
 body:is(.page-id-56566,.page-id-55423) .kst-el-nav .elementor-widget-shortcode { min-width: 0; width: 100%; max-width: 100%; }
 body:is(.page-id-56566,.page-id-55423) .kst-home-quick-links { overflow-x: auto; justify-content: flex-start; overscroll-behavior-x: contain; }
 body:is(.page-id-56566,.page-id-55423) .kst-home-quick-links a { flex: 0 0 auto; }
}
