:root {
	--ea-shadow: 0 18px 44px rgba(63, 68, 57, 0.12);
	--ea-shadow-strong: 0 28px 70px rgba(63, 68, 57, 0.18);
}

body {
	background:
		radial-gradient(circle at top left, rgba(234, 219, 210, 0.95), transparent 360px),
		radial-gradient(circle at top right, rgba(143, 146, 127, 0.42), transparent 420px),
		linear-gradient(180deg, #fbf6ee 0%, #f9f4ea 45%, #f4ece1 100%);
}

.wp-site-blocks {
	padding: 0;
}

.ea-top-bar {
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ea-sticky-header {
	position: sticky;
	top: 0;
	z-index: 50;
	backdrop-filter: blur(16px);
}

.ea-brand img,
.ea-rounded-image img {
	border-radius: inherit;
}

.ea-eyebrow {
	display: inline-flex;
	width: fit-content;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	box-shadow: var(--ea-shadow);
}

.ea-hero-title {
	line-height: 0.98 !important;
	letter-spacing: -0.055em;
}

.ea-soft-card {
	box-shadow: var(--ea-shadow);
}

.ea-strong-card {
	box-shadow: var(--ea-shadow-strong);
}

.ea-product-card {
	overflow: hidden;
	transition: transform 220ms ease, box-shadow 220ms ease;
}

.ea-product-card:hover {
	transform: translateY(-6px);
	box-shadow: var(--ea-shadow-strong);
}

.ea-product-card .wp-block-image img {
	aspect-ratio: 4 / 5;
	object-fit: cover;
	width: 100%;
}

.ea-badge {
	letter-spacing: 0.15em;
	text-transform: uppercase;
}

.ea-button-gold .wp-block-button__link {
	background: #b69b61 !important;
	color: #ffffff !important;
}

.ea-button-soft .wp-block-button__link {
	background: rgba(255, 255, 255, 0.7) !important;
	color: #6a5c3d !important;
	border: 1px solid rgba(201, 184, 146, 0.75);
}

.ea-week-panel {
	box-shadow: var(--ea-shadow-strong);
}

.ea-week-photo img {
	height: 100%;
	min-height: 260px;
	object-fit: cover;
}

.ea-price {
	width: fit-content;
}

.ea-header-nav a,
.ea-footer-nav a {
	text-decoration: none;
}

.woocommerce ul.products li.product {
	overflow: hidden;
	border: 1px solid #e5d8c4;
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.82);
	box-shadow: var(--ea-shadow);
	padding-bottom: 18px;
	text-align: center;
}

.woocommerce ul.products li.product a img {
	border-radius: 30px 30px 0 0;
	margin: 0 0 16px;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: Georgia, "Times New Roman", serif;
	font-size: 1.2rem;
	color: #3f4439;
}

.woocommerce span.onsale {
	background: #b69b61;
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	background: #8f927f;
	color: #ffffff;
	border-radius: 999px;
	font-weight: 850;
}

@media (max-width: 781px) {
	.ea-mobile-stack {
		flex-direction: column;
		align-items: stretch !important;
	}

	.ea-hero-title {
		font-size: clamp(2.75rem, 14vw, 4rem) !important;
	}

	.ea-product-card {
		border-radius: 28px !important;
	}

	.ea-week-photo img {
		min-height: 240px;
	}

	.ea-mobile-full .wp-block-button,
	.ea-mobile-full .wp-block-button__link {
		width: 100%;
	}
}


/* Separate editable desktop and mobile navigation blocks */
.ea-nav-wrap {
	gap: 18px;
}

.ea-mobile-nav {
	display: none !important;
}

.ea-desktop-nav {
	display: flex !important;
}

.ea-header-inner {
	gap: 20px;
}

.ea-header-nav .wp-block-navigation__responsive-container-open {
	border: 1px solid #e5d8c4;
	border-radius: 999px;
	padding: 10px;
	background: rgba(255, 255, 255, 0.65);
	color: #3f4439;
}

.ea-header-nav .wp-block-navigation__responsive-container.is-menu-open {
	background: #f9f4ea;
	color: #3f4439;
	padding: 28px;
}

.ea-header-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	gap: 18px;
	align-items: flex-start;
}

.ea-header-nav .wp-block-navigation__responsive-container.is-menu-open a {
	font-family: Georgia, "Times New Roman", serif;
	font-size: 2rem;
	line-height: 1.1;
	color: #3f4439;
	text-decoration: none;
}

@media (max-width: 781px) {
	.ea-header-inner {
		flex-direction: row !important;
		align-items: center !important;
	}

	.ea-desktop-nav {
		display: none !important;
	}

	.ea-mobile-nav {
		display: flex !important;
	}

	.ea-nav-wrap {
		margin-left: auto;
	}
}
