/* ==========================================================================
   Product landing (page-templates/landing.php) — Figma "Landing page za ocat" 501:2227:
   desktop 501:2250 (1512), mobile 524:4428 (390). Mobile-first; tablet is our adaptation;
   desktop values in rem = Figma px / 16.
   ========================================================================== */

/* ---------- Page: paper texture, minimal header ---------- */
body.is-landing {
	background:
		linear-gradient(rgb(247 243 233 / 0.39), rgb(247 243 233 / 0.39)),
		var(--landing-texture, none) left top / 189rem auto repeat,
		var(--color-bg);
}

.landing-header {
	display: flex;
	justify-content: center;
	padding: 1.25rem;
}

.landing-header__logo {
	display: block;
	width: 7.375rem;                            /* 118 */
	color: var(--color-heading);
}

.landing-header__logo img,
.landing-header__logo svg,
.landing-footer__logo img,
.landing-footer__logo svg {
	display: block;
	width: 100%;
	height: auto;
}

/* Shared: two overlapping circles (Figma "Decorative image" masks) */
.landing-circles {
	-webkit-mask: url("../../img/landing/mask-circles.svg") center / 100% 100% no-repeat;
	mask: url("../../img/landing/mask-circles.svg") center / 100% 100% no-repeat;
}

/* Shared: bottle crop — every bottle box in Figma shows the 1345px cutout at the same scale. */
.landing-crop {
	position: relative;
	aspect-ratio: 416 / 600.5;
	overflow: hidden;
}

.landing-crop img,
.landing-compare__bottle {
	position: absolute;
	left: -34.96%;
	top: -8.86%;
	width: 169.9%;
	max-width: none;
	height: auto;
}

/* Cherry outline button (Figma "CTA / Secondary" in cherry) */
.btn--cherry-outline {
	border-color: var(--color-cherry);
	color: var(--color-cherry);
	--btn-fill: var(--color-cherry);
}

.btn--cherry-outline:hover {
	background: var(--color-cherry);
	color: var(--color-bg);
}

html.motion .btn--cherry-outline:hover {
	background: transparent;
}

/* ---------- Hero ---------- */
.landing-hero {
	padding-block: 2.5rem 4rem;                 /* 40 / 64 */
}

.landing-hero .container {
	display: grid;
	gap: 1.75rem;                               /* 28 */
}

.landing-hero__title {
	color: var(--color-heading);
	font-size: 2.625rem;                        /* 42 */
	line-height: 1.11;
}

.landing-hero__line {
	display: block;
}

/* Brush underline under the *marked* words (Figma Line 1; per line when the words wrap). */
.landing-hero__mark {
	padding-bottom: 0.1em;
	background: url("../../img/landing/underline.svg") left bottom / 100% 0.065em no-repeat;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}

.landing-hero__row {
	display: grid;
	gap: 1.75rem;
}

.landing-hero__intro {
	display: contents;
}

.landing-hero__text {
	color: var(--color-body);
	font-size: 1.0625rem;                       /* 17 */
	line-height: 1.5;
}

.landing-hero__down {
	display: inline-flex;
	align-items: center;
	gap: 0.9rem;
	order: 2;
	justify-self: start;
	color: var(--color-body);
	font-size: 1rem;
	line-height: 1.4;
	text-decoration: none;
}

.landing-hero__arrow {
	display: grid;
	place-items: center;
	width: 2.8125rem;                           /* 45 */
	height: 2.8125rem;
	border: 1px solid currentColor;
	border-radius: 50%;
	transition: transform 0.4s ease;
}

.landing-hero__arrow .icon {
	width: 1.25rem;
	height: 1.25rem;
}

.landing-hero__down:hover .landing-hero__arrow {
	transform: translateY(4px);
}

.landing-hero__gallery {
	position: relative;
	overflow: hidden;
	height: 15.625rem;                          /* 250 */
	border-radius: 0.75rem;
	background: var(--color-body);
}

.landing-hero__gallery img:first-child {
	filter: brightness(0.71);                   /* Figma: 29% black over the first photo */
}

/* Crossfade (Figma motion 516:4650): 12 s loop, each photo in for 3 s. */
html.motion .landing-hero__gallery--4 img {
	animation: 12s linear infinite;
}

html.motion .landing-hero__gallery--4 img:nth-child(2) { opacity: 0; animation-name: landing-hero-2; }
html.motion .landing-hero__gallery--4 img:nth-child(3) { opacity: 0; animation-name: landing-hero-3; }
html.motion .landing-hero__gallery--4 img:nth-child(4) { opacity: 0; animation-name: landing-hero-4; }

.landing-hero__gallery--4 img:not(:first-child) {
	opacity: 0;
}

@keyframes landing-hero-2 {
	0%, 20% { opacity: 0; animation-timing-function: ease-in-out; }
	25%, 50% { opacity: 1; }
	50.083%, 100% { opacity: 0; }
}

@keyframes landing-hero-3 {
	0%, 45% { opacity: 0; animation-timing-function: ease-in-out; }
	50%, 75% { opacity: 1; }
	75.083%, 100% { opacity: 0; }
}

@keyframes landing-hero-4 {
	0%, 70% { opacity: 0; animation-timing-function: ease-in-out; }
	75% { opacity: 1; }
	95% { opacity: 1; animation-timing-function: ease-in-out; }
	100% { opacity: 0; }
}

/* ---------- Marquee ---------- */
.landing-marquee {
	display: grid;
	gap: 0.25rem;
	overflow: hidden;
	padding-block: 1.25rem;                     /* 20 */
	background: var(--color-cherry);
}

.landing-marquee__row {
	overflow: hidden;
	color: var(--color-bg-accent);
	font-family: var(--font-serif);
	font-size: 1.6625rem;                       /* 26.6 */
	font-style: italic;
	letter-spacing: 0.05em;
	line-height: 1.42;
	white-space: nowrap;
}

.landing-marquee__row--2 {
	text-align: right;
}

.landing-marquee__track {
	display: inline-flex;
	gap: 3em;
}

html.motion .landing-marquee__track {
	animation: landing-marquee 60s linear infinite;
}

html.motion .landing-marquee__row--2 .landing-marquee__track {
	animation-direction: reverse;
}

@keyframes landing-marquee {
	to { transform: translateX(-50%); }
}

/* ---------- Plantation ---------- */
.landing-plantation {
	position: relative;
	overflow: hidden;
	padding-block: 4.5rem;                      /* 72 */
}

.landing-plantation__drawing {
	position: absolute;
	inset: 10rem 0 auto;
	height: 25rem;
	opacity: 0.1;
	pointer-events: none;
}

.landing-plantation__drawing img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.landing-plantation__inner {
	position: relative;
	display: grid;
	gap: 1.25rem;
}

.landing-plantation__title {
	color: var(--color-heading);
	font-size: 2.25rem;                         /* 36 */
	line-height: 1.18;
}

.landing-plantation__visual {
	position: relative;
	display: flex;
	align-items: flex-end;
	height: 20.625rem;                          /* 330 */
}

.landing-plantation__product {
	position: relative;
	align-self: flex-start;
	width: 11.5rem;                             /* 184 */
	aspect-ratio: 416 / 600.5;
	overflow: hidden;
	flex-shrink: 0;
}

.landing-plantation__product img {
	position: absolute;
	left: -34.96%;
	top: -8.86%;
	width: 169.9%;
	max-width: none;
	height: auto;
}

.landing-plantation__photo {
	position: relative;
	overflow: hidden;
	width: 10.375rem;                           /* 166 */
	height: 9.25rem;                            /* 148 */
	border-radius: 0.75rem;
	background: #fff;
}

.landing-plantation__copy {
	display: grid;
	justify-items: start;
	gap: 3.125rem;                              /* 50 */
	margin-top: 1.875rem;
}

.landing-plantation__text {
	display: grid;
	gap: 1.5rem;
	color: var(--color-body);
	font-size: 1.0625rem;
	line-height: 1.5;
}

.landing-plantation__text .text-accent,
.landing-process__text .text-accent {
	color: var(--color-cherry);
	font-style: italic;
	font-weight: 600;
}

/* ---------- From cherry to vinegar ---------- */
.landing-process {
	position: relative;
	display: grid;
	align-items: center;
	min-height: 40rem;                          /* 640 */
	padding-block: 4rem;
	overflow: hidden;
	isolation: isolate;
}

.landing-process__media {
	position: absolute;
	inset: 0;
	z-index: -1;
}

.landing-process__media::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgb(28 19 19 / 0.67);
}

.landing-process__inner {
	display: grid;
	gap: 2rem;
}

.landing-process__title {
	color: var(--color-bg);
	font-size: 2.25rem;
	line-height: 1.18;
}

.landing-process__text {
	display: grid;
	gap: 2rem;
	color: var(--color-bg-accent);
	font-size: 1.0625rem;
	line-height: 1.5;
}

/* ---------- Taste quote + notes ---------- */
.landing-taste {
	position: relative;
	overflow: hidden;
	padding-block: 5.375rem 4.5rem;             /* 86 / 72 */
}

.landing-taste__photo {
	display: none;
}

.landing-taste__quote {
	display: grid;
	gap: 2rem;
	max-width: 63.875rem;
	margin-inline: auto;
	text-align: center;
}

.landing-taste__eyebrow {
	color: var(--color-cherry);
	font-family: var(--font-serif);
	font-size: 1.125rem;
	font-style: italic;
}

.landing-taste__text {
	color: #302d29;
	font-family: var(--font-serif);
	font-size: 1.6875rem;                       /* 27 */
	line-height: 1.3;
}

.landing-notes {
	display: grid;
	justify-items: center;
	margin: 4.75rem 0 0;                        /* 76 */
	padding: 0;
	list-style: none;
}

.landing-note {
	position: relative;
	display: grid;
	align-content: center;
	justify-items: center;
	gap: 0.5rem;
	width: 17.875rem;                           /* 286 */
	height: 17.875rem;
	margin-bottom: -1.375rem;                   /* circles overlap (22) */
	padding: 1.875rem 2rem 2.375rem;
	border: 1px solid rgb(158 59 51 / 0.3);
	border-radius: 50%;
	background: rgb(247 243 233 / 0.6);
	box-shadow: -0.61rem 1.68rem 2.6rem rgb(113 76 52 / 0.06);
	text-align: center;
}

.landing-note:last-child {
	margin-bottom: 0;
}

.landing-note__icon {
	color: var(--color-cherry);
}

.landing-note__icon svg {
	display: block;
	width: 2.875rem;                            /* 46 */
	height: 2.875rem;
}

.landing-note__title {
	color: var(--color-heading);
	font-family: var(--font-serif);
	font-size: 1.875rem;                        /* 30 */
	font-style: italic;
	line-height: 1.3;
}

.landing-note__text {
	color: var(--color-body);
	font-size: 1rem;
	line-height: 1.5;
}

/* ---------- Comparison ---------- */
.landing-compare {
	padding-block: 2rem 3.4375rem;              /* 32 / 55 */
	overflow-x: clip;                           /* bottle PNGs have wide transparent margins */
	scroll-margin-top: 1rem;
}

.landing-compare__title {
	margin-bottom: 2.5rem;
	color: var(--color-heading);
	font-size: 2.25rem;
	line-height: 1.18;
	text-align: center;
}

.landing-compare__products {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.5rem;
	margin: 0 auto;
	max-width: 54rem;
}

.landing-compare__product {
	display: grid;
	gap: 1.17rem;
	margin: 0;
}

.landing-compare__visual {
	position: relative;
	aspect-ratio: 416 / 600.5;
}

.landing-compare__photo {
	position: absolute;
	left: -16.5%;
	top: 3.95%;
	width: 76.9%;
	height: 70.3%;
}

.landing-compare__photo img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0.85;
}

.landing-compare__name {
	color: #3d3834;
	font-family: var(--font-serif);
	font-size: 1.125rem;
	line-height: 1.18;
	text-align: center;
}

.landing-table {
	margin: 2.5rem 0 0;
}

.landing-table__row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-areas: "label label" "a b";
	gap: 1.3rem 1.5rem;
	padding-block: 1.5rem;
	border-bottom: 1px solid rgb(158 59 51 / 0.3);
	text-align: center;
}

.landing-table__label {
	grid-area: label;
	color: var(--color-cherry);
	font-family: var(--font-serif);
	font-size: 1.125rem;
	text-transform: uppercase;
}

.landing-table__cell {
	margin: 0;
	color: var(--color-body);
	font-size: 1rem;
	line-height: 1.5;
}

.landing-table__cell--1 { grid-area: a; }
.landing-table__cell--2 { grid-area: b; }

.landing-compare__note {
	margin-top: 4.125rem;                       /* 66 */
	color: var(--color-body);
	font-family: var(--font-serif);
	font-size: 1.0625rem;
	line-height: 1.5;
	text-align: center;
}

.landing-compare__note a {
	color: var(--color-cherry);
	text-underline-offset: 0.15em;
}

/* ---------- Gift card ---------- */
.landing-gift {
	padding-bottom: 2rem;
}

.landing-gift__card {
	display: grid;
	overflow: hidden;
	border-radius: 1rem;
}

.landing-gift__body {
	display: grid;
	justify-items: start;
	align-content: center;
	gap: 2.375rem;                              /* 38 */
	padding: 2.5rem 1.75rem 2.875rem;
	background: var(--color-cherry);
}

.landing-gift__title {
	color: var(--color-bg);
	font-size: 1.875rem;                        /* 30 */
	line-height: 1.18;
}

.landing-gift__media {
	position: relative;
	height: 19.375rem;                          /* 310 */
	overflow: hidden;
	background: var(--color-bg);
}

.landing-gift__media .media-cover {
	filter: brightness(0.89);
}

.landing-gift__box {
	position: absolute;
	left: -1%;
	top: -14%;
	width: 102%;
	height: auto;
	max-width: none;
}

/* ---------- Store ---------- */
.landing-store {
	padding-block: 2.5rem 4.5rem;
}

.landing-store__inner {
	display: grid;
	gap: 2.5rem;
}

.landing-store__head {
	display: contents;
}

.landing-store__title {
	color: var(--color-heading);
	font-size: 2.25rem;
	line-height: 1.18;
}

.landing-store__all {
	order: 3;
	justify-self: start;
	padding-block: 0.5rem;
	border-bottom: 1px solid var(--color-cherry);
	color: var(--color-cherry);
	font-size: 1.0625rem;
	font-weight: 500;
	text-decoration: none;
}

.landing-store__products {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.landing-store__product {
	display: grid;
	justify-items: center;
	align-content: start;
	gap: 1.5rem;
	text-align: center;
}

.landing-store__image {
	position: relative;
	width: 9.125rem;                            /* 146 */
	aspect-ratio: 416 / 600.5;
	overflow: hidden;
}

.landing-store__image img {
	position: absolute;
	left: -34.96%;
	top: -8.86%;
	width: 169.9%;
	max-width: none;
	height: auto;
}

.landing-store__name {
	color: var(--color-heading);
	font-size: 1.3125rem;                       /* 21 */
	line-height: 1.3;
}

.landing-store__buy {
	width: 100%;
	border-color: var(--color-cherry);
	color: var(--color-cherry);
	font-size: 1rem;
	--btn-fill: var(--color-cherry);
}

.landing-store__buy:hover {
	color: var(--color-bg);
}

/* ---------- Tasting banner + FAQ (shared sections, landing look) ---------- */
.landing .cta-banner {
	min-height: 35rem;                          /* 560 */
}

.landing .faq--brand .faq__item {
	border: 1px solid rgb(58 51 46 / 0.23);
	background: rgb(247 243 233 / 0.44);
}

/* ---------- Footer ---------- */
.landing-footer {
	padding-block: 2rem;
	text-align: center;
}

.landing-footer .container {
	display: grid;
	justify-items: center;
	gap: 5.125rem;                              /* 82 */
}

.landing-footer__logo {
	display: block;
	width: 11.5rem;                             /* 184 */
	color: var(--color-heading);
}

.landing-footer .socials {
	display: grid;
	justify-items: center;
	gap: 1.5rem;
	margin-bottom: -3rem;
}

.landing-footer__bottom {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1.5rem;
	width: 100%;
	padding-top: 1.4375rem;
	color: var(--color-body);
	font-size: 0.875rem;                        /* 14 */
}

.landing-footer__legal {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1.25rem;
}

.landing-footer__legal a {
	display: inline-block;
	padding-block: 0.25rem;
	color: inherit;
	text-decoration: none;
}

.landing-footer__legal a:hover {
	text-decoration: underline;
}

.landing-footer__copy {
	padding-block: 0.25rem;
}

/* ==========================================================================
   Tablet (768–1199): our adaptation between the mobile and desktop frames
   ========================================================================== */
@media (min-width: 768px) {
	.landing-hero__title {
		font-size: 4.25rem;
	}

	.landing-hero__text {
		font-size: var(--fs-body);
	}

	.landing-hero__gallery {
		height: auto;
		aspect-ratio: 921 / 586;
		border-radius: 1.25rem;
	}

	.landing-marquee__row {
		font-size: 2.5rem;
	}

	.landing-plantation__inner {
		grid-template-columns: 1fr 1fr;
		column-gap: 2.5rem;
		align-items: start;
	}

	.landing-plantation__title {
		grid-column: 1 / -1;
		font-size: 3.25rem;
	}

	.landing-plantation__copy {
		margin-top: 0;
	}

	.landing-process__inner {
		grid-template-columns: 1fr 1.2fr;
		column-gap: 3rem;
	}

	.landing-process__title {
		font-size: 2.75rem;
	}

	.landing-taste__text {
		font-size: 2.25rem;
	}

	.landing-notes {
		display: flex;
		justify-content: center;
	}

	.landing-note {
		width: 15.5rem;
		height: 15.5rem;
		margin: 0 -1.375rem 0 0;
		padding: 1.25rem 1.5rem 1.75rem;
	}

	.landing-note:last-child {
		margin-right: 0;
	}

	.landing-note__title {
		font-size: 1.625rem;
	}

	.landing-note__text {
		font-size: 0.9375rem;
	}

	.landing-compare__title {
		font-size: 3.25rem;
	}

	.landing-compare__products {
		gap: 4rem;
	}

	.landing-compare__name {
		font-size: 1.75rem;
	}

	.landing-table__row {
		grid-template-columns: 1fr 10rem 1fr;
		grid-template-areas: "a label b";
		align-items: center;
		gap: 1.5rem;
		border-bottom-color: #dedacf;
		text-align: left;
	}

	.landing-table__cell--1 {
		text-align: right;
	}

	.landing-table__label {
		justify-self: center;
		padding: 0.6rem 1.1rem;
		border: 1px solid rgb(158 59 51 / 0.21);
		border-radius: var(--radius-pill);
		color: #954337;
		font-size: 1rem;
		font-weight: 500;
	}

	.landing-gift__card {
		grid-template-columns: 1fr 1fr;
	}

	.landing-gift__media {
		height: auto;
		min-height: 22rem;
	}

	.landing-gift__title {
		font-size: 2.5rem;
	}

	.landing-store__inner {
		grid-template-columns: 1fr auto;
		align-items: start;
	}

	.landing-store__head {
		display: grid;
		gap: 2rem;
		justify-items: start;
	}

	.landing-store__all {
		order: 0;
	}

	.landing-store__products {
		gap: 2rem;
	}

	.landing-store__image {
		width: 12rem;
	}

	.landing-store__buy {
		width: auto;
	}

	.landing-footer .socials {
		display: flex;
		gap: 2.75rem;
		margin-bottom: -2rem;
	}

	.landing-footer__bottom {
		justify-content: space-between;
	}
}

/* ==========================================================================
   Desktop (≥1200): Figma 501:2250 (rem = px / 16)
   ========================================================================== */
@media (min-width: 1200px) {
	.landing-header {
		padding: 2rem 0.2rem;                   /* 32 */
	}

	.landing-header__logo {
		width: 14.364rem;                       /* 229.8 */
	}

	/* Hero: 88 / 176, title 110, row: text left, gallery 921×586 right */
	.landing-hero {
		padding-block: 5.5rem 11rem;
	}

	.landing-hero .container {
		gap: 5.6875rem;                         /* 91 */
	}

	.landing-hero__title {
		max-width: 83.78rem;                    /* 1340 */
		font-size: 6.875rem;                    /* 110 */
		line-height: 0.9537;
	}

	.landing-hero__title .landing-hero__line + .landing-hero__line {
		line-height: 1.221;
	}

	.landing-hero__row {
		grid-template-columns: 26.1875rem 57.5625rem;   /* 419 / 921 */
		justify-content: space-between;
		align-items: end;
		gap: 2rem;
	}

	.landing-hero__intro {
		display: grid;
		justify-items: start;
		gap: 5.125rem;                          /* 82 */
	}

	.landing-hero__text {
		font-size: 1.5rem;
		line-height: 1.42;
	}

	.landing-hero__down {
		gap: 1.4375rem;
		font-size: 1.5rem;
	}

	.landing-hero__arrow {
		width: 4.5rem;                          /* 72 */
		height: 4.5rem;
	}

	.landing-hero__arrow .icon {
		width: 2rem;
		height: 2rem;
	}

	.landing-hero__gallery {
		height: 36.625rem;                      /* 586 */
		aspect-ratio: auto;
		border-radius: 1.4375rem;               /* 23 */
	}

	/* Marquee: 56px italic, 42px padding */
	.landing-marquee {
		gap: 0.5rem;
		padding-block: 2.625rem;
	}

	.landing-marquee__row {
		font-size: 3.5rem;
	}

	/* Plantation: title left, bottle + photo in the middle, copy right (section 1319 tall) */
	.landing-plantation {
		padding-block: 11rem 15.94rem;          /* 176 / 255 → section 1319 */
	}

	.landing-plantation__drawing {
		inset: 27.95rem 0 auto;                 /* top 447 */
		height: 62.93rem;                       /* 1007 */
	}

	.landing-plantation__inner {
		grid-template-columns: 1fr 24.51rem 32.25rem;  /* bottle 392, copy 516 */
		column-gap: 0;
	}

	.landing-plantation__title {
		grid-column: 1 / 3;          /* 612 wide, runs into the bottle column as in Figma */
		grid-row: 1;
		z-index: 1;
		max-width: 40.5rem;                     /* Figma box 612 + room for Lora rendering */
		margin-top: 7.75rem;                    /* top 300 */
		padding-left: 1.2rem;
		font-size: 5.6757rem;                   /* 90.8 */
		line-height: 1.15;
	}

	.landing-plantation__visual {
		grid-column: 2;
		grid-row: 1;
		display: block;
		height: 35.38rem;                       /* 566 */
	}

	.landing-plantation__product {
		width: 100%;
	}

	.landing-plantation__photo {
		position: absolute;
		left: -11.4rem;                         /* 365 − 547 */
		top: 29.28rem;                          /* 644 − 176 */
		width: 19.13rem;                        /* 306 */
		height: 14.81rem;                       /* 237 */
		border-radius: 1rem;
	}

	.landing-plantation__copy {
		grid-column: 3;
		grid-row: 1;
		gap: 3.5rem;                            /* 56 */
		margin-top: 20.75rem;                   /* top 508 */
	}

	.landing-plantation__text {
		gap: 1.7rem;
		color: var(--color-heading);
		font-size: 1.5rem;
		line-height: 1.42;
	}

	/* From cherry to vinegar: 608 tall band, 56px title left, text right */
	.landing-process {
		min-height: 38rem;                      /* 608 */
	}

	.landing-process__media::after {
		background: rgb(28 19 19 / 0.56);
	}

	.landing-process__inner {
		grid-template-columns: 35.2rem 37.23rem;   /* 563 / 596 */
		justify-content: space-between;
		align-items: start;
	}

	.landing-process__title {
		color: #fff;
		font-size: 3.5rem;
		line-height: 1.1;
	}

	.landing-process__text {
		gap: 2.1rem;
		color: #fff;
		font-size: 1.5rem;
		line-height: 1.42;
	}

	/* Taste: quote at 250, notes at 1038, section 1788 */
	.landing-taste {
		padding-block: 15.64rem 16.25rem;
	}

	.landing-taste__photo {
		position: absolute;
		display: block;
		pointer-events: none;
	}

	.landing-taste__photo img {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.landing-taste__photo--left {
		left: -5.34rem;                         /* −85 */
		top: 6.1rem;                            /* 97 */
		width: 20.2rem;                         /* 323 */
		height: 25rem;                          /* 400 */
	}

	.landing-taste__photo--right {
		right: -5.4rem;
		top: 35.16rem;                          /* 562 */
		width: 21.18rem;                        /* 339 */
		height: 25.84rem;                       /* 413 */
		transform: rotate(-6.1deg);
		filter: brightness(0.9);
	}

	.landing-taste__quote {
		gap: 3.75rem;                           /* 60 */
	}

	.landing-taste__eyebrow {
		color: #a33e30;
		font-size: 2rem;
		line-height: 1.03;
	}

	.landing-taste__text {
		font-size: 3.5rem;                      /* 56 */
		line-height: 1.196;
	}

	.landing-notes {
		margin-top: 18.3rem;                    /* notes at 1038 */
	}

	.landing-note {
		width: 30.42rem;                        /* 486.7 */
		height: 30.64rem;                       /* 490 */
		margin-right: -3.5625rem;               /* −57 */
		align-content: start;
		gap: 0.763rem;
		padding: 7.25rem 4.73rem 0;             /* 116 / 75.7 */
		border-width: 1.221px;
		background: transparent;
	}

	.landing-note__icon svg {
		width: 4.125rem;                        /* 66 */
		height: 4.125rem;
	}

	.landing-note__title {
		font-size: 2.9rem;                      /* 46.4 */
		line-height: 1.29;
	}

	.landing-note__text {
		font-size: 1.5rem;
		line-height: 1.37;
	}

	/* Comparison: title at 169, products at 468, table at 1301, note at 1978 (section 2079) */
	.landing-compare {
		padding-block: 10.58rem 4.5rem;
	}

	.landing-compare__title {
		max-width: 36.5rem;                     /* 584 */
		margin: 0 auto 5.6rem;
		font-size: 5.6757rem;                   /* 90.8 */
		line-height: 1.15;
	}

	.landing-compare__products {
		grid-template-columns: repeat(2, 26.25rem);   /* 420 */
		justify-content: center;
		gap: 15.5rem;                           /* 248 */
		max-width: none;
	}

	.landing-compare__visual {
		width: 26rem;                           /* 416 */
	}

	.landing-compare__product {
		gap: 3.0625rem;                         /* 49 */
		justify-items: center;
	}

	.landing-compare__name {
		font-size: 2.5rem;                      /* 40 */
		line-height: 1.175;
	}

	.landing-table {
		margin-top: 5.6rem;
		padding: 1.527rem 3.72rem 1.336rem 3.627rem;
	}

	.landing-table__row {
		grid-template-columns: 1fr 15rem 1fr;   /* label column 240 */
		gap: 3.625rem;                          /* 58 */
		padding-block: 2.125rem;                /* 34 */
	}

	.landing-table__cell {
		color: #3d3834;
		font-size: 1.718rem;                    /* 27.5 */
		line-height: 1.444;
	}

	.landing-table__label {
		padding: 1rem 1.75rem;                  /* 16 / 28 */
		font-size: 1.5rem;
		line-height: 1.08;
	}

	.landing-compare__note {
		margin-top: 7.75rem;
		color: var(--color-heading);
		font-size: 1.5rem;
		line-height: 1.21;
	}

	/* Gift: card 521 tall, cherry copy left, photo 589 right */
	.landing-gift {
		padding-block: 2.84rem;
	}

	.landing-gift__card {
		grid-template-columns: 1fr 36.8125rem;  /* 589 */
		height: 32.5625rem;                     /* 521 */
		border-radius: 1.5625rem;               /* 25 */
	}

	.landing-gift__body {
		gap: 3.8125rem;                         /* 61 */
		padding: 0 4.375rem;                    /* 70 */
	}

	.landing-gift__title {
		max-width: 43.94rem;                    /* 703 */
		color: #fff;
		font-size: 4rem;
		line-height: 1.25;
	}

	.landing-gift__media {
		height: 100%;
	}

	.landing-gift__box {
		left: -1.3%;
		top: -22.5%;
		width: 101.3%;
	}

	/* Store: 154 / 124, title + link left, two products right */
	.landing-store {
		padding-block: 9.625rem 7.75rem;
	}

	.landing-store__head {
		gap: 3rem;
	}

	.landing-store__title {
		max-width: 27.58rem;                    /* 441 */
		font-size: 3.5rem;
		letter-spacing: 0.04em;
		line-height: 1.29;
	}

	.landing-store__all {
		padding-block: 0.5625rem;
		font-size: 1.59rem;                     /* 25.5 */
	}

	.landing-store__products {
		grid-template-columns: repeat(2, 27.75rem);   /* 444 */
		gap: 0;
	}

	.landing-store__product {
		gap: 3rem;
		padding: 0.58rem 0.875rem 0.926rem;
	}

	.landing-store__image {
		width: 20.68rem;                        /* 331 */
	}

	.landing-store__name {
		max-width: 26.25rem;
		color: #3d3834;
		font-size: 2.5rem;
		line-height: 1.175;
	}

	.landing-store__buy {
		padding: 1.39rem 2.79rem;
		border-color: var(--color-heading);
		color: var(--color-heading);
		font-size: 1.59rem;
		font-weight: 500;
		--btn-fill: var(--color-heading);
	}

	.landing-store__buy:hover {
		background: var(--color-heading);
	}

	html.motion .landing-store__buy:hover {
		background: transparent;
	}

	/* Tasting banner 932 tall */
	.landing .cta-banner {
		min-height: 58.25rem;
	}

	/* Footer: logo 400, socials row, legal left + © right */
	.landing-footer {
		padding-block: 5rem 2.08rem;
	}

	.landing-footer .container {
		gap: 4.5625rem;                         /* 73 */
	}

	.landing-footer__logo {
		width: 25rem;                           /* 400 */
	}

	.landing-footer .socials {
		margin-bottom: 0;
	}

	.landing-footer__bottom {
		align-items: flex-end;
		font-size: 1.125rem;
	}

	.landing-footer__legal {
		gap: 2.08rem;
	}

	.landing-footer__copy {
		font-size: 1.5rem;
	}
}
