.cuisine-container {
	padding-left: 24px;
	position: relative;
}

	.cuisine-container::before {
		content: "";
		position: absolute;
		left: 8px;
		top: 0;
		bottom: 0;
		background: #333;
		border-radius: 10px;
		margin: auto;
		width: 4px;
		height: 4px;
	}

	@media (max-width: 1000px) {

		.cuisine-container {
			display: block;
			padding: 0;
			padding-top: 5px;
		}

		.cuisine-container::before {
			display: none;
		}

	}

.breadcrumb-container {
	padding-top: 20px;
	margin-bottom: -12px;
	margin-left: -5px;
	font-size: 0.85em;
	color: #aaa;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

	.breadcrumb-container a {
		padding: 5px;
		color: #333;
	}

	.breadcrumb-container a:hover {
		color: #d00;
	}

.notice-closed {
	font-weight: 600;
	color: #c00;
}

.column-container {
	position: relative;
	padding-right: 360px;
}

	@media (max-width: 1000px) {

		.column-container {
			padding-right: 0;
		}

	}

.day-container {
	padding-left: 55px;
	margin-bottom: 5px;
	position: relative;
}

	.day-container .day {
		position: absolute;
		left: 0;
	}

.sidebar-container {
	position: absolute;
	top: 0px;
	right: 0;
	width: 260px;
	padding-top: 25px;
}

	.sidebar-container a:not(.button) {
		color: #333;
	}

	.sidebar-container .button {
		margin-bottom: 10px;
		margin-top: -5px;
	}

		.sidebar-container .button .subtitle {
			font-size: 0.7em;
			font-weight: 400;
			text-transform: none;
			letter-spacing: 2px;
			margin-top: -3px;
		}

	.details-item {
		display: block;
		padding: 12px 0 12px 0;
		position: relative;
		white-space: nowrap;
		overflow: hidden;
	}

		.details-item img {
			position: relative;
			width: 22px;
			height: 22px;
			opacity: 0.85;
			left: 0;
			top: -1px;
			vertical-align: bottom;
		}

		.details-item .details-inline {
			padding: 10px;
			margin: -10px;
			margin-right: 1px;
		}

		.details-item.details-with-icon {
			padding-left: 37px;
		}

			.details-item.details-with-icon img {
				position: absolute;
				top: 12px;
			}

		.details-subtext {
			font-size: 0.7em;
			display: block;
			opacity: 0.7;
			margin-top: 2px;
		}

	.sidebar-expander {
		display: block;
		height: 0;
	}

	@media (max-width: 1000px) {

		.sidebar-container {
			position: relative;
			width: auto;
			padding-top: 0px;
		}

		.sidebar-expander {
			display: none;
		}
		
	}

.section-container {
	padding-bottom: 10px;
}

	.stars {
		position: relative;
		display: inline-block;
		top: -1px;
		margin: 0 2px;
		white-space: nowrap;
	}

		.stars-bg {
			opacity: 0.2;
			filter: brightness(0);
		}

		.stars-fg {
			position: absolute;
			left: 0;
			overflow: hidden;
			pointer-events: none;
		}

		.stars img {
			display: inline-block;
			width: 14px;
			height: 14px;
			margin-right: 1px;
			position: relative;
			top: 2px;
			filter: invert(15%) sepia(56%) saturate(6747%) hue-rotate(5deg) brightness(84%) contrast(125%);
			filter: invert(13%) sepia(95%) saturate(4888%) hue-rotate(1deg) brightness(83%) contrast(117%);
		}

	.price {
		position: relative;
		display: inline-block;
		margin: 0 2px;
	}

		.price-bg {
			color: #ddd;
		}

		.price-fg {
			position: absolute;
			left: 0;
			overflow: hidden;
			pointer-events: none;
		}

.photo-reel-container {
	width: 100%;
	margin-bottom: 25px;
	display: flex;
	flex-wrap: wrap;
	gap: 2px;
	flex-direction: row;
	overflow: hidden;
}

	.photo-container {
		border-radius: 3px;
		overflow: hidden;
		height: 90px;
		flex-grow: 1;
		box-shadow: inset 0 0 40px rgba(0,0,0,0.3);
	}

	.photo-container.photo-primary {
		flex-basis: 100%;
		height: 260px;
	}

		.photo-container .photo {
			width: 100%;
			height: 100%;
			background: #ccc;
			background-repeat: no-repeat;
			background-position: center center;
			background-size: cover;
			transition: scale 0.2s;
			position: relative;
			z-index: -1;
		}

		.photo-container:hover .photo {
			scale: 1.1;
		}

	@media (max-width: 1000px) {

		.photo-reel-container {
			flex-direction: column;
			height: 240px;
		}

			.photo-container.photo-primary {
				height: auto;
			}

	}

.award-container {
	position: relative;
}

	.award {
		display: table;
		min-height: 100px;
		width: 100%;
	}

		.award-logo {
			display: table-cell;
			vertical-align: middle;
			width: 75px;
			padding: 10px 25px 10px 15px;
			line-height: 0;
		}

			.award-logo img {
				width: 100%;
				opacity: 0.8;
				transition: scale 0.2s, opacity 0.2s, filter 0.2s;
			}

			.award:hover .award-logo img {
				opacity: 1.0;
				scale: 1.1;
				filter: drop-shadow(0 3px 0 rgba(0, 0, 0, 0.1));
			}

		.award-list {
			display: table-cell;
			vertical-align: middle;
			padding: 10px 20px;
			box-shadow: -20px 0 20px -25px rgba(0,0,0,0.3);
			transition: box-shadow 0.2s
		}

			.award:hover .award-list {
				box-shadow: -20px 0 20px -25px rgba(0,0,0,0.5);
			}

			.award-guide {
				font-size: 0.65em;
				text-transform: uppercase;
				margin-bottom: 3px;
				opacity: 0.7;
			}

			.award-item {
				margin: 2px 0;
				position: relative;
			}

				a.award-item {
					opacity: 0.5;
				}

				a.award-item:hover {
					opacity: 1;
				}

				.award-item img {
					width: 21px;
					margin-right: 2px;
					position: relative;
					top: 5px;
				}

				.award-note {
					opacity: 0.5;
					height: 1.5em;
				}

					.award-note::before {
						content: "(";
					}

					.award-note::after {
						content: ")";
					}

		@media (max-width: 1000px) {

			.award-item {
				padding-right: 50px;
			}

			.award-note {
				position: absolute;
				right: 0;
				bottom: 0;
				top: 0;
				margin: auto;
			}

				.award-note::before {
					content: "";
				}

				.award-note::after {
					content: "";
				}

		}

.map-container {
	display: block;
	width: 100%;
	border-radius: 3px;
	overflow: hidden;
	margin: 15px 0;
	position: relative;
	box-shadow: inset 0 0 40px rgba(0,0,0,0.15);
}

	.map-container,
	.map-container:focus,
	.map-container:hover {
		color: #333;
	}

	.map-container .map-image {
		background: #ededed;
		height: 250px;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		transition: scale 0.2s;
		position: relative;
		z-index: -1;
	}

	.map-container:hover .map-image {
		scale: 1.05;
	}

	.map-container .map-overlay {
		pointer-events: none;
		position: absolute;
		top: 10px;
		right: 10px;
		z-index: 1;
		text-align: center;
		line-height: 40px;
		min-width: 40px;
		padding: 0 15px;
		font-size: 0.85em;
		border-radius: 3px;
		overflow: hidden;
		background: #fff;
		white-space: nowrap;
		box-shadow: 0 0 1px rgba(0,0,0,0.6), 0 1px 10px rgba(0,0,0,0.2);
	}

		.map-container .map-overlay img {
			width: 13px;
			height: 13px;
			position: relative;
			top: 1px;
			margin-left: 5px;
		}

	@media (max-width: 1000px) {

		.map-container .map-image {
			height: 250px;
		}

	}


.map-popup .map-popup-bookmark {
	width: 50px;
	height: 50px;
	position: absolute;
	z-index: 3;
	top: 1px;
	right: 0;
	opacity: 0.5;
}

	.map-popup .map-popup-bookmark.bookmarked {
		opacity: 0.9;
	}

	.map-popup .map-popup-bookmark:hover {
		opacity: 0.9;
	}

	.map-popup .map-popup-bookmark img {
		width: 100%;
		position: absolute;
		top: 1px;
		right: 0;
		bottom: 0;
		left: 0;
		margin: auto;
		padding: 17px;
	}

	.map-popup .map-popup-bookmark img.bg {
		display: none;
	}

	.map-popup .map-popup-bookmark.bookmarked img.bg {
		display: block;
	}
