:root {
	--calmu-cream: #f7f1e8;
	--calmu-oat: #e6dfd0;
	--calmu-sage: #a8b892;
	--calmu-olive: #6f7a4e;
	--calmu-brown: #5c5748;
	--calmu-ink: #3d3a32;
	--calmu-paper: #fbf7f1;
	--calmu-white: #fffcf7;
	--calmu-display: "Cormorant Garamond", "Times New Roman", serif;
	--calmu-sans: "Outfit", "Segoe UI", sans-serif;
	--calmu-ar: "IBM Plex Sans Arabic", "Outfit", sans-serif;
	--wd-primary-color: #6f7a4e;
	--wd-alternative-color: #3d3a32;
	--wd-link-color: #6f7a4e;
	--btn-accented-bgcolor: #6f7a4e;
	--btn-default-bgcolor: #6f7a4e;
}

html {
	background: var(--calmu-paper);
}

body.calmu-theme {
	background: var(--calmu-paper);
	color: var(--calmu-ink);
	font-family: var(--calmu-sans);
	font-weight: 300;
	font-size: 17px;
	line-height: 1.65;
}

body.calmu-rtl,
body.calmu-rtl h1,
body.calmu-rtl h2,
body.calmu-rtl h3 {
	font-family: var(--calmu-ar);
}

h1, h2, .calmu-hero h1, .calmu-page h1 {
	font-family: var(--calmu-display);
	font-weight: 600;
	letter-spacing: -0.02em;
	color: var(--calmu-ink);
	line-height: 1.15;
}

a {
	color: var(--calmu-olive);
	text-decoration: none;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
}

.calmu-announce {
	background: var(--calmu-olive);
	color: var(--calmu-cream);
	text-align: center;
	font-size: 12px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	padding: 8px 16px;
}

.calmu-header {
	position: sticky;
	top: 0;
	z-index: 80;
	background: rgba(247, 241, 232, 0.96);
	backdrop-filter: blur(12px);
	border-bottom: 1px solid rgba(92, 87, 72, 0.12);
}

.calmu-header__bar {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 12px;
	max-width: 1280px;
	margin: 0 auto;
	padding: 12px 24px 8px;
}

.calmu-logo {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--calmu-ink);
	justify-self: center;
}

.calmu-logo__word {
	font-family: var(--calmu-display);
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 0.04em;
}

.calmu-header__nav--desk {
	border-top: 1px solid rgba(92, 87, 72, 0.1);
	padding: 8px 16px 12px;
}

.calmu-header__nav--desk .calmu-nav {
	justify-content: center;
	flex-wrap: nowrap;
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	max-width: 1280px;
	margin: 0 auto;
}

.calmu-header__tools {
	justify-self: end;
	display: flex;
	align-items: center;
	gap: 8px;
}

.calmu-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 22px;
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 13px;
	letter-spacing: 0.04em;
}

.calmu-nav a {
	color: var(--calmu-brown);
}

.calmu-nav a:hover {
	color: var(--calmu-olive);
}

.calmu-nav__item {
	position: relative;
}

.calmu-sub {
	display: none;
	position: absolute;
	top: 100%;
	inset-inline-start: 0;
	min-width: 220px;
	background: var(--calmu-white);
	border: 1px solid rgba(92, 87, 72, 0.12);
	padding: 10px 0;
	list-style: none;
	margin: 0;
	box-shadow: 0 12px 40px rgba(61, 58, 50, 0.08);
	z-index: 20;
}

.calmu-nav__item.has-sub:hover > .calmu-sub,
.calmu-nav__item.has-sub:focus-within > .calmu-sub {
	display: block;
}

.calmu-sub a {
	display: block;
	padding: 8px 16px;
}

.calmu-lang {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	font-weight: 500;
	padding: 6px 10px;
	border: 1px solid rgba(111, 122, 78, 0.35);
	border-radius: 999px;
	background: var(--calmu-white);
}

.calmu-lang a {
	color: var(--calmu-brown);
}
.calmu-lang a.is-active {
	color: var(--calmu-olive);
	font-weight: 600;
}

.calmu-float-controls {
	position: fixed;
	left: auto;
	right: 16px;
	bottom: 20px;
	z-index: 9999;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 8px;
}
html[dir="rtl"] .calmu-float-controls {
	left: auto !important;
	right: 16px !important;
}

.calmu-lang--float,
.calmu-currency--float {
	position: static;
	left: auto;
	right: auto;
	bottom: auto;
	z-index: auto;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 0;
	width: auto;
	height: 48px;
	padding: 4px;
	border: 1px solid rgba(239, 232, 224, .12);
	border-radius: 999px;
	background: #3d3a32;
	box-shadow: 0 14px 36px rgba(61, 58, 50, .32);
	font-size: .68rem;
	letter-spacing: .14em;
	font-weight: 500;
	line-height: 1;
	backdrop-filter: blur(8px);
}
.calmu-lang--footer { display: none !important; }
.calmu-lang--float a,
.calmu-currency--float a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	height: 40px;
	padding: 0 14px;
	border-radius: 999px;
	color: rgba(239, 232, 224, .5);
	text-decoration: none;
	transition: background .25s ease, color .25s ease;
}
.calmu-currency--float a {
	min-width: 40px;
	padding: 0 10px;
	letter-spacing: .08em;
}
.calmu-lang--float a.is-active,
.calmu-currency--float a.is-active {
	background: #efe8e0;
	color: #3d3a32;
	font-weight: 600;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .12);
}
.calmu-lang--float a[lang="ar"] {
	letter-spacing: 0;
	font-family: var(--calmu-ar);
	font-size: .8rem;
	padding: 0 12px;
}
.calmu-lang--float span,
.calmu-currency--float span {
	display: none;
}

/* CURCY Design sidebar is the active currency UI — hide CalmU float currency. */
body.calmu-theme .calmu-currency--float {
	display: none !important;
}

/* Smaller CURCY currency flags (plugin sprite is 60×40 — scale to ~50%). */
body.calmu-theme .woocommerce-multi-currency .vi-flag-64 {
	transform: scale(0.5);
	transform-origin: center center;
}
body.calmu-theme .woocommerce-multi-currency.wmc-sidebar .wmc-currency-content-left {
	width: 34px !important;
	min-width: 34px !important;
	height: 26px !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background: transparent !important;
	background-color: transparent !important;
}
body.calmu-theme .woocommerce-multi-currency.wmc-sidebar .wmc-list-currencies .wmc-currency,
body.calmu-theme .woocommerce-multi-currency.wmc-sidebar .wmc-list-currencies .wmc-currency > a.wmc-currency-redirect,
body.calmu-theme .woocommerce-multi-currency.wmc-sidebar .wmc-list-currencies .wmc-currency.wmc-active,
body.calmu-theme .woocommerce-multi-currency.wmc-sidebar .wmc-list-currencies .wmc-currency:hover {
	height: 26px !important;
	min-height: 26px !important;
	line-height: 26px !important;
	background: transparent !important;
	background-color: transparent !important;
	box-shadow: none !important;
}
body.calmu-theme .woocommerce-multi-currency.wmc-sidebar .wmc-currency-content-right {
	font-size: 11px !important;
	line-height: 26px !important;
	color: #000000 !important;
}
body.calmu-theme .woocommerce-multi-currency.wmc-sidebar .wmc-list-currencies .wmc-currency .wmc-currency-content-right,
body.calmu-theme .woocommerce-multi-currency.wmc-sidebar .wmc-list-currencies .wmc-currency a,
body.calmu-theme .woocommerce-multi-currency.wmc-sidebar .wmc-list-currencies .wmc-currency span {
	color: #000000 !important;
}
body.calmu-theme .woocommerce-multi-currency.wmc-price-switcher .vi-flag-64 {
	margin: -10px 0;
}

.calmu-icon-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: 0;
	background: transparent;
	color: var(--calmu-ink);
	cursor: pointer;
}

.calmu-menu-toggle {
	display: none;
}

.calmu-burger,
.calmu-burger::before,
.calmu-burger::after {
	display: block;
	width: 18px;
	height: 1.5px;
	background: currentColor;
	position: relative;
}

.calmu-burger::before,
.calmu-burger::after {
	content: "";
	position: absolute;
	left: 0;
}

.calmu-burger::before { top: -6px; }
.calmu-burger::after { top: 6px; }

.calmu-drawer {
	position: fixed;
	inset: 0;
	z-index: 100;
	background: rgba(61, 58, 50, 0.35);
}

.calmu-drawer__panel {
	width: min(88vw, 360px);
	height: 100%;
	background: var(--calmu-cream);
	padding: 24px;
	overflow: auto;
}

html[dir="rtl"] .calmu-drawer__panel {
	margin-inline-start: auto;
}

.calmu-nav--mobile {
	flex-direction: column;
	margin-top: 24px;
	font-size: 16px;
}

.calmu-nav--mobile .calmu-sub {
	position: static;
	display: block;
	border: 0;
	box-shadow: none;
	background: transparent;
	padding-inline-start: 12px;
}

.calmu-hero {
	display: grid;
	grid-template-columns: 1.1fr 0.9fr;
	gap: 40px;
	align-items: center;
	max-width: 1200px;
	margin: 0 auto;
	padding: 72px 24px 56px;
}

.calmu-kicker {
	text-transform: uppercase;
	letter-spacing: 0.16em;
	font-size: 12px;
	color: var(--calmu-olive);
	margin-bottom: 12px;
}

.calmu-hero h1 {
	font-size: clamp(2.6rem, 6vw, 4.4rem);
	margin: 0 0 18px;
}

.calmu-lead {
	font-size: 1.05rem;
	max-width: 42rem;
	color: var(--calmu-brown);
}

.calmu-lead--narrow {
	margin-inline: auto;
	text-align: center;
}

.calmu-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 28px;
}

.calmu-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 13px 26px;
	background: var(--calmu-olive);
	color: var(--calmu-cream) !important;
	border-radius: 999px;
	font-size: 14px;
	letter-spacing: 0.04em;
}

.calmu-btn--ghost {
	background: transparent;
	color: var(--calmu-olive) !important;
	border: 1px solid var(--calmu-olive);
}

.calmu-hero__visual {
	background: linear-gradient(160deg, var(--calmu-oat), var(--calmu-sage));
	min-height: 420px;
	border-radius: 32px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 16px;
	color: var(--calmu-ink);
}

.calmu-hero__visual img {
	width: 120px;
	height: 120px;
}

.calmu-section {
	max-width: 1200px;
	margin: 0 auto;
	padding: 56px 24px;
}

.calmu-section h2,
.calmu-dual h2 {
	font-size: clamp(1.8rem, 4vw, 2.6rem);
	text-align: center;
	margin-bottom: 16px;
}

.calmu-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	margin-top: 36px;
}

.calmu-cards article {
	background: var(--calmu-white);
	padding: 28px;
	border-radius: 20px;
	border: 1px solid rgba(92, 87, 72, 0.08);
}

.calmu-cards h3 {
	font-family: var(--calmu-display);
	font-size: 1.4rem;
	margin: 0 0 10px;
}

.calmu-dual {
	display: grid;
	grid-template-columns: 1fr 1fr;
	max-width: 1200px;
	margin: 0 auto 24px;
}

.calmu-dual > div {
	padding: 56px 40px;
}

.calmu-dual > div:first-child {
	background: var(--calmu-oat);
}

.calmu-dual > div:last-child {
	background: #d7cfc0;
}

.calmu-dual h2 {
	text-align: start;
}

.calmu-section--why {
	text-align: center;
}

.calmu-section__head {
	display: flex;
	justify-content: space-between;
	align-items: end;
	gap: 16px;
	margin-bottom: 28px;
}

.calmu-section__head h2 {
	text-align: start;
	margin: 0 0 8px;
}

.calmu-products {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 22px;
}

.calmu-product-card {
	display: block;
	color: inherit;
	background: var(--calmu-white);
	border-radius: 20px;
	overflow: hidden;
	border: 1px solid rgba(92, 87, 72, 0.08);
}

.calmu-product-card__img {
	aspect-ratio: 3/4;
	background: linear-gradient(180deg, var(--calmu-oat), var(--calmu-sage));
	display: block;
	overflow: hidden;
	position: relative;
}

.calmu-product-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.calmu-product-card h3 {
	font-family: var(--calmu-sans);
	font-size: .92rem;
	font-weight: 500;
	letter-spacing: .04em;
	line-height: 1.35;
	text-transform: uppercase;
	margin: 12px 14px 4px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.calmu-home .calmu-product-card {
	--wd-price-fs: 13px;
	--wd-price-font-size: 13px;
}

.calmu-product-card__price {
	display: block !important;
	margin: 0 14px 14px !important;
	min-height: 18px;
	font-size: 0 !important;
	line-height: 0 !important;
	color: var(--calmu-brown);
}

.calmu-product-card__price::after {
	content: attr(data-price);
	display: inline;
	font-size: 13px;
	line-height: 1.3;
	font-weight: 500;
	letter-spacing: .02em;
	font-family: var(--calmu-sans);
	color: var(--calmu-brown);
	white-space: nowrap;
}

.calmu-product-card__price *,
.calmu-home .calmu-product-card .woocommerce-Price-amount,
.calmu-home .calmu-product-card .woocommerce-Price-amount.amount,
.calmu-home .calmu-product-card .woocommerce-Price-currencySymbol,
.calmu-home .calmu-product-card bdi {
	display: none !important;
	font-size: 0 !important;
	line-height: 0 !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

.calmu-close {
	background: var(--white);
	border-top: 1px solid var(--line);
	padding: 72px 0;
}

.calmu-close__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	align-items: end;
}

.calmu-close__kicker {
	margin: 0 0 10px;
	font-size: .72rem;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--calmu-olive);
	font-weight: 500;
}

.calmu-close h2 {
	font-family: var(--calmu-display);
	font-size: clamp(1.8rem, 3.4vw, 2.55rem);
	font-weight: 500;
	text-align: start;
	text-transform: none !important;
	letter-spacing: -0.02em;
	line-height: 1.15;
	margin: 0;
	color: var(--calmu-ink);
	max-width: 12em;
}

.calmu-close__copy {
	margin: 0 0 22px;
	max-width: 34rem;
	color: var(--ink-soft);
	font-size: 1.05rem;
	line-height: 1.65;
}

.calmu-close .btn {
	background: var(--calmu-olive);
	color: var(--calmu-cream) !important;
}

@media (max-width: 980px) {
	.calmu-close__grid {
		grid-template-columns: 1fr;
		gap: 22px;
		align-items: start;
	}
}

.calmu-footer {
	background: #EDE6DA;
	color: var(--calmu-ink);
	padding: 56px 0 0;
	font-size: 14px;
	line-height: 1.6;
}

.calmu-footer a {
	color: var(--calmu-ink);
	text-decoration: none;
}

.calmu-footer a:hover {
	color: var(--calmu-olive);
}

.calmu-footer p {
	margin: 0 0 .75em;
}

.calmu-footer__name {
	font-family: var(--calmu-display);
	font-size: clamp(1.85rem, 3vw, 2.35rem);
	font-weight: 500;
	letter-spacing: .02em;
	line-height: 1.05;
	color: var(--calmu-ink) !important;
	display: inline-block;
	margin-bottom: .2em;
}

.calmu-footer__grid {
	display: grid;
	grid-template-columns: 1.35fr .9fr .75fr 1.15fr;
	gap: 36px 32px;
	padding-bottom: 48px;
	align-items: start;
}

.calmu-footer__h {
	font-family: var(--calmu-sans);
	font-size: .68rem;
	letter-spacing: .18em;
	text-transform: uppercase;
	margin: 0 0 14px;
	color: var(--calmu-sage);
	font-weight: 500;
}

.calmu-footer__tagline {
	font-family: var(--calmu-display);
	font-size: 1.28rem;
	font-weight: 500;
	margin: 0 0 .7em;
	color: var(--calmu-ink);
	line-height: 1.25;
}

.calmu-footer__story,
.calmu-footer__meta {
	color: rgba(61, 58, 50, .72);
	font-size: .92rem;
	max-width: 36em;
}

.calmu-footer__meta {
	line-height: 1.85;
}

.calmu-footer__links {
	list-style: none;
	margin: 0;
	padding: 0;
}

.calmu-footer__links li {
	margin-bottom: .42rem;
}

.calmu-footer__news {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 4px;
	border-bottom: 1px solid rgba(61, 58, 50, .22);
	padding: 0 0 8px;
}

.calmu-footer__news input {
	flex: 1;
	min-width: 0;
	background: transparent;
	border: 0;
	color: var(--calmu-ink);
	font-family: inherit;
	font-size: .95rem;
	padding: 10px 0;
	outline: none;
	box-shadow: none;
}

.calmu-footer__news input::placeholder {
	color: rgba(61, 58, 50, .45);
}

.calmu-footer__news button {
	background: none;
	border: 0;
	color: var(--calmu-sage);
	font-family: inherit;
	font-size: .68rem;
	letter-spacing: .16em;
	text-transform: uppercase;
	font-weight: 500;
	cursor: pointer;
	padding: 8px 0 8px 8px;
	white-space: nowrap;
}

.calmu-footer__news button:hover {
	color: var(--calmu-olive);
}

.calmu-footer__bottom {
	border-top: 1px solid rgba(61, 58, 50, .12);
}

.calmu-footer__bottom-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	padding: 16px 0 22px;
	font-size: .78rem;
	color: rgba(61, 58, 50, .65);
	flex-wrap: wrap;
}

.calmu-footer__bottom-inner p {
	margin: 0;
}

.calmu-footer__bottom-note {
	font-family: var(--calmu-display);
	font-size: .95rem;
	color: rgba(61, 58, 50, .8);
}

@media (max-width: 980px) {
	.calmu-footer {
		padding-top: 40px;
	}
	.calmu-footer__grid {
		grid-template-columns: 1fr 1fr;
		gap: 28px 24px;
		padding-bottom: 32px;
	}
	.calmu-footer__brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 640px) {
	.calmu-footer__grid {
		grid-template-columns: 1fr;
		gap: 28px;
		padding-bottom: 28px;
	}
	.calmu-footer__brand {
		grid-column: auto;
	}
	.calmu-footer__bottom-inner {
		flex-direction: column;
		align-items: flex-start;
		gap: 6px;
		padding: 14px 0 24px;
	}
}

.calmu-page {
	max-width: none;
	width: 100%;
	margin: 0;
	padding: 8px 0 24px;
}

.calmu-draft {
	font-size: 13px;
	color: var(--calmu-brown);
	border-inline-start: 3px solid var(--calmu-sage);
	padding-inline-start: 12px;
}

.calmu-prose h2 {
	text-align: start;
	font-size: 1.6rem;
	margin-top: 2rem;
}

.calmu-table {
	width: 100%;
	border-collapse: collapse;
	margin: 20px 0;
	font-size: 15px;
}

.calmu-table th,
.calmu-table td {
	border-bottom: 1px solid rgba(92, 87, 72, 0.15);
	padding: 10px 8px;
	text-align: start;
}

.calmu-pdp {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	max-width: 1200px;
	margin: 24px auto 48px;
	padding: 0 24px;
}

.calmu-pdp > div {
	background: var(--calmu-cream);
	padding: 24px;
	border-radius: 16px;
}

.calmu-pdp h2 {
	font-size: 1.25rem;
	text-align: start;
	margin: 0 0 10px;
}

body.calmu-theme .woocommerce a.button,
body.calmu-theme .woocommerce button.button,
body.calmu-theme .single_add_to_cart_button {
	background: var(--calmu-olive) !important;
	color: var(--calmu-cream) !important;
	border-radius: 999px !important;
}

.calmu-hero-full {
	position: relative;
	min-height: min(88vh, 760px);
	background-size: cover;
	background-position: center 30%;
	display: flex;
	align-items: flex-end;
	padding: 80px 8vw 72px;
}

.calmu-hero-full__veil {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(61, 58, 50, 0.55) 0%, rgba(61, 58, 50, 0.12) 55%, transparent 100%);
}

html[dir="rtl"] .calmu-hero-full__veil {
	background: linear-gradient(270deg, rgba(61, 58, 50, 0.55) 0%, rgba(61, 58, 50, 0.12) 55%, transparent 100%);
}

.calmu-hero-full__copy {
	position: relative;
	z-index: 1;
	max-width: 640px;
	color: #f7f1e8;
}

.calmu-hero-full h1 {
	font-size: clamp(2.8rem, 6vw, 4.8rem);
	color: #f7f1e8;
	margin: 0 0 16px;
}

.calmu-kicker--light,
.calmu-lead--light {
	color: #f7f1e8;
}

.calmu-btn--ghost-light {
	background: transparent;
	color: #f7f1e8 !important;
	border: 1px solid #f7f1e8;
}

.calmu-row {
	max-width: 1280px;
	margin: 0 auto;
	padding: 48px 24px 12px;
}

.calmu-row__head {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: 18px;
}

.calmu-row__head h2 {
	font-size: clamp(1.7rem, 3vw, 2.3rem);
	margin: 0;
	text-align: start;
}

.calmu-scroll {
	display: flex;
	gap: 16px;
	overflow-x: auto;
	padding-bottom: 18px;
	scroll-snap-type: x mandatory;
}

.calmu-scroll .calmu-product-card {
	flex: 0 0 260px;
	scroll-snap-align: start;
}

.calmu-cats,
.calmu-needs,
.calmu-looks {
	max-width: 1280px;
	margin: 0 auto;
	padding: 40px 24px;
}

.calmu-cats h2,
.calmu-needs h2,
.calmu-looks h2 {
	text-align: start;
	margin-bottom: 20px;
}

.calmu-cats__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 14px;
}

.calmu-cat-tile--wide {
	grid-column: span 2;
	min-height: 340px;
}

.calmu-cat-tile {
	position: relative;
	display: block;
	min-height: 220px;
	border-radius: 18px;
	overflow: hidden;
	color: #f7f1e8 !important;
}

.calmu-cat-tile img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	inset: 0;
}

.calmu-cat-tile span {
	position: absolute;
	inset-inline-start: 18px;
	bottom: 16px;
	z-index: 1;
	font-family: var(--calmu-display);
	font-size: 1.6rem;
	text-shadow: 0 8px 24px rgba(0,0,0,.35);
}

.calmu-cat-tile::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(transparent 45%, rgba(61,58,50,.55));
}

.calmu-needs__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
}

.calmu-needs__grid a {
	position: relative;
	display: block;
	min-height: 280px;
	border-radius: 18px;
	overflow: hidden;
	color: #f7f1e8 !important;
}

.calmu-needs__grid img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	inset: 0;
}

.calmu-needs__grid span {
	position: absolute;
	bottom: 16px;
	inset-inline-start: 16px;
	z-index: 1;
	font-family: var(--calmu-display);
	font-size: 1.5rem;
}

.calmu-needs__grid a::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(transparent 40%, rgba(61,58,50,.5));
}

.calmu-looks__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}

.calmu-looks__grid a {
	min-height: 360px;
	border-radius: 18px;
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: flex-end;
	padding: 24px;
	color: #f7f1e8 !important;
	font-family: var(--calmu-display);
	font-size: 2rem;
	position: relative;
}

.calmu-looks__grid a::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(transparent 40%, rgba(61,58,50,.45));
	border-radius: 18px;
}

.calmu-looks__grid span {
	position: relative;
}

.calmu-story-strip {
	display: grid;
	grid-template-columns: 1fr 1fr;
	max-width: 1280px;
	margin: 24px auto 40px;
	align-items: center;
	gap: 32px;
	padding: 0 24px;
}

.calmu-story-strip img {
	width: 100%;
	height: 420px;
	object-fit: cover;
	border-radius: 20px;
}

.calmu-story-strip h2 {
	text-align: start;
}

.calmu-home {
	width: 100%;
	overflow: hidden;
}

.calmu-hero-full {
	width: 100%;
}

@media (max-width: 1024px) {
	.calmu-header__nav--desk {
		display: none;
	}
	.calmu-menu-toggle {
		display: inline-flex;
	}
	.calmu-header__bar {
		grid-template-columns: auto 1fr auto;
	}
	.calmu-hero,
	.calmu-cards,
	.calmu-products,
	.calmu-dual,
	.calmu-pdp,
	.calmu-cats__grid,
	.calmu-needs__grid,
	.calmu-looks__grid,
	.calmu-story-strip {
		grid-template-columns: 1fr;
	}
	.calmu-cat-tile--wide {
		grid-column: span 1;
		min-height: 240px;
	}
	.calmu-hero__visual,
	.calmu-hero-full {
		min-height: 520px;
	}
}

body.calmu-theme .wd-toolbar,
body.calmu-theme .wd-toolbar.wd-toolbar-label-show {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

body.calmu-theme.sticky-toolbar-on {
	padding-bottom: 0 !important;
}

body.calmu-theme #fkcart-floating-toggler,
body.calmu-theme .fkcart-floating-toggler,
body.calmu-theme .fkcart-toggler {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	width: 0 !important;
	height: 0 !important;
	overflow: hidden !important;
}

body.calmu-theme .fkcart-modal .fkcart-checkout-btn,
body.calmu-theme .fkcart-modal a.fkcart-checkout-wrap,
body.calmu-theme .fkcart-modal .fkcart-primary-button,
body.calmu-theme #fkcart-modal .button {
	background: #6f7a4e !important;
	color: #f7f1e8 !important;
	border-color: #6f7a4e !important;
}

body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce,
body.woocommerce-account .woocommerce,
body.woocommerce-order-received .woocommerce,
body.woocommerce-cart form.woocommerce-cart-form,
body.woocommerce-checkout form.checkout,
body.woocommerce-checkout .woocommerce-checkout,
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-checkout .col2-set,
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout .cart-content-wrapper,
body.woocommerce-cart .cart-content-wrapper {
	max-width: none !important;
	width: 100% !important;
}

body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row textarea,
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout .select2-container,
body.woocommerce-account .form-row input.input-text,
body.woocommerce-account .form-row textarea,
body.woocommerce-account .form-row select,
body.woocommerce-cart table.shop_table {
	width: 100% !important;
	max-width: none !important;
}

body.woocommerce-checkout .wd-checkout-steps,
body.woocommerce-cart .wd-checkout-steps {
	width: 100% !important;
	max-width: none !important;
}
