/* Image sliders (replace Slider Revolution): home page hero and [platinum_slider] */
.platinum-slider { position: relative; overflow: hidden; }
.platinum-slider--hero { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
/* Slider Revolution's 1240 × 868 "full width" layout: that shape up to 868px tall, filling the banner at least. */
.platinum-slider--tall { bottom: auto; width: 100%; aspect-ratio: 1240 / 868; max-height: 868px; min-height: 100%; }
.platinum-slide { position: absolute; top: 0; right: 0; bottom: 0; left: 0; opacity: 0; z-index: 0; }
.platinum-slide.is-prev { opacity: 1; z-index: 1; }
.platinum-slide.is-active { opacity: 1; z-index: 2; }
.platinum-slide img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center center; }
/* Only slides shown by the slider animate, not the first one on page load. */
.platinum-slider--hero.is-playing .platinum-slide.is-active { animation: platinum-slide-in .9s ease-out; }
.platinum-slider--hero.is-playing .platinum-slide.is-active[data-transition="fade"] { animation: platinum-slide-fade .6s ease-in-out; }
/* "Slide down": the old slide shrinks towards the top left while the new one comes down over it. */
.platinum-slider--hero.is-playing .platinum-slide.is-active[data-transition="slide"] { animation: platinum-slide-down .45s .15s ease-out both; }
.platinum-slider--hero.is-playing[data-transition="slide"] .platinum-slide.is-prev { animation: platinum-slide-shrink .6s ease-in-out forwards; transform-origin: 0 0; }
.platinum-slider--fade.is-playing .platinum-slide.is-active { animation: platinum-slide-fade .3s linear; }
@keyframes platinum-slide-in {
	from { opacity: 0; transform: scale(1.05); }
	10% { opacity: 1; }
	to { opacity: 1; transform: scale(1); }
}
@keyframes platinum-slide-down {
	from { transform: translateY(-100%); }
	to { transform: translateY(0); }
}
@keyframes platinum-slide-shrink {
	to { transform: scale(.9); }
}
@keyframes platinum-slide-fade {
	from { opacity: 0; }
	to { opacity: 1; }
}
/* Slider Revolution placed the bullets 20px plus 5% of the slider height above the bottom. */
.platinum-slider-bullets { position: absolute; left: 50%; bottom: calc(20px + 5%); z-index: 3; display: flex; gap: 15px; transform: translateX(-50%); line-height: 0; }
#banner .platinum-slider-bullets button {
	width: 14px; height: 14px; min-width: 0; margin: 0; padding: 0;
	border: 1px solid #e5e5e5; border-radius: 0; box-shadow: none;
	background: #aaa; transform: rotate(45deg); cursor: pointer;
}
#banner .platinum-slider-bullets button:hover,
#banner .platinum-slider-bullets button.is-active { background: #000; }
@media (prefers-reduced-motion: reduce) {
	.platinum-slider.is-playing .platinum-slide { animation: none !important; }
}
