/* Homepage testimonials: fluid video/before-after media, readable copy, warm-tinted card. */
body.home .elementor-2 .elementor-element-82b0f33 {
	padding-block: clamp(56px, 5vw, 76px);
	background: #fbf7ef !important;
}

body.home .elementor-2 .elementor-element-ff2db3d h2 {
	margin-bottom: 10px !important;
}

body.home .elementor-2 .elementor-element-ff2db3d h3 {
	margin-bottom: 0;
}

/* Card shell: soften the flat black shadow into a warm brand shadow.
   No padding here — this element also carries overflow:hidden for the slide
   track, and padding on a clipping box leaves a gap the next slide peeks
   through. The inset lives on .carousel-slide instead (border-box). */
body.home .elementor-2 .elementor-element-82b0f33 .carousel-container {
	margin-top: 32px;
	border: 1px solid #eee2cd;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 24px 48px -38px rgba(87, 54, 14, .3);
	overflow: hidden;
}

body.home .elementor-2 .elementor-element-82b0f33 .carousel-slide {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	align-items: start;
	gap: clamp(24px, 3vw, 44px);
	padding: clamp(18px, 2vw, 28px);
	box-sizing: border-box;
}

body.home .elementor-2 .elementor-element-82b0f33 .item {
	min-width: 0;
	padding: 0;
	font-weight: 400;
	text-align: left;
}

/* Media column: video and its before/after case photo share one fluid, rounded frame. */
body.home .elementor-2 .elementor-element-82b0f33 .item iframe {
	display: block;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	border: 0;
	border-radius: 16px;
}

body.home .elementor-2 .elementor-element-82b0f33 .item > img {
	display: block;
	width: 100%;
	height: auto;
	margin-top: 14px;
	border-radius: 16px;
	object-fit: cover;
}

body.home .elementor-2 .elementor-element-82b0f33 .item > img:first-child {
	margin-top: 0;
}

/* Copy column. */
body.home .elementor-2 .elementor-element-82b0f33 .boxnoidungcase {
	max-width: 46ch;
}

body.home .elementor-2 .elementor-element-82b0f33 .boxnoidungcase img:first-of-type {
	width: 36px;
	height: auto;
	margin: 0 0 14px;
}

body.home .elementor-2 .elementor-element-82b0f33 .boxnoidungcase .noidungdai {
	font-size: 15px;
}

body.home .elementor-2 .elementor-element-82b0f33 .boxnoidungcase img:nth-of-type(2) {
	width: 50px;
	height: 50px;
	margin: 20px 0 10px;
	border: 2px solid var(--kha-home-gold, #9b6d31);
	border-radius: 100% !important;
	object-fit: cover;
}

body.home .elementor-2 .elementor-element-82b0f33 .boxnoidungcase h5 {
	margin-bottom: 4px !important;
}

body.home .elementor-2 .elementor-element-82b0f33 .boxnoidungcase p:not(.noidungdai) {
	color: var(--kha-home-muted, #6d655d);
	font-size: 13.5px;
}

/* Controls: sit a little further from the card, same tactile circles as the rest of the page. */
body.home .elementor-2 .elementor-element-82b0f33 .controls {
	margin-top: 22px;
	padding-bottom: clamp(14px, 1.6vw, 22px);
}

body.home .elementor-2 .elementor-element-82b0f33 .controls .btn svg {
	width: 16px;
	height: 16px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

@media (max-width: 900px) {
	body.home .elementor-2 .elementor-element-82b0f33 .carousel-slide {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 20px;
	}

	body.home .elementor-2 .elementor-element-82b0f33 .boxnoidungcase {
		max-width: none;
	}
}

@media (max-width: 767px) {
	body.home .elementor-2 .elementor-element-82b0f33 { padding-block: 48px 56px; }
	body.home .elementor-2 .elementor-element-82b0f33 .carousel-container { margin-top: 24px; border-radius: 18px; }
	body.home .elementor-2 .elementor-element-82b0f33 .carousel-slide { padding: 16px; }
}
