/* =======================================================================
 * Nextstage Về Chúng Tôi Widget — left phone mockup + floating images,
 * right heading + icons + paragraphs + checklist + link.
 * ======================================================================= */
.nsvct-about { padding: 4rem 0; }
.nsvct-about .nsvct-container { width: 100%; max-width: 1320px; margin: 0 auto; padding: 0 1.5rem; box-sizing: border-box; }
.nsvct-about *, .nsvct-about *::before, .nsvct-about *::after { box-sizing: border-box; }

.nsvct-about .nsvct-row { display: grid; grid-template-columns: 1fr; gap: 3rem; align-items: center; }
@media (min-width: 992px) { .nsvct-about .nsvct-row { grid-template-columns: 6fr 5fr; gap: 4rem; } }

/* ---- Left: phone mockup (big size) ---- */
.nsvct-about .nsvct-stage {
	position: relative;
	width: 100%;
	margin: 0 auto;
}
.nsvct-about .nsvct-phone {
	position: relative;
	width: 100%;
	margin: 0;
	filter: drop-shadow(0 1.25rem 3rem rgba(30, 32, 34, 0.2));
}
.nsvct-about .nsvct-phone img {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
}

.nsvct-about .nsvct-float {
	position: absolute;
	z-index: 3;
	border-radius: 0.5rem;
	overflow: hidden;
	box-shadow: 0 0.75rem 2rem rgba(30, 32, 34, 0.18);
}
.nsvct-about .nsvct-float img { display: block; width: 100%; height: auto; }
.nsvct-about .nsvct-float--top-right    { top: 3rem; right: -4rem; width: 14rem; }
.nsvct-about .nsvct-float--bottom-left  { bottom: 1.5rem; left: -4rem; width: 14rem; }
.nsvct-about .nsvct-float--right-mid    { top: 50%; right: -5rem; width: 12rem; transform: translateY(-50%); z-index: 4; box-shadow: none; background: transparent; border-radius: 0; overflow: visible; }
.nsvct-about .nsvct-float--right-mid img { filter: drop-shadow(0 0.75rem 1.5rem rgba(30, 32, 34, 0.15)); }

.nsvct-about .nsvct-shape {
	position: absolute;
	bottom: -2rem;
	right: -2rem;
	width: 18rem;
	z-index: 1;
	pointer-events: none;
	opacity: 0.55;
}
.nsvct-about .nsvct-shape img { display: block; width: 100%; height: auto; }

@media (max-width: 991px) {
	.nsvct-about .nsvct-stage { max-width: 18rem; min-height: 28rem; }
	.nsvct-about .nsvct-float--top-right   { right: -2rem; width: 11rem; }
	.nsvct-about .nsvct-float--bottom-left { left: -2rem; width: 11rem; }
	.nsvct-about .nsvct-float--right-mid   { right: -2.5rem; width: 9rem; }
}

/* ---- Right: content ---- */
.nsvct-about h2 {
	font-family: "Inter", sans-serif;
	font-weight: 700;
	font-size: clamp(1.75rem, 1rem + 2vw, 2.75rem);
	line-height: 1.2;
	color: #1e2022;
	margin: 0 0 1.5rem;
}

.nsvct-about .nsvct-icons {
	display: flex; flex-wrap: wrap; gap: 0.75rem;
	margin: 0 0 1.5rem;
}
.nsvct-about .nsvct-icons img {
	width: 36px; height: 36px;
	border-radius: 0.375rem;
	object-fit: contain;
}

.nsvct-about .nsvct-desc p {
	color: #1e2022;
	font-size: 1rem;
	line-height: 1.65;
	margin: 0 0 1rem;
}

.nsvct-about .nsvct-checks {
	list-style: none; padding: 0; margin: 1.25rem 0;
	display: flex; flex-direction: column; gap: 0.625rem;
}
.nsvct-about .nsvct-checks li {
	display: flex; gap: 0.625rem; align-items: flex-start;
	font-size: 0.9375rem; line-height: 1.55; color: #1e2022;
}
.nsvct-about .nsvct-checks .nsvct-check-icon {
	flex: 0 0 auto;
	width: 1.25rem; height: 1.25rem; border-radius: 50%;
	background: #00c988; color: #fff;
	display: inline-flex; align-items: center; justify-content: center;
	font-size: 0.75rem; margin-top: 0.1rem;
}

.nsvct-about .nsvct-link {
	display: inline-flex; align-items: center; gap: 0.35rem;
	padding: 0.7rem 1.35rem;
	border-radius: 0.5rem;
	background: #377eff;
	color: #fff;
	font-weight: 600;
	font-size: 0.9375rem;
	text-decoration: none;
	margin-top: 1rem;
	transition: background 0.2s, transform 0.2s, box-shadow 0.2s;
}
.nsvct-about .nsvct-link:hover {
	background: #1f66e6;
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(55, 126, 255, 0.25);
	text-decoration: none;
}
