.TESTIMONIALS::before,
.TESTIMONIALS::after {
	content: "";
	display: block;
	overflow: hidden;
}

.TESTIMONIALS .testimonial {
	overflow: hidden;
	position: relative;
	height: 100%;
	box-sizing: border-box;

	padding: 50rem;
	margin: 0 auto;
	border-radius: 10rem;
	width: min(100%, var(--col-9));
	display: flex;
	min-height: 470rem;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
}

.TESTIMONIALS .testimonial::before {
	content: url('/_assets/b55d8b02aa325e5b/icon-quote.svg');
	display: block;
	height: 55rem;
	width: 61rem;
	margin: 0 0 22rem;
	flex: 0 0 auto;
}

.TESTIMONIALS .testimonial > * {margin-top: 0;}
.TESTIMONIALS .testimonial * { font-weight: 400; }
.TESTIMONIALS .testimonial > *:nth-last-child(2) { margin: 0 0 16rem; }
.TESTIMONIALS .testimonial strong { font-weight: 700; }

.TESTIMONIALS .testimonial .bottom {
	width: 100%;
	margin: auto 0 0;
	display: flex;
	justify-content: space-between;
}

.TESTIMONIALS .testimonial .author { margin: auto 0 0; font-size: 20rem; line-height: calc(34/20); align-self: flex-end; }
.TESTIMONIALS .testimonial .author .name { font-weight: 700; }
.TESTIMONIALS .testimonial .author .role { font-weight: 300; }
.TESTIMONIALS .testimonial .author .role { font-weight: 300; }

.TESTIMONIALS .testimonial .image {
	inset: auto 0 0 auto;
	margin: 0 -50rem -50rem 0;
	height: 160rem;
}
.TESTIMONIALS .testimonial .image img {
	width: auto;
	height: 100%;
	object-position: bottom right;
	object-fit: contain;
}

@media screen and (max-width: 960px) {
	.TESTIMONIALS .testimonial { padding: 30rem; }
	.TESTIMONIALS .testimonial .image {
		position: relative;
		margin: 0 -30rem -30rem auto;
	}
	.TESTIMONIALS .testimonial .author { align-self: flex-start; }
	.TESTIMONIALS .testimonial .bottom { flex-direction: column; }
}



/* FLICKITY */

.TESTIMONIALS .flickity-viewport { overflow: visible; }
:where(.b-page) .TESTIMONIALS .b-column {opacity: 0; transition: opacity 0.25s;}
:where(.b-page) .TESTIMONIALS .b-column.is-selected {opacity: 1;}

.TESTIMONIALS .dot.is-selected {background: var(--midnight-blue);}
:where(.bg_midnight-blue) .TESTIMONIALS .dot {background: var(--bright-light-blue); opacity: 0.3;}
:where(.bg_midnight-blue) .TESTIMONIALS .dot.is-selected {background: var(--bright-light-blue); opacity: 1;}

@media screen and (min-width: 961px) {
	/* .TESTIMONIALS .flickity-page-dots {display: none;} */
}

@media screen and (max-width: 960px) {
	.TESTIMONIALS .flickity-prev-next-button {display: none;}
}
