* {
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    font-weight: 300;
}
img {
    max-width: 100%;
}
a {
    text-decoration: none;
}
.app-container {
    overflow: hidden;
}
.app-header {
    border-bottom: 1px solid #FFFFFF80;
    padding: 0 0 0 20px;
    z-index: 999999;
}
.logo-head {
    max-width: 110px;
}
.app-header .nav a {
    font-weight: 500;
}
.bg_overlay {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 1;
}
.app-header .text-end span:not(.text-white) {
    border: 1px solid #FFFFFF80;
    width: 48px;
    text-align: center;
    height: 48px;
    border-radius: 100%;
}
.app-header .text-end span.text-white {
    font-weight: 500;
}
.app-header .search {
    width: 90px;
    height: 90px;
    border-left: 1px solid #FFFFFF80;
    cursor: pointer;
}
.app-header .text-end {
    width: 130px;
    height: 90px;
    border-left: 1px solid #FFFFFF80;
}
.app-header .search .dropdown-toggle::after {display: none}
.app-header .search .dropdown-menu button[type="submit"]{
    border: 0;
    width: 40px;
    height: 100%;
    background-color: transparent;
}
.app-header .nav > li:hover > a.nav-link {
    text-decoration: none;
}
.app-header .nav > li:hover > a:before {
    content: '';
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #eee;
    z-index: 9;
}
.app-header .nav li{
    position: relative;
}
.app-header .nav > li > a{
    line-height: 75px;
    position: relative;
}
.app-header .nav .sub-menu {
    min-width: 400px;
    padding-left: 0;
    z-index: 999;
    background-color: #fff;
    padding: 15px 0;
    list-style: none;
    display: none;
    border: 1px solid #E8E8E9;
}
.app-header .nav li.parent:after{
    content: '';
    position: absolute;
    width: 8px;
    height: 15px;
    background-image: url('../images/arrow_right.png');
    top: 10px;
    right: 10px;
}
.app-header .nav li.parent:hover > a {
    border-color: #BDBDBD;
}
.app-header .nav .sub-menu a{
    color: #232323;
    border-bottom: 1px solid transparent;
    white-space: nowrap;
}
.app-header .nav li:hover > ul.sub-menu{
    display: block;
}

.app-header .search .dropdown-menu {
    width: 400px;
    border-radius: 0;
    right: -2px !important;
}

@media (max-width: 1400px) {
    .app-header .nav > li {
        margin: 0 10px !important;
    }
}
.hover-stoke{
    position: relative;
    outline: none;
    transition: 1s ease-in-out;
    height: 40px;
    white-space: nowrap;
}
svg.border-stoke{
    position: absolute;
    left: -1px;
    top: -1px;
    fill: none;
    stroke: #333;
    stroke-dasharray: 150 580;
    stroke-dashoffset: 150;
    transition: 1s ease-in-out;
}
.hover-stoke.text-white svg.border-stoke{
    stroke: #fff;
}
.hover-stoke:hover {
    transition: 1s ease-in-out;
}

.hover-stoke:hover svg.border-stoke {
    stroke-dashoffset: -580;
}

.carousel-capt.text-start {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 20px;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.2) 100%);
    color: #fff;
    width: 40%;
    z-index: 999;
    padding-right: 10%;
}
.carousel-capt.text-start .btn {
    background: transparent;
    border-radius: 0;
    border-color: #fff;
    color: #fff;
}
.box-control-nav .carousel-control-next, .box-control-nav .carousel-control-prev{
    border-bottom: 1px solid rgba(255, 255, 255, .3);
    position: relative;
    width: 100%;
    opacity: 1;
}
.box-control-nav {
    position: absolute;
    bottom: 0;
    left: calc(40% - 100px);
    width: 100px;
    height: 192px;
    z-index: 999;
    border-left: 1px solid rgba(255, 255, 255, .2);
}

.home-page .subCat-titles {
    font-weight: 500;
    text-transform: uppercase;
    color: #7A7A7A;
    margin-bottom: 5px;
}
.home-page .title-cat {
    color: #232323;
    font-weight: 700;
    font-size: 36px;
    margin-bottom: 20px;
}
.home-page .description {
    color: #6D6E70;
    font-size: 16px;
}
.page-products .btn-more, 
.service-detail .btn-more, 
.home-page .btn-more, 
.home-sepage .btn-more, 
.layout-contact .btn-more, 
.detail-post .btn-more {
    border-color: #333;
    border-radius: 0;
}
.btn-more {
    font-size: 16px;
}

.home-page.home-product {
    background: #1C2125;
}
.home-product .subCat-titles {
    color: #A1A1A1;
    text-transform: uppercase;
    margin-bottom: 10px;
}
.home-product .title-post {
    font-weight: 700;
    font-size: 36px;
}
.home-product .btn {
    background: transparent;
    border-radius: 0;
    border-color: #fff;
    color: #fff;
    text-transform: uppercase;
    font-size: 16px;
}

.home-product .thumb img {
    aspect-ratio: 1 / 1;
    width: 100%;
}
.home-product .thumb {
    border-radius: 5px;
    overflow: hidden;
}
.content-category, .post-content {
    text-align: justify;
}
.object-fit-cover {
    object-fit: cover;
    width: 100%;
}
.object-fit-scaledown{
    object-fit: scale-down;
}

.home-product .item .position-absolute{
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 100%);
}
.home-product .title-product {
    font-size: 20px;
    text-transform: uppercase;
    color: #fff;
    padding: 20px 15px 15px;
    font-weight: 400;
    margin-bottom: 0;
}
.home-product .slick-arrow{
    width: 70px;
    height: 70px;
    border: none;
    background: rgba(0,0,0,.3);
    z-index: 99;
    opacity: 0;
}
.slick-arrow:before{
    display: none
}
.home-product .slick-arrow:hover{
    background: rgba(0,0,0,.5);
}
.home-product #homeProductSlide:hover .slick-arrow{
    opacity: 1;
}
.spin.position-absolute {
    top: 13%;
    left: 23%;
    z-index: 9;
    -webkit-animation: spin 10s linear infinite;
    animation: spin 10s linear infinite;
}
@-moz-keyframes spin {0% {-moz-transform:rotate(0deg) }100% {-moz-transform:rotate(359deg) }}
@-webkit-keyframes spin {0% {-webkit-transform:rotate(0deg) }100% {-webkit-transform:rotate(359deg) }}
@-o-keyframes spin {0% {-o-transform:rotate(0deg) }100% {-o-transform:rotate(359deg) }}
@-ms-keyframes spin {0% {-ms-transform:rotate(0deg) }100% {-ms-transform:rotate(359deg) }}
@keyframes spin {0% {transform:rotate(0deg) }100% {transform:rotate(359deg) }}

.home-service .title-post {
    font-weight: 400;
    font-size: 20px;
    text-transform: uppercase;
}
.home-service .btn-more.text-white{
    border-color: white;
}
.home-service .thumb img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    border-radius: 10px;
}

.home-service .box-service {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
    border: 1px solid #7A7A7A;
    border-radius: 10px;
    cursor: pointer;
}
.bg-image {
    position: relative;
    overflow: hidden;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
.hover-zoom {
    --mdb-image-hover-zoom-transition: all 0.3s linear;
    --mdb-image-hover-zoom-transform: scale(1.1);
}
.hover-zoom img {
    transition: var(--mdb-image-hover-zoom-transition);
}
.hover-zoom:hover img, .hover-zoom:hover video {
    transform: var(--mdb-image-hover-zoom-transform);
}
.home-service .box-service .icon.object-fit-cover {
    width: 60px;
    margin-left: 1rem;
}
.home-service .box-service .title-post{
    transition: 1s ease-in-out;
    margin-left: 1rem;
}
.home-service .box-service:hover .title-post{
    margin-left: 0;
}
.home-service .box-service:hover{
    border-color: transparent;
}
.home-service .box-service:hover .icon.object-fit-cover{
    display: none;
}
.home-service .box-service:hover .stt,
.home-service .box-service:hover .title-post,
.home-service .box-service:hover .btn-more{
    color: #fff;
}
.home-service .box-service .btn-more {
    border-color: transparent;
}
.home-service .box-service .btn-more .ms-2 path {
    transition: 1s ease-in-out;
}
.home-service .box-service:hover .btn-more .ms-2 path {
    fill: #fff !important;
    transition: 1s ease-in-out;
}
.home-service .box-service:hover .btn-more{
    border-color: #fff;
    margin-left: 0;
}
.home-service .box-service:hover .image-post{
    transition: 1s ease-in-out;
    opacity: 1;
}
.image-post {
    opacity: 0;
    transition: 1s ease-in-out;
}
.zindex-9 {
    z-index: 9;
}
.image-post .object-fit-cover {
    border-radius: 10px;
    aspect-ratio: 1 / 1;
    width: 100%;
}
.home-page.home-solution {
    background-color: #E7E8E7;
}
.home-solution .solution-item img {
    border-radius: 10px;
    aspect-ratio: 7 / 16;
    width: 100%;
    height: 100%;
}
.home-solution .panel-body .d-flex{
    margin-left: -15px;
    margin-right: -15px;
}
.home-solution .solution-item .thumb{
    overflow: hidden;
    border-radius: 10px;
}
.home-solution .solution-item {
    transition: 1s ease-in-out;
    padding: 0 15px;
    width: 20%;
}
.home-solution .solution-item:nth-child(2n+1) {
    margin-top: 60px;
}
.home-solution .title-solution {
    font-size: 20px;
    font-weight: 300;
}
.home-solution .solution-item:nth-child(1) .position-absolute {
    background: linear-gradient(180deg, rgba(71, 179, 140, 0) 0%, #47B38C 100%);
}
.home-solution .solution-item:nth-child(2) .position-absolute {
    background: linear-gradient(180deg, rgba(17, 197, 212, 0) 0%, #11C5D4 100%);
}
.home-solution .solution-item:nth-child(3) .position-absolute {
    background: linear-gradient(180deg, rgba(13, 129, 228, 0) 0%, #0D81E4 100%);
}
.home-solution .solution-item:nth-child(4) .position-absolute {
    background: linear-gradient(180deg, rgba(13, 79, 140, 0) 0%, #0D4F8C 100%);
}
.home-solution .solution-item:nth-child(5) .position-absolute {
    background: linear-gradient(180deg, rgba(61, 61, 61, 0) 0%, #3D3D3D 100%);
}
.layout-news .home-service > .thumb,
.layout-news .home-service > .box-service {
    aspect-ratio: 2 / 1;
}
.layout-news .image-post .object-fit-cover{
    aspect-ratio: auto;
}
.service-detail .image-post_default {
    overflow: hidden;
    border-radius: 10px;
    margin: 15px 0;
}
.service-detail .title-post {
    font-weight: 400;
    font-size: 40px;
    text-transform: capitalize;
}
.home-project {
    background-image: url('../images/bg_project_homepage.png');
    background-repeat: no-repeat;
    background-position: top left;
    background-size: 100% 50%;
}
.project-item img {
    aspect-ratio: 27/35;
    width: 100%;
    height: 100%;
}
.home-project .project-item .position-absolute.top-0{
    background: linear-gradient(180deg, #3D3D3D 0%, rgba(61, 61, 61, 0) 100%);
}
.home-project .project-item .title-project {
    font-weight: 300;
    font-size: 20px;
}

.home-news {
    border-top: 1px solid #7A7A7A
}
.home-news .article-item {
    border-bottom: 1px solid #232323;
}
.home-news .article-item .thumb img {
    width: 100%;
    aspect-ratio: 12/7;
}
.home-news .article-item .date-article {
    font-size: 12px;
    color: #7A7A7A;
}
.home-news .article-item .title-article a {
    font-weight: 400;
    font-size: 20px;
    color: #232323;
    display: block;
}
#app-footer {
    background-image: url('../images/bg_footer.png');
    background-repeat: no-repeat;
    background-position: top left;
    background-size: cover;
    position: relative;
}
#app-footer:before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(0deg, rgba(28, 35, 41, 0.8) 0%, #1C2329 100%);
    z-index: 1;
}
.footer-top, .footer-bottom {
    position: relative;
    z-index: 9;
}
.company-footer {
    font-weight: 700;
    font-size: 20px;
}
.footer-top .panel-head h4 {
    font-weight: 400;
    font-size: 32px;
}
.contact-footer {
    padding-left: 0;
    list-style: none;
}
.contact-footer li {
    font-size: 16px;
    padding-left: 25px;
    background-repeat: no-repeat;
    background-position: top 5px left;
}
.contact-footer li > a {
    color: #fff;
}
.contact-footer li.ic_market {
    background-image: url('../images/ic_market.png');
}
.contact-footer li.ic_phone {
    background-image: url('../images/ic_phone.png');
}
.contact-footer li.ic_email {
    background-image: url('../images/ic_email.png');
}
.footer-bottom {
    border-top: 1px solid #777;
}
.nav.nav-footer .nav-link{
    padding-left: 0;
}
.nav.nav-footer .nav-link:hover {
    text-decoration: underline;
}
.social-network  svg > path:first-child{
    transition: 1s ease-in-out;
}
.social-network > .facebook:hover svg > path:first-child{
    transition: 1s ease-in-out;
    fill: #0866ff;
    stroke: #0866ff;
}
.social-network > .tiktok:hover svg > path:first-child{
    transition: 1s ease-in-out;
    fill: #000;
    stroke: #000;
}
.social-network > .youtube:hover svg > path:first-child{
    transition: 1s ease-in-out;
    fill: #FF0033;
    stroke: #FF0033;
}
.partnerSlide .slick-arrow {
    width: 60px;
    height: 60px;
    z-index: 9999;
}
.partnerSlide .slick-arrow:before{
    display: none;
}
.partnerSlide .slick-arrow svg {
    width: 100%;
    height: 100%;
}
.partnerSlide .slick-prev.slick-arrow {
    left: initial;
    right: 0;
    top: calc(50% + 30px);
}
.partnerSlide .slick-next.slick-arrow {
    right: 0;
    top: calc(50% - 31px);
}
.partner-item img {
    max-width: 225px;
}
#homeProductSlide .item {
    padding-left: 20px;
}

.moblie-menu-btn {
    position: relative;
    width: 30px;
    height: 30px;
    z-index: 999;
    /*right: 0px;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
    transform: translate(0, -50%);*/
}
.moblie-menu-btn>* {
    display: block;
    position: relative;
    width: 27px;
    height: 2px;
    top: 14px;
    background: #fff;
    text-indent: -99999px;
}
.moblie-menu-btn>*:before,
.moblie-menu-btn>*:after {
    content: '';
    display: block;
    position: absolute;
    height: 2px;
    width: 27px;
    left: 0px;
    background: #fff;
    -webkit-transition: all .2s linear;
    -moz-transition: all .2s linear;
    -ms-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
}
.moblie-menu-btn>*:before {top: -7px;}
.moblie-menu-btn>*:after {bottom: -7px;}
.offcanvas-page .moblie-menu-btn.skin-1>*:before {
    width: 13px;
    -webkit-transform: rotate(315deg) translate(-4px,0);
    -moz-transform: rotate(315deg) translate(-4px,0);
    -o-transform: rotate(315deg) translate(-4px,0);
    -ms-transform: rotate(315deg) translate(-4px,0);
    transform: rotate(315deg) translate(-4px,0);
}
.offcanvas-page .moblie-menu-btn.skin-1>*:after {
    width: 13px;
    -webkit-transform: rotate(-315deg) translate(-4px,0);
    -moz-transform: rotate(-315deg) translate(-4px,0);
    -o-transform: rotate(-315deg) translate(-4px,0);
    -ms-transform: rotate(-315deg) translate(-4px,0);
    transform: rotate(-315deg) translate(-4px,0);
}
.offcanvas {
    max-width: 270px;
}
.offcanvas-bar {
    background: #333;
    height: 100%;
    overflow-y: auto;
}
.nav-offcanvas {
    border-bottom: 1px solid rgba(0,0,0,.3);
    box-shadow: 0 1px 0 rgba(255,255,255,.05);
    list-style: none;
    padding: 0;
}
.l3 {
    padding: 0;
    list-style: none;
}
.nav-offcanvas .offcanvas-header, 
.nav-offcanvas > li > a,
.nav-offcanvas .offcanvas-header, 
.nav-offcanvas .dropdown-menu > li > a,
.nav-offcanvas .l3 > li > a {
    border-top: 1px solid rgba(0,0,0,.3);
    text-shadow: 0 1px 0 rgba(0,0,0,.5);
}
.nav-offcanvas > li > a,
.nav-offcanvas .dropdown-menu > li > a,
.nav-offcanvas .l3 > li > a{
    color: #ccc;
    padding: 10px 15px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
    position: relative;
}
.nav-offcanvas .dropdown-menu > li > a {
    padding-left: 30px;
}
.nav-offcanvas .l3 > li > a {
    padding-left: 45px;
}
.nav-offcanvas .dropdown-menu {
    position: relative !important;
    transform: none !important;
    background-color: transparent;
    border: 0;
    padding: 0;
}
.nav-offcanvas .dropdown-toggle::after {
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    right: 15px;
}

.page-search .title-page,
.page-post-tag .title-page,
.page-product-tag .title-page,
.layout-product .title-page,
.page-about-us .title-page,
.page-category-post .title-page,
.page-detail-post .title-page {
    color: #fff;
    font-weight: 700;
    font-size: 40px;
}
.breadcrumb .breadcrumb-item.active, .breadcrumb .breadcrumb-item a,
.breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    text-decoration: none;
    color: #fff;
}
.breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    content: '•'
}
.articles-list .article-item .date-article {
    font-size: 12px;
    color: #7A7A7A;
}
.articles-list .article-item[data-type="video"] .title-article,
.articles-list .article-item .title-article a {
    font-weight: 400;
    font-size: 20px;
    color: #232323;
    display: block;
}
.articles-list .description {
    font-weight: 400;
    font-size: 16px;
    color: #6D6E70;
}
.app-container  .page-link{
    color: #333;
    border-color: transparent;
}
.app-container .active > .page-link, .layout-news .page-link.active{
    background-color: transparent;
    border-color: #333;
    color: #000;
}
.layout-news .post-title {
    font-weight: 400;
    font-size: 40px;
    text-transform: capitalize;
}
.layout-news .post-date{
    font-weight: 400;
    color: #7A7A7A;
}
.product-related .title_cat_related,
.posts-related .title_cat_related {
    font-weight: 700;
    font-size: 36px;
    margin: 0 0 15px 0;
}
.product-related .heading span,
.posts-related .heading span{
    color: #7A7A7A;
}
.product-related .slick-list,
.posts-related .slick-list {
    margin: 0 -10px;
}
.posts-related .article-item .title-article {
    height: 48px;
    text-overflow: ellipsis;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
}
.posts-related .article-item {
    border-bottom: 1px solid #333;
}
.posts-related .product-item,
.product-related .product-item,
.posts-related .item {
    padding: 0 10px;
}
.posts-related .article-item img {
    width: 100%;
    aspect-ratio: 12/7;
}
.posts-related .date-article {
    font-size: 12px;
    color: #7A7A7A;
}
.posts-related .article-item .title-article a {
    font-weight: 400;
    font-size: 20px;
    color: #232323;
    display: block;
}
.product-related .slick-slider,
.posts-related .slick-slider {
    overflow: hidden;
}
.product-related .slick-prev,
.posts-related .slick-prev {
    left: 0;
}
.product-related .slick-next,
.posts-related .slick-next {
    right: 0;
}
.product-related .slick-arrow,
.posts-related .slick-arrow {
    width: 50px;
    height: 50px;
    z-index: 99;
    top: 35%;
}
.post-content img {
    width: 100% !important;
    height: auto !important;
    object-fit: cover;
}
.product-related .slick-arrow svg,
.posts-related .slick-arrow svg{
    width: 100%;
    height: 100%;
}
.aside-block .title_aside {
    font-weight: 700;
    font-size: 20px;
    margin: 0 0 15px 0;
}
.posts-latest .post-image {
    width: 60px;
    height: 60px;
}
.posts-latest .post-image img {
    width: 100%;
    aspect-ratio: 1/1;
}
.posts-latest .post-info {
    width: calc(100% - 60px);
    padding-left: 10px;
}
.posts-latest .title-latest {
    line-height: 20px;
    margin-bottom: 0;
    text-overflow: ellipsis;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    height: 60px;
}
.posts-latest .title-latest a{
    font-size: 15px;
    font-weight: 500;
    color: #333;
    display: block;
}

.layout-about .box-shadow {
    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, .12);
    border-radius: 10px;
    background-color: #fff;
}
.layout-about .box-shadow .infor {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #232323;
}
.layout-about .infor .number {
    font-weight: 700;
    font-size: 70px;
    display: inline-block;
    position: relative;
    color: #232323;
    line-height: 70px;
}
.layout-about .infor .number:after{
    content: '+';
    font-weight: 400;
    font-size: 24px;
    position: absolute;
    right: -20px;
    top: 0;
    line-height: 30px;
}
.layout-about .infor .titles {
    color: #232323;
    font-weight: 400;
    font-size: 20px;
}
.layout-about .description {
    font-weight: 400;
    color: #232323;
}
.layout-about .home-page{
    position: relative;
}
.layout-about .home-page:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url('../images/bg_about_top.png');
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: top left;
    opacity: .3;
}
.layout-about .our-value-comision {
    background-image: url('../images/bg_about_middle.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.layout-about .our-value-comision:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(28, 33, 37, 0.95);
}
.layout-about .subCat-titles {
    font-weight: 400;
    font-size: 14px;
    color: rgba(161, 161, 161);
    margin-bottom: 10px;
}
.our-value-comision .thumb .infor{
    font-size: 20px;
    font-weight: 400;
}
.timeline .number-year {
    font-weight: 900;
    font-size: 70px;
    text-align: center;
    position: relative;
    color: #232323;
}
.timeline .row > .col:nth-child(2n + 1) .item-timeline .number-year{
    padding-bottom: 35px;
    margin-bottom: 35px;
}
.timeline .row > .col:nth-child(2n) .item-timeline .number-year{
    padding-top: 35px;
    margin-top: 35px;
    order: 9;
}
.timeline .title-year{
    font-weight: 400;
    font-size: 20px;
    margin-bottom: 10px;
}
.timeline .description{
    color: #6D6E70
}
.timeline .item-timeline{
    height: 100%;
    position: relative;
}
.timeline .item-timeline:after{
    content: '';
    width: 30px;
    height: 30px;
    position: absolute;
    left: 50%;
    top: 50%;
    bottom: -15px;
    transform: translate(-50%, -50%);
    border-radius: 100%;
    border: 1px solid #232323;
    background-color: #fff;
    z-index: 99;
}
.timeline .panel-body:before {
    content: '';
    width: 100%;
    height: 1px;
    background-color: #232323;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
    z-index: 9;
}

.product-item .thumb img {
    width: 100%;
    aspect-ratio: 1/1;
}
.product-item .product-cat a {
    font-family: Inter;
    font-weight: 400;
    font-size: 12px;
    color: #7A7A7A;
    text-transform: uppercase;
}
.product-item .product-title a{
    display: block;
    font-weight: 400;
    font-size: 20px;
    text-transform: capitalize;
    color: #232323;
}
.product-price del{
    font-weight: 400;
    font-size: 14px;
    text-decoration: line-through;
    color: #6D6E70;
}
.product-price ins{
    font-weight: 700;
    font-size: 14px;
    text-transform: capitalize;
    color: #232323;
    text-decoration: none;
}
.layout-product .select-custom {
    border-radius: 0;
    border-color: #E7E8E7;
    color: #7A7A7A;
    font-size: 12px;
    min-width: 220px;
}
.layout-product .input-dropdown::before {
    content: '';
    width: 30px;
    height: 100%;
    background-color: #E7E8E7;
    position: absolute;
    top: 0;
    right: 0;
}
.layout-product .input-dropdown::after {
    content: '';
    width: 6px;
    height: 12px;
    background-image: url('../images/arrow_right.png');
    position: absolute;
    top: 12px;
    right: 11px;
    z-index: 9;
    transform: rotate(90deg);
    background-size: contain;
}
.form-control.select-custom:focus {
    box-shadow: none;
}
.layout-product .select-custom option {
    font-size: 12px;
}
.product-filter .btn-submit-filter {
    border-color: #232323;
    border-radius: 0;
    margin-top: 10px;
}
.product-category .list-category {
    list-style: none;
    padding: 0;
    margin: 0;
}
.product-category .list-category > li > a {
    font-family: Inter;
    font-weight: 400;
    font-size: 16px;
    text-transform: uppercase;
    color: #2A2A2A;
}

.noUi-target,.noUi-target * {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-touch-action: none;
  touch-action: none;
  -ms-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.noUi-target {
    position: relative;
    direction: ltr;
}

.noUi-base {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
    /* Fix 401 */
}

.noUi-origin {
    position: absolute;
    right: 0;
    top: 0;
    left: 0;
    bottom: 0;
}

.noUi-handle {
    position: relative;
    z-index: 1;
}

.noUi-stacking .noUi-handle {
    z-index: 10;
}

.noUi-state-tap .noUi-origin {
    -webkit-transition: left 0.3s,top .3s;
    transition: left 0.3s,top .3s;
}

.noUi-state-drag * {
    cursor: inherit !important;
}

/* Painting and performance;
 * Browsers can paint handles in their own layer.
 */
.noUi-base,.noUi-handle {
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
}

/* Slider size and handle placement;
 */
.noUi-horizontal {
    height: 1px;
}

.noUi-horizontal .noUi-handle {
    width: 11px;
    height: 11px;
    border-radius: 50%;
    left: -5px;
    top: -5px;
    background-color: #2A2A2A;
}

/* Styling;
 */
.noUi-background {
    background: #2A2A2A;
}

.noUi-connect {
    background: #ccc;
    -webkit-transition: background 450ms;
    transition: background 450ms;
}

.noUi-origin {
    border-radius: 2px;
}

.noUi-target {
    border-radius: 2px;
}

.noUi-target.noUi-connect {

}

/* Handles and cursors;
 */
.noUi-draggable {
    cursor: w-resize;
}

.noUi-vertical .noUi-draggable {
    cursor: n-resize;
}

.noUi-handle {
    cursor: default;
    -webkit-box-sizing: content-box !important;
    -moz-box-sizing: content-box !important;
    box-sizing: content-box !important;
}

.noUi-handle:active {
    border: 8px solid #345DBB;
    border: 8px solid rgba(53,93,187,0.38);
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    left: -14px;
    top: -14px;
}

/* Disabled state;
 */
[disabled].noUi-connect,[disabled] .noUi-connect {
    background: #B8B8B8;
}

[disabled].noUi-origin,[disabled] .noUi-handle {
    cursor: not-allowed;
}

.carouselProductSingle .image-item img {
    aspect-ratio: 1/1;
}
.carouselProductSingle .slick-arrow {
    top: unset;
    right: 0;
    width: 70px;
    height: 70px;
    transform: none;
    z-index: 9;
}
.carouselProductSingle .slick-arrow svg {
    width: 100%;
    height: 100%;
}
.carouselProductSingle .slick-next {
    bottom: 71px;
}
.carouselProductSingle .slick-prev {
    bottom: 0;
    left: unset;
}
.title-product {
    font-weight: 400;
    font-size: 40px;
    text-transform: capitalize;
}
.title-infor {
    font-weight: 700;
    font-size: 24px;
}
.tags a {
    color: #232323;
}
.product-tabs .tab-pane ,
.solution-tabs .tab-pane {
    padding: 30px 0;
}
.product-tabs .tab-pane table,
.solution-tabs .tab-pane table {
    border: 0;
    width: 100%;
}
.product-tabs table td{
    padding: 10px;
    border-bottom: 1px solid #dedede;
}
.product-tabs > .nav > li  a,
.solution-tabs > .nav > li a {
  color: #6D6E70;
  font-weight: 400;
}
.product-tabs > .nav > li a.active,
.solution-tabs > .nav li:not(.slick-active) a.active,
.solution-tabs > .nav li.slick-active a,
.product-tabs > .nav > li a:hover ,
.solution-tabs > .nav > li a:hover {
    color: #232323;
    font-weight: 500;
    border-color: transparent;
    border-bottom-color: #232323;
}
.solution-tabs > .nav > li a {
    padding: 25px 0;
}
.post-solution {
    list-style: none;
    padding: 0;
    margin: 0;
}
.post-solution > li > a {
    font-family: Inter;
    font-weight: 400;
    font-size: 16px;
    text-transform: uppercase;
    display: block;
    padding: 7px 0;
    color: #232323;
}
.post-solution > li.active > a {
    font-weight: 600;
}

.layout-contact .title-address {
    font-weight: 400;
    font-size: 24px;
    text-transform: capitalize;
    margin-bottom: 15px;
}

.layout-contact .list-infor li,
.layout-contact .list-infor li a {
    font-family: Roboto;
    font-weight: 400;
    font-size: 16px;
    color: #232323;
}
.layout-contact .list-infor li {
    padding-left: 20px;
    background-repeat: no-repeat;
    background-position: top 5px left 0;
    margin-bottom: 10px;
}
.layout-contact .list-infor li.market {
    background-image: url('../images/cts_market.png');
}
.layout-contact .list-infor li.phone {
    background-image: url('../images/cts_phone.png');
}
.layout-contact .list-infor li.email {
    background-image: url('../images/cts_mail.png');
}
.layout-contact .list-infor {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}
.maps-google, .maps-google iframe {
    width: 100%;
    height: 100%;
    min-height: 300px;
}
.form-contact .form-control {
    border-radius: 0;
    border-top: transparent;
    border-left-color: transparent;
    border-right-color: transparent;
    padding: 0;
    min-height: 40px;
}
.form-contact .form-control:focus {
    box-shadow: none;
    border-bottom-color: rgba(13,110,253,.25);
}
.form-contact .uk-form-label {
    font-weight: 400;
    font-size: 16px;
}
.form-contact .uk-form-label small{
    color: #FF5100;
}
.solution-tabs .nav-item.slick-slide {
    text-align: center;
}
.solution-tabs .nav-tabs.slick-slider {
    border-top: 1px solid #dee2e6;
    border-left: 1px solid #dee2e6;
    border-right: 1px solid #dee2e6;
}
.solution-tabs .slick-prev{
    left: 0;
    z-index: 99;
    width: 41px;
    height: 41px;
    background-color: rgba(228, 228, 228, 0.5);
}
.solution-tabs .slick-next{
    right: 0;
    z-index: 99;
    width: 41px;
    height: 41px;
    background-color: rgba(228, 228, 228, 0.5);
}
.layout-news .box-service.slick-active .stt,
.layout-news .box-service.slick-active .title-post,
.layout-news .box-service.slick-active .btn-more {
    color: #fff;
    margin-left: 0;
}
.layout-news .box-service.slick-active .btn-more .ms-2 path {
    fill: #fff !important;
    transition: 1s ease-in-out;
}
.layout-news .box-service.slick-active .image-post{
    opacity: 1;
}
.layout-news .box-service.active .title-post{
    margin-left: 0;
}
.layout-news .slick-slider .box-service {
    margin-bottom: 0 !important;
}
.layout-news .slick-slider {
    margin-bottom: 30px;
}
.layout-news .box-service.active{
    border-color: transparent;
}
.layout-news .box-service img {
    height: 100%;
    border-radius: 10px;
}
.layout-news .home-service .slick-prev {
    left: 1px;
    width: 40px;
    height: 40px;
    z-index: 999;
    background-color: rgba(228, 228, 228, 0.5);
}
.layout-news .home-service .slick-next {
    right: 1px;
    width: 40px;
    height: 40px;
    z-index: 999;
    background-color: rgba(228, 228, 228, 0.5);
}
#tabCategoryNav {
    border-bottom: 0;
}
#tabCategoryNav li > a {
    padding: 0;
    border-color: #7A7A7A;
    border-radius: 10px;
    aspect-ratio: 35/19;
    overflow: hidden;
}
#tabCategoryNav li > a img{
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: 1s ease-in-out;
}
#tabCategoryNav li > a.active ,
#tabCategoryNav li:hover > a{
    border-color: transparent;
}
#tabCategoryNav li > a .title-product {
    font-weight: 400;
    font-size: 24px;
    text-transform: uppercase;
    color: #232323;
}
#tabCategoryNav li > a .stt{
    color: #7A7A7A;
    font-weight: 400;
}
#tabCategoryNav li.slick-active > a .title-product,
#tabCategoryNav li:hover > a .title-product,
#tabCategoryNav li > a.active .title-product,
#tabCategoryNav li.slick-active > a .stt,
#tabCategoryNav li:hover > a .stt,
#tabCategoryNav li > a.active .stt{
    color: #fff;
}
#tabCategoryNav li.slick-active > a img,
#tabCategoryNav li > a.active img,
#tabCategoryNav li:hover > a img{
    opacity: 1;
}
#tabCategoryContent .title-category {
    font-weight: 400;
    font-size: 40px;
    text-transform: capitalize;
}
#tabCategoryContent .image-category_default {
    overflow: hidden;
    border-radius: 10px;
    margin: 15px 0;
}
#tabCategoryNav .slick-prev {
    left: 0;
    z-index: 9;
    width: 30px;
    height: 30px;
}
#tabCategoryNav .slick-next {
    right: 0;
    z-index: 9;
    width: 30px;
    height: 30px;
}
#tabCategoryNav li.slick-active > a:before,
#tabCategoryNav > li:hover > a:before,
#tabCategoryNav > li > a.active:before{
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(rgba(61, 61, 61, 0) 0%, rgb(23, 23, 23) 100%);
}


@media (max-width: 991px) {
    #app-header {
        padding: 10px;
        border-bottom: 0;
    }
    #app-header img {
        max-height: 50px;
    }
    .app-header .text-end {
        width: auto;
        height: 50px;
        border-left: 0;
    }
    .container{
        width: 100% !important;
        max-width: none !important;
        padding: 0 15px;
    }
    .lightbox-modal .lightbox-content iframe {
        min-height: auto;
        height: 240px;
    }
}

@media (min-width: 768px) {
    .nav-item.mb-4.active {
        order: -1;
    }
}

@media (max-width: 767px) {
    .home-service .box-service,
    .image-post .object-fit-cover {
        aspect-ratio: 2 / 1;
    }
    .home-solution .solution-item {
        width: 50%;
        margin-top: 0 !important;
        margin-bottom: 30px;
    }
    .home-solution .solution-item:last-child {
        width: 100%;
    }
    .home-solution .solution-item:last-child img {
        aspect-ratio: 1 / 1;
    }
    .copyright {
        margin: 20px 0;
    }
    .home-project .number,
    .home-project .play {
        width: 50px;
    }
    .home-project .number svg,
    .home-project .play svg {
        width: 100%;
    }
    .page-search .heading,
    .page-post-tag .heading,
    .page-product-tag .heading,
    .layout-contact .heading,
    .layout-product .heading,
    .page-about-us .heading,
    .page-category-post .heading,
    .page-detail-post .heading {
        position: unset !important;
        transform: none !important;
        margin-top: 20px !important;
    }
    .breadcrumb .breadcrumb-item.active, 
    .breadcrumb .breadcrumb-item a, 
    .breadcrumb .breadcrumb-item + .breadcrumb-item::before {
        color: #333;
    }
    .page-search .title-page,
    .page-post-tag .title-page,
    .page-product-tag .title-page,
    .layout-contact .title-page,
    .layout-product .title-page,
    .page-about-us .title-page,
    .page-category-post .title-page,
    .page-detail-post .title-page {display: none;}

    .layout-product > .panel-body,
    .layout-news > .panel-body {
        margin-top: 0 !important;
        padding-top: 20px !important;
    }
    .layout-about .home-page{
        padding: 0 !important;
    }
    .our-value-comision .title-post.text-white.mb-5 {
        font-size: 20px;
    }
    .our-value-comision {
        padding: 1px 0 0 !important;
    }
    .our-value-comision .thumb.position-relative img{
        width: 100%;
        aspect-ratio: 1/1;
    }
    .product-item .thumb img {
        aspect-ratio: 3/2;
    }
    .box-service img.icon {
        display: none;
    }
    .home-service .box-service .title-post{margin-left: 0}
    .home-service .box-service .btn-more{border-color: #232323}
}

@media (max-width: 600px) {
    .timeline .panel-body::before {
        width: 1px;
        height: 100%;
    }
    .timeline .col {
        flex: auto;
    }
    .timeline .col + .col {
        margin-top: 30px;
    }
    .layout-about .timeline .col .item-timeline .number-year{
        text-align: left;
        font-size: 30px;
        margin: 0 !important;
        padding: 0 !important;
    }
    .timeline .row > .col:nth-child(2n) .item-timeline .number-year {
        order: 0;
    }
    .timeline .item-timeline {
        padding-left: 20px;
    }
    .timeline .item-timeline::after {
        width: 20px;
        height: 20px;
        left: 0;
        top: 24px;
    }
}
:root {
  --lightbox: rgb(0 0 0 / 0.75);
  --carousel-text: #fff;
}
@keyframes zoomin {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
    100% {
        transform: scale(1);
    }
}

.gallery-item {
    display: block;
}

.gallery-item img {
    box-shadow: 0 1rem 1rem rgba(0, 0, 0, 0.15);
}

.gallery-item:hover img {
    box-shadow: 0 1rem 1rem rgba(0, 0, 0, 0.35);
}

.lightbox-modal .modal-content {
    background-color: var(--lightbox);
}

.lightbox-modal .btn-close {
    position: absolute;
    top: 1.25rem;
    right: 1.25rem;
    font-size: 1.25rem;
    z-index: 10;
    filter: invert(1) grayscale(100);
}

.lightbox-modal .modal-body {
    display: flex;
    align-items: center;
    padding: 0;
}

.lightbox-modal .lightbox-content {
    width: 100%;
}

.lightbox-modal .carousel-indicators {
    margin-bottom: 0;
}

.lightbox-modal .carousel-indicators [data-bs-target] {
    background-color: var(--carousel-text) !important;
}

.lightbox-modal .carousel-inner {
    width: 75%;
}

.lightbox-modal .carousel-inner img {
    animation: zoomin 10s linear infinite;
}

.lightbox-modal .carousel-item .carousel-caption {
    right: 0;
    bottom: 0;
    left: 0;
    padding-bottom: 2rem;
    background-color: var(--lightbox);
    color: var(--carousel-text) !important;
}

.lightbox-modal .carousel-control-prev,
.lightbox-modal .carousel-control-next {
    width: auto;
}

.lightbox-modal .carousel-control-prev {
    left: 1.25rem;
}

.lightbox-modal .carousel-control-next {
  right: 1.25rem;
}

@media (min-width: 1400px) {
    .lightbox-modal .carousel-inner {
        max-width: 60%;
    }
}

[data-bs-theme = "dark"] .lightbox-modal .carousel-control-next-icon,
[data-bs-theme = "dark"] .lightbox-modal .carousel-control-prev-icon {
    filter: none;
}

.btn-fullscreen-enlarge,
.btn-fullscreen-exit {
    position: absolute;
    top: 1.25rem;
    right: 3.5rem;
    z-index: 10;
    border: 0;
    background: transparent;
    opacity: .6;
    font-size: 1.25rem;
}

.bi {
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: -0.035em;
    fill: white;
}
#lightboxCarousel .carousel-item img {
    height: 100vh;
    object-fit: cover;
}
.lightbox-modal .lightbox-content iframe {
    width: 100%;
    min-height: 100vh;
}
.video-list .thumb img {
    width: 100%;
    aspect-ratio: 16/9;
}
.video-list .title-article{
    font-weight: 400;
    font-size: 24px;
    color: #232323;
    margin-bottom: 1rem !important;
    margin-top: 1rem !important;
}
.video-list .description{
    font-weight: 400;
    font-size: 16px;
    color: #232323;
}
.video-list .date-article.my-3 {
    display: none;
}

.call-btn {
    position: fixed;
    margin: 0;
    padding: 0;
    right: 0;
    background: #fff;
    background-color: transparent;
    cursor: pointer;
    font-size: 0;
    width: 110px;
    height: 110px;
    z-index: 1000;
}
.call-btn.hotline {
    bottom: 0;
}
.call-btn.zalo {
    bottom: 85px;
}
.call-btn.linkin {
    bottom: 170px;
}
.call-btn .tel {
    position: absolute;
    top: 50%;
    left: 45px;
    color: #fff;
    font-size: 17px;
    width: 170px;
    text-align: center;
    padding-left: 30px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
    transform: translate(0, -50%);
    line-height: 36px;
    border: 1px solid #fb0309;
    border-radius: 20px;
    background: #fb0309;
    z-index: -1;
    font-weight: bold;
    font-family: Arial;
    text-shadow: 1px 1px 2px #5f5f5f;
}
.call-btn .tada {
    border-radius: 100px;
    width: 40px;
    height: 40px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-top: -20px;
    margin-left: -20px;
    animation-name: tadaa;
    animation-duration: 0.5s;
    animation-iteration-count: infinite;
    animation-direction: alternate;
}
.call-btn.hotline .tada {
    background: #db0005;
}
.call-btn.zalo .tada {
    background: #0068ff;
}
.call-btn.linkin .tada {
    background: #0068ff;
}

.call-btn .tada a:before {
    content: "";
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    text-decoration: none;
    width: 20px;
    height: 20px;
    margin-left: 10px;
    position: absolute;
    top: 50%;
    margin-top: -10px;
}

.call-btn.hotline .tada a:before {
    background-image: url('../images/calling_white.png');
}
.call-btn.zalo .tada a::before {
    background-image: url('../images/zalo.png');
    width: 25px;
    height: 25px;
    margin-left: 8px;
    margin-top: -12px;
}
.call-btn.linkin .tada a:before {
    background-image: url('../images/linken.png');
}

@keyframes tadaa {
    from {
        transform: rotate(-20deg);
    }
    to {
        transform: rotate(20deg);
    }
}

.call-btn .pulse {
    width: 60px;
    height: 60px;
    border-radius: 100px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -30px;
    margin-left: -30px;
    animation-name: pulse;
    animation-duration: 0.5s;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    animation-timing-function: ease-in-out;
}

.call-btn.hotline .pulse {
    background: rgba(219, 0, 5, 0.6);
}
.call-btn.zalo .pulse {
    background: rgba(0, 104, 255, .5);
}

.call-btn.linkin .pulse {
    background: rgba(0, 104, 255, .5);
}

@keyframes pulse {
    from {
        width: 55px;
        height: 55px;
        margin-top: -27.5px;
        margin-left: -27.5px;
    }
    to {
        width: 60px;
        height: 60px;
        margin-top: -30px;
        margin-left: -30px;
    }
}

.call-btn .zoomIn {
    width: 80px;
    height: 80px;
    
    border-radius: 100px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -40px;
    margin-left: -40px;
    animation-name: zoomIn;
    animation-duration: 1s;
    animation-iteration-count: infinite;
    animation-timing-function: ease-out;
}

.call-btn.hotline .zoomIn {
    border: 2px solid #db0005;
}
.call-btn.zalo .zoomIn {
    border: 2px solid #0068ff;
}
.call-btn.linkin .zoomIn {
    border: 2px solid #0077B7;
}

@keyframes zoomIn {
    from {
        width: 40px;
        height: 40px;
        margin-top: -20px;
        margin-left: -20px;
    }
    to {
        width: 80px;
        height: 80px;
        margin-top: -40px;
        margin-left: -40px;
    }
}
.social-network .linkin {
    border-radius: 100%;
    border: 1px solid #7b8085;
}

.social-network .linkin:hover g rect.bg{
    fill: #0068ff
}
.offcanvas {
    z-index: 99999999;
}