.aura-food-menu {
	--aura-font-heading: Georgia, "Times New Roman", serif;
	--aura-font-body: Arial, Helvetica, sans-serif;
	--aura-title-weight: 400;
	--aura-category-weight: 400;
	--aura-item-weight: 400;
	--aura-description-weight: 400;
	--aura-price-weight: 400;
	--aura-bg: #f8f4eb;
	--aura-title-color: #2f2924;
	--aura-item-color: #352f2a;
	--aura-description: #75685e;
	--aura-price-color: #1f1b18;
	--aura-accent: #9a572f;
	--aura-divider: #ded5c7;
	--aura-title-size: 58px;
	--aura-item-size: 22px;
	--aura-desc-size: 16px;
	--aura-price-size: 16px;
	--aura-content-width: 1240px;
	--aura-image-width: 42%;
	--aura-column-gap: 64px;
	--aura-padding: 56px;
	--aura-catalog-image-gap: 72px;
	--aura-image-ratio: 4 / 5;
	box-sizing: border-box;
	width: 100%;
	padding: var(--aura-padding) 24px;
	background: var(--aura-bg);
	color: var(--aura-item-color);
}

.aura-food-menu *,
.aura-food-menu *::before,
.aura-food-menu *::after {
	box-sizing: border-box;
}

.aura-food-menu__inner {
	display: flex;
	align-items: center;
	gap: var(--aura-column-gap);
	width: 100%;
	max-width: var(--aura-content-width);
	margin: 0 auto;
}

.aura-image-right .aura-food-menu__inner {
	flex-direction: row-reverse;
}

.aura-food-menu__media {
	flex: 0 0 var(--aura-image-width);
	align-self: center;
	overflow: hidden;
	aspect-ratio: var(--aura-image-ratio);
	margin: 0;
	background: #e8e0d5;
}

.aura-shape-arch .aura-food-menu__media {
	border-radius: 999px 999px 0 0;
}

.aura-shape-rounded .aura-food-menu__media {
	border-radius: 24px;
}

.aura-food-menu__image {
	display: block;
	width: 100%;
	height: 100% !important;
	max-width: none;
	object-fit: cover;
}

.aura-food-menu__content {
	flex: 1 1 auto;
	min-width: 0;
}

.aura-no-image .aura-food-menu__content {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
}

.aura-food-menu__header {
	margin: 0 0 25px;
}

.aura-food-menu__eyebrow {
	margin: 0 0 20px;
	color: var(--aura-accent);
	font-family: var(--aura-font-body);
	font-size: 12px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.35em;
}

.aura-food-menu__title {
	margin: 0;
	color: var(--aura-title-color);
	font-family: var(--aura-font-heading);
	font-size: clamp(38px, 4.3vw, var(--aura-title-size));
	font-weight: var(--aura-title-weight);
	line-height: 1.08;
	letter-spacing: -0.02em;
}

.aura-food-menu__intro {
	margin-top: 15px;
	color: var(--aura-description);
	font-family: var(--aura-font-body);
	font-size: var(--aura-desc-size);
	font-weight: var(--aura-description-weight);
	font-style: italic;
	line-height: 1.55;
}

.aura-food-menu__items {
	width: 100%;
}

.aura-food-menu__item {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 24px;
	padding: 25px 0;
	border-bottom: 1px solid var(--aura-divider);
}

.aura-food-menu__item:first-child {
	padding-top: 12px;
}

.aura-food-menu__item:last-child {
	border-bottom: 0;
}

.aura-food-menu__item-name {
	margin: 0;
	color: var(--aura-item-color);
	font-family: var(--aura-font-heading);
	font-size: var(--aura-item-size);
	font-weight: var(--aura-item-weight);
	line-height: 1.3;
}

.aura-food-menu__description {
	margin-top: 5px;
	color: var(--aura-description);
	font-family: var(--aura-font-body);
	font-size: var(--aura-desc-size);
	font-weight: var(--aura-description-weight);
	line-height: 1.55;
}

.aura-food-menu__prices {
	min-width: max-content;
	color: var(--aura-price-color);
	font-family: var(--aura-font-body);
	font-size: var(--aura-price-size);
	font-weight: var(--aura-price-weight);
	line-height: 1.65;
	text-align: right;
	font-variant-numeric: tabular-nums;
}

.aura-food-menu__price {
	display: flex;
	justify-content: flex-end;
	gap: 9px;
	white-space: nowrap;
}

.aura-food-menu__price-label:not(:empty)::before {
	content: "(";
}

.aura-food-menu__price-label:not(:empty)::after {
	content: ")";
}

.aura-layout-catalog .aura-food-menu__inner {
	display: block;
}

.aura-layout-catalog .aura-food-menu__content {
	width: 100%;
}

.aura-layout-catalog .aura-food-menu__header {
	margin-bottom: 34px;
}

.aura-layout-catalog .aura-food-menu__media--hero {
	width: 100%;
	max-width: none;
	aspect-ratio: 16 / 7;
	margin: 0 0 var(--aura-catalog-image-gap) !important;
}

.aura-layout-catalog .aura-food-menu__catalog {
	display: grid;
	grid-template-columns: repeat(var(--aura-catalog-columns, 3), minmax(0, 1fr));
	align-items: start;
	gap: clamp(54px, 6vw, 92px) clamp(28px, 4vw, 58px);
}

.aura-food-menu__category {
	min-width: 0;
}

.aura-food-menu__category-title {
	margin: 0 0 25px;
	color: var(--aura-title-color);
	font-family: var(--aura-font-heading);
	font-size: clamp(24px, 2.2vw, 32px);
	font-weight: var(--aura-category-weight);
	line-height: 1.2;
}

.aura-food-menu__category-note {
	margin: -10px 0 28px;
	color: var(--aura-description);
	font-family: var(--aura-font-body);
	font-size: var(--aura-desc-size);
	font-weight: var(--aura-description-weight);
	font-style: italic;
	line-height: 1.55;
}

.aura-food-menu__category--featured {
	display: grid;
	grid-column: 1 / -1;
	grid-template-columns: minmax(280px, 0.65fr) minmax(0, 1.35fr);
	align-items: start;
	gap: clamp(40px, 6vw, 90px);
}

.aura-food-menu__featured-media {
	overflow: hidden;
	aspect-ratio: 16 / 7;
	margin: 0;
	background: #e8e0d5;
}

.aura-shape-arch .aura-food-menu__featured-media {
	border-radius: 999px 999px 0 0;
}

.aura-shape-rounded .aura-food-menu__featured-media {
	border-radius: 24px;
}

.aura-food-menu__featured-image {
	display: block;
	width: 100%;
	height: 100% !important;
	max-width: none;
	object-fit: cover;
}

.aura-layout-catalog .aura-food-menu__item {
	gap: 16px;
	padding: 18px 0;
}

.aura-layout-catalog .aura-food-menu__item:first-child {
	padding-top: 0;
}

.aura-layout-catalog .aura-food-menu__item:last-child {
	border-bottom: 1px solid var(--aura-divider);
}

.aura-layout-catalog .aura-food-menu__item-name {
	font-size: clamp(17px, 1.5vw, var(--aura-item-size));
}

.aura-layout-catalog .aura-food-menu__description {
	font-size: clamp(13px, 1.1vw, var(--aura-desc-size));
}

.aura-layout-catalog .aura-food-menu__prices {
	font-size: clamp(13px, 1.1vw, var(--aura-price-size));
}

.aura-food-menu-notice {
	padding: 16px;
	border-left: 4px solid #9a572f;
	background: #fff;
}

@media (max-width: 900px) {
	.aura-food-menu {
		padding: clamp(36px, 7vw, var(--aura-padding)) 20px;
	}

	.aura-food-menu__inner,
	.aura-image-right .aura-food-menu__inner {
		flex-direction: column;
		align-items: stretch;
		gap: 38px;
	}

	.aura-food-menu__media {
		flex-basis: auto;
		width: min(100%, 560px);
		margin: 0 auto;
	}

	.aura-food-menu__content {
		width: 100%;
	}

	.aura-layout-catalog .aura-food-menu__inner {
		display: block;
	}

	.aura-layout-catalog .aura-food-menu__media--hero {
		width: 100%;
	}

	.aura-layout-catalog .aura-food-menu__catalog {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.aura-food-menu__category--featured {
		grid-template-columns: minmax(240px, 0.8fr) minmax(0, 1.2fr);
	}
}

@media (max-width: 560px) {
	.aura-food-menu {
		padding-right: 16px;
		padding-left: 16px;
	}

	.aura-food-menu__header {
		margin-bottom: 18px;
	}

	.aura-food-menu__eyebrow {
		margin-bottom: 14px;
	}

	.aura-food-menu__title {
		font-size: clamp(34px, 11vw, 48px);
	}

	.aura-food-menu__item {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 14px;
		padding: 20px 0;
	}

	.aura-food-menu__item-name {
		font-size: clamp(18px, 5.4vw, var(--aura-item-size));
	}

	.aura-food-menu__description {
		font-size: clamp(14px, 4vw, var(--aura-desc-size));
	}

	.aura-food-menu__prices {
		font-size: clamp(14px, 4vw, var(--aura-price-size));
	}

	.aura-layout-catalog .aura-food-menu__media--hero {
		aspect-ratio: 4 / 3;
		margin-bottom: var(--aura-catalog-image-gap) !important;
	}

	.aura-layout-catalog .aura-food-menu__catalog {
		grid-template-columns: 1fr;
		gap: 48px;
	}

	.aura-food-menu__category-title {
		margin-bottom: 20px;
	}

	.aura-food-menu__category--featured {
		grid-template-columns: 1fr;
		gap: 34px;
	}

	.aura-food-menu__featured-media {
		aspect-ratio: 4 / 3;
	}
}

@media (max-width: 380px) {
	.aura-food-menu__item {
		grid-template-columns: 1fr;
	}

	.aura-food-menu__prices {
		text-align: left;
	}

	.aura-food-menu__price {
		justify-content: flex-start;
	}
}
