/* ==========================================================================
   DonDigital Reseñas — estilos base del widget
   Casi todo es personalizable desde Elementor (pestaña Estilo).
   Estos valores son solo los de partida.
   Fuente por defecto: Inter Tight 400 · Color: #3771ce
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter+Tight:wght@300;400;500;600;700&display=swap');

.ddr-wrap {
	--ddr-color: #3771ce;
	font-family: 'Inter Tight', sans-serif;
	font-weight: 400;
	width: 100%;
	box-sizing: border-box;
}

.ddr-wrap *,
.ddr-wrap *::before,
.ddr-wrap *::after {
	box-sizing: border-box;
}

/* ---- Línea superior ------------------------------------------------------ */
.ddr-linea {
	height: 1px;
	width: 100%;
	background: var(--ddr-color);
	margin-bottom: 28px;
}

/* ---- Cabecera: título · número · flechas -------------------------------- */
.ddr-header {
	display: flex;
	align-items: center;
	gap: 24px;
}

.ddr-titulo {
	color: var(--ddr-color);
	font-size: 26px;
	line-height: 1.15;
	font-weight: 400;
	margin: 0;
}

/* El número queda en MEDIO: márgenes automáticos a ambos lados lo
   centran en el hueco entre el título y las flechas. */
.ddr-contador-top {
	margin-left: auto;
	margin-right: auto;
}

.ddr-flechas {
	display: flex;
	align-items: center;
	gap: 22px;
	flex: 0 0 auto;
}

.ddr-contador {
	color: var(--ddr-color);
	font-size: 26px;
	font-weight: 400;
	line-height: 1;
	white-space: nowrap;
}

.ddr-contador-bottom {
	display: none;
}

.ddr-sep {
	margin: 0 2px;
}

/* ---- Flechas ------------------------------------------------------------- */
.ddr-flechas button {
	background: none;
	border: none;
	cursor: pointer;
	color: var(--ddr-color);
	padding: 0;
	line-height: 0;
	display: inline-flex;
	align-items: center;
	transition: opacity .2s ease, transform .2s ease;
}

.ddr-flechas button:hover {
	opacity: .65;
}

.ddr-flechas button:active {
	transform: scale(.94);
}

.ddr-flechas button:focus-visible {
	outline: 2px solid var(--ddr-color);
	outline-offset: 4px;
	border-radius: 2px;
}

.ddr-flecha-img {
	width: 40px;
	height: auto;
	display: block;
}

.ddr-flecha-icono {
	font-size: 40px;
	line-height: 1;
	display: inline-flex;
}

.ddr-flecha-icono svg {
	width: 1em;
	height: 1em;
	fill: currentColor;
}

/* ---- Carrusel (deslizamiento suave) ------------------------------------- */
.ddr-viewport {
	overflow: hidden;
	margin-top: 44px;
}

.ddr-track {
	display: flex;
	transition: transform .6s cubic-bezier(.4, 0, .2, 1);
	will-change: transform;
}

.ddr-slide {
	flex: 0 0 100%;
	min-width: 100%;
	display: grid;
	grid-template-columns: minmax(200px, 280px) 1fr;
	gap: 48px;
	align-items: start;
}

/* ---- Columna izquierda: nombre + círculos ------------------------------- */
.ddr-nombre {
	color: #222;
	font-size: 20px;
	font-weight: 400;
	margin: 0 0 16px;
	line-height: 1.25;
}

.ddr-circulos {
	display: flex;
	gap: 8px;
}

.ddr-circulo {
	width: 26px;
	height: 26px;
	border-radius: 50%;
	display: inline-block;
	border: 2px solid var(--ddr-color);
	position: relative;
	overflow: hidden;
	flex: 0 0 auto;
}

.ddr-circulo.ddr-lleno {
	background: var(--ddr-color);
}

.ddr-circulo.ddr-vacio {
	background: transparent;
}

.ddr-circulo.ddr-medio::before {
	content: "";
	position: absolute;
	inset: 0;
	width: 50%;
	background: var(--ddr-color);
}

/* ---- Columna derecha: texto --------------------------------------------- */
.ddr-cita {
	color: #222;
	font-size: 20px;
	line-height: 1.55;
	margin: 0;
	font-weight: 400;
}

/* ---- Responsive: número al fondo, centrado ------------------------------ */
@media (max-width: 767px) {
	.ddr-linea {
		margin-bottom: 20px;
	}

	.ddr-header {
		gap: 16px;
	}

	.ddr-titulo {
		font-size: 22px;
	}

	.ddr-flecha-img,
	.ddr-flecha-icono {
		width: 34px;
		font-size: 34px;
	}

	.ddr-viewport {
		margin-top: 28px;
	}

	.ddr-slide {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.ddr-nombre {
		font-size: 18px;
		margin-bottom: 12px;
	}

	.ddr-circulo {
		width: 22px;
		height: 22px;
	}

	.ddr-cita {
		font-size: 18px;
	}

	/* El número de arriba desaparece y baja al fondo, centrado */
	.ddr-contador-top {
		display: none;
	}

	.ddr-contador-bottom {
		display: block;
		margin-top: 28px;
		text-align: center;
		font-size: 22px;
	}
}
