/*
Theme Name: Flatsome Child
Description: AZWebsite.vn developed for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.12.2
*/

/*************** ADD CUSTOM CSS HERE.   ***************/

body {
	line-height: 1.5;
}

p {
    margin-bottom: 16px;
}

:root {
	--primary-color: #2e9f3c;
	--primary-color-2: #5ea700;
	--active-color: #ffc107;
	--text-color: #4c4c4c;
	--black-color: #212529;
	--white-color: #fff;
	--red-color: #d80000;
}

.p-b-0 {
	padding-bottom: 0;
}

#header .header-search-form input {
	height: 40px;
    color: var(--text-color);
    padding: 0 10px;
    font-size: 14px;
	line-height: 1.5;
	border: 1px solid #ced4da;
    border-radius: 5px;
    box-shadow: none;
}

.header-main ul.header-nav-main.nav-right>li {
	margin: 0 25px;
}

.header-main .phone-header-block {
	margin-right: 30px;
}

.header-main .phone-header-block img {
	width: 32px;
	height: 32px;
	margin-right: 10px;
	animation: play0 1.5s ease infinite;
}

.header-main .phone-header-block span,
.header-main .account-item span {
	font-size: 16px;
	font-weight: 700;
	line-height: normal;
	text-transform: none;
	color: var(--text-color);
	position: relative;
}

.header-main .phone-header-block:hover span,
.header-main .account-item span:hover {
	color: var(--primary-color);
}

.header-main .account-item::before,
.header-main .account-item::after {
    display: none;
}

.header-main .account-item span::before {
	position: absolute;
	left: -30px;
	content: "";
    width: 24px;
    height: 24px;
    background-image: url(/wp-content/uploads/2023/06/muser-icon.png);
    background-repeat: no-repeat;
    background-size: contain;
}

.header-main .account-item ul.nav-dropdown {
    padding: 0;
    border: none;
    border-radius: 8px;
    box-shadow: 0px 0px 2px 0px var(--primary-color);
    min-width: 150px;
}

.header-main .account-item ul.nav-dropdown a {
    font-size: 16px;
    color: var(--text-color);
    line-height: 1.5;
    padding: 4px 8px;
    margin: 0;
    border: none;
}

.header-main .account-item ul.nav-dropdown a:hover {
    color: var(--primary-color);
}

.header-main .cart-item .header-cart-icon::after {
    background: var(--active-color);
    height: 25px;
    width: 25px;
    top: 22px;
    right: -5px;
    font-size: 15px;
    font-weight: normal;
    line-height: 25px;
}

.header-main .cart-item .header-cart-icon img.cart-img-icon {
    border: 2px solid var(--primary-color);
    border-radius: 10px;
    width: 42px;
    max-width: unset;
    padding: 4px;
}

@keyframes play0 {
	0% {
		transform: rotate(0deg) scale(1) skew(1deg);
	}
	10% {
		transform: rotate(-25deg) scale(1) skew(1deg);
	}
	20% {
		transform: rotate(25deg) scale(1) skew(1deg);
	}
	30% {
		transform: rotate(-25deg) scale(1) skew(1deg);
	}
	40% {
		transform: rotate(25deg) scale(1) skew(1deg);
	}
	50% {
		transform: rotate(0deg) scale(1) skew(1deg);
	}
	100% {
		transform: rotate(0deg) scale(1) skew(1deg);
	}
}

.header-shadow .header-wrapper {
    box-shadow: none;
}

.header-bottom {
	background: linear-gradient(90deg, var(--primary-color), var(--primary-color-2)) !important;
}

.header-bottom ul.header-nav {
    height: 48px;
}

.header-bottom ul.header-nav>li.menu-item {
	margin: 0 16px;
	height: 100%;
}

.header-bottom ul.header-nav>li.menu-item>a {
    font-size: 16px;
    font-weight: 700;
	color: var(--white-color);
	display: flex;
    justify-content: center;
    height: 100%;
}

.header-bottom ul.header-nav>li.menu-item.active>a,
.header-bottom ul.header-nav>li.menu-item:hover>a {
	color: #ffc107;
}

.header-bottom ul.header-nav>li.menu-item::before,
.header-bottom ul.header-nav>li.menu-item::after {
	display: none;
}

.header-bottom ul.header-nav>li.menu-item-has-block {
	position:unset;
}

.header-bottom ul.header-nav>li.menu-item:hover>.sub-menu.nav-dropdown {
    opacity: 1;
    visibility: visible;
    top: 100% !important;
	transform: translateY(0px);
}

.header-bottom ul.header-nav>li.menu-item>.sub-menu.nav-dropdown {
    background: #fff;
	border: none;
	left: 0;
	position: absolute;
    visibility: hidden;
    opacity: 0;
}

.header-bottom ul.header-nav>li.menu-item>ul.sub-menu.nav-dropdown {
	padding: 0;
	border-radius: 8px;
    box-shadow: 0px 0px 2px 0px var(--primary-color);
    min-width: 220px;
    top: 80px !important;
	transition: all 0.3s ease-in-out;
}

.header-bottom ul.header-nav>li.menu-item>div.sub-menu.nav-dropdown {
	padding: 0;
	border-radius: 8px;
    box-shadow: 0px 2px 3px 0px #e9e9e9;
	transition: .3s ease-in !important;
	transform: translateY(20px);
}

.header-bottom ul.header-nav>li.menu-item ul.sub-menu>li>a {
	margin: 0;
	padding: 4px 8px;
    position: relative;
    transition: all 0.2s;
    color: var(--text-color);
    font-size: 16px;
	line-height: 1.5;
	border: none;
}

.header-bottom ul.header-nav>li.menu-item ul.sub-menu>li>a:hover {
	color: var(--primary-color);
}

.menu-wrap {
	margin: 0 !important;
}

.menu-wrap .col {
	padding: 0 8px 8px;
}

.menu-wrap .ux-menu .ux-menu-link:nth-child(1) a.ux-menu-link__link {
    font-weight: 600;
	padding: 4px 0;
}

.menu-wrap .ux-menu a.ux-menu-link__link {
    font-size: 16px;
    color: var(--text-color);
	line-height: 1.5;
    min-height: unset;
    padding: 4px 8px;
	border: none !important;
}

.menu-wrap .ux-menu a.ux-menu-link__link:hover {
	color: var(--primary-color) !important;
}

.header-bottom .header-button-1 a {
	font-size: 16px;
	text-transform: none;
	color: var(--white-color);
	line-height: 1.5;
	min-height: unset;
	position: relative;
}

.header-bottom .header-button-1 a:hover {
	color: var(--active-color);
	opacity: 1;
}

.header-bottom .header-button-1 a::before {
    position: absolute;
    left: -30px;
    content: "";
    width: 24px;
    height: 24px;
    background-image: url(/wp-content/uploads/2023/06/mmap-icon.png);
    background-repeat: no-repeat;
    background-size: contain;
}

.section_swiper {
	padding: 16px 0 60px !important;
}

.section_swiper .col {
	padding-bottom: 0;
}

.section_swiper .icon-box {
	padding: 8px 0;
}

.section_swiper .icon-box .icon-box-img img {
	padding: 0;
}

.section_swiper .icon-box .icon-box-text {
	font-size: 19px;
    display: flex;
    align-items: center;
}

.section-title-container,
.section-title-container .section-title-normal,
.section-title-container .section-title span {
	border: none;
	margin: 0;
}

#main .section-title-container span.section-title-main,
h3.section-title-main-link {
	font-size: 22px;
	font-weight: 700;
	color: var(--black-color);
	text-transform: uppercase;
	border: none;
	margin: 0;
	padding-bottom: 16px;
}

h3.section-title-main-link img {
	max-height: 23px;
    vertical-align: -2px;
	margin-right: 5px;
}

#main .section_cate .section-title-container span.section-title-main {
	padding-bottom: 24px;
}

.slick-list.draggable {
    padding: 0 !important;
}

.slick-initialized .slick-prev {
    left: 10px;
    z-index: 1;
}

.flickity-button {
	margin-top: -4% !important;
}

.flickity-button.previous {
	left: 8px;
}

.flickity-button.next {
	right: 8px;
}

.slick-initialized .slick-prev,
.flickity-button.previous .flickity-button-icon {
    padding-right: 7px;
    border-radius: 0 100px 100px 0;
}

.slick-initialized .slick-next,
.flickity-button.next .flickity-button-icon {
	padding-left: 7px;
    border-radius: 100px 0 0 100px;
    right: 10px;
}

.slick-initialized .slick-prev,
.slick-initialized .slick-next,
.flickity-button.previous .flickity-button-icon,
.flickity-button.next .flickity-button-icon {
    width: 30px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #f7f7f7;
    box-shadow: 0 0 4px 0 rgba(0,0,0,0.2);
    color: #707070;
    transition: .3s;
    outline: none;
    opacity: .9;
}

.slick-initialized .slick-prev:before,
.slick-initialized .slick-next::before {
	font-family: 'FontAwesome';
	font-size: 20px;
	font-weight: normal;
    color: #333;
}

.slick-initialized .slick-prev:before {
	content: '\f053' !important;
}

.slick-initialized .slick-next::before{
	content: '\f054' !important;
}

.slick-initialized .slick-prev:hover,
.slick-initialized .slick-next:hover {
    background: #f7f7f7;
}

.slick-initialized .slick-prev:hover::before,
.slick-initialized .slick-next:hover::before {
	color: var(--primary-color);
}

.section_cate .cate-slider {
	max-width: 1160px;
    margin-left: -10px !important;
    margin-right: -10px !important;
}

.section_cate .product-category {
	padding: 0 10px;
}

.section_cate .product-category .box-category {
    border-radius: 10px;
    background: linear-gradient(30deg, var(--primary-color), var(--primary-color-2));
	padding: 16px;
	display: flex;
    flex-direction: row-reverse;
}

.section_cate .product-category .box-category .box-image {
    width: 50%;
	transition: all .3s ease-in-out;
}

.section_cate .product-category .box-category .box-image:hover {
	transform: translateY(-8px);
}

.section_cate .product-category .box-category .box-image img {
    filter: drop-shadow(0px 3px 0px #fff);
}

.section_cate .product-category .box-category .box-text {
	width: 50%;
	padding: 0;
}

.section_cate .product-category .box-category .box-text h5 {
	font-size: 18px;
	color: var(--white-color);
    text-transform: none;
	margin: 0;
}

.section_cate .product-category .box-category .box-text p,
.section_cate .product-category .box-category .box-text a {
	font-size: 16px;
	color: var(--white-color);
	text-transform: none;
	line-height: 21px;
	margin: 0;
	display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    word-break: break-word;
    -webkit-line-clamp: 1;
}

.section_cate .product-category .box-category .box-text h5:hover,
.section_cate .product-category .box-category .box-text a:hover {
	color: var(--active-color);
}

.section_product {
	padding: 16px 0 0 !important;
}

.badge-container {
    top: 5px;
    left: unset;
    right: 5px;
    margin: 0;
}

.badge-container .badge {
    height: unset;
    width: unset;
}

.badge-container .badge .on-sale {
    font-size: 12px;
    font-weight: 700;
	padding: 3px 7px;
    border-radius: 5px;
    height: 24px;
	background: var(--red-color);
	box-shadow: 0px 0px 5px 2px var(--white-color);
}

.product-small.box {
    border: 1px solid #dee2e6 !important;
    border-radius: 10px;
    padding: 8px;
}

.product-small .box-text {
	text-align: left;
	padding: 0;
}

.product-small .box-text .product-title a {
	font-size: 16px;
	font-weight: 700;
	overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
	margin: 5px 0;
}

.product-small .box-text .price {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    align-items: center;
    line-height: 1.5;
    margin-bottom: 4px;
}

.product-small .box-text .price span.amount bdi,
.product-small .box-text .price ins span.amount bdi {
    font-size: 16px;
    font-weight: 600;
    color: var(--red-color);
}

.product-small .box-text .price del span.amount bdi {
    font-size: 13px;
    font-weight: 400;
    color: var(--black-color);
    margin-left: 7px;
}

.product-small:hover .add-to-cart-button {
    transform: translateX(0);
    opacity: 1;
    visibility: visible;
}

.product-small .add-to-cart-button {
    top: -45px;
    right: 0;
    z-index: 2;
    display: block;
    height: 40px;
    width: 40px;
    position: absolute;
    background: transparent;
    color: transparent;
    transform: translateX(100%);
    opacity: 0;
    visibility: hidden;
    transition: 0.3s all ease;
}

.product-small:hover .add-to-cart-button {
    opacity: 1;
    visibility: visible;
}

.product-small .add-to-cart-button a {
	display: block;
    font-size: 0.1px;
    height: 40px;
    background: transparent !important;
    color: transparent !important;
    border: none;
    box-shadow: none;
    margin: 0;
    padding: 0;
    position: absolute;
}

.product-small .add-to-cart-button a::after {
	content: "\f291";
    font-size: 21px;
    font-family: 'FontAwesome';
    position: absolute;
    visibility: visible;
    color: var(--white-color);
    height: 40px;
    width: 40px;
    line-height: 40px;
    text-align: center;
    outline: none;
    border: none;
    background-color: var(--primary-color);
	border-radius: 50%;
	box-shadow: 0px 0px 3px 0px rgba(0,0,0,0.2);
    cursor: pointer;
    animation: play0 1.5s ease infinite;
}

.product-small .box-text .added_to_cart.wc-forward {
    display: none;
}

/* Sản phẩm có biến thể trước đây dùng icon bánh răng (\f013) để báo "cần chọn
   tuỳ chọn". Theo yêu cầu, thống nhất dùng icon giỏ hàng như mọi sản phẩm khác. */
.product-small a.product_type_variable::after {
	content: "\f291";
    font-family: 'FontAwesome';
}

.product-small .add-to-cart-button a:hover::after {
	background: var(--primary-color-2);
}

.product-small .add-to-cart-button a.loading:after {
    margin: 0;
    top: 0;
    left: 0;
    -webkit-animation: spin .5s linear infinite;
    animation: spin .5s linear infinite;
}

.section_pr-banner {
	padding: 16px 0 !important;
}

.modal-overlay .img-inner {
	position: relative;
	border-radius: 8px;
}

.modal-overlay .img-inner:before,
.social-icons .icon::before,
.product-info button.single_add_to_cart_button::before,
.product-info .shopee_link::before,
.product-footer .woocommerce-tabs .devvn_readmore_flatsome a::before,
.widget.widget_media_image::before,
.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner a.button::before {
    content: "";
    left: 0;
    opacity: 1;
    position: absolute;
    right: 0;
    top: 0;
    background: rgba(255,255,255,0.6) none repeat scroll 0 0;
    height: 0;
    transition: all 0.5s ease-in-out 0s;
    width: 100%;
    z-index: 1;
}

.modal-overlay .img-inner:hover:before,
.social-icons .icon:hover::before,
.product-info button.single_add_to_cart_button:hover::before,
.product-info .shopee_link:hover:before,
.product-footer .woocommerce-tabs .devvn_readmore_flatsome a:hover::before,
.widget.widget_media_image:hover::before,
.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner a.button:hover::before {
    opacity: 0;
    height: 100%;
}

.section_product.pr_more .c-p-16 {
	padding-bottom: 16px;
}

.pr-view-more {
	text-align: center;
	position: relative;
	top: -6px;
}

.pr-view-more p {
	margin-bottom: 0;
}

.pr-view-more:before {
    content: '';
    width: 100%;
    height: 1px;
    position: absolute;
    left: 0;
    top: 50%;
    background: #dee2e6;
    z-index: 0;
}

.pr-view-more a.button.pr-xem-them {
    font-size: 14px;
    font-weight: normal;
    text-transform: none;
	line-height: 1.5;
	min-height: unset;
    padding: 5px 15px;
	border: none;
    border-radius: 25px;
    box-shadow: 0px 0px 0px 13px #fff;
	margin: 0;
}

.section_blog-video {
	padding: 16px 0 0 !important;
}

.section_blog-video .post-item {
	padding-bottom: 16px;
}

.box-blog-post .box-image {
    border-radius: 10px;
	position: relative;
}

.box-blog-post .box-image:before {
    content: '';
    background: var(--primary-color);
    width: 120px;
    height: 120px;
    border-radius: 50%;
    position: absolute;
    top: -54px;
    left: -40px;
    z-index: 1;
    pointer-events: none;
}

.box-blog-post .box-image::after {
    content: '';
    position: absolute;
    top: 30px;
    right: 30px;
    bottom: 30px;
    left: 30px;
    border: 1px solid #fff;
    border-radius: 0.25rem;
    box-shadow: 0 0 0 45px rgba(255,255,255,0.2);
    opacity: 0;
    transition: opacity 0.35s, transform 0.35s;
    transform: scale3d(1.4, 1.4, 1);
    background-image: url(/wp-content/uploads/2023/06/favicon.webp);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 70px;
    background-color: rgba(76,175,80,0.2);
	z-index: 2;
}

.box-blog-post .box-image:hover:after {
    opacity: 1;
    transform: scale3d(1, 1, 1);
}

.section_blog-video .box-blog-post .box-image:before,
.section_blog-video .box-blog-post .box-image::after  {
	display: none;
}

.box-blog-post .box-image .image-cover {
	padding-top: 68% !important;
}

.box-blog-post .box-text {
	padding: 0;
	text-align: left;
}

.box-blog-post .box-text h5.post-title {
    font-size: 16px;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    word-break: break-word;
    -webkit-line-clamp: 1;
    margin: 8px 0;
}

.box-blog-post .box-text h5.post-title:hover {
	color: var(--primary-color);
}

.box-blog-post .box-text .is-divider {
	display: none;
}

.box-blog-post .box-text .from_the_blog_excerpt {
	font-size: 15px;
	color: var(--text-color);
	margin: 0;
}

.box-blog-post .badge {
	top: 10px !important;
    left: 0;
    padding: 0px 7px;
	height: unset;
}

.box-blog-post .badge .badge-inner {
	padding: 0;
	background: transparent !important;
}

.box-blog-post .badge .post-day {
	font-size: 19.2px;
	line-height: normal;
}

.box-blog-post .badge .post-year {
	font-size: 12.8px;
	font-weight: normal;
}

.section_reviews {
	padding: 24px 0 0 !important;
}

.section_reviews .review-slider .col {
	padding-bottom: 16px;
}

.section_reviews .review-slider .slick-arrow {
    display: none !important;
}

.section_reviews .review-slider .item_wrap .box {
	padding: 16px;
	box-shadow: 0 0 10px 0 rgba(4,4,4,0.1);
    border-radius: 10px;
}

.section_reviews .review-slider .item_wrap .box .box-image {
    height: 80px !important;
    width: 80px !important;
    display: block;
	float: left;
	margin-right: 14px;
}

.section_reviews .review-slider .item_wrap .box .box-image img {
	border-radius: 50%;
	border: 2px solid var(--primary-color);
}

.section_reviews .review-slider .item_wrap .box .box-text {
	padding: 0 0 24px 0;
    text-align: left;
	font-size: 16px;
}

.section_reviews .review-slider .item_wrap .box .box-text h4 {
    height: 80px;
	margin: 0 0 8px 0;
	text-transform: none;
	padding-top: 15px;
}

.section_reviews .review-slider .item_wrap .box .box-text h4 .person-name {
	font-size: 16px;
	color: var(--primary-color);
}

.section_reviews .review-slider .item_wrap .box .box-text h4 .person-title {
	font-size: 16px;
	color: var(--text-color);
	opacity: 1;
}

.section_reviews .review-slider .item_wrap .box .box-text {
	margin: 0 0 16px 0;
	position: relative;
}

.section_reviews .review-slider .item_wrap .box .box-text::after {
    content: "\f10e";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 40px;
    height: 40px;
    font-size: 46px;
    font-family: fontAwesome;
    color: var(--primary-color);
    opacity: .3;
}

.section_blogs {
	padding: 16px 0 0 !important;
}

.line-footer {
	padding-top: 18px;
	line-height: 0;
}

.section_footer .section-title-main {
    font-size: 20px;
    text-transform: none;
    line-height: 1.2;
    padding-bottom: 8px;
}

.section_footer .ux-menu .menu-item .ux-menu-link__link {
	font-size: 16px;
	line-height: 1.5;
	padding: 0;
	margin: 4px 0;
	min-height: unset;
    border: none !important;
}

.section_footer .ux-menu .menu-item .ux-menu-link__link:hover {
	color: var(--primary-color);
}

.section_footer ul.adr {
    margin-bottom: 0;
}

.section_footer ul.adr > li {
	list-style: none;
	margin: 0;
}

.section_footer .social-icons {
	margin-bottom: 16px;
}

.social-icons .icon {
	min-width: 32px;
	min-height: 32px;
	border: none;
	margin: 0;
	position: relative;
}

.social-icons .icon+.icon {
	margin: 0 0 0 8px;
}

.social-icons .icon.facebook {
    background: #3a589d;
}

.social-icons .icon.instagram {
	background: #3b6994;
}

.social-icons .icon.tiktok {
	background: #111;
}

.social-icons .icon.twitter {
	background: #2478ba;
}

.social-icons .icon.pinterest {
	background: #cb2320;
}

.social-icons .icon.youtube {
	background: #c33223;
}

.social-icons a i {
    display: block;
    font-size: 20px !important;
    color: #fff;
    line-height: 32px;
}

.section_footer .text-payment {
	margin-bottom: 16px;
}

.section_footer .payment-accept img {
    max-height: 30px;
}

.section_footer .store {
    width: 200px;
    margin: 0;
}

.section_footer .store .box-image .img {
	max-height: 120px;
	max-width: fit-content;
}

.section_footer .store .box-text {
	padding: 8px 0 0;
}

.section_footer .store .box-text .btn-store {
    font-size: 18px;
	font-weight: 700;
    padding: 5px 15px;
    border-radius: 10px;
    color: var(--primary-color);
    border: 1px solid var(--primary-color);
}

.section_footer .store .box-text .btn-store:hover {
	color: var(--white-color);
	background: var(--primary-color);
}

.absolute-footer {
    border-top: 1px solid #dee2e6;
}

.absolute-footer .copyright-footer {
	font-size: 16px;
	color: var(--text-color);
}

.absolute-footer .footer-secondary.pull-right {
    padding: 0;
    height: 0;
}

.section_breadcrumb,
.category-page-title {
    padding: 0 !important;
}

.home .row.breadcrumb {
    display: none;
}

.row.breadcrumb .col,
.woocommerce-breadcrumb {
    padding: 12px 0;
    min-height: unset;
	border-bottom: 1px solid #dee2e6;
}

.row.breadcrumb .col {
    margin: 0 15px;
}

.page-title-inner {
    padding: 0 15px;
    min-height: unset;
}

.row.breadcrumb #breadcrumbs,
.breadcrumbs {
    font-size: 16px;
    font-weight: normal;
    line-height: 24px;
    color: var(--text-color);
    text-transform: none;
}

.row.breadcrumb #breadcrumbs a,
.breadcrumbs a {
    color: var(--text-color);
}

.row.breadcrumb #breadcrumbs a:hover,
.breadcrumbs a:hover {
    color: var(--primary-color);
}

.row.breadcrumb #breadcrumbs span::after,
.breadcrumbs a::after {
    content: "/";
    padding: 0 10px;
    color: var(--text-color);
}

.row.breadcrumb #breadcrumbs span:last-child::after,
.breadcrumbs a:last-child::after {
    display: none;
}

.woocommerce .row.breadcrumb,
.breadcrumbs .divider {
    display: none;
}

#content.page-wrapper {
	padding: 16px 0 0;
}

#content.page-wrapper>.row-main>.col {
    padding-bottom: 16px;;
}

.blog-wrapper .archive-page-header > .row > .col {
    padding-bottom: 0;
}

.category-vao-bep-cung-mew p.from_the_blog_excerpt {
    display: none;
}

.blog-wrapper.blog-archive .large-3.post-sidebar {
    padding-left: 0;
}

.blog-wrapper.blog-archive .large-9 {
    padding-right: 20px;
}

.blog-wrapper.blog-archive .large-3.post-sidebar .widget.widget_categories {
    display: none;
}

.blog-wrapper.blog-single .large-3.post-sidebar {
    padding-right: 0;
    padding-bottom: 0;
}

.blog-wrapper.blog-single .large-9 {
    padding-left: 20px;
    padding-bottom: 0;
}

.blog-wrapper.blog-archive .archive-page-header .page-title,
.entry-header h1.entry-title {
    text-align: left;
    text-transform: none;
    font-weight: 700;
    line-height: 1.2;
}

.blog-wrapper.blog-archive .archive-page-header .page-title,
.entry-header h1.entry-title {
    font-size: 25px;
    color: var(--primary-color);
    margin-bottom: 20px;
}

.blog-wrapper.blog-single .entry-header .entry-header-text {
    padding-bottom: 16px;
}

.blog-wrapper.blog-single .entry-header h1.entry-title {
    font-size: 22.4px;
    margin-bottom: 8px;
    color: var(--black-color);
}

.blog-wrapper.blog-single .entry-header .entry-divider {
    display: none;
}

.blog-wrapper.blog-single .entry-header .entry-meta {
    font-size: 16px;
    font-weight: 700;
    text-transform: none;
}

.blog-wrapper.blog-single .entry-header .entry-meta .by-post {
    font-weight: normal;
}

.blog-wrapper.blog-single article {
    margin-bottom: 0;
}

.blog-wrapper.blog-single .entry-content.single-page {
    padding: 0;
}

.blog-wrapper.blog-single .entry-content.single-page h2 {
    font-size: 21px;
    color: var(--primary-color);
    padding-left: 10px;
    border-left: 2px solid var(--primary-color);
}

div#ez-toc-container {
    border: 1px solid #ffe79f;
    background: #fffefa;
    padding: 8px;
}

div#ez-toc-container .ez-toc-title-container{
    margin-bottom: 8px;
}

div#ez-toc-container p.ez-toc-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--primary-color);
}

div#ez-toc-container span.ez-toc-title-toggle {
    display: none;
}

div#ez-toc-container ul {
    padding-left: 15px !important;
    margin: 0;
}

div#ez-toc-container a {
    font-size: 16px;
    color: #007bff;
    margin-bottom: 7px;
}

div#ez-toc-container a:visited {
    color: #007bff;
}

.blog-wrapper.blog-single footer.entry-meta {
    font-size: 16px;
    padding: 8px 0;
    border-top: 1px solid #dee2e6;
    border-bottom: 1px solid #dee2e6;
}

.blog-wrapper.blog-single footer.entry-meta .danh-muc {
    display: none;
}

.blog-wrapper.blog-single footer.entry-meta .the-tim-kiem {
    font-weight: 700;
    display: flex;
    align-items: center;
    padding: 4px 0;
}

.blog-wrapper.blog-single footer.entry-meta .the-tim-kiem a {
    font-weight: normal;
    color: #777;
    padding: 4px 16px;
    border: 1px solid #dee2e6;
    border-radius: 20px;
    margin-left: 8px;
}

.blog-wrapper.blog-single footer.entry-meta .the-tim-kiem a:hover {
    color: var(--white-color);
    background: var(--primary-color);
    border: 1px solid var(--primary-color);
}

.section_thong-tin-tac-gia {
    padding: 16px 0 !important;
    border-bottom: 1px solid #dee2e6;
}

.section_thong-tin-tac-gia .col {
    padding-bottom: 0;
}

.section_thong-tin-tac-gia .col.c2 {
    padding-left: 5px;
    display: flex;
    align-items: center;
}

.section_thong-tin-tac-gia .box .box-image {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    border: 1px solid var(--primary-color);
}

.section_thong-tin-tac-gia .box .box-image:hover {
    border: 3px solid var(--primary-color);
}

.section_thong-tin-tac-gia .box .box-image img {
    border-radius: 50%;
    padding: 3px;
}

.section_thong-tin-tac-gia .box .box-text {
    padding: 8px 0 0;
}

.section_thong-tin-tac-gia .box .box-text h4 {
    font-size: 16px;
}

.section_thong-tin-tac-gia .box .box-text p {
    font-size: 13px;
    color: #6c6c6c;
}

.section_thong-tin-tac-gia .tt-sup {
    font-size: 15px;
}

#comments .comment-respond {
    margin-top: 24px;
    padding: 0;
    background: transparent;
}

#comments .comment-respond h3#reply-title {
    font-size: 21px;
    margin-bottom: 16px;
}

#comments .comment-respond .logged-in-as,
#comments .comment-respond .comment-notes {
    display: none;
}

#comments .comment-respond .comment-form-comment,
#comments .comment-respond .form-submit {
    margin-bottom: 0;
}

#comments .comment-respond label {
    font-size: 16px;
    font-weight: normal;
}

.form-lien-he input,
.form-lien-he textarea,
#comments .comment-respond input,
#comments .comment-respond textarea {
    /* height: 40px; */
    padding: 6px 12px;
    font-size: 16px;
    line-height: 1.5;
    color: #495057;
    font-weight: normal;
    border: 1px solid #ced4da;
    border-radius: 4px;
    margin-bottom: 16px;
    box-shadow: none !important;
}

.form-lien-he input.wpcf7-submit, #comments .comment-respond input.submit {
    color: var(--white-color);
    text-transform: none;
    font-weight: 700;
    margin: 0;
}

.wpcf7-spinner {
	display: none;
}

.section_bai-viet-lien-quan {
    padding-top: 0 !important;
}

.section_bai-viet-lien-quan > .row > .col {
    padding-bottom: 0;
}

.bai-viet-lien-quan h3 {
    font-size: 20.8px;
    padding: 24px 0 16px;
    margin-bottom: 16px;
    border-top: 1px solid #dee2e6;
}

.widget .widget-title {
    width: 100%;
    display: inline-block;
    font-size: 16px;
    color: var(--white-color);
    background: var(--primary-color);
    line-height: 1.2;
    padding: 8px;
    border-radius: 8px;
}

.widget .is-divider {
    margin: 4px;
    background: transparent;
}

.widget.widget_categories ul>li.cat-item,
.widget.widget_categories ul>li.cat-item ul {
    border: none;
}

.widget.widget_categories ul>li.cat-item a {
    padding: 8px 0;
    font-size: 16px;
    line-height: 1.5;
    color: var(--black-color);
    width: 100%;
}

.widget.flatsome_recent_posts .recent-blog-posts {
    padding: 8px 0;
}

.widget.flatsome_recent_posts .recent-blog-posts .badge-square {
    width: 100px;
    height: 66px;
}

.widget.flatsome_recent_posts .recent-blog-posts .badge-square .badge-inner {
    padding: 0;
    border-radius: 8px;
}

.widget.flatsome_recent_posts .recent-blog-posts a {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    word-break: break-word;
    -webkit-line-clamp: 3;
    margin-bottom: 0;
}

.widget_product_categories ul.product-categories .cat-item-15,
.widget_product_categories ul.product-categories .cat-item-97,
.widget_product_categories ul.product-categories .cat-item-110 {
    display: none;
}

.widget_product_categories ul.product-categories li {
    border: none;
}

.widget_product_categories ul.product-categories li a {
    padding: 8px 0;
    font-size: 16px;
}

.widget_product_categories ul.product-categories li.active > a {
    color: var(--primary-color);
}

.widget_product_categories ul.product-categories li ul.children {
    border: none;
    margin: 0;
    padding-left: 16px;
}

.widget.widget_price_filter .price_label {
    font-size: 16px;
}

.widget.widget_price_filter button {
    padding: 0 12px;
    color: var(--white-color);
    border-radius: 4px !important;
    box-shadow: none;
}

.widget.widget_price_filter button:hover {
    background: var(--primary-color-2) !important;
}

.widget ul.yith-wcan-list {
    max-height: 156px;
    overflow-y: auto;
}

.widget ul.yith-wcan-list::-webkit-scrollbar {
    width: 2px;
    background-color: #F5F5F5;
    border-radius: 6px;
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
}

.widget ul.yith-wcan-list::-webkit-scrollbar-thumb {
    background-color: var(--primary-color);
    border-radius: 6px;
}

.widget ul.yith-wcan-list li {
    border: none;
    position: relative;
}

.widget ul.yith-wcan-list li span, .widget ul.yith-wcan-list li a {
    font-size: 16px;
    padding: 4px 0 4px 28px;
}

.widget ul.yith-wcan-list li span::before, .widget ul.yith-wcan-list li a::before {
    content: "";
    border-radius: 50%;
    font-size: 18px;
    border: solid 1px #929292;
    position: absolute;
    top: 7px;
    left: 0;
    height: 20px;
    width: 20px;
    opacity: 1;
}

.widget ul.yith-wcan-list li span::after,
.widget ul.yith-wcan-list li a::after {
    content: "\f00c";
    font-family: 'FontAwesome';
    font-size: 14px;
    font-weight: 900;
    color: #929292;
    position: absolute;
    height: 20px;
    width: 20px;
    top: 7px;
    left: 0px;
    display: flex;
    justify-content: center;
    opacity: 0;
}

.widget ul.yith-wcan-list li:hover span::after,
.widget ul.yith-wcan-list li:hover a::after {
    opacity: 1;
    transition: 0.5s all;
}

.widget ul.yith-wcan-list li.chosen span::before,
.widget ul.yith-wcan-list li.chosen a::before {
    background: var(--primary-color);
}

.widget ul.yith-wcan-list li.chosen span::after,
.widget ul.yith-wcan-list li.chosen a::after {
    opacity: 1;
    color: var(--white-color);
    transition: 0.5s all;
}

.widget.widget_products ul.product_list_widget li {
    border-radius: 8px;
    border: 1px solid #dee2e6;
    padding: 8px 8px 8px 95px;
    min-height: 95px;
    margin-bottom: 10px;
}

.widget.widget_products ul.product_list_widget li img {
    width: 79px;
    height: 79px;
    margin: 0 0 0 8px;
    top: unset;
}

.widget.widget_products ul.product_list_widget li a {
    font-size: 16px;
    font-weight: 700;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    word-break: break-word;
    -webkit-line-clamp: 1;
}

.widget.widget_products ul.product_list_widget li span.amount bdi,
.widget.widget_products ul.product_list_widget li ins span.amount bdi {
    font-size: 16px;
    font-weight: 600;
    color: var(--red-color);
}

.widget.widget_products ul.product_list_widget li del span.amount bdi {
    font-size: 13px;
    font-weight: 400;
    color: var(--black-color);
    margin-left: 7px;
}

.widget.widget_media_image {
    position: relative;
}

.widget.widget_media_image img {
    border-radius: 8px;
}

.page_contact ul.adr>li {
    list-style: none;
    margin: 0 0 8px 0;
}

.page_contact .c1,
.page_contact .c2 {
    padding-bottom: 0;
}

.form-lien-he input,
.form-lien-he textarea {
    padding: 6px 12px;
    font-size: 16px;
    line-height: 1.5;
    border: 1px solid #ced4da;
    border-radius: 4px;
    box-shadow: none;
}

.form-lien-he input.wpcf7-submit {
    margin: 0;
    text-transform: none;
    min-height: unset;
    position: relative;
}

.form-lien-he input.wpcf7-submit::before {
    content: "";
    left: 0;
    opacity: 1;
    position: absolute;
    right: 0;
    top: 0;
    background: rgba(255,255,255,0.6) none repeat scroll 0 0;
    height: 0;
    transition: all 0.5s ease-in-out 0s;
    width: 100%;
    z-index: 1;
}

.form-lien-he input.wpcf7-submit:hover {
    background: var(--primary-color-2);
}

.form-lien-he input.wpcf7-submit:hover::before {
    opacity: 0;
    height: 100%;
}

.form-lien-he p.t-require {
    margin-bottom: 16px;
}

.page_store_ht-store .col {
    padding-bottom: 16px;
}

.page_store_ht-store .icon-box {
    padding: 16px 16px 0;
    border-radius: 10px;
    color: var(--white-color);
    position: relative;
}

.page_store_ht-store .icon-box.ht-1 {
    background-color: #ff9800;
}

.page_store_ht-store .icon-box.ht-2 {
    background-color: #03a9f4;
}

.page_store_ht-store .icon-box.ht-3 {
    background-color: #4caf50;
}

.page_store_ht-store .icon-box.ht-4 {
    background-color: #9c27b0;
}

.page_store_ht-store .icon-box .icon-box-img {
    display: flex;
    align-items: flex-end;

    position: absolute;
    bottom: 0;
    right: 10px;
}

.page_store_ht-store .icon-box .icon-box-text {
    text-align: left;
    padding-bottom: 16px;
}

.page_store_ht-store .icon-box .icon-box-text p {
    margin-bottom: 0;
    line-height: normal;
}

.page_store_ht-store .icon-box .icon-box-text p.ht-t {
    font-size: 18px;
}

.page_store_ht-store .icon-box .icon-box-text p.ht-n {
    font-size: 36px;
    font-weight: 700;
}

.page_store_location-map h3.accordion_title {
    font-size: 16px;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.page_store_location-map > .col > .col-inner {
    background: #f9f9f9;
    padding: 16px;
    border-radius: 18px;
}

.page_store_location-map .accordion .accordion-title {
    background: #fff;
    font-size: 16px;
    padding: 6px 28px 6px 0;
    border: 1px solid #ced4da;
    border-radius: 4px;
    margin-bottom: 4px;
}

.page_store_location-map .accordion .toggle {
    position: unset;
    margin: 0;
    min-height: unset;
    height: unset;
    width: 28px;
}

.page_store_location-map .accordion .toggle i{
    line-height: unset;
    font-size: 16px;
    font-weight: 700 !important;
}

.page_store_location-map .accordion .accordion-inner {
    padding: 0;
}

.page_store_location-map .accordion ul {
    flex-basis: 33.333333%;
    max-width: 33.333333%;
    padding-right: 30px;
}

.page_store_location-map .accordion ul > li.tab {
    margin-bottom: 4px;
}

.page_store_location-map .accordion ul > li.tab > a {
    font-size: 14px;
    text-transform: none;
    color: var(--text-color);
    background: var(--white-color);
    padding: 4px;
    border: 1px solid var(--primary-color);
    border-radius: 8px;
}

.page_store_location-map .accordion ul > li.tab.active > a,
.page_store_location-map .accordion ul > li.tab:hover > a {
    color: var(--white-color);
    background: var(--primary-color);
}

.page_store_location-map .accordion .tab-panels {
    flex-basis: 66.666667%;
    max-width: 66.666667%;
    border: none;
    padding: 0;
}

.page_store_location-map .accordion .tab-panels p {
    margin-bottom: 0;
}

.page_store_location-map .accordion .tab-panels iframe {
    border-radius: 8px;
}


.category-page-title .flex-col.medium-text-center {
    display: none;
}

.category-page-title .flex-col.flex-grow.medium-text-center {
    display: flex;
    flex-direction: column-reverse;
}

.category-page-title h1.shop-page-title {
    font-size: 17px;
    line-height: 1.2;
    text-transform: uppercase;
    padding: 24px 0;
    margin: 0;
}

.ss_banner-danh-muc {
    padding-bottom: 16px !important;
}

.ss_banner-danh-muc .banner-slider {
	max-width: 1160px;
}

.ss_banner-danh-muc .col {
    padding: 0 10px;
}

.category-page-row {
    margin-top: 0 !important;
    padding-top: 0;
}

.category-page-row>.col.large-3 {
    padding-right: 10px;
}

.category-page-row>.col.large-9 {
    padding-left: 10px;
}

.sort-cate {
    display: flex;
    align-items: center;
    padding: 8px 0;
    border-top: 1px solid #dee2e6;
    border-bottom: 1px solid #dee2e6;
    margin-bottom: 24px;
}

.sort-cate .quick-sort-block {
    display: flex;
    align-items: center;
    list-style-type: none;
    margin: 0;
    padding-left: 5px;
}

.sort-cate .quick-sort-block li {
    margin: 0 16px 0 0;
}

.sort-cate .quick-sort-block li > input {
    margin: 0 5px 0 0;
}

.sort-cate .quick-sort-block li > label {
    font-size: 16px;
    font-weight: normal;
    margin: 0;
}

ul.page-numbers.nav-pagination.links.text-center {
    margin: 20px 0;
    display: flex;
    justify-content: center;
}

.nav-pagination > li {
    margin: 0 !important;
}

.nav-pagination > li > .page-number {
    width: 38px;
    height: 38px;
    line-height: 38px;
    color: var(--primary-color);
    background: #fff;
    font-size: 16px;
    font-weight: normal;
    text-align: center;
    padding: 0;
    margin: 0 2px;
    border: 1px solid #dee2e6;
    border-radius: 8px;
}

.nav-pagination > li > .page-number.current {
    color: var(--white-color);
}

.wrap-ct-product {
    display: flex;
}

.wrap-ct-product .col.large-9-ct {
    flex-basis: 75%;
    max-width: 75%;
    padding-top: 16px;
}

.wrap-ct-product .col.large-3-ct {
    flex-basis: 25%;
    max-width: 25%;
    padding-top: 16px;
    padding-left: 10px;
}

.wrap-ct-product .col.large-9-ct h1.product-title {
    font-size: 22px;
    text-transform: uppercase;
    margin-bottom: 16px;
}

.wrap-ct-product .col.large-9-ct .product-main {
    padding: 0 0 32px;
}

.product-main .product-gallery {
    padding-right: 10px;
}

.product-main .product-info {
    border: none !important;
    padding: 0 10px !important;
    display: flex;
    flex-direction: column;
}

.product-info .sku-product {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 16px;
    order: 1;
}

.product-info .sku-product .item-sku {
    font-size: 16px;
    color: var(--primary-color);
}

.product-info .sku-product .item-sku:first-child::after {
    content: "|";
    padding: 0 8px;
    color: var(--text-color);
    font-weight: 700;
}

.product-info .sku-product .item-sku.hidden {
    display: none;
}

.product-info .sku-product .item-sku .item-title {
    color: var(--text-color);
}

.product-info .product-short-description {
    order: 2;
    padding-top: 16px;
    border-top: 1px solid #dee2e6;
}

.product-info .price-wrapper {
    order: 3;
    background: #fafafa;
    padding: 8px 16px;
    margin-bottom: 16px;
    border-radius: 8px;
}

.product-info .price-wrapper p.price {
    display: flex !important;
    align-items: flex-end;
    flex-direction: row-reverse;
    justify-content: flex-end;
}

.product-info .price-wrapper span.amount bdi,
.product-info .price-wrapper span.amount bdi span {
    font-size: 30.4px;
    color: var(--primary-color);
}

.product-info .price-wrapper del span.amount bdi,
.product-info .price-wrapper del span.amount bdi span {
    font-size: 16px;
    font-weight: 700;
    color: #929292;
    opacity: 1;
}

.product-info .price-wrapper del {
    font-size: 16px;
    margin-left: 10px;
}

.product-info .woocommerce-Price-currencySymbol {
    vertical-align: unset;
}

.product-info form {
    order: 4;
    padding-top: 0;
    margin-bottom: 16px;
}

.product-info table.variations {
    margin-bottom: 0;
}

.product-info table.variations tr {
    display: flex;
    align-items: center;
    margin-bottom: 8px ;

}

.product-info table.variations tr>th>label {
    min-width: 100px;
    font-size: 16px;
    margin: 0 !important;
}

.product-info table.variations tr .woo-selected-variation-item-name {
    display: none !important;
}

.product-info table.variations td,
.product-info table.variations th {
    padding: 0 !important;
}

.product-info table.variations ul.variable-items-wrapper li.variable-item {
    font-size: 15px !important;
    margin: 0 8px 0 0 !important;
    padding: 0 !important;
    height: 40px !important;
    border-radius: 8px !important;
    border: 1px solid #dee2e6;
    box-shadow: none !important;
}

.product-info table.variations ul.variable-items-wrapper li.variable-item.selected {
    border-color: var(--primary-color);
    position: relative;
}

.product-info table.variations ul.variable-items-wrapper li.variable-item .variable-item-span {
    padding: 0 4px;
}

.product-info form.cart,
.product-info .woocommerce-variation-add-to-cart {
    padding-top: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.product-info .quantity {
    float: left;
    width: 100%;
    display: flex;
    align-items: center;
    margin: 0px 0px 24px;
    flex-basis: 100%;
}

.product-info .quantity::before {
    content: "数量";
    min-width: 100px;
    font-size: 16px;
    font-weight: 700;
}

.product-info .quantity.buttons_added input.minus.button.is-form,
.product-info .quantity.buttons_added input.input-text.qty.text,
.product-info .quantity.buttons_added input.plus.button.is-form {
    max-width: unset;
    width: 38px;
    height: 38px;
    min-height: unset;
    line-height: 38px;
    border: thin solid #dee2e6;
    font-size: 22px;
    color: var(--primary-color);
    padding: 0;
    box-shadow: none;
    background: transparent;
}

.product-info .quantity.buttons_added input.minus.button.is-form {
    border-radius: 8px 0 0 8px;
}

.product-info .quantity.buttons_added input.input-text.qty.text {
    width: 60px;
    font-size: 16px;
    color: var(--text-color);
}

.product-info .quantity.buttons_added input.plus.button.is-form {
    border-radius: 0 8px 8px 0;
}

.product-info button.single_add_to_cart_button {
    padding: 8px 12px;
    border-radius: 8px;
    min-height: 47px;
    line-height: 1.5;
    font-size: 16px;
    box-shadow: none;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.product-info button#buy_now_button {
    background: var(--active-color);
    width: 41%;
}

.product-info button.single_add_to_cart_button i {
	font-size: 22px;
}

.product-info button#buy_now_button i {
    display: none;
}

.product-info .hotline-cart {
    order: 5;
    padding: 12px 20px;
    border-color: #ffeeba;
    background-color: #fff3cd;
    border-radius: 4px;
    font-size: 16px;
    font-weight: 700;
    color: #856404;
    display: flex;
    align-items: center;
}

.product-info .hotline-cart img {
    width: 40px;
    margin-right: 16px;
}

.product-info .hotline-cart a {
    font-size: 20px;
    color: var(--primary-color);
}

.product-info .shopee_link {
    order: 6;
    margin-top: 16px;
    text-align: center;
    position: relative;
}

.product-footer .promotional-code-wrap {
    border: 1px dashed #ff6307;
    border-radius: 8px;
    background: rgba(255,237,232,0.5);
    padding: 32px 16px !important;
	margin-bottom: 16px;
    position: relative;
}

.product-footer .promotional-code-wrap .code-gif {
    padding: 0 16px;
    width: auto;
    font-size: 18px;
    color: #ff6307;
    font-weight: 600;
    background: #fff6f3;
    border-radius: 20px;
    border: 1px solid;
    display: flex;
    align-items: center;
    position: absolute;
    top: -46px;
}

.product-footer .promotional-code-wrap .code-gif img {
    width: 23px;
    height: 23px;
}

.product-footer .promotional-code-wrap .code-container {
    padding-bottom: 0;
}

.product-footer .promotional-code-wrap .code-container #textToCopy {
    font-weight: 700;
}

.product-footer .promotional-code-wrap .code-container button.copyButton {
    background: #ff6409;
    border: 1px solid #ff6409;
    border-radius: 15px;
    padding: 4px 8px;
    font-size: 13px;
    text-transform: none;
    color: var(--white-color);
    min-height: unset;
    line-height: 1.5;
    margin: 4px 0 0;
}

.product-footer .promotional-code-wrap .code-container button.copyButton:hover {
    background: #fff;
    color: #ff6409;
}

.product-footer .woocommerce-tabs {
    border: 1px solid #dee2e6;
	border-radius: 8px;
    padding: 0 16px;
}

.product-footer .woocommerce-tabs ul.tabs {
    margin: 0 !important;
    padding: 16px 0;
    border-bottom: 1px solid #dee2e6;
}

.product-footer .woocommerce-tabs ul.tabs>li {
	display: none;
}

.product-footer .woocommerce-tabs ul.tabs>li.description_tab {
	display: block;
}

.product-footer .woocommerce-tabs ul.tabs>li>a {
    font-size: 22px;
    font-weight: 700;
    color: #363636;
	line-height: 1.2;
	padding: 0;
}

.product-footer .woocommerce-tabs ul.tabs>li>a::before {
	display: none;
}

.product-footer .woocommerce-tabs .tab-panels div#tab-description {
    overflow: hidden;
    position: relative;
    padding-bottom: 24px;
}

.product-footer .woocommerce-tabs div#tab-description.panel:not(.active) {
    height: 0 !important;
}

.product-footer .woocommerce-tabs .tab-panels div#tab-description .wrap-text {
    padding-bottom: 48px;
}

.product-footer .woocommerce-tabs .devvn_readmore_flatsome {
    text-align: center;
    cursor: pointer;
    position: absolute;
    z-index: 10;
    bottom: 0;
    width: 100%;
    background: #fff;
}

.product-footer .woocommerce-tabs .devvn_readmore_flatsome:before {
    height: 225px;
    margin-top: -225px;
    content: linear-gradient(#ffffff00, #fff);
    display: block;
}

.product-footer .woocommerce-tabs .devvn_readmore_flatsome.read_less:before {
    display: none;
}

.product-footer .woocommerce-tabs .devvn_readmore_flatsome a {
    padding: 8px 24px;
    background: var(--primary-color);
    border-radius: 4px;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--white-color);
    display: block;
    width: fit-content;
    margin: 0 auto 32px;
    position: relative;
}

.product-footer .woocommerce-tabs .devvn_readmore_flatsome a:hover {
    background: var(--primary-color-2);
    color: var(--white-color);
}

.product-footer .woocommerce-tabs .devvn_readmore_flatsome a>img {
    max-width: 16px;
    vertical-align: -1px;
    filter: brightness(0) invert(1);
    animation: r_more infinite 2s ease-in-out;
}

.product-footer .woocommerce-tabs .devvn_readmore_flatsome.read_less a>img {
    transform: rotate(180deg);
    animation: r_less infinite 2s ease-in-out;
}

@keyframes r_more {
    50% {
        transform: translateY(7px);
    }
}

@keyframes r_less {
    50% {
        transform: rotate(180deg) translateY(-7px);
    }
}

.product-footer .related-products-wrapper {
    /* Trước đây bị ẩn hoàn toàn. Khách yêu cầu có "sản phẩm liên quan" nên bật lại. */
    display: block;
    margin-top: 40px;
}

.wrap-ct-product .col.large-3-ct .widget .widget-title {
    font-size: 18px;
    color: var(--black-color);
    background: transparent;
    padding: 0;
    margin-bottom: 12px;
}

a#top-link {
    background: var(--primary-color);
    border: none;
    color: var(--white-color);
    bottom: 65px;
}

.fixed-contact {
    position: fixed;
    bottom: 0;
    top: inherit !important;
    z-index: 9;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    border-top-left-radius: 20px;
    background-color: var(--primary-color);
}

.fixed-contact:before {
    content: "";
    position: absolute;
    height: 15px;
    width: 20px;
    bottom: -1px;
    left: -20px;
    border-radius: 0 0 30px 0;
    box-shadow: 10px 0 0 0 var(--primary-color);
    pointer-events: none;
}

.fixed-contact .box {
    width: 44px;
    height: 44px;
    line-height: 44px;
    border-radius: 30px;
    background: var(--primary-color);
    border: 2px solid var(--white-color);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 4px;
}

.fixed-contact .box img.play0 {
    animation: play0 1.5s ease infinite;
}

/* Cart */
.off-canvas .mfp-content.off-canvas-cart {
    background: #fff;
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner {
    padding: 16px;
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner h4 {
    margin-bottom: 16px;
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner .is-divider {
    display: none;
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner ul.product_list_widget {
    margin-bottom: 0;
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner ul.product_list_widget li {
    padding: 0px 24px 8px 88px;
    margin-bottom: 8px;
    border-top: none;
    border-bottom: 1px dashed #dee2e6;
    min-height: 88px;
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner ul.product_list_widget li a.remove {
    top: unset;
    color: var(--black-color);
    border: none;
    font-size: 22px !important;
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner ul.product_list_widget li a {
    font-size: 16px;
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner ul.product_list_widget li img {
    height: 80px;
    width: 80px;
    top: 0;
    margin: 0;
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner ul.product_list_widget li .quantity {
    opacity: 1;
    font-size: 16px;
    margin: 4px 0 0;
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner span.amount bdi {
    color: var(--primary-color);
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner p.total {
    border: none;
    margin: 0;
    padding: 8px 0;
    display: flex;
    justify-content: space-between;
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner p.total strong {
    font-size: 16px;
    font-weight: normal;
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner a.button {
    border: 1px solid var(--primary-color);
    border-radius: 8px;
    padding: 6px 12px;
    min-height: unset;
    line-height: 1.5;
    box-shadow: none;
    position: relative;
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner a.button.checkout {
    background: #fff;
    color: var(--primary-color);
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner a.button:hover {
    background: var(--primary-color-2);
}

.off-canvas .mfp-content.off-canvas-cart .cart-popup-inner a.button.checkout:hover {
    background: var(--primary-color);
    color: var(--white-color);
}

/* Menu */
.off-canvas .mfp-content #main-menu {
    height: 100%;
    background: #fff;
}

.off-canvas .mfp-content #main-menu .sidebar-menu {
    padding: 10px 8px;
}

.off-canvas .mfp-content #main-menu .sidebar-menu ul>li .toggle {
    color: #383838;
    opacity: 1;
    height: 40.67px;
    min-height: unset;
    border-bottom: 1px solid #dee2e6;
    margin: 0;
}

.off-canvas .mfp-content #main-menu .sidebar-menu ul>li.active .toggle {
    border-top: 1px solid #dee2e6;
    border-bottom: none;
}

.off-canvas .mfp-content #main-menu .sidebar-menu ul>li .toggle i {
    font-size: 18px;
}

.off-canvas .mfp-content #main-menu .sidebar-menu ul>li.menu-item {
    border: none;
    padding: 0;
    margin: 0;
}

.off-canvas .mfp-content #main-menu .sidebar-menu ul>li.menu-item.active,
.off-canvas .mfp-content #main-menu .sidebar-menu ul>li.menu-item:hover {
    background: transparent;
}

.off-canvas .mfp-content #main-menu .sidebar-menu ul>li.menu-item.current-menu-item>a,
.off-canvas .mfp-content #main-menu .sidebar-menu ul>li.menu-item.active>a,
.off-canvas .mfp-content #main-menu .sidebar-menu ul li.menu-item a:hover {
    color: var(--primary-color);
    font-weight: 700;
}

.off-canvas .mfp-content #main-menu .sidebar-menu ul li.menu-item a {
    font-size: 16px;
    font-weight: normal;
    line-height: 1.5;
    text-transform: none;
    color: var(--text-color);
    padding: 8px 0;
    border-bottom: 1px solid #dee2e6;
}

.off-canvas .mfp-content #main-menu .sidebar-menu ul>li>ul.children {
    padding: 0;
}

.off-canvas .mfp-content #main-menu .sidebar-menu ul>li>ul.children>li>a {
    padding-left: 16px;
}

.off-canvas .mfp-content #main-menu .sidebar-menu ul>li.menu-item-1275>ul.children>li>a {
    font-weight: 700;
}

.off-canvas .mfp-content #main-menu .sidebar-menu ul>li>ul.children>li>ul>li>a {
    padding-left: 24px;
    margin-left: 8px;
    position: relative;
}

.off-canvas .mfp-content #main-menu .sidebar-menu ul>li>ul.children>li>ul>li>a::before {
    position: absolute;
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    top: 17px;
    left: 11px;
    background: var(--primary-color);
}

/*************** ADD TABLET ONLY CSS HERE  ***************/
@media (min-width: 768px) and (max-width: 1200px) {

    #header .container-width,
    #header .full-width .ubermenu-nav,
    #header .container,
    #header .row {
        max-width: 1170px !important;
    }

    .container-width, .full-width .ubermenu-nav, .container, .row {
        max-width: 720px !important;
    }

    #header .header-main {
        background: var(--primary-color);
        height: 58px !important;
    }

    #header .header-main .nav > li > a {
        color: var(--white-color);
    }

    #header .header-main .nav > li > a > i {
        font-size: 30px;
    }

    #header #logo {
        width: 140px;
    }

    #header .header-logo {
        display: none;
    }

    #header .header-logo-dark {
        display: block !important;
    }

    #header .header-main .flex-col.show-for-medium.flex-left {
        width: 100%;
    }

    #header .header-search-form input {
        background: #fff;
    }

    .flex-col.show-for-medium.flex-right {
        padding-left: 20px;
    }

    .header-main .cart-item .header-cart-icon img.cart-img-icon {
        background: #fff;
        width: 40px;
        border: none;
    }

    .section_cate .product-category .box-category .box-image {
        width: 44%;
    }

    .page-title .page-title-inner .title-content, .shop-page-title .flex-col {
		padding: 0;
		text-align: left !important;
	}

    .shop-page-title .category-filtering {
        color: transparent;
        background-color: var(--primary-color);
        position: fixed;
        right: 0;
        top: 45% !important;
        width: 40px;
        height: 40px;
        line-height: 40px;
        border-radius: 20px 0px 0px 20px;
        z-index: 99999;
        background-image: url(/wp-content/uploads/2023/07/fliter_logo.png);
        background-size: 20px;
        background-repeat: no-repeat;
        background-position: center;
    }

    .shop-page-title .category-filtering .icon-equalizer {
        opacity: 0;
    }

    .mfp-content #shop-sidebar {
        padding: 8px;
    }

    .blog-wrapper.blog-archive .post-item {
        flex-basis: 50%;
        max-width: 50%;
    }

    .blog-wrapper.blog-archive .large-3.post-sidebar,
    .blog-wrapper.blog-single .large-9 {
        padding-left: 15px;
    }

    .blog-wrapper.blog-single .large-3.post-sidebar {
        display: none;
    }

    .bai-viet-lien-quan h3 {
        border: none;
    }

    .page_store_ht-store .icon-box .icon-box-img {
        width: 55px !important;
    }

    .wrap-ct-product {
        flex-direction: column;
    }

    .wrap-ct-product .col.large-9-ct,
    .wrap-ct-product .col.large-3-ct {
        flex-basis: 100%;
        max-width: 100%;
    }

    .wrap-ct-product .col.large-3-ct {
        display: flex !important;
        padding-top: 0;
    }

    .product-main .product-gallery {
        flex-basis: 41.666667%;
        max-width: 41.666667%;
    }

    .product-main .product-info {
        flex-basis: 58.333333%;
        max-width: 58.333333%;
    }

    .product-info button.single_add_to_cart_button,
    .product-info button#buy_now_button {
        width: 100%;
    }

    .product-info button#buy_now_button {
        margin-top: 8px;
    }

    .product-footer .promotional-code-wrap,
    .product-footer .promotional-code-wrap .code-container {
        padding-bottom: 16px !important;
    }

    .wrap-ct-product .col.large-3-ct .widget:nth-child(1) {
        padding-right: 10px;
        margin-bottom: 0;
    }

    .wrap-ct-product .col.large-3-ct .widget:nth-child(2) {
        padding-left: 10px;
        margin-bottom: 0;
    }

    .absolute-footer .copyright-footer {
        text-align: left;
    }

}


/*************** ADD MOBILE ONLY CSS HERE  ***************/
@media only screen and (max-width: 48em) {

    .home #header .header-main {
        background: linear-gradient(var(--primary-color), #fff);
        height: 170px !important;
        position: relative;
        border-radius: 0 0 20px 20px;
    }

    #header .header-main>.header-inner {
        height: 58px;
    }

    #header .header-main,
    #header .stuck .header-main {
        background: var(--primary-color);
        height: 58px !important;
        border-radius: 0;
    }

    #header .header-main .nav > li > a {
        color: var(--white-color);
    }

    #header .header-main .nav > li > a > i {
        font-size: 30px;
    }

    #header #logo {
        width: 240px;
        margin-right: 15px;
    }

    #header .header-logo {
        display: none;
    }

    #header .header-logo-dark {
        display: block !important;
    }

    #header .header-main .flex-col.show-for-medium.flex-left {
        width: 100%;
    }

    #header .header-search-form input {
        background: #fff;
    }

    .flex-col.show-for-medium.flex-right {
        padding-left: 15px;
    }

    .header-main .cart-item .header-cart-icon img.cart-img-icon {
        background: #fff;
        width: 40px;
        border: none;
    }

    /* Banner mobile lồng vào vùng header xanh.
       TRƯỚC: position:absolute + top:-110px -> banner thoát khỏi luồng, không đẩy
       nội dung phía dưới. Vì banner giữ tỉ lệ ảnh (màn càng rộng càng cao) nên nó
       đè lên section_swiper từ 3px (320px) tới 130px (768px), che mất 4 ô đặc trưng.
       NAY: dùng margin âm -> banner VẪN nằm trong luồng, section dưới tự dịch theo,
       nên không bao giờ bị đè ở bất kỳ chiều rộng nào. */
    .section_slider {
        padding: 0 15px;
        position: relative;
        margin-top: -110px;
        z-index: 31;
    }

    .section_slider .img-inner {
        border-radius: 8px;
    }

    .section_swiper {
        /* 48px trước đây là để bù cho banner bị absolute đè lên. Banner nay đã nằm
           trong luồng nên chỉ cần khoảng cách bình thường. */
        padding: 16px 0 8px !important;
    }

    .section_swiper .section-bg {
        background-image: none !important;
    }

    .section_swiper .col {
        padding-bottom: 8px;
    }

    .section_swiper .icon-box {
        padding: 8px;
        border: 1px dashed var(--primary-color);
        border-radius: 8px;
    }

    .section_swiper .icon-box .icon-box-text {
        font-size: 16px;
    }

    .section_cate {
        padding-bottom: 16px !important;
    }

    .section_cate .product-category .box-category .box-image {
        width: 39% !important;
    }

    .blog-wrapper.blog-archive .large-3.post-sidebar,
    .blog-wrapper.blog-single .large-9 {
        padding-left: 15px;
        padding-bottom: 0;
    }

    .blog-wrapper.blog-single .large-3.post-sidebar {
        display: none;
    }

    .bai-viet-lien-quan h3 {
        border: none;
    }

    .page_store_ht-store .col {
        padding: 0 8px 16px;
    }

    .tabbed-content {
        flex-direction: column;
    }

    .page_store_location-map .accordion ul,
    .page_store_location-map .accordion .tab-panels {
        flex-basis: 100%;
        max-width: 100%;
        padding-right: 0;
    }

    .page-title .page-title-inner .title-content, .shop-page-title .flex-col {
		padding: 0;
		text-align: left !important;
	}

    .shop-page-title .category-filtering {
        color: transparent;
        background-color: var(--primary-color);
        position: fixed;
        right: 0;
        top: 45% !important;
        width: 40px;
        height: 40px;
        line-height: 40px;
        border-radius: 20px 0px 0px 20px;
        z-index: 99999;
        background-image: url(/wp-content/uploads/2023/07/fliter_logo.png);
        background-size: 20px;
        background-repeat: no-repeat;
        background-position: center;
    }

    .shop-page-title .category-filtering .icon-equalizer {
        opacity: 0;
    }

    .mfp-content #shop-sidebar {
        padding: 8px;
    }

    .sort-cate {
        overflow: auto;
        white-space: nowrap;
        will-change: transform;
    }

    .wrap-ct-product {
        flex-direction: column;
    }

    .wrap-ct-product .col.large-9-ct,
    .wrap-ct-product .col.large-3-ct {
        flex-basis: 100%;
        max-width: 100%;
        display: block !important;
    }

    .wrap-ct-product .col.large-3-ct {
        padding-top: 0;
        padding-left: 15px;
    }

    .product-main .product-gallery {
        padding: 30px 15px 0 !important;
    }

    .product-main .product-info {
        padding-top: 30px;
    }

    .product-info button.single_add_to_cart_button,
    .product-info button#buy_now_button {
        width: 100%;
    }

    .product-info button#buy_now_button {
        margin-top: 8px;
    }

    .product-footer .promotional-code-wrap,
    .product-footer .promotional-code-wrap .code-container {
        padding-bottom: 16px !important;
    }

    .wrap-ct-product .col.large-3-ct .widget:nth-child(2) {
        margin-bottom: 0;
    }

    .absolute-footer .copyright-footer {
        text-align: left;
    }

}

/* ==========================================================================
   Trang chủ — 配送について & LTB FOODSについて
   Màu chủ đạo #2e9f3c. Markup nằm trong [ux_html] của page ID 188.
   ========================================================================== */
.section_shipping,
.section_about { --brand: #2e9f3c; --brand-d: #1d7a29; --brand-l: #57c765; }

/* ---------- 配送について ---------- */
.section_shipping .ship-wrap {
	position: relative;
	overflow: hidden;
	padding: 72px 20px 78px;
	background:
		radial-gradient(900px 380px at 12% 0%, rgba(46, 159, 60, .09), transparent 62%),
		radial-gradient(760px 340px at 92% 108%, rgba(87, 199, 101, .12), transparent 60%),
		linear-gradient(180deg, #f7fcf8 0%, #ffffff 70%);
}
.section_shipping .ship-glow {
	position: absolute;
	border-radius: 50%;
	filter: blur(70px);
	opacity: .5;
	pointer-events: none;
}
.section_shipping .ship-glow--a {
	width: 320px; height: 320px; top: -130px; left: -90px;
	background: radial-gradient(circle, rgba(46, 159, 60, .34), transparent 70%);
}
.section_shipping .ship-glow--b {
	width: 380px; height: 380px; right: -140px; bottom: -170px;
	background: radial-gradient(circle, rgba(140, 220, 150, .34), transparent 70%);
}

.section_shipping .ship-head {
	position: relative;
	max-width: 620px;
	margin: 0 auto 44px;
	text-align: center;
}
.section_shipping .ship-eyebrow {
	display: inline-block;
	margin-bottom: 12px;
	padding: 5px 15px;
	border: 1px solid rgba(46, 159, 60, .28);
	border-radius: 999px;
	background: rgba(46, 159, 60, .07);
	color: var(--brand-d);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .22em;
}
.section_shipping .ship-title {
	position: relative;
	margin: 0 0 14px;
	color: #16261a;
	font-size: 32px;
	font-weight: 700;
	line-height: 1.35;
}
.section_shipping .ship-title::after {
	content: "";
	display: block;
	width: 54px;
	height: 4px;
	margin: 14px auto 0;
	border-radius: 4px;
	background: linear-gradient(90deg, var(--brand), var(--brand-l));
}
.section_shipping .ship-sub {
	margin: 0;
	color: #6d7c72;
	font-size: 15px;
	line-height: 1.85;
}

.section_shipping .ship-grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 22px;
	max-width: 1180px;
	margin: 0 auto;
}
.section_shipping .ship-card {
	position: relative;
	overflow: hidden;
	padding: 34px 24px 30px;
	border: 1px solid rgba(46, 159, 60, .14);
	border-radius: 20px;
	background: rgba(255, 255, 255, .82);
	backdrop-filter: blur(6px);
	box-shadow: 0 4px 18px rgba(24, 70, 32, .05);
	transition: transform .4s cubic-bezier(.2, .8, .3, 1), box-shadow .4s ease, border-color .4s ease;
}
/* Viền sáng chạy dọc mép trên khi hover */
.section_shipping .ship-card::before {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 3px;
	background: linear-gradient(90deg, var(--brand), var(--brand-l), var(--brand));
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .45s cubic-bezier(.2, .8, .3, 1);
}
.section_shipping .ship-card:hover {
	transform: translateY(-8px);
	border-color: rgba(46, 159, 60, .3);
	box-shadow: 0 20px 40px rgba(29, 122, 41, .16);
}
.section_shipping .ship-card:hover::before { transform: scaleX(1); }

.section_shipping .ship-num {
	position: absolute;
	top: 16px;
	right: 20px;
	color: rgba(46, 159, 60, .13);
	font-size: 40px;
	font-weight: 800;
	font-style: italic;
	line-height: 1;
	letter-spacing: -.03em;
	transition: color .4s ease;
}
.section_shipping .ship-card:hover .ship-num { color: rgba(46, 159, 60, .24); }

.section_shipping .ship-ico {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 62px;
	height: 62px;
	margin-bottom: 20px;
	border-radius: 18px;
	background: linear-gradient(140deg, var(--brand), var(--brand-l));
	color: #fff;
	box-shadow: 0 10px 22px rgba(46, 159, 60, .32);
	transition: transform .45s cubic-bezier(.2, .8, .3, 1), box-shadow .45s ease;
}
.section_shipping .ship-ico svg { width: 29px; height: 29px; }
.section_shipping .ship-card:hover .ship-ico {
	transform: translateY(-3px) rotate(-6deg) scale(1.05);
	box-shadow: 0 16px 30px rgba(46, 159, 60, .42);
}
.section_shipping .ship-card h5 {
	margin: 0 0 10px;
	color: #16261a;
	font-size: 17px;
	font-weight: 700;
	letter-spacing: .01em;
}
.section_shipping .ship-card p {
	margin: 0;
	color: #6d7c72;
	font-size: 13.5px;
	line-height: 1.85;
}

.section_shipping .ship-note {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	max-width: 1180px;
	margin: 30px auto 0;
	padding: 16px 22px;
	border: 1px dashed rgba(46, 159, 60, .32);
	border-radius: 14px;
	background: rgba(46, 159, 60, .05);
}
.section_shipping .ship-note__ico { display: inline-flex; color: var(--brand); }
.section_shipping .ship-note__ico svg { width: 19px; height: 19px; }
.section_shipping .ship-note p {
	margin: 0;
	color: #46584c;
	font-size: 14px;
}
.section_shipping .ship-note a {
	color: var(--brand-d);
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* ---------- LTB FOODSについて ---------- */
.section_about .about-wrap {
	position: relative;
	overflow: hidden;
	padding: 88px 20px 92px;
	background:
		radial-gradient(560px 300px at 50% 26%, rgba(255, 255, 255, .16), transparent 68%),
		radial-gradient(680px 420px at 15% 12%, rgba(120, 226, 136, .3), transparent 60%),
		radial-gradient(620px 400px at 88% 88%, rgba(16, 92, 30, .55), transparent 62%),
		linear-gradient(135deg, #2e9f3c 0%, #24893a 45%, #17702c 100%);
	color: #fff;
}
/* Lưới chấm mờ tạo chiều sâu */
.section_about .about-wrap::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: radial-gradient(rgba(255, 255, 255, .2) 1px, transparent 1px);
	background-size: 26px 26px;
	opacity: .6;
	pointer-events: none;
}
.section_about .about-orb {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	animation: ltbFloat 13s ease-in-out infinite;
}
.section_about .about-orb--1 {
	width: 300px; height: 300px; top: -110px; left: -80px;
	background: radial-gradient(circle, rgba(255, 255, 255, .2), transparent 68%);
	filter: blur(12px);
}
.section_about .about-orb--2 {
	width: 220px; height: 220px; right: 8%; top: 16%;
	border: 1px solid rgba(255, 255, 255, .22);
	animation-delay: -4s;
}
.section_about .about-orb--3 {
	width: 400px; height: 400px; right: -150px; bottom: -190px;
	background: radial-gradient(circle, rgba(255, 255, 255, .14), transparent 70%);
	filter: blur(16px);
	animation-delay: -8s;
}
@keyframes ltbFloat {
	0%, 100% { transform: translate3d(0, 0, 0); }
	50%      { transform: translate3d(0, -22px, 0); }
}
@media (prefers-reduced-motion: reduce) {
	.section_about .about-orb { animation: none; }
}

/* Căn giữa thật sự — thay cho offset="1" vốn không tồn tại trong [col] Flatsome */
.section_about .about-inner {
	position: relative;
	z-index: 1;
	max-width: 880px;
	margin: 0 auto;
	text-align: center;
}
.section_about .about-eyebrow {
	display: inline-block;
	margin-bottom: 20px;
	padding: 7px 20px;
	border: 1px solid rgba(255, 255, 255, .34);
	border-radius: 999px;
	background: rgba(255, 255, 255, .14);
	backdrop-filter: blur(8px);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .2em;
	color: #fff;
}
.section_about .about-title {
	margin: 0 0 22px;
	color: #fff;
	font-size: 40px;
	font-weight: 700;
	line-height: 1.42;
	letter-spacing: .01em;
	text-shadow: 0 6px 26px rgba(0, 0, 0, .18);
}
.section_about .about-title em {
	position: relative;
	font-style: normal;
	white-space: nowrap;
}
.section_about .about-title em::after {
	content: "";
	position: absolute;
	left: -4px; right: -4px; bottom: -2px;
	height: 9px;
	border-radius: 3px;
	background: linear-gradient(90deg, #ffdc6b, #ffc93c);
	box-shadow: 0 0 18px rgba(255, 201, 60, .45);
	transform: rotate(-.7deg);
	opacity: .95;
	z-index: -1;
}
.section_about .about-lead {
	max-width: 720px;
	margin: 0 auto 40px;
	color: rgba(255, 255, 255, .93);
	font-size: 15.5px;
	line-height: 2;
}

.section_about .about-stats {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 14px;
	margin-bottom: 42px;
}
.section_about .about-stat {
	flex: 1 1 190px;
	max-width: 250px;
	padding: 24px 18px;
	border: 1px solid rgba(255, 255, 255, .26);
	border-top-color: rgba(255, 255, 255, .5);
	border-radius: 18px;
	background: linear-gradient(180deg, rgba(255, 255, 255, .19), rgba(255, 255, 255, .08));
	backdrop-filter: blur(10px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
	transition: transform .4s cubic-bezier(.2, .8, .3, 1), background .4s ease;
}
.section_about .about-stat:hover {
	transform: translateY(-6px);
	background: rgba(255, 255, 255, .18);
}
.section_about .about-stat__n {
	display: block;
	margin-bottom: 6px;
	color: #fff;
	font-size: 34px;
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -.01em;
}
.section_about .about-stat__n small {
	margin-left: 5px;
	font-size: 13px;
	font-weight: 600;
	opacity: .88;
}
.section_about .about-stat__l {
	display: block;
	color: rgba(255, 255, 255, .82);
	font-size: 13px;
	letter-spacing: .02em;
}

.section_about .about-cta {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 15px 38px;
	border-radius: 999px;
	background: #fff;
	color: var(--brand-d);
	font-size: 15px;
	font-weight: 700;
	box-shadow: 0 12px 30px rgba(0, 0, 0, .2);
	transition: transform .35s cubic-bezier(.2, .8, .3, 1), box-shadow .35s ease;
}
.section_about .about-cta svg {
	width: 18px;
	height: 18px;
	transition: transform .35s ease;
}
.section_about .about-cta:hover {
	transform: translateY(-3px);
	box-shadow: 0 18px 38px rgba(0, 0, 0, .28);
	color: var(--brand-d);
}
.section_about .about-cta:hover svg { transform: translateX(5px); }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
	.section_shipping .ship-grid { grid-template-columns: repeat(2, 1fr); }
	.section_about .about-title { font-size: 33px; }
}
@media (max-width: 549px) {
	.section_shipping .ship-wrap { padding: 52px 16px 56px; }
	.section_shipping .ship-grid { grid-template-columns: 1fr; gap: 16px; }
	.section_shipping .ship-title { font-size: 25px; }
	.section_shipping .ship-note { flex-direction: column; text-align: center; gap: 8px; }
	.section_about .about-wrap { padding: 62px 16px 66px; }
	.section_about .about-title { font-size: 26px; line-height: 1.5; }
	.section_about .about-br { display: none; }
	.section_about .about-lead { font-size: 14.5px; line-height: 1.95; }
	.section_about .about-stat { flex: 1 1 100%; max-width: none; padding: 18px 16px; }
	.section_about .about-stat__n { font-size: 28px; }
}
.section_about .about-cta-wrap { line-height: 1; }

/* Danh mục chưa gắn thumbnail: ẩn ảnh placeholder xám, thay bằng panel mờ */
.section_cate .product-category img[src*="woocommerce-placeholder"] { opacity: 0; }
.section_cate .product-category img[src*="woocommerce-placeholder"] + *,
.section_cate .product-category .box-image:has(img[src*="woocommerce-placeholder"]) {
	background: rgba(255, 255, 255, .16);
	border-radius: 10px;
}

/* Carousel danh mục 4 cột: căn giữa dọc chữ/ảnh, cân lại tỉ lệ */
.section_cate .product-category .box-category {
	align-items: center;
	min-height: 148px;
}
.section_cate .product-category .box-category .box-text {
	display: flex;
	align-items: center;
	width: 52%;
}
.section_cate .product-category .box-category .box-image { width: 48%; }
@media (max-width: 849px) {
	.section_cate .product-category .box-category { min-height: 128px; }
}

/* ==========================================================================
   Chi tiết trang trí + hero cho các page danh sách sản phẩm
   ========================================================================== */

/* --- Accent cho tiêu đề section: thanh gradient + đường kẻ mờ kéo dài --- */
h3.section-title-main-link {
	display: flex;
	align-items: center;
	gap: 12px;
}
h3.section-title-main-link::before {
	content: "";
	flex: 0 0 auto;
	width: 6px;
	height: 24px;
	border-radius: 3px;
	background: linear-gradient(180deg, #57c765, #2e9f3c);
	box-shadow: 0 2px 8px rgba(46, 159, 60, .35);
}
h3.section-title-main-link::after {
	content: "";
	flex: 1 1 auto;
	height: 1px;
	background: linear-gradient(90deg, rgba(46, 159, 60, .3), rgba(46, 159, 60, 0));
}

/* --- Nền xen kẽ cho section sản phẩm, tránh 4 khối trắng giống hệt nhau --- */
.section_product.is-tinted {
	position: relative;
	padding-bottom: 22px !important;
	background: linear-gradient(180deg, #f7fbf8 0%, #ffffff 90%);
}
.section_product.is-tinted::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: radial-gradient(rgba(46, 159, 60, .08) 1px, transparent 1px);
	background-size: 22px 22px;
	pointer-events: none;
}
.section_product.is-tinted .section-content { position: relative; z-index: 1; }

/* --- Banner khuyến mãi --- */
.section_banner .promo-banner {
	max-width: 1160px;
	margin: 30px auto 8px;
	padding: 0 15px;
}
.section_banner .promo-banner a {
	display: block;
	overflow: hidden;
	border-radius: 14px;
	box-shadow: 0 10px 28px rgba(24, 70, 32, .14);
	transition: transform .4s cubic-bezier(.2, .8, .3, 1), box-shadow .4s ease;
}
.section_banner .promo-banner a:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 38px rgba(24, 70, 32, .2);
}
.section_banner .promo-banner img { display: block; width: 100%; height: auto; }

/* --- Hero dùng chung cho 4 page: 新着 / おすすめ / 人気 / セール --- */
.pg-hero .pgh {
	position: relative;
	overflow: hidden;
	padding: 52px 20px 56px;
	color: #fff;
	background:
		radial-gradient(520px 280px at 50% 0%, rgba(255, 255, 255, .16), transparent 70%),
		linear-gradient(135deg, #2e9f3c 0%, #24893a 48%, #17702c 100%);
}
.pg-hero .pgh::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: radial-gradient(rgba(255, 255, 255, .2) 1px, transparent 1px);
	background-size: 24px 24px;
	opacity: .55;
	pointer-events: none;
}
.pg-hero .pgh__orb {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
}
.pg-hero .pgh__orb--a {
	width: 240px; height: 240px; top: -110px; left: -60px;
	background: radial-gradient(circle, rgba(255, 255, 255, .2), transparent 68%);
	filter: blur(10px);
}
.pg-hero .pgh__orb--b {
	width: 200px; height: 200px; right: 6%; bottom: -110px;
	border: 1px solid rgba(255, 255, 255, .24);
}
.pg-hero .pgh__inner {
	position: relative;
	z-index: 1;
	max-width: 1160px;
	margin: 0 auto;
	text-align: center;
}
.pg-hero .pgh__crumb {
	margin-bottom: 16px;
	font-size: 12.5px;
	color: rgba(255, 255, 255, .78);
}
.pg-hero .pgh__crumb a { color: rgba(255, 255, 255, .78); }
.pg-hero .pgh__crumb a:hover { color: #fff; }
.pg-hero .pgh__crumb span { margin: 0 8px; opacity: .55; }
.pg-hero .pgh__crumb em { font-style: normal; color: #fff; }
.pg-hero .pgh__eyebrow {
	display: inline-block;
	margin-bottom: 12px;
	padding: 5px 16px;
	border: 1px solid rgba(255, 255, 255, .32);
	border-radius: 999px;
	background: rgba(255, 255, 255, .14);
	backdrop-filter: blur(8px);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .2em;
}
.pg-hero .pgh__title {
	margin: 0 0 12px;
	color: #fff;
	font-size: 34px;
	font-weight: 700;
	line-height: 1.35;
	text-shadow: 0 5px 22px rgba(0, 0, 0, .18);
}
.pg-hero .pgh__sub {
	max-width: 640px;
	margin: 0 auto;
	color: rgba(255, 255, 255, .9);
	font-size: 15px;
	line-height: 1.85;
}
.pg-body { padding: 40px 0 56px !important; }

@media (max-width: 549px) {
	h3.section-title-main-link::before { height: 20px; }
	.section_banner .promo-banner { margin: 20px auto 4px; }
	.section_banner .promo-banner a { border-radius: 10px; }
	.pg-hero .pgh { padding: 38px 16px 42px; }
	.pg-hero .pgh__title { font-size: 25px; }
	.pg-hero .pgh__sub { font-size: 14px; }
	.pg-body { padding: 28px 0 40px !important; }
}

/* Dropdown "カテゴリーから探す": 15 mục -> lưới 2 cột cho đỡ dài.
   Dùng grid + !important vì column-count bị style inline của Flatsome đè. */
.nav .menu-cat-mega > .nav-dropdown {
	width: 470px !important;
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	gap: 0 6px;
	padding: 12px 10px !important;
}
.nav .menu-cat-mega > .nav-dropdown > li { width: auto !important; }
.nav .menu-cat-mega > .nav-dropdown > li > a {
	padding: 7px 10px !important;
	font-size: 13.5px;
	border: 0 !important;
}

/* Menu 11 mục: thu gọn để vừa 1 hàng.
   !important là bắt buộc: Flatsome in <style> inline sau file này nên đè mất. */
@media (min-width: 850px) {
	.header-bottom-nav.nav > li > a.nav-top-link {
		font-size: 14px !important;
		letter-spacing: 0 !important;
	}
	.header-bottom-nav.nav > li { margin: 0 !important; }
	.header-bottom-nav.nav > li > a { padding-left: 8px !important; padding-right: 8px !important; }
}

/* ==========================================================================
   Landing page 業務用・卸売 (/oroshi/) + form đăng ký khách sỉ
   ========================================================================== */
.oroshi-hero, .oroshi-target, .oroshi-merit, .oroshi-flow, .oroshi-formsec {
	--brand: #2e9f3c; --brand-d: #17702c; --brand-l: #57c765; --ink: #16261a; --mute: #6d7c72;
}

/* --- Tiêu đề dùng chung --- */
.sec-eyebrow {
	display: inline-block; margin-bottom: 12px; padding: 5px 16px;
	border: 1px solid rgba(46,159,60,.28); border-radius: 999px;
	background: rgba(46,159,60,.07); color: var(--brand-d);
	font-size: 11px; font-weight: 700; letter-spacing: .2em;
}
.sec-eyebrow--light {
	border-color: rgba(255,255,255,.34); background: rgba(255,255,255,.14); color: #fff;
}
.sec-title {
	/* position+z-index tạo stacking context, nếu không thì vệt vàng ::after
	   ở z-index:-1 sẽ chìm xuống dưới nền của section và biến mất */
	position: relative; z-index: 0;
	margin: 0 0 10px; color: var(--ink); font-size: 30px; font-weight: 700; line-height: 1.4;
}
.sec-title--light { color: #fff; }
.sec-title em {
	position: relative; font-style: normal; white-space: nowrap;
}
.sec-title em::after {
	content: ""; position: absolute; left: -3px; right: -3px; bottom: -1px; height: 8px;
	border-radius: 2px; background: linear-gradient(90deg, #ffdc6b, #ffc93c); z-index: -1;
}
.ot-head { max-width: 700px; margin: 0 auto 42px; text-align: center; }

/* --- HERO --- */
.oroshi-hero .oh {
	position: relative; overflow: hidden; padding: 78px 20px 84px; color: #fff;
	background:
		radial-gradient(560px 300px at 50% 8%, rgba(255,255,255,.16), transparent 68%),
		radial-gradient(620px 400px at 90% 92%, rgba(16,92,30,.5), transparent 62%),
		linear-gradient(135deg, #2e9f3c 0%, #24893a 46%, #14682a 100%);
}
.oroshi-hero .oh::before {
	content: ""; position: absolute; inset: 0; pointer-events: none;
	background-image: radial-gradient(rgba(255,255,255,.2) 1px, transparent 1px);
	background-size: 26px 26px; opacity: .55;
}
.oroshi-hero .oh__orb { position: absolute; border-radius: 50%; pointer-events: none; }
.oroshi-hero .oh__orb--a {
	width: 300px; height: 300px; top: -120px; left: -70px; filter: blur(12px);
	background: radial-gradient(circle, rgba(255,255,255,.2), transparent 68%);
}
.oroshi-hero .oh__orb--b {
	width: 230px; height: 230px; right: 7%; top: 12%; border: 1px solid rgba(255,255,255,.22);
}
.oroshi-hero .oh__orb--c {
	width: 400px; height: 400px; right: -160px; bottom: -200px; filter: blur(16px);
	background: radial-gradient(circle, rgba(255,255,255,.13), transparent 70%);
}
.oroshi-hero .oh__inner { position: relative; z-index: 1; max-width: 900px; margin: 0 auto; text-align: center; }
.oroshi-hero .oh__eyebrow {
	display: inline-block; margin-bottom: 16px; padding: 6px 18px;
	border: 1px solid rgba(255,255,255,.34); border-radius: 999px;
	background: rgba(255,255,255,.14); backdrop-filter: blur(8px);
	font-size: 11.5px; font-weight: 700; letter-spacing: .2em;
}
.oroshi-hero .oh__title {
	margin: 0 0 18px; color: #fff; font-size: 42px; font-weight: 700; line-height: 1.36;
	text-shadow: 0 6px 26px rgba(0,0,0,.2);
}
.oroshi-hero .oh__title em {
	position: relative; font-style: normal; white-space: nowrap;
}
.oroshi-hero .oh__title em::after {
	content: ""; position: absolute; left: -4px; right: -4px; bottom: -2px; height: 10px;
	border-radius: 2px; background: linear-gradient(90deg, #ffdc6b, #ffc93c); z-index: -1;
}
.oroshi-hero .oh__lead {
	max-width: 720px; margin: 0 auto 34px; font-size: 15.5px; line-height: 2;
	color: rgba(255,255,255,.93);
}
.oroshi-hero .oh__stats {
	display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-bottom: 36px;
}
.oroshi-hero .oh__stat {
	flex: 1 1 170px; max-width: 220px; padding: 18px 14px;
	border: 1px solid rgba(255,255,255,.26); border-top-color: rgba(255,255,255,.5);
	border-radius: 16px; backdrop-filter: blur(10px);
	background: linear-gradient(180deg, rgba(255,255,255,.19), rgba(255,255,255,.08));
}
.oroshi-hero .oh__stat b { display: block; font-size: 30px; font-weight: 800; line-height: 1.1; }
.oroshi-hero .oh__stat span { display: block; margin-top: 4px; font-size: 12.5px; color: rgba(255,255,255,.84); }
.oroshi-hero .oh__cta {
	display: inline-flex; align-items: center; gap: 9px; padding: 15px 38px;
	border-radius: 999px; background: #fff; color: var(--brand-d);
	font-size: 15px; font-weight: 700; box-shadow: 0 12px 30px rgba(0,0,0,.2);
	transition: transform .35s cubic-bezier(.2,.8,.3,1), box-shadow .35s ease;
}
.oroshi-hero .oh__cta svg { width: 18px; height: 18px; transition: transform .35s ease; }
.oroshi-hero .oh__cta:hover { transform: translateY(-3px); color: var(--brand-d); box-shadow: 0 18px 38px rgba(0,0,0,.28); }
.oroshi-hero .oh__cta:hover svg { transform: translateY(4px); }

/* --- こんな事業者さま --- */
.oroshi-target .ot-wrap {
	padding: 72px 20px 76px;
	background: linear-gradient(180deg, #f7fbf8 0%, #fff 80%);
}
.oroshi-target .ot-grid {
	display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px;
	max-width: 1180px; margin: 0 auto;
}
.oroshi-target .ot-card {
	padding: 32px 24px; border: 1px solid rgba(46,159,60,.14); border-radius: 20px;
	background: #fff; box-shadow: 0 4px 18px rgba(24,70,32,.05); text-align: center;
	transition: transform .4s cubic-bezier(.2,.8,.3,1), box-shadow .4s ease, border-color .4s ease;
}
.oroshi-target .ot-card:hover {
	transform: translateY(-8px); border-color: rgba(46,159,60,.3);
	box-shadow: 0 20px 40px rgba(29,122,41,.16);
}
.oroshi-target .ot-ico {
	display: inline-flex; align-items: center; justify-content: center;
	width: 62px; height: 62px; margin-bottom: 18px; border-radius: 18px; color: #fff;
	background: linear-gradient(140deg, var(--brand), var(--brand-l));
	box-shadow: 0 10px 22px rgba(46,159,60,.32);
	transition: transform .45s cubic-bezier(.2,.8,.3,1);
}
.oroshi-target .ot-card:hover .ot-ico { transform: translateY(-3px) rotate(-6deg) scale(1.05); }
.oroshi-target .ot-ico svg { width: 29px; height: 29px; }
.oroshi-target .ot-card h3 { margin: 0 0 10px; font-size: 16.5px; font-weight: 700; color: var(--ink); }
.oroshi-target .ot-card p { margin: 0; font-size: 13.5px; line-height: 1.85; color: var(--mute); }

/* --- 選ばれる理由 (nền xanh) --- */
.oroshi-merit .om-wrap {
	position: relative; overflow: hidden; padding: 76px 20px 80px; color: #fff;
	background:
		radial-gradient(600px 340px at 18% 10%, rgba(120,226,136,.26), transparent 62%),
		linear-gradient(135deg, #24893a 0%, #17702c 100%);
}
.oroshi-merit .om-wrap::before {
	content: ""; position: absolute; inset: 0; pointer-events: none;
	background-image: radial-gradient(rgba(255,255,255,.16) 1px, transparent 1px);
	background-size: 26px 26px; opacity: .5;
}
.oroshi-merit .om-grid {
	position: relative; z-index: 1;
	display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px;
	max-width: 1000px; margin: 0 auto;
}
.oroshi-merit .om-item {
	position: relative; padding: 28px 26px 28px 30px; border-radius: 18px;
	border: 1px solid rgba(255,255,255,.2); border-top-color: rgba(255,255,255,.42);
	background: linear-gradient(180deg, rgba(255,255,255,.15), rgba(255,255,255,.06));
	backdrop-filter: blur(10px);
	transition: transform .4s cubic-bezier(.2,.8,.3,1), background .4s ease;
}
.oroshi-merit .om-item:hover { transform: translateY(-6px); background: rgba(255,255,255,.2); }
.oroshi-merit .om-num {
	display: block; margin-bottom: 10px; font-size: 30px; font-weight: 800; font-style: italic;
	line-height: 1; color: rgba(255,255,255,.42); letter-spacing: -.02em;
}
.oroshi-merit .om-item h3 { margin: 0 0 8px; color: #fff; font-size: 17px; font-weight: 700; }
.oroshi-merit .om-item p { margin: 0; font-size: 13.5px; line-height: 1.85; color: rgba(255,255,255,.86); }

/* --- ご利用の流れ --- */
.oroshi-flow .of-wrap { padding: 74px 20px 78px; background: #fff; }
.oroshi-flow .of-steps {
	position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px;
	max-width: 1080px; margin: 0 auto;
}
/* Đường nối giữa các bước */
.oroshi-flow .of-steps::before {
	content: ""; position: absolute; top: 27px; left: 12%; right: 12%; height: 2px;
	background: repeating-linear-gradient(90deg, rgba(46,159,60,.35) 0 8px, transparent 8px 16px);
}
.oroshi-flow .of-step { position: relative; text-align: center; }
.oroshi-flow .of-step__n {
	position: relative; z-index: 1;
	display: flex; align-items: center; justify-content: center;
	width: 56px; height: 56px; margin: 0 auto 18px; border-radius: 50%;
	background: linear-gradient(140deg, var(--brand), var(--brand-l)); color: #fff;
	font-size: 21px; font-weight: 800; box-shadow: 0 8px 20px rgba(46,159,60,.32);
	border: 4px solid #fff;
}
.oroshi-flow .of-step h3 { margin: 0 0 8px; font-size: 15.5px; font-weight: 700; color: var(--ink); }
.oroshi-flow .of-step p { margin: 0; font-size: 13px; line-height: 1.8; color: var(--mute); }

/* --- Khu vực form --- */
.oroshi-formsec .ofs-wrap {
	padding: 70px 20px 84px;
	background:
		radial-gradient(700px 340px at 50% 0%, rgba(46,159,60,.1), transparent 66%),
		linear-gradient(180deg, #f4faf5 0%, #fff 70%);
}
.oroshi-formsec .ofs-card {
	max-width: 880px; margin: 0 auto; padding: 46px 46px 40px;
	background: #fff; border: 1px solid rgba(46,159,60,.14); border-radius: 24px;
	box-shadow: 0 20px 50px rgba(24,70,32,.1);
}
.oroshi-formsec .ofs-head { text-align: center; margin-bottom: 34px; }
.oroshi-formsec .ofs-sub { margin: 6px 0 0; font-size: 14px; line-height: 1.85; color: var(--mute); }

/* --- Form CF7 --- */
.ofm .ofm__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 20px; }
.ofm .ofm__f { margin: 0 0 16px; }
.ofm .ofm__f--full { grid-column: 1 / -1; }
.ofm .ofm__l {
	display: flex; align-items: center; gap: 8px; margin-bottom: 7px;
	font-size: 13.5px; font-weight: 700; color: #16261a;
}
.ofm .ofm__req {
	padding: 2px 8px; border-radius: 4px; background: #e8f5ea; color: #1d7a29;
	font-size: 10.5px; font-weight: 700; letter-spacing: .04em;
}
.ofm .ofm__hint { font-size: 11.5px; font-weight: 500; color: #8a968f; }
.ofm .ofm__block { margin-bottom: 18px; }
.ofm input[type="text"], .ofm input[type="tel"], .ofm input[type="email"], .ofm textarea {
	width: 100%; padding: 12px 14px; border: 1px solid #dbe5de; border-radius: 10px;
	background: #fbfdfb; font-size: 14px; color: #16261a; box-shadow: none;
	transition: border-color .25s ease, box-shadow .25s ease, background .25s ease;
}
.ofm input::placeholder, .ofm textarea::placeholder { color: #a9b5ae; }
.ofm input[type="text"]:focus, .ofm input[type="tel"]:focus,
.ofm input[type="email"]:focus, .ofm textarea:focus {
	outline: none; background: #fff; border-color: #2e9f3c;
	box-shadow: 0 0 0 3px rgba(46,159,60,.14);
}
.ofm textarea { resize: vertical; min-height: 120px; }
/* Checkbox nhóm hàng dạng "chip" */
.ofm .wpcf7-checkbox { display: flex; flex-wrap: wrap; gap: 8px; }
.ofm .wpcf7-checkbox .wpcf7-list-item { margin: 0; }
.ofm .wpcf7-checkbox label {
	display: inline-flex; align-items: center; gap: 7px; margin: 0;
	padding: 8px 14px; border: 1px solid #dbe5de; border-radius: 999px;
	background: #fbfdfb; font-size: 13px; color: #46584c; cursor: pointer;
	transition: border-color .2s ease, background .2s ease, color .2s ease;
}
.ofm .wpcf7-checkbox label:hover { border-color: #2e9f3c; color: #1d7a29; }
.ofm .wpcf7-checkbox input[type="checkbox"] { accent-color: #2e9f3c; margin: 0; }
.ofm .wpcf7-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label { font-weight: 700; color: #1d7a29; }
.ofm .ofm__submit { margin: 26px 0 0; text-align: center; }
.ofm .ofm__btn {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 260px; padding: 15px 40px; border: 0; border-radius: 999px;
	background: linear-gradient(135deg, #2e9f3c, #24893a); color: #fff;
	font-size: 15.5px; font-weight: 700; letter-spacing: .04em; cursor: pointer;
	box-shadow: 0 12px 28px rgba(46,159,60,.34);
	transition: transform .35s cubic-bezier(.2,.8,.3,1), box-shadow .35s ease;
}
.ofm .ofm__btn:hover { transform: translateY(-3px); box-shadow: 0 18px 38px rgba(46,159,60,.42); }
.ofm .ofm__note { margin: 16px 0 0; font-size: 12.5px; line-height: 1.8; color: #8a968f; text-align: center; }
.ofm .wpcf7-not-valid-tip { margin-top: 6px; font-size: 12px; color: #d63638; }
.ofm .wpcf7-spinner { display: block; margin: 10px auto 0; }
.wpcf7 form .wpcf7-response-output {
	margin: 22px 0 0; padding: 14px 18px; border-radius: 10px;
	border-width: 1px; font-size: 13.5px; text-align: center;
}
.wpcf7 form.sent .wpcf7-response-output { border-color: #2e9f3c; background: #f0f9f2; color: #1d7a29; }

/* --- Responsive --- */
@media (max-width: 1024px) {
	.oroshi-target .ot-grid { grid-template-columns: repeat(2, 1fr); }
	.oroshi-flow .of-steps { grid-template-columns: repeat(2, 1fr); row-gap: 34px; }
	.oroshi-flow .of-steps::before { display: none; }
	.oroshi-hero .oh__title { font-size: 34px; }
}
@media (max-width: 549px) {
	.oroshi-hero .oh { padding: 54px 16px 58px; }
	.oroshi-hero .oh__title { font-size: 26px; line-height: 1.5; }
	.oroshi-hero .oh__lead { font-size: 14.5px; line-height: 1.95; }
	.oroshi-hero .oh__stat { flex: 1 1 100%; max-width: none; }
	.oroshi-target .ot-wrap, .oroshi-merit .om-wrap, .oroshi-flow .of-wrap { padding: 52px 16px 56px; }
	.oroshi-target .ot-grid { grid-template-columns: 1fr; }
	.oroshi-merit .om-grid { grid-template-columns: 1fr; }
	.oroshi-flow .of-steps { grid-template-columns: 1fr; }
	.sec-title { font-size: 23px; }
	.oroshi-formsec .ofs-wrap { padding: 48px 14px 58px; }
	.oroshi-formsec .ofs-card { padding: 28px 20px 26px; border-radius: 18px; }
	.ofm .ofm__grid { grid-template-columns: 1fr; }
	.ofm .ofm__btn { min-width: 100%; }
}

/* ==========================================================================
   Trang chi tiết sản phẩm: bảng thông số + tab
   Ghi đè layout cũ (3 mục ngang ngăn bởi "|") vì nay có 6 dòng thông số.
   ========================================================================== */
.product-info .sku-product.ltb-spec {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0;
	margin-bottom: 18px;
	border: 1px solid #e4ede6;
	border-radius: 12px;
	overflow: hidden;
	background: #fbfdfb;
}
.product-info .sku-product.ltb-spec .item-sku {
	display: contents;
	font-size: 14px;
	color: inherit;
}
/* huỷ dấu | của layout cũ */
.product-info .sku-product.ltb-spec .item-sku:first-child::after { content: none; }

.product-info .ltb-spec .item-title {
	padding: 10px 16px;
	background: #f2f8f3;
	border-bottom: 1px solid #e8f0ea;
	color: #5b6b60;
	font-size: 13px;
	font-weight: 600;
	white-space: nowrap;
}
.product-info .ltb-spec .item-value {
	padding: 10px 16px;
	border-bottom: 1px solid #e8f0ea;
	color: #16261a;
	font-size: 14px;
}
.product-info .ltb-spec .item-sku:last-child .item-title,
.product-info .ltb-spec .item-sku:last-child .item-value { border-bottom: 0; }

.ltb-stock {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 3px 12px;
	border-radius: 999px;
	font-size: 12.5px;
	font-weight: 700;
}
.ltb-stock::before {
	content: "";
	width: 7px; height: 7px;
	border-radius: 50%;
	background: currentColor;
}
.ltb-stock.is-in  { background: #e8f5ea; color: #1d7a29; }
.ltb-stock.is-out { background: #fdecec; color: #c0392b; }

/* Nội dung tab 保存方法 / 調理方法 */
.ltb-tab-body p { margin: 0 0 12px; font-size: 14.5px; line-height: 2; color: #46584c; }
.ltb-tab-body p:last-child { margin-bottom: 0; }

@media (max-width: 549px) {
	.product-info .sku-product.ltb-spec { grid-template-columns: 40% 1fr; }
	.product-info .ltb-spec .item-title,
	.product-info .ltb-spec .item-value { padding: 9px 12px; font-size: 13px; }
}

/* --------------------------------------------------------------------------
   Tab sản phẩm: hiện đủ 商品説明 / 保存方法 / 調理方法
   CSS cũ ẩn mọi li trừ .description_tab (vì trước đây chỉ còn 1 tab).
   -------------------------------------------------------------------------- */
.product-footer .woocommerce-tabs ul.tabs > li {
	display: inline-block !important;
	margin: 0 4px 0 0 !important;
}
.product-footer .woocommerce-tabs ul.tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	padding: 0 !important;
	border-bottom: 1px solid #e4ede6;
}
.product-footer .woocommerce-tabs ul.tabs > li > a {
	display: block;
	padding: 13px 22px !important;
	border-radius: 10px 10px 0 0;
	font-size: 15.5px !important;
	font-weight: 700;
	color: #6d7c72 !important;
	border-bottom: 3px solid transparent;
	transition: color .25s ease, background .25s ease, border-color .25s ease;
}
.product-footer .woocommerce-tabs ul.tabs > li > a:hover {
	color: #2e9f3c !important;
	background: #f4faf5;
}
.product-footer .woocommerce-tabs ul.tabs > li.active > a {
	color: #16261a !important;
	background: #f4faf5;
	border-bottom-color: #2e9f3c;
}
/* panel không active phải ẩn hẳn, không chỉ riêng tab-description */
.product-footer .woocommerce-tabs .tab-panels > .panel:not(.active) {
	display: none !important;
	height: 0 !important;
}
.product-footer .woocommerce-tabs .tab-panels > .panel.active {
	display: block !important;
	height: auto !important;
	padding-top: 22px;
}

/* Sản phẩm liên quan */
.related > .product-section-title,
.related.products > h2,
.up-sells > h2 {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 44px 0 20px;
	font-size: 22px;
	font-weight: 700;
	color: #16261a;
}
.related > .product-section-title::before,
.related.products > h2::before,
.up-sells > h2::before {
	content: "";
	flex: 0 0 auto;
	width: 6px; height: 24px;
	border-radius: 3px;
	background: linear-gradient(180deg, #57c765, #2e9f3c);
}

/* Tiêu đề bảng 商品詳細 + nhãn （税込） + trạng thái 残りわずか */
.product-info .ltb-spec-title {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 0 0 10px;
	font-size: 15px;
	font-weight: 700;
	color: #16261a;
}
.product-info .ltb-spec-title::before {
	content: "";
	width: 5px; height: 17px;
	border-radius: 3px;
	background: linear-gradient(180deg, #57c765, #2e9f3c);
}
.ltb-stock.is-low { background: #fff5e5; color: #b8730a; }
.ltb-tax-note {
	/* .price dùng flex-direction:row-reverse nên order:-1 mới đẩy được
	   nhãn này ra SAU giá về mặt thị giác (¥3,980（税込）) */
	order: -1;
	margin: 0 0 3px 8px;
	font-size: 13px;
	font-weight: 500;
	color: #7d8a82;
	white-space: nowrap;
}

/* Ẩn dải sóng SVG đầu footer CHỈ ở Trang chủ.
   WordPress gắn class "home" vào <body> riêng cho trang chủ, các trang khác không có.
   Phần tử này nằm trong Flatsome block "Footer" (ID 528) nên không tách ra được
   bằng PHP mà không ảnh hưởng mọi trang -> dùng CSS có điều kiện.
   Ẩn cả padding-top 18px để không để lại khoảng trống. */
body.home .line-footer {
	display: none !important;
	padding-top: 0 !important;
}
/* Dải sóng vốn cao 137px và tạo luôn khoảng đệm giữa nội dung và footer.
   Ẩn nó đi thì footer dính sát khối phía trên -> bù lại bằng padding. */
body.home .section_footer {
	padding-top: 56px !important;
}
@media (max-width: 849px) {
	body.home .section_footer { padding-top: 40px !important; }
}
@media (max-width: 549px) {
	body.home .section_footer { padding-top: 32px !important; }
}

/* ==========================================================================
   Trang /contact/ + page trống (準備中) + footer mới
   ========================================================================== */
.page_contact .ct-info {
	display: grid;
	gap: 14px;
	margin-bottom: 30px;
}
.page_contact .ct-item {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 16px 18px;
	border: 1px solid #e4ede6;
	border-radius: 12px;
	background: #fbfdfb;
}
.page_contact .ct-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 42px; height: 42px;
	border-radius: 12px;
	background: linear-gradient(140deg, #2e9f3c, #57c765);
	color: #fff;
	box-shadow: 0 6px 14px rgba(46,159,60,.28);
}
.page_contact .ct-ico svg { width: 21px; height: 21px; }
.page_contact .ct-item b { display: block; margin-bottom: 3px; font-size: 13px; color: #5b6b60; }
.page_contact .ct-item p { margin: 0; font-size: 14.5px; color: #16261a; }
.page_contact .ct-formtitle {
	display: flex; align-items: center; gap: 10px;
	margin: 0 0 18px; font-size: 19px; font-weight: 700; color: #16261a;
}
.page_contact .ct-formtitle::before {
	content: ""; width: 5px; height: 20px; border-radius: 3px;
	background: linear-gradient(180deg, #57c765, #2e9f3c);
}
.page_contact .ct-map {
	border-radius: 14px; overflow: hidden;
	box-shadow: 0 10px 28px rgba(24,70,32,.1);
	line-height: 0;
}
.page_contact .ofm select,
.ofm select {
	width: 100%;
	height: auto !important;
	min-height: 46px;
	padding: 12px 34px 12px 14px !important;
	border: 1px solid #dbe5de;
	border-radius: 10px;
	background-color: #fbfdfb;
	font-size: 14px;
	line-height: 1.5;
	color: #16261a;
}

/* Page đang chuẩn bị nội dung */
.pg-empty {
	max-width: 620px; margin: 0 auto; padding: 44px 30px;
	text-align: center; border: 1px dashed #cfe0d4; border-radius: 16px;
	background: #fbfdfb;
}
.pg-empty__ico {
	display: inline-flex; align-items: center; justify-content: center;
	width: 52px; height: 52px; margin-bottom: 14px; border-radius: 50%;
	background: rgba(46,159,60,.1); color: #2e9f3c; font-size: 22px;
}
.pg-empty p { margin: 0 0 8px; font-size: 15px; line-height: 1.9; color: #46584c; }
.pg-empty__note { font-size: 13px !important; color: #93a099 !important; }

/* Footer: danh sách thông tin liên hệ */
.section_footer .adr li { display: flex; gap: 10px; margin-bottom: 7px; font-size: 14px; }
.section_footer .adr li b { flex: 0 0 76px; color: #4a5a50; font-weight: 600; }
.section_footer .adr li span { flex: 1 1 auto; }

/* Trang /about/ - phần thân dạng văn bản */
.about-doc { max-width: 820px; margin: 0 auto; }
.about-doc p { margin: 0 0 16px; font-size: 15px; line-height: 2; color: #46584c; }
.about-doc h3 {
	display: flex; align-items: center; gap: 10px;
	margin: 34px 0 14px; font-size: 19px; font-weight: 700; color: #16261a;
}
.about-doc h3::before {
	content: ""; width: 5px; height: 20px; border-radius: 3px;
	background: linear-gradient(180deg, #57c765, #2e9f3c);
}
.pg-empty--inline { margin-top: 34px; padding: 22px 24px; text-align: left; }
.pg-empty--inline .pg-empty__ico { width: 40px; height: 40px; margin-bottom: 10px; font-size: 18px; }

/* Logo mobile dùng chung ảnh với PC.
   Header mobile nền xanh, mà logo LTB có chữ "LT" xanh đậm + lá xanh -> chìm vào nền.
   Nên đặt logo trên nền trắng bo góc để hiển thị đúng màu thương hiệu như bản PC. */
@media only screen and (max-width: 48em) {
	#header #logo {
		width: auto !important;
	}
	#header #logo a {
		display: inline-flex;
		align-items: center;
		background: #fff;
		border-radius: 10px;
		padding: 5px 9px;
		line-height: 0;
	}
	#header #logo img.header-logo-dark {
		/* Phải đặt height TƯỜNG MINH: img có width:auto mà khung cha cũng width:auto
		   -> kích thước phụ thuộc vòng tròn, trình duyệt co ảnh về rất nhỏ.
		   Cho height cố định thì tỉ lệ tự suy ra từ chiều rộng gốc. */
		height: 38px !important;
		width: auto !important;
		max-height: none !important;
		max-width: none !important;
		padding: 0;
	}
}
