.naari-testimonial {
	position: relative;
	height: 100%;
	box-sizing: border-box;
	padding: clamp(1.5rem, 3vw, 2.25rem);
	overflow: hidden;
}

.naari-testimonial__mark {
	position: absolute;
	inset: -0.25em auto auto 0.15em;
	font-family: Georgia, serif;
	font-size: clamp(5rem, 10vw, 8rem);
	line-height: 1;
	opacity: var(--naari-mark-opacity, 0.1);
	pointer-events: none;
}

.naari-testimonial__quote {
	position: relative;
	z-index: 1;
	font-family: var(--naari-review-family, inherit);
	font-weight: var(--naari-review-weight, inherit);
	letter-spacing: var(--naari-review-letter-spacing, normal);
	text-align: var(--naari-review-align, left);
}

.naari-testimonial__quote blockquote {
	margin: 0;
	padding: 0;
	border: 0;
}

.naari-testimonial__footer {
	display: flex;
	align-items: center;
	gap: 0.875rem;
	margin-top: var(--naari-review-bottom, 1.5rem);
}

.naari-testimonial__photo {
	width: 3.75rem;
	height: 3.75rem;
	flex: 0 0 3.75rem;
	border: 4px solid #fff;
	border-radius: 50%;
	object-fit: cover;
}

.naari-testimonial__author,
.naari-testimonial__role {
	display: block;
}

.naari-testimonial__author {
	font-family: var(--naari-author-family, inherit);
	font-weight: var(--naari-author-weight, inherit);
	line-height: var(--naari-author-line-height, normal);
}
.naari-carousel {
	position: relative;
}

.naari-carousel__viewport {
	overflow: hidden;
}

.naari-carousel__track {
	display: flex;
	gap: 1.25rem;
	overflow-x: auto;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.naari-carousel__track::-webkit-scrollbar {
	display: none;
}

.naari-carousel__track > * {
	flex: 0 0 calc((100% - (var(--naari-slides, 3) - 1) * 1.25rem) / var(--naari-slides, 3));
	scroll-snap-align: start;
}

.naari-carousel__controls {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	margin-top: 1.25rem;
}

.naari-carousel__button {
	display: inline-grid;
	width: 2.75rem;
	height: 2.75rem;
	padding: 0;
	border: 1px solid currentColor;
	border-radius: 50%;
	border-color: var(--naari-arrow-border, currentColor);
	background: var(--naari-arrow-bg, #fff);
	color: #372830;
	font: inherit;
	font-size: 1.75rem;
	line-height: 1;
	cursor: pointer;
	place-items: center;
}

.naari-carousel__button:focus-visible,
.naari-video:focus-visible,
.naari-flip:focus-visible,
.naari-video-dialog__close:focus-visible {
	outline: 3px solid #e4a196;
	outline-offset: 3px;
}

.naari-carousel__status {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.naari-carousel__pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--naari-dot-gap, 0.5rem);
}

.naari-carousel__dot {
	width: var(--naari-dot-width, 0.75rem);
	height: var(--naari-dot-height, 0.75rem);
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #d4d4d4;
	cursor: pointer;
}

.naari-carousel__dot[aria-current="true"] {
	background: var(--naari-dot-active, #ce5755);
}

.naari-logo-grid__items {
	display: grid;
	grid-template-columns: repeat(var(--naari-grid-columns, 6), minmax(0, 1fr));
	align-items: center;
	gap: var(--naari-grid-gap, 15px);
}

.naari-logo-grid__item {
	display: grid;
	min-width: 0;
	overflow: hidden;
	border: var(--naari-logo-border, 0) solid var(--naari-logo-border-color, transparent);
	border-radius: var(--naari-logo-radius, 0);
	place-items: center;
}

.naari-logo-grid__item a {
	display: grid;
	width: 100%;
	place-items: center;
}

.naari-logo-grid__item img {
	display: block;
	width: min(100%, var(--naari-logo-size, 150px));
	height: auto;
	max-height: var(--naari-logo-size, 150px);
	object-fit: contain;
}

.naari-logo-grid__items--grayscale img {
	filter: grayscale(1);
	transition: filter 180ms ease;
}

.naari-logo-grid__items--grayscale a:hover img,
.naari-logo-grid__items--grayscale a:focus-visible img {
	filter: grayscale(0);
}

.naari-video {
	position: relative;
	display: block;
	width: 100%;
	height: var(--naari-video-height, 150px);
	padding: 0;
	overflow: hidden;
	border: 0;
	border-radius: inherit;
	background: #372830;
	cursor: pointer;
}

.naari-video img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.naari-video__overlay {
	position: absolute;
	inset: 0;
	display: grid;
	background: var(--naari-video-overlay, rgba(55, 40, 48, 0.5));
	place-items: center;
	transition: background-color 180ms ease;
}

.naari-video:hover .naari-video__overlay {
	background: rgba(55, 40, 48, 0.68);
}

.naari-video__play {
	display: grid;
	width: 3.25rem;
	height: 3.25rem;
	padding-left: 0.2rem;
	border: 2px solid currentColor;
	border-radius: var(--naari-video-icon-radius, 50%);
	color: #fff;
	font-size: 1.35rem;
	place-items: center;
}

.naari-video-dialog {
	width: min(92vw, 70rem);
	max-width: none;
	padding: 0;
	border: 0;
	border-radius: 0.75rem;
	background: #000;
	box-shadow: 0 1.5rem 5rem rgba(0, 0, 0, 0.45);
}

.naari-video-dialog::backdrop {
	background: rgba(15, 10, 13, 0.82);
}

.naari-video-dialog__frame {
	position: relative;
	aspect-ratio: 16 / 9;
}

.naari-video-dialog iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.naari-video-dialog__close {
	position: absolute;
	z-index: 2;
	top: -3rem;
	right: 0;
	width: 2.5rem;
	height: 2.5rem;
	border: 1px solid #fff;
	border-radius: 50%;
	background: #372830;
	color: #fff;
	font: inherit;
	font-size: 1.4rem;
	cursor: pointer;
}

.naari-flip {
	display: block;
	width: 100%;
	min-height: var(--naari-flip-height, 400px);
	padding: 0;
	border: 0;
	border-radius: var(--naari-flip-radius, 25px);
	background: transparent;
	color: inherit;
	font: inherit;
	text-align: inherit;
	perspective: 1000px;
	cursor: pointer;
}

.naari-flip__inner {
	position: relative;
	display: block;
	width: 100%;
	min-height: inherit;
	transform-style: preserve-3d;
	transition: transform 500ms ease;
}

.naari-flip:hover .naari-flip__inner,
.naari-flip:focus .naari-flip__inner,
.naari-flip.is-flipped .naari-flip__inner {
	transform: rotateY(180deg);
}

.naari-flip__face {
	position: absolute;
	inset: 0;
	display: flex;
	box-sizing: border-box;
	overflow: auto;
	border-radius: var(--naari-flip-radius, 25px);
	backface-visibility: hidden;
}

.naari-flip__front {
	align-items: var(--naari-front-align, flex-end);
	padding: var(--naari-front-padding, clamp(1rem, 3vw, 2rem));
	background-color: var(--naari-front-bg, #372830);
	background-image: linear-gradient(to top, rgba(55, 40, 48, 0.72), rgba(55, 40, 48, 0.05)), var(--naari-front-image);
	background-position: var(--naari-front-position, center);
	background-size: var(--naari-front-size, cover);
	color: #fff;
	text-align: var(--naari-front-text, left);
}

.naari-flip__back {
	align-items: center;
	justify-content: center;
	padding: var(--naari-back-padding, clamp(1rem, 3vw, 2rem));
	background: var(--naari-back-bg, #ce5755);
	transform: rotateY(180deg);
}

.naari-flip__front-copy,
.naari-flip__back-copy {
	display: block;
	width: 100%;
}

.naari-flip__front-copy {
	padding: var(--naari-front-copy-padding, 0);
}

.naari-flip__back-copy {
	padding: var(--naari-back-copy-padding, 0);
}

.naari-flip__title,
.naari-flip__subtitle {
	display: block;
}

.naari-flip__front .naari-flip__title {
	font-family: var(--naari-front-title-family, inherit);
	font-weight: var(--naari-front-title-weight, inherit);
}

.naari-flip__icon {
	display: block;
	margin-bottom: 0.5rem;
	font-size: 2.2rem;
}

.naari-flip__content {
	margin-top: 0.75rem;
}

.naari-flip--fade {
	perspective: none;
}

.naari-flip--fade .naari-flip__inner,
.naari-flip--fade:hover .naari-flip__inner,
.naari-flip--fade:focus .naari-flip__inner,
.naari-flip--fade.is-flipped .naari-flip__inner {
	transform: none;
}

.naari-flip--fade .naari-flip__face {
	transition: opacity 350ms ease;
}

.naari-flip--fade .naari-flip__back {
	opacity: 0;
	transform: none;
}

.naari-flip--fade:hover .naari-flip__front,
.naari-flip--fade:focus .naari-flip__front,
.naari-flip--fade.is-flipped .naari-flip__front {
	opacity: 0;
}

.naari-flip--fade:hover .naari-flip__back,
.naari-flip--fade:focus .naari-flip__back,
.naari-flip--fade.is-flipped .naari-flip__back {
	opacity: 1;
}

@media (max-width: 980px) {
	.naari-carousel__track {
		--naari-slides: var(--naari-slides-tablet, 2);
	}

	.naari-carousel__track > * {
		flex-basis: calc((100% - (var(--naari-slides, 2) - 1) * 1.25rem) / var(--naari-slides, 2));
		max-width: var(--naari-slide-width-tablet, 100%);
	}

	.naari-logo-grid__items {
		grid-template-columns: repeat(var(--naari-grid-columns-tablet, 4), minmax(0, 1fr));
	}

	.naari-video {
		height: var(--naari-video-height-tablet, var(--naari-video-height, 250px));
	}
}

@media (max-width: 767px) {
	.naari-carousel__track {
		--naari-slides: var(--naari-slides-phone, 1);
	}

	.naari-carousel__track > * {
		flex-basis: calc((100% - (var(--naari-slides, 1) - 1) * 1.25rem) / var(--naari-slides, 1));
		max-width: var(--naari-slide-width-phone, 100%);
	}

	.naari-logo-grid__items {
		grid-template-columns: repeat(var(--naari-grid-columns-phone, 3), minmax(0, 1fr));
	}

	.naari-video {
		height: var(--naari-video-height-phone, var(--naari-video-height-tablet, 200px));
	}
}

@media (prefers-reduced-motion: reduce) {
	.naari-carousel__track {
		scroll-behavior: auto;
	}

	.naari-flip__inner,
	.naari-video__overlay {
		transition: none;
	}
}

/*
 * Site integration safeguards.
 * These high-specificity rules keep the responsive header and contact form
 * stable when Divi regenerates its Custom CSS resource from a stale cache.
 */
@media (max-width: 1339px) {
	body .ns-desktop-nav {
		display: none !important;
	}

	body .ns-mobile-nav {
		display: block !important;
	}

	body .ns-hsearch-wrap {
		display: none !important;
	}
}

@media (min-width: 1340px) {
	body .ns-desktop-nav {
		display: flex !important;
	}

	body .ns-mobile-nav {
		display: none !important;
	}
}

@media (min-width: 981px) {
	body.page-id-36 .ns-form-panel .ns-contact-form {
		margin-bottom: clamp(5.5rem, 7vw, 6.5rem) !important;
	}
}
