/* =========================================================
   TRƯỜNG CÁT
   CATEGORY ARCHIVE
========================================================= */
/* =========================================================
   SECTION
========================================================= */
.tc-category-section {
	width: 100%;
	padding:
		42px
		0
		65px;
	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#f7fafd 100%
		);
	font-family:
		"Bai Jamjuree",
		Arial,
		sans-serif;
}
.tc-category-section *,
.tc-category-section *::before,
.tc-category-section *::after {
	box-sizing: border-box;
}
/* =========================================================
   MAIN
========================================================= */
.tc-category-main {
	padding-right: 25px;
}
.tc-category-wrap {
	width: 100%;
}
/* =========================================================
   HEADER
========================================================= */
.tc-category-header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 25px;
	padding-bottom: 15px;
	border-bottom:
		1px solid
		#dde7ef;
}
/* =========================================================
   HEADING
========================================================= */
.tc-category-heading-label {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 7px;
	color: #078fe9;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 1.3px;
	text-transform: uppercase;
}
.tc-category-heading-label span {
	display: block;
	width: 30px;
	height: 2px;
	background:
		linear-gradient(
			90deg,
			#11b8ff,
			#0783da
		);
	border-radius: 10px;
}
.tc-category-heading h1 {
	position: relative;
	margin: 0 !important;
	padding: 0 !important;
	color: #08254a !important;
	font-size: 28px !important;
	font-weight: 800 !important;
	line-height: 1.3 !important;
	text-transform: uppercase !important;
}
/* =========================================================
   GRID / LIST BUTTON
========================================================= */
.tc-category-view-switch {
	display: flex;
	align-items: center;
	gap: 5px;
}
.tc-view-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 39px;
	height: 39px;
	margin: 0;
	padding: 0;
	color: #8da0b2;
	background: #f2f6f9;
	border:
		1px solid
		#dce6ee;
	border-radius: 7px;
	cursor: pointer;
	outline: none !important;
	transition:
		color .25s ease,
		background .25s ease,
		border-color .25s ease;
}
.tc-view-btn i {
	margin: 0 !important;
	font-size: 14px;
}
.tc-view-btn:hover {
	color: #0785db;
	border-color:
		#95caec;
}
.tc-view-btn.selected {
	color: #ffffff;
	background:
		linear-gradient(
			135deg,
			#08254a,
			#078fe9
		);
	border-color:
		#0785da;
}
/* =========================================================
   CATEGORY DESCRIPTION
========================================================= */
.tc-category-description {
	margin-bottom: 25px;
	padding:
		16px
		19px;
	color: #667f93;
	background: #f2f7fb;
	border-left:
		3px solid
		#078fe9;
	border-radius:
		0
		9px
		9px
		0;
	font-size: 13px;
	line-height: 1.7;
}
.tc-category-description p:last-child {
	margin-bottom: 0 !important;
}
/* =========================================================
   LIST RESET
========================================================= */
.tc-category-list {
	display: grid;
	grid-template-columns:
		repeat(
			3,
			minmax(0, 1fr)
		);
	gap:
		25px
		20px;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.tc-category-item {
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
}
/* =========================================================
   CARD
========================================================= */
.tc-category-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	background: #ffffff;
	border:
		1px solid
		#dee8f0;
	border-radius: 14px;
	box-shadow:
		0 7px 19px
		rgba(8,37,74,.055);
	transition:
		transform .32s ease,
		border-color .32s ease,
		box-shadow .32s ease;
}
.tc-category-card:hover {
	transform:
		translateY(-5px);
	border-color:
		rgba(7,143,233,.27);
	box-shadow:
		0 13px 28px
		rgba(7,66,130,.11);
}
/* =========================================================
   IMAGE LINK
========================================================= */
.tc-category-image-link {
	display: block;
	width: 100%;
	text-decoration: none !important;
}
/* =========================================================
   IMAGE 1:1
========================================================= */
.tc-category-image-wrap {
	position: relative !important;
	display: block !important;
	width: 100% !important;
	height: 0 !important;
	padding-top: 100% !important;
	margin: 0 !important;
	overflow: hidden !important;
	background: #e6eef5;
	aspect-ratio: auto !important;
}
.tc-category-image {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	object-fit: cover !important;
	object-position: center center !important;
	transform:
		scale(1);
	transition:
		transform .6s
		cubic-bezier(.22,.61,.36,1),
		filter .35s ease;
}
.tc-category-card:hover
.tc-category-image {
	transform:
		scale(1.055);
	filter:
		brightness(.97);
}
/* =========================================================
   IMAGE OVERLAY
========================================================= */
.tc-category-image-overlay {
	position: absolute;
	inset: 0;
	z-index: 2;
	background:
		linear-gradient(
			180deg,
			rgba(5,25,48,0) 45%,
			rgba(5,42,75,.22) 100%
		);
	opacity: .4;
	transition:
		opacity .3s ease;
}
.tc-category-card:hover
.tc-category-image-overlay {
	opacity: 1;
}
/* =========================================================
   HOVER IMAGE MORE
========================================================= */
.tc-category-image-more {
	position: absolute;
	left: 16px;
	bottom: 15px;
	z-index: 5;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	color: #ffffff;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	opacity: 0;
	transform:
		translateY(8px);
	transition:
		opacity .3s ease,
		transform .3s ease;
}
.tc-category-card:hover
.tc-category-image-more {
	opacity: 1;
	transform:
		translateY(0);
}
.tc-category-image-more i {
	color: #55d9ff;
	font-size: 15px;
}
/* =========================================================
   CONTENT
========================================================= */
.tc-category-card-content {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding:
		17px
		17px
		16px;
}
/* =========================================================
   META
========================================================= */
.tc-category-meta {
	margin-bottom: 8px;
}
.tc-category-meta span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #8ca0b0;
	font-size: 10px;
	font-weight: 500;
}
.tc-category-meta i {
	color: #0789de;
}
/* =========================================================
   TITLE
========================================================= */
.tc-category-title {
	display: -webkit-box;
	min-height: 54px;
	margin:
		0
		0
		10px !important;
	padding: 0 !important;
	overflow: hidden;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.5 !important;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.tc-category-title a {
	color: #113756 !important;
	text-decoration: none !important;
	transition:
		color .25s ease;
}
.tc-category-card:hover
.tc-category-title a {
	color: #0785d9 !important;
}
/* =========================================================
   EXCERPT
========================================================= */
.tc-category-excerpt {
	display: -webkit-box;
	margin-bottom: 15px;
	overflow: hidden;
	color: #6f8394;
	font-size: 12px;
	line-height: 1.65;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}
/* =========================================================
   MORE
========================================================= */
.tc-category-more {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: 9px;
	margin-top: auto;
	color: #0785da !important;
	font-size: 11px;
	font-weight: 700;
	text-decoration: none !important;
	text-transform: uppercase;
}
.tc-category-more-line {
	display: block;
	width: 25px;
	height: 1px;
	background: #0785da;
	transition:
		width .3s ease;
}
.tc-category-card:hover
.tc-category-more-line {
	width: 42px;
}
/* =========================================================
   LIST VIEW
========================================================= */
.tc-category-list.list {
	display: block;
}
.tc-category-list.list
.tc-category-item {
	width: 100% !important;
	margin-bottom: 18px !important;
}
.tc-category-list.list
.tc-category-card {
	display: grid;
	grid-template-columns:
		230px
		minmax(0, 1fr);
	min-height: 230px;
}
.tc-category-list.list
.tc-category-image-link {
	width: 230px;
}
.tc-category-list.list
.tc-category-image-wrap {
	width: 230px !important;
	height: 230px !important;
	padding-top: 0 !important;
}
.tc-category-list.list
.tc-category-card-content {
	padding:
		22px
		24px;
}
.tc-category-list.list
.tc-category-title {
	min-height: auto;
	font-size: 18px !important;
}
.tc-category-list.list
.tc-category-excerpt {
	font-size: 13px;
	-webkit-line-clamp: 4;
}
/* =========================================================
   PAGINATION
========================================================= */
.tc-category-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 38px;
}
.tc-category-pagination
.page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 39px;
	height: 39px;
	padding:
		0
		11px;
	color: #557087 !important;
	background: #ffffff;
	border:
		1px solid
		#d9e4ec;
	border-radius: 8px;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none !important;
	transition:
		color .25s ease,
		background .25s ease,
		border-color .25s ease;
}
.tc-category-pagination
.page-numbers:hover {
	color: #0785da !important;
	border-color:
		#8fc9ed;
}
.tc-category-pagination
.page-numbers.current {
	color: #ffffff !important;
	background:
		linear-gradient(
			135deg,
			#08254a,
			#078fe9
		);
	border-color:
		#078fe9;
}
/* =========================================================
   EMPTY
========================================================= */
.tc-category-empty {
	padding:
		60px
		20px;
	color: #73899a;
	background: #f7fafd;
	border:
		1px dashed
		#cddce8;
	border-radius: 12px;
	text-align: center;
}
.tc-category-empty i {
	display: block;
	margin-bottom: 10px;
	color: #078fe9;
	font-size: 30px;
}
.tc-category-empty p {
	margin: 0 !important;
	font-size: 14px;
}
/* =========================================================
   SIDEBAR
========================================================= */
.tc-category-sidebar {
	padding-left: 5px;
}
/* =========================================================
   TABLET
========================================================= */
@media screen and
(min-width: 768px) and
(max-width: 991px) {
	.tc-category-main {
		padding-right: 15px;
	}
	.tc-category-list {
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			);
	}
	.tc-category-title {
		font-size: 15px !important;
	}
	.tc-category-list.list
	.tc-category-card {
		grid-template-columns:
			190px
			minmax(0, 1fr);
		min-height: 190px;
	}
	.tc-category-list.list
	.tc-category-image-link,
	.tc-category-list.list
	.tc-category-image-wrap {
		width: 190px !important;
		height: 190px !important;
	}
}
/* =========================================================
   MOBILE
========================================================= */
@media screen and
(max-width: 767px) {
	.tc-category-section {
		padding:
			30px
			0
			45px;
	}
	.tc-category-main {
		padding-right: 15px;
	}
	.tc-category-header {
		align-items: center;
	}
	.tc-category-heading h1 {
		font-size: 22px !important;
	}
	.tc-category-list {
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			);
		gap:
			16px
			10px;
	}
	.tc-category-card-content {
		padding:
			13px
			12px;
	}
	.tc-category-meta {
		display: none;
	}
	.tc-category-title {
		min-height: 46px;
		font-size: 13px !important;
		line-height: 1.45 !important;
	}
	.tc-category-excerpt {
		font-size: 10.5px;
		-webkit-line-clamp: 2;
	}
	.tc-category-more {
		font-size: 9.5px;
	}
	.tc-category-list.list
	.tc-category-card {
		grid-template-columns:
			120px
			minmax(0, 1fr);
		min-height: 120px;
	}
	.tc-category-list.list
	.tc-category-image-link,
	.tc-category-list.list
	.tc-category-image-wrap {
		width: 120px !important;
		height: 120px !important;
	}
	.tc-category-list.list
	.tc-category-card-content {
		padding:
			12px
			13px;
	}
	.tc-category-list.list
	.tc-category-title {
		font-size: 14px !important;
	}
	.tc-category-list.list
	.tc-category-excerpt {
		display: none;
	}
	.tc-category-sidebar {
		margin-top: 35px;
		padding-left: 15px;
	}
}
/* =========================================================
   SMALL MOBILE
========================================================= */
@media screen and
(max-width: 430px) {
	.tc-category-list {
		grid-template-columns: 1fr;
	}
	.tc-category-card-content {
		padding:
			16px
			15px;
	}
	.tc-category-title {
		min-height: auto;
		font-size: 16px !important;
	}
	.tc-category-excerpt {
		font-size: 12px;
		-webkit-line-clamp: 3;
	}
}
/* =========================================================
   TRƯỜNG CÁT - SINGLE PROJECT
========================================================= */
.tcsp-section {
	padding-bottom: 70px;
	background: #f7fafc;
	font-family: "Bai Jamjuree", Arial, sans-serif;
}
/* BREADCRUMB */
.tcsp-breadcrumb {
	margin-bottom: 0;
	padding: 14px 0;
	background: #f1f5f8;
	border-bottom: 1px solid #e2ebf1;
}
.tcsp-breadcrumb .container {
	display: flex;
	align-items: center;
	gap: 10px;
	overflow: hidden;
}
.tcsp-breadcrumb a,
.tcsp-breadcrumb span {
	color: #688095;
	font-size: 12px;
	text-decoration: none !important;
}
.tcsp-breadcrumb a:hover {
	color: #0785d8;
}
.tcsp-breadcrumb i {
	color: #a6b5c1;
	font-size: 11px;
}
.tcsp-breadcrumb span {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
/* HEADER */
.tcsp-header {
	padding: 38px 0 26px;
}
.tcsp-eyebrow {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 9px;
	color: #0788dd;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 1.5px;
}
.tcsp-eyebrow-line {
	width: 34px;
	height: 2px;
	background: #078fe9;
	border-radius: 10px;
}
.tcsp-header h1 {
	max-width: 950px;
	margin: 0 !important;
	color: #08254a !important;
	font-size: 30px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
}
/* TOP */
.tcsp-top {
	display: grid;
	grid-template-columns: minmax(0, 1.75fr) minmax(300px, .75fr);
	gap: 28px;
	align-items: start;
}
/* GALLERY */
.tcsp-gallery {
	min-width: 0;
}
.tcsp-main-media {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 520px;
	overflow: hidden;
	background: #edf3f7;
	border: 1px solid #dde8ef;
	border-radius: 16px;
	box-shadow: 0 8px 25px rgba(8, 37, 74, .07);
}
.tcsp-main-media > img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 720px;
	object-fit: contain;
}
.tcsp-video-frame {
	position: absolute;
	inset: 0;
	display: none;
	background: #000;
}
.tcsp-video-frame iframe {
	width: 100%;
	height: 100%;
	border: 0;
}
/* THUMB */
.tcsp-thumbs {
	display: flex;
	gap: 10px;
	margin-top: 12px;
	padding-bottom: 3px;
	overflow-x: auto;
}
.tcsp-thumb {
	position: relative;
	flex: 0 0 82px;
	width: 82px;
	height: 68px;
	padding: 0;
	overflow: hidden;
	background: #e8eef3;
	border: 2px solid transparent;
	border-radius: 9px;
	cursor: pointer;
}
.tcsp-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.tcsp-thumb.active {
	border-color: #078fe9;
}
.tcsp-play {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	background: rgba(5, 30, 55, .35);
}
.tcsp-play i {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	padding-left: 2px;
	background: #078fe9;
	border-radius: 50%;
}
/* INFO */
.tcsp-info {
	position: sticky;
	top: 95px;
	padding: 25px 23px 23px;
	background: #fff;
	border: 1px solid #dce7ef;
	border-radius: 16px;
	box-shadow: 0 8px 26px rgba(8, 37, 74, .07);
}
.tcsp-info-head {
	margin-bottom: 20px;
	padding-bottom: 15px;
	border-bottom: 1px solid #e4edf3;
}
.tcsp-info-head > span {
	display: block;
	margin-bottom: 5px;
	color: #078fe9;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 1.4px;
}
.tcsp-info-head h2 {
	margin: 0 !important;
	color: #08254a !important;
	font-size: 21px !important;
	font-weight: 800 !important;
}
/* META */
.tcsp-meta {
	display: flex;
	flex-direction: column;
	gap: 5px;
}
.tcsp-meta-row {
	display: grid;
	grid-template-columns: 36px minmax(0, 1fr);
	gap: 10px;
	align-items: start;
	padding: 11px 0;
	border-bottom: 1px solid #edf2f6;
}
.tcsp-meta-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	color: #0785d8;
	background: #edf7fd;
	border-radius: 9px;
}
.tcsp-meta-row small {
	display: block;
	margin-bottom: 3px;
	color: #879aaa;
	font-size: 10px;
	font-weight: 600;
}
.tcsp-meta-row strong {
	display: block;
	color: #24445e;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.45;
}
/* CONTACT */
.tcsp-contact {
	margin-top: 20px;
}
.tcsp-contact-phone {
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 12px;
	color: #08254a !important;
	background: #f2f8fc;
	border-radius: 11px;
	text-decoration: none !important;
}
.tcsp-contact-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	color: #fff;
	background: linear-gradient(135deg, #08254a, #078fe9);
	border-radius: 50%;
}
.tcsp-contact-phone small {
	display: block;
	margin-bottom: 3px;
	color: #7890a3;
	font-size: 8px;
	font-weight: 700;
	letter-spacing: 1px;
}
.tcsp-contact-phone strong {
	color: #08254a;
	font-size: 16px;
	font-weight: 800;
}
.tcsp-quote {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 45px;
	margin-top: 9px;
	color: #fff !important;
	background: linear-gradient(135deg, #08254a, #078fe9);
	border-radius: 10px;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none !important;
}
/* BODY */
.tcsp-body {
	display: grid;
	grid-template-columns: minmax(0, 3fr) minmax(260px, 1fr);
	gap: 28px;
	align-items: start;
	margin-top: 38px;
}
.tcsp-content {
	padding: 28px;
	background: #fff;
	border: 1px solid #dfe8ef;
	border-radius: 16px;
	box-shadow: 0 7px 22px rgba(8, 37, 74, .05);
}
.tcsp-content-head {
	position: relative;
	margin-bottom: 23px;
	padding-bottom: 12px;
	border-bottom: 1px solid #e5edf3;
}
.tcsp-content-head span {
	color: #08254a;
	font-size: 19px;
	font-weight: 800;
}
.tcsp-content-head::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 55px;
	height: 2px;
	background: #078fe9;
}
.tcsp-entry {
	color: #435f75;
	font-size: 14px;
	line-height: 1.8;
}
.tcsp-entry img {
	max-width: 100%;
	height: auto;
	border-radius: 10px;
}
.tcsp-entry h2,
.tcsp-entry h3,
.tcsp-entry h4 {
	color: #08254a;
	font-weight: 800;
}
.tcsp-video-section {
	margin-top: 35px;
}
.tcsp-video-content iframe {
	max-width: 100%;
}
/* SIDEBAR */
.tcsp-sidebar {
	min-width: 0;
}
/* TABLET */
@media screen and (max-width: 991px) {
	.tcsp-top {
		grid-template-columns: 1fr;
	}
	.tcsp-info {
		position: relative;
		top: auto;
	}
	.tcsp-body {
		grid-template-columns: 1fr;
	}
	.tcsp-main-media {
		min-height: 420px;
	}
}
/* =========================================================
   SINGLE PROJECT - MOBILE FIX
========================================================= */
@media screen and (max-width: 767px) {
	/* =====================================================
	   CHẶN TRÀN NGANG TOÀN TRANG
	===================================================== */
	html,
	body {
		max-width: 100% !important;
		overflow-x: hidden !important;
	}
	.tcsp-section {
		width: 100% !important;
		max-width: 100% !important;
		padding-bottom: 45px;
		overflow-x: hidden !important;
		background: #f6f9fc;
	}
	.tcsp-section * {
		box-sizing: border-box;
	}
	/* =====================================================
	   CONTAINER
	===================================================== */
	.tcsp-section > .container {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding-left: 14px !important;
		padding-right: 14px !important;
	}
	/* =====================================================
	   BREADCRUMB
	===================================================== */
	.tcsp-breadcrumb {
		display: none !important;
	}
	/* =====================================================
	   HEADER
	===================================================== */
	.tcsp-header {
		width: 100%;
		padding:
			25px
			0
			18px;
	}
	.tcsp-header h1 {
		width: 100%;
		margin: 0 !important;
		color: #08254a !important;
		font-size: 21px !important;
		font-weight: 800 !important;
		line-height: 1.4 !important;
		word-break: normal;
		overflow-wrap: break-word;
	}
	.tcsp-eyebrow {
		margin-bottom: 8px;
		font-size: 9px;
	}
	/* =====================================================
	   TOP
	   GALLERY + INFO
	===================================================== */
	.tcsp-top {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
	}
	.tcsp-gallery,
	.tcsp-info {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}
	/* =====================================================
	   MAIN IMAGE
	===================================================== */
	.tcsp-main-media {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100% !important;
		max-width: 100% !important;
		min-height: 0 !important;
		aspect-ratio: 4 / 3;
		overflow: hidden;
		background: #edf3f7;
		border-radius: 12px;
	}
	.tcsp-main-media > img {
		display: block;
		width: 100% !important;
		height: 100% !important;
		max-width: 100% !important;
		object-fit: contain !important;
	}
	.tcsp-video-frame {
		width: 100% !important;
		height: 100% !important;
	}
	.tcsp-video-frame iframe {
		width: 100% !important;
		height: 100% !important;
		border: 0;
	}
	/* =====================================================
	   THUMBNAILS
	===================================================== */
	.tcsp-thumbs {
		display: flex;
		width: 100%;
		gap: 7px;
		margin-top: 10px;
		padding:
			0
			0
			4px;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
	}
	.tcsp-thumb {
		flex:
			0 0
			68px;
		width: 68px;
		height: 58px;
		border-radius: 8px;
	}
	/* =====================================================
	   INFO CARD
	===================================================== */
	.tcsp-info {
		position: relative !important;
		top: auto !important;
		margin-top: 18px;
		padding:
			19px
			17px;
		background: #ffffff;
		border:
			1px solid
			#dce7ef;
		border-radius: 13px;
		box-shadow:
			0 7px 20px
			rgba(8,37,74,.055);
	}
	.tcsp-info-head {
		margin-bottom: 14px;
		padding-bottom: 13px;
	}
	.tcsp-info-head h2 {
		font-size: 18px !important;
	}
	/* =====================================================
	   META
	===================================================== */
	.tcsp-meta {
		width: 100%;
	}
	.tcsp-meta-row {
		grid-template-columns:
			34px
			minmax(0, 1fr);
		gap: 9px;
		width: 100%;
		padding:
			10px
			0;
	}
	.tcsp-meta-row > div {
		min-width: 0;
	}
	.tcsp-meta-row strong {
		display: block;
		width: 100%;
		color: #294861;
		font-size: 12px;
		font-weight: 700;
		line-height: 1.5;
		white-space: normal !important;
		word-break: normal;
		overflow-wrap: anywhere;
	}
	/* =====================================================
	   CONTACT
	===================================================== */
	.tcsp-contact {
		width: 100%;
		margin-top: 16px;
	}
	.tcsp-contact-phone {
		width: 100%;
		padding:
			11px
			12px;
		border-radius: 11px;
	}
	.tcsp-contact-phone > span:last-child {
		min-width: 0;
	}
	.tcsp-contact-phone strong {
		font-size: 16px;
		white-space: nowrap;
	}
	.tcsp-quote {
		width: 100%;
		min-height: 47px;
		margin-top: 9px;
		border-radius: 10px;
	}
	/* =====================================================
	   BODY
	   QUAN TRỌNG: BỎ GRID 2 CỘT
	===================================================== */
	.tcsp-body {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-top: 22px !important;
	}
	.tcsp-content,
	.tcsp-sidebar {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}
	/* =====================================================
	   CONTENT CARD
	===================================================== */
	.tcsp-content {
		margin: 0 !important;
		padding:
			20px
			16px !important;
		overflow: hidden !important;
		background: #ffffff;
		border:
			1px solid
			#dfe8ef;
		border-radius: 13px;
		box-shadow:
			0 6px 18px
			rgba(8,37,74,.045);
	}
	/* =====================================================
	   CONTENT HEADING
	===================================================== */
	.tcsp-content-head {
		width: 100%;
		margin-bottom: 20px;
		padding-bottom: 12px;
	}
	.tcsp-content-head span {
		display: block;
		width: 100%;
		color: #08254a;
		font-size: 18px;
		font-weight: 800;
		line-height: 1.35;
		white-space: normal;
	}
	/* =====================================================
	   ENTRY CONTENT
	   FIX PHẦN ĐANG BỊ CẮT TRONG ẢNH
	===================================================== */
	.tcsp-entry {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		overflow: hidden !important;
		color: #516e84;
		font-size: 13.5px;
		line-height: 1.75;
		word-break: normal;
		overflow-wrap: anywhere;
	}
	.tcsp-entry p,
	.tcsp-entry div,
	.tcsp-entry span,
	.tcsp-entry strong,
	.tcsp-entry a,
	.tcsp-entry li {
		max-width: 100% !important;
		white-space: normal !important;
		word-break: normal !important;
		overflow-wrap: anywhere !important;
	}
	.tcsp-entry p {
		margin:
			0
			0
			12px !important;
	}
	/* =====================================================
	   IMAGE TRONG BÀI
	===================================================== */
	.tcsp-entry img {
		display: block;
		width: auto !important;
		max-width: 100% !important;
		height: auto !important;
		margin:
			15px
			auto !important;
		border-radius: 9px;
	}
	.tcsp-entry figure {
		width: 100% !important;
		max-width: 100% !important;
		margin:
			15px
			0 !important;
	}
	/* =====================================================
	   VIDEO / IFRAME TRONG BÀI
	===================================================== */
	.tcsp-entry iframe,
	.tcsp-video-content iframe {
		display: block;
		width: 100% !important;
		max-width: 100% !important;
		height: auto;
		aspect-ratio: 16 / 9;
		margin:
			15px
			0;
	}
	/* =====================================================
	   TABLE TRONG BÀI
	===================================================== */
	.tcsp-entry table {
		width: 100% !important;
		max-width: 100% !important;
		table-layout: fixed;
		font-size: 12px;
	}
	.tcsp-entry td,
	.tcsp-entry th {
		padding:
			8px
			7px;
		word-break: break-word;
		overflow-wrap: anywhere;
	}
	/* =====================================================
	   HEADING TRONG CONTENT
	===================================================== */
	.tcsp-entry h2 {
		font-size: 19px !important;
		line-height: 1.45 !important;
	}
	.tcsp-entry h3 {
		font-size: 17px !important;
		line-height: 1.45 !important;
	}
	.tcsp-entry h4 {
		font-size: 15px !important;
		line-height: 1.45 !important;
	}
	/* =====================================================
	   VIDEO SECTION
	===================================================== */
	.tcsp-video-section {
		width: 100%;
		margin-top: 30px;
	}
	.tcsp-video-content {
		width: 100%;
		max-width: 100%;
		overflow: hidden;
	}
	/* =====================================================
	   COMMENTS
	===================================================== */
	.tcsp-comments {
		width: 100%;
		margin-top: 30px;
	}
	.tcsp-comments input,
	.tcsp-comments textarea {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}
	/* =====================================================
	   RELATED
	===================================================== */
	.tcsp-related {
		width: 100%;
		margin-top: 32px;
	}
	.tcsp-related-grid {
		display: grid;
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			);
		gap:
			14px
			10px;
		width: 100%;
	}
	.tcsp-related-card {
		min-width: 0;
		overflow: hidden;
	}
	.tcsp-related-image {
		display: block;
		width: 100%;
		aspect-ratio: 1 / 1;
		overflow: hidden;
	}
	.tcsp-related-image img {
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
	}
	.tcsp-related-info {
		min-width: 0;
	}
	.tcsp-related-info h3,
	.tcsp-related-info h3 a {
		white-space: normal !important;
		overflow-wrap: anywhere;
	}
	/* =====================================================
	   SIDEBAR MOBILE
	   ẨN ĐỂ TRANG CHI TIẾT GỌN
	===================================================== */
	.tcsp-sidebar {
		display: none !important;
	}
}
/* =========================================================
   MOBILE NHỎ
========================================================= */
@media screen and (max-width: 430px) {
	.tcsp-section > .container {
		padding-left: 12px !important;
		padding-right: 12px !important;
	}
	.tcsp-content {
		padding:
			18px
			14px !important;
	}
	.tcsp-header h1 {
		font-size: 20px !important;
	}
	.tcsp-content-head span {
		font-size: 17px;
	}
	.tcsp-entry {
		font-size: 13px;
	}
	.tcsp-related-grid {
		grid-template-columns:
			repeat(
				2,
				minmax(0, 1fr)
			);
	}
}