/*
Theme Name: Flastsome Child
Theme URI: https://example.com/
Description: Child theme for the Flatsome theme
Author: Your Name
Author URI: https://example.com/
Template: flatsome
Version: 1.0.0
*/
.pdb-0,
.pdb-0 > .col {
	padding-bottom: 0;
}
body {
	--fs-transition: all 0.3s ease-in-out;
	--fs-color-black: #404041;
}
.is-divider {
	display: none !important;
}
.d-flex {
	display: flex;
}
.d-al-center {
	align-items: center;
}
.d-wrap {
	flex-wrap: wrap;
}
.d-center {
	justify-content: center;
}
.d-space {
	justify-content: space-between;
}
.mrb-0 {
	margin-bottom: 0;
}
.pdb-0{
	padding-bottom: 0;
}
.gap-5 {
	gap: 5px;
}
.gap-15 {
	gap: 15px;
}
.gap-10 {
	gap: 10px;
}
.gap-20 {
	gap: 20px;
}
.nav > li > a {
	font-size: 20px;
	color: var(--fs-color-black);
	text-transform: capitalize;
}
#masthead .flex-grow .nav > li {
	margin-right: 0 !important;
}
#masthead .flex-grow .nav > li > a {
	position: relative;
	line-height: 1;
	padding: 15px 0;
	margin: 0 30px;
	border-radius: 99px;
	transition: var(--fs-transition);
}
#masthead .flex-grow .nav > li > a:after {
	content: '';
	position: absolute;
	width: 0;
	height: 2px;
	bottom: 8px;
	left: 0;
	background-color: var(--fs-color-primary);
	transition: var(--fs-transition);
}
#masthead .flex-grow .nav > li:not(.active) > a:hover:after {
	width: 100%;
	transition: var(--fs-transition);
}
#masthead .flex-grow .nav > li:not(.active) > a:hover  {
	color: var(--fs-color-primary)!important;
	transition: var(--fs-transition);
}
#masthead .flex-grow .nav > li.active > a {
	color:  var(--fs-color-primary) !important;
}
#masthead .flex-grow .nav > li.active > a:after {
	width: 100%;
}
#masthead .flex-grow .nav{
	justify-content: center !important;
}
.nav-dropdown-has-border .nav-dropdown {
	border: unset !important;
	border-radius: 25px !important;
	width: max-content;
}
li.has-dropdown>.nav-dropdown {
	transform: translatex(-10%);
	left: 0;
	opacity: 0;
	transition: all 0.3s linear;
}
.nav-dropdown {
	transition: all 0.3s linear;
}
li.current-dropdown:hover>.nav-dropdown {
	transform: translatex(0);
	opacity: 1;
	zoom: 1;
	transition: all 0.3s linear;
}
.nav-dropdown-has-arrow li.has-dropdown:after {
	opacity: 0 !important;
}
.nav-dropdown-has-arrow.nav-dropdown-has-border li.has-dropdown:before {
	opacity: 0 !important;
}
.nav-dropdown.nav-dropdown-default>li>a {
	border-bottom: unset !important;
	margin: 0 !important;
	color: #121;
	padding: 10px !important;
	border-radius: 99px;
	transition: var(--fs-transition);
}
.nav-dropdown.nav-dropdown-default>li>a:hover {
	color: var(--fs-color-primary);
	transition: var(--fs-transition);
}
.header-wrapper.stuck #masthead {
	background-color: #FFF
}
.hotline {
	width: max-content;
	border-radius: 99px;
	padding: 10px 25px;
	outline: 1px solid var(--fs-color-primary);
	background-color: var(--fs-color-primary);
	transition: var(--fs-transition);
}
.hotline a {
	color: #FFF;
	font-weight: 700;
	transition: var(--fs-transition);
}
.hotline:hover{
	background-color: #FFF;
	transition: var(--fs-transition);
}
.hotline:hover a {
	color: var(--fs-color-primary);
	transition: var(--fs-transition);
}
.text-banner h3 {
	font-size: 35px;
	line-height: 1;
	margin-top: 0;
	margin-bottom: 10px;
}
.section-banner {
	background-image: linear-gradient(180deg, #252649, var(--fs-color-primary));
}
.button-swiper,
.flickity-button{
	width: 40px !important;
	height: 40px;
	background-color: #FFF;
	border-radius: 50%;
	border: 1px solid #ddd;
	opacity: 0.3;
	transition: var(--fs-transition);
}
.archive-page-header .text-center {
	padding: 0 !important;
}
.button-swiper:hover,
.flickity-button:hover{
	opacity: 1;
	background-color: var(--fs-color-secondary);
	transition: var(--fs-transition);
}

.button-swiper:after {
	font-size: 14px;
	color: var(--fs-color-secondary);
	transition: var(--fs-transition);
}
.flickity-button svg {
	display: none;
}
.flickity-button:after {
	font-family: swiper-icons;
	font-size: 14px;
	text-transform: none !important;
	color: var(--fs-color-secondary);
	letter-spacing: 0;
	font-variant: initial;
	line-height: 1;
	transition: var(--fs-transition);
}
.flickity-button.next:after {
	content: 'next';
}
.flickity-button.previous:after {
	content: 'prev';
}
.button-swiper:hover:after,
.flickity-button:hover:after{
	color: #FFF;
	transition: var(--fs-transition);
}
.slider-show-nav .flickity-prev-next-button, .slider .flickity-prev-next-button {
	transform: translateX(0) !important;
}
.slider-nav-push:not(.slider-nav-reveal) .flickity-prev-next-button {
	margin-top: unset !important;
}
.swiper-pagination .swiper-pagination-bullet,
.dot{
	width: 12px;
	height: 12px;
	background-color: rgba(30, 130, 77, 0.35) !important;
	opacity: 1;
	margin: 0 8px !important;
}
.swiper-pagination .swiper-pagination-bullet:hover,
.dot{
	background-color: var(--fs-color-primary) !important;
	transition: var(--fs-transition);
}
.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active,
.dot.is-selected{
	background-color: var(--fs-color-primary) !important;
}
.swiper-button-prev,
.swiper-button-next {
	opacity: 0.3 !important;
	background: white;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 1px solid #ddd;
	top: 45%;
	transition: var(--fs-transition) !important;
}
.swiper-button-prev:hover,
.swiper-button-next:hover {
	background-color: var(--fs-color-secondary);
	opacity: 1 !important;
	transition: var(--fs-transition) !important;
}
.swiper-button-prev{
	left: 2%;
}
.swiper-button-next {
	right: 2%;
}
.swiper-button-prev:after,
.swiper-button-next:after{
	font-size: 14px !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	color: var(--fs-color-secondary) !important;
	font-variant: initial !important;
	line-height: 1 !important;
	transition: var(--fs-transition) !important;
}
.swiper-button-prev:hover:after,
.swiper-button-next:hover:after {
	color: #FFF !important;
	transition: var(--fs-transition) !important;
}
.border-radius-10 img {
	border-radius: 10px;
}
.tool-container {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 20px;
}
.tool-box {
	background: #fff;
	border: 1px solid var(--fs-color-primary);
	border-radius: 6px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 15px;
	box-shadow: 0 2px 6px rgba(0,0,0,0.05);
	transition: all 0.3s ease;
	cursor: pointer;
}
.tool-box:hover {
	transform: translateY(-5px);
	box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}
.tool-box img {
	width: 40px;
	height: 40px;
	margin-bottom: 10px;
}
.tool-title {
	font-size: 15px;
	font-weight: 500;
	color: #222;
	line-height: 1.3;
}
.bds-card {
	background: #fff;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 1px 3px -2px rgba(0, 0, 0, .12), 0 1px 2px rgba(0, 0, 0, .24);
	transition: var(--fs-transition);
}
.bds-card:hover {
	box-shadow: 0 10px 20px rgba(0, 0, 0, .19), 0 6px 6px rgba(0, 0, 0, .22);
	transition: var(--fs-transition);
}
.bds-thumb {
	position: relative;
	padding: 8px;
}
.bds-thumb img {
	width: 100%;
	border-radius: 10px;
	height: 280px;
	object-fit: cover;
}
.bds-date {
	position: absolute;
	bottom: 20px;
	left: 20px;
	background: rgba(0,0,0,0.6);
	color: #fff;
	padding: 4px 8px;
	border-radius: 6px;
	font-size: 12px;
}
.bds-content {
	padding: 12px;
}
.bds-title a{
	font-size: 18px;
	text-transform: uppercase;
	font-weight: bold;
	margin: 0 0 6px;
	line-height: 1.5;
	display: -webkit-box;
	-webkit-line-clamp: 2; 
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	min-height: 54px;
}
.bds-price {
	color: var(--fs-color-primary);
	font-weight: 600;
	font-size: 20px;
	margin-bottom: 6px;
}
.bds-price span {
	font-size: 14px;
	font-weight: 400;
	color: rgb(140,140,140);
}
.bds-location {
	font-size: 14px;
	color: rgb(140,140,140);
	margin-bottom: 8px;
	line-height: 1.5;
	min-height: 42px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}
.bds-info span {
	font-size: 14px;
	margin-right: 10px;
	color: rgb(140,140,140);
}
.bds-info.bds-info-du-an span {
	color: var(--fs-color-black);
	display: block;
	margin-bottom: 5px;
	font-weight: 500;
}
.bds-info i,
.bds-location i {
	color: var(--fs-color-secondary);
	margin-right: 4px;
}
.bds-image-count {
	position: absolute;
	bottom: 20px;
	right: 20px;
	background: rgba(255,255,255,0.85);
	color: #333;
	font-size: 13px;
	font-weight: 500;
	padding: 2px 6px;
	border-radius: 4px;
	display: flex;
	align-items: center;
	gap: 3px;
}

.bds-image-count i {
	font-size: 14px;
	color: #666;
}
.bds-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}
.swiper {
	padding: 0 5px 25px;
}
.btn-news{
	margin: 30px auto 0 !important;
	width: 200px !important;
	height: 50px !important;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 13px;
	box-sizing: border-box;
	width: max-content;
	line-height: 1 !important;
	transition: var(--fs-transition);
}
.btn-news  span {
	line-height: 1;
	font-size: 15px;
	color: var(--fs-color-primary);
	text-transform: uppercase;
}
.btn-news:after {
	font-family: "Font Awesome 6 Free";
	content: '\f101';
	color: var(--fs-color-primary);
	transition: var(--fs-transition);
}
.btn-news:hover span,
.btn-news:hover:after{
	color: #FFF;
	transition: var(--fs-transition);
}
.bds-duan-card {
	position:relative;
	border-radius:12px;
	overflow:hidden;
}
.bds-duan-card img {
	width:100%;
	height:468px;
	object-fit:cover;
	transition:transform .3s;
}
.bds-duan-card:hover img {
	transform:scale(1.05);
}
.bds-duan-overlay {
	position:absolute;
	left:0;right:0;bottom:0;
	padding: 20px 30px;
	background: linear-gradient(180deg, #fff0, #000000e0 75%);
	color:#fff;
}
.bds-duan-overlay h3 {
	font-size:18px;
	font-weight:600;
	margin:0 0 5px;
	color: #FFF;
}
.bds-duan-overlay p {
	font-size:14px;
	margin:0;
	opacity:0.85;
	color: #FFF;
}
.col-hd .col-inner {
	padding: 24px;
	border: 1px solid rgb(217,217,217);
	border-radius: 10px;
}
.col-hd .col-inner img {
	width: 48px;
	height: 48px;
}
.col-hd .col-inner p:first-child {
	font-size: 14px;
	line-height: 20px;
	margin-bottom: 4px;
}
.col-hd .col-inner h3 {
	font-size: 18px;
	line-height: 28px;
	font-weight: 600;
	margin-bottom: 0;
	margin-top: 0;
}
.col-hd .col-inner ul {
	margin-top: 16px;
}
.col-hd .col-inner ul li{
	font-size: 16px;
}
.blog-post-custom a.button,
#post-list a.button{
	width: 100%;
	text-align: right;
	font-style: italic;
	font-size: 14px;
	font-weight: 700;
	color: var(--fs-experimental-link-color) !important;
	border: unset !important;
	box-shadow: unset !important;
	transition: var(--fs-transition);
}
.blog-post-custom a.button:hover,
#post-list a.button:hover{
	color: var(--fs-color-secondary) !important;
	transition: var(--fs-transtion);
}
.blog-post-custom .col-inner,
.blog-post-custom .col-inner .box ,
#post-list .col-inner,
#post-list .col-inner .box {
	border-radius: 10px;
}
.blog-post-custom .col-inner .box  .box-image,
.blog-post-custom .col-inner .box .box-image img ,
#post-list .col-inner .box  .box-image,
#post-list .col-inner .box .box-image img {
	border-radius: 10px 10px 0 0;
}
.blog-post-custom .col-inner .box .post-title a,
#post-list .col-inner .box .post-title a{
	font-size: 16px;
	line-height: 1.5;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	height: 48px;
	color: var(--fs-color-primary);
	transition: var(--fs-transition);
}
.cat-label {
	background-color: var(--fs-color-primary);
	border-radius: 4px;
	padding: 5px 15px;
	font-weight: 500;
	font-size: 15px;
	color: #FFF;
	width: max-content;
	margin: 5px auto 15px !important;
}
.section-ft {
	border-top: 1px solid var(--fs-color-primary);
}
.row-bt {
	border-bottom: 1px solid var(--fs-color-primary);
	margin-bottom: 30px;
}
.row-bt .col {
	padding-bottom: 10px;
}
.row-bt .col-inner p:first-child {
	margin-bottom: 10px;
	font-size: 16px;
}

.row-bt .col-inner p:last-child a{
	margin-bottom: 0;
	font-size: 24px;
	font-weight: 700;
	color: var(--fs-color-secondary);
}
.menu-ft a {
	transition: var(--fs-transition);
}
.menu-ft a span,
.menu-ft a i {
	transition: var(--fs-transition);
}
.menu-ft a:hover{
	transform: translatex(5px);
	transition: var(--fs-transition);
}
.menu-ft a:hover span,
.menu-ft a:hover i{
	color: var(--fs-color-primary);
	transition: var(--fs-transition);
}
.absolute-footer {
	display: none !important;
}
.col-copy {
	margin-top: 20px;
	border-top: 1px solid var(--fs-color-primary);
}
.col-copy .col-inner {
	padding-top: 10px !important;
	padding-bottom: 0 !important;
}
.col-copy .col-inner p {
	margin-bottom: 0;
}
.pdb-0,
.pdb-0 > .col {
	padding-bottom: 0 !important;
}
.cpt-breadcrumb {
	margin: 50px 0 0 0;
}
.cpt-breadcrumb ol {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0;
	align-items: center;
}
.cpt-breadcrumb ol li {
	margin-right: 10px;
	margin-bottom: 0;
	display: flex;
	align-items: center;
}
.cpt-breadcrumb ol li span {
	font-size: 18px;
}
.cpt-breadcrumb ol li:last-child span {
	font-weight: 700;
}
.cpt-breadcrumb ol > span {
	margin-right: 10px;
}
.cpt-breadcrumb ol li:last-child {
	margin-right: 0;
}
.bds-list {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.bds-item {
	display: flex;
	gap: 20px;
	border: 1px solid #eee;
	padding: 15px;
	border-radius: 8px;
	background: #fff;
}
.bds-thumb {
	position: relative;
	flex: 0 0 300px;
	height: 300px;
}
.bds-item .bds-thumb img {
	width: 100%;
	height: 100%;
	border-radius: 6px;
}
.bds-item .bds-content {
	padding: 0;
	flex: 1;
}
.bds-pagination {
	margin-top: 30px;
	text-align: center;
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
}
.page-numbers {
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgb(140,140,140);
	border-radius: 50%;
	font-size: 14px;
	color: rgb(140,140,140);
	transition: var(--fs-transition);
}
.page-numbers.current {
	border:1px solid var(--fs-color-primary);
	color: var(--fs-color-primary);
}
.page-numbers:hover {
	border:1px solid var(--fs-color-primary);
	color: var(--fs-color-primary);
	transition: var(--fs-transition);
}
.bds-excerpt p {
	font-size: 14px;
	color: #444;
	margin-top: 10px;
	min-height: 21px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: 1.5;
}
.bds-author-box {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #f5f8ff;
	padding: 10px 15px;
	border-radius: 8px;
	margin-top: 15px;
}
.bds-author-left {
	display: flex;
	align-items: center;
	gap: 10px;
}
.bds-author-avatar img {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	object-fit: cover;
}
.bds-author-info {
	font-size: 14px;
	line-height: 1.2;
}
.bds-author-info strong {
	display: block;
	font-weight: 600;
	font-size: 15px;
}
.bds-author-role {
	color: #666;
	font-size: 13px;
}
.bds-author-right .bds-phone {
	background: var(--fs-color-primary);
	color: #fff;
	padding: 6px 12px;
	border-radius: 6px;
	font-size: 14px;
	text-decoration: none;
	display: flex;
	align-items: center;
	gap: 5px;
}
.right-sidebar-custom .right-sidebar {
	box-shadow: 0 3px 6px -4px rgba(0, 0, 0, .16), 0 3px 6px rgba(0, 0, 0, .23);
	border-radius: 10px;
	background-color: #FFF;
	padding: 20px;
	margin-bottom: 25px;
}
.right-sidebar-custom .right-sidebar .title {
	font-size: 22px;
	font-weight: 700;
	color: var(--fs-color-primary);
}
.right-sidebar-custom .right-sidebar .list-right {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.right-sidebar-custom .right-sidebar .list-right .item {
	width: 48%;
	margin: 0;
}
.right-sidebar-custom .right-sidebar .list-right .item a {
	display: flex;
	justify-content: center;
}
.right-sidebar-custom .right-sidebar .list-right .item a {
	font-size: 14px;
	color: #FFF;
	outline: 1px solid var(--fs-color-primary);
	width: 100%;
	padding: 2px 10px;
	border-radius: 4px;
	background-color: rgba(0, 152, 179,1);
	transition: all 0.3s ease-in-out;
}
.right-sidebar-custom .right-sidebar .list-right .item:hover a {
	background-color: #FFF;
	color: var(--fs-color-primary);
	transition: all 0.3s ease-in-out;
}
.bds-gallery {
	max-width: 100%;
	margin: 0 auto 30px;
}
.bds-gallery-main {
	width: 100%;
	height: 500px;
	margin-bottom: 10px;
	border-radius: 8px;
	overflow: hidden;
}
.bds-gallery-main img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.bds-gallery-thumbs {
	height: 150px;
}
.bds-gallery-thumbs .swiper-slide {
	opacity: 0.5;
	height: 100%;
	cursor: pointer;
}
.bds-gallery-thumbs .swiper-slide-thumb-active {
	opacity: 1;

}
.bds-gallery-thumbs .swiper-slide-thumb-active img {
	outline: 1px solid var(--fs-color-primary);
	border-radius: 8px;
}
.bds-gallery-thumbs img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 4px;
}
.detail-gallery__preview-overlay {
	align-items: center;
	-webkit-backdrop-filter: blur(64px);
	backdrop-filter: blur(64px);
	background: #0000004d;
	display: flex;
	height: 100%;
	justify-content: center;
	left: 0;
	opacity: unset;
	position: absolute;
	text-align: center;
	top: 0;
	width: 100%;
	z-index: 6;
}
.detail-gallery__preview-overlay img {
	height: 100%;
	width: auto;
	object-fit: contain;
	min-height: 100%;
}
.detail-gallery__preview-image {
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: cover;
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 5;
}
.bds-gallery-main,
.bds-gallery-thumbs {
	padding: 0;
}
.infor-detail h1.bds-title a{
	color: var(--fs-color-primary);
}
.infor-detail .bds-price {
	font-size: 30px;	
}
.time .bds-date {
	position: relative;
	bottom: 0;
	left: 0;
	margin-top: 10px;
	width: max-content;
	background: transparent;
	color: var(--fs-color-black);
	padding: 0;
	gap: 6px;
	display: flex;
	align-items: center;
	font-size: 14px;
}
.tong-quan,
.chi-tiet,
.ban-do,
.related-bds{
	padding: 20px 0;
	margin-top: 20px;
	border-top: 1px solid var(--fs-color-primary);
}
.tong-quan h3,
.chi-tiet h3,
.ban-do h3,
.related-bds h3{
	font-size: 30px;
	margin-bottom: 20px;
}
.chi-tiet ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.chi-tiet ul li {
	width: 48%;
	border-bottom: 1px solid #ddd;
	padding: 8px 0;
}
.chi-tiet ul li span {
	width: 50%;
	font-size: 16px;
	color: var(--fs-color-black);
	display: block;
}
.chi-tiet ul li span:first-child {
	font-weight: 600;
}
.map{
	width: 100%;
	height: 400px;
}
.map iframe {
	width: 100%;
	height: 100%;
}

.box-form form input,
#sgpb-popup-dialog-main-div form input{
	width: 100% !important;
	padding: 25px 20px !important;
	border-radius: 50px !important;
	border: 1px solid var(--fs-color-primary) !important;
	color: #404041 !important;
}
.box-form form textarea,
#sgpb-popup-dialog-main-div form textarea{
	width: 100% !important;
	padding: 25px 20px !important;
	border-radius: 15px !important;
	border: 1px solid var(--fs-color-primary) !important;
	color: #404041 !important;
}
.box-form form input[type="submit"],
#sgpb-popup-dialog-main-div form input[type="submit"]{
	line-height: 1 !important;
	background-color: var(--fs-color-primary) !important;
	color: #FFF !important;
	padding: 15px !important;
	margin: 0 !important;
	transition: var(--fs-transtion);
}
.box-form  form input[type="submit"]:hover,
#sgpb-popup-dialog-main-div  form input[type="submit"]:hover{
	box-shadow: unset !important;
	background-color: var(--fs-color-secondary) !important;
	transition: var(--fs-transtion);
}
.contact-box,
.box-form{
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 4px 10px rgba(0,0,0,0.08);
	padding: 20px;
	max-width: 100%;
}
.section-page-contact .box-form {
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 4px 10px rgba(0,0,0,0.08);
	padding: 20px;
	max-width: 49%;
}
.section-page-contact .row {
	gap: 20px;
}
.box-form {
	margin-top: 30px;
}
.contact-title {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 15px;
	color: var(--fs-color-primary);
}

.contact-info {
	display: flex;
	align-items: center;
	margin-bottom: 15px;
}

.contact-avatar-img {
	width: 45px;
	height: 45px;
	border-radius: 50%;
}

.contact-details {
	margin-left: 12px;
}

.contact-name {
	font-weight: bold;
	font-size: 15px;
	color: #333;
}

.contact-role {
	font-size: 13px;
	color: #777;
}

.contact-phone {
	display: block;
	background: #1d3557;
	color: #fff;
	text-align: center;
	padding: 12px;
	border-radius: 8px;
	font-weight: bold;
	text-decoration: none;
	margin-bottom: 10px;
}

.contact-phone i {
	margin-right: 6px;
}

.contact-zalo {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	border: 2px solid #1d3557;
	border-radius: 8px;
	padding: 10px;
	color: #1d3557;
	font-weight: bold;
	text-decoration: none;
}

.contact-zalo img {
	width: 20px;
	height: 20px;
}
.wpcf7-spinner {
	display: none !important;
}
.box-form span {
	text-align: center;
	display: block;
}
.contact-fixed.sticky {
	position: sticky !important;
	top: 120px;
	right: 0;
	z-index: 999;
}
.site-single .container,
.site-single .row {
	position: relative;
}
.infor-detail .bds-title a {
	font-size: 25px;
}
.infor-detail.du-an {
	padding: 24px;
	box-shadow: 0 1px 3px -2px rgba(0, 0, 0, .12), 0 1px 2px rgba(0, 0, 0, .24);
	border-radius: 10px;
}
.box-form.du-an {
	text-align: center;
	max-width: 700px;
	margin: 30px auto 0;
}
.info-du-an {
	background-color: rgb(214 228 255 / 1);
	border-radius: 20px;
	padding: 24px;
	margin-top: 30px;
}
.info-du-an h2 {
	font-size: 20px;
	margin-bottom: 24px; 
	width: 100%;
}
.info-du-an {
	align-items: stretch;
}
.info-du-an .info-item {
	padding: 24px;
	background-color: rgb(240,245,255);
	border-radius: 10px;
	flex: 0 24%;   
}
.info-du-an .info-item p{
	font-size: 20px;
	line-height: 28px;
	font-weight: 700;
	margin-bottom: 5px;
}
.info-du-an .info-item span{
	font-size: 14px;
	line-height: 20px;
	font-weight: 500;
}
.from_the_blog_comments {
	display: none !important;
}
.section-page-contact .box-form {
	margin-top: 0 !important;
}
.box-filter {
	padding: 20px;
	border-radius: 10px;
	background-color: rgba(0, 152, 179, 0.3);
}
.tab-unit .tab-item {
	padding: 10px 25px;
	font-size: 18px;
	line-height: 1.5;
	font-weight: 500;
	color: var(--fs-color-black);
	background-color: #FFF;
	cursor: pointer;
	transition: var(--fs-transition);
}
.tab-unit .tab-item:hover{
	color: #FFF;
	background-color: var(--fs-color-primary);
	transition: var(--fs-transition);
}
.tab-unit .tab-item:first-child {
	border-radius: 10px 0 0 0;
}
.tab-unit .tab-item:last-child {
	border-radius: 0 10px 0 0;
}
.tab-unit .tab-item.active {
	color: #FFF;
	background-color: var(--fs-color-primary);
}
.content-filter {
	background-color: #FFF;
	border-radius: 0 10px 10px 10px;
	padding: 10px;
}

.content-filter .item-search:not(.item-text) {
	width: max-content;
	height: 40px;
	position: relative;
	border: 1px solid #ddd;
	border-radius: 4px;
	justify-content: flex-start;
	padding-left: 10px;
	padding-right: 10px;
	align-items: center;
	display: flex;
	cursor:pointer;
	transition: var(--fs-transition);
}
.content-filter .item-search.item-btn {
	justify-content: center;
}
.content-filter .item-search:not(.item-text):hover{
	border: 1px solid var(--fs-color-primary);
	transition: var(--fs-transition);
}
.content-filter .item-search:not(.item-text):hover span{
	color: var(--fs-color-primary);
	transition: var(--fs-transition);
}
.item-search.item-btn {
	background-color: var(--fs-color-primary);
	color: #FFF;
	transition: var(--fs-transition);
}
.item-search.item-btn:hover {
	background-color: #FFF;
	color: var(--fs-color-primary);
	transition: var(--fs-transition);
}
.content-filter .item-search.item-text {
	flex: 0 0 25%;
}
.content-filter .item-search input {
	border-radius: 4px;
	height: 40px;
	width: 100%;
	padding: 0 10px;
	margin-bottom: 0;
}
.content-filter .item-search:not(.item-text) {
	flex: 1;
}
.content-filter .item-search span{
	font-size: 16px;
	line-height: 1;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	min-height: 16px;
}
.content-filter .item-search.item-cho-thue,
.content-filter .item-search.item-du-an,
.content-filter  .item-search.item-tinh-trang{
	display: none;
}

.list-search{
	display: block !important;
	position: absolute;
	top: 40px;
	width: max-content;
	background-color: #FFF;
	border-radius: 8px;
	left: 0;
	opacity: 0;
	visibility: hidden;
	transform: translatey(-10%);
	box-shadow: 0 3px 6px -4px rgba(0, 0, 0, .16), 0 3px 6px rgba(0, 0, 0, .23);
	z-index: 99999;
	transition: var(--fs-transition);
}
.item-search:not(.item-text):hover .list-search{
	opacity: 1;
	visibility: inherit;
	transform: translatey(0);
	transition: var(--fs-transition);
}
.list-search .list-terms {
	padding-bottom: 50px;	
	margin-bottom: 0;
	max-height: 500px;
	overflow-y: auto;
}
.list-search .list-terms li {
	margin: 0 !important;
	height: 42px;
	position: relative;
	align-items: center;
	justify-content: flex-start;
	display: flex;
	padding: 0 40px;
	transition: var(--fs-transition);
}
.list-search .list-terms li:before {
	position: absolute;
	content: '';
	border: 2px solid #666;
	border-radius: 2px;
	display: block;
	height: 16px;
	width: 16px;
	left: 15px;
	top: 50%;
	transform: translateY(-8px);
}

.list-search .list-terms li.active:before {
	background-color: var(--fs-color-primary);
	border: 2px solid var(--fs-color-primary);
}
.list-search .list-terms li.active:after {
	position: absolute;
	content: '';
	border: solid #fff;
	border-width: 0 2px 2px 0;
	height: 10px;
	transform: rotate(45deg);
	width: 6px;
	left: 20px;
	top: 14px;
}
.list-search .list-terms li:hover {
	background-color: rgb(226,232,240);
	transition: var(--fs-transition);
}

.list-search .list-terms li p {
	display: block;
	margin-bottom: 0;
	width: 100%;
	font-size: 18px;
	transition: var(--fs-transition);
}
.list-search .list-terms li:hover p {
	color: var(--fs-color-primary);
	transition: var(--fs-transition);
} 
.section-filter {
	position: relative;
	z-index:999;
}
.box-reset {
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: var(--fs-color-primary);
	border-radius: 0 0 0 8px;
	width: 100%;
	display: flex;
	height: 40px;
	align-items: center;
	justify-content: center;
	transition: var(--fs-transition);
}
.box-reset:hover {
	background-color: var(--fs-color-secondary);
	transition: var(--fs-transition);
}
.reset-all {
	margin-bottom: 0;
	color: #FFF;
	font-size: 18px;
	font-weight: 700;
}
.contact-left {
	position: fixed;
	right: 13px;
	background: rgba(255, 255, 255, 1);
	border-radius: 5px;
	width: auto;
	z-index: 99999999999;
	bottom: 20px;
	padding: 5px;
	width: max-content;
	box-shadow: 0 1px 3px -2px rgba(0, 0, 0, .12), 0 1px 2px rgba(0, 0, 0, .24);
	border: 1px solid #f2f2f2;
	flex-direction: column;
}
.contact-box .contact-icon {
	flex-direction: column;
}
.contact-box .contact-icon img{
	width: 30px;
}
.contact-box .contact-icon span {
	font-size: 14px;
}
.contact-icon{ position:relative; outline:none; }
.contact-icon::after{
	content: attr(data-tip);
	position:absolute; bottom: calc(100% + 8px); left:50%;
	transform: translateX(-50%); white-space:nowrap;
	background: rgba(0,0,0,.85); color:#fff; font-size:12px; line-height:1;
	padding:6px 8px; border-radius:6px; pointer-events:none;
	opacity:0; visibility:hidden; transition: opacity .18s, transform .18s;
}
.contact-icon::before{
	content:''; position:absolute; bottom:100%; left:50%; transform: translateX(-50%);
	border:6px solid transparent; border-top-color: rgba(0,0,0,.85);
	opacity:0; visibility:hidden; transition: opacity .18s;
}
.contact-icon:hover::after,
.contact-icon:focus-visible::after,
.contact-icon.show-tip::after{ opacity:1; visibility:visible; transform: translateX(-50%) translateY(-3px); }
.contact-icon:hover::before,
.contact-icon:focus-visible::before,
.contact-icon.show-tip::before{ opacity:1; visibility:visible; }

@keyframes phone-vr-circle-fill{
	0% {
		-webkit-transform: rotate(0) scale(1) skew(1deg);
	}
	10% {
		-webkit-transform: rotate(-25deg) scale(1) skew(1deg);
	}
	20% {
		-webkit-transform: rotate(25deg) scale(1) skew(1deg);
	}
	30% {
		-webkit-transform: rotate(-25deg) scale(1) skew(1deg);
	}
	40% {
		-webkit-transform: rotate(25deg) scale(1) skew(1deg);
	}
	50% {
		-webkit-transform: rotate(0) scale(1) skew(1deg);
	}
	100% {
		-webkit-transform: rotate(0) scale(1) skew(1deg);
	}
}

.contact-box .contact-icon.phone-icon img {
	animation: phone-vr-circle-fill 1s infinite ease-in-out;
}
.contact-box .contact-icon.phone-icon img,
.contact-box .contact-icon.baogia-icon img{
	width: 30px;
}
.contact-box .contact-icon.phone-icon span {
	font-size: 14px;
}
.contact-box .contact-icon.baogia-icon img {
	filter: brightness(0) saturate(100%) invert(37%) sepia(99%) saturate(621%) hue-rotate(148deg) brightness(100%) contrast(101%);
}
.contact-box .contact-icon.phone-icon img{
	background-color: var(--fs-color-primary);
	border-radius: 50%;
	border: 5px solid var(--fs-color-primary);
	box-sizing: border-box;
}
.sgpb-floating-button {
	display: none !important;
}
.ft-contact-vr {
	background: white;
	width: 100%;
	border-radius: 0;
	height: 60px;
	line-height: 50px;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 9999999;
	padding: 5px;
	margin: 0;
	box-shadow: 0 4px 10px 0 #000;
	display: none;
	justify-content: space-around;
	align-items: center;
}
.ft-contact-vr .btn-hd {
	display: block;
	text-align: center;
}
.ft-contact-vr .btn-hd span {
	display: block;
	font-size: 10px;
	color: var(--fs-color-primary) !important;
	line-height: 15px;
}

.ft-contact-vr .box-phone{
	background-color: var(--fs-color-primary);
	border-radius: 50%;
	width: 50px;
	height: 50px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	animation: phone-vr-circle-fill 1s infinite ease-in-out;
}

.ft-contact-vr .open-popup{
	cursor: pointer;
}

.ft-contact-vr .box-phone img {
	max-width: 25px;
	height: 25px !important;
	width: 25px !important;
}

.ft-contact-vr .btn-hd .icon {
	width: 36px;
	margin: 0 auto;
	height: 36px;
	display: flex;
}
.ft-contact-vr .btn-hd:last-child {
	margin-bottom: 0;
}
.btn-blue {
	filter: brightness(0) saturate(100%) invert(37%) sepia(99%) saturate(621%) hue-rotate(148deg) brightness(100%) contrast(101%);
}
.ft-contact-vr .btn-center {
	margin-bottom: 10px;
}
.ft-contact-vr .btn-center  .icon {
	width: 40px !important;
	height: 40px !important;
	max-width: 40px !important;
}
/* ==== BDS GALLERY – VIDEO ==== */
.bds-gallery .video-slide {
	position: relative;
	height: 100%;
}

/* Nút play giữa ảnh */
.bds-gallery .video-play {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 64px;
	height: 64px;
	border: none;
	border-radius: 50%;
	cursor: pointer;
	background: rgba(0, 0, 0, 0.55);
}

.bds-gallery .video-play::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-40%, -50%);
	border-style: solid;
	border-width: 12px 0 12px 18px;
	border-color: transparent transparent transparent #fff;
}

/* Khung video responsive 16:9 */
.bds-gallery .js-video {
	position: relative;
	height: 0;
	padding-bottom: 56.25%; /* 16:9 */
}

.bds-gallery .js-video iframe {
	position: absolute;
	inset: 0;            /* top/right/bottom/left: 0 */
	width: 100%;
	height: 100%;
	border: 0;
}

/* Icon play nhỏ trên thumbnail */
.bds-gallery .thumb-play {
	position: absolute;
	right: 8px;
	bottom: 8px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.55);
}

.bds-gallery .thumb-play::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-40%, -50%);
	border-style: solid;
	border-width: 6px 0 6px 9px;
	border-color: transparent transparent transparent #fff;
}

/* Thumbnail wrapper */
.bds-gallery-thumbs .swiper-slide {
	position: relative;
}

.custom-row-about .col-inner{
	display: flex;
	align-items: center;
	flex-wrap:wrap;
	gap: 15px;
	justify-content: space-between;
}
.custom-about {
	width: 48%;
	box-shadow: 0 10px 6px rgba(0, 0, 0, 0.19), 0 6px 21px rgba(0, 0, 0, .22);
	border-radius: 20px;
	padding: 20px;
}
.custom-about .icon-box-img {
	background-color: var(--fs-color-primary);
	width: 100% !important;
}
.custom-about .icon-box-img img {
	width: 120px;
	margin: 0 auto;
    display: block;
}
.custom-about .icon-box-text h5 {
	text-align: center;
}
.custom-about .icon-box-text p {
	text-align: justify;
}
.col-img-scroll {
  overflow: hidden;
  position: relative;
  width: 100%;
}

.col-img-scroll .col-inner {
  display: flex;
  white-space: nowrap;
  will-change: transform;
}
.col-img-scroll{
	padding-bottom: 0 !important;
}
.ux-logo, .item-img {
  flex: 0 0 auto;
}

/* Ẩn thanh scroll (phòng khi có) */
.col-img-scroll::-webkit-scrollbar {
  display: none;
}
.col-img-scroll {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.row-bt:before {
	position: absolute;
	top: 0;
	left: 50%;
	content: 'ĐỐI TÁC';
	font-size: 1.6em;
	font-weight: 700;
	color: var(--fs-color-primary);
}
@media (max-width: 1400px) {
	.contact-box .contact-icon.phone-icon img, .contact-box .contact-icon.baogia-icon img,
	.contact-box .contact-icon img{
		width: 30px;
	}
	.contact-box .contact-icon span {
		font-size: 12px;
	}
}
@media (max-width: 1300px) {
	#masthead .flex-grow .nav > li > a {
		margin: 0 15px;
	}
	.hotline {
		padding: 5px 15px;
	}
	.tool-container {
		grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
		grid-auto-flow: column;
		overflow-x: auto;
		white-space: nowrap;
	}
	.tool-container {
		scrollbar-width: none; /* Firefox */
		-ms-overflow-style: none; /* IE 10+ */
	}

	.tool-container::-webkit-scrollbar {
		display: none; /* Chrome, Safari, Opera */
	}
}
@media (max-width: 1100px) {
	.content-filter .item-search.item-text {
		flex: 0 0 100%;
	}
	.content-filter .item-search:not(.item-text) {
		flex: 1 1 32.333%;
	}
	.row-hd {
		flex-flow: nowrap;
		overflow-x: scroll;
	}
	.row-hd .col {
		flex-basis: 40%;
		max-width: 40%;
	}
	.row-hd{
		scrollbar-width: none; /* Firefox */
		-ms-overflow-style: none; /* IE 10+ */
	}

	.row-hd::-webkit-scrollbar {
		display: none; /* Chrome, Safari, Opera */
	}
}
@media(max-width:1024px){
	.bds-grid { grid-template-columns: repeat(3,1fr); }
	.nav > li > a {
		font-size: 16px;
	}
	#masthead .flex-grow .nav > li > a {
		margin: 0 10px;
	}
	.col-hd .col-inner {
		padding: 10px;
	}
	.section-page-contact .box-form {
		max-width: 100%;
		flex-basis: 100%;
	}
}
@media(max-width:849px){ 
	.section {
		padding-top: 30px !important;
		padding-bottom: 30px !important;
	}
	.cpt-breadcrumb ol {
		flex-wrap: wrap;
	}
	.cpt-breadcrumb {
		margin: 30px 0 0;
	}
	.section-ft .col{
		flex-basis: 49%;
		max-width: 49%;
		width: 49%;
	}
	.col-copy {
		flex-basis: 100% !important;
		max-width: 100% !important;
		width: 100% !important; 
	}
	.title-breadcrumbs {
		padding: 0;
	}
	.header-button .button {
		border:1px solid var(--fs-color-primary);
	}
	.button.icon i{
		color: var(--fs-color-primary);
	}
	body {
		padding-bottom: 60px !important;
	}
	.contact-left {
		display: none;
	}
	.ft-contact-vr {
		display: flex;
	}
}
@media(max-width:758px) {
	.bds-card {
		flex-wrap: wrap;
	}
	.bds-card .bds-thumb {
		width: 100% !important;
		flex: 0 0 100%;
		padding: 0;
	}
	.bds-item.bds-card .bds-content {
		width: 100%;
	}
	.bds-item {
		padding: 10px;
	}
	.bds-gallery-thumbs {
		height: 70px;
	}
	.bds-gallery-thumbs .swiper-button-prev,
	.bds-gallery-thumbs .swiper-button-next {
		display: none !important;
	}
	.info-du-an .info-item {
		flex: 0 100%;
		margin-bottom: 10px;
	}
	.info-du-an .info-item:last-child {
		margin-bottom: 0;
	}
}
@media(max-width:600px){
	.custom-about {
		width: 100%;
	}
	.bds-grid { grid-template-columns: repeat(2,1fr); }
	.row-slider .flickity-prev-next-button {
		width: 40px !important;
	}
	.bds-thumb {
		height: 200px;
	}
	.bds-thumb img {
		height: 100%;
	}
	.bds-title a {
		font-size: 16px;
		min-height: 48px;
	}
	.bds-price{
		font-size: 16px;
	}
	.bds-grid {
		gap: 10px;
	}
	.tab-unit .tab-item {
		padding: 5px 15px;
		font-size: 14px;
	}
	.chi-tiet ul li {
		width: 100%;
	}
	.section-ft .col{
		flex-basis: 100%;
		max-width: 100%;
		width: 100%;
	}
	.page-title-inner {
		min-height: 150px !important;
	}
	.row-hd .col {
		flex-basis: 80%;
		max-width: 80%;
	}
	.col-img-scroll .ux-logo {
		margin-right: 40px;
	}
	/* ==== SCROLLER NGANG CHO ROW NÀY ==== */
	.row-hd {
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;       /* mượt trên iOS */
		scroll-snap-type: x mandatory;           /* snap từng thẻ */
		gap: 14px;                               /* khoảng cách giữa các col */
		padding: 6px 12px 12px;                  /* chừa chỗ cho scrollbar */
	}

	/* Flatsome .row có margin âm, bỏ để khỏi vướng thanh cuộn */
	.row-hd {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	/* Không cho xuống dòng, mỗi col là 1 slide */
	.col-hd {
		flex: 0 0 82%;
		max-width: 82% !important;               /* hiển thị ~0.8 màn hình mỗi card */
		scroll-snap-align: start;
	}

	/* Ẩn scrollbar nếu muốn (tùy chọn) */
	.row-hd::-webkit-scrollbar { height: 6px; }
	.row-hd::-webkit-scrollbar-thumb {
		background: rgba(0,0,0,.2); border-radius: 4px;
	}
	.row-bt:before  {
		display: none;
	}
}