.genviet-inner-page {
	--page-pad: clamp(70px, 8vw, 130px);
	background: #fff;
	color: var(--text);
}

.genviet-inner-page *,
.genviet-inner-page *::before,
.genviet-inner-page *::after { box-sizing: border-box; }

.genviet-inner-page .e-con-inner {
	width: min(var(--container), calc(100% - 60px));
	max-width: var(--container);
	margin-inline: auto;
	min-width: 0;
}

.genviet-page-hero {
	position: relative;
	min-height: min(780px, 88vh);
	display: flex;
	align-items: flex-end;
	padding: 190px 0 100px;
	background-position: center;
	background-size: cover;
	overflow: hidden;
	isolation: isolate;
}

.genviet-page-hero::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0;
	background: linear-gradient(90deg, rgba(13, 12, 13, .88) 0%, rgba(13, 12, 13, .58) 55%, rgba(13, 12, 13, .18) 100%);
}

.genviet-page-hero .genviet-page-hero__content {
	width: 100%;
	max-width: 920px;
	min-width: 0;
	overflow: visible;
	color: #fff !important;
}
.genviet-page-hero h1,
.genviet-page-hero h1.elementor-heading-title {
	max-width: 920px;
	margin: 18px 0 28px;
	color: #fff !important;
	font-size: clamp(52px, 7vw, 64px);
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: -.045em;
	white-space: normal !important;
}
.genviet-page-hero h1 span { color: #d7b5b8 !important; }
.genviet-page-hero__lead {
	max-width: 720px;
	margin: 0;
	color: rgba(255, 255, 255, .82) !important;
	font-size: clamp(16px, 1.45vw, 21px);
	line-height: 1.75;
	white-space: normal !important;
	overflow-wrap: break-word;
}
.genviet-page-hero .genviet-kicker, .genviet-quote-form .genviet-kicker { color: #d5aeb2 !important; }
.genviet-page-hero small { display: block; margin-top: 25px; color: rgba(255,255,255,.56); }
.genviet-breadcrumb { display: flex; gap: 10px; margin-bottom: 55px; color: rgba(255,255,255,.72); font-size: 13px; }
.genviet-breadcrumb a { color: #fff; text-decoration: none; }
.genviet-kicker {
	margin: 0 0 18px;
	color: var(--genviet-red);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
}
.genviet-dark-section .genviet-kicker,
.genviet-kicker.black {
	color: #d5aeb2 !important; 
}
.genviet-section { padding: var(--page-pad) 0; }
.genviet-section-heading { max-width: 960px; margin-bottom: clamp(45px, 6vw, 40px); }
.genviet-section-heading,
.genviet-split-layout__content,
.genviet-editorial-feature__content,
.genviet-service-matrix__intro {
	min-width: 0;
}
.genviet-section-heading h2,
.genviet-split-layout__content h2,
.genviet-editorial-feature__content h2,
.genviet-service-matrix__intro h2 {
	margin: 0 0 25px;
	color: var(--genviet-black);
	font-size: clamp(38px, 5.2vw, 54px);
	font-weight: 500;
	line-height: 1.15;
	letter-spacing: -.035em;
	overflow-wrap: anywhere;
}
.genviet-section-heading > p:last-child,
.genviet-split-layout__content > p,
.genviet-editorial-feature__content > p,
.genviet-service-matrix__intro > p {
	max-width: 760px;
	font-size: 17px;
	line-height: 1.8;
}
.genviet-section-heading--light h2,
.genviet-dark-section h3 { color: #fff; }
.genviet-section-heading--light > p:last-child { color: rgba(255,255,255,.68); }
.genviet-section-heading--split {
	max-width: none;
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(260px, .6fr);
	align-items: center;
	gap: 80px;
}
.genviet-section-heading--split > p { margin-bottom: 16px; }
.genviet-dark-section { background: #181719; color: rgba(255,255,255,.72); }

.genviet-card-grid { display: grid; gap: 30px; }
.genviet-card-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.genviet-card-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.genviet-number-card,
.genviet-outline-card {
	min-height: 300px;
	padding: 38px;
	border: 1px solid rgba(255,255,255,.18);
	display: flex;
	flex-direction: column;
}
.genviet-number-card > span,
.genviet-outline-card > span { margin-bottom: auto; color: var(--genviet-red); font-size: 14px; font-weight: 700; }
.genviet-number-card h3,
.genviet-outline-card h3 { margin: 50px 0 14px; font-size: 27px; }
.genviet-number-card p,
.genviet-outline-card p { margin: 0; line-height: 1.7; }
.genviet-outline-card { min-height: 300px; border-color: var(--border); }
.genviet-outline-card h3 { color: var(--genviet-black); }

.genviet-split-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
	align-items: center;
	gap: clamp(55px, 8vw, 130px);
}
.genviet-split-layout--reverse .genviet-split-layout__media { order: 2; }
.genviet-split-layout__media img { width: 100%; min-height: 560px; object-fit: cover; }
.genviet-statement { display: grid; grid-template-columns: 95px 1fr; gap: 25px; padding: 25px 0; border-top: 1px solid var(--border); }
.genviet-statement h3 { margin: 0; color: var(--genviet-black); font-size: 22px; }
.genviet-statement p { margin: 0; line-height: 1.75; }
.genviet-check-list { margin: 35px 0 0; padding: 0; list-style: none; }
.genviet-check-list li { position: relative; padding: 14px 0 14px 34px; border-top: 1px solid var(--border); }
.genviet-check-list li::before { content: "✓"; position: absolute; left: 0; color: var(--genviet-red); font-weight: 700; }
.genviet-lightbox-trigger { display: block; width: 100%; padding: 0; border: 0; background: transparent; cursor: zoom-in; }

.genviet-slider-controls {
	display: flex;
	align-items: center;
	gap: 18px;
	margin-top: 35px;
}
.genviet-slider-controls button {
	width: 48px;
	height: 48px;
	padding: 0;
	border: 1px solid var(--border);
	border-radius: 50%;
	background: transparent;
	color: var(--genviet-black);
	font-size: 19px;
	cursor: pointer;
}
.genviet-dark-section .genviet-slider-controls button { border-color: rgba(255,255,255,.25); color: #fff; }
.genviet-slider-controls .swiper-pagination { position: static; width: auto; flex: 1; }
.genviet-slider-controls .swiper-pagination-bullet { width: 28px; height: 2px; border-radius: 0; background: #bbb; }
.genviet-slider-controls .swiper-pagination-bullet-active { background: var(--genviet-red); }

.genviet-inner-page .swiper,
.genviet-inner-page [data-page-swiper],
.genviet-journey__slider,
.genviet-portfolio-slider,
.genviet-atelier-slider,
.genviet-process__slider {
	width: 100%;
	max-width: 100%;
	min-width: 0;
}
.genviet-inner-page .e-con-inner > .swiper,
.genviet-inner-page .e-con-inner > [data-page-swiper] {
	align-self: stretch;
	flex: 0 1 auto;
}
.genviet-inner-page .swiper-wrapper,
.genviet-inner-page .swiper-slide {
	min-width: 0;
}

.genviet-page-cta { display: block; border-bottom: solid; position: relative; padding: clamp(90px, 11vw, 170px) 0; background: #231f20 !important; color: #fff !important; text-align: center; overflow: hidden; 
    background: linear-gradient(90deg, rgba(16,14,15,.92), rgba(16,14,15,.74)), url("../../demo-theme/images/ben-ngoai-nha-may (4).jpg") center / cover !important
}
.genviet-page-cta::before { content: ""; position: absolute; inset: 0; opacity: .22; background: radial-gradient(circle at 15% 20%, #840515 0, transparent 36%), radial-gradient(circle at 85% 80%, #17324d 0, transparent 34%); }
.genviet-page-cta .e-con-inner { position: relative; max-width: 1000px; }
.genviet-page-cta h2 { max-width: 70%; margin: 0 auto 38px; color: #fff; font-size: clamp(34px, 6.3vw, 54px); font-weight: 500; line-height: 1.02; }
.genviet-page-cta > .e-con-inner > p:not(.genviet-kicker) { max-width: 800px; margin: -18px auto 36px; color: rgba(255,255,255,.7); }

.genviet-lightbox {
	position: fixed;
	z-index: 2000;
	inset: 0;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 35px;
	background: rgba(9, 9, 10, .94);
}
.genviet-lightbox.is-open { display: flex; }
.genviet-lightbox__dialog { position: relative; width: min(1000px, 100%); max-height: 92vh; text-align: center; }
.genviet-lightbox__image { max-width: 100%; max-height: 82vh; width: auto; object-fit: contain; }
.genviet-lightbox__title { margin: 16px 50px 0; color: #fff; }
.genviet-lightbox__close { position: absolute; top: -10px; right: 0; width: 46px; height: 46px; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; background: rgba(0,0,0,.4); color: #fff; font-size: 28px; cursor: pointer; }
.genviet-lightbox-open { overflow: hidden; }

@media (max-width: 1024px) {
	.genviet-inner-page .e-con-inner { width: min(100% - 40px, var(--container)); }
	.genviet-card-grid--four { grid-template-columns: repeat(2, 1fr); }
	.genviet-split-layout { grid-template-columns: 1fr 1fr; gap: 45px; }
	.genviet-split-layout__media img { min-height: 480px; }
	.genviet-section-heading--split { gap: 0; }
}

@media (max-width: 767px) {
	.genviet-inner-page { --page-pad: 75px; }
	.genviet-inner-page .e-con-inner { width: calc(100% - 30px); }
	.genviet-page-hero { min-height: 680px; padding: 135px 0 70px; }
	.genviet-page-hero h1,
	.genviet-page-hero h1.elementor-heading-title {
		width: 100%;
		max-width: 100%;
		font-size: clamp(38px, 11.5vw, 48px) !important;
		line-height: 1.02;
		overflow-wrap: anywhere;
		word-break: normal;
	}
	.genviet-page-hero h1 br { display: none; }
	.genviet-page-hero__lead { max-width: 100%; }
	.genviet-breadcrumb { margin-bottom: 45px; }
	.genviet-section-heading h2,
	.genviet-split-layout__content h2,
	.genviet-editorial-feature__content h2,
	.genviet-service-matrix__intro h2 {
		font-size: clamp(34px, 34px, 44px);
		line-height: 1.08;
		letter-spacing: -.03em;
	}
	.genviet-card-grid--three,
	.genviet-card-grid--four,
	.genviet-split-layout,
	.genviet-section-heading--split { grid-template-columns: 1fr; }
	.genviet-split-layout--reverse .genviet-split-layout__media { order: initial; }
	.genviet-split-layout__media img { min-height: 390px; }
	.genviet-number-card,
	.genviet-outline-card { min-height: 200px; padding: 28px; }
	.genviet-statement { grid-template-columns: 1fr; gap: 8px; }
	.genviet-page-cta { padding-right: 15px !important; padding-left: 15px !important; text-align: left; }
	.genviet-page-cta .e-con-inner { width: 100%; }
	.genviet-page-cta h2 { max-width: 100%; margin-left: 0; }
}
