.dermisa-banner-carousel {
	position: relative;
	width: 100%;
	max-width: 100%;
	overflow: hidden;
	border-radius: 12px;
	direction: ltr; /* thumbnail order stays predictable regardless of RTL theme */
}

.dermisa-banner-carousel .dbc-track {
	display: flex;
	transition: transform 0.5s ease;
	touch-action: pan-y;
}

.dermisa-banner-carousel .dbc-slide {
	flex: 0 0 100%;
	display: block;
	line-height: 0;
}

.dermisa-banner-carousel .dbc-slide img {
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 21 / 8;
	object-fit: cover;
}

@media (max-width: 768px) {
	.dermisa-banner-carousel .dbc-slide img {
		aspect-ratio: 16 / 10;
	}
}

.dermisa-banner-carousel .dbc-dots {
	position: absolute;
	bottom: 12px;
	left: 0;
	right: 0;
	display: flex;
	justify-content: center;
	gap: 8px;
	z-index: 2;
}

.dermisa-banner-carousel .dbc-dots span {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.65);
	cursor: pointer;
	transition: background 0.2s ease;
}

.dermisa-banner-carousel .dbc-dots span.active {
	background: #c6a15b;
}

.dermisa-banner-carousel .dbc-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: rgba(74, 55, 40, 0.6);
	color: #fff;
	border: none;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	cursor: pointer;
	font-size: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
}

.dermisa-banner-carousel .dbc-arrow:hover {
	background: rgba(74, 55, 40, 0.85);
}

.dermisa-banner-carousel .dbc-prev {
	left: 12px;
}

.dermisa-banner-carousel .dbc-next {
	right: 12px;
}

@media (max-width: 480px) {
	.dermisa-banner-carousel .dbc-arrow {
		width: 28px;
		height: 28px;
		font-size: 12px;
	}
}
