.elementor-widget-image-carousel {
	.elementor-image-carousel-wrapper {
		overflow: hidden;
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		gap: 20px;
		padding-bottom: 0 !important;
		margin-left: 0;
		position: relative !important;

		@media (max-width: 767px) {
			flex-direction: column;
		}

		.swiper-wrapper {
			max-width: 75%;

			.swiper-slide {
				padding-right: 345px;

				@media screen and (max-width: 1440px) {
					padding-right: 24vw;
				}

				@media (max-width: 767px) {
					padding-right: 0;
				}

				.swiper-slide-inner {
					.swiper-slide-image {
						width: 100%;
						height: 500px;
						object-fit: cover;
						object-position: center;

						@media screen and (max-width: 767px) {
							height: 300px;
						}
					}
				}
			}
		}

		.swiper-pagination {
			background-color: #f5f6f8;
			position: relative;
			display: flex;
			flex-wrap: wrap;
			flex-direction: row;
			justify-content: space-between;
			width: 400px;
			height: 500px;
			padding-right: 8px;
			bottom: 0 !important;
			overflow: hidden;
			overflow-y: scroll;

			@media (max-width: 767px) {
				width: 100%;
				flex-wrap: nowrap;
				height: 150px;
				overflow-x: scroll;
				overflow-y: inherit;
			}

			&::-webkit-scrollbar {
				width: 8px;
			}

			&::-webkit-scrollbar-track {
				background: #f4f1ec;
				border-radius: 10px;
			}

			&::-webkit-scrollbar-thumb {
				background: #cadce5;
				border-radius: 10px;
			}

			.swiper-pagination-bullet {
				position: relative;
				display: block;
				width: 100%;
				height: 240px;
				margin: 0;
				object-fit: cover;
				object-position: center;
				border-radius: 0;
				background-size: cover;
				background-position: center;
				background-repeat: no-repeat;
				opacity: 1;
				transition: all 0.3s ease;

				@media (max-width: 1024px) {
					height: 200px;
				}

				@media screen and (max-width: 767px) {
					height: 150px;
					width: 150px;
					min-width: 150px;
				}

				&:not(:first-child) {
					margin-top: 20px;

					@media screen and (max-width: 767px) {
						margin-top: 0;
						margin-left: 10px;
					}
				}

				&::before {
					content: "";
					position: absolute;
					inset: 0;
					background: rgba(0, 0, 0, 0.4);
					transition: all 0.3s ease;
				}

				&:hover {
					&::before {
						background: none;
					}
				}
			}
		}
	}
}

.restaurant-awards-wrapper {
	width: 100%;
	display: flex;
	flex-direction: column;
	padding: 60px 10px;

	.restaurant-awards {
		width: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;

		.award-year {
			width: 100%;

			.year {
				font-weight: 500;
			}

			.award-wrapper {
				width: 100%;
				display: flex;
				flex-direction: row;
				flex-wrap: wrap;
				justify-content: center;
				gap: 20px;

				.award-item {
					display: flex;
					flex-direction: column;
					align-items: center;
					justify-content: center;
					gap: 10px;
					width: 100%;
					max-width: 150px;
					background-color: var(--brown-dark);
					padding: 20px;
					border-radius: 18px;

					@media screen and (max-width: 1024px) {
						max-width: calc(calc(100% / 3) - 10px);
					}

					@media screen and (max-width: 767px) {
						max-width: calc(calc(100% / 2) - 14px);
					}

					.category {
						color: var(--white);
						font-size: 12px;
						line-height: 1.2em;
					}
				}
			}
		}
	}
}

#google-reviews {
	.swiper {
		width: 100%;
		max-width: 1200px;

		@media screen and (max-width: 767px) {
			width: 80%;
		}

		.swiper-wrapper {
			align-items: stretch;

			.swiper-slide {
				display: flex;
				height: 100%;
				background-color: #faf1e1;
				padding: 20px;
				border-radius: 18px;

				.review-card {
					display: flex;
					flex-direction: column;
					gap: 22px;

					.review-header {
						display: flex;
						flex-direction: row;
						flex-wrap: nowrap;
						align-items: center;
						gap: 22px;

						img {
							width: 64px;
							height: 64px;
							object-fit: cover;
							object-position: center;
						}

						.author-name {
							font-size: 22px;
							font-weight: 700;
							line-height: 1.2em;
							letter-spacing: -0.02em;
						}
					}

					.review-stars {
						display: flex;
						gap: 16px;
					}

					.review-text {
						font-size: 18px;
					}
				}
			}
		}
	}

	.swiper-button-prev {
		left: 0;

		&:after {
			content: "" !important;
			width: 32px;
			height: 32px;
			background-image: url(/wp-content/uploads/2026/01/chevron-left.svg);
			background-size: contain;
			background-repeat: no-repeat;
			background-position: center;
		}
	}

	.swiper-button-next {
		right: 0;

		&:after {
			content: "" !important;
			width: 32px;
			height: 32px;
			background-image: url(/wp-content/uploads/2026/01/chevron-right.svg);
			background-size: contain;
			background-repeat: no-repeat;
			background-position: center;
		}
	}
}
