/* Raizz Motion – widget Testimonios */
.rzm-ts {
	--rzm-ts-accent: var(--green, #76b900);
	--rzm-ts-radius: 28px;
	--rzm-ts-ratio: 4 / 5;
	color: var(--fg, inherit);
}
.rzm-ts__stage {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 6fr) minmax(0, 2fr);
	gap: clamp(20px, 3.5vw, 56px);
	align-items: center;
	overflow: hidden;
	padding-block: 4px;
}

/* Foto grande */
.rzm-ts__photo { position: relative; aspect-ratio: var(--rzm-ts-ratio); border-radius: var(--rzm-ts-radius); overflow: hidden; background: var(--sb, #eee); }
.rzm-ts__img { position: absolute; inset: 0; visibility: hidden; }
.rzm-ts__img.is-active { visibility: visible; z-index: 2; }
.rzm-ts__img.is-leaving { visibility: visible; z-index: 1; }
.rzm-ts__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rzm-ts__initial { display: grid; place-items: center; width: 100%; height: 100%; font: 800 clamp(64px, 10vw, 140px)/1 'Syne', sans-serif; color: var(--rzm-ts-accent); }

/* Cita */
.rzm-ts__main { position: relative; display: flex; flex-direction: column; gap: clamp(24px, 3vw, 40px); min-width: 0; }
.rzm-ts__mark { font: 800 clamp(64px, 7vw, 110px)/.6 'Syne', serif; color: var(--rzm-ts-accent); height: .45em; }
.rzm-ts__slides { display: grid; }
.rzm-ts__slide { grid-area: 1 / 1; margin: 0; }
.rzm-ts__slide[hidden] { display: none; }
.rzm-ts__quote { margin: 0; padding: 0; border: 0; font: 500 clamp(20px, 2.1vw, 30px)/1.35 'Inter', Arial, sans-serif; letter-spacing: -.01em; color: inherit; }
.rzm-ts__quote p { margin: 0; }
.rzm-ts__who { display: flex; flex-direction: column; gap: 4px; margin-top: clamp(20px, 2.4vw, 32px); }
.rzm-ts__name { font: 700 18px/1.2 'Syne', sans-serif; }
.rzm-ts__role { font-size: 14px; color: var(--mute, inherit); opacity: .85; }

/* Navegación */
.rzm-ts__nav { display: flex; align-items: center; gap: 16px; }
.rzm-ts__btn {
	width: 52px; height: 52px;
	display: grid; place-items: center;
	border-radius: 50%;
	border: 1px solid var(--line2, currentColor);
	background: transparent;
	color: inherit;
	padding: 0;
	cursor: pointer;
	transition: background-color .3s, color .3s, border-color .3s;
}
.rzm-ts__btn:hover, .rzm-ts__btn:focus-visible { background: var(--rzm-ts-accent); border-color: var(--rzm-ts-accent); color: #0f0f0f; }
.rzm-ts__btn:focus-visible { outline: 3px solid var(--rzm-ts-accent); outline-offset: 3px; }
.rzm-ts__count { font: 500 14px/1 'JetBrains Mono', ui-monospace, monospace; letter-spacing: .12em; min-width: 4.5ch; text-align: center; }

/* Foto siguiente asomando a la derecha */
.rzm-ts__peek { align-self: stretch; display: flex; flex-direction: column; justify-content: center; gap: 12px; transform: translateX(28%); cursor: pointer; }
.rzm-ts__peek-label { font: 500 11px/1 'JetBrains Mono', ui-monospace, monospace; letter-spacing: .14em; text-transform: uppercase; opacity: .6; }
.rzm-ts__peek-box { position: relative; aspect-ratio: 3 / 4; border-radius: calc(var(--rzm-ts-radius) * .7); overflow: hidden; background: var(--sb, #eee); opacity: .7; transition: opacity .35s; }
.rzm-ts__peek:hover .rzm-ts__peek-box { opacity: 1; }
.rzm-ts__pimg { position: absolute; inset: 0; opacity: 0; transition: opacity .5s; }
.rzm-ts__pimg.is-active { opacity: 1; }
.rzm-ts__pimg img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rzm-ts__pimg .rzm-ts__initial { font-size: 40px; }

/* Logos */
.rzm-ts__logos {
	list-style: none;
	margin: clamp(40px, 6vw, 88px) 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 14px;
}
.rzm-ts__logo {
	height: clamp(96px, 8vw, 124px);
	display: grid;
	place-items: center;
	padding: 16px 20px;
	border: 1px solid var(--glassb, rgba(0, 0, 0, .12));
	border-radius: 24px;
	background: var(--glass, rgba(255, 255, 255, .55));
	transition: border-color .3s, background-color .3s;
}
.rzm-ts__logo > a { display: grid; place-items: center; width: 100%; height: 100%; color: inherit; text-decoration: none; }
.rzm-ts__logo img { max-height: 46px; max-width: 80%; width: auto; height: auto; object-fit: contain; filter: grayscale(1); opacity: .75; transition: filter .3s, opacity .3s; }
.rzm-ts__logo:hover { border-color: var(--rzm-ts-accent); }
.rzm-ts__logo:hover img { filter: none; opacity: 1; }
.rzm-ts__logo-name { font: 700 clamp(15px, 1.2vw, 18px)/1.1 'Syne', sans-serif; text-align: center; }

@media (max-width: 900px) {
	.rzm-ts__stage { grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); }
	.rzm-ts__peek { display: none; }
}
@media (max-width: 640px) {
	.rzm-ts__stage { grid-template-columns: 1fr; }
	.rzm-ts { --rzm-ts-ratio: 4 / 3; }
	.rzm-ts__mark { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.rzm-ts__pimg, .rzm-ts__peek-box, .rzm-ts__btn { transition: none; }
}
