/* ==========================================================================
   Lakeshore — Home page, desktop (≥1200px)
   Exact values from "Lakeshore Website design_01.psd" (1440 canvas).
   Home sections only. Loaded after site-desktop.css.
   ========================================================================== */

@media (min-width: 1200px) {

	body.lk-design {
		--lk-s-eyebrow: 13.33px;
		--lk-s-body: 14.67px;
		--lk-lh-body: 25.33px;
		--lk-s-h2: 46.67px;
		--lk-btn-h: 42px;
	}

	/* ---- shared type ---------------------------------------------------- */
	body.lk-design .elementor-element.elementor-element-c821d62 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-14ccdb2 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-282fde8 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-cafde27 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-557f520 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-7ee4fe2 .elementor-heading-title {
		font-size: var(--lk-s-h2);
		line-height: 1.2;
	}

	body.lk-design .elementor-element.elementor-element-57941b8 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-9e489c9 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-8d6ffe8 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-9c74de7 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-f0ba595 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-679df6f .elementor-heading-title {
		font-family: var(--lk-sans);
		font-size: var(--lk-s-eyebrow);
		font-weight: 400;
		line-height: 16px;
		letter-spacing: 0;
		text-transform: uppercase;
	}
	body.lk-design .elementor-element.elementor-element-57941b8 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-679df6f .elementor-heading-title { color: #FFFFFF; }
	body.lk-design .elementor-element.elementor-element-9e489c9 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-8d6ffe8 .elementor-heading-title { color: #AB7763; }
	body.lk-design .elementor-element.elementor-element-9c74de7 .elementor-heading-title { color: #182331; }
	body.lk-design .elementor-element.elementor-element-f0ba595 .elementor-heading-title { color: #B16A6A; }

	body.lk-design .elementor-element.elementor-element-772fd73,
	body.lk-design .elementor-element.elementor-element-338489a,
	body.lk-design .elementor-element.elementor-element-5aa13db,
	body.lk-design .elementor-element.elementor-element-e029895,
	body.lk-design .elementor-element.elementor-element-77f3992,
	body.lk-design .elementor-element.elementor-element-772fd73 p,
	body.lk-design .elementor-element.elementor-element-338489a p,
	body.lk-design .elementor-element.elementor-element-5aa13db p,
	body.lk-design .elementor-element.elementor-element-e029895 p,
	body.lk-design .elementor-element.elementor-element-77f3992 p {
		font-family: var(--lk-sans);
		font-size: var(--lk-s-body);
		line-height: var(--lk-lh-body);
	}

	/* every CTA: Montserrat 13.33 caps, 42px tall, fixed widths per PSD */
	body.lk-design .elementor-element.elementor-element-b4b05e7 .elementor-button,
	body.lk-design .elementor-element.elementor-element-ace319e .elementor-button,
	body.lk-design .elementor-element.elementor-element-8993f02 .elementor-button,
	body.lk-design .elementor-element.elementor-element-b2d8c71 .elementor-button,
	body.lk-design .elementor-element.elementor-element-77d7778 .elementor-button,
	body.lk-design .elementor-element.elementor-element-d831509 .elementor-button,
	body.lk-design .elementor-element.elementor-element-7ebbd5f .elementor-button,
	body.lk-design .elementor-element.elementor-element-b387da2 .elementor-button,
	body.lk-design .elementor-element.elementor-element-e4c2fe4 .elementor-button {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		height: var(--lk-btn-h);
		min-width: 0;
		padding: 0 6px;
		font-family: var(--lk-sans);
		font-size: var(--lk-s-eyebrow);
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0;
		text-transform: uppercase;
		white-space: nowrap;
	}
	body.lk-design .elementor-element.elementor-element-b4b05e7 .elementor-button,
	body.lk-design .elementor-element.elementor-element-ace319e .elementor-button,
	body.lk-design .elementor-element.elementor-element-8993f02 .elementor-button { width: 144px; }
	body.lk-design .elementor-element.elementor-element-b2d8c71 .elementor-button { width: 252px; }
	body.lk-design .elementor-element.elementor-element-77d7778 .elementor-button,
	body.lk-design .elementor-element.elementor-element-7ebbd5f .elementor-button { width: 199px; }
	body.lk-design .elementor-element.elementor-element-d831509 .elementor-button { width: 256px; }
	body.lk-design .elementor-element.elementor-element-b387da2 .elementor-button { width: 122px; }
	body.lk-design .elementor-element.elementor-element-e4c2fe4 .elementor-button { width: 121px; }
	body.lk-design .elementor-element.elementor-element-7ebbd5f .elementor-button { letter-spacing: .32em; padding-left: calc(6px + .32em); }
	body.lk-design .elementor-element.elementor-element-d831509 .elementor-button {
		font-family: var(--lk-script);
		font-size: 20.28px;
		text-transform: none;
		letter-spacing: 0;
	}

	/* ---- hero -------------------------------------------------------------- */
	body.lk-design .elementor-element.elementor-element-66b617d {
		--min-height: 627px;
		min-height: 627px;
	}
	body.lk-design .elementor-element.elementor-element-0a901e5 {
		--min-height: 627px;
		min-height: 627px;
	}
	body.lk-design .elementor-element.elementor-element-ea0ef8f {
		justify-content: flex-start;
		padding-top: 115px;
	}
	body.lk-design .elementor-element.elementor-element-f7316ab .elementor-heading-title {
		font-size: 35.47px;
		line-height: 1.2;
	}
	body.lk-design .elementor-element.elementor-element-469facb {
		margin-top: 9px;
		margin-left: -3px;
		width: 520px;
	}
	body.lk-design .elementor-element.elementor-element-469facb .elementor-heading-title {
		font-size: 104px;
		line-height: 101.33px;
	}
	body.lk-design .elementor-element.elementor-element-bda8ea8 {
		margin-top: -6px;
		width: 430px;
		max-width: 430px;
	}
	body.lk-design .elementor-element.elementor-element-bda8ea8,
	body.lk-design .elementor-element.elementor-element-bda8ea8 p {
		font-size: 14.67px;
		line-height: 24px;
		color: #181818;
	}
	body.lk-design .elementor-element.elementor-element-743f7c1 {
		margin-top: 29px;
		gap: 9px;
		--gap: 9px;
	}
	body.lk-design .elementor-element.elementor-element-ace319e .elementor-button {
		border-color: #AD7966;
		color: #181818;
	}
	body.lk-design .elementor-element.elementor-element-0a901e5 .lk-play {
		width: 113px;
		height: 113px;
		left: 54.43%;
		top: calc(53.1% + 1.5px);
	}
	body.lk-design .elementor-element.elementor-element-bc488b8 .lk-play {
		width: 113px;
		height: 113px;
		left: 54.34%;
		top: 54.01%;
	}

	/* ---- about / brunch / reservation: text columns ------------------------ */
	body.lk-design .elementor-element.elementor-element-def8fe6,
	body.lk-design .elementor-element.elementor-element-45e6763,
	body.lk-design .elementor-element.elementor-element-28a8c3b,
	body.lk-design .elementor-element.elementor-element-4f0142b {
		align-self: stretch;
		justify-content: flex-start;
		gap: 0;
		--gap: 0px;
	}
	body.lk-design :where(.elementor-element-def8fe6 > .elementor-widget),
	body.lk-design :where(.elementor-element-45e6763 > .elementor-widget),
	body.lk-design :where(.elementor-element-28a8c3b > .elementor-widget),
	body.lk-design :where(.elementor-element-4f0142b > .elementor-widget) {
		margin: 0;
	}
	body.lk-design .elementor-element.elementor-element-def8fe6 { padding: 52px 0 0 98px; }
	body.lk-design .elementor-element.elementor-element-45e6763 { padding-top: 130px; }
	body.lk-design .elementor-element.elementor-element-28a8c3b { padding: 117px 0 0 130px; }
	body.lk-design .elementor-element.elementor-element-4f0142b { padding: 81px 0 0 146px; }

	/* eyebrow → heading → copy → button spacing (tuned against PSD ink positions) */
	body.lk-design .elementor-element.elementor-element-c821d62 { margin-top: 21px; }
	body.lk-design .elementor-element.elementor-element-14ccdb2 { margin-top: 17px; }
	body.lk-design .elementor-element.elementor-element-282fde8 { margin-top: 16px; }
	body.lk-design .elementor-element.elementor-element-cafde27 { margin-top: 23px; }
	body.lk-design .elementor-element.elementor-element-772fd73 { margin-top: -1px; }
	body.lk-design .elementor-element.elementor-element-338489a,
	body.lk-design .elementor-element.elementor-element-5aa13db { margin-top: -2px; }
	body.lk-design .elementor-element.elementor-element-77f3992 { margin-top: 10px; }
	body.lk-design .elementor-element.elementor-element-8993f02 { margin-top: 17px; }
	body.lk-design .elementor-element.elementor-element-b2d8c71 { margin-top: 43px; margin-left: -4px; }
	body.lk-design .elementor-element.elementor-element-77d7778 { margin-top: 49px; }
	body.lk-design .elementor-element.elementor-element-7ebbd5f { margin-top: 28px; margin-left: 4px; }
	body.lk-design .elementor-element.elementor-element-772fd73 p { margin-bottom: 26px; }
	body.lk-design .elementor-element.elementor-element-c821d62 { width: 450px; max-width: 450px; }

	body.lk-design .elementor-element.elementor-element-772fd73 { width: 590px; max-width: 590px; }
	body.lk-design .elementor-element.elementor-element-338489a { width: 352px; max-width: 352px; }
	body.lk-design .elementor-element.elementor-element-5aa13db { width: 402px; max-width: 402px; }
	body.lk-design .elementor-element.elementor-element-77f3992 { width: 556px; max-width: 556px; }
	body.lk-design .elementor-element.elementor-element-14ccdb2,
	body.lk-design .elementor-element.elementor-element-282fde8 { max-width: 420px; }
	body.lk-design .elementor-element.elementor-element-772fd73 p:last-child,
	body.lk-design .elementor-element.elementor-element-338489a p:last-child,
	body.lk-design .elementor-element.elementor-element-5aa13db p:last-child,
	body.lk-design .elementor-element.elementor-element-77f3992 p:last-child { margin-bottom: 0; }

	/* ---- lunch banner + menu cards ------------------------------------------ */
	body.lk-design .elementor-element.elementor-element-b1aadb3 {
		justify-content: flex-start;
		padding: 234px 0 0 51px;
		gap: 0;
		--gap: 0px;
	}
	body.lk-design :where(.elementor-element-b1aadb3 > .elementor-widget) {
		margin: 0;
	}
	body.lk-design .elementor-element.elementor-element-5a83e21 .elementor-heading-title {
		font-family: var(--lk-sans);
		font-size: 27.27px;
		font-weight: 400;
		line-height: 1.2;
		letter-spacing: 0;
		text-transform: uppercase;
		color: #000000;
	}
	body.lk-design .elementor-element.elementor-element-34c5be3 {
		margin-top: 4px;
		width: 316px;
		max-width: 316px;
	}
	body.lk-design .elementor-element.elementor-element-34c5be3,
	body.lk-design .elementor-element.elementor-element-34c5be3 p {
		font-family: var(--lk-sans);
		font-size: 15.78px;
		line-height: 27.26px;
		color: #181818;
		text-align: left;
		margin-bottom: 0;
	}
	body.lk-design .elementor-element.elementor-element-06e18fd {
		margin-top: 17px;
	}
	body.lk-design .elementor-element.elementor-element-06e18fd .elementor-button {
		width: 134px;
		height: 29px;
		padding: 0 0 0 .32em;
		justify-content: center;
		font-size: 13.33px;
		letter-spacing: .32em;
		color: #B16A6A;
	}
	body.lk-design .elementor-element.elementor-element-db8018b > .e-con {
		flex: 1 1 0;
		width: auto;
		--width: auto;
		--min-height: 363px;
		min-height: 363px;
		justify-content: flex-start;
		padding: 204px 20px 0;
		gap: 0;
		--gap: 0px;
	}
	/* PSD text insets differ per card */
	body.lk-design .elementor-element.elementor-element-78d4330 { padding-left: 46px; padding-right: 46px; }
	body.lk-design .elementor-element.elementor-element-086bc90 { padding-left: 42px; padding-right: 42px; }
	body.lk-design .elementor-element.elementor-element-462fd94 { padding-left: 40px; padding-right: 40px; }
	body.lk-design .elementor-element.elementor-element-971c902 { padding-left: 30px; padding-right: 30px; }
	body.lk-design :where(.elementor-element-db8018b > .e-con > .elementor-widget) {
		margin: 0;
	}
	body.lk-design .elementor-element.elementor-element-4931a22 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-27ba589 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-134c717 .elementor-heading-title,
	body.lk-design .elementor-element.elementor-element-d5f0469 .elementor-heading-title {
		font-family: var(--lk-sans);
		font-size: 19.02px;
		font-weight: 500;
		line-height: 1.2;
		letter-spacing: 0;
		text-transform: uppercase;
		color: #FFFFFF;
	}
	body.lk-design .elementor-element.elementor-element-9458a0c,
	body.lk-design .elementor-element.elementor-element-98cf9fb,
	body.lk-design .elementor-element.elementor-element-083aceb,
	body.lk-design .elementor-element.elementor-element-6b445e5 {
		margin-top: 8px;
	}
	body.lk-design .elementor-element.elementor-element-9458a0c,
	body.lk-design .elementor-element.elementor-element-98cf9fb,
	body.lk-design .elementor-element.elementor-element-083aceb,
	body.lk-design .elementor-element.elementor-element-6b445e5,
	body.lk-design .elementor-element.elementor-element-9458a0c p,
	body.lk-design .elementor-element.elementor-element-98cf9fb p,
	body.lk-design .elementor-element.elementor-element-083aceb p,
	body.lk-design .elementor-element.elementor-element-6b445e5 p {
		font-family: var(--lk-sans);
		font-size: 12.01px;
		line-height: 18.68px;
		color: #FFFFFF;
		margin-bottom: 0;
	}
	body.lk-design .elementor-element.elementor-element-f1cb856,
	body.lk-design .elementor-element.elementor-element-2a7d763,
	body.lk-design .elementor-element.elementor-element-3cc0f4a,
	body.lk-design .elementor-element.elementor-element-cafd037 {
		margin-top: auto;
		margin-bottom: 26px;
	}
	body.lk-design .elementor-element.elementor-element-f1cb856 .elementor-button,
	body.lk-design .elementor-element.elementor-element-2a7d763 .elementor-button,
	body.lk-design .elementor-element.elementor-element-3cc0f4a .elementor-button,
	body.lk-design .elementor-element.elementor-element-cafd037 .elementor-button {
		padding: 0 0 0 .32em;
		font-family: var(--lk-sans);
		font-size: 10.01px;
		line-height: 1;
		letter-spacing: .32em;
		color: #B16A6A;
		background: transparent;
	}

	body.lk-design .elementor-element.elementor-element-63480d4 {
		gap: 70px;
		--gap: 70px;
	}

	/* ---- open sky ---------------------------------------------------------- */
	body.lk-design .elementor-element.elementor-element-52616e1 {
		width: 749px;
		flex: 0 0 52.01%;
		padding: 0 0 0 59px;
		justify-content: flex-start;
		padding-top: 177px;
	}
	body.lk-design .elementor-element.elementor-element-bc488b8 {
		flex: 0 0 47.99%;
	}
	body.lk-design .elementor-element.elementor-element-557f520 { margin-top: 15px; }
	body.lk-design .elementor-element.elementor-element-e029895 { margin-top: 20px; max-width: 546px; }
	body.lk-design .elementor-element.elementor-element-e029895,
	body.lk-design .elementor-element.elementor-element-e029895 p { color: #182331; }
	body.lk-design .elementor-element.elementor-element-8713205 { margin-top: 24px; }

	/* ---- follow along ------------------------------------------------------ */
	body.lk-design .elementor-element.elementor-element-5f889cb {
		padding: 61px 70px 90px 70px;
	}
	body.lk-design .elementor-element.elementor-element-7ee4fe2 {
		margin: 4px 0 38px;
	}
	body.lk-design .elementor-element.elementor-element-679df6f,
	body.lk-design .elementor-element.elementor-element-7ee4fe2 {
		position: relative;
		left: -5px;
	}
	body.lk-design .elementor-element.elementor-element-839f614 .gallery {
		column-gap: 15.5px;
		row-gap: 17px;
	}
	body.lk-design .elementor-element.elementor-element-839f614 .gallery-item img {
		aspect-ratio: 422.3 / 321.5;
	}

}

/* --------------------------------------------------------------------------
   Hero on 1200–1439px screens: the video frame starts at 38.82% of the width,
   so the fixed 104px "GOOD COMPANY" (PSD size at 1440) ran into it. Scale the
   heading, left inset and copy with the viewport; ≥1440 stays PSD-exact.
   -------------------------------------------------------------------------- */
@media (min-width: 1200px) and (max-width: 1439px) {
	body.lk-design .elementor-element.elementor-element-ea0ef8f {
		padding-left: 4.93vw;
		--padding-left: 4.93vw;
	}
	body.lk-design .elementor-element.elementor-element-469facb {
		width: auto;
		max-width: none;
	}
	body.lk-design .elementor-element.elementor-element-469facb .elementor-heading-title {
		font-size: 6.9vw;
		line-height: .955;
	}
	body.lk-design .elementor-element.elementor-element-bda8ea8 {
		width: calc(38.82vw - 4.93vw - 28px);
		max-width: 430px;
	}
}

/* Instagram posts (instagram.php) are portrait (3:4 and 4:5): show them at 3:4 like Instagram's own grid, so text and
   tops aren't cropped. Applies at every width; the fallback photos keep the landscape tiles. */
body.lk-design .elementor-element.elementor-element-839f614 .lk-instagram .gallery-item img {
	aspect-ratio: 3 / 4;
}
