:root {
	--pc-brand-black: #0b0b0b;
	--pc-brand-gold: #f2c14e;
	--pc-brand-gold-dark: #996b00;
	--pc-surface: #ffffff;
	--pc-surface-muted: #f7f3ea;
	--pc-text: #1a1a1a;
	--pc-text-muted: #686158;
	--pc-border: #d9d2c5;
	--pc-shell: 1280px;
	--pc-gutter: clamp(24px, 3vw, 48px);
	--pc-header-height: 148px;
	--pc-sticky-header-height: 148px;
	--pc-radius-sm: 4px;
	--pc-radius-md: 8px;
	--pc-radius-lg: 12px;
	--pc-shadow-sm: 0 4px 16px rgba(20, 17, 12, 0.06);
	--pc-shadow-md: 0 14px 36px rgba(20, 17, 12, 0.1);
}

/* Shared storefront foundation. Narrow-screen layout overrides are at EOF;
 * desktop-only density adjustments retain their explicit breakpoints. */
@media screen {
	:root {
		--pc-header-height: 140px;
		--pc-sticky-header-height: 140px;
	}

	body.pc-public-page #appCapsule {
		padding-top: calc(var(--pc-header-height) + 24px) !important;
	}

	body.pc-public-page.pc-header-condensed {
		--pc-sticky-header-height: 104px;
	}

	body.pc-public-page.pc-header-condensed #appCapsule {
		padding-top: calc(var(--pc-header-height) + 24px) !important;
	}

	/* Header: stable compact state and usable navigation at 1280px. */
	.pc-header__utility {
		min-height: 26px;
		max-height: 26px;
	}

	.pc-header__utility-inner {
		min-height: 26px;
	}

	.pc-header__main-inner {
		min-height: 70px;
		grid-template-columns: 168px minmax(300px, 1fr) auto;
		gap: 28px;
	}

	.pc-header__nav,
	.pc-header__nav-link {
		min-height: 44px;
	}

	.pc-header__nav-link {
		padding-inline: 14px;
		white-space: nowrap;
	}

	.pc-header.is-condensed .pc-header__utility-inner {
		display: none;
	}

	.pc-header.is-condensed .pc-header__main-inner {
		min-height: 60px;
	}

	.pc-header.is-condensed .pc-header__nav,
	.pc-header.is-condensed .pc-header__nav-link {
		min-height: 44px;
	}

	.pc-mega-menu {
		left: 0;
		width: min(920px, calc(100vw - (var(--pc-gutter) * 2)));
	}

	/* Legacy gradient text made labels transparent on filled buttons. */
	body.pc-public-page #appCapsule .btn-gold,
	body.pc-public-page #appCapsule .btn-grey,
	body.pc-public-page .modal .btn-gold,
	body.pc-public-page .modal .btn-grey {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0 !important;
		background: transparent !important;
		isolation: isolate;
		z-index: auto;
	}

	body.pc-public-page #appCapsule .btn-gold::before,
	body.pc-public-page #appCapsule .btn-grey::before,
	body.pc-public-page .modal .btn-gold::before,
	body.pc-public-page .modal .btn-grey::before {
		display: none !important;
	}

	body.pc-public-page #appCapsule .btn-gold > .btn,
	body.pc-public-page .modal .btn-gold > .btn {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		width: 100%;
		min-height: 48px;
		padding: 11px 20px !important;
		border: 1px solid var(--pc-brand-gold) !important;
		border-radius: 4px !important;
		background: var(--pc-brand-gold) !important;
		background-image: none !important;
		background-clip: border-box !important;
		-webkit-background-clip: border-box !important;
		color: #111111 !important;
		-webkit-text-fill-color: #111111 !important;
		-moz-text-fill-color: #111111 !important;
		font-weight: 750;
		line-height: 1.2;
		text-indent: 0 !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	body.pc-public-page #appCapsule .btn-grey > .btn,
	body.pc-public-page .modal .btn-grey > .btn {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		width: 100%;
		min-height: 48px;
		padding: 11px 20px !important;
		border: 1px solid #746f66 !important;
		border-radius: 4px !important;
		background: #ffffff !important;
		background-image: none !important;
		background-clip: border-box !important;
		-webkit-background-clip: border-box !important;
		color: #302d28 !important;
		-webkit-text-fill-color: #302d28 !important;
		-moz-text-fill-color: #302d28 !important;
		font-weight: 700;
		opacity: 1 !important;
		visibility: visible !important;
	}

	body.pc-public-page #appCapsule .btn:disabled,
	body.pc-public-page #appCapsule .btn.disabled {
		cursor: not-allowed;
		opacity: 0.52 !important;
	}

	.pc-form-label,
	body.pc-public-page #appCapsule .pc-form-label {
		display: block;
		position: static !important;
		width: auto !important;
		height: auto !important;
		padding: 0 !important;
		overflow: visible !important;
		clip: auto !important;
		white-space: normal !important;
		margin: 0 0 8px;
		color: #38332d !important;
		font-size: 13px;
		font-weight: 700;
		line-height: 1.3;
	}

	.pc-auto-page-heading {
		width: min(100%, var(--pc-shell));
		margin: 0 auto 32px;
		padding: 0 0 22px;
	}

	.pc-auto-page-heading > p {
		margin: 0 0 7px;
		color: #805c00 !important;
		font-size: 11px;
		font-weight: 750;
		letter-spacing: 0.14em;
		text-transform: uppercase;
	}

	.pc-auto-page-heading h1 {
		margin: 0;
		color: var(--pc-text) !important;
		font-family: Georgia, "Times New Roman", serif;
		font-size: clamp(36px, 3.4vw, 52px);
		line-height: 1.08;
	}

	img.pc-image-fallback {
		background: linear-gradient(135deg, #f7f3ea, #eee6d6) !important;
		object-fit: contain !important;
	}

	.product-card > img.pc-image-fallback,
	.cart-card img.pc-image-fallback,
	.blog-card img.pc-image-fallback {
		padding: 26px !important;
	}

	/* Home */
	body.pc-page-home[data-page="home"] .bg-home-grey + .wallet-card-section,
	body.pc-page-home[data-page="home"] .wallet-card-section:first-of-type {
		margin-top: 0 !important;
	}

	body.pc-page-home[data-page="home"] .wallet-card-section .carousel::after {
		background: linear-gradient(90deg, rgba(7, 7, 7, 0.9) 0%, rgba(7, 7, 7, 0.66) 43%, rgba(7, 7, 7, 0.12) 75%) !important;
	}

	body.pc-page-home[data-page="home"] .wallet-card-section .carousel-inner,
	body.pc-page-home[data-page="home"] .wallet-card-section .carousel-item,
	body.pc-page-home[data-page="home"] .wallet-card-section .carousel-item img {
		height: clamp(420px, 34vw, 520px) !important;
	}

	body.pc-page-home[data-page="home"] .pc-home-hero-copy {
		left: clamp(32px, 4vw, 62px);
		width: min(470px, 43%);
		padding: 28px 30px;
		border-left: 4px solid var(--pc-brand-gold);
		background: rgba(8, 8, 8, 0.72);
		box-shadow: 0 18px 40px rgba(0, 0, 0, 0.22);
		backdrop-filter: blur(2px);
	}

	body.pc-page-home[data-page="home"] .pc-home-hero-copy h1 {
		font-size: clamp(36px, 3.25vw, 52px);
	}

	body.pc-page-home[data-page="home"] .pc-home-member h2,
	body.pc-page-home[data-page="home"] #appCapsule .pc-home-member h2 {
		color: #ffffff !important;
		-webkit-text-fill-color: #ffffff !important;
	}

	body.pc-page-home[data-page="home"] .pc-home-member p:not(.pc-home-member__eyebrow),
	body.pc-page-home[data-page="home"] #appCapsule .pc-home-member p:not(.pc-home-member__eyebrow) {
		color: rgba(255, 255, 255, 0.78) !important;
	}

	body.pc-page-home[data-page="home"] .pc-home-member__eyebrow,
	body.pc-page-home[data-page="home"] #appCapsule .pc-home-member__eyebrow {
		color: var(--pc-brand-gold) !important;
	}

	body.pc-page-home[data-page="home"] #appCapsule > .section.full,
	body.pc-page-home[data-page="home"] #appCapsule > .pc-home-offers,
	body.pc-page-home[data-page="home"] #appCapsule > .pc-home-member,
	body.pc-page-home[data-page="home"] #appCapsule > .carousel-home-icons {
		width: min(calc(100% - (var(--pc-gutter) * 2)), var(--pc-shell));
		margin-right: auto !important;
		margin-left: auto !important;
	}

	body.pc-page-home[data-page="home"] .splide__track {
		padding: 4px 2px 12px !important;
		overflow: hidden;
	}

	body.pc-page-home[data-page="home"] .splide__arrow {
		width: 42px;
		height: 42px;
		border: 1px solid var(--pc-brand-gold);
		border-radius: 50%;
		background: #171717 !important;
		opacity: 1 !important;
		box-shadow: 0 6px 18px rgba(0, 0, 0, 0.18);
	}

	body.pc-page-home[data-page="home"] .splide__arrow svg {
		fill: #ffffff !important;
	}

	body.pc-page-home[data-page="home"] .carousel-multiple:has(.splide__slide:only-child) .splide__track {
		max-width: 330px;
	}

	body.pc-page-home[data-page="home"] .carousel-multiple:has(.splide__slide:only-child) .splide__arrows {
		display: none;
	}

	body.pc-page-home[data-page="home"] .category-card {
		position: relative;
		overflow: hidden;
	}

	body.pc-page-home[data-page="home"] .category-card::after,
	.pc-page-categories .blog-card.listing::after,
	.pc-page-store-locator .blog-card.shop::after,
	.pc-route-room-branch .blog-card.shop::after {
		position: absolute;
		inset: 38% 0 0;
		background: linear-gradient(transparent, rgba(0, 0, 0, 0.9));
		content: "";
		pointer-events: none;
	}

	body.pc-page-home[data-page="home"] .category-card > span {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 2;
		padding: 36px 18px 16px;
		background: linear-gradient(transparent, rgba(0, 0, 0, 0.92));
		color: #ffffff !important;
		font-size: 16px;
		font-weight: 700;
		line-height: 1.3;
	}

	body.pc-page-home[data-page="home"] img[src*="banner/leaderboard.jpg"] {
		display: block;
		max-height: 280px;
		border-radius: 8px;
		object-fit: cover;
	}

	body.pc-page-home[data-page="home"] .pc-home-journal .blog-card {
		position: relative;
		height: 310px;
		border-radius: 8px;
		background: #171717;
		overflow: hidden;
	}

	body.pc-page-home[data-page="home"] .pc-home-journal .blog-card::after {
		position: absolute;
		inset: 35% 0 0;
		background: linear-gradient(transparent, rgba(0, 0, 0, 0.88));
		content: "";
	}

	body.pc-page-home[data-page="home"] .pc-home-journal .blog-card > img {
		height: 100%;
		object-fit: cover;
	}

	body.pc-page-home[data-page="home"] .pc-home-journal .blog-card .text {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 2;
		padding: 22px;
	}

	body.pc-page-home[data-page="home"] .pc-home-journal .blog-card .title {
		color: #ffffff !important;
		font-size: 18px;
	}

	/* PLP */
	.pc-page-plp .filter-container {
		position: relative;
		top: auto;
		align-self: start;
		max-height: none;
		overflow: visible;
	}

	.pc-page-plp .filter-offcanvas {
		display: none !important;
	}

	.pc-page-plp .filter-container > .input-group,
	.pc-page-plp .filter-container .pc-filter-sort-title,
	.pc-page-plp .filter-container .filter-radio {
		display: none !important;
	}

	.pc-page-plp .filter-container .category-collapse,
	body.pc-public-page.pc-page-plp #appCapsule .filter-container .category-collapse.btn-primary {
		min-height: 48px;
		margin-bottom: 10px !important;
		padding: 9px 0 !important;
		border: 0 !important;
		border-bottom: 1px solid #e8e2d7 !important;
		border-radius: 0 !important;
		background: transparent !important;
		background-image: none !important;
		color: var(--pc-text) !important;
		-webkit-text-fill-color: var(--pc-text) !important;
		box-shadow: none !important;
	}

	.pc-page-plp .filter-container .category-collapse:hover {
		color: #805c00 !important;
	}

	.pc-page-plp .filter-container .btn-gold > .btn {
		border-color: #171717 !important;
		background: #171717 !important;
		color: #ffffff !important;
		-webkit-text-fill-color: #ffffff !important;
	}

	.pc-page-plp .filter-container > div:last-child {
		gap: 10px;
		margin-top: 24px;
	}

	.pc-page-plp .filter-container .filter-apply {
		flex: 1 1 0;
	}

	.pc-page-plp .pc-plp-toolbar label {
		white-space: nowrap;
	}

	.pc-page-plp .product-container {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.pc-page-plp .product-card > img,
	.pc-page-home .product-card > img,
	.pc-route-wishlist .product-card > img {
		width: 100%;
		height: 250px !important;
	}

	/* PDP */
	.pc-pdp-breadcrumb {
		width: min(100%, var(--pc-shell));
		margin: 0 auto 16px;
		color: var(--pc-text-muted);
		font-size: 13px;
	}

	.pc-pdp-breadcrumb a {
		color: #765400;
		text-decoration: none;
	}

	.pc-pdp-breadcrumb span {
		margin-left: 9px;
	}

	.pc-page-pdp .product-detail-section {
		margin-top: 0 !important;
	}

	.pc-page-pdp .product-detail-section .share-container,
	.pc-page-pdp .product-detail-section .wishlist-container {
		top: 18px;
		display: grid;
		place-items: center;
		width: 42px;
		height: 42px;
		border: 1px solid var(--pc-border);
		border-radius: 50%;
		background: #ffffff;
		color: #2b2823;
		box-shadow: var(--pc-shadow-sm);
	}

	.pc-page-pdp .pc-stock-value {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		font-weight: 700;
	}

	.pc-page-pdp .product-detail-section .product-details .price {
		border-color: var(--pc-border) !important;
		background: #ffffff;
		color: var(--pc-text);
	}

	.pc-page-pdp .product-detail-section .product-details .member-price {
		border-color: #b88914 !important;
		background: #171717;
		color: var(--pc-brand-gold);
	}

	.pc-page-pdp .product-detail-section .btn-gold + .btn-gold > .btn,
	.pc-page-pdp .product-detail-section .btn-gold > .buy-now {
		border-color: #171717 !important;
		background: #171717 !important;
		color: #ffffff !important;
		-webkit-text-fill-color: #ffffff !important;
	}

	/* Cart */
	.pc-cart-summary-title {
		margin: 0 0 18px;
		padding-bottom: 16px;
		border-bottom: 1px solid var(--pc-border);
		color: var(--pc-text) !important;
		font-family: Georgia, "Times New Roman", serif;
		font-size: 25px;
		font-weight: 600;
	}

	.pc-page-cart .cart-card .product-quantity {
		display: grid;
		grid-template-columns: 42px 48px 42px;
		border: 1px solid var(--pc-border);
		border-radius: 5px;
		overflow: hidden;
	}

	.pc-page-cart .cart-card .product-quantity button,
	.pc-page-cart .cart-card .product-quantity input {
		width: 100% !important;
		height: 42px;
		border: 0 !important;
		border-radius: 0 !important;
		font-size: 16px;
		font-weight: 700;
		text-align: center;
	}

	.pc-page-cart .cart-card .product-quantity input {
		border-right: 1px solid var(--pc-border) !important;
		border-left: 1px solid var(--pc-border) !important;
	}

	.pc-page-cart .cart-card .product .delete-cart-btn {
		display: grid;
		place-items: center;
		width: 36px;
		height: 36px;
		border-radius: 50%;
		background: #fff1ef;
		font-size: 15px;
	}

	/* Checkout */
	.pc-page-checkout .progressbar {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		padding: 0;
	}

	.pc-page-checkout .progressbar li {
		width: auto;
		font-size: 13px;
		font-weight: 700;
	}

	.pc-page-checkout .progressbar li::before {
		display: grid;
		place-items: center;
		width: 34px;
		height: 34px;
		margin-bottom: 9px;
		border: 2px solid #c9c2b7;
		background: #ffffff;
		color: var(--pc-text-muted);
	}

	.pc-page-checkout .progressbar li.active::before {
		border-color: #171717;
		background: var(--pc-brand-gold);
		color: #111111;
	}

	.pc-page-checkout .branch-selector {
		display: grid !important;
		grid-template-columns: 34px minmax(0, 1fr) 24px;
		gap: 12px !important;
	}

	.pc-page-checkout .branch-selector__copy {
		display: flex;
		flex-direction: column;
		gap: 2px;
	}

	.pc-page-checkout .branch-selector__copy span {
		color: var(--pc-text-muted);
		font-size: 12px;
	}

	.pc-page-checkout .branch-selector__copy strong {
		color: var(--pc-text);
		font-size: 15px;
	}

	.pc-page-checkout .checkout-option .card-body {
		position: relative;
		padding-right: 62px !important;
	}

	.pc-page-checkout .checkout-option .card-body::after {
		position: absolute;
		top: 50%;
		right: 22px;
		display: grid;
		place-items: center;
		width: 22px;
		height: 22px;
		border: 2px solid #bdb6aa;
		border-radius: 50%;
		background: #ffffff;
		content: "";
		transform: translateY(-50%);
	}

	.pc-page-checkout .checkout-option.active .card-body::after {
		border-color: #171717;
		background: var(--pc-brand-gold);
		color: #111111;
		content: "✓";
		font-size: 13px;
		font-weight: 900;
	}

	body.pc-public-page .modalbox {
		z-index: 3000;
		overflow-x: hidden;
		overflow-y: auto;
	}

	body.pc-public-page .modal-backdrop {
		z-index: 2950;
		background: #090806;
	}

	body.pc-public-page .modalbox .modal-dialog,
	body.pc-public-page .modalbox.left_modal .modal-dialog {
		position: relative !important;
		inset: auto !important;
		width: calc(100% - 48px) !important;
		min-width: 0 !important;
		max-width: 720px !important;
		height: auto !important;
		margin: 32px auto !important;
		transform: translateY(14px) !important;
		transition: transform 180ms ease !important;
	}

	body.pc-public-page #ModalAddAddress .modal-dialog {
		max-width: 820px !important;
	}

	body.pc-public-page .modalbox.show .modal-dialog,
	body.pc-public-page .modalbox.left_modal.show .modal-dialog {
		transform: none !important;
	}

	body.pc-public-page .modalbox .modal-dialog .modal-content {
		position: relative !important;
		inset: auto !important;
		max-height: calc(100vh - 64px);
		padding-top: 0 !important;
		border: 1px solid var(--pc-border) !important;
		border-radius: 10px !important;
		background: #ffffff !important;
		background-image: none !important;
		box-shadow: 0 28px 70px rgba(0, 0, 0, 0.34);
		overflow: hidden;
	}

	body.pc-public-page .modalbox .modal-dialog .modal-content .modal-header,
	body.pc-public-page .modal.creditcard-info .modal-dialog .modal-content .modal-header {
		position: relative !important;
		display: flex;
		align-items: center;
		min-height: 66px;
		padding: 16px 22px !important;
		border-bottom: 1px solid var(--pc-border) !important;
		background: #ffffff !important;
		background-image: none !important;
	}

	body.pc-public-page .modalbox .modal-title {
		margin: 0;
		color: var(--pc-text) !important;
		font-family: Georgia, "Times New Roman", serif;
		font-size: 24px;
		font-weight: 600;
	}

	body.pc-public-page .modalbox .close-button {
		position: static !important;
		display: grid;
		place-items: center;
		width: 38px;
		height: 38px;
		margin-left: auto;
		border-radius: 50%;
		background: #f4f0e8;
		color: var(--pc-text) !important;
		font-size: 22px;
	}

	body.pc-public-page .modalbox .modal-dialog .modal-content .modal-body {
		padding: 24px !important;
		background: #fbfaf7;
		color: var(--pc-text) !important;
		overflow: auto;
	}

	body.pc-public-page .creditcard-info .label,
	body.pc-public-page .creditcard-info .form-group .input-wrapper.active label {
		color: #38332d !important;
		font-size: 13px !important;
		font-weight: 700;
	}

	body.pc-public-page .creditcard-info .form-group.basic .form-control {
		height: 48px !important;
		margin: 6px 0 0;
		padding: 8px 36px 8px 14px !important;
		border: 1px solid var(--pc-border) !important;
		border-radius: 4px !important;
		background: #ffffff !important;
		color: var(--pc-text) !important;
	}

	body.pc-public-page .creditcard-info ::placeholder {
		color: #827b70 !important;
	}

	body.pc-public-page #ModalShipTo .shipping-information {
		display: grid;
		grid-template-columns: 32px minmax(0, 1fr) 38px;
		gap: 14px;
		align-items: center;
		color: var(--pc-text);
	}

	body.pc-public-page #ModalShipTo .shipping-information.active {
		padding: 12px;
		border: 1px solid #b88914;
		border-radius: 6px;
		background: #fff9e8;
	}

	body.pc-public-page #ModalShipTo .shipping-information address,
	body.pc-public-page #ModalShipTo .shipping-information .name {
		color: var(--pc-text) !important;
	}

	/* Authentication */
	.pc-route-login #appCapsule,
	.pc-route-forgot-password #appCapsule,
	.pc-route-reset-password #appCapsule {
		width: min(calc(100% - (var(--pc-gutter) * 2)), 560px);
		padding-top: calc(var(--pc-header-height) + 44px) !important;
	}

	.pc-route-register #appCapsule {
		width: min(calc(100% - (var(--pc-gutter) * 2)), 880px);
		padding-top: calc(var(--pc-header-height) + 44px) !important;
	}

	.pc-route-login #appCapsule .card-body,
	.pc-route-forgot-password #appCapsule .card-body,
	.pc-route-reset-password #appCapsule .card-body {
		padding: 30px !important;
	}

	.pc-route-login #appCapsule h1,
	.pc-route-register #appCapsule h1,
	.pc-route-forgot-password #appCapsule h1,
	.pc-route-reset-password #appCapsule h1 {
		background-image: none !important;
		color: var(--pc-text) !important;
		-webkit-text-fill-color: var(--pc-text) !important;
	}

	.pc-route-register #appCapsule .card-body {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 18px 24px;
		padding: 32px !important;
	}

	.pc-route-register #appCapsule .card-body > .form-group.basic {
		margin: 0;
		padding: 0;
	}

	.pc-route-register #appCapsule .card-body > .checkbox-terms {
		grid-column: 1 / -1;
		margin: 8px 0 0 !important;
	}

	.pc-route-login #appCapsule .login__button,
	.pc-route-login #appCapsule .login-chamber {
		min-height: 48px;
		border: 1px solid var(--pc-border) !important;
		background: #ffffff !important;
		background-image: none !important;
		color: var(--pc-text) !important;
		-webkit-text-fill-color: var(--pc-text) !important;
		box-shadow: none;
	}

	/* Categories and stores */
	.pc-page-categories .blog-card.listing,
	.pc-page-store-locator .blog-card.shop {
		position: relative;
		height: 300px !important;
		border: 1px solid var(--pc-border);
		border-radius: 9px;
		background: #eee8dc;
		overflow: hidden;
		box-shadow: var(--pc-shadow-sm);
	}

	.pc-page-categories .blog-card.listing .title,
	.pc-page-store-locator .blog-card.shop .title {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 2;
		padding: 54px 20px 20px;
		background: linear-gradient(transparent, rgba(0, 0, 0, 0.92));
	}

	.pc-page-categories .blog-card.listing .title h2,
	.pc-page-store-locator .blog-card.shop .title h2,
	body.pc-public-page #appCapsule .pc-page-categories .blog-card.listing .title h2,
	body.pc-public-page #appCapsule .pc-page-store-locator .blog-card.shop .title h2 {
		margin: 0;
		color: #ffffff !important;
		font-size: 20px;
		line-height: 1.25;
		text-shadow: 0 2px 8px rgba(0, 0, 0, 0.55);
	}

	.pc-page-store-detail .pc-store-detail-visual {
		min-height: 440px;
	}

	.pc-store-directions {
		display: inline-flex;
		align-items: center;
		min-height: 42px;
		margin: 8px 0 24px;
		padding: 0 18px;
		border: 1px solid #171717;
		border-radius: 4px;
		background: #171717;
		color: #ffffff !important;
		font-weight: 700;
		text-decoration: none;
	}

	/* Campaigns, events and editorial */
	.pc-route-event-calendar .nav-tabs {
		width: min(100%, var(--pc-shell));
		margin: 0 auto 24px;
		padding: 6px;
		border: 1px solid var(--pc-border);
		border-radius: 7px;
		background: #ffffff;
	}

	.pc-route-event-calendar .nav-tabs .nav-link {
		cursor: pointer;
	}

	.pc-route-event-calendar .event,
	.pc-route-campaign-list .event {
		grid-template-columns: minmax(240px, 0.42fr) minmax(0, 1fr);
		padding: 0;
		overflow: hidden;
		box-shadow: var(--pc-shadow-sm);
	}

	.pc-route-event-calendar .event > h3,
	.pc-route-campaign-list .event > h3 {
		padding: 22px 24px 0;
	}

	.pc-route-event-calendar .event-info img,
	.pc-route-campaign-list .event-info img {
		height: 220px;
		border-radius: 0;
	}

	.pc-route-event-calendar .event-info > div:last-child,
	.pc-route-campaign-list .event-info > div:last-child {
		padding: 10px 24px 24px 0;
	}

	.pc-route-recipe .blog-card.recipe {
		position: relative;
		height: 340px;
		box-shadow: var(--pc-shadow-sm);
	}

	.pc-route-recipe .blog-card.recipe::after {
		position: absolute;
		inset: 35% 0 0;
		background: linear-gradient(transparent, rgba(0, 0, 0, 0.9));
		content: "";
	}

	.pc-route-recipe .blog-card.recipe img {
		height: 100%;
	}

	.pc-route-recipe .blog-card.recipe .text {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 2;
		padding: 24px;
	}

	.pc-route-recipe .blog-card.recipe .title,
	.pc-route-recipe .blog-card.recipe .date {
		color: #ffffff !important;
	}

	/* Leaderboard */
	.pc-route-leaderboard #appCapsule {
		width: min(100%, 1040px);
	}

	.pc-route-leaderboard .leaderboard-branch {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
		padding: 8px;
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
	}

	.pc-route-leaderboard .branch-btn {
		flex: 1 1 150px;
		min-height: 44px;
		padding: 12px 16px;
		border: 1px solid transparent;
		border-radius: 5px;
		background: #f5f1e8;
		color: var(--pc-text) !important;
		font-weight: 700;
		text-align: center;
		cursor: pointer;
	}

	.pc-route-leaderboard .branch-btn.active {
		border-color: #171717;
		background: var(--pc-brand-gold);
		color: #111111 !important;
	}

	.pc-route-leaderboard .rank {
		display: grid;
		grid-template-columns: 90px minmax(0, 1fr) minmax(160px, auto);
		align-items: center;
		min-height: 62px;
		margin-bottom: 8px;
		padding: 14px 20px;
		border: 1px solid var(--pc-border);
		border-radius: 6px;
		background: #ffffff;
		color: var(--pc-text) !important;
	}

	.pc-route-leaderboard .rank.gold {
		border-color: #b88914;
		background: #fff7dc;
	}

	/* Room reservation */
	.pc-route-room .room-section {
		display: grid;
		grid-template-columns: 300px minmax(0, 1fr);
		gap: 44px;
		align-items: center;
		padding: 52px !important;
	}

	.pc-route-room .room-logo {
		max-width: 230px;
	}

	.pc-route-room .room-desc,
	.pc-route-room .room-desc .text-center {
		text-align: left !important;
	}

	.pc-route-room .room-desc h4 {
		font-size: 25px;
		line-height: 1.35;
	}

	.pc-route-room .room-btn,
	.pc-route-room .room-desc > .btn-gold {
		width: min(100%, 360px);
		margin-top: 20px !important;
	}

	.pc-route-room-branch #appCapsule > .section {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 24px;
		width: min(100%, var(--pc-shell));
		margin-inline: auto;
	}

	.pc-route-room-branch .blog-card.shop {
		position: relative;
		height: 360px;
		margin: 0 !important;
		border-radius: 9px;
		background: #eee8dc;
		overflow: hidden;
	}

	.pc-route-room-branch .blog-card.shop > img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.pc-route-room-branch .room-icon {
		position: absolute;
		right: 18px;
		bottom: 62px;
		left: 18px;
		z-index: 3;
		display: flex;
		gap: 10px;
	}

	.pc-route-room-branch .room-icon .icon {
		flex: 1 1 0;
		gap: 8px;
		min-height: 42px;
		padding: 8px 12px;
		border-radius: 4px;
		background: rgba(255, 255, 255, 0.94);
		color: var(--pc-text);
		cursor: pointer;
	}

	.pc-route-room-branch .room-icon img {
		width: 20px;
		height: 20px;
	}

	.pc-route-room-branch .pc-room-action-label {
		color: var(--pc-text) !important;
		font-size: 12px;
		font-weight: 700;
	}

	.pc-route-room-branch .title {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 2;
		margin: 0 !important;
		padding: 18px;
	}

	/* FAQ and apps */
	.pc-route-faq #search {
		margin-bottom: 22px;
	}

	.pc-route-faq .accordion-button {
		padding: 18px 22px;
		font-size: 16px;
	}

	.pc-route-faq .accordion-button:not(.collapsed) {
		background: #fff7dc;
		color: #5e4300;
	}

	.pc-route-faq .accordion-body {
		padding: 22px;
		color: var(--pc-text-muted);
		line-height: 1.7;
	}

	.pc-route-apps .index-container {
		display: grid;
		place-items: center;
		padding: 68px 56px;
		text-align: center;
	}

	.pc-route-apps .index-container h1 {
		max-width: 650px;
		margin: 34px 0 12px;
		color: #ffffff !important;
		font-family: Georgia, "Times New Roman", serif;
		font-size: clamp(34px, 4vw, 50px);
	}

	.pc-route-apps .index-container p {
		max-width: 620px;
		margin: 0 0 30px;
		color: rgba(255, 255, 255, 0.75) !important;
		font-size: 16px;
		line-height: 1.65;
	}

	.pc-route-apps .pc-app-downloads {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 16px;
	}

	.pc-route-apps .pc-app-downloads a {
		display: block;
	}

	.pc-route-apps .pc-app-downloads img.logo {
		display: block;
		width: auto;
		height: 54px;
		max-width: none;
		max-height: none;
	}

	/* Payment result */
	.pc-route-payment-status #appCapsule {
		display: grid;
		place-items: center;
		width: min(calc(100% - (var(--pc-gutter) * 2)), 780px) !important;
		min-height: calc(100vh - var(--pc-header-height) - 220px);
	}

	.pc-route-payment-status .pc-payment-state {
		width: 100% !important;
		margin: 0 !important;
	}

	.pc-state-card__icon {
		display: grid;
		place-items: center;
		width: 74px;
		height: 74px;
		margin: 0 auto 22px;
		border-radius: 50%;
		font-size: 34px;
	}

	.pc-state-card__icon--success {
		background: #edf8f0;
	}

	.pc-state-card__icon--failed {
		background: #fff0ee;
		color: #a72e23;
	}

	.pc-state-card__icon--pending {
		background: #f5f1e8;
		color: #725c2f;
	}

	.pc-payment-state h1 {
		margin: 0;
		color: var(--pc-text) !important;
		font-family: Georgia, "Times New Roman", serif;
		font-size: 38px;
	}

	.pc-state-card__actions {
		display: flex;
		justify-content: center;
		gap: 12px;
		margin-top: 26px;
	}

	.pc-state-card__actions .btn-gold {
		min-width: 190px;
	}

	/* Legal and contact pages live outside #appCapsule. */
	body.pc-public-page.pc-route-privacy-policy .grid-container,
	body.pc-public-page.pc-route-tnc .grid-container,
	body.pc-public-page.pc-route-terms-of-use .grid-container,
	body.pc-public-page.pc-route-refund-policy .grid-container,
	body.pc-public-page.pc-route-shipping-policy .grid-container,
	body.pc-public-page.pc-route-contact-us .grid-container {
		width: min(calc(100% - (var(--pc-gutter) * 2)), 1040px);
		margin: 0 auto;
		padding: calc(var(--pc-header-height) + 42px) 56px 70px !important;
		border-radius: 0 0 10px 10px;
		background: #ffffff !important;
		color: var(--pc-text) !important;
		box-shadow: var(--pc-shadow-sm);
		font-size: 15px;
		line-height: 1.78;
	}

	body.pc-public-page.pc-route-privacy-policy .grid-container h1,
	body.pc-public-page.pc-route-privacy-policy .grid-container h2,
	body.pc-public-page.pc-route-privacy-policy .grid-container h3,
	body.pc-public-page.pc-route-tnc .grid-container h1,
	body.pc-public-page.pc-route-tnc .grid-container h2,
	body.pc-public-page.pc-route-tnc .grid-container h3,
	body.pc-public-page.pc-route-terms-of-use .grid-container h1,
	body.pc-public-page.pc-route-terms-of-use .grid-container h2,
	body.pc-public-page.pc-route-terms-of-use .grid-container h3,
	body.pc-public-page.pc-route-refund-policy .grid-container h1,
	body.pc-public-page.pc-route-refund-policy .grid-container h2,
	body.pc-public-page.pc-route-refund-policy .grid-container h3,
	body.pc-public-page.pc-route-shipping-policy .grid-container h1,
	body.pc-public-page.pc-route-shipping-policy .grid-container h2,
	body.pc-public-page.pc-route-shipping-policy .grid-container h3,
	body.pc-public-page.pc-route-contact-us .grid-container h1,
	body.pc-public-page.pc-route-contact-us .grid-container h2,
	body.pc-public-page.pc-route-contact-us .grid-container h3,
	body.pc-public-page.pc-route-contact-us .grid-container h4 {
		color: var(--pc-text) !important;
		-webkit-text-fill-color: var(--pc-text) !important;
	}

	body.pc-public-page.pc-route-privacy-policy .grid-container p,
	body.pc-public-page.pc-route-privacy-policy .grid-container li,
	body.pc-public-page.pc-route-tnc .grid-container p,
	body.pc-public-page.pc-route-tnc .grid-container li,
	body.pc-public-page.pc-route-terms-of-use .grid-container p,
	body.pc-public-page.pc-route-terms-of-use .grid-container li,
	body.pc-public-page.pc-route-refund-policy .grid-container p,
	body.pc-public-page.pc-route-refund-policy .grid-container li,
	body.pc-public-page.pc-route-shipping-policy .grid-container p,
	body.pc-public-page.pc-route-shipping-policy .grid-container li,
	body.pc-public-page.pc-route-contact-us .grid-container p {
		color: #38342e !important;
	}

	.pc-route-privacy-policy .grid-container > .page-title,
	.pc-route-tnc .grid-container > .page-title,
	.pc-route-terms-of-use .grid-container > .page-title,
	.pc-route-refund-policy .grid-container > .page-title,
	.pc-route-shipping-policy .grid-container > .page-title {
		display: none;
	}

	body.pc-public-page.pc-route-contact-us .grid-container {
		min-height: 520px;
		text-align: left !important;
	}

	body.pc-public-page.pc-route-contact-us .page-title {
		margin: 0 0 22px;
		padding: 0 0 18px;
	}

	body.pc-public-page.pc-route-contact-us .grid-container > div:last-child {
		max-width: 700px;
		padding-top: 0 !important;
		font-size: 16px !important;
	}
}

@media screen and (min-width: 1280px) and (max-width: 1439px) {
	.pc-header__main-inner {
		grid-template-columns: 150px minmax(280px, 1fr) auto;
		gap: 18px;
	}

	.pc-header__logo {
		width: 146px;
	}

	.pc-header__actions {
		gap: 14px;
	}

	.pc-header__nav-link {
		padding-inline: 10px;
		font-size: 13px;
	}

	.pc-page-checkout #appCapsule.checkout > .section,
	.pc-page-cart #appCapsule {
		grid-template-columns: minmax(0, 1fr) 350px;
		gap: 26px;
	}

	.pc-page-store-detail #appCapsule {
		grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr);
	}
}

@media screen and (min-width: 1600px) {
	.pc-page-plp .product-container {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media screen {
	html {
		scroll-padding-top: calc(var(--pc-sticky-header-height) + 24px);
		overflow-x: clip;
	}

	body.pc-public-page,
	body.pc-public-page.dark-mode {
		min-width: 0;
		max-width: 100%;
		overflow-x: clip;
		background-color: var(--pc-surface-muted) !important;
		color: var(--pc-text) !important;
		font-family: Jost, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
	}

	body.pc-public-page.dark-mode #appCapsule,
	body.pc-public-page.dark-mode #appCapsule p,
	body.pc-public-page.dark-mode #appCapsule li,
	body.pc-public-page.dark-mode #appCapsule label,
	body.pc-public-page.dark-mode #appCapsule address {
		color: var(--pc-text);
	}

	body.pc-public-page #appCapsule h1,
	body.pc-public-page #appCapsule h2,
	body.pc-public-page #appCapsule h3,
	body.pc-public-page #appCapsule h4,
	body.pc-public-page #appCapsule h5,
	body.pc-public-page #appCapsule h6 {
		color: var(--pc-text);
		letter-spacing: -0.015em;
	}

	body.pc-public-page #appCapsule a:focus-visible,
	body.pc-public-page #appCapsule button:focus-visible,
	body.pc-public-page #appCapsule input:focus-visible,
	body.pc-public-page #appCapsule select:focus-visible,
	body.pc-public-page #appCapsule textarea:focus-visible,
	.pc-header a:focus-visible,
	.pc-header button:focus-visible,
	.pc-footer a:focus-visible {
		outline: 3px solid rgba(153, 107, 0, 0.35);
		outline-offset: 3px;
	}

	.pc-header {
		box-shadow: 0 8px 28px rgba(0, 0, 0, 0.18);
	}

	.pc-header__main-inner {
		display: grid;
		grid-template-columns: 180px minmax(360px, 1fr) auto;
	}

	.pc-header__search {
		max-width: 720px;
	}

	.pc-header__nav {
		justify-content: space-between;
		gap: 0;
	}

	.pc-header__nav-link {
		justify-content: center;
		padding-inline: 18px;
	}

	.pc-mega-menu {
		border-radius: 0 0 var(--pc-radius-lg) var(--pc-radius-lg);
	}

	.pc-footer {
		border-top: 3px solid var(--pc-brand-gold);
	}

	.pc-footer__column h2 {
		font-size: 14px;
		letter-spacing: 0.08em;
		text-transform: uppercase;
	}

	body #appCapsule {
		min-height: calc(100vh - 340px);
		padding-top: calc(var(--pc-header-height) + 36px) !important;
		padding-bottom: 72px !important;
	}

	body.pc-header-condensed #appCapsule {
		padding-top: calc(var(--pc-header-height) + 36px) !important;
	}

	.pc-page-heading,
	.pc-account-page-heading,
	.pc-auto-page-heading {
		border-bottom: 1px solid var(--pc-border);
	}

	.pc-page-heading h1,
	.pc-account-page-heading h1,
	.pc-auto-page-heading h1,
	.pc-page-plp .section-heading h1 {
		font-size: clamp(36px, 3.4vw, 52px);
		font-weight: 600;
		line-height: 1.08;
	}

	body.pc-public-page #appCapsule .card:not(.product-card),
	body.pc-public-page #appCapsule .accordion-item,
	body.pc-public-page #appCapsule .no-record,
	body.pc-public-page #appCapsule .no-record-shop {
		border-color: var(--pc-border);
		border-radius: var(--pc-radius-md);
		background: var(--pc-surface) !important;
		box-shadow: var(--pc-shadow-sm);
	}

	body.pc-public-page #appCapsule .btn-gold .btn,
	body.pc-public-page #appCapsule .btn.btn--filled,
	body.pc-public-page #appCapsule .btn-primary {
		min-height: 46px;
		border-color: var(--pc-brand-gold) !important;
		border-radius: var(--pc-radius-sm);
		background: var(--pc-brand-gold) !important;
		color: #111111 !important;
		font-weight: 700;
	}

	body.pc-public-page #appCapsule .btn-gold .btn:hover,
	body.pc-public-page #appCapsule .btn-primary:hover {
		border-color: #d7a62f !important;
		background: #d7a62f !important;
	}

	body.pc-public-page #appCapsule input.form-control,
	body.pc-public-page #appCapsule select,
	body.pc-public-page #appCapsule textarea,
	body.pc-public-page #appCapsule .select2-selection {
		border-color: var(--pc-border) !important;
		background-color: #ffffff !important;
		color: var(--pc-text) !important;
	}

	/* Home */
	.pc-page-home #appCapsule {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	.pc-page-home .bg-home-grey {
		width: min(calc(100% - (var(--pc-gutter) * 2)), var(--pc-shell));
		margin: 0 auto 12px;
		padding: 0 !important;
		background: transparent !important;
	}

	.pc-page-home .greetings {
		color: var(--pc-text-muted);
		font-size: 14px;
	}

	.pc-page-home .wallet-card-section {
		position: relative;
		width: min(calc(100% - (var(--pc-gutter) * 2)), var(--pc-shell));
		margin: 0 auto;
		padding: 0 !important;
		border-radius: var(--pc-radius-lg);
		background: #16130f;
		overflow: hidden;
		box-shadow: var(--pc-shadow-md);
	}

	.pc-page-home .wallet-card-section .carousel::after {
		position: absolute;
		inset: 0;
		z-index: 1;
		background: linear-gradient(90deg, rgba(7, 7, 7, 0.84) 0%, rgba(7, 7, 7, 0.48) 38%, rgba(7, 7, 7, 0.06) 70%);
		pointer-events: none;
		content: "";
	}

	.pc-page-home .wallet-card-section .carousel-inner,
	.pc-page-home .wallet-card-section .carousel-item,
	.pc-page-home .wallet-card-section .carousel-item img {
		height: 520px;
	}

	.pc-page-home .wallet-card-section .carousel-item img {
		width: 100%;
		object-fit: cover;
	}

	.pc-home-hero-copy {
		position: absolute;
		top: 50%;
		left: clamp(46px, 5vw, 78px);
		z-index: 2;
		width: min(520px, 48%);
		transform: translateY(-50%);
		color: #ffffff;
		text-align: left;
	}

	.pc-home-hero-copy p {
		margin: 0 0 12px;
		color: var(--pc-brand-gold) !important;
		font-size: 12px;
		font-weight: 700;
		letter-spacing: 0.14em;
		text-transform: uppercase;
	}

	.pc-home-hero-copy h1 {
		margin: 0 0 16px;
		color: #ffffff !important;
		font-size: clamp(42px, 4vw, 60px);
		font-weight: 600;
		line-height: 1.02;
	}

	.pc-home-hero-copy span {
		display: block;
		max-width: 480px;
		color: rgba(255, 255, 255, 0.82);
		font-size: 16px;
		line-height: 1.6;
	}

	.pc-home-hero-copy a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 150px;
		min-height: 48px;
		margin-top: 26px;
		border: 1px solid var(--pc-brand-gold);
		border-radius: var(--pc-radius-sm);
		background: var(--pc-brand-gold);
		color: #111111;
		font-weight: 700;
		text-decoration: none;
	}

	.pc-page-home .carousel-indicators {
		z-index: 3;
	}

	.pc-page-home .pc-home-offers__heading h2,
	.pc-page-home .section-heading .title {
		color: var(--pc-text) !important;
	}

	.pc-page-home .pc-home-offers {
		margin-top: 48px;
	}

	.pc-page-home .pc-home-offer {
		min-height: 128px;
		border-radius: var(--pc-radius-md);
	}

	.pc-page-home .pc-home-member {
		border-radius: var(--pc-radius-lg);
		box-shadow: var(--pc-shadow-sm);
	}

	.pc-page-home .carousel-home-icons {
		padding: 24px 30px;
		box-shadow: var(--pc-shadow-sm);
	}

	.pc-page-home .carousel-home-icons .splide__slide,
	.pc-page-home .carousel-small .splide__slide,
	.pc-page-home .carousel-multiple .splide__slide {
		height: auto;
	}

	.pc-page-home .home-feature-icon {
		min-height: 112px;
	}

	.pc-page-home .category-card {
		height: 210px;
		border-radius: var(--pc-radius-md);
	}

	.pc-page-home .product-card,
	.pc-page-plp .product-card,
	.pc-page-pdp .product-card,
	.pc-route-wishlist .product-card,
	.pc-route-campaign .product-card {
		height: 100%;
		border: 1px solid var(--pc-border);
		border-radius: var(--pc-radius-md);
		background: #ffffff !important;
		overflow: hidden;
		box-shadow: var(--pc-shadow-sm);
		transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
	}

	.pc-page-home a:hover .product-card,
	.pc-page-plp a:hover .product-card,
	.pc-route-wishlist a:hover .product-card {
		transform: translateY(-3px);
		border-color: #c9bfae;
		box-shadow: var(--pc-shadow-md);
	}

	.pc-page-home .product-card > img,
	.pc-page-plp .product-card > img,
	.pc-route-wishlist .product-card > img {
		height: 260px;
		padding: 22px;
		background: #fbfaf7;
		object-fit: contain;
	}

	.pc-page-home .feature-product,
	.pc-page-plp .feature-product,
	.pc-route-wishlist .feature-product {
		min-height: 178px;
		padding: 18px !important;
		background: #ffffff !important;
		color: var(--pc-text) !important;
	}

	.pc-page-home .feature-product .title,
	.pc-page-plp .feature-product .title,
	.pc-route-wishlist .feature-product .title {
		color: var(--pc-text) !important;
		font-size: 16px;
		line-height: 1.35;
	}

	.pc-page-home .feature-product .price,
	.pc-page-plp .feature-product .price,
	.pc-route-wishlist .feature-product .price {
		color: #805a00 !important;
	}

	/* PLP */
	.pc-page-plp .search-product-form > .section-heading {
		display: flex;
		align-items: end;
		justify-content: space-between;
		margin-bottom: 30px;
		padding: 0 0 24px;
	}

	.pc-page-plp .filter-container {
		border-radius: var(--pc-radius-md);
		box-shadow: var(--pc-shadow-sm);
	}

	.pc-page-plp .category-collapse {
		min-height: 44px;
		border-bottom: 1px solid var(--pc-border) !important;
	}

	.pc-page-plp .product-container {
		align-content: start;
	}

	.pc-page-plp .pc-plp-toolbar {
		grid-column: 1 / -1;
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		min-height: 58px;
		padding: 0 0 16px;
		border-bottom: 1px solid var(--pc-border);
	}

	.pc-page-plp .pc-plp-toolbar p {
		margin: 0;
		color: var(--pc-text-muted) !important;
		font-size: 14px;
	}

	.pc-page-plp .pc-plp-toolbar > div {
		display: flex;
		align-items: center;
		gap: 12px;
	}

	.pc-page-plp .pc-plp-toolbar label {
		margin: 0;
		font-size: 14px;
		font-weight: 650;
	}

	.pc-page-plp .pc-plp-sort {
		min-width: 190px;
		height: 42px;
		margin: 0;
		padding: 0 38px 0 12px;
		border: 1px solid var(--pc-border);
		border-radius: var(--pc-radius-sm);
	}

	.pc-page-plp .alphabet-brand {
		max-height: 360px;
		overflow: auto;
		box-shadow: var(--pc-shadow-sm);
	}

	/* PDP */
	.pc-page-pdp .product-detail-section {
		grid-template-columns: minmax(0, 0.95fr) minmax(460px, 1.05fr);
		gap: 52px;
		border-radius: var(--pc-radius-lg);
		box-shadow: var(--pc-shadow-sm);
	}

	.pc-page-pdp .product-detail-section .image-container {
		min-height: 500px;
		border-radius: var(--pc-radius-md);
	}

	.pc-page-pdp .product-detail-section .swiper {
		height: 500px;
	}

	.pc-page-pdp .product-detail-section .product-detail-img,
	.pc-page-pdp .product-detail-section .swiper-slide img {
		width: min(100%, 440px) !important;
		height: 460px;
		padding: 28px;
	}

	.pc-page-pdp .product-detail-section .detail {
		padding-top: 8px;
	}

	.pc-page-pdp .pc-pdp-heading h1 {
		font-size: clamp(34px, 3vw, 46px);
		line-height: 1.1;
	}

	.pc-page-pdp .product-detail-section .detail > .info {
		grid-template-columns: 140px 1fr;
		padding-block: 10px;
		border-bottom: 1px solid #eee9df;
	}

	.pc-page-pdp .product-detail-section .product-details .price,
	.pc-page-pdp .product-detail-section .product-details .member-price {
		min-height: 58px;
	}

	.pc-page-pdp .general-error {
		padding: 10px 12px;
		border-radius: var(--pc-radius-sm);
		background: #fff0ee;
	}

	/* Cart and checkout */
	.pc-page-cart #appCapsule:has(.no-record) {
		display: block;
	}

	.pc-page-cart #appCapsule:has(.no-record) > .section.tab-content {
		width: min(100%, 820px);
		margin-inline: auto !important;
	}

	.pc-page-cart #appCapsule:has(.no-record) > .section.btm-bg-grey {
		display: none;
	}

	.pc-page-cart .no-record {
		min-height: 360px;
		display: grid;
		place-content: center;
	}

	.pc-page-cart .cart-card,
	.pc-page-cart .cart-total,
	.pc-page-checkout .cart-total,
	.pc-page-checkout .checkout-option .card,
	.pc-page-checkout #guest-contact-section {
		border-radius: var(--pc-radius-md);
		box-shadow: var(--pc-shadow-sm);
	}

	.pc-page-checkout .progressbar {
		max-width: 820px;
		margin-right: auto;
		margin-left: auto;
	}

	.pc-page-checkout .progressbar li::before {
		box-shadow: 0 0 0 5px var(--pc-surface-muted);
	}

	.pc-page-checkout .modal-dialog,
	.pc-page-cart .modal-dialog,
	.pc-page-pdp .modal-dialog {
		max-width: 680px;
	}

	/* Account and membership */
	.pc-account-page-heading {
		grid-column: 1 / -1;
		margin-bottom: 28px;
		padding-bottom: 24px;
	}

	.pc-account-page-heading p {
		margin: 0 0 8px;
		color: var(--pc-brand-gold-dark) !important;
		font-size: 12px;
		font-weight: 750;
		letter-spacing: 0.12em;
		text-transform: uppercase;
	}

	.pc-account-page-heading h1 {
		margin: 0 0 10px;
	}

	.pc-account-page-heading span {
		color: var(--pc-text-muted);
	}

	.pc-auto-page-heading {
		grid-column: 1 / -1;
		width: min(100%, var(--pc-shell));
		margin: 0 auto 28px;
		padding-bottom: 24px;
	}

	.pc-auto-page-heading p {
		margin: 0 0 8px;
		color: var(--pc-brand-gold-dark) !important;
		font-size: 12px;
		font-weight: 750;
		letter-spacing: 0.12em;
		text-transform: uppercase;
	}

	.pc-auto-page-heading h1 {
		margin: 0;
		font-size: clamp(36px, 3.4vw, 52px);
		font-weight: 600;
		line-height: 1.08;
	}

	.pc-page-account #appCapsule > .section {
		border-radius: var(--pc-radius-lg);
		box-shadow: var(--pc-shadow-md);
	}

	.pc-page-account .listview.image-listview .item {
		position: relative;
		border-radius: var(--pc-radius-md);
		box-shadow: var(--pc-shadow-sm);
	}

	.pc-page-account .listview.image-listview .item::after {
		position: absolute;
		right: 18px;
		color: #a69d8e;
		font-size: 20px;
		content: "›";
	}

	.pc-page-account .listview.image-listview.is-guest > li:first-child {
		grid-column: 1 / -1;
	}

	.pc-page-account .listview.image-listview.is-guest > li:first-child .item {
		min-height: 112px;
		border-color: rgba(153, 107, 0, 0.35);
		background: linear-gradient(135deg, #fffdf8, #f4ead2) !important;
		font-size: 18px;
		font-weight: 700;
	}

	.pc-page-membership #appCapsule {
		align-items: start;
	}

	.pc-page-membership .membership-card,
	.pc-page-membership .membership-details {
		border-radius: var(--pc-radius-lg);
		box-shadow: var(--pc-shadow-sm);
	}

	/* Store locator */
	.pc-store-tools {
		display: flex !important;
		align-items: center;
		gap: 16px;
		margin: -10px 0 28px;
		padding: 18px 20px;
		border: 1px solid var(--pc-border);
		border-radius: var(--pc-radius-md);
		background: #ffffff;
		box-shadow: var(--pc-shadow-sm);
	}

	.pc-store-tools label {
		flex: 0 0 auto;
		margin: 0;
		font-weight: 700;
	}

	.pc-store-tools input {
		flex: 1 1 auto;
		height: 46px;
		margin: 0;
		padding: 0 16px;
		border: 1px solid var(--pc-border);
		border-radius: var(--pc-radius-sm);
	}

	.pc-page-store-locator .blog-card.shop {
		height: 330px;
		border-radius: var(--pc-radius-lg);
		box-shadow: var(--pc-shadow-sm);
	}

	.pc-page-store-detail #appCapsule {
		grid-template-columns: minmax(0, 1.2fr) minmax(380px, 0.8fr);
	}

	.pc-store-detail-visual {
		position: relative;
		display: block !important;
		height: 560px;
		border-radius: var(--pc-radius-lg);
		background: #141414;
		overflow: hidden;
		box-shadow: var(--pc-shadow-md);
	}

	.pc-store-detail-visual::after {
		position: absolute;
		inset: 35% 0 0;
		background: linear-gradient(transparent, rgba(0, 0, 0, 0.9));
		content: "";
	}

	.pc-store-detail-visual > img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.pc-store-detail-visual > div {
		position: absolute;
		right: 36px;
		bottom: 36px;
		left: 36px;
		z-index: 1;
	}

	.pc-store-detail-visual span,
	.pc-store-detail-visual strong {
		display: block;
	}

	.pc-store-detail-visual span {
		margin-bottom: 8px;
		color: var(--pc-brand-gold);
		font-size: 12px;
		font-weight: 700;
		letter-spacing: 0.12em;
		text-transform: uppercase;
	}

	.pc-store-detail-visual strong {
		color: #ffffff;
		font-size: 32px;
		line-height: 1.15;
	}

	.pc-page-store-detail .card {
		box-shadow: var(--pc-shadow-sm);
	}

	/* Authentication, status and secondary pages */
	.pc-route-login #appCapsule,
	.pc-route-register #appCapsule,
	.pc-route-forgot-password #appCapsule,
	.pc-route-reset-password #appCapsule {
		width: min(calc(100% - (var(--pc-gutter) * 2)), 620px);
		padding: calc(var(--pc-header-height) + 54px) 42px 72px !important;
		border-radius: 0 0 var(--pc-radius-lg) var(--pc-radius-lg);
		background: rgba(255, 255, 255, 0.98);
		box-shadow: var(--pc-shadow-md);
	}

	.pc-route-login #appCapsule .text-gold,
	.pc-route-register #appCapsule .text-gold,
	.pc-route-forgot-password #appCapsule .text-gold,
	.pc-route-reset-password #appCapsule .text-gold {
		color: var(--pc-text) !important;
	}

	.pc-route-payment-status #appCapsule,
	.pc-route-payment #appCapsule,
	.pc-route-guest-cart #appCapsule {
		display: grid;
		place-content: center;
		width: min(100%, 780px);
		margin-inline: auto;
	}

	.pc-route-payment-status #appCapsule > .section,
	.pc-route-guest-cart #appCapsule > .section:last-of-type {
		width: 100%;
		padding: 40px;
		border: 1px solid var(--pc-border);
		border-radius: var(--pc-radius-lg);
		background: #ffffff;
		box-shadow: var(--pc-shadow-md);
	}

	.pc-route-leaderboard #appCapsule {
		width: min(100%, 1040px);
		margin-inline: auto;
	}

	.pc-route-leaderboard #appCapsule > .text-center:first-of-type {
		padding: 36px;
		border-radius: var(--pc-radius-lg);
		background: linear-gradient(135deg, #121212, #302714);
	}

	.pc-route-leaderboard #appCapsule > .text-center:first-of-type .title {
		color: #ffffff !important;
		font-size: 36px;
	}

	.pc-route-leaderboard .leaderboard-branch {
		display: flex;
		justify-content: center;
		gap: 10px;
	}

	.pc-route-leaderboard .branch-btn {
		border-color: var(--pc-border);
		background: #ffffff;
		color: var(--pc-text);
	}

	.pc-route-leaderboard .rank {
		border-bottom: 1px solid var(--pc-border);
		background: #ffffff;
		color: var(--pc-text);
	}

	.page-404 {
		background: var(--pc-surface-muted) !important;
	}

	.page-404 .error__container {
		width: min(calc(100% - (var(--pc-gutter) * 2)), 760px);
		margin: 0 auto;
		padding: calc(var(--pc-header-height) + 70px) 48px 72px;
	}

	.page-404 .info-error {
		padding: 46px;
		border: 1px solid var(--pc-border);
		border-radius: var(--pc-radius-lg);
		background: #ffffff;
		box-shadow: var(--pc-shadow-sm);
	}

	.pc-route-privacy-policy .grid-container,
	.pc-route-tnc .grid-container,
	.pc-route-terms-of-use .grid-container,
	.pc-route-refund-policy .grid-container,
	.pc-route-shipping-policy .grid-container,
	.pc-route-contact-us .grid-container {
		margin-bottom: 64px;
		border: 1px solid var(--pc-border);
		box-shadow: var(--pc-shadow-sm);
	}
}

/* The redesigned content is now shared across devices. Keep legacy duplicate
 * labels hidden; pc-desktop-only is a historical template class, not a gate. */
@media screen {
	.pc-mobile-only {
		display: none !important;
	}
}

.pc-header,
.pc-footer {
	display: none;
}

.pc-product-card__meta,
.pc-no-results-help,
.pc-clear-filters,
.pc-home-offers,
.pc-home-member {
	display: none;
}

@media screen {
	body {
		background: var(--pc-surface-muted);
		color: var(--pc-text);
	}

	.pc-shell {
		width: min(calc(100% - (var(--pc-gutter) * 2)), var(--pc-shell));
		margin-inline: auto;
	}

	body > .pc-header ~ .container {
		width: 100%;
		max-width: none;
		padding-right: 0;
		padding-left: 0;
	}

	.pc-header {
		position: fixed;
		display: block;
		inset: 0 0 auto;
		z-index: 2000;
		color: #ffffff;
		background: var(--pc-brand-black);
		box-shadow: 0 1px 0 rgba(255, 255, 255, 0.12);
	}

	.pc-header a {
		text-decoration: none;
	}

	.pc-header__utility {
		min-height: 28px;
		max-height: 28px;
		background: #080808;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
		overflow: hidden;
		transition: min-height 180ms ease, max-height 180ms ease, border-color 180ms ease;
	}

	.pc-header__utility-inner,
	.pc-header__main-inner,
	.pc-header__actions,
	.pc-header__nav {
		display: flex;
		align-items: center;
	}

	.pc-header__utility-inner {
		justify-content: space-between;
		min-height: 28px;
		font-size: 12px;
		letter-spacing: 0.02em;
	}

	.pc-header__utility-copy {
		color: #f5e8bc;
	}

	.pc-header__utility-nav {
		display: flex;
		gap: 24px;
	}

	.pc-header__utility-nav a {
		color: rgba(255, 255, 255, 0.78);
	}

	.pc-header__utility-nav a:hover,
	.pc-header__utility-nav a:focus-visible {
		color: var(--pc-brand-gold);
	}

	.pc-header__main {
		background: var(--pc-brand-black);
	}

	.pc-header__main-inner {
		gap: 36px;
		min-height: 72px;
		transition: min-height 180ms ease;
	}

	.pc-header__brand {
		flex: 0 0 172px;
		display: flex;
		align-items: center;
	}

	.pc-header__logo {
		display: block;
		width: 164px;
		height: auto;
		max-height: 46px;
		object-fit: contain;
		transition: width 180ms ease, max-height 180ms ease;
	}

	.pc-header__search {
		position: relative;
		flex: 1 1 560px;
		max-width: 680px;
		margin: 0;
	}

	.pc-header__search-input {
		width: 100%;
		height: 44px;
		padding: 0 52px 0 18px;
		border: 1px solid #d7d3c8;
		border-radius: 4px;
		background: #ffffff;
		color: #171717;
		font-size: 15px;
	}

	.pc-header__search-input:focus {
		border-color: var(--pc-brand-gold);
		outline: 3px solid rgba(255, 187, 1, 0.22);
	}

	.pc-header__search-button {
		position: absolute;
		top: 4px;
		right: 4px;
		display: grid;
		place-items: center;
		width: 38px;
		height: 36px;
		margin: 0;
		border: 0;
		border-radius: 3px;
		background: var(--pc-brand-gold);
		cursor: pointer;
	}

	.pc-header__search-button:hover,
	.pc-header__search-button:focus-visible {
		background: var(--pc-brand-gold-dark);
	}

	.pc-header__actions {
		flex: 0 0 auto;
		justify-content: flex-end;
		gap: 22px;
	}

	.pc-header__action {
		position: relative;
		display: inline-flex;
		align-items: center;
		gap: 8px;
		min-height: 40px;
		padding: 0;
		border: 0;
		background: transparent;
		color: #ffffff;
		font-size: 13px;
		text-transform: capitalize;
		cursor: pointer;
	}

	.pc-header__action:hover,
	.pc-header__action:focus-visible {
		color: var(--pc-brand-gold);
		outline: none;
	}

	.pc-header__action-icon {
		width: 25px;
		height: 25px;
		font-size: 25px;
	}

	.pc-header__badge {
		position: absolute;
		top: -1px;
		left: 16px;
		min-width: 18px;
		height: 18px;
		padding: 1px 4px;
		border-radius: 9px;
		font-size: 10px;
		line-height: 16px;
	}

	.pc-header__nav-wrap {
		background: #1b1b1b;
		border-top: 1px solid rgba(255, 255, 255, 0.08);
	}

	.pc-header__nav {
		min-height: 48px;
		gap: 8px;
		transition: min-height 180ms ease;
	}

	.pc-header__nav-item {
		position: relative;
	}

	.pc-header__nav-link {
		display: inline-flex;
		align-items: center;
		gap: 7px;
		min-height: 48px;
		padding: 0 20px;
		border: 0;
		background: transparent;
		color: #ffffff;
		font-size: 14px;
		font-weight: 600;
		letter-spacing: 0.015em;
		cursor: pointer;
		transition: min-height 180ms ease, color 140ms ease, background-color 140ms ease;
	}

	body.pc-header-condensed {
		--pc-sticky-header-height: 106px;
	}

	.pc-header.is-condensed .pc-header__utility {
		min-height: 0;
		max-height: 0;
		border-bottom-color: transparent;
	}

	.pc-header.is-condensed .pc-header__main-inner {
		min-height: 62px;
	}

	.pc-header.is-condensed .pc-header__logo {
		width: 140px;
		max-height: 38px;
	}

	.pc-header.is-condensed .pc-header__nav,
	.pc-header.is-condensed .pc-header__nav-link {
		min-height: 44px;
	}

	.pc-header__nav-link:hover,
	.pc-header__nav-link:focus-visible,
	.pc-header__nav-link[aria-expanded="true"] {
		background: #2b2b2b;
		color: var(--pc-brand-gold);
		outline: none;
	}

	.pc-mega-menu {
		position: absolute;
		top: 100%;
		left: 0;
		display: none;
		width: min(980px, calc(100vw - (var(--pc-gutter) * 2)));
		padding: 32px 36px 36px;
		border: 1px solid var(--pc-border);
		border-top: 3px solid var(--pc-brand-gold);
		background: #ffffff;
		box-shadow: 0 18px 45px rgba(0, 0, 0, 0.24);
		color: var(--pc-text);
	}

	.pc-header__nav-item--mega:hover .pc-mega-menu,
	.pc-mega-menu.is-open {
		display: block;
	}

	.pc-mega-menu__grid {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 36px;
	}

	.pc-mega-menu__title {
		margin: 0 0 12px;
		padding-bottom: 10px;
		border-bottom: 1px solid var(--pc-border);
		color: var(--pc-text);
		font-size: 13px;
		font-weight: 700;
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}

	.pc-mega-menu a {
		display: block;
		padding: 7px 0;
		color: var(--pc-text-muted);
		font-size: 14px;
	}

	.pc-mega-menu a:hover,
	.pc-mega-menu a:focus-visible {
		color: #8c6500;
		text-decoration: underline;
		text-underline-offset: 3px;
	}

	body #appCapsule {
		padding-top: calc(var(--pc-header-height) + 28px) !important;
		padding-right: var(--pc-gutter) !important;
		padding-left: var(--pc-gutter) !important;
	}

	body #appCapsule > .section,
	body #appCapsule > .section-heading,
	body #appCapsule > .product-detail-section,
	body #appCapsule > form,
	body #appCapsule > .container {
		width: min(100%, var(--pc-shell));
		margin-right: auto;
		margin-left: auto;
	}

	.appBottomMenu,
	.free-delivery-promo,
	.appHeader {
		display: none !important;
	}

	.pc-header :focus-visible {
		outline: 2px solid var(--pc-brand-gold);
		outline-offset: 3px;
	}

	.pc-footer {
		display: block;
		margin-top: 72px;
		background: #111111;
		color: rgba(255, 255, 255, 0.76);
	}

	.pc-footer__grid {
		display: grid;
		grid-template-columns: minmax(260px, 1.5fr) repeat(3, minmax(150px, 1fr));
		gap: 56px;
		padding-top: 58px;
		padding-bottom: 52px;
	}

	.pc-footer__logo {
		display: block;
		width: 172px;
		max-height: 48px;
		object-fit: contain;
	}

	.pc-footer__brand p {
		max-width: 300px;
		margin: 22px 0 0;
		font-size: 14px;
		line-height: 1.65;
	}

	.pc-footer__apps {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		margin-top: 20px;
	}

	.pc-footer__apps img {
		display: block;
		width: auto;
		height: 36px;
	}

	.pc-footer__column {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 11px;
	}

	.pc-footer__column h2 {
		margin: 0 0 8px;
		color: #ffffff;
		font-size: 14px;
		font-weight: 700;
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}

	.pc-footer a {
		color: rgba(255, 255, 255, 0.76);
		font-size: 14px;
		text-decoration: none;
	}

	.pc-footer a:hover,
	.pc-footer a:focus-visible {
		color: var(--pc-brand-gold);
	}

	.pc-footer__legal {
		border-top: 1px solid rgba(255, 255, 255, 0.12);
		background: #090909;
	}

	.pc-footer__legal-inner {
		display: flex;
		align-items: center;
		justify-content: space-between;
		min-height: 62px;
		font-size: 12px;
	}

	.pc-footer__compliance {
		max-width: 680px;
		margin: 5px 0 0;
		color: rgba(255, 255, 255, 0.54);
		font-size: 11px;
		line-height: 1.45;
	}

	.pc-footer__legal nav {
		display: flex;
		gap: 24px;
	}

	.pc-footer__legal a {
		font-size: 12px;
	}

	/* Shared desktop commerce primitives */
	body[data-page="home"] #appCapsule,
	body[data-page="shop"] #appCapsule,
	body #appCapsule.checkout {
		background: var(--pc-surface-muted);
	}

	body #appCapsule .section-heading {
		display: flex;
		align-items: end;
		justify-content: space-between;
		gap: 24px;
		margin-bottom: 20px;
		padding: 0;
	}

	body #appCapsule .section-heading .title {
		margin: 0;
		color: var(--pc-text);
		font-size: clamp(24px, 2vw, 32px);
		font-weight: 650;
		line-height: 1.2;
	}

	body #appCapsule .section-heading .link {
		color: #765500;
		font-size: 14px;
		font-weight: 650;
		text-decoration: underline;
		text-underline-offset: 4px;
	}

	body #appCapsule .product-card {
		position: relative;
		display: flex;
		flex-direction: column;
		height: 100%;
		min-height: 410px;
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
		box-shadow: 0 2px 10px rgba(17, 17, 17, 0.04);
		overflow: hidden;
		transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
	}

	body #appCapsule .product-card::before,
	body #appCapsule .product-card > .imaged::before {
		display: none;
	}

	body #appCapsule .product-card:hover {
		transform: translateY(-3px);
		border-color: #c1b99f;
		box-shadow: 0 14px 28px rgba(17, 17, 17, 0.1);
	}

	body #appCapsule .product-card > img.imaged {
		display: block;
		width: 100% !important;
		height: 250px;
		padding: 24px 24px 12px;
		background: #ffffff;
		object-fit: contain;
	}

	body #appCapsule .product-card .feature-product {
		position: relative;
		flex: 1 1 auto;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		min-height: 150px;
		padding: 18px 18px 20px;
		background: #171717;
		color: #ffffff;
		text-align: left;
	}

	body #appCapsule .product-card .feature-product .title {
		display: -webkit-box;
		min-height: 42px;
		margin: 0;
		overflow: hidden;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		color: #ffffff;
		font-size: 15px;
		font-weight: 600;
		line-height: 1.4;
	}

	body #appCapsule .product-card .pc-product-card__meta {
		display: flex;
		align-items: center;
		gap: 8px;
		width: 100%;
		min-height: 18px;
		margin: 0 0 7px;
		color: rgba(255, 255, 255, 0.64);
		font-size: 11px;
		font-weight: 600;
		letter-spacing: 0.035em;
		line-height: 1.25;
		text-transform: uppercase;
	}

	body #appCapsule .product-card .pc-product-card__brand {
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	body #appCapsule .product-card .pc-product-card__volume {
		flex: 0 0 auto;
		margin-left: auto;
		padding-left: 8px;
		border-left: 1px solid rgba(255, 255, 255, 0.22);
	}

	body #appCapsule .product-card .feature-product .rating {
		padding: 9px 0 5px;
		font-size: 12px;
	}

	body #appCapsule .product-card .feature-product .price {
		margin-top: auto;
		color: var(--pc-brand-gold);
		font-size: 21px;
		font-weight: 700;
	}

	body #appCapsule .product-card .feature-product .price sup {
		color: inherit;
		font-size: 12px;
	}

	body #appCapsule .product-card .feature-product .discount {
		margin-top: 5px;
		color: #f4e5b2;
		font-size: 12px;
	}

	body #appCapsule .product-card .feature-product.has-member-price > .price {
		color: rgba(255, 255, 255, 0.66);
		font-size: 14px;
		font-weight: 500;
		text-decoration: line-through;
	}

	body #appCapsule .product-card .feature-product.has-member-price > .discount:last-of-type {
		margin-top: 6px;
		color: var(--pc-brand-gold);
		font-size: 15px;
		font-weight: 700;
		line-height: 1.35;
	}

	body #appCapsule .product-card .feature-product .add-fav {
		top: 14px;
		right: 14px;
	}

	/* Home */
	body[data-page="home"] #appCapsule > .section,
	body[data-page="home"] #appCapsule > .section.full {
		margin-top: 64px !important;
		padding: 0;
	}

	body[data-page="home"] #appCapsule > .section.bg-home-grey {
		margin-top: 0 !important;
		padding: 10px 0 0;
		background: transparent;
	}

	body[data-page="home"] .greetings {
		color: var(--pc-text-muted);
		font-size: 14px;
	}

	body[data-page="home"] .wallet-card-section {
		margin-top: 22px !important;
	}

	body[data-page="home"] .wallet-card-section .carousel {
		border-radius: 12px;
		background: #111111;
		box-shadow: 0 18px 38px rgba(17, 17, 17, 0.16);
		overflow: hidden;
	}

	body[data-page="home"] .wallet-card-section .carousel-item img {
		width: 100%;
		height: clamp(360px, 38vw, 520px);
		object-fit: cover;
	}

	body[data-page="home"] .pc-home-offers {
		display: block;
		width: min(100%, var(--pc-shell));
		margin: 42px auto 0;
	}

	body[data-page="home"] .pc-home-offers__heading h2 {
		margin: 0 0 18px;
		font-size: clamp(24px, 2vw, 32px);
		font-weight: 650;
	}

	body[data-page="home"] .pc-home-offers__grid {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 16px;
	}

	body[data-page="home"] .pc-home-offer {
		position: relative;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		min-height: 154px;
		padding: 22px;
		border: 1px solid #343434;
		border-radius: 8px;
		background: linear-gradient(135deg, #111111, #2a2a2a);
		color: #ffffff;
		overflow: hidden;
		text-decoration: none;
		transition: transform 180ms ease, border-color 180ms ease;
	}

	body[data-page="home"] .pc-home-offer::after {
		position: absolute;
		right: -38px;
		bottom: -58px;
		width: 150px;
		height: 150px;
		border-radius: 50%;
		background: rgba(255, 187, 1, 0.13);
		content: "";
	}

	body[data-page="home"] .pc-home-offer:hover,
	body[data-page="home"] .pc-home-offer:focus-visible {
		transform: translateY(-3px);
		border-color: var(--pc-brand-gold);
		color: var(--pc-brand-gold);
	}

	body[data-page="home"] .pc-home-offer span {
		color: var(--pc-brand-gold);
		font-size: 12px;
		font-weight: 700;
		letter-spacing: 0.12em;
	}

	body[data-page="home"] .pc-home-offer strong {
		position: relative;
		z-index: 1;
		font-size: 19px;
		font-weight: 650;
	}

	body[data-page="home"] .pc-home-member {
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		gap: 48px;
		width: min(100%, var(--pc-shell));
		margin: 42px auto 0;
		padding: 34px 40px;
		border-left: 5px solid var(--pc-brand-gold);
		border-radius: 8px;
		background: #171717;
		color: #ffffff;
	}

	body[data-page="home"] .pc-home-member__eyebrow {
		margin: 0 0 6px;
		color: var(--pc-brand-gold);
		font-size: 11px;
		font-weight: 700;
		letter-spacing: 0.14em;
		text-transform: uppercase;
	}

	body[data-page="home"] .pc-home-member h2 {
		margin: 0 0 8px;
		color: #ffffff;
		font-size: 25px;
	}

	body[data-page="home"] .pc-home-member p:last-child {
		margin: 0;
		color: rgba(255, 255, 255, 0.68);
	}

	body[data-page="home"] .pc-home-member__cta {
		flex: 0 0 auto;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 46px;
		padding: 0 24px;
		border-radius: 4px;
		background: var(--pc-brand-gold);
		color: #111111;
		font-weight: 700;
		text-decoration: none;
	}

	body[data-page="home"] .pc-home-legacy-tools {
		display: none;
	}

	body[data-page="home"] .carousel-home-icons {
		width: min(100%, var(--pc-shell));
		margin-inline: auto;
		margin-top: 34px !important;
		padding: 28px 30px;
		border: 1px solid var(--pc-border);
		border-radius: 10px;
		background: #ffffff;
	}

	body[data-page="home"] .carousel-home-icons .splide__track {
		overflow: hidden;
	}

	body[data-page="home"] .home-feature-icon {
		color: var(--pc-text);
		font-size: 13px;
		font-weight: 600;
		text-align: center;
	}

	body[data-page="home"] .home-feature-icon .icon-box {
		display: grid;
		place-items: center;
		width: 62px;
		height: 62px;
		margin: 0 auto 10px;
		border-radius: 50%;
		background: var(--pc-surface-muted);
	}

	body[data-page="home"] .home-feature-icon .icon-box img {
		width: 30px;
		height: 30px;
		object-fit: contain;
	}

	body[data-page="home"] .carousel-small .splide__track {
		overflow: hidden;
	}

	body[data-page="home"] .category-card {
		position: relative;
		height: 160px;
		border-radius: 8px;
		background: #111111;
		overflow: hidden;
	}

	body[data-page="home"] .category-card img {
		width: 100%;
		height: 100%;
		opacity: 0.72;
		object-fit: cover;
		transition: transform 180ms ease, opacity 180ms ease;
	}

	body[data-page="home"] .category-card:hover img {
		transform: scale(1.035);
		opacity: 0.88;
	}

	body[data-page="home"] .category-card span {
		inset: auto 16px 16px;
		width: auto;
		color: #ffffff;
		font-size: 17px;
		font-weight: 700;
		text-align: left;
		text-shadow: 0 2px 8px rgba(0, 0, 0, 0.8);
	}

	body[data-page="home"] .carousel-multiple .splide__list {
		align-items: stretch;
	}

	body[data-page="home"] .carousel-multiple .splide__slide {
		height: auto;
		padding-bottom: 8px;
	}

	body[data-page="home"] .blog-card {
		border-radius: 8px;
		background: #ffffff;
		overflow: hidden;
	}

	body[data-page="home"] .pc-home-journal {
		padding-top: 44px !important;
		padding-bottom: 48px !important;
		border-top: 1px solid var(--pc-border);
	}

	body[data-page="home"] .pc-home-journal .blog-card {
		height: 100%;
		border: 1px solid var(--pc-border);
		box-shadow: 0 8px 20px rgba(17, 17, 17, 0.06);
	}

	body[data-page="home"] .pc-home-journal .blog-card > img {
		height: 220px;
		object-fit: cover;
	}

	body[data-page="home"] .pc-home-journal .blog-card .text {
		padding: 20px;
	}

	body[data-page="home"] .pc-home-journal .blog-card .title {
		margin: 0;
		color: var(--pc-text);
		font-size: 17px;
		line-height: 1.4;
	}

	/* Product listing */
	.pc-page-plp .search-product-form > .section-heading,
	.pc-page-plp .search-product-form > .recent-search-container,
	.pc-page-plp .search-product-form > .container,
	.pc-page-plp .search-product-form > .alphabet-brand,
	.pc-page-plp .search-product-form > .pagination {
		width: min(100%, var(--pc-shell));
		margin-right: auto;
		margin-left: auto;
	}

	.pc-page-plp .search-product-form > .section-heading {
		margin-top: 8px !important;
		padding: 22px 0 20px;
		border-bottom: 1px solid var(--pc-border);
	}

	.pc-page-plp .recent-search-container {
		margin-bottom: 26px;
	}

	.pc-page-plp .recent-search-button {
		border: 1px solid var(--pc-border);
		border-radius: 18px;
		background: #ffffff;
		color: var(--pc-text);
	}

	.pc-page-plp .search-product-form > .container {
		max-width: none;
		padding: 0;
	}

	.pc-page-plp .search-product-form > .container > .row {
		flex-wrap: nowrap;
		gap: 28px;
		margin: 0;
	}

	.pc-page-plp .filter-container {
		position: sticky;
		top: calc(var(--pc-sticky-header-height) + 24px);
		flex: 0 0 276px;
		max-width: 276px;
		max-height: calc(100vh - var(--pc-sticky-header-height) - 48px);
		padding: 24px;
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
		overflow-y: auto;
	}

	.pc-page-plp .filter-container .input-group,
	.pc-page-plp .filter-container .form-control {
		width: 100%;
	}

	.pc-page-plp .filter-container .filter-title {
		margin-top: 28px;
		padding-top: 20px;
		border-top: 1px solid var(--pc-border);
		color: var(--pc-text);
		font-size: 14px;
		font-weight: 700;
		text-transform: uppercase;
	}

	.pc-page-plp .filter-container .category-collapse {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		min-height: 44px;
		padding: 8px 0;
		border: 0;
		border-bottom: 1px solid #ebe8df;
		border-radius: 0;
		background: transparent;
		color: var(--pc-text);
		text-align: left;
	}

	.pc-page-plp .filter-container .filter-radio {
		display: grid;
		gap: 10px;
		color: var(--pc-text-muted);
	}

	.pc-page-plp .filter-container .btn-gold .btn,
	.pc-page-plp .filter-container .btn-grey .btn {
		min-height: 42px;
		border-radius: 4px;
	}

	.pc-page-plp .product-container {
		flex: 1 1 auto;
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 24px 18px;
		max-width: none;
		padding: 0;
	}

	.pc-page-plp .product-container > div,
	.pc-page-plp .product-container > div > a {
		display: block;
		height: 100%;
	}

	.pc-page-plp .alphabet-brand {
		padding: 34px;
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
	}

	.pc-page-plp .alphabet-brand .alphabet {
		color: var(--pc-text);
		font-size: 18px;
		font-weight: 700;
	}

	.pc-page-plp .alphabet-brand .brand-list {
		display: flex;
		flex-wrap: wrap;
		gap: 8px 20px;
		margin-bottom: 22px;
	}

	.pc-page-plp .alphabet-brand a {
		color: var(--pc-text-muted);
	}

	.pc-page-plp .no-record-container {
		flex: 1 1 auto;
		max-width: none;
	}

	.pc-page-plp .no-record-shop {
		min-height: 420px;
		padding: 72px 32px;
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
		text-align: center;
	}

	.pc-page-plp .no-record-shop img {
		width: 120px;
		height: auto;
	}

	.pc-page-plp .pc-no-results-help {
		display: block;
		max-width: 420px;
		margin: 10px auto 22px;
		color: var(--pc-text-muted);
		line-height: 1.55;
	}

	.pc-page-plp .pc-clear-filters {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 42px;
		padding: 0 22px;
		border-radius: 4px;
		background: var(--pc-brand-gold);
		color: #111111;
		font-weight: 700;
		text-decoration: none;
	}

	.pc-page-pdp .pc-pdp-stock {
		margin-top: 16px;
		padding: 14px 16px !important;
		border: 1px solid #dedbd2 !important;
		border-radius: 6px;
		background: #f7f5ef;
	}

	.pc-page-pdp .pc-pdp-stock .color-green,
	.pc-page-pdp .pc-pdp-stock .color-red {
		display: inline-grid;
		place-items: center;
		width: 26px;
		height: 26px;
		border-radius: 50%;
		background: #ffffff;
	}

	@media screen and (max-width: 1279px) {
		.pc-header__main-inner {
			gap: 18px;
		}

		.pc-header__brand {
			flex-basis: 140px;
		}

		.pc-header__logo {
			width: 132px;
		}

		.pc-header__actions {
			gap: 14px;
		}

		.pc-header__action > span:not(.pc-header__badge) {
			display: none;
		}

		.pc-header__nav-link {
			padding-inline: 16px;
		}

		.pc-page-plp .product-container {
			grid-template-columns: repeat(3, minmax(0, 1fr));
		}
	}

	/* Product detail */
	.pc-page-pdp .product-detail-section {
		display: grid;
		grid-template-columns: minmax(0, 1.08fr) minmax(420px, 0.92fr);
		gap: clamp(42px, 5vw, 76px);
		align-items: start;
		margin-top: 8px !important;
		padding: clamp(28px, 3vw, 44px);
		border: 1px solid var(--pc-border);
		border-radius: 12px;
		background: #ffffff;
	}

	.pc-page-pdp .product-detail-section .image-container {
		position: sticky;
		top: calc(var(--pc-sticky-header-height) + 24px);
		min-height: 580px;
		border-radius: 8px;
		background: #faf9f6;
	}

	.pc-page-pdp .product-detail-section .swiper {
		width: 100%;
		height: 580px;
	}

	.pc-page-pdp .product-detail-section .swiper-slide {
		display: grid;
		place-items: center;
	}

	.pc-page-pdp .product-detail-section .product-detail-img,
	.pc-page-pdp .product-detail-section .swiper-slide img {
		width: min(100%, 520px) !important;
		height: 540px;
		padding: 30px;
		object-fit: contain;
	}

	.pc-page-pdp .product-detail-section .share-container,
	.pc-page-pdp .product-detail-section .wishlist-container {
		top: 18px;
		width: 42px;
		height: 42px;
		border: 1px solid var(--pc-border);
		border-radius: 50%;
		background: #ffffff;
		box-shadow: 0 4px 14px rgba(17, 17, 17, 0.08);
	}

	.pc-page-pdp .product-detail-section .share-container {
		right: 70px;
	}

	.pc-page-pdp .product-detail-section .wishlist-container {
		right: 18px;
	}

	.pc-page-pdp .product-detail-section .detail {
		position: sticky;
		top: calc(var(--pc-sticky-header-height) + 24px);
		display: block !important;
		padding: 0;
		color: var(--pc-text);
	}

	.pc-pdp-heading {
		margin-bottom: 26px;
		padding-bottom: 24px;
		border-bottom: 1px solid var(--pc-border);
	}

	.pc-pdp-heading__brand {
		margin-bottom: 9px;
		color: #7a5b09;
		font-size: 13px;
		font-weight: 750;
		letter-spacing: 0.08em;
		text-transform: uppercase;
	}

	.pc-pdp-heading h1 {
		margin: 0;
		color: var(--pc-text);
		font-size: clamp(30px, 3vw, 44px);
		font-weight: 650;
		line-height: 1.12;
	}

	.pc-pdp-heading__rating {
		display: flex;
		align-items: center;
		gap: 8px;
		margin-top: 14px;
		color: var(--pc-text-muted);
		font-size: 13px;
	}

	.pc-pdp-heading__rating .checked {
		color: var(--pc-brand-gold-dark);
	}

	.pc-page-pdp .product-detail-section .detail > .info {
		display: grid;
		grid-template-columns: 150px 1fr;
		gap: 20px;
		padding: 10px 0;
		border-bottom: 1px solid #eeece5;
		color: var(--pc-text);
		font-size: 14px;
	}

	.pc-page-pdp .product-detail-section .detail > .info > :first-child {
		color: var(--pc-text-muted);
	}

	.pc-page-pdp .product-detail-section .product-details {
		padding: 14px 0 0;
		color: var(--pc-text);
	}

	.pc-page-pdp .product-detail-section .product-details .bottom {
		gap: 14px;
		font-size: 18px;
	}

	.pc-page-pdp .product-detail-section .product-details .quantity {
		flex: 0 0 116px;
		width: auto;
		border: 1px solid var(--pc-border) !important;
		border-radius: 4px;
		background: #ffffff;
	}

	.pc-page-pdp .product-detail-section .product-select {
		height: 54px;
		margin: 0;
		border: 0;
		background-color: transparent;
		color: var(--pc-text);
	}

	.pc-page-pdp .product-detail-section .product-details .price,
	.pc-page-pdp .product-detail-section .product-details .member-price {
		flex: 1 1 auto;
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 54px;
		width: auto;
		border: 1px solid #c69200 !important;
		border-radius: 4px;
		background: #171717;
		color: var(--pc-brand-gold);
		font-size: 25px;
		font-weight: 700;
	}

	.pc-page-pdp .product-detail-section .product-details .member-price {
		border-color: var(--pc-border) !important;
		background: #f5f2e8;
		color: var(--pc-text);
	}

	.pc-page-pdp .product-detail-section .btn-gold .btn {
		min-height: 52px;
		border: 1px solid var(--pc-brand-gold);
		border-radius: 4px;
		background: var(--pc-brand-gold);
		color: #111111;
		font-size: 14px;
		font-weight: 750;
		text-transform: uppercase;
	}

	.pc-page-pdp .product-detail-section .btn-gold + .btn-gold .btn,
	.pc-page-pdp .product-detail-section .buy-now {
		background: #171717;
		color: #ffffff;
	}

	.pc-page-pdp #appCapsule > .section.full {
		margin-top: 34px;
		padding: 34px 40px;
		border: 1px solid var(--pc-border);
		border-radius: 10px;
		background: #ffffff;
	}

	.pc-page-pdp #appCapsule > .section.full .product-title.show-for-large,
	.pc-page-pdp #appCapsule > .section.full .product-details > .rating {
		display: none !important;
	}

	.pc-page-pdp #appCapsule > .review-card {
		width: min(100%, var(--pc-shell));
		margin: 32px auto 0;
		border: 1px solid var(--pc-border);
		background: #ffffff;
		color: var(--pc-text);
		box-shadow: none;
	}

	.pc-page-pdp #appCapsule > .section-heading,
	.pc-page-pdp #appCapsule > .mb-5,
	.pc-page-pdp #appCapsule > .review-pagi {
		width: min(100%, var(--pc-shell));
		margin-right: auto;
		margin-left: auto;
	}

	/* Cart */
	.pc-page-cart #appCapsule {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 390px;
		gap: 32px;
		align-items: start;
		width: min(100%, calc(var(--pc-shell) + (var(--pc-gutter) * 2)));
		margin-inline: auto;
	}

	.pc-page-cart #appCapsule > #loader {
		position: fixed;
	}

	.pc-page-cart #appCapsule > .section.tab-content {
		grid-column: 1;
		width: 100%;
		margin: 0 !important;
		padding: 0;
	}

	.pc-page-cart #appCapsule > .section.tab-content > .row {
		margin: 0;
	}

	.pc-page-cart #appCapsule > .section.btm-bg-grey {
		position: sticky;
		top: calc(var(--pc-sticky-header-height) + 24px);
		grid-column: 2;
		width: 100%;
		margin: 0 !important;
		padding: 0;
		background: transparent;
	}

	.pc-page-cart .cart-card {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 24px;
		min-height: 154px;
		padding: 20px 24px;
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
		box-shadow: 0 3px 12px rgba(17, 17, 17, 0.04);
	}

	.pc-page-cart .cart-card .product {
		flex: 1 1 auto;
		display: flex;
		align-items: center;
		gap: 22px;
		width: auto;
	}

	.pc-page-cart .cart-card .product-img {
		flex: 0 0 112px;
		width: 112px;
		height: 112px;
		border-radius: 5px;
		background: #faf9f6;
	}

	.pc-page-cart .cart-card .product-img::before {
		display: none;
	}

	.pc-page-cart .cart-card .product-img img {
		width: 100%;
		height: 100%;
		padding: 10px;
		object-fit: contain;
	}

	.pc-page-cart .cart-card .product-txt .title {
		margin: 0 0 10px;
		color: var(--pc-text);
		font-size: 17px;
		font-weight: 650;
	}

	.pc-page-cart .cart-card .product-txt .price {
		color: #7d5b00;
		font-size: 18px;
		font-weight: 750;
	}

	.pc-page-cart .cart-card .product-quantity {
		flex: 0 0 auto;
		padding: 0;
	}

	.pc-page-cart .cart-card .product-quantity button,
	.pc-page-cart .cart-card .product-quantity input {
		height: 38px;
		border-color: var(--pc-border);
		background: #ffffff;
		color: var(--pc-text);
	}

	.pc-page-cart .cart-card .product .delete-cart-btn {
		top: 12px;
		right: 12px;
		color: #a22b22;
	}

	.pc-page-cart .cart-total,
	.pc-page-checkout .cart-total {
		padding: 26px;
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
		color: var(--pc-text);
		box-shadow: 0 10px 30px rgba(17, 17, 17, 0.08);
	}

	.pc-page-cart .cart-total table,
	.pc-page-checkout .cart-total table {
		width: 100%;
		color: var(--pc-text);
	}

	.pc-page-cart .cart-total td,
	.pc-page-checkout .cart-total td {
		padding: 10px 0;
		border: 0;
		color: var(--pc-text-muted);
		font-size: 14px;
	}

	.pc-page-cart .cart-total tfoot,
	.pc-page-checkout .cart-total tfoot {
		border-top: 1px solid var(--pc-border);
	}

	.pc-page-cart .cart-total tfoot tr:first-child td,
	.pc-page-checkout .cart-total tr:last-child td {
		padding-top: 18px;
		color: var(--pc-text);
		font-size: 20px;
		font-weight: 750;
	}

	.pc-page-cart .cart-total .checkout-btn,
	.pc-page-checkout #next-btn .btn,
	.pc-page-checkout #topup-btn .btn {
		min-height: 52px;
		border-radius: 4px;
		background: var(--pc-brand-gold);
		color: #111111;
		font-weight: 750;
	}

	/* Checkout */
	.pc-page-checkout #appCapsule.checkout > .section {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 390px;
		gap: 18px 34px;
		align-items: start;
		width: min(100%, var(--pc-shell));
		margin: 0 auto !important;
		padding: 0;
	}

	.pc-page-checkout .progressbar {
		grid-column: 1 / -1;
		grid-row: 2;
		margin: 10px 0 36px;
	}

	.pc-page-checkout .pc-page-heading {
		grid-column: 1 / -1;
		grid-row: 1;
		margin-bottom: 4px;
	}

	.pc-page-checkout .progressbar li {
		color: var(--pc-text-muted);
	}

	.pc-page-checkout .progressbar li.active {
		color: #805c00;
	}

	.pc-page-checkout .branch-selector,
	.pc-page-checkout .checkout-option,
	.pc-page-checkout #guest-contact-section,
	.pc-page-checkout .payment-form,
	.pc-page-checkout #general-error,
	.pc-page-checkout #topup-btn,
	.pc-page-checkout #next-btn {
		grid-column: 1;
	}

	.pc-page-checkout .branch-selector {
		min-height: 56px;
		margin: 0 0 4px !important;
		padding: 14px 18px;
		border: 1px solid var(--pc-border);
		border-radius: 6px;
		background: #ffffff;
		color: var(--pc-text);
	}

	.pc-page-checkout .checkout-option {
		text-decoration: none;
	}

	.pc-page-checkout .checkout-option .card,
	.pc-page-checkout #guest-contact-section {
		margin: 0;
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
		color: var(--pc-text);
		box-shadow: none;
		transition: border-color 160ms ease, box-shadow 160ms ease;
	}

	.pc-page-checkout .checkout-option:hover .card,
	.pc-page-checkout .checkout-option:focus-visible .card,
	.pc-page-checkout .checkout-option.active .card {
		border-color: var(--pc-brand-gold-dark);
		box-shadow: 0 0 0 3px rgba(255, 187, 1, 0.16);
	}

	.pc-page-checkout .checkout-option .card-body,
	.pc-page-checkout #guest-contact-section .card-body {
		padding: 22px !important;
	}

	.pc-page-checkout .checkout-option h3,
	.pc-page-checkout #guest-contact-section h3 {
		color: var(--pc-text);
		font-size: 18px;
		font-weight: 700;
	}

	.pc-page-checkout .checkout-option p,
	.pc-page-checkout #guest-contact-section p {
		margin-bottom: 0;
		color: var(--pc-text-muted);
	}

	.pc-page-checkout .cart-total {
		position: sticky;
		top: calc(var(--pc-sticky-header-height) + 24px);
		grid-column: 2;
		grid-row: 3;
	}

	.pc-page-checkout #next-btn,
	.pc-page-checkout #topup-btn {
		grid-column: 2;
		grid-row: 4;
		margin-top: 0 !important;
	}

	.pc-page-checkout .form-control,
	.pc-page-checkout .form-select {
		min-height: 46px;
		border: 1px solid var(--pc-border);
		border-radius: 4px;
		background: #ffffff;
		color: var(--pc-text);
	}

	.pc-page-checkout .modal-content,
	.pc-page-cart .modal-content,
	.pc-page-pdp .modal-content {
		border: 1px solid var(--pc-border);
		border-radius: 10px;
		background: #ffffff !important;
		background-image: none !important;
		color: var(--pc-text) !important;
	}

	.pc-page-checkout .modal-header,
	.pc-page-cart .modal-header,
	.pc-page-pdp .modal-header {
		border-bottom: 1px solid var(--pc-border);
		color: var(--pc-text) !important;
		font-size: 22px;
		font-weight: 700;
	}

	.pc-page-checkout .modal-body,
	.pc-page-cart .modal-body,
	.pc-page-pdp .modal-body {
		color: var(--pc-text) !important;
	}

	.pc-page-checkout .modal-body p,
	.pc-page-cart .modal-body p,
	.pc-page-pdp .modal-body p,
	.pc-page-checkout .modal-body .section-heading,
	.pc-page-cart .modal-body .section-heading,
	.pc-page-pdp .modal-body .section-heading {
		color: var(--pc-text-muted) !important;
	}

	.pc-page-checkout .modal-header .btn-close,
	.pc-page-cart .modal-header .btn-close,
	.pc-page-pdp .modal-header .btn-close {
		display: inline-grid;
		place-items: center;
		width: 34px;
		height: 34px;
		padding: 9px !important;
		border-radius: 50%;
		background: #171717 !important;
		opacity: 1 !important;
	}

	.pc-page-checkout .modal-header .btn-close img,
	.pc-page-cart .modal-header .btn-close img,
	.pc-page-pdp .modal-header .btn-close img {
		width: 16px;
		height: 16px;
	}

	.pc-page-pdp #ModalGuestCheckout .btn-primary.text-grey {
		border-color: #2f2f2f !important;
		background: #2f2f2f !important;
		color: #ffffff !important;
	}

	/* Membership */
	.pc-page-membership #appCapsule {
		display: grid;
		grid-template-columns: 360px minmax(0, 1fr);
		gap: 32px;
		align-items: start;
		width: min(100%, calc(var(--pc-shell) + (var(--pc-gutter) * 2)));
		margin-inline: auto;
	}

	.pc-page-membership #appCapsule > .section {
		width: 100%;
		margin: 0 !important;
	}

	.pc-page-membership #appCapsule > .section:first-of-type {
		position: sticky;
		top: calc(var(--pc-sticky-header-height) + 24px);
		padding: 0;
	}

	.pc-page-membership .membership {
		position: relative;
		min-height: 230px;
		padding: 28px;
		border: 1px solid rgba(255, 187, 1, 0.45);
		border-radius: 14px;
		background: linear-gradient(145deg, #0f0f0f 0%, #2b2619 100%);
		box-shadow: 0 20px 42px rgba(17, 17, 17, 0.2);
		overflow: hidden;
	}

	.pc-page-membership .membership-card {
		position: relative;
		z-index: 2;
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		padding: 0;
		background: transparent;
		color: #ffffff;
	}

	.pc-page-membership .membership-card .name {
		font-size: 22px;
		font-weight: 650;
	}

	.pc-page-membership .membership-card .id {
		margin-top: 8px;
		color: rgba(255, 255, 255, 0.65);
		font-size: 13px;
		letter-spacing: 0.08em;
	}

	.pc-page-membership .membership > div:last-child img {
		position: absolute;
		right: -84px;
		bottom: -120px;
		width: 430px;
		height: auto;
		opacity: 0.18;
		transform: rotate(-8deg);
	}

	.pc-page-membership .platform {
		display: none;
	}

	.pc-page-membership .membership-details {
		padding: 34px;
		border: 1px solid var(--pc-border);
		border-radius: 10px;
		background: #ffffff;
		color: var(--pc-text);
	}

	.pc-page-membership .membership-benefits {
		padding: 24px 28px;
		border-radius: 8px;
		background: #171717;
		color: #ffffff;
	}

	.pc-page-membership .membership-benefits hr {
		border-color: rgba(255, 255, 255, 0.18);
	}

	.pc-page-membership .membership-details .nav-tabs {
		gap: 10px;
		border-bottom: 1px solid var(--pc-border);
	}

	.pc-page-membership .membership-details .nav-tabs .nav-link {
		min-height: 46px;
		padding: 0 18px;
		border: 0;
		border-bottom: 3px solid transparent;
		background: transparent;
		color: var(--pc-text-muted);
		font-weight: 650;
	}

	.pc-page-membership .membership-details .nav-tabs .nav-link.active {
		border-bottom-color: var(--pc-brand-gold-dark);
		color: var(--pc-text);
	}

	.pc-page-membership .membership-progress {
		padding: 28px 12px 10px;
		color: var(--pc-text);
	}

	.pc-page-membership .membership-progress h4 {
		color: var(--pc-text);
		font-size: 20px;
	}

	.pc-page-membership .membership-progress .progress {
		background: #e7e3d8;
	}

	.pc-page-membership .carousel-membership .splide__track {
		overflow: hidden;
	}

	.pc-page-membership .membership-details .card {
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
		color: var(--pc-text);
		overflow: hidden;
	}

	/* My account */
	.pc-page-account #appCapsule {
		width: min(100%, calc(var(--pc-shell) + (var(--pc-gutter) * 2)));
		margin-inline: auto;
	}

	.pc-page-account #appCapsule > .section {
		width: 100%;
		margin: 0 0 28px !important;
		padding: 30px;
		border: 1px solid var(--pc-border);
		border-radius: 10px;
		background: linear-gradient(135deg, #151515, #2b271d);
	}

	.pc-page-account .avatar-section {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0;
		background: transparent;
	}

	.pc-page-account .avatar-section .profile {
		display: flex;
		align-items: center;
		gap: 18px;
	}

	.pc-page-account .avatar-section .profile .name {
		color: #ffffff;
		font-size: 24px;
		font-weight: 650;
	}

	.pc-page-account .avatar-section .button {
		position: static;
		display: grid;
		place-items: center;
		width: 42px;
		height: 42px;
		border: 1px solid rgba(255, 255, 255, 0.24);
		border-radius: 50%;
		background: rgba(255, 255, 255, 0.08);
		color: var(--pc-brand-gold);
	}

	.pc-page-account .listview.image-listview {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 16px;
		width: 100%;
		margin: 0 !important;
		padding: 0;
		background: transparent;
	}

	.pc-page-account .listview.image-listview > li {
		margin: 0;
		border: 0;
		background: transparent;
	}

	.pc-page-account .listview.image-listview .item {
		display: flex;
		align-items: center;
		min-height: 78px;
		padding: 18px 20px;
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
		color: var(--pc-text);
		box-shadow: 0 3px 10px rgba(17, 17, 17, 0.04);
	}

	.pc-page-account .listview.image-listview .item:hover {
		border-color: #c2b898;
		box-shadow: 0 10px 24px rgba(17, 17, 17, 0.08);
	}

	.pc-page-account .listview.image-listview .item .in {
		width: 100%;
		border: 0;
		color: var(--pc-text);
	}

	.pc-page-account .listview.image-listview .item img {
		width: 28px;
		height: 28px;
		margin-right: 13px;
		object-fit: contain;
	}

	/* Store locator */
	.pc-page-heading {
		display: flex;
		align-items: end;
		justify-content: space-between;
		margin-bottom: 30px;
		padding-bottom: 24px;
		border-bottom: 1px solid var(--pc-border);
	}

	.pc-page-heading__eyebrow {
		margin-bottom: 7px;
		color: #7a5900;
		font-size: 12px;
		font-weight: 750;
		letter-spacing: 0.09em;
		text-transform: uppercase;
	}

	.pc-page-heading h1 {
		margin: 0;
		color: var(--pc-text);
		font-size: clamp(34px, 4vw, 52px);
		font-weight: 650;
	}

	.pc-page-store-locator #appCapsule > .section {
		padding: 0;
	}

	.pc-store-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 24px;
	}

	.pc-store-grid > a {
		display: block;
		text-decoration: none;
	}

	.pc-page-store-locator .blog-card.shop {
		position: relative;
		height: 300px;
		margin: 0 !important;
		border: 1px solid var(--pc-border);
		border-radius: 10px;
		background: #111111;
		overflow: hidden;
		box-shadow: 0 4px 14px rgba(17, 17, 17, 0.06);
	}

	.pc-page-store-locator .blog-card.shop::after {
		content: "";
		position: absolute;
		inset: 45% 0 0;
		background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.88));
	}

	.pc-page-store-locator .blog-card.shop img {
		width: 100%;
		height: 100%;
		border: 0 !important;
		object-fit: cover;
		transition: transform 180ms ease;
	}

	.pc-page-store-locator a:hover .blog-card.shop img {
		transform: scale(1.035);
	}

	.pc-page-store-locator .blog-card.shop .title {
		position: absolute;
		z-index: 2;
		inset: auto 24px 22px;
		padding: 0;
		background: transparent;
	}

	.pc-page-store-locator .blog-card.shop .title h2 {
		margin: 0;
		color: #ffffff;
		font-size: 22px;
		font-weight: 650;
	}

	.pc-page-store-detail #appCapsule {
		display: grid;
		grid-template-columns: minmax(0, 1.35fr) minmax(360px, 0.65fr);
		gap: 30px;
		align-items: start;
		width: min(100%, calc(var(--pc-shell) + (var(--pc-gutter) * 2)));
		margin-inline: auto;
	}

	.pc-page-store-detail #map {
		height: 620px;
		margin: 0 !important;
		border: 1px solid var(--pc-border);
		border-radius: 10px;
		overflow: hidden;
	}

	.pc-page-store-detail #appCapsule > .section {
		width: 100%;
		margin: 0 !important;
		padding: 0;
	}

	.pc-page-store-detail .card {
		margin: 0 !important;
		border: 1px solid var(--pc-border);
		border-radius: 10px;
		background: #ffffff;
		color: var(--pc-text);
	}

	.pc-page-store-detail .card-body {
		padding: 28px !important;
	}

	.pc-page-store-detail .card h3 {
		color: var(--pc-text);
		font-size: 28px;
	}

	/* Category index */
	.pc-page-categories #appCapsule > .section {
		padding: 0;
	}

	.pc-category-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 24px;
	}

	.pc-category-grid > a {
		display: block;
		text-decoration: none;
	}

	.pc-page-categories .blog-card.listing {
		position: relative;
		height: 270px;
		margin: 0 !important;
		border: 1px solid var(--pc-border);
		border-radius: 10px;
		background: #111111;
		overflow: hidden;
	}

	.pc-page-categories .blog-card.listing::after {
		content: "";
		position: absolute;
		inset: 40% 0 0;
		background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.9));
	}

	.pc-page-categories .blog-card.listing img {
		width: 100%;
		height: 100%;
		border: 0 !important;
		object-fit: cover;
		transition: transform 180ms ease;
	}

	.pc-page-categories a:hover .blog-card.listing img {
		transform: scale(1.035);
	}

	.pc-page-categories .blog-card.listing .title {
		position: absolute;
		z-index: 2;
		inset: auto 24px 22px;
		padding: 0;
		background: transparent;
	}

	.pc-page-categories .blog-card.listing .title h2 {
		margin: 0;
		color: #ffffff;
		font-size: 22px;
		font-weight: 650;
	}

	/* Full public-site desktop system */
	body.pc-public-page #appCapsule {
		min-height: calc(100vh - 310px);
	}

	body.pc-public-page #appCapsule .card:not(.product-card),
	body.pc-public-page #appCapsule .accordion-item {
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
		color: var(--pc-text);
		box-shadow: 0 3px 12px rgba(17, 17, 17, 0.04);
	}

	body.pc-public-page #appCapsule .card:not(.product-card) .card-body {
		padding: 24px;
	}

	body.pc-public-page #appCapsule .form-control,
	body.pc-public-page #appCapsule .form-select,
	body.pc-public-page #appCapsule select,
	body.pc-public-page #appCapsule textarea {
		min-height: 46px;
		border: 1px solid var(--pc-border);
		border-radius: 4px;
		background-color: #ffffff;
		color: var(--pc-text);
	}

	body.pc-public-page #appCapsule .form-control:focus,
	body.pc-public-page #appCapsule .form-select:focus,
	body.pc-public-page #appCapsule select:focus,
	body.pc-public-page #appCapsule textarea:focus {
		border-color: var(--pc-brand-gold-dark);
		box-shadow: 0 0 0 3px rgba(255, 187, 1, 0.16);
	}

	body.pc-public-page #appCapsule .btn-gold .btn,
	body.pc-public-page #appCapsule .btn-grey .btn {
		min-height: 46px;
		border-radius: 4px;
		font-weight: 700;
	}

	body.pc-public-page #appCapsule .btn-gold .btn {
		border-color: var(--pc-brand-gold);
		background: var(--pc-brand-gold);
		color: #111111;
	}

	body.pc-public-page #appCapsule .btn-grey .btn {
		border-color: #2b2b2b;
		background: #2b2b2b;
		color: #ffffff;
	}

	body.pc-public-page #appCapsule .nav-tabs {
		display: flex;
		gap: 8px;
		margin-bottom: 24px;
		border-bottom: 1px solid var(--pc-border);
		background: transparent;
	}

	body.pc-public-page #appCapsule .nav-tabs .nav-link {
		min-height: 46px;
		padding: 0 18px;
		border: 0;
		border-bottom: 3px solid transparent;
		background: transparent;
		color: var(--pc-text-muted);
		font-weight: 650;
	}

	body.pc-public-page #appCapsule .nav-tabs .nav-link.active {
		border-bottom-color: var(--pc-brand-gold-dark);
		color: var(--pc-text);
	}

	body.pc-public-page #appCapsule .pagination {
		justify-content: center;
		margin-top: 34px;
	}

	body.pc-public-page #appCapsule .pagination .page-link {
		border-color: var(--pc-border);
		background: #ffffff;
		color: var(--pc-text);
	}

	body.pc-public-page #appCapsule .pagination .active .page-link {
		border-color: #111111;
		background: #111111;
		color: var(--pc-brand-gold);
	}

	body.pc-public-page #appCapsule .no-record,
	body.pc-public-page #appCapsule .no-record-shop {
		padding: 56px 30px;
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
		color: var(--pc-text-muted);
		text-align: center;
	}

	body.pc-public-page #appCapsule .no-record img {
		width: 110px;
		height: auto;
	}

	/* Authentication */
	.pc-route-login #appCapsule,
	.pc-route-register #appCapsule,
	.pc-route-forgot-password #appCapsule,
	.pc-route-reset-password #appCapsule {
		width: min(100%, 580px);
		margin-inline: auto;
		padding-top: calc(var(--pc-header-height) + 58px) !important;
	}

	.pc-route-login #appCapsule > .section,
	.pc-route-register #appCapsule > .section,
	.pc-route-forgot-password #appCapsule > .section,
	.pc-route-reset-password #appCapsule > .section {
		width: 100%;
		margin: 0 0 18px !important;
		padding: 0;
	}

	.pc-route-login #appCapsule > .section:first-of-type,
	.pc-route-register #appCapsule > .section:first-of-type,
	.pc-route-forgot-password #appCapsule > .section:first-of-type,
	.pc-route-reset-password #appCapsule > .section:first-of-type {
		margin-bottom: 28px !important;
		text-align: center;
	}

	.pc-route-login #appCapsule h1,
	.pc-route-register #appCapsule h1,
	.pc-route-forgot-password #appCapsule h1,
	.pc-route-reset-password #appCapsule h1 {
		margin: 0 0 8px;
		color: var(--pc-text) !important;
		font-size: 38px;
		font-weight: 650;
	}

	.pc-route-login #appCapsule form,
	.pc-route-register #appCapsule form,
	.pc-route-forgot-password #appCapsule form,
	.pc-route-reset-password #appCapsule form {
		width: 100%;
	}

	.pc-route-login #appCapsule .card,
	.pc-route-register #appCapsule .card,
	.pc-route-forgot-password #appCapsule .card,
	.pc-route-reset-password #appCapsule .card {
		margin-bottom: 22px;
	}

	/* Account forms, wallet and addresses */
	.pc-route-edit-profile #appCapsule,
	.pc-route-shipping-info #appCapsule,
	.pc-route-wallet #appCapsule,
	.pc-route-referral #appCapsule {
		width: min(100%, 860px);
		margin-inline: auto;
	}

	.pc-route-edit-profile #appCapsule > form,
	.pc-route-edit-profile #appCapsule > form > .section,
	.pc-route-shipping-info #appCapsule > .section,
	.pc-route-wallet #appCapsule > .section,
	.pc-route-referral #appCapsule > .section {
		width: 100%;
	}

	.pc-route-edit-profile .avatar-section {
		padding: 28px;
		border-radius: 10px;
		background: linear-gradient(135deg, #111111, #2b2618);
	}

	.pc-route-edit-profile .avatar-img {
		border: 3px solid var(--pc-brand-gold);
	}

	.pc-route-shipping-info .shipping-information {
		display: flex;
		align-items: center;
		gap: 22px;
		min-height: 92px;
		color: var(--pc-text);
	}

	.pc-route-shipping-info .shipping-information.active {
		padding-left: 14px;
		border-left: 4px solid var(--pc-brand-gold);
	}

	.pc-route-wallet .wallet-balance,
	.pc-route-mission-reward .rewards-balance {
		padding: 30px;
		border: 1px solid rgba(255, 187, 1, 0.46);
		border-radius: 12px;
		background: linear-gradient(135deg, #111111, #2b2618);
		color: #ffffff;
	}

	/* Orders, history and notifications */
	.pc-route-order #appCapsule > .orders {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 18px;
	}

	.pc-route-order #appCapsule > .orders > .card {
		margin: 0 !important;
	}

	.pc-route-order .orders .list {
		display: flex;
		align-items: center;
		gap: 16px;
		min-height: 92px;
		color: var(--pc-text);
		text-decoration: none;
	}

	.pc-route-order .orders .list img {
		width: 42px;
		height: 42px;
		object-fit: contain;
	}

	.pc-route-order-list #appCapsule > .orders,
	.pc-route-order-detail #appCapsule,
	.pc-route-transaction-history #appCapsule,
	.pc-route-points-history #appCapsule,
	.pc-route-notification #appCapsule {
		width: min(100%, 1000px);
		margin-inline: auto;
	}

	.pc-route-order-list .order,
	.pc-route-transaction-history .details,
	.pc-route-points-history .details,
	.pc-route-notification .notification .details {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 24px;
		min-height: 82px;
		padding: 18px 20px;
		border: 1px solid var(--pc-border);
		border-radius: 7px;
		background: #ffffff;
		color: var(--pc-text);
	}

	.pc-route-transaction-history .points-history > .date,
	.pc-route-points-history .points-history > .date,
	.pc-route-notification .notification > .date {
		margin: 30px 0 12px;
		color: #7a5900;
		font-size: 13px;
		font-weight: 750;
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}

	.pc-route-notification .notification a {
		color: inherit !important;
		text-decoration: none;
	}

	.pc-route-order-detail #appCapsule > .section {
		width: 100%;
		margin-top: 20px !important;
	}

	/* Campaigns, events and editorial */
	.pc-route-event-calendar #appCapsule,
	.pc-route-campaign-list #appCapsule,
	.pc-route-recipe #appCapsule,
	.pc-route-recipe-detail #appCapsule,
	.pc-route-event-detail #appCapsule,
	.pc-route-campaign #appCapsule {
		width: min(100%, var(--pc-shell));
		margin-inline: auto;
	}

	.pc-route-event-calendar .btm-bg-grey,
	.pc-route-campaign-list .btm-bg-grey {
		padding: 34px !important;
		border: 1px solid var(--pc-border);
		border-radius: 10px;
		background: #ffffff;
	}

	.pc-route-event-calendar .event,
	.pc-route-campaign-list .event {
		display: grid;
		grid-template-columns: minmax(220px, 0.4fr) minmax(0, 1fr);
		gap: 22px;
		margin: 16px 0 26px;
		padding: 22px;
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
		color: var(--pc-text);
	}

	.pc-route-event-calendar .event > h3,
	.pc-route-campaign-list .event > h3 {
		grid-column: 1 / -1;
		margin: 0;
		color: var(--pc-text);
	}

	.pc-route-event-calendar .event-info,
	.pc-route-campaign-list .event-info {
		display: contents;
	}

	.pc-route-event-calendar .event-info img,
	.pc-route-campaign-list .event-info img {
		width: 100%;
		height: 180px;
		border-radius: 6px;
		object-fit: cover;
	}

	.pc-route-recipe #appCapsule .row {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 24px;
		margin: 0;
	}

	.pc-route-recipe #appCapsule .row > .col-12 {
		width: auto;
		margin: 0 !important;
		padding: 0;
	}

	.pc-route-recipe .blog-card.recipe {
		height: 100%;
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
		overflow: hidden;
	}

	.pc-route-recipe .blog-card.recipe img {
		height: 240px;
		object-fit: cover;
	}

	.pc-route-recipe .blog-card.recipe .text {
		padding: 20px;
	}

	.pc-route-recipe-detail #appCapsule > .section {
		max-width: 900px;
		padding: 30px;
		border: 1px solid var(--pc-border);
		border-radius: 10px;
		background: #ffffff;
	}

	.pc-route-recipe-detail #appCapsule > .section img {
		width: 100%;
		max-height: 520px;
		object-fit: cover;
	}

	/* Rewards and secondary services */
	.pc-route-rewards #appCapsule,
	.pc-route-mission-reward #appCapsule,
	.pc-route-leftover-liquor #appCapsule,
	.pc-route-room #appCapsule,
	.pc-route-referral #appCapsule,
	.pc-route-faq #appCapsule {
		width: min(100%, 1040px);
		margin-inline: auto;
	}

	.pc-route-rewards .my-coupon,
	.pc-route-mission-reward .misson-info-container,
	.pc-route-leftover-liquor .leftover-liquor-container > a > .info {
		border: 1px solid var(--pc-border);
		border-radius: 8px;
		background: #ffffff;
		color: var(--pc-text);
		box-shadow: 0 4px 14px rgba(17, 17, 17, 0.05);
	}

	.pc-route-room .room-section,
	.pc-route-referral #appCapsule > .section {
		padding: 36px;
		border: 1px solid var(--pc-border);
		border-radius: 10px;
		background: #ffffff;
	}

	.pc-route-room .room-logo {
		max-width: 260px;
	}

	.pc-route-referral .img-fluid {
		max-height: 460px;
		object-fit: contain;
	}

	.pc-route-faq #search,
	.pc-route-faq #appCapsule > .section {
		width: 100%;
	}

	.pc-route-faq .accordion-item {
		margin-bottom: 12px;
		overflow: hidden;
	}

	.pc-route-faq .accordion-button {
		min-height: 58px;
		background: #ffffff;
		color: var(--pc-text);
		font-weight: 650;
	}

	/* Legal, support and app download */
	.pc-route-privacy-policy .grid-container,
	.pc-route-tnc .grid-container,
	.pc-route-terms-of-use .grid-container,
	.pc-route-refund-policy .grid-container,
	.pc-route-shipping-policy .grid-container,
	.pc-route-contact-us .grid-container {
		width: min(calc(100% - (var(--pc-gutter) * 2)), 1040px);
		margin: 0 auto;
		padding: calc(var(--pc-header-height) + 50px) 50px 60px !important;
		border-radius: 0 0 10px 10px;
		background: #ffffff;
		color: var(--pc-text);
		line-height: 1.7;
	}

	.pc-route-privacy-policy .page-title,
	.pc-route-tnc .page-title,
	.pc-route-terms-of-use .page-title,
	.pc-route-refund-policy .page-title,
	.pc-route-shipping-policy .page-title,
	.pc-route-contact-us .page-title {
		margin-bottom: 30px;
		padding-bottom: 20px;
		border-bottom: 1px solid var(--pc-border);
	}

	.pc-route-apps #appCapsule {
		display: grid;
		place-items: center;
		width: min(100%, 900px);
		margin-inline: auto;
	}

	.pc-route-apps .index-container {
		width: 100%;
		padding: 56px;
		border: 1px solid var(--pc-border);
		border-radius: 12px;
		background: linear-gradient(135deg, #111111, #302816);
		box-shadow: 0 20px 44px rgba(17, 17, 17, 0.18);
	}

	.pc-route-apps .index-container > .logo {
		width: auto;
		max-width: 190px;
		max-height: 58px;
	}

	.pc-route-apps .index-container .black-logo {
		display: none;
	}

	@media screen and (max-width: 1279px) {
		.pc-page-membership #appCapsule {
			grid-template-columns: 320px minmax(0, 1fr);
		}

		.pc-page-account .listview.image-listview,
		.pc-store-grid,
		.pc-category-grid,
		.pc-route-recipe #appCapsule .row {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

		.pc-route-order #appCapsule > .orders {
			grid-template-columns: repeat(3, minmax(0, 1fr));
		}
	}
}

/* Final cascade guards for legacy selectors with higher specificity. */
@media screen {
	body.pc-public-page.dark-mode {
		background-color: var(--pc-surface-muted) !important;
		color: var(--pc-text) !important;
	}

	body.pc-public-page:not(.pc-route-campaign):not(.pc-route-concert) {
		background-image: none !important;
	}

	body.pc-public-page #appCapsule {
		background-color: transparent !important;
	}

	body.pc-page-home[data-page="home"] .wallet-card-section {
		margin: 0 auto !important;
	}

	body.pc-page-home[data-page="home"] .pc-home-offers__heading h2,
	body.pc-page-home[data-page="home"] .section-heading .title {
		color: var(--pc-text) !important;
	}

	.pc-page-home .product-card > img,
	.pc-page-plp .product-card > img,
	.pc-route-wishlist .product-card > img {
		height: 260px !important;
		object-fit: contain !important;
	}

	.pc-page-home .feature-product,
	.pc-page-plp .feature-product,
	.pc-route-wishlist .feature-product {
		background: #ffffff !important;
		color: var(--pc-text) !important;
	}

	.pc-page-home .feature-product .title,
	.pc-page-plp .feature-product .title,
	.pc-route-wishlist .feature-product .title {
		color: var(--pc-text) !important;
	}

	.pc-page-plp .section-heading .title {
		color: var(--pc-text) !important;
	}

	.pc-page-pdp .product-detail-section {
		min-height: 0 !important;
		grid-template-columns: minmax(0, 0.95fr) minmax(460px, 1.05fr) !important;
	}

	.pc-page-pdp .product-detail-section .image-container,
	.pc-page-pdp .product-detail-section .detail {
		width: 100% !important;
	}

	.pc-page-pdp .product-detail-section .image-container,
	.pc-page-pdp .product-detail-section .swiper {
		height: 500px !important;
		min-height: 500px !important;
	}

	.pc-page-pdp .product-detail-section .product-detail-img,
	.pc-page-pdp .product-detail-section .swiper-slide img {
		width: min(100%, 440px) !important;
		height: 460px !important;
		object-fit: contain !important;
	}

	.pc-page-pdp .product-detail-section .detail {
		align-self: start;
		padding-right: 0 !important;
	}

	.pc-route-guest-cart,
	.pc-route-payment-status {
		background-image: none !important;
	}

	.pc-route-guest-cart #appCapsule,
	.pc-route-payment-status #appCapsule {
		width: min(calc(100% - (var(--pc-gutter) * 2)), 780px) !important;
		margin-inline: auto !important;
	}

	.pc-route-guest-cart #appCapsule h1,
	.pc-route-payment-status #appCapsule h1 {
		color: var(--pc-text) !important;
	}

	.pc-page-store-locator .blog-card.shop {
		height: 330px !important;
	}

	.pc-route-leaderboard .leaderboard-container,
	.pc-route-leaderboard .purchase-container,
	.pc-route-leaderboard .rank {
		width: 100% !important;
		max-width: 100% !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		box-sizing: border-box;
	}

	.pc-state-card {
		width: min(100%, 720px) !important;
		margin: 40px auto !important;
		padding: 52px !important;
		border: 1px solid var(--pc-border);
		border-radius: var(--pc-radius-lg);
		background: #ffffff;
		box-shadow: var(--pc-shadow-sm);
		text-align: center;
	}

	.pc-state-card p {
		margin: 12px 0 28px;
		color: var(--pc-text-muted) !important;
	}

	.pc-store-detail-title {
		margin: 0 0 16px;
		font-family: Georgia, "Times New Roman", serif;
		font-size: clamp(30px, 3vw, 46px);
		line-height: 1.08;
		color: var(--pc-text);
	}
}

/* Remediation cascade guards for selectors repeated by the legacy desktop pack. */
@media screen {
	.pc-header__utility {
		min-height: 26px;
		max-height: 26px;
	}

	.pc-header__utility-inner {
		min-height: 26px;
	}

	.pc-header__main-inner {
		min-height: 70px;
		grid-template-columns: 168px minmax(300px, 1fr) auto;
		gap: 28px;
	}

	.pc-header__nav,
	.pc-header__nav-link {
		min-height: 44px;
	}

	.pc-header__nav-link {
		padding-inline: 14px;
		white-space: nowrap;
	}

	.pc-header.is-condensed .pc-header__utility-inner {
		display: none;
	}

	.pc-header.is-condensed .pc-header__main-inner {
		min-height: 60px;
	}

	.pc-page-plp .filter-container {
		position: relative;
		top: auto;
		align-self: start;
		max-height: none;
		overflow: visible;
	}

	.pc-page-plp .product-container {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.pc-page-pdp .product-detail-section .product-details .price {
		border-color: var(--pc-border) !important;
		background: #ffffff !important;
		color: var(--pc-text) !important;
	}

	.pc-page-pdp .product-detail-section .product-details .member-price {
		border-color: #b88914 !important;
		background: #171717 !important;
		color: var(--pc-brand-gold) !important;
	}

	.pc-page-pdp .product-detail-section .share-container,
	.pc-page-pdp .product-detail-section .wishlist-container {
		position: absolute !important;
		top: 18px !important;
		bottom: auto !important;
		left: auto !important;
		display: flex !important;
		align-items: center;
		justify-content: center;
		margin: 0 !important;
		z-index: 4;
	}

	.pc-page-pdp .product-detail-section .share-container {
		right: 70px !important;
	}

	.pc-page-pdp .product-detail-section .wishlist-container {
		right: 18px !important;
	}

	.pc-page-pdp .product-detail-section .share-container .share,
	.pc-page-pdp .product-detail-section .wishlist-container .wishlist-icon {
		position: static !important;
		width: 20px;
		height: 20px;
		margin: 0 !important;
		font-size: 20px;
		color: #171717 !important;
	}

	.pc-page-pdp .pc-pdp-stock .pc-stock-value {
		display: inline-flex !important;
		align-items: center;
		justify-content: flex-start;
		gap: 8px;
		width: auto !important;
		height: auto !important;
		border-radius: 0 !important;
		background: transparent !important;
		white-space: nowrap;
		font-weight: 700;
	}

	.pc-page-pdp .pc-pdp-stock .pc-stock-value .fa {
		display: inline-grid;
		place-items: center;
		width: 26px;
		height: 26px;
		border-radius: 50%;
		background: #ffffff;
		flex: 0 0 26px;
	}

	.pc-route-guest-cart #appCapsule h1.text-gold {
		color: var(--pc-text) !important;
		-webkit-text-fill-color: var(--pc-text) !important;
	}

	body.pc-route-cart:not(.pc-page-cart) {
		background-image: none !important;
	}

	body.pc-route-cart:not(.pc-page-cart) #appCapsule {
		display: grid;
		place-content: center;
		width: min(calc(100% - (var(--pc-gutter) * 2)), 780px) !important;
		margin-inline: auto !important;
	}

	body.pc-route-cart:not(.pc-page-cart) #appCapsule h1.text-gold {
		color: var(--pc-text) !important;
		-webkit-text-fill-color: var(--pc-text) !important;
	}

	body.pc-route-cart:not(.pc-page-cart) #appCapsule .card-body > a.btn-primary.text-grey {
		border-color: #2f2f2f !important;
		background: #2f2f2f !important;
		color: #ffffff !important;
	}

	.pc-route-login #appCapsule,
	.pc-route-forgot-password #appCapsule,
	.pc-route-reset-password #appCapsule {
		width: min(calc(100% - (var(--pc-gutter) * 2)), 560px);
		padding-top: calc(var(--pc-header-height) + 44px) !important;
	}

	.pc-route-register #appCapsule {
		width: min(calc(100% - (var(--pc-gutter) * 2)), 880px);
		padding-top: calc(var(--pc-header-height) + 44px) !important;
	}

	.pc-route-register #appCapsule .card-body {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 18px 24px;
		padding: 32px !important;
	}

	.pc-route-recipe .blog-card.recipe {
		height: 340px;
	}

	.pc-route-event-calendar .event,
	.pc-route-campaign-list .event {
		padding: 0;
		overflow: hidden;
	}

	.pc-route-leaderboard .branch-btn {
		background: #f5f1e8;
		color: var(--pc-text) !important;
	}

	.pc-route-leaderboard .branch-btn.active {
		background: var(--pc-brand-gold);
		color: #111111 !important;
	}

	.pc-route-leaderboard .rank {
		background: #ffffff;
		color: var(--pc-text) !important;
	}

	.pc-route-leaderboard .rank.gold {
		background: #fff7dc;
	}
}

@media screen and (min-width: 1280px) and (max-width: 1439px) {
	.pc-header__main-inner {
		grid-template-columns: 150px minmax(280px, 1fr) auto;
		gap: 18px;
	}

	.pc-header__logo {
		width: 146px;
	}

	.pc-header__actions {
		gap: 14px;
	}

	.pc-header__nav-link {
		padding-inline: 10px;
		font-size: 13px;
	}
}

@media screen and (min-width: 1600px) {
	.pc-page-plp .product-container {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

/* Responsive storefront: shared PC components, reflowed rather than scaled.
 * Retain the existing forms, modal triggers, routes and product handlers. */
body.pc-public-page #age-confirm-modal .modal-content {
	background: #ffffff !important; color: var(--pc-text) !important;
}
body.pc-public-page #age-confirm-modal .modal-title,
body.pc-public-page #age-confirm-modal .modal-body p { color: var(--pc-text) !important; }
body.pc-public-page #age-confirm-modal .modal-footer { border-top: 1px solid var(--pc-border) !important; }
@media screen and (max-width: 1279.98px) {
	:root {
		--pc-gutter: 16px;
		--pc-header-height: 158px;
		--pc-sticky-header-height: 158px;
	}
	body.pc-public-page { font-size: 14px; }
	body.pc-public-page .download-app-header { display: none !important; }
	body.pc-public-page #appCapsule {
		padding: calc(var(--pc-header-height) + 24px) var(--pc-gutter) 32px !important;
		min-height: calc(100vh - 300px);
	}
	body.pc-public-page #appCapsule > *,
	body.pc-public-page .pc-shell > * { min-width: 0; }
	body.pc-public-page #appCapsule h1,
	body.pc-public-page .pc-auto-page-heading h1,
	body.pc-public-page .pc-store-detail-title {
		font-size: clamp(28px, 5vw, 38px) !important;
		line-height: 1.15;
		overflow-wrap: anywhere;
	}
	body.pc-public-page #appCapsule .section-heading .title { font-size: 24px; color: var(--pc-text) !important; }
	body.pc-public-page .pc-page-heading,
	body.pc-public-page .pc-auto-page-heading { margin-bottom: 20px; padding-bottom: 16px; gap: 12px; }
	body.pc-public-page input:not([type=checkbox]):not([type=radio]),
	body.pc-public-page select,
	body.pc-public-page textarea { max-width: 100%; font-size: 16px !important; }
	body.pc-public-page .modal-dialog { margin: 16px auto; width: calc(100% - 32px); max-width: 560px; }
	body.pc-public-page .modal-body { padding: 20px !important; }
	body.pc-public-page .modal-header { padding: 16px 20px !important; }
	body.pc-public-page .modal-header .btn-close { min-width: 44px; min-height: 44px; }

	/* Two-row header: logo/actions, then a full-width usable search field. */
	.pc-header__utility { display: none; }
	.pc-header__main-inner {
		display: grid; grid-template-columns: minmax(0, 1fr) auto;
		gap: 4px 8px; min-height: 114px; padding: 8px 0;
	}
	.pc-header__brand { grid-column: 1; grid-row: 1; min-width: 0; }
	.pc-header__logo { width: 128px; max-width: 100%; max-height: 40px; }
	.pc-header__actions { grid-column: 2; grid-row: 1; gap: 0; }
	.pc-header__action { min-width: 44px; min-height: 44px; justify-content: center; padding: 0 6px; }
	.pc-header__action > span:not(.pc-header__badge):not(.pc-header__action-icon) { display: none; }
	.pc-header__action > span.pc-header__action-icon { display: inline-block !important; }
	.pc-header__language .pc-header__action img { display: none; }
	.pc-header__language .pc-header__action > span { display: inline !important; text-transform: uppercase; }
	.pc-header__search { grid-column: 1 / -1; grid-row: 2; width: 100%; max-width: none; }
	.pc-header__search-input { height: 44px; }
	.pc-header__nav { overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; }
	.pc-header__nav::-webkit-scrollbar { display: none; }
	.pc-header__nav-item,
	.pc-header__nav-link { flex: 0 0 auto; }
	.pc-header__nav-link { padding-inline: 12px; font-size: 13px; }
	.pc-mega-menu {
		position: fixed; inset: var(--pc-header-height) 16px auto;
		width: auto; max-height: calc(100dvh - var(--pc-header-height) - 24px);
		overflow-y: auto; overscroll-behavior: contain; padding: 20px;
	}
	.pc-mega-menu__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 12px; }
	.pc-header__nav-item--mega:hover .pc-mega-menu:not(.is-open) { display: none; }
	.pc-mega-menu a { min-height: 44px; display: flex; align-items: center; line-height: 1.3; }
	.pc-mega-menu__title { font-size: 12px; }
	.pc-footer { margin-top: 32px; padding: 32px 0 max(24px, env(safe-area-inset-bottom)); }
	.pc-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 20px; }
	.pc-footer__brand { grid-column: 1 / -1; }
	.pc-footer a { min-height: 36px; }
	.pc-footer__legal-inner { flex-direction: column; align-items: flex-start; padding-block: 20px; gap: 16px; }
	.pc-footer__legal nav { flex-wrap: wrap; gap: 8px 16px; }

	/* Home modules retain their desktop order and content. */
	body.pc-page-home[data-page="home"] #appCapsule { padding-inline: 0 !important; }
	body.pc-page-home[data-page="home"] .wallet-card-section { padding-inline: 16px; }
	body.pc-page-home[data-page="home"] .wallet-card-section .carousel-inner,
	body.pc-page-home[data-page="home"] .wallet-card-section .carousel-item,
	body.pc-page-home[data-page="home"] .wallet-card-section .carousel-item img {
		height: 400px !important;
	}
	body.pc-page-home[data-page="home"] .pc-home-hero-copy {
		left: 16px; right: 16px; top: auto; bottom: 32px; transform: none;
		width: auto; max-width: 500px; padding: 20px;
	}
	body.pc-page-home[data-page="home"] .pc-home-hero-copy h1 { font-size: 30px !important; }
	body.pc-page-home[data-page="home"] .pc-home-hero-copy p { font-size: 14px; }
	body.pc-page-home[data-page="home"] #appCapsule > .section { margin-top: 32px !important; }
	body.pc-page-home[data-page="home"] .pc-home-offers { margin-top: 28px; }
	body.pc-page-home[data-page="home"] .pc-home-offers__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	body.pc-page-home[data-page="home"] .pc-home-offer { min-height: 132px; padding: 16px; }
	body.pc-page-home[data-page="home"] .pc-home-member { flex-direction: column; align-items: flex-start; gap: 20px; padding: 24px; }
	body.pc-page-home[data-page="home"] .pc-home-member h2 { font-size: 26px; }
	body.pc-page-home[data-page="home"] .pc-home-member__cta { width: 100%; }
	body.pc-page-home[data-page="home"] .carousel-home-icons { flex-wrap: wrap; gap: 16px; padding: 20px 0; }

	/* PLP uses the existing touch filter drawer instead of a narrow sidebar. */
	.pc-page-plp .filter-container { display: none !important; }
	.pc-page-plp .section-heading .leftover-history { display: inline-flex !important; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; color: var(--pc-text); }
	.pc-page-plp .product-container { width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 12px; }
	.pc-page-plp .filter-offcanvas { display: flex !important; width: min(90vw, 400px); max-width: 100%; background: #fff !important; color: var(--pc-text); z-index: 3001; }
	/* Legacy filled buttons force visibility:visible; do not let them escape
	 * the closed drawer's visibility inheritance. */
	body.pc-public-page #appCapsule .filter-offcanvas:not(.show):not(.showing) * { visibility: hidden !important; }
	.pc-page-plp .filter-offcanvas .offcanvas-body { padding: 20px; }
	.pc-page-plp .filter-offcanvas .filter-title,
	.pc-page-plp .filter-offcanvas label,
	.pc-page-plp .filter-offcanvas .category-collapse { color: var(--pc-text) !important; }
	.pc-page-plp .filter-offcanvas .form-check { min-height: 44px; display: flex; align-items: center; gap: 12px; }
	.pc-page-plp .filter-offcanvas .btn-close { min-width: 44px; min-height: 44px; }
	body.pc-public-page #appCapsule .product-card { min-height: 310px; }
	body.pc-public-page #appCapsule .product-card > img { height: 176px !important; padding: 16px 12px 8px !important; }
	body.pc-public-page #appCapsule .product-card .feature-product { padding: 12px; min-height: 148px; background: #ffffff !important; color: var(--pc-text) !important; }
	body.pc-public-page #appCapsule .product-card .feature-product .title { font-size: 14px; min-height: 40px; color: var(--pc-text) !important; }
	body.pc-public-page #appCapsule .product-card .feature-product .add-fav {
		top: -164px; right: 8px; width: 44px; height: 44px;
		display: grid; place-items: center; border: 1px solid var(--pc-border); background: #fff;
	}
	/* Render the existing wishlist state without waiting for the lazy icon
	 * component; its original .hide toggles and click handler remain intact. */
	body.pc-public-page #appCapsule .product-card .add-fav::before { content: "♡"; color: #171717; font: 28px/1 Arial, sans-serif; }
	body.pc-public-page #appCapsule .product-card .add-fav:has(.icon-heart2:not(.hide))::before { content: "♥"; color: #bd294e; }
	body.pc-public-page #appCapsule .product-card .add-fav ion-icon { opacity: 0; position: absolute; }
	body.pc-public-page #appCapsule .product-card .pc-product-card__meta { flex-wrap: wrap; gap: 4px; font-size: 10px; color: var(--pc-text-muted) !important; }
	body.pc-public-page #appCapsule .product-card .pc-product-card__brand { min-width: 0; max-width: 100%; }
	body.pc-public-page #appCapsule .product-card .feature-product .price { font-size: 18px; color: #805b00 !important; }
	body.pc-public-page #appCapsule .product-card .feature-product .price + .price { font-size: 14px; margin-top: 6px; color: var(--pc-text-muted) !important; }
	body.pc-public-page #appCapsule .product-card .feature-product .price + .price .discount { display: block; font-size: 12px; line-height: 1.4; }
	body.pc-public-page #appCapsule .product-card .feature-product .discount,
	body.pc-public-page #appCapsule .product-card .feature-product .rating { color: #805b00 !important; }
	body.pc-public-page #appCapsule .product-card .feature-product .title,
	body.pc-public-page #appCapsule .product-card .feature-product .price,
	body.pc-public-page #appCapsule .product-card .feature-product .discount,
	body.pc-public-page #appCapsule .product-card .pc-product-card__meta { -webkit-text-fill-color: currentColor !important; }
	.pc-page-plp .pc-plp-toolbar { flex-wrap: wrap; gap: 12px; }
	.pc-page-plp .pc-plp-toolbar > div { width: 100%; justify-content: space-between; }
	.pc-page-plp .pc-plp-sort { min-width: 0; width: 65%; }
	.pc-page-plp .alphabet-brand { padding: 16px; }
	.pc-page-plp .no-record-shop { min-height: 300px; padding: 40px 20px; }

	/* Show the same first product form that existing purchase JS serializes. */
	.pc-page-pdp .product-detail-section { grid-template-columns: minmax(0, 1fr) !important; gap: 24px; padding: 16px; }
	.pc-page-pdp .product-detail-section .detail.show-for-large { display: block !important; position: static; }
	.pc-page-pdp .product-detail-section .image-container { position: relative; top: auto; }
	.pc-page-pdp .product-detail-section .image-container,
	.pc-page-pdp .product-detail-section .swiper { height: 330px !important; min-height: 330px !important; }
	.pc-page-pdp .product-detail-section .product-detail-img,
	.pc-page-pdp .product-detail-section .swiper-slide img { height: 300px !important; width: 100% !important; }
	.pc-page-pdp .product-detail-section .detail > .info { grid-template-columns: 100px minmax(0, 1fr); gap: 12px; }
	.pc-page-pdp .product-detail-section .product-details .bottom { flex-wrap: wrap; gap: 12px; }
	.pc-page-pdp .product-detail-section .product-details .price,
	.pc-page-pdp .product-detail-section .product-details .member-price { min-width: 0; padding: 12px; }
	.pc-page-pdp #appCapsule > .section.full { padding: 20px 16px; margin-top: 24px !important; }
	body.pc-page-pdp #appCapsule > .section.full .product-details,
	body.pc-page-pdp #appCapsule > .section.full .product-details p,
	body.pc-page-pdp #appCapsule > .section.full .product-details span {
		color: var(--pc-text-muted) !important; font-size: 15px !important; line-height: 1.65; text-align: left !important;
	}
	.pc-page-pdp #appCapsule > .section.full .hide-for-large,
	.pc-page-pdp .sticky-footer { display: none !important; }

	/* Transaction and account pages: natural DOM order, no sticky sidebars. */
	.pc-page-cart #appCapsule,
	.pc-page-checkout #appCapsule.checkout > .section,
	.pc-page-membership #appCapsule,
	.pc-page-store-detail #appCapsule { grid-template-columns: minmax(0, 1fr); gap: 20px; }
	.pc-page-cart #appCapsule > .section,
	.pc-page-checkout #appCapsule.checkout > .section > *,
	.pc-page-membership #appCapsule > .section { grid-column: 1 !important; grid-row: auto !important; position: static !important; width: 100%; }
	.pc-page-cart .cart-total,
	.pc-page-checkout .cart-total { position: static; padding: 20px; }
	.pc-page-cart .cart-card { padding: 16px; flex-wrap: wrap; gap: 12px; }
	.pc-page-cart .cart-card .product { min-width: 0; gap: 12px; }
	.pc-page-cart .cart-card .product .delete-cart-btn { position: absolute !important; top: 12px; right: 12px; }
	.pc-page-cart .cart-card .product .product-txt { min-width: 0; padding-right: 44px !important; }
	body.pc-page-cart #appCapsule .cart-card .title { color: var(--pc-text) !important; -webkit-text-fill-color: currentColor !important; font-size: 16px; line-height: 1.4; }
	.pc-page-cart .cart-card .product .product-img { width: 80px; flex-basis: 80px; }
	.pc-page-cart .cart-card .product-quantity { margin-left: auto; }
	.pc-page-checkout .progressbar { margin: 0 0 16px; }
	.pc-page-checkout .progressbar li { font-size: 12px; line-height: 1.35; }
	.pc-page-checkout .checkout-option .card-body,
	.pc-page-checkout #guest-contact-section .card-body { padding: 16px !important; }
	.pc-page-checkout .checkout-option .card-body { padding-right: 48px !important; }
	.pc-page-checkout .checkout-option .card-body > .d-flex { flex-wrap: wrap; }
	.pc-page-checkout .checkout-option .card-body > .d-flex img { width: 88px; height: auto; }
	.pc-page-checkout .payment-form { padding-right: 48px; }
	body.pc-page-membership #appCapsule .membership { padding: 24px; }
	body.pc-page-membership #appCapsule .membership-card { padding: 0; gap: 12px; flex-wrap: wrap; }
	body.pc-page-membership #appCapsule .membership-card .text { margin: 0 !important; padding: 0 !important; }
	body.pc-page-membership #appCapsule .membership-details { padding: 20px; }
	body.pc-page-membership #appCapsule .membership-benefits {
		padding: 0; background: #ffffff !important; color: var(--pc-text) !important;
	}
	body.pc-page-membership #appCapsule .membership-benefits h4,
	body.pc-page-membership #appCapsule .membership-benefits .nav-link,
	body.pc-page-membership #appCapsule .membership-benefits small,
	body.pc-page-membership #appCapsule .membership-benefits .fw-bold { color: var(--pc-text) !important; -webkit-text-fill-color: currentColor !important; }
	body.pc-page-membership #appCapsule .membership-progress { padding: 16px 0; }
	.pc-page-account #appCapsule > .section { padding: 20px; }
	.pc-page-account .avatar-section .profile { gap: 12px; min-width: 0; }
	.pc-page-account .avatar-section .profile .name { font-size: 20px; overflow-wrap: anywhere; }
	.pc-page-account .listview.image-listview { grid-template-columns: minmax(0, 1fr); gap: 12px; }
	.pc-page-account .listview.image-listview .item { min-height: 64px; padding: 16px; }
	.pc-store-grid,
	.pc-category-grid,
	.pc-route-recipe #appCapsule .row,
	.pc-route-order #appCapsule > .orders { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
	.pc-page-store-detail #map { height: 300px; }
	.pc-page-store-detail .card-body { padding: 20px !important; }
	.pc-route-event-calendar .btm-bg-grey,
	.pc-route-campaign-list .btm-bg-grey { padding: 16px !important; }
	.pc-route-event-calendar .event,
	.pc-route-campaign-list .event { grid-template-columns: minmax(0, 1fr); padding: 16px; gap: 16px; }
	body.pc-public-page .pc-state-card { margin: 20px auto !important; padding: 28px 20px !important; }
	body.pc-public-page .grid-container { padding: calc(var(--pc-header-height) + 28px) 20px 32px !important; }
	.pc-route-apps #appCapsule .section { padding: 20px; }
	.pc-route-apps .pc-app-downloads { flex-wrap: wrap; gap: 16px; }
	.pc-route-recipe-detail #appCapsule > .section,
	.pc-route-room .room-section,
	.pc-route-referral #appCapsule > .section { padding: 20px; }
}

@media screen and (max-width: 599.98px) {
	.pc-store-grid,
	.pc-route-recipe #appCapsule .row { grid-template-columns: minmax(0, 1fr); }
	.pc-page-store-locator .blog-card.shop { height: 260px !important; }
	.pc-page-categories .blog-card.listing { height: 200px; }
	.pc-page-categories .blog-card.listing .title h2 { font-size: 18px; }
	.pc-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media screen and (min-width: 600px) and (max-width: 1279.98px) {
	:root { --pc-gutter: 24px; }
	.pc-header__logo { width: 164px; }
	.pc-header__actions { gap: 8px; }
	.pc-page-plp .product-container { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
	body.pc-public-page #appCapsule .product-card > img { height: 220px !important; }
	body.pc-public-page #appCapsule .product-card .feature-product .add-fav { top: -208px; }
	.pc-page-account .listview.image-listview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	body.pc-page-home[data-page="home"] .pc-home-offers__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.pc-footer__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Feedback fixes shared by desktop and the responsive storefront. */
@media screen {
	.pc-page-plp .search-product-form > .pc-shop-discovery {
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 16px 24px;
	}
	.pc-page-plp .pc-shop-discovery .title { margin: 0; }
	.pc-page-plp .pc-shop-quick-actions {
		display: flex;
		flex-wrap: wrap;
		gap: 12px;
		margin-left: auto;
		max-width: 100%;
	}
	.pc-page-plp .pc-shop-quick-actions .btn {
		min-height: 44px;
		padding: 10px 24px;
		white-space: normal;
	}
	.pc-page-checkout #guest-contact-section { margin-top: 0 !important; }
	/* Override legacy/RTE text colors only inside the description and disclaimer. */
	body.pc-page-pdp #appCapsule > .section.full .product-details .pc-product-description,
	body.pc-page-pdp #appCapsule > .section.full .product-details .pc-product-description * {
		color: var(--pc-text) !important;
		-webkit-text-fill-color: currentColor !important;
	}
}

@media screen and (max-width: 599.98px) {
	.pc-page-plp .pc-shop-quick-actions { width: 100%; margin-left: 0; }
	.pc-page-plp .pc-shop-quick-actions .btn-gold { flex: 1; min-width: 0; }
	.pc-page-plp .pc-shop-quick-actions .btn { width: 100%; padding-inline: 12px; }
	.pc-page-pdp #appCapsule .pc-product-description { text-align: left !important; }
}
