/**
 * Rakata Theme design system and foundational component styles.
 */

:root {
	--rk-red-600: #b71c1c;
	--rk-red-700: #8e1414;
	--rk-orange-500: #f97316;
	--rk-gold-600: #c9961a;
	--rk-green-700: #2e7d32;
	--rk-blue-600: #2563eb;
	--rk-warning-700: #b45309;
	--rk-danger-700: #c62828;
	--rk-ink-900: #211d1a;
	--rk-ink-700: #443e39;
	--rk-ink-600: #645d57;
	--rk-cream-50: #fbf7f1;
	--rk-cream-100: #f5ecdf;
	--rk-cream-200: #eadac8;
	--rk-surface: #ffffff;
	--rk-border: #e7ded4;
	--rk-control-border: #948a80;
	--rk-sidebar: #1d1b1a;
	--rk-red-soft: #f8e7e4;
	--rk-gold-soft: #f8eed2;

	--rk-font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--rk-font-display: ui-serif, Georgia, Cambria, "Times New Roman", serif;

	--rk-space-1: 0.25rem;
	--rk-space-2: 0.5rem;
	--rk-space-3: 0.75rem;
	--rk-space-4: 1rem;
	--rk-space-6: 1.5rem;
	--rk-space-8: 2rem;
	--rk-space-12: 3rem;
	--rk-space-16: 4rem;
	--rk-space-20: 5rem;

	--rk-radius-sm: 0.375rem;
	--rk-radius-md: 0.625rem;
	--rk-radius-lg: 0.875rem;
	--rk-radius-xl: 1.25rem;
	--rk-radius-pill: 999px;

	--rk-shadow-s1: 0 1px 2px rgb(33 29 26 / 5%);
	--rk-shadow-s2: 0 6px 20px rgb(33 29 26 / 8%);
	--rk-shadow-s3: 0 16px 40px rgb(33 29 26 / 12%);

	--rk-container: 72.5rem;
	--rk-reading-width: 43rem;
	--rk-transition: 160ms ease;
	--rk-text-sm: clamp(0.8125rem, 0.78rem + 0.12vw, 0.875rem);
	--rk-text-body: 1rem;
	--rk-text-h3: clamp(1.5rem, 1.32rem + 0.7vw, 1.75rem);
	--rk-text-h2: clamp(1.75rem, 1.38rem + 1.55vw, 2.25rem);
	--rk-text-h1: clamp(2.125rem, 1.5rem + 2.6vw, 3.5rem);
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	color: var(--rk-ink-900);
	background: var(--rk-cream-50);
	font-family: var(--rk-font-body);
	font-size: var(--rk-text-body);
	line-height: 1.625;
	overflow-wrap: break-word;
	text-rendering: optimizeLegibility;
}

body.menu-is-open {
	overflow: hidden;
}

a {
	color: var(--rk-red-700);
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.18em;
}

a:hover {
	color: var(--rk-red-600);
}

button,
input,
select,
textarea {
	font: inherit;
}

button,
[type="button"],
[type="submit"] {
	cursor: pointer;
}

button:disabled,
[type="button"]:disabled,
[type="submit"]:disabled {
	cursor: not-allowed;
	opacity: 0.55;
}

img,
svg {
	display: block;
	max-width: 100%;
}

img {
	height: auto;
}

h1,
h2,
h3,
h4,
p {
	margin-block-start: 0;
}

h1,
h2,
h3,
h4 {
	color: var(--rk-ink-900);
	font-family: var(--rk-font-display);
	font-weight: 700;
	line-height: 1.18;
	text-wrap: balance;
}

h1 {
	font-size: var(--rk-text-h1);
}

h2 {
	font-size: var(--rk-text-h2);
}

h3 {
	font-size: var(--rk-text-h3);
}

::selection {
	color: var(--rk-surface);
	background: var(--rk-red-700);
}

:focus-visible {
	outline: 2px solid var(--rk-blue-600);
	outline-offset: 3px;
}

.site-container {
	min-width: 0;
	width: min(calc(100% - 2rem), var(--rk-container));
	margin-inline: auto;
}

.site-main {
	min-height: 60vh;
	padding-block: var(--rk-space-12);
}

.home-main {
	padding-block: 0;
}

.entry-content,
.entry-summary,
.archive-description {
	max-width: var(--rk-reading-width);
}

.entry-content > * + * {
	margin-block-start: var(--rk-space-4);
}

/* Inner pages and WordPress content. */
.content-shell {
	max-width: 56rem;
}

.content-entry {
	min-width: 0;
	padding: clamp(1.5rem, 5vw, 4rem);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-xl);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s2);
}

.entry-header {
	max-width: var(--rk-reading-width);
	padding-bottom: var(--rk-space-6);
	margin-bottom: var(--rk-space-8);
	border-bottom: 1px solid var(--rk-border);
}

.entry-title,
.page-title {
	margin-bottom: 0;
}

.entry-meta {
	display: flex;
	flex-wrap: wrap;
	gap: var(--rk-space-1) var(--rk-space-2);
	align-items: center;
	margin-top: var(--rk-space-3);
	margin-bottom: 0;
	color: var(--rk-ink-600);
	font-size: var(--rk-text-sm);
}

.entry-meta a {
	color: inherit;
}

.entry-featured-image {
	max-width: var(--rk-reading-width);
	margin: 0 0 var(--rk-space-8);
}

.entry-featured-image img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: var(--rk-radius-lg);
}

.entry-featured-image figcaption {
	margin-top: var(--rk-space-2);
	color: var(--rk-ink-600);
	font-size: var(--rk-text-sm);
}

.entry-content {
	min-width: 0;
	max-width: var(--rk-reading-width);
}

.entry-content > :first-child,
.entry-summary > :first-child,
.archive-description > :first-child {
	margin-top: 0;
}

.entry-content > :last-child,
.entry-summary > :last-child,
.archive-description > :last-child {
	margin-bottom: 0;
}

.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
	margin-top: var(--rk-space-8);
	margin-bottom: var(--rk-space-3);
}

.entry-content h4,
.entry-content h5,
.entry-content h6 {
	font-family: var(--rk-font-body);
	line-height: 1.35;
}

.entry-content h4 {
	font-size: 1.25rem;
}

.entry-content h5,
.entry-content h6 {
	font-size: 1rem;
}

.entry-content p,
.entry-content ul,
.entry-content ol,
.entry-content blockquote,
.entry-content figure,
.entry-content table,
.entry-content pre {
	margin-bottom: var(--rk-space-6);
}

.entry-content ul,
.entry-content ol {
	padding-left: var(--rk-space-6);
}

.entry-content li + li {
	margin-top: var(--rk-space-2);
}

.entry-content a:not(.button) {
	font-weight: 650;
}

.entry-content img,
.entry-content video {
	max-width: 100%;
	height: auto;
	border-radius: var(--rk-radius-lg);
}

.entry-content iframe {
	max-width: 100%;
}

.entry-content figure {
	max-width: 100%;
	margin-inline: 0;
}

.entry-content figcaption,
.wp-caption-text {
	margin-top: var(--rk-space-2);
	color: var(--rk-ink-600);
	font-size: var(--rk-text-sm);
}

.entry-content blockquote {
	padding: var(--rk-space-4) var(--rk-space-6);
	border-left: 4px solid var(--rk-gold-600);
	border-radius: 0 var(--rk-radius-md) var(--rk-radius-md) 0;
	color: var(--rk-ink-700);
	background: var(--rk-gold-soft);
}

.entry-content blockquote > :last-child {
	margin-bottom: 0;
}

.entry-content .wp-block-table {
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.entry-content table:not(.shop_table) {
	display: block;
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	border-collapse: collapse;
	-webkit-overflow-scrolling: touch;
}

.entry-content table:not(.shop_table) th,
.entry-content table:not(.shop_table) td {
	min-width: 8rem;
	padding: var(--rk-space-3) var(--rk-space-4);
	border: 1px solid var(--rk-border);
	text-align: left;
	vertical-align: top;
}

.entry-content table:not(.shop_table) th {
	background: var(--rk-cream-100);
	font-weight: 750;
}

.entry-content pre {
	max-width: 100%;
	padding: var(--rk-space-4);
	overflow-x: auto;
	border-radius: var(--rk-radius-md);
	color: var(--rk-surface);
	background: var(--rk-sidebar);
	font-size: 0.875rem;
}

.entry-content code {
	padding: 0.1em 0.3em;
	border-radius: var(--rk-radius-sm);
	background: var(--rk-cream-100);
	font-size: 0.9em;
}

.entry-content pre code {
	padding: 0;
	color: inherit;
	background: transparent;
}

.page-links {
	display: flex;
	flex-wrap: wrap;
	gap: var(--rk-space-2);
	align-items: center;
	padding-top: var(--rk-space-6);
	margin-top: var(--rk-space-8);
	border-top: 1px solid var(--rk-border);
}

.page-links > a,
.page-links > span:not(.page-links__label) {
	display: inline-grid;
	place-items: center;
	min-width: 2.75rem;
	height: 2.75rem;
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-md);
	text-decoration: none;
}

.page-links__label {
	font-weight: 750;
}

.entry-taxonomies {
	display: grid;
	gap: var(--rk-space-2);
	max-width: var(--rk-reading-width);
	padding-top: var(--rk-space-6);
	margin-top: var(--rk-space-8);
	border-top: 1px solid var(--rk-border);
	color: var(--rk-ink-600);
	font-size: var(--rk-text-sm);
}

.entry-taxonomies p {
	margin: 0;
}

.archive-shell {
	min-width: 0;
}

.page-header--archive {
	max-width: var(--rk-reading-width);
	margin-bottom: var(--rk-space-8);
}

.archive-description {
	margin-top: var(--rk-space-4);
	color: var(--rk-ink-600);
}

.archive-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--rk-space-6);
}

.archive-card {
	display: flex;
	min-width: 0;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-lg);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s2);
}

.archive-card__media {
	display: block;
	overflow: hidden;
	background: var(--rk-cream-100);
}

.archive-card__media img {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	transition: transform var(--rk-transition);
}

.archive-card:hover .archive-card__media img {
	transform: scale(1.02);
}

.archive-card__content {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: flex-start;
	padding: var(--rk-space-6);
}

.archive-card__title {
	margin-bottom: var(--rk-space-3);
	font-family: var(--rk-font-body);
	font-size: clamp(1.25rem, 1.1rem + 0.6vw, 1.5rem);
	line-height: 1.35;
}

.archive-card__title a {
	color: var(--rk-ink-900);
	text-decoration: none;
}

.archive-card__title a:hover {
	color: var(--rk-red-700);
}

.archive-card .entry-meta {
	margin-top: 0;
	margin-bottom: var(--rk-space-2);
}

.archive-card .entry-summary {
	margin-bottom: var(--rk-space-4);
	color: var(--rk-ink-600);
}

.archive-card .text-link {
	margin-top: auto;
}

.navigation.pagination,
.post-navigation {
	margin-top: var(--rk-space-8);
}

.navigation .nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: var(--rk-space-3);
	justify-content: space-between;
}

.navigation.pagination .page-numbers {
	display: inline-grid;
	place-items: center;
	min-width: 2.75rem;
	min-height: 2.75rem;
	padding: var(--rk-space-2);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-md);
	background: var(--rk-surface);
	font-weight: 700;
	text-decoration: none;
}

.navigation.pagination .page-numbers.current {
	color: var(--rk-surface);
	border-color: var(--rk-red-600);
	background: var(--rk-red-600);
}

.post-navigation .nav-previous,
.post-navigation .nav-next {
	flex: 1 1 15rem;
}

.post-navigation a {
	display: flex;
	min-height: 100%;
	flex-direction: column;
	padding: var(--rk-space-4);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-lg);
	background: var(--rk-surface);
	text-decoration: none;
}

.nav-subtitle {
	color: var(--rk-ink-600);
	font-size: var(--rk-text-sm);
	font-weight: 650;
}

.nav-title {
	margin-top: var(--rk-space-1);
	color: var(--rk-ink-900);
	font-weight: 750;
}

.empty-state {
	padding: clamp(2rem, 6vw, 4rem);
	border: 1px dashed var(--rk-border);
	border-radius: var(--rk-radius-xl);
	background: var(--rk-surface);
	text-align: center;
}

.empty-state h2 {
	margin-bottom: var(--rk-space-3);
}

.empty-state p {
	margin-bottom: 0;
	color: var(--rk-ink-600);
}

.empty-state .search-form {
	display: flex;
	flex-wrap: wrap;
	gap: var(--rk-space-3);
	justify-content: center;
	max-width: 32rem;
	margin: var(--rk-space-6) auto 0;
}

.empty-state .search-form label {
	min-width: 0;
	flex: 1 1 16rem;
}

.search-form .search-field {
	width: 100%;
	min-width: 0;
	min-height: 2.75rem;
	padding: 0.65rem 0.75rem;
	border: 1px solid var(--rk-control-border);
	border-radius: var(--rk-radius-md);
	color: var(--rk-ink-900);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s1);
}

.search-form .search-field::placeholder {
	color: var(--rk-ink-600);
}

.search-form .search-field:focus {
	border-color: var(--rk-blue-600);
	outline: 2px solid var(--rk-blue-600);
	outline-offset: 2px;
}

.search-form .search-submit {
	min-height: 3rem;
	padding: 0.75rem 1.25rem;
	border: 1px solid transparent;
	border-radius: var(--rk-radius-md);
	color: var(--rk-surface);
	background: var(--rk-red-600);
	font-weight: 750;
	line-height: 1.2;
	transition: background-color var(--rk-transition), transform var(--rk-transition);
}

.search-form .search-submit:hover {
	background: var(--rk-red-700);
}

.search-form .search-submit:active {
	transform: translateY(1px);
}

.error-page {
	display: grid;
	place-items: center;
}

.error-page__container {
	display: grid;
	place-items: center;
}

.error-card {
	width: min(100%, 40rem);
	padding: clamp(2rem, 8vw, 5rem);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-xl);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s2);
	text-align: center;
}

.error-card h1 {
	margin-bottom: var(--rk-space-4);
}

.error-card > p:not(.eyebrow) {
	margin-bottom: var(--rk-space-8);
	color: var(--rk-ink-600);
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus,
.skip-link:focus {
	top: var(--rk-space-4);
	left: var(--rk-space-4);
	z-index: 100000;
	width: auto;
	height: auto;
	padding: var(--rk-space-3) var(--rk-space-4);
	margin: 0;
	overflow: visible;
	clip: auto;
	color: var(--rk-ink-900);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s3);
	font-weight: 700;
	white-space: normal;
}

/* Header and navigation. */
.site-header {
	position: sticky;
	top: 0;
	z-index: 100;
	border-bottom: 1px solid var(--rk-border);
	background: rgb(251 247 241 / 96%);
	box-shadow: var(--rk-shadow-s1);
}

.site-header__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	column-gap: var(--rk-space-3);
	min-height: 2.8125rem;
	padding-block: 0.05rem;
}

.site-branding {
	display: flex;
	min-width: 0;
	align-items: center;
	overflow: visible;
	flex-shrink: 0;
}

.site-header .site-branding .site-logo-link {
	display: flex;
	width: auto;
	height: 2.975625rem;
	align-items: center;
	justify-content: center;
	overflow: visible;
	flex: 0 0 auto;
	transform: translateY(10px);
	text-decoration: none;
}

.site-header .site-branding .site-logo {
	display: block;
	width: auto;
	max-width: none;
	height: 2.975625rem;
	flex: 0 0 auto;
	flex-shrink: 0;
	object-fit: contain;
}
body.admin-bar .site-header {
	top: 46px;
}

body.admin-bar .home-favorites,
body.admin-bar #favorite-products-title {
	scroll-margin-top: 8.625rem;
}

@media (min-width: 48.9375rem) {
	body.admin-bar .site-header {
		top: 32px;
	}

	body.admin-bar .home-favorites,
	body.admin-bar #favorite-products-title {
		scroll-margin-top: 8.25rem;
	}
}

.site-header__actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: var(--rk-space-2);
}

.menu-toggle,
.cart-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.475rem;
	min-height: 2.475rem;
	border: 1px solid var(--rk-control-border);
	border-radius: var(--rk-radius-md);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s1);
}

.menu-toggle {
	display: none;
	gap: var(--rk-space-2);
	padding: var(--rk-space-2) var(--rk-space-3);
	color: var(--rk-ink-900);
}

.js .menu-toggle {
	display: inline-flex;
}

.menu-toggle:hover,
.menu-toggle[aria-expanded="true"] {
	color: var(--rk-red-700);
	border-color: var(--rk-red-600);
	background: var(--rk-red-soft);
}

.menu-toggle__label {
	font-size: var(--rk-text-sm);
	font-weight: 700;
}

.menu-toggle__icon,
.menu-toggle__icon::before,
.menu-toggle__icon::after,
.menu-toggle__icon span {
	display: block;
	width: 1.25rem;
	height: 2px;
	border-radius: var(--rk-radius-pill);
	background: currentcolor;
}

.menu-toggle__icon {
	position: relative;
	background: transparent;
}

.menu-toggle__icon::before,
.menu-toggle__icon::after,
.menu-toggle__icon span {
	position: absolute;
	left: 0;
	content: "";
	transition: transform var(--rk-transition), top var(--rk-transition);
}

.menu-toggle__icon::before {
	top: 0.15rem;
}

.menu-toggle__icon span {
	top: 0.55rem;
}

.menu-toggle__icon::after {
	top: 0.95rem;
}

.menu-toggle[aria-expanded="true"] .menu-toggle__icon::before {
	top: 0.55rem;
	transform: rotate(45deg);
}

.menu-toggle[aria-expanded="true"] .menu-toggle__icon span {
	transform: scaleX(0);
}

.menu-toggle[aria-expanded="true"] .menu-toggle__icon::after {
	top: 0.55rem;
	transform: rotate(-45deg);
}

.cart-link {
	position: relative;
	gap: var(--rk-space-2);
	padding: var(--rk-space-2);
	color: var(--rk-ink-900);
	text-decoration: none;
}

.cart-link:hover {
	color: var(--rk-red-700);
	border-color: var(--rk-red-600);
}

.cart-link__icon {
	width: 1.215rem;
	height: 1.215rem;
	fill: none;
	stroke: currentcolor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
}

.cart-link__text {
	display: none;
	font-size: var(--rk-text-sm);
	font-weight: 700;
}

.cart-count[hidden] { display: none !important; }

.cart-count {
	position: absolute;
	top: calc(-0.35rem + 6px);
	right: -0.35rem;
	display: inline-grid;
	place-items: center;
	min-width: 1.215rem;
	height: 1.215rem;
	padding-inline: 0.25rem;
	border: 2px solid var(--rk-cream-50);
	border-radius: var(--rk-radius-pill);
	color: var(--rk-surface);
	background: var(--rk-red-600);
	font-size: 0.6875rem;
	font-weight: 800;
	line-height: 1;
}

.primary-navigation {
	grid-column: 1 / -1;
	max-height: calc(100vh - 4.5rem);
	overflow-y: auto;
	padding-block: var(--rk-space-3) var(--rk-space-4);
}

.js .primary-navigation {
	display: none;
}

.js .primary-navigation.is-open {
	display: block;
}

.primary-menu,
.footer-menu {
	padding: 0;
	margin: 0;
	list-style: none;
}

.primary-menu {
	display: grid;
	gap: var(--rk-space-1);
}

.primary-menu a {
	display: flex;
	align-items: center;
	min-height: 2.75rem;
	padding: var(--rk-space-2) var(--rk-space-3);
	border-radius: var(--rk-radius-md);
	color: var(--rk-ink-900);
	font-size: 0.9375rem;
	font-weight: 650;
	text-decoration: none;
}

.primary-menu a:hover,
.primary-menu .current-menu-item > a,
.primary-menu .current-menu-ancestor > a {
	color: var(--rk-red-700);
	background: var(--rk-red-soft);
}

.primary-menu .sub-menu {
	padding-left: var(--rk-space-4);
	list-style: none;
}

/* Buttons and shared links. */
.button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 3rem;
	padding: 0.75rem 1.25rem;
	border: 1px solid transparent;
	border-radius: var(--rk-radius-md);
	font-family: var(--rk-font-body);
	font-size: 0.9375rem;
	font-weight: 750;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: color var(--rk-transition), background-color var(--rk-transition), border-color var(--rk-transition), transform var(--rk-transition);
}

.button--primary,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
	color: var(--rk-surface);
	background: var(--rk-red-600);
}

.button--primary:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
	color: var(--rk-surface);
	background: var(--rk-red-700);
}

.button--light {
	color: var(--rk-red-700);
	background: var(--rk-surface);
}

.button--light:hover {
	color: var(--rk-ink-900);
	background: var(--rk-gold-soft);
}

.button:active,
.woocommerce a.button:active,
.woocommerce button.button:active,
.woocommerce input.button:active {
	transform: translateY(1px);
}

.text-link {
	display: inline-flex;
	align-items: center;
	min-height: 2.75rem;
	color: var(--rk-red-700);
	font-weight: 750;
	text-decoration-thickness: 2px;
}

/* Homepage. */
.eyebrow {
	margin-bottom: var(--rk-space-3);
	color: var(--rk-red-700);
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	line-height: 1.4;
	text-transform: uppercase;
}

.home-hero {
	isolation: isolate;
	position: relative;
	overflow: hidden;
	min-height: 56rem;
	padding-block: var(--rk-space-6);
	color: #fff;
	background: #160d07;
}

.home-hero::after {
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(180deg, rgb(9 5 2 / 82%) 0%, rgb(9 5 2 / 50%) 22%, rgb(9 5 2 / 8%) 45%, transparent 58%);
	content: "";
	pointer-events: none;
}

.home-hero__background,
.home-hero__background img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
}

.home-hero__background {
	z-index: 0;
}

.home-hero__background img {
	object-fit: cover;
	object-position: center;
}

.home-hero__inner {
	position: relative;
	z-index: 3;
	height: auto;
	padding-top: var(--rk-space-4);
}

.home-hero__content {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	max-width: 34rem;
	text-shadow: 0 2px 18px rgb(0 0 0 / 44%);
}

.home-hero h1 {
	max-width: 18ch;
	margin-bottom: var(--rk-space-4);
	color: #fff;
	font-size: clamp(1.85rem, 7.5vw, 2.15rem);
}

.home-hero__lead {
	display: block;
	max-width: 31rem;
	margin-bottom: 0;
	color: rgb(255 255 255 / 86%);
	font-size: clamp(0.9375rem, 0.9rem + 0.2vw, 1.0625rem);
}

.home-hero__content .button {
	margin-top: 1.375rem;
}

.home-hero__product {
	position: relative;
	z-index: 2;
	width: min(86vw, 19.5rem);
	aspect-ratio: 1675 / 2048;
	margin: 3.75rem auto 0;
	pointer-events: none;
}

.home-hero__product picture,
.home-hero__product-image {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
}

.home-hero__product-image {
	z-index: 1;
	object-fit: contain;
}

.home-hero__shadow {
	position: absolute;
	z-index: 0;
	bottom: 3.2%;
	left: 50%;
	display: block;
	width: 66%;
	height: 4.5%;
	border-radius: 50%;
	background: radial-gradient(ellipse at center, rgb(9 3 0 / 72%) 0%, rgb(9 3 0 / 42%) 44%, transparent 76%);
	filter: blur(0.2rem);
	transform: translateX(-50%);
}
.home-section {
	padding-block: var(--rk-space-16);
}

.home-intro {
	background: var(--rk-surface);
}

.home-intro__grid {
	display: grid;
	gap: var(--rk-space-6);
}

.home-intro h2 {
	max-width: 16ch;
	margin-bottom: 0;
}

.home-intro__grid > p {
	max-width: 37rem;
	margin-bottom: 0;
	color: var(--rk-ink-600);
}

.section-heading {
	max-width: 42rem;
	margin-bottom: var(--rk-space-8);
}

.section-heading h2 {
	margin-bottom: var(--rk-space-4);
}

.section-heading > p:last-child {
	margin-bottom: 0;
	color: var(--rk-ink-600);
}

.section-heading--split {
	display: flex;
	max-width: none;
	flex-direction: column;
	gap: var(--rk-space-3);
}

.section-heading--split h2 {
	margin-bottom: 0;
}

.series-grid,
.featured-products-grid {
	display: grid;
	gap: var(--rk-space-4);
}

.series-card {
	position: relative;
	overflow: hidden;
	min-height: 17rem;
	padding: var(--rk-space-8);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-xl);
	box-shadow: var(--rk-shadow-s2);
}

.series-card--original {
	background: var(--rk-surface);
}

.series-card--signature {
	background: var(--rk-gold-soft);
}

.series-card__number {
	position: absolute;
	top: var(--rk-space-4);
	right: var(--rk-space-6);
	color: rgb(33 29 26 / 8%);
	font-family: var(--rk-font-display);
	font-size: clamp(4.5rem, 3rem + 8vw, 7.5rem);
	font-weight: 700;
	line-height: 1;
}

.series-card .eyebrow,
.series-card h3,
.series-card p:last-child {
	position: relative;
}

.series-card h3 {
	margin-top: var(--rk-space-12);
	margin-bottom: var(--rk-space-4);
}

.series-card p:last-child {
	max-width: 31rem;
	margin-bottom: 0;
	color: var(--rk-ink-600);
}

.home-products {
	background: var(--rk-surface);
}

.home-favorites {
	scroll-margin-top: 5.75rem;
	border-block: 1px solid rgb(174 126 57 / 14%);
	background: #f4c86f url("../../../../plugins/rakata-core/assets/images/recipes/recipe-download-background.png") center / 100% 100% no-repeat;
}

#favorite-products-title {
	scroll-margin-top: 5.75rem;
}

.favorite-products-grid {
	display: grid;
	gap: var(--rk-space-6);
}

.favorite-product-card {
	display: flex;
	min-width: 0;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-xl);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s2);
}

.favorite-product-card__visual {
	isolation: isolate;
	position: relative;
	display: block;
	overflow: hidden;
	width: 100%;
	aspect-ratio: 1122 / 1402;
	background: #170d07;
}

.favorite-product-card__background,
.favorite-product-card__background img {
	position: absolute;
	z-index: 0;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
}

.favorite-product-card__background img {
	object-fit: cover;
	transform-origin: center top;
}

.favorite-product-card--limau .favorite-product-card__background img {
	transform: scale(1.1);
}

.favorite-product-card--kecombrang .favorite-product-card__background img {
	transform: translateY(10px) scale(1.09);
}

.favorite-product-card--manis .favorite-product-card__background img {
	transform: translateY(10px) scale(1.11);
}

.favorite-product-card__product {
	position: absolute;
	z-index: 2;
	top: 10.5%;
	left: 50%;
	display: block;
	width: 78%;
	aspect-ratio: 1800 / 2200;
	transform: translateX(-50%);
}

.favorite-product-card__product img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.favorite-product-card__shadow {
	position: absolute;
	z-index: 1;
	top: 69.6%;
	left: 50%;
	display: block;
	width: 47%;
	height: 4.8%;
	border-radius: 50%;
	background: radial-gradient(ellipse at center, rgb(8 3 0 / 70%) 0%, rgb(8 3 0 / 42%) 44%, transparent 76%);
	filter: blur(0.18rem);
	transform: translateX(-50%);
}

.favorite-product-card__content {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: flex-start;
	padding: var(--rk-space-6);
}

.favorite-product-card h3 {
	margin-bottom: var(--rk-space-3);
	font-family: var(--rk-font-body);
	font-size: 1.125rem;
	line-height: 1.4;
}

.favorite-product-card h3 a {
	color: var(--rk-ink-900);
	text-decoration: none;
}

.favorite-product-card__description {
	margin-bottom: var(--rk-space-4);
	color: var(--rk-ink-600);
	font-size: var(--rk-text-sm);
}

.favorite-product-card__description > :last-child {
	margin-bottom: 0;
}

.favorite-product-card .price {
	margin-top: auto;
	margin-bottom: var(--rk-space-4);
}

.favorite-product-card .text-link {
	min-height: 2.75rem;
}

.home-collection {
	isolation: isolate;
	position: relative;
	overflow: clip;
	min-height: 50rem;
	scroll-margin-top: 5.75rem;
	color: #352113;
	background: #efd39f;
}

.home-collection::after {
	position: absolute;
	z-index: 1;
	inset: 0 0 auto;
	height: 55%;
	background: linear-gradient(180deg, rgb(255 248 232 / 97%) 0%, rgb(255 247 229 / 82%) 62%, transparent 100%);
	content: "";
	pointer-events: none;
}

.home-collection__background,
.home-collection__background img {
	position: absolute;
	z-index: 0;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
}

.home-collection__background img {
	object-fit: cover;
	object-position: center;
}

.home-collection__mobile-copy {
	position: relative;
	z-index: 3;
	width: min(calc(100% - 2rem), 32rem);
	padding-top: var(--rk-space-12);
	margin-inline: auto;
	text-align: center;
}

.home-collection__eyebrow {
	margin-bottom: var(--rk-space-2);
	color: #a56b08;
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.3em;
	text-transform: uppercase;
}

.home-collection__mobile-copy h2 {
	margin-bottom: var(--rk-space-3);
	scroll-margin-top: 5.75rem;
	color: #3d2414;
	font-size: clamp(2rem, 10vw, 2.75rem);
	letter-spacing: 0.04em;
	line-height: 1;
	text-transform: uppercase;
}

.home-collection__mobile-copy > p:last-of-type {
	max-width: 29rem;
	margin: 0 auto var(--rk-space-4);
	color: #4d392b;
}

.home-collection__mobile-copy ul {
	display: grid;
	gap: 0.35rem;
	padding: 0;
	margin: 0;
	color: #5a402a;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	list-style: none;
	text-transform: uppercase;
}

.home-collection__cta {
	min-height: 2.75rem;
	margin-top: var(--rk-space-4);
	padding: 0.75rem 1rem;
	font-size: 0.8125rem;
}

.home-collection__cta:focus-visible,
.home-product-lampung__cta:focus-visible,
.home-inspiration__card-link:focus-visible {
	outline: 3px solid #ffcf68;
	outline-offset: 3px;
}

.home-collection__products {
	position: absolute;
	z-index: 2;
	right: 1rem;
	left: 1rem;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.35rem;
	align-items: end;
	pointer-events: none;
}

.home-collection--original .home-collection__products {
	bottom: 32.5%;
}

.home-collection--signature .home-collection__products {
	bottom: 29.5%;
}

.home-collection__product {
	display: block;
	width: 100%;
	max-width: 9rem;
	aspect-ratio: 1800 / 2200;
	justify-self: center;
	transform: translateY(20px) scale(1.08);
	transform-origin: center bottom;
}

.home-collection__product {
	isolation: isolate;
	position: relative;
}

.home-collection__product::after {
	content: "";
	position: absolute;
	z-index: 0;
	right: 17%;
	bottom: 1.5%;
	left: 17%;
	height: 4.5%;
	border-radius: 50%;
	background: radial-gradient(ellipse, rgb(48 24 9 / 48%) 0%, rgb(48 24 9 / 18%) 52%, transparent 76%);
	filter: blur(0.24rem);
	transform: translateY(38%);
}

.home-collection__product img {
	position: relative;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	filter: drop-shadow(0 0.8rem 0.52rem rgb(55 28 10 / 32%)) drop-shadow(0 0.2rem 0.12rem rgb(55 28 10 / 24%));
}

.home-collection__product--2 {
	z-index: 3;
	transform: translateY(20px) scale(1.12);
}

.home-product-lampung,
.home-inspiration__stage {
	isolation: isolate;
	position: relative;
	overflow: clip;
	width: 100%;
	background: #2a160b;
}

.home-product-lampung {
	aspect-ratio: 864 / 1821;
	border-top: 1px solid rgb(175 121 42 / 42%);
}

.home-inspiration {
	overflow: clip;
	background: #2a160b;
	text-align: center;
}

.home-inspiration__stage {
	aspect-ratio: 948 / 1659;
	border-top: 1px solid rgb(175 121 42 / 36%);
}

.home-editorial-artwork,
.home-editorial-artwork img {
	position: absolute;
	z-index: 0;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
}

.home-editorial-artwork img {
	object-fit: cover;
}

.home-product-lampung__cta {
	position: absolute;
	z-index: 3;
	top: 46.3%;
	left: 17.5%;
	display: block;
	width: 41.5%;
	height: 4.8%;
	border-radius: 0.25rem;
}

.home-product-lampung__cta:hover {
	background: rgb(255 224 151 / 10%);
}

.home-inspiration__recommendations {
	position: absolute;
	z-index: 2;
	inset: 0;
}

.home-inspiration__product {
	position: absolute;
	z-index: 2;
	left: 84.5%;
	display: block;
	width: 24%;
	aspect-ratio: 1800 / 2200;
	transform: translateX(-50%);
	pointer-events: none;
}

.home-inspiration__product--1 {
	top: 27.5%;
}

.home-inspiration__product--2 {
	top: 46.5%;
}

.home-inspiration__product--3 {
	top: 65.3%;
}

.home-inspiration__product--4 {
	top: 84%;
}

.home-inspiration__product img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	filter: drop-shadow(0 0.25rem 0.25rem rgb(56 29 12 / 25%));
}

.home-inspiration__card-link {
	position: absolute;
	z-index: 3;
	left: 5%;
	display: block;
	width: 90%;
	height: 18%;
	border-radius: 0.875rem;
}

.home-inspiration__card-link--1 {
	top: 26.2%;
}

.home-inspiration__card-link--2 {
	top: 44.8%;
}

.home-inspiration__card-link--3 {
	top: 63.7%;
}

.home-inspiration__card-link--4 {
	top: 82.3%;
	height: 17.2%;
}

.home-inspiration__card-link:hover {
	background: rgb(255 236 195 / 5%);
}

.home-inspiration__title-link {
	position: absolute;
	z-index: 4;
	top: 18.3%;
	left: 30%;
	display: block;
	width: 37%;
	height: 5.5%;
	border-radius: 999px;
}


.home-inspiration__title-link:focus-visible {
	outline: 3px solid #ffcf68;
	outline-offset: 3px;
}

@media (min-width: 48rem) {
	.home-collection {
		min-height: 0;
		aspect-ratio: 1659 / 948;
		scroll-margin-top: 6.25rem;
	}

	.home-collection::after {
		display: none;
	}

	.home-collection__background img {
		object-position: center;
	}

	.home-collection__mobile-copy {
		position: absolute;
		top: 68%;
		left: 8.25%;
		width: auto;
		padding: 0;
		margin: 0;
	}

	.home-collection__mobile-copy > :not(.home-collection__cta) {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		border: 0;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}

	.home-collection__cta {
		margin: 0;
	}

	.home-collection__products {
		inset: 0;
		display: block;
	}

	.home-collection--original .home-collection__products,
	.home-collection--signature .home-collection__products {
		bottom: 0;
	}

	.home-collection__product {
		position: absolute;
		width: 20.5%;
		max-width: none;
		transform: translate(-50%, 20px) scale(1.08);
		transform-origin: center bottom;
	}

	.home-collection--original .home-collection__product {
		bottom: 32%;
	}

	.home-collection--original .home-collection__product--1 {
		left: 47%;
	}

	.home-collection--original .home-collection__product--2 {
		left: 66.5%;
	}

	.home-collection--original .home-collection__product--3 {
		left: 86%;
	}

	.home-collection--signature .home-collection__product {
		bottom: 29%;
	}

	.home-collection--signature .home-collection__product--1 {
		left: 47%;
	}

	.home-collection--signature .home-collection__product--2 {
		left: 66.5%;
	}

	.home-collection--signature .home-collection__product--3 {
		left: 86%;
	}

	.home-product-lampung,
	.home-inspiration__stage {
		aspect-ratio: 3 / 2;
	}

	.home-inspiration__title-link {
		top: 29%;
		left: 34.5%;
		width: 25.5%;
		height: 6.5%;
	}

	.home-collection__product--2 {
		transform: translate(-50%, 20px) scale(1.12);
	}

	.home-product-lampung__cta {
		top: 72.7%;
		left: 9.2%;
		width: 25%;
		height: 8.5%;
	}

	.home-inspiration__product {
		top: auto;
		bottom: 8.5%;
		width: 13%;
	}

	.home-inspiration__product--1 {
		left: 20.5%;
	}

	.home-inspiration__product--2 {
		left: 44%;
	}

	.home-inspiration__product--3 {
		left: 67.5%;
	}

	.home-inspiration__product--4 {
		left: 91%;
	}

	.home-inspiration__card-link {
		top: 39.5%;
		width: 23%;
		height: 55%;
		border-radius: 1.125rem;
	}

	.home-inspiration__card-link--1 {
		left: 2.6%;
	}

	.home-inspiration__card-link--2 {
		left: 26.3%;
	}

	.home-inspiration__card-link--3 {
		left: 50%;
	}

	.home-inspiration__card-link--4 {
		left: 73.7%;
		height: 55%;
	}
}

.featured-product-card {
	display: flex;
	min-width: 0;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-lg);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s2);
}

.featured-product-card__image {
	display: grid;
	place-items: center;
	min-height: 15rem;
	padding: var(--rk-space-6);
	background: var(--rk-cream-50);
}

.featured-product-card__image img {
	width: 100%;
	height: 14rem;
	object-fit: contain;
}

.product-visual-placeholder {
	display: grid;
	place-items: center;
	width: 100%;
	min-height: 12rem;
	padding: var(--rk-space-6);
	border: 1px dashed var(--rk-border);
	border-radius: var(--rk-radius-md);
	color: var(--rk-ink-600);
	font-size: var(--rk-text-sm);
	text-align: center;
}

.featured-product-card__content {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: flex-start;
	padding: var(--rk-space-6);
}

.featured-product-card h3 {
	margin-bottom: var(--rk-space-3);
	font-family: var(--rk-font-body);
	font-size: 1.125rem;
	line-height: 1.4;
}

.featured-product-card h3 a {
	color: var(--rk-ink-900);
	text-decoration: none;
}

.featured-product-card .price {
	margin-bottom: var(--rk-space-4);
}

.featured-product-card .text-link {
	margin-top: auto;
}

.product-empty-state {
	display: grid;
	gap: var(--rk-space-6);
	align-items: center;
	padding: var(--rk-space-8);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-xl);
	background: var(--rk-cream-50);
}

.product-empty-state h3 {
	margin-bottom: var(--rk-space-3);
}

.product-empty-state p {
	max-width: 39rem;
	margin-bottom: 0;
	color: var(--rk-ink-600);
}

.product-empty-state__visual {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: var(--rk-space-3);
	min-height: 10rem;
	padding: var(--rk-space-4);
	border-radius: var(--rk-radius-lg);
	background: var(--rk-cream-100);
}

.product-empty-state__visual span {
	display: block;
	width: 2.75rem;
	height: 7rem;
	border: 1px solid var(--rk-cream-200);
	border-radius: var(--rk-radius-xl) var(--rk-radius-xl) var(--rk-radius-md) var(--rk-radius-md);
	background: var(--rk-surface);
}

.product-empty-state__visual span:nth-child(2) {
	height: 8.5rem;
	background: var(--rk-gold-soft);
}

.home-story__panel {
	display: grid;
	overflow: hidden;
	border-radius: var(--rk-radius-xl);
	background: var(--rk-sidebar);
	box-shadow: var(--rk-shadow-s3);
}

.home-story__accent {
	min-height: 12rem;
	background:
		radial-gradient(circle at 25% 35%, rgb(201 150 26 / 42%), transparent 9rem),
		linear-gradient(135deg, var(--rk-red-700), #4f1111);
}

.home-story__content {
	padding: var(--rk-space-8);
}

.home-story__content .eyebrow {
	color: var(--rk-gold-soft);
}

.home-story__content h2 {
	color: var(--rk-surface);
}

.home-story__text {
	max-width: 42rem;
	margin-bottom: 0;
	color: rgb(255 255 255 / 72%);
}

.home-story__content .text-link {
	margin-top: var(--rk-space-3);
	color: var(--rk-gold-soft);
}

.home-story__content .text-link:hover,
.home-story__content .text-link:focus-visible {
	color: var(--rk-surface);
}

.home-cta {
	padding-top: 0;
}

.home-cta__panel {
	display: flex;
	flex-direction: column;
	gap: var(--rk-space-6);
	align-items: flex-start;
	padding: var(--rk-space-8);
	border-radius: var(--rk-radius-xl);
	background: var(--rk-red-600);
	box-shadow: var(--rk-shadow-s2);
}

.home-cta__panel .eyebrow {
	color: var(--rk-gold-soft);
}

.home-cta__panel h2 {
	max-width: 19ch;
	margin-bottom: 0;
	color: var(--rk-surface);
}

/* WooCommerce foundations. */
.woocommerce .woocommerce-breadcrumb {
	margin-bottom: var(--rk-space-6);
	color: var(--rk-ink-600);
	font-size: var(--rk-text-sm);
}

.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
	margin-bottom: var(--rk-space-6);
}

.woocommerce ul.products {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--rk-space-6);
	padding: 0;
	margin: var(--rk-space-8) 0;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
	display: none;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	display: flex;
	width: auto;
	min-width: 0;
	min-height: 100%;
	flex-direction: column;
	float: none;
	padding: var(--rk-space-4);
	margin: 0;
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-lg);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s2);
	transition: border-color var(--rk-transition), transform var(--rk-transition), box-shadow var(--rk-transition);
}

.woocommerce ul.products li.product:hover {
	border-color: var(--rk-cream-200);
	box-shadow: var(--rk-shadow-s3);
	transform: translateY(-2px);
}

.woocommerce ul.products li.product a img {
	width: 100%;
	height: 15rem;
	margin-bottom: var(--rk-space-4);
	border-radius: var(--rk-radius-md);
	background: var(--rk-cream-50);
	object-fit: contain;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	padding: 0;
	margin-bottom: var(--rk-space-2);
	color: var(--rk-ink-900);
	font-family: var(--rk-font-body);
	font-size: 1.0625rem;
	line-height: 1.4;
}

.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.price {
	color: var(--rk-red-700);
	font-size: 1rem;
	font-weight: 800;
}

.woocommerce ul.products li.product .price {
	margin-bottom: var(--rk-space-4);
}

.woocommerce ul.products li.product .button {
	width: 100%;
	margin-top: auto;
}

.woocommerce span.onsale {
	top: var(--rk-space-3);
	left: var(--rk-space-3);
	min-width: auto;
	min-height: auto;
	padding: var(--rk-space-1) var(--rk-space-3);
	border-radius: var(--rk-radius-pill);
	color: var(--rk-surface);
	background: var(--rk-red-600);
	font-size: 0.75rem;
	font-weight: 800;
	line-height: 1.7;
}

.woocommerce a.added_to_cart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.75rem;
	font-weight: 750;
}

.woocommerce form .form-row label,
.woocommerce-page form .form-row label {
	margin-bottom: var(--rk-space-1);
	color: var(--rk-ink-900);
	font-size: 0.9375rem;
	font-weight: 700;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .quantity .qty,
.woocommerce select.orderby,
.woocommerce form.checkout_coupon input.input-text,
.woocommerce form.login input.input-text,
.woocommerce form.register input.input-text {
	width: 100%;
	min-height: 2.75rem;
	padding: 0.65rem 0.75rem;
	border: 1px solid var(--rk-control-border);
	border-radius: var(--rk-radius-md);
	color: var(--rk-ink-900);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s1);
}

.woocommerce form .form-row textarea {
	min-height: 8rem;
	resize: vertical;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus,
.woocommerce .quantity .qty:focus,
.woocommerce select.orderby:focus {
	border-color: var(--rk-blue-600);
	outline: 2px solid var(--rk-blue-600);
	outline-offset: 1px;
}

.woocommerce .quantity .qty {
	width: 5rem;
	text-align: center;
}

.select2-container--default .select2-selection--single {
	height: 2.75rem;
	border-color: var(--rk-control-border);
	border-radius: var(--rk-radius-md);
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 2.65rem;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 2.65rem;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	padding: var(--rk-space-4) var(--rk-space-4) var(--rk-space-4) 3rem;
	margin-bottom: var(--rk-space-6);
	border: 1px solid var(--rk-border);
	border-top-width: 3px;
	border-radius: var(--rk-radius-md);
	color: var(--rk-ink-900);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s1);
}

.woocommerce-message {
	border-top-color: var(--rk-green-700);
}

.woocommerce-info {
	border-top-color: var(--rk-blue-600);
}

.woocommerce-error {
	border-top-color: var(--rk-danger-700);
}

.woocommerce-message::before {
	color: var(--rk-green-700);
}

.woocommerce-info::before {
	color: var(--rk-blue-600);
}

.woocommerce-error::before {
	color: var(--rk-danger-700);
}

.woocommerce table.shop_table,
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-checkout #payment {
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-lg);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s1);
}

.woocommerce table.shop_table {
	border-collapse: separate;
	overflow: hidden;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
	padding: var(--rk-space-4);
	border-color: var(--rk-border);
}

.woocommerce-checkout #payment div.payment_box {
	color: var(--rk-ink-700);
	background: var(--rk-cream-100);
}

.woocommerce-checkout #payment div.payment_box::before {
	border-bottom-color: var(--rk-cream-100);
}

/* WooCommerce page refinements. */
.commerce-container,
.woocommerce,
.woocommerce div.product,
.woocommerce form,
.woocommerce table {
	min-width: 0;
}

.woocommerce-main {
	background: var(--rk-cream-50);
}

/* Native shop discovery controls. */
.shop-discovery {
	display: grid;
	clear: both;
	gap: var(--rk-space-6);
	padding: var(--rk-space-5);
	margin-bottom: var(--rk-space-8);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-xl);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s1);
}

.shop-discovery__label {
	margin-bottom: var(--rk-space-2);
	color: var(--rk-ink-600);
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.woocommerce .shop-discovery .woocommerce-product-search {
	display: flex;
	gap: var(--rk-space-2);
	margin: 0;
}

.woocommerce .shop-discovery .woocommerce-product-search .search-field {
	width: 100%;
	min-width: 0;
	min-height: 3rem;
	flex: 1 1 auto;
	padding: 0.7rem 0.875rem;
	border: 1px solid var(--rk-control-border);
	border-radius: var(--rk-radius-md);
	color: var(--rk-ink-900);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s1);
}

.woocommerce .shop-discovery .woocommerce-product-search .search-field:focus {
	border-color: var(--rk-blue-600);
	outline: 2px solid var(--rk-blue-600);
	outline-offset: 1px;
}

.woocommerce .shop-discovery .woocommerce-product-search button {
	min-height: 3rem;
	flex: 0 0 auto;
	padding: 0.75rem 1rem;
	border: 1px solid var(--rk-red-600);
	border-radius: var(--rk-radius-md);
	color: var(--rk-surface);
	background: var(--rk-red-600);
	font-weight: 750;
}

.woocommerce .shop-discovery .woocommerce-product-search button:hover {
	border-color: var(--rk-red-700);
	background: var(--rk-red-700);
}

.shop-discovery__category-links {
	display: flex;
	flex-wrap: wrap;
	gap: var(--rk-space-2);
}

.shop-discovery__category-links a {
	display: inline-flex;
	align-items: center;
	min-height: 2.75rem;
	padding: var(--rk-space-2) var(--rk-space-4);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-pill);
	color: var(--rk-ink-700);
	background: var(--rk-cream-50);
	font-weight: 700;
	text-decoration: none;
}

.shop-discovery__category-links a:hover,
.shop-discovery__category-links a[aria-current="page"] {
	color: var(--rk-red-700);
	border-color: var(--rk-red-600);
	background: var(--rk-red-soft);
}

body.woocommerce-page main.site-main,
body.woocommerce-page .content-area {
	width: 100%;
	max-width: none;
	float: none;
}

body.woocommerce-page #secondary,
body.woocommerce-page aside.widget-area,
body.woocommerce-page .site-content > .widget-area {
	display: none;
}

body.woocommerce-shop main.site-main,
body.post-type-archive-product main.site-main,
body.tax-product_cat main.site-main,
body.tax-product_tag main.site-main,
body.woocommerce-cart main.site-main {
	min-height: 0;
	padding-block: clamp(2rem, 5vw, 3rem);
}

.woocommerce .woocommerce-products-header {
	max-width: var(--rk-reading-width);
	margin-bottom: var(--rk-space-8);
}

.woocommerce .woocommerce-products-header__title,
.woocommerce div.product .product_title,
.woocommerce-account .woocommerce h2,
.woocommerce-cart .woocommerce h2,
.woocommerce-checkout .woocommerce h2,
.woocommerce-checkout .woocommerce h3 {
	margin-bottom: var(--rk-space-4);
}

.woocommerce .woocommerce-breadcrumb a {
	color: var(--rk-ink-700);
	font-weight: 650;
}

.woocommerce .woocommerce-breadcrumb a:hover {
	color: var(--rk-red-700);
}

.woocommerce .woocommerce-result-count {
	color: var(--rk-ink-600);
}

.woocommerce .woocommerce-ordering select,
.woocommerce select.orderby {
	width: 100%;
	min-width: 12rem;
	min-height: 2.75rem;
	padding: 0.6rem 2.25rem 0.6rem 0.75rem;
	border: 1px solid var(--rk-control-border);
	border-radius: var(--rk-radius-md);
	color: var(--rk-ink-900);
	background-color: var(--rk-surface);
}

.woocommerce ul.products li.product {
	position: relative;
}

.woocommerce ul.products li.product a.woocommerce-loop-product__link {
	display: block;
	color: var(--rk-ink-900);
	text-decoration: none;
}

.woocommerce ul.products li.product .star-rating {
	margin-bottom: var(--rk-space-3);
	color: var(--rk-gold-600);
}

.woocommerce ul.products li.product .stock,
.woocommerce div.product .stock {
	display: inline-flex;
	align-items: center;
	min-height: 1.75rem;
	padding: var(--rk-space-1) var(--rk-space-3);
	border-radius: var(--rk-radius-pill);
	font-size: 0.75rem;
	font-weight: 800;
	line-height: 1.2;
}

.woocommerce div.product p.stock.in-stock,
.woocommerce ul.products li.product .stock.in-stock {
	color: var(--rk-green-700);
	background: #e8f5e9;
}

.woocommerce div.product p.stock.out-of-stock,
.woocommerce ul.products li.product .stock.out-of-stock {
	color: var(--rk-danger-700);
	background: var(--rk-red-soft);
}

.woocommerce div.product p.stock.available-on-backorder {
	color: var(--rk-warning-700);
	background: #fff4e5;
}

.woocommerce .woocommerce-pagination {
	margin-top: var(--rk-space-8);
}

.woocommerce nav.woocommerce-pagination ul {
	display: flex;
	flex-wrap: wrap;
	gap: var(--rk-space-2);
	border: 0;
}

.woocommerce nav.woocommerce-pagination ul li {
	border: 0;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	display: inline-grid;
	place-items: center;
	min-width: 2.75rem;
	min-height: 2.75rem;
	padding: var(--rk-space-2);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-md);
	background: var(--rk-surface);
	font-weight: 700;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
	color: var(--rk-surface);
	border-color: var(--rk-red-600);
	background: var(--rk-red-600);
}

.woocommerce .woocommerce-no-products-found,
.woocommerce .cart-empty,
.woocommerce .return-to-shop {
	text-align: center;
}

.woocommerce .woocommerce-no-products-found {
	max-width: 46rem;
	margin: 0 auto;
}

.woocommerce .woocommerce-no-products-found .woocommerce-info {
	margin-bottom: 0;
}

.woocommerce .cart-empty {
	padding: var(--rk-space-8);
	margin: 0;
	border: 1px dashed var(--rk-border);
	border-radius: var(--rk-radius-xl);
	color: var(--rk-ink-600);
	background: var(--rk-surface);
}

.woocommerce-cart .wc-empty-cart-message {
	margin: 0;
}

.woocommerce-cart .return-to-shop {
	margin: var(--rk-space-4) 0 0;
}

/* Single product. */
.woocommerce div.product {
	position: relative;
}

.woocommerce div.product div.images,
.woocommerce div.product div.summary {
	width: 100%;
	float: none;
}

.woocommerce div.product div.images {
	margin-bottom: var(--rk-space-6);
}

.woocommerce div.product div.images .woocommerce-product-gallery__wrapper {
	margin: 0;
}

.woocommerce div.product div.images .woocommerce-product-gallery__image {
	display: grid;
	place-items: center;
	min-height: 18rem;
	overflow: hidden;
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-xl);
	background: var(--rk-surface);
}

.woocommerce div.product div.images img {
	width: 100%;
	max-height: 38rem;
	object-fit: contain;
}

.woocommerce div.product div.images .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--rk-space-2);
	padding: 0;
	margin-top: var(--rk-space-3);
}

.woocommerce div.product div.images .flex-control-thumbs li {
	width: auto;
	float: none;
}

.woocommerce div.product div.images .flex-control-thumbs img {
	width: 100%;
	height: 4.5rem;
	padding: var(--rk-space-1);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-md);
	background: var(--rk-surface);
	object-fit: contain;
}

.woocommerce div.product div.summary {
	padding: var(--rk-space-6);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-xl);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s2);
}

.woocommerce div.product .product_title {
	font-size: var(--rk-text-h2);
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
	margin-bottom: var(--rk-space-4);
	font-size: clamp(1.25rem, 1.1rem + 0.5vw, 1.5rem);
}

.woocommerce div.product .woocommerce-product-details__short-description {
	color: var(--rk-ink-700);
}

.woocommerce div.product .product_meta {
	display: grid;
	gap: var(--rk-space-2);
	padding-top: var(--rk-space-4);
	margin-top: var(--rk-space-6);
	border-top: 1px solid var(--rk-border);
	color: var(--rk-ink-600);
	font-size: var(--rk-text-sm);
}

.woocommerce div.product .product_meta a {
	font-weight: 650;
}

.woocommerce div.product form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: var(--rk-space-3);
	align-items: stretch;
	margin-top: var(--rk-space-6);
	margin-bottom: var(--rk-space-6);
}

.woocommerce div.product form.cart .quantity {
	flex: 0 0 auto;
	margin: 0;
}

.woocommerce div.product form.cart .button {
	min-width: min(100%, 13rem);
	min-height: 3rem;
	flex: 1 1 13rem;
	margin: 0;
}

.woocommerce div.product form.cart .variations {
	width: 100%;
	margin-bottom: var(--rk-space-4);
	border: 0;
	box-shadow: none;
}

.woocommerce div.product form.cart .variations tbody,
.woocommerce div.product form.cart .variations tr,
.woocommerce div.product form.cart .variations th,
.woocommerce div.product form.cart .variations td {
	display: block;
	width: 100%;
}

.woocommerce div.product form.cart .variations tr + tr {
	margin-top: var(--rk-space-4);
}

.woocommerce div.product form.cart .variations th,
.woocommerce div.product form.cart .variations td {
	padding: 0;
	border: 0;
	text-align: left;
}

.woocommerce div.product form.cart .variations label {
	display: block;
	margin-bottom: var(--rk-space-1);
	font-weight: 750;
}

.woocommerce div.product form.cart .variations select {
	width: 100%;
	min-height: 2.75rem;
	padding: 0.65rem 2.25rem 0.65rem 0.75rem;
	border: 1px solid var(--rk-control-border);
	border-radius: var(--rk-radius-md);
	background: var(--rk-surface);
}

.woocommerce div.product form.cart .reset_variations {
	display: inline-flex;
	align-items: center;
	min-height: 2.75rem;
	margin-top: var(--rk-space-1);
	font-size: var(--rk-text-sm);
	font-weight: 700;
}

.woocommerce div.product .woocommerce-variation-add-to-cart {
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	gap: var(--rk-space-3);
}

.woocommerce div.product form.cart table.group_table {
	width: 100%;
}

.woocommerce div.product form.cart table.group_table td {
	padding: var(--rk-space-3);
	border-bottom: 1px solid var(--rk-border);
	vertical-align: middle;
}

.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .related,
.woocommerce div.product .upsells {
	width: 100%;
	margin-top: var(--rk-space-12);
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	display: flex;
	flex-wrap: wrap;
	gap: var(--rk-space-2);
	padding: 0;
	margin-bottom: var(--rk-space-4);
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
	display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	padding: 0;
	margin: 0;
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-md);
	background: var(--rk-surface);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	border-color: var(--rk-red-600);
	background: var(--rk-red-soft);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	display: inline-flex;
	align-items: center;
	min-height: 2.75rem;
	padding: var(--rk-space-2) var(--rk-space-4);
	color: var(--rk-ink-900);
}

.woocommerce div.product .woocommerce-tabs .panel {
	padding: var(--rk-space-6);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-lg);
	background: var(--rk-surface);
}

.woocommerce div.product .woocommerce-tabs .panel > :last-child {
	margin-bottom: 0;
}

/* Forms, cart and checkout. */
.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="tel"],
.woocommerce input[type="password"],
.woocommerce input[type="search"],
.woocommerce input[type="number"],
.woocommerce select,
.woocommerce textarea {
	max-width: 100%;
}

.woocommerce input[type="checkbox"],
.woocommerce input[type="radio"] {
	width: 1.25rem;
	height: 1.25rem;
	margin: 0 var(--rk-space-2) 0 0;
	accent-color: var(--rk-red-600);
	vertical-align: middle;
}

.woocommerce .password-input {
	display: block;
	position: relative;
}

.woocommerce .password-input input {
	padding-right: 3.25rem;
}

.woocommerce .show-password-input {
	top: 50%;
	right: 0;
	display: grid;
	place-items: center;
	width: 2.75rem;
	height: 2.75rem;
	transform: translateY(-50%);
}

.woocommerce label.woocommerce-form-login__rememberme,
.woocommerce label.woocommerce-form__label-for-checkbox {
	display: inline-flex;
	align-items: center;
	min-height: 2.75rem;
}

.woocommerce form .form-row {
	padding: 0;
	margin-bottom: var(--rk-space-4);
}

.woocommerce form .form-row-first,
.woocommerce form .form-row-last {
	width: 100%;
	float: none;
}

.woocommerce .select2-container {
	max-width: 100%;
}

.woocommerce .select2-container .select2-selection--single {
	min-height: 2.75rem;
}

.woocommerce .required {
	color: var(--rk-danger-700);
}

.woocommerce .button.disabled,
.woocommerce .button:disabled,
.woocommerce .button:disabled[disabled] {
	cursor: not-allowed;
	opacity: 0.55;
}

.woocommerce table.shop_table {
	width: 100%;
	max-width: 100%;
	table-layout: auto;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
	overflow-wrap: anywhere;
}

.woocommerce-cart .content-entry,
.woocommerce-checkout .content-entry,
.woocommerce-account .content-entry {
	max-width: none;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.woocommerce-cart .content-shell,
.woocommerce-checkout .content-shell,
.woocommerce-account .content-shell {
	max-width: var(--rk-container);
}

.woocommerce-cart table.cart img {
	width: 4.5rem;
	height: 4.5rem;
	border-radius: var(--rk-radius-md);
	background: var(--rk-cream-50);
	object-fit: contain;
}

.woocommerce-cart table.cart .product-name a {
	color: var(--rk-ink-900);
	font-weight: 750;
	text-decoration: none;
}

.woocommerce-cart table.cart td.actions .coupon {
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	gap: var(--rk-space-2);
}

.woocommerce-cart table.cart td.actions .coupon .input-text {
	width: auto;
	min-width: min(100%, 12rem);
	min-height: 3rem;
	flex: 1 1 12rem;
	padding: 0.65rem 0.75rem;
	border: 1px solid var(--rk-control-border);
	border-radius: var(--rk-radius-md);
}

.woocommerce .cart-collaterals {
	margin-top: var(--rk-space-8);
}

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals {
	width: 100%;
	float: none;
	padding: var(--rk-space-6);
}

.woocommerce .cart-collaterals .cart_totals h2 {
	font-size: var(--rk-text-h3);
}

.woocommerce .wc-proceed-to-checkout {
	padding-bottom: 0;
}

.woocommerce .wc-proceed-to-checkout a.checkout-button {
	width: 100%;
	margin-bottom: 0;
}

.woocommerce-checkout .col2-set,
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 {
	width: 100%;
	float: none;
}

.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2,
.woocommerce-checkout #order_review {
	padding: var(--rk-space-6);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-lg);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s1);
}

.woocommerce-checkout .col2-set .col-2 {
	margin-top: var(--rk-space-6);
}

.woocommerce-checkout #order_review_heading {
	margin-top: var(--rk-space-8);
}

.woocommerce-checkout #order_review table.shop_table {
	border: 0;
	box-shadow: none;
}

.woocommerce-checkout #payment {
	padding: var(--rk-space-4);
	margin-top: var(--rk-space-6);
}

.woocommerce-checkout #payment ul.payment_methods {
	padding: 0 0 var(--rk-space-4);
	border-bottom-color: var(--rk-border);
}

.woocommerce-checkout #payment div.form-row {
	padding: var(--rk-space-4) 0 0;
}

.woocommerce-checkout #payment #place_order {
	width: 100%;
	min-height: 3rem;
	float: none;
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
	padding: var(--rk-space-6);
}

/* My Account. */
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	width: 100%;
	float: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	margin-bottom: var(--rk-space-6);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	display: grid;
	gap: var(--rk-space-1);
	padding: var(--rk-space-2);
	margin: 0;
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-lg);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s1);
	list-style: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
	display: flex;
	align-items: center;
	min-height: 2.75rem;
	padding: var(--rk-space-2) var(--rk-space-3);
	border-radius: var(--rk-radius-md);
	color: var(--rk-ink-900);
	font-weight: 700;
	text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
	color: var(--rk-red-700);
	background: var(--rk-red-soft);
}

.woocommerce-account .woocommerce-MyAccount-content {
	min-width: 0;
	padding: var(--rk-space-6);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-lg);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s1);
}

.woocommerce-account .woocommerce-Addresses {
	display: grid;
	gap: var(--rk-space-4);
}

.woocommerce-account .woocommerce-Addresses .col-1,
.woocommerce-account .woocommerce-Addresses .col-2 {
	width: 100%;
	float: none;
	padding: var(--rk-space-4);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-md);
}

.woocommerce-account address {
	font-style: normal;
}

/* WooCommerce block components. */
.wc-block-grid,
.wc-block-cart,
.wc-block-checkout,
.wc-block-components-sidebar-layout,
.wc-block-components-main,
.wc-block-components-sidebar {
	min-width: 0;
}

.wc-block-product-template,
.wc-block-grid__products {
	padding: 0;
	gap: var(--rk-space-6);
	list-style: none;
}

.wc-block-grid__product,
.wc-block-product {
	min-width: 0;
	padding: var(--rk-space-4);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-lg);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s2);
}

.wc-block-grid__product-image img,
.wc-block-components-product-image img,
.wc-block-product .wc-block-components-product-image img {
	width: 100%;
	max-height: 18rem;
	border-radius: var(--rk-radius-md);
	background: var(--rk-cream-50);
	object-fit: contain;
}

.wc-block-grid__product-title,
.wc-block-components-product-name,
.wc-block-product .wp-block-post-title {
	color: var(--rk-ink-900);
	font-family: var(--rk-font-body);
	font-size: 1.0625rem;
	font-weight: 750;
	line-height: 1.4;
}

.wc-block-grid__product-price,
.wc-block-components-product-price,
.wc-block-components-totals-item__value {
	color: var(--rk-red-700);
	font-weight: 800;
}

.wc-block-components-button,
.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link,
.wc-block-product .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 3rem;
	padding: 0.75rem 1.25rem;
	border: 1px solid transparent;
	border-radius: var(--rk-radius-md);
	color: var(--rk-surface);
	background: var(--rk-red-600);
	font-family: var(--rk-font-body);
	font-size: 0.9375rem;
	font-weight: 750;
	line-height: 1.2;
	text-decoration: none;
}

.wc-block-components-button:hover,
.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:hover,
.wc-block-product .wp-block-button__link:hover {
	color: var(--rk-surface);
	background: var(--rk-red-700);
}

.wc-block-components-button:disabled,
.wc-block-components-button[aria-disabled="true"] {
	cursor: not-allowed;
	opacity: 0.55;
}

.wc-block-components-text-input input,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-block-components-form .wc-block-components-textarea,
.wc-block-components-address-form select {
	min-height: 2.75rem;
	border: 1px solid var(--rk-control-border);
	border-radius: var(--rk-radius-md);
	color: var(--rk-ink-900);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s1);
}

.wc-block-components-text-input input:focus,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus,
.wc-block-components-form .wc-block-components-textarea:focus,
.wc-block-components-address-form select:focus {
	border-color: var(--rk-blue-600);
	outline: 2px solid var(--rk-blue-600);
	outline-offset: 1px;
}

.wc-block-components-checkbox .wc-block-components-checkbox__input {
	width: 1.25rem;
	height: 1.25rem;
	accent-color: var(--rk-red-600);
}

.wc-block-components-notice-banner {
	border: 1px solid var(--rk-border);
	border-left-width: 4px;
	border-radius: var(--rk-radius-md);
	color: var(--rk-ink-900);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s1);
}

.wc-block-components-notice-banner.is-info {
	border-left-color: var(--rk-blue-600);
}

.wc-block-components-notice-banner.is-success {
	border-left-color: var(--rk-green-700);
}

.wc-block-components-notice-banner.is-error {
	border-left-color: var(--rk-danger-700);
}

.wc-block-cart__main,
.wc-block-components-sidebar,
.wc-block-checkout__main {
	padding: var(--rk-space-6);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-lg);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s1);
}

.wc-block-cart-items,
.wc-block-cart-items td,
.wc-block-cart-items th {
	border-color: var(--rk-border);
}

.wc-block-cart-item__image img {
	border-radius: var(--rk-radius-md);
	background: var(--rk-cream-50);
	object-fit: contain;
}

.wc-block-components-quantity-selector {
	min-height: 2.75rem;
	border-color: var(--rk-control-border);
	border-radius: var(--rk-radius-md);
}

.wc-block-components-quantity-selector input,
.wc-block-components-quantity-selector button {
	min-width: 2.75rem;
	min-height: 2.75rem;
}

.wc-block-components-totals-wrapper,
.wc-block-components-order-summary {
	border-color: var(--rk-border);
}

.wp-block-woocommerce-empty-cart-block,
.wp-block-woocommerce-cart.is-empty {
	padding: clamp(2rem, 6vw, 4rem);
	border: 1px dashed var(--rk-border);
	border-radius: var(--rk-radius-xl);
	background: var(--rk-surface);
	text-align: center;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block,
body.woocommerce-cart .wp-block-woocommerce-cart.is-empty {
	min-height: 0;
	padding: clamp(1.5rem, 5vw, 3rem);
	margin-block: 0;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > :first-child {
	margin-top: 0;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > :last-child {
	margin-bottom: 0;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > .wc-block-cart__empty-cart__title {
	margin-bottom: var(--rk-space-3);
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > .wp-block-heading:last-child:not(.wc-block-cart__empty-cart__title) {
	display: none;
}

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-collection:empty,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-product-template:empty,
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid:empty {
	display: none;
	margin: 0;
}

@media (max-width: 47.99rem) {
	.woocommerce .woocommerce-result-count,
	.woocommerce .woocommerce-ordering {
		width: 100%;
		float: none;
	}

	.woocommerce table.shop_table_responsive {
		display: block;
		border: 0;
		overflow: visible;
		background: transparent;
		box-shadow: none;
	}

	.woocommerce table.shop_table_responsive thead {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
	}

	.woocommerce table.shop_table_responsive tbody,
	.woocommerce table.shop_table_responsive tr {
		display: block;
		width: 100%;
	}

	.woocommerce table.shop_table_responsive tr {
		padding: var(--rk-space-3);
		margin-bottom: var(--rk-space-4);
		border: 1px solid var(--rk-border);
		border-radius: var(--rk-radius-lg);
		background: var(--rk-surface);
		box-shadow: var(--rk-shadow-s1);
	}

	.woocommerce table.shop_table_responsive td {
		display: flex;
		width: 100%;
		gap: var(--rk-space-4);
		align-items: center;
		justify-content: space-between;
		padding: var(--rk-space-3);
		border: 0;
		border-bottom: 1px solid var(--rk-border);
		text-align: right;
	}

	.woocommerce table.shop_table_responsive td:last-child {
		border-bottom: 0;
	}

	.woocommerce table.shop_table_responsive td::before {
		float: none;
		color: var(--rk-ink-600);
		font-weight: 700;
		text-align: left;
	}

	.woocommerce table.shop_table_responsive .product-thumbnail {
		display: none;
	}

	.woocommerce table.shop_table_responsive td.actions {
		display: block;
		text-align: left;
	}

	.woocommerce table.shop_table_responsive td.actions::before {
		display: none;
	}

	.woocommerce table.shop_table_responsive td.actions > .button {
		width: 100%;
		margin-top: var(--rk-space-2);
	}

	.woocommerce table.shop_table_responsive .woocommerce-orders-table__cell-order-actions {
		flex-wrap: wrap;
	}

	.woocommerce table.shop_table_responsive .woocommerce-orders-table__cell-order-actions .button {
		flex: 1 1 auto;
	}

	.woocommerce-checkout-review-order-table {
		table-layout: fixed;
	}

	.woocommerce-checkout-review-order-table th,
	.woocommerce-checkout-review-order-table td,
	.woocommerce .cart_totals table th,
	.woocommerce .cart_totals table td {
		padding: var(--rk-space-3);
	}

	.woocommerce-account .woocommerce-MyAccount-content,
	.woocommerce-checkout .col2-set .col-1,
	.woocommerce-checkout .col2-set .col-2,
	.woocommerce-checkout #order_review,
	.woocommerce .cart-collaterals .cart_totals {
		padding: var(--rk-space-4);
	}

	.wc-block-components-sidebar-layout {
		display: block;
	}

	.wc-block-components-sidebar-layout .wc-block-components-main,
	.wc-block-components-sidebar-layout .wc-block-components-sidebar {
		width: 100%;
		padding: var(--rk-space-4);
		margin: 0 0 var(--rk-space-4);
	}

	.wc-block-cart-items {
		display: block;
		max-width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.wc-block-components-button,
	.wc-block-cart__submit-button,
	.wc-block-components-checkout-place-order-button {
		width: 100%;
	}
}

@media (min-width: 48rem) {
	.archive-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.woocommerce form .form-row-first,
	.woocommerce form .form-row-last {
		width: calc(50% - var(--rk-space-2));
		float: left;
	}

	.woocommerce form .form-row-last {
		float: right;
	}

	.woocommerce-account .woocommerce-Addresses {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 64rem) {
	body.woocommerce-cart .wc-block-components-sidebar-layout {
		display: grid;
		grid-template-columns: minmax(0, 1.9fr) minmax(20rem, 1fr);
		gap: clamp(1.5rem, 2.5vw, 2rem);
		align-items: start;
		margin: 0;
	}

	body.woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-main,
	body.woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar {
		width: auto;
		margin: 0;
	}

	body.woocommerce-cart .wc-block-components-sidebar {
		position: sticky;
		top: 7rem;
		align-self: start;
	}

	.shop-discovery {
		grid-template-columns: minmax(18rem, 0.9fr) minmax(0, 1.1fr);
		align-items: end;
	}

	.woocommerce-cart .woocommerce:has(> .woocommerce-cart-form) {
		display: grid;
		grid-template-columns: minmax(0, 1.45fr) minmax(19rem, 0.55fr);
		gap: var(--rk-space-8);
		align-items: start;
	}

	.woocommerce-cart .woocommerce:has(> .woocommerce-cart-form) > :not(.woocommerce-cart-form, .cart-collaterals) {
		grid-column: 1 / -1;
	}

	.woocommerce-cart .woocommerce > .woocommerce-cart-form {
		grid-column: 1;
		min-width: 0;
	}

	.woocommerce-cart .woocommerce > .cart-collaterals {
		grid-column: 2;
		margin-top: 0;
	}

	.woocommerce-cart .cart-collaterals .cart_totals {
		position: sticky;
		top: 7rem;
	}

	.single-product .woocommerce div.product div.summary,
	.wc-block-cart .wc-block-components-sidebar,
	.wc-block-checkout .wc-block-components-sidebar {
		position: sticky;
		top: 7rem;
		align-self: start;
	}

	.archive-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.single-product .woocommerce div.product {
		display: grid;
		grid-template-columns: minmax(0, 1.05fr) minmax(20rem, 0.95fr);
		gap: var(--rk-space-12);
		align-items: start;
	}

	.single-product .woocommerce div.product > .onsale {
		z-index: 2;
	}

	.single-product .woocommerce div.product div.images,
	.single-product .woocommerce div.product div.summary {
		margin-bottom: 0;
	}

	.single-product .woocommerce div.product .woocommerce-tabs,
	.single-product .woocommerce div.product .related,
	.single-product .woocommerce div.product .upsells {
		grid-column: 1 / -1;
	}

	.woocommerce-checkout form.checkout {
		display: grid;
		grid-template-columns: minmax(0, 1.1fr) minmax(22rem, 0.9fr);
		gap: 0 var(--rk-space-8);
		align-items: start;
	}

	.woocommerce-checkout form.checkout > #customer_details {
		grid-column: 1;
		grid-row: 1 / span 2;
	}

	.woocommerce-checkout form.checkout > #order_review_heading,
	.woocommerce-checkout form.checkout > #order_review {
		grid-column: 2;
	}

	.woocommerce-checkout form.checkout > #order_review_heading {
		grid-row: 1;
		margin-top: 0;
	}

	.woocommerce-checkout form.checkout > #order_review {
		grid-row: 2;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation {
		width: 23%;
		float: left;
		margin-bottom: 0;
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		width: 73%;
		float: right;
	}
}

.woocommerce-account .entry-content {
	max-width: none;
}

/* My Account order list: fixed desktop columns and readable mobile cards. */
.woocommerce-account table.woocommerce-orders-table {
	table-layout: fixed;
}

.woocommerce-account .woocommerce-orders-table__header-order-number,
.woocommerce-account .woocommerce-orders-table__cell-order-number {
	width: 12%;
}

.woocommerce-account .woocommerce-orders-table__header-order-date,
.woocommerce-account .woocommerce-orders-table__cell-order-date {
	width: 18%;
	white-space: nowrap;
	overflow-wrap: normal;
}

.woocommerce-account .woocommerce-orders-table__header-order-status,
.woocommerce-account .woocommerce-orders-table__cell-order-status {
	width: 23%;
}

.woocommerce-account .woocommerce-orders-table__header-order-total,
.woocommerce-account .woocommerce-orders-table__cell-order-total {
	width: 24%;
	white-space: nowrap;
	overflow-wrap: normal;
}

.woocommerce-account .woocommerce-orders-table__header-order-actions,
.woocommerce-account .woocommerce-orders-table__cell-order-actions {
	width: 23%;
}

.woocommerce-account .woocommerce-orders-table__cell-order-actions .button {
	display: inline-flex;
	justify-content: center;
	min-width: 5.1rem;
	padding-inline: var(--rk-space-3);
	font-size: 0.875rem;
}

/* Keep long order histories inside the existing account panel. */
.woocommerce-account .rakata-orders-scroll.has-order-overflow {
	/* Five rows remain visible; subsequent orders stay in this scroll area. */
	max-height: 29rem;
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-gutter: stable;
}

.woocommerce-account .rakata-orders-scroll.has-order-overflow:focus-visible {
	outline: 3px solid var(--rk-red-600);
	outline-offset: 3px;
}

.woocommerce-account .rakata-orders-scroll.has-order-overflow .woocommerce-orders-table__header {
	position: sticky;
	top: 0;
	z-index: 1;
	background: var(--rk-surface);
}

@media (min-width: 48rem) {
	.woocommerce-account table.woocommerce-orders-table th {
		white-space: nowrap;
		overflow-wrap: normal;
	}
}

@media (max-width: 47.99rem) {
	.woocommerce-account table.woocommerce-orders-table {
		table-layout: auto;
	}

	.woocommerce-account table.woocommerce-orders-table td {
		display: grid;
		grid-template-columns: minmax(7.25rem, 44%) minmax(0, 1fr);
		gap: var(--rk-space-3);
		align-items: center;
		justify-content: initial;
	}

	.woocommerce-account table.woocommerce-orders-table td::before {
		width: auto;
		white-space: nowrap;
	}

	.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-date,
	.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-total {
		white-space: nowrap;
		overflow-wrap: normal;
	}

	.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions {
		display: block;
		padding-top: var(--rk-space-4);
	}

	.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions::before {
		display: none;
	}

	.woocommerce-account table.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions .button {
		display: flex;
		width: 60%;
		min-height: 2.75rem;
		margin: 0;
	}

	.woocommerce-account .rakata-orders-scroll.has-order-overflow {
		max-height: 72rem;
	}
}

/* Footer. */
.site-footer {
	color: rgb(255 255 255 / 76%);
	background: var(--rk-sidebar);
}

.site-footer__inner {
	display: grid;
	gap: 0.6rem;
	padding-block: 0.9rem;
}

.site-footer__brand {
	max-width: 32rem;
}

.site-footer__title {
	display: inline-flex;
	gap: 0.35rem;
	align-items: center;
	min-height: 2.75rem;
	margin-bottom: 0.225rem;
	color: var(--rk-surface);
	font-family: var(--rk-font-display);
	font-size: 1.5rem;
	font-weight: 700;
	text-decoration: none;
}

.site-footer__title > span {
	transform: translateY(3px);
}

.site-footer .site-footer__title .site-footer__logo {
	display: block;
	flex: 0 0 auto;
	width: 3.9rem !important;
	max-width: 3.9rem !important;
	height: auto !important;
	max-height: 3.4125rem !important;
	object-fit: contain;
	transform: translateY(10px);
}

.site-footer__title:hover {
	color: var(--rk-gold-soft);
}

.site-footer__brand p,
.site-footer__bottom p {
	margin-bottom: 0;
}

.footer-menu {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.25rem var(--rk-space-4);
}

.footer-menu a {
	display: inline-flex;
	align-items: center;
	min-height: 2.75rem;
	color: rgb(255 255 255 / 82%);
	font-size: 0.9375rem;
	font-weight: 650;
	text-decoration: none;
}

.footer-menu a:hover,
.footer-menu .current-menu-item > a {
	color: var(--rk-gold-soft);
}

.site-footer__bottom {
	padding-block: 0.3rem;
	border-top: 1px solid rgb(255 255 255 / 12%);
	font-size: var(--rk-text-sm);
}

@media (min-width: 36rem) {
	.cart-link__text {
		display: inline;
	}

	.cart-link {
		padding-inline: var(--rk-space-3);
	}

	.featured-products-grid,
	.woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.favorite-products-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.product-empty-state {
		grid-template-columns: minmax(12rem, 0.65fr) minmax(0, 1.35fr);
	}
}

@media (min-width: 48rem) {
	.site-container {
		width: min(calc(100% - 3rem), var(--rk-container));
	}

	.home-section {
		padding-block: var(--rk-space-20);
	}

	.home-hero {
		height: max(42rem, 56.28vw);
		min-height: 0;
		padding-block: 0;
	}

	.home-hero::after {
		background: linear-gradient(90deg, rgb(8 4 2 / 84%) 0%, rgb(8 4 2 / 70%) 31%, rgb(8 4 2 / 24%) 50%, transparent 68%);
	}

	.home-hero__inner {
		display: flex;
		align-items: center;
		height: 100%;
		padding-top: 0;
	}

	.home-hero__content {
		max-width: min(39rem, 45vw);
	}

	.home-hero h1 {
		max-width: 15ch;
		margin-bottom: var(--rk-space-6);
		font-size: clamp(3rem, 4.5vw, 5.5rem);
	}

	.home-hero__lead {
		margin-bottom: var(--rk-space-8);
	}

	.home-hero__content .button {
		margin-top: 0;
	}

	.home-hero__product {
		position: absolute;
		top: 12.65%;
		left: clamp(64%, calc(72.65% - 0.6vw), 66.5%);
		width: auto;
		height: 73.75%;
		margin: 0;
		transform: translateX(-50%);
	}

	.home-hero__shadow {
		bottom: 3%;
		width: 64%;
		height: 4%;
	}

	.home-cta {
		padding-top: 0;
	}

	.home-intro__grid {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		align-items: end;
		gap: var(--rk-space-12);
	}

	.series-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--rk-space-6);
	}

	.section-heading--split {
		flex-direction: row;
		align-items: flex-end;
		justify-content: space-between;
	}

	.home-story__panel {
		grid-template-columns: minmax(14rem, 0.7fr) minmax(0, 1.3fr);
	}

	.home-story__accent {
		min-height: 22rem;
	}

	.home-story__content {
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding: var(--rk-space-12);
	}

	.home-cta__panel {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		padding: var(--rk-space-12);
	}

	.site-footer__inner {
		grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.8fr);
		align-items: start;
	}
}

@media (min-width: 64rem) {
	body.menu-is-open {
		overflow: auto;
	}


	.favorite-products-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.site-header__inner {
		grid-template-columns: minmax(9rem, 1fr) auto minmax(9rem, 1fr);
		min-height: calc(3.20625rem - 20px);
	}

	.site-header .site-branding .site-logo-link {
	width: auto;
	height: 2.665875rem;
	transform: translateY(5px);
}

	.site-header .site-branding .site-logo {
		width: auto;
		height: 2.665875rem;
	}

	.home-favorites,
	#favorite-products-title {
		scroll-margin-top: 6.25rem;
	}

	.site-header__actions {
		grid-column: 3;
		grid-row: 1;
	}

	.menu-toggle,
	.js .menu-toggle {
		display: none;
	}

	.primary-navigation,
	.js .primary-navigation,
	.js .primary-navigation.is-open {
		display: block;
		grid-column: 2;
		grid-row: 1;
		max-height: none;
		overflow: visible;
		padding-block: 0;
	}

	.primary-menu {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: var(--rk-space-1);
	}

	.primary-menu .menu-item-has-children {
		position: relative;
	}

	.primary-menu .sub-menu {
		position: absolute;
		top: calc(100% + 0.25rem);
		left: 0;
		display: none;
		min-width: 14rem;
		padding: var(--rk-space-2);
		border: 1px solid var(--rk-border);
		border-radius: var(--rk-radius-md);
		background: var(--rk-surface);
		box-shadow: var(--rk-shadow-s3);
	}

	.primary-menu .menu-item-has-children:hover > .sub-menu,
	.primary-menu .menu-item-has-children:focus-within > .sub-menu {
		display: block;
	}


	.featured-products-grid,
	.woocommerce ul.products.columns-3,
	.woocommerce ul.products.columns-4 {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.woocommerce ul.products.columns-3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	body.woocommerce-shop ul.products.columns-4,
	body.post-type-archive-product ul.products.columns-4 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: clamp(1.25rem, 2vw, 2rem);
	}

	body.woocommerce-shop ul.products.columns-4 li.product,
	body.post-type-archive-product ul.products.columns-4 li.product {
		padding: clamp(1rem, 1.5vw, 1.5rem);
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}
/* Trust and customer-confidence framework. */
.trust-page {
	background: var(--rk-cream-50);
}

.trust-hero {
	padding-block: var(--rk-space-12);
	border-bottom: 1px solid var(--rk-border);
	background:
		radial-gradient(circle at 85% 20%, rgb(201 150 26 / 13%), transparent 28%),
		linear-gradient(145deg, var(--rk-surface), var(--rk-cream-100));
}

.trust-hero__inner {
	max-width: var(--rk-reading-width);
	margin-inline: auto;
	text-align: center;
}

.trust-hero h1 {
	margin-bottom: var(--rk-space-4);
}

.trust-hero__summary {
	color: var(--rk-ink-600);
	font-size: clamp(1rem, 0.94rem + 0.3vw, 1.125rem);
}

.trust-layout {
	display: grid;
	gap: var(--rk-space-6);
	padding-block: var(--rk-space-12);
}

.trust-navigation,
.trust-content {
	min-width: 0;
}

.trust-navigation {
	padding: var(--rk-space-4);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-lg);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s1);
}

.trust-navigation__title {
	margin-bottom: var(--rk-space-3);
	color: var(--rk-ink-600);
	font-size: var(--rk-text-sm);
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.trust-navigation ul {
	display: flex;
	flex-wrap: wrap;
	gap: var(--rk-space-2);
	padding: 0;
	margin: 0;
	list-style: none;
}

.trust-navigation a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: var(--rk-space-2) var(--rk-space-3);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-pill);
	color: var(--rk-ink-700);
	background: var(--rk-cream-50);
	font-size: var(--rk-text-sm);
	font-weight: 700;
	text-decoration: none;
}

.trust-navigation a:hover,
.trust-navigation a[aria-current="page"] {
	color: var(--rk-red-700);
	border-color: var(--rk-red-600);
	background: var(--rk-red-soft);
}

.trust-content {
	padding: var(--rk-space-6);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-xl);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s2);
}

.trust-status {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: var(--rk-space-4);
	padding: var(--rk-space-4);
	margin-bottom: var(--rk-space-8);
	border: 1px solid #e7c46d;
	border-radius: var(--rk-radius-lg);
	color: var(--rk-ink-700);
	background: var(--rk-gold-soft);
}

.trust-status__mark {
	display: inline-grid;
	place-items: center;
	width: 2rem;
	height: 2rem;
	border-radius: var(--rk-radius-pill);
	color: var(--rk-surface);
	background: var(--rk-warning-700);
	font-weight: 800;
}

.trust-status h2 {
	margin-bottom: var(--rk-space-2);
	font-family: var(--rk-font-body);
	font-size: 1.125rem;
}

.policy-meta {
	display: grid;
	gap: var(--rk-space-3);
	padding: 0;
	margin: 0 0 var(--rk-space-8);
}

.policy-meta > div {
	padding: var(--rk-space-4);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-md);
	background: var(--rk-cream-50);
}

.policy-meta dt {
	margin-bottom: var(--rk-space-1);
	color: var(--rk-ink-600);
	font-size: var(--rk-text-sm);
	font-weight: 700;
}

.policy-meta dd {
	margin: 0;
	color: var(--rk-ink-900);
	font-weight: 700;
}

.trust-content__managed {
	max-width: none;
}

.trust-framework-grid,
.faq-groups {
	display: grid;
	gap: var(--rk-space-6);
}

.trust-framework-card,
.faq-group {
	padding: var(--rk-space-6);
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-lg);
	background: var(--rk-cream-50);
}

.trust-framework-card h2,
.faq-group h2 {
	margin-bottom: var(--rk-space-3);
	font-family: var(--rk-font-body);
	font-size: 1.25rem;
}

.trust-framework-card p {
	color: var(--rk-ink-600);
}

.faq-list {
	display: grid;
	gap: var(--rk-space-3);
}

.faq-item {
	border: 1px solid var(--rk-border);
	border-radius: var(--rk-radius-md);
	background: var(--rk-surface);
	overflow: hidden;
}

.faq-item summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--rk-space-3);
	min-height: 48px;
	padding: var(--rk-space-3) var(--rk-space-4);
	color: var(--rk-ink-900);
	font-weight: 700;
	cursor: pointer;
	list-style: none;
}

.faq-item summary::-webkit-details-marker {
	display: none;
}

.faq-item summary::after {
	content: "+";
	flex: 0 0 auto;
	color: var(--rk-red-700);
	font-size: 1.5rem;
	line-height: 1;
}

.faq-item[open] summary::after {
	content: "-";
}

.faq-item summary:focus-visible {
	outline: 2px solid var(--rk-blue-600);
	outline-offset: -2px;
}

.faq-item__answer {
	padding: 0 var(--rk-space-4) var(--rk-space-4);
	color: var(--rk-ink-600);
}

.trust-support {
	display: grid;
	gap: var(--rk-space-6);
	align-items: center;
	padding: var(--rk-space-6);
	margin-top: var(--rk-space-8);
	border-radius: var(--rk-radius-lg);
	color: var(--rk-surface);
	background: var(--rk-sidebar);
}

.trust-support .eyebrow {
	color: var(--rk-gold-soft);
}

.trust-support h2 {
	margin-bottom: var(--rk-space-3);
	color: var(--rk-surface);
	font-size: var(--rk-text-h3);
}

.trust-support p:last-child {
	color: var(--rk-cream-200);
}

.trust-support .button {
	justify-self: start;
}

@media (min-width: 48rem) {
	.policy-meta,
	.trust-framework-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.trust-support {
		grid-template-columns: minmax(0, 1fr) auto;
	}
}

@media (min-width: 64rem) {
	.trust-hero {
		padding-block: var(--rk-space-16);
	}

	.trust-layout {
		grid-template-columns: minmax(12rem, 15rem) minmax(0, 1fr);
		gap: var(--rk-space-8);
		padding-block: var(--rk-space-16);
	}

	.trust-navigation {
		position: sticky;
		top: var(--rk-space-4);
		align-self: start;
	}

	.trust-navigation ul {
		display: grid;
	}

	.trust-navigation a {
		width: 100%;
		border-radius: var(--rk-radius-md);
	}

	.trust-content {
		padding: var(--rk-space-8);
	}
}
/* Cart Block UAT refinements. */
body.woocommerce-cart .entry-content,
body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-cart .wp-block-woocommerce-filled-cart-block,
body.woocommerce-cart .wc-block-components-sidebar-layout {
	width: 100%;
	max-width: none;
}

body.woocommerce-cart .wc-block-cart__main,
body.woocommerce-cart .wc-block-components-sidebar {
	min-width: 0;
	padding: clamp(1rem, 2vw, 1.5rem);
}

body.woocommerce-cart table.wc-block-cart-items {
	width: 100%;
	table-layout: fixed;
}

body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__product,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__wrap,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__prices,
body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__quantity {
	min-width: 0;
}

body.woocommerce-cart table.wc-block-cart-items .wc-block-components-product-name {
	max-width: none;
	overflow-wrap: anywhere;
	word-break: normal;
}

body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__image {
	width: 5.5rem;
}

body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__image img {
	width: 100%;
	height: 5.5rem;
	object-fit: contain;
}

body.woocommerce-cart .wc-block-components-quantity-selector {
	max-width: 100%;
}

body.woocommerce-cart .wc-block-cart-item__remove-link {
	min-width: 2.75rem;
	min-height: 2.75rem;
}

body.woocommerce-cart .wc-block-components-totals-footer-item {
	padding-top: var(--rk-space-4);
	margin-top: var(--rk-space-4);
	border-top: 1px solid var(--rk-border);
	font-size: 1.125rem;
}

body.woocommerce-cart .wc-block-cart__submit-button {
	min-height: 3.25rem;
	font-size: 1rem;
}

body.woocommerce-cart .rakata-cart-shipping-fallback {
	display: none;
	margin: var(--rk-space-2) 0 0;
	color: var(--rk-ink-600);
	font-size: var(--rk-text-sm);
	font-weight: 650;
}

body.woocommerce-cart .rakata-shipping-pending .wc-block-components-totals-shipping__options,
body.woocommerce-cart .rakata-shipping-pending .wc-block-components-totals-shipping__via,
body.woocommerce-cart .rakata-shipping-pending .wc-block-components-totals-item__value {
	display: none;
}

body.woocommerce-cart .rakata-shipping-pending .rakata-cart-shipping-fallback {
	display: block;
}

@media (max-width: 47.99rem) {
	body.woocommerce-cart .wc-block-cart-items {
		display: table;
		overflow-x: visible;
	}
}
/* Milestone 8 Checkout Blocks destination and layout hardening. */
body.woocommerce-checkout {
	overflow-x: clip;
}

.woocommerce-checkout main.site-main {
	padding-block: clamp(2rem, 5vw, 4rem);
}

.woocommerce-checkout .entry-header {
	position: relative;
	z-index: 1;
	margin-top: 0;
}

.woocommerce-checkout .wc-block-checkout {
	width: 100%;
	max-width: 100%;
	margin-top: var(--rk-space-6);
}

.wc-block-components-text-input:has(> .rakata-destination-results) {
	position: relative;
}

.rakata-destination-results {
	display: grid;
	z-index: 30;
	width: 100%;
	max-height: 18rem;
	overflow-y: auto;
	border: 1px solid var(--rk-control-border);
	border-radius: var(--rk-radius-md);
	background: var(--rk-surface);
	box-shadow: var(--rk-shadow-s3);
}

.rakata-destination-results[hidden] {
	display: none;
}

.rakata-destination-option {
	width: 100%;
	min-height: 2.75rem;
	padding: 0.65rem 0.75rem;
	border: 0;
	border-bottom: 1px solid var(--rk-border);
	color: var(--rk-ink-900);
	background: var(--rk-surface);
	font: inherit;
	text-align: left;
}

.rakata-destination-option:hover,
.rakata-destination-option:focus-visible {
	background: var(--rk-red-soft);
}

.rakata-destination-status {
	margin: var(--rk-space-2) 0 0;
	color: var(--rk-ink-600);
	font-size: var(--rk-text-sm);
	line-height: 1.45;
}

@media (max-width: 48rem) {
	.woocommerce-checkout .wc-block-checkout__main,
	.woocommerce-checkout .wc-block-components-sidebar {
		width: 100%;
		padding: var(--rk-space-4);
	}

	.woocommerce-checkout .wc-block-components-address-form,
	.woocommerce-checkout .wc-block-components-text-input,
	.woocommerce-checkout .wc-block-components-combobox {
		min-width: 0;
		max-width: 100%;
	}
}

/* Milestone 8 final mobile UAT remediation. */
/* Targeted mobile checkout overflow correction. */
@media (max-width: 48rem) {
	html,
	body.woocommerce-checkout {
		width: 100%;
		max-width: 100%;
		overflow-x: hidden !important;
	}

	body.woocommerce-checkout main.site-main,
	body.woocommerce-checkout main.site-main > .site-container,
	body.woocommerce-checkout .entry-content,
	body.woocommerce-checkout .wp-block-woocommerce-checkout,
	body.woocommerce-checkout .wc-block-checkout,
	body.woocommerce-checkout .wc-block-components-sidebar-layout,
	body.woocommerce-checkout .wc-block-checkout__main,
	body.woocommerce-checkout .wc-block-components-main,
	body.woocommerce-checkout .wc-block-components-sidebar {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin-inline: 0 !important;
		padding-inline: 0.75rem !important;
		box-sizing: border-box !important;
	}

	body.woocommerce-checkout .wc-block-checkout,
	body.woocommerce-checkout .wc-block-components-sidebar-layout {
		overflow: hidden;
	}

	body.woocommerce-checkout .wc-block-checkout * {
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
		overflow-wrap: anywhere;
	}
}
.rakata-destination-field {
	min-width: 0;
}

.rakata-destination-input {
	padding-right: 2.75rem !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23616b78' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 0.875rem center !important;
	background-size: 1.25rem !important;
}

.rakata-destination-results {
	max-width: 100%;
	overflow-x: hidden;
	overscroll-behavior: contain;
}

.rakata-destination-option {
	display: block;
	min-width: 0;
	min-height: 3rem;
	overflow-wrap: anywhere;
	white-space: normal;
	touch-action: manipulation;
}

.rakata-destination-option.is-active,
.rakata-destination-option[aria-selected="true"] {
	color: var(--rk-red-700);
	background: var(--rk-red-soft);
	box-shadow: inset 3px 0 0 var(--rk-red-600);
}

@media (max-width: 47.99rem) {
	body.woocommerce-cart,
	body.woocommerce-checkout {
		max-width: 100%;
		overflow-x: hidden;
	}

	body.woocommerce-cart main.site-main,
	body.woocommerce-checkout main.site-main {
		width: 100%;
		padding-block: clamp(1.25rem, 5vw, 2rem);
	}

	body.woocommerce-cart main.site-main > .site-container,
	body.woocommerce-checkout main.site-main > .site-container {
		width: 100%;
		max-width: 100%;
		padding-inline: max(0.75rem, env(safe-area-inset-left));
		margin-inline: 0;
		box-sizing: border-box;
	}

	body.woocommerce-cart .entry-header,
	body.woocommerce-checkout .entry-header {
		width: 100%;
		max-width: 100%;
		padding: 0 0 var(--rk-space-4);
		margin: 0 0 var(--rk-space-4);
		box-sizing: border-box;
	}

	body.woocommerce-cart .entry-title,
	body.woocommerce-checkout .entry-title {
		max-width: 100%;
		font-size: clamp(1.75rem, 9vw, 2.5rem);
		overflow-wrap: anywhere;
		text-wrap: wrap;
	}

	body.woocommerce-cart .entry-content,
	body.woocommerce-cart .wp-block-woocommerce-cart,
	body.woocommerce-cart .wp-block-woocommerce-filled-cart-block,
	body.woocommerce-cart .wc-block-components-sidebar-layout,
	body.woocommerce-cart .wc-block-cart__main,
	body.woocommerce-cart .wc-block-components-sidebar {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		margin-inline: 0;
		box-sizing: border-box;
	}

	body.woocommerce-cart .wc-block-cart__main,
	body.woocommerce-cart .wc-block-components-sidebar {
		padding: 0.75rem;
	}

	body.woocommerce-cart table.wc-block-cart-items,
	body.woocommerce-cart table.wc-block-cart-items tbody {
		display: block;
		width: 100%;
		max-width: 100%;
		table-layout: auto;
		overflow: visible;
	}

	body.woocommerce-cart table.wc-block-cart-items thead {
		display: none;
	}

	body.woocommerce-cart table.wc-block-cart-items tbody {
		display: grid;
		gap: 0.75rem;
	}

	body.woocommerce-cart table.wc-block-cart-items tr.wc-block-cart-items__row {
		display: grid;
		width: 100%;
		min-width: 0;
		grid-template-columns: 4.75rem minmax(0, 1fr);
		grid-template-areas:
			"image product"
			"image total";
		gap: 0.5rem 0.75rem;
		padding: 0.75rem;
		border: 1px solid var(--rk-border);
		border-radius: var(--rk-radius-lg);
		background: var(--rk-surface);
		box-shadow: var(--rk-shadow-s1);
		box-sizing: border-box;
	}

	body.woocommerce-cart table.wc-block-cart-items td {
		display: block;
		width: auto;
		min-width: 0;
		padding: 0;
		border: 0;
		box-sizing: border-box;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__image {
		width: 4.75rem;
		grid-area: image;
		align-self: start;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__image img {
		display: block;
		width: 4.75rem;
		height: 4.75rem;
		border-radius: var(--rk-radius-md);
		object-fit: contain;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__product {
		grid-area: product;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__wrap,
	body.woocommerce-cart table.wc-block-cart-items .wc-block-components-product-name,
	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__prices,
	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__quantity {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		overflow-wrap: anywhere;
		white-space: normal;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-components-product-name {
		display: block;
		margin-bottom: 0.375rem;
		font-size: 1rem;
		line-height: 1.35;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__prices {
		margin-bottom: 0.5rem;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__quantity {
		display: flex;
		flex-wrap: wrap;
		gap: 0.5rem;
		align-items: center;
		justify-content: space-between;
	}

	body.woocommerce-cart .wc-block-components-quantity-selector {
		width: auto;
		max-width: 9.5rem;
		margin: 0;
	}

	body.woocommerce-cart .wc-block-components-quantity-selector input,
	body.woocommerce-cart .wc-block-components-quantity-selector button {
		min-width: 2.75rem;
		min-height: 2.75rem;
	}

	body.woocommerce-cart .wc-block-cart-item__remove-link {
		display: inline-flex;
		min-width: 2.75rem;
		min-height: 2.75rem;
		align-items: center;
		justify-content: center;
		padding: 0.5rem;
		margin: 0;
		border-radius: var(--rk-radius-md);
		touch-action: manipulation;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total {
		display: flex;
		grid-area: total;
		gap: 0.75rem;
		align-items: center;
		justify-content: space-between;
		padding-top: 0.625rem;
		border-top: 1px solid var(--rk-border);
		text-align: right;
	}

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total::before { content: none; }

	body.woocommerce-cart table.wc-block-cart-items .wc-block-cart-item__total {
		border-top: 0;
		padding-top: 0;
		justify-content: flex-end;
	}

	body.woocommerce-cart .wc-block-cart__submit-button {
		width: 100%;
		min-height: 3.25rem;
	}

	body.woocommerce-checkout .content-shell,
	body.woocommerce-checkout .content-entry,
	body.woocommerce-checkout .entry-content,
	body.woocommerce-checkout .wp-block-woocommerce-checkout,
	body.woocommerce-checkout .wc-block-checkout,
	body.woocommerce-checkout .wc-block-components-sidebar-layout,
	body.woocommerce-checkout .wc-block-components-main,
	body.woocommerce-checkout .wc-block-components-sidebar,
	body.woocommerce-checkout .wc-block-checkout__main {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		margin-inline: 0 !important;
		box-sizing: border-box;
	}

	body.woocommerce-checkout .wc-block-checkout {
		padding: 0;
		margin-top: var(--rk-space-4);
	}

	body.woocommerce-checkout .wc-block-components-sidebar-layout {
		display: block;
	}

	body.woocommerce-checkout .wc-block-checkout__main,
	body.woocommerce-checkout .wc-block-components-sidebar {
		padding: 0.75rem;
		margin-bottom: var(--rk-space-4) !important;
	}

	body.woocommerce-checkout .wc-block-components-address-form,
	body.woocommerce-checkout .wc-block-components-address-form__address_1,
	body.woocommerce-checkout .wc-block-components-text-input,
	body.woocommerce-checkout .wc-block-components-combobox,
	body.woocommerce-checkout .wc-block-components-form,
	body.woocommerce-checkout .wc-block-components-form .wc-block-components-textarea,
	body.woocommerce-checkout .wc-block-components-address-card,
	body.woocommerce-checkout .wc-block-components-radio-control,
	body.woocommerce-checkout .wc-block-components-radio-control__option,
	body.woocommerce-checkout .wc-block-components-radio-control__label,
	body.woocommerce-checkout .wc-block-components-radio-control__description-group,
	body.woocommerce-checkout .wc-block-components-shipping-rates-control__package,
	body.woocommerce-checkout .wc-block-components-shipping-rates-control__package-items,
	body.woocommerce-checkout .wc-block-components-order-summary,
	body.woocommerce-checkout .wc-block-components-order-summary-item {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	body.woocommerce-checkout .wc-block-components-text-input input,
	body.woocommerce-checkout .wc-block-components-combobox input,
	body.woocommerce-checkout .wc-block-components-address-form select,
	body.woocommerce-checkout textarea {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	body.woocommerce-checkout .wc-block-components-address-card address,
	body.woocommerce-checkout .wc-block-components-radio-control__label,
	body.woocommerce-checkout .wc-block-components-radio-control__description-group,
	body.woocommerce-checkout .wc-block-components-shipping-rates-control__package,
	body.woocommerce-checkout .wc-block-components-shipping-rates-control__package-items,
	body.woocommerce-checkout .wc-block-components-order-summary-item__description {
		overflow-wrap: anywhere;
		white-space: normal;
	}

	body.woocommerce-checkout .wc-block-components-radio-control__option {
		padding-right: 0.75rem;
	}

	body.woocommerce-checkout .wc-block-components-checkout-place-order-button {
		width: 100%;
		min-height: 3.25rem;
		margin-bottom: env(safe-area-inset-bottom);
	}

	body.woocommerce-checkout img,
	body.woocommerce-checkout [class*="qris"] img,
	body.woocommerce-checkout [class*="qr-code"] img {
		max-width: 100%;
		height: auto;
	}

	body.admin-bar.woocommerce-checkout main.site-main {
		scroll-margin-top: 3rem;
	}

	body.logged-in #coming-soon-footer-banner {
		position: static !important;
		width: 100%;
		min-height: 0;
		flex-wrap: wrap;
		gap: 0.5rem;
		padding: 0.625rem 0.75rem;
		z-index: auto;
	}

	body.logged-in #coming-soon-footer-banner .coming-soon-footer-banner__content {
		min-width: 0;
		flex: 1 1 calc(100% - 3.25rem);
		margin: 0;
		text-align: left;
		overflow-wrap: anywhere;
	}

	body.logged-in #coming-soon-footer-banner a.coming-soon-footer-banner-dismiss {
		display: block;
		width: 2.75rem;
		height: 2.75rem;
		flex: 0 0 2.75rem;
		border-radius: var(--rk-radius-md);
		background-position: center;
		touch-action: manipulation;
	}
}
/* Final mobile order summary, destination list, and QRIS meta layout. */
.rakata-destination-results {
	display: grid !important;
	max-height: 18rem;
	overflow-x: hidden !important;
	overflow-y: auto !important;
}

.rakata-destination-option {
	position: static !important;
	display: block !important;
	width: 100% !important;
	height: auto !important;
	min-height: 3rem;
	max-height: none !important;
	line-height: 1.45;
	white-space: normal !important;
	overflow-wrap: anywhere;
	box-sizing: border-box;
}

@media (max-width: 600px) {
	body.woocommerce-checkout .wc-block-components-order-summary,
	body.woocommerce-checkout .wc-block-components-order-summary-item,
	body.woocommerce-checkout .wc-block-components-order-summary-item__description,
	body.woocommerce-checkout .wc-block-components-order-summary-item__total {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box !important;
		overflow-wrap: anywhere;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto !important;
		gap: 0.5rem 0.75rem;
		align-items: center;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__description {
		min-width: 0 !important;
		white-space: normal !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__total {
		min-width: 0 !important;
		text-align: right;
		justify-self: end;
		white-space: normal !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__quantity {
		position: static !important;
		margin-inline-start: 0.25rem;
	}

	body.woocommerce-order-received .woocommerce-order-overview,
	body.woocommerce-order-received .woocommerce-order-overview li,
	body.woocommerce-order-received .woocommerce-order-details,
	body.woocommerce-order-received .woocommerce-customer-details,
	body.woocommerce-order-received .rakata-qris,
	body.woocommerce-order-received [class*="qris"] {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
		overflow-wrap: anywhere;
	}

	body.woocommerce-order-received .woocommerce-order-overview {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 0.5rem;
		padding: 0;
		margin: 0 0 1.25rem;
	}

	body.woocommerce-order-received .woocommerce-order-overview li {
		float: none;
		border: 1px solid var(--rk-border) !important;
		border-width: 1px !important;
		border-radius: var(--rk-radius-md);
		padding: 0.75rem;
		margin: 0;
	}

	body.woocommerce-order-received .woocommerce-order-overview li strong {
		display: block;
		margin-top: 0.25rem;
		overflow-wrap: anywhere;
	}

	body.woocommerce-order-received .woocommerce-order-details,
	body.woocommerce-order-received .woocommerce-customer-details {
		border: 1px solid var(--rk-border);
		border-radius: var(--rk-radius-md);
		padding: 0.75rem;
	}

	body.woocommerce-order-received .woocommerce-order-details table,
	body.woocommerce-order-received .woocommerce-order-details th,
	body.woocommerce-order-received .woocommerce-order-details td {
		max-width: 100%;
		white-space: normal;
		overflow-wrap: anywhere;
	}

	body.woocommerce-order-received img,
	body.woocommerce-order-received [class*="qris"] img,
	body.woocommerce-order-received [class*="qr-code"] img {
		display: block;
		width: auto;
		max-width: 100%;
		height: auto;
	}
}

@media (max-width: 420px) {
	body.woocommerce-order-received .woocommerce-order-overview,
	body.woocommerce-order-received .woocommerce-order-details,
	body.woocommerce-order-received .woocommerce-customer-details {
		grid-template-columns: minmax(0, 1fr);
	}
}
/* Owner visual UAT final mobile hardening. */
@media (max-width: 600px) {
	html, body.woocommerce-checkout, body.woocommerce-order-received { width: 100% !important; max-width: 100% !important; overflow-x: hidden !important; }
	body.woocommerce-checkout main.site-main, body.woocommerce-checkout main.site-main > .site-container, body.woocommerce-checkout .content-shell, body.woocommerce-checkout .content-entry, body.woocommerce-checkout .entry-content, body.woocommerce-checkout .wp-block-woocommerce-checkout, body.woocommerce-checkout .wc-block-checkout, body.woocommerce-checkout .wc-block-components-sidebar-layout, body.woocommerce-checkout .wc-block-components-main, body.woocommerce-checkout .wc-block-components-sidebar, body.woocommerce-order-received main.site-main, body.woocommerce-order-received main.site-main > .site-container, body.woocommerce-order-received .content-shell, body.woocommerce-order-received .content-entry, body.woocommerce-order-received .entry-content, body.woocommerce-order-received .woocommerce-order { width: 100% !important; max-width: 100% !important; min-width: 0 !important; margin-inline: 0 !important; padding-inline: 0.75rem !important; box-sizing: border-box !important; }
	body.woocommerce-checkout .wc-block-components-order-summary, body.woocommerce-checkout .wc-block-components-order-summary-item, body.woocommerce-checkout .wc-block-components-order-summary-item__description, body.woocommerce-checkout .wc-block-components-order-summary-item__total { width: 100% !important; max-width: 100% !important; min-width: 0 !important; box-sizing: border-box !important; overflow-wrap: anywhere; }
	body.woocommerce-checkout .wc-block-components-order-summary-item { display: grid !important; grid-template-columns: 3.5rem minmax(0, 1fr) auto !important; grid-template-areas: "image description total"; gap: 0.5rem; align-items: center; }
	body.woocommerce-checkout .wc-block-components-order-summary-item__image { grid-area: image; width: 3.5rem !important; min-width: 0 !important; }
	body.woocommerce-checkout .wc-block-components-order-summary-item__image img { display: block; width: 3.5rem !important; height: 3.5rem !important; max-width: 100% !important; object-fit: contain; }
	body.woocommerce-checkout .wc-block-components-order-summary-item__description { grid-area: description; min-width: 0 !important; white-space: normal !important; line-height: 1.35; }
	body.woocommerce-checkout .wc-block-components-order-summary-item__total { grid-area: total; min-width: 0 !important; max-width: 7rem !important; text-align: right; justify-self: end; white-space: normal !important; }
	body.woocommerce-order-received .woocommerce-order-overview, body.woocommerce-order-received .woocommerce-order-details, body.woocommerce-order-received .woocommerce-customer-details, body.woocommerce-order-received .rakata-qris { width: 100% !important; max-width: 100% !important; min-width: 0 !important; box-sizing: border-box !important; }
	body.woocommerce-order-received .woocommerce-order-overview { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 0.5rem; margin: 0 0 1rem; padding: 0; }
	body.woocommerce-order-received .woocommerce-order-overview li { float: none !important; width: 100% !important; border: 1px solid var(--rk-border) !important; border-radius: var(--rk-radius-md); padding: 0.75rem !important; margin: 0 !important; box-sizing: border-box; }
	body.woocommerce-order-received .woocommerce-order-overview li strong, body.woocommerce-order-received .woocommerce-order-details td, body.woocommerce-order-received .woocommerce-customer-details address { display: block; max-width: 100%; overflow-wrap: anywhere; white-space: normal; }
	body.woocommerce-order-received .woocommerce-order-details, body.woocommerce-order-received .woocommerce-customer-details, body.woocommerce-order-received .rakata-qris { border: 1px solid var(--rk-border); border-radius: var(--rk-radius-md); padding: 0.75rem; margin-block: 0.75rem; }
	body.woocommerce-order-received .woocommerce-order-details table { display: block; width: 100%; max-width: 100%; overflow-x: hidden; }
	body.woocommerce-order-received .rakata-qris img, body.woocommerce-order-received [class*="qris"] img { display: block; width: auto; max-width: 100% !important; height: auto; margin-inline: auto; }
	body.woocommerce-order-received h1, body.woocommerce-order-received h2, body.woocommerce-order-received h3 { max-width: 100%; overflow-wrap: anywhere; }
}
/* Final narrow mobile geometry: preserve 350px+ usable content at 390px. */
@media (max-width: 600px) {
	body.woocommerce-checkout main.site-main > .site-container,
	body.woocommerce-order-received main.site-main > .site-container {
		padding-inline: 0.75rem !important;
	}

	body.woocommerce-checkout .content-shell,
	body.woocommerce-checkout .content-entry,
	body.woocommerce-checkout .entry-content,
	body.woocommerce-checkout .wp-block-woocommerce-checkout,
	body.woocommerce-checkout .wc-block-checkout,
	body.woocommerce-checkout .wc-block-components-sidebar-layout,
	body.woocommerce-checkout .wc-block-components-main,
	body.woocommerce-checkout .wc-block-components-sidebar,
	body.woocommerce-order-received .content-shell,
	body.woocommerce-order-received .content-entry,
	body.woocommerce-order-received .entry-content,
	body.woocommerce-order-received .woocommerce-order {
		padding-inline: 0 !important;
		margin-inline: 0 !important;
		transform: none !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__description,
	body.woocommerce-checkout .wc-block-components-order-summary-item__description * {
		min-width: 0 !important;
		word-break: normal !important;
		overflow-wrap: break-word !important;
	}
}

@media (max-width: 420px) {
	body.woocommerce-checkout .wc-block-components-order-summary-item {
		grid-template-columns: 3.75rem minmax(0, 1fr) !important;
		grid-template-areas:
			"image description"
			"total total" !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__image,
	body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
		width: 3.75rem !important;
		height: 3.75rem !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__total {
		width: 100% !important;
		max-width: 100% !important;
		padding-top: 0.5rem;
		border-top: 1px solid var(--rk-border);
	}
}
/* Owner UAT regression correction: stable checkout summary and address card. */
body.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-metadata,
body.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-details,
body.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-description,
.wc-block-components-order-summary-item__description .wc-block-components-product-metadata,
.wc-block-components-order-summary-item__description .wc-block-components-product-details,
.wc-block-components-order-summary-item__description .wc-block-components-product-description {
	display: none !important;
}

body.woocommerce-cart .wc-block-cart-item__total {
	justify-content: flex-end;
	text-align: right;
}

body.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price {
	margin-inline-start: auto;
	text-align: right;
}

@media (max-width: 600px) {
	body.woocommerce-checkout .wc-block-components-order-summary-item {
		display: grid !important;
		grid-template-columns: 4rem minmax(0, 1fr) auto !important;
		grid-template-areas: "image description total" !important;
		gap: 0.5rem 0.75rem;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__image {
		position: relative;
		grid-area: image;
		width: 4rem !important;
		height: 4rem !important;
		min-width: 4rem !important;
		overflow: visible;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
		width: 4rem !important;
		height: 4rem !important;
		object-fit: contain;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__description,
	body.woocommerce-checkout .wc-block-components-product-name {
		grid-area: description;
		width: auto !important;
		min-width: 0 !important;
		white-space: normal !important;
		word-break: normal !important;
		overflow-wrap: break-word !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__quantity {
		position: absolute !important;
		top: -0.35rem;
		right: -0.35rem;
		z-index: 1;
		margin: 0 !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__total {
		grid-area: total;
		width: auto !important;
		max-width: 7rem !important;
		min-width: 0 !important;
		justify-self: end;
		text-align: right;
		white-space: nowrap !important;
		padding-top: 0 !important;
		border-top: 0 !important;
	}

	body.woocommerce-checkout .wc-block-components-address-card {
		position: relative;
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 0.5rem;
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	body.woocommerce-checkout .wc-block-components-address-card address {
		min-width: 0;
		overflow-wrap: break-word;
		word-break: normal;
	}

	body.woocommerce-checkout .wc-block-components-address-card__edit {
		flex: 0 0 auto;
		width: auto !important;
		min-width: max-content;
		white-space: nowrap !important;
		writing-mode: horizontal-tb !important;
		word-break: normal !important;
	}
}

/* Mobile shop cards and order details keep compact two-column layouts. */
@media (max-width: 600px) {
	body.woocommerce-shop ul.products {
		grid-template-columns: minmax(0, 1fr);
	}

	body.woocommerce-shop ul.products li.product {
		min-height: 0;
	}

	body.woocommerce-shop ul.products li.product a.woocommerce-loop-product__link {
		display: grid;
		grid-template-columns: 5.5rem minmax(0, 1fr);
		gap: 0.25rem 0.75rem;
		align-content: start;
		align-items: start;
		width: 100%;
		min-width: 0;
	}

	body.woocommerce-shop ul.products li.product a.woocommerce-loop-product__link > img {
		grid-column: 1;
		grid-row: 1 / span 3;
		width: 5.5rem;
		height: 5.5rem;
		margin: 0;
		object-fit: contain;
	}

	body.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
	body.woocommerce-shop ul.products li.product .star-rating,
	body.woocommerce-shop ul.products li.product .price {
		grid-column: 2;
		min-width: 0;
	}

	body.woocommerce-shop ul.products li.product .woocommerce-loop-product__title {
		padding: 0;
		margin-bottom: 0.25rem;
		word-break: normal;
		overflow-wrap: break-word;
		text-wrap: wrap;
	}

	body.woocommerce-shop ul.products li.product .star-rating {
		margin: 0 0 0.25rem;
	}

	body.woocommerce-shop ul.products li.product .price {
		align-self: start;
		margin: 0;
	}

	body.woocommerce-shop ul.products li.product > .button {
		width: 100%;
		min-height: 2.75rem;
		margin-top: 0.75rem;
		flex: none;
	}

	body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details {
		display: table;
		width: 100%;
		max-width: 100%;
		table-layout: fixed;
		overflow: visible;
	}

	body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details th,
	body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details td {
		display: table-cell;
		width: auto;
		max-width: none;
		vertical-align: top;
	}

	body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details .product-name,
	body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details tfoot th {
		text-align: left;
		white-space: normal;
		word-break: normal;
		overflow-wrap: break-word;
	}

	body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details .product-total,
	body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details tfoot td {
		width: 7.75rem;
		text-align: right;
		white-space: nowrap;
		overflow-wrap: normal;
	}

	body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details .shipped_via {
		display: block;
		margin-top: 0.125rem;
		font-size: 0.75rem;
		line-height: 1.35;
		white-space: normal;
	}
}

/* Owner UAT: make mobile shop cards use full available width. */
@media (max-width: 600px) {
	body.woocommerce-shop .woocommerce,
	body.woocommerce-shop ul.products {
		width: 100% !important;
		max-width: 100% !important;
	}

	body.woocommerce-shop ul.products {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 1rem !important;
	}

	body.woocommerce-shop ul.products li.product {
		float: none !important;
		clear: none !important;
		width: 100% !important;
		max-width: none !important;
		min-width: 0 !important;
		margin: 0 !important;
		box-sizing: border-box !important;
	}

	body.woocommerce-shop ul.products li.product a.woocommerce-loop-product__link {
		grid-template-columns: 6rem minmax(0, 1fr) !important;
	}

	body.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
	body.woocommerce-shop ul.products li.product .price {
		width: auto !important;
		max-width: none !important;
		min-width: 0 !important;
	}
}

/* Keep order action buttons inside the mobile order-details card. */
@media (max-width: 600px) {
	body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details tfoot tr:has(> th.order-actions--heading) {
		display: grid;
		grid-template-columns: max-content minmax(0, 1fr);
		gap: 0.5rem;
		align-items: start;
		width: 100%;
	}

	body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details th.order-actions--heading {
		display: block;
		width: auto;
		max-width: none;
		min-width: 0;
	}

	body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details th.order-actions--heading + td {
		display: flex;
		flex-wrap: wrap;
		gap: 0.5rem;
		justify-content: flex-end;
		width: auto;
		max-width: none;
		min-width: 0;
		white-space: normal;
		overflow-wrap: normal;
	}

	body.woocommerce-order-received .woocommerce-order-details table.woocommerce-table--order-details th.order-actions--heading + td > .order-actions-button {
		min-width: 0;
		min-height: 2.75rem;
		flex: 1 1 5rem;
		margin: 0;
		white-space: normal;
	}
}

/* Final homepage CTA and approved collection CTA placement. */
.home-final-cta {
	isolation: isolate;
	position: relative;
	overflow: clip;
	width: 100%;
	aspect-ratio: 941 / 1672;
	background: #d3a46f;
}
.home-final-cta__background,
.home-final-cta__background img {
	position: absolute;
	z-index: 0;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.home-final-cta__products { position: absolute; z-index: 1; inset: 0; pointer-events: none; }
.home-final-cta__product {
	position: absolute;
	bottom: 20.2%;
	display: block;
	width: 27%;
	aspect-ratio: 1800 / 2200;
	transform: translateX(-50%) scale(1.1);
	transform-origin: center bottom;
}
.home-final-cta__product--1 { left: 24%; }
.home-final-cta__product--2 { left: 50%; }
.home-final-cta__product--3 { left: 76%; }
.home-final-cta__product img { display: block; width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 0.3rem 0.28rem rgb(65 31 11 / 24%)); }
.home-final-cta__actions { position: absolute; z-index: 2; inset: 0; }
.home-final-cta__action { position: absolute; left: 18.5%; display: block; width: 63%; border-radius: 1rem; }
.home-final-cta__action--shop { bottom: 7.8%; height: 6.2%; }
.home-final-cta__action:hover { background: rgb(255 236 195 / 8%); }
.home-final-cta__action:focus-visible { outline: 3px solid #fff0bc; outline-offset: 3px; }
.rakata-qris__actions { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: 1rem; }

@media (min-width: 48rem) {
	.home-collection__mobile-copy { top: 71.5%; }
	.home-final-cta { aspect-ratio: 1672 / 941; }
	.home-final-cta__product { bottom: 21.5%; width: 15%; }
	.home-final-cta__product--1 { left: 52%; }
	.home-final-cta__product--2 { left: 71%; }
	.home-final-cta__product--3 { left: 90%; }
	.home-final-cta__action { bottom: 9.7%; height: 8.7%; }
	.home-final-cta__action--shop { left: 3.8%; width: 19.6%; }
}

/* Owner-approved amber page background, limited to commerce and trust routes. */
body.rakata-amber-background {
	background: #f4c86f;
}

/* Apply the artwork to the visible page canvas, not only behind opaque content layers. */
body.rakata-amber-background main.site-main {
	background: #f4c86f url("../../../../plugins/rakata-core/assets/images/recipes/recipe-download-background.png") center top / cover fixed no-repeat;
}

body.rakata-amber-background .trust-page {
	background: transparent;
}

/* Notification panel has header, status, scrollable items, and footer. */
.rakata-notification-center__panel{grid-template-rows:auto auto minmax(0,1fr) auto}
.rakata-notification-center [data-rakata-notification-status]{margin:0;padding:.5rem .75rem}
.rakata-notification-center [data-rakata-notification-status]:empty{display:none}

.rakata-notification-bell,.rakata-account-link{position:relative;display:inline-grid;place-items:center;width:2.75rem;height:2.75rem;border:1px solid var(--rk-control-border);border-radius:var(--rk-radius-md);background:var(--rk-surface);color:var(--rk-ink-900)}.rakata-notification-bell svg,.rakata-account-link svg{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.rakata-notification-bell span{position:absolute;top:calc(-.3rem + 6px);right:-.3rem;min-width:1.2rem;height:1.2rem;border:2px solid var(--rk-cream-50);border-radius:99px;background:var(--rk-red-600);color:#fff;font-size:.68rem;font-weight:800}.rakata-notification-center{position:fixed;z-index:100100;inset:0;pointer-events:none}.rakata-notification-center__backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent;pointer-events:auto}.rakata-notification-center__panel{position:absolute;top:5rem;right:1rem;display:grid;grid-template-rows:auto 1fr auto;width:380px;height:440px;overflow:hidden;border:1px solid var(--rk-control-border);border-radius:var(--rk-radius-lg);background:var(--rk-surface);box-shadow:var(--rk-shadow-s2);pointer-events:auto}.rakata-notification-center__panel header,.rakata-notification-center__panel footer{display:flex;gap:.5rem;align-items:center;padding:.75rem;border-bottom:1px solid var(--rk-control-border)}.rakata-notification-center__panel h2{margin:0 auto 0 0;font-size:1rem}.rakata-notification-center__panel footer{border-top:1px solid var(--rk-control-border);border-bottom:0}.rakata-notification-center [data-rakata-notification-items]{overflow-y:auto;padding:.5rem}.rakata-notification-center__item{display:grid;gap:.25rem;width:100%;padding:.7rem;border:0;border-bottom:1px solid var(--rk-control-border);background:transparent;color:inherit;text-align:left;text-decoration:none}.rakata-notification-center__item.is-unread{border-left:3px solid var(--rk-red-600)}.rakata-notification-center__item strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rakata-notification-center__item span{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.rakata-notification-bell:focus-visible,.rakata-notification-center :focus-visible,.rakata-account-link:focus-visible{outline:3px solid var(--rk-red-600);outline-offset:2px}@media(max-width:48rem){.rakata-notification-center__panel{top:auto;right:0;bottom:0;width:100%;height:72dvh;border-radius:1rem 1rem 0 0}.rakata-notification-open{overflow:hidden}}@media(prefers-reduced-motion:reduce){.rakata-notification-center__panel{transition:none}}
/* Header icon actions stay visually lightweight while retaining 44px touch targets. */
.site-header__actions .cart-link,
.site-header__actions .rakata-notification-bell,
.site-header__actions .rakata-account-link {
	width: 2.75rem;
	min-width: 2.75rem;
	height: 2.75rem;
	min-height: 2.75rem;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}
.site-header__actions .cart-link:hover,
.site-header__actions .rakata-notification-bell:hover,
.site-header__actions .rakata-account-link:hover {
	border-color: transparent;
	background: transparent;
	color: var(--rk-red-700);
}
@media (min-width: 64rem) {
	.primary-menu a,
	.site-header__actions .cart-link,
	.site-header__actions .rakata-notification-bell,
	.site-header__actions .rakata-account-link {
		position: relative;
		min-height: calc(2.75rem - 10px);
	}

	.site-header__actions .cart-link,
	.site-header__actions .rakata-notification-bell,
	.site-header__actions .rakata-account-link {
		height: calc(2.75rem - 10px);
	}

	.primary-menu a::before,
	.site-header__actions .cart-link::before,
	.site-header__actions .rakata-notification-bell::before,
	.site-header__actions .rakata-account-link::before {
		position: absolute;
		inset: -5px 0;
		content: "";
	}
}

/* M14A-Q1: seat the existing bottle cutouts on their approved mobile podiums. */
@media (max-width: 47.99rem) {
	.home-hero__product { transform: translateY(-1rem); }
	.home-collection__product { transform: translateY(0) scale(1.08); }
	.home-collection__product--2 { transform: translateY(0) scale(1.12); }
	.home-final-cta__product { bottom: 21.5%; }
}


/* M14A-Q1: lift only the final homepage hero bottle group on mobile. */
@media (max-width: 47.99rem) {
 body.home .home-hero__product { transform: translateY(-36px); }
 body.home .home-final-cta__product { bottom: calc(21.5% + 50px); }
}

/* M14A-Q1 legal content files and footer link balance. */
.legal-preview-note { display: grid; gap: .25rem; margin: 0 0 var(--rk-space-6); padding: var(--rk-space-4); border: 1px solid #e7c46d; border-radius: var(--rk-radius-lg); color: var(--rk-ink-700); background: var(--rk-gold-soft); }
.legal-preview-note strong { color: var(--rk-ink-900); }
.legal-preview-note span, .legal-update-note { color: var(--rk-ink-600); }
.legal-document { max-width: 70rem; }
.legal-document h2 { margin-top: var(--rk-space-8); margin-bottom: var(--rk-space-3); font-family: var(--rk-font-body); font-size: clamp(1.15rem, 1rem + .3vw, 1.4rem); }
.legal-document h2:first-child { margin-top: 0; }
.legal-document p, .legal-document li { color: var(--rk-ink-700); line-height: 1.7; }
.legal-document ul { padding-left: 1.35rem; }
.legal-document a { color: var(--rk-red-700); font-weight: 700; }
.legal-update-note { margin-top: var(--rk-space-8); padding-top: var(--rk-space-4); border-top: 1px solid var(--rk-border); font-size: var(--rk-text-sm); }
.legal-safe-error { padding: var(--rk-space-4); border: 1px solid var(--rk-border); border-radius: var(--rk-radius-md); color: var(--rk-ink-700); background: var(--rk-cream-50); }
@media (min-width: 48rem) { .site-footer__inner { grid-template-columns: minmax(0, 1fr) minmax(18rem, .8fr); align-items: start; } .footer-menu { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 47.99rem) { .footer-menu { grid-template-columns: minmax(0, 1fr); } .legal-document h2 { margin-top: var(--rk-space-6); } }