h1.title {
	gap: 10px;
	padding-left: 0;
	max-width: 352px;
	margin-bottom: 40px;
}
.promo + section {
	background: var(--grey-1);
}
footer {
	margin-top: 100px;
}
.empty-compare {
	border-radius: 30px;
	background: url(../images/compare-bg.webp) center top / auto no-repeat, var(--ff-2-f-00);
	max-width: 474px;
	min-height: 524px;
	margin-bottom: 150px;
	padding: 40px 62px;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0 auto;
	.head,
	p {
		color: var(--white);
		text-align: center;
	}
	.head {
		font-size: 24px;
		font-weight: 700;
		margin: auto 0 8px;
	}
	p {
		line-height: 125%;
		margin-bottom: 40px;
	}
	.btn {
		display: flex;
		align-items: center;
		justify-content: center;
		color: var(--ff-2-f-00);
		background-color: var(--white);
		width: min(312px, 100%);
		height: 50px;
		font-size: 16px;
		transition: box-shadow .2s linear;
	}
}
.tab-box {
	position: relative;
	margin-bottom: 20px;
	display: none;
	&::after {
		content: '';
		position: absolute;
		right: 0;
		top: 38px;
		width: 100%;
		height: 1px;
		background: var(--grey-4);
	}
	.tab-box-wrapper {
		display: flex;
		gap: 10px;
		overflow-x: auto;
		padding-bottom: 12px;
		button {
			display: flex;
			align-items: center;
			justify-content: center;
			gap: 12px;
			padding: 0 10px;
			white-space: nowrap;
			letter-spacing: 0.16px;
			height: 39px;
			transition: color .2s linear;
			border-bottom: 3px solid rgba(0, 0, 0, 0);
			&::after {
				content: attr(data-count);
				color: var(--grey-x);
				font-size: inherit;
				font-weight: inherit;
			}
			&.active {
				color: var(--black);
				font-weight: 600;
				border-bottom-color: var(--grey-x);
			}
		}
	}
	&:has(button) {
		display: block;
	}
}
.compare-item {
	position: relative;
	max-width: min(352px, calc(100vw - 20px));
	flex-shrink: 0;
	border-radius: 30px 30px 20px 20px;
	background: var(--white);
	padding: 6px;
	display: flex;
	flex-direction: column;
	> a {
		position: absolute;
		inset: 0;
	}
	:where(.product-head, .add-cart, .price, .table) {
		position: relative;
		z-index: 1;
	}
	.remove-from-compare {
		position: absolute;
		top: 12px;
		right: 12px;
		z-index: 1;
		width: 40px;
		aspect-ratio: 1;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		background-color: var(--white-grey);
		transition: background-color .2s linear, color .2s linear;
		border: none;
		&::before {
			content: '\e917';
			font: 400 20px / 1 'icon';
		}
	}
	.img {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		aspect-ratio: 1;
		border-radius: 24px;
		overflow: hidden;
		border: 1px solid var(--border2);
		margin-bottom: 6px;
		img {
			height: 100%;
			object-fit: cover;
		}
	}
	.box {
		display: flex;
		flex-direction: column;
		padding: 0 16px 20px;
		margin: 0 -6px 30px;
		border-radius: 0 0 20px 20px;
		border-bottom: 1px solid var(--grey-2);
	}
	.product-head {
		font-weight: 600;
		line-height: 125%;
		display: -webkit-box;
		overflow: hidden;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		line-clamp: 2;
		min-height: 2lh;
		margin-bottom: 8px;
	}
	.price {
		display: flex;
		align-items: end;
		flex-wrap: wrap;
		gap: 8px;
		margin-bottom: 12px;
		span {
			font-size: 20px;
			font-weight: 700;
		}
		span + span {
			font-size: 14px;
			font-weight: 400;
			text-decoration: line-through;
		}
	}
	.add-cart {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		height: 50px;
		flex-direction: row-reverse;
		font-size: 16px;
		border-radius: 14px;
		background-color: var(--ff-2-f-00);
		border: 1px solid var(--ff-2-f-00);
		color: var(--white-grey);
		flex-shrink: 0;
		transition: background-color .2s linear, color .2s linear;
		&::before {
			content: '\e90a';
			font: 400 24px / 1 'icon';
			color: inherit;
		}
		span:last-child {
			display: none;
		}
		&.remove {
			&::before {
				content: '\e902';
			}
			span {
				&:first-child {
					display: none;
				}
				&:last-child {
					display: inline-block;
				}
			}
		}
		&.disabled {
			pointer-events: none;
			visibility: hidden;
		}
	}
	.table {
		display: grid;
		grid-template-columns: 1fr;
		grid-auto-rows: 1fr;
		padding: 0 10px 4px;
		> div {
			display: flex;
			flex-direction: column;
			gap: 2px;
			padding: 8px 10px;
			&:nth-child(odd) {
				border-radius: 6px;
				background: var(--white-grey);
			}
			p {
				letter-spacing: 0.16px;
				&:first-child {
					color: var(--grey-x);
					margin-bottom: 10px;
				}
				&:last-child:empty::after {
					content: '';
					display: inline-block;
					width: 60px;
					height: 2px;
					background: var(--ff-2-f-00);
					margin: 9px 0;
				}
			}
		}
	}
	&:not(:first-child) .table > div p:first-child {
		opacity: 0;
		pointer-events: none;
	}
}
.bottom {
	margin-bottom: 100px;
	.clear-all {
		border-radius: 10px;
		padding: 8px 10px;
		width: min(230px, 100%);
		text-align: center;
		background-color: var(--white);
		margin-bottom: 20px;
		font-size: 14px;
		line-height: 1;
		letter-spacing: 0.14px;
		transition: color .2s linear, background-color .2s linear;
	}
	.tab {
		display: none;
		gap: 10px;
		width: 100%;
		overflow-x: auto;
		padding-bottom: 20px;
		&.active {
			display: flex;
		}
	}
}
@media screen and (max-width: 768px) {
	h1.title {
		width: fit-content;
		min-width: 190px;
		margin-bottom: 30px;
		padding: 8px 10px 8px 0;
	}
	.empty-compare {
		background: url(../images/compare-bg.webp) center top / 100% auto no-repeat, var(--ff-2-f-00);
		max-width: 370px;
		min-height: 504px;
		padding: 20px 10px;
		margin-bottom: 100px;
		.btn {
			width: min(330px, 100%);
		}
	}
	.bottom .clear-all {
		width: min(370px, 100%);
	}
}
@media (hover: hover) {
	.empty-compare .btn:hover {
		box-shadow: 0 0 30px var(--white);
	}
	.bottom .clear-all:hover {
		color: var(--white);
		background-color: var(--ff-2-f-00);
	}
	.compare-item {
		.remove-from-compare:hover {
			color: var(--white);
			background-color: var(--ff-2-f-00);
		}
		.add-cart:hover {
			background-color: var(--white);
			color: var(--ff-2-f-00);
		}
	}
}