/* Global interaction feedback loaded after page-specific styles. */
a,
button {
	transition:
		color 0.22s ease,
		background-color 0.22s ease,
		border-color 0.22s ease,
		opacity 0.22s ease,
		filter 0.22s ease,
		transform 0.22s ease,
		box-shadow 0.22s ease;
}

main a .img_box img,
main a .img_100 img,
main [data-video] img {
	transition: transform 0.45s ease;
}

@media (hover: hover) {
	a:hover,
	button:hover {
		filter: brightness(0.94);
	}

	main a:hover,
	main button:hover {
		transform: translateY(-2px);
	}

	main a:hover .img_box img,
	main a:hover .img_100 img,
	main [data-video]:hover img {
		transform: scale(1.045);
	}

	main [data-video]:hover .controlIcon {
		transform: scale(1.14);
	}

	.SharedHeader .iconButton:hover,
	.SharedHeader .iconButton:focus-visible {
		border-radius: 50%;
		background: #f2f3f4;
		color: var(--site-red);
		transform: translateY(-2px);
	}

	.SharedFooter a:hover,
	.SharedFooter a:focus-visible {
		color: #fff;
		opacity: 0.72;
	}
}

/* Primary page titles. */
.HomeHero h1 {
	font-size: 56px;
	line-height: 70px;
}

.ProductsHero h1,
.ProductListHero h1,
.VideosHero h1,
.ServicesHero h1,
.WarrantyHero h1,
.FaqHero h1,
.DownloadsHero h1,
.SupportHero h1,
.NewsHero h1,
.ContactHero h1,
.ProductDetailTop .productCopy h1,
.SoftwareDetail .softwarePanel h1,
.NewsDetail article header h1 {
	font-size: 46px;
	line-height: 58px;
}

/* Major section titles. */
.HomeProducts .sectionHeading h2,
.HomeVideos .sectionHeading h2,
.HomeServices .sectionHeading h2,
.HomeNews .sectionHeading h2,
.ProductCategories h2,
.WarrantyIntro h2,
.WarrantyProcess h2,
.SharedContactCta h2 {
	font-size: 34px;
	line-height: 46px;
}

@media only screen and (max-width: 1440px) {
	.HomeHero h1 {
		font-size: 48px;
		line-height: 60px;
	}

	.ProductsHero h1,
	.ProductListHero h1,
	.VideosHero h1,
	.ServicesHero h1,
	.WarrantyHero h1,
	.FaqHero h1,
	.DownloadsHero h1,
	.SupportHero h1,
	.NewsHero h1,
	.ContactHero h1,
	.ProductDetailTop .productCopy h1,
	.SoftwareDetail .softwarePanel h1,
	.NewsDetail article header h1 {
		font-size: 40px;
		line-height: 52px;
	}

	.HomeProducts .sectionHeading h2,
	.HomeVideos .sectionHeading h2,
	.HomeServices .sectionHeading h2,
	.HomeNews .sectionHeading h2,
	.ProductCategories h2,
	.WarrantyIntro h2,
	.WarrantyProcess h2,
	.SharedContactCta h2 {
		font-size: 30px;
		line-height: 42px;
	}
}

@media only screen and (max-width: 768px) {
	.HomeHero h1 {
		font-size: 36px;
		line-height: 48px;
	}

	.ProductsHero h1,
	.ProductListHero h1,
	.VideosHero h1,
	.ServicesHero h1,
	.WarrantyHero h1,
	.FaqHero h1,
	.DownloadsHero h1,
	.SupportHero h1,
	.NewsHero h1,
	.ContactHero h1,
	.ProductDetailTop .productCopy h1,
	.SoftwareDetail .softwarePanel h1,
	.NewsDetail article header h1,
	.FaqDetail article header h1,
	.VideoDetail .articleHeader h1 {
		font-size: 30px;
		line-height: 40px;
	}

	.HomeProducts .sectionHeading h2,
	.HomeVideos .sectionHeading h2,
	.HomeServices .sectionHeading h2,
	.HomeNews .sectionHeading h2,
	.ProductCategories h2,
	.WarrantyIntro h2,
	.WarrantyProcess h2,
	.SharedContactCta h2 {
		font-size: 26px;
		line-height: 36px;
	}
}
