/*
 * Favorite hit area correction v95.5.
 * The favorite control stays fully inside the media zone and never touches the card frame.
 */

.nsv68-card__media,
.nsv-hotel-room-card__media {
	position: relative !important;
	isolation: isolate !important;
}

.nsv68-card__media > a:first-child,
.nsv-hotel-room-card__media > a:first-child {
	position: relative !important;
	inset: auto !important;
	z-index: 1 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	pointer-events: auto !important;
}

.nsv68-card__favorite,
.nsv-hotel-room-card__favorite {
	position: absolute !important;
	top: 18px !important;
	right: 18px !important;
	bottom: auto !important;
	left: auto !important;
	z-index: 20 !important;
	display: block !important;
	width: 40px !important;
	min-width: 40px !important;
	max-width: 40px !important;
	height: 40px !important;
	min-height: 40px !important;
	max-height: 40px !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	border: 1px solid rgba(7,95,103,.14) !important;
	border-radius: 50% !important;
	background: rgba(255,255,255,.96) !important;
	color: #49666a !important;
	box-shadow: 0 8px 20px rgba(17,52,56,.16) !important;
	font-size: 0 !important;
	line-height: 0 !important;
	text-align: left !important;
	text-decoration: none !important;
	pointer-events: auto !important;
	transform: none !important;
	transition: color .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease !important;
}

.nsv68-card__favorite > i,
.nsv68-card__favorite > svg,
.nsv-hotel-room-card__favorite > i,
.nsv-hotel-room-card__favorite > svg {
	display: none !important;
}

.nsv68-card .nsv68-card__media > .nsv68-card__favorite::before,
.nsv-hotel-room-card .nsv-hotel-room-card__media > .nsv-hotel-room-card__favorite::before,
.nsv68-card__favorite::before,
.nsv-hotel-room-card__favorite::before {
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	z-index: 1 !important;
	display: block !important;
	width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
	padding: 0 !important;
	content: "" !important;
	background-color: currentColor !important;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	-webkit-mask-repeat: no-repeat !important;
	-webkit-mask-position: 50% 50% !important;
	-webkit-mask-size: 20px 20px !important;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	mask-repeat: no-repeat !important;
	mask-position: 50% 50% !important;
	mask-size: 20px 20px !important;
	transform: translate(-50%,-50%) !important;
	pointer-events: none !important;
}

.nsv68-card__favorite::after,
.nsv-hotel-room-card__favorite::after {
	display: none !important;
	content: none !important;
}

.nsv68-card__favorite:hover,
.nsv68-card__favorite:focus-visible,
.nsv68-card__favorite.is-active,
.nsv-hotel-room-card__favorite:hover,
.nsv-hotel-room-card__favorite:focus-visible,
.nsv-hotel-room-card__favorite.is-active {
	border-color: rgba(255,101,74,.36) !important;
	background: #fff !important;
	color: #ff654a !important;
	box-shadow: 0 9px 22px rgba(255,101,74,.2) !important;
	transform: none !important;
}

.nsv68-card__favorite:hover::before,
.nsv68-card__favorite:focus-visible::before,
.nsv68-card__favorite.is-active::before,
.nsv-hotel-room-card__favorite:hover::before,
.nsv-hotel-room-card__favorite:focus-visible::before,
.nsv-hotel-room-card__favorite.is-active::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z' fill='black'/%3E%3C/svg%3E") !important;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78L12 21.23l8.84-8.84a5.5 5.5 0 0 0 0-7.78Z' fill='black'/%3E%3C/svg%3E") !important;
}

@media (max-width: 700px) {
	.nsv68-card__favorite,
	.nsv-hotel-room-card__favorite {
		top: 14px !important;
		right: 14px !important;
		width: 38px !important;
		min-width: 38px !important;
		max-width: 38px !important;
		height: 38px !important;
		min-height: 38px !important;
		max-height: 38px !important;
	}
}
