
/* site-theme */
:root {--color: #2A724A;--swiper-theme-color: #2A724A; --swiper-navigation-color: #2A724A;}
		html { scrollbar-width: thin; scrollbar-color: #2A724A #e8f2ec; }
		::-webkit-scrollbar { width: 8px; height: 8px; }
		::-webkit-scrollbar-track { background: #e8f2ec; }
		::-webkit-scrollbar-thumb { background: #2A724A; border-radius: 8px; }
		::-webkit-scrollbar-thumb:hover { background: #1d5235; }

		.data-product-slide .swiper-wrapper,
		.flashsale-swiper .swiper-wrapper {height: auto; align-items: stretch;}
		.p-item.swiper-slide {height: auto !important; display: flex; flex-direction: column;}
		.p-item.swiper-slide .p-text {flex: 1 1 auto; display: flex; flex-direction: column;}
		.p-item.swiper-slide .p-btn-group {margin-top: auto;}
		.p-item .p-discount{background:#d61706 !important;color:#fff !important;border-radius:3px}
		.p-out-of-stock{position:absolute;top:0;right:0;z-index:999;background:#d61706;color:#fff;font-size:14px;font-weight:700;line-height:1.3;padding:6px 14px;border-radius:0 15px 0 10px;white-space:nowrap}
		.p-item{position:relative}

.icon-background-canvas { enable-background: new 0 0 512 512; }


/* reset */
body {

  font-family: sans-serif;

  font-size: 16px;

  line-height: 1.4;

  font-weight: 400;

  color: #333;

  background-color: #fff;

  margin: 0;

  padding: 0

}



h1, h2, h3, h4, h5, h6 {

  margin: 0

}



ol, ul, menu {

  list-style: none;

  padding: 0;

  margin: 0

}



table {

  border-collapse: collapse;

  border-spacing: 0;

  width: 100%

}



a {

  text-decoration: none;

  color: #333

}
article a{
  color: #007aff;
}


b, strong {

  font-weight: 700

}



em, i {

  font-style: italic

}



* {

  -webkit-box-sizing: border-box;

  -moz-box-sizing: border-box;

  box-sizing: border-box

}



:focus {

  outline: 0

}



p {

  margin: 0 0 10px

}



img, input[type=img] {

  max-width: 100%

}



.row {

  margin: 0 -10px;

  position: relative

}



.col {

  width: 100%;

  padding: 0 10px;

  float: left;

  box-sizing: border-box

}



.col-2 {

  width: 16.66%

}



.col-3 {

  width: 25%

}



.col-4 {

  width: 33.33%

}



.col-5 {

  width: 41.66%

}



.col-6 {

  width: 50%

}



.col-7 {

  width: 58.33%

}



.col-8 {

  width: 66.33%

}



.col-9 {

  width: 75%

}



.col-10 {

  width: 83.33%

}



.col-20 {

  width: 20%

}



.clear:after, .row:after {

  content: ".";

  display: block;

  height: 0;

  clear: both;

  visibility: hidden

}



.left {

  float: left

}



.right {

  float: right

}



.center {

  text-align: center

}



.relative {

  position: relative

}



.absolute {

  position: absolute

}



.clear, .clr {

  clear: both;

  float: none

}



.mobile, .none {

  display: none

}



.clear:after, .clear:before, .clr:after, .clr:before {

  content: " ";

  display: table

}

/* desktop */
body * {

  /* font-family: 'IBM Plex Sans', sans-serif; */

  font-family: 'Roboto', sans-serif;

}
img
{
  max-width: 100%;
  height: auto;
}
.product-description img,.articleDetail img
{
  width: auto;
  height: auto;
  margin: auto; 
  display: list-item;
}
input{

  font-size: 16px

}

.container {

  max-width: 1200px;

  width: 100%;

  position: relative;

  margin: 0 auto;

}

a:hover {

  color: var(--color);

}

.section-heading{

  float: left;

  width: 100%;

  margin: 20px 0 10px;

  border-bottom: 2px solid var(--color);

  position: relative;

  font-size: 22px;

}

.section-heading span{

  float: left;

  padding: 5px 15px;

  background: var(--color);

  color: #fff;

  text-transform: uppercase;

  font-weight: 500;

  position: relative;

}

.section-heading span::after {

  content: '';

  border-right: 40px solid transparent;

  border-bottom: 40px solid var(--color);

  position: absolute;

  left: 100%;

  height: 100%;

  bottom: 0;

}

.product-list {

  margin: 10px 0;

 

}

.product-list-item {

  width: 100%;

  box-shadow: 0 0 3px rgb(0 0 0 / 30%);

}

.product-list-item a{

  padding: 10px;

  display: flex;

}

.product-list-item a img{

  aspect-ratio: 1 / 1;

  object-fit: contain;

}

.product-list-item h3{

  display: -webkit-box;

  -webkit-line-clamp: 2;

  -webkit-box-orient: vertical;

  overflow: hidden;

  text-overflow: ellipsis;

  font-size: 14px;

  margin: 0 10px;

  line-height: 20px;

  height: 40px;

  font-weight: 500;

}

.product-list-item .price{

  margin: 10px;

  color: #e00;

  display: flex;

  align-items: center;

  gap: 10px;

}

.product-list-item .price del{

  font-size: 14px;

  color: #777;

}

.blog-list{

  display: flex;

  flex-wrap: wrap;

  gap: 15px;

  margin: 15px 0;

}

.blog-item {

  width: calc(100%/3 - 10px);

  -webkit-box-shadow: 0px 0px 5px rgb(0 0 0 / 30%);

  box-shadow: 0px 0px 5px rgb(0 0 0 / 30%);

  background: #fff;

}

.blog-item img{

  aspect-ratio: 16 / 9;

  object-fit: cover;

  width: 100%;

}

.blog-item h2{

  display: -webkit-box;

  -webkit-line-clamp: 2;

  -webkit-box-orient: vertical;

  overflow: hidden;

  text-overflow: ellipsis;

  font-size: 18px;

  font-weight: 500;

  margin: 10px;

}

.pagination{
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  margin: 28px 0 32px;
  gap: 6px;
  list-style: none;
  padding: 0;
}
.pagination li {
  margin: 0;
}
.pagination a,
.pagination span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 42px;
  padding: 0 14px;
  border-radius: 12px;
  font-size: 15px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  text-decoration: none;
  transition: all .25s cubic-bezier(.32,.72,0,1);
}
.pagination a {
  color: #374151;
  background: #f3f4f6;
  border: 1px solid #e5e7eb;
}
.pagination a:hover {
  color: var(--color, #2A724A);
  background: #ecfdf5;
  border-color: var(--color, #2A724A);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(42, 114, 74, .15);
}
.pagination a:active {
  transform: translateY(0);
}
.pagination span {
  color: #fff;
  background: var(--color, #2A724A);
  border: 1px solid var(--color, #2A724A);
  box-shadow: 0 4px 14px rgba(42, 114, 74, .25);
  pointer-events: none;
}

/* HEADER */

header {

  background: #fff;

  position: sticky;

  top: 0;

  z-index: 99999;

}

header #logo{

  display: flex;

  height: 56px;

  margin: 7px 0;

}

header #logo img{

  height: 100%;

}

.header-top .container{

  display: flex;

  justify-content: space-between;

  align-items: center;

}

.header-top .container>a{

  height: 40px;

  display: flex;

  align-items: center;

  gap: 7px;

  font-weight: 500;

}

.header-top .container>a.mobile{

  display: none;

}

.header-top svg {

  height: 30px;

  width: 30px;

}

.header-top .container>a:last-child {

  border: 1px solid var(--color);

  padding: 0 10px;

  border-radius: 5px;

  background: #fff;

  position: relative;

}

.header-top .container>a:last-child i{

  position: absolute;

  font-size: 10px;

  font-style: normal;

  left: 20px;

  width: 14px;

  text-align: center;

  line-height: 14px;

  border-radius: 50%;

  background: #fff;

}

.header-top .header-search-form {

  width: 440px;

  max-width: 100%;

}

.header-top .header-search-field {

  display: flex;

  align-items: center;

  gap: 10px;

  height: 44px;

  padding: 0 10px;

  background: #fff;

  border: 1px solid #e5e7eb;

  border-radius: 8px;

  box-shadow: 0 1px 2px rgba(16, 24, 40, 0.06), 0 2px 8px rgba(16, 24, 40, 0.08);

  transition: border-color 0.2s ease, box-shadow 0.2s ease;

}

.header-top .header-search-field:hover {

  border-color: #d1d5db;

  box-shadow: 0 1px 2px rgba(16, 24, 40, 0.08), 0 4px 12px rgba(16, 24, 40, 0.1);

}

.header-top .header-search-field:focus-within {

  border-color: var(--color);

  box-shadow: 0 0 0 3px rgba(42, 114, 74, 0.15), 0 2px 8px rgba(16, 24, 40, 0.08);

}

.header-top .header-search-input {

  flex: 1;

  min-width: 0;

  height: 100%;

  width: auto;

  padding: 0;

  border: 0;

  background: transparent;

  color: #1f2937;

  font-size: 15px;

  font-weight: 400;

  line-height: 20px;

  outline: none;

}

.header-top .header-search-input::placeholder {

  color: #9ca3af;

}

.header-top .header-search-button {

  display: flex;

  flex: 0 0 28px;

  align-items: center;

  justify-content: center;

  width: 28px;

  height: 28px;

  padding: 0;

  border: 0;

  background: transparent;

  color: var(--color);

  cursor: pointer;

  transition: color 0.2s ease;

}

.header-top .header-search-button:hover {

  color: #1c5e3f;

}

.header-top .header-search-button:focus-visible {

  outline: 2px solid var(--color);

  outline-offset: 2px;

  border-radius: 4px;

}

.header-top .header-search-button svg {

  display: block;

  width: 28px;

  height: 28px;

  fill: currentColor;

}

.header-bottom{

  border-top: 1px solid #ccc;

  padding: 10px 0;

}

.header-bottom nav{

  display: flex;

  align-items: center;

  justify-content: space-between;
  gap:10px;

}

.header-bottom nav button{

  width: 230px;

  border: 0;

  background: #777;

  color: #fff;

  font-size: 16px;

  height: 35px;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 7px;

  border-radius: 5px;

}

.header-bottom nav menu{

  display: none;

  /*position: absolute;*/

  border-top: 10px solid #f1f0f1;
  padding-top: 10px;
    padding-bottom: 10px;

}

.header-bottom nav menu:hover+div {

  position: fixed;

  z-index: -1;

  width: 100vw;

  height: 100vh;

  left: 0;

  background: rgb(0 0 0 / 50%);

}

.header-bottom nav>div:hover menu{

  display: block;

}

.header-bottom nav>a svg, .header-bottom nav button svg{

  height: 17px;

  width: 17px;

}

.header-bottom nav>a {

  display: flex;

  height: 35px;

  border: 1px solid #777;

  border-radius: 5px;

  justify-content: center;

  gap: 7px;

  align-items: center;

  width: 100%;

  font-size: 14px;

}

.header-menu {

  display: none;

  position: absolute;

  background: #f1f0f1;

  left: 0;

  width: 100%;

  padding-bottom: 10px;

}

.breadcrumb {

  

  width: 100%;

  margin: 20px 0;

}
.breadcrumb:after{
  display: block;
  content: '';
  clear: both;
}

.breadcrumb li {

  float: left;

}

.breadcrumb li:not(:last-child) , .breadcrumb li {

  font-size: 16px;

  color: #949494;

  margin-right: 7px;

}

.breadcrumb li:last-child a {

  font-weight: 600;

}

.page-heading {

  text-align: center;

}

.page-heading>h1 {

/*  float: left;*/

  width: 100%;

  color: var(--color);

  margin: 10px 0 0;

  font-size: 27px;

}

.page-heading>h1 + p{

  font-size: 18px;

  font-weight: normal;

  float: left;

  width: 100%;

  color: #333;

  margin: 0 0 15px;

}

/* FOOTER */

.footer-bottom {

  text-align: center;

  font-size: 14px;

  font-weight: 300;

  color: #999;

  padding: 10px;

  float: left;

  width: 100%;

  background: #eee;

}

.footer-bottom a{color: #999;}

.footer-mid .container{

  display: flex;

  justify-content: space-between;

  margin-top: 20px;

  margin-bottom: 20px;

}

.footer-mid ul{

  display: flex;

  flex-direction: column;

  gap: 7px;

}

footer .fcol:first-child a {

  color: var(--color);

}

.footer-top{

  float: left;

  width: 100%;

  background: var(--color);

  padding: 15px 0;

}
.footer-top-social
{
  display: flex;
  gap: 10px;
}
.footer-top form
{
  justify-content: space-between;
}
.footer-top-left
{
  display: flex;
  gap: 15px;
}
.footer-top-left-y,.footer-top-left-t,.footer-top-left-f
{
  background: #fff;
  padding: 5px 10px;
  border-radius: 5px;
}
.footer-top-left-y path
{
  fill: #ff0033;
}
.footer-top-left-t path
{
  fill: #221319;
}
.footer-top-left-f path
{
  fill: #0866ff;
}
.footer-top-left a
{
  display: flex;
}
.footer-top form label{

  color: #fff;

  font-size: 18px;

  line-height: 33px;

}

.footer-top input{

  background: #fff;

  border: 0;

  height: 33px;

  padding: 0 10px;

  font-size: 16px;

  float: left;

}

.footer-top button{

  float: left;

  height: 33px;

  background: var(--color);

  border: 3px solid #fff;

  font-size: 16px;

  color: #fff;

  cursor: pointer;

  padding: 0 10px;

  width: 90px;

}

.asidebanner .abl{

  position: fixed;

  top: 200px;

  right: calc(50% + 620px);
  z-index: 9;

}

.asidebanner .abr{

  position: fixed;

  top: 200px;

  left: calc(50% + 620px);
 z-index: 9;
}

/* HOME */

.section-home-banner {

  background: #f1f0f1;

  padding-bottom: 10px;

}
.container-menu
{
      position: absolute;
    z-index: 90;
    top: 0;
    width: auto;
    margin: auto;
    left: 0;
   
}
ul.menu, header menu{

  width: 230px;

  background: #fff;

  
 
  border-radius: 12px;
}

 ul.menu>li, header menu>li {

  height: 40px;

}

ul.menu>li>a, header menu>li>a {

  display: flex;

  height: 40px;

  align-items: center;

  float: left;

  gap: 7px;

  margin-left: 10px;

  font-weight: 500;

}

ul.menu>li>a img, header menu>li>a img{

  width: 23px;

}

ul.menu>li>span, header menu>li>span {

  float: right;

  line-height: 20px;

  margin: 10px;

  font-size: 20px;

  margin-left: 0;

}

ul.menu>li:hover, header menu>li:hover{

  background: #f0f0f0;
  border-radius: 12px;
  box-shadow: 0 0 3px rgb(0 0 0 / 30%);

}

ul.menu .sub, header menu .sub{

  display: none;

  position: absolute;

  top: 20px;

  left: 230px;

  white-space: nowrap;
 width: calc(100% - 230px);

  height: calc(100% - 20px);
    overflow: auto;

  background: #fff;

  border-left: 5px solid #f1f0f1;

  z-index: 999;
  border-radius: 12px;
   grid-template-columns: repeat(4, 1fr);

}
header menu>li:hover .sub
{
   display: grid;
  
}
ul.menu>li:hover .sub{

  display: grid;
   

}

ul.menu .sub a, header menu>li:hover .sub a {

  line-height: 19px;

  padding: 10px;

  font-size: 14px;

  display: block;

  border-bottom: 1px solid #f1f0f1;

}

.ssub{

  width: 1000px;

}

.ssub li {

  /* width: calc(20% - 20px); */

/*  float: left;*/
grid-template-columns: repeat(4, 1fr);
  margin: 10px 15px;

}

.ssub li a {

  border: 0 !important;

  padding: 0 !important;

  margin: 5px 0 !important;

  display: block !important;

}

.ssub li a:first-child{

  color: var(--color) !important;

  font-size: 16px !important;

  margin-bottom: 15px;

}

ul.menu>li a:hover, header menu>li a:hover{

color: var(--color);

font-weight: 500;

}

.section-home-banner .home-banner{

  position: absolute;

  top: 0;

  left: 210px;

  height: 100%;

  width: calc(100% - 560px);

}

.section-home-banner .home-banner .swiper {

  height: 100%;

}

.section-home-banner .home-banner .swiper-slide {

  display: flex;

}

.section-home-banner .home-banner .swiper-slide img{

  height: 100%;

  object-fit: cover;

}
.home-banner-right-mb{display: none}
.home-banner-right{

  position: absolute;
    top: 20px;
    right: 0;
    gap: 20px;
    height: auto;
    width: 230px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;

}

 .home-banner-right a{

  width: 100%;

  height: calc(420px / 2);

  border-radius: 15px;

  overflow: hidden;

  -webkit-box-shadow: 0 2px 4px rgba(0,0,0,0.25);

  box-shadow: 0 2px 4px rgba(0,0,0,0.25);

}

 .home-banner-right a img{

  width: 100%;

  height: 100%;

  object-fit: cover;
  display: block;

}

.section-banner-center{

  padding: 10px 0;
      margin-top: -70px;
    position: relative;
    z-index: 7;

}
.section-home-banner .swiper-pagination
{
      bottom: 55px !important;
}
.section-banner-center .container {

  display: flex;

  justify-content: space-between;

  gap: 15px;

}

.section-banner-center .container a{

  display: flex;

  width: calc(100%/3 - 10px);

}

/* PRODUCT */

#product-top {

  display: flex;

  justify-content: space-between;

  width: 100%;

  align-items: flex-start;

}

.product-image {

  position: sticky;
      top: 76px;

  width: 33%;

  margin: 15px 0;

  /* border: 1px solid #ccc;

  border-radius: 10px; */

  overflow: hidden;

}

.product-image.flex {

  display: flex;

    justify-content: center;

}

.product-buy-area {

  

  width: 42%;

  margin: 15px;

}

.product-buy-area-inf {

  list-style-type: disc;

  margin: 10px 0;

  margin-left: 30px;

  font-size: 15px;

  line-height: 25px;

}

.product-buy-area-price {

  padding: 10px;

  border: 1px dashed #aaa;

  border-radius: 10px;

  font-size: 14px;
  margin: 12px 0;
}

.product-buy-area-price del{

  color: #777;

  margin: 0 10px;
  font-size: 18px;
  line-height: 18px

}

.product-buy-area-price b{

  color: #e00;

  font-weight: normal;

}

.product-highlight {

 
  width: 25%;

}

.product-label {

  margin: -10px -10px 10px;

  font-size: 16px;

  padding: 10px;

  background: #eee;

}



.product-buy-area h1, h1.product-name {

  font-size: 22px;

  position: relative;

  margin-bottom: 10px;

  padding-bottom: 10px;
      border-bottom: 1px solid #E7E7E7;

}



.product-buy-area .product-buy-area-price strong {

  color: #e00;

  font-size: 30px;
  line-height: 44px

}

.product-buy-area .promotion {

  border: 1px solid #FEE2E2;

  border-radius: 10px;

 



  overflow: hidden;
    box-shadow: 0 0 0 1px #D9D9D9;
    padding: 0;
    overflow: hidden;
    margin: 12px 0 30px 0;
}

.product-buy-area .promotion-title {

 display: flex;align-items: center;
    position: relative;
    inset: unset;
    border-radius: 0;
    background: #D9D9D9;
    color: #292929;
    line-height: 49px;
    margin: 0;
    padding: 0 10px 0 20px;
    font-size: 18px;
    font-weight: 700;

}
.promotion-title svg 
{
  margin-right: 10px
}
.promotion-content
{
  padding:10px 20px;
}
.promotion-content li,.promotion-content li p{
  line-height: 30px;
}
.addtocart {

  display: flex;

  gap: 10px;

  align-items: center;

  margin-bottom: 15px;

}

.addtocart span{

  font-size: 14px;

}

.addtocart .pd-quantity-holder {

  width: 100px;

  -webkit-box-shadow: 0 0 0 1px #D9D9D9;

  box-shadow: 0 0 0 1px #D9D9D9;

  border-radius: 5px;

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  text-align: center;

}

.addtocart .pd-quantity-holder a {

  width: 29px;

  color: #000;

  line-height: 40px;

}

.addtocart .pd-quantity-holder a:first-child {

  border-right: 1px solid #F3F3F3;

}

.addtocart .pd-quantity-holder a:last-child {

  border-left: 1px solid #F3F3F3;

}

.addtocart .pd-quantity-holder input {

  width: calc(100% - 60px);

  text-align: center;

  border: 0;

}

.addtocart .pd-btn-buy {

  border: 2px solid #D91605;

  border-radius: 10px;

  line-height: 36px;

  color: #D91605;

  font-weight: 600;

  font-size: 16px;

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;

  -webkit-box-align: center;

  -ms-flex-align: center;

  align-items: center;

  padding: 0 13px;

  -webkit-transition: .1s all;

  transition: .1s all;

}

.addtocart .pd-btn-buy .icon-buy {

  width: 30px;

  height: 30px;

  margin-right: 9px;

  background-repeat: no-repeat;

  background-size: 30px;

  background-position: center 0;

}

.product-warranty{

  display: flex;

  gap: 10px;

  align-items: center;

  

  font-weight: 500;

    color: var(--color);

}
.product-warranty span {
    margin: 6px 9px 0 0;
    line-height: 34px;
    background: #F3F3F3;
    border-radius: 5px;
    color: #555;
    font-weight: 500;
    padding: 0 11px;
}

.product-warranty svg{

  width: 30px;

  height: 30px;

}
/*
.product-buy-area .promotion p, .product-buy-area .promotion ul li {

  color: #000;

  display: list-item;

 

}*/

.product-buy-area .btnleft {

  width: calc(50% - 7px);

  float: left;

  text-align: center;

  line-height: 45px;

  background: var(--color);

  color: #fff;

  text-transform: uppercase;

  border-radius: 10px;

  font-weight: bold;

  border: 0;

  font-size: 16px;

  cursor: pointer;

}

.product-buy-area .btnright {

  width: calc(50% - 7px);

  float: right;

  text-align: center;

  line-height: 43px;

  color: var(--color);

  border: 1px solid;

  border-radius: 10px;

  text-transform: uppercase;

  font-weight: bold;

}

/* CART */

.bar-top {

  display: block;

  overflow: hidden;

  width: 100%;

  max-width: 600px;

  margin: auto;

}

.buymore {

  float: left;

  overflow: hidden;

  position: relative;

  line-height: 40px;

  font-size: 14px;

  color: var(--color);

  padding: 15px 0 0 15px;

}

.buymore:before, .buymore:after {

  content: '';

  width: 0;

  height: 0;

  border-right: 7px solid var(--color);

  border-top: 7px solid transparent;

  border-bottom: 7px solid transparent;

  position: absolute;

  left: 0;

  top: 28px;

}

.wrap_cart {

  display: block;

  width: 100%;

  max-width: 600px;

  margin: 0 auto 20px;

  background: #fff;

  border: 1px solid #d8d8d8;

  -moz-box-shadow: 0 0 20px rgba(0,0,0,.15);

  -webkit-box-shadow: 0 0 20px rgba(0,0,0,.15);

  box-shadow: 0 0 20px rgba(0,0,0,.15);

}

.listorder {

  display: block;

  overflow: visible;

  background: #fff;

  clear: both;

}

.listorder li {

  display: block;

  overflow: visible;

  border-bottom: 3px double #d9d9d9;

  margin: 10px 30px 15px;

  padding-bottom: 10px;

  min-height: 110px;

}

.listorder li:last-child {

  margin-bottom: 0;

}

.listorder li .colimg {

  float: left;

  overflow: hidden;

  width: 85px;

  text-align: center;

}

.listorder li a {

  display: block;

  overflow: hidden;

}

.listorder li img {

  display: inline-block;

  width: 75px;

  margin: 0 0 5px;

}

.listorder li .colimg button {

  display: flex;

    align-items: center;

    gap: 5px;

  text-align: center;

  font-size: 12px;

  color: #999;

  border: 0;

  background: #fff;

  margin: auto;

  cursor: pointer;

}

.listorder li .colimg button span {

  float: left;

  width: 12px;

  height: 12px;

  background: #ccc;

  border-radius: 10px;

  position: relative;

}

.listorder li .colimg button span:before, .listorder li .colimg button span:after {

  top: 2px;

  left: 5px;

}

.listorder li .colimg button span:before {

  content: '';

  width: 2px;

  height: 8px;

  background: #fff;

  position: absolute;

  -webkit-transform: rotate(45deg);

  -moz-transform: rotate(45deg);

  -ms-transform: rotate(45deg);

  -o-transform: rotate(45deg);

}

.listorder li .colimg button span:after {

  content: '';

  width: 2px;

  height: 8px;

  background: #fff;

  position: absolute;

  -webkit-transform: rotate(-45deg);

  -moz-transform: rotate(-45deg);

  -ms-transform: rotate(-45deg);

  -o-transform: rotate(-45deg);

}

.listorder li .colinfo {

  display: inline-block;

  overflow: visible;

  width: 450px;

  padding-left: 5px;

}

.listorder li .colinfo strong {

  font-weight: normal;

  font-size: 14px;

  color: #c10017;

  float: right;

}

.listorder li .colinfo a {

  display: inline-block;

  font-size: 14px;

  color: #333;

  display: -webkit-box;

  -webkit-line-clamp: 2;

  -webkit-box-orient: vertical;

  text-overflow: ellipsis;

  width: 62%;

}

.listorder li .colinfo>a {

  font-weight: bold;

}

.listorder li .colinfo .color{

  float: left;

  margin: 10px 0;

  line-height: 25px;

}

.listorder li .colinfo .color span {

  float: left;

  margin-right: 5px;

  font-size: 14px;

}

.listorder li .colinfo .color label{

display: block;

position: relative;

padding-left: 35px;

margin-bottom: 12px;

cursor: pointer;

font-size: 22px;

-webkit-user-select: none;

-moz-user-select: none;

-ms-user-select: none;

user-select: none;

float: left;

}

.listorder li .colinfo .color input {

position: absolute;

opacity: 0;

cursor: pointer;

}

.listorder li .colinfo .color .checkmark {

position: absolute;

top: 0;

left: 0;

height: 25px;

width: 25px;

background-color: #eee;

border-radius: 50%;

}

.listorder li .colinfo .color input:checked ~ .checkmark {

background-color: #2196F3;

box-shadow: 0 0 7px;

}

.listorder li .colinfo .color input:checked ~ .checkmark:after {

content: "";

position: absolute;

top: 9px;

left: 9px;

width: 8px;

height: 8px;

border-radius: 50%;

background: white;

display: none;

}

.choosecolor {

  float: left;

  position: relative;

  width: 140px;

  border: 1px solid #dfdfdf;

  background: #fff;

  border-radius: 3px;

  line-height: 32px;

  font-size: 14px;

  color: #6fb500;

  padding: 0 5px;

  margin: 5px 10px 0 0;

    height: 30px;

}

.choosenumber {

  float: right;

  overflow: hidden;

  position: relative;

  width: 70px;

  border: 1px solid #dfdfdf;

  background: #fff;

  border-radius: 3px;

  line-height: 28px;

  font-size: 14px;

  color: #333;

  margin: 5px 0 5px 0;

  text-align: center;

}

.area_total {

  display: block;

  overflow: hidden;

  padding: 10px 30px 10px;

  border-bottom: 1px solid #d8d8d8;

  background: #fff;

}

.area_total div {

  display: block;

  overflow: hidden;

  font-size: 14px;

  color: #333;

  line-height: 22px;

}

.area_total div.boxCouponCode{

  float: left;

  width: 100%;

  margin: 5px 0;

}

.textcode {

  color: #6fb500 !important;

  cursor: pointer;

}

.inputcode {

  display: block;

  overflow: hidden;

  margin: 10px 0 0;

}

.inputcode button {

  float: left;

  background: #6fb500;

  border-radius: 4px;

  border: 0;

  height: 40px;

  font-size: 14px;

  color: #fff;

  width: 90px;

  text-align: center;

  cursor: pointer;

}

.inputcode input {

  display: block;

  width: 40%;

  border: 1px solid #d9d9d9;

  border-radius: 4px;

  padding: 10px;

  height: 20px;

  float: left;

  margin-right: 10px;

}

.area_total div.total b {

  float: left;

}

.area_total div.total strong {

  float: right;

  font-size: 16px;

  color: #c10017;

}

.infouser {

  display: block;

  overflow: hidden;

  background: #fff;

  padding: 0 30px;

}

.areainfo {

  display: block;

  padding: 0;

}

.areainfo .left, .shipinfo .left{

  float: left;

  width: 49%;

  margin-bottom: 5px;

}

.areainfo input, .shipinfo input, .shipinfo select{

  display: block;

  height: 40px;

  border: 1px solid #d9d9d9;

  -moz-border-radius: 4px;

  -webkit-border-radius: 4px;

  border-radius: 4px;

  margin: 10px 0 5px;

  text-indent: 10px;

  width: 99.6%;

}

.areainfo .right, .shipinfo .right {

  float: right;

  width: 49%;

  margin-bottom: 5px;

}

.payoffline {

  float: left;

  overflow: hidden;

  width: 260px;

  padding: 9px 0;

  margin: 10px 0 20px 30px;

  border-radius: 4px;

  font-size: 14px;

  font-weight: 600;

  line-height: normal;

  text-transform: uppercase;

  color: #fff;

  text-align: center;

  background: #fd6e1d;

  background: -webkit-gradient(linear,0% 0%,0% 100%,from(#fd6e1d),to(#f59000));

  background: -webkit-linear-gradient(top,#f59000,#fd6e1d);

  background: -moz-linear-gradient(top,#f59000,#fd6e1d);

  background: -ms-linear-gradient(top,#f59000,#fd6e1d);

  background: -o-linear-gradient(top,#f59000,#fd6e1d);

  border: 0;

  cursor: pointer;

}

.payoffline span {

  display: block;

  font-size: 12px;

  color: #fff;

  text-transform: none;

  font-weight: normal;

}

.payonline {

  float: right;

  overflow: hidden;

  margin: 10px 30px 20px 0;

  position: relative;

  width: 260px;

padding: 0;

  border: 0;

cursor: pointer;

}

.payonline div {

  display: block;

  overflow: hidden;

  cursor: pointer;

  padding: 9px 0;

  border-radius: 4px;

  font-size: 14px;

  font-weight: 600;

  line-height: normal;

  text-transform: uppercase;

  color: #fff;

  text-align: center;

  background: var(--color);

}

.payonline span {

  display: block;

  font-size: 12px;

  color: #fff;

  text-transform: none;

  font-weight: normal;

}

.area_other {

  display: block;

  overflow: visible;

  padding: 5px 30px 0;

  background: #fff;

min-height: 45px;

  position: relative;

}

.area_other .textnote {

  display: block;

  overflow: hidden;

  font-size: 15px;

  margin-bottom: 10px;

}

.shipment>label, .shipment>input {

  position: absolute;

  top: 35px;

}

.shipment>input {

  margin: 0;

  height: 20px;

  width: 20px;

}

.shipment>label{

  line-height: 20px;

  font-size: 14px;

}

.shipment label.pos1{

  left: 55px;

}

.shipment label.pos2{

  left: 300px;

}

.shipment label.pos2+input {

  left: 275px;

}

.shipinfo {

  display: none;

  position: relative;

  padding: 0 10px 5px;

  width: 100%;

  background: #f0f0f0;

  box-sizing: border-box;

margin-top: 35px;

}

.shipment>input:checked + div{display: block;}

.shipinfo:before {

  content: ' ';

  position: absolute;

  bottom: 100%;

  left: 3px;

  width: 0;

  height: 0;

  border-bottom: 7px solid #f0f0f0;

  border-left: 7px solid transparent;

  border-right: 7px solid transparent;

}

.shipment label.pos2+input + .shipinfo:before {

  content: ' ';

  position: absolute;

  bottom: 100%;

  left: 247px;

  width: 0;

  height: 0;

  border-bottom: 7px solid #f0f0f0;

  border-left: 7px solid transparent;

  border-right: 7px solid transparent;

}

.shipinfo p{

  padding: 10px 10px 5px;

  margin: 0;

}

.SContent{

  float: left;

  width: 100%;

  margin: 20px 0;

}

.SContent a{

  color: var(--color);

}

.articleDetail ul, .product-description ul {

  list-style-type: disc;

  margin-left: 30px;

}

.articleDetail ol, .product-description ol {

  list-style-type: decimal;

  margin-left: 30px;

}

.articleDetail h2, .product-description h2,

.articleDetail h3, .product-description h3 {

margin: 20px 0 10px;

}
.container-headermenu
{
  width: 100%;
  
  position: absolute;
  top: 100%;

}
header menu,header menu .sub
{
  -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.25);
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.25);
}
header menu .sub
{
    top: 0;
      height: calc(100%);
}
/* section-brand-slide styles moved inline into template/pages/home.php (single source of truth) */
.section-brand
{
  padding:40px 0;
}

.section-brand-featured
{
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap:15px;
  padding-bottom: 20px;

}
.section-brand-featured > div
{
    border-radius: 10px;
    border: 1px solid var(--color);
    position: relative;
    
}
.section-brand-featured > div a{
display: block;
    overflow: hidden;
    position: relative;
    height: 100%;}
.section-brand-slide .swiper-slide a{
display: block;
    position: relative;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 14px;
}
.section-brand-featured > div a::before {
    content: "";
    position: absolute;
    top: 0;
    left: -15%;
    bottom: 0;
    width: 0;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.5);
    -webkit-transition: none;
    transition: none;
    -webkit-transform: skewX(-25deg);
    transform: skewX(-25deg);
}
.section-brand-featured > div a:hover::before {
    width: 120%;
    background-color: rgba(255, 255, 255, 0);
    -webkit-transition: all .45s ease-out;
    transition: all .45s ease-out;
    z-index: 2;
}

.section-brand-featured > div img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
  }
.pd-info
{
      display: flex;
    align-items: center;
    gap: 10px;
    row-gap: 0;
    font-size: 13px;
    line-height: 28px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.pd-info > div{
  border-right: thin solid #D9D9D9;padding-right:10px ;
}
.ttsp-h4{
  line-height: 30px
}
/*.ttsp-content *
{
  font-size: 14px; font-weight: 300; line-height: 24px
}*/
.ttsp-content a,.promotion-content a{
  color: #0782C1;
}
.ttsp-content ul,.promotion-content ul
{
  list-style-type: disc;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 40px;
}

.product-highlight .static-text {
    border: 1px solid #D9D9D9;
    border-radius: 10px;
    margin-bottom: 12px;
    color: #53C305;
    padding: 10px 10px 10px 41px;
    position: relative;
    font-size: 14px
}
.product-highlight .static-text::before {
    content: '';
    width: 25px;
    height: 40px;
    position: absolute;
    left: 13px;
    background: url(https://daitailoc.com/template/images/sprite.png) no-repeat;
    background-size: 250px 200px;
    background-position: -164px -31px;
}
.product-highlight .pd-static-item {
    -webkit-box-shadow: 0 0 0 1px #D9D9D9;
    box-shadow: 0 0 0 1px #D9D9D9;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 12px;
}
.product-highlight .pd-static-item .title {
    background: #F3F3F3;
    border-bottom: 1px solid #D9D9D9;
    font-weight: 700;
    font-size: 16px;
    line-height: 41px;
    text-align: center;
    margin: 0;
}
.product-highlight .pd-static-item ul {
    font-size: 13px;
    line-height: 24px;
    padding: 8px 8px 12px 27px;
    margin: 0;
    list-style: disc;
    font-family: inherit;
}
.product-highlight .pd-static-item ul ::marker {
    color: #D9D9D9;
    font-size: 16px;
}
.product-highlight .pd-static-item ul a{
  color: #007bff;
}
.product-highlight .pd-hotline-list {
    padding: 10px 7px;
}

.product-highlight .pd-hotline-list .item {
    margin: 0 0 8px;
    position: relative;
    font-size: 13px;
    line-height: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.pd-qr-code {
    padding: 13px 12px;
    display: grid; 
    grid-template-columns:60% 40%;

}
.pd-qr-code a {
    width: 110px;
    height: 110px;
    padding: 8px;
    background: #F3F3F3;
}
.alum-product-small .swiper-slide,.swiper-slide img {
     
    border-radius: 8px;  
      
}
.alum-product-small .swiper-slide{
  border: 1px solid #E7E7E7;


}
    .alum-product-small .swiper-slide-thumb-active {
   -webkit-filter: brightness(60%);
    filter: brightness(60%);
}
.alum-product-small .swiper-button-prev:after, .alum-product-small .swiper-button-next:after  {
    font-family: swiper-icons;
    font-size: 15px;
    text-transform: none !important;
    letter-spacing: 0;
    text-transform: none;
    font-variant: initial;
    line-height: 1;
    background: rgba(0, 0, 0, 0.3);
   -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.25);
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.25);
    color: #fff;
}
.alum-product-small .swiper-button-prev:after
{
       border-radius: 0 100px 100px 0;
           padding: 10px 13px 10px 5px;
}
.alum-product-small .swiper-button-next:after
{
       border-radius: 100px 0px 0px 100px;
           padding: 10px 5px 10px 13px;
}
.alum-product-small .swiper-button-next{right: 0px !important;}
.alum-product-small .swiper-button-prev{left: 1px !important;}
.alum-product-small .swiper-button-prev:hover:after, .alum-product-small .swiper-button-next:hover:after
{
  background: rgba(0,0,0,0.9);
}
.section-tintuc
{
  margin: 50px 0;
}
.section-tintuc .box-title-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 630px;
    margin: auto auto 20px;
    position: relative;
    border-bottom: 1px solid #F5F5F5;
    text-transform: uppercase;
    line-height: 18px;
    padding-bottom: 15px;
}
.section-tintuc .box-title-group::after {
    content: '';
    width: 110px;
    height: 1px;
    background-color: var(--color);
    position: absolute;
    left: 50%;
    bottom: -1px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
.section-tintuc .box-title-group .title {
    margin: 0 15px 0 0;
    font-weight: 600;
    font-size: 30px;
        line-height: 34px;
}
.section-tintuc-item-container
{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}
.section-tintuc-item {
   
   
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    background: #FFF;
    -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.25);
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.25);
    border-radius: 12px;
    overflow: hidden;
}
.section-tintuc-item .item-img {
    width: 230px;
    margin-right: 12px;
    border-radius: 12px;
    overflow: hidden;
}
.section-tintuc-item .item-img img {
    display: block;
    margin: auto;
    border-radius: 12px;
    width: 100%;
    height: 100%;
} 
.section-tintuc-item .item-text {
    display: flex;
    flex: 1;
    flex-direction: column;
    min-width: 0;
    min-height: 153px;
    width: calc(100% - 242px);
    padding: 8px 10px 8px 0;
}
.section-tintuc-item .item-time {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    order: 3;
    gap: 6px 14px;
    margin: 8px 0 0 !important;
    color: #7b8490;
    font-size: 13px;
    line-height: 17px;
}
.section-tintuc-item .item-time svg
{
  margin-right: 5px;
}
.section-tintuc-item .item-time time {
    display: inline-block;
    margin-right: 15px;
}
.section-tintuc-item .item-title {
    order: 1;
    font-weight: 700;
    font-size: 18px;
    line-height: 22px;
    color: #000;
        text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.section-tintuc-item .item-summary {
    order: 2;
    margin-top: 5px;
    font-size: 15px;
    line-height: 20px;
    color: #858d96;
    text-overflow: ellipsis;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.cate-banner
{
  width: 100%;
  max-width: 1280px;
  margin: 0 auto 18px;
  border-radius: 20px;
  overflow: hidden;
  position: relative;
  background: #eef4fb;
  box-shadow: 0 12px 32px rgba(16,38,74,.12);
}
.cate-banner .swiper-slide
{
  overflow: hidden;
  position: relative;
  background: #eef4fb;
  height: auto;
}
.cate-banner .swiper-slide picture,
.cate-banner .swiper-slide img
{
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
  background: #eef4fb;
}
.cate-banner .cate-banner-prev,
.cate-banner .cate-banner-next
{
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: rgba(255,255,255,.95);
  border: 1px solid rgba(18,60,110,.10);
  color: #123c74;
  box-shadow: 0 8px 20px rgba(16,38,74,.16);
  opacity: 0;
  transform: translateY(4px);
  transition: opacity .3s cubic-bezier(.32,.72,0,1), transform .3s cubic-bezier(.32,.72,0,1);
}
.cate-banner:hover .cate-banner-prev,
.cate-banner:hover .cate-banner-next
{
  opacity: 1;
  transform: translateY(0);
}
.cate-banner .cate-banner-prev::after,
.cate-banner .cate-banner-next::after
{
  font-size: 15px;
  font-weight: 800;
}
.cate-banner .cate-pagination
{
  bottom: 12px !important;
  display: flex;
  justify-content: center;
  gap: 6px;
}
.cate-banner .cate-pagination .swiper-pagination-bullet
{
  width: 24px;
  height: 5px;
  margin: 0 !important;
  border-radius: 99px;
  background: rgba(18,60,116,.22);
  opacity: 1;
  overflow: hidden;
  position: relative;
  transition: width .3s cubic-bezier(.32,.72,0,1), background .3s;
}
.cate-banner .cate-pagination .swiper-pagination-bullet-active
{
  width: 48px;
  background: rgba(18,60,116,.22);
}
.cate-banner .cate-pagination .swiper-pagination-bullet-active::after
{
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: #1464d2;
  transform-origin: left center;
  animation: cate-fill 5s linear forwards;
}
@keyframes cate-fill
{
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}
@media (max-width: 767px) {
  .cate-banner { border-radius: 14px; }
  .cate-banner .cate-banner-prev,
  .cate-banner .cate-banner-next { display: none; }
  .cate-banner .cate-pagination { bottom: 8px !important; }
  form.main-category .cate-mobile-actions { display: flex !important; gap: 10px; margin: 12px 0 4px; }
  form.main-category .cate-mobile-actions .p-m-btn { flex: 1; justify-content: center; margin: 0; }
}
.cate-banner-image
{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.list_search_product
{
  padding: 5px 5px !important;
}
.list_search_product a
{
  display: flex;
}
.list_search_product_image
{
  width: 80px;
  height: 80px;
  object-fit: cover;
}
.list_search_product_info
{
  padding-left: 10px;
  color: #000;
}
.list_search_product_name
{
  font-size: 14px;
}
.list_search_product_price strong
{
  color: red;
}
.list_search_product_price del
{
  font-size: 12px;
  color: #999;
}
#ui-id-1
{
  width: 440px !important;
  max-height: 400px;
  overflow-y: auto;
  overflow-x: hidden;
  position: fixed;
}
#ui-id-1::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: #2A724A;
}
#ui-id-1::-webkit-scrollbar {
    width: 6px;
    background-color: #f1f1f1;
}

#ui-id-1 .ui-menu-item .ui-state-active
{
  background: #f5f5f5;
  border-color: #f5f5f5;
}
.voucher-c-error
{
   padding: 0px 30px;
    background: #f5f5f5;
}
.voucher-c
{
    padding: 12px 30px;
    background: #f5f5f5;
   
    display: flex;
}
.voucher-c-input
{
 padding: 5px 10px;
    width: 100%;
    border-radius: 0;
    border: thin solid #d9d9d9;
}
.voucher-c-button
{
  background: var(--color);
  border: thin solid var(--color);
  color: #fff;
  white-space: nowrap;
  cursor: pointer;
}
.voucher-value-c
{
  margin-top: 12px;
   padding: 0px 30px;
   font-size: 14px;
  display: flex; justify-content: space-between;
}
.voucher-value-c-v span
{
  font-weight: bold;
}
.content-cate
{
      display: grid;
    grid-template-columns: repeat(4, calc(97% / 4));
    gap: 1%;
    margin-top: 10px;
        row-gap: 15px;
}

.d-flex {
    display: -ms-flexbox !important;
    display: flex !important;
}

.align-items-center {
    -ms-flex-align: center !important;
    align-items: center !important;
}
.justify-content-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important;
}
.component-modal-variation
{
    position: fixed;
    z-index: 999999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: none;
}
.component-modal-variation::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgb(0 0 0 / 50%);
}
.component-modal-variation-content{
    position: relative;
    width: 500px;
    max-width: 1200px;
    min-height: 300px;
    overflow: auto;
    left: 50% ;
    top:50%;
    transform: translate(-50%,-50%);
    background-color: #fff;
    
}
.component-modal-variation-content-title {
    padding: 0 12px;
    display: flex;
    align-items: center;
    background: #E5E1E0;
    justify-content: space-between;
    line-height: 44px;
    font-weight: 500;
    position: relative;
}
.component-modal-variation-content-close
{
  position: absolute;
  right: 5px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
}
.component-modal-variation-content-data
{
      padding: 10px;
}
.popupp-product .popup-product-item {
    display: flex;
    flex-wrap: wrap;
    padding: 12px 0;
    width: calc(100% - 24px);
    margin: auto;
    border-bottom: 1px dashed #D9D9D9;
}
.popupp-product .image {
    width: 78px;
    height: 78px;
    margin-right: 12px;
}
.popupp-product .p-text {
    width: calc(100% - 90px);
    font-weight: 500;
}
.popupp-product .name {
    display: block;
    color: #000;
    margin: 0 0 5px;
}
.popupp-product .sku {
    margin: 5px 0;
    font-size: 13px;
    font-weight: 400;
}
.popupp-product .price {
    margin: 5px 0;
    color: #B80000;
    font-size: 13px;
}
.component-modal-variation-content-data .popup-select-btn {
    display: block;
    text-align: center;
    border-radius: 30px;
    background: var(--color);
    font-weight: 700;
    line-height: 34px;
    max-width: 220px;
    color: #FFF;
    margin: 10px auto 20px auto;
}
.product-list-chitiet
{
  display: grid;     grid-template-columns: repeat(5, calc(96% / 5));
  gap: 1%;
  row-gap: 10px;
  margin: 10px 0;
}
.section-page-content
{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
.section-page-content img
{
  border-radius: 4px;
}
.box-Km
{
  padding: 0 !important;
}
.promotion-content li, .promotion-content li p
{ 
  list-style: none;
}
.box-Km .line-discount
{
  display: block !important;
}
.modal-global
{
  display: none;
}
.modal-global-bg
{
  background: rgba(0,0,0,0.8);
  width: 100%;
  height: 100%;
  position: fixed; left: 0; top: 0;
  z-index: 99999;
}
.modal-global-container
{  
  background: #fff;
  position: fixed; left: 50%; top: 50%;
  transform: translate(-50%,-50%);
  z-index: 999999;
  border-radius: 10px;
  padding: 2rem;

}
.modal-global-data
{
  max-height: calc(100vh - 100px);
  overflow: auto;
  padding-right: 10px;
}

.modal-global-close
{
  position: absolute;
  top: 5px; right: 5px;
  cursor: pointer;
}
div:where(.swal2-container)
{
  z-index: 999999 !important;
}
.form-login-register h2
{
  text-align: center;
  margin-bottom: 30px;
  text-transform: uppercase;
}
.form-control
{
  display: block;
    width: 100%;
    padding: .375rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    margin-bottom: 10px;
    min-width: 300px;
}
.form-login-register .btn
{
  display: flex;
    font-weight: 400;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid transparent;
    padding: .375rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: .25rem;
    
    background: var(--color);
    color: #fff;
    width: 100%;
    margin-bottom: 10px;
    cursor: pointer;
    align-items: center;
    justify-content: center;
}
.form-login-register .btn svg{margin-right: 10px;}
.form-login-register .btn svg path{fill: #ffffff}
.form-login-register .btn:hover
{
  opacity: 0.9;

}
.form-login-register .hr
{
margin: 10px 0 16px 0;
    text-align: center;
    display: flex;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    align-items: center;
    gap: 1.5rem;
    text-transform: uppercase;
    font-weight: 500;
   
    line-height: 1.8rem;
    color: rgb(140, 146, 156);
}
.form-login-register .hr span{
   font-size: 0.8rem;
}
.form-login-register .hr::before, .form-login-register .hr::after {
    content: "";
    display: inline-block;
    border-top: 0.1rem solid rgb(227, 229, 231);
    -webkit-box-flex: 1;
    flex-grow: 1;
}
.form-login-register-taikhoan
{
  font-size: 14px;
  margin-bottom: 10px;
}
.form-login-register-taikhoan a{
  color: var(--color);
}
.g_id_signin,.g_id_signin iframe,.haAclf {
        display: table; margin: auto;
    }
.g_id_signin iframe
{
  margin: 0 !important;     
}   
.header-top-top
{
  background:var(--color);
  color: #fff;
  padding: 5px 0;
  font-size: 13px;
} 
.header-top-top svg
{
  margin-right: 5px;
}
.header-top-top > div
{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header-top-top-col-left,.header-top-top-col-right
{
  display: flex; align-items: center;
}
.header-top-top-col-right
{
  gap: 30px;
}
.header-top-top-khung
{
  display: flex; align-items: center; 
      justify-content: end;
      cursor: pointer;

}
.header-top-top-khung svg{margin-right: 8px}
.header-top-top-khung a{color: #fff}
.taikhoan
{
  margin:0 auto 0px auto;
  display: flex;
  padding-top: 20px;
  padding-bottom: 20px;
}
.taikhoan-info
{
  display: flex; align-items: center;
  margin-bottom: 20px;
  padding: 0 10px;
}
.taikhoan-info-right
{
  padding-left: 10px;
  
}
.taikhoan-col-right
{
  width: calc(100% - 370px); 
  margin-left: 20px;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
  padding: 15px;
}
.taikhoan-col-left
{
  width: 350px;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
  padding: 15px;
}
.taikhoan-col-left ul li svg
{
  margin-right: 10px;
}
.taikhoan-col-left ul li svg path
{
  fill:#000;
}
.taikhoan-col-left ul li
{
  padding: 7px 10px;
}
.taikhoan-col-left ul li:hover a,.taikhoan-col-left ul li.active a
{
  color: var(--color) !important;
   fill: var(--color) !important;
  
}
.taikhoan-col-left ul li a{
  display: flex;
  align-items: center;
}
.taikhoan-col-left ul li a,.taikhoan-col-left ul li path
{
  color: #000;
   fill: #000;
}
.taikhoan-col-left ul li:hover a,.taikhoan-col-left ul li:hover path{
 color: var(--color) !important;
   fill: var(--color) !important;
}
.taikhoan-col-left ul li.active a,.taikhoan-col-left ul li.active path
{
  color: var(--color) !important;
   fill: var(--color) !important;
   font-weight: bold;
}
.disabled
{
  cursor: not-allowed !important;
}
.form-taikhoan
{
  margin: 20px 0;
  display: table;
}
.form-taikhoan .item-input
{
  display: flex;
  align-items: center;
  margin: 10px 0;
}
.form-taikhoan .item-input > div:nth-child(1)
{
  padding-right: 10px;
  width: 150px;
}
.form-taikhoan  .btn
{ 
  display: table; width: auto;
  margin: 20px auto;
}
.form-taikhoan .item-input input[type="text"]
{
  width: 400px;
}
.quan-ly-don-hang .timkiem
{
  background: #fff;
  border:thin solid #969696;
  padding: 8px 15px;
  display: flex;
  align-items: center;
}

.quan-ly-don-hang .timkiem input[type="text"]
{
  border:none;
  width: 100%;
  margin-left: 10px;
}
.quan-ly-don-hang .timkiem input[type="button"]
{
  border: none;
  background: none;
  border-left: 3px solid #d3d3d3;
}
.quan-ly-don-hang-tab
{
  margin: 20px 0;
  display: flex;
  gap: 0;
  align-items: center;
  justify-content: space-between;
  background: #fff;
}
.quan-ly-don-hang-tab li
{
  cursor: pointer;
  padding: 10px 20px;
  text-transform: uppercase;
}
.quan-ly-don-hang-tab li.active,.quan-ly-don-hang-tab li:hover
{
  border-bottom: 3px solid var(--color);
}
.item-order
{
  margin: 20px 0;
  background: #fff;
  border-radius: 10px;
  padding:5px 20px
}
.item-order-top
{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
.item-order-top
{
  border-bottom: thin solid #d0d0d0;
  padding: 10px 15px;
}
.item-order-product
{
  justify-content: space-between;
  padding: 10px 15px;
}
.item-order-product,.item-order-product-left
{
  display: flex;
  align-items: center;
}
.item-order-product-left-image
{
  border: thin solid #d0d0d0; margin-right: 10px
}
.item-order-bottom
{
  border-top: thin solid #d0d0d0;
  padding: 20px 15px;
  text-align: right;
   margin-top: 10px;
}
.item-order-bottom > div
{
  margin-bottom: 5px
}
.item-order-bottom-chitiet
{
  color: var(--color);
  border: thin solid var(--color);
  display: inline-table;
  padding: 5px 15px;
  cursor: pointer;
}
.item-order-bottom-chitiet:hover
{
  background: var(--color);
  color: #fff;
}
#page-taikhoan
{
      background: #f1f0f1;
}
.item-order-product-left
{
  width: 70%
}
.item-order-product-left-image
{
  position: relative;
  width: 80px;
}
.item-order-product-left-title
{
  width: calc(100% - 80px);
}
.item-order-product-left-soluong
{
  background: #f1f0f1;
  position: absolute;
  right: 0; bottom: 0;
  padding:5px 3px 3px 5px;
  font-size: 12px;
  border-radius: 10px 0 0 0 ;
  color: #666a76;
  font-weight: bold;
}
.item-order-bottom-tongtien span{color: red; font-weight: bold; }
.d-flex{
  display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
}

.align-items-center {
    -webkit-box-align: center !important;
    -ms-flex-align: center !important;
    align-items: center !important;
}
.justify-content-center {
    -webkit-box-pack: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important;
}
.ctdh-timeline
{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 80px;
}
.ctdh-timeline svg
{
  
 
  
  
}
.ctdh-timeline {
  margin: 30px 0;
      white-space: nowrap;
      text-align: center;
}
.ctdh-timeline-item
{
  width: 200px;
  
}
.ctdh-timeline-item-icon
{
  position: relative;
 
  display: table;
    margin: auto;
     border-radius: 50%;
     padding: 16px 20px;
     border: 2px solid #cecece;
     margin-bottom: 20px;
     background: #fff; 
}
.ctdh-timeline-item.active .ctdh-timeline-item-icon
{
  background: var(--color);
}
.ctdh-timeline-item-icon svg path
{
  fill: #c1c1c1;
}
.ctdh-timeline-item.active .ctdh-timeline-item-icon svg path{
  fill: #fff;
}
.ctdh-timeline-item .ctdh-timeline-item-icon svg
{
  width: 35px;
  height: 35px;
}
.ctdh-timeline-item-icon:before
{
  display: block;
  content: '';
  height: 2px;
  width: 200px;
  position: absolute;
  left: 100%;
  top: 50%;
  background: #cecece;
  transform: translateY(calc(-50% - 2px));
}
.ctdh-timeline-item:last-child .ctdh-timeline-item-icon:before {
    display: none;
}
.ctdh-1
{
  justify-content: space-between;
}
.ctdh-1 span{
  color: var(--color);
}
.infokh
{
  display: flex;
  gap: 20px;
  width: 100%;
}
.infokh-left,.infokh-right
{
  border: thin solid #cecece;
  border-radius: 20px;
  padding: 10px;
  width: 60%;
}
.infokh-right
{
  width: 40%;
}
.infokh-left h3,.infokh-right h3,.infosp h3
{
  margin-bottom: 10px;
  display: flex;
  align-items: center;
}
.infokh-left h3 svg,.infokh-right h3 svg,.infosp h3 svg{margin-right: 10px;}
.infokh-left > div{
  margin: 5px 0;
}
.infosp
{
  border: thin solid #cecece;
  border-radius: 20px;
  padding: 10px;
  margin-top: 20px;
}
.cthd-tt
{
  width: 50%;
  display: flex;
  justify-content: end;
  float: right;
  margin-top: 10px;
}
.cthd-tt td{
  padding: 5px;
}
.fb-btn
{
  background: #0866ff !important;

}
.google-btn
{
  background: #ea4335 !important;
}
.hethang
{
    background: var(--color);
    display: table;
    
    padding: 10px 30px;
    text-align: center;
    border-radius: 5px;
}
.hethang a{
  color: #fff;
}
#dangnhap input,#dangky input
{
  padding-left: 30px;
}
.item-input 
{
  position: relative;
}
.icon-input
{
      position: absolute;
    left: 8px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
}
.icon-input svg
{
  width: 16px;
}
.ui-front {
    z-index: 999999 !important;
}
.price_container
{
  display: flex;
  align-items: center;
}
td{
  border: none !important;
}
.toggle-btn {
  margin-top: 0px;
    background: none;
    border: none;
    color: var(--color);
    font-weight: bold;
    cursor: pointer;
    /* margin: auto; */
    width: 100%;
    margin-bottom: 20px;
}
.featured-products-block {
    margin: 0 0 28px;
    padding: 24px;
    border-radius: 18px;
    background: linear-gradient(180deg, #f8fbff 0%, #eef5ff 100%);
    border: 1px solid #dde8f6;
}
.featured-products-heading {
    margin-bottom: 18px;
}
.featured-products-heading .fp-eyebrow {
    display: inline-block;
    margin-bottom: 8px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: #2563eb;
}
.featured-products-heading h2 {
    margin: 0;
    font-size: 23px;
    font-weight: 700;
    color: #111827;
}
.featured-product-grid {
    margin-bottom: 0;
}


/* khang */
.font-800 {
    font-weight: 800
}
.grey {
    color: #888
}
.p-item {
    background: #FFF;
    -webkit-box-shadow: 0 1px 8px rgba(0,0,0,0.25);
    box-shadow: 0 1px 8px rgba(0,0,0,0.25);
    border-radius: 15px;

    line-height: 18px;
    position: relative;
}
.p-out-of-stock {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 999;
    background: #d61706;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
    padding: 6px 14px;
    border-radius: 0 15px 0 10px;
    white-space: nowrap;
}
.p-text
{
    padding: 15px 13px; 
}
.p-item .p-name * {
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
        font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    margin: 0;
}
.p-item:hover img {
    bottom: 10px
}

.p-item img {
    -webkit-transition: .4s all;
    transition: .4s all;
    border-radius: 15px;
    padding: 1px;
}

.p-item .p-img {
    position: relative;
  
    display: block;
    overflow: hidden;
    margin-bottom: 9px
}

.p-item .p-name {
    display: block;
    height: 43px;
    color: #000;
    margin-bottom: 5px;
    text-transform: capitalize;
}

.p-item .p-price-group {
    margin: 5px 0 7px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 45px
}

.p-item .p-price-meta {
    display: contents;
}

.p-item .p-price {
    font-weight: 700;
    font-size: 18px;
    width: 100%
}

.p-item .p-old-price {
    color: #999;
    margin: 0 15px 7px 0
}

.p-item .p-discount {
    background: #d61706;
    border-radius: 3px;
    font-weight: 600;
    font-size: 12px;
    color: #fff;
    line-height: 20px;
    padding: 0 3px;
    margin-bottom: 7px
}

.p-item .p-btn-group {
    line-height: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.p-item .p-btn-compare {
    color: #FF7A00;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 13px
}

.p-item .p-btn-compare::before {
    content: '+';
    text-align: center;
    width: 15px;
    height: 15px;
    line-height: 15px;
    border-radius: 50%;
    box-shadow: 0px 0px 0px 1px #ff7a00;
    ;margin-right: 5px
}

.p-item .p-btn-compare.selected {
    color: #FF7A00;
    font-weight: 500
}

.p-item .p-btn-compare.selected::before {
    content: '\f00c';
    font-family: 'FontAwesome';
    border: 0;
}

.p-item .p-btn-cart {
    background-color: #F5F5F5;
    border-radius: 8px;
    width: 38px;
    height: 30px;
    -webkit-transition: .15s all;
    transition: .15s all;
    position: relative;
    right: 0;bottom: 0;
}

.p-item .p-btn-cart::before {
    content: '';
    background: url(/template/images/icart.png) no-repeat center;
    background-size: 18px;
    display: block;
    height: 100%
}

.p-item .p-btn-cart:hover {
    background-color: var(--color)
}

.p-item .p-btn-cart:hover::before {
    -webkit-filter: brightness(100);
    filter: brightness(100)
}

.p-item .p-icon {
    position: absolute;
    top: 0;
    left: 0
}

.p-item .p-icon-bestsale {
    display: block;
    background: url(/template/images/icon-bestsale.png) no-repeat center;
    background-size: contain;
    width: 77px;
    height: 34px;
    margin: -3px 0 0 -3px
}

.p-item .p-icon-new {
    display: block;
    background: url(/template/images/icon-new.png) no-repeat center;
    background-size: contain;
    width: 40px;
    height: 40px
}

.p-item .p-time-group {
    font-size: 10px;
    line-height: 12px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.p-item .p-time-group span {
    margin-right: 9px;
}

.p-item .p-time-holder {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.p-item .p-time-holder b {
    background: #181818;
    border-radius: 3px;
    min-width: 20px;
    text-align: center;
    line-height: 20px;
    color: #fff;
    font-weight: 500;
    position: relative
}

.p-item .p-time-holder b:last-child {
    margin: 0
}

.p-item .p-time-holder b::after {
    content: ':';
    position: absolute;
    right: -6px;
    color: #000
}

.p-item .p-time-holder p {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center
}

.p-item .p-time-holder p:last-child b::after {
    content: none
}

.p-item .p-time-holder p:last-child b {
    margin: 0
}

.p-item .p-time-holder p span {
    margin: 3px 0 0 0;
    text-transform: capitalize
}

.p-item .p-deal {
    line-height: 14px;
    text-align: center;
    color: #fff;
    background: #ffb9b9;
    border-radius: 50px;
    margin: 9px 0;
    position: relative;
}

.p-item .p-deal span {
    position: relative;
    z-index: 1;
}

.p-item .p-deal .p-deal-line {
    background: var(--color);
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    z-index: 0;
    border-radius: 50px;
    max-width: 100%
}
.p-tooltip, #tooltip {
    display: none;
    position: absolute;
    background: #fff;
    z-index: 9999999;
    width: 395px;
    -webkit-box-shadow: 0 0 8px 1px rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 8px 1px rgba(0, 0, 0, 0.3);
    border-radius: 10px;
    overflow: hidden;
}
/* The shared hover preview must fit the viewport, including long specification tables. */
#tooltip {
    position: fixed;
    width: min(395px, calc(100vw - 24px));
    max-width: calc(100vw - 24px);
    max-height: calc(100dvh - 24px);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: #2A724A #e8f2ec;
    pointer-events: none;
}
#tooltip .pro-name {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #2A724A;
    overflow-wrap: anywhere;
}
#tooltip .pro-content { overflow-wrap: anywhere; }
#tooltip .pro-content * { max-width: 100%; }
#tooltip .pro-content table {
    width: 100% !important;
    table-layout: auto;
}
#tooltip .pro-content th,
#tooltip .pro-content td {
    width: auto !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
}
#tooltip .list tr > :first-child:nth-last-child(3) { width: 24% !important; }
#tooltip .list tr > :last-child:nth-child(3) { width: 8% !important; }
#tooltip .pro-content img { height: auto; }
#tooltip .pro-content col { width: auto !important; }
#tooltip .pro-content pre { white-space: pre-wrap; }
.font-500 {
    font-weight: 500;
}
table {
    width: 100%;
    -webkit-overflow-scrolling: touch;
}
.global-tooltip .pro-name {
    color: #fff;
    font-weight: 700;
    padding: 20px 20px 15px;
    background: rgb(42,114,74);
    text-transform: uppercase
}

.global-tooltip .pro-content {
    padding: 15px
}

.global-tooltip li {
    margin-bottom: 4px
}

.global-tooltip .tooltip-content-group {
    margin-top: 15px
}

.global-tooltip .tooltip-offer-group .item {
    position: relative;
    padding-left: 22px;
    margin: 0 0 7px 0;
    line-height: 20px;
    font-weight: 400
}

.global-tooltip .tooltip-offer-group .item::before {
    content: '\f058';
    font-family: 'Font Awesome 5 Free';
    color: #C00;
    position: absolute;
    left: 0;
    top: 0
}

.global-tooltip .tooltip-offer-group .item * {
    margin: 0;
    padding: 0;
    font-size: inherit !important;
    line-height: inherit !important;
    font-family: inherit !important;
    font-weight: inherit
}

.global-tooltip .title {
    color: #fff;
    font-size: 14px;
    display: inline-block;
    background: var(--color);
    font-weight: 700;
    margin: 0;
    border-radius: 7px;
    overflow: hidden
}

.global-tooltip .title span {
    display: block;
    float: left;
    padding-right: 20px;
    line-height: 35px
}
.global-tooltip .list *
{
    font-weight:400 !important;
    font-size: 14px;
}
.global-tooltip .list span {
    display: block;
    margin-top: 5px;
    position: relative;
    padding-left: 11px;
    font-weight: 300
}

.global-tooltip .list span:first-child {
    margin: 0
}

.global-tooltip .list span::after {
    content: '';
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #da1804;
    position: absolute;
    left: 0;
    top: 7px
}

.global-tooltip .icons {
    display: block;
    float: left;
    width: 35px;
    height: 35px;
    margin-right: 7px;
    -webkit-box-shadow: inset 0 0 7px 2px rgba(0,0,0,0.2);
    box-shadow: inset 0 0 7px 2px rgba(0,0,0,0.2);
    border-radius: 7px;
    overflow: hidden
}

.global-tooltip .icon-spec {
    background: transparent
}

.global-tooltip .icon-spec::before {
    content: '\f837';
    color: #fff;
    font-size: 20px;
    display: block;
    text-align: center;
    font-family: FontAwesome;
    font-style: normal;
    line-height: 35px
}

.global-tooltip .icon-offer {
    background-position: -152px -44px;
    -webkit-filter: brightness(1000);
    filter: brightness(1000);
    background-size: 300px 250px
}

.global-tooltip .tooltip-content-group ul {
    list-style: none;
    padding: 0;
    margin: 0
}

.global-tooltip .tooltip-content-group li,.global-tooltip .tooltip-content-group p {
    position: relative;
    display: block;
    margin: 0 0 10px;
    padding-left: 11px;
    font-weight: 300
}

.global-tooltip .tooltip-content-group li:nth-child(n+5),.global-tooltip .tooltip-content-group p:nth-child(n+5) {
    display: none
}

.global-tooltip .tooltip-spec .item {
    padding: 0
}

.global-tooltip .tooltip-spec .item::after {
    content: none
}
.global-tooltip .tooltip-spec .title{font-weight: bold;}


.section-product
{
    margin: 50px 0;
}
.section-product .box-title {
    font-weight: 600;
    font-size: 30px;
    line-height: 18px;
    text-align: center;
    text-transform: uppercase;
    margin-bottom: 20px;
}
.section-product .box-title * {
    display: inline-block;
    color: #000;
    padding-bottom: 15px;
    border-bottom: 1px solid #F5F5F5;
    
    position: relative;
        line-height: 1.3;

}
.section-product .box-title ::after {
    content: '';
    width: 110px;
    height: 1px;
    background-color:  var(--color);
    position: absolute;
    left: 50%;
    bottom: -1px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
.section-product .box-cat-child {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 20px;
    padding-right: 100px;
    position: relative;
}
.section-product .box-cat-child div {
    min-width: 111px;
    margin-right: 8px;
    background: #FFF;
    border-radius: 8px;
    border: 1px solid #B1B1B1;
    text-align: center;
    line-height: 38px;
    color: #171717;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    padding: 0 9px;
    background: #fff;
    cursor: pointer;
}
.section-product .box-cat-child div.active, 
.section-product .box-cat-child div:hover {
    color: #fff;
    background: var(--color);
    border-color: var(--color);
}
.section-product .box-cat-child div.btn-view-more {
    border: 0;
    color: var(--color);
    background: unset;
    width: auto;
    min-width: auto;
    margin-right: 0;
    padding: 0;
    position: absolute;
    right: 0;
}
.data-product-slide
{
    padding: 10px 10px !important;
}
.section-product .swiper-button-next:after, .section-product .swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: 15px;
    text-transform: none !important;
    letter-spacing: 0;
    text-transform: none;
    font-variant: initial;
    line-height: 1;
    background: rgba(0, 0, 0, 0.3);
   -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.25);
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.25);
    color: #fff;
}
.section-product .swiper-button-prev:after
{
       border-radius: 0 100px 100px 0;
           padding: 10px 13px 10px 5px;
}
.section-product .swiper-button-next:after
{
       border-radius: 100px 0px 0px 100px;
           padding: 10px 5px 10px 13px;
}
.text-center{text-align: center;}
.data-product-slide .swiper-wrapper,
.flashsale-swiper .swiper-wrapper {height: auto; align-items: stretch;}
.p-item.swiper-slide {height: auto !important; display: flex; flex-direction: column;}
.p-item.swiper-slide .p-text {flex: 1 1 auto; display: flex; flex-direction: column;}
.p-item.swiper-slide .p-btn-group {margin-top: auto;}
.section-banner-center img
{
    width: 100%;
    height: 100%;
    
}

/* Category cards share the homepage appearance while keeping their existing actions. */
:is(#page-category, #page-search) .content-cate > .p-item {
    min-width: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #edf0f2;
    border-radius: 16px;
    box-shadow: 0 1px 2px rgba(16, 24, 40, .05);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
:is(#page-category, #page-search) .content-cate .p-item .p-img {
    margin: 0;
    padding: 12px 12px 4px;
    overflow: hidden;
    border-radius: 16px 16px 0 0;
}
:is(#page-category, #page-search) .content-cate .p-item .p-img img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    border-radius: 10px;
    transition: transform .35s ease;
}
:is(#page-category, #page-search) .content-cate .p-item .p-text {
    min-width: 0;
    flex: 1;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    align-content: flex-start;
    gap: 6px 8px;
    padding: 10px 14px 24px;
}
:is(#page-category, #page-search) .content-cate .p-item .p-name {
    flex: 0 0 100%;
    min-width: 0;
    margin: 0 0 7px;
}
/* Flatten the visual layout only; links, cart callbacks and tooltip markup stay intact. */
:is(#page-category, #page-search) .content-cate .p-item .p-price-group,
:is(#page-category, #page-search) .content-cate .p-item .p-btn-group {
    display: contents;
}
:is(#page-category, #page-search) .content-cate .p-item .p-price {
    order: 1;
    flex: none;
    width: auto;
    margin: 0;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.6;
    color: #000;
}
:is(#page-category, #page-search) .content-cate .p-item .p-old-price {
    order: 4;
    flex: 0 0 100%;
    margin: 0;
    line-height: 1.6;
}
:is(#page-category, #page-search) .content-cate .p-item .p-discount {
    order: 2;
    flex: none;
    margin: 0;
    align-self: center;
}
:is(#page-category, #page-search) .content-cate .p-item .p-btn-cart {
    order: 3;
    flex: none;
    position: static;
    width: 44px;
    height: 44px;
    margin-left: auto;
    border-radius: 50%;
    box-shadow: 0 4px 12px rgba(16, 24, 40, .2);
}
:is(#page-category, #page-search) .content-cate .p-item .p-btn-cart::before {
    background-size: 20px;
}
@media (hover: hover) and (pointer: fine) {
    :is(#page-category, #page-search) .content-cate .p-item:hover {
        transform: translateY(-4px);
        border-color: rgba(42, 114, 74, .35);
        box-shadow: none;
        z-index: 6;
    }
    :is(#page-category, #page-search) .content-cate .p-item:hover .p-img img {
        transform: scale(1.06);
        bottom: auto;
    }
}
@media (max-width: 1023px) {
    :is(#page-category, #page-search) .content-cate > .p-item { border-radius: 12px; }
    :is(#page-category, #page-search) .content-cate .p-item .p-img { padding: 8px 8px 0; }
    :is(#page-category, #page-search) .content-cate .p-item .p-text { padding: 10px 10px 18px; }
    :is(#page-category, #page-search) .content-cate .p-item .p-name {
        height: 42px;
        font-size: 14px;
        line-height: 21px;
        overflow: hidden;
    }
    :is(#page-category, #page-search) .content-cate .p-item .p-price {
        flex: 0 0 100%;
        font-size: 17px;
        line-height: 1.5;
    }
    :is(#page-category, #page-search) .content-cate .p-item .p-old-price {
        order: 2;
        flex: none;
        font-size: 13px;
        white-space: nowrap;
    }
    :is(#page-category, #page-search) .content-cate .p-item .p-discount {
        order: 3;
        font-size: 10px;
        white-space: nowrap;
    }
    :is(#page-category, #page-search) .content-cate .p-item .p-btn-cart {
        width: 40px;
        height: 40px;
    }
    :is(#page-category, #page-search) .content-cate .p-item .p-out-of-stock {
        font-size: 11px;
        padding: 4px 10px;
        border-radius: 0 12px 0 8px;
    }
}


/* 2024 */
.header-banner{

    display: flex;

    width: 100%;

}

.header-bottom nav button {

    background: var(--color);

}

.ssub li a:first-child{

    font-weight: bold;

}

ul.menu>li a:hover, header menu>li a:hover {

    font-weight: bold;

}

.product-list-item *{

    transition-duration: 0.3s;

}

.product-list-item:hover img{

    scale: 1.1;

}

.product-list-item:hover h3{

    color: var(--color);

}

.product-list-item:hover {

    box-shadow: 0 0 5px rgb(0 0 0 / 20%);

}

.footer-mid ul li.upcase{

    text-transform: uppercase;

    margin-bottom: 5px;

}

.footer-bottom {

    padding: 0;

    text-align: left;

}

.footer-bottom .copyright{

    display: flex;

    margin: 25px 0;

    align-items: center;

    gap: 20px;

    line-height: 1.7;

}

.footer-bottom .copyright img{

    max-height: 60px;

}

.footer-bottom .copyright .gov{

    margin-left: auto;

    display: flex;

}

.section-home-banner {

    position: relative;

}

.section-home-banner .home-banner{width: calc(100% - 520px);}


.home-banner-full .swiper-slide img
{

   /* position: absolute;

    width: 100%;

    height: 100%;*/
    min-height: 520px;

}
/*.container-menu
{
    position: absolute;
    max-width: 1200px;
}*/

.swiper-slide img {

    object-fit: cover;

    display: flex;

    width: 100%;
    padding: 1px;

}

.section-banner-center .container a {

    border-radius: 10px;

    overflow: hidden;
    width: 100%;
    box-shadow: 0 0 5px rgb(0 0 0 / 30%);

}
.section-home-banner ul.menu{

    z-index: 90;

}

.section-home-banner .home-banner-right{

    z-index: 9;

}

.section-home-banner .home-banner-right{

    width: 288px;

}

.section-home-banner .home-banner-right.wFull{

    top: 15px;

    height: calc(100% - 20px);

}

.home-banner-full .swiper-button-next{

    right: calc(50% - 349px);

}

.home-banner-full .swiper-button-prev{

    left: calc(50% - 349px);

}

.home-flash, .home-block-product{

    /* background: #D91605; */

    padding: 8px;

    border-radius: 10px;

    overflow: hidden;

    border: 2px solid var(--color);

}

.home-flash>.swiper{

    padding: 5px;

    padding-top: 15px;

}

.home-block-product{

    margin: 10px 0;

    background: transparent;

    overflow: inherit;

    padding: 0;

    border:none;

}

.home-block-product>.swiper{

    padding: 5px;

}
.home-flash-heading > div > img{
    width: 35px
}
.home-flash-heading {

    display: flex;

    max-width: calc(100% + 16px);

    width: calc(100% + 16px);

    margin-left: -8px;

    margin-top: -8px;

    background: var(--color);

    align-items: center;

    gap: 10px;

    color: #fff;

    padding: 10px 15px;

}

.home-flash-heading > div > b {

    text-transform: uppercase;

    font-size: 33px;

    font-style: italic;

    text-shadow: 0 4px 8px rgba(0,0,0,0.25);

}

.home-flash-heading > span {

    margin-left: 20px;

    font-size: 23px;

    font-weight: bold;

}

.home-flash-heading > span i {

    font-style: normal;

    background: #111;

    margin: 0 1px;

    padding: 2px 7px;

    border-radius: 5px;

}

/* .home-flash-heading>img{

    margin-bottom: 15px;

} */

.home-flash-heading>p{

    margin: 0;

    color: #fff;

    display: flex;

    align-items: center;

    gap: 4px;

}

.home-flash-heading>p span{

    font-size: 20px;

    background: #fff;

    color: #D91605;

    padding: 2px 6px;

    border-radius: 10px;

    font-weight: bold;

}

.home-flash .swiper-button-next, .home-flash .swiper-button-prev, .home-block-product .swiper-button-next, .home-block-product .swiper-button-prev{

    zoom: 0.7;

}

.pro-item{

    padding: 10px;

    background: #fff;

    position: relative;

    -webkit-box-shadow: 0 1px 6px rgba(0,0,0,0.25);

    box-shadow: 0 1px 6px rgba(0,0,0,0.25);

    border-radius: 15px;

    overflow: hidden;

}

/* .swiper-wrapper .pro-item{

min-height: 300px;

} */

.pro-item>a>img{

    object-fit: cover;

    display: flex;

    width: 100%;

    aspect-ratio: 1/1;

    margin-bottom: 10px;

    transition-duration: 0.3s;

}

.pro-item:hover>a>img{

    scale: 1.1;

}

.pro-item>a>h3{

    font-size: 16px;

    font-weight: normal;

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    overflow: hidden;

    text-overflow: ellipsis;

    margin-bottom: 5px;

}

.pro-item>strong{

    display: block;

    color: #e00;

    margin-bottom: 5px;

    font-size: 18px;

}

.pro-item>span{

    display: flex;

    gap: 5px;

    font-size: 14px;

    align-items: center;

    color: #777;

    height: 23px;

}

.pro-item>span i{

    font-style: normal;

    color: #eb5757;

    background: #fff0e9;

    padding: 2px 4px;

    border-radius: 3px;

}

.home-block-product-name{

    color: #fff;

    font-size: 20px;

    margin: 10px 0;

    text-transform: uppercase;

    padding-bottom: 5px;

    border-bottom: 1px dashed;

}
.container-content
{
    display: flex;
    gap:20px;
    align-items: start;
}

.product-sort
{
    margin-top: 10px;
}
.product-filter{

   

    width: 25%;

    border-radius: 10px;

    overflow: hidden;

    box-shadow: 0 0 3px rgb(0 0 0 / 30%);

    margin-bottom: 20px;

}

.product-filter+.product-list{

    width: 75%;

   

    margin: 0 0 20px;

}

.product-filter+.product-list .product-list-item {

    width: calc(25% - 15px);

    border-radius: 10px;

    overflow: hidden;

}

.product-filter .op{

    padding: 15px;

    border-top: 1px solid #eee;

}

.product-filter .op>label{

    width: 100%;

    font-weight: bold;

    font-size: 16px;

}

.product-filter .op:first-child{

    border-top: 3px solid var(--color);

    border-radius: 7px;

}

.product-filter .op.child{

    display: flex;

    flex-direction: column;

    gap: 5px;

    font-size: 15px;

    font-weight: 500;

}

.product-filter .op a.cc{

    margin-left: 15px;

    font-size: 14px;

    display: list-item;

    font-weight: normal;

}

.product-filter .op.check{

    display: flex;

    gap: 10px;

    font-size: 15px;

    flex-wrap: wrap;

}

.product-filter .op.check a{

    display: flex;

    align-items: center;

    /* margin-right: 15px; */

    min-width: calc(50% - 5px);

}

.product-filter .op.check a::before {

    content: "☐";

    float: left;

    font-size: 20px;

    margin-right: 5px;

    line-height: 1;

    color: #999;

}

.product-filter .op.check a:hover:before, .product-filter .op.check a.checked:before{

    content: "▣";

    color: var(--color);

}

.product-sort{

    width: 100%;

    display: flex;

    align-items: center;

    gap: 15px;

    font-size: 15px;

    color: #555;

}

.product-sort button, .product-sort a{

    border: 1px solid var(--color);

    background: #fff;

    font-size: 15px;

    color: var(--color);

    text-transform: capitalize;

    padding: 5px 10px;

    border-radius: 20px;

    cursor: pointer;

}

.product-sort button.active, .product-sort button:hover,

.product-sort a.active, .product-sort a:hover{

    background: var(--color);

    color: #fff;

}

.aDes{

    border-radius: 10px;

    overflow: hidden;

    box-shadow: 0 0 3px rgb(0 0 0 / 30%);

    width: 100%;

    padding: 15px;

}

.product-list-item .price.price2024{

    display: block;

    position: relative;

}

.product-list-item .price.price2024 span{

    display: flex;

    gap: 5px;

    font-size: 14px;

    align-items: center;

    color: #777;

    width: 100%;

    margin-top: 3px;

}

.product-list-item .price.price2024 span i {

    font-style: normal;

    color: #eb5757;

    background: #fff0e9;

    padding: 2px 4px;

    border-radius: 3px;

}

.p-btn-cart {

    background-color: #F5F5F5;

    border-radius: 8px;

    width: 38px;

    height: 30px;

    -webkit-transition: .15s all;

    transition: .15s all;

    border: 0;

    position: absolute;

    right: -3px;

    bottom: -3px;

}

.pro-item .p-btn-cart {

    right: 7px;

    bottom: 7px;

}

.p-btn-cart:hover {

    background-color: var(--color);

}

.p-btn-cart::before {

    content: '';

    background: url(/template/images/icart.png) no-repeat center;

    background-size: 18px;

    display: block;

    height: 100%;

    cursor: pointer;

}

.p-btn-cart:hover::before {

    -webkit-filter: brightness(100);

    filter: brightness(100);

}
.c-desription
{
    display: flex;
    gap:20px;
    align-items: start;
}
.c-desription td
{
    padding: 5px;
}
.product-description {

    overflow: hidden;

    -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.25);

    box-shadow: 0 1px 3px rgba(0,0,0,0.25);

    border-radius: 15px;

    padding: 15px;

    margin-bottom: 15px;
    width: 76%;

}
.product-thongsokythuat
{
    width: 24%;
}

.product-description-h {

    border-bottom: 1px solid #eee;

    padding-left: 15px;

    margin-left: -15px;

    padding-right: 15px;

    margin-right: -15px;

    margin-bottom: 10px;

    padding-bottom: 10px;

    font-size: 18px;

    font-weight: 500;

}

.product-list-item{

    border-radius: 10px;

}

.product-list-item h3, .pro-item>a>h3{

    font-size: 15px;

    font-weight: 500;

    min-height: 40px;

}

.breadcrumb, .breadcrumb li:not(:last-child) a, .breadcrumb li span{    font-size: 14px;}

@media (max-width: 800px){

    

    .home-flash-heading > img{

        height: 35px;

    }

    .home-flash-heading > b{

        font-size: 25px;

    }

    .section-home-banner .home-banner-right a {

        height: 40vw;

    }

    .header-banner img{

        min-height: 30px;

        object-fit: cover;

    }

    .footer-mid .container{

        gap: 25px;

    }

    .footer-bottom .copyright {

        gap: 10px;

        line-height: 1.5;

        flex-direction: column;

        justify-content: center;

        text-align: center;

    }

    .footer-bottom .copyright .gov {

        margin: auto;

    }

    

    .home-banner-full {

        position: initial;

        height: 65vw;

    }

    .pro-item>a>h3 {

        font-size: 14px;

    }

    .pro-item>strong {

        font-size: 16px;

    }

    .section-home-banner .home-banner-right{

        width: 100%;

        display: flex;

        flex-direction: row;

        margin: 0 0 15px;

    }

    .product-filter {

        display: none;

        width: 100%;

    }

    .product-filter+.product-list{

        width: 100%;

    }

    .product-filter+.product-list .product-list-item {

        width: calc(50% - 5px);

    }

    .p-m-btn{

        display: flex !important;

        height: 30px;

        padding: 0 10px;

        border: 1px solid #ccc;

        background: #fff;

        gap: 5px;

        font-size: 15px;

        align-items: center;

        border-radius: 10px;

        cursor: pointer;

        margin-bottom: 15px;

    margin-right: 15px;

    float: left;

    }

    .p-m-btn svg{

        height: 17px;

        width: 17px;

    }

    .product-sort {

        gap: 15px;

        flex-wrap: wrap;

        margin-bottom: 10px;

        justify-content: center;

        display: none;

    }

    .product-sort > *{

        margin-bottom: 10px;

        margin-right: 10px;

    }

    .product-sort > span{

        display: none;

    }

}
.container-flexslider
{
    aspect-ratio: 480 / 480;
}

/* mobile */
@media (min-width: 1612px){
    #ui-id-1
    {
        width: 550px !important;
    }
    ul.menu, header menu,.home-banner-right
    ,.header-bottom nav button
    {
        width: 260px;
    }
    
    .home-banner-right a{
         height: calc(530px / 2);
    }
    ul.menu>li, header menu>li
    {
        height: 50px;
    }
    .home-banner-full .swiper-button-next{

    right: calc(50% - 430px);

}
ul.menu .sub, header menu .sub
{
    left: 260px;
    width: calc(100% - 260px);
}
.home-banner-full .swiper-button-prev{

    left: calc(50% - 430px);

}
    body,
    .header-bottom nav>a,.header-bottom nav button,
    .footer-bottom,
    .breadcrumb, .breadcrumb li:not(:last-child) a, .breadcrumb li span,
    .product-buy-area-inf
    
    {
        font-size: 18px;
        line-height: 30px;
    }
    .section-home-banner ul.menu .sub a, header menu>li:hover .sub a
    {
        font-size: 18px !important;
        line-height: 25px;
    }
    .container{max-width: 1612px}
    .header-bottom nav>a {
        font-size: 18px;
        height: 50px;
    }
    .header-bottom nav button
    {height: 50px}
    .asidebanner .abr {
        
        left: calc(50% + 822px);
       
    }
    .asidebanner .abl {
        
        right: calc(50% + 822px);
       
    }
    .product-image
    {
            width: 40%;
    }
    .product-buy-area{width: 35%;}
    .product-highlight{width: 25%}
    .product-filter+.product-list{   width: 74% !important;}
    .product-filter{width: 25% !important}
    .header-top .header-search-form
    {
        width: 550px;
    }
    .p-item .p-name *
    {
        font-size: 18px !important; line-height: 25px !important;
    }
    .p-item .p-name
    {
        height: 50px !important;
    }
    .product-list-item h3, .pro-item>a>h3
    {
        font-size: 18px; line-height: 25px; height: 50px;
    }


}
@media (min-width:1024px)
{
    .modal-global-data::-webkit-scrollbar {
    width: 5px; /* Độ rộng của thanh cuộn dọc */
    height: 5px; /* Độ cao của thanh cuộn ngang */
    
}

/* Tùy chỉnh track của thanh cuộn */
.modal-global-data::-webkit-scrollbar-track {
    background-color: transparent; /* Màu nền của track */
    border-radius: 10px;
}

/* Tùy chỉnh thumb của thanh cuộn */
.modal-global-data::-webkit-scrollbar-thumb {
    background-color: var(--color); /* Màu của thumb */
    border-radius: 10px;
}

/* Tùy chỉnh thumb khi di chuột qua */
.modal-global-data::-webkit-scrollbar-thumb:hover {
    background-color: #1d5235; /* Màu của thumb khi hover */
}
}
@media (max-width: 1023px){
    ul.menu .sub a, header menu>li .sub a {
        line-height: 19px;
        padding: 10px;
        font-size: 14px;
        display: block;
        border-bottom: 1px solid #f1f0f1;
    }
    .price_container
    {
        flex-direction: column;
        align-items: start;
    }
    .product-buy-area-price del
    {
        margin-left: 0;
    }
    .footer-top-left
    {
        gap: 10px;
    }
    .footer-top-social
    {
        justify-content: center;
        margin-bottom: 20px;
    }
    .footer-top form,.footer-top-left
    {
        flex-direction: column;
    }
    .header-top-top
    {
        display: none;
    }
    .form-taikhoan
    {
            width: 100%; display: block;
    }
    .taikhoan-col-left,.taikhoan-col-right
    {
        width: 100%;        margin-top: 10px;
    }
    .taikhoan-col-right
    {
        margin-left: 0;
        margin-top: 20px;
    }
    .taikhoan,.form-taikhoan .item-input
    {
               display: block;
    }
    .form-taikhoan .item-input input[type="text"]
    {
       width: 100%;
    }
    .quan-ly-don-hang-tab
    {
        overflow: auto;
    }
    .quan-ly-don-hang-tab li
    {
        white-space: nowrap;
    }
    .item-order,.item-order-product
    {
        padding: 5px 5px;
    }
    .item-order-product-left-title
    {
        font-size: 12px;
    }
    .ctdh-timeline
    {
        grid-template-columns: repeat(1, 1fr);
        gap: 8px;margin: 10px 0;
    }
    .ctdh-timeline-item-icon
    {
        display: flex;
        margin: inherit;
        padding: 8px 10px;
        margin-bottom: 0;        margin-right: 10px;
    }
    .modal-global-container
    {
        padding:1rem;    width: 95%;
    }
    .ctdh-timeline-item-icon:before
    {
        display: none;
    }
    .ctdh-timeline-item
    {
        width: auto;
        display: flex;
        align-items: center;
    }

    .ctdh-1,.infokh
    {
        display: block !important;

    }
    .infokh-left,.infokh-right
    {
        width: 100%;    margin: 15px 0;
    }
    .cthd-tt
    {
        width: 100%;
    }
    .ctdh-timeline-item .ctdh-timeline-item-icon svg
    {
        width: 20px; height: 20px;
    }
    .p-item .p-discount
    {
        font-size: 10px;
    }
    .p-item .p-old-price
    {
        font-size: 15px;
    color: #999;
    margin: 0 3px 7px 0;
    }
    
    .section-product .swiper-button-next, .section-product .swiper-button-prev
    {
        display: none;
    }
    .section-tintuc .box-title-group .title
    {
        font-size: 18px;
        line-height: 24px;
    }
    .data-product-slide
{
    padding: 0 !important;
}
    .section-brand-slide .swiper-button-next:after, .section-brand-slide .swiper-button-prev:after
    {
        display: none
    }
    /* section-brand-slide styles moved inline into template/pages/home.php (single source of truth) */
    .section-product .swiper-button-prev,.section-product .swiper-rtl .swiper-button-next
    {
        left: 0;
    }
    .section-product .swiper-button-next,.section-product .swiper-rtl .swiper-button-prev
    {
        right: 0
    }
    .section-product .data-product
    {
        margin-top: 10px
    }
    .section-home-product .container{width: calc(100% - 24px);}
    .section-product
    {
        position: relative;
        margin: 20px 0;
    }
    .btn-view-more.text-center.mobile.section-product-more-mb
    {
        position: absolute;
        top: 0;
        right: 0;
       
        height: auto;
        margin: 0;
        font-size: 14px;
        line-height: 22px;
    }
    .btn-view-more.text-center.mobile.section-product-more-mb a{
        color: var(--color);
        font-weight: bold;
    }
    .section-product .box-cat-child div
    {
        font-size: 14px;
        background: #ECECEC;
        padding: 7px 12px;
        line-height: 22px
    }
    .section-product .box-title
    {
        font-size: 18px;
        line-height: 22px;
        text-align: left;
        padding-bottom: 8px;
        border-bottom: thin solid var(--color);
        margin-bottom: 13px;
    }
    .section-product .box-title ::after
    {
        display: none
    }
    .section-product .box-title *
    {
        line-height: initial;
        padding-bottom: 0;
        border: none;
    }
    .section-brand
    {
        padding: 10px 0;
    }
	.section-page-content
    {
        grid-template-columns: repeat(2, 1fr);
    }   
	.p-item
	{	
		-webkit-box-shadow: inset 1px 0px 0px #EDEDED, inset -1px 0px 0px #EDEDED, inset 0px 1px 0px #EDEDED, inset 0px -1px 0px #EDEDED;
    	box-shadow: inset 1px 0px 0px #EDEDED, inset -1px 0px 0px #EDEDED, inset 0px 1px 0px #EDEDED, inset 0px -1px 0px #EDEDED;
	}
	.list-menu-scroll
	{
		display: -webkit-flex;
	    display: flex;
	    -webkit-align-items: center;
	    align-items: center;
	    -webkit-flex-flow: row nowrap;
	    flex-flow: row nowrap;
	    overflow-x: scroll;
	    -webkit-overflow-scrolling: touch;
	    transition: transform 0.25s ease 0s;
	    background: var(--color)		
	}
	.list-menu-scroll::-webkit-scrollbar
	{
		display: none;
	}
	.list-menu-scroll li {
	    display: inline-block;
	    flex: auto;
	    -ms-flex: auto;
	    max-width: initial;
	}
	.list-menu-scroll li a {
	    display: -webkit-flex;
	    display: flex;
	    -webkit-align-items: center;
	    -ms-align-items: center;
	    align-items: center;
	    -webkit-justify-content: center;
	    justify-content: center;
	        color: #fff;
	     font-weight: 400; 
	     font-size: 14px; 
	    line-height: 18px;
	    padding: 8px 10px;
	    white-space: nowrap;
	}
    .section-banner-center
    {
        overflow-x: scroll;
        margin-top:0px
    }
    .section-banner-center::-webkit-scrollbar
    {
    	display: none
    }
    .section-banner-center .container
    {
       
    }
    .section-banner-center .container div
    {
       flex: 0 0 48.3%;
       max-width: 289px;
    }
    .pd-variant-list a
    {
        width: calc(100% / 3 - 5px) !important;
    }
    .container-content,.c-desription
    {
        flex-direction: column;
    }
    .product-description
    {
        width: 100% !important;
    }

    .product-list-chitiet
    {
         grid-template-columns: repeat(2, 1fr);
    }
    .component-modal-variation-content
    {
        max-width: 100% !important;
    }
    .component-tools
    {
        grid-template-columns: repeat(1, 1fr) !important;
    }
    .voucher-c, .voucher-value-c, .area_total {
    padding: 5px 0px !important;
}
   .js-total-item-price
   {
    font-size: 16px;
   }
    .form-cart-c
    {
        grid-template-columns: repeat(1, 1fr) !important;
        gap: 25px !important;
    }
    .content-cate,.product-list-chitiet
    {
        grid-template-columns: repeat(2, calc(98% / 2));
        gap: 2%;
        row-gap: 10px;
    }
    .product-image{
        position: relative;
        top: 0;
        margin: 0;
    }
    #ui-id-1 {                   
        left: 0 !important;
        width: 100% !important;
        top: 55px !important;
    }
    .home-banner-right-mb
    {
            gap: 20px;
        height: auto;
       
        display: flex;
        
        justify-content: space-between;

    }
    .home-banner-right-mb a
    {
        width: 48%;
        border-radius: 15px;
    overflow: hidden;
    -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25);
    }
    .home-banner-right-mb a img
    {
        width: 100%;
        height:100%;
        object-fit:cover;
    }

    .home-banner-full .swiper-button-next{

        right:10px;

    }

    .home-banner-full .swiper-button-prev{

        left:10px;

    }
    .section-home-banner .swiper-pagination
    {
            bottom: 20px !important;
    }
     .container-menu
    {
       display: none;
    }
    .home-banner-full .swiper-slide img
    {
        min-height: 150px;
    }
    .section-tintuc-item-container
    {
        grid-template-columns: repeat(1, 1fr);
    }
    .section-brand-featured
    {
         overflow-x: scroll;
         display: flex;
         gap:8px;
    }
    .section-brand-featured::-webkit-scrollbar
    {
    	display: none
    }
    .section-brand-featured > div
    {
    	flex: 0 0 40.333333%;
        max-width: 289px;       
    }
    .section-product-more-mb
    {
        margin-top: 10px;
    }
    .section-product .box-cat-child
    {
            display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        position: relative;
        white-space: nowrap;
        overflow: auto;
        padding-right: 0 !important;
                justify-content: start !important;
                margin-bottom: 0px;
    }
    .desktop, .pc, .section-home-banner ul.menu{

        display: none !important;

    }
    .section-product .box-cat-child div
    {
       overflow: unset !important;
        min-width: auto !important;
    }
    .mobile{

        display: inherit !important;

    }
    .pc {display: none;}
    .mb {display: block;}
    .container{

        width: calc(100% - 20px);

    }

    /* =====================================================
       MOBILE HEADER TOP — REDESIGN
       Chỉ áp dụng cho mobile (max-width: 1023px)
       Giữ nguyên mega menu, không ảnh hưởng desktop
    ===================================================== */

    /* Wrapper header top: sticky + gradient nền */
    .header-top {
        position: sticky;
        top: 0;
        z-index: 999;
        padding: 0;
        background: linear-gradient(135deg, var(--color) 0%, #1d5235 100%);
        box-shadow: 0 2px 12px rgba(29, 82, 53, 0.35);
        border-bottom: 1px solid rgba(255,255,255,0.08);
    }

    /* Container flex row */
    .header-top .container {
        display: flex;
        align-items: center;
        gap: 10px;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        padding: 0 12px;
        box-sizing: border-box;
        height: 54px;
    }

    /* SVG icons trong header top */
    .header-top svg {
        fill: #fff;
        color: #fff;
        height: 22px;
        width: 22px;
        flex-shrink: 0;
    }

    /* ---- HAMBURGER BUTTON ---- */
    .header-top .container > button.mobile {
        flex: 0 0 40px;
        width: 40px;
        height: 40px;
        padding: 0;
        display: flex !important;
        align-items: center;
        justify-content: center;
        background: none;
        border: none;
        border-radius: 0;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
    }
    .header-top .container > button.mobile:active {
        opacity: 0.7;
    }
    button[aria-label="menu"] path {
        fill: #fff;
    }
    button[aria-label="menu"] svg {
        width: 20px;
        height: 20px;
    }

    /* ---- LOGO MOBILE ---- */
    .header-top .container > a.mlogo {
        flex: 0 0 44px;
        width: 44px;
        height: 44px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0 !important;
        background: none;
        border: none;
        border-radius: 0;
        overflow: visible;
        -webkit-tap-highlight-color: transparent;
    }
    .header-top .container > a.mlogo:active {
        opacity: 0.75;
    }
    .mlogo img {
        display: block;
        width: 40px;
        height: 40px;
        object-fit: contain;
        filter: brightness(0) invert(1);
    }

    /* Search inherits the desktop appearance; responsive sizing is defined below. */
    .header-top .header-search-button:active {
        opacity: 0.7;
    }
    .header-top .header-search-button svg {
        color: inherit;
        max-width: 28px;
        max-height: 28px;
    }

    /* ---- CART BUTTON ---- */
    .header-top .container > a.btn-cart {
        flex: 0 0 40px;
        width: 40px;
        height: 40px;
        padding: 0 !important;
        display: flex !important;
        align-items: center;
        justify-content: center;
        background: none;
        border: none;
        border-radius: 0;
        position: relative;
        -webkit-tap-highlight-color: transparent;
    }
    .header-top .container > a.btn-cart:active {
        opacity: 0.75;
    }
    .btn-cart svg {
        width: 22px;
        height: 22px;
        fill: #fff;
        filter: drop-shadow(0 1px 2px rgba(0,0,0,0.2));
    }
    .btn-cart path, .btn-cart circle {
        fill: #fff !important;
        filter: none;
    }
    .btn-cart .btn-cart-qlt {
        position: absolute;
        top: -4px;
        right: -4px;
        font-size: 10px;
        font-style: normal !important;
        font-weight: 700;
        min-width: 17px;
        height: 17px;
        line-height: 17px;
        padding: 0 4px;
        text-align: center;
        border-radius: 9px;
        background: #ff3b30 !important;
        color: #fff !important;
        border: none !important;
        box-sizing: border-box;
        display: block;
    }
    /* Badge lồng nhau khi jQuery .load() chèn thêm thẻ i bên trong */
    .btn-cart .btn-cart-qlt .btn-cart-qlt {
        position: static;
        display: inline;
        background: none !important;
        color: inherit !important;
        padding: 0;
        border-radius: 0;
        min-width: auto;
        height: auto;
        line-height: inherit;
    }
    .btn-cart .desktop {
        display: none !important;
    }

    .header-menu, .header-menu menu{

        width: 100%;

        position: inherit;

        float: left;

    width: 100%;

    max-height: calc(100vh - 56px);

    overflow-y: scroll;

    }

    .ssub li {

        width: 100%;

        margin: 0;

    }

    .ssub li a {

        line-height: 19px;

        margin: 7px 10px 7px 20px!important;

    }

    .ssub li a:first-child {

        margin: 10px !important;

    }

    .section-home-banner ul.menu>li:hover .sub, .header-menu menu>li:hover .sub{

        display: none;

      }

      .header-menu menu>li {

        min-height: 40px;

        height: auto;

        float: left;

    width: 100%;

    }

    .header-menu menu>li .sub {

        position: initial;

        min-width: auto;

        width: 100%;

        height: auto;

        float: left;

        border: 0;

    }

    .section-home-banner {

        padding-top: 10px;

    }

    .section-home-banner .home-banner{

        position: relative;

        width: 100%;

        left: 0;

        height: auto;

    }

    .section-home-banner .home-banner-right{

        position: relative;

        width: 100%;

        gap: 10px;

        margin-top: 10px;

    }

    .product-list {

        gap: 10px;

    }

   

    .footer-top form label {

        line-height: 1.5;

        text-align: center;

        display: block;

        margin-bottom: 10px;

    }

    .footer-top form .right, .product-image, .product-buy-area, .product-highlight,

    .blog-item, .section-banner-center .container a{

        width: 100%;

        margin-left: 0;

        margin-right: 0;

    }

    .footer-top input {

        width: calc(100% - 90px);

    }

    .footer-mid .container, .blog-list{

        flex-direction: column;

        gap: 10px;

    }

    .section-heading {

        font-size: 18px;

    }

    .section-heading span::after {

        display: none;

        content: '';

        border-right: 30px solid transparent;

        border-bottom: 35px solid var(--color);

    }

    .product-list-item .price {

        gap: unset;

        justify-content: space-between;

        font-size: 14px;

    }

    .product-list-item .price del {

        font-size: 12px;

    }

    #product-top {

        flex-direction: column;

        align-items: center;

    }

    article img, article input[type=image]{

        height: auto !important;

    }

    article *{

        max-width: 100%;

    }

    .page-heading>h1 {

        font-size: 25px;

        margin-top: 15px !important;

    }

    .bar-top {

        padding: 0 10px;

        box-sizing: border-box;

        font-size: 14px;

    }

    .listorder li{

        margin: 10px;

    }

    .listorder li .colinfo {

        width: calc(100% - 90px);

    float: right;

    }

    .infouser, .area_other{

        padding-left: 10px;

        padding-right: 10px;

    }

    .shipment {

        position: relative;

       

            margin-top: 10px;

    }

    .shipment>input {

        top: 0 !important;

        left: 0 !important;

    }

    .shipment label {

        left: 30px !important;

        top: 0 !important;

    }

    .shipinfo {

        margin: 0;

    }

    .shipment label.pos2+input + .shipinfo:before{

        content: ' ';

        position: absolute;

        bottom: 100%;

        left: 3px;

        width: 0;

        height: 0;

        border-bottom: 7px solid #f0f0f0;

        border-left: 7px solid transparent;

        border-right: 7px solid transparent;

    }

     .payoffline, .payonline{

        width: calc(100% - 20px);

        margin: 10px 10px 0;

    }

    .wrap_cart {

        padding-bottom: 10px;

    }
    .home-flash-heading
    {
        flex-direction: column;
        align-items: stretch;
        padding: 12px 12px 14px;
    }
    .home-flash-count
    {
        align-items: flex-start;
    }
    .section-tintuc .container{width: calc(100% - 24px);}
    .section-tintuc .box-title-group
    {
        justify-content: flex-start;
        position: relative;
            padding-bottom: 8px;
                margin-bottom: 10px;
    }
    .section-tintuc .box-title-group a{
               position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-80%);
    }
    .section-tintuc .box-title-group::after
    {
        left: 0;
            transform: translateX(0%);
            width: 100%;
    }

}
@media (max-width: 430px){
    .section-tintuc-item .item-img
    {
            width: 170px;
    }
    .section-tintuc-item .item-text
    {
            width: calc(100% - 190px);
    }
   
    .section-tintuc-item .item-img
    {
        width: 140px;
    }
    .section-tintuc-item .item-text
    {
        width: calc(100% - 152px);
    }
    
}

/* Accessible hidden headings must not create an off-screen layout. */
.visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0 !important;
}

/* Shared phone/tablet layout. IDs keep page-inline desktop styles from overriding it. */
@media (max-width: 1023px) {
    /* The footer reserves space for the fixed toolbar; body padding would add a white gap. */
    body {font-size: 14px; line-height: 1.5; padding-bottom: 0;}
    main, main section, .container, .container-content, .c-desription {min-width: 0;}
    .container {width: calc(100% - 24px); max-width: 100%;}
    .container .container {width: 100%;}
    /* header-top: sticky, gradient — đã định nghĩa trong block @media trước */
    .header-top {width: 100%;}
    .header-top .container {height: 54px; padding: 0 12px; gap: 10px; box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0;}
    .header-top .container > button.mobile {flex: 0 0 40px; width: 40px; height: 40px;}
    .header-top .container > a.mlogo {flex: 0 0 38px; width: 38px; height: 38px;}
    .header-top .container > a.btn-cart {flex: 0 0 40px; width: 40px; min-width: 40px; max-width: 40px; height: 40px;}
    .header-top .mlogo img {display: block; width: 28px; height: 28px; object-fit: contain;}
    .header-top .header-search-form {flex: 1 1 auto; width: auto; min-width: 0; max-width: none; margin: 0;}
    .header-top .header-search-field {width: 100%; min-width: 0; box-sizing: border-box;}
    .header-top .header-search-input {min-width: 0; font-size: 16px; text-overflow: ellipsis;}
    .header-top svg {width: 22px; height: 22px; max-width: 22px; max-height: 22px; fill: #fff;}
    .header-top-top {display: none;}
    .header-menu {clear: both;}
    .header-menu .container {width: calc(100% - 24px);}
    .header-menu menu {float: none; max-height: calc(100dvh - 150px); overscroll-behavior: contain;}
    .header-menu menu > li {position: relative; min-height: 44px;}
    .header-menu menu > li > a {height: auto; min-height: 44px; padding: 10px 48px 10px 10px; white-space: normal; overflow-wrap: anywhere;}
    .header-menu menu > li > span.mobile {position: absolute; right: 0; top: 0; width: 44px; height: 44px; text-align: center; line-height: 44px; cursor: pointer;}
    .header-menu menu > li .sub, .header-menu menu > li .ssub {left: auto; min-height: 0; padding: 0;}
    .header-menu .ssub li {width: 100%;}
    .header-menu .sub a {white-space: normal; overflow-wrap: anywhere;}
    .list-menu-scroll {width: 100%; overscroll-behavior-x: contain;}
    .list-menu-scroll li {flex: 0 0 auto;}
    .list-menu-scroll li a {min-height: 44px;}

    #page-home .section-home-product > .container,
    #page-home .section-tintuc > .container {width: calc(100% - 24px);}
    #page-home .section-product {margin: 24px 0;}
    #page-home .section-product .section-head-wrap {display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 12px; padding-bottom: 10px; border-bottom: 1px solid var(--color); margin-bottom: 12px; text-align: left;}
    #page-home .section-product .section-head-wrap .box-title {flex: 1 1 180px; min-width: 0; margin: 0; padding: 0; border: 0; font-size: 18px; line-height: 1.4;}
    #page-home .section-product .box-title {font-size: 18px; line-height: 1.4; overflow-wrap: anywhere;}
    #page-home .section-product .box-title span::after {display: none;}
    #page-home .section-product .section-more-link {position: static; transform: none; flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 40px; margin: 0; padding: 6px 12px; font-size: 12px; line-height: 1.4;}
    #page-home .section-product .box-cat-child {min-width: 0; max-width: 100%; justify-content: flex-start !important; flex-wrap: nowrap; gap: 8px; margin: 0 0 12px; padding: 0 0 6px; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none;}
    #page-home .section-product .box-cat-child::-webkit-scrollbar {display: none;}
    #page-home .section-product .box-cat-child > div {flex: 0 0 auto; height: auto; min-height: 40px; padding: 8px 12px; line-height: 1.4; white-space: nowrap; border-radius: 999px;}
    #page-home .data-product-slide {padding: 4px 0 12px !important;}
    #page-home .data-product-slide .p-item {height: auto; display: flex; flex-direction: column;}
    #page-home .data-product-slide .swiper-wrapper,
    #page-home .flashsale-swiper .swiper-wrapper {height: auto; align-items: stretch;}
    #page-home .data-product-slide .p-item .p-text,
    #page-home .flashsale-swiper .p-item .p-text {flex: 1 1 auto; display: flex; flex-direction: column;}
    #page-home .data-product-slide .p-item .p-btn-group,
    #page-home .flashsale-swiper .p-item .p-btn-group {margin-top: auto;}
    .p-item.swiper-slide {height: auto !important; display: flex; flex-direction: column;}
    .p-item.swiper-slide .p-text {flex: 1 1 auto; display: flex; flex-direction: column;}
    .p-item.swiper-slide .p-btn-group {margin-top: auto;}
    .data-product-slide .swiper-wrapper,
    .flashsale-swiper .swiper-wrapper {height: auto; align-items: stretch;}
    #page-home .p-item {position: relative;}
    #page-home .p-out-of-stock {position: absolute; top: 0; right: 0; z-index: 999; background: #d61706; color: #fff; font-size: 11px; font-weight: 700; line-height: 1.3; padding: 4px 10px; border-radius: 0 12px 0 8px; white-space: nowrap;}
    #page-home .data-product-slide .p-item .p-text {padding: 10px;}
    #page-home .data-product-slide .p-item .p-img {padding: 8px 8px 0;}
    #page-home .data-product-slide .p-item .p-price {font-size: 17px; line-height: 1.5; flex-basis: 100%;}
    #page-home .data-product-slide .p-item .p-btn-cart {width: 40px; height: 40px;}
    #page-home .data-product-slide .swiper-button-next,
    #page-home .data-product-slide .swiper-button-prev {display: none;}
    #page-home .home-banner-right-mb {gap: 10px;}
    #page-home .home-banner-right-mb a {width: calc((100% - 10px) / 2); min-width: 0;}
    #page-home .section-tintuc .box-title-group {display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; max-width: 100%;}
    #page-home .section-tintuc .box-title-group a {position: static; transform: none; padding: 6px 12px; min-height: 40px; font-size: 12px;}
    #page-home .section-tintuc .box-title-group .title {font-size: 18px; line-height: 1.4;}
    #page-home .section-tintuc-item {gap: 12px; padding: 12px 0;}
    #page-home .section-tintuc-item .item-img {flex: 0 0 35%; width: 35%; min-width: 0;}
    #page-home .section-tintuc-item .item-text {flex: 1 1 0; width: auto; min-width: 0;}
    #page-home .section-tintuc-item .item-text {min-height: 132px; padding: 5px 4px 5px 0;}
    #page-home .section-tintuc-item .item-title {font-size: 16px; line-height: 20px;}
    #page-home .section-tintuc-item .item-summary {margin-top: 4px; font-size: 13px; line-height: 18px; -webkit-line-clamp: 3;}
    #page-home .section-tintuc-item .item-time {gap: 4px 9px; font-size: 11px; line-height: 15px;}
    #page-home .data-product-slide .swiper-slide,
    #page-home .flashsale-swiper .swiper-slide,
    #page-home [class*="data-product"] .swiper-slide {height: auto !important;}
    #page-home .data-product-slide .p-item .p-img img,
    #page-home .flashsale-swiper .p-item .p-img img,
    #page-home [class*="data-product"] .p-item .p-img img {aspect-ratio: 1/1; object-fit: contain;}
    #page-home .data-product-slide .p-item .p-name,
    #page-home .flashsale-swiper .p-item .p-name,
    #page-home [class*="data-product"] .p-item .p-name {height: 42px; overflow: hidden;}
    #page-home .data-product-slide .p-item .p-price-group,
    #page-home .flashsale-swiper .p-item .p-price-group {min-height: 66px; align-content: flex-start;}
    #page-home .data-product-slide .p-item .p-old-price,
    #page-home .data-product-slide .p-item .p-discount,
    #page-home .flashsale-swiper .p-item .p-old-price,
    #page-home .flashsale-swiper .p-item .p-discount,
    #page-home [class*="data-product"] .p-item .p-old-price,
    #page-home [class*="data-product"] .p-item .p-discount {white-space: nowrap; flex: none;}
    #page-home .home-flash-heading {width: 100%; max-width: 100%; margin: 0; padding: 12px; gap: 8px;}
    #page-home .home-flash-title img {height: 36px;}
    #page-home .home-flash-title-text b {font-size: 24px;}
    #page-home .home-flash-title-text small {font-size: 11px;}
    #page-home .home-flash-count-items {gap: 6px;}
    #page-home .home-flash-count-item {min-width: 48px; padding: 4px 6px 3px;}
    #page-home .home-flash-count-item i {font-size: 19px;}
    #page-home .home-flash-end {font-size: 12px;}

    main .container-content, main .c-desription {flex-direction: column; gap: 16px;}
    main .product-filter {display: none; width: 100%; margin-bottom: 0;}
    main .product-filter + .product-list, main .product-list {width: 100%; min-width: 0;}
    main .content-cate, main .product-list-chitiet {width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px;}
    main .content-cate > *, main .product-list-chitiet > * {min-width: 0;}
    main .p-item {min-width: 0; border-radius: 12px;}
    main .p-item .p-text {padding: 10px; min-width: 0;}
    main .p-item .p-name {height: 42px; font-size: 14px; line-height: 21px; overflow-wrap: anywhere;}
    main .p-item .p-price-group {height: auto; min-height: 45px; gap: 4px;}
    main .p-item .p-price {font-size: 17px; line-height: 1.5; overflow-wrap: anywhere;}
    main .p-item .p-old-price {font-size: 13px; margin: 0;}
    main .p-item .p-discount {margin: 0; font-size: 10px;}
    main .p-item .p-btn-group {flex-wrap: wrap; gap: 6px;}
    main .p-item .p-btn-cart {flex-shrink: 0; min-width: 40px; min-height: 40px;}
    main .product-filter + .product-list .product-list-item {width: calc((100% - 10px) / 2);}
    main .p-m-btn {display: inline-flex !important; align-items: center; gap: 6px; min-height: 44px; height: auto; margin: 0 10px 12px 0; padding: 8px 12px;}
    main .p-m-btn svg {width: 18px; height: 18px;}
    main .product-sort {display: none; flex-wrap: wrap; gap: 8px; justify-content: flex-start;}
    main .product-sort > * {max-width: 100%; margin: 0 0 8px;}
    main .pagination {display: flex; flex-wrap: wrap; justify-content: center; gap: 6px;}
    main .pagination li {margin: 0;}
    main .pagination a, main .pagination span {min-width: 40px; height: 40px; padding: 0 12px; font-size: 14px; border-radius: 10px;}
    main .breadcrumb {display: flex; flex-wrap: wrap; gap: 4px; margin: 14px 0; overflow-wrap: anywhere;}
    main .breadcrumb li {float: none; min-width: 0; max-width: 100%;}
    main .breadcrumb li, main .breadcrumb li span {font-size: 13px;}

    #page-product #product-top {flex-direction: column; gap: 16px;}
    #page-product .product-image, #page-product .product-buy-area, #page-product .product-highlight {width: 100%; min-width: 0; margin: 0;}
    #page-product .product-image {position: relative; top: auto;}
    #page-product h1.product-name {font-size: 20px; line-height: 1.4; overflow-wrap: anywhere;}
    #page-product .product-buy-area-price strong {font-size: 26px; line-height: 1.5; overflow-wrap: anywhere;}
    #page-product .pd-variant-list {display: flex; flex-wrap: wrap; gap: 6px;}
    #page-product .pd-variant-list a {width: auto !important; flex: 1 1 100px; min-width: 0; white-space: normal; overflow-wrap: anywhere;}
    #page-product .product-description {width: 100% !important; min-width: 0;}
    #page-product .product-buy-area .btnleft, #page-product .product-buy-area .btnright {min-height: 44px; font-size: 15px;}
    #page-product .addtocart {flex-wrap: wrap;}
    #page-product .addtocart .pd-quantity-holder {flex: 0 0 132px; width: 132px;}
    #page-product .addtocart .pd-quantity-holder a {width: 44px; min-height: 44px; line-height: 44px;}
    #page-product .addtocart .pd-quantity-holder input {width: 44px; height: 44px;}
    #page-product .addtocart .pd-btn-buy {flex: 1 0 100%; min-height: 44px; justify-content: center;}
    main article, main .SContent, main .product-description, #page-page > .container {overflow-wrap: anywhere;}
    main article img, main .SContent img, #page-page > .container img {max-width: 100% !important; height: auto !important;}
    main article iframe, main .SContent iframe, #page-page > .container iframe {max-width: 100% !important;}
    main article iframe[src*="youtube"], main article iframe[src*="youtu.be"],
    #page-page iframe[src*="youtube"] {width: 100%; height: auto; aspect-ratio: 16 / 9;}
    main article table, main .product-description table, main .SContent table, #page-page > .container table {width: 100% !important; max-width: 100%; table-layout: fixed;}
    main article td, main article th, main .product-description td, main .product-description th {overflow-wrap: anywhere; white-space: normal !important;}
    main article pre, #page-page pre {max-width: 100%; white-space: pre-wrap; overflow-wrap: anywhere;}
    main .section-page-content {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px;}
    main .blog-list {flex-direction: column; gap: 16px;}
    main .blog-item {width: 100%; min-width: 0; margin: 0;}
    .contact-wrapper {display: flex; flex-direction: column; gap: 20px;}
    .contact-wrapper .contact-left, .contact-wrapper .contact-right {width: 100%; min-width: 0;}
    .contact-wrapper iframe {max-width: 100%; width: 100%;}
    .contact-wrapper .form-row-haft {display: flex; flex-direction: column; gap: 10px;}
    .contact-wrapper input, .contact-wrapper textarea {width: 100%; max-width: 100%; min-width: 0; font-size: 16px;}

    #page-cart .cart-page .cart-col-1 {width: 100%; min-width: 0;}
    #page-cart .cart-page .col-header {display: none;}
    #page-cart .cart-page .cart-col-2, #page-cart .cart-page .cart-col-3,
    #page-cart .cart-page .cart-col-4, #page-cart .cart-page .cart-col-5 {width: auto; flex: 1 1 120px;}
    #page-cart .cart-item-body .img {width: 72px; margin-right: 12px;}
    #page-cart .cart-item-body .text {width: calc(100% - 84px); min-width: 0; overflow-wrap: anywhere;}
    #page-cart .cart-item-body .item {padding: 12px;}
    #page-cart .cart-item-body .quantity-change {width: 40px; height: 40px; line-height: 40px;}
    #page-cart .cart-item-body .quantity-buy {width: 40px; height: 40px; line-height: 40px;}
    #page-cart .cart-item-body .item-offer-content {position: static; width: 100%; max-width: 100%;}
    #page-cart .form-cart-c {grid-template-columns: minmax(0, 1fr) !important; gap: 20px !important;}
    #page-cart .form-cart-c > * {min-width: 0;}
    #page-cart .areainfo .left, #page-cart .areainfo .right {width: 100%; float: none;}
    #page-cart .voucher-c {flex-wrap: wrap; gap: 8px;}
    #page-cart .voucher-c-input {min-width: 0; flex: 1 1 140px;}
    #page-cart .cart-btn-group a {white-space: normal; font-size: 12px; min-height: 44px;}
    #page-cart .choosepayment button {width: 100%; margin: 10px 0 0; min-height: 44px;}
    #page-taikhoan .taikhoan-info, #page-taikhoan .item-order-top, #page-taikhoan .item-order-bottom {flex-wrap: wrap; gap: 8px;}
    #page-taikhoan .item-order-product-left, #page-taikhoan .taikhoan-info-right {min-width: 0;}
    #page-taikhoan .form-taikhoan input {max-width: 100%; min-width: 0;}

    body .modal-global-container {width: calc(100% - 24px); max-width: 480px; max-height: calc(100dvh - 24px); padding: 32px 16px 16px;}
    body .modal-global-data {max-height: calc(100dvh - 80px); padding-right: 0; overflow-y: auto; overscroll-behavior: contain;}
    body .modal-global .form-control {min-width: 0; max-width: 100%; font-size: 16px;}
    body .form-login-register .btn {white-space: normal; min-height: 44px;}
    body .component-modal-variation-content {width: calc(100% - 24px); max-width: 480px !important; min-height: 0; max-height: calc(100dvh - 24px); overflow-y: auto;}
    body .component-modal-variation-content .p-text {min-width: 0; overflow-wrap: anywhere;}
    body .component-modal-variation-content select {max-width: 100%;}
    body .component-modal-variation-content-close {width: 28px; height: 28px;}
    body .modal-global-close {width: 40px; height: 40px; display: grid; place-items: center;}
    body .global-tooltip {display: none !important;}
    footer .footer-top form, footer .footer-top-left {min-width: 0; width: 100%;}
    footer .footer-top form .right {display: flex; min-width: 0; width: 100%;}
    footer .footer-top input {flex: 1 1 0; min-width: 0;}
    footer .footer-top button {flex-shrink: 0;}
    footer .fcol, footer .copyright {min-width: 0; max-width: 100%; overflow-wrap: anywhere;}
    footer .footer-mid .container {flex-direction: column; gap: 20px;}
    footer .footer-bottom .copyright {flex-direction: column; gap: 12px;}
    body #toolbar-menu-mobile {display: flex !important; padding-bottom: env(safe-area-inset-bottom, 0px);}
    body #toolbar-menu-mobile ul {min-width: 0; flex-shrink: 1;}
    body #toolbar-menu-mobile li {min-width: 0; flex: 1 1 0;}
    body #toolbar-menu-mobile a {min-height: 60px; padding: 6px 2px;}
    body .widget-social {position: fixed !important; right: 10px; bottom: calc(76px + env(safe-area-inset-bottom, 0px) + 10px); z-index: 9999; display: flex; flex-direction: column; align-items: center; gap: 8px; margin: 0; background: none;}
    body .widget-social > div a {float: none; display: block; width: 44px !important; height: 44px !important; margin: 0; background-size: contain !important;}
}

@media (min-width: 640px) and (max-width: 1023px) {
    main .content-cate, main .product-list-chitiet {grid-template-columns: repeat(3, minmax(0, 1fr));}
    main .section-page-content {grid-template-columns: repeat(3, minmax(0, 1fr));}
}

@media (hover: none), (pointer: coarse) {
    .p-item:hover img, :is(#page-home, #page-baoloi) .data-product-slide .p-item:hover,
    :is(#page-home, #page-baoloi) .data-product-slide .p-item:hover .p-img img {transform: none; bottom: auto;}
}

@media (min-width: 1024px) {
    #toolbar-menu-mobile {display: none !important;}
}

/* One mobile price layout for homepage and category cards, including long prices. */
@media (max-width: 1023px) {
    :is(#page-home .p-item, #page-baoloi .p-item, #page-category .content-cate .p-item, #page-search .content-cate .p-item) .p-text {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: stretch;
        gap: 0;
        padding: 10px;
    }
    :is(#page-home .p-item, #page-baoloi .p-item, #page-category .content-cate .p-item, #page-search .content-cate .p-item) .p-text .p-name {
        flex: none;
        width: 100%;
        margin: 0 0 5px;
    }
    :is(#page-home .p-item, #page-baoloi .p-item, #page-category .content-cate .p-item, #page-search .content-cate .p-item) .p-text .p-price-group {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        align-content: start;
        gap: 4px 6px;
        min-width: 0;
        min-height: 66px;
        height: auto;
        margin: 8px 0;
    }
    :is(#page-home .p-item, #page-baoloi .p-item, #page-category .content-cate .p-item, #page-search .content-cate .p-item) .p-text .p-price {
        grid-column: 1 / -1;
        grid-row: 1;
        min-width: 0;
        width: auto;
        margin: 0;
        font-size: 17px;
        font-weight: 800;
        line-height: 1.5;
        overflow-wrap: anywhere;
    }
    :is(#page-home .p-item, #page-baoloi .p-item, #page-category .content-cate .p-item, #page-search .content-cate .p-item) .p-text .p-price-meta {
        grid-column: 1;
        grid-row: 2;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 4px;
        min-width: 0;
    }
    :is(#page-home .p-item, #page-baoloi .p-item, #page-category .content-cate .p-item, #page-search .content-cate .p-item) .p-text .p-old-price {
        order: 0;
        flex: 0 1 auto;
        min-width: 0;
        margin: 0;
        font-size: 13px;
        line-height: 1.5;
        white-space: normal;
        overflow-wrap: anywhere;
    }
    :is(#page-home .p-item, #page-baoloi .p-item, #page-category .content-cate .p-item, #page-search .content-cate .p-item) .p-text .p-discount {
        order: 0;
        flex: none;
        margin: 0;
        font-size: 10px;
        white-space: nowrap;
    }
    :is(#page-home .p-item, #page-baoloi .p-item, #page-category .content-cate .p-item, #page-search .content-cate .p-item) .p-text .p-btn-cart {
        grid-column: 2;
        grid-row: 2;
        justify-self: end;
        align-self: center;
        position: static;
        width: 40px;
        height: 40px;
        margin: 0;
        border-radius: 50%;
        box-shadow: 0 4px 12px rgba(16, 24, 40, .2);
    }
    :is(#page-home .p-item, #page-baoloi .p-item, #page-category .content-cate .p-item, #page-search .content-cate .p-item) .p-text .p-btn-cart::before {
        background-size: 20px;
    }
}


/* news-cards */
main .news-card-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 14px;
    width: 100%;
    margin: 12px 0 20px;
}

main .news-card-grid .news-card {
    min-width: 0;
    width: 100%;
    overflow: hidden;
    border: 1px solid #e7ece9;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 2px 7px rgba(25, 48, 35, .07);
    transition: border-color .18s ease, box-shadow .18s ease;
}

main .news-card .news-card-link {
    display: grid;
    grid-template-columns: minmax(120px, 28%) minmax(0, 1fr);
    width: 100%;
    color: inherit;
    text-decoration: none;
}

main .news-card .news-card-media {
    position: relative;
    min-width: 0;
    overflow: hidden;
    background: #eef3ef;
}

main .news-card .news-card-media img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100% !important;
    height: 100% !important;
    max-width: 100%;
    margin: 0;
    border-radius: 0;
    object-fit: cover;
    transition: transform .25s ease;
}

main .news-card .news-card-content {
    display: grid;
    grid-template-rows: 48px 44px 18px;
    gap: 7px;
    min-width: 0;
    padding: 28px 16px 18px;
}

main .news-card .news-card-title {
    display: -webkit-box;
    min-width: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
    color: var(--color, #2A724A);
    font-size: 18px;
    font-weight: 800;
    line-height: 24px;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

main .news-card .news-card-excerpt {
    display: -webkit-box;
    margin: 0;
    padding: 0;
    overflow: hidden;
    color: #667085;
    opacity: .82;
    font-size: 15px;
    font-weight: 400;
    line-height: 22px;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

main .news-card .news-card-meta {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
    margin: 0;
    color: #6f9f84;
    font-size: 12px;
    font-weight: 400;
    line-height: 18px;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

main .news-card .news-card-meta > span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

main .news-card .news-card-meta svg {
    flex: none;
    width: 14px;
    height: 14px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;
}

main .news-card .news-card-link:focus-visible {
    outline: 2px solid #2A724A;
    outline-offset: -3px;
}

@media (hover: hover) and (pointer: fine) {
    main .news-card:hover { border-color: #a9c5b5; box-shadow: 0 3px 12px rgba(25, 48, 35, .11); }
    main .news-card:hover .news-card-media img { transform: scale(1.025); }
}

@media (min-width: 1280px) {
    main .news-card-grid--related[data-count="3"] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
    main .news-card-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; }
}

@media (max-width: 600px) {
    main .news-card .news-card-link { grid-template-columns: minmax(90px, 29%) minmax(0, 1fr); }
    main .news-card .news-card-content { grid-template-rows: 44px 40px 18px; gap: 5px; padding: 22px 12px 14px; }
    main .news-card .news-card-title { font-size: 16px; line-height: 22px; }
    main .news-card .news-card-excerpt { font-size: 14px; line-height: 20px; }
    main .news-card .news-card-meta { gap: 10px; font-size: 11px; }
    main .news-card .news-card-meta svg { width: 12px; height: 12px; }
}

@media (prefers-reduced-motion: reduce) {
    main .news-card-grid .news-card, main .news-card .news-card-media img { transition: none; }
}

.articleDetail .page-heading > .article-heading-title { margin: 0 0 15px; }
main .section-article-related.policy-related { margin-bottom: 30px; }


/* image-placeholders */
/* These styles exist only while an image is loading or has no usable source. */
img.dtl-image-pending {
    background-color: #f1f6f3 !important;
    background-image: url('/template/images/image-placeholder.svg') !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    color: transparent !important;
}

img.dtl-image-fallback {
    object-fit: contain !important;
    background-color: #f1f6f3 !important;
}

.aside-article-thumbnail>img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* search-suggest */
/* Autocomplete cho o tim kiem header (search-suggest.js) */

.header-search-form {
	position: relative;
}

.search-suggest {
	position: absolute;
	left: 0;
	right: 0;
	top: calc(100% + 8px);
	z-index: 1200;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	box-shadow: 0 12px 32px rgba(16, 24, 40, 0.16), 0 2px 8px rgba(16, 24, 40, 0.08);
	overflow-y: auto;
	max-height: min(70vh, 520px);
	-webkit-overflow-scrolling: touch;
	text-align: left;
	box-sizing: border-box;
}

.search-suggest[hidden] {
	display: none !important;
}

.search-suggest * {
	box-sizing: border-box;
}

.search-suggest .ss-section-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 10px 14px 6px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #6b7280;
}

.search-suggest .ss-clear {
	border: 0;
	background: transparent;
	color: #9ca3af;
	font-size: 11px;
	font-weight: 600;
	cursor: pointer;
	padding: 2px 4px;
	border-radius: 4px;
	text-transform: none;
	letter-spacing: 0;
}

.search-suggest .ss-clear:hover,
.search-suggest .ss-clear:focus-visible {
	color: #d70018;
	background: #fef2f2;
}

.search-suggest .ss-item {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 9px 14px;
	text-decoration: none;
	color: inherit;
	border: 0;
	background: transparent;
	width: 100%;
	text-align: left;
	cursor: pointer;
	font: inherit;
}

.search-suggest .ss-item:hover,
.search-suggest .ss-item.is-active {
	background: #f2f7f4;
}

.search-suggest .ss-thumb {
	flex: 0 0 46px;
	width: 46px;
	height: 46px;
	object-fit: contain;
	background: #f8faf9;
	border: 1px solid #eef2f0;
	border-radius: 8px;
	padding: 2px;
}

.search-suggest .ss-info {
	flex: 1 1 auto;
	min-width: 0;
}

.search-suggest .ss-name {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-size: 13.5px;
	line-height: 1.35;
	color: #1f2937;
	word-break: break-word;
}

.search-suggest .ss-name mark {
	background: transparent;
	color: #2a724a;
	font-weight: 700;
	padding: 0;
}

.search-suggest .ss-meta {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 6px 8px;
	margin-top: 2px;
}

.search-suggest .ss-price {
	color: #d70018;
	font-weight: 700;
	font-size: 13.5px;
	white-space: nowrap;
}

.search-suggest .ss-price-old {
	color: #9ca3af;
	text-decoration: line-through;
	font-size: 11.5px;
	white-space: nowrap;
}

.search-suggest .ss-price-contact {
	color: #d70018;
	font-weight: 600;
	font-size: 12.5px;
	white-space: nowrap;
}

.search-suggest .ss-cat {
	font-size: 11px;
	color: #6b7280;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 100%;
}

.search-suggest .ss-item-all {
	position: sticky;
	bottom: 0;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 11px 14px;
	border-top: 1px solid #eef2f0;
	color: #2a724a;
	font-weight: 700;
	font-size: 13px;
	text-decoration: none;
	background: #fbfdfc;
	box-shadow: 0 -4px 12px rgba(16, 24, 40, 0.06);
}

.search-suggest .ss-item-all:hover,
.search-suggest .ss-item-all:focus-visible,
.search-suggest .ss-item-all.is-active {
	background: #f2f7f4;
}

.search-suggest .ss-item-all svg {
	width: 14px;
	height: 14px;
	fill: currentColor;
}

.search-suggest .ss-empty,
.search-suggest .ss-status {
	padding: 14px;
	font-size: 13px;
	color: #6b7280;
	text-align: center;
}

.search-suggest .ss-empty strong {
	color: #1f2937;
}

.search-suggest .ss-recent-item {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 9px 14px;
	border: 0;
	background: transparent;
	cursor: pointer;
	font: inherit;
	font-size: 13.5px;
	color: #374151;
	text-align: left;
}

.search-suggest .ss-recent-item:hover,
.search-suggest .ss-recent-item.is-active {
	background: #f2f7f4;
}

.search-suggest .ss-recent-icon {
	flex: 0 0 16px;
	color: #9ca3af;
	display: inline-flex;
}

.search-suggest .ss-recent-icon svg {
	width: 16px;
	height: 16px;
	fill: currentColor;
}

.search-suggest .ss-recent-text {
	flex: 1 1 auto;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

@media (max-width: 767px) {
	.search-suggest {
		top: calc(100% + 6px);
		border-radius: 10px;
		max-height: min(64vh, 440px);
	}

	/* Mo rong gan full chieu ngang tren dien thoai (vi tri do JS tinh). */
	.search-suggest.ss-fixed {
		position: fixed;
		left: 10px;
		right: 10px;
		width: auto;
		top: var(--ss-top, 64px);
		max-height: min(60vh, 430px);
		z-index: 1400;
	}

	.search-suggest .ss-item {
		padding: 9px 12px;
	}

	.search-suggest .ss-thumb {
		flex-basis: 42px;
		width: 42px;
		height: 42px;
	}
}


/* toast */
/* Shared storefront notifications, above the existing header and form overlays. */
.dtl-toast-region {
  --dtl-notification-layer: 1000001;
  position: fixed;
  z-index: var(--dtl-notification-layer);
  top: max(24px, env(safe-area-inset-top, 0px));
  right: max(24px, env(safe-area-inset-right, 0px));
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: min(400px, calc(100vw - 48px));
  max-height: calc(100dvh - 48px);
  padding: 4px;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: none;
  pointer-events: none;
}
.dtl-toast-region::-webkit-scrollbar { display: none; }
.dtl-toast-confirm-region {
  --dtl-confirmation-layer: 1000002;
  position: fixed;
  z-index: var(--dtl-confirmation-layer);
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 16px;
  box-sizing: border-box;
  pointer-events: none;
}
.dtl-toast-confirm-region:has(.dtl-toast)::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .55);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  pointer-events: auto;
}
.dtl-toast-confirm-region .dtl-toast {
  position: relative;
  z-index: 1;
  grid-template-columns: 52px minmax(0, 1fr) 40px;
  gap: 16px;
  width: min(560px, 100%);
  max-height: calc(100dvh - 32px);
  padding: 28px 20px 26px 24px;
  border-radius: 18px;
  overflow-y: auto;
}
.dtl-toast-confirm-region .dtl-toast .dtl-toast-icon {
  width: 52px;
  height: 52px;
  border-radius: 14px;
}
.dtl-toast-confirm-region .dtl-toast .dtl-toast-icon svg { width: 28px; height: 28px; }
.dtl-toast-confirm-region .dtl-toast .dtl-toast-title { font-size: 20px; line-height: 1.35; }
.dtl-toast-confirm-region .dtl-toast .dtl-toast-message { font-size: 16.5px; line-height: 1.55; }
.dtl-toast-confirm-region .dtl-toast .dtl-toast-close { width: 40px; height: 40px; }
.dtl-toast-confirm-region .dtl-toast .dtl-toast-close svg { width: 20px; height: 20px; }
.dtl-toast-confirm-region .dtl-toast .dtl-toast-actions { gap: 10px; margin-top: 18px; }
.dtl-toast-confirm-region .dtl-toast .dtl-toast-action {
  min-height: 46px;
  padding: 10px 20px;
  font-size: 15px;
}
.dtl-toast {
  --toast-accent: #2A724A;
  --toast-tint: #edf7f0;
  position: relative;
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) 32px;
  align-items: start;
  gap: 12px;
  flex: 0 0 auto;
  width: 100%;
  margin: 0;
  padding: 16px 12px 17px 16px;
  border: 1px solid #e3e9e5;
  border-radius: 14px;
  background: #fff;
  color: #25342c;
  box-shadow: 0 8px 32px rgba(24, 46, 32, .12), 0 2px 6px rgba(24, 46, 32, .04);
  box-sizing: border-box;
  overflow: hidden;
  pointer-events: auto;
  font-family: 'Roboto', Arial, sans-serif;
  text-align: left;
  animation: dtl-toast-enter .24s cubic-bezier(.2, .8, .2, 1) both;
  transition: opacity .18s ease, transform .18s ease;
}
.dtl-toast--error { --toast-accent: #c24141; --toast-tint: #fff0ef; }
.dtl-toast--warning { --toast-accent: #a66b13; --toast-tint: #fff6e5; }
.dtl-toast--info { --toast-accent: #326b9b; --toast-tint: #edf5fc; }
.dtl-toast--leaving { opacity: 0; transform: translateY(-6px); pointer-events: none; }
.dtl-toast .dtl-toast-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 11px;
  background: var(--toast-tint);
  color: var(--toast-accent);
}
.dtl-toast .dtl-toast-icon svg {
  display: block;
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.dtl-toast .dtl-toast-content { min-width: 0; padding-top: 1px; }
.dtl-toast .dtl-toast-title {
  margin: 0 0 4px;
  color: #20352a;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -.1px;
  overflow-wrap: anywhere;
}
.dtl-toast .dtl-toast-message {
  margin: 0;
  color: #5b6760;
  font-size: 13.5px;
  font-weight: 400;
  line-height: 1.55;
  white-space: pre-line;
  overflow-wrap: anywhere;
}
.dtl-toast .dtl-toast-close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  margin: -2px 0 0;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #8b968e;
  cursor: pointer;
  transition: background .15s ease, color .15s ease;
}
.dtl-toast .dtl-toast-close svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
}
.dtl-toast .dtl-toast-close:hover { background: #f1f5f2; color: #314638; }
.dtl-toast .dtl-toast-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.dtl-toast .dtl-toast-action {
  min-height: 36px;
  padding: 8px 14px;
  border: 1px solid #dce5df;
  border-radius: 8px;
  background: #f6f8f6;
  color: #405047;
  font: 600 13px/1.4 'Roboto', Arial, sans-serif;
  cursor: pointer;
  transition: background .15s ease, transform .15s ease;
}
.dtl-toast .dtl-toast-action--confirm { border-color: var(--toast-accent); background: var(--toast-accent); color: #fff; }
.dtl-toast .dtl-toast-action:hover { filter: brightness(.96); }
.dtl-toast .dtl-toast-action:active { transform: scale(.98); }
.dtl-toast .dtl-toast-close:focus-visible,
.dtl-toast .dtl-toast-action:focus-visible { outline: 2px solid var(--toast-accent); outline-offset: 2px; }
.dtl-toast .dtl-toast-progress {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  background: var(--toast-accent);
  opacity: .45;
  transform-origin: left;
  animation: dtl-toast-countdown var(--toast-duration) linear forwards;
}
.dtl-toast[data-paused] .dtl-toast-progress { animation-play-state: paused; }
.dtl-toast-announcer {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
@keyframes dtl-toast-enter { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes dtl-toast-countdown { to { transform: scaleX(0); } }
@media (min-width: 1024px) {
  .dtl-toast-region {
    top: calc(var(--dtl-toast-offset, 140px) + env(safe-area-inset-top, 0px));
    max-height: calc(100dvh - var(--dtl-toast-offset, 140px) - 24px - env(safe-area-inset-top, 0px));
  }
}
@media (max-width: 1023px) {
  .dtl-toast-region {
    top: calc(64px + env(safe-area-inset-top, 0px));
    right: max(8px, env(safe-area-inset-right, 0px));
    left: max(8px, env(safe-area-inset-left, 0px));
    width: auto;
    max-height: calc(100dvh - 88px - env(safe-area-inset-top, 0px));
    gap: 10px;
  }
  .dtl-toast { gap: 10px; padding: 14px 10px 15px 14px; }
  .dtl-toast .dtl-toast-action { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  .dtl-toast { animation: none; transition: none; }
  .dtl-toast .dtl-toast-action { transition: none; }
}
@media print { .dtl-toast-region, .dtl-toast-confirm-region { display: none; } }


/* swiper-bundle.min */
/**
 * Swiper 7.4.1
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2021 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: December 24, 2021
 */

 @font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-pointer-events{touch-action:pan-y}.swiper-pointer-events.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;text-transform:none;font-variant:initial;line-height:1}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:10px;right:auto}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:10px;left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));display:inline-block;border-radius:50%;background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:10px;top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:4px;left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;animation:swiper-preloader-spin 1s infinite linear;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{100%{transform:rotate(360deg)}}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}

/* commerce-mobile */
/* Native scrolling and mobile commerce controls. */
html {
    scroll-behavior: smooth;
    scroll-padding-top: 100px;
}

/* The sticky search is already visible inside this offset. Otherwise caret
   reveal scrolls the document upward on every keystroke, even without JS. */
html:has(.dtl-site-header .header-search-form:focus-within) {
    scroll-padding-top: 0;
}

:where(a, button, input, select) {
    touch-action: manipulation;
}

#page-product .pd-mobile-purchase {
    display: none;
}

#page-product .pd-mobile-options {
    display: none;
}

.variant-image-name {
    display: none;
}

[aria-busy="true"].js-add-cart,
[aria-busy="true"].js-add-cart-load {
    opacity: .65;
    cursor: progress;
}

@media (max-width: 1023px) {

    /* Keep navigation stable; avoid rebuilding a full-screen blur on every frame. */
    body.home-glow-bg {
        background-attachment: scroll;
    }

    body.home-glow-bg::before {
        display: none;
    }

    body #toolbar-menu-mobile {
        transform: none;
        transition: none;
    }

    body #toolbar-menu-mobile a {
        min-height: 60px;
    }

    body .p-item .p-text .p-btn-cart {
        width: 48px;
        height: 48px;
    }

    body .component-modal-variation-content-close {
        width: 44px;
        height: 44px;
        padding: 8px;
        cursor: pointer;
    }

    body .component-modal-variation-content {
        overscroll-behavior-y: contain;
        padding-bottom: max(16px, env(safe-area-inset-bottom, 0px));
    }

    :is(#page-product, .component-modal-variation-content) .pd-variant-option-group .variant-data {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        padding-bottom: 14px;
    }

    :is(#page-product, .component-modal-variation-content) .pd-variant-option-group .variant-option-value-box {
        display: inline-flex;
    }

    :is(#page-product, .component-modal-variation-content) .pd-variant-option-group .variant-option-value-box a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 48px;
        min-height: 48px;
        margin: 0;
        padding: 10px 14px;
        border: 1px solid #bdcfc3;
        border-radius: 10px;
        background: #fff;
        color: #243128;
        font-size: 16px;
        line-height: 1.4;
        transition: background-color 120ms ease, border-color 120ms ease;
    }

    :is(#page-product, .component-modal-variation-content) .pd-variant-option-group .variant-option-value-box a.selected {
        border-color: var(--color, #2a724a);
        background: #e9f4ed;
        color: #205b3b;
        box-shadow: inset 0 0 0 1px var(--color, #2a724a);
        font-weight: 700;
    }

    :is(#page-product, .component-modal-variation-content) .pd-variant-option-group .variant-option-value-box a[onclick=""] {
        color: #767676;
        border-color: #dedede;
        background: #f3f3f3;
        opacity: .7;
    }

    :is(#page-product, .component-modal-variation-content) .pd-variant-option-group .variant-option-value-box a.option-image {
        width: auto;
        height: auto;
        gap: 8px;
        padding: 8px 12px !important;
        border-radius: 10px !important;
    }

    :is(#page-product, .component-modal-variation-content) .pd-variant-option-group .option-image img {
        width: 30px;
        height: 30px;
        object-fit: cover;
    }

    :is(#page-product, .component-modal-variation-content) .variant-image-name {
        display: inline;
    }

    :is(#page-product, .component-modal-variation-content) .popup-select-btn {
        min-height: 52px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    #page-product #product-purchase-options {
        scroll-margin-top: 140px;
    }

    #page-product .product-buy-area .pd-variant-list {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }

    #page-product .product-buy-area .pd-variant-list a {
        width: auto;
        min-height: 60px;
        margin: 0;
        padding: 10px;
        font-size: 15px;
    }

    #page-product .product-buy-area .addtocart {
        position: static;
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        margin: 16px 0;
        padding: 0;
        border: 0;
        box-shadow: none;
    }

    #page-product .product-buy-area .addtocart>span {
        display: block;
    }

    #page-product .product-buy-area .pd-quantity-holder {
        width: 146px;
        height: 50px;
        flex: 0 0 146px;
    }

    #page-product .product-buy-area .pd-quantity-holder :is(a, input) {
        width: 48px;
        height: 48px;
        line-height: 48px;
        font-size: 18px;
    }

    #page-product .product-buy-area .pd-btn-buy {
        flex: 1 1 130px;
        min-height: 50px;
        font-size: 15px;
    }

    #page-product .product-buy-area form.pd-desktop-purchase {
        display: none;
    }

    body:has(.pd-mobile-purchase) {
        padding-bottom: calc(var(--mobile-toolbar-height, 64px) + var(--mobile-purchase-height, 72px) + 12px);
    }

    body:has(.pd-mobile-purchase) .widget-social {
        bottom: calc(var(--mobile-toolbar-height, 64px) + var(--mobile-purchase-height, 72px) + 12px);
    }

    #page-product .pd-mobile-purchase {
        position: fixed;
        z-index: 31;
        inset: auto 0 var(--mobile-toolbar-height, calc(64px + env(safe-area-inset-bottom, 0px)));
        display: flex;
        align-items: stretch;
        gap: 8px;
        margin: 0;
        padding: 10px 12px;
        border-top: 1px solid #d7e5dc;
        background: #fff;
        box-shadow: 0 -4px 16px rgb(16 24 40 / 6%);
    }

    #page-product .pd-mobile-purchase :is(a, button) {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 50px;
        min-width: 0;
        border: 1px solid var(--pd-green, #2a724a);
        border-radius: 10px;
        padding: 8px;
        font: inherit;
        font-size: 15px;
        font-weight: 700;
        line-height: 1.3;
        text-align: center;
        text-decoration: none;
        cursor: pointer;
    }

    #page-product .pd-mobile-purchase .pd-installment {
        order: 1;
        flex: 1;
        color: #205b3b;
        background: #e9f4ed;
    }

    #page-product .pd-mobile-purchase .js-add-cart-load {
        order: 2;
        flex: 1.2;
        background: var(--pd-green, #2a724a);
        color: #fff;
    }

    #page-product .pd-mobile-purchase .pd-mobile-options {
        flex: 0 0 62px;
        border-color: transparent;
        color: #526159;
        background: #f3f7f4;
        font-size: 12px;
    }

    #page-product :is(.pd-mobile-purchase a, .pd-mobile-purchase button, .js-variant-option-value, .pd-variant-list a):focus-visible {
        outline: 3px solid #205b3b;
        outline-offset: 3px;
    }

    #page-product :is(.pd-mobile-purchase a, .pd-mobile-purchase button, .quantity-change):active {
        transform: translateY(1px);
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    #page-product :is(a, button) {
        transition: none;
    }
}

@media print {
    .pd-mobile-purchase {
        display: none !important;
    }
}
