@font-face {
  font-family: AvertaStd;
  font-display: swap;
  src: url(fonts/AvertaStd-Regular.otf);
}
@font-face {
  font-family: AvertaStd;
  font-display: swap;
  src: url(fonts/AvertaStd-RegularItalic.otf);
  font-style: italic;
}
@font-face {
  font-family: AvertaStd;
  font-display: swap;
  src: url(fonts/AvertaStd-Semibold.otf);
  font-weight: 500;
}
@font-face {
  font-family: AvertaStd;
  font-display: swap;
  src: url(fonts/AvertaStd-SemiboldItalic.otf);
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: AvertaStd;
  font-display: swap;
  src: url(fonts/AvertaStd-Bold.otf);
  font-weight: 700;
}
@font-face {
  font-family: AvertaStd;
  font-display: swap;
  src: url(fonts/AvertaStd-BoldItalic.otf);
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: AvertaStd;
  font-display: swap;
  src: url(fonts/AvertaStd-ExtraBold.otf);
  font-weight: 900;
}
@font-face {
  font-family: AvertaStd-Black;
  font-display: swap;
  src: url(fonts/AvertaStd-Black.otf);
}
:root {
  --colorMain: #02A652;
  --colorMain2: #cf312d;
  /* Biến màu Ginic được gom chung vào đây */
  --ginic-green: #2E9E4D;
  --ginic-green-dark: #258341;
  --ginic-red: #8F1D22;
  --ginic-red-dark: #74161A;
  --ginic-offwhite: #F6F7F8;
  --ginic-text: #454444;
  --ginic-border: #D9DEE5;
}
a:hover { color: var(--colorMain2); }
p { margin-bottom: 10px; }
html { font-size: 100%; }
.aligncenter { margin-left: auto; margin-right: auto; display: block; text-align: center; }
.aligncenter figcaption { text-align: center; }
.node-detail figure { max-width: 100% !important; margin-bottom: 10px; }
.wp-caption { width: auto !important; }
label { font-weight: bold; }
body { font-family: 'AvertaStd', sans-serif; color: #000; font-size: 16px; margin: 0; padding: 0; text-decoration: none; line-height: 1.4; word-break: break-word; }
body.home { background-color: #fff; }

/* ------------------ MENU MẶC ĐỊNH ------------------ */
.horizontal-menu { position: relative; margin: 0; padding: 0; list-style: none; width: 100%; }
.horizontal-menu > li { display: inline-block; position: relative; float: left; }
.woocommerce div.product span.price del { text-decoration: none; }
.horizontal-menu > li ul ul { left: 13.75em; top: 0; }
.horizontal-menu ul .fly-left ul { left: -13.75em; }
.horizontal-menu > li > a { display: block; color: #fff; padding: 9px 12px; text-decoration: none; font-size: 15px; text-transform: uppercase; }
.horizontal-menu > li ul { position: absolute; display: none; top: 100%; left: 0; z-index: 99; padding: 0; box-sizing: border-box; width: 13.75em; list-style: none; }
.horizontal-menu li.sfHover > ul, .horizontal-menu li:hover > ul { display: block; }
.horizontal-menu li li { position: relative; float: left; width: 100%; }
.horizontal-menu > li > li:hover > ul, .horizontal-menu > li > li.sfHover > ul { display: block; }
.horizontal-menu a { color: #fff; }
.horizontal-menu > li li > a { display: block; position: relative; padding: 0.25em 1em; text-transform: none; color: #000; }
.horizontal-menu .sub-menu li { border-bottom: 1px solid #6eb045; padding: 5px; color: #fff; }
.horizontal-menu > li > ul { border: 1px solid #6eb045; }
.horizontal-menu .sub-menu { background: #fff; }

/* ------------------ RESPONSIVE & COMPONENT CƠ BẢN ------------------ */
.pc-slider { display: none; }
.mobile-slider { margin-bottom: 30px; }
@media(min-width: 420px) { .mobile-slider { display: none; } .pc-slider { display: block; } }
img { max-width: 100% !important; height: auto !important; }
a { color: #265c89; text-decoration: none; }
.node-detail a { text-decoration: underline; }
.clear { clear: both; }
.block-chia-se .owl-dots { text-align: left; }
.owl-theme .owl-dots .owl-dot span { margin-bottom: 0px; margin-left: 0px; margin-right: 10px; background: #5CEEA4; }
.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span { background: #ccc; }
.block-gia-tri-gt .owl-theme .owl-dots .owl-dot span { width: 50px; height: 3px; position: relative; }
.owl-theme .owl-dots .owl-dot span em { font-weight: normal; font-style: normal; position: absolute; width: 100%; text-align: center; top: -25px; left: 0px; color: var(--colorMain); }
.wpcf7-not-valid-tip { font-size: 14px; }
table { width: 100% !important; max-width: 100%; margin-bottom: 20px; }
table.form-dat-mua-table thead { background: var(--colorMain); color: #fff; }
table.form-dat-mua-table, table.form-dat-mua-table th, table.form-dat-mua-table td { border: 1px solid #ccc; }
table>tbody>tr>td, table>tbody>tr>th, table>tfoot>tr>td, table>tfoot>tr>th, table>thead>tr>td, table>thead>tr>th { padding: 8px; line-height: 1.42857143; vertical-align: top; }
tbody, td, tfoot, th, thead, tr { border-width: 1px; }
.woocommerce-product-details__short-description table, .woocommerce-product-details__short-description tbody, .woocommerce-product-details__short-description tfoot, .woocommerce-product-details__short-description thead, .woocommerce-product-details__short-description tr, .woocommerce-product-details__short-description th { border-width: 0px; }
.woocommerce-product-details__short-description table>tbody>tr>td, .woocommerce-product-details__short-description table>tbody>tr>th, .woocommerce-product-details__short-description table>tfoot>tr>td, .woocommerce-product-details__short-description table>tfoot>tr>th, .woocommerce-product-details__short-description table>thead>tr>td, .woocommerce-product-details__short-description table>thead>tr>th { border-width: 0px; border-top: 1px solid #ddd; }
.node-detail tbody:not(.node-detail .woocommerce tbody), .node-detail td:not(.node-detail .woocommerce td), .node-detail tfoot:not(.node-detail .woocommerce tfoot), .node-detail th:not(.node-detail .woocommerce th), .node-detail thead:not(.node-detail .woocommerce thead), .node-detail tr:not(.node-detail .woocommerce tr) { border-color: #ccc; border-style: solid; border-width: 1px; }

/* ------------------ TYPOGRAPHY & BUTTONS ------------------ */
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { font-weight: bold; color: #000; line-height: 1.4; }
h1, .h1 { font-size: 36px; }
h2, .h2 { font-size: 30px; }
h3, .h3 { font-size: 24px; }
h4, .h4 { font-size: 18px; }
h5, .h5 { font-size: 14px; }
h6, .h6 { font-size: 12px; }
b, strong { font-weight: bold; }
.paginate_links a, .paginate_links span { display: inline-block; margin-right: 5px; background: #fff; color: #000; width: 35px; height: 35px; box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.1); border-radius: 50%; text-decoration: none !important; text-align: center; border: 1px solid #ccc; padding-top: 4px; }
.paginate_links span.current, .paginate_links a:hover { background: var(--colorMain); color: #fff; border: 1px solid var(--colorMain); }
a.view-more { color: #000; display: inline-block; background: url(../images/view-more.svg) no-repeat right 9px; background-size: 6px; padding-right: 10px; text-decoration: none; }
a.view-more:hover { color: var(--colorMain); }
.paginate_links { float: left; width: 100%; margin-bottom: 20px; margin-top: 20px; text-align: center; }
.box-note { margin: 15px 0; padding: 20px 15px 20px 70px; position: relative; }
.box-note:before { font-family: dashicons,monospace; font-size: 40px; display: inline-block; opacity: .8; vertical-align: top; float: left; font-style: normal; line-height: 40px; margin-right: 7px; position: absolute; left: 15px; top: 25%; }
.box-note1 { background: #e8f5e9; color: #1b5e20; } .box-note1:before { content: "\f109"; }
.box-note2 { background: #e3f2fd; color: #0d47a1; } .box-note2:before { content: "\f130"; }
.box-note3 { background: #fbe9e7; color: #bf360c; } .box-note3:before { content: "\f339"; }
.blue-button a { background: #1866a4; color: #fff; padding: 5px 10px; border-radius: 5px; text-transform: uppercase; font-weight: 700; display: inline-block; }
.violet-button a { background: var(--colorMain); color: #fff; padding: 5px 10px; border-radius: 5px; text-transform: uppercase; font-weight: 700; display: inline-block; }
.red-button a { background: var(--colorMain); color: #fff !important; padding: 5px 10px; border-radius: 5px; text-transform: uppercase; font-weight: 700; display: inline-block; }
.node-detail h1, .node-detail h2, .node-detail h3, .node-detail h4, .node-detail h5, .node-detail h6 { color: var(--colorMain); }
.node-detail .h1, .node-detail h1 { font-size: 28px; }
.node-detail .h2, .node-detail h2 { font-size: 26px; }
.node-detail .h3, .node-detail h3 { font-size: 24px; }
.alignleft { float: left; margin: 0 15px 10px 0; }
.alignright { float: right; margin: 0.5em 0 0.5em 1em; }
a:hover, a:active, a:focus { text-decoration: underline; }
a:hover { color: var(--colorMain); }
.panel-default>.panel-heading { background: transparent; border: none; border-radius: 0px; color: #000; padding: 5px 0px; }
.accordion .panel { border: none; border-bottom: 1px solid #E0E0E0; margin-bottom: 10px; border-radius: 0px; box-shadow: none; }
.wpcf7 form .wpcf7-response-output { font-size: 14px; }
.datepicker.dropdown-menu { color: #000; }
.datepicker table tr td.disabled, .datepicker table tr td.disabled:hover { color: #ccc; }
#mega-menu-wrap-menu-chinh .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-animated-inner, #mega-menu-wrap-menu-chinh .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-animated-inner::before, #mega-menu-wrap-menu-chinh .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-animated-inner::after { background: #fff !important; }
#breadcrumbs { margin-bottom: 0px; }
.metaslider .caption { padding: 15px !important; }
.vertical-menu li { white-space: nowrap; }
.vertical-menu > li { position: relative; }
.vertical-menu > li ul { position: absolute; display: none; top: 0px; left: 100%; z-index: 99; padding: 0; box-sizing: border-box; width: auto; list-style: none; background: #FFF0ED; }
.vertical-menu li:hover > ul { display: block; }
.woocommerce-message { margin-top: 20px; margin-bottom: 30px; }
.woocommerce-error .button, .woocommerce-info .button, .woocommerce-message .button { float: left; color: var(--colorMain); margin-right: 30px; }
#header .container { position: relative; }

/* ------------------ MINI CART & WIDGETS ------------------ */
.mini-cart-item { position: absolute; top: 50px; right: 15px; z-index: 99; font-size: 13px; padding: 10px; background: #f2f2f2; border-radius: 5px; display: none; }
.mini-cart-item:before { content: ""; display: block; border-top: 10px solid transparent; border-right: 10px solid transparent; border-bottom: 10px solid #f2f2f2; border-left: 10px solid transparent; position: absolute; top: -20px; right: 25px; }
.mini-cart-item .thumbnail-cart { width: 40px; height: 50px; float: left; margin: 5px; }
.mini-cart-item .product-title { float: left; font-size: 13px; width: auto; max-width: 170px; height: 37px; text-overflow: clip; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.mini-cart-item ul { margin: 0px; padding: 0px; list-style: none; }
.mini-cart-item ul li { position: relative; background: #fff; padding: 10px; border-radius: 5px; margin-bottom: 10px; }
.mini-cart-item .product-price { color: #db0000; }
.mini-cart-item .quantity { position: absolute; background: #db0000; font-size: 11px; border-radius: 20px; padding: 0px 5px; font-weight: 700; top: 10px; left: 4px; color: #fff; text-align: center; }
.top-cart-content:hover .mini-cart-item { display: block; }
a.btn-gotocart { background: #6eb045; float: right; padding: 5px 15px; color: #fff !important; font-weight: normal; }

/* ------------------ TIN TỨC & BÀI VIẾT ------------------ */
.social-buttons { padding: 0px; margin-left: -10px; margin-right: -10px; }
.social-buttons li { list-style: none; float: left; padding: 10px; }
.social-buttons li a i { display: inline-block; width: 40px; height: 40px; }
.social-buttons li a i:before { display: none; }
.social-buttons li a .fa-facebook { background: url(../images/facebook.png) no-repeat center center; background-size: 40px; }
.social-buttons li a .fa-zalo { background: url(../images/zalo2.png) no-repeat center center; background-size: 40px; }
.social-buttons li a .fa-youtube { background: url(../images/youtube2.png) no-repeat center center; background-size: 40px; }
.breadcrumbs { background-color: #fff; padding: 10px 15px; font-size: 14px; color: #000; margin-bottom: 20px; }
@media(max-width: 992px) { .breadcrumbs { padding-left: 0px; padding-right: 0px; } }
.breadcrumbs a { color: #000; display: inline-block; text-decoration: none; }
.breadcrumbs a:hover { color: var(--colorMain); }
#breadcrumbs span { display: inline-block; }
h1.title-list { font-size: 26px; color: var(--colorMain); font-weight: 700; margin-bottom: 20px; }
.kk-star-ratings { margin-bottom: 30px; }
@media(max-width: 992px) { .main-content-detail h1 { margin-top: 0px; } }
@media(max-width: 767px) { .main-content-detail h1 { font-size: 24px; } }
.main-content-list .list-row { padding: 15px; }
.title a { color: #000; text-decoration: none; font-weight: bold; }
.title a:hover { color: var(--colorMain); }
.category-content-list .excerpt-desc { margin-bottom: 5px; font-size: 16px; line-height: 1.5; text-overflow: clip; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
@media(min-width: 768px) { .category-content-list .excerpt-desc { min-height: 72px; } }
.category-content-list .title { margin-bottom: 10px; text-overflow: clip; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; font-weight: bold; }
.category-content-list .post-meta { float: left; }
.category-content-list .view-more-post { float: right; }
.title-list-category { text-align: center; }
.category-content-list .anh-dai-dien { margin-bottom: 10px; border-radius: 10px; overflow: hidden; }
.category-content-list .anh-dai-dien img { border-radius: 5px; }
img[data-dominant-color]:not(.has-transparency) { background-color: #fff; }
.category-content-list .content-post { color: #567; }
.block-tin-lien-quan .anh-dai-dien, .block-tin-lien-quan .anh-dai-dien img { border-radius: 10px; }
@media(min-width: 768px) {
  .category-content-list .anh-dai-dien { position: relative; height: 180px; border: 1px solid #f6f6f6; }
  .block-tin-lien-quan .anh-dai-dien { position: relative; height: 180px; }
  .category-content-list .anh-dai-dien img, .block-tin-lien-quan .anh-dai-dien img { height: 100% !important; object-fit: cover; width: 100% !important; }
  .category-content-list-full .anh-dai-dien { width: 100%; margin-right: 0px; }
  .category-content-list-full .title { overflow: initial; display: block; min-height: initial; }
}
@media(max-width: 767px) {
  .category-content-list .anh-dai-dien, .block-tin-lien-quan .anh-dai-dien { width: 100%; overflow: hidden; position: relative; height: 220px; }
  .category-content-list .anh-dai-dien img, .block-tin-lien-quan .anh-dai-dien img { height: 100% !important; object-fit: cover; width: 100% !important; }
}
.news-block-one-image .item-sec .title { color: #000; padding-top: 10px; padding-bottom: 10px; border-bottom: 1px dashed #b5b5b5; }
.news-block-one-image .item-sec .title a { display: block; padding-left: 20px; position: relative; }
.news-block-one-image .item-sec .title a:after { position: absolute; content: ""; width: 10px; height: 10px; background: var(--colorMain); left: 0px; top: 7px; border-radius: 50%; }

/* ------------------ WOOCOMMERCE & PRODUCTS ------------------ */
.woocommerce-pagination ul { display: -ms-flexbox; display: flex; padding-left: 0; list-style: none; border:  none !important; }
.woocommerce nav.woocommerce-pagination ul li { border: none; padding: 5px; }
.woocommerce-pagination ul li .current, .woocommerce-pagination ul li .page-numbers { position: relative; display: block; padding: 5px 10px; line-height: 1.25; font-weight: 700; margin: 0 3px; transition: unset; }
.woocommerce-pagination ul li .page-numbers { background-color: #fff; border: 1px solid #dee2e6; border-radius: 5px; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { width: 33px; height: 33px; border-radius: 50%; }
.woocommerce nav.woocommerce-pagination ul li a:focus, .woocommerce nav.woocommerce-pagination ul li a:hover, .woocommerce nav.woocommerce-pagination ul li span.current { background: var(--colorMain); color: #fff; }
.item-product .inner { position: relative; }
.san-pham-list .save-percent { color: #fff; background: var(--colorMain); font-size: 14px; padding: 3px 10px; border-radius: 35px; vertical-align: top; margin-top: 6px; display: inline-block; margin-left: 5px; }
.product-meta { display: flex; align-items: center; margin-bottom: 5px; }
.product-review { list-style: none; display: flex; padding-left: 0; margin: 0; font-size: 16px; color: #E6B95F; }
.product-review li { margin-right: 2px; }
.amount-contact { color: var(--colorMain); font-weight: bold; }
.san-pham-list .quoc-gia { text-overflow: clip; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; font-size: 12px; line-height: 1; }
.san-pham-list .quoc-gia a { color: var(--colorMain); }
.product_title { font-weight: 700; font-size: 26px; }
@media(max-width: 767px) { .product_title { font-size: 22px; } }
.woocommerce .star-rating span::before { color: #E6B95F; }
.product-meta-item a { color: #0a5e83; }
.woocommerce div.product .woocommerce-product-rating { margin-bottom: 0px; }
.entry-summary .price del bdi { color: #999999; font-size: 14px; margin-right: 5px; text-decoration: line-through; }
.entry-summary .price ins { text-decoration: none; }
.type-product .price ins, .type-product .price bdi { font-size: 24px; font-weight: 700; color: var(--colorMain); text-decoration: none; vertical-align: middle; }
.woocommerce div.product p.price del { margin-right: 10px; margin-top: 6px; text-decoration: none; display: none; }
.woocommerce div.product p.price ins bdi { font-size: 28px; }
@media(max-width: 767px) { .woocommerce div.product p.price del { margin-top: 0px; margin-right: 5px; } .woocommerce div.product p.price ins bdi { font-size: 24px; } }
.woocommerce-product-details__short-description { margin-bottom: 20px; clear: both; width: 100%; }
#buy_now_button { background: var(--colorMain); color: #fff; width: 190px; border-radius: 35px; font-weight: 700; font-size: 16px; text-align: center; border: 1px solid var(--colorMain); margin-top: 0px; margin-right: 10px; text-transform: none; }
.woocommerce div.product form.cart div.quantity { margin-right: 0px; width: 100%; }
.entry-summary form.cart .add-to-cart-alla { width: 195px; font-size: 16px; font-weight: 700; border: 1px solid #FAB431; border-radius: 35px; margin-left: auto; text-transform: none; background: url(../images/cart-btn.svg) no-repeat 7px 7px #FAB431 !important; color: #fff !important; margin-top: 0px; padding-left: 30px; background-size: 20px !important; }
.woocommerce .quantity .qty { width: 60px; border-color: var(--colorMain); }
.block-tin-noi-bat .block-title h2 { font-size: 26px; text-transform: uppercase; color: #000; }
.block-tin-noi-bat .excerpt-desc { margin-bottom: 0px; text-overflow: clip; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
@media(max-width: 767px) {
  #buy_now_button { width: 100%; margin: 0px; }
  .entry-summary form.cart .single_add_to_cart_button { width: 49%; margin-bottom: 15px; margin-top: 20px; margin-left: 5px; font-size: 15px; }
  .woocommerce div.product form.cart div.quantity { width: 100%; margin-bottom: 15px; }
  .woocommerce-cart-form__contents .product-quantity:before { margin-top: 10px; } 
  .woocommerce div.product form.cart .button { width: 100%; margin-left: 0px; margin-right: 0px; margin-bottom: 10px; }
  .woocommerce div.product div.summary { margin-bottom: 0px; }
}
.woocommerce div.product div.summary { margin-bottom: 30px; }
.woocommerce #content div.product div.images, .woocommerce div.product div.images, .woocommerce-page #content div.product div.images, .woocommerce-page div.product div.images { width: 100%; }
.woocommerce #content div.product div.summary, .woocommerce div.product div.summary, .woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary { width: 100%; }
.wpcf7-form-control-wrap { margin-bottom: 15px; display: block; }
.woocommerce div.product .woocommerce-tabs ul.tabs, .tabs-custom { padding-left: 0px; background: #fff; border-bottom: 1px solid #ccc; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { border: none; border-radius: 0px; background: #fff; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover { color: inherit; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active, .woocommerce div.product .woocommerce-tabs ul.tabs li:hover { color: var(--colorMain); border-bottom: 1px solid var(--colorMain); }
.woocommerce div.product .woocommerce-tabs ul.tabs::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none; }
@media(max-width: 767px) {
  #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh li.mega-align-bottom-left.mega-toggle-on > a.mega-menu-link { border-radius: 0px; }
  .woocommerce div.product .woocommerce-tabs ul.tabs { white-space: nowrap; display: block; overflow-y: hidden; overflow-x: auto; -webkit-overflow-scrolling: touch; -ms-overflow-style: none; -ms-scroll-snap-type: mandatory; -ms-scroll-snap-points-x: snapInterval(0%,100%); -ms-scroll-chaining: chained; }
}
@media(max-width: 992px) { .container-product .row { display: block; } }

/* ------------------ CHECKOUT & QUICKBUY ------------------ */
.widget-quickbuy .quickorder-sidebar { background: var(--colorMain) !important; color: #fff !important; border-radius: 4px; font-weight: 700; text-transform: uppercase; font-size: 15px; padding-left: 15px; padding-right: 15px; text-align: center; border: 1px solid var(--colorMain) !important; }
.widget-quickbuy .add-to-cart-sidebar { font-size: 15px; font-weight: 700; border: 1px solid #1B7F51 !important; border-radius: 4px; margin-left: auto; text-transform: uppercase; background: url(../images/shopping-cart-dark.svg) no-repeat #E6EFE1 10px 5px !important; background-position: 15px 7px; padding-left: 40px; color: #4d8232 !important; }
.widget-quickbuy .add-to-cart-sidebar, .widget-quickbuy .quickorder-sidebar { width: calc(50% - 5px); font-size: 14px; }
@media(max-width: 767px) { .widget-quickbuy .add-to-cart-sidebar, .widget-quickbuy .quickorder-sidebar { width: 100%; margin-bottom: 10px; } }
.main-content-product-detail { padding-bottom: 30px; }
.woocommerce-Reviews-title { text-transform: uppercase; color: var(--colorMain); font-size: 22px; font-weight: bold; margin-top: 20px; margin-bottom: 20px; }
.woocommerce #reviews #comments ol.commentlist { padding-left: 0px; }
.woocommerce p.stars a::before { color: #ff9800; }
.comment-reply-title { text-transform: uppercase; color: var(--colorMain); font-size: 18px; font-weight: bold; margin-top: 20px; margin-bottom: 20px; }
.woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button { background: var(--colorMain); color: #fff; }
.woocommerce .star-rating { font-size: 16px; float: none !important; display: inline-block !important; vertical-align: text-top; }
.woocommerce .woocommerce-review-link { text-decoration: none; color: #1C1C1C; }

/* ------------------ SOCIAL SHARE & AUTHOR ------------------ */
.socical-share, .social-network-author { list-style: none; margin-bottom: 0; display: inline-block; padding-left: 0; }
@media(max-width: 767px) { .socical-share, .social-network-author { margin-top: 10px; clear: both; } }
.socical-share li, .social-network-author li { border-radius: 30px; margin: 0 5px; display: inline-block; }
.socical-share a, .social-network-author a { display: flex; justify-content: center; align-items: center; text-align: center; width: 25px; height: 25px; line-height: 30px; color: #fff; border-radius: 4px; }
.social-network-author a { width: 20px; height: 20px; text-decoration: none; }
.socical-share a:hover { text-decoration: none; }
.socical-share .facebook { background-color: #3b5998; }
.socical-share .linkedin { background-color: #0077B5; }
.socical-share .twitter { background-color: #55acee; }
.socical-share .pinterest { background-color: #db0000; }
.socical-share .google-plus { background-color: #dd4b39; }
.socical-share .instagram { background: #f09433; background: linear-gradient(45deg, #f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%); }
.socical-share .tumblr { background: #34526f; }
.kk-star-ratings .kksr-legend { font-size: 14px !important; color: #677072; }
.author--desc { text-overflow: clip; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.product-meta-bottom { padding-top: 10px; padding-bottom: 10px; border-top: 1px dashed #f2f2f2; border-bottom: 1px dashed #f2f2f2; margin-bottom: 20px; }
#toc_container.no_bullets ul li { margin-bottom: 10px; line-height: 1.4; }
#toc_container.no_bullets ul li ul { margin-top: 10px; }
.author-link { padding-top: 8px; font-size: 13px; }
.woocommerce table.shop_table td.product-name { font-weight: bold; }
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order { background: var(--colorMain); }
.checkout-button:hover { background: var(--colorMain) !important; }
.order-total .woocommerce-Price-amount { color: #db0000; }
.showcoupon { color: #245782; text-decoration: underline; }

/* ------------------ FORMS & COMMENTS ------------------ */
.woocommerce-billing-fields input, .comment-form input[type="text"], .comment-form input[type="email"] { display: block; width: 100%; height: 34px; padding: 6px 12px; font-size: 14px; line-height: 1.42857143; color: #555; background-color: #fff; border: 1px solid #ccc; border-radius: 4px; box-shadow: inset 0 1px 1px rgba(0,0,0,.075); transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; }
.woocommerce-additional-fields textarea, .comment-form textarea { display: block; width: 100%; padding: 6px 12px; font-size: 14px; line-height: 1.42857143; color: #555; background-color: #fff; border: 1px solid #ccc; border-radius: 4px; box-shadow: inset 0 1px 1px rgba(0,0,0,.075); transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; }
.woocommerce form .form-row-first, .woocommerce form .form-row-last, .woocommerce-page form .form-row-first, .woocommerce-page form .form-row-last { width: 100%; }
#add_payment_method #payment, .woocommerce-cart #payment, .woocommerce-checkout #payment { background: #fff; border: 1px solid rgba(0,0,0,.1); }
.woocommerce-privacy-policy-text a { color: #245782; }
.woocommerce form .form-row textarea { height: 200px; }
.field-tag a { color: #265c89; }
@media(min-width: 768px) { .comment-form-author { width: 50%; padding-right: 5px; float: left; } .comment-form-email { width: 50%; padding-left: 5px; float: left; } }
.comment-list { padding: 0px; margin: 0px; line-height: 1.5; }
.comment-list li { list-style: none; padding-bottom: 15px; padding-top: 15px; }
.comment-metadata time { font-size: 13px; }
h2.comments-title { font-size: 24px; text-transform: uppercase; }
.required { color: red; }
.comment-reply-title #cancel-comment-reply-link { margin-left: 15px; color: #ccc; }
.comments-area .submit { background-color: var(--colorMain); border: none; color: #fff; font-size: 16px; font-weight: 700; text-transform: uppercase; padding: 8px 3.5rem; cursor: pointer; border-radius: 4px; }
.heading-info ul { padding: 0px; }
.heading-info ul li { list-style: none; display: inline-block; margin-right: 10px; padding: 5px 10px; border-radius: 4px; background: #e7f4ff; color: #333; font-size: 12px; }
@media(max-width: 767px) { .heading-info ul li { margin-bottom: 5px; } }
.heading-info ul li a { color: #333; }
.footer-top a { color: #fff; }
.content-bottom .block-title h2 { text-transform: uppercase; font-weight: bold; font-size: 24px; }
.content-bottom ul li { margin-bottom: 5px; }
.comment-edit-link { font-size: 13px; }
.content-bottom .alla-block { margin-bottom: 50px; float: left; width: 100%; }
@media(max-width: 767px) { .content-bottom .alla-block { margin-bottom: 30px; } }
.nguon_tham_khao_btn { display: block; padding-left: 20px; }
.nguon_tham_khao_btn[aria-expanded~=false] { background: url(../images/right-arrow.svg) no-repeat 0px 5px; background-size: 15px; }
.nguon_tham_khao_btn[aria-expanded~=true] { background: url(../images/down-arrow.svg) no-repeat 0px 5px; background-size: 15px; }
#nguon_tham_khao { padding: 15px; font-size: 14px; border: 1px solid #f0f0f0; background: #f2f2f2; }
#nguon_tham_khao ul { padding: 0px; }
#nguon_tham_khao ul li { margin-bottom: 10px; list-style: none; }
.nguon_tham_khao-wrapper { margin-top: 10px; margin-bottom: 20px; }
.block-san-pham-qc { margin-top: 10px; margin-bottom: 10px; }
.san-pham-list-nhung { margin-top: 30px; margin-bottom: 30px; float: left; width: 100%; }
.content-bottom { margin-top: 30px; clear: both; }
.contact-form form { margin-top: 20px; }
.woocommerce a.button.checkout-button { background: var(--colorMain); }
.woocommerce-message::before { color: var(--colorMain); }
.woocommerce-message { border-top-color: var(--colorMain); }
.woocommerce ul.order_details { padding: 0px; }
.woocommerce ul.order_details li { margin-bottom: 10px; }
.menu-mobile { margin-bottom: 10px; }
.woocommerce .cart .button, .woocommerce .cart input.button { font-size: 15px; }

/* ------------------ HOTLINE & SCROLL TO TOP ------------------ */
.scrollToTop { width: 40px; height: 40px; padding: 5px; text-align: center; background: url(../images/up-arrow.svg) no-repeat center center var(--colorMain); background-size: 20px; color: #fff; position: fixed; right: 8px; bottom: 10px; display: none; font-size: 19px; z-index: 9999; border-radius: 50%; }
#block-blocksupportscrool { position: fixed; right: 5px; bottom: 70px; z-index: 99; }
.block-scrool-support a { display: block; width: 50px; height: 50px; position: relative; border-radius: 50%; }
.block-scrool-support a.phone-btn { background: url(../images/phone-s.svg) no-repeat center center; background-size: cover; }
.block-scrool-support a.facebook-fanpage-scroll { background: url(../images/messenger-f.svg) no-repeat center center; background-size: cover; margin-bottom: 10px; }
.block-scrool-support a.zalo-scroll { background: url(../images/zalo-s.svg) no-repeat center center; background-size: cover; margin-bottom: 10px; }
@media(max-width: 767px) { #block-blocksupportscrool { bottom: 60px; } .scrollToTop { width: 40px; height: 40px; } }

/* Animations Hotline */
@keyframes call-circle-anim { 0% { transform: rotate(0) scale(.5) skew(1deg); opacity: .1 } 30% { transform: rotate(0) scale(.7) skew(1deg); opacity: .5 } 100% { transform: rotate(0) scale(1) skew(1deg); opacity: .1 } }
@keyframes call-circle-fill-anim { 0% { transform: rotate(0) scale(.7) skew(1deg); opacity: .2 } 50% { transform: rotate(0) scale(1) skew(1deg); opacity: .2 } 100% { transform: rotate(0) scale(.7) skew(1deg); opacity: .2 } }
@keyframes call-icon-anim { 0% { transform: rotate(0) 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(0) scale(1) skew(1deg) } 100% { transform: rotate(0) scale(1) skew(1deg) } }

.call_hotline { width: 195px; height: 90px; display: block; position: fixed; right: 0; overflow: hidden; cursor: pointer; left: 0px; bottom: 0px; z-index: 9999; }
.call_hotline_circle { width: 80px; height: 80px; top: 10px; left: 10px; position: absolute; border: 2px solid var(--colorMain); opacity: .5; border-radius: 100%; transform-origin: 50% 50%; transition: all .5s; animation: call-circle-anim 1.2s infinite ease-in-out; }
.call_hotline_circle_fill { width: 50px; height: 50px; top: 25px; left: 25px; position: absolute; opacity: .75; background: var(--colorMain) none; border: 2px solid transparent; border-radius: 100%; transform-origin: 50% 50%; transition: all .5s; animation: call-circle-fill-anim 2.3s infinite ease-in-out; }
.call_hotline_icon { position: absolute; top: 30px; left: 30px; width: 40px; height: 40px; background: var(--colorMain) url(../images/phone-ring.svg) no-repeat center center; background-size: 20px; border: 2px solid transparent; opacity: .7; border-radius: 100%; transform-origin: 50% 50%; animation: call-icon-anim 1s infinite ease-in-out; }
span.number-button { position: absolute; background: var(--colorMain); color: #fff; top: 28px; z-index: -1; left: 28px; padding: 5px 15px 5px 45px; border-radius: 30px; border: 1px solid var(--colorMain); font-size: 16px; font-weight: 700; line-height: 1.2; }
.tong-dai-mobile i { font-size: 10px; display: block; font-weight: normal; text-align: center; }
.logo-wrapper a.logo-text:hover { text-decoration: none; }
.comment-reply-link { font-size: 12px; }

/* ------------------ RESPONSIVE YOUTUBE & OTHERS ------------------ */
.youtube-responsive-container { position:relative; padding-bottom:56.25%; height:0; overflow:hidden; text-align: center; margin-bottom: 10px; }
iframe { max-width: 100%; }
.youtube-responsive-container iframe, .youtube-responsive-container object, .youtube-responsive-container embed { position:absolute; top:0; left:0; width:100%; height:100%; }
.node-detail iframe { margin-left: auto; margin-right: auto; display: block; }
.top-banner .metaslider .flex-control-nav { bottom: 30px; z-index: 99; }
@media(max-width: 1119px) { .top-banner .metaslider .flex-control-nav { bottom: 10px; } .metaslider .flex-control-paging li a { width: 8px; height: 8px; } }
.top-banner .flex-control-paging li a { background: var(--colorMain); }
.top-banner .flex-control-paging li a.flex-active { background: #ccc; }
.content-right .title { font-size: 15px; }
.content-right .block-content { float: left; width: 100%; }
.woocommerce-Input { display: block; width: 100%; height: 34px; padding: 6px 12px; font-size: 14px; line-height: 1.42857143; color: #555; background-color: #fff; border: 1px solid #ccc; border-radius: 4px; box-shadow: inset 0 1px 1px rgba(0,0,0,.075); transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; }
ul.social-buttons-fa { padding: 0px; margin-top: 20px; margin-bottom: 30px; }
ul.social-buttons-fa li { list-style: none; display: inline-block; margin-right: 10px; }
.product_meta .sku_wrapper { display: none; }
.title-tabs-content { color: #000; font-size: 26px; text-transform: uppercase; }
.like-share-facebook { float: right; margin-top: 10px; }
.heading-info .kk-star-ratings { margin-bottom: 0px; }
.fb_iframe_widget_fluid span, iframe.fb_ltr, .fb-comments iframe { width: 100% !important; }
.list .views-row { padding: 15px; }
body.fancybox-iosfix { position: relative; }
.owl-carousel .owl-stage, .owl-carousel.owl-drag .owl-item { -ms-touch-action: pan-y !important; touch-action: pan-y !important; }
.woocommerce-checkout h3 { font-size: 22px; }
.zoom-hover-effect .anh-dai-dien { overflow: hidden; }
@media(min-width: 992px) { .zoom-hover-effect img { transition: transform .7s ease; } .zoom-hover-effect .post-thumbnail:hover img, .zoom-hover-effect .anh-dai-dien:hover img { transform: scale(1.1); } }
.zoom-hover-effect .post-thumbnail { overflow: hidden; border-radius: 16px; border: 1px solid #f2f2f2; }
.main-content-list { padding-bottom: 30px; }

/* ------------------ BANNER SLIDERS ------------------ */
.main-slider .banner-slide .owl-next { background: url(../images/next2.svg) no-repeat 3px center !important; width: 50px; height: 50px; background-size: 40px !important; opacity: 1; position: absolute; top: 42%; right: 10px; text-indent: -9999px; padding: 0px; margin: 0px; }
.main-slider .banner-slide .owl-prev { background: url(../images/prev2.svg) no-repeat 0px center !important; width: 50px; height: 50px; background-size: 40px !important; opacity: 1; position: absolute; top: 42%; left: 10px; text-indent: -9999px; padding: 0px; margin: 0px; }
@media(max-width: 992px) { .main-slider .banner-slide .owl-prev, .main-slider .banner-slide .owl-next { top: 40%; } .visible-sm { display: block; } }
@media(max-width: 767px) {
  .main-slider .banner-slide .owl-next { width: 30px; height: 30px; background-size: 30px !important; background-position: 0px center !important; }
  .main-slider .banner-slide .owl-prev { width: 30px; height: 30px; background-size: 30px !important; background-position: 0px center !important; }
  .hidden-xs { display: none; } .visible-xs { display: block; }
}
.main-slider .owl-theme .owl-dots { position: absolute; width: 100%; text-align: center; bottom: 10px; left: 0px; }
.mb30 { margin-bottom: 30px; }
.heading-info > div { width: 33.333%; float: left; text-align: center; padding-top: 5px; padding-bottom: 5px; }
.heading-info > div:last-child { border-right: none; }
.heading-info .category { border-left: 1px solid #f2f2f2; border-right: 1px solid #f2f2f2; }
.price-product del bdi { font-weight: normal; font-size: 14px; color: #918d8d; text-decoration: line-through; }
.price-product del { color: #918d8d; margin-right: 10px; text-decoration: none; }
.price-product bdi { font-size: 26px; font-weight: 700; color: #02AA54; }
@media(max-width: 992px) { .price-product bdi { font-size: 16px; } }
.price-product ins { text-decoration: none; }
.block-san-pham-nhung .price-product bdi { font-size: 15px; }
.product-excerpt, .news-excerpt { text-overflow: clip; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; margin-bottom: 10px; font-size: 15px; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: #333 !important; }
.woocommerce div.product p.price { max-width: 350px; position: relative; }
.entry-summary .save-percent { color: #F42E0B; background: #FEEAE7; border-radius: 8px; font-size: 14px; padding: 3px 10px; vertical-align: middle; display: inline-block; margin-left: 5px; display: none; }
.cart button span { display: block; font-size: 14px; font-weight: normal; margin-top: 5px; }
.block-san-pham-noi-bat { margin-bottom: 20px !important; }
.woocommerce .col-1 { width: 100%; }
.title a.edit { color: #265c89; text-decoration: underline; }
.input-text { display: block; width: 100%; padding: .375rem .75rem; font-size: 1rem; font-weight: 400; line-height: 1.5; color: #212529; background-color: #fff; background-clip: padding-box; border: 1px solid #ced4da; appearance: none; border-radius: .375rem; transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; }
.qib-button-wrapper button.qib-button { display: inline-block !important; }
@media(max-width: 767px) {
  .woocommerce-checkout-review-order-table th.product-name { width: 60%; }
  .woocommerce-checkout-review-order-table th.product-total { width: 40%; }
  table .coupon label { display: none; }
  body .shop_table  .qib-button-wrapper { float: none !important; margin-top: 0px !important; margin-bottom: 0px !important; text-align: right !important; }
  .woocommerce table.shop_table_responsive tr td.product-quantity::before, .woocommerce-page table.shop_table_responsive tr td.product-quantity::before { margin-top: 2px; }
  td.product-quantity .qib-button-wrapper div.quantity.wqpmb_quantity { height: 34px; }
}

/* ------------------ THAM VẤN Y KHOA & TÁC GIẢ ------------------ */
.tham_van_y_khoa_btn { background: url(../images/minus.svg) no-repeat right center #e7f4ff; padding: 10px; color: #000; font-weight: bold; background-size: 20px; }
.tham_van_y_khoa_btn.collapsed { background: url(../images/plus.svg) no-repeat right center #e7f4ff; background-size: 20px; }
#tham_van_y_khoa { padding: 15px; background: #f2f2f2; }
.box-tham-van-text { margin-bottom: 20px; margin-top: 20px; }
.node-detail .wpcf7 { background: var(--colorMain); color: #fff; padding: 15px; border-radius: 8px; margin-top: 15px; margin-bottom: 15px; }
.node-detail textarea { max-height: 150px; }
.node-detail .wpcf7 .btn-common { background: #F49715; color: #fff; }
@media(min-width: 768px) {
  .node-detail span.wpcf7-form-control-wrap[data-name="name1"] { float: left; width: 50%; padding-right: 10px; }
  .node-detail span.wpcf7-form-control-wrap[data-name="phone1"] { float: left; width: 50%; padding-left: 10px; }
}
.box-tac-gia { background: #ececec6e; border: 1px solid #d8d8d852; border-radius: 4px; padding: 10px; float: left; width: 100%; margin-bottom: 30px; }
.box-tac-gia .avatar { float: left; width: 150px; margin-right: 20px; }
.content-author .p-author { font-weight: bold; font-size: 16px; }
.box-tac-gia-detail .avatar { width: 200px; }
.excerpt-desc-author { text-align: justify; }
.nguyen-tac-xuat-ban { margin-top: 10px; margin-bottom: 10px; }
@media(max-width: 767px) {
  .box-tac-gia-detail .avatar { width: 100%; margin-right: 0px; margin-bottom: 10px; }
  .box-tac-gia-detail .avatar img { width: 100%; }
}
.home .footer-top-border { padding-top: 30px; }
.single .node-detail { line-height: 1.8; text-align: justify; }


/* =========================================================
   GINIC TWEAKS - BẢN HỢP NHẤT (ĐÃ FIX Ô TÌM KIẾM CHỮ NHẬT & XÓA TRÙNG LẶP)
========================================================= */

/* ------------------ 1) HEADER & HOTLINE ------------------ */
.top-header, .header-top, .site-header, .header, .main-header, .header-wrap {
  background: var(--ginic-offwhite) !important;
  background-image: none !important; border: none !important;
}
.header-phone, .hotline, .hotline-box, .phone-box, .call-now, .header-contact, 
.header-contact .phone, .header-phone strong, .hotline strong, .phone-box strong, .call-now strong {
  color: var(--ginic-green) !important;
}
.header-phone i, .hotline i, .hotline-box i, .phone-box i, .call-now i, .header-contact i, 
.header-phone .fa, .hotline .fa, .hotline-box .fa, .phone-box .fa, .call-now .fa, .header-contact .fa, 
.header-phone svg, .hotline svg, .hotline-box svg, .phone-box svg, .call-now svg, .header-contact svg {
  color: var(--ginic-green) !important; fill: currentColor !important; stroke: currentColor !important;
}
.header-cart a, .mini-cart a, .shopping-cart a, .cart-icon a, .cart-contents {
  border: 1px solid rgba(46,158,77,.28) !important; color: var(--ginic-green) !important; background: #fff !important;
}
.header-cart .count, .mini-cart .count, .cart-contents .count {
  background: var(--ginic-green) !important; color: #fff !important;
}

/* ------------------ 2) SEARCH BOX (Ô CHỮ NHẬT) ------------------ */
.search-form, .header-search, .search-box, .dgwt-wcas-search-wrapp, .aws-container {
  position: relative !important;
  width: 100% !important;
  display: block !important;
}

.search-form input[type="search"], .search-form input[type="text"],
.header-search input[type="search"], .header-search input[type="text"],
.search-box input[type="search"], .search-box input[type="text"],
.dgwt-wcas-search-input, .aws-search-field {
  background: #fff !important;
  color: var(--ginic-text) !important;
  border: 1px solid var(--ginic-border) !important;
  border-radius: 4px !important; /* KHUNG CHỮ NHẬT bo góc 4px rất nhẹ để an toàn và đẹp */
  padding-right: 44px !important;
  width: 100% !important;
  height: 40px !important; /* Cố định chiều cao */
  line-height: 40px !important;
  box-sizing: border-box !important;
  margin: 0 !important;
}

.search-form button, .search-submit, .header-search button,
.search-box button, .dgwt-wcas-search-submit, .aws-search-btn {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  height: 100% !important; /* Cân bằng chiều cao với ô nhập */
  width: 44px !important;
  border: none !important;
  border-radius: 0 4px 4px 0 !important; /* Khớp với bo góc chữ nhật của ô input */
  background: var(--ginic-green) !important;
  color: transparent !important;
  font-size: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  z-index: 10 !important;
  transform: none !important;
}
.search-form button:hover, .search-submit:hover, .header-search button:hover,
.search-box button:hover, .dgwt-wcas-search-submit:hover, .aws-search-btn:hover {
  background: var(--ginic-green-dark) !important;
}

/* Ẩn icon cũ */
.search-form button i, .search-form button svg, .search-submit i, .search-submit svg, 
.header-search button i, .header-search button svg, .search-box button i, .search-box button svg, 
.dgwt-wcas-search-submit i, .dgwt-wcas-search-submit svg, .aws-search-btn i, .aws-search-btn svg, 
.search-form button:before, .search-submit:before, .header-search button:before, .search-box button:before, 
.dgwt-wcas-search-submit:before, .aws-search-btn:before {
  display: none !important; content: none !important;
}

/* Kính lúp thủ công căn giữa */
.search-form button:after, .search-submit:after, .header-search button:after,
.search-box button:after, .dgwt-wcas-search-submit:after, .aws-search-btn:after {
  content: "" !important; position: absolute !important;
  left: 14px !important; top: 12px !important;
  width: 12px !important; height: 12px !important;
  border: 2px solid #fff !important; border-radius: 50% !important; background: transparent !important; box-sizing: border-box !important;
}
.search-form button span, .search-submit span, .header-search button span,
.search-box button span, .dgwt-wcas-search-submit span, .aws-search-btn span,
.search-form button:empty:before, .search-submit:empty:before,
.header-search button:empty:before, .search-box button:empty:before,
.dgwt-wcas-search-submit:empty:before, .aws-search-btn:empty:before {
  content: "" !important; display: block !important; position: absolute !important;
  width: 7px !important; height: 2px !important; background: #fff !important;
  right: 12px !important; bottom: 12px !important; transform: rotate(45deg) !important; border-radius: 2px !important;
}

/* ------------------ 3) MENU CHÍNH (PC) & ĐỔI MÀU ------------------ */
.navigator, #site-navigation, .nav-primary, .main-navigation, .menu-wrap, #mega-menu-wrap-menu-chinh {
  background: var(--ginic-red) !important; background-image: none !important; border: none !important; box-shadow: none !important;
}
#mega-menu-wrap-menu-chinh #mega-menu-menu-chinh, .horizontal-menu {
  display: flex !important; align-items: center !important; justify-content: center !important; flex-wrap: nowrap !important; white-space: nowrap !important; width: 100% !important;
}
#mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li, .horizontal-menu > li {
  float: none !important; display: inline-flex !important; align-items: center !important; flex: 0 0 auto !important; position: relative !important;
}
#site-navigation a, .main-navigation a, .nav-primary a, .menu-wrap a, .horizontal-menu > li > a, #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li.mega-menu-item > a.mega-menu-link {
  color: #fff !important; background: transparent !important; padding: 14px 18px !important; line-height: 1.2 !important; border-radius: 0 !important; text-decoration: none !important;
}
#site-navigation a:hover, .main-navigation a:hover, .nav-primary a:hover, .menu-wrap a:hover, .horizontal-menu > li > a:hover, #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li.mega-menu-item > a.mega-menu-link:hover {
  color: #fff !important; background: rgba(255,255,255,.06) !important;
}
#site-navigation .current-menu-item > a, #site-navigation .current_page_item > a, .main-navigation .current-menu-item > a, .main-navigation .current_page_item > a, .horizontal-menu > li.current-menu-item > a, .horizontal-menu > li.current_page_item > a, #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li.mega-current-menu-item > a.mega-menu-link, #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li.mega-current-page-item > a.mega-menu-link, #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li.mega-current-menu-ancestor > a.mega-menu-link {
  background: var(--ginic-red) !important; border: none !important; box-shadow: none !important; border-radius: 0 !important; color: #fff !important;
}
#site-navigation .current-menu-item > a:before, #site-navigation .current-menu-item > a:after, #site-navigation .current_page_item > a:before, #site-navigation .current_page_item > a:after, .main-navigation .current-menu-item > a:before, .main-navigation .current-menu-item > a:after, .main-navigation .current_page_item > a:before, .main-navigation .current_page_item > a:after, .horizontal-menu > li.current-menu-item > a:before, .horizontal-menu > li.current-menu-item > a:after, .horizontal-menu > li.current_page_item > a:before, .horizontal-menu > li.current_page_item > a:after, #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li.mega-current-menu-item > a.mega-menu-link:before, #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li.mega-current-menu-item > a.mega-menu-link:after, #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li.mega-current-page-item > a.mega-menu-link:before, #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li.mega-current-page-item > a.mega-menu-link:after { display: none !important; content: none !important; }

/* Menu Con (Cấp 2, 3...) (PC) */
@media (min-width: 993px) {
  #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li.mega-menu-item > ul.mega-sub-menu, .horizontal-menu > li > ul.sub-menu {
    position: absolute !important; top: 100% !important; left: 0 !important; z-index: 9999 !important; margin-top: 0 !important;
  }
}
/* Màu chữ mặc định cho tất cả link menu con (Ghi đen) */
#mega-menu-wrap-menu-chinh #mega-menu-menu-chinh ul.mega-sub-menu li a.mega-menu-link,
.horizontal-menu ul.sub-menu li a, .horizontal-menu li ul li a {
  background: #f5f5f5 !important; color: #242222 !important; padding: 12px 15px !important;
  display: block !important; text-transform: none !important; border-bottom: 1px solid #e0e0e0 !important; transition: all 0.3s ease !important;
}
/* Dấu chấm bullet */
#mega-menu-wrap-menu-chinh #mega-menu-menu-chinh ul.mega-sub-menu li a.mega-menu-link::before,
.horizontal-menu ul.sub-menu li a::before, .horizontal-menu li ul li a::before {
  color: #242222 !important;
}
/* Hiệu ứng hover cho menu con (Nền đỏ, chữ trắng) */
#mega-menu-wrap-menu-chinh #mega-menu-menu-chinh ul.mega-sub-menu li a.mega-menu-link:hover,
.horizontal-menu ul.sub-menu li a:hover, .horizontal-menu li ul li a:hover {
  background: #8F1D22 !important; color: #ffffff !important;
}
#mega-menu-wrap-menu-chinh #mega-menu-menu-chinh ul.mega-sub-menu li a.mega-menu-link:hover::before,
.horizontal-menu ul.sub-menu li a:hover::before, .horizontal-menu li ul li a:hover::before {
  color: #ffffff !important;
}

/* ------------------ 4) MOBILE & TABLET LAYOUT TỔNG HỢP ------------------ */
@media (max-width: 992px) {
  /* Header chia tỷ lệ: Logo bên trái, Giỏ hàng bên phải */
  .header-top, .header-middle, .header-main { display: flex !important; flex-wrap: wrap !important; align-items: center !important; justify-content: space-between !important; }
  .logo-wrapper { flex: 0 0 60% !important; max-width: 60% !important; }
  .header-cart, .mini-cart { flex: 0 0 20% !important; max-width: 20% !important; display: flex !important; justify-content: flex-end !important; }
  
  /* Thanh Menu Mobile (Xanh lá) */
  .menu-mobile-wrapper, .site-navigation, #site-navigation, .header-bottom {
    background: #00B14F !important; display: flex !important; align-items: center !important; width: 100% !important; padding: 5px 15px !important; box-sizing: border-box !important;
  }
  .menu-mobile-btn, .toggle-menu, .mobile-menu-icon { flex: 0 0 15% !important; }
  .mobile-search-box, .header-search { flex: 0 0 85% !important; margin: 0 !important; }

  /* Gỡ Flexbox, đưa 8 menu chính về dạng sổ dọc xếp tầng */
  #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh, .horizontal-menu {
    display: block !important; white-space: normal !important; width: 100% !important; max-height: 80vh !important; overflow-y: auto !important; background: #ffffff !important;
  }
  #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li.mega-menu-item, .horizontal-menu > li {
    display: block !important; width: 100% !important; float: none !important; border-bottom: 1px solid #f0f0f0 !important; text-align: left !important;
  }
  
  /* Chữ menu chính Mobile (Ghi đen) */
  #site-navigation a, .main-navigation a, .horizontal-menu > li > a, #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li.mega-menu-item > a.mega-menu-link {
    color: #242222 !important; display: block !important; padding: 16px 20px !important; font-weight: bold !important; background: transparent !important;
  }
  #site-navigation a:hover, #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li.mega-menu-item > a.mega-menu-link:hover, #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh > li.mega-menu-item.mega-toggle-on > a.mega-menu-link {
    color: #8F1D22 !important;
  }

  /* Accordion (Menu con sổ dọc đẩy web xuống) */
  #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh ul.mega-sub-menu, .horizontal-menu ul.sub-menu {
    display: none !important; position: static !important; width: 100% !important; background: #f9f9f9 !important; box-shadow: none !important; padding-left: 0 !important; margin: 0 !important;
  }
  #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh li.mega-toggle-on > ul.mega-sub-menu, .horizontal-menu li.active > ul.sub-menu {
    display: block !important;
  }
  
  /* Thiết kế link menu con trên mobile */
  #mega-menu-wrap-menu-chinh #mega-menu-menu-chinh ul.mega-sub-menu li a.mega-menu-link, .horizontal-menu ul.sub-menu li a {
    padding: 12px 20px 12px 35px !important; color: #242222 !important; border-bottom: 1px dashed #e5e5e5 !important; display: block !important; font-weight: normal !important;
  }
}

/* ------------------ 5) BLOCK CAM KẾT ------------------ */
.block-cam-ket { background: #2E9E4D !important; background-color: #2E9E4D !important; background-image: none !important; }
.block-cam-ket, .block-cam-ket h1, .block-cam-ket h2, .block-cam-ket h3, .block-cam-ket h4, .block-cam-ket h5, .block-cam-ket h6, .block-cam-ket p, .block-cam-ket li, .block-cam-ket span, .block-cam-ket a, .block-cam-ket strong, .block-cam-ket i { color: #FFFFFF !important; }

/* ------------------ 6) FOOTER (HỢP NHẤT) ------------------ */
.footer-wrapper, .footer-top { background: #F6F7F8 !important; background-image: none !important; }
.footer-wrapper, .footer-wrapper p, .footer-wrapper li, .footer-wrapper span, .footer-wrapper div, .footer-wrapper strong, .footer-wrapper b, .footer-top, .footer-top p, .footer-top li, .footer-top span, .footer-top div, .footer-top strong, .footer-top b { color: #454444 !important; }
.footer-wrapper .ginic-footer-title, .footer-top .ginic-footer-title { color: #2E9E4D !important; font-weight: 700 !important; }
.footer-wrapper .block-footer-info .widget_media_image, .footer-top .block-footer-info .widget_media_image { float: left !important; width: 90px !important; margin: 0 18px 12px 0 !important; }
.footer-wrapper .block-footer-info .widget_media_image img, .footer-top .block-footer-info .widget_media_image img, .footer-wrapper .block-footer-info img, .footer-top .block-footer-info img { width: 90px !important; max-width: 90px !important; height: auto !important; display: block !important; }
.footer-wrapper .block-footer-info .form-dang-ky-nhan-tin, .footer-top .block-footer-info .form-dang-ky-nhan-tin { display: block !important; overflow: hidden !important; margin: 0 0 16px 0 !important; padding-top: 4px !important; }
.footer-wrapper .block-footer-info .form-dang-ky-nhan-tin .ginic-footer-title, .footer-top .block-footer-info .form-dang-ky-nhan-tin .ginic-footer-title { margin: 0 0 12px 0 !important; line-height: 1.35 !important; }
.footer-wrapper .form-dang-ky-nhan-tin .wpcf7, .footer-top .form-dang-ky-nhan-tin .wpcf7, .footer-wrapper .form-dang-ky-nhan-tin form, .footer-top .form-dang-ky-nhan-tin form { margin: 0 !important; width: 100% !important; }
.footer-wrapper .form-dang-ky-nhan-tin .wpcf7-form, .footer-top .form-dang-ky-nhan-tin .wpcf7-form { display: flex !important; align-items: center !important; gap: 10px !important; flex-wrap: nowrap !important; }
.footer-wrapper .block-footer-info .widget_text, .footer-wrapper .block-footer-info .textwidget, .footer-top .block-footer-info .widget_text, .footer-top .block-footer-info .textwidget { clear: both !important; }
.footer-wrapper .block-footer-info a, .footer-top .block-footer-info a, .footer-wrapper .block-menu .block-content a, .footer-top .block-menu .block-content a, .footer-wrapper .block-ve-chung-toi .block-content a, .footer-top .block-ve-chung-toi .block-content a { color: #454444 !important; opacity: 1 !important; }
.footer-wrapper .block-footer-info a:hover, .footer-top .block-footer-info a:hover, .footer-wrapper .block-menu .block-content a:hover, .footer-top .block-menu .block-content a:hover, .footer-wrapper .block-ve-chung-toi .block-content a:hover, .footer-top .block-ve-chung-toi .block-content a:hover { color: #454444 !important; text-decoration: underline !important; }
.footer-wrapper .block-footer-info i, .footer-wrapper .block-footer-info .fa, .footer-wrapper .block-footer-info .fas, .footer-wrapper .block-footer-info .far, .footer-wrapper .block-footer-info .fab, .footer-top .block-footer-info i, .footer-top .block-footer-info .fa, .footer-top .block-footer-info .fas, .footer-top .block-footer-info .far, .footer-top .block-footer-info .fab, .footer-wrapper .block-footer-info li:before, .footer-wrapper .block-footer-info p:before, .footer-top .block-footer-info li:before, .footer-top .block-footer-info p:before { color: #454444 !important; opacity: 1 !important; }
.footer-wrapper .block-footer-info svg, .footer-wrapper .block-footer-info svg *, .footer-top .block-footer-info svg, .footer-top .block-footer-info svg * { fill: #454444 !important; stroke: #454444 !important; opacity: 1 !important; }

/* Input email Footer (vuông bo nhẹ 4px đồng bộ) */
.footer-wrapper .form-dang-ky-nhan-tin input[type="email"], .footer-wrapper .form-dang-ky-nhan-tin input[type="text"], .footer-top .form-dang-ky-nhan-tin input[type="email"], .footer-top .form-dang-ky-nhan-tin input[type="text"] { flex: 1 1 auto !important; min-width: 0 !important; height: 42px !important; line-height: 42px !important; padding: 0 16px !important; margin: 0 !important; background: #FFFFFF !important; color: #454444 !important; border: 1px solid #D9DEE5 !important; border-radius: 4px !important; box-sizing: border-box !important; }
.footer-wrapper input::placeholder, .footer-top input::placeholder { color: #6B7280 !important; opacity: 1 !important; }
.footer-wrapper .form-dang-ky-nhan-tin input[type="submit"], .footer-wrapper .form-dang-ky-nhan-tin button, .footer-top .form-dang-ky-nhan-tin input[type="submit"], .footer-top .form-dang-ky-nhan-tin button { flex: 0 0 auto !important; width: auto !important; min-width: 110px !important; height: 42px !important; line-height: 40px !important; padding: 0 18px !important; margin: 0 !important; border: 1px solid #8F1D22 !important; border-radius: 4px !important; background: #8F1D22 !important; color: #FFFFFF !important; font-weight: 700 !important; text-align: center !important; box-sizing: border-box !important; }
.footer-wrapper .form-dang-ky-nhan-tin input[type="submit"]:hover, .footer-wrapper .form-dang-ky-nhan-tin button:hover, .footer-top .form-dang-ky-nhan-tin input[type="submit"]:hover, .footer-top .form-dang-ky-nhan-tin button:hover { background: #74161A !important; border-color: #74161A !important; color: #FFFFFF !important; }

/* Social Icons Footer */
.footer-wrapper .social a, .footer-wrapper .social-icon a, .footer-top .social a, .footer-top .social-icon a, .block-social-network a { width: 40px !important; height: 40px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; border-radius: 999px !important; background: #8F1D22 !important; border: 1px solid #8F1D22 !important; color: #FFFFFF !important; }
.footer-wrapper .social a i, .footer-wrapper .social a .fa, .footer-wrapper .social a .fas, .footer-wrapper .social a .far, .footer-wrapper .social a .fab, .footer-wrapper .social-icon a i, .footer-wrapper .social-icon a .fa, .footer-wrapper .social-icon a .fas, .footer-wrapper .social-icon a .far, .footer-wrapper .social-icon a .fab, .footer-top .social a i, .footer-top .social a .fa, .footer-top .social a .fas, .footer-top .social a .far, .footer-top .social a .fab, .footer-top .social-icon a i, .footer-top .social-icon a .fa, .footer-top .social-icon a .fas, .footer-top .social-icon a .far, .footer-top .social-icon a .fab, .block-social-network a i, .block-social-network a .fa, .block-social-network a .fas, .block-social-network a .far, .block-social-network a .fab { color: #FFFFFF !important; opacity: 1 !important; }
.footer-wrapper .social a svg, .footer-wrapper .social a svg *, .footer-wrapper .social-icon a svg, .footer-wrapper .social-icon a svg *, .footer-top .social a svg, .footer-top .social a svg *, .footer-top .social-icon a svg, .footer-top .social-icon a svg *, .block-social-network a svg, .block-social-network a svg * { fill: #FFFFFF !important; stroke: #FFFFFF !important; opacity: 1 !important; }
.footer-wrapper .social a:hover, .footer-wrapper .social-icon a:hover, .footer-top .social a:hover, .footer-top .social-icon a:hover, .block-social-network a:hover { background: #74161A !important; border-color: #74161A !important; color: #FFFFFF !important; }

/* Footer Bottom */
.footer-bottom-1, .footer-bottom-1 p, .footer-bottom-1 span, .footer-bottom-1 div, .footer-bottom-1 a { color: #454444 !important; }
.footer-bottom, .site-info, .copyright, .copyright-wrap { background: #5D1115 !important; }
.footer-bottom, .footer-bottom p, .footer-bottom span, .footer-bottom div, .footer-bottom strong, .footer-bottom b, .footer-bottom li, .footer-bottom a, .footer-bottom .textwidget, .footer-bottom .container, .site-info, .site-info *, .copyright, .copyright *, .copyright-wrap, .copyright-wrap * { color: #FFFFFF !important; opacity: 1 !important; }
.footer-bottom a:hover, .site-info a:hover, .copyright a:hover, .copyright-wrap a:hover { color: #FFFFFF !important; }

@media(max-width: 1024px) {
  .footer-wrapper .block-footer-info .widget_media_image, .footer-top .block-footer-info .widget_media_image { width: 90px !important; margin-right: 14px !important; }
  .footer-wrapper .block-footer-info .widget_media_image img, .footer-top .block-footer-info .widget_media_image img, .footer-wrapper .block-footer-info img, .footer-top .block-footer-info img { width: 90px !important; max-width: 90px !important; }
}
@media (max-width: 767px) {
  .footer-wrapper .block-footer-info .widget_media_image, .footer-top .block-footer-info .widget_media_image { float: none !important; margin: 0 0 14px 0 !important; }
  .footer-wrapper .block-footer-info .form-dang-ky-nhan-tin, .footer-top .block-footer-info .form-dang-ky-nhan-tin { overflow: visible !important; margin-top: 0 !important; }
  .footer-wrapper .form-dang-ky-nhan-tin .wpcf7-form, .footer-top .form-dang-ky-nhan-tin .wpcf7-form { flex-wrap: wrap !important; }
  .footer-wrapper .form-dang-ky-nhan-tin input[type="email"], .footer-wrapper .form-dang-ky-nhan-tin input[type="text"], .footer-top .form-dang-ky-nhan-tin input[type="email"], .footer-top .form-dang-ky-nhan-tin input[type="text"] { width: 100% !important; flex: 0 0 100% !important; }
  .footer-wrapper .form-dang-ky-nhan-tin input[type="submit"], .footer-wrapper .form-dang-ky-nhan-tin button, .footer-top .form-dang-ky-nhan-tin input[type="submit"], .footer-top .form-dang-ky-nhan-tin button { min-width: 120px !important; }
}
/* =========================================================
   BỔ SUNG: SỬA MÀU SẮC CÁC VỊ TRÍ TRÊN ẢNH (BREADCRUMBS, POST TITLE, SIDEBAR)
   Đảm bảo không lặp lại các bộ chọn và quy tắc CSS
========================================================= */

/* Nhóm 1: Các tiêu đề chính (Khu vực 2: Entry Title & Khu vực 3, 4: Sidebar Titles) */
/* Cập nhật màu cho Post/Product Title và Sidebar Widget Titles cùng lúc */
.entry-title,
.sidebar .widget-title {
    color: #8F1D22 !important;
}

/* Nhóm 2: Các liên kết danh sách (Khu vực 1: Breadcrumbs & Khu vực 4: Sidebar Categories) */
/* Cập nhật màu cho các liên kết trong Breadcrumbs và Sidebar Category Links cùng lúc */
.woocommerce-breadcrumb a,
.breadcrumb a,
.sidebar .widget_categories a,
.sidebar .widget_nav_menu a {
    color: #8F1D22 !important;
}
/* Đồng bộ màu hover cho tất cả các liên kết này */
.woocommerce-breadcrumb a:hover,
.breadcrumb a:hover,
.sidebar .widget_categories a:hover,
.sidebar .widget_nav_menu a:hover {
    color: #8F1D22 !important;
}

/* Khu vực 3: Sidebar Consultation Form (Form tư vấn - Viền và Nền tiêu đề form) */
/* (Cần class cụ thể cho widget form, tôi sử dụng bộ chọn rộng hơn dựa trên vị trí) */
.sidebar .widget_consultation_form,
.wpcf7-form-wrapper {
    border-color: #8F1D22 !important; /* Viền chính của form */
}
/* Giả định có header với nền xanh đậm đằng sau tiêu đề "Đăng ký tư vấn" */
.sidebar .widget_consultation_form .widget-header {
    background-color: #8F1D22 !important;
}
/* =========================================================
   GINIC ADDITION PATCH - BULLETS & SUBMIT BUTTON
   Mục tiêu:
   - Đổi màu dấu chấm (bullet) trong menu/sidebar về đỏ đô #8F1D22
   - Đổi màu nền nút Gửi đăng ký khi di chuột qua thành xanh lá #2E9E4D
========================================================= */

/* 1) Đổi màu Dấu Bullet (pseudo-element content) về đỏ đô #8F1D22 */
/* Target specific bullets mentioned in previous consolidations and general list items */
#mega-menu-wrap-menu-chinh #mega-menu-menu-chinh ul.mega-sub-menu li a.mega-menu-link::before,
.horizontal-menu ul.sub-menu li a::before,
.horizontal-menu li ul li a::before,
.sidebar ul li::before, /* General theme lists in sidebar usually use ::before bullets */
.sidebar .widget ul li::before {
    color: #8F1D22 !important;
}

/* 2) Xử lý Nút "Gửi đăng ký" khi HOVER sang màu xanh lá #2E9E4D */
/* Ghi chú về kỹ thuật: CSS tiêu chuẩn không hỗ trợ đổi màu con trỏ chuột (pointer color).
   Dựa trên yêu cầu, tôi áp dụng đổi màu nền nút khi di chuột qua sang màu xanh lá thương hiệu.
   Áp dụng cho nút "Gửi đăng ký" có nền cam trong ảnh. */

/* Selector chung cho nút submit trong Contact Form 7 và các nút chuẩn của theme */
input[type="submit"]:hover,
button[type="submit"]:hover,
.wpcf7-submit:hover,
.sidebar .widget input[type="submit"]:hover,
.comment-form .submit:hover {
    background-color: #2E9E4D !important; /* Xanh lá thương hiệu Ginic */
    border-color: #2E9E4D !important; /* Cập nhật viền đồng màu xanh */
    color: #ffffff !important; /* Giữ màu chữ trắng */
}
/* =========================================================
   FIX TRIỆT ĐỂ: LỖI LẶP 2 Ô TÌM KIẾM TRÊN MỌI GIAO DIỆN
========================================================= */

/* 1. TRÊN MOBILE & TABLET (Dưới 992px)
   -> Ẩn ô tìm kiếm thừa ở khu vực Logo (top-header), giữ lại ô trong thanh Menu */
@media (max-width: 992px) {
    .top-header .search-form,
    .top-header .header-search,
    .top-header .search-box,
    .top-header .dgwt-wcas-search-wrapp,
    .header-main .search-form,
    .header-main .header-search {
        display: none !important;
    }
}

/* 2. TRÊN MÁY TÍNH PC (Từ 993px trở lên)
   -> Ẩn ô tìm kiếm thừa trong thanh Menu, giữ lại ô ở khu vực Logo */
@media (min-width: 993px) {
    .navigator .search-form,
    .navigator .header-search,
    .navigator .search-box,
    .navigator .dgwt-wcas-search-wrapp,
    .header-bottom .search-form,
    .header-bottom .header-search,
    .menu-mobile-wrapper .search-form,
    #site-navigation .search-form {
        display: none !important;
    }
    
    /* Thu gọn độ rộng ô tìm kiếm chính trên PC để không bị rớt dòng */
    .search-form, 
    .header-search, 
    .search-box {
        max-width: 450px !important;
        margin: 0 auto !important;
    }
}
