﻿:root {
	--background: #fff5ec;
	--foreground: #4a2b24;
	--color-cream: #fff5ec;
	--color-ink: #4a2b24;
	--color-accent: #f45a2a;
	--color-accent-deep: #d94a3a;
	--color-accent-soft: #f9b28d;
	--color-card: #ffffff;
	--color-muted: #8c6a55;
	--color-line: #f2d6bf;
	--color-green: #a7a970;
	--header-height: 5rem;
	--font-display: "Playfair Display", Georgia, serif;
	--font-body: "Manrope", "Segoe UI", sans-serif;
}
*,
*::before,
*::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
#kategori,
#produk,
#video,
#blog,
#catalog { scroll-margin-top: calc(var(--header-height) + 1rem); }
body {
	background: #fff5ec;
	color: var(--foreground);
	font-family: var(--font-body);
	margin: 0;
}
body.menu-open,
body.home-popup-open { overflow: hidden; }
a { color: inherit; text-decoration: none; transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, transform 180ms ease; }
img { display: block; height: auto; max-width: 100%; }
p { margin: 0; }
:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*,
	*::before,
	*::after {
		animation-duration: 1ms !important;
		scroll-behavior: auto !important;
		transition-duration: 1ms !important;
	}
}
.shell { margin-inline: auto; max-width: 72rem; padding-inline: 1.25rem; width: 100%; }
.text-center { text-align: center; }
.skip-link {
	background: var(--color-ink);
	border-radius: 999px;
	color: #fff;
	font-size: .875rem;
	font-weight: 700;
	left: 1rem;
	padding: .7rem 1.15rem;
	position: fixed;
	top: 1rem;
	transform: translateY(-160%);
	z-index: 200;
}
.skip-link:focus { transform: translateY(0); }
.screen-reader-text {
	border: 0;
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}
.site-header {
	background: rgba(255, 255, 255, .95);
	backdrop-filter: blur(12px);
	border-bottom: 1px solid #f2d6bf;
	isolation: isolate;
	position: sticky;
	top: 0;
	z-index: 100;
}
.site-header.header-overlay { background: rgba(255,255,255,.95); border-bottom-color: #f2d6bf; }
.admin-bar .site-header { top: 32px; }
.live-ticker {
	background: #0f2e2d;
	color: #fff;
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .02em;
	overflow: hidden;
	white-space: nowrap;
}
.live-ticker-track {
	align-items: center;
	animation: liveTickerMove 24s linear infinite;
	display: inline-flex;
	gap: 2rem;
	min-width: max-content;
	padding-block: .38rem;
	padding-left: 100%;
}
.live-ticker-item {
	align-items: center;
	display: inline-flex;
	gap: .45rem;
}
.live-ticker-dot {
	animation: liveDotPulse 1.05s ease-in-out infinite;
	background: #ff3b55;
	border-radius: 999px;
	box-shadow: 0 0 0 .18rem rgba(255,59,85,.18);
	height: .38rem;
	width: .38rem;
}
.live-ticker:hover .live-ticker-track { animation-play-state: paused; }
@keyframes liveTickerMove {
	from { transform: translateX(0); }
	to { transform: translateX(-100%); }
}
.header-row {
	align-items: center;
	display: flex;
	height: var(--header-height);
	justify-content: space-between;
	position: relative;
}
.brand {
	align-items: center;
	display: flex;
	font-family: var(--font-display);
	font-size: 1.5rem;
	font-weight: 600;
	gap: .5rem;
	white-space: nowrap;
}
.brand-flower {
	fill: #fb7185;
	height: 1.1rem;
	stroke: none;
	width: 1.1rem;
}
.primary-menu .menu {
	align-items: center;
	display: flex;
	gap: 1.75rem;
	list-style: none;
	margin: 0;
	padding: 0;
}
.primary-menu a {
	color: #5f5651;
	display: inline-flex;
	font-size: .875rem;
	font-weight: 600;
	padding: .4rem 0;
	position: relative;
}
.primary-menu a::after {
	background: var(--color-accent);
	bottom: -.45rem;
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	transform: scaleX(0);
	transition: transform 180ms ease;
	width: 100%;
}
.primary-menu a:hover,
.primary-menu .current-menu-item a { color: var(--color-ink); }
.primary-menu .current-menu-item a::after { transform: scaleX(1); }
.header-actions { align-items: center; display: flex; gap: .5rem; }
.icon-link {
	align-items: center;
	border-radius: 999px;
	color: #332723;
	display: flex;
	font-size: 1rem;
	height: 2.5rem;
	justify-content: center;
	position: relative;
	transition: background 180ms ease, color 180ms ease;
	width: 2.5rem;
}
.icon-link:hover { background: #fff5ec; color: var(--color-accent-deep); }
.icon-link svg {
	fill: none;
	height: 1.05rem;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
	width: 1.05rem;
}
.count-badge {
	align-items: center;
	background: var(--color-accent);
	border-radius: 999px;
	color: #fff;
	display: flex;
	font-size: .6rem;
	font-weight: 700;
	height: 1rem;
	justify-content: center;
	min-width: 1rem;
	padding: 0 .2rem;
	position: absolute;
	right: -.2rem;
	top: -.15rem;
}
.nav-toggle {
	background: transparent;
	border: 0;
	display: none;
	padding: 0;
}
.nav-toggle svg { height: 1.15rem; width: 1.15rem; }
.menu-close-icon { display: none; }
.nav-toggle[aria-expanded="true"] .menu-open-icon { display: none; }
.nav-toggle[aria-expanded="true"] .menu-close-icon { display: block; }
.eyebrow {
	color: var(--color-accent-deep);
	font-size: .7rem;
	font-weight: 750;
	letter-spacing: .23em;
	text-transform: uppercase;
}
.section-heading {
	font-family: var(--font-display);
	font-size: clamp(1.9rem, 4vw, 2.5rem);
	font-weight: 600;
	line-height: 1.15;
	margin: .75rem 0 0;
}
.button,
.button-dark,
.button-light,
.button-outline {
	align-items: center;
	border-radius: 999px;
	display: inline-flex;
	font-size: .875rem;
	font-weight: 700;
	justify-content: center;
	min-height: 2.9rem;
	padding: .7rem 1.5rem;
}
.button-dark,
.button { background: var(--color-ink); color: #fff; }
.button-dark:hover,
.button:hover { background: #44352f; color: #fff; }
.button-light { background: #fff; color: var(--color-ink); }
.button-outline { background: #fff; border: 1px solid var(--color-line); color: var(--color-ink); }
.button-outline:hover { border-color: var(--color-accent); color: var(--color-accent-deep); }
.hero-campaign {
	background: #f8e7e2;
	overflow: hidden;
	position: relative;
}
.hero-viewport { overflow: hidden; transition: height 320ms ease; }
.hero-track {
	align-items: flex-start;
	display: flex;
	transform: translateX(0);
	transition: transform 1200ms cubic-bezier(.22,.61,.36,1);
	width: 100%;
}
.hero-slide {
	flex: 0 0 100%;
	line-height: 0;
	margin: 0;
	min-width: 100%;
	overflow: hidden;
	position: relative;
}
.hero-slide picture { display: block; width: 100%; }
.hero-slide-photo {
	display: block;
	height: auto;
	object-position: var(--desktop-focus, center center);
	width: 100%;
}
.benefit-section { background: #fff; border-block: 1px solid #f2d6bf; }
.benefit-strip { display: grid; grid-template-columns: repeat(3, 1fr); padding-block: .75rem; }
.benefit-item {
	align-items: center;
	display: flex;
	gap: 1rem;
	justify-content: center;
	min-width: 0;
	padding: .5rem 1.5rem;
	text-align: left;
}
.benefit-item + .benefit-item { border-left: 1px solid var(--color-line); }
.benefit-icon {
	align-items: center;
	background: #fff5ec;
	border-radius: 999px;
	color: var(--color-accent-deep);
	display: flex;
	flex-shrink: 0;
	height: 2.75rem;
	justify-content: center;
	width: 2.75rem;
}
.benefit-item strong { display: block; font-size: .875rem; }
.benefit-item p { color: #8c6a55; font-size: .75rem; margin-top: .25rem; }
.home-section { padding-block: 5rem; }
.category-section { padding-block: 3.5rem 5rem; }
.category-grid {
	display: grid;
	gap: .9rem;
	grid-template-columns: repeat(4, minmax(0, 13rem));
	margin-top: 2rem;
	margin-left: auto;
	margin-right: auto;
	max-width: calc((13rem * 4) + (.9rem * 3));
	justify-content: center;
}
.category-card {
	background: #f6ded7;
	border: 1px solid #f2d6bf;
	border-radius: 1rem;
	height: 12.25rem;
	overflow: hidden;
	position: relative;
	text-align: left;
	transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
	width: 100%;
}
.category-card::after {
	background: linear-gradient(180deg, rgba(42,31,27,0) 20%, rgba(42,31,27,.08) 47%, rgba(42,31,27,.68) 100%);
	content: "";
	inset: 0;
	position: absolute;
	z-index: 1;
}
.category-card:hover {
	border-color: rgba(189,105,111,.36);
	box-shadow: 0 16px 30px rgba(90,56,49,.13);
	transform: translateY(-3px);
}
.category-image {
	display: block;
	height: 100%;
	inset: 0;
	object-fit: cover;
	object-position: center;
	position: absolute;
	transition: transform .45s ease;
	width: 100%;
}
.category-card:hover .category-image { transform: scale(1.045); }
.category-image-bundle { object-position: 61% center; }
.category-copy { bottom: 0; color: #fff; left: 0; padding: 1rem; position: absolute; right: 0; z-index: 2; }
.category-copy h3 { color: #fff; font-size: .9375rem; margin: 0; }
.category-copy p { color: rgba(255,255,255,.82); font-size: .75rem; letter-spacing: .02em; margin-top: .28rem; }
.promo-home {
	background: linear-gradient(90deg, rgba(255,227,220,1), rgba(255,227,220,.75), rgba(255,227,220,0)), var(--promo-bg) center/cover;
	border-radius: 2rem;
	min-height: 360px;
	overflow: hidden;
	position: relative;
}
.promo-content { max-width: 20rem; padding: 3rem; position: relative; z-index: 1; }
.promo-content h2 {
	font-family: var(--font-display);
	font-size: clamp(2rem, 4vw, 2.5rem);
	font-weight: 600;
	line-height: 1.15;
	margin: .75rem 0 0;
}
.promo-content h2 span { color: var(--color-accent); display: block; }
.promo-content p:not(.eyebrow) { color: #6b5040; font-size: .875rem; line-height: 1.7; margin-top: .75rem; }
.promo-content .button { margin-top: 1.5rem; }
.section-row { align-items: flex-end; display: flex; justify-content: space-between; margin-bottom: 1.75rem; }
.see-all { color: var(--color-accent-deep); font-size: .875rem; font-weight: 700; }
.product-grid { display: grid; gap: 1.25rem; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.product-card {
	background: #fff;
	border: 1px solid #f2d6bf;
	border-radius: 1rem;
	overflow: hidden;
	position: relative;
}
.card-media { aspect-ratio: 1; background: #fff5f2; overflow: hidden; position: relative; }
.card-image,
.card-image img { display: block; height: 100%; width: 100%; }
.card-image img { object-fit: cover; transition: transform 500ms ease; }
.card-image:hover img { transform: scale(1.05); }
.favorite {
	align-items: center;
	background: #fff;
	border: 0;
	border-radius: 999px;
	color: #6b5040;
	cursor: pointer;
	display: flex;
	font-size: 1.15rem;
	height: 2rem;
	justify-content: center;
	position: absolute;
	right: .75rem;
	top: .75rem;
	width: 2rem;
	z-index: 2;
}
.favorite.is-active { color: var(--color-accent); }
.discount {
	background: #fff;
	border-radius: 999px;
	bottom: .75rem;
	color: var(--color-accent);
	font-size: .625rem;
	font-weight: 800;
	left: .75rem;
	padding: .25rem .62rem;
	position: absolute;
}
.card-copy { padding: 1rem; }
.card-copy h3 {
	font-family: var(--font-body);
	font-size: .875rem;
	font-weight: 700;
	margin: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.rating { align-items: center; color: #d97706; display: flex; font-size: .6875rem; gap: .38rem; margin-top: .5rem; white-space: nowrap; }
.rating b { color: #b45309; font-size: .7rem; font-weight: 700; }
.rating > span:not(.rating-stars) { color: #b89278; }
.rating-stars {
	color: #e7e5e4;
	display: inline-block;
	font-size: .7rem;
	letter-spacing: .08em;
	line-height: 1;
	position: relative;
	vertical-align: middle;
}
.rating-base { color: #e7e5e4; display: block; }
.rating-fill {
	color: #f59e0b;
	display: block;
	inset: 0 auto 0 0;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
}
.rating-detail { font-size: .88rem; gap: .55rem; margin: 1rem 0; }
.rating-detail .rating-stars { font-size: 1rem; letter-spacing: .12em; }
.rating-detail b { font-size: .9rem; }
.card-bottom { align-items: center; display: flex; gap: .5rem; justify-content: space-between; margin-top: .5rem; }
.card-bottom strong { display: block; font-size: 1.125rem; }
.card-bottom del { color: #b89278; display: block; font-size: .625rem; }
.add-bag {
	align-items: center;
	background: #fff;
	border: 1px solid #e7e5e4;
	border-radius: 999px;
	color: var(--color-ink);
	cursor: pointer;
	display: flex;
	flex-shrink: 0;
	font-size: 1rem;
	height: 2rem;
	justify-content: center;
	width: 2rem;
}
.add-bag:hover,
.add-bag.is-active { border-color: var(--color-accent); color: var(--color-accent-deep); }
.video-section {
	background: #fff;
	border-top: 1px solid #f2d6bf;
	padding-block: 5rem;
}
.video-card-grid {
	align-items: start;
	display: flex;
	gap: 1.25rem;
	max-width: 57rem;
}
.video-card {
	background: #fff;
	border: 1px solid #f2d6bf;
	border-radius: 1rem;
	cursor: pointer;
	flex: 1 1 0;
	min-width: 0;
	overflow: hidden;
	transform: translateY(0);
	transition: border-color 260ms ease, box-shadow 260ms ease, flex-basis 320ms ease, flex-grow 320ms ease, opacity 260ms ease, transform 320ms ease;
}
.video-card-grid.has-active .video-card {
	flex-grow: .92;
	opacity: .72;
	transform: scale(.97);
}
.video-card-grid.has-active .video-card.is-active {
	border-color: rgba(189,105,111,.38);
	box-shadow: 0 24px 38px -26px rgba(78,40,34,.48);
	flex-grow: 1.18;
	opacity: 1;
	transform: translateY(-.35rem) scale(1.025);
}
.video-card-media {
	aspect-ratio: 9 / 12;
	background: #f6ded7;
	overflow: hidden;
	position: relative;
}
.video-card-media img,
.video-card-media video {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}
.video-card-media img { filter: saturate(.94); }
.video-card.is-active .video-card-media img { filter: saturate(1); }
.video-placeholder {
	align-items: center;
	background: linear-gradient(180deg, transparent 42%, rgba(34,26,22,.52));
	color: #fff;
	display: flex;
	flex-direction: column;
	font-size: .7rem;
	font-weight: 700;
	gap: .6rem;
	inset: 0;
	justify-content: center;
	letter-spacing: .12em;
	position: absolute;
	text-transform: uppercase;
}
.video-play {
	align-items: center;
	background: rgba(255,255,255,.94);
	border-radius: 999px;
	display: flex;
	height: 3.25rem;
	justify-content: center;
	width: 3.25rem;
}
.video-play::after {
	border-bottom: .48rem solid transparent;
	border-left: .72rem solid var(--color-accent-deep);
	border-top: .48rem solid transparent;
	content: "";
	margin-left: .15rem;
}
.video-card-copy { padding: 1rem 1rem 1.15rem; }
.video-card-copy h3 {
	font-family: var(--font-display);
	font-size: 1.18rem;
	font-weight: 600;
	line-height: 1.3;
	margin: 0;
}
.video-card-copy p {
	color: #8c6a55;
	font-size: .8rem;
	line-height: 1.55;
	margin-top: .45rem;
}
.video-card-copy a {
	color: var(--color-accent-deep);
	display: inline-flex;
	font-size: .8rem;
	font-weight: 700;
	gap: .35rem;
	margin-top: .8rem;
}
.ritual-section { background: #fff; border-block: 1px solid #f2d6bf; padding-block: 5rem; }
.ritual-grid { align-items: center; display: grid; gap: 1.75rem; grid-template-columns: .8fr 1fr; }
.ritual-intro p:not(.eyebrow) { color: #8c6a55; line-height: 1.75; margin-top: 1rem; max-width: 24rem; }
.ritual-intro .button { margin-top: 1.75rem; }
.ritual-steps { display: grid; gap: .75rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ritual-steps article {
	background: rgba(255,255,255,.82);
	border: 1px solid var(--color-line);
	border-radius: 1rem;
	box-shadow: 0 18px 38px -34px rgba(74,43,36,.55);
	min-height: 9rem;
	padding: 1.25rem;
}
.ritual-steps b {
	background: transparent;
	color: var(--color-accent-deep);
	display: block;
	font-size: .7rem;
	letter-spacing: .14em;
}
.ritual-steps h3 { font-family: var(--font-display); font-size: 1.25rem; font-weight: 600; margin: 1.75rem 0 0; }
.ritual-steps p { color: #8c6a55; font-size: .875rem; line-height: 1.5rem; margin-top: .5rem; }
.ritual-mobile-button { display: none; }
.review-section {
	background: radial-gradient(circle at 0% 100%, rgba(244,214,208,.5), transparent 26rem), #fff5ec;
	padding-block: 5rem;
}
.review-heading { align-items: center; display: flex; gap: 1.5rem; justify-content: space-between; text-align: left; }
.review-summary {
	align-items: center;
	background: #fff;
	border: 1px solid var(--color-line);
	border-radius: 999px;
	box-shadow: 0 18px 34px -30px rgba(78,40,34,.52);
	display: flex;
	gap: 1rem;
	padding: .75rem 1.25rem;
}
.review-summary strong { font-family: var(--font-display); font-size: 2.25rem; font-weight: 600; }
.stars { color: #f59e0b; letter-spacing: .12em; }
.stars .rating-stars { font-size: .78rem; }
.review-summary small { color: #8c6a55; display: block; font-size: .75rem; margin-top: .25rem; }
.review-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 2.25rem;
	scrollbar-width: none;
}
.review-grid::-webkit-scrollbar { display: none; }
.review-card {
	background: #fff;
	border: 1px solid #f2d6bf;
	border-radius: 1.5rem;
	box-shadow: 0 18px 36px -33px rgba(78,40,34,.45);
	padding: 1.75rem;
}
.review-meta { align-items: center; display: flex; gap: .75rem; justify-content: space-between; }
.review-meta b {
	background: #fff5ec;
	border-radius: 999px;
	color: var(--color-accent-deep);
	font-size: .56rem;
	letter-spacing: .08em;
	padding: .25rem .62rem;
	text-transform: uppercase;
}
.quote-mark { color: #edc7c1; display: block; font-family: var(--font-display); font-size: 2.5rem; line-height: 1; margin-top: 1.25rem; }
.review-card blockquote { color: #6b5040; font-size: .875rem; line-height: 1.75rem; margin: -.5rem 0 0; }
.review-card footer { border-top: 1px solid #f2d6bf; margin-top: 1.5rem; padding-top: 1rem; }
.review-card footer strong { display: block; font-size: .875rem; }
.review-card footer small { color: #8c6a55; display: block; font-size: .75rem; margin-top: .25rem; }
.preview-note { color: #b89278; font-size: .6875rem; margin-top: 1.25rem; text-align: center; }
.journal-section { background: #fff5ec; padding-block: 5rem; }
.journal-grid { display: grid; gap: 1rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.article-card {
	background: #fff;
	border-radius: 1rem;
	overflow: hidden;
}
.article-image { aspect-ratio: 1.7; display: block; overflow: hidden; position: relative; }
.article-image img { height: 100%; object-fit: cover; transition: transform 500ms ease; width: 100%; }
.article-image:hover img { transform: scale(1.05); }
.article-copy { padding: 1.5rem; }
.article-copy .tag,
.tag { color: var(--color-accent-deep); font-size: .7rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.article-copy h3 { font-family: var(--font-display); font-size: 1.25rem; font-weight: 600; line-height: 1.35; margin: .75rem 0 0; }
.article-copy a { color: var(--color-accent-deep); display: inline-flex; font-size: .875rem; font-weight: 700; margin-top: 1.25rem; }
.site-footer {
	background: #fff5ec;
	border-top: 1px solid #f2d6bf;
	color: var(--color-ink);
	overflow: hidden;
	padding-top: 4rem;
	position: relative;
}
.site-footer::before {
	background-image:
		linear-gradient(rgba(189,105,111,.075) 1px, transparent 1px),
		linear-gradient(90deg, rgba(189,105,111,.075) 1px, transparent 1px);
	background-size: 42px 42px;
	content: "";
	inset: 14rem 0 0;
	mask-image: linear-gradient(to bottom, transparent, #000 12rem);
	opacity: .72;
	pointer-events: none;
	position: absolute;
}
.site-footer > .shell {
	position: relative;
	z-index: 1;
}
.footer-top { margin-bottom: 3.5rem; }
.ritual-cta {
	background: linear-gradient(90deg, rgba(255,245,236,.98), rgba(255,245,236,.9) 35%, rgba(255,245,236,.1) 67%), var(--cta-bg) center/cover;
	border: 1px solid rgba(242,214,191,.7);
	border-radius: 2rem;
	box-shadow: 0 22px 50px -36px rgba(93,45,39,.48);
	min-height: 360px;
	overflow: hidden;
	position: relative;
}
.ritual-content {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 29rem;
	min-height: 360px;
	padding: 2.5rem 3rem;
}
.ritual-content h2 {
	font-family: var(--font-display);
	font-size: 2.65rem;
	font-weight: 600;
	line-height: 1.12;
	margin: .75rem 0 0;
}
.cta-description { color: #6b5040; font-size: .875rem; line-height: 1.75; margin-top: .75rem; max-width: 20rem; }
.ritual-content .button { margin-top: 1.5rem; }
.footer-grid {
	border-top: 1px solid rgba(242,214,191,.72);
	display: grid;
	gap: 2rem;
	grid-template-columns: 1.4fr 1fr 1fr;
	padding-bottom: 2.5rem;
	padding-top: 2.75rem;
	text-align: left;
}
.footer-brand {
	color: var(--color-ink);
	display: block;
	font-family: var(--font-display);
	font-size: 1.75rem;
	font-weight: 600;
	line-height: 1;
	margin-top: 0;
}
.footer-grid p { color: #8c6a55; font-size: .875rem; line-height: 1.6; margin-top: .75rem; max-width: 20rem; }
.site-footer h3 { color: var(--color-ink); font-family: var(--font-body); font-size: .875rem; font-weight: 700; margin: 0 0 1rem; }
.site-footer a { color: #6b5040; display: block; font-size: .875rem; margin-top: .75rem; }
.footer-grid a:not(.footer-brand):hover,
.footer-grid a:not(.footer-brand):focus-visible { color: var(--color-accent-deep); }
.site-footer .menu { list-style: none; margin: 0; padding: 0; }
.copyright {
	align-items: center;
	border-top: 1px solid rgba(242,214,191,.72);
	color: #8c6a55;
	display: flex;
	font-size: .75rem;
	justify-content: space-between;
	padding-block: 1.5rem;
}
.page-hero {
	background: radial-gradient(circle at 92% 3%, rgba(240,201,194,.34), transparent 26rem), #fff5ec;
	padding-block: 4rem;
}
.page-hero.centered { text-align: center; }
.page-hero h1 {
	font-family: var(--font-display);
	font-size: clamp(3rem, 6vw, 3.75rem);
	font-weight: 600;
	line-height: 1.08;
	margin: 1rem 0 0;
}
.page-hero p:not(.eyebrow) { color: #6b5040; line-height: 1.75; margin: 1.25rem auto 0; max-width: 38rem; }
.section { padding-block: 5rem; }
.shop-hero {
	background: #fae7e1;
	border: 1px solid #f2d6bf;
	border-radius: 2rem;
	box-shadow: 0 20px 48px -38px rgba(80,39,33,.43);
	margin-top: 3rem;
	min-height: 400px;
	overflow: hidden;
	position: relative;
}
.shop-hero::before {
	background: var(--shop-bg) center/cover;
	content: "";
	inset: 0;
	object-position: center;
	position: absolute;
}
.shop-hero::after {
	background: linear-gradient(90deg, rgba(255,247,243,.97), rgba(255,245,236,.82) 39%, rgba(255,245,236,.18) 72%);
	content: "";
	inset: 0;
	position: absolute;
}
.shop-hero .shell {
	align-items: center;
	display: flex;
	min-height: 400px;
	position: relative;
	z-index: 1;
}
.shop-hero h1 {
	font-family: var(--font-display);
	font-size: clamp(3rem, 7vw, 3.75rem);
	font-weight: 600;
	margin: .75rem 0 0;
}
.shop-hero p:not(.eyebrow) { color: #6b5040; line-height: 1.75; margin-top: 1rem; max-width: 32rem; }
.catalog.section { padding-top: 1.75rem; }
.catalog-tools { display: flex; gap: .75rem; margin-top: 2rem; }
.search {
	align-items: center;
	background: #fff;
	border: 1px solid #f2d6bf;
	border-radius: 999px;
	display: flex;
	flex: 1;
	padding: .75rem 1.25rem;
}
.search::before { color: #b89278; content: "⌕"; margin-right: .75rem; }
.search input,
.catalog-tools select {
	background: transparent;
	border: 0;
	color: var(--color-ink);
	font: inherit;
	font-size: .875rem;
	outline: 0;
	width: 100%;
}
.catalog-tools select {
	background: #fff;
	border: 1px solid #f2d6bf;
	border-radius: 999px;
	padding: .75rem 1.25rem;
	width: auto;
}
.filter-row {
	display: flex;
	gap: .5rem;
	margin-top: 1.75rem;
	overflow-x: auto;
	padding-bottom: .5rem;
	scrollbar-width: none;
}
.filter-row::-webkit-scrollbar { display: none; }
.filter-row button {
	background: #fff;
	border: 1px solid #f2d6bf;
	border-radius: 999px;
	color: #6b5040;
	cursor: pointer;
	font: inherit;
	font-size: .875rem;
	font-weight: 700;
	padding: .62rem 1.25rem;
	white-space: nowrap;
}
.filter-row button.is-active { background: var(--color-ink); border-color: var(--color-ink); color: #fff; }
.catalog-count { color: #8c6a55; font-size: .875rem; margin: 1.25rem 0; }
.catalog .product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.catalog-empty,
.empty-panel { background: #fff; border-radius: 1rem; color: #8c6a55; padding: 2rem; text-align: center; }
.shop-popup {
	animation: assuranceRise 380ms ease both;
	background: #fff;
	border: 1px solid #f2d6bf;
	border-radius: 1rem;
	bottom: 1.75rem;
	box-shadow: 0 22px 60px rgba(74,43,36,.16);
	max-width: 355px;
	padding: 1.25rem;
	position: fixed;
	right: 1.75rem;
	z-index: 50;
}
.shop-popup button {
	align-items: center;
	background: transparent;
	border: 0;
	border-radius: 999px;
	color: #b89278;
	cursor: pointer;
	display: flex;
	height: 2rem;
	justify-content: center;
	position: absolute;
	right: .75rem;
	top: .75rem;
	width: 2rem;
}
.shop-popup strong { display: block; font-weight: 700; padding-right: 2rem; }
.shop-popup p { color: #8c6a55; font-size: .75rem; line-height: 1.65; margin-top: .4rem; padding-right: 1rem; }
.shop-popup-inner { display: flex; gap: .75rem; padding-right: 1.25rem; }
.popup-icon {
	align-items: center;
	background: #fff5ec;
	border-radius: 999px;
	color: var(--color-accent-deep);
	display: flex;
	flex-shrink: 0;
	height: 2.5rem;
	justify-content: center;
	width: 2.5rem;
}
@keyframes assuranceRise {
	from { opacity: 0; transform: translateY(16px); }
	to { opacity: 1; transform: translateY(0); }
}
.support-chat {
	bottom: 1.5rem;
	display: flex;
	flex-direction: column;
	gap: .75rem;
	position: fixed;
	right: 1.5rem;
	z-index: 120;
}
.support-toggle {
	align-items: center;
	align-self: flex-end;
	background: #238c58;
	border: 0;
	border-radius: 999px;
	box-shadow: 0 16px 32px rgba(27,94,57,.24);
	color: #fff;
	cursor: pointer;
	display: flex;
	font: inherit;
	font-size: .875rem;
	font-weight: 700;
	gap: .55rem;
	height: 3.2rem;
	padding: 0 1.1rem;
}
.support-toggle:hover { background: #197348; }
.support-toggle svg,
.support-send svg {
	fill: none;
	height: 1.35rem;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
	width: 1.35rem;
}
.support-panel {
	animation: assuranceRise 230ms ease both;
	background: #fff;
	border: 1px solid #f2d6bf;
	border-radius: .75rem;
	box-shadow: 0 24px 58px rgba(74,43,36,.16);
	overflow: hidden;
	width: min(22rem, calc(100vw - 2rem));
}
.support-panel[hidden] { display: none; }
.support-panel-header {
	align-items: center;
	background: #238c58;
	color: #fff;
	display: flex;
	justify-content: space-between;
	padding: .9rem 1rem;
}
.support-panel-header strong { display: block; font-size: .9rem; }
.support-panel-header small { color: rgba(255,255,255,.78); display: block; font-size: .72rem; margin-top: .12rem; }
.support-close {
	align-items: center;
	background: transparent;
	border: 0;
	color: #fff;
	cursor: pointer;
	display: flex;
	height: 2rem;
	justify-content: center;
	padding: 0;
	width: 2rem;
}
.support-close svg {
	fill: none;
	height: 1rem;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-width: 2;
	width: 1rem;
}
.support-form {
	display: grid;
	gap: .85rem;
	padding: 1rem;
}
.support-form label span {
	color: #6b5040;
	display: block;
	font-size: .73rem;
	font-weight: 700;
	margin-bottom: .4rem;
}
.support-form input,
.support-form textarea {
	background: #fff5ec;
	border: 1px solid #ead8d4;
	border-radius: .5rem;
	color: var(--color-ink);
	font: inherit;
	font-size: .84rem;
	padding: .7rem .75rem;
	resize: vertical;
	width: 100%;
}
.support-form textarea { min-height: 5.75rem; }
.support-send {
	align-items: center;
	background: #238c58;
	border: 0;
	border-radius: .55rem;
	color: #fff;
	cursor: pointer;
	display: flex;
	font: inherit;
	font-size: .83rem;
	font-weight: 700;
	gap: .45rem;
	justify-content: center;
	min-height: 2.8rem;
}
.support-send:hover { background: #197348; }
.home-popup {
	align-items: center;
	display: flex;
	inset: 0;
	justify-content: center;
	padding: 1.25rem;
	position: fixed;
	z-index: 220;
}
.home-popup[hidden] { display: none; }
.home-popup-backdrop {
	background: rgba(34, 26, 22, .58);
	inset: 0;
	position: absolute;
}
.home-popup-dialog {
	animation: assuranceRise 240ms ease both;
	background: #fff;
	border-radius: .85rem;
	box-shadow: 0 30px 80px rgba(34, 26, 22, .28);
	max-height: min(88vh, 54rem);
	max-width: min(28rem, calc(100vw - 2rem));
	overflow: hidden;
	position: relative;
	width: 100%;
}
.home-popup-close {
	align-items: center;
	background: rgba(255,255,255,.72);
	border: 0;
	border-radius: 999px;
	color: #8c6a55;
	cursor: pointer;
	display: flex;
	height: 2.25rem;
	justify-content: center;
	padding: 0;
	position: absolute;
	right: .65rem;
	top: .65rem;
	width: 2.25rem;
	z-index: 1;
}
.home-popup-close:hover { background: rgba(255,255,255,.9); color: var(--color-ink); }
.home-popup-close svg {
	fill: none;
	height: 1rem;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-width: 2;
	width: 1rem;
}
.home-popup-media {
	background: #fff5ec;
	display: block;
}
.home-popup-media img {
	max-height: min(88vh, 54rem);
	object-fit: contain;
	width: 100%;
}
.home-popup-copy {
	background: linear-gradient(135deg, #fff 0%, #fff7f5 100%);
	padding: 1.05rem 1.15rem .95rem;
	padding-right: 3.85rem;
}
.home-popup-copy .eyebrow {
	color: var(--color-accent-deep);
	font-size: .68rem;
	letter-spacing: .14em;
	margin-bottom: .35rem;
}
.home-popup-copy h2 {
	font-family: var(--font-display);
	font-size: clamp(1.28rem, 4.5vw, 1.55rem);
	font-weight: 600;
	line-height: 1.12;
	margin: .45rem 0 0;
}
.home-popup-copy p:not(.eyebrow) {
	color: #8c6a55;
	font-size: .84rem;
	line-height: 1.48;
	margin-top: .45rem;
}
.home-popup-live-badge {
	align-items: center;
	background: #d91f3d;
	border-radius: 999px;
	box-shadow: 0 12px 28px rgba(217,31,61,.24);
	color: #fff;
	display: inline-flex;
	font-size: .7rem;
	font-weight: 800;
	gap: .42rem;
	letter-spacing: .08em;
	line-height: 1;
	padding: .42rem .68rem;
	position: relative;
	text-transform: uppercase;
}
.live-dot {
	animation: liveDotPulse 1.05s ease-in-out infinite;
	background: #fff;
	border-radius: 999px;
	height: .48rem;
	width: .48rem;
}
.live-wave {
	animation: liveWave 1.5s ease-out infinite;
	border: 2px solid rgba(255,255,255,.75);
	border-radius: 999px;
	height: 1.45rem;
	left: .28rem;
	position: absolute;
	width: 1.45rem;
}
.home-popup-platform {
	color: var(--color-accent-deep) !important;
	font-size: .72rem !important;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.home-popup-cta {
	align-items: center;
	background: var(--color-ink);
	border-radius: 999px;
	bottom: 1rem;
	box-shadow: 0 16px 34px rgba(34,26,22,.2);
	color: #fff;
	display: inline-flex;
	font-size: .82rem;
	font-weight: 800;
	justify-content: center;
	left: 50%;
	min-height: 2.75rem;
	padding: 0 1.25rem;
	position: absolute;
	transform: translateX(-50%);
	white-space: nowrap;
	z-index: 1;
}
@keyframes liveDotPulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50% { opacity: .55; transform: scale(.72); }
}
@keyframes liveWave {
	0% { opacity: .75; transform: scale(.45); }
	80%, 100% { opacity: 0; transform: scale(1.5); }
}
.product-assistant {
	align-items: center;
	display: flex;
	left: 0;
	position: fixed;
	top: 50%;
	transform: translateY(-50%);
	z-index: 119;
}
.product-assistant-toggle {
	align-items: center;
	background: var(--color-ink);
	border: 0;
	border-radius: 0 .6rem .6rem 0;
	box-shadow: 0 15px 32px rgba(34,26,22,.16);
	color: #fff;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	font: inherit;
	font-size: .7rem;
	font-weight: 700;
	gap: .55rem;
	justify-content: center;
	min-height: 8.75rem;
	order: 1;
	padding: .75rem .65rem;
}
.product-assistant-toggle span {
	letter-spacing: .08em;
	text-transform: uppercase;
	writing-mode: vertical-rl;
}
.product-assistant-toggle svg,
.product-question-form svg {
	fill: none;
	height: 1.25rem;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
	width: 1.25rem;
}
.product-assistant-panel {
	animation: assuranceRise 230ms ease both;
	background: #fff;
	border: 1px solid var(--color-line);
	border-radius: 0 .75rem .75rem 0;
	box-shadow: 0 24px 54px rgba(74,43,36,.17);
	margin-right: .65rem;
	overflow: hidden;
	width: min(22.75rem, calc(100vw - 4.5rem));
}
.product-assistant-panel[hidden] { display: none; }
.product-assistant-header {
	align-items: center;
	background: #fff5ec;
	border-bottom: 1px solid var(--color-line);
	display: flex;
	justify-content: space-between;
	padding: .9rem 1rem;
}
.product-assistant-header strong { display: block; font-size: .9rem; }
.product-assistant-header small { color: #8c6a55; display: block; font-size: .7rem; margin-top: .15rem; }
.product-assistant-close {
	align-items: center;
	background: transparent;
	border: 0;
	color: #8c6a55;
	cursor: pointer;
	display: flex;
	height: 2rem;
	justify-content: center;
	padding: 0;
	width: 2rem;
}
.product-assistant-close svg {
	fill: none;
	height: 1rem;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-width: 2;
	width: 1rem;
}
.product-conversation {
	display: flex;
	flex-direction: column;
	gap: .65rem;
	max-height: 15rem;
	min-height: 8.3rem;
	overflow-y: auto;
	padding: 1rem;
}
.product-message {
	border-radius: .7rem;
	font-size: .78rem;
	line-height: 1.55;
	max-width: 92%;
	padding: .65rem .75rem;
	white-space: pre-line;
}
.product-message.is-bot { align-self: flex-start; background: #fff5f2; color: #6b5040; }
.product-message.is-user { align-self: flex-end; background: var(--color-ink); color: #fff; }
.product-message.is-thinking {
	align-items: center;
	display: inline-flex;
	gap: .32rem;
}
.product-message.is-thinking span {
	animation: eldepeThinkingDot 900ms ease-in-out infinite;
	background: #f45a2a;
	border-radius: 999px;
	height: .34rem;
	opacity: .45;
	width: .34rem;
}
.product-message.is-thinking span:nth-child(2) { animation-delay: 120ms; }
.product-message.is-thinking span:nth-child(3) { animation-delay: 240ms; }
.product-message.is-thinking b {
	color: #7a5e48;
	font-size: .72rem;
	font-weight: 700;
	margin-left: .18rem;
}
@keyframes eldepeThinkingDot {
	0%, 100% { opacity: .35; transform: translateY(0); }
	50% { opacity: 1; transform: translateY(-.12rem); }
}
.product-prompts {
	display: flex;
	flex-wrap: wrap;
	gap: .4rem;
	padding: 0 1rem .85rem;
}
.product-prompts button {
	background: #fff;
	border: 1px solid var(--color-line);
	border-radius: 999px;
	color: var(--color-accent-deep);
	cursor: pointer;
	font: inherit;
	font-size: .69rem;
	font-weight: 700;
	padding: .42rem .65rem;
}
.product-question-form {
	align-items: center;
	border-top: 1px solid var(--color-line);
	display: flex;
	gap: .45rem;
	padding: .75rem;
}
.product-question-form input {
	background: #fff5ec;
	border: 1px solid #ead8d4;
	border-radius: .5rem;
	flex: 1;
	font: inherit;
	font-size: .8rem;
	min-width: 0;
	padding: .68rem .7rem;
}
.product-question-form button {
	align-items: center;
	background: var(--color-accent-deep);
	border: 0;
	border-radius: .5rem;
	color: #fff;
	cursor: pointer;
	display: flex;
	height: 2.55rem;
	justify-content: center;
	width: 2.55rem;
}
.product-question-form input:disabled,
.product-question-form button:disabled {
	cursor: wait;
	opacity: .62;
}
.product-human-link {
	background: transparent;
	border: 0;
	border-top: 1px solid #f9e6cc;
	color: var(--color-accent-deep);
	cursor: pointer;
	display: block;
	font: inherit;
	font-size: .72rem;
	font-weight: 700;
	padding: .72rem;
	text-align: center;
	width: 100%;
}
[data-saved-products] .product-card { display: none; }
[data-saved-products] .product-card.is-saved { display: block; }
.story-grid,
.contact-grid,
.product-detail { display: grid; gap: 4rem; grid-template-columns: 1fr 1fr; }
.product-detail { align-items: start; padding-block: clamp(3rem, 7vw, 5rem); }
.story-grid img,
.detail-image img { border-radius: 2rem; height: 100%; object-fit: cover; width: 100%; }
.detail-copy h1 {
	font-family: var(--font-display);
	font-size: clamp(2.35rem, 4.4vw, 3.25rem);
	font-weight: 600;
	line-height: 1.14;
	margin: .9rem 0 0;
}
.detail-price { margin: 1.35rem 0 1.75rem; }
.detail-price del {
	color: #b89278;
	display: block;
	font-size: .9rem;
	margin-bottom: .25rem;
}
.detail-price div { align-items: center; display: flex; gap: .8rem; }
.detail-price strong { font-size: clamp(1.6rem, 3vw, 2rem); line-height: 1.1; }
.detail-price span {
	background: #fff5ec;
	border-radius: 999px;
	color: var(--color-accent-deep);
	font-size: .75rem;
	font-weight: 700;
	padding: .28rem .68rem;
}
.detail-information {
	border-top: 1px solid var(--color-line);
	color: #6b5040;
	font-size: .9rem;
	line-height: 1.75;
	padding-top: 1.25rem;
}
.detail-information .entry-copy { margin-bottom: 1.1rem; }
.detail-information .entry-copy p { margin: 0 0 .8rem; }
.detail-information > p { margin: .72rem 0; }
.trust-mark {
	background: #fff5ec;
	border-radius: .75rem;
	margin-top: 1.2rem !important;
	padding: .7rem .9rem;
}
.detail-actions {
	border-top: 1px solid var(--color-line);
	display: flex;
	gap: .75rem;
	margin-top: 2.25rem;
	padding-top: 1.65rem;
}
.trust-section,
.about-standards { background: #fff5ec; }
.trust-grid { display: grid; gap: 1rem; grid-template-columns: repeat(3, 1fr); }
.trust-grid article,
.contact-cards article,
.contact-form,
.faq-list details,
.ceo-card,
.doctor-card { background: #fff; border: 1px solid #f2d6bf; border-radius: 1.5rem; padding: 1.75rem; }
.ceo-card { align-items: center; display: grid; gap: 2.5rem; grid-template-columns: .9fr 1.1fr; }
.ceo-photo { background: #fae8e3; border-radius: 1.5rem; min-height: 340px; overflow: hidden; }
.contact-cards { display: grid; gap: .75rem; }
.contact-form label { display: block; font-size: .875rem; font-weight: 700; margin-top: 1.25rem; }
.contact-form input,
.contact-form textarea,
.contact-form select,
.form-field {
	background: #fff5ec;
	border: 1px solid #f1ddda;
	border-radius: .8rem;
	display: block;
	font: inherit;
	margin-top: .55rem;
	padding: .85rem 1rem;
	width: 100%;
}
.faq-list { display: grid; gap: .75rem; }
.faq-list summary { cursor: pointer; font-weight: 700; list-style: none; }
.entry-copy { line-height: 1.75; }
.article-single { padding-bottom: 5rem; }
.article-header {
	max-width: 53rem;
	padding-block: 3.75rem 2.5rem;
	text-align: center;
}
.article-back {
	color: var(--color-accent-deep);
	display: inline-flex;
	font-size: .8rem;
	font-weight: 700;
	margin-bottom: 2.25rem;
}
.article-header h1 {
	font-family: var(--font-display);
	font-size: clamp(2.5rem, 5vw, 3.65rem);
	font-weight: 600;
	line-height: 1.13;
	margin: 1rem 0 0;
}
.article-intro {
	color: #645952;
	font-size: 1.05rem;
	line-height: 1.75;
	margin: 1.4rem auto 0;
	max-width: 42rem;
}
.article-meta {
	align-items: center;
	color: #8c6a55;
	display: flex;
	font-size: .8rem;
	font-weight: 600;
	gap: 1rem;
	justify-content: center;
	margin-top: 1.65rem;
}
.article-meta > * + *::before {
	color: #cfaaa3;
	content: "/";
	margin-right: 1rem;
}
.article-cover {
	aspect-ratio: 2.18;
	border-radius: 1.7rem;
	overflow: hidden;
}
.article-cover img {
	height: 100%;
	object-fit: cover;
	width: 100%;
}
.article-cover.is-fallback img { object-position: center; }
.article-after-cover { margin-top: 2rem; }
.article-toc {
	background: linear-gradient(120deg, #fff 0%, #fff7f4 100%);
	border: 1px solid var(--color-line);
	border-radius: 1.4rem;
	padding: 1.65rem 2rem;
}
.article-toc h2 {
	font-family: var(--font-display);
	font-size: 1.5rem;
	font-weight: 600;
	margin: .45rem 0 1.2rem;
}
.article-toc ol {
	column-gap: 2.5rem;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	list-style: decimal-leading-zero;
	margin: 0;
	padding-left: 1.5rem;
	row-gap: .7rem;
}
.article-toc li { color: #c58b86; padding-left: .3rem; }
.article-toc a {
	color: #51453f;
	font-size: .875rem;
	font-weight: 600;
	line-height: 1.5;
}
.article-toc a:hover { color: var(--color-accent-deep); }
.article-toc .toc-level-3 { margin-left: 1rem; }
.article-layout {
	align-items: start;
	display: grid;
	gap: 2.5rem;
	grid-template-columns: minmax(0, 1fr) 19rem;
	margin-top: 2.5rem;
}
.article-content {
	background: #fff;
	border: 1px solid #f4e5e1;
	border-radius: 1.5rem;
	color: #514943;
	font-size: 1rem;
	padding: clamp(1.5rem, 4vw, 3rem);
}
.article-content > p:first-child {
	color: #382d28;
	font-size: 1.08rem;
	line-height: 1.9;
}
.article-content p { line-height: 1.9; margin: 0 0 1.35rem; }
.article-content h2,
.article-content h3 {
	color: var(--color-ink);
	font-family: var(--font-display);
	font-weight: 600;
	line-height: 1.3;
	scroll-margin-top: calc(var(--header-height) + 1.25rem);
}
.article-content h2 { font-size: clamp(1.55rem, 3vw, 1.85rem); margin: 2.8rem 0 1rem; }
.article-content h3 { font-size: 1.3rem; margin: 2.1rem 0 .85rem; }
.article-content > h2:first-child,
.article-content > h3:first-child { margin-top: 0; }
.article-content a { color: var(--color-accent-deep); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; }
.article-sidebar {
	display: grid;
	gap: 1rem;
	position: sticky;
	top: calc(var(--header-height) + 1.25rem);
}
.sidebar-card {
	background: #fff;
	border: 1px solid var(--color-line);
	border-radius: 1.15rem;
	padding: 1.4rem;
}
.sidebar-card h2 {
	font-family: var(--font-display);
	font-size: 1.18rem;
	font-weight: 600;
	line-height: 1.38;
	margin: 0 0 1rem;
}
.article-guide { background: #fff6f3; }
.article-guide h2 { font-size: 1.28rem; margin: .65rem 0 .75rem; }
.article-guide > p:not(.eyebrow) {
	color: #71655f;
	font-size: .82rem;
	line-height: 1.7;
}
.sidebar-tags { display: flex; flex-wrap: wrap; gap: .45rem; }
.sidebar-tags a {
	background: #fff4f1;
	border-radius: 999px;
	color: var(--color-accent-deep);
	font-size: .72rem;
	font-weight: 700;
	padding: .42rem .7rem;
}
.sidebar-articles { display: grid; gap: 1rem; }
.sidebar-articles a + a { border-top: 1px solid #f5e6e2; padding-top: 1rem; }
.sidebar-articles span {
	color: #a88060;
	display: block;
	font-size: .7rem;
	font-weight: 600;
	margin-bottom: .35rem;
	text-transform: uppercase;
}
.sidebar-articles strong {
	display: block;
	font-size: .86rem;
	line-height: 1.5;
}
.sidebar-articles a:hover strong { color: var(--color-accent-deep); }
.sidebar-cta {
	background: linear-gradient(145deg, #fae7e2, #fff5f1);
	border: 0;
}
.sidebar-cta h2 { margin: .65rem 0 1.2rem; }
.sidebar-cta .button { width: 100%; }
.article-product-callout {
	align-items: center;
	background: linear-gradient(135deg, #fff5ec 0%, #fff 58%, #f8ebe5 100%);
	border: 1px solid var(--color-line);
	border-radius: 1.2rem;
	display: grid;
	gap: 1.5rem;
	grid-template-columns: minmax(0, 1fr) minmax(13rem, 16rem);
	margin: 2.6rem 0;
	padding: clamp(1rem, 3vw, 1.5rem);
}
.article-product-copy h2 {
	color: var(--color-ink);
	font-family: var(--font-display);
	font-size: clamp(1.45rem, 3vw, 1.8rem);
	font-weight: 600;
	line-height: 1.2;
	margin: .55rem 0 0;
}
.article-product-copy p:not(.eyebrow) {
	color: #71655f;
	font-size: .86rem;
	line-height: 1.75;
	margin-top: .8rem;
}
.article-product-card .product-card {
	box-shadow: 0 24px 52px -42px rgba(74,43,36,.68);
}
.article-product-card .card-media { aspect-ratio: 1.08; }
.article-related-section {
	border-top: 1px solid var(--color-line);
	margin-top: 4rem;
	padding-top: 4rem;
}
.article-related-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
.not-found { padding-block: 8rem; text-align: center; }
.about-hero {
	align-items: center;
	display: grid;
	gap: 2.5rem;
	grid-template-columns: .9fr 1fr;
	padding-block: 3rem 4rem;
}
.about-copy h1 {
	font-family: var(--font-display);
	font-size: clamp(3rem, 5vw, 3.75rem);
	font-weight: 600;
	line-height: 1.12;
	margin: 1rem 0 0;
}
.about-copy > p:not(.eyebrow) { color: #8c6a55; line-height: 2; margin-top: 1.5rem; }
.about-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2rem; }
.about-image { aspect-ratio: .92; border-radius: 2rem; overflow: hidden; }
.about-image img { height: 100%; object-fit: cover; object-position: right center; width: 100%; }
.intention-section { background: #fff; border-block: 1px solid #f2d6bf; padding-block: 5rem; }
.intention-grid { display: grid; gap: 2.5rem; grid-template-columns: .7fr 1fr; }
.intention-text { color: #6b5040; display: grid; gap: 1.25rem; grid-template-columns: repeat(2, 1fr); line-height: 1.75; }
.value-section { background: #fff5ec; padding-block: 5rem; }
.value-grid { display: grid; gap: 1rem; grid-template-columns: repeat(3, 1fr); }
.value-grid article { background: #fff; border-radius: 1rem; padding: 1.75rem; }
.value-grid h2 { font-family: var(--font-display); font-size: 1.5rem; font-weight: 600; margin: 1.5rem 0 .75rem; }
.value-grid article > p:last-child { color: #8c6a55; font-size: .875rem; line-height: 1.65; }
.ceo-section { background: #fff; padding-block: 5rem; }
.ceo-grid { align-items: center; display: grid; gap: 2.5rem; grid-template-columns: .88fr 1fr; }
.ceo-portrait { background: #fae8e3; border-radius: 2rem; overflow: hidden; position: relative; }
.ceo-portrait img { aspect-ratio: .82; height: 100%; object-fit: cover; width: 100%; }
.ceo-portrait p {
	background: rgba(255,255,255,.9);
	border-radius: 999px;
	bottom: 1rem;
	color: #6b5040;
	font-size: .6875rem;
	font-weight: 700;
	left: 1rem;
	padding: .5rem 1rem;
	position: absolute;
}
.ceo-copy blockquote {
	border-left: 2px solid #e7b5ae;
	color: #6b5040;
	font-size: 1.125rem;
	line-height: 2;
	margin: 1.5rem 0;
	padding-left: 1.25rem;
}
.ceo-copy strong { display: block; }
.ceo-role { color: #8c6a55; font-size: .875rem; margin-top: .25rem; }
.ceo-story { color: #8c6a55; font-size: .875rem; line-height: 1.75; margin-top: 1.5rem; max-width: 34rem; }
.about-standards {
	background: radial-gradient(circle at 95% 10%, rgba(238,194,186,.32), transparent 25rem), #fff5ec;
	padding-block: 5rem;
}
.standards-heading { margin-inline: auto; max-width: 42rem; text-align: center; }
.standards-heading > p:last-child { color: #8c6a55; font-size: .875rem; line-height: 1.75; margin: 1rem auto 0; }
.standards-scroll { display: grid; gap: 1rem; grid-template-columns: repeat(3, 1fr); margin-top: 2.5rem; scrollbar-width: none; }
.standards-scroll::-webkit-scrollbar { display: none; }
.standards-scroll article { background: #fff; border: 1px solid #f2d6bf; border-radius: 1.5rem; padding: 1.75rem; }
.standard-icon {
	align-items: center;
	background: #fff5ec;
	border-radius: 999px;
	color: var(--color-accent-deep);
	display: flex;
	font-size: 1rem;
	height: 3rem;
	justify-content: center;
	width: 3rem;
}
.standards-scroll h3 { font-family: var(--font-display); font-size: 1.5rem; font-weight: 600; margin: 1.5rem 0 .75rem; }
.standards-scroll article > p { color: #8c6a55; font-size: .875rem; line-height: 1.75; }
.standards-scroll small {
	background: #fff5ec;
	border-radius: .75rem;
	color: var(--color-accent-deep);
	display: block;
	font-size: .6875rem;
	font-weight: 700;
	margin-top: 1.5rem;
	padding: .55rem .75rem;
}
.standard-warning {
	align-items: center;
	background: #fff;
	border: 1px dashed #e7c7c1;
	border-radius: 1rem;
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	margin-top: 1.75rem;
	padding: 1.25rem 1.5rem;
}
.standard-warning p { color: #8c6a55; font-size: .75rem; line-height: 1.65; max-width: 37rem; }
.contact-page {
	display: grid;
	gap: 2.5rem;
	grid-template-columns: .9fr 1fr;
	min-height: 65vh;
	padding-block: 4rem;
}
.contact-intro h1,
.faq-intro h1,
.blog-heading h1 {
	font-family: var(--font-display);
	font-size: clamp(3rem, 6vw, 3.75rem);
	font-weight: 600;
	line-height: 1.12;
	margin: 1rem 0 0;
}
.contact-intro > p:not(.eyebrow),
.faq-intro > p:not(.eyebrow),
.blog-heading > p:not(.eyebrow) { color: #8c6a55; line-height: 1.75; margin-top: 1.25rem; max-width: 30rem; }
.contact-links { display: grid; gap: .75rem; margin-top: 2.25rem; }
.feature-tile {
	background: rgba(255,255,255,.82);
	border: 1px solid var(--color-line);
	border-radius: 1rem;
	box-shadow: 0 18px 38px -34px rgba(74,43,36,.55);
	display: block;
	padding: 1.25rem;
}
.feature-tile strong { display: block; font-size: .875rem; margin-top: .5rem; }
.feature-tile small { color: #8c6a55; display: block; font-size: .875rem; margin-top: .25rem; }
.contact-faq { color: var(--color-accent-deep); display: inline-flex; font-size: .875rem; font-weight: 700; margin-top: 2rem; }
.contact-form { border-radius: 2rem; box-shadow: 0 1px 3px rgba(0,0,0,.06); padding: 2.25rem; }
.contact-form h2 { font-family: var(--font-display); font-size: 1.875rem; font-weight: 600; margin: 0; }
.contact-form > p { color: #8c6a55; font-size: .875rem; margin: .5rem 0 1.75rem; }
.contact-form .button { margin-top: 1.75rem; width: 100%; }
.disabled-button { cursor: not-allowed; opacity: .55; }
.form-note { color: #b89278; display: block; font-size: .75rem; line-height: 1.5; margin-top: 1rem; text-align: center; }
.faq-page {
	display: grid;
	gap: 3rem;
	grid-template-columns: .65fr 1fr;
	min-height: 65vh;
	padding-block: 4rem;
}
.faq-callout { background: #f6e5e1; border-radius: 1rem; margin-top: 2rem; padding: 1.5rem; }
.faq-callout h2 { font-family: var(--font-body); font-size: 1rem; margin: 0; }
.faq-callout p { color: #6b5040; font-size: .875rem; line-height: 1.6; margin-top: .5rem; }
.faq-callout .button { margin-top: 1.25rem; }
.faq-list details { border-radius: 1rem; padding: 1.25rem 1.5rem; }
.faq-list summary { align-items: center; display: flex; justify-content: space-between; padding-right: .2rem; }
.faq-list summary span { color: var(--color-accent); font-size: 1.25rem; font-weight: 400; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details p { border-top: 1px solid #f2d6bf; color: #8c6a55; font-size: .875rem; line-height: 1.75; margin-top: 1rem; padding-top: 1rem; }
.blog-page { min-height: 100vh; padding-block: 4rem; }
.blog-heading { margin-bottom: 2.5rem; max-width: 42rem; }
.featured-article {
	background: #fff;
	border: 1px solid #f2d6bf;
	border-radius: 1.5rem;
	overflow: hidden;
}
.featured-image { aspect-ratio: 2.65; display: block; overflow: hidden; }
.featured-image img { height: 100%; object-fit: cover; width: 100%; }
.featured-copy { display: flex; flex-direction: column; max-width: 52rem; padding: 2rem 2.5rem 2.5rem; }
.featured-copy h2 { font-family: var(--font-display); font-size: clamp(1.9rem, 3vw, 2.35rem); font-weight: 600; line-height: 1.25; margin: .85rem 0 0; }
.featured-copy > p:not(.eyebrow):not(.article-date) { color: #8c6a55; font-size: .875rem; line-height: 1.75; margin-top: 1rem; }
.article-date { color: #b89278; font-size: .75rem; margin-top: 1rem; }
.featured-copy .button { align-self: flex-start; margin-top: 1.75rem; }
.blog-content-layout { align-items: start; display: grid; gap: 1.5rem; grid-template-columns: minmax(0, 1fr) 17rem; margin-top: 3rem; }
.latest-articles { min-width: 0; }
.latest-articles .section-heading { font-size: 2rem; }
.latest-grid { display: grid; gap: 1rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.latest-card { background: #fff; border: 1px solid #f2d6bf; border-radius: .8rem; display: flex; flex-direction: column; overflow: hidden; }
.latest-image { aspect-ratio: 1.52; display: block; overflow: hidden; }
.latest-card img { height: 100%; object-fit: cover; width: 100%; }
.latest-card div { padding: 1rem; }
.latest-card h3 { font-family: var(--font-display); font-size: 1.08rem; font-weight: 600; line-height: 1.38; margin: .7rem 0 0; }
.latest-card h3 a { color: var(--color-ink); display: block; margin-top: 0; }
.latest-card div > p:not(.eyebrow) { color: #8c6a55; font-size: .875rem; line-height: 1.75; margin-top: .75rem; }
.latest-link { color: var(--color-accent-deep); display: inline-flex; font-size: .8rem; font-weight: 700; margin-top: 1rem; }
.blog-sidebar { display: grid; gap: 1rem; position: sticky; top: calc(var(--header-height) + 1.25rem); }
.blog-sidebar .sidebar-card { border-radius: .8rem; padding: 1.2rem; }
.journal-search { display: grid; gap: .65rem; }
.journal-search input {
	background: #fff5ec;
	border: 1px solid var(--color-line);
	border-radius: .55rem;
	font: inherit;
	font-size: .85rem;
	min-width: 0;
	padding: .7rem .75rem;
	width: 100%;
}
.journal-search button {
	background: var(--color-ink);
	border: 0;
	border-radius: .55rem;
	color: #fff;
	cursor: pointer;
	font: inherit;
	font-size: .82rem;
	font-weight: 700;
	padding: .7rem .8rem;
}
.blog-topics a {
	align-items: center;
	border-bottom: 1px solid #f9e6cc;
	color: #6b5040;
	display: flex;
	font-size: .84rem;
	justify-content: space-between;
	margin-top: 0;
	padding-block: .65rem;
}
.blog-topics a:last-child { border-bottom: 0; padding-bottom: 0; }
.blog-topics small { color: #b89278; }
.blog-recent a {
	border-bottom: 1px solid #f9e6cc;
	display: block;
	margin-top: 0;
	padding-block: .75rem;
}
.blog-recent a:first-of-type { padding-top: 0; }
.blog-recent a:last-child { border-bottom: 0; padding-bottom: 0; }
.blog-recent small { color: #b89278; display: block; font-size: .68rem; margin-bottom: .3rem; }
.blog-recent strong { color: #44352f; display: block; font-family: var(--font-display); font-size: .92rem; font-weight: 600; line-height: 1.45; }
.blog-sidebar-cta .button { color: #fff; display: inline-flex; margin-top: 1rem; }
.latest-articles .navigation { margin-top: 2rem; }
.latest-articles .nav-links { display: flex; gap: .75rem; }
.latest-articles .page-numbers {
	background: #fff;
	border: 1px solid var(--color-line);
	border-radius: .5rem;
	color: #6b5040;
	display: inline-flex;
	font-size: .8rem;
	margin-top: 0;
	padding: .55rem .75rem;
}
.latest-articles .page-numbers.current { background: var(--color-ink); border-color: var(--color-ink); color: #fff; }
@media (min-width: 1024px) {
	.shop-hero::before {
		background-color: #fae7e1;
		background-position: right center;
		background-repeat: no-repeat;
		background-size: auto 100%;
	}
}
@media (max-width: 1023px) {
	.desktop-action,
	.favorites-action { display: none; }
	.nav-toggle { display: flex; flex-direction: column; }
	.brand {
		left: 50%;
		position: absolute;
		transform: translateX(-50%);
	}
	.primary-menu {
		background: #fff;
		border: 1px solid #f2d6bf;
		border-radius: 1rem;
		box-shadow: 0 20px 40px rgba(74,43,36,.08);
		display: none;
		left: 1.25rem;
		padding: .75rem;
		position: absolute;
		right: 1.25rem;
		top: calc(var(--header-height) - .5rem);
		z-index: 101;
	}
	.primary-menu.is-open { display: block; }
	.primary-menu .menu { align-items: stretch; flex-direction: column; gap: .25rem; }
	.primary-menu a { border-radius: .75rem; display: block; padding: .75rem 1rem; }
	.primary-menu a::after { display: none; }
	.primary-menu .current-menu-item a { background: #fff5ec; color: var(--color-accent); }
	.category-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.video-card-grid { display: flex; }
	.catalog .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ritual-grid { grid-template-columns: 1fr; }
	.review-grid { display: flex; overflow-x: auto; padding-bottom: .5rem; scroll-snap-type: x mandatory; }
	.review-card { flex: 0 0 82%; scroll-snap-align: center; }
	.journal-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.footer-grid { grid-template-columns: 1.4fr 1fr 1fr; text-align: left; }
	.story-grid,
	.contact-grid,
	.product-detail,
	.ceo-card,
	.about-hero,
	.ceo-grid,
	.contact-page,
	.faq-page { grid-template-columns: 1fr; }
	.intention-grid { grid-template-columns: 1fr; }
	.featured-image { aspect-ratio: 2; }
	.blog-content-layout { display: block; }
	.latest-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.blog-sidebar { display: none; }
	.article-layout { grid-template-columns: 1fr; }
	.article-sidebar {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		position: static;
	}
	.sidebar-cta { grid-column: 1 / -1; }
}
@media (max-width: 782px) {
	.admin-bar .site-header { top: 46px; }
}
@media (max-width: 639px) {
	.live-ticker {
		font-size: .6rem;
		letter-spacing: 0;
	}
	.live-ticker-track {
		gap: 1.5rem;
		padding-block: .32rem;
	}
	.live-ticker-dot {
		height: .32rem;
		width: .32rem;
	}
	.shell { padding-inline: 1.25rem; }
	.brand { font-size: 1.5rem; line-height: 1; }
	.hero-slide-photo { object-position: var(--mobile-focus, center center); }
	.benefit-strip { padding: .75rem .2rem; }
	.benefit-item { flex-direction: column; gap: .5rem; padding: .5rem; text-align: center; }
	.benefit-icon { height: 2.25rem; width: 2.25rem; }
	.benefit-item strong { font-size: .6875rem; line-height: 1.2; }
	.benefit-item p { display: block; font-size: .68rem; line-height: 1.15; }
	.category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.category-card { height: 11rem; }
	.home-section { padding-block: 3.5rem; }
	.promo-home { min-height: 330px; }
	.promo-content { max-width: 19rem; padding: 2.25rem 1.75rem; }
	.section-row { align-items: flex-start; flex-direction: column; gap: .75rem; }
	.see-all { display: inline-flex; }
	.product-grid { gap: .75rem; }
	.card-copy { padding: .75rem; }
	.card-copy h3 { font-size: .75rem; }
	.card-bottom strong { font-size: .875rem; }
	.video-section { padding-block: 3.5rem; }
	.video-card-grid {
		display: flex;
		gap: .75rem;
		margin-inline: -1.25rem;
		overflow-x: auto;
		padding: 0 1.25rem .25rem;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}
	.video-card-grid::-webkit-scrollbar { display: none; }
	.video-card {
		flex: 0 0 min(58vw, 12rem);
		scroll-snap-align: start;
	}
	.video-card-grid.has-active .video-card {
		flex-grow: 0;
		opacity: .75;
		transform: scale(.97);
	}
	.video-card-grid.has-active .video-card.is-active {
		flex-basis: min(64vw, 13.5rem);
		opacity: 1;
		transform: translateY(-.2rem) scale(1);
	}
	.video-card-media { aspect-ratio: 9 / 12; }
	.ritual-section { padding-block: 3rem; }
	.ritual-intro { text-align: center; }
	.ritual-intro p:not(.eyebrow) { margin-inline: auto; }
	.ritual-desktop-button { display: none; }
	.ritual-mobile-button { display: inline-flex; width: 100%; }
	.ritual-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .5rem; }
	.ritual-steps article { align-items: center; display: flex; flex-direction: column; min-height: 9rem; padding: 1rem .5rem; text-align: center; }
	.ritual-steps b {
		align-items: center;
		background: #fff5ec;
		border-radius: 999px;
		display: flex;
		font-size: .62rem;
		height: 2rem;
		justify-content: center;
		width: 2rem;
	}
	.ritual-steps h3 { font-size: 1.05rem; margin-top: 1rem; }
	.ritual-steps p { font-size: .6875rem; line-height: 1.35rem; }
	.review-heading { align-items: center; flex-direction: column; text-align: center; }
	.review-card { flex-basis: 82%; padding: 1.25rem; }
	.journal-grid { gap: .75rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.article-copy { padding: 1rem; }
	.article-copy .tag { font-size: .56rem; letter-spacing: .14em; }
	.article-copy h3 { font-size: 1rem; }
	.article-copy a { font-size: .75rem; }
	.site-footer { padding-top: 2.5rem; }
	.site-footer::before { background-size: 34px 34px; inset: 10rem 0 0; }
	.ritual-cta { background: linear-gradient(0deg, rgba(255,245,236,.98) 4%, rgba(255,245,236,.78) 46%, rgba(255,245,236,.18) 78%), var(--cta-bg) 68% center/cover; min-height: 320px; }
	.ritual-content { justify-content: flex-end; max-width: 19rem; min-height: 320px; padding: 1.75rem 1.5rem; }
	.ritual-content h2 { font-size: 2rem; }
	.cta-description { display: none; }
	.footer-top { margin-bottom: 2.5rem; }
	.footer-grid { gap: 2.25rem; grid-template-columns: 1fr; padding-top: 2.25rem; text-align: center; }
	.footer-grid div { align-items: center; display: flex; flex-direction: column; }
	.copyright { flex-direction: column; gap: .5rem; text-align: center; }
	.shop-hero { margin-top: 3rem; min-height: 385px; }
	.shop-hero .shell { align-items: flex-end; min-height: 385px; padding-bottom: 1.75rem; }
	.shop-hero::after { background: linear-gradient(0deg, rgba(255,248,245,.98), rgba(255,245,241,.8) 48%, rgba(255,245,241,.22)); }
	.catalog-tools { flex-direction: column; }
	.catalog-tools select { width: 100%; }
	.shop-popup { bottom: 1rem; left: 1rem; max-width: none; right: 1rem; }
	.support-chat { bottom: 5rem; right: 1rem; }
	.support-toggle {
		height: 3.1rem;
		padding-inline: .9rem;
	}
	.home-popup { padding: .85rem; }
	.home-popup-dialog {
		max-height: calc(100dvh - 1.7rem);
		max-width: calc(100vw - 1.7rem);
	}
	.home-popup-media img { max-height: calc(100dvh - 1.7rem); }
	.product-assistant {
		align-items: center;
		bottom: auto;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	.product-assistant.is-open {
		bottom: 0;
		display: block;
		left: 0;
		right: 0;
		top: 0;
		transform: none;
		z-index: 200;
	}
	.product-assistant-toggle {
		border-radius: 0 .6rem .6rem 0;
		flex-direction: column;
		min-height: 8.75rem;
		padding: .75rem .65rem;
	}
	.product-assistant.is-open .product-assistant-toggle { display: none; }
	.product-assistant-toggle span { writing-mode: vertical-rl; }
	.product-assistant-panel {
		border-radius: 0;
		bottom: 0;
		display: flex;
		flex-direction: column;
		height: 100vh;
		height: 100dvh;
		left: 0;
		margin: 0;
		max-height: none;
		position: fixed;
		right: 0;
		top: 0;
		width: 100vw;
		z-index: 130;
	}
	.product-assistant.is-open .product-assistant-panel {
		inset: 0;
		position: absolute;
		width: 100%;
	}
	.product-assistant-header {
		flex: 0 0 auto;
		padding: 1rem;
		position: relative;
		z-index: 1;
	}
	.product-conversation {
		flex: 1 1 auto;
		max-height: none;
		min-height: 0;
	}
	.product-question-form,
	.product-human-link,
	.product-prompts { flex: 0 0 auto; }
	.product-question-form input,
	.support-form input,
	.support-form textarea,
	.contact-form input,
	.contact-form textarea,
	.contact-form select {
		font-size: 16px;
	}
	.product-prompts { gap: .4rem; }
	.product-prompts button { font-size: .69rem; padding: .42rem .65rem; }
	.trust-grid { grid-template-columns: 1fr; }
	.detail-actions { flex-direction: column; }
	.detail-actions .button { width: 100%; }
	.about-hero { gap: 2rem; padding-block: 3rem; }
	.about-image { aspect-ratio: 1.05; }
	.intention-section,
	.value-section,
	.ceo-section,
	.about-standards { padding-block: 3rem; }
	.intention-text,
	.value-grid { grid-template-columns: 1fr; }
	.ceo-grid { gap: 1.75rem; }
	.ceo-portrait { border-radius: 1.5rem; }
	.ceo-portrait img { aspect-ratio: 1.42; }
	.ceo-copy { text-align: center; }
	.ceo-copy blockquote {
		background: #fff5ec;
		border: 0;
		border-radius: 1rem;
		font-size: .875rem;
		line-height: 1.75;
		margin-inline: auto;
		padding: 1.25rem;
	}
	.standards-scroll {
		display: flex;
		gap: .75rem;
		overflow-x: auto;
		padding-bottom: .5rem;
		scroll-snap-type: x mandatory;
	}
	.standards-scroll article { flex: 0 0 78%; padding: 1.25rem; scroll-snap-align: center; }
	.standard-warning { flex-direction: column; text-align: center; }
	.contact-page,
	.faq-page,
	.blog-page { padding-block: 2.5rem 3rem; }
	.blog-heading { margin-bottom: 2rem; }
	.blog-heading h1 { font-size: 2.35rem; }
	.featured-article { border-radius: 1rem; }
	.featured-image { aspect-ratio: 1.35; }
	.featured-copy { padding: 1.25rem 1.25rem 1.4rem; }
	.featured-copy h2 { font-size: 1.55rem; }
	.featured-copy .button { margin-top: 1.25rem; }
	.blog-content-layout { margin-top: 2.5rem; }
	.latest-articles .section-row { margin-bottom: 1.25rem; }
	.latest-articles .section-heading { font-size: 1.65rem; }
	.contact-form { padding: 1.75rem; }
	.latest-grid { gap: .75rem; grid-template-columns: 1fr; }
	.latest-card { display: grid; grid-template-columns: 7.25rem minmax(0, 1fr); min-height: 7.4rem; }
	.latest-image { aspect-ratio: auto; height: 100%; }
	.latest-card div { padding: .75rem; }
	.latest-card .eyebrow { font-size: .58rem; }
	.latest-card h3 { font-size: 1rem; line-height: 1.3; margin-top: .45rem; }
	.latest-excerpt,
	.latest-link { display: none; }
	.article-single { padding-bottom: 3.5rem; }
	.article-header { padding-block: 2.5rem 1.75rem; }
	.article-back { margin-bottom: 1.5rem; }
	.article-intro { font-size: .94rem; }
	.article-meta { flex-wrap: wrap; gap: .55rem .8rem; }
	.article-meta > * + *::before { margin-right: .8rem; }
	.article-cover { aspect-ratio: 1.35; border-radius: 1.1rem; }
	.article-after-cover { margin-top: 1.25rem; }
	.article-toc { padding: 1.25rem; }
	.article-toc ol { gap: .7rem; grid-template-columns: 1fr; }
	.article-layout { gap: 1.25rem; margin-top: 1.25rem; }
	.article-content { border-radius: 1.1rem; font-size: .95rem; padding: 1.35rem; }
	.article-content > p:first-child { font-size: 1rem; }
	.article-content h2 { margin-top: 2.1rem; }
	.article-sidebar { grid-template-columns: 1fr; }
	.sidebar-cta { grid-column: auto; }
	.article-product-callout {
		gap: 1rem;
		grid-template-columns: 1fr;
		margin: 2rem 0;
	}
	.article-product-card {
		max-width: 16rem;
		width: 100%;
	}
	.article-related-section {
		margin-top: 2.75rem;
		padding-top: 2.75rem;
	}
	.article-related-grid {
		gap: .75rem;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.article-related-grid .article-copy {
		padding: .8rem;
	}
	.article-related-grid .article-copy h3 {
		font-size: .88rem;
		line-height: 1.32;
	}
	.article-related-grid .article-copy a {
		font-size: .7rem;
		margin-top: .75rem;
	}
}

/* Minimal footer refinement */
.site-footer {
	background: linear-gradient(180deg, #fff 0%, #fff5ec 100%);
	border-top: 1px solid rgba(242,214,191,.72);
	color: var(--color-ink);
	padding-top: 4.5rem;
}
.site-footer::before {
	display: none;
}
.footer-top {
	margin-bottom: 3.25rem;
}
.ritual-cta {
	background:
		linear-gradient(90deg, rgba(255,248,240,.98), rgba(255,245,236,.86) 44%, rgba(255,245,236,.24)),
		var(--cta-bg) 68% center/cover;
	border: 1px solid rgba(242,214,191,.72);
	border-radius: .75rem;
	box-shadow: none;
	min-height: 320px;
}
.ritual-cta::after {
	border: 1px solid rgba(255,255,255,.72);
	content: "";
	inset: .75rem;
	pointer-events: none;
	position: absolute;
}
.ritual-content {
	min-height: 320px;
}
.ritual-content h2 {
	color: #4a2b24;
	font-size: clamp(2rem, 4vw, 2.55rem);
}
.cta-description {
	color: #6b5040;
}
.footer-grid {
	border-top: 1px solid rgba(242,214,191,.72);
	gap: clamp(2rem, 7vw, 5rem);
	grid-template-columns: minmax(0, 1.35fr) minmax(9rem, .7fr) minmax(10rem, .8fr);
	padding-bottom: 2.75rem;
	padding-top: 2.75rem;
}
.footer-brand {
	color: #4a2b24;
	font-size: 1.65rem;
	letter-spacing: .02em;
}
.footer-grid p {
	color: #70645d;
	font-size: .84rem;
	line-height: 1.75;
	max-width: 22rem;
}
.site-footer h3 {
	color: #4a2b24;
	font-size: .68rem;
	font-weight: 800;
	letter-spacing: .16em;
	margin-bottom: 1.1rem;
	text-transform: uppercase;
}
.site-footer a {
	color: #70645d;
	font-size: .84rem;
	margin-top: .65rem;
}
.footer-grid a:not(.footer-brand):hover,
.footer-grid a:not(.footer-brand):focus-visible {
	color: #c04020;
}
.copyright {
	border-top: 1px solid rgba(242,214,191,.72);
	color: #8c6a55;
	font-size: .72rem;
	padding-block: 1.25rem;
}
.copyright p {
	color: #8c6a55;
}

@media (max-width: 639px) {
	.site-footer {
		padding-top: 3rem;
	}
	.ritual-cta {
		background:
			linear-gradient(0deg, rgba(255,248,240,.98), rgba(255,245,236,.82) 55%, rgba(255,245,236,.18)),
			var(--cta-bg) 68% center/cover;
		min-height: 300px;
	}
	.ritual-cta::after {
		inset: .55rem;
	}
	.ritual-content {
		min-height: 300px;
	}
	.footer-grid {
		gap: 2rem;
		grid-template-columns: 1fr;
		text-align: left;
	}
}

/* Premium visual refinement pass */
body {
	background:
		radial-gradient(circle at 8% 8%, rgba(229, 197, 184, .22), transparent 22rem),
		linear-gradient(180deg, #fff5ec 0%, #fff 34rem);
}
.site-header {
	background: rgba(255, 252, 246, .82);
	border-bottom-color: rgba(227, 204, 195, .68);
	box-shadow: 0 18px 38px rgba(73, 49, 39, .045);
}
.site-header.header-overlay { background: rgba(255, 252, 246, .82); border-bottom-color: rgba(227, 204, 195, .68); }
.header-row { height: 4.65rem; }
.brand { font-size: 1.38rem; letter-spacing: .02em; }
.brand-flower { fill: #c04020; height: 1rem; width: 1rem; }
.primary-menu .menu { gap: 1.35rem; }
.primary-menu a {
	color: #6b5040;
	font-size: .78rem;
	letter-spacing: .04em;
	text-transform: uppercase;
}
.primary-menu a::after { background: #c04020; bottom: -.65rem; height: 1px; }
.icon-link {
	background: rgba(255,255,255,.62);
	border: 1px solid rgba(232, 211, 203, .72);
	height: 2.35rem;
	width: 2.35rem;
}
.icon-link:hover {
	background: #fff;
	border-color: rgba(155,90,85,.36);
	box-shadow: 0 10px 24px rgba(74,43,36,.08);
}
.hero-campaign {
	background: #f3ded7;
	box-shadow: inset 0 -1px rgba(242,214,191,.72);
}
.hero-slide::after {
	background: linear-gradient(180deg, rgba(34,26,22,0) 58%, rgba(34,26,22,.08));
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}
.benefit-section {
	background: rgba(255,255,255,.86);
	border-block-color: rgba(242,214,191,.72);
}
.benefit-strip { gap: .75rem; padding-block: 1rem; }
.benefit-item {
	background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,248,246,.74));
	border: 1px solid rgba(242,214,191,.68);
	border-radius: .85rem;
	justify-content: flex-start;
	padding: 1rem 1.15rem;
}
.benefit-item + .benefit-item { border-left: 1px solid rgba(242,214,191,.68); }
.benefit-icon {
	background: #4a2b24;
	color: #fff;
	font-size: .65rem;
	font-weight: 800;
	letter-spacing: .12em;
}
.benefit-item strong { font-size: .82rem; letter-spacing: .02em; }
.benefit-item p { font-size: .72rem; line-height: 1.45; }
.section-kicker {
	margin-inline: auto;
	max-width: 39rem;
	text-align: center;
}
.section-kicker > p:not(.eyebrow) {
	color: #7a5e48;
	font-size: .92rem;
	line-height: 1.75;
	margin: 1rem auto 0;
	max-width: 33rem;
}
.category-grid { gap: 1rem; margin-top: 2.4rem; }
.category-card {
	background: #ead2c9;
	border-color: rgba(242,214,191,.74);
	border-radius: .55rem;
	box-shadow: 0 1px 0 rgba(255,255,255,.72) inset;
	height: 14rem;
}
.category-card::after {
	background: linear-gradient(180deg, rgba(28,22,19,0) 18%, rgba(28,22,19,.18) 48%, rgba(28,22,19,.76) 100%);
}
.category-card:hover {
	box-shadow: 0 24px 50px -30px rgba(64,40,32,.44);
	transform: translateY(-5px);
}
.category-copy { padding: 1rem 1.05rem; }
.category-copy span {
	color: rgba(255,255,255,.68);
	display: block;
	font-size: .56rem;
	font-weight: 800;
	letter-spacing: .18em;
	margin-bottom: .35rem;
	text-transform: uppercase;
}
.category-copy h3 {
	font-family: var(--font-display);
	font-size: 1.22rem;
	font-weight: 600;
	line-height: 1.1;
}
.category-copy p { font-size: .72rem; }
.promo-home {
	background:
		linear-gradient(90deg, rgba(255,248,240,.98) 0%, rgba(255,245,236,.9) 37%, rgba(255,245,236,.18) 72%),
		var(--promo-bg) center/cover;
	border: 1px solid rgba(242,214,191,.8);
	border-radius: .8rem;
	box-shadow: 0 26px 60px -42px rgba(74,43,36,.48);
}
.promo-home::before {
	border: 1px solid rgba(255,255,255,.66);
	content: "";
	inset: .8rem;
	pointer-events: none;
	position: absolute;
}
.promo-content { max-width: 30rem; padding: 3.5rem; }
.promo-content h2 {
	color: #4a2b24;
	font-size: clamp(2.15rem, 4vw, 3rem);
	max-width: 28rem;
}
.promo-content p:not(.eyebrow) {
	color: #6b5040;
	font-size: .95rem;
	max-width: 25rem;
}
.section-row { margin-bottom: 2rem; }
.section-row .section-heading { max-width: 38rem; }
.see-all {
	align-items: center;
	background: #fff;
	border: 1px solid rgba(242,214,191,.86);
	border-radius: 999px;
	color: #c04020;
	display: inline-flex;
	min-height: 2.45rem;
	padding: .55rem 1rem;
}
.see-all:hover {
	border-color: rgba(125,75,71,.36);
	box-shadow: 0 10px 24px rgba(74,43,36,.08);
}
.product-grid { gap: 1rem; }
.product-card {
	border-color: rgba(242,214,191,.76);
	border-radius: .65rem;
	box-shadow: 0 1px 0 rgba(255,255,255,.78) inset, 0 18px 42px -38px rgba(74,43,36,.55);
	transition: border-color .24s ease, box-shadow .24s ease, transform .24s ease;
}
.product-card:hover {
	border-color: rgba(155,90,85,.34);
	box-shadow: 0 28px 58px -40px rgba(74,43,36,.58);
	transform: translateY(-4px);
}
.card-media {
	background:
		radial-gradient(circle at 50% 34%, rgba(255,255,255,.92), transparent 9rem),
		#f4e6df;
}
.card-image img { object-fit: cover; }
.product-line {
	background: rgba(255,255,255,.76);
	border: 1px solid rgba(255,255,255,.78);
	border-radius: 999px;
	color: #7a5e48;
	font-size: .55rem;
	font-weight: 800;
	left: .75rem;
	letter-spacing: .16em;
	padding: .32rem .56rem;
	position: absolute;
	text-transform: uppercase;
	top: .75rem;
	z-index: 2;
}
.favorite {
	border: 1px solid rgba(242,214,191,.78);
	box-shadow: 0 10px 22px rgba(74,43,36,.08);
	height: 2.15rem;
	width: 2.15rem;
}
.discount {
	background: #4a2b24;
	color: #fff;
	font-size: .58rem;
	letter-spacing: .08em;
}
.card-copy { padding: 1rem 1rem 1.05rem; }
.card-copy h3 {
	font-size: .86rem;
	line-height: 1.45;
	white-space: normal;
}
.card-copy h3 a:hover { color: #c04020; }
.rating { margin-top: .65rem; }
.card-bottom { margin-top: .85rem; }
.card-bottom strong { color: #4a2b24; font-size: 1.02rem; }
.add-bag {
	background: #4a2b24;
	border-color: #4a2b24;
	color: #fff;
	font-weight: 700;
}
.add-bag:hover,
.add-bag.is-active {
	background: #fff;
	border-color: #c04020;
	color: #c04020;
}
.video-section {
	background: linear-gradient(180deg, #fff 0%, #fff9f6 100%);
	border-top-color: rgba(242,214,191,.76);
}
.video-card-grid { max-width: none; width: 100%; }
.video-card { border-color: rgba(242,214,191,.78); border-radius: .65rem; }
.video-card-media { background: #ead2c9; }
.video-placeholder {
	background: linear-gradient(180deg, rgba(74,43,36,.03), rgba(74,43,36,.58));
	letter-spacing: .16em;
}
.video-play { box-shadow: 0 14px 30px rgba(34,26,22,.18); }
.video-card-copy { padding: 1.15rem; }
.ritual-section {
	background:
		radial-gradient(circle at 8% 15%, rgba(242,214,191,.44), transparent 20rem),
		#fff;
}
.ritual-steps article {
	border-radius: .65rem;
	box-shadow: none;
	position: relative;
}
.ritual-steps article::after {
	background: linear-gradient(90deg, #c04020, transparent);
	content: "";
	height: 1px;
	left: 1.25rem;
	position: absolute;
	right: 1.25rem;
	top: 3.1rem;
}
.review-section {
	background:
		radial-gradient(circle at 0% 100%, rgba(219,185,173,.54), transparent 27rem),
		#fff5ec;
}
.review-summary {
	border-radius: .65rem;
	box-shadow: 0 22px 45px -34px rgba(78,40,34,.5);
}
.review-card {
	border-color: rgba(242,214,191,.78);
	border-radius: .75rem;
	box-shadow: 0 18px 44px -38px rgba(78,40,34,.55);
}
.review-meta b { background: #f7ebe7; }
.journal-section { background: #fff; }
.article-card {
	border: 1px solid rgba(242,214,191,.76);
	border-radius: .65rem;
	box-shadow: 0 18px 42px -38px rgba(74,43,36,.55);
}
.article-image { aspect-ratio: 1.55; }
.article-copy h3 { font-size: 1.18rem; }
.site-footer {
	background: #2d2724;
	border-top: 0;
	color: #fff;
}
.site-footer::before {
	background-image:
		linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
	opacity: 1;
}
.ritual-cta { border: 1px solid rgba(255,255,255,.16); border-radius: .8rem; }
.footer-grid,
.copyright { border-color: rgba(255,255,255,.12); }
.footer-brand,
.site-footer h3,
.copyright { color: #fff; }
.footer-grid p,
.site-footer a,
.copyright p { color: rgba(255,255,255,.68); }
.footer-grid a:not(.footer-brand):hover,
.footer-grid a:not(.footer-brand):focus-visible { color: #fff; }
.shop-hero {
	border-color: rgba(242,214,191,.78);
	border-radius: .8rem;
	box-shadow: 0 26px 60px -42px rgba(74,43,36,.48);
}
.shop-hero::after {
	background: linear-gradient(90deg, rgba(255,248,240,.98), rgba(255,245,236,.82) 42%, rgba(255,245,236,.12) 76%);
}
.search,
.catalog-tools select,
.filter-row button {
	border-color: rgba(242,214,191,.86);
	box-shadow: 0 1px 0 rgba(255,255,255,.82) inset;
}
.search::before {
	border: 1.7px solid #a88060;
	border-radius: 999px;
	box-shadow: .35rem .35rem 0 -.27rem #a88060;
	content: "";
	height: .8rem;
	margin-right: .75rem;
	transform: rotate(-8deg);
	width: .8rem;
}
.empty-panel,
.catalog-empty {
	border: 1px solid rgba(242,214,191,.78);
	border-radius: .8rem;
}
.support-toggle,
.support-panel-header,
.support-send { background: #1f7a51; }
.support-toggle:hover,
.support-send:hover { background: #17643f; }
.product-assistant-toggle { background: #4a2b24; }

@media (max-width: 1023px) {
	.primary-menu {
		background: rgba(255,252,246,.98);
		border-color: rgba(242,214,191,.82);
	}
	.category-card { height: 13rem; }
}

@media (max-width: 639px) {
	.header-row { height: 4.4rem; }
	.brand { font-size: 1.32rem; }
	.icon-link { height: 2.25rem; width: 2.25rem; }
	.benefit-strip {
		gap: .45rem;
		grid-template-columns: 1fr;
		padding-block: .7rem;
	}
	.benefit-item {
		align-items: flex-start;
		flex-direction: row;
		padding: .75rem;
		text-align: left;
	}
	.benefit-icon { height: 2rem; width: 2rem; }
	.benefit-item strong { font-size: .76rem; }
	.benefit-item p { font-size: .68rem; }
	.section-kicker > p:not(.eyebrow) { font-size: .82rem; }
	.category-grid { gap: .75rem; }
	.category-card { border-radius: .5rem; height: 10.75rem; }
	.category-copy h3 { font-size: 1.04rem; }
	.promo-home {
		background:
			linear-gradient(0deg, rgba(255,248,240,.98), rgba(255,245,236,.82) 54%, rgba(255,245,236,.18)),
			var(--promo-bg) 62% center/cover;
		border-radius: .65rem;
	}
	.promo-home::before { inset: .55rem; }
	.promo-content { max-width: none; padding: 2rem 1.35rem; }
	.promo-content h2 { font-size: 1.95rem; }
	.product-grid { gap: .7rem; }
	.product-card { border-radius: .55rem; }
	.product-line { display: none; }
	.favorite { height: 2rem; width: 2rem; }
	.card-copy { padding: .78rem; }
	.card-copy h3 { font-size: .74rem; line-height: 1.35; }
	.rating { gap: .28rem; }
	.rating-stars { font-size: .62rem; }
	.card-bottom strong { font-size: .86rem; }
	.add-bag { height: 1.9rem; width: 1.9rem; }
	.video-card,
	.article-card,
	.review-card { border-radius: .55rem; }
	.ritual-steps article::after { display: none; }
	.footer-grid div { align-items: flex-start; text-align: left; }
	.copyright { align-items: flex-start; text-align: left; }
	.shop-hero { border-radius: .65rem; }
}

/* Product detail refinement */
.product-detail {
	gap: clamp(1.75rem, 5vw, 4.5rem);
	grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
	padding-block: clamp(2.5rem, 6vw, 5.5rem);
}
.detail-image {
	aspect-ratio: .9;
	background:
		linear-gradient(135deg, rgba(255,255,255,.75), rgba(255,244,239,.32)),
		#f4e5de;
	border: 1px solid rgba(242,214,191,.82);
	border-radius: .85rem;
	box-shadow: 0 30px 70px -48px rgba(54,35,28,.62);
	overflow: hidden;
	padding: clamp(.55rem, 1.4vw, .85rem);
	position: sticky;
	top: 6.5rem;
}
.detail-image img {
	border-radius: .6rem;
	box-shadow: 0 18px 46px -38px rgba(74,43,36,.68);
	display: block;
}
.detail-image-badge {
	background: rgba(255,255,255,.86);
	border: 1px solid rgba(255,255,255,.9);
	border-radius: 999px;
	color: #4c403b;
	font-size: .62rem;
	font-weight: 800;
	left: 1.35rem;
	letter-spacing: .18em;
	padding: .42rem .68rem;
	position: absolute;
	text-transform: uppercase;
	top: 1.35rem;
	z-index: 2;
}
.detail-copy {
	background: linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,250,248,.72));
	border: 1px solid rgba(242,214,191,.76);
	border-radius: .85rem;
	box-shadow: 0 24px 58px -46px rgba(54,35,28,.52);
	padding: clamp(1.35rem, 3vw, 2.35rem);
}
.detail-copy .eyebrow {
	color: #8b6258;
	font-size: .7rem;
	letter-spacing: .18em;
}
.detail-copy h1 {
	color: #28221f;
	font-size: clamp(2rem, 4vw, 3.15rem);
	margin-top: .75rem;
}
.rating-detail {
	align-items: center;
	background: #fff;
	border: 1px solid rgba(242,214,191,.78);
	border-radius: 999px;
	display: inline-flex;
	gap: .45rem;
	margin-top: 1rem;
	padding: .46rem .72rem;
}
.rating-detail b { color: #3a302c; }
.rating-detail span { color: #817069; font-size: .78rem; }
.detail-price {
	background: #fff;
	border: 1px solid rgba(242,214,191,.72);
	border-radius: .75rem;
	margin: 1.35rem 0 1.4rem;
	padding: 1rem 1.1rem;
}
.detail-price strong { color: #4a2b24; }
.detail-information {
	border-top-color: rgba(242,214,191,.78);
	color: #5f514b;
}
.trust-mark {
	background: #f8eee9;
	border: 1px solid rgba(242,214,191,.74);
	border-radius: .65rem;
}
.detail-actions {
	border-top-color: rgba(242,214,191,.78);
	display: grid;
	gap: .65rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 1.8rem;
	padding-top: 1.3rem;
}
.detail-actions .button {
	border-radius: .65rem;
	justify-content: center;
	min-height: 3.05rem;
	padding-inline: .95rem;
	white-space: nowrap;
	width: 100%;
}
.shop-button {
	gap: .55rem;
	letter-spacing: 0;
}
.shop-button svg {
	flex: 0 0 auto;
	height: 1.12rem;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
	width: 1.12rem;
}
.shop-button svg path { fill: none; }
.shopee-button {
	background: #ee4d2d;
	border-color: #ee4d2d;
	color: #fff;
	box-shadow: 0 15px 26px -20px rgba(238,77,45,.86);
}
.shopee-button:hover,
.shopee-button:focus-visible {
	background: #d94427;
	border-color: #d94427;
	color: #fff;
	transform: translateY(-1px);
}
.tiktok-button {
	background: #111;
	border-color: #111;
	color: #fff;
	box-shadow: 0 15px 28px -22px rgba(17,17,17,.88);
}
.tiktok-button:hover,
.tiktok-button:focus-visible {
	background: #000;
	border-color: #000;
	color: #fff;
	transform: translateY(-1px);
}
.save-product-button {
	background: #fff;
	border-color: rgba(74,43,36,.18);
	color: #4a2b24;
}
.save-product-button:hover,
.save-product-button:focus-visible,
.save-product-button.is-saved {
	background: #fff5ec;
	border-color: rgba(155,90,85,.45);
	color: #c04020;
	transform: translateY(-1px);
}
.save-product-button span {
	font-size: 1.1rem;
	line-height: 1;
}

@media (max-width: 1023px) {
	.product-detail {
		grid-template-columns: 1fr;
		padding-block: 2rem 3.25rem;
	}
	.detail-image {
		aspect-ratio: 1.05;
		position: relative;
		top: auto;
	}
}

@media (max-width: 639px) {
	.product-detail { gap: 1rem; padding-bottom: 5rem; }
	.detail-copy { padding: 1.05rem; }
	.detail-copy h1 { font-size: 1.75rem; }
	.rating-detail {
		border-radius: .65rem;
		flex-wrap: wrap;
	}
	.detail-price {
		border-radius: .65rem;
		padding: .9rem;
	}
	.detail-price div {
		align-items: flex-start;
		flex-direction: column;
		gap: .45rem;
	}
	.detail-actions {
		grid-template-columns: 1fr;
		margin-top: 1.35rem;
		padding-top: 1rem;
	}
	.detail-actions .button {
		min-height: 2.85rem;
		white-space: normal;
	}
	.detail-image-badge {
		left: 1rem;
		top: 1rem;
	}
}

/* Homepage mobile refinement */
@media (max-width: 639px) {
	.benefit-section {
		border-block-color: rgba(242,214,191,.72);
	}
	.benefit-strip {
		gap: .45rem;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		padding-block: .65rem;
	}
	.benefit-item {
		background: #fff;
		border: 1px solid rgba(242,214,191,.78);
		border-radius: .55rem;
		box-shadow: 0 14px 28px -28px rgba(74,43,36,.42);
		flex-direction: column;
		gap: .35rem;
		min-height: 6.35rem;
		padding: .58rem .32rem;
		text-align: center;
	}
	.benefit-item + .benefit-item { border-left: 1px solid rgba(242,214,191,.78); }
	.benefit-icon {
		background: #f8eee9;
		font-size: .68rem;
		font-weight: 800;
		height: 1.75rem;
		width: 1.75rem;
	}
	.benefit-item strong {
		color: #4a2b24;
		font-size: .66rem;
		line-height: 1.18;
	}
	.benefit-item p {
		color: #7a6b64;
		font-size: .58rem;
		line-height: 1.25;
	}
	.category-section { padding-block: 2.75rem 3.25rem; }
	.category-grid {
		display: grid;
		gap: .5rem;
		grid-auto-columns: calc((100% - 1rem) / 3);
		grid-auto-flow: column;
		grid-template-columns: none;
		margin-inline: -1.25rem;
		margin-top: 1.35rem;
		overflow-x: auto;
		padding: 0 1.25rem .4rem;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}
	.category-grid::-webkit-scrollbar { display: none; }
	.category-card {
		border-radius: .55rem;
		box-shadow: 0 16px 28px -26px rgba(46,29,24,.58);
		height: 8.6rem;
		scroll-snap-align: start;
	}
	.category-copy {
		padding: .68rem;
	}
	.category-copy span {
		font-size: .5rem;
		letter-spacing: .14em;
	}
	.category-copy h3 {
		font-size: .78rem;
		line-height: 1.1;
	}
	.category-copy p {
		font-size: .58rem;
		line-height: 1.25;
		margin-top: .18rem;
	}
	.bestseller .product-grid {
		gap: .85rem .62rem;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.bestseller .product-card,
	.catalog .product-card {
		background: linear-gradient(180deg, #fff 0%, #fff5ec 100%);
		border-color: rgba(242,214,191,.82);
		border-radius: .72rem;
		box-shadow: 0 18px 36px -34px rgba(74,43,36,.62);
		overflow: hidden;
		transition: border-color .24s ease, box-shadow .24s ease, transform .24s ease;
	}
	.bestseller .product-card:active,
	.catalog .product-card:active {
		transform: scale(.985);
	}
	.bestseller .card-media,
	.catalog .card-media {
		aspect-ratio: .94;
		background:
			radial-gradient(circle at 50% 30%, rgba(255,255,255,.98), transparent 4.8rem),
			#f3dfd7;
	}
	.bestseller .card-image img,
	.catalog .card-image img {
		object-fit: cover;
	}
	.bestseller .favorite,
	.catalog .favorite {
		background: rgba(255,255,255,.92);
		border: 1px solid rgba(242,214,191,.82);
		box-shadow: 0 10px 22px rgba(74,43,36,.08);
		font-size: 1rem;
		height: 1.85rem;
		right: .55rem;
		top: .55rem;
		width: 1.85rem;
	}
	.bestseller .discount,
	.catalog .discount {
		background: #4a2b24;
		color: #fff;
		font-size: .52rem;
		left: .55rem;
		padding: .24rem .5rem;
	}
	.bestseller .card-copy,
	.catalog .card-copy {
		padding: .72rem;
	}
	.bestseller .card-copy h3,
	.catalog .card-copy h3 {
		color: #4a2b24;
		display: -webkit-box;
		font-size: .76rem;
		line-height: 1.32;
		min-height: 2em;
		overflow: hidden;
		text-overflow: unset;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		white-space: normal;
	}
	.bestseller .rating,
	.catalog .rating {
		margin-top: .46rem;
		overflow: hidden;
	}
	.bestseller .card-bottom,
	.catalog .card-bottom {
		align-items: flex-end;
		margin-top: .62rem;
	}
	.bestseller .card-bottom strong,
	.catalog .card-bottom strong {
		color: #4a2b24;
		font-size: .86rem;
		line-height: 1.1;
	}
	.bestseller .card-bottom del,
	.catalog .card-bottom del {
		font-size: .56rem;
		margin-top: .15rem;
	}
	.bestseller .add-bag,
	.catalog .add-bag {
		background: #4a2b24;
		border-color: #4a2b24;
		box-shadow: 0 12px 20px -16px rgba(74,43,36,.8);
		color: #fff;
		height: 1.95rem;
		width: 1.95rem;
	}
	.bestseller .add-bag.is-active,
	.catalog .add-bag.is-active {
		background: #fff5ec;
		border-color: rgba(155,90,85,.45);
		color: #c04020;
	}
	.video-section {
		padding-block: 3rem 3.4rem;
	}
	.video-section .section-row {
		margin-bottom: 1.15rem;
	}
	.video-card-grid {
		gap: .72rem;
		margin-inline: -1.25rem;
		padding: .5rem 1.25rem .9rem;
		scroll-padding-inline: calc(50% - min(36vw, 8rem));
		scroll-snap-type: x mandatory;
	}
	.video-card {
		border-radius: .75rem;
		flex: 0 0 min(72vw, 17rem);
		scroll-snap-align: center;
		transform-origin: center center;
	}
	.video-card-grid.has-active .video-card {
		opacity: .62;
		transform: scale(.92);
	}
	.video-card-grid.has-active .video-card.is-active {
		border-color: rgba(155,90,85,.34);
		box-shadow: 0 28px 50px -34px rgba(48,29,23,.65);
		flex-basis: min(72vw, 17rem);
		opacity: 1;
		transform: scale(1.045);
	}
	.video-card-media { aspect-ratio: 9 / 14.5; }
	.video-card-copy {
		padding: .9rem;
	}
	.video-card-copy h3 {
		font-size: 1rem;
		line-height: 1.25;
	}
	.video-card-copy p {
		font-size: .72rem;
		line-height: 1.45;
	}
}

/* Product detail mobile marketplace layout */
@media (max-width: 639px) {
	body.single-eldepe_product {
		background: #f5f2f0;
		padding-bottom: calc(5.75rem + env(safe-area-inset-bottom));
	}
	body.single-eldepe_product .site-footer {
		margin-bottom: 0;
	}
	.product-detail.shell {
		background: #f5f2f0;
		display: block;
		max-width: none;
		padding: 0 0 1rem;
		width: 100%;
	}
	.product-detail .detail-image {
		aspect-ratio: 1;
		background: #f1dfd8;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		margin: 0;
		overflow: hidden;
		padding: 0;
		width: 100%;
	}
	.product-detail .detail-image img {
		border-radius: 0;
		box-shadow: none;
		height: 100%;
		object-fit: cover;
		width: 100%;
	}
	.product-detail .detail-image-badge {
		background: rgba(255,255,255,.9);
		border-color: rgba(255,255,255,.92);
		box-shadow: 0 12px 24px rgba(74,43,36,.12);
		color: #4a2b24;
		left: .9rem;
		top: .9rem;
	}
	.product-detail .detail-copy {
		background: transparent;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		display: flex;
		flex-direction: column;
		gap: .55rem;
		padding: .55rem 0 0;
	}
	.product-detail .detail-copy .eyebrow {
		display: none;
	}
	.product-detail .detail-price {
		background: #fff;
		border: 0;
		border-radius: 0;
		margin: 0;
		order: 1;
		padding: .95rem 1rem .45rem;
	}
	.product-detail .detail-price del {
		color: #b89278;
		font-size: .78rem;
		margin-bottom: .28rem;
	}
	.product-detail .detail-price div {
		align-items: center;
		flex-direction: row;
		gap: .55rem;
	}
	.product-detail .detail-price strong {
		color: #ee4d2d;
		font-family: var(--font-body);
		font-size: 1.58rem;
		font-weight: 850;
		letter-spacing: 0;
		line-height: 1;
	}
	.product-detail .detail-price span {
		background: #fff5ec;
		border: 1px solid rgba(238,77,45,.2);
		color: #ee4d2d;
		font-size: .64rem;
		padding: .22rem .48rem;
	}
	.product-detail .detail-copy h1 {
		background: #fff;
		color: #26211e;
		font-family: var(--font-body);
		font-size: 1.02rem;
		font-weight: 760;
		line-height: 1.45;
		margin: -.55rem 0 0;
		order: 2;
		padding: .48rem 1rem .75rem;
	}
	.product-detail .rating-detail {
		background: #fff;
		border: 0;
		border-radius: 0;
		display: flex;
		justify-content: space-between;
		margin: 0;
		order: 3;
		padding: .72rem 1rem;
	}
	.product-detail .rating-detail .rating-stars {
		font-size: .78rem;
	}
	.product-detail .rating-detail b {
		color: #4a2b24;
		font-size: .78rem;
	}
	.product-detail .rating-detail span {
		color: #8b7c75;
		font-size: .74rem;
	}
	.product-detail .detail-information {
		background: #fff;
		border: 0;
		border-radius: 0;
		color: #4f4641;
		font-size: .86rem;
		line-height: 1.72;
		order: 4;
		padding: 1rem;
	}
	.product-detail .detail-information::before {
		color: #4a2b24;
		content: "Detail Produk";
		display: block;
		font-size: .92rem;
		font-weight: 800;
		margin-bottom: .62rem;
	}
	.product-detail .detail-information .entry-copy {
		margin-bottom: .9rem;
	}
	.product-detail .detail-information > p {
		border-top: 1px solid rgba(242,214,191,.62);
		margin: 0;
		padding: .68rem 0;
	}
	.product-detail .detail-information > p:last-child {
		padding-bottom: 0;
	}
	.product-detail .trust-mark {
		background: transparent;
		border: 0;
		border-radius: 0;
	}
	.product-detail .detail-actions {
		background: rgba(255,255,255,.96);
		border-top: 1px solid rgba(210,196,189,.9);
		box-shadow: 0 -16px 34px rgba(74,43,36,.12);
		display: grid;
		gap: .42rem;
		grid-template-columns: .84fr 1.08fr 1.08fr;
		left: 0;
		margin: 0;
		padding: .58rem .7rem calc(.58rem + env(safe-area-inset-bottom));
		position: fixed;
		right: 0;
		bottom: 0;
		z-index: 110;
	}
	.product-detail .detail-actions .button {
		border-radius: .48rem;
		font-size: .72rem;
		font-weight: 800;
		min-height: 2.75rem;
		padding: .48rem .38rem;
		white-space: normal;
	}
	.product-detail .shop-button {
		gap: .32rem;
	}
	.product-detail .shop-button svg {
		height: 1rem;
		width: 1rem;
	}
	.product-detail .save-product-button {
		background: #fff;
		border-color: rgba(238,77,45,.34);
		color: #ee4d2d;
		flex-direction: column;
		gap: .1rem;
		line-height: 1.1;
	}
	.product-detail .save-product-button span {
		font-size: 1rem;
	}
	.product-detail .shopee-button {
		background: #ee4d2d;
		border-color: #ee4d2d;
		box-shadow: none;
	}
	.product-detail .tiktok-button {
		background: #111;
		border-color: #111;
		box-shadow: none;
	}
}

/* Hero value cards refresh */
.hero-slide-photo {
	min-height: clamp(430px, 48vw, 620px);
	object-fit: cover;
}
.benefit-section {
	background: #fff5ec;
	border-block: 0;
	margin-top: 0;
	padding-top: clamp(1.35rem, 3vw, 2.25rem);
	position: relative;
	z-index: 4;
}
.benefit-strip {
	gap: .9rem;
	padding-block: 0 1.25rem;
}
.benefit-item {
	background:
		linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,250,248,.96)),
		#fff;
	border: 1px solid rgba(242,214,191,.78);
	border-radius: .8rem;
	box-shadow: 0 20px 48px -38px rgba(45,31,26,.62);
	isolation: isolate;
	min-height: 6.15rem;
	overflow: hidden;
	padding: 1.05rem;
	position: relative;
}
.benefit-item::before {
	background: linear-gradient(90deg, rgba(238,77,45,.88), rgba(189,105,111,.74), rgba(74,43,36,.88));
	content: "";
	height: .16rem;
	inset: 0 0 auto;
	position: absolute;
	z-index: -1;
}
.benefit-item::after {
	background: linear-gradient(135deg, rgba(238,77,45,.12), rgba(255,255,255,0));
	border-radius: 999px;
	content: "";
	height: 3.6rem;
	position: absolute;
	right: -1.35rem;
	top: -.95rem;
	width: 3.6rem;
	z-index: -1;
}
.benefit-item + .benefit-item {
	border-left: 1px solid rgba(242,214,191,.78);
}
.benefit-icon {
	background: #fff5ec;
	border: 1px solid rgba(238,77,45,.16);
	box-shadow: none;
	color: #9b4e43;
	font-size: .64rem;
	font-weight: 850;
	height: 2.35rem;
	letter-spacing: .08em;
	width: 2.35rem;
}
.benefit-item strong {
	color: #2b2421;
	font-size: .84rem;
	font-weight: 850;
	letter-spacing: 0;
}
.benefit-item p {
	color: #77675f;
	font-size: .72rem;
	line-height: 1.45;
	margin-top: .18rem;
}

@media (max-width: 639px) {
	.hero-slide-photo {
		min-height: min(68vh, 500px);
	}
	.benefit-section {
		background: #fff5ec;
		margin-top: 0;
		padding-top: 1rem;
	}
	.benefit-strip {
		gap: .46rem;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		padding-block: 0 .9rem;
	}
	.benefit-item {
		align-items: center;
		border-radius: .66rem;
		gap: .42rem;
		justify-content: flex-start;
		min-height: 6.55rem;
		padding: .68rem .42rem;
		text-align: center;
	}
	.benefit-item::before {
		height: .16rem;
	}
	.benefit-item::after {
		height: 2.7rem;
		right: -1.25rem;
		top: -.85rem;
		width: 2.7rem;
	}
	.benefit-icon {
		background: #fff5ec;
		color: #9b4e43;
		font-size: .54rem;
		height: 1.58rem;
		width: 1.58rem;
	}
	.benefit-item strong {
		font-size: .62rem;
		line-height: 1.2;
	}
	.benefit-item p {
		font-size: .53rem;
		line-height: 1.24;
	}
}

/* Product detail related products */
.product-related-section {
	padding-block: 0 clamp(3.5rem, 7vw, 5.5rem);
}
.product-related-section .section-row {
	border-top: 1px solid rgba(242,214,191,.78);
	margin-bottom: 1.4rem;
	padding-top: clamp(1.8rem, 4vw, 2.5rem);
}
.product-related-section .product-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 1023px) {
	.product-related-section .product-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 639px) {
	.product-related-section {
		background: #f5f2f0;
		padding: .7rem 1rem calc(1.5rem + env(safe-area-inset-bottom));
	}
	.product-related-section .section-row {
		background: #fff;
		border: 0;
		border-radius: .72rem .72rem 0 0;
		margin: 0;
		padding: .9rem .85rem .75rem;
	}
	.product-related-section .section-heading {
		font-family: var(--font-body);
		font-size: .98rem;
		font-weight: 850;
		line-height: 1.3;
	}
	.product-related-section .see-all {
		font-size: .72rem;
	}
	.product-related-section .product-grid {
		background: #fff;
		border-radius: 0 0 .72rem .72rem;
		gap: .72rem .58rem;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		padding: 0 .85rem .9rem;
	}
	.product-related-section .product-card {
		background: linear-gradient(180deg, #fff 0%, #fff5ec 100%);
		border-color: rgba(242,214,191,.82);
		border-radius: .68rem;
		box-shadow: 0 18px 36px -34px rgba(74,43,36,.62);
	}
}

/* Minimal product detail card */
.product-detail .detail-copy {
	background: #fff;
	border: 0;
	border-radius: .8rem;
	box-shadow: 0 18px 48px -42px rgba(74,43,36,.52);
}
.product-detail .rating-detail {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
}
.product-detail .detail-price {
	background: transparent;
	border: 0;
	border-radius: 0;
	margin: 1.2rem 0 1.45rem;
	padding: 0;
}
.product-detail .detail-price strong {
	color: #ee4d2d;
	font-family: var(--font-body);
	font-weight: 850;
}
.product-detail .detail-price span {
	background: #fff5ec;
	border: 0;
	color: #ee4d2d;
}
.product-detail .detail-information {
	border-top-color: rgba(242,214,191,.62);
}
.product-detail .trust-mark {
	background: #fff5ec;
	border: 0;
}

@media (max-width: 639px) {
	.product-detail .detail-copy {
		background: transparent;
		border-radius: 0;
		box-shadow: none;
	}
	.product-detail .detail-price {
		background: #fff;
		margin: 0;
		padding: .95rem 1rem .45rem;
	}
	.product-detail .detail-price span {
		border: 0;
	}
}

/* Consistent hero slider ratio */
.hero-slide picture {
	aspect-ratio: 2.5 / 1;
	display: block;
	overflow: hidden;
	width: 100%;
}
.hero-slide-photo {
	height: 100%;
	min-height: 0;
	object-fit: cover;
	width: 100%;
}

@media (max-width: 639px) {
	.hero-slide picture {
		aspect-ratio: 2.5 / 1;
	}
	.hero-slide-photo {
		min-height: 0;
	}
}
