/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/
li.html.custom.html_topbar_left {
    display: flex;
    gap: 30px;
    font-size: .9em;
    align-items: center;
}
.item-icon i {
    margin-right: 5px;
}
.custom-icbox-social {
    width: 30px;
    height: 30px;
    border-radius: 30px;
    overflow: hidden;
}
li.html.custom.html_topbar_right {
    display: flex;
    align-items: center;
    gap: 20px;
}
.header-search-form input#woocommerce-product-search-field-0 {
    min-width: 30vw;
    height: 50px;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
    font-size: 1em;
    color: #000;
}
.header-search-form button.ux-search-submit.submit-button.secondary.button.icon.mb-0 {
    height: 52px;
    border: unset;
    width: 55px;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
}
.dark .nav-vertical li li.menu-item-has-children>a, .dark .nav-vertical-fly-out>li>a, .dark .nav-vertical>li>ul li a, .dark .nav>li.html, .dark .nav>li>a, .nav-dark .is-outline, .nav-dark .nav>li>a, .nav-dark .nav>li>button, .nav-dropdown.dark .nav-column>li>a, .nav-dropdown.dark>li>a {
    color: hsl(0deg 0% 100%);
}
div#top-bar {
    border-bottom: 1px solid #ff000045;
    padding: 10px;
}


ul.header-nav.header-nav-main.nav.nav-left.nav-uppercase {
    justify-content: center;
}
.header-bottom ul.nav.header-nav.header-bottom-nav.nav-left.nav-box.nav-size-medium.nav-spacing-xlarge.nav-uppercase > li > a:hover {
    background-color: #b90e15;
}
.header:not(.transparent) .header-bottom-nav.nav > li > a {
    color: #ffffff;
    padding: 0px 30px;
}
.next-prev-thumbs li.has-dropdown:hover>.nav-dropdown, .no-js li.has-dropdown:hover>.nav-dropdown, li.current-dropdown>.nav-dropdown{
    left: 0;
}
ul.sub-menu.nav-dropdown.nav-dropdown-default {
    margin-top: 5px;
}
ul.sub-menu.nav-dropdown.nav-dropdown-default {
    margin-top: 5px;
    padding: 10px;
}
.sub-menu > li > a{
    color:#000;
}
.sub-menu > li > a:hover{
    color:#b90e15;
}
.sidebar-menu input#woocommerce-product-search-field-1 {
    height: 50px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0px;
}
.nav-sidebar.nav-vertical>li+li {
    border-top: unset;
}
.off-canvas:not(.off-canvas-center) .nav-vertical li>a {
    padding-left: 20px;
    font-size: .9em;
}
/*
Css menu đa cấp cho Flatsome
Author: levantoan.com
*/
    header#header .nav-dropdown {
        display: block;
    }
    header#header .nav-dropdown ul.sub-menu {
        position: absolute;
        left: 100%;
        top: 0;
        background: #fff;
        width: 250px;
        padding: 0;
        display: none !important;
        border-radius: 5px;
        -webkit-box-shadow: 1px 1px 15px rgb(0 0 0 / 15%);
        box-shadow: 1px 1px 15px rgb(0 0 0 / 15%);
    }
    header#header .nav-dropdown ul.sub-menu a {
        white-space: normal;
        margin: 0;
        padding: 10px 15px;
        font-weight: 400;
    }
    header#header .nav-dropdown li:hover > ul.sub-menu{
        display: block !important;
    }
    header#header .nav-dropdown li {
        border-right: 0;
        white-space: normal;
        width: 100%;
        display: block;
        position: relative;
        
    }
    header#header .nav-dropdown li.menu-item-has-children > a {
        font-weight: 400;
        text-transform: none;
        font-size: 1em;

    }
    header#header .nav-dropdown li.active>a {
        color: #e82c2a;
    }
    ul.sub-menu li.menu-item-has-children > a:after {
    content: '\f054';
    position: absolute;
    right: 12px;
    font-family: FontAwesome;
}
.nav-vertical li li.menu-item-has-children>a {
    text-transform: none;
    font-weight: normal;
}
.row-small .col {
    padding: 0px 15px 15px;
}
.product-category .box-text.text-center {
    padding-top: 0px;
    margin-top: -10px;
}
a.tlwd-fs-btn.button.primary.is-link.lowercase {
    margin: 0;
}
.product-category h5.uppercase.header-title {
    font-size: 16px;
}
a.tlwd-fs-btn.button.primary.is-link.lowercase:after {
    content: '\f178';
    font-family: FontAwesome;
    font-size: 11px;
    margin-left: 5px;
}
a.tlwd-fs-btn.button.primary.is-link.lowercase:hover{
    color:#b90e15;
}
.btn-after:after{
    content: '\f178';
    font-family: FontAwesome;
    margin-left: 5px;
}
.box.box-category.has-hover.box-default {
    border: 1px solid #dddddd;
    border-radius: 10px;
    overflow: hidden;
}
.tlwd-brand-grid {
    display: flex;
    gap: 15px;
}
.tlwd-brand-item {
    border: 1px solid #dddddd;
    border-radius: 10px;
    padding: 15px;
    overflow: hidden;
    
}
.tlwd-brand-item:hover img {
    transform: scale(1.1);
    transition: filter .6s, opacity .6s, transform .6s, box-shadow .3s;
}
.box-blog-post .is-divider{
    display: none;
}
.box-text-inner.blog-post-inner {
    display: flex;
    flex-wrap: wrap;
}
h5.post-title.is-large {
    order: 2;
    width: 100%;
}
.post-meta.is-small.op-8 {
    opacity: 1;
    color: #7e7e7e;
    order: 1;
    width: 100%;
    margin-bottom: 5px;
}
.box-blog-post .box-text.text-left {
    padding: 10px;
}
.blog-post-inner a.button.secondary.is-link.is-small.mb-0 {
    order: 3;
    width: 100%;
    margin: 0;
    text-transform: none;
    text-align: left;
    margin-top: 5px;
}
.blog-post-inner a.button.secondary.is-link.is-small.mb-0:after{
    content: '\f178';
    font-family: FontAwesome;
    font-size: 11px;
    margin-left: 5px;
}
.box-blog-post .post-title a {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.2;
    min-height: 2.4em;
}
.box-blog-post {
    border: 1px solid #dddddd;
    border-radius: 10px;
    overflow: hidden;
}
.tlwd-doi-tac-list {
    display: flex;
    gap: 15px;
}
.tlwd-doi-tac-item{
    width:20%;
    height:100px;
    padding:5px;
    border:1px solid #ddd;
    border-radius:10px;
    overflow:hidden;

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

.tlwd-doi-tac-item img{
    max-width:100%;
    max-height:100%;
    width:auto;
    height:auto;
    object-fit:contain;
    display:block;
}
.img-home {
    border-radius: 10px;
    overflow: hidden;
}
.icb-footer .icon-box-text.last-reset {
    font-size: .9em;
}
#footer a.ux-menu-link__link.flex {
    color: #fff;
}
.row-cs-footer {
    border-bottom: 1px solid #ffffff3d;
}
.absolute-footer {
    padding: 10px 0px 15px 0px !important;
}
.footer-secondary {
    padding: 0;
}
.sec-footer{
    padding-bottom: 15px !important;
}
.payment-icons.inline-block {
    margin-top: -15px;
}
.woocommerce-Tabs-panel--description img {
    width: 100%;
}
.product-small.box {
    border: 1px solid #dddddd;
    border-radius: 10px;
    overflow: hidden;
    padding: 10px;
}
.product-small.box .box-image img{
    border-radius: 10px;
}
.badge-container.absolute.left.top.z-1 {
    margin: 0px 0px 0px 1px;
   
}
.badge-inner.secondary.on-sale{
     border-top-left-radius: 10px;
}
a.woocommerce-LoopProduct-link.woocommerce-loop-product__link {
    color: #000;
    font-weight: 700;
}
span.amount{
    color:#c00b0b;
}
.product-small.box .add-to-cart-button a {
    width: 100%;
    padding: 5px 0px;
    border-radius: 5px;
}
.box-text.box-text-products {
    padding-bottom: 0;
}
span.price {
    font-size: 16px;
}
span.price {
    display: flex !important;
    flex-direction: row-reverse;
    justify-content: flex-end;
    gap: 15px;
}
ul.tlwd-brand-list-sidebar li {
    align-items: center;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    margin: 0;
}
ul.tlwd-brand-list-sidebar>li+li {
    border-top: 1px solid #ececec;
}
ul.tlwd-brand-list-sidebar li a{
    padding: 6px 0px;
}
.widget>ul>li .count {
    font-size: 1em;
    line-height: 0;
    opacity: 1;
}
#shop-sidebar aside {
    border: 1px solid #dddddd;
    padding: 10px;
    border-radius: 10px;
}
#shop-sidebar span.widget-title {
    color: #c00b0b;
    font-size: 1.1em;
}
.widget .is-divider {
    margin-top: .66em;
    max-width: 100%;
    height: 1px;
    background-color: #b90e16;
}
.widget_price_filter .price_slider_amount .button {
    background-color: #000000;
}
.widget ul.children {
    border-left: unset !important;
    margin: 0 0 3px 0px !important;
}
.widget>ul>li li>a {
    font-size: 1em;
}
.shop-page-title.category-page-title.page-title {
    background-color: #f1f1f1;
    padding-bottom: 10px;
}
.btn-chat {
    width: 97%;
}
.btn-chat.btn-facebook{
    background-color: #21569a ;
}
.btn-chat.btn-zalo{
    background-color: #00abff  ;
}
.tlwd-buy-now-btn{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    width:100%;
    min-height:60px;

    background:#c00b0b;
    color:#fff !important;

    border-radius:5px;
    text-decoration:none;

    transition:.3s;
}


.tlwd-buy-now-btn .title{
    font-size:28px;
    font-weight:700;
    text-transform:uppercase;
    line-height:1.1;
}

.tlwd-buy-now-btn .subtitle{
    font-size:14px;
    font-weight:400;
    margin-top:3px;
    line-height:1.2;
}
.woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
    border-radius: 10px;
    overflow: hidden;
}
.product-thumbnails a{
    border-radius: 10px;
    overflow: hidden;
}
.product-gallery, .product-thumbnails .col {
    padding: 0px 5px !important;
}
a.zoom-button.button.is-outline.circle.icon.tooltip.hide-for-small {
    border: unset;
    background-color: #c00b0b;
    color: #fff;
}
a.zoom-button.button.is-outline.circle.icon.tooltip.hide-for-small i.icon-expand{
    top: 1.5px;
}
p.price.product-page-price {
    font-size: 1.2em;
    margin-bottom: 10px;
}
button.single_add_to_cart_button.button.alt {
    border-radius: 5px;
}
.product_meta {
    font-size: .9em;
}
nav.woocommerce-breadcrumb.breadcrumbs.uppercase {
    margin-bottom: 15px;
}
.img-border{
    border-radius: 10px;
    overflow: hidden;
}
.nav-tabs>li.active>a {
    border-top-color: #c00b0b;
}
.nav-tabs>li>a{
    font-size: 1em;
    color:#000;
}
.product-section {
    border-top: unset;
}
.slider-nav-reveal .flickity-prev-next-button, .slider-nav-reveal .flickity-prev-next-button:hover{
    background-color: transparent;
    box-shadow: unset;
}
.nav-tabs>li>a {
    background-color: rgb(123 123 123 / 18%);
}
ul.product_list_widget li a:not(.remove) {
    font-size: .9em;
}
ul.product_list_widget li img{
    border-radius: 5px;
}
p.woocommerce-mini-cart__buttons.buttons a {
    border-radius: 5px;
}
a.button-continue-shopping.button.primary.is-outline {
    border-radius: 5px;
}
td.product-remove a {
    background-color: #fff;
    color: #000;
}
.shop_table .order-total td, .shop_table .order-total th, .shop_table thead th  , .cart_totals th.product-name{
    border-width: 1px;
}
.row-divided>.col+.col:not(.large-12) {
        border-left: unset;
    }
.cart-sidebar .widget-title {
    border-bottom: 1px solid #ececec;
    text-transform: uppercase;
}
a.checkout-button.button.alt.wc-forward {
    border-radius: 5px;
}
.select-resize-ghost, .select2-container .select2-choice, .select2-container .select2-selection, input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea{
    border-radius: 5px;
}
button.is-form.expand.button {
    border-radius: 5px;
}
p#billing_address_1_field {
    width: 100%;
}
button.button.expand {
    border-radius: 5px;
}
.col-inner.has-border {
    border-radius: 5px;
}
button#place_order {
    border-radius: 5px;
}
.archive h5.post-title.is-large{
    order: 2;
}
.archive .tlwd-post-date {
    order: 1;
    width: 100%;
}
.archive .blog-post-inner a.button.is-outline.is-small.mb-0{
    order: 3;
    width: 100%;
}
.archive .blog-post-inner a.button.is-outline.is-small.mb-0 {
    order: 3;
    width: 100%;
    border: unset;
    text-align: left;
    color: #b90e15;
    margin-right: 0;
    padding: 0;
    text-transform: none;
}
.archive .blog-post-inner a.button.is-outline.is-small.mb-0:after {
    content: '\f178';
    font-family: FontAwesome;
    font-size: 11px;
    margin-left: 5px;
}
.entry-content.single-page {
    padding-top: 0;
}
.social-icons.share-icons.share-row.relative.icon-style-outline a {
    color: #000;
}

@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/
.h3, h3 {
    font-size: 1.1em;
}
header#header{
    height: 70px;
}
.flickity-button-icon {
    background-color: #000 !important;
    fill: #fff !important;
}
.flickity-button{
    opacity: 1 !important;
}
.slider-nav-circle .flickity-prev-next-button .arrow, .slider-nav-circle .flickity-prev-next-button svg {
    border: 2px solid;
    border-radius: 100%;
    fill: #fff !important;
    border-color: #fff;
}
 .tlwd-brand-grid{
        overflow-x:auto;
        overflow-y:hidden;
        flex-wrap:nowrap;
        -webkit-overflow-scrolling:touch;
        scroll-snap-type:x mandatory;
        padding-bottom:10px;
    }

    .tlwd-brand-grid::-webkit-scrollbar{
        display:none;
    }

    .tlwd-brand-item{
        flex:0 0 140px;   /* Chiều rộng mỗi item */
        scroll-snap-align:start;
    }

 .tlwd-doi-tac-list{
        overflow-x:auto;
        overflow-y:hidden;
        flex-wrap:nowrap;
        -webkit-overflow-scrolling:touch;
        scroll-snap-type:x mandatory;
        padding-bottom:10px;
    }

    .tlwd-doi-tac-list::-webkit-scrollbar{
        display:none;
    }

    .tlwd-doi-tac-item{
        flex:0 0 140px;   /* Chiều rộng mỗi item */
        scroll-snap-align:start;
    }
    .row-cs-footer {
    border-bottom: unset;
}
.related.related-products-wrapper.product-section .flickity-button-icon {
        background-color: transparent; !important;
}
.related.related-products-wrapper.product-section .flickity-prev-next-button .arrow, .related.related-products-wrapper.product-section .flickity-prev-next-button svg{
    fill: #fff;
}
h1.product-title.product_title.entry-title {
    font-size: 1.3em;
}
.woocommerce-product-gallery .flickity-prev-next-button .arrow, .woocommerce-product-gallery .flickity-prev-next-button svg{
    fill: #fff;
}

}

@media (max-width: 549px){

.btn-chat {
    width: 100%;
}
}
/* 1. Ép các ô sản phẩm có chiều cao đồng đều theo dạng Flexbox */
.products .product-small.box {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.products .product-small .box-text {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    justify-content: space-between;
}

/* 2. Cố định chiều cao phần tên sản phẩm (tối đa 2 dòng, quá dài sẽ tự đổi thành ...) */
.products .product-small .title-wrapper {
    min-height: 2.8em;
}
.products .product-small .product-title a {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 3. Cố định khoảng không gian cho phần Sao đánh giá (tránh bị tụt khi không có sao) */
.products .product-small .star-rating {
    min-height: 18px;
}

/* 4. Đẩy nút MUA NGAY luôn xuống sát đáy khung */
.products .product-small .add-to-cart-button,
.products .product-small .price-wrapper {
    margin-top: auto;
}
/* Ẩn các icon thanh toán ở Absolute Footer */
.absolute-footer .payment-icons,
.footer-primary .payment-icons {
    display: none !important;
}