.agate-logo-carousel {
	position: relative;
	width: 100%;
}

.agate-logo-carousel__viewport {
	overflow: hidden;
	width: 100%;
}

.agate-logo-carousel__track {
	align-items: center;
	transition-timing-function: linear !important;
}

.agate-logo-carousel__item {
	position: relative;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	box-sizing: border-box;
	width: auto !important;
}

.agate-logo-carousel__image,
.agate-logo-carousel__svg-mask {
	display: block;
	width: auto;
	max-width: none;
	height: 32px;
	transition: opacity 0.25s ease, transform 0.25s ease, background-color 0.25s ease;
}

.agate-logo-carousel__image--default {
	opacity: 1;
}

.agate-logo-carousel__image--hover {
	position: absolute;
	inset: 50% auto auto 50%;
	transform: translate(-50%, -50%);
	opacity: 0;
	pointer-events: none;
}

.agate-logo-carousel__item:hover .agate-logo-carousel__image--default {
	opacity: 0;
}

.agate-logo-carousel__item:hover .agate-logo-carousel__image--hover {
	opacity: 1;
}

.agate-logo-carousel__svg-mask {
	background-color: var(--agate-svg-default, #ffffff);
	-webkit-mask-image: var(--agate-svg-url);
	mask-image: var(--agate-svg-url);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
	aspect-ratio: 4 / 1;
}

.agate-logo-carousel__item:hover .agate-logo-carousel__svg-mask {
	background-color: var(--agate-svg-hover, #4f46e5);
}

.agate-logo-carousel__arrows {
	position: absolute;
	inset: 50% 0 auto;
	display: flex;
	justify-content: space-between;
	transform: translateY(-50%);
	z-index: 2;
}

.agate-logo-carousel__arrow {
	border: 0;
	background: rgba(255, 255, 255, 0.08);
	color: currentColor;
	inline-size: 2.5em;
	block-size: 2.5em;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 999px;
	cursor: pointer;
	backdrop-filter: blur(4px);
}

.agate-logo-carousel__dots {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-top: 16px;
}

.agate-logo-carousel__dot {
	border: 0;
	border-radius: 999px;
	width: 8px;
	height: 8px;
	background: rgba(255, 255, 255, 0.35);
	padding: 0;
	cursor: pointer;
}

.agate-logo-carousel__dot.is-active {
	background: #ffffff;
}
