/* PRE Base: things theme.json cannot do. Keep it short. */

:where(a, button, input, select, textarea, summary):focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

/* Skip link target should not show an outline on click. */
main:focus { outline: none; }

/* Images never overflow their container. */
img, video { max-width: 100%; height: auto; }

/* Full screen navigation overlay: centred, large links. */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	align-items: flex-start;
	justify-content: center;
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

/* Full screen menu: sub menus stay shut until their parent is tapped (script in functions.php).
   Only where the menu has tap-to-open buttons, so sub menus are never unreachable. */
.is-menu-open .has-child:not(.pre-sub-open) > .wp-block-navigation-submenu__toggle ~ .wp-block-navigation__submenu-container { display: none; }
.is-menu-open .has-child > .wp-block-navigation-submenu__toggle::after { content: " +"; }
.is-menu-open .has-child.pre-sub-open > .wp-block-navigation-submenu__toggle::after { content: " \2212"; }
