/* Customer-supplied layouts, scoped to avoid changing existing product pages. */
body:has(.mixr-customer-product) .navbar-container { background: #153165; }
.mixr-customer-product { margin-top: 86px; line-height: 1.6; }
.mixr-customer-product *, .mixr-customer-product *::before, .mixr-customer-product *::after { box-sizing: border-box; }
.mixr-customer-product :where(div, p, span, h1, h2, h3) { color: inherit; line-height: inherit; }
.mixr-customer-product img { max-width: 100%; }
.mixr-customer-product .mixr-product-heading {
	font-size: clamp(28px, 3.3vw, 48px) !important;
	line-height: 1.2 !important;
	white-space: normal !important;
	overflow-wrap: break-word;
}
.mixr-customer-product h2 { top: auto !important; }
.mixr-customer-product h3 { font-size: clamp(22px, 2.1vw, 31px) !important; line-height: 1.25 !important; white-space: normal !important; }
.mixr-product-columns > * { min-width: 0; }
.mixr-product-columns > img { width: 60% !important; height: auto; }
.mixr-product-columns > [aria-label] { white-space: normal !important; }
.mixr-film-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px 56px; }
.mixr-film { display: flex; flex-direction: column; text-align: center; }
.mixr-film h3 { padding-bottom: 16px; border-bottom: 4px solid #223b8c; }
.mixr-film p { margin: 0 0 20px; font-size: 18px; font-weight: 700; }
.mixr-film img { width: 100%; height: auto; border-radius: 20px; margin-top: auto; }
.mixr-product-rotate-90 { transform: rotate(90deg); }
.mixr-product-rotate-180 { transform: rotate(180deg); }
.mixr-product-rotate-270 { transform: rotate(270deg); }

.mixr-new-products { padding: 72px 0; background: #e3eaf3; color: #183d80; }
.mixr-new-products h2 { margin: 0 0 32px; color: inherit; font-size: clamp(26px, 3vw, 40px); font-weight: 800; }
.mixr-new-products__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.mixr-new-products__card { display: flex; flex-direction: column; background: #fff; color: #183d80; text-decoration: none; border: 1px solid #ccd6e5; }
.mixr-new-products__card > img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.mixr-new-products__card > div { padding: 24px; display: flex; flex: 1; flex-direction: column; }
.mixr-new-products__card p { margin: 0 0 10px; color: #52647f; font-size: 14px; line-height: 1.5; }
.mixr-new-products__card h3 { margin: 0 0 24px; color: inherit; font-size: 24px; font-weight: 800; }
.mixr-new-products__card span { margin-top: auto; font-size: 14px; font-weight: 700; }
.mixr-new-products__card:hover { color: #183d80; box-shadow: 0 8px 24px #183d8018; }
.mixr-new-products__card:focus-visible { outline: 3px solid #183d80; outline-offset: 4px; }

/* Customer cover artwork includes titles: display the entire supplied image. */
img[src*="/assets/images/product-covers/"] { object-fit: contain !important; background: #142c58; }

@media (max-width: 1100px) {
	.mixr-customer-product__inner { padding: 40px 28px 0 !important; }
	.mixr-customer-product section { padding-left: 0 !important; padding-right: 0 !important; }
	.mixr-customer-product .mixr-product-columns { gap: 28px !important; }
	.mixr-new-products__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
	body:has(.mixr-customer-product) .fixed-bar { display: none; }
	.mixr-customer-product { margin-top: 60px; min-width: 0 !important; }
	.mixr-customer-product__inner { padding: 32px 20px 0 !important; }
	.mixr-customer-product section { margin-bottom: 48px !important; }
	.mixr-customer-product .mixr-product-columns { flex-direction: column; align-items: stretch !important; gap: 24px !important; }
	.mixr-customer-product .mixr-product-columns > * { flex: auto !important; width: 100% !important; min-height: 0 !important; }
	.mixr-customer-product .mixr-product-columns > div:has(> video) { aspect-ratio: 1.72; }
	.mixr-customer-product video { width: 100% !important; height: auto !important; }
	.mixr-customer-product .mixr-product-columns br { display: none; }
	.mixr-customer-product .mixr-product-columns [aria-hidden="true"] { display: none; }
	.mixr-customer-product img[aria-hidden="true"] { display: none; }
	.mixr-customer-product section > div:has(> .mixr-product-heading) > div[style*="height:3px"] { min-width: 0; flex: 1 !important; }
	.mixr-customer-product .mixr-product-columns p { width: 100% !important; margin: 16px 0 !important; font-size: 17px !important; }
	.mixr-customer-product .mixr-product-columns [aria-label] { font-size: 20px !important; }
	.mixr-customer-product h3 { margin-top: 20px !important; }
	.mixr-customer-product h2.mixr-product-heading { flex-wrap: wrap; justify-content: center; gap: 8px !important; }
	.mixr-customer-product .mixr-product-heading span,
	.mixr-customer-product .mixr-product-heading b { white-space: normal !important; }
	.mixr-customer-product .mixr-product-theme { width: 100% !important; }
	.mixr-customer-product div:has(> .mixr-product-theme) { padding: 0 !important; gap: 40px !important; }
	.mixr-film-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.mixr-customer-product section > div:has(> h2.mixr-product-heading:only-child) { margin: 24px 0 !important; }
	.mixr-customer-product section > div > .mixr-product-heading[style*="nowrap"] { padding-left: 0 !important; padding-right: 0 !important; }
	.mixr-new-products { padding: 40px 0; }
}
@media (max-width: 479px) {
	.mixr-new-products__grid { grid-template-columns: minmax(0, 1fr); }
}
