@media (max-width:767px)
{
	#navbar-hoofdmenu{
		position: fixed;
		top: 0;
		right: -100%;
		z-index: 9999;
		width: 100%;
		height: 100dvh;
		margin: 0;
		padding: 0;
		overflow-x: hidden;
		overflow-y: auto;
		background: var(--groen);
		transition: right 0.3s ease-in-out;
		-webkit-overflow-scrolling: touch;
	}

	#navbar-hoofdmenu.collapse{
		display: block;
	}

	#navbar-hoofdmenu.showmenu{
		right: 0;
	}

	button#trigger-overlay{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 4.4rem;
		aspect-ratio: 1;
		margin: 0;
		padding: 0;
		border: 0;
		border-radius: 50% !important;
		background: var(--beige) !important;
		box-shadow: none !important;
		outline: none !important;
		color: var(--groen);
		transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
	}

	button#trigger-overlay:hover,
	button#trigger-overlay:focus{
		background: var(--oranje) !important;
		color: var(--groen);
	}

	button#trigger-overlay .navbar-toggler-icon{
		width: 2rem;
		height: 2rem;
		background-size: contain;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23004D42' d='M16 132h416c8.8 0 16-7.2 16-16s-7.2-16-16-16H16c-8.8 0-16 7.2-16 16s7.2 16 16 16zm416 112H16c-8.8 0-16 7.2-16 16s7.2 16 16 16h416c8.8 0 16-7.2 16-16s-7.2-16-16-16zm0 144H16c-8.8 0-16 7.2-16 16s7.2 16 16 16h416c8.8 0 16-7.2 16-16s-7.2-16-16-16z'/%3E%3C/svg%3E");
	}

	#hoofdmenu{
		position: static;
		right: 0;
		display: flex;
		flex-direction: column;
		width: 100%;
		min-height: 100dvh;
		height: auto;
		margin: 0;
		padding: 9rem 3rem 4rem;
		border-radius: 0;
		background: var(--groen);
		overflow-y: auto;
		transition: right 0.3s ease-in-out;
		gap: 0;
	}

	#hoofdmenu.showmenu{
		right: 0;
		z-index: 15;
	}

	#hoofdmenu > li,
	#hoofdmenu li ul li{
		position: static;
		width: 100%;
		margin: 0;
		padding: 0;
		border-bottom: 0.1rem solid rgb(247 245 240 / 15%);
	}

	#hoofdmenu li a,
	#hoofdmenu li ul li a,
	#hoofdmenu li > ul > li.menu-item-has-children ul li a{
		position: relative;
		display: flex;
		align-items: center;
		gap: 1rem;
		width: 100%;
		min-height: 5.4rem;
		padding: 1.5rem 0;
		float: none;
		background: none;
		color: var(--beige) !important;
		font-size: 1.8rem;
		font-weight: 400;
		line-height: 1.25;
		text-shadow: none;
		text-decoration: none !important;
		white-space: normal;
	}

	#hoofdmenu li a:hover,
	#hoofdmenu li a:focus,
	#hoofdmenu li a:active,
	#hoofdmenu li.current-menu-item > a,
	#hoofdmenu li.current-menu-ancestor > a,
	#hoofdmenu li.current-menu-parent > a{
		color: var(--oranje) !important;
		opacity: 1;
	}

	#hoofdmenu li ul li:hover > a,
	#hoofdmenu li ul li.current-menu-item > a,
	#hoofdmenu li ul li.current-menu-ancestor > a,
	#hoofdmenu li ul li.current-menu-parent > a,
	#hoofdmenu li ul li a:hover,
	#hoofdmenu li ul li a:focus,
	#hoofdmenu li ul li a:active{
		color: var(--oranje) !important;
		opacity: 1;
	}

	#hoofdmenu li.menu-item-has-children > a{
		display: flex;
	}

	#hoofdmenu li.menu-item-has-children > a:after{
		content: "\f105" !important;
		margin-left: auto;
		color: var(--beige);
		font-family: 'Font Awesome 6 Pro';
		font-size: 1.8rem;
		font-weight: 400;
		line-height: 1;
		transition: opacity 0.3s ease-in-out;
	}

	#hoofdmenu li.menu-item-has-children.current-menu-item > a:after,
	#hoofdmenu li.menu-item-has-children.current-menu-ancestor > a:after,
	#hoofdmenu li.menu-item-has-children.current-menu-parent > a:after{
		color: var(--oranje);
	}

	#hoofdmenu > li.menu_button{
		margin-top: 2rem;
		border-bottom: 0;
	}

	#hoofdmenu > li.menu_button > a{
		justify-content: center;
		width: auto;
		min-height: 0;
		padding: 1.2rem 3rem;
		border-radius: 1rem;
		background: var(--oranje);
		color: var(--groen) !important;
		font-size: 1.4rem;
		font-weight: 600;
		line-height: 1.4;
		opacity: 1;
	}

	#hoofdmenu > li.menu_button > a:hover,
	#hoofdmenu > li.menu_button > a:focus{
		background-color: oklch(from var(--oranje) calc(l - 0.04) c h);
		color: var(--groen) !important;
		opacity: 1;
	}

	#hoofdmenu > li > ul:before{
		display: none;
	}

	#hoofdmenu > li.menu-item-has-children > ul,
	#hoofdmenu li > ul,
	#hoofdmenu li > ul > li.menu-item-has-children > ul{
		position: absolute !important;
		top: 0;
		left: 0 !important;
		z-index: 2;
		display: block !important;
		width: 100%;
		min-height: 100dvh;
		height: auto;
		margin: 0;
		padding: 9rem 3rem 4rem;
		list-style: none;
		overflow-y: auto;
		background: var(--groen);
		box-shadow: none;
		transform: translateX(100%);
		transition: transform 0.3s ease-in-out;
	}

	#hoofdmenu li > ul > li.menu-item-has-children > ul{
		z-index: 3;
	}

	#hoofdmenu > li.menu-item-has-children.open > ul,
	#hoofdmenu li > ul > li.menu-item-has-children.open > ul{
		transform: translateX(0);
	}

	#hoofdmenu button,
	#hoofdmenu button:focus{
		display: flex;
		align-items: center;
		width: 100%;
		min-height: 5rem;
		margin: 0 0 2rem;
		padding: 0;
		border: 0;
		border-bottom: 0.1rem solid rgb(247 245 240 / 15%);
		background: transparent;
		box-shadow: none;
		outline: none;
		color: var(--beige);
		font-size: 1.5rem;
		font-weight: 400;
		line-height: 1.4;
		text-align: left;
	}

	#hoofdmenu button i{
		margin-right: 1rem;
		color: var(--oranje);
	}

	#hoofdmenu li.submenu-back-button{
		margin: 0;
		border-bottom: 0;
	}

	#hoofdmenu li ul li:not(.submenu-back-button) + li{
		margin-top: 0;
	}

	#hoofdmenu li.submenu-back-button button,
	#hoofdmenu li.submenu-back-button button:focus{
		min-height: 5.4rem;
		margin: 0;
		border-bottom: 0.1rem solid rgb(247 245 240 / 15%);
	}

	#hoofdmenu li.submenu-back-button button:hover{
		color: var(--oranje);
	}

	.submenu-back-button i:before{
		content: "\f104";
	}

	.openChild > li > a{
		opacity: 0;
	}

	#navbar-hoofdmenu .navbar-toggler{
		position: absolute;
		top: 2.5rem;
		right: 3rem;
		z-index: 50;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 4.4rem;
		aspect-ratio: 1;
		margin: 0;
		padding: 0;
		border: 0;
		border-radius: 50% !important;
		background: var(--beige);
		box-shadow: none !important;
		outline: none !important;
	}

	#navbar-hoofdmenu .navbar-toggler-icon{
		width: 1.8rem;
		height: 1.8rem;
		background-size: contain;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath fill='%23004D42' d='M324.5 411.1c6.2 6.2 16.4 6.2 22.6 0s6.2-16.4 0-22.6L214.6 256 347.1 123.5c6.2-6.2 6.2-16.4 0-22.6s-16.4-6.2-22.6 0L192 233.4 59.5 100.9c-6.2-6.2-16.4-6.2-22.6 0s-6.2 16.4 0 22.6L169.4 256 36.9 388.5c-6.2 6.2-6.2 16.4 0 22.6s16.4 6.2 22.6 0L192 278.6 324.5 411.1z'/%3E%3C/svg%3E");
	}

	.showmenu-bg{
		position: fixed;
		top: 0;
		right: 0;
		z-index: 9998;
		width: 100%;
		height: 100%;
		background: rgb(28 31 35 / 50%);
		opacity: 0;
		transition: background 0.3s ease-in-out;
	}

	#navbar{
		border: none;
	}

	body{
		position: relative;
	}

	body.collapsed{
		overflow: hidden;
	}
}
