.menu {
	position: absolute;
	top: 0; 
	right: 0;
	width: 0; 
	background-color: var(--clr-white);
	overflow: hidden;
	transition: all 0.3s ease-out;
	z-index: 11;
}

.menu .nav-menu {
	display: none;
}

.active {
	display: block;
}

.menu .content {
	display: flex;
	justify-content: space-between;
	padding-top: 3.33333vh;
	padding-bottom: 13.33333vh;
	margin-top: 0;
}

.boxes1 {
	margin: 3.33333vh 0 0 4.16667vw;
}

.menu-box {
	position: relative;
	width: 49.479167vw;
	margin-bottom: 3.333333vh;
	padding-bottom: 2.222222vh;
}

.menu-item {
	display: flex;
	/* width: 16.583334vw; */
	height: 4.666667vh;
	cursor: pointer;
	margin-bottom: 1.111111vh;
}

.menu-link {
	line-height: 3.75rem;
	font-size: 40px;
	color: var(--clr-black);
}

.menu-link:hover {
	color: var(--clr-primary-1);
}

.menu-item img {
	position: absolute;
	display: none;
	width: 6.125rem;
	height: max-content;
	top: 0.625rem;
	margin: 1.111111vh 0 0 1.041667vw;
}

.menu-item #home:not(:hover) + img.main {
	display: none;
}

.menu-item #about:not(:hover) + img.about {
	display: none;
}

.menu-item #open-kitchen:not(:hover) + img.kitchen {
	display: none;
}

.menu-item #vip:not(:hover) + img.kitchen {
	display: none;
}

.menu-item #interior:not(:hover) + img.interior {
	display: none;
}

.menu-item #children:not(:hover) + img.interior {
	display: none;
}

.menu-item #locations:not(:hover) + img.location {
	display: none;
}

.menu-item #reserv:not(:hover) + img.reserv {
	display: none;
}

.menu-box:before {
	content: '';
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 0.1875rem;
	background-color: var(--clr-primary-1);
}

.contact-box {
	position: relative;
	display: flex;
	gap: 1.041667vw;
}

.contact-box div {
	width: 14.583333vw;
}

.contact-box .title,
.contact-box .text {
	color: var(--clr-black);
}

.contact-box .title {
	line-height: 1.875rem;
	font-size: 22px;
	margin-bottom: 2.22222vh;
}

.contact-box .text {
	width: 12.5vw;
	line-height: 2.1875rem;
	font-size: 18px;
	margin-top: 1.11111vh;
}

.boxes2 {
	position: relative;
	left: -31.25vw;
	cursor: pointer;
}

h1 {
	position: absolute;
	top: 0;
	width: 31.25vw;
	text-align: right;
	word-wrap: break-word;
}

.boxes2 .arrow {
	position: absolute;
	top: 0;
	margin: 8.333333vw 0 0 -6.875rem;
	transition: all 0.3s ease-in-out;
}

.boxes2:hover .arrow {
	margin-left: -8.125rem;
}

@media (max-width: 1700px) {
	.menu-link {
		line-height: 3.4375rem;
		font-size: 34px;
	}

	.menu .arrow {
		width: 11.25rem;
		margin-left: -5rem;
	}

	.boxes2:hover .arrow {
		margin-left: -6.25rem;
	}
}

@media (max-width: 1440px) {
	/*
	.menu-item img {
		width: 5.625rem;
		margin: 0.555556vh 0 0 1.041667vw;
	} */

	.menu-link {
		line-height: 3.125rem;
		font-size: 30px;
	}

	.menu .arrow {
		width: 10rem;
	}

	.contact-box .title {
		line-height: 1.5625rem;
		font-size: 20px;
	}
	
	.contact-box .text {
		font-size: 17px;
	}
}

@media (max-width: 1280px) {
	.boxes1 {
		margin-left: 2.5rem;
	}

	.menu-link {
		line-height: 2.5rem;
		font-size: 27px;
	}
}

@media (max-width: 992px) {
	.menu .boxes1 {
		margin-left: 1.25rem;
	}

	.menu-box {
		width: 54.036458vw;
	}
	
	.menu-link {
		line-height: 2.125rem;
		font-size: 24px;
	}

	/*
	.menu-item img {
		width: 39.0625vw;
		height: 22.737873vw;
		margin-left: 14.973958vw;
	} */

	.menu .arrow {
		width: 5.625rem;
		margin-left: -1.25rem;
	}

	.boxes2:hover .arrow {
		margin-left: -2.1875rem;
	}

	.contact-box div {
		width: 16.927083vw;
	}

	.contact-box .title {
		font-size: 18px;
	}
	
	.contact-box .text {
		font-size: 15px;
	}
}

@media (max-width: 768px) {
	.menu .nav-logo,
	.menu-item img,
	.menu .arrow,
	.contact-box {
		display: none;
	}

	.menu .nav-menu {
		display: block;
	}

	.menu .nav-menu {
		display: flex;
		margin-left: 0;
	}

	.menu .content {
		flex-direction: column-reverse;
		padding-top: 7.5vh;
	}

	.menu .boxes1,
	.menu .boxes2 {
		margin: 0;
	}

	.menu .boxes2 {
		width: 91.11111vw;
		height: max-content;
		left: 4.444446vw;
		padding-bottom: 3.75vh;
	}

	h1 {
		display: block;
    	position: static;
		width: 100%;
		line-height: 3.75rem;
		text-align: center;
		margin: 0;
	}

	.menu-box {
		position: relative;
		width: 100%;
		padding: 1.25vh 0;
	}

	.menu-box:after,
	.menu-box:before {
		position: absolute;
		content: '';
		left: 0;
		width: 100%;
		height: 0.1875rem;
		background-color: var(--clr-primary-1);
	}
	
	.menu-box:after {
		top: 0;
	}

	.menu-box:before {
		bottom: 0;
	}

	.menu-item {
		width: 100%;
		text-align: center;
		margin: 2.5vh 0;
	}
	
	.menu-item a {
		width: 100%;
		line-height: 2.5625rem;
		font-size: 32px;
	}
}

@media (max-width: 480px) {
	h1:before,
	.menu-box ul:before {
		height: 0.0625rem;
	}

	.menu-item a {
		line-height: 2.5rem;
		font-size: 27px;
	}
}