.button {
	align-items: center;
	border: 0;
	display: inline-flex;
	font-family: var(--font-mono);
	font-size: 0.96rem;
	font-weight: var(--fw-bold);
	justify-content: center;
	min-height: 44px;
	padding: 0.78rem 1.35rem;
	text-align: center;
	text-decoration: none;
}

.button--primary,
.is-available {
	background: var(--color-accent);
	color: var(--color-surface);
}

.button--primary:hover,
.button--primary:focus,
.is-available:hover,
.is-available:focus {
	background: var(--color-accent-dark);
}

.button:disabled,
.button[aria-disabled="true"] {
	cursor: not-allowed;
	opacity: 0.72;
	pointer-events: none;
}

.product-card {
	background: var(--color-surface);
	box-shadow: 0 1px 0 rgba(6, 18, 60, 0.08);
	padding: 16px 18px 28px;
}

.product-card img {
	aspect-ratio: 0.78;
	margin-inline: auto;
	object-fit: cover;
	object-position: center;
	width: 86%;
}

.product-card__label {
	color: rgba(255, 10, 138, 0.5);
	margin-top: 16px;
}

.product-card h3 {
	margin-top: 4px;
}

.product-card__image-link {
	display: block;
}

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

.product-card__image-link img,
.product-card__title a {
	transition: color 0.18s ease, transform 0.18s ease;
}

.product-card__image-link:hover img,
.product-card__image-link:focus img {
	transform: translateY(-3px);
}

.product-card__title a:hover,
.product-card__title a:focus {
	color: var(--color-accent);
}

.product-card p:not(.product-card__label) {
	color: var(--color-muted);
	font-size: 0.85rem;
	line-height: 1.35;
	margin-top: 6px;
}

.product-card strong {
	color: var(--color-ink);
	display: block;
	font-size: 1.15rem;
	margin-top: 12px;
}

.product-card__actions {
	align-items: center;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	margin-top: 14px;
}

.product-card__button {
	margin-top: 0;
	min-height: 40px;
	padding: 0.65rem 1rem;
}

.product-card__wishlist {
	align-items: center;
	color: rgba(6, 18, 60, 0.26);
	display: inline-flex;
	flex: 0 0 40px;
	height: 40px;
	justify-content: center;
	margin-left: auto;
	text-decoration: none;
	transition: color 0.18s ease, transform 0.18s ease;
	width: 40px;
}

.product-card__wishlist:hover,
.product-card__wishlist:focus,
.product-card__wishlist.is-active {
	color: var(--color-accent);
	transform: translateY(-1px);
}

.product-card__wishlist span {
	background: currentColor;
	display: block;
	height: 22px;
	mask: url("../icons/fav.svg") center / contain no-repeat;
	-webkit-mask: url("../icons/fav.svg") center / contain no-repeat;
	width: 25px;
}

.product-card__wishlist.is-active span {
	mask-image: url("../icons/fav-filled.svg");
	-webkit-mask-image: url("../icons/fav-filled.svg");
}

.is-soon {
	background: var(--color-accent);
	color: var(--color-surface);
}

.is-sold {
	background: #777;
	color: var(--color-surface);
}
