.product_list.grid > li{
    padding-bottom: 0px !important;
    margin-bottom: 10px;
}
@media (min-width: 768px){
.product_list.grid > li{
    float: none;
    display: inline-block;
    vertical-align: top;
    margin-right: -4px !important;
}
}
.h1home h1{
    text-align : center;
    font-size : 10px;
    font-weight : bold;
}
.bvleft{
    float:left;
    width:25%;
}
.spchinh{width:100%;}
.clearfix{
    clear:both;
}
#icons_txd{
  position: fixed;
  right: 5px;
  bottom: 100px;
  z-index: 999;
  width: 50px;
  left: auto;
  padding-left: 0px;
}
#icons_txd li{
  height: 50px;
  width: 50px;
  margin-bottom: 15px;
  list-style: none;
}
#billing_city_field,#shipping_city_field {
 float: none;
 width: 100%;
}
@media screen and (max-width: 767px){
	.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1,.woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2{
		width: 100%;
	}
}
.screen-reader-text {
    clip: rect(1px,1px,1px,1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px;
}
.sns-product-tabs .nav-tabs > li > a{
    padding-top: 8px;
}
#customer_details .col-1{
    margin-bottom: 50px;
}
section .woocommerce .woocommerce-checkout .checkout_flex_wrap{display: flex;margin-top: 30px;}
section .woocommerce .woocommerce-checkout .left{flex: 1 1 60%;padding: 0 15px;}
section .woocommerce .woocommerce-checkout .right{flex: 1 1 40%;padding: 0 15px;}
section .woocommerce .woocommerce-billing-fields h3,section .woocommerce .woocommerce-checkout .right h3#order_review_heading,section .woocommerce .woocommerce-additional-fields h3{color:#333;font-weight: bold;}
section .woocommerce .woocommerce-billing-fields h3:before,section .woocommerce .woocommerce-checkout .right h3#order_review_heading:before,section .woocommerce .woocommerce-additional-fields h3:before{content:"\f09d";display: inline-block;font: normal normal normal 14px/1 FontAwesome;font-size: inherit;text-rendering: auto;-webkit-font-smoothing: antialiased;margin-right: 15px;color:#e34444;}
.woocommerce .col2-set .col-1, .woocommerce-page .col2-set .col-1, .woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2{float:none;width: 100%;}
@media only screen and (max-width:767px) {
    section .woocommerce .woocommerce-billing-fields h3,section .woocommerce .woocommerce-checkout .right h3#order_review_heading,section .woocommerce .woocommerce-additional-fields h3{font-size: 14px;}
    section .woocommerce .woocommerce-checkout .checkout_flex_wrap{display: block;}
}
/* Quick buy button */
.quick_buy {
	cursor: pointer;
	position: relative;
	display: inline-block;
	height: 35px;
	padding: 0 40px;
	line-height: 34px;
	border: none;
	background: #e34444;
	color: #fff;
	font-size: 116.7%;
	text-transform: uppercase;
	font-weight: 700;
	cursor: pointer;
	transition: all 0.5s cubic-bezier(.67,-.51,.42,1.43);
	margin: 0 15px;
	opacity: 1;
}
.quick_buy .parrot:nth-child(1) {
    top: -30px;
    left: -40px;
    font-size: 10px;
    transform: rotate(-20deg);
    animation-duration: 0.5s;
}
.quick_buy .parrot {
    position: absolute;
    width: 60px;
    text-align: center;
    animation: blink 0.8s infinite;
    color: transparent;
    white-space: nowrap;
}
.quick_buy .parrot:before{
		content: "Mua Đi!";
		position: absolute;
	}
.quick_buy .parrot:nth-child(2) {
    font-size: 10px;
    right: -40px;
    top: -20px;
    transform: rotate(15deg);
    animation-duration: 0.3s;
}
.quick_buy .parrot:nth-child(3) {
    font-size: 12px;
    top: -45px;
    left: 45px;
    transform: rotate(10deg);
    animation-duration: 1s;
}
.quick_buy .parrot:nth-child(4) {
    font-size: 12px;
    top: 40px;
    left: 105px;
    transform: rotate(-20deg);
    animation-duration: 0.8s;
}
.quick_buy .parrot:nth-child(5) {
    font-size: 10px;
    top: 35px;
    left: 5px;
    transform: rotate(10deg);
    animation-duration: 1.2s;
}
@keyframes blink {
		25%,
		75% {
			color: transparent;
		}
		40%,
		60% {
			color: #e34444;
		}
	}
	@keyframes scale {
		0%{
			transform: scale(1);
		}
		50% {
			transform: scale(1.3);
		}
		100%{
			transform: scale(1);
		}
	}
	.rm_wrapper {
    position: absolute;
    bottom: 0;
    left: 0;
    text-align: center;
    padding: 20px 0;
    width: 100%;
    box-shadow: 0 0 20px 15px #fff;
    background-color: #fff;
}
/* Readmore button on single product */
.rm_wrapper a.readmore {
    height: 35px;
    line-height: 35px;
    display: inline-flex;
    align-items: center;
    padding: 0 40px;
    text-transform: uppercase;
    font-size: 116.7%;
    color: #fff;
    background-color: #e34444;
    font-weight: 700;
    cursor: pointer;
    border-radius: 5px;
}
.rm_wrapper a.readmore i {
    font-size: 24px;
    margin-left: 5px;
}
.show-icon, .show-mobile {
    display: none;
}

/*Product recent views*/
.product_recent_views .product_list.grid .block-product-inner .onsale{font-size: 12px;padding: 2px 25px;}
.product_recent_views{max-width: 500px;position: fixed;bottom: 50px;right: 0;z-index: 5;background-color: #fff;padding: 1em;border: 1px solid #ccc;}
.product_recent_views .show_hide{cursor: pointer;text-transform: uppercase;position: relative;padding-bottom: 1em;border-bottom: 1px solid #ccc;font-weight: bold;}
.product_recent_views .show_hide:before{content: "x";font-size: 16px;position: absolute;right: 0;}
.product_recent_views.block_hide{background-color: #e34444;}
.product_recent_views.block_hide .show_hide{color: #fff;padding-bottom: 0;border-bottom: none;}
.product_recent_views.block_hide .show_hide:before{display: none;}
.product_recent_views.block_hide .prdlist-content{opacity: 0;visibility: hidden;width: 0;height: 0;transition: opacity,visibility .5s linear;}
.product_recent_views .prdlist-content .nav-prev,.product_recent_views .prdlist-content .nav-next{position: absolute;font-family: "FontAwesome";font-size: 3em;top: 50%;transform: translateY(-50%);}
.product_recent_views .prdlist-content .nav-prev{left: -30px;}
.product_recent_views .prdlist-content .nav-prev:before{content:"\f053"}
.product_recent_views .prdlist-content .nav-next{right: -30px;}
.product_recent_views .prdlist-content .nav-next:before{content:"\f054";}
.product_recent_views .price del{display: block;}
.product_recent_views .product_list.grid .block-product-inner .item-info .info-inner{padding-bottom: 0;}
.product_recent_views .product_list.grid li{padding: 0 10px;}
.product_recent_views .prdlist-content .products{display:none;}
.product_recent_views .prdlist-content .products.owl-carousel .owl-stage{margin: auto;}
.product_recent_views .prdlist-content .products.owl-carousel{margin: 0;}
.product_recent_views .prdlist-content{padding-top: 0;opacity: 1;visibility: visible;transition: opacity,visibility .5s linear;width: auto;height: auto;position: relative;padding-left: 30px;padding-right: 30px;}
.product_recent_views .prdlist-content .products.owl-carousel{display: block;padding-top: 20px;}
.product_recent_views .item-inner:hover{box-shadow: none;}
@media only screen and (max-width:1024px) {
		.product_recent_views.block_hide{width: auto;}
		.product_recent_views{max-width: 100%;width: 100%;position: relative;bottom: 0;border: 0;z-index: 1;padding: 0;margin-bottom: 30px;}
		.product_recent_views .show_hide:before{display: none;}
		.product_recent_views .show_hide{font-size:1.156em}
		.product_recent_views .price ins{display: block;}
		.product_recent_views.block_hide .prdlist-content{opacity: 0;visibility: hidden;height: 0;width: 0;margin: 0;padding: 0;}
}
@media screen and (max-width: 1023px){
.show-icon {
    display: inline-block;
    margin: 10px 0;
    float: left;
    margin-right: 20px;
    clear: both;
}
}
@media (max-width: 850px){
.quick_buy {
    margin: 10px 0!important;
    max-width: 200px;
    text-align: center;
    overflow: hidden;
}
}

.sns-btn-popupvideo{padding: 0px 25px;height: 50px;background-color: #877839;color: #fff;display: inline-flex;align-items: center;justify-content: center;cursor: pointer;margin-bottom: 20px;text-transform: uppercase;font-weight: bold}
	.sns-btn-popupvideo:hover{color: #fff;}
	.sns-btn-popupvideo i{color: #fff;text-transform: uppercase;font-weight: bold;font-size: 25px;animation: scale 1s linear infinite;}
	.sns-btn-popupvideo i:before{margin-right: .3em;}
	.fa-youtube-play{color:#ccc;}
.footer_fixed {
    position: fixed;
    left: 0;
    bottom: 5px;
    width: 100%;
    z-index: 5;
    max-height: 60px;
}
.wrap_fixed {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
}
.fixed_item_wrap {
    width: calc(100% * 1/2 - 20px);
    margin: 0 10px;
    border-radius: 10px;
    float: left;
    box-sizing: border-box;
    vertical-align: top;
    min-height: 1px;
}
.fixed_item_roi {
    display: block;
    height: 40px;
    padding: 0;
    text-align: center;
    position: relative;
}
.fixed_item_roi a {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 18px;
    transform: translate(-50%, -50%);
    color: white;
    height: 40px;
    line-height: 40px;
    display: inline-block;
    text-transform: uppercase;
}
.fixed_item_wrap a {
    background-color: #887839;
    border-radius: 10px;
}
.fixed_item_roi a i {
    margin-right: 5px;
}
.fixed_item_wrap .quick_buy {
    margin: 0 !important;
    width: 100%;
    border-radius: 10px;
    line-height: 40px;
    height: 40px;
    font-weight: normal;
    font-size: 18px;
    white-space: nowrap;
    padding: 0 5px;
}
@media only screen and (min-width: 415px){
.hidden_ft {
    display: none !important;
}
}
/* Popup loader */
#popupLoader {
    position: fixed;
    bottom: 1em;
    left: 1em;
    border-radius: 9999px;
    padding: 10px;
    width: 350px;
    background-color: rgba(53, 53, 53, 0.85);
    display: none;
    z-index: 5;
}
#popupLoader .pop_items {
    display: flex;
    align-items: center;
}
#popupLoader .pop_items .pop_img {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid #fff;
}
#popupLoader .pop_items .pop_content {
    flex: 1;
    margin-left: 10px;
    font-size: 14px;
    color: #fff;
    padding: 5px;
}
#popupLoader .pop_items .pop_content h3 {
    font-size: 14px;
    font-weight: normal;
    margin-bottom: 5px;
    line-height: 1.5;
}
#popupLoader .pop_items .pop_content h3 a {
    color: yellow;
}
@media only screen and (max-width: 767px){
#popupLoader {
    display: none !important;
}
}
/* Product list hover box shadow */
.tab-content .product_list.grid .block-product-inner, .prdlist-content .product_list.grid .block-product-inner{overflow: unset;}
.tab-content .item-inner:hover, .prdlist-content .item-inner:hover {
    box-shadow: 0 0 10px 0 #717171;
    transition: box-shadow .3s ease-in-out;
}
.tab-content .item-inner, .prdlist-content .item-inner {
    transition: box-shadow .3s ease-in-out;
}
/* On sale badge */
.woocommerce .primary_block .inner>span.onsale, .product_list.list>li .item-img .onsale, .product_list.grid .block-product-inner .onsale {
    position: absolute;
    top: 6px;
    z-index: 1;
    padding: 5px 25px;
    color: #fff;
    font-size: 15px;
    line-height: 1;
    border-radius: 0;
    background: #e34444;
    left: -30px;
    right: auto;
    bottom: auto;
    transform: rotate(-45deg);
}
.product_list.grid .block-product-inner .item-img .item-img-info {
    overflow: hidden;
}
#sns_mainmenu ul#main_navigation > li.menu-item > a{
  padding-right:15px;   
}
.woovr-variations{
  display:flex;
  flex-flow: row wrap;
}
.woovr-variation-name{
    display:none;
}

/* =========================================================
   TUIXACHDA PRODUCTION OVERRIDES
   Owner: snssimen-child
   Theme Options custom CSS migrated out on 2026-08-25
   ========================================================= */

/* ---------- CHECKOUT ---------- */

/*
 * Desktop > 1366px:
 * giữ layout 60/40 hiện tại.
 *
 * Laptop/tablet:
 * billing + additional thành 2 cột rộng,
 * order review xuống hàng riêng.
 */
@media (min-width:768px) and (max-width:1366px) {
    body.woocommerce-checkout .checkout_flex_wrap {
        display:block !important;
        width:100% !important;
    }

    body.woocommerce-checkout .checkout_flex_wrap > .left,
    body.woocommerce-checkout .checkout_flex_wrap > .right {
        display:block !important;
        float:none !important;
        width:100% !important;
        max-width:none !important;
        flex:0 0 100% !important;
        padding-left:15px !important;
        padding-right:15px !important;
    }

    body.woocommerce-checkout #customer_details {
        display:grid !important;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
        column-gap:30px;
        align-items:start;
        width:100%;
    }

    body.woocommerce-checkout #customer_details > .col-1,
    body.woocommerce-checkout #customer_details > .col-2 {
        display:block !important;
        float:none !important;
        width:100% !important;
        min-width:0 !important;
        margin:0 !important;
    }

    body.woocommerce-checkout .checkout_flex_wrap > .right {
        margin-top:28px;
    }
}

/* Mobile: toàn bộ checkout một cột */
@media (max-width:767px) {
    body.woocommerce-checkout .checkout_flex_wrap,
    body.woocommerce-checkout .checkout_flex_wrap > .left,
    body.woocommerce-checkout .checkout_flex_wrap > .right,
    body.woocommerce-checkout #customer_details,
    body.woocommerce-checkout #customer_details > .col-1,
    body.woocommerce-checkout #customer_details > .col-2 {
        display:block !important;
        float:none !important;
        width:100% !important;
        max-width:100% !important;
    }

    body.woocommerce-checkout .checkout_flex_wrap > .left,
    body.woocommerce-checkout .checkout_flex_wrap > .right {
        padding-left:10px !important;
        padding-right:10px !important;
    }

    body.woocommerce-checkout #customer_details > .col-1,
    body.woocommerce-checkout #customer_details > .col-2 {
        margin:0 0 24px !important;
    }

    body.woocommerce-checkout #customer_details .form-row-first,
    body.woocommerce-checkout #customer_details .form-row-last {
        float:none !important;
        width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
    }

    body.woocommerce-checkout #customer_details input.input-text,
    body.woocommerce-checkout #customer_details textarea,
    body.woocommerce-checkout #customer_details select,
    body.woocommerce-checkout #customer_details .select2-container {
        width:100% !important;
        max-width:100% !important;
    }

    body.woocommerce-checkout .woocommerce-checkout h3 {
        line-height:1.25;
    }

    body.woocommerce-checkout .woocommerce-checkout-review-order-table {
        width:100% !important;
        table-layout:auto;
    }
}


/* ---------- PRODUCT GRID ---------- */

/* Hai hàng giãn thêm nhẹ: cũ 10px */
#sns_content .product_list.grid > li {
    margin-bottom:18px !important;
}

/* Tiêu đề không sát hai mép card */
#sns_content .product_list.grid .item-info .info-inner .item-title {
    padding-left:8px !important;
    padding-right:8px !important;
}

/* Giá thường / sale không được tràn card */
#sns_content .product_list.grid .item-info .info-inner .price {
    white-space:normal !important;
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center;
    align-items:baseline;
    column-gap:5px;
    row-gap:2px;
    max-width:100%;
    padding-left:6px !important;
    padding-right:6px !important;
    line-height:1.3;
}

#sns_content .product_list.grid .item-info .info-inner .price del,
#sns_content .product_list.grid .item-info .info-inner .price ins {
    display:inline-block;
    white-space:nowrap;
    max-width:100%;
    margin-left:0 !important;
    margin-right:0 !important;
}


/* TUIXACHDA LAYOUT STABILIZE v3
   Final scoped overrides. Do not place site CSS back into Theme Options.
========================================================================= */


/* ======================================================================
   HEADER / HOME H1
   Restore production proportions.
====================================================================== */

.h1home {
    margin:0 !important;
    padding:0 !important;
    min-height:0 !important;
    line-height:1 !important;
}

.h1home h1 {
    margin:0 !important;
    padding:0 !important;
    text-align:center !important;
    font-size:10px !important;
    line-height:14px !important;
    font-weight:700 !important;
}

/* Desktop SNS menu must remain a single row. */
@media (min-width:1200px) {
    #sns_mainmenu ul#main_navigation {
        display:flex !important;
        flex-wrap:nowrap !important;
        align-items:center !important;
        width:auto !important;
    }

    #sns_mainmenu ul#main_navigation > li.menu-item {
        float:none !important;
        flex:0 0 auto !important;
        white-space:nowrap !important;
    }

    #sns_mainmenu ul#main_navigation > li.menu-item > a {
        padding-left:10px !important;
        padding-right:10px !important;
        white-space:nowrap !important;
        font-size:13px !important;
    }
}

@media (min-width:1400px) {
    #sns_mainmenu ul#main_navigation > li.menu-item > a {
        padding-left:13px !important;
        padding-right:13px !important;
    }
}


/* ======================================================================
   CHECKOUT
   UX model:
   - Main form is one natural vertical flow.
   - Order summary lives in a separate right column.
   - Only related short fields share a row.
   - Mobile is strictly one column.
====================================================================== */

body.woocommerce-checkout .checkout_flex_wrap {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(370px,430px) !important;
    gap:38px !important;
    align-items:start !important;
    width:100% !important;
    margin-top:28px !important;
}

body.woocommerce-checkout .checkout_flex_wrap > .left,
body.woocommerce-checkout .checkout_flex_wrap > .right {
    float:none !important;
    display:block !important;
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    padding:0 !important;
    margin:0 !important;
    flex:none !important;
}

/* Do NOT make Billing and Additional two competing columns. */
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout .woocommerce .col2-set#customer_details {
    display:block !important;
    width:100% !important;
    margin:0 !important;
}

body.woocommerce-checkout #customer_details > .col-1,
body.woocommerce-checkout #customer_details > .col-2 {
    float:none !important;
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 0 24px !important;
    padding:24px 26px !important;
    background:#fff !important;
    border:1px solid #e5e0d7 !important;
    border-radius:12px !important;
    box-shadow:0 5px 18px rgba(35,29,20,.055) !important;
    box-sizing:border-box !important;
}

body.woocommerce-checkout #customer_details > .col-2 {
    margin-bottom:0 !important;
}

/* Headings */
body.woocommerce-checkout .woocommerce-billing-fields > h3,
body.woocommerce-checkout .woocommerce-shipping-fields > h3,
body.woocommerce-checkout .woocommerce-additional-fields > h3,
body.woocommerce-checkout #order_review_heading {
    margin:0 0 20px !important;
    padding:0 !important;
    font-size:20px !important;
    line-height:1.3 !important;
    font-weight:700 !important;
    color:#2e2c29 !important;
}

/* Billing / shipping field grid */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:flex-start !important;
    gap:16px 18px !important;
}

body.woocommerce-checkout #customer_details .form-row {
    float:none !important;
    flex:1 1 100% !important;
    width:auto !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
}

/* Short, naturally paired fields. */
body.woocommerce-checkout #billing_phone_field,
body.woocommerce-checkout #billing_email_field {
    flex:1 1 calc(50% - 9px) !important;
    width:calc(50% - 9px) !important;
}

/* Province + the field immediately following it (ward on this site). */
body.woocommerce-checkout #billing_city_field,
body.woocommerce-checkout #billing_city_field + .form-row {
    flex:1 1 calc(50% - 9px) !important;
    width:calc(50% - 9px) !important;
}

/* Full-name and street address remain full width. */
body.woocommerce-checkout #billing_first_name_field,
body.woocommerce-checkout #billing_address_1_field {
    flex:1 1 100% !important;
    width:100% !important;
}

/* Labels always above inputs. */
body.woocommerce-checkout #customer_details label {
    display:block !important;
    position:static !important;
    margin:0 0 7px !important;
    min-height:0 !important;
    font-size:14px !important;
    line-height:20px !important;
    font-weight:600 !important;
    color:#33312e !important;
}

body.woocommerce-checkout #billing_email_field label {
    white-space:nowrap !important;
}

body.woocommerce-checkout #customer_details label .optional {
    font-size:12px !important;
    font-weight:400 !important;
    color:#777 !important;
}

/* Inputs */
body.woocommerce-checkout #customer_details input.input-text,
body.woocommerce-checkout #customer_details textarea,
body.woocommerce-checkout #customer_details select,
body.woocommerce-checkout #customer_details .select2-container {
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
}

body.woocommerce-checkout #customer_details input.input-text,
body.woocommerce-checkout #customer_details textarea,
body.woocommerce-checkout #customer_details select,
body.woocommerce-checkout #customer_details .select2-selection--single {
    min-height:46px !important;
    padding:11px 13px !important;
    border:1px solid #d9d4ca !important;
    border-radius:8px !important;
    background:#fff !important;
    color:#333 !important;
    font-size:14px !important;
    line-height:22px !important;
    box-shadow:none !important;
    transition:border-color .18s ease, box-shadow .18s ease !important;
}

body.woocommerce-checkout #customer_details textarea {
    min-height:112px !important;
    resize:vertical !important;
}

body.woocommerce-checkout #customer_details input.input-text:focus,
body.woocommerce-checkout #customer_details textarea:focus,
body.woocommerce-checkout #customer_details select:focus,
body.woocommerce-checkout #customer_details .select2-container--focus .select2-selection--single {
    border-color:#a98a38 !important;
    box-shadow:0 0 0 3px rgba(169,138,56,.12) !important;
    outline:0 !important;
}

body.woocommerce-checkout #customer_details .select2-selection__rendered {
    padding-left:0 !important;
    padding-right:26px !important;
    line-height:22px !important;
}

body.woocommerce-checkout #customer_details .select2-selection__arrow {
    height:44px !important;
}

/* Order summary */
body.woocommerce-checkout .checkout_flex_wrap > .right {
    min-width:0 !important;
}

@media (min-width:1101px) {
    body.woocommerce-checkout .checkout_flex_wrap > .right {
        position:sticky !important;
        top:20px !important;
    }
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table {
    width:100% !important;
    margin:0 0 24px !important;
    background:#fff !important;
    border:1px solid #e5e0d7 !important;
    border-collapse:separate !important;
    border-spacing:0 !important;
    border-radius:12px !important;
    overflow:hidden !important;
    box-shadow:0 5px 18px rgba(35,29,20,.055) !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
    padding:14px 15px !important;
    border-color:#ece8df !important;
    line-height:1.45 !important;
    vertical-align:middle !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th {
    background:#faf9f6 !important;
    font-weight:700 !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
    text-align:right !important;
    white-space:nowrap !important;
}

body.woocommerce-checkout #payment {
    margin:0 !important;
    padding:0 !important;
    background:#fff !important;
    border:1px solid #e5e0d7 !important;
    border-radius:12px !important;
    overflow:hidden !important;
    box-shadow:0 5px 18px rgba(35,29,20,.055) !important;
}

body.woocommerce-checkout #payment .payment_methods {
    padding:18px !important;
    border-bottom:1px solid #ece8df !important;
}

body.woocommerce-checkout #payment div.payment_box {
    margin:12px 0 0 !important;
    padding:13px 14px !important;
    border:1px solid #e9e3d8 !important;
    border-radius:8px !important;
    background:#faf9f6 !important;
}

body.woocommerce-checkout #payment .place-order {
    padding:18px !important;
}

body.woocommerce-checkout #place_order {
    width:100% !important;
    min-height:48px !important;
    border:0 !important;
    border-radius:8px !important;
    background:#9b7d2f !important;
    color:#fff !important;
    font-size:15px !important;
    font-weight:700 !important;
    box-shadow:none !important;
}

body.woocommerce-checkout #place_order:hover {
    background:#856a27 !important;
}

/* Checkout notices: roomy but not giant. */
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-error {
    box-sizing:border-box !important;
    margin-bottom:16px !important;
    padding-top:14px !important;
    padding-bottom:14px !important;
    border-radius:8px !important;
}

/* Tablet: order summary goes underneath form. */
@media (max-width:1100px) {
    body.woocommerce-checkout .checkout_flex_wrap {
        grid-template-columns:1fr !important;
        gap:26px !important;
    }

    body.woocommerce-checkout .checkout_flex_wrap > .right {
        position:static !important;
    }
}

/* Mobile: strictly one field per row. */
@media (max-width:700px) {
    body.woocommerce-checkout .checkout_flex_wrap {
        display:block !important;
        margin-top:20px !important;
    }

    body.woocommerce-checkout #customer_details > .col-1,
    body.woocommerce-checkout #customer_details > .col-2 {
        padding:18px 15px !important;
        margin-bottom:18px !important;
    }

    body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
    body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
        display:block !important;
    }

    body.woocommerce-checkout #customer_details .form-row,
    body.woocommerce-checkout #billing_phone_field,
    body.woocommerce-checkout #billing_email_field,
    body.woocommerce-checkout #billing_city_field,
    body.woocommerce-checkout #billing_city_field + .form-row {
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        margin:0 0 15px !important;
    }

    body.woocommerce-checkout #billing_email_field label {
        white-space:normal !important;
    }

    body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
    body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
        padding:12px 10px !important;
    }
}


/* ======================================================================
   PRODUCT GRID
   Keep SNS sizing logic. Only improve spacing/card rhythm.
====================================================================== */

/* Do not convert SNS grid to flex/grid: Owl and WPBakery depend on its widths. */
#sns_content .product_list.grid > li {
    box-sizing:border-box !important;
    padding-left:7px !important;
    padding-right:7px !important;
    margin-bottom:28px !important;
}

/* Remove the over-tall equal-height experiment. */
#sns_content .product_list.grid > li .item-inner,
#sns_content .product_list.grid > li .block-product-inner {
    height:auto !important;
    min-height:0 !important;
    display:block !important;
}

/* Light product-card treatment, not oversized boxes. */
#sns_content .product_list.grid > li .item-inner {
    border:1px solid #e9e7e2 !important;
    border-radius:9px !important;
    box-shadow:0 4px 13px rgba(0,0,0,.045) !important;
}

#sns_content .product_list.grid > li .item-info .info-inner {
    padding-bottom:13px !important;
}

/* Product name: breathing room from card edge. */
#sns_content .product_list.grid .item-info .info-inner .item-title {
    box-sizing:border-box !important;
    min-height:43px !important;
    margin:10px 0 5px !important;
    padding-left:10px !important;
    padding-right:10px !important;
    line-height:21px !important;
    overflow:hidden !important;
}

#sns_content .product_list.grid .item-info .info-inner .item-title a {
    display:-webkit-box !important;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden !important;
    word-break:normal !important;
}

/* Sale + regular price stay inside the card. */
#sns_content .product_list.grid .item-info .info-inner .price {
    box-sizing:border-box !important;
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-items:baseline !important;
    gap:3px 7px !important;
    min-height:42px !important;
    margin:0 !important;
    padding:5px 9px 7px !important;
    white-space:normal !important;
    line-height:1.3 !important;
}

#sns_content .product_list.grid .item-info .info-inner .price del,
#sns_content .product_list.grid .item-info .info-inner .price ins {
    display:inline-block !important;
    width:auto !important;
    max-width:100% !important;
    margin:0 !important;
    white-space:nowrap !important;
}

/* Section titles must not stick to the cards underneath. */
#sns_content .wpb_heading,
#sns_content .sns-title,
#sns_content .block-title,
#sns_content .products-title,
#sns_content .related.products > h2,
#sns_content .upsells.products > h2 {
    margin-bottom:18px !important;
}

/* Recent-view popup has its own compact card rules. */
.product_recent_views .product_list.grid > li {
    padding-left:0 !important;
    padding-right:0 !important;
    margin-bottom:0 !important;
}


/* =========================================================
   TUIXACHDA V4.1 - MAIN MENU
   ========================================================= */

@media (min-width:1200px) {

    #sns_menu .sns-mainnav-wrapper {
        display:flex !important;
        align-items:center !important;
        width:100% !important;
        min-width:0 !important;
    }

    #sns_menu #sns_mainnav {
        flex:1 1 auto !important;
        width:auto !important;
        min-width:0 !important;
    }

    #sns_menu .sns_nav-right {
        position:relative !important;
        top:auto !important;
        right:auto !important;
        left:auto !important;
        flex:0 0 auto !important;
        min-width:155px !important;
        margin-left:10px !important;
        background:#fff !important;
        z-index:50 !important;
    }

    #sns_mainmenu ul#main_navigation {
        display:flex !important;
        flex-wrap:nowrap !important;
        align-items:center !important;
        width:100% !important;
        min-width:0 !important;
        margin:0 !important;
        padding:0 !important;
    }

    #sns_mainmenu ul#main_navigation > li.menu-item {
        float:none !important;
        flex:0 0 auto !important;
        margin-left:3px !important;
        white-space:nowrap !important;
    }

    #sns_mainmenu ul#main_navigation > li.menu-item:first-child {
        margin-left:0 !important;
    }

    #sns_mainmenu ul#main_navigation > li.menu-item > a {
        padding-left:6px !important;
        padding-right:6px !important;
        white-space:nowrap !important;
        font-size:13px !important;
    }
}

@media (min-width:1200px) and (max-width:1399px) {
    #sns_mainmenu ul#main_navigation > li.menu-item > a {
        padding-left:4px !important;
        padding-right:4px !important;
        font-size:12px !important;
    }

    #sns_menu .sns_nav-right {
        min-width:150px !important;
        margin-left:6px !important;
    }
}


/* =========================================================
   TUIXACHDA V4.2 - PRODUCT GRID
   ========================================================= */

#sns_content .product_list.grid > li {
    box-sizing:border-box !important;
    vertical-align:top !important;
    padding-left:9px !important;
    padding-right:9px !important;
    margin-bottom:28px !important;
}

#sns_content .product_list.grid .block-product-inner {
    box-sizing:border-box !important;
    width:100% !important;
}

/* Border phải bao toàn bộ card */
#sns_content .product_list.grid .block-product-inner > .item-inner {
    box-sizing:border-box !important;
    display:flex !important;
    flex-direction:column !important;
    width:100% !important;
    height:100% !important;
    overflow:hidden !important;
    border:1px solid #e7e7e7 !important;
    border-radius:8px !important;
    background:#fff !important;
}

/* Khu text */
#sns_content .product_list.grid .item-info {
    display:flex !important;
    flex-direction:column !important;
    flex:1 0 auto !important;
    width:100% !important;
}

#sns_content .product_list.grid .item-info .info-inner {
    display:flex !important;
    flex-direction:column !important;
    flex:1 0 auto !important;
    padding-bottom:9px !important;
}

/* Tên luôn dành chỗ đúng 2 dòng */
#sns_content .product_list.grid .item-title {
    box-sizing:border-box !important;
    height:54px !important;
    min-height:54px !important;
    max-height:54px !important;
    margin:0 !important;
    padding:10px 10px 2px !important;
    line-height:21px !important;
    overflow:hidden !important;
}

#sns_content .product_list.grid .item-title a {
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    height:42px !important;
    overflow:hidden !important;
}

/* Khu giá cũng có chiều cao đồng đều */
#sns_content .product_list.grid .item-content {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:50px !important;
    margin-top:auto !important;
    padding:0 8px !important;
}

#sns_content .product_list.grid .price {
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    align-items:baseline !important;
    gap:2px 7px !important;
    width:100% !important;
    min-height:40px !important;
    margin:0 !important;
    padding:4px 0 !important;
    white-space:normal !important;
}

#sns_content .product_list.grid .price del,
#sns_content .product_list.grid .price ins {
    display:inline-block !important;
    width:auto !important;
    margin:0 !important;
    white-space:nowrap !important;
}

/* Owl carousel: mọi card trong cùng hàng cao bằng nhau */
#sns_content .related .owl-stage,
#sns_content .upsells .owl-stage,
#sns_content .sns-product-tabs .owl-stage {
    display:flex !important;
    align-items:stretch !important;
}

#sns_content .related .owl-item,
#sns_content .upsells .owl-item,
#sns_content .sns-product-tabs .owl-item {
    display:flex !important;
    float:none !important;
    height:auto !important;
}

#sns_content .related .owl-item > li,
#sns_content .upsells .owl-item > li,
#sns_content .sns-product-tabs .owl-item > li {
    width:100% !important;
    height:100% !important;
}


/* =========================================================
   GRID HEADING
   ========================================================= */

#sns_content .sns-product-tabs .sns-nav-tabs-warpper {
    box-sizing:border-box !important;
    position:relative !important;
    min-height:42px !important;
    margin-bottom:18px !important;
}

/* Heading trái */
#sns_content .sns-product-tabs h2.wpb_heading {
    margin-top:0 !important;
    margin-bottom:0 !important;
    line-height:32px !important;
    user-select:text !important;
    -webkit-user-select:text !important;
}

/* Tab/category bên phải */
#sns_content .sns-product-tabs ul.nav-tabs {
    top:0 !important;
}

#sns_content .sns-product-tabs ul.nav-tabs li,
#sns_content .sns-product-tabs ul.nav-tabs li a,
#sns_content .sns-product-tabs ul.nav-tabs li span {
    user-select:text !important;
    -webkit-user-select:text !important;
}

/* Khoảng cách heading -> sản phẩm */
#sns_content .sns-product-tabs .tab-content {
    padding-top:10px !important;
}

#sns_content .related.products > h2,
#sns_content .upsells.products > h2,
#sns_content .sns-products > h2,
#sns_content h2.wpb_heading {
    margin-bottom:20px !important;
}

