/*
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.   ***************/
body,
h1,
h2,
h3,
h4,
h5,
h6,
.nav-line-bottom > li > a {
    font-family: 'Be Vietnam Pro', sans-serif !important;
}

.h2, h2 {
    line-height: 1.8;
}

h1.custom-title-h1 {
    text-transform: uppercase;
}

.nav>li>a, .nav-dropdown>li>a, .nav-column>li>a, .nav-vertical-fly-out>li>a {
    color: #505050;
}

body {
    overflow: hidden;
}

.fp-custom-clause {
    display: block;
    color: #e92432;
    width: fit-content;
    margin-left: auto;
    font-size: 14px;
    padding: 2px 0;
}

.bs_text-header {
    margin-top: 12px;
    padding-bottom: 0;
    color: #5e5a54;
    font-weight: 400;
}

.heading_3 {
    font-size: 1.4rem;
    font-weight: 600;
    color: #d70312;
}

.heading_3 p {
    padding-bottom: 10px;
    margin-bottom: 0;
}

.bs-text-header .col {
    padding-bottom: 0;
}

.bs-best-selling .row .row:not(.row-collapse),
.bs-product-categories .row .row:not(.row-collapse){
    margin-top: 0;
}

.bs-best-selling .col {
    padding-bottom: 0;
}

.bs-best-selling .heading_3 > p {
    margin-bottom: -4px;
}

.bs-product-categories .box.box-category {
    border: 1px solid #111;
    background-color: #fff;
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.08);
    border-radius: 8px;
    height: 100%;
}

.bs-product-categories .box.box-category:hover,
.fp-job-tab-link.active .box.box-category{
    border-color: #d70312;
}

.bs-product-categories .box.box-category:hover .header-title,
.fp-job-tab-link.active .box.box-category .header-title{
    color: #d70312;
}

.bs-product-categories .fp-job-tab-link  {
    height: 100%;
}

.bs-product-categories .col {
    padding-bottom: 0;
}

.bs-product-categories img {
    padding: 12px;
    border-radius: 4px;
}

.bs-product-categories .box-text {
    padding: 10px 16px 16px;
}

.bs-product-categories .header-title {
    font-size: 1rem;
}

.bs-product-categories .box-text p {
    margin-bottom: .1em;
    text-transform: lowercase;
    font-size: 0.825rem;
    margin-top: 8px;
    color: #5e5a54;
}

.bs-product-categories .product-rating-custom {
    display: none;
}

.bs-policy-box {
    display: flex;
    border: 2px solid #505050;
    background-color: #fff;
    align-items: center;
    padding: 8px 10px;
    border-radius: 8px;
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.08);
}

.bs-policy-box:not(:last-child) {
    margin-bottom: 12px;
}

.bs-policy-box .icon-box-img {
    margin-bottom: 0;
}

.bs-policy-box img {
    width: 46px;
}

.header_logo {
    border-radius: 8px;
}

.bs-reviews .flickity-page-dots {
    bottom: -8px;
}

.bs-reviews .slider-nav-light .flickity-page-dots .dot.is-selected {
    background-color: #505050;
}

.slider-nav-light .flickity-page-dots .dot {
    border-color: #505050;
}

.bs-video .col {
    padding-bottom: 0;
}

.bs-consultation-form {
    background-color: #f4f2ee;
}

.bs-consultation-form .section-bg {
    width: 50%;
    clip-path: polygon(0 0, 100% 0, 85% 100%, 0 100%);
}

.bs-consultation-form .col {
    padding-bottom: 0;
}

.bs-consultation-form .bs-consultation-left-text .col-inner {
    background-color: rgba(255, 255, 255, 0.8);
    padding: 16px;
    border-radius: 8px;
    width: fit-content;
    max-width: 500px;
    margin-left: 0 !important;
    margin-right: 80px;
}

.bs-consultation-form .bs-consultation-left-text p {
    margin-bottom: 0;
}

.bs-consultation-form .heading_3 {
    font-size: 2rem;
    margin-bottom: 8px;
}

.bs-consultation-form .col.medium-6 {
    display: flex;
    align-items: center;
}

.bs-suggest-product .heading_3 p {
    font-size: 1.8rem;
    margin-bottom: 18px;
}


.fp-job-product-wrap .col-inner,
.bs-products .col-inner {
    box-shadow: 0 1px 6px rgba(0,0,0,0.08);
    transition: box-shadow .2s, transform .2s;
}

.bs-products .product-small.col {
    padding-top: 4px !important;
}

.fp-job-product-wrap .col-inner:hover,
.bs-products .col-inner:hover,
.bs-job-products .col-inner:hover {
    box-shadow: 0 4px 16px rgba(0,0,0,0.12) !important;
    transform: translateY(-2px);
    color: #111;
}

.bs-job-products .col {
    padding: 0;
}

.bs-video-demo {
    max-width: 840px;
    margin-left: auto;
    margin-right: auto;
}

.bs-testimonial-slider {
    margin-top: 0 !important;
}

.bs-testimonial-slider .col {
    width: 29%;
}

.bs-testimonial-,
.bs-job-products{
    margin-top: 0 !important;
}

.bs-job-products {
    grid-column: 2 / -1;
}

.bs-product-categories {
    margin-top: -4px;
}

#wrapper, #main {
    background-color: #f9f9f9;
}

.uu-slider-top,
.uu-collection .section-content,
.uu-contact{
    max-width: 2048px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.uu-collection {
    justify-content: center;
}

.text-title-slider {
    font-size: 2.2rem;
}

.banner h2 {
    line-height: 1.2;
}

.nav-dropdown > li > a:hover,
.nav-column > li > a:hover,
.nav-vertical-fly-out > li > a:hover {
    color: var(--primary-color);
}

.woocommerce-result-count {
    display: none !important;
}

.woocommerce-ordering {
    display: none !important;
}

.nav>li>a.header-vertical-menu__link {
    display: block;
    font-size: 0.875rem;
    padding-top: 0;
    padding-bottom: 0;
}

/* custom search */
.html_topbar_right {
    width: 90%;
}

.custom-search-wrapper {
    display: block;
    margin: 0 auto;
    position: relative;
    width: 100%;
    max-width: 600px;
}

.search-input-group {
    display: flex;
    background: #fff;
    border: 2px solid #e1e1e1;
    border-radius: 8px;
    overflow: hidden;
    transition: all 0.3s ease;
}

.search-input-group:focus-within {
    border-color: #f1c40f;
    box-shadow: 0 0 8px rgba(130, 35, 35, 0.1);
}

.search-field {
    flex: 1;
    border: none !important;
    padding: 10px 15px !important;
    height: 40px !important;
    box-shadow: none !important;
    outline: none !important;
}

.search-submit {
    margin-right: 0;
    background: transparent !important;
    border: none !important;
    color: #333;
    font-size: 16px;
    padding: 0 15px !important;
    cursor: pointer;
}

.search-submit:hover {
    color: var(--primary-color);
}

.header-vertical-menu__opener {
    border-radius: 10px;
    cursor: pointer;
}

.header-bottom.wide-nav .flex-row{
    gap: 16px;
}

.header-bottom.wide-nav ul.nav > li,
.header-bottom.wide-nav .flex-col.flex-left {
    flex: 0 0 auto;
    flex-shrink: 0;
}

.header-bottom.wide-nav ul.nav {
    gap: 16px;
}

.sort-options::-webkit-scrollbar {
    display: none;
}

/* custom mega menu */
.header-vertical-menu__fly-out {
    margin-top: 6px;
    border-radius: 10px;
}

.nav-dropdown-has-shadow .nav-dropdown {
    padding: 0;
    font-size: 0.875rem;
    padding-top: 8px;
    padding-bottom: 8px;
}

.nav-dropdown.nav-dropdown-default>li>a {
    margin-left: 0;
    margin-right: 0;
    padding-left: 16px;
    padding-right: 16px;
}

.custom-bottom-tools {
    position: absolute;
    bottom: -50%;
    opacity: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    transition:
        opacity 0.5s,
        transform 0.3s,
        max-height 0.6s,
        filter 0.6s,
        -webkit-transform 0.3s,
        -webkit-filter 0.6s;
}

.product-small:hover .custom-bottom-tools {
    bottom: 2px;
    opacity: 1;
    right: 50%;
    transform: translateX(50%);
}

.custom-bottom-tools .yith-add-to-wishlist-button-block,
.custom-bottom-tools .custom-icon-btn {
    width: 40px;
    height: 40px;
    background-color: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 10px;
}

.custom-bottom-tools .yith-add-to-wishlist-button-block {
    line-height: 0;
}

.box-image .quick-view,
.box-image .quick-view-added {
    display: none;
}

.custom-bottom-tools .custom-icon-btn {
    color: var(--add-to-wishlist-icon-color, #000);
    display: flex;
    justify-content: center;
    align-items: center;
}

.custom-bottom-tools .yith-add-to-wishlist-button-block:hover,
.custom-bottom-tools .custom-icon-btn:hover {
    background-color: #f1c40f;
    color: #ffffff;
}

.custom-bottom-tools .yith-add-to-wishlist-button-block:hover svg {
    color: #ffffff;
}

.yith-wcwl-add-to-wishlist-button:is(button) svg
.custom-bottom-tools .custom-icon-btn svg {
    width: 1.875rem;
    height: 1.875rem;
}

.custom-bottom-tools .yith-wcwl-add-to-wishlist-button__label {
    display: none;
}

.custom-bottom-tools .yith-wcwl-add-to-wishlist-button {
    margin-right: 0;
    margin-bottom: 0;
    justify-content: center;
}

.custom-bottom-tools .yith-wcwl-icon-svg__wrapper svg {
    width: 24px;
    height: 24px;
    color: #000;
}

.custom-bottom-tools .yith-wcwl-add-to-wishlist-button--added .yith-wcwl-icon-svg__wrapper svg {
    color: #e92432;
}

.product-rating-custom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 12px;
}

.product-rating-custom .rating-score-wrapper {
    color: #f1c40f;
}

.product-rating-custom .rating-score-wrapper {
    display: flex;
    align-items: flex-start;
}

.product-rating-custom svg {
    width: 20px;
    height: 20px;
}

.dynamic-cat {
    display: flex;
    flex-wrap: nowrap;
}

.dynamic-cat .col {
    flex: 0 0 auto;
    flex-shrink: 0;
}

.dynamic-cat-item {
    display: block;
    border: 1px solid #ececec;
    border-radius: 15px;
    overflow: hidden;
    text-align: center;
    transition: all 0.3s;
    background: #fff;
}

.dynamic-cat-item:hover {
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

.cat-img img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    padding: 4px;
    border-radius: 20px;
}

.cat-info {
    padding: 15px 10px;
}

.cat-name {
    font-size: 16px;
    font-weight: bold;
    color: #d12027;
    margin-bottom: 5px;
    line-height: 1.2;
    min-height: 2.4rem;
}

.cat-count {
    font-size: 14px;
    color: #666;
}

.uu-product-cat-grid,
.uu-product-cat-grid .product-category.col {
    padding: 10px;
}

.uu-banner-side img {
    border-radius: 8px;
}

.uu-product-cat-grid .col-inner .box-image{
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 8px;
}

.dynamic-cat-item.is-active {
    border: 2px solid #f8b600;
}

.widget .current-cat > a {
    color: #822323;
    font-weight: 500;
}
.custom-sorting-wrapper a.is-active,
.product-categories a.is-active,
.dynamic-cat-item.is-active .cat-name {
    color: #f8b600;
}

.read-more-content {
    margin-top: 30px;
    margin-bottom: 40px;
    max-height: 620px;
    overflow: hidden;
    position: relative;
    transition: max-height 0.5s ease-in-out;
}

.read-more-content .section {
    padding-left: 0;
    padding-right: 0;
}

.read-more-content:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 150px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
    z-index: 10;
}

.read-more-content.expanded {
    max-height: 100000px;
}

.read-more-content.expanded:after {
    display: none;
}

.read-more-button-wrapper {
    text-align: center;
    margin-top: -20px;
    position: relative;
    z-index: 10;
}

.custom-sorting-wrapper {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 10px 0;
    border-bottom: 1px solid #ececec;
    margin-bottom: 20px;
}

.custom-sorting-wrapper .sort-label {
    display: flex;
    align-items: center;
}

.sort-options {
    margin: 0;
    padding: 2px;
    list-style: none;
    display: flex;
    gap: 15px;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
   -webkit-overflow-scrolling: touch;
		-ms-overflow-style: none;
		scrollbar-width: none;

}

.sort-options::-webkit-scrollbar {
		display: none;
}

.sort-options > li {
    margin-bottom: 0;
    flex: 0 0 auto;
    flex-shrink: 0;
    padding: 2px 6px;
    border: 1px solid #ccc;
    box-shadow:
        0 1px 3px -2px rgba(0, 0, 0, 0.12),
        0 1px 2px rgba(0, 0, 0, 0.24);
    border-radius: 8px;
}

.sort-options li a.active {
    color: #d82f2f;
    font-weight: bold;
}

.custom-sorting-wrapper .sort-label {
    flex: 0 0 auto;
    flex-shrink: 0;
}

.shop-sidebar .widget {
    border: 1px solid #eee;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 20px;
}
.shop-sidebar .widget-title {
    background-color: #d82f2f !important;
    color: #fff !important;
    padding: 10px 15px;
    text-transform: uppercase;
    font-weight: bold;
}

.woof_products_top_panel li button {
  font-size: 0 !important;
}
.woof_products_top_panel li button::before {
  content: "XÓA TẤT CẢ";
  font-size: 14px;
  font-weight: bold;
}

.product-info .out-of-stock,
.product-info .yith-add-to-wishlist-button-block,
.product-info .is-divider {
    display: none;
}

.shop-container .product-main {
    padding-bottom: 0;
}

.product-main .row.content-row {
    padding-bottom: 70px;
}

.product-main .product-info {
    padding-bottom: 0;
    max-width: 665px;
}

.shop-container .product-images .badge-container {
    display: none;
}

.custom-star {
    color: #f1c40f;
}

.stock-status span {
    font-weight: bold;
}

.stock-status .in-stock {
    color: #27ae60;
}

.stock-status .sold-out {
    color: #e74c3c;
}

.product-meta {
    border-bottom: 1px solid #eee;
    padding-bottom: 10px;
}

.product-meta strong {
    color: #333;
    margin-bottom: 15px;
    font-size: 15px;
    line-height: 1.8;
}

.product-main .product_meta .posted_in {
    display: none !important;
}

.row-small > .flickity-viewport > .flickity-slider > .col a,
.woocommerce-product-gallery__wrapper {
    border-radius: 8px;
    overflow: hidden;
}

.product-info form.cart {
    margin-bottom: 0;
}

.product-info .product-short-description {
    margin-top: 10px;
}

.product-info div.quantity {
    display: flex;
    align-items: center;
    margin-bottom: 30px;
}

.product-info div.quantity::before {
    content: 'Số lượng:';
    font-weight: bold;
    margin-right: 15px;
    color: #333;
}

.quantity input[type='number'] {
    font-size: unset;
    max-width: 60px;
    width: 60px;
    height: 40.5px;
    box-shadow: none;
}

.quantity .button.is-form {
    width: 40px;
    color: #e92432;
    font-size: 1rem;
}

.product-info div.quantity .is-form {
    text-shadow: none;
    transition: all 0.2s ease;
}

.product-info div.quantity .is-form:hover {
    background-color: #e92432;
    color: #fff;
    border-color: #f05d23;
}

.variable-items-wrapper .variable-item {
    border: 1px solid #e2e2e2;
    box-shadow: none !important;
    outline: none !important;
    background-color: #ffffff;
}

.variable-items-wrapper .variable-item .variable-item-contents {
    color: #333;
    font-size: 14px;
    padding: 6px 10px;
}

.variable-items-wrapper .variable-item {
    border-radius: 8px !important;
}

.variable-items-wrapper .variable-item.selected {
    border-color: #e92432;
    background-color: #fff;
}

.variable-items-wrapper .variable-item.selected::after {
    content: '';
    position: absolute;
    right: -1px;
    bottom: -1px;
    border-style: solid;
    border-width: 0 0 12px 12px;
    border-color: transparent transparent #e92432 transparent;
    border-bottom-right-radius: 8px;
}

.variations label {
    font-size: 16px;
    margin-bottom: 0;
    min-width: 94px;
}

.variations .reset_variations {
    display: none;
    top: 50%;
    transform: translateY(-50%);
}

.woocommerce-Price-amount.amount,
.woocommerce-Price-amount bdi,
ins .woocommerce-Price-amount {
    text-decoration: none;
    color: #e92432;
    font-weight: bold;
}


del,
del .woocommerce-Price-amount.amount,
del .woocommerce-Price-amount bdi {
    color: #525252 !important;
}

.fp-price del{
    color: #999;
    font-weight: 400;
    font-size: 0.6em;
    vertical-align: middle;
}
.fp-price ins{
    text-decoration: none;
    color: #c8102e;
}

.shop_table tr td:last-of-type {
    text-align: left;
}

.price-wrapper .price {
    display: flex;
    gap: 8px;
    align-items: center;
}

.custom-contact-price {
    color: #e92432;
    font-weight: bold;
}

.single_variation_wrap .woocommerce-variation.single_variation {
    display: none !important;
}

.category-title-h1 {
    padding-bottom: 10px;
}

.single_add_to_cart_button {
    display: none;
}

.variations th.label {
    width: 16%;
    min-width: 80px;
}

.custom-container-action-button .doc-row,
.custom-container-action-button .action-group {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.custom-container-action-button .doc-row a {
    color: currentColor;
}

.custom-container-action-button .doc-row a:last-child {
    margin-bottom: 30px;
}

.custom-container-action-button .btn-doc {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    max-height: 38px;
    max-width: 200px;
    width: 200px;
    padding: 4px 6px;
    border: 1px solid #525252;
    border-radius: 8px;
    opacity: 0.8;
    transition: opacity 0.15s ease;
}

.custom-container-action-button .btn-doc:hover {
    opacity: 1;
}

.custom-container-action-button .btn-doc .icon {
    width: 24px;
    height: 24px;
}

.custom-container-action-button .action-group {
    justify-content: center;
    max-width: 644px;
}

.custom-container-action-button .custom-btn-action,
.custom-container-action-button .btn-agency {
    max-width: 300px;
    width: 300px;
    padding: 6px 12px;
    margin-right: 0;
    margin-bottom: 0;
    max-height: 52px;

    background-image: linear-gradient(135deg, #ecb411 50%, #e92432 50%);
    background-size: 300% 100%;
    background-position: 99% 0;
    transition: all 0.5s ease;
}

.custom-container-action-button .custom-btn-action:hover,
.custom-container-action-button .btn-agency:hover {
    background-position: 1% 0%;
    box-shadow: none;
}

.custom-container-action-button .custom-btn-action {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

.custom-btn-action.btn-call span{
    font-size: 20px;
    display: flex;
}

.custom-container-action-button .custom-btn-action .cart-icon {
    width: 24px;
    height: 24px;
}

.add_to_cart_button.added {
    display: block;
}

a.added_to_cart {
    display: none;
}


.kapro-grid-layout {
    display: flex;
    gap: 24px;
    margin-top: 24px;
}

.kapro-img-box img {
    width: 240px;
    height: 200px;
    object-fit: cover;
    border-radius: 8px;
}

.kapro-item .kapro-text {
    font-weight: 600;
    padding-top: 10px;
}

.product-footer .woocommerce-tabs {
    border-top: none;
    padding-top: 0;
    padding-bottom: 0;
}

.tab-panels .woocommerce-Tabs-panel {
    padding-top: 20px;
}

.woocommerce-tabs .tabs {
    flex-wrap: nowrap;
    text-align: center;
}

.product-footer .product-section-title {
    border-bottom: 3px solid #822323;
}

.price-bridge-display {
    margin-top: 12px;
    margin-bottom: 12px;
}

.review-form-inner.has-border,
#review_form input,
#review_form textarea {
    border-radius: 8px;
}

#review_form input:user-invalid,
#review_form textarea:user-invalid {
    border: 1px solid #e92432 !important;
    background-color: #fff5f5;
}

#review_form.was-validated input:invalid,
#review_form.was-validated textarea:invalid {
    border: 1px solid #e92432 !important;
}

.nav-line > li > a:before {
    display: none;
}

.tabbed-content .nav > li.active > a {
    color: #e92432;
    font-weight: bold;
}

.tabbed-content .nav > li > a {
    font-size: 1rem;
    text-transform: inherit;
    min-width: 150px;
    justify-content: center;
    padding-bottom: 0;
}

.tabbed-content .nav > li > a,
.tabbed-content .nav > li.active > a {
    line-height: 2;
}

.wishlist-items-wrapper .product-add-to-cart a,
.product-footer .product-section-title {
    padding-top: 10px;
    padding-bottom: 10px;
    margin-bottom: 18px;
    text-transform: inherit;
    color: #e92432;
}

.wishlist-items-wrapper td.product-name > a {
    color: #000000;
}

.wishlist-items-wrapper .wishlist-empty {
    font-size: 1.5rem;
}

.tabbed-content .nav > li > a:hover {
    color: #e92432;
}

.woocommerce-tabs .tab-panels {
    padding-top: 0;
}

.product-footer .product-section {
    border-top: none;
}

.recently-viewed-container {
    margin-bottom: 40px;
    margin-top: 10px;
}

.related-products-container .product-small.col,
.recently-viewed-container .product-small.col {
    padding: 0;
}

.product-small .star-rating {
    display:none;
}

.product-footer .tabbed-content .nav,
.related-products-container p.title,
.recently-viewed-container p.title {
    margin-bottom: 20px;
    margin-top: 30px;
    border-bottom: 2px solid #505050;
}

.related-products-container {
    padding-bottom: 10px;
}

.product-footer .related-products-wrapper .flickity-button {
    height: 60px;
    width: 36px;
    background-color: transparent;
    top: 50%;
    transform: translateY(-50%) !important;
    box-shadow: none;
}

.product-footer .related-products-wrapper .flickity-button svg {
    width: 36px;
    height: 36px;
    margin-top: 0;
    border: 2px solid currentColor;
    border-radius: 100%;
    z-index: 2;
}

.product-footer .related-products-wrapper .flickity-button:hover svg {
    background-color: #822323;
    border-color: #822323;
}

.product-footer .related-products-wrapper .flickity-button:hover svg .arrow {
    fill: #ffffff !important;
}

.slider-nav-reveal .flickity-prev-next-button.previous {
    left: 1px !important;
}

.slider-nav-reveal .flickity-prev-next-button.next {
    right: 1px !important;
}

.woocommerce-Reviews.row .woocommerce-Reviews-title {
    display: none;
}

.woocommerce-Reviews.row p {
    padding-top: 20px;
}

.blog-wrapper .post-item.is-selected .box-text-inner {
    background-color: rgba(0, 0, 0, 0.4);
    padding: 20px;
    border-radius: 8px;
}

.blog-wrapper .post-item.is-selected .cat-label {
    display: none;
}

.badge-outline, .badge-circle {
    margin-left: 0;
}

.blog-wrapper .row.large-columns-3 .col-inner,
.product-small.col .col-inner {
    box-shadow:
        0 1px 3px -2px rgba(0, 0, 0, 0.12),
        0 1px 2px rgba(0, 0, 0, 0.24);
}

.product-small.col .col-inner {
    border: 1px solid #f1f1f1;
}

.post-sidebar {
    border-left: none !important;
}

.post-sidebar.large-3.col {
    padding-left: 0;
}

.uu-blog-sidebar {
    border: 1px solid #eee;
    border-radius: 20px;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.uu-blog-sidebar .col.small-12 {
    padding-top: 12px;
    padding-bottom: 0;
}

.uu-blog-posts .box {
    display: flex;
    align-items: start;
    gap: 8px;
}

.uu-blog-posts .box-image {
    border-radius: 4px;
}

.uu-blog-posts .box-text {
    padding: 0;
}

.blog-wrapper .row.large-columns-3 .post-title,
.uu-blog-posts .post-title {
    font-size: 0.875rem;
    font-weight: 500;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.blog-wrapper .row.large-columns-3 .box-text-inner {
    padding-left: 10px;
    padding-right: 10px;
}

.blog-wrapper .row.large-columns-3 .from_the_blog_excerpt {
    font-weight: 400;
}

.uu-blog-posts .is-divider,
.uu-blog-posts .from_the_blog_excerpt {
    display: none;
}

.uu-blog-right-col .col.post-item{
    padding-top: 10px;
    padding-bottom: 10px;
}

.row-large.row-divided {
    display: flex;
    align-items: flex-start;
}

.post-sidebar.large-3.col {
    position: -webkit-sticky;
    position: sticky;
    top: 100px;
    z-index: 99;
    height: fit-content;
}

.entry-header-custom {
    margin-bottom: 20px;
}


.breadcrumbs,
.breadcrumbs a,
.custom-breadcrumb {
    font-weight: bold;
    font-size: 0.875rem;
    margin-bottom: 20px;
}

.breadcrumbs a,
.custom-breadcrumb a,
.custom-breadcrumb .breadcrumb-category a {
    color: #505050;
    text-decoration: none;
}


.breadcrumbs,
.breadcrumbs a:last-child,
.custom-breadcrumb a:last-child,
.custom-breadcrumb .breadcrumb-category a:last-child,
.custom-breadcrumb span:last-child {
    color: #e92432;
}

.breadcrumbs .divider,
.breadcrumb-divider {
    color: #525252;
    margin: 0 2px;
}

.custom-post-title {
    color: #000000;
    font-size: 32px;
    line-height: 1.2;
    margin-bottom: 15px;
}

.entry-meta-wrapper {
    border-top: 1px solid #ececec;
    border-bottom: 1px solid #ececec;
    padding: 10px 0;
    font-size: 14px;
    margin-top: 38px;
}

.meta-author-info {
    display: flex;
    align-items: center;
}

.meta-author-info .author-name {
    color: #525252;
    font-weight: bold;
    margin-left: 8px;
}

.meta-divider {
    margin: 0 10px;
    color: #ddd;
}

.post-date {
    color: #666;
}

.entry-image-wrapper img {
    width: 100%;
    aspect-ratio: 2/1;
    object-fit: cover;
    border-radius: 8px;
}

.lwptoc {
    border-radius: 0;
    width: 100%;
    margin-bottom: 25px;
}

.lwptoc_i {
    max-height: 400px;
    overflow-y: auto;
    border-radius: 8px;
}

.lwptoc_i::-webkit-scrollbar {
    width: 4px;
}

.lwptoc_i::-webkit-scrollbar-track {
    background: transparent;
}

.lwptoc_i::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;

    background-clip: padding-box;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
}

.lwptoc_i::-webkit-scrollbar-thumb:hover {
    background: #525252;
    background-clip: padding-box;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
}

.lwptoc_title:before {
    content: '\2630';
    margin-right: 6px;
    font-size: 18px;
    /* color: #333; */
    text-decoration: none;
    display: inline-block;
    vertical-align: text-bottom;
}

.lwptoc_title {
    font-weight: bold;
    font-size: 20px;
}

.lwptoc_item a {
    text-decoration: none !important;
    font-size: 16px;
    line-height: 1.6;
}

.lwptoc_item_level_2 {
    padding-left: 25px !important;
    font-size: 15px !important;
}

.lwptoc_header {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    position: relative;
}

.lwptoc_toggle {
    margin-left: auto;
}

.lwptoc_toggle_label {
    position: relative;
    padding: 4px 8px;
    font-size: 18px !important;
    cursor: pointer;
    font-weight: bold;
}

.lwptoc-notInherit .lwptoc_i DIV a.lwptoc_toggle_label:hover {
    border-bottom: none !important;
    color: #525252;
}

.lwptoc_toggle_label::after {
    content: '';
    width: 24px;
    height: 24px;
    display: inline-block;
    vertical-align: middle;
    background-color: #525252;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path fill="none" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="4" d="M36 18L24 30L12 18"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path fill="none" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="4" d="M36 18L24 30L12 18"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
}

.lwptoc_toggle::before,
.lwptoc_toggle::after {
    display: none;
}

.custom-related-posts .box-text-inner {
    background-color: transparent !important;
}

.custom-related-posts .post-title {
    text-align: left;
}

.custom-related-posts .from_the_blog_excerpt {
    opacity: 1;
    text-align: left;
}

.custom-related-posts .col-inner {
    border-radius: 8px;
    overflow: hidden;
}

#comments .comment-respond {
    border-radius: 8px;
}

.kk-star-ratings .kksr-legend {
    margin-left: .25rem;
}

.kk-star-ratings .kksr-muted {
    vertical-align: middle;
    opacity: 0.7;
}

.product-cat-header {
    display: flex;
    padding-top: 10px;
    flex-wrap: nowrap;
}

.product-cat-header > .col {
    flex: 0 0 auto;
    flex-shrink: 0;
}


.uu-product-cat-header div.col-inner {
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    overflow: hidden;
}

.uu-testimonial-row {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    }

.uu-testimonial-row::-webkit-scrollbar {
    height: 3px;
}

.uu-testimonial-row::-webkit-scrollbar-track {
    background-color: #f1f1f1;
    border-radius: 10px;
}

.uu-testimonial-row::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
    transition: background 0.3s ease;
}

.uu-testimonial-row::-webkit-scrollbar-thumb:hover {
    background: #999999;
}

.uu-testimonial-row .col {
    flex: 0 0 auto;
    flex-shrink: 0;
}

.header-nav .account-item > a {
    color: #ccc !important;
}

.account-item.active > a,
.header-nav a.account-link:hover {
    color: #ffffff !important;
}

.lightbox-content {
    border-radius: 8px;
    overflow: hidden;
}

.woocommerce-form-row input.woocommerce-Input {
    border-radius: 8px;
}

.login-form-popup .account-register-inner {
    padding: 30px 12px;
}

.uu-product-cat-grid div.box-text {
	left: 1px;
	width: 100%;
	min-height: 2.6rem;
	width: calc(100% - 2px);
	max-width: 100%;
	padding-top: 0;
	padding-bottom: 0;
	margin-top: 8px;
}

.uu-product-cat-grid .col .box {
    width: 100%;
    aspect-ratio: 1;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    background-color: #fff;
    position: relative;
}

.uu-product-cat-grid .col .box img {
    max-height: 180px;
    padding: 12px;
    object-fit: contain;
}

.uu-product-cat-grid .col .box-image {
    width: 100%;
    aspect-ratio: 6/5;
    margin-top: auto;
    position: absolute;
    bottom: 0;
    border: none;
}
 
.uu-product-cat-grid div.box-text-inner h5 {		
	padding: 2px 4px 2px 12px;
	display: flex;
	align-items: center;
	max-width: 150px;
}

.price-wrapper .price {
	gap: 4px;
	flex-wrap: wrap;
    height: 2rem;
}

.row .row:not(.row-collapse) {
    margin-left: -10px;
    margin-right: -10px;
    margin-top: -10px;
    margin-bottom: -10px;
}

.col-inner .row-small>.col {
    padding: 10px;
}

.uu-product-custom,
.section.uu-product-cat-section {
    padding-bottom: 20px !important;
}

.uu-service-testimonials .uu-service-item .col-inner {
    padding-top: 0 !important;
}

.banner p {
    margin-top: 16px;
    margin-bottom: 16px;
}

.uu-featured-horizontal{
    padding-top: 15px;
}

.uu-featured-horizontal .product-small.col .col-inner {
    border: none;
}

.uu-featured-horizontal .flickity-button-icon {
    margin-top: 10px;
}

.uu-featured-horizontal .product-small .product-title a {
    color: #505050;
}

.uu-title-custom-mb div.col {
		padding-bottom: 0;
}

.uu-outstanding-product-title p {
    margin-bottom: 20px;
}

/*custom lightbox đăng ký đại lý*/
.consultation-form {
    position: relative;
    max-width: 550px;
    padding: 30px;
    border-radius: 20px;
}

.contact-form {
    max-width: 550px;
    margin: 0 auto;
    text-align: center;
}

.contact-form-title {
    font-weight: 700;
    color: #e92432;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.consultation-form .logo {
    width: 250px;
    margin-bottom: 20px;
}

.contact-field {
    position: relative;
    margin-bottom: 12px;
}

.contact-field input,
.contact-field textarea,
.wpcf7-form-control.wpcf7-select {
    width: 100%;
    border: none;
    border-bottom: 2px solid #505050;
    background: transparent;
    padding: 12px 10px 8px 34px;
    font-size: 1rem;
    color: #505050;
    box-shadow: none !important;
    outline: none;
    margin-bottom: 0;
}

.wpcf7-form-control.wpcf7-select {
    padding-bottom: 0;
    color: #505050;
    padding-bottom: 8px;
    line-height: 1.2rem;
    
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%23505050' stroke-width='1.5' d='M1 1l5 5 5-5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 14px center !important;
    background-size: 12px 8px !important;
    padding-right: 40px !important;
}

.contact-field textarea {
    min-height: 70px;
    padding-top: 10px;
    resize: vertical;
    resize: none;
    -ms-overflow-style: none;
    scrollbar-width: none;
    border-radius: 0;
}

.contact-field textarea::-webkit-scrollbar {
    display: none;
}

.contact-field input::placeholder,
.contact-field textarea::placeholder {
    color: #747474;
    font-weight: 500;
}

.contact-field.has-icon::before {
    content: '';
    position: absolute;
    left: 5px;
    top: 22px;
    width: 22px;
    height: 22px;
    transform: translateY(-50%);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    opacity: 1;
}

.contact-field.icon-user::before {
    background-image: url("data:image/svg+xml;utf8,<svg fill='%23000000' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 12c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm0 2c-3.33 0-10 1.67-10 5v3h20v-3c0-3.33-6.67-5-10-5z'/></svg>");
}

.contact-field.icon-phone::before {
    background-image: url("data:image/svg+xml;utf8,<svg fill='%23000000' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6.62 10.79a15.053 15.053 0 006.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1C10.07 21 3 13.93 3 5c0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.24.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z'/></svg>");
}

.contact-field.icon-location::before {
    background-image: url("data:image/svg+xml;utf8,<svg fill='%23000000' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5A2.5 2.5 0 1112 6a2.5 2.5 0 010 5.5z'/></svg>");
}

.contact-field.icon-message::before {
    background-image: url("data:image/svg+xml;utf8,<svg fill='%23000000' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/></svg>");
}

.contact-field.icon-user::before,
.contact-field.icon-phone::before,
.contact-field.icon-location::before,
.contact-field.icon-message::before {
    z-index: 10;
}

.contact-radio-group {
    text-align: left;
    margin: 16px 0 8px;
}

.contact-radio-group .wpcf7-form-control-wrap {
    display: block;
}

.wpcf7-form-control.wpcf7-submit {
    background-color: #e92432 !important;
}

.contact-radio-group .wpcf7-list-item {
    margin: 0 30px 0 0;
    display: inline-block;
}

.contact-radio-group .wpcf7-list-item-label {
    font-size: 1rem;
    font-weight: 700;
    color: #000000;
    text-transform: uppercase;
}

.contact-radio-group input[type='radio'] {
    transform: scale(1.2);
    margin-right: 8px;
    accent-color: #e92432;
}

.contact-submit {
    text-align: start;
}

.contact-submit input[type='submit'] {
    background: #000000;
    color: #fff;
    border: none;
    min-width: 140px;
    height: 46px;
    border-radius: 4px;
    font-size: 16px;
    font-weight: 700;
    text-transform: none;
    box-shadow: none;
    margin: 0;
}

.contact-submit input[type='submit']:hover {
    background: #000000;
}

.contact-form .wpcf7-spinner {
    display: none;
}

.contact-form .wpcf7-not-valid-tip {
    text-align: left;
    font-size: 13px;
    margin-top: 5px;
}

.wpcf7 form .wpcf7-response-output {
    margin-top: 20px;
    margin-bottom: 0;
}

.mfp-close {
    display: none !important;
}

.form-popup-close {
    position: absolute;
    top: 12px;
    right: 0;
    width: 36px;
    height: 36px;
    border: none;
    background: transparent;
    padding: 0;
    cursor: pointer;
    color: #505050;
    z-index: 20;
    display: flex;
    align-items: center;
    justify-content: center;
}

.form-popup-close:hover {
    color: #000;
}

.form-popup-close svg {
    width: 24px;
    height: 24px;
}

/*page wishlist*/
.entry-header.text-center {
    display: none;
}

.row.page-wrapper {
    padding-top: 0;
}

.row.page-wrapper .entry-content {
    padding-top: 20px;
}

/*filter shop page*/
.woof_container {
    margin-bottom: 26px;
}

.iradio_square-red {
    background-position: -144px 0;
    flex: 0 0 auto;
}

.icheckbox_square-red {
    background-position: -24px 0px;
    flex: 0 0 auto;
}

.woof_list_checkbox li div {
    margin-top: 0;
}

.woof_block_html_items .woof_list label,
.woof_block_html_items span.woocommerce-Price-amount {
    color: #505050;
    font-weight: 500;
}

.woof_list.woof_list_checkbox > li,
.woof_block_html_items .woof_authors > .woof_list {
    display: flex;
    align-items: center;
    position: relative;
    max-width: 280px;
}


.woof_list.woof_list_checkbox li div.checked + label,
.woof_list div.checked + span + label,
.woof_list div.checked + span + label > span{
    color: #ff5722 !important;
    font-weight: bold;
}

.woof_block_html_items .woof_list label {
    margin-bottom: 0;
    
}

.widget .woof_redraw_zone ul li a {
    position: absolute;
    right: 0;
}

.widget .woof_redraw_zone ul li a > img {
    width: 20px;
}

.chosen-container {
    min-width: 200px;
}

.chosen-container-single .chosen-single,
.chosen-container-single .chosen-drop {
    border-color: #e92432 !important;
    max-width: 250px;
    border-radius: 8px;
}

.chosen-container .chosen-results li.active-result {
    border-radius: 8px;
}

.chosen-container .chosen-results li.active-result.result-selected{
    background-color: #e92432;
    color: #fff;
}

.chosen-container .chosen-results li.active-result.highlighted {
    background-color: rgba(233, 36, 50, 0.7) !important;
    background-image: none !important;
}

.chosen-container-single .chosen-single {
    height: 40px !important;
    line-height: 40px !important;
    display: flex;
    align-items: center;
}

.chosen-container-single .chosen-single span {
    font-weight: 500;
}

.chosen-container-single .chosen-single div b {
    background-position: 0 10px !important;
}

.chosen-container .chosen-results::-webkit-scrollbar {
    width: 4px;
}

.chosen-container .chosen-results::-webkit-scrollbar-track {
    background: transparent;
}

.chosen-container .chosen-results::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
}

.chosen-container .chosen-results::-webkit-scrollbar-thumb:hover {
    background: #525252;
}

/*custom search header*/
.nav>li.html {
    width: 100%;
}

.searchform-wrapper {
    padding-right: 30px;
    padding-left: 10px;
}

.searchform-wrapper .button.secondary:not(.is-outline) {
    width: 50px;
    height: 40px;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    background-color: #e92432;
}

.searchform-wrapper .button.secondary:not(.is-outline):hover {
    background-color: #c41e2a;
}

.searchform-wrapper input[type='search'] {
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

.searchform-wrapper .autocomplete-suggestions {
    background-color: #f9f9f9;
    border-radius: 8px;
}

.searchform-wrapper .live-search-results {
    position: absolute;
    top: 100%;
    left: 0;
    border-radius: 8px;
}

.header .search-form .live-search-results {
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.3), 
                0 4px 10px rgba(233, 36, 50, 0.08);
    background-color: #fff;
}

.searchform-wrapper .searchform {
    z-index: 5;
    max-width: 550px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.widget_shopping_cart_content .woocommerce-mini-cart::-webkit-scrollbar,
.searchform-wrapper .autocomplete-suggestions::-webkit-scrollbar {
    width: 4px;
}

.widget_shopping_cart_content .woocommerce-mini-cart::-webkit-scrollbar-track,
.searchform-wrapper .autocomplete-suggestions::-webkit-scrollbar-track {
    background: transparent;
}

.widget_shopping_cart_content .woocommerce-mini-cart::-webkit-scrollbar-thumb,
.searchform-wrapper .autocomplete-suggestions::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;

    background-clip: padding-box;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
}

.widget_shopping_cart_content .woocommerce-mini-cart::-webkit-scrollbar-thumb:hover,
.searchform-wrapper .autocomplete-suggestions::-webkit-scrollbar-thumb:hover {
    background: #525252;
    background-clip: padding-box;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
}

.header .search-form .autocomplete-suggestions {
    max-height: 50vh;
}

.nav-dropdown>li.html {
    padding: 12px 10px;
    min-width: 300px;
}

/*view quick*/
.product-quick-view-container .product-gallery {
    max-width: 40%;
}

.product-quick-view-container .product-info {
    max-width: 60%;
    flex: 1;
}

.product-quick-view-container .product-lightbox-inner {
    padding-left: 20px;
    padding-right: 20px;
}

.product-quick-view-container .custom-container-action-button .doc-row {
    justify-content: center;
}

.product-quick-view-container .variations th.label {
    width: 25%;
}

.product-quick-view-container .quantity input[type='number'] {
    height: 40.4px;
}

.product-quick-view-container .badge-container {
    right: 20px;
    border-radius: 50%;
    top: -4px;
    left: auto;
}

.product-quick-view-container .callout {
    min-width: 50px;
    height: 36px;
    font-size: 0.875rem;
}

.product-quick-view-container .badge-inner {
    border-radius: 12px;
    color: #fff;
    border: none;
}

/*Custom toast*/
.toast-container {
    position: fixed;
    top: 100px;
    right: 6px;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.custom-toast {
    min-width: 150px;
    max-width: 270px;
    padding: 6px 6px;
    border-radius: 8px;
    color: #fff;
    font-size: 0.75rem;
    display: flex;
    align-items: center;
    gap: 8px;
    position: relative;
    overflow: hidden;
    box-shadow:
        0 5px 20px rgba(0, 0, 0, 0.3),
        0 4px 10px rgba(233, 36, 50, 0.08);

    opacity: 0;
    transform: translateX(100%);
    transition: all 0.3s ease;
}

.custom-toast.show {
    opacity: 1;
    transform: translateX(0);
}

.toast-icon {
    width: 20px;
    height: 20px;
}

.toast-close {
    margin-left: auto;
    cursor: pointer;
    font-size: 25px;
    width: 22px;
    padding-left: 6px;
    color: #ccc;
}

.toast-close:hover {
    color: #fff;
}

.toast-progress {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 3px;
    width: 100%;
    background: rgba(255, 255, 255, 0.5);
    animation: progress linear forwards;
}

@keyframes progress {
    from {
        width: 100%;
    }
    to {
        width: 0%;
    }
}

.custom-toast.success {
    background: #28a745;
}
.custom-toast.error {
    background: #dc3545;
}
.custom-toast.info {
    background: #007bff;
}
.custom-toast.warning {
    background: #ffc107;
    color: #333;
}


/*Highlight before selecting a variant*/
.variation-error {
    outline: 2px solid #e74c3c;
    border-radius: 8px;
    transition: all 0.3s ease;
}

/*Hide WooCommerce default notifications*/
.woocommerce-error,
.woocommerce-message,
.woocommerce-info {
    display: none !important;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-5px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/*custom contact page*/
.uu-ttitle-contact p {
    margin-bottom: 10px;
}

.uu-col-form-contact .contact-form{
    position: relative;
}

.uu-col-form-contact .contact-form::before,
.uu-col-form-contact .contact-form::after {
    content: '';
    display: block;
    background-color: #e92432;
    position: absolute;
    top: 0;
    left: 0;
}

.uu-col-form-contact .contact-form::before {
    width: 1px;
    height: 50px;
}
    
.uu-col-form-contact .contact-form::after {
    width: 90px;
    height: 1px;
}


/*custom wishlist*/
.shop-container .product-main .product-gallery  .image-tools.top.right {
    opacity: 1;
}

.shop-container .product-main .product-gallery .wishlist-button {
    color: red;
    opacity: 0;
}

.shop-container .product-main .product-gallery .wishlist-popup.dark {
    opacity: 1;
    max-height: 42px;
    height: 42px;
    width: 42px;
    top: 12px;
    left: 4px;
    background-color: transparent;
    padding: 0;
    border-radius: 50% !important;
    overflow: hidden;
    opacity: 0.8;
}

.shop-container .product-main .yith-wcwl-add-to-wishlist-button:is(button) {
    background-color: rgba(0, 0, 0, 0.1);
    margin-right: 0;
    margin-bottom: 0;
    width: 40px;
    height: 40px;
    justify-content: center;
    align-items: center;
}

.shop-container .product-main .yith-add-to-wishlist-button-block {
    margin-top: 0;
    margin-bottom: 0;
}

.shop-container .product-main .yith-wcwl-add-to-wishlist-button__label {
    display: none;
}

.shop-container .product-main .yith-wcwl-add-to-wishlist-button:is(button) svg {
    width: 24px;
    height: 24px;
    color: #e92432;
}

.shop-container .product-main .product-gallery .wishlist-popup.dark:hover {
     opacity: 1;
}

.shop-container .product-main .yith-add-to-wishlist-button-block.yith-add-to-wishlist-button-block--single {
    border-radius: 50%;
    overflow: hidden;
}

.woof_autohide_wrapper {
    display: none;
}

.wc-block-cart__submit-container .wc-block-components-button,
.woocommerce-checkout-payment .form-row button {
    background-color: #e92432 !important;
    color: #fff;
    border-radius: 8px;
    transition: all .3s ease-in;
}

.wc-block-cart__submit-container .wc-block-components-button:hover,
.woocommerce-checkout-payment .form-row button:hover {
    background-color: #ba1d28;
}

/*custom cart page*/

td {
    color: unset;
}

.wc-block-cart-items__header th,
.wc-block-cart .wc-block-cart__totals-title {
    font-size: 1rem;
    font-weight: 600;
}

table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__prices{
    font-size: 0.875rem;
}

table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total {
    font-weight: 600;
}

.wc-block-cart-item__product .wc-block-cart-item__wrap a,
.wc-block-components-totals-item__label{
    color: #000;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.woocommerce-privacy-policy-text a,
.wc-block-cart-item__product .wc-block-cart-item__wrap a:hover {
    color: #e92432;
}

.woocommerce-privacy-policy-text a:hover {
    color: #ba1d28;
}

.wc-block-cart-item__prices {
    font-weight: 600;
    color: #e92432;
}

.wc-block-components-product-metadata__description p {
    display: none;
}

.wc-block-components-quantity-selector {
    align-items: center;
}

table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link,
.wc-block-components-panel__button {
    font-size: 0.813rem;
}

/*checkout page*/
.woocommerce-billing-fields__field-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

p.form-row-first, p.form-row-last {
    max-width: 48%;
}

p.form-row-wide {
    width: 100%;
}


.col-inner.has-border,
.woocommerce-checkout input[type=email],.woocommerce-checkout input[type=number],.woocommerce-checkout input[type=url],.woocommerce-checkout input[type=tel],.woocommerce-checkout input[type=text], textarea {
    border-radius: 8px;
}

.shop_table.woocommerce-checkout-review-order-table .product-total {
    min-width: 86px;
}

.shop_table.woocommerce-checkout-review-order-table .cart_item td bdi {
    color: #505050;
}

.woocommerce-checkout-payment .form-row button {
    width: 100%;
    min-height: 44px;
    margin-right: 0;
}

.checkout-inline-error-message {
    color: red;
    font-size: 0.813rem;
    margin-top: -10px;
}

input.wpcf7-not-valid, .woocommerce-invalid input {
    color: #e92432;
    border-color: #e92432;
}

.checkout-page-title nav.breadcrumbs {
    gap: 8px;
    align-items: center;
    margin-bottom: 0;
}

.checkout-page-title .breadcrumbs a {
    margin-bottom: 0;
}

.checkout-page-title .breadcrumbs a:last-child {
    color: #505050;
}

.checkout-page-title .breadcrumbs a.current {
    color: #e92432;
}

.icon-box-left .icon-box-img+.icon-box-text {
    padding-left: 6px;
}

.uu-contact-phone {
    margin-top: 20px;
}

.uu-contact-mail {
    margin-bottom: 8px;
}

.uu-product-tabs ul.nav > li {
		flex: 0 0 auto;
		flex-shrink: 0;
}

.uu-product-tabs ul.nav > li > a {
	font-size: 0.825rem !important;
	line-height: 2 !important;
}

.uu-product-tabs ul.nav {
   flex-wrap: nowrap;
   overflow-x: auto;
   overflow-y: hidden;
   -webkit-overflow-scrolling: touch;
		-ms-overflow-style: none;
		scrollbar-width: none;
}

.uu-product-tabs ul.nav::-webkit-scrollbar {
		display: none;
}

.uu-product-tabs ul.nav::-webkit-scrollbar-track {
        background-color: #f1f1f1;
        border-radius: 10px;
    }

    .uu-product-tabs ul.nav::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
    transition: background 0.3s ease;
}

.product-quick-view-container {
    position: relative;
}

.product-quick-view-container .quick-view-close {
    position: absolute;
    right: 0;
    margin-right: 0;
    margin-bottom: 0;
    padding: 10px;
    height: 50px;
    cursor: pointer;
    opacity: 0.6;
    transition: all 0.3s ease-in;
    z-index: 10;
}

.product-quick-view-container .quick-view-close:hover {
    opacity: 1;
}

.mfp-wrap {
    z-index: 100000;
}

body:has(.mfp-wrap.mfp-auto-cursor) {
    overflow: hidden !important;
    padding-right: 15px;

}

.mfp-bg {
    height: 100vh !important;
    overflow: hidden !important;
    position: fixed !important;
}

/*custom wishlist header*/
.header-nav .html.custom.html_top_right_text {
    flex: 1;
}

.header-wishlist-container {
    padding: 0 !important;
    min-width: 104px;
    color: #fff !important;
    gap: 2px;
    font-size: 0.8rem !important;
    border-radius: 99px;
    background-color: #e92432;
    padding-left: 6px !important;
    padding-right: 6px !important;
    position: relative;
    text-align: center;
    height: 30px;
    border: 1px solid rgba(0, 0, 0, 0.05);
    display: flex;
    justify-content: center;
    align-items: end;
    cursor: pointer;
    transition:
        transform 0.3s,
        border 0.3s,
        background 0.3s,
        box-shadow 0.3s,
        opacity 0.3s,
        color 0.3s,
        -webkit-transform 0.3s,
        -webkit-box-shadow 0.3s;
}

.header-wishlist-container:hover {
    background-color: #ba1d28;
    border-color: #e92432;
    color: #fff;
}

.header-wishlist-container .icon-heart {
    font-size: 1rem;
    color: #fff;
}

.wishlist-count-number {
    position: absolute;
    top: -6px;
    right: -5px;
    background-color: #e6b411;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    text-align: center;
    vertical-align: middle;
    font-size: 11px;
    box-shadow: 1px 1px 3px 0px rgba(0, 0, 0, 0.3);
    font-style: normal;
    font-family: Arial, Sans-serif !important;
    padding-left: 2px;
    padding-right: 2px;
    opacity: 0.9;
    line-height: 17px;
    letter-spacing: -0.5px;
    height: 17px;
    min-width: 17px;
    color: #fff;
    text-align: center;
    z-index: 1;
    -webkit-transition: -webkit-transform 0.2s;
    transition: -webkit-transform 0.2s;
    -o-transition: transform 0.2s;
    transition: transform 0.2s;
    transition:
        transform 0.2s,
        -webkit-transform 0.2s;
}

.wishlist-count-number.is-hidden {
    display: none;
}

.fp-review-card{
        background:#fff;
        border:1px solid #505050;
        border-radius:8px;
        padding:24px;
        box-sizing:border-box;
        height:100%;
        box-shadow: 0 1px 6px rgba(0, 0, 0, 0.08);
    }
    .fp-review-card p {
        margin-bottom: 0;
    }
    .fp-review-top{ display:flex; align-items:center; gap:14px; margin-bottom:12px; }
    .fp-review-avatar{ width:80px; height:80px; border-radius:50%; object-fit:cover; background:#e5e0d8; flex-shrink:0; border: 2px solid #e5e0d8;}
    .fp-review-name{ font-weight:700; font-size:15px; margin:0; }
    .fp-review-job{ font-size:13px; color:#777; margin:2px 0 0; }
    .fp-review-stars{ color:#f4b400; font-size:22px;}
    .fp-review-content{ font-size:14px; line-height:1.6; color:#444; }
    
    
.row-slider{
    opacity: 0;
    transition: opacity 0.3s ease;
}
.row-slider.flickity-enabled{
    opacity: 1;
}

/* Trước khi Flickity init, ép các item xếp ngang tạm thời thay vì xếp dọc chồng nhau */
.row-slider:not(.flickity-enabled){
    display: flex;
    overflow: hidden;
}
.row-slider:not(.flickity-enabled) > *{
    flex: 0 0 auto;
}

/* ==========================================
   BISON BANNER TEXT STYLES
   ========================================== */

.text-banner {
    max-width: 650px;
    color: #ffffff;
    font-family: system-ui, -apple-system, sans-serif;
}

.text-banner__title {
    font-size: 32px;
    font-weight: 800;
    line-height: 1.25;
    text-transform: uppercase;
    margin-bottom: 10px;
    color: #ffffff;
    letter-spacing: 0.5px;
}

.text-banner__subtitle {
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 24px;
    color: #e0e0e0;
    letter-spacing: 0.5px;
}

.text-banner__list {
    list-style: none;
    padding: 0;
    margin: 0 0 24px 0;
}

.text-banner__item {
    display: flex;
    align-items: center;
    margin-bottom: 12px;
    font-size: 16px;
    font-weight: 500;
    color: #f5f5f5;
}

.text-banner__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    background-color: #d70312;
    border-radius: 50%;
    margin-right: 12px;
    flex-shrink: 0;
}

@media(min-width: 768px) {
    .large-columns-5 .flickity-slider>.col {
        max-width: 22.5%;
    }
}

@media (max-width: 1023px) {
    .large-columns-5 .flickity-slider>.col {
        max-width: 22.5%;
    }
    
    .large-columns-4 .flickity-slider>.col {
        max-width: 29%;
    }
    
    .bs-testimonial-slider.large-columns-3 .flickity-slider>.col {
        width: 41.8%;
        max-width: 41.8%;
    }
}

@media (max-width: 850px) {
    .fp-btn.specifications {
        display: none;
    }
    
    .mfp-content {
        margin-left: 0;
        height: fit-content;
        min-height: 65vh;
    }
    
    .banner-grid-wrapper,
    [id^='banner-grid-'] {
        height: auto;
        position: relative;
    }
    .banner-grid-wrapper .col {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        width: 50% !important;
        aspect-ratio: 1 / 1;
        height: auto !important;
    }
    .banner-grid-wrapper .col .banner,
    .banner-grid-wrapper .col .banner-inner {
        height: 100%;
        padding-top: 0;
    }

    .uu-col-1 {
        order: 1;
    }
    .uu-col-3 {
        order: 2;
    }
    .uu-col-2 {
        order: 3;
    }
    
    .uu-product-lists .product_list_widget {
        display: none;
    }
    
    .uu-product-lists {
        padding-bottom: 20px;
    }
    
    .uu-product-lists:last-child {
        padding-bottom: 0;
    }
    
    .uu-product-lists .uu-product-lists .title {
        margin-bottom: 30px;
    }
    
    .woocommerce-breadcrumb.breadcrumbs {
        text-align: left;
    }
    
        .uu-blog-sidebar {
		border: none;
    }

    .uu-blog-sidebar .post-sidebar {
		padding-right: 0;
		padding-bottom: 0;
    }
    
    .header-bottom.wide-nav ul.nav {
        justify-content: center;
    }
    
    .header-bottom.wide-nav .flex-row {
        gap: 0;
    }
    
    .uu-featured-horizontal .product-small.box {
        gap: 0 !important
    }
    
    .custom-container-action-button .doc-row,
    .custom-container-action-button .action-group {
        gap: 12px;
    }
    
    .searchform-wrapper {
        padding-right: 10px;
    }
    
    /*filter*/
    .category-filtering.category-filter-row {
        display: none;
    }
    
    .term-description {
        display: none;
    }
    
     .woof_autohide_wrapper {
        display: block;
    }
    
   .woof_show_auto_form,
    .woof_hide_auto_form {
        position: fixed;
        width: 44px;
        height: 44px;
        top: 160px;
        right: 0;
        border-radius: 8px;
        font-size: 0 !important;
        color: transparent !important;
        padding: 0 !important;
        background: #fff !important;
        background-image: none !important;
        border: 1px solid #e5e5e5;
        border-radius: 8px;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
        overflow: hidden;
        z-index: 99;
    }
    
    .woof_show_auto_form i,
    .woof_hide_auto_form i,
    .woof_show_auto_form svg,
    .woof_hide_auto_form svg,
    .woof_show_auto_form::after,
    .woof_hide_auto_form::after {
        display: none !important;
    }
    
    .woof_show_auto_form::before,
    .woof_hide_auto_form::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 22px;
        height: 22px;
        transform: translate(-50%, -50%);
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23505050' d='M22 18.605a.75.75 0 0 1-.75.75h-5.1a2.93 2.93 0 0 1-5.66 0H2.75a.75.75 0 1 1 0-1.5h7.74a2.93 2.93 0 0 1 5.66 0h5.1a.75.75 0 0 1 .75.75m0-13.21a.75.75 0 0 1-.75.75H18.8a2.93 2.93 0 0 1-5.66 0H2.75a.75.75 0 1 1 0-1.5h10.39a2.93 2.93 0 0 1 5.66 0h2.45a.74.74 0 0 1 .75.75m0 6.6a.74.74 0 0 1-.75.75H9.55a2.93 2.93 0 0 1-5.66 0H2.75a.75.75 0 1 1 0-1.5h1.14a2.93 2.93 0 0 1 5.66 0h11.7a.75.75 0 0 1 .75.75'/%3E%3C/svg%3E");
    }
    
    .woof_auto_show {
        position: fixed;
        top: 208px;
        right: 0px;
        max-width: 300px;
        /*border-radius: 20px;*/
    }
    
    .woof_auto_show_indent,
    .woof_sid_auto_shortcode.woof{
        border-radius: 20px;
    }
    
    .woof_sid_auto_shortcode .woof_redraw_zone {
        overflow-y: auto;
        max-height: 400px;
    }
    
    .woof_radio_term_reset_visible {
        display: none !important;
    }
        
        
    .fp-marquee-wrap {
        margin-bottom: -8px !important;
    }
    
    .section {
        padding-top: 24px;
        padding-bottom: 24px;
    }
    
    .bs-product-categories .header-title {
        font-size: 14px;
    }
    
    .fp-job-banner {
        display: none;
    }
    
    .bs-job-products {
        grid-column: 1 / -1;
    }
    
    .bs-job-products .flickity-slider>.col {
        width: 33.3333%;
    }
    
    .fp-job-empty {
        grid-column: 1 / -1 !important;
    }
}

@media (max-width: 767px) {
    .medium-columns-3 .flickity-slider>.col {
        max-width: 40%;
    }
    
    .heading_3 p {
        font-size: 1.125rem;
    }
    
    .bs-policy-box img {
        width: 36px;
    }
    
    .fp-review-card {
        padding: 12px;
    }
    
    .fp-review-top {
        flex-direction: column;
    }
    
    .fp-review-avatar {
        width: 68px;
        height: 68px;
    }
    
    .fp-review-info {
        margin-right: auto;
    }
}

@media (max-width: 550px) {
    /* custom add cart mobile */
    .mfp-container {
        padding: 0 !important;
    }
        
    .mfp-content {
    	vertical-align: bottom;
    	position: fixed;
        left: 0;
        bottom: 0;
        right: 0;
    }
    
    .product-quick-view-container .row.row-collapse {
    	position: relative;
    }
    
    .product-quick-view-container .product-gallery {
    	max-width: 0;
    }
    
    .product-quick-view-container .product-gallery .slider {
    		position: absolute;
        left: 0;
        top: 0;
        width: 150px;
        height: 150px;
    }
    
    .product-quick-view-container .flickity-viewport
    {
    	 height: 150px;
    }
    
    .product-quick-view-container .product-info {
    	max-width: 100%;
    }
    
    .mfp-content .product-lightbox {
    	border-radius: 0;
    }
    
    .product-quick-view-container .product-lightbox-inner {
    	padding: 32px 16px 20px !important;
    }
    
    .product-lightbox-inner > a {
    	display: block;
    	margin-left: 160px;
    }
    
    .product-lightbox-inner > a h1 {
    	font-size: 1rem;
    }
    
    .product-lightbox-inner .price-wrapper {
    	padding-left: 160px;
        font-size: 0.875rem;
    }
    
    .product-info .product-short-description {
    		display: none;
    }
    
    .product-info form.cart {
    	margin-top: 40px;
        padding-top: 10px;
        border-top: 1px solid #ccc;
    }
    
    .product-lightbox-inner .custom-container-action-button .doc-row{
    	display: none;
    }
    
    .product-lightbox-inner .custom-container-action-button .action-group .button {
    		max-width: 190px;
        font-size: 0.75rem;
        max-height: 44px;
    }
    
    .product-lightbox-inner .custom-container-action-button .action-group .btn-agency {
    		display: none;
    }
    
    .product-info div.quantity::before,
    .product-lightbox-inner  .variations th.label {
    	min-width: 94px;
    }
    
    .product-info div.quantity::before,
    .product-lightbox-inner .variations label {
    	font-size: 0.875rem;
    	font-weight: 500;
    }
    
    .product-quick-view-container .product-gallery .slider {
    	z-index: 5;
    }
    
    .flickity-page-dots .dot {
    	width: 8px;
        height: 8px;
        margin-left: 2px;
        margin-right: 2px;
        border-width: 1px;
    }
    
    .product-quick-view-container .flickity-button {
    	display: block;
    }
    
    .mobile-add-to-cart-link {
    	padding: 5px 10px;
    	color: #e92432;
    	border: 1px solid #ccc;
    	box-shadow: 0 1px 6px rgba(0, 0, 0, 0.08);
    }
    
    .mobile-add-to-cart-link svg {
        width: 24px;
        height: 24px;
    }
    
    .rating-score-wrapper .score-number {
    	font-size: 0.875rem;
    }
    
    .row .section {
        padding-left: 0;
        padding-right: 0;
    }
    
    .uu-ttitle-contact p {
        margin-bottom: 10px;
    }
    
    .chosen-drop .chosen-search {
        display: none;
    }
    
    .col-inner.has-border {
        padding: 12px;
    }
    
    .cart-container {
        padding-left: 12px;
        padding-right: 12px;
    }

    .checkout-page-title nav.breadcrumbs {
        padding-top: 0;
        padding-bottom: 0;
    }
    
    .text-title-slider {
        font-size: 1.2rem;
    }
    
    .uu-outstanding-product-title p {
        font-size: 1.125rem;
        margin-bottom: 9px;
    }
    
    .mfp-wrap.mfp-auto-cursor {
        position: fixed !important;
        top: 0px !important;
        right: 0px;
        left: 0px;
        z-index: 100000;
    }

    
    .row-small>.flickity-viewport>.flickity-slider>.col {
        max-width: 66.67%;
        width: 66.67%;
    }
    
    .bs-product-categories.row-small>.flickity-viewport>.flickity-slider>.col {
        width: 40%;
    }
    
    .section {
        padding-top: 24px !important;
        padding-bottom: 24px !important;
    }
    
    .bs-guarantee {
        margin-top: 48px;
    }
    
    .bs-product-categories {
        margin-top: -4px !important;
    }
    
    .bs-product-categories img {
        padding: 12px 12px 0;
    }
    
    
    .bs-suggest-product .heading_3 p {
        font-size: 1.3rem;
    }
    
    .bs-consultation-form .heading_3 {
        font-size: 26px;
        text-align: center;
        margin-bottom: 2px;
    }
    
    .contact-submit {
        text-align: center;
    }
    
    .fp-job-panel > p {
        font-size: 16px !important;
        margin-bottom: 8px !important;
    }
    
    .fp-box {
        margin-bottom: 12px;
    }
    
    .text-banner__title {
        font-size: 1rem;
    }
    
    .text-banner__subtitle {
        font-size: 14px;
    }
    
    .bs-consultation-form .section-bg.bg-loaded {
        background-image: none !important;
    }
    
    .bs-consultation-form .bs-consultation-left-text .col-inner {
        text-align: center;
        background-color: transparent;
        
    }
    
    .bs-consultation-form .bs-consultation-left-text .col-inner {
        margin-left: auto !important;
        margin-right: auto;
    }
}

@media only screen and (max-width: 48em) {
    /*************** ADD MOBILE ONLY CSS HERE  ***************/
}
