/**
 * Granpai — Hover Polish (nav links only). See inc/animation-presets.php.
 *
 * Buttons are DELIBERATELY untouched by this file — a real, confirmed
 * lesson from three separate broken attempts at adding a hover effect
 * here (a duplicate-DOM wave that garbled text on flex buttons, a
 * fixed-color wipe that produced illegible dark-on-dark on scheme
 * buttons, then disappeared into an already-dark section background,
 * and a filter:brightness() version that at least didn't break
 * anything outright but still duplicated logic that was never
 * missing). Every button on the site already has its own complete,
 * context-aware hover treatment defined where it belongs:
 *   - .btn-primary / .btn-secondary — granpai-main/assets/css/main.css
 *     (including the --section-btn-bg/--section-text scheme-aware
 *     variants for buttons on custom-colored sections)
 *   - .ge-dsl-btn--primary/secondary/outline/ghost — this theme's own
 *     assets/css/dsl.css
 * Both were already correct and complete before any of this file's
 * button rules existed. Layering a THIRD hover mechanism on top from
 * here was never filling a gap — it was overriding or fighting
 * systems that already worked, which is what caused every bug this
 * file's button rules went through. If a button's hover ever
 * genuinely needs adjusting, that's a change to make in main.css or
 * dsl.css, next to the rest of that button type's own styling — not
 * a new, separate rule added here.
 */

[class*="anim-preset-"] .header-nav-list a::after {
	left: 50%;
	right: 50%;
	width: auto;
	transition: left .3s cubic-bezier(.16,1,.3,1), right .3s cubic-bezier(.16,1,.3,1);
}
[class*="anim-preset-"] .header-nav-list a:hover::after {
	left: 0;
	right: 0;
}
[class*="anim-preset-"] .header-nav-list:hover a:not(:hover) {
	opacity: .5;
	transition: opacity .3s ease;
}

@media (prefers-reduced-motion: reduce) {
	[class*="anim-preset-"] .header-nav-list:hover a:not(:hover) { opacity: 1; }
}
