/* Markup round 2 (2026-09-03): hover / motion pins that cut across pages.
 * Pins 11, 13, 26, 40, 45, 46 in .claude/markup-review-2026-09-03.json. */

/* Pin 13 — fill buttons that carry preset colour classes in their markup
 * (has-theme-03-background-color / has-theme-09-color: events "Learn More",
 * news "Read More" etc.). Core emits those preset classes with !important, so
 * theme.json's elements.button:hover (white fill / theme-03 text) never lands
 * on them. Re-assert the token pair at the same weight. */
.wp-block-button__link.has-theme-03-background-color:hover,
.wp-block-button__link.has-theme-03-background-color:focus-visible,
.wp-block-button__link.has-theme-06-background-color:hover,
.wp-block-button__link.has-theme-06-background-color:focus-visible {
	background-color: var(--wp--custom--color--button--fill--hover--background) !important;
	color: var(--wp--custom--color--button--fill--hover--text) !important;
}

/* Pin 11 — news category filter pills (outline style, white keyline). Hover
 * fills white with theme-03 text like every other outline button. The active
 * pill (white fill) keeps its dark text; blue text is the hover cue. */
.cmp-news-filter .wp-block-button__link:hover,
.cmp-news-filter .wp-block-button__link:focus-visible {
	background-color: var(--wp--preset--color--theme-01) !important;
	color: var(--wp--preset--color--theme-03) !important;
	border-color: var(--wp--preset--color--theme-01) !important;
}

/* Pins 26 / 40 / 45 — "bounce" on hover for the card grids: services +
 * home capability tiles, home teams cards, AMT capability blocks. Same lift
 * the industries tiles got in round 1 (cmp-home-industries.css) but on an
 * overshooting curve so the tile springs up rather than slides. */
.cmp-home-capabilities .cmp-card,
.cmp-home-teams .cmp-card,
.cmp-amt-feature-grid .cmp-fgc-card {
	transition: transform 360ms cubic-bezier(0.34, 1.56, 0.64, 1),
		box-shadow 360ms ease;
	will-change: transform;
}

.cmp-home-capabilities .cmp-card:hover,
.cmp-home-capabilities .cmp-card:focus-within,
.cmp-home-teams .cmp-card:hover,
.cmp-home-teams .cmp-card:focus-within,
.cmp-amt-feature-grid .cmp-fgc-card:hover,
.cmp-amt-feature-grid .cmp-fgc-card:focus-within {
	transform: translateY(-8px);
	box-shadow: 0 14px 30px rgb(4 11 32 / 55%);
}

/* Pin 46 — every 50/50 section fades in as it enters the viewport, site-wide.
 * Reuses the Kindling reveal trigger: cmp-interactive.js tags .cmp-cta-split
 * with is-style-reveal-fade-up so motion.js flips is-revealed; the animation
 * itself lives in motion.css. Longer/softer than the stock 200ms so it reads
 * as "subtle fade" rather than a snap. Hidden state is only applied once JS
 * has tagged the element, so no-JS renders stay visible. */
[class*="cmp-"].is-style-reveal-fade-up.is-revealed {
	animation-duration: 700ms;
}

@media (prefers-reduced-motion: reduce) {

	.cmp-home-capabilities .cmp-card,
	.cmp-home-teams .cmp-card,
	.cmp-amt-feature-grid .cmp-fgc-card {
		transition: none;
	}

	.cmp-home-capabilities .cmp-card:hover,
	.cmp-home-teams .cmp-card:hover,
	.cmp-amt-feature-grid .cmp-fgc-card:hover {
		transform: none;
	}
}
