:root{
    --cl-pri: #c3002a;
    --cl-second: #d58431;
}


@font-face {
    font-family: 'MTD-Youther-Script';
    src:
        url('templates/fonts/MTD-Youther-Script.woff') format('woff');
}
@font-face {
    font-family: 'FS PFBeauSansPro';
    src:
        url('templates/fonts/FS-PFBeauSansPro-Regular.woff') format('woff');
}
@font-face {
    font-family: 'FS PFBeauSansPro';
    src:
        url('templates/fonts/FS-PFBeauSansPro-Bold.woff') format('woff');
        font-weight: bold;
}


body{
    font-family: "FS PFBeauSansPro", sans-serif;
    color: #000;
    font-size: clamp(0.875rem, 0.85rem + 0.125vw, 1rem);
    overflow-x: hidden;
}
p:last-of-type{
    margin-bottom: 0;
}
.fs-12{
    font-size: 0.75rem;
}
.fs-14{
    font-size: 0.875rem;
}

.text-justify{
    text-align: justify;
}
/*text color*/
.text-pri{
    color: var(--cl-pri);
}
.text-second{
    color: var(--cl-second);
}
/*background*/
.bg-pri{
    background-color: var(--cl-pri);
}
.bg-second{
    background-color: var(--cl-second);
}
.bg-gray{
    background-color: #F8F8F8;
}
.bg-dark-gray{
    background-color: #f3f5f7
}
.bg-cover{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: -1;
}
.filter-dark{
    position: relative;
}
.filter-dark:after{
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: rgba(0,0,0,0.8);
    z-index: -1;
}


.btn-custom{
    display: inline-block;
    padding: 8px 16px;
    font-weight: bold;
    border-radius: 6px;
    border: 1px solid;
    transition: all .3s ease-in-out;
    text-decoration: none;
    font-size: clamp(0.75rem, 0.7rem + 0.25vw, 1rem);

}
.btn-pri{
    background-color: var(--cl-pri);
    color: #fff;
    border-color: var(--cl-pri) !important;
}

.btn-second{
    background-color: var(--cl-second);
    color: #fff;
    border-color: var(--cl-second) !important;
}

.btn-pri:hover{
    background-color: var(--cl-pri);
    color: #fff;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}
.btn-pri-outline{
    border-color: var(--cl-pri) !important;
    border-width: 2px;
    color: var(--cl-pri);
}

.image-cover{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.image-contain{
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.hover-scale{
    transition: .3s ease-out;
}
.hover-scale:hover{
    transform: scale(1.1);
}

.swiper {
    width: 100%;
    height: 100%;
    margin-left: auto;
    margin-right: auto;
}
.swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.block{
    padding: 40px 7%;
}

/*nav menu*/
.logo{
    width: 120px;
    transition: all .3s ease-in-out;
}

.main-title{
    font-size: clamp(1.375rem, 1.275rem + 0.5vw, 1.875rem);
    margin-bottom: 0;
}

.navbar{
    padding-top: 0px;
    padding-bottom: 0px;
}
.nav-fix-scroll.nav-fixed .logo{
    width: 80px;
}

.nav-fixed{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    animation: animate 1s;
    transition: all 2s ease-in-out;
    z-index: 10;
}

@keyframes animate {
    0% {
        transform: translateY(-100px);
    }
    100% {
        transform: translateY(0px);
   }
}
.nav-top{
    width: 100%;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    background: #fff;
}
.nav-top .nav .nav-link{
    font-size: 13px;
    color: #333333;
}
.nav-top .nav .nav-link i{
    color: var(--cl-pri);
}


.nav-bottom{
    width: 100%;
    padding-top: 1rem;
    padding-bottom: 1rem;
    background: var(--cl-pri);
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.06) 0px 2px 4px -1px;
}
.main-nav{
    width: 100%;
    gap: 20px;
    justify-content: center;
}
/**/
.nav-bottom .navbar-nav .nav-item .nav-link{
    color: #fff;
    text-transform: uppercase;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    display: flex;
    align-items: center;
    font-size: 1rem;
}
.nav-bottom .navbar-nav .nav-item .nav-link .icon{
    height: 26px;
    margin-right: 0.5rem;
}




/*===============*/
.form-search-header{
    position: relative;
}
.form-search-header input{
    width: 100%;
    border-radius: 1rem;
    background-color: #f4f8f8 !important;
    border: none;
    box-shadow: none !important;
    color: #7B7B7B;
    font-size: 14px;
    padding: 0.5rem 1rem;
    height: 40px;
}
.form-search-header .btn-search{
    position: absolute;
    top: 50%;
    right: 0.5rem;
    transform: translateY(-50%);
}

/*===============*/
.icon-cart-mobile{
    text-decoration: none;
    color: #000;
    position: relative;
}
.icon-cart-mobile .total{
    position: absolute;
    top: 0;
    right: 0;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    font-size: 12px;
    color: #fff;
    background-color: var(--cl-pri);
}


/*===============*/
.page-banner{
    position: relative;
    display: flex;
    align-items: center;
    height: clamp(12.5rem, 11.25rem + 6.25vw, 18.75rem);
}
.page-banner .title{
    text-align: center;
    color: var(--cl-pri);
    text-transform: uppercase;
    font-weight: bold;
    font-size: clamp(1.125rem, 0.75rem + 1.875vw, 3rem);
}
.page-banner img{
    filter: brightness(.3);
}

.box-breadcrumb{
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    box-shadow: 0px 0px 15px rgba(0,0,0,0.15);
    font-size: 12px;
}
.breadcrumb .breadcrumb-item{
    color: var(--cl-pri);
}
.breadcrumb .breadcrumb-item a{
    color: #888888;
    text-decoration: none;
}
.breadcrumb .breadcrumb-item a:hover{
    color: var(--cl-pri);
}
.breadcrumb-item + .breadcrumb-item::before{
    color: #888888;
}



/*===============*/
.slider-home .swiper-pagination-bullet{
    width: clamp(0.5rem, 0.425rem + 0.375vw, 0.875rem) !important;
    height: clamp(0.5rem, 0.425rem + 0.375vw, 0.875rem) !important;
    background-color: transparent !important;
    border: 2px solid #fff;
    opacity: 1 !important;
}
.slider-home .swiper-pagination-bullet.swiper-pagination-bullet-active{
    background-color: #fff !important;
}
.home-next{
    right: clamp(0.625rem, 0.15000000000000002rem + 2.375vw, 3rem) !important;
}
.home-prev{
    left: clamp(0.625rem, 0.15000000000000002rem + 2.375vw, 3rem) !important;
}
.home-next:after,
.home-prev:after{
    content: "" !important;
}
.home-next i,
.home-prev i{
    font-size: clamp(1rem, 0.8rem + 1vw, 2rem);
    color: #fff;
}




/*===============*/
.block-category{
    padding-top: 100px;
    padding-bottom: 100px;
    background-color: #F2F2F2;
    clip-path: polygon(50% 10%, 100% 0, 100% 90%, 50% 100%, 0 90%, 0 0);
}

.card-category{
    position: relative;
}
.card-category .thumbnail{
    height: clamp(16rem, 14.2rem + 9vw, 25rem);
    overflow: hidden;
    transition: all 0.3s ease-in-out;
}
.card-category .title{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    font-weight: 600;
    text-align: center;
    color: #fff;
    background-color: var(--cl-pri);
    padding: 0.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.card-category .title h5{
    margin-bottom: 0;
    font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);
    text-transform: uppercase;
}





/*===============*/
.card-product{
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #fff;
    padding: 8%;
}
.card-product .thumbnail{
    height: 220px;
    overflow: hidden;
    transition: all 0.3s ease-in-out;
}
.card-product .title{
    font-weight: 500;
    text-align: center;
    margin-bottom: 0;

}
.card-product .price{
    text-align: center;
    font-weight: bold;
    color: var(--cl-pri);
    padding: 5%;
    font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);
}
.card-product .description{
    font-size: 14px;;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.card-product .view-more{
    margin-top: 10px;
    color: var(--cl-pri);
}
/**/
.box-product{
    height: 100%;
    border-radius: 12px;
    overflow: hidden;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
}
.box-product .box-title{
    background-image: url('templates/images/18.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.box-product .box-title .title{
    margin-bottom: 0;
    font-weight: bold;
    color: #fff;
    text-align: center;
}
.box-product .content{
    flex: 1;
    padding: 9%;
    display: flex;
    flex-direction: column;
}

.box-product .view-more{
    margin-top: auto;
    padding-top: 1rem;
    color: var(--cl-pri);
    text-align: center;
    font-weight: bold;
}



.box-blog{
    border-radius: 12px 12px 12px 0px;
    overflow: hidden;
}
.box-blog .thumbnail{
    height: 430px;
}
.box-blog .content{
    padding: clamp(1rem, 0.9rem + 0.5vw, 1.5rem);
    background-color: #fff;

}
.box-blog:not(.box-blog-vertical) .content{
    margin-top: -20px;
    border-top-left-radius: 24px;
    position: relative;
    z-index: 1;
}
.box-blog .title{
    /*color: var(--cl-pri);*/
    font-weight: bold;
}
.box-blog .description{
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.box-blog .view-more{
    display: block;
    margin-top: 1rem;
    color: var(--cl-pri);
    font-weight: 600;
    text-decoration: none;
}


.box-blog-vertical{
    display: flex;
    height: 175px;
    background-color: #fff;
}

.box-blog-vertical .thumbnail{
    width: 45%;
    height: 175px;
}
.box-blog-vertical .content{
    flex: 1;
    display: flex;
    flex-direction: column;
}
.box-blog-vertical .description{
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.box-blog-vertical .title{
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);
}
.box-blog-vertical .view-more{
    margin-top: auto;
}


/*===============*/
.title-service-home h1{
    font-size: clamp(1.125rem, 0.875rem + 1.25vw, 2.375rem);
    text-align: center;
    font-weight: 400;
}
.cart-service{
    background-color: #fff;
    box-shadow: 0px 0px 20px rgba(0,0,0,0.05);
    border-radius: 10px;
    height: 100%;
}
.cart-service .thumbnail{
    height: clamp(11.25rem, 10.4rem + 4.25vw, 15.5rem);
    overflow: hidden;
    border-radius: 10px;
}
.cart-service .content{
    padding: clamp(0.625rem, 0.35rem + 1.375vw, 2rem);
}
.cart-service .content .title{
    font-size: clamp(0.875rem, 0.8rem + 0.375vw, 1.25rem);
    text-align: center;
    text-transform: uppercase;
}
.cart-service .content .description{
    text-align: center;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.cart-service .btn-view-more{
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--cl-pri);
    text-align: center;
    text-decoration: none;
    width: 128px;
    height: clamp(2rem, 1.85rem + 0.75vw, 2.75rem);
    border: solid 1px var(--cl-pri);
    border-radius: 10px;
}
.cart-service:hover .thumbnail img{
    opacity: 0.9;
}
.cart-service:hover .title{
    color: var(--cl-pri);
}
.cart-service:hover .btn-view-more{
    background-color: var(--cl-pri);
    color: #fff;
}



/*===============*/
.block-process,
.block-achievement{
    overflow: hidden;
}
.border-process,
.border-achievement{
    position: relative;
}
.border-process:after{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: -40px;
    border: 1px solid #fff;
    pointer-events: none;
}
.border-achievement:after{
    content: "";
    position: absolute;
    top: -40px;
    left: 0;
    right: 0;
    bottom: 0;
    border: 1px solid var(--cl-pri);
    pointer-events: none;
}
/**/

.cart-process{
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    color: #fff;

}
.cart-process .thumbnail{
    width: clamp(3.125rem, 3rem + 0.625vw, 3.75rem);
    height: clamp(3.125rem, 3rem + 0.625vw, 3.75rem);
    margin-bottom: 1rem;
}
.cart-process .title{
    font-size: clamp(0.875rem, 0.8rem + 0.375vw, 1.25rem);
}
.border-process{
    border: 2px solid var(--cl-pri);
}

.box-achievement{
    font-size: clamp(1.375rem, 1.25rem + 0.625vw, 2rem);
    color: var(--cl-pri);
    font-weight: bold;
    text-align: center;
    text-transform: uppercase;
}



/*block-policy*/
.block-policy{
    clip-path: polygon(50% 10%, 100% 0, 100% 90%, 50% 100%, 0 90%, 0 0);
    background-image: url('templates/images/8.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: relative;
    padding-top: 100px;
    padding-bottom: 100px;
}
.block-policy .bg-cover{
    background-color: rgba(3,75,183,0.6)
}

.icon-box{
    display: flex;
    gap: 1.5rem;
    color: #fff;
}
.icon-box .thumbnail{
    width: clamp(3.75rem, 3.625rem + 0.625vw, 4.375rem);
    height: clamp(3.75rem, 3.625rem + 0.625vw, 4.375rem);
}
.icon-box .content{
    flex: 1;
}
.icon-box .title{
    font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);
}


/*project*/
.project{
    padding-bottom: 30px !important;
}
.project-group{
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 16px;
}
.project .swiper-pagination-bullet{
    width: 26px;
    height: 26px;
    font-size: 18px;
    font-weight: 700;
    background-color: transparent;
    opacity: 1;
}
.project-next:after,
.project-prev:after{
    content: "" !important;
}
.project-next,
.project-prev{
    position: relative !important;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 20px !important;
    height: 20px !important;
    border-radius: 50%;
    left: unset !important;
    right: unset !important;
    top: unset !important;
    bottom: unset !important;
    background-color: #C1C1C1;
    margin-top: unset !important;

}
.project .swiper-pagination{
    position: relative !important;
    bottom: unset !important;
    width: unset !important;
    display: flex;
    align-items: center;
}
.project .swiper-pagination-bullet.swiper-pagination-bullet-active{
    text-decoration: underline;
}



.card-project{
    border: 1px solid var(--cl-pri);
}
.card-project .thumbnail{
    height: 250px;
    overflow: hidden;
}
.card-project  .content{
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 3%;
}
.card-project .title{
    display: flex;
    align-items: center;
    margin-bottom: 0;
    min-height: 49px;
    font-size: clamp(0.875rem, 0.8rem + 0.375vw, 1.25rem);
    flex: 1;

}
.card-project .view-more{
    background-color: var(--cl-pri);
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    text-decoration: none;
}


/*===============*/
.card-review{
    display: flex;
    gap: 1rem;
}
.card-review .thumbnail{
    width: clamp(9.375rem, 8.75rem + 3.125vw, 12.5rem);
    height: clamp(8.125rem, 7.625rem + 2.5vw, 10.625rem);
    clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
}
.card-review .content{
    flex: 1;
}
.card-review .title{
    font-size: clamp(1.125rem, 1.1rem + 0.125vw, 1.25rem);
}
.review-next:after,
.review-prev:after{
    content: "" !important;
}

.review-next,
.review-prev{
    width: 30px !important;
    height: 30px !important;
    border: 1px solid rgba(0,0,0,0.2);
    border-radius: 50%;
}
.review-next i,
.review-prev i{
    color: #000;
}
.review-next{
    right: -30px !important;
}
.review-prev{
    left: -30px !important;
}



/*===============*/
.card-zoom-in .thumbnail{
    overflow: hidden;
}
.card-zoom-in .thumbnail img{
    transition: all .3s ease-in-out;
}
.card-zoom-in:hover .thumbnail img{
    transform: scale(1.1);
}


/*===============*/
.card-blog .thumbnail{
    height: 300px;
}
.card-blog .title{
    font-weight: 600;
    font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);
    margin-top: 0.5rem;
}
.card-blog a{
    color: #000;
    text-decoration: none;
}

.card-blog .content{
    display: flex;
    flex-direction: column;
}
.card-blog .date{
    color: var(--cl-pri);
}
.card-blog .description{
    color: #1E1E1E;
    font-size: 0.75rem;
    font-size: clamp(0.75rem, 0.7rem + 0.25vw, 1rem);
    margin-bottom: 0.5rem;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.card-blog:hover .thumbnail img{
    opacity: 0.9;
}
.card-blog:hover .content .title{
    color: var(--cl-pri);
}

.card-horizontal{
    display: flex;
}
.card-horizontal .thumbnail{
    width: 120px;
    height: 80px;
    overflow: hidden;
}
.card-horizontal .content{
    flex: 1;
    padding-left: 1rem;
}
.card-horizontal .content .title{
    margin-top: 0;
    font-size: 14px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height:1.4;
}

.home-post .col-post-horizontal + .col-post-horizontal .card-horizontal{
    padding-top: 1.5em;
    border-top: solid 1px rgba(0, 0, 0, 0.1);
}

.cart-first .thumbnail{
    height: 240px;
    border-radius: 1rem;
    overflow: hidden;
}
.cart-first .title{
    font-size: 1rem;
    font-weight: 500;
}

.home-post .btn-view-all{
    padding-left: 2rem;
    padding-right: 2rem;
    font-weight: bold;
}
.new-title{
    font-size: clamp(1.5rem, 1.275rem + 1.125vw, 2.625rem);
    font-weight: bold;
    position: relative;
}
.new-title:before{
    content: "";
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    width: 70px;
    height: 3px;
    background-color: var(--cl-pri);
    /*margin-bottom: 40px;*/
}

/*======= Trang tin tức ========*/

.page-content img{
    max-width: 100%;
    height:auto!important;
}
.page-content table td,
.page-content table th{
    border-width: 1px;
}

.btn-register{
    text-transform: uppercase;
    font-weight: bold;
    color: #ffffff;
    text-align: center;
    display: inline-block;
    background: #c3002a;
    padding: clamp(0.5rem, 0.425rem + 0.375vw, 0.875rem) clamp(0.625rem, 0.55rem + 0.375vw, 1rem);
    border-radius: 10px;
}
.box-share-socical{
    display: flex;
    justify-content: center;
    align-items: center;
    background: #f2f2f2;
    padding: 12px;
}
.list-share{
    flex: 1;
    display: flex;
    gap: 12px;
    margin-left: 10px;
}

.box-share-socical .list-share .item .icon{
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #FFF;
    padding: 8px;
    display: flex;

}

.number-comment{
    padding: 6px 20px;
    color: #fff;
    font-weight: bold;
    background-color: var(--cl-pri);
}

.box-input-comment{
    position: relative;
    margin-top: 0.5rem;
}

.box-input-comment textarea,
.box-input-comment input{
    width: 100%;
    padding: 8px 12px 8px 60px;
    height: 60px;
    border: 1px solid var(--cl-pri);
    border-radius: 50rem;
}

.box-input-comment input{
    padding: 8px 12px;
    height: 40px;
}

.box-input-comment button{
    display: inline;
    width: fit-content;
    padding: 8px 12px;
    border: 1px solid var(--cl-pri);
    border-radius: 50rem;
    height: 40px;
    background-color: transparent;
}

.box-input-comment .avata-user{
    position: absolute;
    left: 8px;
    top: 46%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
}

.show-infor-comment{
    transition: all .3s ease-in-out;
    overflow: hidden;
    height: 0px;
}
.user-comment{
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.user-comment .avt{
    width: 60px;
    height: 60px;
    border-radius: 50%;
    overflow: hidden;
}
.user-comment .content{
    flex: 1;
}
.user-comment .date{
    font-size: 14px;
    color: #c5c5c5;
}






.card-blog-related{
    position: relative;
}
.card-blog-related a{
    text-decoration: none;
}
.card-blog-related .thumbnail{
    height:210px;
}
.card-blog-related:hover .thumbnail img{
    opacity: 0.9;
}
.card-blog-related .content{
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 12px;
    color: #fff;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
}
.card-blog-related .content .title{
    font-size: 1rem;
    color: #fff;
    text-decoration: none;
}


.title-related{
    position: relative;
    font-size: clamp(1.125rem, 0.975rem + 0.75vw, 1.875rem);
}
.title-related:after{
    content: "";
    position: absolute;
    left: 0;
    bottom: -10px;
    width: 10%;
    height: 4px;
    background-color: var(--cl-pri);
}


.col-category-post{
    padding: 1.5rem;
    box-shadow: 0px 0px 10px rgba(0,0,0,0.1);
}
.category-post .first-card .thumbnail{
    height: 200px;
}
.category-post .first-card .date{
    font-size: 13px;
    color: #b7b7b7;
    margin-top: 8px;
}
.category-post .first-card .title{
    font-size: 18px;
    color: #333333;
}


.category-post .card-horizontal .title{
    font-weight: 400;
}
.category-post .card-horizontal .date{
    color: #b7b7b7;
    font-size: 13px;
}

.title-page-category{
    font-size: clamp(1.25rem, 1.05rem + 1vw, 2.25rem);
    position: relative;
}
.title-page-category:after{
    content: "";
    position: absolute;
    left: 0;
    bottom: -10px;
    width: 10%;
    height: 4px;
    background-color: var(--cl-pri);
    /*z-index: 1;*/
}
.title-page-category:before{
    content: "";
    position: absolute;
    left: 0;
    bottom: -10px;
    width: 100%;
    height: 4px;
    background-color: #ccc;
}

.page-category .card-blog.card-horizontal .thumbnail{
    width: clamp(9.375rem, 7.875rem + 7.5vw, 16.875rem);
    height: clamp(7.5rem, 6.75rem + 3.75vw, 11.25rem);
}
.page-category .card-blog.card-horizontal .date{
    color: #b7b7b7;
    font-size: 14px;
}

.page-category .card-blog.card-horizontal .title{
    font-size: clamp(1rem, 0.95rem + 0.25vw, 1.25rem);
    margin-top: 6px;
}

.accordion_category_post .accordion-item + .accordion-item{
    margin-top: 12px;
}
.accordion_category_post .accordion-item .accordion-button{
    background-color: var(--cl-pri);
    color: #fff;
    font-size: 1rem;
    font-weight: bold;
    text-transform: uppercase;
    border-radius: 10px !important;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: none !important;
}
.accordion_category_post .accordion-item .accordion-button:after{
    content: unset !important;
}

.accordion_category_post .accordion-body{
    padding: 0;
}
.accordion_category_post .nav .nav-link{
    padding-top: 12px;
    padding-bottom: 12px;
    color: #000;
    font-size: clamp(1rem, 0.975rem + 0.125vw, 1.125rem);
}
.accordion_category_post .nav .nav-item + .nav-item .nav-link{
    border-top: 1px solid#dddddd;
}
.accordion_category_post .nav .nav-link.active{
    color: var(--cl-pri);
}


/*===============*/
.tab-service .nav-item .nav-link{
    color: #000;
    font-weight: bold;
}
.tab-service .nav-item .nav-link.active{
    background-color: var(--cl-pri);
    color: #fff;
}
.tab-service .nav-item .nav-link:hover{
    background-color: #eee;
}

.card-service-related{
    position: relative;
}
.card-service-related .thumbnail{
    height: 250px;
}
.card-service-related .content{
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 3%;
    background: linear-gradient(0deg, rgba(0,0,0,1) 0%,  rgba(255,255,255,0) 100%);
}
.card-service-related .content .title{
    font-size:16px;
    color: #fff;
    font-weight: bold;
}











/*===============*/
.col-right{
    overflow-y: scroll;
}
.col-right::-webkit-scrollbar{
    width: 1px;
}
.col-right::-webkit-scrollbar-track {
    /*-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.1);*/
    /*background-color: var(--cl-pri);*/
    border-radius: 50px;
}

/*===============*/
.gallery-next:after,
.gallery-prev:after{
    content: "" !important;
}

.gallery-next{
    right: -18px !important;
}
.gallery-prev{
    left:-18px !important;
}
.gallery-next img, .gallery-prev img{
    width: clamp(0.75rem, 0.6rem + 0.75vw, 1.5rem);
}




/*===============*/
.slide_show{
    height: 400px;
}
.slide_thumb{
    margin-top: 10px;
}
.slide_thumb{
    height: 150px;
}
.slide_thumb .swiper-slide {
    width: 25%;
    height: 150px;
    opacity: 1;
    background-color: #F8F8F8;
}

.slide_thumb .swiper-slide-thumb-active {
    opacity: 1;
}
.slide_show .swiper-slide,
.slide_thumb .swiper-slide{
    /*background-color: #F8F8F8;*/
}
.slide_show img,
.slide_thumb img{
    /*object-fit: contain;*/
}
.slide_thumb .swiper-slide{
    height: 150px;
}
.description-detail .select-quantinty{
    max-width: 100px;
    background-color: #ccc !important;
    box-shadow: none !important;
    font-size: 14px;
    border-radius: 0;
}
.description-detail .price{
    font-size: 24px;
    color: var(--cl-pri);
    flex: 1;
    font-weight: bold;
}

.description-detail .btn-register{
    background-color: var(--cl-pri);
    width: 180px;
    height: 45px;
    padding: 3px 10px;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-radius: 5px;
    border: none;
}


.add-to-cart{
    display: flex;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 0;
    border-top: 2px dashed #ebebeb;
    border-bottom: 2px dashed #ebebeb;
}

.box-quantity{
    display: flex;
    border: 2px solid #ebebeb;
    border-radius: 50rem;
    width: 150px;
    padding: 4px;
    position: relative;
    overflow: hidden;
}
.box-quantity button{
    width: 34px;
    height: 34px;
    border-radius: 50%;
    border: none;
    font-size: 20px;
    font-weight: bold;
}
.btn-sub{
    position: absolute;
    left: 5px;
}
.btn-add{
    position: absolute;
    right: 5px;
}
.box-quantity input{
    border: none !important;
    outline: none;
    text-align: center;
    height: 34px;
    width: 100%;
}

.btn-add-cart{
    margin-left: 50px;
    height: 40px;
    border-radius: 50rem;
    background-color: var(--cl-pri) !important;
    color: #fff;
    font-weight: 600;
}

.list-social-top.share-product .item{
    background-color: var(--cl-pri);
    color: #fff;
}


.tab-product{
    background-color: #465a65;
}
.tab-product .nav-item .nav-link{
    color: #fff;
    border: none;
}
.tab-product .nav-item .nav-link.active{
    color: #fff;
    background-color: var(--cl-pri);
}
.content-product{
    background-color: #f8f8f8;
}
.tab-content-product{
    padding: 1rem;
}


.btn-submit-register {
    background: #c3002a;
    width: 170px;
    font-size: 12px;
    line-height: 20px;
    color: #ffffff;
    text-transform: uppercase;
    border: none;
    height: 45px;
    border-radius: 5px;
}
#register{
    /*position: relative;*/

}
#register .btn-close{
    position: absolute;
    top: 8px;
    right: 8px;
    background-color: var(--cl-pri);
    opacity: 1;
    border-radius: 0;
    color: #fff;
    background-image: none;
    display: flex;
    align-items: center;
    justify-content: center;
}
.form-booking-service .form-control{
    box-shadow: none !important;
    border: solid 1px rgba(0, 0, 0, 0.1);
}

/*===============*/
#contact-form label{
    color: #595955;
}
#contact-form .form-control{
    border-radius: 0;
    box-shadow: none !important;
}


/*===============*/
.footer{
    background-color: #f2f2f2;
    color: #333333;
    font-size: 12px;
}

.footer .title-footer{
    color: #333333;
    font-size: clamp(0.875rem, 0.825rem + 0.25vw, 1.125rem);
    font-weight: 600;
    margin-bottom: 16px;
}

.footer ul{
    list-style: none;
    padding-left: 0rem;
    margin-bottom: 0;
}
.footer ul li{
    transition: all 0.3s ease-out;
}
.footer ul li + li{
    margin-top: 12px;
}
.footer ul li:hover{
    transform: translateX(5px);
}
.footer ul li a{
    color: #333333;
    text-decoration: none;
}
.footer ul li a:hover{
    color: var(--cl-pri);
}

.footer form button,
.footer form input{
    border-radius: 0;
}

.link-social-footer{
    display: flex;
    gap: 20px;
}
.link-social-footer .item a{
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all .2s ease-in-out;
    text-decoration: none;
    font-size: 20px;
    color: #fff;
}

.footer-bottom{
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    background-color: var(--cl-pri);
}
.copyright{
    color: #fff;
    text-align: center;
    font-size: clamp(0.75rem, 0.725rem + 0.125vw, 0.875rem);
}

/*pagination*/
.arrow-pagination{
    padding: 0;
}
.arrow-pagination ul{
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    list-style: none;
    padding-left: 0;
    /*border: 1px solid #ccc;*/
}

.arrow-pagination li a,
.arrow-pagination li .current{
    float: unset;
    margin: 0;
    width: 32px;
    height: 32px;
    border: 1px solid #c5c5c5;
    border-radius: 4px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #000;
    box-shadow: none;
    background: #fff;
}
.arrow-pagination li a:hover,
.arrow-pagination li .current:hover{
    border-color: #000;
}
/*.arrow-pagination li + li{
    border-left: 1px solid #ccc;
}*/

.arrow-pagination ul li .current{
    background-color: unset;
    color: unset;
}
.arrow-pagination ul li.active:not(.arrow-pagination ul li.active:first-child):not(.arrow-pagination ul li.active:last-child) .current{
    background-color: var(--cl-pri);
    color: #fff;
}



/*button contact*/
.wrapper{
    position: fixed;
    bottom: 2%;
    right:5px;
    z-index: 30;
    width: fit-content;
}

.ring {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.box-ring-outline {
    width: 100px;
    height: 100px;
    top: 0;
    left: 0;
    position: absolute;
    background-color: transparent;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    border: 2px solid rgba(30, 30, 30, 0.4);
    opacity: .1;
    animation: coccoc-alo-circle-anim 1.2s infinite ease-in-out;
    -webkit-transition: all .5s;
    -moz-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
    border-color: #ff2828;
    opacity: .5;
}

.box-ring {
    background-color: transparent;
    width: 100px;
    height: 100px;
    cursor: pointer;
    z-index: 200000 !important;
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    -webkit-transition: visibility .5s;
    -moz-transition: visibility .5s;
    -o-transition: visibility .5s;
    transition: visibility .5s;
    position: relative;
}

.box-ring-inline {
    width: 70px;
    height: 70px;
    top: 15%;
    left: 15%;
    transform: translate(-50%, -50%);
    position: absolute;
    background-color: #000;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    border: 2px solid transparent;
    opacity: .1;
    animation: coccoc-alo-circle-fill-anim 2.3s infinite ease-in-out;
    -webkit-transition: all .5s;
    -moz-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
    background-color: rgba(255, 40, 40, 0.5);
    opacity: .75 !important;
}

.box-ring-image {
    width: 50px;
    height: 50px;
    top: 25%;
    left: 25%;
    transform: translate(-50%, -50%);
    position: absolute;
    background: rgba(30, 30, 30, 0.1) url(https://drive.google.com/uc?id=1V3N2b79QjDWetC_ss9wI3c-xpWDymn9R) no-repeat center center;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    border: 2px solid transparent;
    opacity: 1;
    animation: coccoc-alo-circle-img-anim 1s infinite ease-in-out;
    padding: 5px;
    background-color: #ff2828;
}

.box-ring-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* .box-ring.hotline{
    margin-left:-70px;
} */

/* Phone button specific - displays phone number on right */
.box-ring.coccoc-alo-green:not(.zalo) .phone-number-display {
    position: absolute;
    right: 72px;
    top: 50%;
    transform: translateY(-50%);
}

.phone-number-display a {
    display: inline-block;
    background-color: #ff2828;
    color: white;
    padding: 8px 15px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: bold;
    white-space: nowrap;
    text-decoration: none;
    transition: background-color 0.3s;
}

.phone-number-display a:hover {
    background-color: #e02020;
}

/*zalo*/
.zalo.box-ring .box-ring-image {
    padding: 5px;
    background-color: #005be0;
}
.zalo.box-ring .box-ring-outline {
    border-color: #005be0;
}
.zalo.box-ring .box-ring-inline {
    background-color: rgba(0, 91, 224, 0.5);
}

.format-nd{
    font-size:1rem;
    line-height:1.625;
}

/* Animations */
@-moz-keyframes coccoc-alo-circle-anim {
    0% {
        transform: rotate(0) scale(.5) skew(1deg);
        opacity: .1
    }
    30% {
        transform: rotate(0) scale(.7) skew(1deg);
        opacity: .5
    }
    100% {
        transform: rotate(0) scale(1) skew(1deg);
        opacity: .1
    }
}

@-webkit-keyframes coccoc-alo-circle-anim {
    0% {
        transform: rotate(0) scale(.5) skew(1deg);
        opacity: .1
    }
    30% {
        transform: rotate(0) scale(.7) skew(1deg);
        opacity: .5
    }
    100% {
        transform: rotate(0) scale(1) skew(1deg);
        opacity: .1
    }
}

@-o-keyframes coccoc-alo-circle-anim {
    0% {
        transform: rotate(0) scale(.5) skew(1deg);
        opacity: .1
    }
    30% {
        transform: rotate(0) scale(.7) skew(1deg);
        opacity: .5
    }
    100% {
        transform: rotate(0) scale(1) skew(1deg);
        opacity: .1
    }
}

@keyframes coccoc-alo-circle-anim {
    0% {
        transform: rotate(0) scale(.5) skew(1deg);
        opacity: .1
    }
    30% {
        transform: rotate(0) scale(.7) skew(1deg);
        opacity: .5
    }
    100% {
        transform: rotate(0) scale(1) skew(1deg);
        opacity: .1
    }
}

@-moz-keyframes coccoc-alo-circle-fill-anim {
    0% {
        transform: rotate(0) scale(.7) skew(1deg);
        opacity: .2
    }
    50% {
        transform: rotate(0) scale(1) skew(1deg);
        opacity: .2
    }
    100% {
        transform: rotate(0) scale(.7) skew(1deg);
        opacity: .2
    }
}

@-webkit-keyframes coccoc-alo-circle-fill-anim {
    0% {
        transform: rotate(0) scale(.7) skew(1deg);
        opacity: .2
    }
    50% {
        transform: rotate(0) scale(1) skew(1deg);
        opacity: .2
    }
    100% {
        transform: rotate(0) scale(.7) skew(1deg);
        opacity: .2
    }
}

@-o-keyframes coccoc-alo-circle-fill-anim {
    0% {
        transform: rotate(0) scale(.7) skew(1deg);
        opacity: .2
    }
    50% {
        transform: rotate(0) scale(1) skew(1deg);
        opacity: .2
    }
    100% {
        transform: rotate(0) scale(.7) skew(1deg);
        opacity: .2
    }
}

@keyframes coccoc-alo-circle-fill-anim {
    0% {
        transform: rotate(0) scale(.7) skew(1deg);
        opacity: .2
    }
    50% {
        transform: rotate(0) scale(1) skew(1deg);
        opacity: .2
    }
    100% {
        transform: rotate(0) scale(.7) skew(1deg);
        opacity: .2
    }
}

@-moz-keyframes coccoc-alo-circle-img-anim {
    0% {
        transform: rotate(0) scale(1) skew(1deg)
    }
    10% {
        transform: rotate(-25deg) scale(1) skew(1deg)
    }
    20% {
        transform: rotate(25deg) scale(1) skew(1deg)
    }
    30% {
        transform: rotate(-25deg) scale(1) skew(1deg)
    }
    40% {
        transform: rotate(25deg) scale(1) skew(1deg)
    }
    50% {
        transform: rotate(0) scale(1) skew(1deg)
    }
    100% {
        transform: rotate(0) scale(1) skew(1deg)
    }
}

@-webkit-keyframes coccoc-alo-circle-img-anim {
    0% {
        transform: rotate(0) scale(1) skew(1deg)
    }
    10% {
        transform: rotate(-25deg) scale(1) skew(1deg)
    }
    20% {
        transform: rotate(25deg) scale(1) skew(1deg)
    }
    30% {
        transform: rotate(-25deg) scale(1) skew(1deg)
    }
    40% {
        transform: rotate(25deg) scale(1) skew(1deg)
    }
    50% {
        transform: rotate(0) scale(1) skew(1deg)
    }
    100% {
        transform: rotate(0) scale(1) skew(1deg)
    }
}

@-o-keyframes coccoc-alo-circle-img-anim {
    0% {
        transform: rotate(0) scale(1) skew(1deg)
    }
    10% {
        transform: rotate(-25deg) scale(1) skew(1deg)
    }
    20% {
        transform: rotate(25deg) scale(1) skew(1deg)
    }
    30% {
        transform: rotate(-25deg) scale(1) skew(1deg)
    }
    40% {
        transform: rotate(25deg) scale(1) skew(1deg)
    }
    50% {
        transform: rotate(0) scale(1) skew(1deg)
    }
    100% {
        transform: rotate(0) scale(1) skew(1deg)
    }
}

@keyframes coccoc-alo-circle-img-anim {
    0% {
        transform: rotate(0) scale(1) skew(1deg)
    }
    10% {
        transform: rotate(-25deg) scale(1) skew(1deg)
    }
    20% {
        transform: rotate(25deg) scale(1) skew(1deg)
    }
    30% {
        transform: rotate(-25deg) scale(1) skew(1deg)
    }
    40% {
        transform: rotate(25deg) scale(1) skew(1deg)
    }
    50% {
        transform: rotate(0) scale(1) skew(1deg)
    }
    100% {
        transform: rotate(0) scale(1) skew(1deg)
    }
}