/*
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
*/


h1, h1 strong {
	font-size: clamp(25px, 7vw, 45px) !important;
	color: var(--fs-color-secondary);
	font-weight: 600;
}

h2, h2 strong{
	font-size: clamp(22px, 6vw, 40px) !important;
	color: var(--fs-color-secondary);
	font-weight: 600;
}

h3, h3 strong {
	font-size: clamp(20px, 5vw, 30px) !important;
	font-weight: 600;
	color: var(--fs-color-secondary) !important;
}


h4, h4 strong {
	font-size: clamp(18px, 5vw, 22px) !important;
	font-weight: 600;
	color: var(--fs-color-secondary) !important;
}


h5, h5 strong {
	font-size: clamp(14px, 4vw, 16px) !important;
	color: var(--fs-color-secondary);
	font-weight: 600;
}

h6, h6 strong {
	font-size: clamp(14px, 4vw, 16px) !important;
	color: var(--fs-color-secondary);
	font-weight: 600;
}

body{
	font-size: 1rem;
}

.header-inner .header-nav {
	width: 100%;
	justify-content: space-between;
}

.header-inner .header-nav li a{
	font-size: 1rem;
	color: var(--fs-color-secondary);
}

.sub-menu {
	width: max-content;
}
.sub-menu li {
	width: 100%;
	transition: all .3s ease-in;
}

.nav-dropdown-has-border .nav-dropdown {
	border: 0;
}
.nav-dropdown-has-arrow.nav-dropdown-has-border li.has-dropdown:before {
	border-bottom-color: #ffffff;
}
.sub-menu li a:before{
	content: "\f061";                 /* fa-chevron-right */
	font-family: "Font Awesome 6 Free";
	font-weight: 900;                 /* Solid bắt buộc */
	display: none;
	margin-right: 8px;
	font-size: 18px;
	line-height: 1;
	color: var(--primary-color);
	transition: all .3s ease-in;
}
.sub-menu li:hover{
	transform: translatex(5%);
}
.sub-menu li:hover a:before {
	display: inline-block;
}

.nav-dropdown.nav-dropdown-default>li:hover>a {
	border-bottom: 1px solid var(--primary-color);
}

.header-nav>.menu-item.active>a {
	color: var(--primary-color);
}

.header-nav-main>li.current-menu-item >a::before{
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 15px;
	height: 4px;
	background: var(--primary-color);
	border-radius: 6px;
	margin: 0 auto;
	text-align: center;
}

.nav-dropdown.nav-dropdown-default>li>a {
	border-bottom: 1px solid #fff;
}

.post-title a {
	color: var(--fs-color-secondary);
	font-size: 1rem;
}

.is-divider {
	background: #fff;
}

.box-text-inner .button.primary {
	font-size: .9rem;
}

.box-text-inner .button.primary{
	position: relative;
	overflow: visible; 
	z-index: 1;
	color: #000;
	border: 0;
}

.box-text-inner .button.primary::before {
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	width: 3px;
	height: 100%;
	background-color: var(--fs-color-secondary);
	z-index: 999999;
}

.box-text-inner .from_the_blog_excerpt {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	-webkit-line-clamp: 4;
	text-align: justify;
	font-size: 1rem;
}

@media (max-width: 545px){
	.box-text-inner .from_the_blog_excerpt {
		display: none;
	}
}


.icon-homepage .icon-inner {
	padding: 10px;
	background: #fff;
	border-radius: 50%;
	box-shadow: 2px 8px 32px rgb(250 213 21);
	transition: background ease-in .3s, box-shadow ease-in .3s;
}


.icon-homepage .icon-box-text h4 {
	color: var(--primary-color);
}

.icon-homepage .icon-box {
	padding: 30px 20px;
}

.icon-homepage .icon-list .col-inner {
	border: 1px solid var(--primary-color);
	height: 100%;
	border-radius: 20px;
}


.why-us-homepage .icon-box-text p {
	color: #fff;
}

.why-us-homepage .icon-box-text h2 {
	margin-bottom: 0;
	font-size: clamp(25px, 8vw, 60px) !important;
}

.why-us-homepage .icon-box-img {
	margin-bottom: 0;
}

.about-us-homepage h4 {
	color: var(--primary-color);
	font-size: 
}

.about-us-homepage h3 {
	color: #000;
	line-height: 1.2;
}

.about-us-homepage .img-inner {
	border-radius: 10px;
}

.price-table-homepage h4 {
	color: var(--primary-color);
}

th, td {
	padding: .5em;
	text-align: center;
	border-bottom: 1px solid #fff !important;
	line-height: 1.3;
	font-size: .9em;
}

table tr th {
	text-align: center;
	background-color: var(--primary-color);
	color: #000;
	border-style: solid;
	border-width: 1px;
	border-color: #FFFFFF;
	height: 65px;
	padding: 20px 4px;
}

table tbody tr td.column-1 {
	font-size: 14px;
	font-weight: 700;
	line-height: 19.04px;
	color: #000000;
	height: 60px;
	border: 1px solid #fff;
	background: #dcdcdc;
}

table tbody tr:nth-child(even) td {
	background: #f0eeee;
	font-size: 14px;
	line-height: 19.04px;
	text-align: center;
	color: #000000;
	border: 1px solid #ffff;
}

table tbody tr td {
	background: #dcdcdc; 
	border: 1px solid #fff;
	color: #000;
}




/* Chỉ áp dụng trên mobile */
@media (max-width: 768px) {

	table {
		display: block;
		width: 100%;
		overflow-x: auto;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}
}


.abm-logo-marquee {
	position: relative;
	overflow: hidden;
	width: 100%;
	padding: 10px 0;
}

.abm-logo-track {
	display: flex;
	align-items: center;
	gap: 28px;
	width: max-content;
	will-change: transform;
	animation: abm-marquee linear infinite;
	animation-duration: var(--abm-duration, 30s);
}

.abm-logo-item {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 14px;
	border-radius: 10px;
}

.abm-logo-item img {
	display: block;
	height: 100px;
	width: auto;
	max-width: 160px;
	object-fit: contain;
	transition: transform .2s ease, filter .2s ease, opacity .2s ease;
}

.abm-logo-item:hover img {
	filter: grayscale(0);
	opacity: 1;
	transform: translateY(-1px);
}

.abm-logo-marquee:hover .abm-logo-track {
	animation-play-state: paused;
}

@keyframes abm-marquee {
	from { transform: translateX(0); }
	to   { transform: translateX(calc(-1 * var(--abm-shift, 0px))); }
}

@media (max-width: 480px) {
	.abm-logo-item img { height: 100px; max-width: 140px; }
	.abm-logo-track { gap: 18px; }
}

@media (prefers-reduced-motion: reduce) {
	.abm-logo-track { animation: none; }
}


.consults-homepage .wpcf7-form {
	display: flex;
	flex-wrap: wrap;
}

.consults-homepage .wpcf7-spinner {
	display: none;
}


.abm-contact-info{
	max-width: 520px;
	font-size: 15px;
	line-height: 1.35;
}

.abm-ci-row{
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 10px 0;
}

.abm-ci-ico{
	flex: 0 0 26px;
	width: 26px;
	height: 26px;
	font-size: 18px;
	line-height: 1;
	margin-top: 2px;
	text-align: center;
	color: var(--primary-color);
}

.abm-ci-text{
	flex: 1;
}

.abm-ci-title{
	font-weight: 700;        /* chữ đậm như ảnh */
	color: #111;
}

.abm-ci-normal{
	font-weight: 400;
	color: #666;
}

.abm-ci-link{
	font-weight: 400;
	color: #666;
	text-decoration: none;
}

.abm-ci-link:hover{
	text-decoration: underline;
}

/* Wrapper của form 1 dòng */
.abm-line-form{
	max-width: 900px;       /* tùy bạn */
}

.abm-line-field{
	position: relative;
	display: flex;
	align-items: center;
	background: transparent;
	padding: 8px 0;
	border-bottom: 1px solid rgba(255,255,255,.55); /* gạch dưới */
}

/* Input */
.abm-line-field .abm-input{
	width: 100%;
	border: 0 !important;
	outline: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	padding: 10px 54px 10px 0;   /* chừa chỗ cho nút bên phải */
	color: #fff !important;
	font-size: 18px;
	margin-bottom: 0;
}

/* Placeholder nghiêng như ảnh */
.abm-line-field .abm-input::placeholder{
	color: rgba(255,255,255,.75);
	font-style: italic;
}

/* Nút tròn bên phải */
.abm-line-field .abm-send-btn{
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
	height: 44px;
	border-radius: 999px;
	border: 0;
	background: #fff;
	color: #111;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

/* Icon */
.abm-line-field .abm-send-btn i{
	font-size: 16px;
	line-height: 1;
}

/* CF7: message nhỏ gọn */
.abm-line-form .wpcf7-not-valid-tip{
	color: #ffb3b3;
	margin-top: 8px;
	font-size: 13px;
}

.abm-line-form .wpcf7-response-output{
	margin: 10px 0 0;
	color: #fff;
	border-color: rgba(255,255,255,.35);
}

.contact-pages .wpcf7-form .cf7-row{
	display: flex;
	gap: 20px;
	margin-bottom: 15px;
}

.contact-pages .wpcf7-form .cf7-col{
	flex: 1;
}

.contact-pages .wpcf7-form input[type="text"],
.contact-pages .wpcf7-form input[type="tel"],
.contact-pages .wpcf7-form input[type="email"]{
	width: 100%;
	box-sizing: border-box;
}

.contact-pages .wpcf7-form textarea{
	width: 100%;
	box-sizing: border-box;
	min-height: 160px;
}

.contact-pages .col .col-inner {
	padding: 50px;
}

/* Mobile: tự xuống hàng */
@media (max-width: 768px){
	.contact-pages .wpcf7-form .cf7-row{
		flex-direction: column;
	}
	.contact-pages .col .col-inner {
		padding: 20px;

	}
}



.contact-pages .col {
	height: 100%;
}

.contact-pages .row {
	background: var(--primary-color);
}

.contact-pages input[type=submit] {
	background: #000;
	border-radius: 5px;
}

#respond {
	display: none;
}

.abm-related-inner {
	display: flex;
	margin-bottom: 20px;
	align-items: center;
	padding: 10px;
	border: 1px solid var(--primary-color);
	border-radius: 10px;
}

.abm-related-inner .abm-related-thumb {
	flex: 0 0 30%;
	max-width: 30%;
	margin-right: 10px;
}

.abm-related-thumb {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;   
	overflow: hidden;      
}

.abm-related-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;     
	display: block;
	border-radius: 5px;
}

.abm-related-item-title a {
	display: -webkit-box;        
	-webkit-box-orient: vertical; 
	-webkit-line-clamp: 2;        
	line-clamp: 2;                
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: normal;  
}

.abm-related-date {
	font-size: 14px;
}
.abm-related-item-title {
	margin-bottom: 0;
}

#block-2 .abm-related-list .col {
	padding: 0 15px 0px;
}

.article-inner  .entry-content {
	text-align: justify;
}

#comments {
	display: none;
}
@media (max-width: 849px){
	.news-pages .box {
		display: flex;
	}
	.news-pages .box-text-inner .from_the_blog_excerpt {
		text-align: left;
	}
	.news-pages .box-text {
		padding-bottom: 1em;
	}
}

.news-pages .box .post-title a{
	display: -webkit-box;
	-webkit-line-clamp: 2;  
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-transform: unset;
	font-size: 1rem;
}

.news-pages .box .from_the_blog_excerpt,
.news-pages .box .post-meta{
	font-size: .9rem;
}
.news-pages .box .post-meta {
	color: red;
}

.news-pages .post-item .col-inner,
.news-pages .post-item .col-inner .box {
	border-radius: 10px;
}

.news-pages .post-item .col-inner .box .box-image {
	border-radius: 10px 0 0 10px;
}

#footer .wpcf7-response-output {
	color: #fff;
}

.why-us-homepage h2 {
	color: var(--primary-color);
}

#footer h3 {
	color: var(--primary-color) !important;
}


@media (max-width: 545px){
	.main-services .row-small>.col {
		padding: 0 3.8px 19.6px;
	}
}

.main-services .is-divider {
	display: none;
}

.icon-homepage .icon-list .col-inner {
	transition: all .3s ease-in; 
}

.icon-homepage .icon-list .col-inner:hover {
	border: 1px solid transparent;
	box-shadow: 8px 16px 40px rgb(250 213 26 / 17%);
}

.icon-homepage .icon-list .col-inner:hover .icon-inner {
	background: var(--primary-color);
}

.icon-homepage .icon-list .col-inner:hover img {
	filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(176deg) brightness(103%) contrast(100%);
}

.post-item .box-text .is-divider {
	display: none;
}

@media (max-width: 545px){
	.services-page .row-small>.col {
		padding: 0 3.8px 19.6px;
	}
}


.post-item .col-inner, 
.post-item .col-inner .box {
	border-radius: 10px;
}

.post-item .col-inner .box .box-image {
	border-radius: 10px 10px 0 0;
}

.mobile-sidebar .sidebar-menu ul li a {
	color: #000;
	font-size: 1rem;
	font-weight: 500;
	text-transform: uppercase;
}

.article-inner .entry-header-text .entry-title  {
	margin-bottom: 0;
}

.article-inner .entry-header-text  .entry-divider {
	display: none;
}

.entry-header-text {
    padding: 0;
}

.nav-top-link {
	text-transform: uppercase !important;
}

#section_2076984618 {
	padding-bottom: 0px;
}