/* ==========================================================
   TRUONGCAT HEADER
   FULL CSS - FIX OVERLAP
========================================================== */
/* ==========================================================
   01. RESET
========================================================== */
.tc-header,
.tc-header *,
.tc-header *::before,
.tc-header *::after {
	box-sizing: border-box;
}
/* ==========================================================
   02. DESKTOP HEADER
========================================================== */
.tc-header-desktop {
	width: 100%;
	height: 86px;
	position: relative;
	z-index: 9999;
	background: #ffffff;
	border-top: 2px solid #078fff;
	border-bottom: 1px solid #e3eaf2;
	box-shadow: 0 4px 15px rgba(0, 45, 95, 0.08);
}
/* ==========================================================
   03. CONTAINER
   mở rộng hơn để menu không bị chồng
========================================================== */
.tc-header-desktop > .container {
	width: calc(100% - 40px) !important;
	max-width: 1540px !important;
	height: 100%;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 10px !important;
	padding-right: 10px !important;
}
/* ==========================================================
   04. HEADER INNER
========================================================== */
.tc-header-inner {
	width: 100%;
	height: 100%;
	display: grid;
	/*
	 * Logo: 225px
	 * Menu: phần còn lại
	 * Hotline: 180px
	 */
	grid-template-columns:
		225px
		minmax(0, 1fr)
		180px;
	column-gap: 20px;
	align-items: center;
}
/* ==========================================================
   05. LOGO
========================================================== */
.tc-header-logo {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	min-width: 0;
}
.tc-header-logo a {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	text-decoration: none !important;
}
.tc-header-logo img {
	display: block;
	width: auto;
	height: auto;
	max-width: 215px;
	max-height: 63px;
	margin: 0;
	padding: 0;
	object-fit: contain;
	border: 0 !important;
	box-shadow: none !important;
}
/* ==========================================================
   06. MENU WRAPPER
========================================================== */
.tc-header-menu {
	width: 100%;
	height: 100%;
	min-width: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}
.tc-navbar {
	width: 100%;
	height: 100%;
	min-width: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}
/* ==========================================================
   07. MAIN MENU
========================================================== */
.tc-main-menu {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
	gap: 0;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	white-space: nowrap;
}
.tc-main-menu > li {
	height: 100%;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 1 auto;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
/* ==========================================================
   08. MAIN MENU LINKS
========================================================== */
.tc-main-menu > li > a {
	height: 100%;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-left: clamp(5px, 0.55vw, 10px);
	padding-right: clamp(5px, 0.55vw, 10px);
	font-family: Arial, Helvetica, sans-serif;
	font-size: clamp(11px, 0.72vw, 14px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
	text-transform: uppercase;
	white-space: nowrap;
	color: #062f63 !important;
	background: transparent !important;
	text-decoration: none !important;
	border: 0 !important;
	outline: none !important;
	transition:
		color 0.2s ease,
		background 0.2s ease;
}
/* ==========================================================
   09. MENU DROPDOWN ARROW
========================================================== */
.tc-main-menu > li.menu-item-has-children > a {
	padding-right: clamp(17px, 1.1vw, 23px);
}
.tc-main-menu > li.menu-item-has-children > a::before {
	content: "\f107";
	font-family: FontAwesome;
	position: absolute;
	right: 5px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 11px;
	font-weight: normal;
	line-height: 1;
	color: #078fff;
}
/* ==========================================================
   10. UNDERLINE HOVER
========================================================== */
.tc-main-menu > li > a::after {
	content: "";
	position: absolute;
	left: 7px;
	right: 7px;
	bottom: 17px;
	height: 2px;
	border-radius: 20px;
	background: linear-gradient(
		90deg,
		#05b7ff 0%,
		#0677e5 100%
	);
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 0.22s ease;
}
.tc-main-menu > li:hover > a,
.tc-main-menu > li.current-menu-item > a,
.tc-main-menu > li.current-menu-parent > a,
.tc-main-menu > li.current-menu-ancestor > a {
	color: #078fff !important;
}
.tc-main-menu > li:hover > a::after,
.tc-main-menu > li.current-menu-item > a::after,
.tc-main-menu > li.current-menu-parent > a::after,
.tc-main-menu > li.current-menu-ancestor > a::after {
	transform: scaleX(1);
}
/* ==========================================================
   11. DROPDOWN
========================================================== */
.tc-main-menu .sub-menu {
	display: block;
	position: absolute;
	top: 100%;
	left: 0;
	width: auto;
	min-width: 250px;
	margin: 0 !important;
	padding: 7px 0 !important;
	list-style: none !important;
	background: #ffffff;
	border: 0;
	border-top: 3px solid #078fff;
	border-radius: 0 0 6px 6px;
	box-shadow: 0 12px 35px rgba(0, 40, 85, 0.16);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(8px);
	transition:
		opacity 0.2s ease,
		visibility 0.2s ease,
		transform 0.2s ease;
	z-index: 999999;
}
.tc-main-menu > li:hover > .sub-menu {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateY(0);
}
/* ==========================================================
   12. DROPDOWN ITEMS
========================================================== */
.tc-main-menu .sub-menu li {
	width: 100%;
	display: block;
	position: relative;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.tc-main-menu .sub-menu li a {
	display: block;
	width: 100%;
	padding: 11px 18px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
	text-transform: none;
	white-space: nowrap;
	color: #072f61 !important;
	background: #ffffff !important;
	border: 0 !important;
	border-bottom: 1px solid #edf1f5 !important;
	text-decoration: none !important;
	transition:
		background 0.2s ease,
		color 0.2s ease,
		padding 0.2s ease;
}
.tc-main-menu .sub-menu li:last-child > a {
	border-bottom: 0 !important;
}
.tc-main-menu .sub-menu li > a:hover {
	color: #078fff !important;
	background: #eff8ff !important;
	padding-left: 23px;
}
/* ==========================================================
   13. DROPDOWN LEVEL 2
========================================================== */
.tc-main-menu .sub-menu .sub-menu {
	top: -3px;
	left: 100%;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateX(8px);
}
.tc-main-menu .sub-menu li:hover > .sub-menu {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateX(0);
}
/* ==========================================================
   14. HOTLINE
========================================================== */
.tc-header-hotline {
	width: 100%;
	height: 100%;
	min-width: 0;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	white-space: nowrap;
}
.tc-header-hotline a {
	width: auto;
	max-width: 180px;
	min-height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	padding: 10px 14px;
	border-radius: 7px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
	color: #ffffff !important;
	background: linear-gradient(
		135deg,
		#079fff 0%,
		#076bd4 100%
	);
	text-decoration: none !important;
	box-shadow: 0 5px 15px rgba(0, 119, 220, 0.23);
	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease,
		background 0.2s ease;
}
.tc-header-hotline i {
	flex: 0 0 auto;
	font-size: 18px;
	color: #ffffff !important;
	transform: rotate(-12deg);
}
.tc-header-hotline span {
	display: block;
	color: #ffffff !important;
	font-size: inherit;
	white-space: nowrap;
}
.tc-header-hotline a:hover {
	color: #ffffff !important;
	background: linear-gradient(
		135deg,
		#078ee7,
		#0559b5
	);
	transform: translateY(-2px);
	box-shadow: 0 7px 20px rgba(0, 119, 220, 0.30);
}
/* ==========================================================
   15. REMOVE BOOTSTRAP / OLD THEME EFFECTS
========================================================== */
.tc-header-desktop .navbar,
.tc-header-desktop .navbar-default,
.tc-header-desktop nav {
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}
.tc-header-desktop .navbar::before,
.tc-header-desktop .navbar::after,
.tc-header-desktop .navbar-default::before,
.tc-header-desktop .navbar-default::after {
	display: none !important;
}
.tc-header-desktop ul,
.tc-header-desktop li {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
.tc-header-desktop li::before,
.tc-header-desktop li::after {
	display: none;
}
.tc-header-desktop a,
.tc-header-desktop a:hover,
.tc-header-desktop a:focus,
.tc-header-desktop a:active {
	text-decoration: none !important;
}
/* ==========================================================
   16. LARGE DESKTOP
========================================================== */
@media screen and (min-width: 1600px) {
	.tc-header-desktop > .container {
		max-width: 1500px !important;
	}
	.tc-header-inner {
		grid-template-columns:
			225px
			minmax(0, 1fr)
			180px;
		column-gap: 24px;
	}
	.tc-main-menu > li > a {
		font-size: 14px;
		padding-left: 10px;
		padding-right: 10px;
	}
}
/* ==========================================================
   17. DESKTOP 1400 - 1599
========================================================== */
@media screen and (min-width: 1400px) and (max-width: 1599px) {
	.tc-header-desktop > .container {
		max-width: 1380px !important;
	}
	.tc-header-inner {
		grid-template-columns:
			205px
			minmax(0, 1fr)
			170px;
		column-gap: 15px;
	}
	.tc-header-logo img {
		max-width: 195px;
	}
	.tc-main-menu > li > a {
		font-size: 12.5px;
		padding-left: 7px;
		padding-right: 7px;
	}
	.tc-main-menu > li.menu-item-has-children > a {
		padding-right: 20px;
	}
	.tc-header-hotline a {
		padding-left: 11px;
		padding-right: 11px;
		font-size: 13px;
	}
}
/* ==========================================================
   18. DESKTOP 1200 - 1399
========================================================== */
@media screen and (min-width: 1200px) and (max-width: 1399px) {
	.tc-header-desktop > .container {
		width: calc(100% - 20px) !important;
		max-width: 100% !important;
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
	.tc-header-inner {
		grid-template-columns:
			180px
			minmax(0, 1fr)
			155px;
		column-gap: 10px;
	}
	.tc-header-logo img {
		max-width: 170px;
		max-height: 57px;
	}
	.tc-main-menu > li > a {
		font-size: 11.5px;
		padding-left: 5px;
		padding-right: 5px;
	}
	.tc-main-menu > li.menu-item-has-children > a {
		padding-right: 17px;
	}
	.tc-main-menu > li.menu-item-has-children > a::before {
		right: 4px;
		font-size: 9px;
	}
	.tc-main-menu > li > a::after {
		left: 5px;
		right: 5px;
	}
	.tc-header-hotline a {
		min-height: 39px;
		padding: 8px 9px;
		font-size: 12px;
		gap: 5px;
	}
	.tc-header-hotline i {
		font-size: 16px;
	}
}
/* ==========================================================
   19. DESKTOP / MOBILE BREAKPOINT
========================================================== */
@media screen and (min-width: 1200px) {
	.tc-header .desktop {
		display: block !important;
	}
	.tc-header .mobile {
		display: none !important;
	}
}
/* ==========================================================
   20. MOBILE / TABLET
========================================================== */
@media screen and (max-width: 1199px) {
	.tc-header .desktop,
	.tc-header-desktop {
		display: none !important;
	}
	.tc-header .mobile {
		display: block !important;
	}
}
/* ==========================================================
   21. MOBILE HEADER
========================================================== */
@media screen and (max-width: 1199px) {
	#nav-top-menu {
		width: 100%;
		min-height: 66px;
		position: relative;
		z-index: 9999;
		background: #ffffff;
		border-top: 2px solid #078fff;
		border-bottom: 1px solid #e4eaf1;
		box-shadow: 0 3px 12px rgba(0, 42, 90, 0.09);
	}
	#nav-top-menu .container {
		width: 100% !important;
		max-width: 100% !important;
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
	#main-menu-new {
		width: 100%;
	}
	#main-menu-new .navbar {
		min-height: 66px;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
	}
	#main-menu-new .navbar-header {
		width: 100%;
		min-height: 66px;
		position: relative;
		display: flex;
		align-items: center;
		float: none !important;
	}
	/* MOBILE OPEN BUTTON */
	#pull {
		width: 42px;
		height: 42px;
		position: relative;
		z-index: 10003;
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		border-radius: 6px;
		background: #078fff;
		color: #ffffff;
	}
	#pull i {
		font-size: 21px;
		color: #ffffff;
	}
	/* MOBILE CLOSE */
	#close_windows {
		width: 42px;
		height: 42px;
		position: relative;
		z-index: 10003;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		border-radius: 6px;
		background: #078fff;
		color: #ffffff;
		font-family: Arial, Helvetica, sans-serif;
		font-size: 26px;
		line-height: 42px;
		text-align: center;
	}
	.display_none {
		display: none !important;
	}
	.display_block {
		display: flex !important;
	}
	/* MOBILE LOGO */
	#logo_mobile {
		width: 190px;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		display: flex;
		align-items: center;
		justify-content: center;
		z-index: 10001;
	}
	#logo_mobile a {
		display: flex;
		align-items: center;
		justify-content: center;
	}
	#logo_mobile img {
		display: block;
		width: auto;
		height: auto;
		max-width: 185px;
		max-height: 53px;
		object-fit: contain;
	}
	/* BACKDROP */
	#bg-cover {
		display: none;
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background: rgba(0, 25, 55, 0.52);
		z-index: 9997;
	}
	/* SLIDE MENU */
	#new-menu {
		display: none;
		position: fixed;
		left: 0;
		top: 66px;
		width: 310px;
		max-width: 86%;
		height: calc(100vh - 66px);
		overflow-y: auto;
		background: #ffffff;
		box-shadow: 8px 0 25px rgba(0, 30, 70, 0.15);
		z-index: 10002;
	}
	#new-menu .mtree-demo {
		width: 100%;
	}
	#new-menu ul.mtree {
		width: 100%;
		margin: 0 !important;
		padding: 10px 0 !important;
		background: #ffffff;
	}
	#new-menu ul.mtree li {
		width: 100%;
		margin: 0 !important;
		padding: 0 !important;
		border-bottom: 1px solid #edf1f5;
	}
	#new-menu ul.mtree li a {
		display: block;
		width: 100%;
		padding: 13px 18px;
		font-family: Arial, Helvetica, sans-serif;
		font-size: 14px;
		font-weight: 700;
		line-height: 1.4;
		text-transform: uppercase;
		color: #082f61 !important;
		background: #ffffff !important;
		text-decoration: none !important;
	}
	#new-menu ul.mtree li a:hover {
		color: #078fff !important;
		background: #eff8ff !important;
	}
	#new-menu ul.mtree ul li a {
		padding-left: 30px;
		font-size: 13px;
		font-weight: 600;
		text-transform: none;
		background: #f7fbff !important;
	}
	#new-menu ul.mtree ul ul li a {
		padding-left: 42px;
	}
}
/* ==========================================================
   22. MOBILE QUICK LINKS
========================================================== */
@media screen and (max-width: 1199px) {
	#menu-top-mobile {
		width: 100%;
		background: #ffffff;
		border-bottom: 1px solid #e5ebf2;
	}
	#menu-top-mobile ul {
		width: 100%;
		display: flex;
		align-items: stretch;
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
	}
	#menu-top-mobile ul li {
		width: 33.333333%;
		margin: 0 !important;
		border-right: 1px solid #e8edf3;
	}
	#menu-top-mobile ul li:last-child {
		border-right: 0;
	}
	#menu-top-mobile ul li a {
		min-height: 65px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 4px;
		padding: 7px 4px;
		text-align: center;
		color: #082f61;
		text-decoration: none !important;
	}
	#menu-top-mobile .img_menutop {
		height: 28px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	#menu-top-mobile .img_menutop img {
		display: block;
		width: auto;
		height: auto;
		max-width: 28px;
		max-height: 28px;
	}
	#menu-top-mobile .title_menutop {
		font-size: 11px;
		font-weight: 700;
		line-height: 1.25;
		color: #082f61;
	}
}
/* ==========================================================
   23. SMALL MOBILE
========================================================== */
@media screen and (max-width: 575px) {
	#nav-top-menu,
	#main-menu-new .navbar,
	#main-menu-new .navbar-header {
		min-height: 60px;
	}
	#new-menu {
		top: 60px;
		height: calc(100vh - 60px);
	}
	#pull,
	#close_windows {
		width: 38px;
		height: 38px;
	}
	#close_windows {
		line-height: 38px;
	}
	#logo_mobile {
		width: 165px;
	}
	#logo_mobile img {
		max-width: 160px;
		max-height: 46px;
	}
}
/* ==========================================================
   24. FINAL OVERRIDES
========================================================== */
.tc-header-desktop .tc-main-menu {
	float: none !important;
}
.tc-header-desktop .tc-main-menu > li {
	float: none !important;
}
.tc-header-desktop .tc-main-menu > li > a {
	float: none !important;
}
.tc-header-desktop .tc-header-logo {
	float: none !important;
}
.tc-header-desktop .tc-header-hotline {
	float: none !important;
}
/* =========================================================
   TRƯỜNG CÁT - MOBILE HEADER
========================================================= */
@media screen and (max-width: 767px) {
	/* =====================================================
	   HEADER
	===================================================== */
	.tc-mobile-header {
		position: relative;
		z-index: 9998;
		width: 100%;
		font-family:
			"Bai Jamjuree",
			Arial,
			sans-serif;
		background: #ffffff;
	}
	.tc-mobile-header *,
	.tc-mobile-header *::before,
	.tc-mobile-header *::after {
		box-sizing: border-box;
	}
	/* =====================================================
	   TOP BAR
	===================================================== */
	.tc-mobile-bar {
		position: relative;
		z-index: 30;
		width: 100%;
		background:
			rgba(255,255,255,.97);
		border-bottom:
			1px solid
			#e5edf4;
		box-shadow:
			0 5px 18px
			rgba(8,37,74,.055);
	}
	.tc-mobile-bar-inner {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		min-height: 66px;
		padding:
			7px
			15px;
	}
	/* =====================================================
	   LOGO
	===================================================== */
	.tc-mobile-logo {
		display: flex;
		align-items: center;
		flex: 0 0 auto;
	}
	.tc-mobile-logo a {
		display: block;
		text-decoration: none !important;
	}
	.tc-mobile-logo img {
		display: block;
		width: auto;
		max-width: 180px;
		height: 48px;
		margin: 0 !important;
		object-fit: contain;
		object-position: left center;
	}
	/* =====================================================
	   ACTIONS
	===================================================== */
	.tc-mobile-actions {
		display: flex;
		align-items: center;
		gap: 8px;
		flex: 0 0 auto;
	}
	/* =====================================================
	   PHONE
	===================================================== */
	.tc-mobile-phone {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 41px;
		height: 41px;
		color: #078fe9 !important;
		background: #eef8ff;
		border:
			1px solid
			#d5ebfa;
		border-radius: 50%;
		text-decoration: none !important;
		box-shadow:
			0 4px 12px
			rgba(7,105,180,.08);
	}
	.tc-mobile-phone i {
		margin: 0 !important;
		font-size: 17px;
		transform:
			rotate(-8deg);
	}
	/* =====================================================
	   HAMBURGER
	===================================================== */
	.tc-mobile-menu-btn {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 5px;
		width: 43px;
		height: 43px;
		margin: 0;
		padding: 0;
		background:
			linear-gradient(
				135deg,
				#08254a,
				#078fe9
			);
		border: 0;
		border-radius: 11px;
		box-shadow:
			0 6px 15px
			rgba(7,80,160,.18);
		outline: none !important;
		cursor: pointer;
	}
	.tc-mobile-menu-btn span {
		display: block;
		width: 19px;
		height: 2px;
		background: #ffffff;
		border-radius: 20px;
		transition:
			transform .3s ease,
			opacity .3s ease;
	}
	/* =====================================================
	   QUICK LINKS
	===================================================== */
	.tc-mobile-quick-wrap {
		position: relative;
		z-index: 20;
		width: 100%;
		padding:
			8px
			10px
			9px;
		background:
			#f5f9fc;
		border-bottom:
			1px solid
			#e6eef4;
	}
	.tc-mobile-quick {
		display: grid;
		grid-template-columns:
			repeat(
				3,
				minmax(0,1fr)
			);
		gap: 7px;
	}
	.tc-mobile-quick-item {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 6px;
		min-width: 0;
		min-height: 38px;
		padding:
			5px
			7px;
		color: #315470 !important;
		background: #ffffff;
		border:
			1px solid
			#dae6ef;
		border-radius: 10px;
		font-size: 10px;
		font-weight: 700;
		line-height: 1.2;
		text-align: center;
		text-decoration: none !important;
		box-shadow:
			0 3px 9px
			rgba(8,37,74,.035);
	}
	.tc-mobile-quick-icon {
		display: flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 22px;
		width: 22px;
		height: 22px;
		color: #078fe9;
		background: #edf7fd;
		border-radius: 6px;
		font-size: 10px;
	}
	/* =====================================================
	   OVERLAY
	===================================================== */
	.tc-mobile-overlay {
		position: fixed;
		inset: 0;
		z-index: 9997;
		display: block;
		background:
			rgba(4,20,39,.58);
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		backdrop-filter:
			blur(2px);
		-webkit-backdrop-filter:
			blur(2px);
		transition:
			opacity .3s ease,
			visibility .3s ease;
	}
	/* =====================================================
	   DRAWER
	===================================================== */
	.tc-mobile-drawer {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 9999;
		display: flex;
		flex-direction: column;
		width:
			min(
				86vw,
				360px
			);
		height: 100dvh;
		padding: 0;
		background: #ffffff;
		box-shadow:
			-15px 0 40px
			rgba(5,25,50,.18);
		transform:
			translateX(105%);
		transition:
			transform .35s
			cubic-bezier(.22,.61,.36,1);
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}
	/* =====================================================
	   MENU OPEN
	===================================================== */
	body.tc-mobile-menu-open {
		overflow: hidden;
	}
	body.tc-mobile-menu-open
	.tc-mobile-drawer {
		transform:
			translateX(0);
	}
	body.tc-mobile-menu-open
	.tc-mobile-overlay {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
	/* =====================================================
	   DRAWER HEAD
	===================================================== */
	.tc-mobile-drawer-head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 20px;
		flex: 0 0 auto;
		min-height: 72px;
		padding:
			10px
			15px;
		border-bottom:
			1px solid
			#e4edf4;
	}
	.tc-mobile-drawer-logo img {
		display: block;
		width: auto;
		max-width: 175px;
		height: 47px;
		object-fit: contain;
	}
	.tc-mobile-close {
		display: flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 38px;
		width: 38px;
		height: 38px;
		margin: 0;
		padding: 0;
		color: #08254a;
		background: #eff5f9;
		border: 0;
		border-radius: 50%;
		font-size: 16px;
		cursor: pointer;
		outline: none !important;
	}
	/* =====================================================
	   DRAWER TITLE
	===================================================== */
	.tc-mobile-drawer-title {
		display: flex;
		align-items: center;
		gap: 8px;
		padding:
			19px
			18px
			10px;
		color: #078fe9;
		font-size: 10px;
		font-weight: 800;
		letter-spacing: 1.4px;
	}
	.tc-mobile-drawer-line {
		display: block;
		width: 26px;
		height: 2px;
		background: #078fe9;
		border-radius: 10px;
	}
	/* =====================================================
	   WORDPRESS MENU RESET
	===================================================== */
	.tc-mobile-nav {
		width: 100%;
		padding:
			0
			14px
			18px;
	}
	.tc-mobile-menu,
	.tc-mobile-menu ul {
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
	}
	/* =====================================================
	   LEVEL 1
	===================================================== */
	.tc-mobile-menu > li {
		position: relative;
		margin: 0;
		border-bottom:
			1px solid
			#e7eef4;
	}
	.tc-mobile-menu > li > a {
		display: flex;
		align-items: center;
		min-height: 49px;
		padding:
			0
			42px
			0
			5px;
		color: #153b5c !important;
		font-size: 13.5px;
		font-weight: 700;
		line-height: 1.35;
		text-decoration: none !important;
	}
	.tc-mobile-menu > li.current-menu-item > a,
	.tc-mobile-menu > li.current-menu-ancestor > a {
		color: #0786da !important;
	}
	/* =====================================================
	   SUBMENU BUTTON
	===================================================== */
	.tc-mobile-sub-toggle {
		position: absolute;
		top: 6px;
		right: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 37px;
		height: 37px;
		margin: 0;
		padding: 0;
		color: #527087;
		background: transparent;
		border: 0;
		border-radius: 8px;
		cursor: pointer;
		outline: none !important;
	}
	.tc-mobile-sub-toggle i {
		margin: 0 !important;
		font-size: 12px;
		transition:
			transform .3s ease;
	}
	.tc-mobile-menu li.tc-sub-open >
	.tc-mobile-sub-toggle i {
		transform:
			rotate(180deg);
	}
	/* =====================================================
	   SUBMENU
	===================================================== */
	.tc-mobile-menu .sub-menu {
		display: none;
		padding:
			0
			0
			9px
			13px !important;
	}
	.tc-mobile-menu
	.sub-menu
	li {
		border-left:
			1px solid
			#dce8f1;
	}
	.tc-mobile-menu
	.sub-menu
	a {
		display: block;
		padding:
			8px
			12px;
		color: #6b8396 !important;
		font-size: 12px;
		font-weight: 500;
		line-height: 1.45;
		text-decoration: none !important;
	}
	/* =====================================================
	   DRAWER CONTACT
	===================================================== */
	.tc-mobile-drawer-contact {
		margin-top: auto;
		padding:
			18px;
		background:
			linear-gradient(
				135deg,
				#f1f8fd,
				#ffffff
			);
		border-top:
			1px solid
			#e2ecf3;
	}
	.tc-mobile-drawer-contact > span {
		display: block;
		margin-bottom: 8px;
		color: #7590a4;
		font-size: 9px;
		font-weight: 800;
		letter-spacing: 1.2px;
	}
	.tc-mobile-drawer-contact a {
		display: flex;
		align-items: center;
		gap: 10px;
		color: #08254a !important;
		text-decoration: none !important;
	}
	.tc-mobile-drawer-contact a i {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 36px;
		height: 36px;
		color: #ffffff;
		background:
			linear-gradient(
				135deg,
				#08254a,
				#078fe9
			);
		border-radius: 50%;
		font-size: 14px;
	}
	.tc-mobile-drawer-contact strong {
		font-size: 17px;
		font-weight: 800;
	}
}
/* =========================================================
   MOBILE NHỎ
========================================================= */
@media screen and (max-width: 390px) {
	.tc-mobile-logo img {
		max-width: 155px;
		height: 43px;
	}
	.tc-mobile-bar-inner {
		min-height: 61px;
		padding-left: 11px;
		padding-right: 11px;
	}
	.tc-mobile-phone {
		width: 38px;
		height: 38px;
	}
	.tc-mobile-menu-btn {
		width: 40px;
		height: 40px;
	}
	.tc-mobile-quick-item {
		gap: 4px;
		padding:
			4px
			5px;
		font-size: 9px;
	}
	.tc-mobile-quick-icon {
		flex-basis: 20px;
		width: 20px;
		height: 20px;
	}
}
/* =========================================================
   MOBILE STICKY HEADER FIX
========================================================= */
@media screen and (max-width: 767px) {
	/* Header mobile gốc */
	.tc-mobile-header {
		position: relative !important;
		z-index: 9998;
		width: 100%;
	}
	/* =====================================================
	   THANH TOP MOBILE
	===================================================== */
	.tc-mobile-bar {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		width: 100%;
		z-index: 9998;
		background: #ffffff;
		transition:
			box-shadow .3s ease,
			transform .3s ease;
	}
	/* =====================================================
	   KHI STICKY
	===================================================== */
	.tc-mobile-bar.tc-mobile-sticky {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		z-index: 99999 !important;
		background:
			rgba(255,255,255,.98);
		box-shadow:
			0 5px 20px
			rgba(8,37,74,.12);
		backdrop-filter:
			blur(8px);
		-webkit-backdrop-filter:
			blur(8px);
	}
	/* =====================================================
	   SPACER
	   Giữ nguyên chiều cao khi bar chuyển fixed
	===================================================== */
	.tc-mobile-sticky-space {
		display: none;
		width: 100%;
		height: 0;
	}
	.tc-mobile-sticky-space.active {
		display: block;
	}
	/* =====================================================
	   QUICK LINKS KHÔNG STICKY
	===================================================== */
	.tc-mobile-quick-wrap {
		position: relative !important;
		top: auto !important;
		z-index: 20 !important;
	}
	/* =====================================================
	   DRAWER LUÔN TRÊN STICKY HEADER
	===================================================== */
	.tc-mobile-overlay {
		z-index: 100000 !important;
	}
	.tc-mobile-drawer {
		z-index: 100001 !important;
	}
	/* =====================================================
	   CHẶN CSS STICKY CŨ CỦA THEME
	===================================================== */
	#header,
	.header,
	.tc-header {
		position: relative !important;
		top: auto !important;
		transform: none !important;
	}
	.tc-header-desktop {
		position: relative !important;
	}
	/* Nếu plugin scrollToFixed thêm style */
	#nav-top-menu,
	.nav-top-menu,
	#main-menu-new,
	.main-menu {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		right: auto !important;
		width: auto !important;
		transform: none !important;
	}
}