/*
Theme Name: BSLN Theme
Theme URI: https://bacsiluongngoc.com
Author: BSLN
Author URI: https://bacsiluongngoc.com
Description: Theme WordPress cơ bản tự phát triển.
Version: 1.0
License: GNU General Public License v2 or later
Text Domain: bsln-basic
*/


/* Regular */
@font-face {
    font-family: 'Beautique Display';
    src: url('assets/fonts/BeautiqueDisplay-Regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
}

/* Italic */
@font-face {
    font-family: 'Beautique Display';
    src: url('assets/fonts/BeautiqueDisplay-Italic.otf') format('opentype');
    font-weight: 400;
    font-style: italic;
}

/* Medium */
@font-face {
    font-family: 'Beautique Display';
    src: url('assets/fonts/BeautiqueDisplay-Medium.otf') format('opentype');
    font-weight: 500;
    font-style: normal;
}

/* Bold */
@font-face {
    font-family: 'Beautique Display';
    src: url('assets/fonts/BeautiqueDisplay-Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
}

/* Black */
@font-face {
    font-family: 'Beautique Display';
    src: url('assets/fonts/BeautiqueDisplay-Black.otf') format('opentype');
    font-weight: 900;
    font-style: normal;
}


@font-face {
    font-family: 'SVN-Gilroy';
    src: url('assets/fonts/SVN-Gilroy-Regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'SVN-Gilroy';
    src: url('assets/fonts/SVN-Gilroy-Medium.otf') format('opentype');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'SVN-Gilroy';
    src: url('assets/fonts/SVN-Gilroy-Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
}

html {
    overflow-x: hidden;
}

body {
    overflow-x: clip !important;
    overflow-y: visible !important;
}

body {
    margin: 0;
    font-family: 'SVN-Gilroy', sans-serif !important;
	color:#3d3d3d;
}

h1,h2,h3,h4,h5,h6{
    font-weight:500;
	margin-bottom: 15px;
}

h2{font-size: 30px;}

h3{font-size: 24px;}

a{
	text-decoration: none;
}

a.dv-btn:hover, a.btn-dat-lich:hover, a.btn-hotline-top:hover, a.dv-more:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 0px 100px inset;
    color: rgb(255, 255, 255);
    opacity: 1;
    outline: none;
}

header{
	width: 100%;
	overflow: visible !important;
}

#wide-nav{
	box-shadow: 0 4px 12px -6px rgba(0,0,0,.25);
	border-top: 1px solid #B1B3B5;
}

body.scrolled #top-bar{
    display:none;
}

body.scrolled .header-wrapper{
    position:fixed;
    top:0;
    left:0;
    right:0;
    z-index:99999;
    background:#fff;
}

body.scrolled{
    padding-top:150px;
}

#header,
.header-wrapper,
#masthead,
#wide-nav{
    overflow:visible !important;
}

@media (min-width: 769px) {

    body.scrolled #mega-menu-wrap-main-menu 
    #mega-menu-main-menu 
    > li.mega-menu-megamenu 
    > ul.mega-sub-menu {
        width: 100vw !important;
        max-width: 100vw !important;
        left: 50% !important;
        right: auto !important;
        transform: translateX(-50%) !important;
    }

    body.scrolled #mega-menu-wrap-main-menu 
    #mega-menu-main-menu 
    > li.mega-menu-megamenu 
    > ul.mega-sub-menu 
    > li.mega-menu-row {
        width: 1320px !important;
        max-width: calc(100vw - 30px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        float: none !important;
		display: block !important;
    }

    body.scrolled #mega-menu-wrap-main-menu 
    #mega-menu-main-menu 
    > li.mega-menu-megamenu 
    > ul.mega-sub-menu 
    > li.mega-menu-row 
    > ul.mega-sub-menu {
        width: 100% !important;
        max-width: 100% !important;
        left: auto !important;
        transform: none !important;
    }
}

section.hero-banner {
    background-size: cover;
}


.consult-success{
    display:none;
    text-align:center;
    padding:20px 10px;
}

.consult-success.show{
    display:block;
}

.consult-success-icon{
    width:70px;
    height:70px;
    margin:0 auto 15px;
    border-radius:50%;
    background:#22c55e;
    color:#fff;
    font-size:36px;
    font-weight:700;
    display:flex;
    align-items:center;
    justify-content:center;
}

.consult-success h4{
    margin:0 0 10px;
    font-size:24px;
    font-weight:700;
}

.consult-success p{
    margin:0;
    color:#666;
}
.consult-success-message{
    margin-top:15px;
    padding:12px 16px;
    border-radius:12px;
    background:#ecfdf5;
    color:#15803d;
    font-weight:600;
    text-align:center;
}

@media (min-width: 769px){

    #mega-menu-wrap-main-menu 
    #mega-menu-main-menu 
    > li.mega-menu-megamenu 
    > ul.mega-sub-menu 
    > li.mega-menu-row{
        max-width:1320px !important;
        width:100% !important;
        margin-left:auto !important;
        margin-right:auto !important;
    }
	
	#mega-menu-wrap-main-menu #mega-menu-main-menu p{
		line-height: 20px;
	}
}


#top-bar {
        background-color: #008786;
    color: #f00;
    height: 33px;
    font-size: 13px;
    font-weight: 300;
}

figure{
	margin: 0!important;
}

.has-hover figure{
    width:300px;
    aspect-ratio:1/1;
    overflow:hidden;
	max-width: 100%;
}

.has-hover img:hover {
   transform:scale(1.1);
}

.has-hover figure img {
   width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
	transition: filter 0.6s, opacity 0.6s, transform 0.6s, box-shadow 0.3s; 
}


ul{
    margin: 0;
    padding: 0; 
}

ul.menusocial li{
    list-style: none;
    display: inline-block;
    
}

ul.menusocial li a{
    font-size: 16px;
    line-height: 10px;
	margin: 0;
}

#mega-menu-wrap-main-menu #mega-menu-main-menu li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item ul li{list-style: none;}
#mega-menu-wrap-main-menu #mega-menu-main-menu li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item ul li a{color: #555;}


#top-bar .hotline-top a{
    background: #BF995D;
    padding: 2px 8px;
    border-radius: 10px;
    color: #fff;
    font-size: 11px;
    font-weight: 500;
}

#masthead{
}

#logo img{
	width: 220px;
	height: auto;
}

.dat-lich{
	display: inline-flex;
}

a.btn-dat-lich i{
    margin-right: 5px;
}

.menu-search{
    position:relative;
}

.search-popup{
    display:none;
    position:absolute;
    top:100%;
    right:0;
    width:350px;
    z-index:9999;
    background:#fff;
    padding:15px;
    border-radius:10px;
    box-shadow:0 10px 30px rgba(0,0,0,.15);
}

.menu-search:hover .search-popup{
    display:block;
}

.search-toggle{
    display:flex;
    align-items:center;
    justify-content:center;
	color: #3D3D3D;
    font-size: 17px;
}

.search-popup .probox{
    width:100% !important;
}

.menu-search{
    overflow:visible !important;
}

.content-home .div-testimonial h3{
	display: none;
}

.section-community{
	background: #E4EFF2;
}


.div-community{
	background: #E4EFF2;
}

.h-giaiphap p {
        font-weight: 400;
    font-size: 20px;
    line-height: 24px;
    color: #3D3D3D;
	margin-bottom: 5px;
}


.giai-phap p::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 2px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #57c3c0;
    color: #fff;
    font-size: 11px;
    line-height: 16px;
    text-align: center;
    font-weight: 700;

}


.giai-phap p {
    position: relative;
    padding-left: 24px;
    margin-bottom: 18px;
    font-size: 16px;
    font-weight: 500;
    color: #222;
}


.giai-phap h5 {
    font-weight: 600;
    margin: 20px 0;
    text-align: center;
	color: #008786;

}


.giai-phap h5 strong{
    font-weight: 600;
    color: #3D3D3D;
}


.h-giaiphap h4 {
    font-weight: 700;
    font-size: 30px;
    line-height: 38px;
    color: #008786;
}


.h-giaiphap h4 strong{
    font-weight: 600;
    color: #3D3D3D;
}


.post-title a{
    font-size: 18px;
    color: #3D3D3D;
	font-weight: 600;
}

.post-title a:hover{
    color: #008786;
}


.cat-label {
    font-size: 14px;
    color: #4BAAAA;
    font-weight: 600;
    margin-bottom: 5px;
}


.post-thumb{
    display:block;
    position:relative;
    overflow:hidden;
    border-radius:12px;
    aspect-ratio:5/3;
}


.post-thumb .thumb-img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.post-thumb iframe,
.post-thumb .rsfv-video{
    position:absolute;
    inset:0;

    width:100% !important;
    height:100% !important;

    border:0;
}

.play-btn{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    width:60px;
    height:60px;
    border-radius:50%;
    background:rgba(0,0,0,.5);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
}

.post-card:hover .thumb-img{
	transform:scale(1.05);
}


.btn-hut-mo a{
    margin-top: 15px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    background: rgb(0, 135, 134);
    padding: 12px 18px;
	    margin-left: 50%;
}

a.dv-more {
    font-size: 15px;
    font-weight: 400;
    background: rgb(0, 135, 134);
    padding: 10px 15px;
    color: #fff;
    border-radius: 30px;
}

/* Card cao bằng nhau */
.dv-group .dv-card{
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* Nội dung card */
.dv-group .dv-card-body{
    display: flex;
    flex-direction: column;
    flex: 1;
}

/* Mô tả chiếm phần còn lại */
.dv-group .dv-card-body p{
    margin-bottom: 20px;
    flex: 1;
}

/* Nút luôn nằm dưới cùng */
.dv-group .dv-more{
    margin-top: auto;
    align-self: center; /* bỏ dòng này nếu muốn nút căn trái */
}

.section-khach-hang{

}

.khachhang-box{
    position:relative;
    min-height:500px;
    border-radius:20px;

    background:linear-gradient(
        180deg,
        #2AA9A5 0%,
        #B8DADA 100%
    );

    overflow:hidden;
}

.kh-content{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);

    width:650px;
    max-width:90%;

    text-align:center;
    color:#fff;
    z-index:10;
}

.kh-content h3{
    margin-bottom:20px;
	font-size: 36px;
    line-height: 42px;
    font-weight:600;
}

.kh-content h4{
        
    margin-bottom:20px;
	    font-size: 24px;
    font-weight: 500;
}

.kh-content p{
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
}

.btn-khachhang{
    display:inline-block;
    padding:8px 40px;
    border-radius:999px;
    background:#fff;
    color:#333!important;
    text-decoration:none;
    font-weight:600;
}

/* avatar */

.avatar{
    position:absolute;
}

.avatar img{
    width:100%;
    display:block;
    border-radius:20px;
}

/* desktop */

.avatar-1{
    width:180px;
    left:20px;
    top:35px;
}

.avatar-2{
    width:140px;
    left:140px;
    top:165px;
}

.avatar-3{
    width:120px;
    left:20px;
    top:280px;
}

.avatar-4{
    width:180px;
    right:20px;
    top:35px;
}

.avatar-5{
    width:140px;
    right:140px;
    top:165px;
}

.avatar-6{
    width:120px;
    right:20px;
    top:280px;
}

@media(max-width:768px){

    .khachhang-box{
        min-height:700px;
    }

    .kh-content{
        top:60%;
        width:90%;
    }

    .kh-content h3{
        font-size:32px;
    }

    .kh-content h4{
        font-size:18px;
    }

    .kh-content p{
        font-size:16px;
    }

    .avatar-1{
        width:110px;
        left:15px;
        top:45px;
    }

    .avatar-2{
        width:90px;
        left:115px;
        top:120px;
    }

    .avatar-3{
        width:70px;
        left:10px;
        top:190px;
    }

    .avatar-4{
        width:110px;
        right:15px;
        top:45px;
    }

    .avatar-5{
        width:90px;
        right:115px;
        top:120px;
    }

    .avatar-6{
        width:70px;
        right:10px;
        top:190px;
    }
}


.section-dgtt{
    background-size:cover;
    background-position:center;
    border-radius:10px;
    overflow:hidden;
	color: #fff;
}

.dgtt-overlay{
    background:rgba(0,171,170,.89);
    padding:60px 30px;
}

.dgtt-cards{
    display:flex;
    flex-wrap:wrap;
    gap:30px;
    justify-content:center;
}

.dgtt-card{
    width:130px;
    background:#fff;
    border-radius:18px;
    padding:8px 8px 18px;
    text-align:center;
	
}

.dgtt-card img{
    width:100%;
    aspect-ratio:1/1;
    object-fit:cover;
    border-radius:12px;
    background:#ccc;
}

.dgtt-card h4{
    margin-top:16px;
    font-size:15px;
    line-height:1.5;
    font-weight:500;
    color:#000;
}

.dgtt-content{
    color:#fff;
    max-width:520px;
}

.dgtt-content h2{
    font-size:32px;
    font-weight:700;
    margin-bottom:20px;
}

.dgtt-content h3{
    font-size:26px;
    line-height:1.5;
    font-weight:700;
    margin-bottom:20px;
}

.dgtt-list ul{
    padding-left:0;
    list-style:none;
}

.dgtt-list li{
    margin-bottom:14px;
    font-weight:700;
}

.dgtt-list li:before{
    content:"✓";
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:18px;
    height:18px;
    margin-right:8px;
    border-radius:50%;
    background:#fff;
    color:#00aaa9;
    font-size:12px;
}

.dgtt-btn{
    display:inline-block!important;
    margin-top:20px;
    padding:15px 28px;
    border-radius:999px;
    background:#f01414;
    color:#fff;
    font-weight:700;
    text-decoration:none;
}

@media(max-width:768px){
    .dgtt-overlay{
        padding:40px 0;
    }

    .dgtt-content{
        text-align:center;
        margin-bottom:30px;
    }

    .dgtt-content h2{
        font-size:28px;
    }

    .dgtt-content h3{
        font-size:22px;
    }

    .dgtt-cards{
        gap:12px;
    }

    .dgtt-card{
        width:31%;
        padding:6px 6px 14px;
    }

    .dgtt-card h4{
        font-size:13px;
    }
}


.desktop-only{
    display:block;
}

.mobile-only{
    display:none;
}

@media(max-width:991px){

    .desktop-only{
        display:none;
    }

    .mobile-only{
        display:block;
        margin-top:30px;
		text-align: center;
    }

    .dgtt-header{
        text-align:center;
        margin-bottom:25px;
    }

    .dgtt-btn{
        display:block;
        width:max-content;
        margin:20px auto 0;
    }
}


@media (max-width: 768px){

    .formaction{
        display:flex;
        flex-wrap:wrap;
        gap:15px;
    }

    .formaction  > div{
        flex:0 0 calc(50% - 8px);
        max-width:calc(50% - 8px);
        margin-bottom:15px;
    }

}


footer{
	font-size: 14px;
    line-height: 25px;
    font-weight: 400;
}

footer .topfooter{
	background: #046463;
	color: #fff;
	padding: 8px 0;
}


footer .topfooter img{
	width: 60px;
    height: auto;
    margin-right: 15px;
    float: left;
    margin-top: 10px;
}


footer img{
	width: 220px;
	height: auto;
	margin-bottom: 15px;
}

footer ul.menusocial li a {
    background-color: rgb(56, 178, 177);
    opacity: 1;
    padding: 8px;
    border-radius: 8px;
	margin-right: 10px;
}

footer ul.menusocial i {
    width: 24px;
    height: 24px;
    color: rgb(255, 255, 255);
    gap: 10px;
    text-align: center
}

footer h4{
	font-size: 16px;
    font-weight: 700;
}

footer ul li{
	list-style: none;
	
}
footer a{
	color: #3d3d3d;
	
	
}
footer a:hover{
	color: #3d3d3d;
	
}

.hm-title h2{
    display:inline-block;
        background: linear-gradient(90deg, #008786 0%, #31AAA9 50%, #008786 100%);
    color:#fff;
    padding:18px 50px;
    border-radius:18px;
    font-size:28px;
    font-weight:700;
    text-transform:uppercase;
	margin-bottom: 40px;
}

.hm-main-row{
    display:flex;
    align-items:center;
}


.hm-main-image img{
    width:100%;
    max-width:360px;
    border-radius:50%;
}

.hm-item{
    display:flex;
    gap:18px;
    align-items:flex-start;
    padding: 50px 0;
}

.hm-main-image{
    
}

.hm-icon{
    width:82px;
    flex:0 0 82px;
}

.hm-icon img{
    width:100%;
}

.hm-text h3{
    font-size:18px;
    font-weight:700;
    color:#222;
    text-transform:uppercase;
    margin-bottom:8px;
}

.hm-text p{
    font-size:15px;
    color:#444;
    margin:0;
}

.hm-box strong{
    color:#E51115;
}

.hm-box{
    border:2px solid #008786;
    border-radius:12px;

    height:100%;
    min-height:240px;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    text-align:center;
    padding:30px;
}

.hm-box h2{
    color:#d7c98a;
    font-size:80px;
    line-height:1;
    font-weight:700;
    margin-bottom:15px;
}

.hm-box h3{
    color:#008786;
    font-size:20px;
    font-weight:700;
    margin-bottom:10px;
}

.hm-box p{
    color:#0d4f52;
    font-size:18px;
    font-weight:600;
    line-height:1.4;
    margin:0;
}

.hm-btn{
    display:inline-block;
    background:#c69655;
    color:#fff;
    padding:12px 28px;
    border-radius:999px;
    text-decoration:none;
    font-weight:700;
}

@media(max-width:991px){
    .hm-title h2{
        width:100%;
        border-radius:0 0 18px 18px;
        font-size:28px;
        padding:16px 20px;
    }

    .hm-main-row{
        margin-top:40px;
    }

    .hm-main-image{
        margin-bottom:40px;
    }

    .hm-main-image img{
        max-width:100%;
    }

    .hm-item{
        padding: 15px 0;
    }

    .hm-icon{
        width:90px;
        flex:0 0 90px;
    }

    .hm-text h3{
        font-size:20px;
    }

    .hm-text p{
        font-size:16px;
    }

    .hm-box{
        margin:0 0 20px 0;
    }
	
	.hm-title h2{
		margin-bottom: 20px;
	}
}

.section-about-doctor{
    background:#fff;
    padding:25px 0 45px;
}

.about-heading{

}

.about-title{
    font-size:28px;
    font-weight:700;
    color:#2b2b2b;
    margin-bottom:12px;
}

.about-quote{
    font-size:24px;
    font-style:italic;
    color:#333;
    font-family:serif;
    margin-bottom:10px;
}

.about-position{
    font-size:20px;
    font-weight:700;
    line-height:1.35;
    color:#222;
    max-width:680px;
    margin:0 auto;
}

.about-image-wrap{
    position:relative;
    width:100%;
    max-width:520px;
    aspect-ratio:1/1;
    margin:0 auto;
}

.about-shape{
    position:absolute;
    left:0;
    bottom:0;
    width:100%;
    height:64%;
    object-fit:fill;
    z-index:1;
}

.about-doctor{
    position:absolute;
    left:18%;
    bottom:0;
    width:72%;
    z-index:2;
}

.about-content{
    max-width:560px;
    margin-left:auto;
    font-size:16px;
    line-height:1.55;
    color:#333;
}

.about-content p{
    margin-bottom:24px;
}

.about-points{
    margin:35px 0;
}

.about-points ul{
    list-style:none;
    padding:0;
    margin:0;
}

.about-points li{
    position:relative;
    padding-left:24px;
    margin-bottom:18px;
    font-size:16px;
    font-weight:700;
    color:#222;
}

.about-points li::before{
    content:"✓";
    position:absolute;
    left:0;
    top:2px;
    width:16px;
    height:16px;
    border-radius:50%;
    background:#57c3c0;
    color:#fff;
    font-size:11px;
    line-height:16px;
    text-align:center;
    font-weight:700;
}

.btn-about-doctor{
    display:inline-block;
    padding:14px 28px;
    border-radius:999px;
    background:#c79a58;
    color:#fff;
    font-size:15px;
    font-weight:700;
    text-decoration:none;
}

.btn-about-doctor:hover{
    background:#b88742;
    color:#fff;
}

@media(max-width:991px){
    .about-title{
        font-size:28px;
    }

    .about-quote{
        font-size:20px;
    }

    .about-position{
        font-size:18px;
    }

    .about-content{
        margin:25px auto 0;
        text-align:left;
    }

    .about-image-wrap{
        max-width:480px;
    }
}

.hero{
    background:#eef8fb;
}


.hero-image{
    flex:0 0 50%;
    max-width:50%;
    height:260px;
    overflow:hidden;
}

.hero-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center top;
    display:block;
}
.hero-banner .ps5{
	padding-left: 60px;
}

.hero-title{
    font-size:30px;
    line-height:1.25;
    font-weight:700;
    color:#3b3b3b;
    max-width:560px;
    margin-bottom:18px;
}

.hero-description{
    font-size:18px;
    line-height:1.45;
    color:#555;
    max-width:530px;
    margin-bottom:30px;
}

.hero-box{
    display:flex;
    align-items:center;
    gap:18px;
    width:max-content;
    max-width:100%;
    background:#fff;
    padding:16px 28px 16px 20px;
    border-radius:10px;
    box-shadow:0 8px 18px rgba(0,0,0,.12);
    margin-bottom:38px;
}

.hero-box img{
    width:38px;
    height:38px;
    object-fit:contain;
}

.hero-box h3{
    font-size:16px;
    font-weight:700;
    color:#3b3b3b;
    margin:0 0 6px;
}

.hero-box p{
    font-size:15px;
    font-weight:700;
    color:#c39a55;
    text-transform:uppercase;
    margin:0;
}

.hero-buttons{
    display:flex;
    gap:15px;
    align-items:center;
}

.btn-hero-primary,
.btn-hero-outline{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:42px;
    padding:0 24px;
    border-radius:999px;
    font-size:15px;
    font-weight:700;
    text-decoration:none;
}

.btn-hero-primary{
    background:#ed1111;
    color:#fff;
}

.btn-hero-outline{
    background:#fff;
    color:#111;
    border:1px solid #111;
}

.hero-doctor{
    max-height:520px;
    width:auto;
    display:block;
    margin:0 auto -50px;
}

@media(max-width:991px){
    .hero-banner{
        min-height:auto;
        text-align:center;
        background-position:center;
    }
		
	.hero-banner .ps5{
		padding-left: 0;
	}

    .hero-banner::before{
        background:rgba(255,255,255,.82);
    }

    .hero-title{
        font-size:32px;
        margin-left:auto;
        margin-right:auto;
    }

    .hero-description{
        margin-left:auto;
        margin-right:auto;
    }

    .hero-box{
        margin-left:auto;
        margin-right:auto;
    }

    .hero-buttons{
        justify-content:center;
        flex-wrap:wrap;
    }

    .hero-doctor{
        max-height:420px;
        margin-top:30px;
    }
}

.section-stats{
    background:#fff;
}

.stat-card{
    background:#008b84;
    color:#fff;
    border-radius:10px;
    min-height:145px;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    text-align:center;
    padding:25px 15px;
}

.stat-number{
    font-size:36px;
    line-height:1;
    font-weight:800;
    margin-bottom:18px;
}

.stat-label{
    font-size:16px;
    font-weight:700;
}

@media(max-width:767px){
    .stat-card{
        min-height:120px;
    }

    .stat-number{
        font-size:32px;
		margin-bottom: 5px;
    }
}

@media(max-width: 1200px){

    #top-bar{
		height:48px;
    }
}

@media(max-width: 767px){

    #top-bar{
		height:40px;
    }

    #masthead{
        border-top:3px solid #008786;
        border-bottom:1px solid #008786;
        background:#fff;
    }

    #logo img{
        max-height:48px;
        width:auto;
    }

    #wide-nav{
        display:none;
        background:#fff;
        border-top:1px solid #eee;
    }

 
	
}

.mobile-search-popup{
		display:none;
		background:#fff;
		padding:12px 15px;
		border-bottom:1px solid #eee;
		box-shadow:0 5px 15px rgba(0,0,0,.08);
	}

	body.mobile-search-open .mobile-search-popup{
		display:block;
	}
	
@media(max-width:767px){

    #wide-nav{
        display:block !important;

        position:fixed;
        top:72px;
        left:0;

        width:78%;
        max-width:320px;
        height:calc(100vh - 72px);

        background:#fff;
        z-index:999999;

        overflow-y:auto;

        transform:translateX(-100%);
        opacity:0;
        visibility:hidden;

        transition:all .3s ease;
    }

    body.mobile-menu-open #wide-nav{
        transform:translateX(0);
        opacity:1;
        visibility:visible;
    }

    /* Ẩn toàn bộ icon/nút mặc định của Max Mega Menu */
    #mega-menu-wrap-main-menu .mega-menu-toggle,
    #mega-menu-wrap-main-menu .mega-close{
        display:none !important;
    }

    #mega-menu-wrap-main-menu,
    #mega-menu-main-menu{
        display:block !important;
        position:static !important;
        width:100% !important;
        height:auto !important;
        max-height:none !important;
        opacity:1 !important;
        visibility:visible !important;
        background:#fff !important;
        transform:none !important;
        overflow:visible !important;
    }

    #mega-menu-main-menu > li{
        display:block !important;
        width:100% !important;
        float:none !important;
        border-bottom:1px solid #eee;
    }

    #mega-menu-main-menu > li > a{
        display:block !important;
        padding:14px 16px !important;
        color:#222 !important;
        font-weight:700 !important;
        background:#fff !important;
    }

    .menu-search{
        display:none !important;
    }
	
	.mobile-menu-overlay{
		position:fixed;
		top:72px;
		left:0;
		right:0;
		bottom:0;
		opacity:0;
		visibility:hidden;
		background:rgba(0,0,0,.35);
		transition:all .3s ease;
		z-index:99998;
	}

	body.mobile-menu-open .mobile-menu-overlay{
		opacity:1;
		visibility:visible;
	}

	#mega-menu-main-menu > li.menu-search{
		display: none!important;
	}
	
	.mobile-search-toggle,
	.mobile-menu-toggle{
		border: none!important;
		background: none!important;
	}
	
	.giai-phap figure{
		float: left;
		width: 150px;
		margin-right: 10px !important;
		border-radius: 15px;
	}
	
	.giai-phap h5 {
		margin: 8px 0 10px 0;
		text-align: left;
	}
	
	.giai-phap p {
		margin-bottom: 10px;
		margin-left: 180px;
	}
	
	.giai-phap> .wp-block-column {
		background: #ebf1f7;
		border-radius: 10px;
	}

    .mobile-2-cols.wp-block-columns{
        display:flex !important;
        flex-wrap:wrap !important;
        gap:20px;
    }

    .mobile-2-cols.wp-block-columns > .wp-block-column{
        flex-basis:calc(50% - 10px) !important;
        flex-grow:0 !important;
        max-width:calc(50% - 10px) !important;
    }

    .mobile-2-cols h5{
        font-size: 17px;
    }

    .mobile-2-cols .wp-block-buttons{
        display: none;
    }

}

.floating-contact{
    position:fixed;
    right:25px;
    top:50%;
    transform:translateY(-50%);
    z-index:9999;

    display:flex;
    flex-direction:column;
    gap:12px;
}

.fc-item{
    width:52px;
    height:52px;
    border-radius:50%;
    background:linear-gradient(1deg, #008786 0%, #31AAA9 50%, #008786 100%);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-size:13px;
    font-weight:700;
    text-decoration:none;
}

.fc-item i{
    font-size:22px;
}

.mobile-bottom-contact{
    display:none;
}

@media(max-width:767px){

    .floating-contact{
        display:none;
    }
	
	.mobile-bottom-contact img{
		background-color: #008786;
		width: 16px;
		margin-bottom: 4px;
	}

    .mobile-bottom-contact{
        position:fixed;
        left:0;
        right:0;
        bottom:0;
        z-index:99999;

        display:grid;
        grid-template-columns:repeat(5,1fr);

        background:#fff;
        box-shadow:0 -4px 14px rgba(0,0,0,.12);
    }

    .mobile-bottom-contact a{
        padding:8px 4px;
        text-align:center;
        color:#333;
        font-size:12px;
        font-weight:600;
        text-decoration:none;
    }

    .mobile-bottom-contact i{
        font-size:18px;
        color:#008786;
        margin-bottom:4px;
    }

    .mobile-bottom-contact a.active{
        background:#c49a5c;
        color:#fff;
    }

    .mobile-bottom-contact a.active i{
        color:#fff;
    }

    body{
        padding-bottom:62px;
    }
	
	.zalo-btn img{
    width:28px;
    height:28px;
    object-fit:contain;
    display:block;
}
}


#back-to-top{
    position:fixed;
    right:25px;
    bottom:25px;

    display:flex;
    align-items:center;
    gap:8px;

    padding:12px 20px;

    border:2px solid #008786;
    border-radius:999px;

    background:#fff;
    color:#333;

    text-decoration:none;
    font-size:14px;
    font-weight:500;

    z-index:9999;

    opacity:0;
    visibility:hidden;

    transition:.3s;
}

#back-to-top.show{
    opacity:1;
    visibility:visible;
}

#back-to-top i{
    color:#008786;
}

@media(max-width:767px){

    #back-to-top{
        right:12px;
        bottom:90px; /* nằm trên thanh liên hệ */

        padding:10px 16px;

        font-size:13px;
        background:#fff;
    }

}

@media(max-width:767px){

    #masthead{
        left:0;
        right:0;
        z-index:100001;
        background:#fff;
    }

    .mobile-search-popup{
        position:fixed;
        top:72px; /* bằng chiều cao #masthead mobile */
        left:0;
        right:0;
        z-index:100000;

        background:#fff;
        padding:12px 15px;
        box-shadow:0 5px 15px rgba(0,0,0,.12);

        transform:translateY(-10px);
        opacity:0;
        visibility:hidden;
        transition:.3s ease;
    }

    body.mobile-search-open .mobile-search-popup{
        transform:translateY(0);
        opacity:1;
        visibility:visible;
    }

    /* Nếu menu mobile đang mở thì search nằm dưới menu header, không bị trôi */
    body.mobile-menu-open .mobile-search-popup{
        top:72px;
    }
}

/* Khóa scroll nền khi mở menu mobile */


/* Max Mega Menu: để #wide-nav làm offcanvas, không fixed wrapper để tránh tự cuộn lên đầu trang */
@media (max-width:1140px){
    #mega-menu-wrap-main-menu{
        position:static !important;
        inset:auto !important;
        z-index:auto !important;
    }

    #mega-menu-main-menu{
        position:static !important;
        height:auto !important;
        max-height:none !important;
        overflow:visible !important;
        -webkit-overflow-scrolling:auto !important;
        overscroll-behavior:auto !important;
    }
}

.promo-floating{
    position:fixed;
    left:25px;
    bottom:25px;
    z-index:99990;

    max-width:480px;
    width:calc(100% - 50px);

    background:#fff;
    border-radius:999px;
    box-shadow:0 4px 18px rgba(0,0,0,.12);

    display:flex;
    align-items:center;
}

.promo-floating-inner{
    display:flex;
    align-items:center;
    gap:14px;
    padding:10px 12px;
    color:#333;
    text-decoration:none;
    width:100%;
}

.promo-icon{
        width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #008786;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    box-shadow: 0 0 0 4px rgba(0, 135, 134, .12);
}

.promo-icon img{
    width:26px;
    height:26px;
    object-fit:contain;
}

.promo-content strong{
    display:block;
    color:#f01414;
    font-size:14px;
    font-weight:800;
    text-transform:uppercase;
}

.promo-content span{
    display:block;
    color:#333;
    font-size:14px;
    font-weight:400;
}

.promo-close{
    position:absolute;
    top:8px;
    right:10px;

    width:22px;
    height:22px;
    border:0;
    border-radius:50%;

    background:#fff;
    color:#777;
    box-shadow:0 0 5px rgba(0,0,0,.12);

    display:flex;
    align-items:center;
    justify-content:center;
    padding:0;
}

@media(max-width:767px){
    .promo-floating{
        display: none;
    }
}


@media(max-width:767px){
    .promo-floating{
        left:10px;
        right:10px;
        bottom:78px;
        width:auto;
        max-width:none;
    }
}

.consult-popup {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.45);
  z-index: 99999;
}

.consult-popup.active {
  display: flex;
  align-items: center;
  justify-content: center;
}

.consult-box {
  width: 500px;
  max-width: 92%;
  background: #eaf7fa;
  padding: 35px 30px;
  border-radius: 6px;
  position: relative;
}

.consult-close {
  position: absolute;
  right: 12px;
  top: 10px;
  background: none;
  border: 0;
  font-size: 24px;
  cursor: pointer;
}

.consult-box h3,
.consult-box p {
  text-align: center;
}

.consult-box label {
  display: block;
  margin-top: 22px;
  font-weight: 600;
}

.consult-box input,
.consult-box select {
  width: 100%;
  height: 46px;
  border: 0;
  border-radius: 999px;
  padding: 0 18px;
  margin-top: 10px;
}

.consult-box button[type="submit"] {
  display: block;
  margin: 30px auto 0;
  border: 0;
  border-radius: 999px;
  background: #d6a957;
  color: #fff;
  padding: 12px 32px;
  font-weight: 600;
  cursor: pointer;
}

.appointment-row{
    display:flex;
    gap:15px;
}

.appointment-col{
    flex:1;
}

.appointment-row .appointment-col{
    flex:1;
    min-width:0;
}

.appointment-row label{
    display:block;
    margin-bottom:6px;
}

.appointment-row input{
    width:100%;
}

/* Mobile */
@media (max-width:768px){

    .appointment-row{
        flex-direction:column;
        gap:12px;
    }

    .appointment-row .appointment-col{
        width:100%;
    }

}

.doctor-banner{
    position:relative;
    overflow:hidden;
    background:#f4f4f4;
    min-height:800px;
}

.doctor-banner-bg{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
	object-position: 0 100%;
}

.doctor-banner-inner{
    position:relative;
    min-height:800px;
    z-index:2;
}

.doctor-heading{
    text-align:center;
    padding-top:45px;
}

.doctor-heading h2{
    font-size:42px;
    font-weight:700;
    color:#3d3d3d;
}

.doctor-heading p{
    font-size:24px;
    color:#3d3d3d;
}

.doctor-image{
    position:absolute;
    width:35%;
    left:50%;
    bottom:5%;
    transform:translateX(-50%);
    z-index:5;
}

.circle-img{
    position:absolute;
    border-radius:50%;
    z-index:4;
}

.circle-top-left{
    width:120px;
    left:22%;
    top:43%;
}

.circle-top-right{
    width:120px;
    right:22%;
    top:42%;
}

.circle-bottom-left{
    width:150px;
    left:12%;
    bottom:8%;
}

.circle-bottom-right{
    width:150px;
    right:12%;
    bottom:8%;
}

@media(max-width:767px){
	
	    .doctor-banner-bg {
			height: 50%;
			-o-object-fit: fill;
			object-fit: fill;
			top: 50%;
		}

    .doctor-banner{
        min-height:500px;
        border-top:2px solid #008c8c;
    }

    .doctor-banner-inner{
        min-height:500px;
    }

    .doctor-heading{
        padding-top:35px;
    }

    .doctor-heading h2{
        font-size:26px;
        line-height:1.2;
    }

    .doctor-heading p{
        font-size:20px;
        line-height:1.5;
    }

    .doctor-image{
        width:288px;
        bottom:0;
    }

    .circle-top-left{
        width:90px;
        left:5%;
        top:50%;
    }

    .circle-top-right{
        width:95px;
        right:5%;
        top:50%;
    }

    .circle-bottom-left{
        width:110px;
        left:-2%;
        bottom:0;
    }

    .circle-bottom-right{
        width:110px;
        right:-2%;
        bottom:0;
    }
}

.why-doctor{

}

.why-doctor-img{
    width:100%;
    border-radius:10px;
    display:block;
}

.why-doctor h2{

}

.why-doctor h3{

}

.why-doctor p{
    font-size:18px;
    line-height:1.7;
}

.why-box{
    background:#e8f3f5;
    border-radius:10px;
    padding:18px 22px;
    margin-top:20px;
}

.why-info-box{
    display:flex;
    align-items:center;
    gap:20px;

    background:#dfeaec;
    border-radius:16px;

    padding:15px;
    margin-top:25px;
}

.why-box-icon{
    flex-shrink:0;

    width:32px;
    height:32px;

    display:flex;
    align-items:center;
    justify-content:center;
}


.why-box-icon img{
    width:100%;
	height:auto;
}

.why-box-text{
    flex:1;
}

.why-box-text strong{
    display:block;
    font-size:18px;
    font-weight:600;
    color:#3d3d3d;
    margin-bottom:5px;
}

.why-box-text p{
    margin:0;
    font-size:18px;
    color:#3d3d3d;
    line-height:1.5;
}

.why-box-text *:last-child{
    margin-bottom:0;
}

@media(max-width:767px){

    .why-info-box{
        gap:12px;
        padding:16px;
        border-radius:12px;
    }

    .why-box-icon i{
        font-size:22px;
    }

    .why-box-text strong{
        font-size:16px;
    }

    .why-box-text p,
    .why-box-text{
        font-size:14px;
        line-height:1.6;
    }

}

.philosophy-section{
    padding:80px 0;
    background:#fff;
    overflow:hidden;
}

.philosophy-title{
    color:#28313b;
    margin-bottom:22px;
}

.philosophy-desc{
    font-size:22px;
    line-height:1.5;
    color:#28313b;
    margin-bottom:28px;
}

.philosophy-list{
    display:flex;
    flex-direction:column;
    gap:20px;
}

.philosophy-item{
    display:flex;
    align-items:flex-start;
    gap:18px;
    background:#e4f0f3;
    border-radius:12px;
    padding:18px 22px;
}

.philosophy-icon{
    width:32px;
    height:32px;
    flex-shrink:0;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#008c8c;
    font-size:24px;
    margin-top:2px;
}

.philosophy-text h3{
    font-size:18px;
    font-weight:700;
    color:#008c8c;
    margin:0 0 8px;
}

.philosophy-text p{
    font-size:17px;
    line-height:1.7;
    color:#28313b;
    margin:0;
}

.philosophy-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-top:30px;
    padding:13px 28px;
    border-radius:999px;
    background:#008c8c;
    color:#fff;
    font-size:16px;
    font-weight:700;
    text-decoration:none;
}

.philosophy-btn:hover{
    background:#007575;
    color:#fff;
}

.philosophy-images{
    position:relative;
    min-height:620px;
}

.philosophy-img-main{
    position:absolute;
    top:0;
    left:20px;
    width:70%;
    height:auto;
    object-fit:cover;
    border-radius:20px;
}

.philosophy-img-top{
        position: absolute;
    top: 30px;
    right: 0;
    width: 32%;
    height: auto;
    object-fit: cover;
    border-radius: 20px;
    z-index: 2;
}

.philosophy-img-bottom{
        position: absolute;
    right: 8%;
    bottom: -8%;
    width: 40%;
    height: auto;
    object-fit: cover;
    border-radius: 20px;
    z-index: 3;
}

@media(max-width:767px){

    .philosophy-section{
        padding:50px 0;
    }

    .philosophy-title{
        font-size:30px;
        margin-bottom:16px;
    }

    .philosophy-desc{
        font-size:22px;
        line-height:1.5;
        margin-bottom:24px;
    }

    .philosophy-item{
        gap:12px;
        padding:16px;
        border-radius:12px;
    }

    .philosophy-icon{
        width:26px;
        height:26px;
        font-size:20px;
    }

    .philosophy-text h3{
        font-size:16px;
    }

    .philosophy-text p{
        font-size:15px;
        line-height:1.6;
    }

    .philosophy-btn{
        width:100%;
        padding:13px 20px;
        font-size:15px;
        text-align:center;
    }

    .philosophy-images{
        margin-top:20px;
        min-height:auto;
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:12px;
    }

    .philosophy-img-main,
    .philosophy-img-top,
    .philosophy-img-bottom{
        position:static;
        width:100%;
        height:220px;
        object-fit:cover;
        border-radius:16px;
    }

    .philosophy-img-main{
        grid-column:1 / -1;
        height:280px;
    }
}

.philosophy-item{
    position:relative;
    display:flex;
    align-items:flex-start;
    gap:18px;
    background:#e4f0f3;
    border-radius:12px;
    padding:18px 22px 18px 60px;
}

.philosophy-item::before{
    content:"\f058";
    font-family:"Font Awesome 6 Free";
    font-weight:900;

    position:absolute;
    left:22px;
    top:22px;

    font-size:24px;
    color:#008c8c;
}

.philosophy-text h3{
    font-size:18px;
    font-weight:700;
    color:#008c8c;
    margin:0 0 8px;
}

.philosophy-text p{
    font-size:17px;
    line-height:1.7;
    color:#28313b;
    margin:0;
}

.certificates-section{
    padding:20px 0 45px;
    background:#e5f2f4;
    overflow:hidden;
}

.certificates-wrap{
    position:relative;
}

.certificate-img-box{
    height:280px;
    background:#008c8c;
    border-radius:10px;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:12px;
    overflow:hidden;
}

.certificate-img-box img{
    max-width:100%;
    max-height:100%;
    width:auto;
    height:auto;
    object-fit:contain;
}

.certificate-name{
    font-size:17px;
    font-weight:700;
    line-height:1.5;
    color:#28313b;
    margin:16px 10px 0;
}

.certificates-nav{
    position:absolute;
    top:45%;
    transform:translateY(-50%);
    z-index:10;

    width:36px;
    height:36px;
    border:0;
    background:#4aaeb0;
    color:#fff;

    display:flex;
    align-items:center;
    justify-content:center;
}

.certificates-prev{
    left:-46px;
}

.certificates-next{
    right:-46px;
}

.certificates-pagination{
    margin-top:35px;
    text-align:center;
}

.certificates-pagination .swiper-pagination-bullet{
    width:7px;
    height:7px;
    background:#777;
    opacity:1;
}

.certificates-pagination .swiper-pagination-bullet-active{
    width:50px;
    border-radius:99px;
    background:#008c8c;
}

@media(max-width:767px){

    .certificate-img-box{
        height:230px;
    }

    .certificate-name{
        font-size:15px;
    }

    .certificates-prev{
        left:0;
    }

    .certificates-next{
        right:0;
    }
}

.before-after-section{
    padding:60px 0;
    background:#fff;
    overflow:hidden;
}

.before-after-card{

}

.before-after-card img{
    width:auto;
    height:162px;
    object-fit:cover;
    display:block;
}

.before-after-pagination{
    margin-top:28px;
    text-align:center;
}

.before-after-pagination .swiper-pagination-bullet{
    width:6px;
    height:6px;
    background:#777;
    opacity:1;
    margin:0 6px !important;
}

.before-after-pagination .swiper-pagination-bullet-active{
    width:50px;
    border-radius:99px;
    background:#008c8c;
}

@media(max-width:767px){

    .before-after-section{
        padding:40px 0;
    }

    .before-after-card{
        border-radius:12px;
    }

    .before-after-card img{
        height:auto;
        object-fit:contain;
		width: 100%;
    }

}

.doctors-section{
    padding:60px 0;
    background:#e5f2f4;
    overflow:hidden;
}

.doctor-card{
    text-align:center;
}

.doctor-img-box{
    height:285px;
    background:#35b4af;
    border-radius:10px;
    overflow:hidden;

    display:flex;
    align-items:flex-end;
    justify-content:center;
}

.doctor-img-box img{
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center bottom;
    display:block;
}

.doctor-name{
    font-size:20px;
    font-weight:700;
    color:#28313b;
    margin:16px 0 6px;
}

.doctor-desc{
    font-size:17px;
    line-height:1.6;
    color:#28313b;
}

.doctor-desc p{
    margin:0;
}

.doctors-pagination{
    margin-top:30px;
    text-align:center;
}

.doctors-pagination .swiper-pagination-bullet{
    width:6px;
    height:6px;
    background:#777;
    opacity:1;
    margin:0 6px !important;
}

.doctors-pagination .swiper-pagination-bullet-active{
    width:50px;
    border-radius:99px;
    background:#008c8c;
}

@media(max-width:767px){

    .doctor-img-box{
        height:180px;
    }

    .doctor-name{
        font-size:18px;
        margin-top:10px;
    }

    .doctor-desc{
        font-size:14px;
        line-height:1.5;
    }
	
	.mainekip >p {
		max-width: 100%;
		font-size: 16px;
	}

}

.content-ekip .mainekip h2 {
    font-size: 30px;
    font-weight: 700;
    background: #008786;
    color: #fff;
    width: fit-content;
    margin: 20px auto;
    padding: 12px 25px;
    line-height: 1;
    border-radius: 30px;
    margin-bottom: 20px;
}

.content-ekip .mainekip h4 {
    font-size: 20px;
    font-weight: 700;
}

.mainekip >p {
    max-width: 60%;
    margin: 15px auto;
    font-size: 18px;
}

.icon-box-scr {
    text-align: center;
    background: #E4EFF2;
    padding: 12px 12px 24px 12px;
    border-radius: 12px;
}

.icon-box-scr img{
    width: 44px;
	height: auto;
	margin: 10px 0 15px;
}


.icon-box-scr  strong{
    font-weight: 600;
}


.icon-box-scr ul{
    list-style:none;
    padding:0;
    margin:0 10px;
}

.icon-box-scr li{
    display:flex;
    align-items:flex-start;
    gap:8px; /* khoảng cách icon và text */
    margin-bottom:8px;
}

.icon-box-scr li::before{
    content:"✓";
    color:#008c8c;
    font-weight:700;
    flex-shrink:0;
}

.team-section{
    background:#e5f2f4;
}

.team-title{
    font-size:34px;
    font-weight:700;
    color:#28313b;
    margin-bottom:20px;
}

.team-desc{
    font-size:17px;
    line-height:1.7;
    color:#28313b;
    margin-bottom:24px;
}

.team-desc p{
    margin-bottom:0;
}

.team-info-box{
    display:flex;
    align-items:center;
    gap:10px;
    background:#fff;
    border-radius:10px;
    padding:18px;
    margin-top:20px;
}

.team-info-box img{
    width: 38px;
    height: auto;
}

.team-info-text{
    font-size:16px;
    line-height:1.6;
    color:#28313b;
}

.team-info-text p{
    margin:0;
}

.team-image{
    width:100%;
    height:470px;
    object-fit:cover;
    border-radius:10px;
    display:block;
}

@media(max-width:767px){

    .team-section{
        padding:45px 0;
    }

    .team-title{
        font-size:28px;
    }

    .team-desc{
        font-size:16px;
    }

    .team-info-box{
        padding:15px;
        gap:10px;
    }

    .team-info-text{
        font-size:15px;
    }

    .team-image{
        height:auto;
    }

}

.process-section{
    padding:70px 0;
    background:#fff;
}

.process-heading{
    max-width:760px;
    margin:0 auto 45px;
}

.process-title{
    font-size:30px;
    font-weight:700;
    color:#28313b;
    margin-bottom:18px;
}

.process-subtitle{
    font-size:18px;
    font-weight:700;
    color:#28313b;
    margin-bottom:14px;
}

.process-desc{
    font-size:15px;
    line-height:1.7;
    color:#28313b;
    margin:0;
}

.process-grid{
    display:grid;
    grid-template-columns:repeat(6, 1fr);
    gap:38px 18px;
}

.process-item{
    text-align:center;
}

.process-item:nth-child(1),
.process-item:nth-child(2),
.process-item:nth-child(3){
    grid-column:span 2;
}

.process-item:nth-child(4){
    grid-column:2 / span 2;
}

.process-item:nth-child(5){
    grid-column:4 / span 2;
}

.process-img-box{
    width:100%;
    aspect-ratio:1.25 / 1;
    overflow:hidden;
    margin-bottom:16px;
}

.process-img-box img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.process-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#008c8c;
    color:#fff;
    border-radius:999px;
    padding:6px 14px;
    font-size:14px;
    font-weight:700;
    margin-bottom:12px;
}

.process-text{
    font-size:16px;
    font-weight:700;
    line-height:1.5;
    color:#28313b;
    margin:0;
}

@media(max-width:767px){

    .process-section{
        padding:45px 0;
    }

    .process-title{
        font-size:26px;
    }

    .process-subtitle{
        font-size:16px;
    }

    .process-desc{
        font-size:14px;
    }

    .process-grid{
        grid-template-columns:repeat(2, 1fr);
        gap:28px 14px;
    }

    .process-item,
    .process-item:nth-child(1),
    .process-item:nth-child(2),
    .process-item:nth-child(3),
    .process-item:nth-child(4),
    .process-item:nth-child(5){
        grid-column:auto;
    }

    .process-item:nth-child(5){
        grid-column:1 / -1;
        max-width:50%;
        margin:0 auto;
    }

    .process-badge{
        font-size:12px;
        padding:5px 12px;
    }

    .process-text{
        font-size:13px;
    }

}
.featured-news-section{
    padding:60px 0;
    background:#fff;
}

.featured-news-section .section-title{
    text-align:center;
    font-family:'Times New Roman', serif;
    font-size:48px;
    font-weight:400;
    margin-bottom:35px;
}

.featured-video{
    position:relative;
    padding-top:56.25%;
    border-radius:10px;
    overflow:hidden;
    background:#000;
}

.featured-video iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
}

.featured-title{
    font-size:22px;
    font-weight:700;
    text-align:center;
    margin:25px 0 12px;
}

.featured-desc{
    text-align:center;
    font-size:16px;
    line-height:1.7;
}

.news-list{
    display:flex;
    flex-direction:column;
    gap:16px;
}

.news-item{
    display:flex;
    gap:18px;
    text-decoration:none;
    color:#222;
}

.news-thumb{
    display:block;
    width:100%;
    aspect-ratio:285 / 184;
    overflow:hidden;
    border-radius:12px; /* nếu muốn bo góc như ảnh */
}

.news-thumb img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}

.news-info h4{
    font-size:18px;
    font-weight:700;
    margin:0 0 6px;
}

.news-info p{
    margin:0;
    color:#555;
}

.featured-actions{
    display:flex;
    justify-content:center;
    gap:16px;
    margin-top:50px;
}

.btn-consult,
.btn-more{
    border-radius:30px;
    padding:13px 26px;
    color:#fff;
    text-transform:uppercase;
    font-weight:700;
    text-decoration:none;
}

.btn-consult{
    background:#c69b55;
}

.btn-more{
    background:#333;
}

/* Mobile */
@media(max-width:767px){
	
	h3{
		font-size: 16px!important;
	}
	
	.bscate-banner-left {
        padding-bottom: 50px;;
    }
    .featured-news-section{
        padding:35px 0;
    }

    .featured-news-section .section-title{
        font-size:34px;
        margin-bottom:25px;
    }

    .news-list{
        display:grid;
        grid-template-columns:repeat(2,1fr);
        gap:18px;
        margin-top:25px;
    }

    .news-item{
        display:block;
    }

    .news-thumb{
        width:100%;
        flex:none;
    }

    .news-thumb img{
        height:120px;
    }

    .news-info h4{
        font-size:17px;
        margin-top:10px;
    }

    .news-info p{
        font-size:15px;
    }

    .featured-actions{
        margin-top:35px;
    }
}

.content-servicesmain .doctors-section h2,
.content-servicesmain .banner-noidung{
	display: none;
}

.dv-hero {
	background: #EEF8FB;
}

.dv-breadcrumb {
    font-size: 16px;
    margin-bottom: 10px;
}

.dv-hero h1 {
    font-weight: 500;
    margin-bottom: 15px;
    color: #333;
}
.bscate-banner-left{
	max-width: 660px;
    margin-left: auto;
}

.bscate-banner-right img{
	width: 100%;
    object-fit: cover;
    object-position: center;
    height: 320px;
}

.dv-tagline {
        max-width: 620px;
    font-size: 19px;
    color: #444;
    margin-bottom: 20px;
    font-weight: 600;
}

.dv-buttons {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.dv-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 9px 18px;
    border-radius: 999px;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}

.dv-btn-gold {
        background: linear-gradient(0deg, rgb(116, 7, 10) 0%, rgb(228, 32, 36) 100%);
		position: relative;
		padding-left: 35px;
}

.dv-btn-gold::before {
    content: "";
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    background-image: url(assets/images/digital_wellbeing.png);
    background-size: contain;
    background-repeat: no-repeat;
}

.dv-btn-phone {
    background: #007f7c;
}


.dv-btn-phone i{
    margin-right: 5px;
}

.dv-page {
    padding: 35px 0;
}

.button:hover,
a.dv-btn:hover,
a.btn-dat-lich:hover,
a.hm-btn:hover,
a.bsln-btn-secondary:hover,
a.dv-btn-gold:hover
{
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 0px 100px inset;
    color: rgb(255, 255, 255);
    opacity: 1;
    outline: none;
}

.dv-sidebar {
    position:static;
    height:auto;
}

.dv-sidebar-normal{
    margin-bottom:24px;
}

.dv-search {
    margin-bottom: 18px;
}


.dv-search h3{
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 700;
}

.dv-sidebar-sticky{
    position:sticky;
    top:110px;
}

.dv-search form {
    display: flex;
    border: 1px solid #ddd;
    background: #fff;
    border-radius: 7px;
    overflow: hidden;
}

.dv-search input {
    flex: 1;
    border: 0;
    padding: 10px;
    font-size: 13px;
    outline: none;
}

.dv-search button {
    width: 42px;
    border: 0;
    background: #fff;
}

.dv-side-menu h4 {
    font-size: 13px;
    text-transform: uppercase;
    margin-bottom: 18px;
    color: #222;
}

.dv-side-group:first-child {
        background: #F8F8F8;
}


.dv-side-group {
	max-height: 500px;
	overflow-y: auto;
}

.dv-side-group h5 {
    font-size: 16px;
    text-transform: uppercase;
    color: #008b8b;
    font-family: SVN-Gilroy;
	padding: 10px 0;
	margin: 0;
}


.dv-side-child-title a{

    color: rgb(51, 72, 98) !important;
    font-weight: 700;
    padding-left: 10px !important;
}

.dv-side-group a {
    display: block;
    padding: 6px;
    color: #555;
    font-size: 16px;
    text-decoration: none;
	padding-left: 20px;
}

.dv-side-group a:hover {
    color: #252525;
}

.dv-sidebar-banner img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
    margin-bottom: 14px;
}

.dv-mobile-menu {
    display: none;
    margin-bottom: 20px;
}

.dv-mobile-menu select {
    width: 100%;
    border: 1px solid #ddd;
    border-radius: 999px;
    padding: 10px 15px;
    font-size: 14px;
    background: #fff;
}

.dv-group {
    margin-bottom: 42px;
}

.dv-group h2 {
    font-size: 27px;
    font-weight: 700;
    margin-bottom: 22px;
}

.dv-card {
    height: 100%;
    background: #F8F8F8;
    border-radius: 12px;
    overflow: hidden;
}

.dv-thumb {
    display: block;
}

.dv-thumb img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 9px;
    display: block;
	height: auto;
}

.dv-card-body {
    text-align: center;
    padding: 13px 12px 16px;
}

.dv-card-body h3 {
    margin: 10px 0;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 600;
}

.dv-card-body h3 a {
        color: #008786;
    font-family: SVN-Gilroy;
    text-decoration: none;
}

.dv-card-body p {
    min-height: 36px;
    margin-bottom: 0;
    font-size: 16px;
    line-height: 1.45;
    color: #555;
}


@media (max-width: 991px) {
    

    .dv-hero h1 {
        font-size: 28px;
    }

    .dv-tagline {
        font-size: 15px;
    }

    .dv-buttons {
        gap: 8px;
    }


    .dv-page {
        padding: 24px 0;
    }

    .dv-sidebar {
        display: none;
    }

    .dv-mobile-menu {
        display: block;
    }

    .dv-group {
        margin-bottom: 34px;
    }

    .dv-group h2 {
        font-size: 24px;
        margin-bottom: 18px;
    }

    .dv-main .row {
        --bs-gutter-x: 14px;
        --bs-gutter-y: 18px;
    }

    .dv-card {
        border-radius: 11px;
    }

    .dv-thumb {
        padding: 7px 7px 0;
    }

    .dv-card-body {
        padding: 11px 8px 14px;
    }

	

    .dv-more {
        font-size: 10px;
        min-width: 76px;
        min-height: 26px;
    }
}

@media (max-width: 575px) {
    .dv-page .container,
    .dv-hero .container {
        padding-left: 14px;
        padding-right: 14px;
    }

    .dv-group h2 {
        font-size: 22px;
    }


}

.dv-athq-box{
    margin-top:24px;
    padding:22px 18px 24px;
    border-radius:12px;
    background:linear-gradient(135deg,#1aa8ad,#08636b);
    color:#fff;
}

.dv-athq-head{
    display:flex;
    align-items:center;
    gap:12px;
    text-align:center;
}

.dv-athq-shield{
    width:55px;
    height:auto;
    object-fit:contain;
}

.dv-athq-head h3{
    margin:0;
    font-size:22px;
    line-height:1.1;
    font-weight:700;
}

.dv-athq-head p{
    margin:7px 0 0;
    font-size:13px;
}

.dv-athq-logo{
    display:block;
    width:88%;
    margin:12px auto 20px;
}

.dv-athq-item{
    display:flex;
    align-items:center;
    gap:14px;
    padding:10px 14px;
    margin-bottom:10px;
    border:1px solid rgba(255,255,255,.9);
    border-radius:999px;
}

.dv-athq-item img{
    width:52px;
    height:52px;
    flex:0 0 52px;
    object-fit:contain;
	margin: 0;
}

.dv-athq-item p{
    margin:0;
    font-size:13px;
    line-height:1.25;
    color:#fff;
}

@media(max-width:991px){
    .dv-athq-box{
        display:none;
    }
}

.nakisa-offer-box{
    background:linear-gradient(135deg,#11a7ab,#0a6b72);
    border-radius:12px;
    padding:18px;
}

.nakisa-offer-head{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:16px;
}

.nakisa-offer-head img{
    width:52px;
    height:52px;
    flex-shrink:0;
}

.nakisa-offer-head p{
    margin:0;
    color:#fff;
    font-size:15px;
    font-weight:700;
    line-height:1.35;
    text-transform:uppercase;
}

.nakisa-offer-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:50px;
    padding:12px 15px;
    background:#d4b06a;
    color:#0d4d56;
    font-size:16px;
    font-weight:700;
    text-transform:uppercase;
    text-decoration:none;
    border-radius:8px;
    transition:.3s;
}

.nakisa-offer-btn:hover{
    background:#c59d4d;
    color:#0d4d56;
}

@media(max-width:991px){
    .nakisa-offer-box{
        display:none;
    }
}

.nakisa-blog-widget{
    margin-top:24px;
}

.nakisa-widget-title{
    margin:0 0 16px;
    font-size:18px;
    font-weight:700;
    text-transform:uppercase;
    color:#222;
}

.nakisa-blog-card{
    display:block;
    text-decoration:none;
}

.nakisa-blog-thumb{
    overflow:hidden;
    border-radius:14px;
    margin-bottom:14px;
}

.nakisa-blog-thumb img{
    width:100%;
    display:block;
    aspect-ratio:4/3;
    object-fit:cover;
    transition:.4s;
}

.nakisa-blog-card:hover .nakisa-blog-thumb img{
    transform:scale(1.05);
}

.nakisa-blog-title{
    margin:0;
    font-size:18px;
    font-weight:700;
    line-height:1.4;
    color:#222;
}

.nakisa-blog-card:hover .nakisa-blog-title{
    color:#008b8b;
}

@media(max-width:991px){
    .nakisa-blog-widget{
        display:none;
    }
}

.dv-mobile-toolbar,
.dv-mobile-sidebar,
.dv-mobile-overlay{
    display:none;
}

@media(max-width:991px){

    .dv-sidebar{
        display:none;
    }

    .dv-mobile-toolbar{
        display:flex;
        align-items:center;
        gap:12px;
        margin-bottom:22px;
    }

    .dv-mobile-search{
        flex:1;
        min-width:0;
    }

    .dv-mobile-menu-btn{
        height:44px;
        border:0;
        border-radius:999px;
        padding:0 18px;
        background:#008b8b;
        color:#fff;
        font-weight:700;
        white-space:nowrap;
    }

    .dv-mobile-menu-btn span{
        margin-left:8px;
    }

    .dv-mobile-sidebar{
        display:block;
        position:fixed;
        top:0;
        left:-100%;
        width:320px;
        max-width:88vw;
        height:calc(100dvh - 54px);
        background:#fff;
        z-index:99999;
        overflow-y:auto;
        padding:24px 20px;
        transition:.3s ease;
    }

    .dv-mobile-sidebar.active{
        left:0;
    }

    .dv-mobile-overlay{
        position:fixed;
        inset:0;
        background:rgba(0,0,0,.45);
        z-index:99998;
    }

    .dv-mobile-overlay.active{
        display:block;
    }

    .dv-mobile-sidebar-header{
        display:flex;
        align-items:center;
        justify-content:space-between;
        margin-bottom:25px;
    }

    .dv-mobile-sidebar-header h3{
        margin:0;
        color:#008b8b;
        font-size:18px;
        font-weight:700;
        text-transform:uppercase;
    }

    .dv-mobile-close{
        border:0;
        background:transparent;
        color:#008b8b;
        font-size:34px;
        line-height:1;
    }

    .dv-mobile-group{
        margin-bottom:24px;
    }

    .dv-mobile-group h4{
        color:#008b8b;
        font-size:15px;
    }

    .dv-mobile-group a{
        display: block;
        padding: 5px;
        border-radius: 8px;
        color: #41506a;
        text-decoration: none;
        font-size: 15px;
    }
}

h2.featured-news-title a{
    color: #2d2d2d;
    font-size: 20px;
    text-transform: uppercase;
}

.news-cat-body{
    padding:40px 0 70px;
}

.featured-news-excerpt{
        font-size: 18px;
}


.news-cat-layout{
    display:grid;
    grid-template-columns:1fr 286px;
    gap:24px;
    align-items:start;
}

.news-cat-tabs{
    display:flex;
    gap:20px;
    margin-bottom:38px;
    overflow-x:auto;
    padding-bottom:4px;
}

.news-cat-tab{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:0 22px;
    border:1px solid #cfd4d8;
    border-radius:999px;
    background:#fff;
    color:#222;
    font-size:15px;
    font-weight:700;
    text-decoration:none;
}

.news-cat-tab.active{
    background:#00bfa5;
    border-color:#00bfa5;
    color:#fff;
    box-shadow:0 8px 18px rgba(0,191,165,.25);
}

.news-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:34px 20px;
}

.news-thumb{
    display:block;
    aspect-ratio:286/183;
    border-radius:9px;
    overflow:hidden;
    margin-bottom:18px;
}

.news-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.news-title{
    margin:0 0 14px;
    font-size:20px;
    line-height:1.25;
    font-weight:700;
}

.news-title a{
    color:#333;
    text-decoration:none;
}

.news-title a:hover{
    color:#008786;
}

.news-excerpt{
    font-size:18px;
    line-height:1.45;
    color:#222;
}

.news-right-sidebar{
    width:auto!important;
    min-width:0!important;
}

.featured-news-box{
	background: #F3F3F3;
    overflow: hidden;
    border-radius: 15px;
}


@media(min-width:992px){
    .news-right-sidebar{
        position:sticky;
        top:120px;
        height:fit-content;
    }

    .news-right-sidebar .bs-product-right-sticky{
        position:static!important;
    }
}

.news-pagination{
    margin-top:42px;
}

.news-pagination ul{
    display:flex;
    align-items:center;
    gap:8px;
    padding:0;
    margin:0;
    list-style:none;
}

.news-pagination a,
.news-pagination span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    border:1px solid #d8dde1;
    border-radius:8px;
    color:#263238;
    font-size:16px;
    font-weight:600;
    text-decoration:none;
    background:#fff;
}

.news-pagination .current{
    background:#008786;
    border-color:#008786;
    color:#fff;
}

.news-pagination .next,
.news-pagination .prev{
    border-radius:50%;
    background:#008786;
    border-color:#008786;
    color:#fff;
}

@media(max-width:991px){
    .news-cat-layout{
        grid-template-columns:1fr;
    }

    .news-right-sidebar{
        display:none;
    }

    .news-grid{
        grid-template-columns:repeat(2,1fr);
        gap:28px 14px;
    }

    .news-title{
        font-size:16px;
    }

    .news-excerpt{
        font-size:14px;
    }

    .news-cat-tabs{
        gap:10px;
        margin-bottom:28px;
    }

    .news-cat-tab{
        min-height:40px;
        padding:0 16px;
        font-size:14px;
    }
}

.news-cat-tabs.nav-tabs{
    display:flex;
    gap:20px;
    border-bottom:0;
    margin-bottom:38px;
    overflow-x:auto;
    flex-wrap:nowrap;
}

.news-cat-tabs .nav-item{
    flex:0 0 auto;
}

.news-cat-tabs .nav-link.news-cat-tab{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:0 22px;
    border:1px solid #cfd4d8;
    border-radius:999px;
    background:#fff;
    color:#222;
    font-size:15px;
    font-weight:700;
    text-decoration:none;
    white-space:nowrap;
}

.news-cat-tabs .nav-link.news-cat-tab.active{
    background:#00bfa5;
    border-color:#00bfa5;
    color:#fff;
    box-shadow:0 8px 18px rgba(0,191,165,.25);
}

.news-tab-pane{
    display:none;
}

.news-tab-pane.active{
    display:block;
}

.news-cat-tabs li{
	list-style: none;
}

.contact-section{
    padding:50px 0 40px;
}

.contact-layout{
    display:grid;
    grid-template-columns:300px 1fr;
    gap:80px;
    align-items:start;
}

.contact-info h1{
    font-family:'Beautique Display',serif;
    font-size:34px;
    font-weight:400;
    margin:0 0 35px;
    color:#3D3D3D;
}

.contact-info h4{
    font-size:13px;
    font-weight:700;
    margin:0 0 18px;
    color:#3D3D3D;
}

.contact-info p{
    display:flex;
    align-items:center;
    gap:12px;
    font-size:12px;
    line-height:1.5;
    margin:0 0 18px;
    color:#3D3D3D;
}

.contact-info p i{
    width:16px;
    color:#3D3D3D;
    font-size:15px;
}

.contact-social{
    display:flex;
    gap:12px;
}

.contact-social a{
    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#c79a55;
    color:#fff;
    border-radius:5px;
    text-decoration:none;
    font-size:16px;
}

.contact-map iframe{
    width:100%;
    height:285px;
    border:0;
    display:block;
}

.contact-bottom{
    margin-top:70px;
    text-align:center;
}

.contact-bottom p{
    font-size:14px;
    line-height:1.45;
    color:#3D3D3D;
    margin:0;
}

.contact-bottom strong{
    font-weight:700;
}

@media(max-width:767px){
    .contact-section{
        padding:30px 0;
    }

    .contact-layout{
        grid-template-columns:1fr;
        gap:30px;
    }

    .contact-info h1{
        font-size:30px;
        margin-bottom:24px;
    }

    .contact-map iframe{
        height:260px;
    }

    .contact-bottom{
        margin-top:35px;
    }

    .contact-bottom p{
        font-size:13px;
    }
}
@media (max-width: 768px) {
	    .formaction {
        display: flex;
        flex-wrap: wrap;
        gap: 15px;
    }
	
    .formaction > div {
        flex: 0 0 calc(50% - 8px);
        max-width: calc(50% - 8px);
        margin-bottom: 15px;
    }
}

.htkh-hero{
    background:#eaf5f8;
}


.htkh-breadcrumb{
    font-size:14px;
}

.htkh-breadcrumb p{
    margin:0;
}

.htkh-breadcrumb a{
    color:#333;
    text-decoration:none;
}

.htkh-breadcrumb .separator{
    margin:0 8px;
}

.dv-breadcrumb .last,
.htkh-breadcrumb .last{
    color:#008c89;
    font-weight:700;
}

.htkh-title{
    font-size: 33px;
    line-height: 1.15;
    color: #3d3d3d;
    margin: 0 0 22px;
}

.htkh-desc{
    font-size: 20px;
    color: #3d3d3d;
    text-align: justify;
}

.htkh-desc p{
    margin:0 0 12px;
}

.htkh-benefits{
    display:flex;
    flex-direction:column;
    gap:13px;
}

.htkh-benefits ul{
    
}

.htkh-benefits ul li {
    list-style: none;
    display: inline-block;
    padding: 15px 40px 15px 50px;
    background: #fff;
    border-radius: 15px;
    font-weight: 600;
    font-size: 15px;
    margin-right: 30px;
    position: relative;

}


.htkh-benefits ul li::before {
	background: url(assets/images/security-1.png);
	content:"";
    position:absolute;
    left:10px;
    top:50%;
    transform:translateY(-50%);
    width:32px;
    height:32px;

    background-repeat:no-repeat;
    background-position:center;
    background-size:contain;
}

.htkh-benefits ul li a{
    
}

@media (max-width: 768px) {
	.htkh-benefits ul li {
		margin-bottom: 15px;
        display: block;
        margin-right: 0;
	}
}

.video-customer-section{
    padding:60px 0;
}

.video-section-title{
    margin:0;
}

.video-view-all{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:48px;
    padding:0 28px;
    border-radius:50px;
    background:#008b8b;
    color:#fff;
    text-decoration:none;
    font-weight:600;
    transition:.3s;
	line-height: 48px;
}

.video-view-all:hover{
    color:#fff;
    background:#007575;
}

/* FEATURED */

.video-featured-card{
    background:#f3f3f3;
    border-radius:24px;
    overflow:hidden;
}

.video-featured-thumb{
    display:block;
    height:100%;
}

.video-featured-thumb iframe,
.video-featured-thumb video,
.video-featured-thumb img{
    width:100%;
    height:100%;
    min-height:420px;
    object-fit:cover;
    display:block;
}

.video-featured-info{
    height:100%;
    padding:50px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.video-featured-info h3{
    margin: 0 0 20px;
    font-size: 20px;
    line-height: 1.5;
}

.video-featured-info h3 a{
    color:#111;
    text-decoration:none;
}


.video-featured-info h3 a:hover{
    color:#008786;
}

.video-featured-info p{
    margin:0;
    color:#444;
    line-height:1.8;
    font-size:18px;
}

/* GRID */

.video-card{
    height:100%;
	padding: 0 15px;
}

.video-thumb{
    display:block;
    overflow:hidden;
    border-radius:16px;
    margin-bottom:18px;
	aspect-ratio:16/9;
    background:#f5f5f5;
}

.video-thumb img,
.video-thumb iframe,
.video-thumb video{
    display:block;
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
}

.video-thumb iframe{
    width:100% !important;
    height:100% !important;
}

.video-card:hover img{
    transform:scale(1.05);
}

.video-card h3{
        margin: 0;
    font-size: 18px;
    line-height: 1.5;
    font-weight: 700;
    text-align: center;
}

.video-card h3 a{
    color:#111;
    text-decoration:none;
}


.video-card h3 a:hover{
    color:#008786;
}

/* TABLET */

@media (max-width:991px){

    .video-section-title{
        font-size:30px;
    }

    .video-featured-info{
        padding:35px;
    }

    .video-featured-info h3{
        font-size:28px;
    }

    .video-featured-thumb iframe,
    .video-featured-thumb video,
    .video-featured-thumb img{
        min-height:320px;
    }
}

/* MOBILE */

@media (max-width:767px){

    .video-customer-section{
        padding:40px 0;
    }

    .video-customer-section .d-flex{
        gap:15px;
        flex-direction:column;
        align-items:flex-start !important;
    }

    .video-section-title{
        font-size:26px;
    }

    .video-view-all{
        height:42px;
        padding:0 20px;
        font-size:14px;
    }

    .video-featured-card{
        border-radius:18px;
    }

    .video-featured-thumb iframe,
    .video-featured-thumb video,
    .video-featured-thumb img{
        min-height:auto;
        aspect-ratio:16/9;
    }

    .video-featured-info{
        padding:24px 20px;
    }

    .video-featured-info h3{
        font-size:24px;
        margin-bottom:12px;
    }

    .video-featured-info p{
        font-size:15px;
        line-height:1.7;
    }

    .video-card h3{
        font-size:18px;
    }
}

.customer-story-section{
    background:#fff;
}

.customer-story-title{
    font-size:30px;
    color:#2b2b2b;
}

.customer-story-view-all{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:42px;
    padding:0 24px;
    border-radius:50px;
    background:#008c89;
    color:#fff;
    font-weight:700;
    text-decoration:none;
}

.customer-story-view-all:hover{
    color:#fff;
    background:#007572;
}

.customer-story-card{
    height:100%;
}

.customer-story-thumb{
    display:block;
    overflow:hidden;
    border-radius:10px;
    background:#f7f7f7;
    box-shadow:0 10px 28px rgba(0,0,0,.08);
}

.customer-story-thumb img,
.customer-story-thumb iframe,
.customer-story-thumb video{
    width:100%;
    aspect-ratio:1/1.25;
    object-fit:cover;
    display:block;
    border:0;
}

.customer-story-meta{
    color:#42aaa5;
    text-transform:uppercase;
    font-size:15px;
    line-height:1.25;
    font-weight:700;
    margin-bottom:16px;
}

.customer-story-name{
    font-size:18px;
    line-height:1.35;
    margin:0 0 18px;
}

.customer-story-name a{
    color:#111;
    text-decoration:none;
}

.customer-story-desc{
    font-size:18px;
    line-height:1.65;
    color:#333;
    margin:0;
}

@media (max-width:767px){
    .customer-story-section{
        padding:40px 0;
    }

    .customer-story-section .d-flex{
        align-items:flex-start !important;
        flex-direction:column;
        gap:16px;
    }

    .customer-story-title{
        font-size:26px;
    }

    .customer-story-card{
        align-items:flex-start !important;
    }

    .customer-story-meta{
        font-size:13px;
        margin-bottom:10px;
    }

    .customer-story-name{
        font-size:16px;
        margin-bottom:10px;
    }

    .customer-story-desc{
        font-size:14px;
        line-height:1.6;
    }
}


img {
    max-width: 100%;
}

.hm-banner {
    background: #e8f3f5;
}

.hm-banner-inner {
    max-width: 1360px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 50% 50%;
}

.hm-banner-text {
    padding: 46px 40px 46px 95px;
}

.hm-breadcrumb {
    font-size: 13px;
    margin-bottom: 18px;
}

.hm-breadcrumb a {
    color: #555;
    text-decoration: none;
}

.hm-breadcrumb a:last-child {
    color: #008b8b;
    font-weight: 700;
}

.hm-breadcrumb span {
    margin: 0 10px;
}

.hm-banner h1 {
    font-size: 34px;
    margin: 0 0 14px;
    font-weight: 700;
}

.hm-banner p {
    font-size: 17px;
    font-weight: 700;
    margin: 0 0 22px;
}

.hm-banner-btns {
    display: flex;
    gap: 12px;
}

.btn-red,
.btn-green {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 8px 20px;
    border-radius: 99px;
    font-size: 13px;
    font-weight: 700;
    color: #fff;
    text-decoration: none;
}

.btn-red {
    background: #c71920;
}

.btn-green {
    background: #008b8b;
}

.hm-banner-img img {
    width: 100%;
    height: 270px;
    object-fit: cover;
    display: block;
}

.hm-mobile-top {
    display: none;
}

.hm-page {
    padding: 42px 15px 35px;
}

.hm-wrap,
.hm-full {
    max-width: 1110px;
    margin: 0 auto;
}

.hm-wrap {
    display: grid;
    grid-template-columns: 215px 1fr;
    gap: 45px;
}

.hm-sidebar h3 {
    font-size: 17px;
    font-weight: 700;
    margin: 0 0 12px;
}

.hm-sidebar p {
    font-size: 13px;
    margin: 0 0 10px;
}

.hm-search {
    display: flex;
    height: 38px;
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 24px;
}

.hm-search input {
    flex: 1;
    border: 0;
    padding: 0 12px;
    outline: 0;
    font-size: 12px;
}

.hm-search button {
    width: 38px;
    border: 0;
    background: #fff;
    font-size: 18px;
}

.hm-side-menu {
    margin-bottom: 25px;
}

.hm-side-menu h4 {
    color: #008b8b;
    font-size: 13px;
    font-weight: 700;
    margin: 0 0 10px;
}

.hm-side-menu ul {
    list-style: none;
    margin: 0 0 18px;
    padding: 0 0 0 14px;
    border-left: 2px solid #008b8b;
}

.hm-side-menu li a {
    display: block;
    color: #333;
    text-decoration: none;
    font-size: 13px;
    padding: 4px 0;
}

.hm-side-menu > a {
    display: block;
    color: #222;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    margin-bottom: 12px;
}

.side-box,
.side-cta,
.side-gift,
.mobile-gift {
    border-radius: 8px;
    padding: 14px;
    text-align: center;
    margin-bottom: 16px;
}

.side-box,
.side-cta {
    background: #e4f3f3;
}

.side-box h4,
.side-cta h4 {
    font-size: 13px;
    color: #008b8b;
    font-weight: 700;
    margin: 0 0 10px;
}

.side-box p,
.side-cta p {
    font-size: 11px;
    margin-bottom: 10px;
}

.side-cta a {
    display: block;
    background: #c71920;
    color: #fff;
    text-decoration: none;
    padding: 8px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 700;
}

.side-gift,
.mobile-gift {
    background: #008b8b;
    color: #fff;
}

.side-gift strong,
.mobile-gift strong {
    display: block;
    font-size: 12px;
    margin-bottom: 10px;
}

.side-gift a,
.mobile-gift a {
    display: block;
    background: #f7d98a;
    color: #333;
    border-radius: 6px;
    padding: 8px;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}

.mobile-gift {
    display: none;
}

.side-title {
    font-size: 13px;
    margin: 22px 0 10px;
}

.side-img {
    width: 100%;
    border-radius: 8px;
    display: block;
}

.hm-main h2,
.hm-full h2 {
    font-size: 26px;
    font-weight: 700;
    margin: 0 0 24px;
}

.hm-main h2:not(:first-child) {
    margin-top: 42px;
}

.hm-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.hm-card {
    background: #f7f7f7;
    border-radius: 8px;
    overflow: hidden;
}

.hm-thumb {
    position: relative;
    aspect-ratio: 1 / 1;
    background: #dff5f3;
    overflow: hidden;
}

.hm-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.hm-thumb span {
    position: absolute;
    top: 10px;
    left: 10px;
    background: #df2630;
    color: #fff;
    z-index: 2;
    font-size: 11px;
    font-weight: 700;
    padding: 6px 10px;
    border-radius: 4px;
}

.hm-info {
    padding: 14px;
}

.hm-info h3 {
    font-size: 16px;
    line-height: 1.3;
    font-weight: 700;
    margin: 0 0 8px;
}

.hm-info p {
    font-size: 13px;
    line-height: 1.45;
    color: #555;
    margin: 0 0 13px;
}

.hm-actions {
    display: flex;
    gap: 8px;
}

.hm-actions a {
    flex: 1;
    text-align: center;
    text-decoration: none;
    border-radius: 99px;
    padding: 8px 10px;
    font-size: 12px;
    font-weight: 700;
}

.hm-actions a:first-child {
    background: #e5e5e5;
    color: #333;
}

.hm-actions a:last-child {
    background: #c6a166;
    color: #fff;
}

.hm-large-banner {
    max-width: 1110px;
    margin: 35px auto 45px;
    padding: 0 15px;
}

.hm-large-banner img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    border-radius: 8px;
    display: block;
}

.hm-bottom {
    padding: 0 15px 70px;
}

.hm-viewed {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    margin-bottom: 45px;
}

.hm-like {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}

.hm-like a {
    position: relative;
    height: 250px;
    display: block;
    overflow: hidden;
    border-radius: 8px;
    text-decoration: none;
}

.hm-like img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hm-like a::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,.55), transparent);
}

.hm-like span {
    position: absolute;
    left: 18px;
    bottom: 20px;
    z-index: 2;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
}

@media (max-width: 767px) {
    body {
        background: #fff;
    }

    .hm-banner-inner {
        display: flex;
        flex-direction: column;
    }

    .hm-banner-img {
        order: 1;
    }

    .hm-banner-img img {
        height: 155px;
        object-position: center;
    }

    .hm-banner-text {
        order: 2;
        padding: 22px 15px 24px;
    }

    .hm-banner h1 {
        font-size: 24px;
    }

    .hm-banner p {
        font-size: 14px;
        line-height: 1.4;
    }

    .hm-banner-btns {
        gap: 8px;
    }

    .btn-red,
    .btn-green {
        font-size: 11px;
        padding: 7px 12px;
        min-height: 34px;
    }

    .hm-mobile-top {
        display: block;
        padding: 16px 15px 0;
    }

    .hm-mobile-cats {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 8px;
        margin-bottom: 12px;
    }

    .hm-mobile-cats a {
        position: relative;
        height: 82px;
        border-radius: 8px;
        overflow: hidden;
        text-decoration: none;
        display: block;
    }

    .hm-mobile-cats img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .hm-mobile-cats a::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(to top, rgba(0,0,0,.6), transparent);
    }

    .hm-mobile-cats span {
        position: absolute;
        left: 5px;
        right: 5px;
        bottom: 6px;
        z-index: 2;
        color: #fff;
        font-size: 10px;
        font-weight: 700;
        text-align: center;
        line-height: 1.2;
    }

    .hm-mobile-search {
        display: flex;
        gap: 8px;
    }

    .hm-mobile-search input {
        flex: 1;
        height: 38px;
        border: 1px solid #ddd;
        border-radius: 7px;
        padding: 0 12px;
        outline: 0;
    }

    .hm-mobile-search button {
        height: 38px;
        border: 0;
        border-radius: 7px;
        background: #008b8b;
        color: #fff;
        font-weight: 700;
        padding: 0 14px;
    }

    .hm-page {
        padding: 28px 15px 20px;
    }

    .hm-wrap {
        display: block;
    }

    .hm-sidebar {
        display: none;
    }

    .hm-main h2,
    .hm-full h2 {
        font-size: 21px;
        margin-bottom: 18px;
    }

    .hm-main h2:not(:first-child) {
        margin-top: 34px;
    }

    .hm-grid,
    .hm-viewed,
    .hm-like {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .hm-card {
        border-radius: 7px;
    }

    .hm-info {
        padding: 9px;
    }

    .hm-info h3 {
        font-size: 13px;
    }

    .hm-info p {
        font-size: 11px;
        margin-bottom: 0;
    }

    .hm-actions {
        display: none;
    }

    .hm-thumb span {
        font-size: 10px;
        padding: 5px 8px;
    }

    .mobile-gift {
        display: block;
        margin-top: 24px;
    }

    .hm-large-banner {
        margin: 8px auto 34px;
    }

    .hm-large-banner img {
        height: 245px;
        object-position: center;
    }

    .hm-bottom {
        padding-bottom: 35px;
    }

    .hm-viewed {
        margin-bottom: 34px;
    }

    .hm-like a {
        height: 165px;
    }

    .hm-like span {
        font-size: 15px;
        left: 10px;
        right: 10px;
        bottom: 12px;
        text-align: center;
    }
}

.hm-side-menu ul {
    max-height: none;
}

.hm-side-menu li a {
    line-height: 1.35;
}

.hm-main .hm-grid {
    align-items: start;
}

@media (max-width: 767px) {
    .hm-banner-img img {
        height: 170px;
        object-position: center top;
    }

    .hm-page {
        padding-top: 24px;
    }

    .hm-grid {
        align-items: start;
    }

    .hm-card {
        min-height: auto;
    }

    .hm-main h2 {
        margin-top: 0;
    }

    .hm-main h2:not(:first-child) {
        margin-top: 32px;
    }

    .hm-thumb {
        aspect-ratio: 1 / 1;
    }

    .hm-info h3 {
        min-height: 32px;
    }
}

.tmkm-banner .hm-banner-img img {
    object-position: center top;
}

.hm-side-menu ul {
    max-height: none;
}

.hm-side-menu li a {
    line-height: 1.35;
}

.hm-large-banner picture,
.hm-large-banner img {
    width: 100%;
    display: block;
}

@media (max-width: 767px) {
    .tmkm-banner .hm-banner-img img {
        height: 170px;
        object-position: center top;
    }

    .hm-main h2 {
        font-size: 21px;
    }

    .hm-grid {
        align-items: start;
    }

    .hm-info h3 {
        min-height: 32px;
    }
}

/* ===== LAYOUT ===== */
.bs-archive-content > .row{
    display:flex;
    gap:30px;
}

.bs-sidebar{
    width:280px;
}

#bs-product-main{
    flex:1;
}

/* ===== BANNER ===== */
.bs-archive-banner{
    background:#edf2f4;
    border-radius:12px;
    overflow:hidden;
    margin-bottom:30px;
}

.bs-archive-banner img{
    width:100%;
    display:block;
}

/* ===== SIDEBAR ===== */
.bs-sidebar{
    position:sticky;
    top:100px;
}

.bs-sidebar-cate{
    background:#fff;
    border-radius:12px;
    padding:20px;
    margin-bottom:20px;
}

.parent-name{
    font-weight:700;
    color:#222;
}

.child-title{
    margin-top:15px;
    font-weight:600;
}

.post-list{
    list-style:none;
    padding-left:0;
}

.post-list li{
    margin-bottom:8px;
}

.post-list a{
    font-size:14px;
    color:#666;
}

/* ===== PRODUCT GRID ===== */

.child-cat-title{
    font-size:32px;
    font-weight:700;
    margin-bottom:25px;
}

.product-grid{
    row-gap:25px;
}

.bs-product-card{
    background:#fff;
    border-radius:14px;
    overflow:hidden;
    box-shadow:0 4px 12px rgba(0,0,0,.05);
    height:100%;
}

.thumb-square{
    position:relative;
    aspect-ratio:1/1;
    overflow:hidden;
}

.thumb-square img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:.3s;
}

.bs-product-card:hover img{
    transform:scale(1.05);
}

.bs-product-card-info{
    padding:15px;
}

.bs-product-card-info h3{
    font-size:18px;
    line-height:1.4;
    margin-bottom:8px;
}

.bs-product-card-info p{
    font-size:14px;
    color:#666;
    min-height:42px;
}

/* ===== BUTTONS ===== */

.actions{
    display:flex;
    gap:10px;
    margin-top:15px;
}

.btn-chi-tiet,
.btn-dat-lich{
    border-radius: 999px;
    display: inline-block;
    align-items: center;
    font-size: 16px;
    text-decoration: none;
    width: max-content;
    padding: 0 15px;
    min-width: 125px;
    line-height: 40px;
    font-weight: 500;
}

.btn-chi-tiet{
    background:#f3f3f3;
    color:#333;
	margin-right: 10px;
}

.btn-dat-lich{
    background:#c9a76b;
    color:#fff;
}

.btn-dat-lich img{
    width:14px;
    margin-right:6px;
}

/* ===== BADGE ===== */

.bs-featured-badge{
    position:absolute;
    top:10px;
    left:10px;
    z-index:10;
    background:#ef233c;
    color:#fff;
    padding:6px 10px;
    border-radius:999px;
    font-size:12px;
    font-weight:600;
}

/* ===== FOOTER BLOCK ===== */

.bs-archive-ft h2{
    font-size:30px;
    margin-bottom:20px;
}

.row-bs-cat-card .bs-cat-card{
    display:block;
    border-radius:16px;
    overflow:hidden;
    position:relative;
}

.row-bs-cat-card .thumb-square{
    aspect-ratio:1/1.15;
}

.row-bs-cat-card h3{
    position:absolute;
    left:15px;
    right:15px;
    bottom:15px;
    color:#fff;
    font-size:22px;
    font-weight:700;
}

/* ===== MOBILE ===== */

@media(max-width:849px){

    .bs-archive-content > .row{
        display:block;
    }

    .bs-sidebar{
        width:100%;
        position:static;
        margin-bottom:20px;
    }

    .hide-on-mobile{
        display:none !important;
    }

    .hide-on-desktop{
        display:block !important;
    }

    .child-cat-title{
        font-size:24px;
        margin-bottom:15px;
    }

    .product-grid{
        row-gap:15px;
    }

    .bs-product-card-info{
        padding:10px;
    }

    .bs-product-card-info h3{
        font-size:15px;
    }

    .bs-product-card-info p{
        font-size:12px;
        min-height:auto;
    }

    .actions{
        flex-direction:column;
        gap:8px;
    }

    .btn-chi-tiet,
    .btn-dat-lich{
        height:36px;
        font-size:12px;
    }

    .row-bs-cat-card .thumb-square{
        aspect-ratio:1/1;
    }

    .row-bs-cat-card h3{
        font-size:16px;
    }
}

.hm-side-menu ul {
    max-height: none;
}

.hm-side-menu li a {
    line-height: 1.35;
}

.hm-main .hm-grid {
    align-items: start;
}

.hm-main .hm-card {
    height: auto;
}

.hm-large-banner picture {
    display: block;
    width: 100%;
}

.hm-large-banner picture img {
    width: 100%;
    display: block;
}

@media (max-width: 767px) {
    .hm-banner-img img {
        height: 170px;
        object-position: center top;
    }

    .hm-page {
        padding-top: 24px;
    }

    .hm-main h2 {
        font-size: 21px;
        margin-bottom: 18px;
    }

    .hm-main h2:not(:first-child) {
        margin-top: 32px;
    }

    .hm-grid {
        align-items: start;
    }

    .hm-thumb {
        aspect-ratio: 1 / 1;
    }

    .hm-info h3 {
        min-height: 32px;
    }

    .hm-info p {
        min-height: auto;
    }

    .hm-mobile-cats span {
        font-size: 10px;
    }
}

.kqtt-page {
    color: #222;
}

.kqtt-page a {
    text-decoration: none;
}

.kqtt-container {
    max-width: 1110px;
    margin: 0 auto;
    padding: 0 15px;
}

.kqtt-hero {
    background: #e4eff2;
    padding: 35px 0 45px;
}

.kqtt-breadcrumb {
    font-size: 13px;
    margin-bottom: 28px;
    color: #555;
}

.kqtt-breadcrumb a {
    color: #555;
}

.kqtt-breadcrumb span {
    margin: 0 8px;
}

.kqtt-breadcrumb strong {
    color: #008786;
}

.kqtt-hero-content {
    display: grid;
    grid-template-columns: 1.4fr 1fr;
    gap: 35px;
    align-items: end;
}

.kqtt-hero-text h1 {
    font-size: 38px;
    line-height: 1.25;
    margin: 0 0 18px;
    font-weight: 700;
}

.kqtt-hero-text p {
    font-size: 16px;
    line-height: 1.7;
    margin: 0 0 10px;
}

.kqtt-hero-icons {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}

.kqtt-icon-item {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
    border-radius: 10px;
    padding: 12px 16px;
}

.kqtt-icon-item img {
    width: 32px;
    height: 32px;
    object-fit: contain;
}

.kqtt-icon-item strong {
    font-size: 15px;
}

.kqtt-section,
.kqtt-story-section,
.kqtt-gallery-section {
    padding: 45px 0 0;
}

.kqtt-section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 22px;
}

.kqtt-section-head h2 {
    font-size: 28px;
    line-height: 1.3;
    margin: 0;
    font-weight: 700;
}

.kqtt-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 8px 22px;
    border-radius: 99px;
    background: #008786;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
}

.kqtt-video-featured {
    display: grid;
    grid-template-columns: 50% 1fr;
    gap: 24px;
    background: #f7f7f7;
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 24px;
}

.kqtt-video-img img {
    width: 100%;
    height: 100%;
    min-height: 320px;
    object-fit: cover;
    display: block;
}

.kqtt-video-info {
    padding: 28px 28px 28px 0;
}

.kqtt-video-info span,
.kqtt-post-card span,
.kqtt-story-card span {
    display: block;
    color: #008786;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.kqtt-video-info h3 {
    font-size: 26px;
    line-height: 1.35;
    margin: 0 0 12px;
}

.kqtt-video-info h3 a,
.kqtt-post-card h3 a,
.kqtt-story-card h3 a {
    color: #222;
}

.kqtt-video-info p {
    font-size: 15px;
    line-height: 1.6;
    color: #555;
    margin: 0;
}

.kqtt-video-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.kqtt-post-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
}

.kqtt-post-card img {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    display: block;
    border-radius: 12px;
}

.kqtt-post-card span {
    margin-top: 12px;
}

.kqtt-post-card h3 {
    font-size: 16px;
    line-height: 1.45;
    margin: 0;
    font-weight: 700;
}

.kqtt-story-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.kqtt-story-card {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 18px;
    align-items: start;
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
}

.kqtt-story-card img {
    width: 150px;
    height: 150px;
    object-fit: cover;
    display: block;
    border-radius: 12px;
}

.kqtt-story-card h3 {
    font-size: 18px;
    line-height: 1.4;
    margin: 0 0 8px;
}

.kqtt-story-card p {
    font-size: 14px;
    line-height: 1.55;
    color: #555;
    margin: 0;
}

.kqtt-gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
}

.kqtt-gallery-grid img {
    width: 100%;
    aspect-ratio: 288 / 152;
    object-fit: cover;
    border-radius: 10px;
    display: block;
}

@media (max-width: 767px) {
    .kqtt-hero {
        padding: 24px 0 30px;
    }

    .kqtt-breadcrumb {
        margin-bottom: 18px;
    }

    .kqtt-hero-content {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .kqtt-hero-text h1 {
        font-size: 26px;
    }

    .kqtt-hero-text p {
        font-size: 14px;
    }

    .kqtt-hero-icons {
        gap: 8px;
    }

    .kqtt-icon-item {
        padding: 10px 12px;
    }

    .kqtt-section,
    .kqtt-story-section,
    .kqtt-gallery-section {
        padding-top: 32px;
    }

    .kqtt-section-head {
        margin-bottom: 16px;
    }

    .kqtt-section-head h2 {
        font-size: 22px;
    }

    .kqtt-btn {
        display: none;
    }

    .kqtt-video-featured {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .kqtt-video-img img {
        min-height: auto;
        aspect-ratio: 16 / 9;
    }

    .kqtt-video-info {
        padding: 16px;
    }

    .kqtt-video-info h3 {
        font-size: 19px;
    }

    .kqtt-video-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .kqtt-story-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .kqtt-story-card {
        grid-template-columns: 105px 1fr;
        gap: 12px;
    }

    .kqtt-story-card img {
        width: 105px;
        height: 105px;
    }

    .kqtt-story-card h3 {
        font-size: 15px;
    }

    .kqtt-story-card p {
        display: none;
    }

    .kqtt-gallery-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }
}

.news-page {
    color: #222;
    padding: 30px 0 60px;
}

.news-page a {
    color: inherit;
    text-decoration: none;
}

.news-container {
    max-width: 1110px;
    margin: 0 auto;
    padding: 0 15px;
}

.news-breadcrumb {
    color: #555;
    margin-bottom: 22px;
	font-size: 16px;
}

.news-breadcrumb a {
    color: #555;
}

.news-breadcrumb span {
    margin-left: 8px;
}


.news-breadcrumb span.last {
    color: #008786;
    font-weight: 700;
}

.news-featured {
    display: grid;
    grid-template-columns: 45% 1fr;
    gap: 34px;
    align-items: center;
    margin-bottom: 45px;
}

.news-featured-img img {
    width: 100%;
    border-radius: 12px;
    display: block;
}

.news-featured-content h3,
.news-section-head h3,
.news-category-head h3 {
    font-size: 26px;
    font-weight: 700;
    margin: 0;
}

.news-featured-content h2 {
    font-size: 30px;
    line-height: 1.25;
    margin: 12px 0;
    font-weight: 700;
}

.news-featured-content p {
    font-size: 15px;
    line-height: 1.6;
    color: #555;
    margin: 0;
}

.news-section-head,
.news-category-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 22px;
}

.news-search {
    width: 320px;
    height: 42px;
    display: flex;
    border: 1px solid #ddd;
    border-radius: 999px;
    overflow: hidden;
    background: #fff;
}

.news-search input {
    flex: 1;
    border: 0;
    outline: 0;
    padding: 0 15px;
    font-size: 14px;
}

.news-search button {
    width: 48px;
    border: 0;
    background: transparent;
    cursor: pointer;
    font-size: 18px;
}

.news-layout {
    display: grid;
    grid-template-columns: 1fr 330px;
    gap: 30px;
    margin-bottom: 45px;
}

.news-card-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.news-card {
    background: #fff;
}

.news-card-img img {
    width: 100%;
    aspect-ratio: 300 / 194;
    object-fit: cover;
    border-radius: 12px;
    display: block;
}

.news-card-body {
    padding-top: 12px;
}

.news-cat {
    display: inline-flex;
    background: #008786;
    color: #fff !important;
    padding: 5px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 10px;
}

.news-card h4,
.news-list-body h4 {
    font-size: 18px;
    line-height: 1.4;
    font-weight: 700;
    margin: 0 0 8px;
}

.news-card p,
.news-list-body p {
    font-size: 18px;
    line-height: 1.55;
    color: #555;
    margin: 0;
}

.news-sidebar-banner img {
    width: 100%;
    border-radius: 14px;
    display: block;
}

.news-category-section {
    margin-top: 42px;
}

.news-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 7px 20px;
    border-radius: 999px;
    background: #008786;
    color: #fff !important;
    font-size: 14px;
    font-weight: 700;
}

.news-list-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 34px;
}

.news-list-item {
    display: grid;
    grid-template-columns: 42% 1fr;
    gap: 16px;
    align-items: start;
}

.news-list-img img {
    width: 100%;
    aspect-ratio: 300 / 194;
    object-fit: cover;
    border-radius: 10px;
    display: block;
}

.news-list-body .news-cat {
    margin-bottom: 8px;
}

@media (max-width: 767px) {
    .news-page {
        padding-top: 20px;
    }

    .news-featured {
        grid-template-columns: 1fr;
        gap: 18px;
        margin-bottom: 34px;
    }

    .news-featured-content h3,
    .news-section-head h3,
    .news-category-head h3 {
        font-size: 22px;
    }

    .news-featured-content h2 {
        font-size: 24px;
    }

    .news-section-head,
    .news-category-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

    .news-search {
        width: 100%;
    }

    .news-layout {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .news-card-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .news-list-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .news-list-item {
        grid-template-columns: 38% 1fr;
        gap: 12px;
    }

    .news-card h4,
    .news-list-body h4 {
        font-size: 15px;
    }

    .news-card p,
    .news-list-body p {
        font-size: 13px;
    }

    .news-more {
        display: none;
    }
}

.contact-page {
    color: #222;
	font-size: 18px;
}

.contact-page a {
    color: inherit;
    text-decoration: none;
}

.contact-container {
    max-width: 1110px;
    margin: 0 auto;
    padding: 0 15px;
}

.contact-hero {
    background: #e4eff2;
    overflow: hidden;
}

.contact-hero-inner {
    position: relative;
    min-height: 350px;
    display: flex;
    align-items: center;
}

.contact-hero-content {
    width: 45%;
    position: relative;
    z-index: 2;
}

.contact-breadcrumb {
    font-size: 13px;
    color: #555;
    margin-bottom: 18px;
}

.contact-breadcrumb span {
    margin: 0 8px;
}

.contact-breadcrumb strong {
    color: #008786;
}

.contact-hero h1 {
    font-size: 34px;
    line-height: 1.25;
    font-weight: 700;
    margin: 0;
}

.contact-hero-img {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 42%;
}

.contact-hero-img img,
.contact-hero-mobile-img img {
    width: 100%;
    display: block;
}

.contact-hero-mobile-img {
    display: none;
}

.contact-intro {
    padding: 45px 0;
}

.contact-intro-text {
    max-width: 760px;
    margin: 0 auto 35px;
    text-align: center;
}

.contact-intro-text h2 {
    font-size: 30px;
    font-weight: 700;
    margin: 0 0 14px;
}

.contact-intro-text p {
    font-size: 15px;
    line-height: 1.65;
    color: #555;
    margin: 0 0 10px;
}

.contact-form-wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 35px;
    align-items: stretch;
}

.contact-form-img img {
    width: 100%;
    height: 100%;
    min-height: 380px;
    object-fit: cover;
    border-radius: 14px;
    display: block;
}

.contact-form-box {
    background: #008786;
    border-radius: 14px;
    padding: 35px;
    color: #fff;
}

.contact-form-title h2 {
    font-size: 30px;
    line-height: 1.25;
    font-weight: 700;
    margin: 0 0 8px;
}

.contact-form-title p {
    font-size: 16px;
    line-height: 1.45;
    margin: 0 0 24px;
}

.contact-form {
    display: grid;
    gap: 14px;
}

.contact-form input,
.contact-form select {
    width: 100%;
    height: 44px;
    border: 0;
    outline: 0;
    border-radius: 999px;
    padding: 0 18px;
    font-size: 14px;
    background: #fff;
    color: #333;
}

.contact-form button {
    height: 44px;
    border: 0;
    border-radius: 999px;
    background: #c49a5d;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
}

.contact-info-section {
    padding: 35px 0;
}

.contact-info-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.contact-info-item {
    display: flex;
    align-items: center;
    gap: 14px;
    background: #f4f8f9;
    border-radius: 14px;
    padding: 18px;
}

.contact-info-item img {
    width: 44px;
    height: 44px;
    object-fit: contain;
    flex: 0 0 auto;
}

.contact-info-item h3 {
    font-size: 17px;
    font-weight: 700;
    margin: 0 0 5px;
}

.contact-info-item p {
    font-size: 14px;
    line-height: 1.4;
    margin: 0;
    color: #555;
}

.contact-social-icons {
    display: flex;
    gap: 8px;
    flex: 0 0 auto;
}

@media (max-width: 767px) {
    .contact-hero-mobile-img {
        display: block;
    }

    .contact-hero-inner {
        min-height: auto;
        display: block;
        padding-top: 22px;
        padding-bottom: 28px;
    }

    .contact-hero-content {
        width: 100%;
    }

    .contact-hero-img {
        display: none;
    }

    .contact-hero h1 {
        font-size: 26px;
    }

    .contact-intro {
        padding: 35px 0;
    }

    .contact-intro-text h2 {
        display: none;
    }

    .contact-intro-text {
        margin-bottom: 24px;
    }

    .contact-intro-text p {
        font-size: 14px;
    }

    .contact-form-wrap {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .contact-form-img img {
        min-height: auto;
        aspect-ratio: 546 / 380;
    }

    .contact-form-box {
        padding: 24px 18px;
    }

    .contact-form-title h2 {
        font-size: 24px;
    }

    .contact-form-title p {
        font-size: 14px;
    }

    .contact-info-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .contact-info-section {
        padding-top: 15px;
    }
}

/* ===== SINGLE SERVICE DETAIL - ACF PAGE ===== */

.bs-product-header {
    min-height: 300px;
    background: linear-gradient(0deg, #fff0 0%, rgb(0 135 134 / 15%) 100%);
    display: flex;
    align-items: center;
}

.bs-product-header-inner {
    max-width: 1230px;
    width: 100%;
    margin: 0 auto;
    padding: 0 20px;
}

.bs-breadcrumb {
    font-size: 14px;
    margin-bottom: 18px;
    color: #3D3D3D;
}

.bs-breadcrumb a {
    color: #3D3D3D;
    text-decoration: none;
}

.bs-breadcrumb b a,
.bs-breadcrumb .last,
.bs-breadcrumb .rank-math-breadcrumb .last {
    color: #008786;
    font-weight: 700;
}

.bs-product-title {
    max-width: 980px;
    font-size: 30px;
    line-height: 1.25;
    font-weight: 700;
    margin: 0 0 10px;
    color: #3D3D3D;
}

.bs-product-short-desc {
    max-width: 980px;
    font-size: 20px;
    line-height: 1.45;
    font-weight: 700;
    color: #3D3D3D;
    margin-bottom: 8px;
}

.bs-product-date {
    display: flex;
    align-items: center;
    gap: 20px;
    font-size: 16px;
    color: #3D3D3D;
}

.bs-product-share {
    position: relative;
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
    color: #008786;
}

.bs-product-share img {
    width: 18px;
    height: 18px;
    object-fit: contain;
}

.bs-product-share span {
    color: #008786;
}

.share-buttons {
    display: none;
    position: absolute;
    top: 28px;
    left: 0;
    z-index: 20;
    background: #fff;
    box-shadow: 0 8px 20px rgba(0,0,0,.12);
    border-radius: 8px;
    overflow: hidden;
    min-width: 150px;
}

.bs-product-share:hover .share-buttons {
    display: block;
}

.share-btn {
    display: block;
    padding: 8px 12px;
    font-size: 13px;
    color: #3D3D3D;
    text-decoration: none;
}

.share-btn:hover {
    background: #E4EFF2;
}

/* ===== BODY LAYOUT - 3 COLUMNS ===== */

.bs-product-body {
    padding-top: 30px;
    padding-bottom: 60px;
}

.bs-product-body.container-fluid {
    padding-left: 0;
    padding-right: 0;
}

.bs-product-sidebar,
.bs-product-right-sidebar {
    min-width: 0;
}

.bs-product-content {
    min-width: 0;
}

.bs-product-content table{
    width:100%;
    border:2px solid #B7B7B7;
    border-radius:24px;
    border-collapse:separate;
    border-spacing:0;
    overflow:hidden;
    background:#fff;
	margin: 15px 0 20px;
}

.bs-product-content table tbody tr:first-child td,
.bs-product-content table thead th{
    background: #EAF6FA;
    padding: 10px 0 !important;
    color: #444;
    text-align: center;
}

.bs-product-content table tbody td{
    line-height: 30px;
    padding: 0 10px;
}

.bs-product-content table tbody tr:not(:last-child) td{
    border-bottom:1px solid #f2f2f2;
}

/* Bo góc */
.bs-product-content table thead th:first-child{
    border-top-left-radius:22px;
}

.bs-product-content table thead th:last-child{
    border-top-right-radius:22px;
}

.bs-product-content table tbody tr:last-child td:first-child{
    border-bottom-left-radius:22px;
}

.bs-product-content table tbody tr:last-child td:last-child{
    border-bottom-right-radius:22px;
}
.bs-product-content h2 {
    font-size: 20px;
    line-height: 1.35;
    font-weight: 600;
    color: #3D3D3D;
    margin: 0 0 20px;
}

.bs-product-content p,
.bs-product-content li {
    font-size: 17px;
    line-height: 1.65;
    color: #3D3D3D;
}

.bs-product-content li {
    list-style: inherit;
}


.bs-product-content h2 {
    font-size: 20px;
    line-height: 1.35;
    font-weight: 600;
    color: #3D3D3D;
    margin: 0 0 20px;
}

.bs-product-content p,
.bs-product-content li {
    font-size: 17px;
    line-height: 1.65;
    color: #3D3D3D;
}

.bs-product-content img {
    margin: 0 auto;
	display: block
}

.bs-product-content li {
    list-style: inherit;
}

/* ===== SIDEBAR ===== */

.bs-product-sidebar-box-text {
    display: flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(90.95deg, #D8BF86 -6.37%, #FEF1AD 43.71%, #D8BF86 108.1%);
    padding: 12px;
    border-radius: 12px;
}

.bs-product-sidebar-box-text img {
    width: 32px;
    height: 32px;
    object-fit: contain;
}

.bs-product-sidebar-box-text p {
    font-size: 16px;
    line-height: 1.4;
    font-weight: 700;
    margin: 0;
    color: #3D3D3D;
}

.bs-product-sidebar-bs-thuc-hien,
.bs-product-sidebar-dia-diem-thuc-hien {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #ECEDEF;
    border-radius: 12px;
    padding: 12px;
    margin-top: 12px;
}

.bs-product-sidebar-dia-diem-thuc-hien {
    margin-bottom: 12px;
}

.bs-product-sidebar-bs-thuc-hien img,
.bs-product-sidebar-dia-diem-thuc-hien img {
    width: 32px;
    height: 32px;
    border-radius: 100%;
    object-fit: cover;
    flex-shrink: 0;
}

.bs-product-sidebar-bs-thuc-hien img {
    background-color: #008786;
}

.bs-product-sidebar-bs-thuc-hien-right p,
.bs-product-sidebar-dia-diem-thuc-hien p {
    margin: 0;
    font-size: 14px;
    line-height: 1.4;
}

/* ===== MỤC LỤC STICKY ===== */

.bs-product-right-widget >p{
	display: none;
}

.bs-product-sidebar-muc-luc {
    background: #F2F2F7;
    border-radius: 12px;
    padding: 24px;
    font-size: 16px;

    position: sticky;
    top: 170px;
}

.bs-product-sidebar-muc-luc::-webkit-scrollbar {
    width: 5px;
}

.bs-product-sidebar-muc-luc::-webkit-scrollbar-thumb {
    background: #cfd8dc;
    border-radius: 20px;
}

.bs-product-sidebar-muc-luc .toc-title {
    font-size: 24px;
    font-weight: 700;
    margin: 0 0 24px;
}

.bs-product-sidebar-muc-luc ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.bs-product-sidebar-muc-luc li {
    margin-bottom: 16px;
}

.bs-product-sidebar-muc-luc a {
    display: block;
    color: #3D3D3D;
    text-decoration: none;
    font-size: 16px;
    line-height: 20px;
}

.bs-product-sidebar-muc-luc a:hover,
.bs-product-sidebar-muc-luc a.active {
    color: #008B8B;
}

/* ===== ACCORDION SINGLE ===== */

.acc-single {
    margin-bottom: 20px;
}

.acc-single .accordion-item {
    background: #E4EFF2;
    border-radius: 12px;
    overflow: hidden;
}

.acc-single .accordion-title {
    position: relative;
    margin: 0;
    padding: 18px 52px 18px 24px;
    cursor: pointer;
    background: #E4EFF2;
}

.acc-single .accordion-title span {
    font-size: 20px;
    line-height: 1.35;
    font-weight: 700;
    color: #3D3D3D;
}

.acc-single .accordion-inner {
    padding: 0 24px 22px;
}

.acc-single .accordion-title .toggle {
    position: absolute;
    right: 22px;
    top: 50%;
    width: 18px;
    height: 18px;
    transform: translateY(-50%);
    border: 0;
    background: transparent;
    font-size: 0;
    padding: 0;
    cursor: pointer;
}

.acc-single .accordion-title .toggle::before,
.acc-single .accordion-title .toggle::after {
    content: "";
    position: absolute;
    background: #008786;
    border-radius: 2px;
}

.acc-single .accordion-title .toggle::before {
    width: 16px;
    height: 2px;
    top: 8px;
    left: 1px;
}

.acc-single .accordion-title .toggle::after {
    width: 2px;
    height: 16px;
    top: 1px;
    left: 8px;
}

.acc-single .accordion-title.active .toggle::after {
    display: none;
}

/* ===== PRICE BOX ===== */

.row-gia-dv {
    margin-bottom: 30px;
}

.col-gia-uu-dai > .col-inner,
.col-gia-dv-goc > .col-inner {
    background: #f9f9f9;
    border-radius: 12px;
    padding: 20px;
}

.col-gia-dv-goc > .col-inner {
    background: #ECEDEF;
}

.icon-box-dv-toi-uu {
    width: fit-content;
    margin: 0 auto;
    background: #D5D9DA;
    padding: 4px 8px;
    border-radius: 70px;
    font-size: 12px;
}

.col-gia-uu-dai .text-price-dv p {
    font-size: 20px!important;
    font-weight: 700;
    margin: 12px 0;
    line-height: 1;
    color: #E42024!important;
}

.btn-dat-lich-single {
    margin: 0;
    line-height: 1;
    background: #3D3D3D;
    color: #fff !important;
    font-size: 14px;
    border-radius: 30px;
    padding: 8px 14px;
}

/* ===== GALLERY ===== */

.bs-service-gallery {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    margin-bottom: 32px;
}

.bs-service-gallery img {
    width: 100%;
    display: block;
    border: 1px solid #008786;
    border-radius: 8px;
}

/* ===== TABLE ===== */

.text-table {
    border: solid 1px #D5D9DA;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 24px;
}

.text-table table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
}

.text-table td {
    border: solid 1px #D5D9DA;
    font-size: 16px;
    padding: 15px 5px;
    text-align: center;
}

.text-table .thead,
.text-table tr:first-child {
    background: #E4EFF2;
}

/* ===== FAQ ===== */

.accordion.acc-faq-single {
    overflow: hidden;
    margin-bottom: 32px;
}

.acc-faq-single .accordion-item {
    margin: 0;
    border-bottom: solid 1px #D5D9DA;
    background: #fff;
}

.acc-faq-single .accordion-item:last-child {
    border-bottom: none;
}

.acc-faq-single .accordion-title {
    position: relative;
    margin: 0;
    padding: 16px 52px 16px 18px;
    background: #fff;
    cursor: pointer;
}

.acc-faq-single .accordion-title span {
    font-size: 16px;
    color: #3D3D3D;
}

.acc-faq-single .accordion-title.active {
    background: #E4EFF2;
}

.acc-faq-single .accordion-title.active span {
    color: #008786;
}

.acc-faq-single .accordion-inner {
    padding: 0 18px 18px;
}

.acc-faq-single .accordion-title .toggle {
    position: absolute;
    right: 20px;
    top: 50%;
    width: 16px;
    height: 16px;
    transform: translateY(-50%);
    border: 0;
    background: transparent;
    font-size: 0;
    padding: 0;
}

.acc-faq-single .accordion-title .toggle::before,
.acc-faq-single .accordion-title .toggle::after {
    content: "";
    position: absolute;
    background: #008786;
}

.acc-faq-single .accordion-title .toggle::before {
    width: 14px;
    height: 2px;
    top: 7px;
    left: 1px;
}

.acc-faq-single .accordion-title .toggle::after {
    width: 2px;
    height: 14px;
    top: 1px;
    left: 7px;
}

.acc-faq-single .accordion-title.active .toggle::after {
    display: none;
}

/* ===== CTA ===== */

.bs-product-content-dat-lich {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    background: #008786;
    padding: 12px 24px;
    border-radius: 24px;
    margin: 30px 0 77px;
}

.bs-product-content-dat-lich p {
    font-size: 24px;
    color: #fff;
    font-weight: 700;
    margin: 0;
}

.bs-product-content-dat-lich a {
    font-size: 16px;
    color: #fff !important;
    font-weight: 700;
    background: linear-gradient(0deg, #74070A 0%, #E42024 100%);
    padding: 12px 20px;
    border-radius: 30px;
    line-height: 1;
    text-decoration: none;
}

/* ===== DOCTOR + LOCATION ===== */

p.bs-product-title- {
    font-size: 30px;
    font-weight: 600;
    margin: 0 0 20px;
}

.bs-product-content-bs-thuc-hien {
    display: flex;
    gap: 20px;
    align-items: center;
    background: #ECEDEF;
    padding: 20px;
    border-radius: 12px;
    margin: 20px 0;
}

.bs-product-content-bs-thuc-hien img {
    flex-shrink: 0;
    width: 160px;
    height: 160px;
    object-fit: cover;
    background: #fff;
    border-radius: 100%;
    border: solid 2px #38B2B1;
	margin: 0;
}

.bs-product-content-bs-thuc-hien-right a {
        min-width: 110px!important;
    padding: 4px 8px!important;
	margin: 0!important;
}

img.banner-bv {
    width: 100%;
    display: block;
    border-radius: 12px;
    margin: 10px 0 20px;
}

/* ===== SCROLL ANCHOR ===== */

html {
    scroll-behavior: smooth;
}

[id^="toc-h2-"] {
    scroll-margin-top: 130px;
}

/* ===== MOBILE ===== */

@media (max-width: 767px) {
    .bs-product-header {
        min-height: auto;
        padding: 24px 0;
    }

    .bs-product-title {
        font-size: 24px;
    }

    .bs-product-short-desc {
        font-size: 14px;
    }

    .bs-product-date {
        font-size: 13px;
        flex-wrap: wrap;
    }

    .bs-product-body {
        padding-top: 20px;
    }

    .bs-product-layout {
        flex-direction: column;
        gap: 30px;
    }

    .bs-product-sidebar {
        width: 100%!important;
        margin-top: 10px;
        order: 1;
    }

    .bs-product-content {
        width: 100%;
        order: 2;
    }

    .bs-product-sidebar-muc-luc {
        display: none;
    }

    .bs-product-content h2 {
        font-size: 20px;
    }

    .bs-product-content p,
    .bs-product-content li {
        font-size: 16px;
    }

    .acc-single .accordion-title {
        padding: 14px 42px 14px 15px;
    }

    .acc-single .accordion-title span {
        font-size: 16px;
    }

    .acc-single .accordion-title .toggle {
        right: 15px;
    }

    .bs-service-gallery {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .row-gia-dv {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }

    .row-gia-dv .col {
        max-width: 100%;
        flex-basis: auto;
        padding: 0;
    }

    .col-gia-uu-dai > .col-inner,
    .col-gia-dv-goc > .col-inner {
        padding: 12px 8px;
    }

    .text-price-dv p {
        font-size: 15px;
    }

    .btn-dat-lich-single {
        font-size: 11px;
        padding: 7px 10px;
    }

    .text-table {
        overflow-x: auto;
    }

    .text-table table {
        min-width: 520px;
    }

    .bs-product-content-dat-lich {
        flex-direction: column;
        gap: 20px;
        border-radius: 16px;
        padding: 18px;
    }

    .bs-product-content-dat-lich p {
        font-size: 20px;
        text-align: center;
    }

    .bs-product-content-bs-thuc-hien {
        gap: 14px;
        padding: 14px;
    }

    .bs-product-content-bs-thuc-hien img {
        width: 100px;
        height: 100px;
    }

    p.bs-product-title- {
        font-size: 22px;
    }
}

.bs-service-accordion {
    display: grid;
    gap: 20px;
}

.bs-service-accordion .accordion-item {
    background: #E4EFF2;
    border: 0;
    border-radius: 12px;
    overflow: hidden;
}

.bs-service-accordion .accordion-button {
    position: relative;
    background: #E4EFF2;
    color: #3D3D3D;
    box-shadow: none;
    border: 0;
    padding: 18px 52px 18px 24px;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 700;
}

.bs-service-accordion .accordion-button span {
    font-size: 20px;
    line-height: 1.35;
    font-weight: 600;
    color: #3D3D3D;
}

.bs-service-accordion .accordion-button::after {
    display: none;
}

.bs-service-accordion .accordion-button::before {
    content: "+";
    position: absolute;
    right: 22px;
    top: 50%;
    transform: translateY(-50%);
    color: #008786;
    font-size: 30px;
    line-height: 1;
    font-weight: 300;
}

.bs-service-accordion .accordion-button:not(.collapsed)::before {
    content: "−";
}

.bs-service-accordion .accordion-body {
    background: #E4EFF2;
    padding: 0 24px 22px;
    color: #3D3D3D;
}

.bs-service-accordion .accordion-body p {
    font-size: 16px;
    line-height: 1.65;
    color: #3D3D3D;
}

@media(max-width:767px) {
    .bs-service-accordion {
        gap: 12px;
    }

    .bs-service-accordion .accordion-button {
        padding: 14px 42px 14px 15px;
    }

    .bs-service-accordion .accordion-button span {
        font-size: 16px;
    }

    .bs-service-accordion .accordion-button::before {
        right: 15px;
        font-size: 24px;
    }

    .bs-service-accordion .accordion-body {
        padding: 0 15px 18px;
    }
}


.bs-product-sidebar-muc-luc{
    position:sticky !important;
    top:120px !important;

    max-height:calc(100vh / 2) !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
}

.bs-product-layout{
    display:flex !important;
    align-items:stretch !important;
}

.bs-product-sidebar{
    width:387px;
    flex-shrink:0;
    align-self:stretch !important;
    position:relative !important;
    overflow:visible !important;
}
.bs-product-sidebar-muc-luc{
    position: sticky;
    top: 120px;

    max-height: 500px;
    overflow-y: auto;
    overflow-x: hidden;
}

.bs-product-sidebar-muc-luc::-webkit-scrollbar{
    width: 6px;
}

.bs-product-sidebar-muc-luc::-webkit-scrollbar-track{
    background: transparent;
}

.bs-product-sidebar-muc-luc::-webkit-scrollbar-thumb{
    background: #bfc8cc;
    border-radius: 20px;
}

.bs-product-content ul {
	list-style: none;
}

.bs-product-content li {
    position: relative;
    padding-left: 24px;
    margin-bottom: 18px;
    font-size: 16px;
    color: #222;
}

.bs-product-content li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 6px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #57c3c0;
    color: #fff;
    font-size: 11px;
    line-height: 16px;
    text-align: center;
    font-weight: 700;
}

.acc-faq-single .accordion-item, .acc-faq-single .bs-service-accordion .accordion-button {
    background: none !important;
}

.acc-faq-single .bs-service-accordion .accordion-button {
        border: 1px solid #e7e7e7;
}

.bs-service-gallery{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
}

.customer-case img{
    width:100%;
    height:auto;
    display:block;
	border:none!important;
}

@media(max-width:767px){
    .bs-service-gallery{
        grid-template-columns:1fr;
    }
}

/* ===== OVERRIDE LAYOUT 3 PHẦN + WIDGET PHẢI ===== */
.bs-product-body.container-fluid{
    padding-left:0!important;
    padding-right:0!important;
}

.bs-product-layout {
    display: grid !important;
    display:grid !important;
    grid-template-columns: 387px 1fr !important;
    gap:30px !important;
    align-items:start !important;
    align-items: start !important;
    width: 100%;
}

.bs-product-content{
    width:auto!important;
    min-width:0!important;
}

.bs-product-right-sidebar{
    width:auto!important;
    min-width:0!important;
    align-self:start!important;
}

.bs-product-right-sticky{
    position:sticky;
    top:120px;
}

.bs-product-right-widget{
    margin-bottom:20px;
}

.bs-product-right-widget .widget,
.bs-product-right-widget > div,
.bs-product-right-widget form{
    max-width:100%;
}

.bs-product-right-title{
    font-size:20px;
    font-weight:700;
    color:#fff;
    margin:0 0 16px;
}

@media(max-width:1199px){
    .bs-product-layout{
        max-width:960px!important;
        grid-template-columns:260px minmax(0,1fr)!important;
    }

    .bs-product-right-sidebar{
        grid-column:1 / -1;
    }

    .bs-product-right-sticky{
        position:static;
    }
}

@media(max-width:991px){
    .bs-product-layout{
        max-width:720px!important;
        grid-template-columns:1fr!important;
        gap:24px!important;
        padding-left:15px!important;
        padding-right:15px!important;
    }

    .bs-product-sidebar{
        order:1;
    }

    .bs-product-content{
        order:2;
    }

    .bs-product-right-sidebar{
        order:3;
    }

    .bs-product-sidebar-muc-luc,
    .bs-product-right-sticky{
        position:static!important;
        max-height:none!important;
        overflow:visible!important;
    }
}

@media(max-width:767px){
    .bs-product-layout{
        max-width:100%!important;
    }
}
.consult-widget-popup{
    display:block;
    position:static;
    background:transparent;
}

.consult-widget-box{
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: 0 30px;
    overflow: hidden;
    background: #E4EFF2;
	color: rgb(61, 61, 61);
}

.formcontact figure{
	width:100%;
    height:100%;
    object-fit:cover;
}

.formcontact figure img{
	height: 100% !important;
    object-fit: cover;
    max-width: unset !important;
}

.contact-page .formcontact {
    background: #008786;
	color: #fff;
}


.contact-page .consult-widget-popup .consult-widget-box {
    background: transparent!important;
}


.contact-page .consult-widget-popup .consult-widget-box .consult-form label {
    color: #fff;
}


.consult-widget-box > *{
    position:relative;
    z-index:2;
}

.consult-widget-close{
    display:none;
}

.consult-widget-box h3{
    margin:0 0 15px;
    font-size:22px;
    line-height:1.25;
    font-weight:700;
    text-transform:uppercase;
    text-align:center;
}

.consult-widget-box > p{
    display: none;
}

.consult-form label{
    display:block;
    margin:0 0 7px;
    color:#555;
    font-size:16px;
}

.consult-form input,
.consult-form select{
    width:100%;
    height: 40px;
    margin:0 0 13px;
    padding:0 16px;
    border:1px solid #e4e4e4;
    border-radius:999px;
    background:#fff;
    color:#31525b;
    font-size:16px;
    outline:none;
    box-shadow:inset 0 1px 3px rgba(0,0,0,.12);
}

.consult-form input::placeholder{
    color:#a9a9a9;
}

.consult-form button[type="submit"]{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    width:auto;
    min-width:122px;
    height:48px;
    margin:8px auto 0;
    padding:0 20px;
    border:0;
    border-radius:999px;
    background:#c99a4e;
    color:#fff;
    font-size:14px;
    font-weight:700;
    text-transform:uppercase;
    cursor:pointer;
}

.consult-form button[type="submit"] i{
    font-size:17px;
}

.consult-message{
    margin-top:10px;
    font-size:13px;
    text-align:center;
}

@media (min-width: 992px){

    .bs-product-layout{
        align-items:flex-start !important;
    }

    .bs-product-sidebar{
        position:sticky !important;
        top:120px !important;
        align-self:flex-start !important;
        height:fit-content;
        z-index:2;
    }


    .bs-product-right{
        align-self:flex-start !important;
        height:fit-content;
        z-index:2;
    }

    .bs-product-sidebar-muc-luc{
        position:static !important;
        max-height:calc(100vh - 500px) !important;
        overflow-y:auto !important;
    }
	
	

	

}

@media (min-width: 992px){

    .bs-product-layout{
        align-items:start !important;
        overflow:visible !important;
    }

    .bs-product-sidebar,
    .bs-product-right-sidebar{
        position:sticky !important;
        top:120px !important;
        align-self:start !important;
        height:fit-content !important;
        overflow:visible !important;
        z-index:5;
    }

    .bs-product-right-sticky{
        position:static !important;
    }
}

.bs-product-content-bs-thuc-hien{
    display:flex;
    align-items:center;
    gap:14px;
    background:#ECEDEF;
    border-radius:22px;
    padding:24px 22px;
    margin:20px 0 24px;
}

.bs-product-content-bs-thuc-hien .doctor-avatar{
    width:90px;
    height:90px;
    flex:0 0 90px;
    border-radius:50%;
    object-fit:cover;
    background:#fff;
    border:2px solid #28b8b3;
}

.bs-product-content-bs-thuc-hien-right p{
    margin:0 0 8px;
    font-size:16px;
    line-height:1.45;
    color:#333;
}

.bs-product-content-bs-thuc-hien-right b{
    color:#008786;
    font-weight:700;
	font-family: 'Beautique Display';
}

.bs-product-content-bs-thuc-hien-right .view-more-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:36px;
    padding:0 18px;
    border-radius:999px;
    background:#008786;
    color:#fff !important;
    font-size:14px;
    font-weight:700;
    text-decoration:none;
}

@media(max-width:767px){
    .bs-product-content-bs-thuc-hien{
        padding:16px;
        border-radius:18px;
        gap:12px;
    }

    .bs-product-content-bs-thuc-hien .doctor-avatar{
        width:72px;
        height:72px;
        flex-basis:72px;
    }

    .bs-product-content-bs-thuc-hien-right p{
        font-size:14px;
    }

    .bs-product-content-bs-thuc-hien-right .view-more-btn{
        height:32px;
        padding:0 14px;
        font-size:13px;
    }
    .formcontact figure img{
		width: 100% !important;
		height: auto !important;
	}
	
	.formcontact > .p-5, .formcontact.p-5{
	    padding: 10px!important;
	}
	
	.formcontact .consult-widget-box{
	    padding: 0!important;
	}
}

.single-page .bs-product-layout{
	grid-template-columns: 1fr 387px!important;
}

.single-page .bs-product-layout main.bs-product-content p{
	font-size: 18px;
}

.col-athq .col-inner{
    background:#e7f3f6;
    border-radius:12px;
    padding:24px 20px;
}


.text-title-athq p{
    margin:0 0 20px;
    color:#008c89;
    font-size:16px;
    line-height:1.4;
    font-weight:800;
    text-align:center;
    text-transform:uppercase;
}

.icon-box-athq{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:16px;
}

.icon-box-athq:last-child{
    margin-bottom:0;
}

.icon-box-img{
    flex:0 0 50px;
    width:50px;
}

.icon-box-img img{
    width:100%;
    height:auto;
    display:block;
    object-fit:contain;
	margin: 0;
}

.icon-box-text p{
    margin:0;
    font-size:16px;
    line-height:1.5;
    color:#333;
}

.icon-box-text strong{
    font-weight:800;
}

.col-nhan-tv-tu-bs .col-inner{
    background:#e7f3f6;
    border-radius:14px;
    padding:28px 22px;
    text-align:center;
}

.text-nhan-tv-tu-bs h2{
    margin:0 0 16px;
    color:#008c89;
    font-size:22px;
    line-height:1.35;
    font-weight:800;
}

.text-nhan-tv-tu-bs p{
    margin:0 0 24px;
    color:#333;
    font-size:16px;
    line-height:1.7;
}

.text-nhan-tv-tu-bs strong{
    font-weight:800;
    color:#333;
}

.col-nhan-tv-tu-bs .dv-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:48px;
}

@media (max-width:767px){

    .col-nhan-tv-tu-bs .col-inner{
        padding:24px 18px;
    }

    .text-nhan-tv-tu-bs h2{
        font-size:20px;
    }

    .text-nhan-tv-tu-bs p{
        font-size:15px;
        line-height:1.65;
    }
}

.img-zoom{
    overflow:hidden;
}

.img-zoom img{
    display:block;
    width:100%;
    transition:transform .4s ease;
}

.img-zoom:hover img{
    transform:scale(1.06);
}

.dv-side-group h5 a{
    color:inherit;
    text-decoration:none;
	padding-left: 10px;
	font-weight: 700;
}

.dv-side-child,
.dv-side-sub-child{
    display:block;
    text-decoration:none;
}

.dv-side-child-title {
        text-transform: uppercase;
    font-size: 15px;
    padding: 5px 15px;
    font-weight: 500;
    color: #000;
}
.dv-side-group2{
	border-left: solid 3px #008786;
}
.dv-side-sub{
    padding-left:18px;
}

.dv-side-sub-child{
    font-size:14px;
}

.nk-related-posts{
    margin:40px 0;
}

.nk-related-title{
    font-weight:700;
    margin-bottom:24px;
    text-transform:uppercase;
}

.nk-related-list{
    display:flex;
    flex-direction:column;
    gap:30px;
}

.nk-related-thumb{
    display:block;
    overflow:hidden;
    border-radius:20px;
    margin-bottom:16px;
}

.nk-related-thumb img{
    width:100%;
    height:auto;
    display:block;
	margin-bottom: 0;
}

.nk-related-post-title{
    line-height:1.3;
    font-weight:700;
    margin:0;
	text-align: center;
}

.nk-related-post-title a{
    color:#1d2433;
    text-decoration:none;
	font-size: 16px;
}

.nk-related-post-title a:hover{
    color:#0096d6;
}

.bs-auto-gallery{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:15px;
    margin:30px 0;
}

.bs-auto-gallery img{
    width:100% !important;
    height:auto !important;
    display:block;
	
    object-fit:cover;
}

.bsln-cta-buttons{
    margin: 24px 0;
    text-align: center;
}

.bsln-cta-buttons a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:48px;
    padding:12px 24px;
    border-radius:999px;
    text-decoration:none;
    font-weight:600;
    transition:.3s;
	    color: #fff;
}

.bsln-cta-buttons a.dv-btn-gold{

    padding-left: 35px!important;
	margin-right: 25px;

}

.bsln-btn-primary{
        background: linear-gradient(180deg, #19A8B0 0%, #118C95 100%);
    color:#fff;
}

.bsln-btn-primary:hover{
    color:#fff;
    opacity:.9;
}

.bsln-btn-secondary{
    color: #3D3D3D;
    background: linear-gradient(180deg,#19A8B0 0%, #118C95 100%);
}

.bsln-contact-boxes{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin:40px 0;
}

.bsln-contact-card{
    border:1px solid #D9D9D9;
    border-radius:16px;
    padding:16px 20px;
    display:flex;
    align-items:center;
    gap:16px;
    background:#fff;
    height:100%;
}

.bsln-contact-icon,
.bsln-contact-social a{
    width:44px;
    height:44px;
    border-radius:50%;
    background:#EEF6F3;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.bsln-contact-icon i,
.bsln-contact-social i{
    color:#1F9D72;
    font-size:18px;
}

.bsln-contact-content{
    flex:1;
}

.bsln-contact-content span{
    display:block;
    font-size:14px;
    color:#222;
    font-weight:600;
    margin-bottom:4px;
}

.bsln-contact-content a,
.bsln-contact-content strong{
    display:block;
    color:#2E2E2E;
    text-decoration:none;
    font-size:18px;
    font-weight:400;
    line-height:1.4;
}

.bsln-contact-social{
    display:flex;
    gap:10px;
    flex-shrink:0;
}

@media (max-width:991px){

    .bsln-contact-boxes{
        grid-template-columns:1fr;
        gap:16px;
    }

}

.bsln-social-info{
    align-items: flex-start;
    padding: 20px 0;
}

.bsln-social-info p{
    margin-bottom: 14px;
    font-size: 18px;
    color: #2b2b2b;
}

.bsln-social-info .info-contact{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 14px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.bsln-social-info .info-contact li a{
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: #35c3c1;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    text-decoration: none;
    transition: all .3s ease;
}

.bsln-social-info .info-contact li{
   padding-left: 0;
}


.bsln-social-info .info-contact li::before{
   display: none;
}

.bsln-social-info .info-contact li a:hover{
    background: #27aaa8;
    color: #fff;
    transform: translateY(-2px);
}

.bsln-social-info .hotline-btn{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 150px;
    height: 40px;
    padding: 0 20px;
    border-radius: 999px;
    background: linear-gradient(180deg, #d6a313 0%, #b98505 100%);
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    line-height: 1;
}

.bsln-social-info .hotline-btn i{
    font-size: 15px;
}

.bsln-social-info .hotline-btn:hover{
    color: #fff;
    filter: brightness(1.05);
}

@media(max-width: 767px){
    .bsln-social-info{
        row-gap: 24px;
    }
}


.topfooter p {
    margin-top: 16px;
}


/* =========================================================
   FIX MOBILE MENU - MAX WIDTH 1140PX
   - Áp dụng menu mobile cho tablet + mobile <= 1140px
   - Web đứng yên khi mở menu
   - #wide-nav cuộn độc lập
   - Không cho Max Mega Menu fixed full màn hình
   ========================================================= */

@media (max-width:1140px){

    body.mobile-menu-open{
        overflow:hidden !important;
    }

    body.mobile-menu-open,
    body.mobile-menu-open #page,
    body.mobile-menu-open .site,
    body.mobile-menu-open .content-home{
        overscroll-behavior:contain;
    }

    #masthead{
        left:0;
        right:0;
        z-index:100001;
        background:#fff;
    }

    /* Khi chưa cuộn: top-bar còn hiện */
    #wide-nav{
        display:block !important;
        position:fixed !important;

        top:120px !important;
        left:0 !important;
        bottom:62px !important;

        width:360px !important;
        max-width:90vw !important;
        height:auto !important;
        max-height:none !important;

        background:#fff !important;
        z-index:100000 !important;

        overflow-y:auto !important;
        overflow-x:hidden !important;
        -webkit-overflow-scrolling:touch;
        overscroll-behavior:contain;
        touch-action:pan-y;

        transform:translateX(-100%);
        opacity:0;
        visibility:hidden;
        pointer-events:none;

        transition:transform .3s ease, opacity .3s ease, visibility .3s ease;
    }

    body.mobile-menu-open #wide-nav{
        transform:translateX(0) !important;
        opacity:1 !important;
        visibility:visible !important;
        pointer-events:auto !important;
    }

    /* Khi đã cuộn: top-bar ẩn, menu nằm dưới masthead */
    body.scrolled #wide-nav{
        top:80px !important;
        height:auto !important;
    }

    .mobile-menu-overlay{
        position:fixed !important;
        top:120px !important;
        left:0 !important;
        right:0 !important;
        bottom:62px !important;
        z-index:99998 !important;

        background:rgba(0,0,0,.35);
        opacity:0;
        visibility:hidden;
        pointer-events:none;

        transition:opacity .3s ease, visibility .3s ease;
    }

    body.scrolled .mobile-menu-overlay{
        top:80px !important;
    }

    body.mobile-menu-open .mobile-menu-overlay{
        opacity:1 !important;
        visibility:visible !important;
        pointer-events:auto !important;
    }

    /* Max Mega Menu nằm bên trong #wide-nav, không tự fixed full màn hình */
    #mega-menu-wrap-main-menu{
        display:block !important;
        position:static !important;
        inset:auto !important;
        width:100% !important;
        height:auto !important;
        max-height:none !important;
        overflow:visible !important;
        transform:none !important;
        opacity:1 !important;
        visibility:visible !important;
        background:#fff !important;
        z-index:auto !important;
    }

    #mega-menu-main-menu{
        display:block !important;
        position:static !important;
        top:auto !important;
        left:auto !important;
        width:100% !important;
        height:auto !important;
        max-height:none !important;
        overflow:visible !important;
        transform:none !important;
        opacity:1 !important;
        visibility:visible !important;
        background:#fff !important;
        padding-bottom:24px !important;
    }

    #mega-menu-main-menu > li{
        display:block !important;
        width:100% !important;
        float:none !important;
        border-bottom:1px solid #eee;
    }

    #mega-menu-main-menu > li > a{
        display:block !important;
        padding:14px 16px !important;
        color:#222 !important;
        font-weight:700 !important;
        background:#fff !important;
    }

    #mega-menu-wrap-main-menu .mega-menu-toggle,
    #mega-menu-wrap-main-menu .mega-close,
    #mega-menu-main-menu > li.menu-search,
    .menu-search{
        display:none !important;
    }

    .mobile-search-toggle,
    .mobile-menu-toggle{
        border:none !important;
        background:none !important;
    }

    .mobile-search-popup{
        position: fixed;
        top: 120px !important;
        left: auto;
        right: 0;
        z-index: 100000;
        background: #fff;
        padding: 12px 15px;
        box-shadow: 0 5px 15px rgba(0, 0, 0, .12);
        transform: translateY(-10px);
        opacity: 0;
        visibility: hidden;
        transition: .3s ease;
        max-width: 400px;
        width: 100%;
    }
	
	body.scrolled .mobile-search-popup{
		top: 75px !important;
	}

    body.mobile-search-open .mobile-search-popup{
        transform:translateY(0);
        opacity:1;
        visibility:visible;
    }
}

/* Desktop */
@media screen and (min-width:1141px) and (max-width:1500px){

    #mega-menu-main-menu{
        display:flex !important;
        flex-wrap:nowrap !important;
        align-items:center;
        justify-content:center;
        gap:8px;
        min-height:60px !important;
    }

    #mega-menu-main-menu > li{
        flex:1 1 auto !important;   /* cho phép co lại */
        min-width:0 !important;     /* cực kỳ quan trọng */
        width:auto !important;
    }

    #mega-menu-main-menu > li > a{
        display: flex !important;
        align-items: center;
        justify-content: center;
        text-align: center !important;
        line-height: normal !important;
        white-space: normal !important;
        overflow-wrap: break-word;
        word-break: keep-all;
        padding: 10px 8px !important;
    }

}