.mcc-testimonials {
	padding: clamp(64px, 8vw, 104px) 0;
	background: #0a0f24;
	color: #f1f0ea;
}

.mcc-testimonials-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 32px;
	margin-bottom: 40px;
}

.mcc-testimonials .mc-section-eyebrow { color: #5ce29b; }

.mcc-testimonials h2 {
	max-width: 680px;
	margin: 0;
	color: #f1f0ea;
	font-family: "Space Grotesk", Inter, sans-serif;
	font-size: clamp(34px, 4vw, 52px);
	line-height: 1.06;
}

.mcc-social-stats {
	display: flex;
	flex: 0 0 auto;
	align-items: stretch;
	border: 1px solid rgba(241, 240, 234, .14);
	border-radius: 14px;
}

.mcc-social-stats span {
	display: grid;
	min-width: 106px;
	padding: 13px 16px;
	color: #9aa0c2;
	font-size: 10px;
	font-weight: 500;
	letter-spacing: .04em;
	text-align: center;
	text-transform: uppercase;
}

.mcc-social-stats span + span { border-left: 1px solid rgba(241, 240, 234, .14); }

.mcc-social-stats strong {
	margin-bottom: 2px;
	color: #f5a623;
	font-family: "JetBrains Mono", monospace;
	font-size: 20px;
	font-weight: 600;
}

.mcc-carousel { position: relative; }
.mcc-carousel-viewport { overflow: visible; }

.mcc-carousel.is-enhanced .mcc-carousel-viewport {
	overflow-x: auto;
	overflow-y: hidden;
	scroll-behavior: smooth;
	scrollbar-width: none;
	scroll-snap-type: x mandatory;
}

.mcc-carousel.is-enhanced .mcc-carousel-viewport::-webkit-scrollbar { display: none; }

.mcc-carousel-viewport:focus-visible {
	outline: 2px solid #4457ff;
	outline-offset: 5px;
}

.mcc-carousel-track {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.mcc-carousel.is-enhanced .mcc-carousel-track { display: flex; }

.mcc-testimonial {
	position: relative;
	display: flex;
	flex-direction: column;
	margin: 0;
	min-width: 0;
	min-height: 270px;
	padding: 26px;
	background: #121a3a;
	border: 1px solid rgba(241, 240, 234, .14);
	border-radius: 16px;
	scroll-snap-align: start;
}

.mcc-carousel.is-enhanced .mcc-testimonial { flex: 0 0 calc((100% - 32px) / 3); }

.mcc-quote-mark {
	height: 34px;
	color: #4457ff;
	font-family: "Space Grotesk", sans-serif;
	font-size: 54px;
	font-weight: 700;
	line-height: .9;
}

.mcc-testimonial blockquote {
	margin: 16px 0 26px;
	color: #f1f0ea;
	font-family: "Space Grotesk", Inter, sans-serif;
	font-size: 17px;
	font-weight: 500;
	line-height: 1.55;
}

.mcc-testimonial blockquote p { margin: 0; }

.mcc-testimonial figcaption {
	display: flex;
	align-items: center;
	gap: 11px;
	margin-top: auto;
}

.mcc-avatar {
	display: grid;
	flex: 0 0 40px;
	place-items: center;
	width: 40px;
	height: 40px;
	border: 1px solid rgba(241, 240, 234, .18);
	border-radius: 50%;
	color: #c7ccff;
	font-family: "JetBrains Mono", monospace;
	font-size: 11px;
	font-weight: 600;
}

.mcc-avatar.has-photo,
.mcc-product-avatar.has-photo { overflow: hidden; padding: 0; }
.mcc-avatar img,
.mcc-product-avatar img,
.mcc-proof-avatar img { width: 100%; height: 100%; object-fit: cover; }

.mcc-testimonial figcaption strong,
.mcc-testimonial figcaption small { display: block; }
.mcc-testimonial figcaption strong { color: #f1f0ea; font-size: 13px; }
.mcc-testimonial figcaption small { margin-top: 3px; color: #9aa0c2; font-size: 10px; }
.mcc-testimonial figcaption a {
	display: inline-block;
	margin-top: 7px;
	color: #f1f0ea;
	font-size: 10px;
	text-decoration: underline;
	text-decoration-color: #4457ff;
	text-underline-offset: 3px;
}

.mcc-carousel-controls {
	display: none;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-top: 18px;
}

.mcc-carousel.is-enhanced .mcc-carousel-controls { display: flex; }
.mcc-carousel-controls > div:first-child { display: flex; gap: 8px; }

.mcc-carousel-button,
.mcc-carousel-pause {
	display: none;
	min-height: 44px;
	place-items: center;
	background: transparent;
	border: 1px solid rgba(241, 240, 234, .2);
	border-radius: 9px;
	color: #f1f0ea;
	font: 600 13px/1 Inter, sans-serif;
	cursor: pointer;
}

.mcc-carousel.is-enhanced .mcc-carousel-button { display: inline-grid; }
.mcc-carousel.is-enhanced > .mcc-carousel-pause {
	display: grid;
	width: max-content;
	margin: 0 0 12px auto;
}

.mcc-carousel-button { width: 44px; padding: 0; font-size: 17px; }
.mcc-carousel-pause { padding: 0 15px; }
.mcc-carousel-button:hover,
.mcc-carousel-button:focus-visible,
.mcc-carousel-pause:hover,
.mcc-carousel-pause:focus-visible { border-color: #4457ff; color: #f1f0ea; }
.mcc-carousel-button:focus-visible,
.mcc-carousel-pause:focus-visible { outline: 2px solid #4457ff; outline-offset: 2px; }
.mcc-carousel-button:disabled { cursor: not-allowed; opacity: .42; }

.mcc-carousel-dots {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.mcc-carousel-dot {
	display: grid;
	width: 44px;
	height: 44px;
	padding: 0;
	place-items: center;
	background: transparent;
	border: 0;
	cursor: pointer;
}

.mcc-carousel-dot::before {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	background: #9aa0c2;
	border-radius: 999px;
	opacity: .45;
}

.mcc-carousel-dot[aria-current="true"]::before {
	width: 24px;
	background: #4457ff;
	opacity: 1;
}

.mcc-carousel-dot:focus-visible { outline: 2px solid #4457ff; outline-offset: -5px; }
.mcc-carousel.has-single-page > .mcc-carousel-pause,
.mcc-carousel.has-single-page .mcc-carousel-controls { display: none; }

.mcc-stats-note {
	margin: 17px 0 0;
	color: #9aa0c2;
	font-size: 10px;
	text-align: right;
}

@media (max-width: 900px) {
	.mcc-testimonials-head { align-items: flex-start; flex-direction: column; }
	.mcc-carousel-track { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mcc-carousel.is-enhanced .mcc-testimonial { flex-basis: calc((100% - 16px) / 2); }
}

@media (max-width: 600px) {
	.mcc-testimonials { padding: 58px 0; }
	.mcc-testimonials-head { gap: 24px; margin-bottom: 30px; }
	.mcc-testimonials h2 { font-size: 34px; }
	.mcc-social-stats { width: 100%; }
	.mcc-social-stats span { min-width: 0; flex: 1 1 0; padding: 11px 6px; font-size: 8px; }
	.mcc-social-stats strong { font-size: 17px; }
	.mcc-carousel-track { grid-template-columns: 1fr; }
	.mcc-carousel.is-enhanced .mcc-testimonial { flex-basis: 100%; }
	.mcc-testimonial { min-height: 250px; padding: 23px; }
	.mcc-testimonial blockquote { font-size: 16px; }
	.mcc-carousel-controls { align-items: flex-start; flex-direction: column; }
	.mcc-carousel-dots { justify-content: flex-start; }
	.mcc-stats-note { text-align: left; }
}

@media (prefers-reduced-motion: reduce) {
	.mcc-carousel.is-enhanced .mcc-carousel-viewport { scroll-behavior: auto; }
}

/* Opiniones persistentes en la ficha de producto. */
.mcc-product-spotlight {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	gap: 12px;
	margin: 18px 0 0;
	padding: 15px;
	border: 1px solid rgba(68, 87, 255, .16);
	border-left: 3px solid #4457ff;
	border-radius: 13px;
	background: #f5f7ff;
}

.mcc-product-spotlight blockquote {
	margin: 0 0 7px;
	color: #12172b;
	font-size: 12px;
	font-weight: 650;
	line-height: 1.55;
}

.mcc-product-spotlight figcaption { display: flex; flex-wrap: wrap; gap: 5px 10px; align-items: center; }
.mcc-product-spotlight figcaption strong { color: #0a0f24; font-size: 11px; }
.mcc-product-spotlight figcaption a,
.mcc-product-spotlight figcaption small { color: #4457ff; font-size: 9px; font-weight: 700; text-decoration: none; }

.mcc-product-testimonials {
	margin-top: clamp(46px, 7vw, 78px);
	padding: clamp(28px, 4vw, 42px);
	border: 1px solid rgba(10, 15, 36, .1);
	border-radius: 18px;
	background: #fff;
}

.mcc-product-testimonials-head p {
	margin: 0 0 8px;
	color: #4457ff;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.mcc-product-testimonials-head h2 {
	margin: 0;
	color: #0a0f24;
	font-family: "Space Grotesk", Inter, sans-serif;
	font-size: clamp(27px, 3.5vw, 38px);
	letter-spacing: -.035em;
}

.mcc-product-testimonials-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
	margin-top: 26px;
}

.mcc-product-testimonials figure {
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 205px;
	margin: 0;
	padding: 22px;
	border: 1px solid rgba(10, 15, 36, .1);
	border-radius: 14px;
	background: #f7f6f1;
}

.mcc-product-testimonials blockquote {
	margin: 0 0 22px;
	color: #12172b;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.6;
}

.mcc-product-testimonials figcaption {
	display: flex;
	align-items: center;
	gap: 11px;
	margin-top: auto;
}

.mcc-product-avatar {
	display: grid;
	flex: 0 0 42px;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 50%;
	background: #eef3fb;
	color: #4457ff;
	font: 750 11px/1 "JetBrains Mono", monospace;
}

.mcc-product-testimonials figcaption span:last-child { display: grid; gap: 3px; }
.mcc-product-testimonials figcaption strong { color: #0a0f24; font-size: 13px; }
.mcc-product-testimonials figcaption a,
.mcc-product-testimonials figcaption small { color: #6b7280; font-size: 10px; }

/* Aviso flotante: dos comentarios por página y control de cierre por sesión. */
.mcc-proof-toast[hidden] { display: none !important; }

.mcc-proof-toast {
	position: fixed;
	right: auto;
	bottom: 22px;
	left: 22px;
	z-index: 900;
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr);
	gap: 12px;
	width: min(360px, calc(100vw - 44px));
	padding: 16px 42px 16px 16px;
	border: 1px solid rgba(68, 87, 255, .2);
	border-left: 4px solid #f5a623;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 18px 48px rgba(10, 15, 36, .2);
	opacity: 0;
	transform: translateY(14px);
	transition: opacity 220ms ease, transform 220ms ease;
}

.mcc-proof-toast.is-visible { opacity: 1; transform: translateY(0); }

.mcc-proof-close {
	position: absolute;
	top: 7px;
	right: 8px;
	display: grid;
	width: 32px;
	height: 32px;
	padding: 0;
	place-items: center;
	border: 0;
	border-radius: 8px;
	background: transparent;
	color: #6b7280;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
}

.mcc-proof-close:hover,
.mcc-proof-close:focus-visible { background: #eef3fb; color: #0a0f24; }

.mcc-proof-avatar {
	display: grid;
	width: 48px;
	height: 48px;
	place-items: center;
	overflow: hidden;
	border-radius: 50%;
	background: #eef3fb;
	color: #4457ff;
	font: 800 12px/1 "JetBrains Mono", monospace;
}

.mcc-proof-content { min-width: 0; }
.mcc-proof-content > strong { display: block; color: #0a0f24; font-size: 13px; }
.mcc-proof-content blockquote { margin: 5px 0 6px; color: #12172b; font-size: 13px; font-weight: 600; line-height: 1.45; }
.mcc-proof-content a { color: #4457ff; font-size: 10px; font-weight: 700; text-decoration: none; }
.mcc-proof-content a[aria-disabled="true"] { color: #6b7280; pointer-events: none; }

@media (max-width: 800px) {
	.mcc-product-testimonials-grid { grid-template-columns: 1fr; }
	.mcc-product-testimonials figure { min-height: 0; }
}

@media (max-width: 600px) {
	.mcc-proof-toast { bottom: 12px; left: 12px; width: min(310px, calc(100vw - 24px)); padding: 12px 36px 12px 12px; }
	body.single-product .mcc-proof-toast { bottom: calc(92px + env(safe-area-inset-bottom)); }
	.mcc-proof-avatar { width: 44px; height: 44px; }
	.mcc-proof-content blockquote { max-height: 3em; overflow: hidden; }
}

@media (prefers-reduced-motion: reduce) {
	.mcc-proof-toast { transition: none; transform: none; }
}
