.ts-accordion-panel:is(.is-active, :hover, :focus-within) img { filter: none; transform: scale(1.025); }
.ts-accordion-panel:is(.is-active, :hover, :focus-within) .ts-accordion-panel__label { opacity: 1; }
.ts-accordion-hero__content :where(h1, p) { color: inherit; }

/* CMS-authored horizontal image accordion used by Custom Solutions. */
.ts-accordion-hero { background: var(--ts-ink); display: flex; height: clamp(30rem, 52vw, 40rem); isolation: isolate; margin-inline: calc(50% - 50vw) !important; max-width: none !important; overflow: hidden; position: relative; width: 100vw; }
.ts-accordion-hero__panels { display: flex; height: 100%; width: 100%; }
.ts-accordion-panel { flex: 1 1 0; min-width: 0; overflow: hidden; position: relative; transition: flex-grow 700ms cubic-bezier(.22, 1, .36, 1); }
.ts-accordion-panel::after { background: linear-gradient(180deg, transparent 45%, rgb(8 10 12 / 82%)); content: ""; inset: 0; position: absolute; }
.ts-accordion-panel.is-active,
.ts-accordion-panel:hover,
.ts-accordion-panel:focus-within { flex-grow: 4.5; }
.ts-accordion-panel > a { color: var(--ts-white); display: block; height: 100%; text-decoration: none; }
.ts-accordion-panel img { height: 100%; inset: 0; max-width: none; object-fit: cover; object-position: center; position: absolute; transition: filter 300ms, transform 700ms cubic-bezier(.22, 1, .36, 1); width: 100%; }
.ts-accordion-panel:not(.is-active) img { filter: saturate(.7) brightness(.72); }
.ts-accordion-panel__label { bottom: 1.5rem; font-family: var(--wp--preset--font-family--display); font-size: clamp(1rem, 2vw, 1.4rem); font-weight: 700; left: 1.25rem; line-height: 1.05; opacity: .78; position: absolute; text-transform: uppercase; transform-origin: left bottom; transition: opacity 300ms; white-space: nowrap; z-index: 2; }
.ts-accordion-hero__content { backdrop-filter: blur(6px); background: rgb(16 19 22 / 88%); border-left: .45rem solid var(--ts-red); color: var(--ts-white); left: max(0px, calc((100vw - 1200px) / 2)); max-width: min(37rem, 48vw); padding: clamp(1.75rem, 4vw, 3.5rem); pointer-events: none; position: absolute; top: 50%; transform: translateY(-50%); z-index: 4; }
.ts-accordion-hero__content h1 { font-size: clamp(3.25rem, 7vw, 6.5rem); margin: 0; text-transform: uppercase; }
.ts-accordion-hero__content .ts-kicker,
.ts-accordion-hero__content h1 strong { color: #f12643; }

@media (max-width: 781px) {
	.ts-accordion-hero { height: 36rem; }
	.ts-accordion-hero__panels { flex-direction: column; }
	.ts-accordion-panel.is-active,
	.ts-accordion-panel:hover,
	.ts-accordion-panel:focus-within { flex-grow: 3; }
	.ts-accordion-panel__label { bottom: .65rem; left: 1rem; }
	.ts-accordion-hero__content { left: 1rem; max-width: calc(100% - 2rem); right: 1rem; }}
