.ftbw-cat-logos {
	--ftbw-circle-size: 118px;
	--ftbw-circle-pad: 22px;
	--ftbw-circle-bg: #2b1848;
	--ftbw-circle-bg-hover: var(--ftbw-circle-bg);
	--ftbw-circle-scale: 1.04;
	--ftbw-label-color: #1a4b9c;
	--ftbw-label-color-hover: var(--ftbw-label-color);
	--ftbw-label-gap: 12px;
	--ftbw-dot-color: #2b1848;
	--ftbw-dot-inactive: rgba(43, 24, 72, 0.28);
	--ftbw-arrow-color: #2b1848;
	--ftbw-arrow-size: 28px;
	position: relative;
	width: 100%;
}

.ftbw-cat-logos__swiper {
	overflow: hidden;
	width: 100%;
}

.ftbw-cat-logos__slide.swiper-slide,
.ftbw-cat-logos__slide {
	display: flex !important;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	height: auto;
	text-align: center;
}

.ftbw-cat-logos__item {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: flex-start;
	gap: 0;
	width: var(--ftbw-circle-size) !important;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	text-decoration: none;
	color: inherit;
	text-align: center !important;
}

.ftbw-cat-logos__circle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: var(--ftbw-circle-size);
	height: var(--ftbw-circle-size);
	padding: var(--ftbw-circle-pad);
	box-sizing: border-box;
	background-color: var(--ftbw-item-circle, var(--ftbw-circle-bg));
	border-radius: 50%;
	overflow: hidden;
	transition: transform 0.25s ease, background-color 0.25s ease;
}

.ftbw-cat-logos__item:hover .ftbw-cat-logos__circle {
	background-color: var(--ftbw-item-circle, var(--ftbw-circle-bg-hover));
	transform: scale(var(--ftbw-circle-scale));
}

.ftbw-cat-logos__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.ftbw-cat-logos--filter-white .ftbw-cat-logos__img {
	filter: brightness(0) invert(1);
}

.ftbw-cat-logos--filter-black .ftbw-cat-logos__img {
	filter: brightness(0);
}

.ftbw-cat-logos__fallback {
	font-size: calc(var(--ftbw-circle-size) * 0.38);
	font-weight: 700;
	line-height: 1;
	color: #fff;
	text-transform: uppercase;
}

.ftbw-cat-logos__label {
	display: block !important;
	box-sizing: border-box;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: 100%;
	color: var(--ftbw-item-label, var(--ftbw-label-color));
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.25;
	text-align: center !important;
	text-transform: uppercase;
	transition: color 0.2s ease;
}

.ftbw-cat-logos--label-below .ftbw-cat-logos__label {
	margin-top: var(--ftbw-label-gap, 12px);
}

.ftbw-cat-logos--label-above .ftbw-cat-logos__label {
	margin-bottom: var(--ftbw-label-gap, 12px);
}

.ftbw-cat-logos__item:hover .ftbw-cat-logos__label {
	color: var(--ftbw-item-label, var(--ftbw-label-color-hover));
}

.ftbw-cat-logos__pagination {
	position: static !important;
	margin-top: 18px;
	text-align: center;
}

.ftbw-cat-logos__pagination .swiper-pagination-bullet {
	width: 8px;
	height: 8px;
	margin: 0 4px !important;
	background: var(--ftbw-dot-inactive);
	opacity: 1;
	border-radius: 999px;
	transition: width 0.25s ease, background-color 0.25s ease;
}

.ftbw-cat-logos__pagination .swiper-pagination-bullet-active {
	background: var(--ftbw-dot-color);
}

.ftbw-cat-logos__pagination--pills .swiper-pagination-bullet-active {
	width: 26px;
}

.ftbw-cat-logos__arrow,
.ftbw-cat-logos__arrow:hover,
.ftbw-cat-logos__arrow:focus,
.ftbw-cat-logos button.ftbw-cat-logos__arrow {
	position: absolute;
	top: calc(var(--ftbw-circle-size) / 2);
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--ftbw-arrow-size);
	height: var(--ftbw-arrow-size);
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--ftbw-arrow-color);
	cursor: pointer;
	transform: translateY(-50%);
	white-space: normal;
	font-size: 0;
	line-height: 0;
}

.ftbw-cat-logos__arrow svg {
	display: block;
	width: 100%;
	height: 100%;
	color: inherit;
}

.ftbw-cat-logos__arrow svg path {
	stroke: currentColor;
}

.ftbw-cat-logos__arrow:before,
.ftbw-cat-logos__arrow:after {
	display: none !important;
	content: none !important;
}

.ftbw-cat-logos__arrow.is-prev {
	left: 0;
}

.ftbw-cat-logos__arrow.is-next {
	right: 0;
}

.ftbw-cat-logos:has(.ftbw-cat-logos__arrow) .ftbw-cat-logos__swiper {
	padding: 0 calc(var(--ftbw-arrow-size) + 8px);
}

.ftbw-cat-logos__arrow:hover {
	opacity: 0.72;
}

.ftbw-cat-logos__arrow:disabled {
	opacity: 0.28;
	cursor: default;
}

.ftbw-cat-logos__notice {
	padding: 16px;
	border: 1px dashed #c4c4c4;
	color: #666;
	text-align: center;
}
