/**
 * Trang chủ — layout chung & component dùng lại.
 */
.ntm-home .col-inner {
	padding-left: 0;
	padding-right: 0;
}

.ntm-home-wrap {
	width: var(--ntm-home-container);
	margin: 0 auto;
}

.ntm-section {
	padding: 48px 0;
}

.ntm-section-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 28px;
	flex-wrap: wrap;
}

.ntm-section-head__title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	font-size: clamp(1.25rem, 2vw, 1.65rem);
	font-weight: 700;
	color: #1a1a1a;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.ntm-section-head__star {
	display: inline-flex;
	width: 18px;
	height: 18px;
	color: var(--ntm-home-primary);
}

.ntm-section-head__star svg {
	width: 100%;
	height: 100%;
}

.ntm-section-head__sub {
	margin: 8px 0 0;
	color: var(--ntm-color-muted);
	font-size: 0.95rem;
}

.ntm-link-more {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--ntm-home-primary);
	font-weight: 600;
	white-space: nowrap;
}

.ntm-link-more__icon {
	display: inline-flex;
	width: 28px;
	height: 28px;
	border: 1px solid var(--ntm-home-primary-light);
	border-radius: 50%;
	align-items: center;
	justify-content: center;
}

.ntm-link-more__icon svg {
	width: 14px;
	height: 14px;
}

.ntm-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 22px;
	border-radius: 999px;
	font-weight: 600;
	font-size: 0.85rem;
	letter-spacing: 0.03em;
	transition: 0.25s ease;
	border: 1px solid transparent;
}

.ntm-btn__icon {
	display: inline-flex;
	width: 16px;
	height: 16px;
}

.ntm-btn__icon svg {
	width: 100%;
	height: 100%;
}

.ntm-btn--primary {
	background: var(--ntm-home-primary);
	color: #fff !important;
}

.ntm-btn--primary:hover {
	background: var(--ntm-home-primary-dark);
	color: #fff !important;
}

.ntm-btn--ghost {
	background: rgba(255, 255, 255, 0.85);
	border-color: color-mix(in srgb, var(--primary-color) 25%, transparent);
	color: var(--primary-color) !important;
}

.ntm-btn--outline-light {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.8);
	color: #fff !important;
}

.ntm-btn--outline-light:hover {
	background: rgba(255, 255, 255, 0.12);
	color: #fff !important;
}

.ntm-page-home :is(#wrapper) a,
.ntm-page-home h1,
.ntm-page-home h2,
.ntm-page-home h3,
.ntm-page-home h4,
.ntm-page-home h5,
.ntm-page-home h6,
.ntm-page-home .heading-font {
	color: inherit;
}

@media (max-width: 768px) {
	.ntm-section {
		padding: 36px 0;
	}

	.ntm-section-head {
		align-items: flex-start;
		flex-direction: column;
	}
}
