/* ==========================================================================
   Flagship product page
   ========================================================================== */

body.single-product {
	background: var(--lv-surface-page);
}

/* WooCommerce's generic `.woocommerce img { height: auto; }` otherwise makes
   the intrinsic header logo expand the entire navigation row. */
.woocommerce .lv-brand__logo {
	width: auto;
	height: 2.65rem;
}

.lv-icon-sprite {
	position: absolute;
	width: 0;
	height: 0;
	overflow: hidden;
}

.lv-product-page {
	padding: 1.85rem 0 5rem;
	background: var(--lv-surface-page);
	color: #29312e;
}

.lv-product-container {
	width: min(100% - (2 * clamp(1rem, 3.4vw, 3.5rem)), var(--lv-container));
	margin-inline: auto;
}

.lv-product-breadcrumb {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin-bottom: 1.75rem;
	color: #6b706a;
	font-size: 0.78rem;
}

.lv-product-breadcrumb a {
	color: inherit;
	text-decoration: none;
}

.lv-product-breadcrumb a:hover {
	color: var(--lv-color-ink);
}

.lv-product-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.17fr) minmax(25rem, 0.83fr);
	align-items: start;
	gap: clamp(2.75rem, 4.4vw, 5rem);
}

.lv-product-gallery {
	display: grid;
	grid-template-columns: 5.3rem minmax(0, 1fr);
	gap: 1.1rem;
	min-width: 0;
}

.lv-product-gallery__rail {
	display: grid;
	align-content: start;
	gap: 0.9rem;
}

.lv-product-gallery__thumbnail {
	width: 100%;
	aspect-ratio: 0.83;
	padding: 0;
	overflow: hidden;
	border: 1px solid transparent;
	border-radius: 0.45rem;
	background: var(--lv-surface-tint);
	cursor: pointer;
	transition: border-color var(--lv-transition), transform var(--lv-transition);
}

.lv-product-gallery__thumbnail[aria-current="true"] {
	border-color: #213c34;
}

.lv-product-gallery__thumbnail:hover {
	transform: translateY(-1px);
}

.lv-product-gallery__thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.lv-product-gallery__thumbnail:first-child img {
	object-position: 72% center;
}

.lv-product-gallery__stage {
	position: relative;
	min-width: 0;
	height: clamp(40rem, 53vw, 54rem);
	margin: 0;
	overflow: hidden;
	border-radius: 0.55rem;
	background: var(--lv-surface-tint);
}

.lv-product-gallery__stage > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 72% center;
	transition: opacity 160ms ease;
}

.lv-product-gallery__zoom {
	position: absolute;
	right: 1rem;
	bottom: 1rem;
	display: grid;
	width: 2.75rem;
	height: 2.75rem;
	place-items: center;
	border: 1px solid rgb(31 44 40 / 14%);
	border-radius: 50%;
	background: var(--lv-surface-card);
	color: var(--lv-color-ink);
	font-size: 1.55rem;
	line-height: 1;
	text-decoration: none;
	box-shadow: 0 0.4rem 1.2rem rgb(31 44 40 / 10%);
	backdrop-filter: blur(8px);
}

.lv-product-summary {
	position: sticky;
	top: calc(var(--lv-header-height) + 4.35rem);
	padding-top: 0.2rem;
}

.lv-product-badge {
	display: inline-flex;
	padding: 0.32rem 0.68rem 0.27rem;
	margin: 0 0 0.8rem;
	border-radius: 999px;
	background: var(--lv-surface-tint);
	color: #2b3731;
	font-size: 0.64rem;
	font-weight: 700;
	letter-spacing: 0.11em;
	line-height: 1;
	text-transform: uppercase;
}

.lv-product-summary h1 {
	max-width: 16ch;
	margin-bottom: 0.25rem;
	font-family: var(--lv-font-display);
	font-size: clamp(2.4rem, 3.15vw, 3.45rem);
	line-height: 0.98;
}

.lv-product-subtitle {
	margin-bottom: 0.85rem;
	font-family: var(--lv-font-display);
	font-size: clamp(1.2rem, 1.45vw, 1.45rem);
}

.lv-product-rating {
	display: flex;
	align-items: center;
	gap: 0.7rem;
	margin-bottom: 1.3rem;
	font-size: 0.76rem;
}

.lv-product-rating__stars,
.lv-product-reviews__score span {
	color: #b88a2f;
	font-size: 1.05rem;
	letter-spacing: 0.13em;
}

.lv-product-price {
	margin-bottom: 0.15rem;
	color: #18221f;
	font-family: var(--lv-font-display);
	font-size: 1.85rem;
}

.lv-product-price del {
	margin-right: 0.35rem;
	color: #777b73;
	font-size: 1rem;
	opacity: 0.72;
}

.lv-product-price ins {
	text-decoration: none;
}

.lv-product-tax {
	margin-bottom: 1.45rem;
	color: #696d68;
	font-size: 0.7rem;
	line-height: 1.4;
}

.lv-product-points {
	display: grid;
	gap: 0.75rem;
	padding: 0 0 1.45rem;
	margin: 0 0 1.4rem;
	border-bottom: 1px solid #d4d1c8;
	list-style: none;
}

.lv-product-points li {
	display: flex;
	align-items: center;
	gap: 0.72rem;
	font-size: 0.84rem;
}

.lv-product-points svg {
	width: 1.35rem;
	height: 1.35rem;
	padding: 0.18rem;
	border-radius: 50%;
	background: var(--lv-surface-tint);
	color: #56604d;
	flex: 0 0 auto;
}

.lv-product-form {
	margin: 0;
}

.lv-pack-selector {
	display: grid;
	gap: 0.75rem;
	padding: 0;
	margin: 0 0 1rem;
	border: 0;
}

.lv-pack-selector legend {
	float: left;
	width: 100%;
	margin-bottom: 0.65rem;
	color: #27322e;
	font-size: 0.69rem;
	font-weight: 700;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}

.lv-pack-option {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 0.9rem;
	min-height: 4.8rem;
	padding: 0.75rem 0.9rem;
	border: 1px solid #d7d3c9;
	border-radius: 0.35rem;
	background: var(--lv-surface-card);
	cursor: pointer;
	transition: border-color var(--lv-transition), background-color var(--lv-transition);
}

.lv-pack-option.is-selected {
	border-color: #143a31;
	background: var(--lv-surface-tint);
	box-shadow: inset 0 0 0 1px rgb(20 58 49 / 5%);
}

.lv-pack-option > input {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
}

.lv-pack-option__radio {
	display: block;
	width: 1.2rem;
	height: 1.2rem;
	border: 1px solid #92958e;
	border-radius: 50%;
	box-shadow: inset 0 0 0 0.28rem transparent;
}

.lv-pack-option input:checked + .lv-pack-option__radio {
	border-color: #173c33;
	background: var(--lv-surface-dark);
	box-shadow: inset 0 0 0 0.3rem #f7f4ed;
}

.lv-pack-option__main,
.lv-pack-option__price {
	display: grid;
}

.lv-pack-option__title {
	display: flex;
	align-items: center;
	gap: 0.8rem;
	font-size: 0.86rem;
	font-weight: 550;
}

.lv-pack-option__title small {
	padding: 0.2rem 0.45rem;
	border-radius: 0.2rem;
	background: var(--lv-surface-tint);
	color: #4b534c;
	font-size: 0.56rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.lv-pack-option__servings,
.lv-pack-option__price small,
.lv-pack-option__price del {
	color: #696e68;
	font-size: 0.66rem;
}

.lv-pack-option__price {
	justify-items: end;
	line-height: 1.4;
}

.lv-pack-option__price strong {
	color: #26302c;
	font-size: 0.86rem;
	font-weight: 550;
}

.lv-pack-option__price .woocommerce-Price-currencySymbol {
	margin-left: 0.12rem;
}

.lv-product-form__actions {
	display: grid;
	grid-template-columns: 6rem minmax(0, 1fr);
	gap: 0.75rem;
}

.lv-product-quantity {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	min-height: 3.45rem;
	border: 1px solid #d5d1c7;
	border-radius: 0.35rem;
	background: var(--lv-surface-card);
}

.lv-product-quantity button,
.lv-product-quantity input {
	width: 100%;
	min-width: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #29332f;
	text-align: center;
}

.lv-product-quantity button {
	cursor: pointer;
}

.lv-product-quantity input {
	-moz-appearance: textfield;
}

.lv-product-quantity input::-webkit-outer-spin-button,
.lv-product-quantity input::-webkit-inner-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

.woocommerce .lv-product-add.button.alt,
.lv-product-add {
	min-height: 3.45rem;
	border-color: #0d3a30;
	border-radius: 0.35rem;
	background: var(--lv-surface-dark);
	font-size: 0.74rem;
}

.woocommerce .lv-product-add.button.alt:hover {
	border-color: #194b40;
	background: #194b40;
}

.lv-product-delivery {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.85rem;
	margin-top: 1.25rem;
}

.lv-product-delivery > div {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 0.45rem;
	color: #555b56;
	font-size: 0.58rem;
	line-height: 1.3;
}

.lv-product-delivery svg {
	width: 1.55rem;
	height: 1.55rem;
	color: #415148;
}

.lv-product-delivery span {
	display: grid;
}

.lv-product-delivery strong {
	color: #333c37;
	font-size: 0.66rem;
	font-weight: 550;
}

.lv-product-benefits {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.5rem;
	margin-top: clamp(4rem, 7vw, 7rem);
	padding: 2rem 2.5rem;
	border-radius: 0.75rem;
	background: var(--lv-surface-tint);
}

.lv-product-benefits article {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 1rem;
}

.lv-product-benefits article > span {
	display: grid;
	width: 3.25rem;
	height: 3.25rem;
	place-items: center;
	border-radius: 50%;
	background: var(--lv-surface-accent);
	color: #5c6657;
	font-family: var(--lv-font-display);
	font-size: 1.9rem;
}

.lv-product-benefits svg {
	width: 1.65rem;
	height: 1.65rem;
}

.lv-product-benefits h2 {
	margin-bottom: 0.18rem;
	font-family: var(--lv-font-display);
	font-size: 1rem;
	line-height: 1.2;
}

.lv-product-benefits p {
	margin: 0;
	color: #686d67;
	font-size: 0.65rem;
	line-height: 1.45;
}

.lv-product-details {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(24rem, 0.9fr);
	gap: 4rem;
	margin-top: 4.5rem;
}

.lv-product-tabs {
	min-width: 0;
}

.lv-product-tabs__list {
	display: flex;
	gap: 2rem;
	overflow-x: auto;
	border-bottom: 1px solid #d5d1c8;
	scrollbar-width: none;
}

.lv-product-tabs__list button {
	position: relative;
	padding: 0 0 0.95rem;
	border: 0;
	background: transparent;
	color: #3c433f;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.105em;
	text-transform: uppercase;
	white-space: nowrap;
	cursor: pointer;
}

.lv-product-tabs__list button[aria-selected="true"]::after {
	position: absolute;
	right: 0;
	bottom: -1px;
	left: 0;
	height: 2px;
	background: #1c3e35;
	content: "";
}

.lv-product-tabs__panel {
	padding: 2.4rem 0 0;
	font-size: 1rem;
	line-height: 1.7;
}

.lv-product-tabs__panel[hidden] {
	display: none;
}

.lv-product-tabs__panel > p:first-child {
	max-width: 60ch;
}

.lv-tab-intro {
	max-width: 42rem;
}

.lv-tab-intro .lv-eyebrow {
	margin-bottom: 0.45rem;
	font-size: 0.68rem;
}

.lv-tab-intro h2 {
	max-width: 21ch;
	margin-bottom: 0.85rem;
	font-family: var(--lv-font-display);
	font-size: clamp(1.7rem, 2.4vw, 2.25rem);
	line-height: 1.05;
}

.lv-tab-intro p {
	max-width: 64ch;
	margin-bottom: 0.8rem;
}

.lv-description-facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.7rem;
	margin-top: 1.5rem;
}

.lv-description-facts > div {
	display: grid;
	align-content: center;
	min-height: 5rem;
	padding: 0.85rem 1rem;
	border: 1px solid #d4d0c6;
	border-radius: 0.45rem;
	background: var(--lv-surface-card);
}

.lv-description-facts strong {
	color: #203a32;
	font-family: var(--lv-font-display);
	font-size: 1.35rem;
	font-weight: 500;
	line-height: 1;
}

.lv-description-facts span {
	margin-top: 0.28rem;
	color: #697069;
	font-size: 0.7rem;
	line-height: 1.35;
}

.lv-product-tabs__panel ul {
	display: grid;
	gap: 0.8rem;
	padding: 0;
	margin: 1.35rem 0 0;
	list-style: none;
}

.lv-product-tabs__panel li {
	position: relative;
	padding-left: 1.8rem;
}

.lv-product-tabs__panel li::before {
	position: absolute;
	top: 0.18rem;
	left: 0;
	color: #68745e;
	content: "✓";
}

.lv-description-list {
	margin-top: 1.5rem !important;
}

.lv-preparation-steps {
	display: grid;
	gap: 0.85rem;
	padding: 0;
	margin: 1.6rem 0 0;
	list-style: none;
	counter-reset: lv-step;
}

.lv-preparation-steps li {
	display: grid;
	grid-template-columns: 2.3rem 1fr;
	align-items: start;
	gap: 0.85rem;
	padding: 0.95rem 1rem;
	border: 1px solid #d4d0c6;
	border-radius: 0.45rem;
	background: var(--lv-surface-card);
	counter-increment: lv-step;
}

.lv-preparation-steps li::before {
	position: static;
	display: grid;
	width: 2.2rem;
	height: 2.2rem;
	place-items: center;
	border-radius: 50%;
	background: var(--lv-surface-tint);
	color: #30453d;
	font-size: 0.78rem;
	font-weight: 700;
	content: counter(lv-step);
}

.lv-preparation-steps li > span {
	display: grid;
	color: #656b65;
	font-size: 0.88rem;
	line-height: 1.5;
}

.lv-preparation-steps strong {
	margin-bottom: 0.12rem;
	color: #2b3531;
	font-size: 0.92rem;
}

.lv-preparation-options {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.8rem;
	margin-top: 1.2rem;
}

.lv-preparation-options article {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: start;
	gap: 0.75rem;
	padding: 1rem;
	border-radius: 0.45rem;
	background: var(--lv-surface-tint);
}

.lv-preparation-options article > svg,
.lv-preparation-options article > span {
	display: grid;
	width: 1.8rem;
	height: 1.8rem;
	place-items: center;
	color: #45594f;
	font-size: 1.15rem;
}

.lv-preparation-options h3 {
	margin-bottom: 0.2rem;
	font-family: var(--lv-font-display);
	font-size: 1rem;
}

.lv-preparation-options p {
	margin: 0;
	color: #636a63;
	font-size: 0.76rem;
	line-height: 1.45;
}

.lv-product-note {
	position: relative;
	margin-top: 1.2rem;
	padding: 0.85rem 1rem 0.85rem 2.8rem;
	border-left: 3px solid #738067;
	border-radius: 0.25rem;
	background: var(--lv-surface-card);
	color: #535b55;
	font-size: 0.8rem;
	line-height: 1.5;
}

.lv-product-note::before {
	position: absolute;
	top: 0.82rem;
	left: 1rem;
	color: #68755f;
	content: "i";
	font-family: Georgia, serif;
	font-size: 1rem;
	font-style: italic;
	font-weight: 700;
}

.lv-faq-list {
	margin-top: 1.5rem;
	border-top: 1px solid #d4d0c6;
}

.lv-faq-list details {
	border-bottom: 1px solid #d4d0c6;
}

.lv-faq-list summary {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 1rem;
	padding: 1rem 0;
	color: #27332e;
	font-weight: 620;
	line-height: 1.35;
	cursor: pointer;
	list-style: none;
}

.lv-faq-list summary::-webkit-details-marker {
	display: none;
}

.lv-faq-list summary span {
	position: relative;
	width: 1.5rem;
	height: 1.5rem;
	border: 1px solid #bfc3b7;
	border-radius: 50%;
	flex: 0 0 auto;
}

.lv-faq-list summary span::before,
.lv-faq-list summary span::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0.55rem;
	height: 1px;
	background: #45564e;
	content: "";
	transform: translate(-50%, -50%);
}

.lv-faq-list summary span::after {
	transform: translate(-50%, -50%) rotate(90deg);
	transition: transform var(--lv-transition);
}

.lv-faq-list details[open] summary span::after {
	transform: translate(-50%, -50%) rotate(0);
}

.lv-faq-list details > p {
	max-width: 62ch;
	padding: 0 2.5rem 1rem 0;
	margin: 0;
	color: #606760;
	font-size: 0.88rem;
	line-height: 1.65;
}

.lv-product-allergen {
	display: inline-flex;
	gap: 0.35rem;
	padding: 0.55rem 0.8rem;
	border-radius: 0.3rem;
	background: var(--lv-surface-tint);
	color: #39433e;
	font-size: 0.9rem;
}

.lv-nutrition {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	margin-top: 1.8rem;
	overflow: hidden;
	border: 1px solid #d2cec3;
	border-radius: 0.65rem;
	background: var(--lv-surface-card);
	box-shadow: 0 0.7rem 2rem rgb(31 44 40 / 4%);
}

.lv-nutrition__heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.3rem 1.4rem 1.1rem;
	border-bottom: 1px solid #d2cec3;
	background: var(--lv-surface-tint);
}

.lv-nutrition__heading .lv-eyebrow {
	margin-bottom: 0.2rem;
	font-size: 0.66rem;
}

.lv-nutrition__heading h3 {
	margin: 0;
	font-family: var(--lv-font-display);
	font-size: 1.45rem;
}

.lv-nutrition__heading > span {
	padding: 0.28rem 0.55rem;
	border-radius: 999px;
	background: var(--lv-surface-card);
	color: #56605a;
	font-size: 0.72rem;
	font-weight: 650;
	white-space: nowrap;
}

.lv-nutrition__scroll {
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
}

.lv-nutrition-table {
	width: 100%;
	min-width: 100%;
	border: 0;
	border-collapse: collapse;
	table-layout: fixed;
	background: transparent;
	font-size: 0.86rem;
	line-height: 1.35;
}

.lv-nutrition-table th,
.lv-nutrition-table td {
	padding: 0.78rem 1rem;
	border: 0;
	border-bottom: 1px solid rgb(31 44 40 / 9%);
	text-align: right;
}

.lv-nutrition-table th:first-child,
.lv-nutrition-table td:first-child {
	width: 42%;
	text-align: left;
}

.lv-nutrition-table thead th {
	background: var(--lv-surface-dark);
	color: #fff;
	font-size: 0.7rem;
	font-weight: 650;
	letter-spacing: 0.055em;
	text-transform: uppercase;
}

.lv-nutrition-table tbody th {
	color: #313a36;
	font-weight: 600;
}

.lv-nutrition-table tbody tr:nth-child(even) {
	background: var(--lv-surface-tint);
}

.lv-nutrition-table tbody tr:last-child th,
.lv-nutrition-table tbody tr:last-child td {
	border-bottom: 0;
}

.lv-nutrition-table__subrow th {
	padding-left: 1.8rem;
	color: #687069 !important;
	font-weight: 450 !important;
}

.lv-nutrition-table__vitamin {
	background: var(--lv-surface-accent) !important;
}

.lv-nutrition-table small {
	display: block;
	color: #6e756f;
	font-size: 0.68rem;
}

.lv-product-inside {
	padding: 1.8rem 2.2rem;
	border-radius: 0.55rem;
	background: var(--lv-surface-tint);
}

.lv-product-inside > h2 {
	margin-bottom: 1.2rem;
	font-family: var(--lv-font-display);
	font-size: 1.35rem;
}

.lv-product-inside article {
	display: grid;
	grid-template-columns: 6.5rem 1fr;
	align-items: center;
	gap: 1.2rem;
	min-height: 6.5rem;
}

.lv-product-inside article + article {
	border-top: 1px solid rgb(31 44 40 / 8%);
}

.lv-product-inside img {
	width: 6.5rem;
	height: 5.2rem;
	object-fit: contain;
	mix-blend-mode: multiply;
}

.lv-product-inside h3 {
	margin-bottom: 0.2rem;
	font-family: var(--lv-font-display);
	font-size: 0.95rem;
}

.lv-product-inside p {
	margin: 0;
	color: #61665f;
	font-size: 0.68rem;
	line-height: 1.45;
}

.lv-product-reviews {
	display: grid;
	grid-template-columns: 0.7fr 1.3fr;
	align-items: center;
	gap: 5rem;
	margin-top: 4rem;
	padding: 2.2rem 1rem;
	border-top: 1px solid #d5d1c8;
}

.lv-product-reviews .lv-eyebrow {
	margin-bottom: 0.4rem;
}

.lv-product-reviews h2 {
	margin-bottom: 0.6rem;
	font-family: var(--lv-font-display);
	font-size: 1.9rem;
}

.lv-product-reviews p {
	margin-bottom: 0.2rem;
	color: #646a64;
	font-size: 0.78rem;
}

.lv-product-reviews__score {
	color: #29332f !important;
}

.lv-product-reviews__empty {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	gap: 1.2rem;
	padding: 1.6rem 1.8rem;
	border: 1px solid #d9d5cc;
	border-radius: 0.55rem;
	background: var(--lv-surface-card);
}

.lv-product-reviews__empty svg {
	width: 2.4rem;
	height: 2.4rem;
	color: #5d6a5d;
}

.lv-product-reviews__empty h3 {
	margin-bottom: 0.25rem;
	font-family: var(--lv-font-display);
	font-size: 1.1rem;
}

.lv-product-reviews__empty p {
	margin: 0;
}

@media (max-width: 1120px) {
	.lv-product-hero {
		grid-template-columns: minmax(0, 1fr) minmax(22rem, 0.86fr);
		gap: 2rem;
	}

	.lv-product-gallery {
		grid-template-columns: 4.5rem minmax(0, 1fr);
	}

	.lv-product-gallery__stage {
		height: 43rem;
	}

	.lv-product-benefits {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.lv-product-details {
		gap: 2rem;
	}
}

@media (max-width: 860px) {
	.lv-product-page {
		padding-top: 1rem;
	}

	.lv-product-hero {
		grid-template-columns: 1fr;
	}

	.lv-product-gallery {
		grid-template-columns: 1fr;
	}

	.lv-product-gallery__stage {
		height: min(78rem, 115vw);
		grid-row: 1;
	}

	.lv-product-gallery__rail {
		display: flex;
		grid-row: 2;
		gap: 0.7rem;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
	}

	.lv-product-gallery__thumbnail {
		width: 4.5rem;
		flex: 0 0 4.5rem;
		scroll-snap-align: start;
	}

	.lv-product-summary {
		position: static;
		padding-top: 1rem;
	}

	.lv-product-summary h1 {
		max-width: none;
	}

	.lv-product-benefits,
	.lv-product-details,
	.lv-product-reviews {
		grid-template-columns: 1fr;
	}

	.lv-product-details {
		gap: 3rem;
	}
}

@media (max-width: 560px) {
	.lv-product-container {
		width: min(100% - 2rem, var(--lv-container));
	}

	.lv-product-breadcrumb {
		gap: 0.45rem;
		margin-bottom: 1rem;
		overflow: hidden;
		font-size: 0.68rem;
		white-space: nowrap;
	}

	.lv-product-breadcrumb span:last-child {
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.lv-product-gallery__stage {
		height: 128vw;
		max-height: 41rem;
	}

	.lv-product-gallery__stage > img {
		object-position: 71% center;
	}

	.lv-product-summary h1 {
		font-size: 2.25rem;
	}

	.lv-product-subtitle {
		font-size: 1.2rem;
	}

	.lv-pack-option {
		gap: 0.65rem;
		padding-inline: 0.7rem;
	}

	.lv-pack-option__title {
		gap: 0.4rem;
	}

	.lv-pack-option__title small {
		font-size: 0.49rem;
	}

	.lv-product-form__actions {
		grid-template-columns: 5.2rem minmax(0, 1fr);
	}

	.lv-product-delivery {
		grid-template-columns: 1fr;
		gap: 0.6rem;
	}

	.lv-product-benefits {
		grid-template-columns: 1fr;
		margin-top: 3rem;
		padding: 1.4rem;
	}

	.lv-product-benefits article {
		padding-bottom: 1rem;
		border-bottom: 1px solid rgb(31 44 40 / 10%);
	}

	.lv-product-benefits article:last-child {
		padding-bottom: 0;
		border-bottom: 0;
	}

	.lv-product-details {
		margin-top: 3rem;
	}

	.lv-product-tabs__list {
		gap: 1.5rem;
	}

	.lv-product-tabs__panel {
		padding-inline: 0;
	}

	.lv-description-facts {
		grid-template-columns: 1fr;
	}

	.lv-description-facts > div {
		min-height: auto;
	}

	.lv-preparation-options {
		grid-template-columns: 1fr;
	}

	.lv-faq-list details > p {
		padding-right: 0;
	}

	.lv-nutrition__heading {
		align-items: flex-start;
		padding: 1.1rem;
		flex-direction: column;
	}

	.lv-nutrition-table {
		min-width: 39rem;
		table-layout: auto;
		font-size: 0.82rem;
	}

	.lv-product-inside {
		padding: 1.35rem;
	}

	.lv-product-inside article {
		grid-template-columns: 5.2rem 1fr;
	}

	.lv-product-inside img {
		width: 5.2rem;
	}

	.lv-product-reviews {
		gap: 1.5rem;
		padding-inline: 0;
	}
}
