/* ==========================================================================
   Lakeshore — shared menu styles (Brunch, Lunch, Dinner, Happy Hour, Drinks).
   Widgets are tagged by site.js: .lk-m-label / .lk-m-note / .lk-m-item
   (.lk-m-name + .lk-m-price) / .lk-m-price / .lk-m-desc / .lk-m-rule.
   Type specs from the menu PSDs. Loaded before the page sheet.
   ========================================================================== */

body.lk-menu {
	--lk-m-ink: #181818;
	--lk-m-price: #B16B6B;
	--lk-m-terra: #AD7967;
	--lk-m-line: #182331;
}

/* ---- banner title (first heading on the page) --------------------------- */
body.lk-menu .lk-m-banner .elementor-heading-title {
	font-family: var(--lk-display);
	font-weight: 400;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #FFFFFF;
	text-align: center;
}

/* ---- menu section ------------------------------------------------------- */
body.lk-menu .lk-m-section :where(.elementor-widget) {
	margin: 0;
}
body.lk-menu .lk-m-section .elementor-widget-text-editor p {
	margin: 0;
}

/* note line, e.g. "SUNDAY: OPEN – 3 PM" */
body.lk-menu .lk-m-note,
body.lk-menu .lk-m-note p {
	font-family: var(--lk-sans);
	font-size: 17.26px;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #182331;
	text-align: center;
}

/* section label: dark box with white caps */
body.lk-menu .elementor-widget.lk-m-label {
	width: auto;
	max-width: none;
	align-self: flex-start;
}
body.lk-menu .lk-m-label p {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-width: 162px;
	height: 42px;
	padding: 0 22px;
	background: #172331;
	font-family: var(--lk-sans);
	font-size: 13.33px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #FDFDFD !important;
	white-space: nowrap;
}
body.lk-menu .lk-m-label p * {
	color: inherit !important;
}

/* item: Cerpa name + terracotta italic price */
body.lk-menu .lk-m-item,
body.lk-menu .lk-m-item p {
	font-family: var(--lk-display);
	font-size: 20px;
	font-weight: 400;
	line-height: 24px;
	letter-spacing: 0;
	color: var(--lk-m-ink);
	text-transform: none;
}
body.lk-menu .lk-m-item .lk-m-name {
	color: var(--lk-m-ink);
	font: inherit;
}
body.lk-menu .lk-m-price,
body.lk-menu .lk-m-price p {
	font-family: var(--lk-display);
	font-style: italic;
	font-size: 20px;
	font-weight: 400;
	line-height: 24px;
	color: var(--lk-m-price);
}
body.lk-menu .lk-m-item .lk-m-price {
	margin-left: .35em;
	white-space: nowrap;
}

/* description */
body.lk-menu .lk-m-desc,
body.lk-menu .lk-m-desc p {
	font-family: var(--lk-sans);
	font-size: 14.67px;
	font-weight: 400;
	line-height: 17px;
	letter-spacing: 0;
	color: var(--lk-m-ink);
	text-transform: none;
}
body.lk-menu .lk-m-desc em,
body.lk-menu .lk-m-desc i {
	font-style: italic;
}

/* rule between groups */
body.lk-menu .lk-m-rule {
	--divider-color: var(--lk-m-line);
	--divider-border-width: 1px;
}
body.lk-menu .lk-m-rule .elementor-divider {
	padding: 0;
}
body.lk-menu .lk-m-rule .elementor-divider-separator {
	border-top: 1px solid var(--lk-m-line);
	opacity: .55;
}

/* terracotta sub-heading inside the menu (e.g. "BRUNCH COCKTAILS") */
body.lk-menu .lk-m-section .elementor-widget-heading .elementor-heading-title {
	font-family: var(--lk-display);
	font-weight: 400;
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--lk-m-terra);
}

/* ==========================================================================
   Tablet + phone: columns stack, generous spacing
   ========================================================================== */
@media (max-width: 1199px) {
	body.lk-menu .lk-m-banner .elementor-heading-title {
		font-size: 72px;
		line-height: 1;
	}
	body.lk-menu .lk-m-item { margin-top: 18px; }
	body.lk-menu .lk-m-desc { margin-top: 6px; }
	body.lk-menu .lk-m-label + .lk-m-item { margin-top: 20px; }
	body.lk-menu .lk-m-rule { margin: 26px 0 !important; }
	body.lk-menu .lk-m-section .elementor-widget-heading .elementor-heading-title {
		font-size: 38px;
		line-height: 1.12;
	}
}
@media (max-width: 767px) {
	body.lk-menu .lk-m-banner .elementor-heading-title {
		font-size: 48px;
	}
	body.lk-menu .lk-m-note,
	body.lk-menu .lk-m-note p {
		font-size: 15px;
	}
	body.lk-menu .lk-m-item,
	body.lk-menu .lk-m-item p,
	body.lk-menu .lk-m-price,
	body.lk-menu .lk-m-price p {
		font-size: 19px;
	}
	body.lk-menu .lk-m-desc,
	body.lk-menu .lk-m-desc p {
		font-size: 14px;
		line-height: 19px;
	}
}

/* ---- rows with a separate price widget (Drinks) ------------------------- */
body.lk-menu .lk-m-row {
	flex-direction: row !important;
	flex-wrap: nowrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	padding: 0;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
	min-height: 0;
}
body.lk-menu .lk-m-row > .elementor-widget {
	width: auto;
	max-width: none;
	flex: 0 1 auto;
	margin: 0;
}
body.lk-menu .lk-m-row > .lk-m-price,
body.lk-menu .lk-m-row > .lk-m-price p {
	text-align: right;
	white-space: nowrap;
}
body.lk-menu .lk-m-row > .lk-m-price {
	flex: 0 0 auto;
}

/* column heading above prices, e.g. "GLASS / BOTTLE" */
body.lk-menu .lk-m-colhead,
body.lk-menu .lk-m-colhead p {
	font-family: var(--lk-display);
	font-size: 20px;
	font-weight: 400;
	line-height: 24px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--lk-m-terra) !important;
}
body.lk-menu .lk-m-colhead p * {
	color: inherit !important;
}

/* ---- banner photos per menu (from each menu PSD, 1440×506 crop) ---------- */
body.lk-page-brunch .elementor-element.elementor-element-bb31e74,
body.lk-page-brunch .elementor-element.elementor-element-bb31e74.e-lazyloaded {
	background-image: linear-gradient(rgba(24, 36, 50, .67), rgba(24, 36, 50, .67)), url("img/hero-brunch.jpg") !important;
	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
}
body.lk-page-lunch .elementor-element.elementor-element-bfb8c36,
body.lk-page-lunch .elementor-element.elementor-element-bfb8c36.e-lazyloaded {
	background-image: linear-gradient(rgba(24, 36, 50, .67), rgba(24, 36, 50, .67)), url("img/hero-lunch.jpg") !important;
	background-size: cover !important;
	background-position: center top !important;
	background-repeat: no-repeat !important;
}
body.lk-page-dinner .elementor-element.elementor-element-d90b919,
body.lk-page-dinner .elementor-element.elementor-element-d90b919.e-lazyloaded {
	background-image: linear-gradient(rgba(24, 36, 50, .67), rgba(24, 36, 50, .67)), url("img/hero-dinner.jpg") !important;
	background-size: cover !important;
	background-position: center top !important;
	background-repeat: no-repeat !important;
}
body.lk-page-happy-hour .elementor-element.elementor-element-f8990e4,
body.lk-page-happy-hour .elementor-element.elementor-element-f8990e4.e-lazyloaded {
	background-image: linear-gradient(rgba(24, 36, 50, .67), rgba(24, 36, 50, .67)), url("img/cocktail.jpg") !important;
	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
}
body.lk-page-drinks .elementor-element.elementor-element-217c2a6,
body.lk-page-drinks .elementor-element.elementor-element-217c2a6.e-lazyloaded {
	background-image: linear-gradient(rgba(24, 36, 50, .67), rgba(24, 36, 50, .67)), url("img/hero-drinks.jpg") !important;
	background-size: cover !important;
	background-position: center top !important;
	background-repeat: no-repeat !important;
}
body.lk-page-cocktails .elementor-element.elementor-element-d90b919,
body.lk-page-cocktails .elementor-element.elementor-element-d90b919.e-lazyloaded {
	background-image: linear-gradient(rgba(24, 36, 50, .67), rgba(24, 36, 50, .67)), url("img/cocktail.jpg") !important;
	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
}
