/**
 * Header (Mobile) — NHÔM VIỆT DŨNG
 * Node Figma: 1563:8189 (Header/MB). Chỉ hiển thị ở mobile.
 * rem = figma_px / 16 (thiết kế gốc rộng 375). Font: Nunito Sans.
 */

/* ── Root: bar phủ lên hero, fixed để cuộn vẫn thấy ──────────────── */
.header-mobile {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 90;
	font-family: "Nunito Sans", sans-serif;
}

/* Chỉ dùng ở mobile — ẩn khi desktop (header desktop lo phần này). */
@media screen and (min-width: 640px) {
	.header-mobile {
		display: none;
	}
}

.header-mobile__bar {
	position: relative;
	z-index: 100;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 3.5625rem;
	padding: 0 1rem;
	background: linear-gradient(360deg, rgba(0, 50, 83, 0) 0%, #082233 100%);
	transition: background 0.3s ease, box-shadow 0.3s ease;
}

/* Khi menu mở: bar hoà vào nền cyan của overlay (bỏ scrim navy), khớp variant MỞ Figma. */
body.header-mobile-open .header-mobile__bar {
	background: transparent;
}

/* ── Language switcher ───────────────────────────────────────────── */
.header-mobile__lang {
	position: relative;
	flex: 0 0 auto;
}

.header-mobile__lang-toggle {
	display: inline-flex;
	align-items: center;
	padding: 0.1875rem 0;
	background: none;
	border: 0;
	cursor: pointer;
	color: #ffffff;
}

.header-mobile__lang-flag {
	display: inline-flex;
	flex: 0 0 auto;
	width: 0.875rem;
	height: 0.625rem;
	margin-right: 0.1719rem;
	overflow: hidden;
	border-radius: 0.1563rem;
}

.header-mobile__lang-flag-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.header-mobile__lang-flag--placeholder {
	background: #f93939;
}

.header-mobile__lang-text {
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 0.825rem;
	letter-spacing: -0.0075rem;
	text-transform: uppercase;
	color: #ffffff;
}

.header-mobile__lang-caret {
	width: 0;
	height: 0;
	margin-left: 0.625rem;
	border-left: 0.3195rem solid transparent;
	border-right: 0.3195rem solid transparent;
	border-top: 0.3125rem solid #ffffff;
	transition: transform 0.3s ease;
}

.header-mobile__lang.is-open .header-mobile__lang-caret {
	transform: rotate(180deg);
}

.header-mobile__lang-dropdown {
	position: absolute;
	top: calc(100% + 0.375rem);
	left: 0;
	min-width: 5rem;
	margin: 0;
	padding: 0.5rem;
	list-style: none;
	background: #ffffff;
	border-radius: 0.25rem;
	box-shadow: 0 0.25rem 0.75rem rgba(0, 50, 83, 0.18);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-0.25rem);
	transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;
	z-index: 5;
}

.header-mobile__lang.is-open .header-mobile__lang-dropdown {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.header-mobile__lang-item+.header-mobile__lang-item {
	margin-top: 0.5rem;
}

.header-mobile__lang-link {
	display: flex;
	align-items: center;
	text-decoration: none;
	color: #003253;
}

.header-mobile__lang-link .header-mobile__lang-flag {
	width: 1rem;
	height: 1rem;
	border-radius: 50%;
	margin-right: 0.5rem;
}

.header-mobile__lang-name {
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1.125rem;
	color: #003253;
}

.header-mobile__lang-item.is-current .header-mobile__lang-name {
	font-weight: 600;
}

/* ── Logo (giữa) ─────────────────────────────────────────────────── */
.header-mobile__logo {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: inline-flex;
	align-items: center;
}

.header-mobile__logo-img {
	display: block;
	height: 2.3125rem;
	width: auto;
	object-fit: contain;
}

/* ── Cụm phải: tìm kiếm + hamburger ──────────────────────────────── */
.header-mobile__actions {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
}

.header-mobile__search {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: none;
	background: none;
	color: #ffffff;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
}

.header-mobile__search-icon {
	display: block;
	width: 0.9394rem;
	height: 0.9394rem;
}

.header-mobile__toggle {
	position: relative;
	width: 1.625rem;
	height: 1.125rem;
	margin-left: 0.9375rem;
	padding: 0;
	background: none;
	border: 0;
	cursor: pointer;
}

.header-mobile__toggle-bar {
	position: absolute;
	right: 0;
	height: 0.1172rem;
	background: #ffffff;
	border-radius: 0.0625rem;
	transition: transform 0.3s ease, opacity 0.3s ease, width 0.3s ease;
	transform-origin: center;
}

.header-mobile__toggle-bar:nth-child(1) {
	top: 0.3891rem;
	left: 0;
	width: 1.625rem;
}

.header-mobile__toggle-bar:nth-child(2) {
	top: 0.6938rem;
	width: 0.9836rem;
}

.header-mobile__toggle-bar:nth-child(3) {
	top: 0.9985rem;
	left: 0;
	width: 1.625rem;
}

.header-mobile__toggle[aria-expanded="true"] .header-mobile__toggle-bar:nth-child(1) {
	width: 1.625rem;
	transform: translateY(0.3047rem) rotate(45deg);
}

.header-mobile__toggle[aria-expanded="true"] .header-mobile__toggle-bar:nth-child(2) {
	opacity: 0;
}

.header-mobile__toggle[aria-expanded="true"] .header-mobile__toggle-bar:nth-child(3) {
	transform: translateY(-0.3047rem) rotate(-45deg);
}

/* ── Overlay menu ────────────────────────────────────────────────── */
.header-mobile__overlay {
	position: fixed;
	inset: 0;
	z-index: 95;
	padding: 3.5625rem 1rem 2rem;
	/* Nền overlay menu mở = cyan #0193d6 (đo từ variant MỞ Figma 1532:10242, KHÔNG phải #082233 placeholder cũ). */
	background: #0193d6;
	overflow-y: auto;
	overflow-x: hidden;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.35s ease, visibility 0.35s ease;
}

.header-mobile__overlay.is-open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.header-mobile__overlay-watermark {
	position: absolute;
	left: 9.0757rem;
	top: 25.8125rem;
	width: 22.583rem;
	height: 17.6048rem;
	object-fit: contain;
	pointer-events: none;
	z-index: 0;
	/* Watermark = logo V (logo-watermark.svg, export node 1532:10236). Opacity 10% đã baked trong <g opacity>
	   của SVG — KHÔNG set opacity ở CSS (tránh nhân đôi). Tràn mép phải, overlay overflow-x:hidden cắt gọn. */
}

.header-mobile__overlay-wave {
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	width: 23.4375rem;
	height: 16.0601rem;
	object-fit: cover;
	object-position: bottom center;
	pointer-events: none;
	z-index: 0;
	/* Dải wave đáy overlay #0186c3 (d-wave.svg, export từ variant MỞ Figma 1532:10134) — render bằng <img>. */
}

.header-mobile__overlay-inner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	min-height: calc(100vh - 5.5625rem);
}

/* ── Panel: NAVIGATION + menu ────────────────────────────────────── */
.header-mobile__panel {
	display: flex;
	flex-direction: column;
}

.header-mobile__menu-label {
	margin: 0;
	font-size: 0.75rem;
	font-weight: 400;
	line-height: 1rem;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.7);
}

.header-mobile__nav {
	display: flex;
	flex-direction: column;
	margin-top: 1.625rem;
}

.header-mobile__nav-item {
	display: flex;
	align-items: flex-start;
	text-decoration: none;
	color: #ffffff;
}

.header-mobile__nav-item+.header-mobile__nav-item {
	margin-top: 0.8125rem;
}

.header-mobile__nav-link {
	font-size: 1.875rem;
	font-weight: 600;
	line-height: 2rem;
	letter-spacing: -0.0156rem;
	color: #ffffff;
}

.header-mobile__nav-num {
	margin-left: 0.625rem;
	align-self: flex-start;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: -0.0088rem;
	color: transparent;
	-webkit-text-stroke: 0.0388rem rgba(255, 255, 255, 0.85);
}

.header-mobile__nav-extra {
	display: flex;
	flex-direction: column;
	margin-top: 1.625rem;
}

.header-mobile__nav-item--sm+.header-mobile__nav-item--sm {
	margin-top: 0.4375rem;
}

.header-mobile__nav-link--sm {
	font-size: 1.75rem;
	font-weight: 600;
	line-height: 2rem;
	letter-spacing: -0.0156rem;
	color: rgba(255, 255, 255, 0.8);
}

/* ── Contact ─────────────────────────────────────────────────────── */
.header-mobile__contact {
	margin-top: auto;
	padding-top: 2.5rem;
}

.header-mobile__contact-title {
	margin: 0;
	font-size: 0.75rem;
	font-weight: 400;
	line-height: 1rem;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.45);
}

.header-mobile__contact-list {
	display: flex;
	flex-wrap: wrap;
	margin: 0.875rem 0 0;
	padding: 0;
	list-style: none;
}

.header-mobile__contact-item {
	flex: 0 0 50%;
	max-width: 50%;
	margin-bottom: 0.5rem;
	box-sizing: border-box;
}

.header-mobile__contact-item:nth-child(even) {
	padding-left: 0.625rem;
}

.header-mobile__contact-link {
	display: flex;
	align-items: flex-start;
	text-decoration: none;
	color: #ffffff;
}

.header-mobile__contact-ico {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 1.125rem;
	height: 1.125rem;
	margin-right: 0.5rem;
	color: #ffffff;
}

.header-mobile__contact-icon {
	display: block;
	width: 1.125rem;
	height: 1.125rem;
}

.header-mobile__contact-text {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.header-mobile__contact-label {
	font-size: 0.75rem;
	font-weight: 400;
	line-height: 0.75rem;
	letter-spacing: -0.0156rem;
	color: rgba(255, 255, 255, 0.7);
}

.header-mobile__contact-value {
	margin-top: 0.125rem;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1.25rem;
	letter-spacing: -0.0156rem;
	color: #ffffff;
	word-break: break-word;
}

/* Khoá cuộn nền khi overlay mở. */
body.header-mobile-open {
	overflow: hidden;
}

/* ── Panel tìm kiếm (variant MỞ ô search Figma 1532:13144) ──────────── */
.header-mobile__search-panel {
	position: absolute;
	top: 3.5625rem;
	left: 0;
	width: 100%;
	background: #ffffff;
	border-top: 1px solid rgba(220, 220, 220, 0.3);
	box-shadow: 0 0.25rem 0.25rem rgba(0, 0, 0, 0.05);
	z-index: 96;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-0.5rem);
	pointer-events: none;
	transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;
}

.header-mobile__search-panel.is-open {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
}

.header-mobile__search-inner {
	padding: 1.25rem 1rem 1.5rem;
}

.header-mobile__search-heading {
	margin: 0 0 0.625rem;
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 1rem;
	letter-spacing: 0.0625rem;
	text-transform: uppercase;
	color: rgba(0, 50, 83, 0.5);
}

.header-mobile__search-field {
	display: flex;
	align-items: center;
	padding: 1.0625rem 0.875rem;
	background: #f8f8f8;
	border-radius: 0.25rem;
}

.header-mobile__search-field-icon {
	display: inline-flex;
	flex: 0 0 auto;
	width: 1.125rem;
	height: 1.125rem;
	margin-right: 0.625rem;
	color: rgba(0, 51, 75, 0.8);
}

.header-mobile__search-field-icon svg {
	width: 100%;
	height: 100%;
}

.header-mobile__search-input {
	flex: 1 1 auto;
	min-width: 0;
	padding: 0;
	border: none;
	background: transparent;
	outline: none;
	font-family: inherit;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 0.9rem;
	color: #131313;
}

.header-mobile__search-input::placeholder {
	color: rgba(19, 19, 19, 0.4);
	opacity: 1;
}

.header-mobile__search-submit {
	display: block;
	width: 100%;
	height: 2.625rem;
	margin-top: 0.9375rem;
	border: none;
	background: #079de2;
	color: #ffffff;
	font-family: inherit;
	font-size: 0.75rem;
	font-weight: 800;
	line-height: 2.625rem;
	text-align: center;
	cursor: pointer;
	clip-path: polygon(0.5625rem 0, calc(100% - 0.5625rem) 0, 100% 50%, calc(100% - 0.5625rem) 100%, 0.5625rem 100%, 0 50%);
}

/* ── State bar TRẮNG: cuộn (--scrolled) hoặc mở tìm kiếm (search-open) ── */
/* Scroll: nền trắng + bóng nhẹ (variant scroll Figma 1532:10488). */
.header-mobile--scrolled .header-mobile__bar {
	background: #ffffff;
	box-shadow: 0 0.25rem 0.25rem rgba(0, 0, 0, 0.04);
}

/* Search: nền trắng (panel dropdown tự có bóng). */
body.header-mobile-search-open .header-mobile__bar {
	background: #ffffff;
}

/* Icon + chữ đổi navy #003253 trên nền trắng. */
.header-mobile--scrolled .header-mobile__search,
.header-mobile--scrolled .header-mobile__lang-text,
body.header-mobile-search-open .header-mobile__search,
body.header-mobile-search-open .header-mobile__lang-text {
	color: #003253;
}

.header-mobile--scrolled .header-mobile__lang-caret,
body.header-mobile-search-open .header-mobile__lang-caret {
	border-top-color: #003253;
}

.header-mobile--scrolled .header-mobile__toggle-bar,
body.header-mobile-search-open .header-mobile__toggle-bar {
	background: #003253;
}

/* Logo: bản trắng mặc định; đổi bản màu (có wordmark) khi bar trắng. */
.header-mobile__logo-img--dark {
	display: none;
}

.header-mobile--scrolled .header-mobile__logo-img--light,
body.header-mobile-search-open .header-mobile__logo-img--light {
	display: none;
}

.header-mobile--scrolled .header-mobile__logo-img--dark,
body.header-mobile-search-open .header-mobile__logo-img--dark {
	display: block;
}

/* Menu mở (nền cyan) THẮNG scrolled: bar trong suốt + icon/logo trắng lại. */
body.header-mobile-open .header-mobile__search,
body.header-mobile-open .header-mobile__lang-text {
	color: #ffffff;
}

body.header-mobile-open .header-mobile__lang-caret {
	border-top-color: #ffffff;
}

body.header-mobile-open .header-mobile__toggle-bar {
	background: #ffffff;
}

body.header-mobile-open .header-mobile__logo-img--light {
	display: block;
}

body.header-mobile-open .header-mobile__logo-img--dark {
	display: none;
}