/* Global V2 cart drawer */

html.fyd-v2-cart-active.mobile-cart-content-container-open .site-wrapper::before {
	background: rgba(36, 28, 33, 0.48) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container {
	width: min(440px, 100vw) !important;
	max-width: 100vw !important;
	height: 100vh !important;
	height: 100dvh !important;
	border-left: 0.5px solid var(--fyd-line) !important;
	background: var(--fyd-surface) !important;
	box-shadow: -12px 0 40px rgba(36, 28, 33, 0.16) !important;
	font-family: var(--fyd-sans) !important;
	color: var(--fyd-ink) !important;
	transition-duration: 240ms !important;
	transition-timing-function: cubic-bezier(0.2, 0.7, 0.2, 1) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .mobile-wrapper-header {
	z-index: 2;
	height: 72px !important;
	min-height: 72px !important;
	padding: 0 16px 0 24px !important;
	border-bottom: 0.5px solid var(--fyd-line) !important;
	background: var(--fyd-surface) !important;
	box-shadow: none !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .mobile-wrapper-header > span {
	min-width: 0;
	gap: 10px;
	padding: 0 !important;
	font: 400 24px/1.1 var(--fyd-serif) !important;
	letter-spacing: -0.02em;
	color: var(--fyd-ink) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .fyd-v2-cart-count {
	margin-top: 5px;
	font: 500 12px/1 var(--fyd-sans);
	letter-spacing: 0;
	color: var(--fyd-ink-soft);
}

html.fyd-v2-cart-active .mobile-cart-content-container .mobile-wrapper-header > .x {
	width: 40px !important;
	min-width: 40px !important;
	height: 40px !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: transparent !important;
	box-shadow: none !important;
	font-size: 0 !important;
	color: var(--fyd-ink) !important;
	transition: background-color 160ms ease, transform 80ms ease !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .mobile-wrapper-header > .x::before {
	content: "×" !important;
	font: 400 24px/1 var(--fyd-sans) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .mobile-wrapper-header > .x:hover {
	background: var(--fyd-rose-light) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .mobile-cart-content-wrapper.cart-content {
	height: calc(100% - 72px) !important;
	max-height: calc(100% - 72px) !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--fyd-surface) !important;
	box-shadow: none !important;
	color: var(--fyd-ink) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-content > ul {
	display: flex !important;
	height: 100% !important;
	min-height: 0;
	flex-direction: column;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--fyd-surface) !important;
	box-shadow: none !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products {
	min-height: 0;
	flex: 1 1 auto !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	overscroll-behavior: contain;
	scrollbar-color: var(--fyd-rose) transparent;
	scrollbar-width: thin;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .table,
html.fyd-v2-cart-active .mobile-cart-content-container .cart-products tbody {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products tr {
	display: grid !important;
	grid-template-columns: 72px minmax(0, 1fr) auto;
	grid-template-rows: auto auto;
	column-gap: 16px;
	row-gap: 8px;
	width: 100% !important;
	padding: 20px 24px !important;
	border: 0 !important;
	border-bottom: 0.5px solid var(--fyd-line) !important;
	background: transparent !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products td {
	display: block !important;
	width: auto !important;
	min-width: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	font-family: var(--fyd-sans) !important;
	color: var(--fyd-ink) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .td-image {
	grid-column: 1;
	grid-row: 1 / span 2;
	width: 72px !important;
	height: 72px !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .td-image a {
	display: block;
	width: 100%;
	height: 100%;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .td-image img {
	display: block;
	width: 72px !important;
	height: 72px !important;
	padding: 4px !important;
	object-fit: contain;
	border: 0 !important;
	border-radius: 10px !important;
	background: var(--fyd-porcelain) !important;
	box-shadow: none !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .td-name {
	grid-column: 2;
	grid-row: 1;
	align-self: start;
	font: 400 12px/17px var(--fyd-sans) !important;
	color: var(--fyd-ink-soft) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .td-name > a {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	font: 400 15px/20px var(--fyd-serif) !important;
	text-decoration: none !important;
	color: var(--fyd-ink) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .td-name > span,
html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .td-name > small {
	font: 400 12px/17px var(--fyd-sans) !important;
	color: var(--fyd-ink-soft) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .fyd-v2-cart-spec {
	display: block;
	margin-top: 3px;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .td-total {
	grid-column: 3;
	grid-row: 1;
	align-self: start;
	font: 500 15px/20px var(--fyd-sans) !important;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
	color: var(--fyd-ink) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .mobile-cart-content-wrapper.cart-content .cart-products td.td-qty {
	display: inline-flex !important;
	grid-column: 2;
	grid-row: 2;
	align-items: center;
	justify-content: center;
	justify-self: start;
	align-self: start;
	width: 52px !important;
	height: 28px !important;
	padding: 0 !important;
	border: 0.5px solid var(--fyd-line) !important;
	border-radius: 999px !important;
	font: 500 11px/16px var(--fyd-sans) !important;
	letter-spacing: 0.04em;
	color: var(--fyd-ink-soft) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .td-remove {
	grid-column: 3;
	grid-row: 2;
	justify-self: end;
	align-self: start;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .cart-remove {
	min-width: 44px !important;
	height: 28px !important;
	min-height: 28px !important;
	align-items: center !important;
	justify-content: flex-end !important;
	padding: 0 0 0 12px !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	display: inline-flex !important;
	font: 500 11px/16px var(--fyd-sans) !important;
	text-decoration: underline;
	text-decoration-thickness: 0.5px;
	text-underline-offset: 3px;
	color: var(--fyd-ink-soft) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .cart-remove i {
	display: none !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .cart-remove::after {
	content: "Remove";
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .cart-remove:hover {
	color: var(--fyd-berry) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-totals {
	position: relative !important;
	z-index: 1;
	flex: 0 0 auto !important;
	padding: 16px 24px 20px !important;
	border: 0 !important;
	border-top: 0.5px solid var(--fyd-line) !important;
	background: var(--fyd-porcelain) !important;
	box-shadow: 0 -12px 24px rgba(36, 28, 33, 0.05) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-totals > div {
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-totals .table {
	width: 100% !important;
	margin: 0 0 12px !important;
	border: 0 !important;
	border-collapse: collapse !important;
	border-spacing: 0 !important;
	background: transparent !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-totals tr,
html.fyd-v2-cart-active .mobile-cart-content-container .cart-totals td {
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-totals tr + tr td {
	padding-top: 10px !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-totals .td-total-title {
	font: 500 13px/20px var(--fyd-sans) !important;
	color: var(--fyd-ink-soft) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-totals .td-total-text {
	font: 500 13px/20px var(--fyd-sans) !important;
	font-variant-numeric: tabular-nums;
	color: var(--fyd-ink) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-totals tr:last-child .td-total-title {
	font-size: 15px !important;
	font-weight: 500 !important;
	color: var(--fyd-ink) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-totals tr:last-child .td-total-text {
	font-size: 22px !important;
	line-height: 24px !important;
	letter-spacing: -0.02em;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-buttons {
	display: flex !important;
	flex-direction: column !important;
	gap: 8px !important;
	margin: 0 !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-buttons .btn {
	display: inline-flex !important;
	width: 100% !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	box-shadow: none !important;
	font-family: var(--fyd-sans) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-buttons .btn-cart {
	height: 32px !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	line-height: 16px !important;
	text-decoration: none;
	text-rendering: optimizeLegibility;
	color: var(--fyd-ink) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-buttons .btn-cart span {
	padding-bottom: 3px;
	border-bottom: 0.5px solid currentColor;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-buttons .btn-checkout {
	height: 52px !important;
	padding: 0 24px !important;
	border: 1px solid var(--fyd-berry) !important;
	border-radius: 999px !important;
	background: var(--fyd-berry) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 16px !important;
	letter-spacing: 0.01em;
	text-rendering: optimizeLegibility;
	color: #fff !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-buttons .btn-checkout:hover {
	border-color: var(--fyd-berry-dark) !important;
	background: var(--fyd-berry-dark) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-content > ul > li:only-child {
	display: flex;
	min-height: 0;
	flex: 1 1 auto;
	align-items: center;
	justify-content: flex-start;
	flex-direction: column;
	padding: clamp(96px, 18vh, 180px) 32px 32px !important;
	border: 0 !important;
	background: var(--fyd-surface) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-empty {
	width: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	font: 400 26px/1.2 var(--fyd-serif) !important;
	color: var(--fyd-ink) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .cart-empty::before {
	display: block !important;
	margin: 0 auto 20px !important;
	font-size: 36px !important;
	font-weight: 400 !important;
	color: var(--fyd-berry) !important;
}

html.fyd-v2-cart-active .mobile-cart-content-container .fyd-v2-cart-continue {
	display: inline-flex;
	height: 48px;
	align-items: center;
	justify-content: center;
	margin-top: 24px;
	padding: 0 24px;
	border-radius: 999px;
	background: var(--fyd-berry);
	font: 500 12px/1 var(--fyd-sans);
	text-decoration: none;
	color: #fff;
}

@media (max-width: 520px) {
	html.fyd-v2-cart-active .mobile-cart-content-container {
		width: 100vw !important;
	}

	html.fyd-v2-cart-active .mobile-cart-content-container .mobile-wrapper-header {
		height: 64px !important;
		min-height: 64px !important;
		padding: 0 12px 0 20px !important;
	}

	html.fyd-v2-cart-active .mobile-cart-content-container .mobile-wrapper-header > span {
		font-size: 22px !important;
	}

	html.fyd-v2-cart-active .mobile-cart-content-container .mobile-cart-content-wrapper.cart-content {
		height: calc(100% - 64px) !important;
		max-height: calc(100% - 64px) !important;
	}

	html.fyd-v2-cart-active .mobile-cart-content-container .cart-products tr {
		grid-template-columns: 64px minmax(0, 1fr);
		grid-template-rows: auto auto auto;
		column-gap: 12px;
		row-gap: 8px;
		padding: 16px 20px !important;
	}

	html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .td-image {
		grid-row: 1 / span 3;
		width: 64px !important;
		height: 64px !important;
	}

	html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .td-image img {
		width: 64px !important;
		height: 64px !important;
	}

	html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .td-name,
	html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .td-total {
		grid-column: 2;
	}

	html.fyd-v2-cart-active .mobile-cart-content-container .cart-products .td-total {
		grid-row: 2;
		justify-self: start;
	}

	html.fyd-v2-cart-active .mobile-cart-content-container .mobile-cart-content-wrapper.cart-content .cart-products td.td-qty,
	html.fyd-v2-cart-active .mobile-cart-content-container .mobile-cart-content-wrapper.cart-content .cart-products td.td-remove {
		grid-column: 2;
		grid-row: 3;
	}

	html.fyd-v2-cart-active .mobile-cart-content-container .cart-totals {
		padding: 16px 20px calc(16px + env(safe-area-inset-bottom)) !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	html.fyd-v2-cart-active .mobile-cart-content-container,
	html.fyd-v2-cart-active .mobile-cart-content-container * {
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
	}

	html.fyd-v2-header-active .fyd-v2-promo-strip__track {
		width: 100%;
		justify-content: center;
		animation: none !important;
		transform: none !important;
	}

	html.fyd-v2-header-active .fyd-v2-promo-strip__set {
		padding-right: 0;
	}

	html.fyd-v2-header-active .fyd-v2-promo-strip__group[aria-hidden="true"],
	html.fyd-v2-header-active .fyd-v2-promo-strip__group:first-child .fyd-v2-promo-strip__set[aria-hidden="true"],
	html.fyd-v2-header-active .fyd-v2-promo-strip__set:first-child .fyd-v2-promo-strip__divider,
	html.fyd-v2-header-active .fyd-v2-promo-strip__set:first-child .fyd-v2-promo-strip__offer:last-child {
		display: none;
	}

	.fyd-v2 *,
	.fyd-v2 *::before,
	.fyd-v2 *::after,
	.fyd-v2-toast,
	.fyd-v2-toast::before {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}
