@media (min-width: 600px) {
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(
      .is-menu-open
    ) {
    display: none;
  }

  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(
      .is-menu-open
    )
    .wp-block-navigation__responsive-container-close {
    display: none;
  }

  .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container {
    left: 0;
  }
}

@media (min-width: 600px) and (max-width: 863px) {
  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: flex;
  }
}

@media (min-width: 864px) {
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(
      .is-menu-open
    ) {
    display: block;
  }

  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(
      .is-menu-open
    )
    .wp-block-navigation__responsive-container-close {
    display: none;
  }

  .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container {
    left: 0;
  }
}

@media only screen and (max-width: 863px) {
	.is-menu-open.has-modal-open {
		padding: var(--wp--preset--spacing--medium);
	}

	.is-menu-open.has-modal-open .wp-block-navigation__container {
		width: 100%;
		gap: 5px !important;
	}

	.is-menu-open.has-modal-open .wp-block-page-list {
		width: 100%;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
		border-radius: 0;
		margin: 0;
		padding: 5px 0 0 20px;
		align-items: flex-start;
		flex-direction: column;
		gap: 5px;
		width: 100%;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon {
		display: block;
		position: absolute;
		right: 0;
		top: 5px;
		height: auto;
		width: 60px;
		padding: 15px 0;
		margin: 0;
	}

	body.rtl .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon {
		left: 0;
		right: auto;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon svg {
		height: 16px;
		margin: 0;
	}

	.wp-block-navigation .has-child .wp-block-navigation__submenu-container {
		display: none;
	}

	.wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ .wp-block-navigation-submenu {
		display: flex;
	}

	.is-menu-open.has-modal-open .wp-block-navigation__container li:not(.wp-social-link) {
		width: 100%;
		padding: 0 0;
		position: relative;
	}

	/* Mobile menu links */
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
		width: 100%;
		padding: 10px 0;
        box-sizing: border-box;
	}

	body.rtl .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
		padding: 15px 15px 15px 60px;
	}

	.wp-block-navigation__container .current-menu-item > .wp-block-navigation-item__content,
	.wp-block-navigation__container .wp-block-navigation-item:hover > .wp-block-navigation-item__content {
		text-decoration: none;
	}

	.wp-block-navigation__container .wp-block-navigation-item:has(.wp-block-navigation__submenu-container:hover) > .wp-block-navigation-item__content {
		background: transparent;
	}

	/* Mobile menu open button */
	.wp-block-navigation__responsive-container-close,
	.wp-block-navigation__responsive-container-open {
		padding: 4px;
		border-radius: 3px;
		background: var(--wp--preset--color--tertiary);
		color: var(--wp--preset--color--main);
	}

	/* Mobile menu close button */
	.wp-block-navigation__responsive-container-close {
		background: var(--wp--preset--color--tertiary);
		color: var(--wp--preset--color--main);
	}

	.is-menu-open.has-modal-open .wp-block-buttons {
		width: 100%;
	}

	.is-menu-open.has-modal-open .wp-block-buttons .wp-block-button {
		flex-basis: 100%;
		width: 100%;
	}

	.is-menu-open.has-modal-open .wp-block-buttons .wp-block-button__link {
		font-size: var(--wp--preset--font-size--md);
		flex-basis: 100%;
		width: 100%;
		padding: 15px;
	} 
}
