/* Home Layout */

/* Slider =========================== */
 .sliderTitleMode .zoomSlider {  
		overflow: hidden; 
       
	  }
	  
	 .sliderTitleMode .zoomSliderImg {
		transition: 0.5s;
	  }
	  

	  .sliderTitleMode .zoomSlider:hover .zoomSliderImg { transform: scale(1.03); }


	  .sliderTitleMode .slideshow-panel .swiper-container
	  {
		border-radius: 0 !important;
	  }




	  .sliderTitleMode .box-heading
	  {
	  display: block;
	  width: 100%;
	  }
  
	  .sliderTitleMode .box-heading h3
	  {
  
	  font-size: 20px !important;
	  font-weight: bold;
	  text-align: center !important;
	  width: 100%;
	  }
  
  
  
	  .sliderTitleMode .box-heading h4
	  {
  
	  font-size: 14px !important;
	  font-weight: normal;
	  text-align: center;
	  }
  
  
  .sliderTitleMode .slideshow-panel .swiper-viewport
  {
    margin-bottom: 5px !important;
  }


  /* SLIDER END ============================================ */



  /* IMAGE SLIDER ======================================== */

  .swiper.imageSliderBlock {
		width: 100%;
		padding-bottom: 30px;
		overflow: hidden;
	}

	.imageSliderBlock .swiper-slide {
		background: red;
		
		border-radius: 8px;
		overflow: hidden;
		text-align: left;
		font-size: 14px;
		color: #000;
		display: flex;
		flex-direction: column;
	}

	.imageSliderBlock .product-img {
		width: 100%;

		display: flex;
		align-items: center;
		justify-content: center;
		overflow: hidden;
		background: #fff;
	}

	.imageSliderBlock .product-img img {
		max-width: 100%;
		max-height: 100%;
		object-fit: contain;
	}

	.imageSliderBlock .product-info {
		padding: 10px;
		display: flex;
		flex-direction: column;
		flex: 1;
		/* makes product-info fill available space */
	}

	

	

	.imageSliderBlock .product-green-price {
		color: #009688;
		font-weight: bold;
		font-size: 14px;
	}


	.imageSliderBlock .swiper-wrapper {
		display: flex;
		align-items: stretch;


	}

	.imageSliderBlock .swiper-slide {
		background: #fff;
		
		border-radius: 8px;
		overflow: hidden;
		text-align: left;
		font-size: 14px;
		color: #000;
		display: flex;
		flex-direction: column;
		height: auto;

		
	}

	.imageSliderBlock.swiper,
	.imageSliderBlock .swiper-wrapper,
	.imageSliderBlock .swiper-slide {
		box-sizing: border-box;
		position: relative;
	}

	.imageSliderBlock .swiper-button-next,
	.imageSliderBlock .swiper-button-prev {
		color: #000;
		/* arrow color */
	}


	.imageSliderBlock .swiper-button-next:before,
	.imageSliderBlock .swiper-button-prev:before {
		font-size: 20px;
	}

	.imageSliderBlock .swiper-button-next {
		right: 5px;
	}

	.imageSliderBlock .swiper-button-prev {
		left: 5px;
	}
    
    /* IMAGE SLIDER END ======================================================== */









    /* ESTORE SLIDER ========================================================= */
  .eStoreSliderBlock .zoomSlider {  
		overflow: hidden; 
       
	  }
	  
	  .eStoreSliderBlock .zoomSliderImg {
		transition: 0.5s;
	  }
	  

	  .eStoreSliderBlock .zoomSlider:hover .zoomSliderImg { transform: scale(1.03); }


	







	  .eStoreSliderBlock .arrow {
		border-color:transparent;
		border-style:solid;
		border-width:0 2em;
		display:block;
		height:0;
		margin:10em auto;
		opacity:0.4;
		text-indent:-9999px;
		transform-origin: 50% 50%;
		width:0;
	  }
	  .eStoreSliderBlock .left {
		-webkit-animation: leftarrow 0.6s infinite alternate ease-in-out;
		border-bottom:2em solid transparent;
	  }
	  .eStoreSliderBlock .right {
		-webkit-animation: rightarrow 0.6s infinite alternate ease-in-out;
		border-top:2em solid transparent;
	  }



	  @-webkit-keyframes leftarrow {
		0% { -webkit-transform: translateX(0); opacity: 0.4 }
		100% { -webkit-transform: translateX(-0.4em); opacity: 0.9 }
	  }
	  @-webkit-keyframes rightarrow {
		0% { -webkit-transform: translateX(0); opacity: 0.4 }
		100% { -webkit-transform: translateX(0.4em); opacity: 0.9 }
	  }
	  
	  
.eStoreSliderBlock .slideshow-panel .swiper-viewport
  {
    margin-bottom: 15px !important;
  }

    /* END ESTORE SLIDER ===================================================== */









    /* SINGLE BANNER ========================================================= */

 .SingleBannerContainer .singlebanner {  
		overflow: hidden; 
	  }
	  
	  .SingleBannerContainer .singlebannerImg {
		transition: 0.5s;
	  }
	  


      .SingleBannerContainer #ttcmstopbanner
      {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
      }


     

     .SingleBannerContainer #ttcmstopbanner .ttcmstopbanner .ttbanner
      {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
      }


      @media(max-width:850px)
      {
        .SingleBannerContainer #ttcmstopbanner .ttcmstopbanner .ttbanner
        {
          padding: 0 !important;
        }
      }


      .SingleBannerContainer .viewMoreTag
      {
        float: right;
        padding: 10px 0 0 0;
        margin-bottom: 0 !important;
        font-size: 12px !important;
      }
      


      @media(max-width:875px)
      {
        .SingleBannerContainer
        {
          padding: 0 10px !important;
        }

       
      }

    /* END SINGLE BANNER ===================================================== */



    /* FEATURING BANNER ==================================================== */

     .featuringBanner.swiper {
      width: 100%;
      padding: 20px 0;

      position:relative;
      overflow: hidden;
    }

    .featuringBanner .swiper-slide {
      text-align: center;
      font-size: 14px;
      color: #333;
    }

    .featuringBanner .swiper-slide img {
      width: 60px;
      height: auto;
      display: block;
      margin: 0 auto 8px;
    }


    .featuringBanner .bannerFeaturingText
    {

      display: block;
      line-height: 1;
        color: #000;
        font-size: 12px;
    }


    .featuringBanner .swiper-button-next:before, .featuringBanner .swiper-button-prev:before
    {
      font-size: 20px !important;
    }
    /* END FEATURING BANNER ====================================================== */



    /* HEADER NOTICED SCROLL ==================================================== */

     .scrollArticle {
        width: 95%;
        margin: 1em auto;
        overflow: hidden;
        position: relative;
        /* min-height: 4em; */
        min-height: 16px;
      }
      
      .scrollLeftAnim {
        white-space: nowrap;
        position: absolute;
        text-transform: uppercase;
      }
      
      .scrollLeftAnim {
        -webkit-animation: moveToLeft 8s linear infinite; /* Safari 4.0 - 8.0 */
        white-space: nowrap;
       
      }
      
      /* Safari 4.0 - 8.0 */
      @-webkit-keyframes moveToLeft {
        from {
          left: 0;
        }
        to {
          left: -284px;
        }
      }
      
      @keyframes moveToLeft {
        from {
          left: 0;
        }
        to {
          left: -284px;
        }
      }
 

      .scrollLeftAnim > span
      {
        padding: 0 25px;
        color: black;
        text-transform: uppercase;


        padding: 0 50px;
        font-size: 18px;
        font-style: italic;
      }


      .closeButton
      {
        position: absolute;
        top: 12px;
        right: 10px;
      }



      @media(max-width:979px)
      {

        .scrollArticle {
            width: 90%;

        }



        .scrollLeftAnim > span
        {
            font-size: 15px;
        }


         /* Safari 4.0 - 8.0 */
      @-webkit-keyframes moveToLeft {
        from {
          left: 0;
        }
        to {
          left: -255px;
        }
      }
      
      @keyframes moveToLeft {
        from {
          left: 0;
        }
        to {
          left: -255px;
        }
      }


      }


      @media(max-width:676px)
      {

        .scrollArticle {
            width: 85%;

        }
      }





      .marquee {
        width: 100%;
        margin: 0 auto;
        white-space: nowrap;
        overflow: hidden;
        position: absolute;
        
      }
      
      .marquee span {
        
        display: inline-block;
        padding-left: 100%;
        animation: marquee 12s linear infinite;
        width: 1600px;


        color: black;
        text-transform: uppercase;

       /* font-size: 18px; */
       font-size: 15px;
       font-weight: bold;
        
      }


      @media(max-width:979px)
      {

        .marquee span {
          font-size: 15px;
        }
      }
      
      .marquee2 span {
        animation-delay: 2s;
      }
      .marquee3 span {
        animation-delay: 4s;
      }
      .marquee4 span {
        animation-delay: 6s;
      }

      .marquee5 span {
        animation-delay: 8s;
      }

      .marquee6 span {
        animation-delay: 10s;
      }

      .marquee7 span {
        animation-delay: 12s;
      }

      .marquee8 span {
        animation-delay: 14s;
      }

     
      
      
      @keyframes marquee {
        0% {
          transform: translate(0, 0);
        }
        100% {
          transform: translate(-110%, 0);
        }
      }

    /* END HEADER NOTICED SCROLL ================================================ */





    /* Header Noticed =========================================================== */



    
    .noticeBar
    {
        /* padding: 14.64px 350px; */
        padding: 14.64px 0;
        background: var(--header_noticeBar);
    }


    .noticeBar p 
    {
        font-size: 15px;
        line-height: 18px;
        text-align: center;
        margin: 0;
        color: var(--header_noticeBar_text);
    }


    @media(max-width:979px)
    {
        .noticeBar
        {
            padding: 14.64px 15px;
        }


        .noticeBar p 
        {
            font-size: 13px;

        }

    }
  
  
   @media(max-width:898px)
    {
       
      	/* set font size */
        .noticeBar p 
        {
            font-size: 10px !important;

        }

     
      
    }


    /* END Header Noticed ======================================================= */





    /* BANNER SLIDER ============================================================ */

    .swiper.bannerSliderBlock {
		width: 100%;
		padding-bottom: 30px;
		overflow: hidden;
	}

	.bannerSliderBlock .swiper-slide {
		background: red;
		
		border-radius: 8px;
		overflow: hidden;
		text-align: left;
		font-size: 14px;
		color: #000;
		display: flex;
		flex-direction: column;
	}

	.bannerSliderBlock .product-img {
		width: 100%;

		display: flex;
		align-items: center;
		justify-content: center;
		overflow: hidden;
		background: #fff;
	}

	.bannerSliderBlock .product-img img {
		max-width: 100%;
		max-height: 100%;
		object-fit: contain;
	}

	.bannerSliderBlock .product-info {
		padding: 10px;
		display: flex;
		flex-direction: column;
		flex: 1;
		/* makes product-info fill available space */
	}

	

	

	.bannerSliderBlock .product-green-price {
		color: #009688;
		font-weight: bold;
		font-size: 14px;
	}


	.bannerSliderBlock .swiper-wrapper {
		display: flex;
		align-items: stretch;


	}

	.bannerSliderBlock .swiper-slide {
		background: #fff;
		
		border-radius: 8px;
		overflow: hidden;
		text-align: left;
		font-size: 14px;
		color: #000;
		display: flex;
		flex-direction: column;
		height: auto;

		
	}

	.bannerSliderBlock.swiper,
	.bannerSliderBlock .swiper-wrapper,
	.bannerSliderBlock .swiper-slide {
		box-sizing: border-box;
		position: relative;
	}

	.bannerSliderBlock .swiper-button-next,
	.bannerSliderBlock .swiper-button-prev {
		color: #000;
		/* arrow color */
	}


	.bannerSliderBlock .swiper-button-next:before,
	.bannerSliderBlock .swiper-button-prev:before {
		font-size: 20px;
	}

	.bannerSliderBlock .swiper-button-next {
		right: 5px;
	}

	.bannerSliderBlock .swiper-button-prev {
		left: 5px;
	}

    /* END BANNER SLIDER ======================================================== */




    /* TRIPLE BANNER ============================================================ */

    .triplebanner {  
		overflow: hidden; 
	  }
	  
	  .triplebanner .triplebannerImg {
		transition: 0.5s;
	  }
	  

	  .triplebanner:hover .triplebannerImg { transform: scale(1.02); }




    .triplebannerCon .viewMoreTag
      {
        float: right;
        padding: 10px 0 0 0;
        margin-bottom: 0 !important;
        font-size: 12px !important;
      }



    /* END TRIPLE BANNER ======================================================== */











    /* checkout > Fail.twig ==================================================== */

    .failContain .success-checkout-page p {
    margin-bottom: 50px;
    color: #4a4a4a;
}









.failContain .btn_continue_shopping, .failContain .btn_order_history
{
  width: 100%;
  max-width: 200px;
}


.failContain .suceesBtn
{
  margin: 10px 0;
  font-size: 12px;
  white-space: inherit;
}


.failContain svg
{
  width: 100px;
  margin-bottom: 15px;
}


.failContain .path {
  stroke-dasharray: 1000;
  stroke-dashoffset: 0;
}
.failContain .path.circle {
  -webkit-animation: dash 0.9s ease-in-out;
  animation: dash 0.9s ease-in-out;
}
.failContain .path.line {
  stroke-dashoffset: 1000;
  -webkit-animation: dash 0.9s 0.35s ease-in-out forwards;
  animation: dash 0.9s 0.35s ease-in-out forwards;
}
.failContain .path.check {
  stroke-dashoffset: -100;
  -webkit-animation: dash-check 0.9s 0.35s ease-in-out forwards;
  animation: dash-check 0.9s 0.35s ease-in-out forwards;
}

@-webkit-keyframes dash {
  0% {
    stroke-dashoffset: 1000;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes dash {
  0% {
    stroke-dashoffset: 1000;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
@-webkit-keyframes dash-check {
  0% {
    stroke-dashoffset: -100;
  }
  100% {
    stroke-dashoffset: 900;
  }
}
@keyframes dash-check {
  0% {
    stroke-dashoffset: -100;
  }
  100% {
    stroke-dashoffset: 900;
  }
}




.failContain .suceesBtn
{
  background: var(--btn-primary-color);
  border: 1px solid var(--btn-primary-color);
  color: #fff;
  padding: 10px 15px;
  font-size: 12px;
  border-radius: 50px;
  margin: 10px 0;

  white-space: inherit;
  box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;

}


.failContain .suceesBtn:hover
{
  color: var(--btn-primary-color) !important;
  border: 1px solid var(--btn-primary-color);
  background: none;

  font-weight: bold;
}

    /* End checkout > Fail.twig =============================================== */




    /* Checkout > success.twig ================================================== */


.success-checkout-page p {
    /* margin-bottom: 80px; */
    margin-bottom: 40px;
    color: #4a4a4a;
}

.success-checkout-page .btn_continue_shopping
{
  /* padding-top:9px; */
}

.success-checkout-page .btn_order_history
{
  padding-top:9px;
  margin-left: 10px;
}

@media (max-width: 767px){

    .success-checkout-page .btn_continue_shopping
    {
        margin-top:20px;
        margin-left: 0px;
    }

    .success-checkout-page .btn_order_history
    {
     margin-top:20px;
     margin-left: 0px;
    width:220px;

    }

    .success-checkout-page .btn_continue_shopping
    {
       width:220px;
    }
}





.success-checkout-page .success-animation { margin-top: 55px;}

.success-checkout-page .checkmark {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    display: block;
    stroke-width: 2;
    stroke: #4bb71b;
    stroke-miterlimit: 10;
    box-shadow: inset 0px 0px 0px #4bb71b;
    animation: fill .4s ease-in-out .4s forwards, scale .3s ease-in-out .9s both;
    position:relative;
    top: 5px;
    right: 5px;
   margin: 0 auto;
}
.success-checkout-page .checkmark__circle {
    stroke-dasharray: 166;
    stroke-dashoffset: 166;
    stroke-width: 2;
    stroke-miterlimit: 10;
    stroke: #4bb71b;
    fill: #fff;
    animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
 
}

.success-checkout-page .checkmark__check {
    transform-origin: 50% 50%;
    stroke-dasharray: 48;
    stroke-dashoffset: 48;
    animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards;
}

@keyframes stroke {
    100% {
        stroke-dashoffset: 0;
    }
}

@keyframes scale {
    0%, 100% {
        transform: none;
    }

}


.success-checkout-page .btnSUCC
{
    
    margin: 10px 0;
    width: 100%;
    max-width: 220px;

    white-space: break-spaces;
    word-wrap:break-word;
}

@media(max-width:500px)
{

    .success-checkout-page .btnSUCC
    {
        font-size: 12px;
        max-width: 200px;
        padding: 5px;
    }


    .success-checkout-page .paymentSuccessText
    {
        font-size: 15px !important;
        font-weight: bold;
    }

}

    /* End checkout > success.twig ============================================== */






    /* Product Slider */

   .swiper.homeSliderProduct {
		width: 100%;
		padding-bottom: 30px;
		overflow: hidden;
	}

	.homeSliderProduct .swiper-slide {
		background: red;
		border: 1px solid #eee;
		border-radius: 8px;
		overflow: hidden;
		text-align: left;
		font-size: 14px;
		color: #000;
		display: flex;
		flex-direction: column;
	}

	.homeSliderProduct .product-img {
		width: 100%;

		display: flex;
		align-items: center;
		justify-content: center;
		overflow: hidden;
		background: #fff;
	}

	.homeSliderProduct .product-img img {
		max-width: 100%;
		max-height: 100%;
		object-fit: contain;
	}

	.homeSliderProduct .product-info {
		padding: 10px;
		display: flex;
		flex-direction: column;
		flex: 1;
		/* makes product-info fill available space */
	}





	.homeSliderProduct .product-green-price {
		color: #009688;
		font-weight: bold;
		font-size: 14px;
	}


	.homeSliderProduct .swiper-wrapper {
		display: flex;
		align-items: stretch;


	}

	.homeSliderProduct .swiper-slide {
		background: #fff;
		border: 1px solid #eee;
		border-radius: 8px;
		overflow: hidden;
		text-align: left;
		font-size: 14px;
		color: #000;
		display: flex;
		flex-direction: column;
		height: auto;

		box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
		/* ensures equal height */
	}

	.homeSliderProduct.swiper,
	.homeSliderProduct .swiper-wrapper,
	.homeSliderProduct .swiper-slide {
		box-sizing: border-box;
		position: relative;
	}

	.homeSliderProduct .swiper-button-next,
	.homeSliderProduct .swiper-button-prev {
		color: #000;
		/* arrow color */
	}


	.homeSliderProduct .swiper-button-next:before,
	.homeSliderProduct .swiper-button-prev:before {
		font-size: 20px;
	}

	.homeSliderProduct .swiper-button-next {
		right: 5px;
	}

	.homeSliderProduct .swiper-button-prev {
		left: 5px;
	}

    /* End Product Slider */





    /* Anouncement Bar =============================================== */


     #noticeScrollBar {
        font-size: 14px;
        font-weight: 500;
        padding: 10px;
        color: var(--header_notice_scroll_bar_BG);
        text-transform: uppercase;
        font-style: italic;
    }

    .notice-bar {
        background: var(--header_notice_scroll_bar_BG);
        color: var(--header_notice_scroll_bar_text);
        text-align: center;
        padding: 8px;
    }

    .notice-bar p {
        margin: 0;
        color: #fff;
        font-size: 14px;
    }




    /* 🔹 Account Section */
    .account-bar {
        background: #f5f6f5;
        padding: 8px 0px;

    }

    .account-barContent {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        gap: 15px;

        padding: 0px 20px;
    }


    .account-barContent .userText,
    .account-barContent .userText a {
        font-size: 13px;
        font-weight: 400;
        color: var(--header_user_info_text);
    }



    .account-barContent .icon {
        width: 22px;
        /* adjust size */
        height: 22px;
        cursor: pointer;
        /* makes it look clickable */
    }





    @media(max-width: 989px) {



        #noticeScrollBar {
            font-size: 12px;
        }

        .notice-bar p {
            font-size: 12px;
        }

        .account-barContent .userText,
        .account-barContent .userText a {
            font-size: 12px;
        }

        .account-barContent {
            gap: 10px;
        }

        .account-barContent .icon {
            width: 20px;
            /* adjust size */
            height: 20px;
        }

    }

    @media(max-width: 500px) {

        #noticeScrollBar {
            font-size: 10px;
        }

        .notice-bar p {
            font-size: 10px;
        }

        .account-barContent .userText,
        .account-barContent .userText a {
            font-size: 10px;
        }


        .account-barContent {
            gap: 5px;
            padding: 0px;
        }


        .account-bar {
            padding: 10px 10px;
        }

        .account-barContent .icon {
            width: 16px;
            /* adjust size */
            height: 16px;
        }


    }



     .account-dropdown {
        position: relative;
        display: inline-block;
    }

    .account-dropdown .dropdown-menu {
        display: none;
        position: absolute;
        top: 100%;
        right: -10px;
        background: #fff;
        border: 1px solid #ddd;
        list-style: none;
        margin: 0;
        padding: 0;
        min-width: 180px;
        z-index: 9999;


        box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;
    }

    .account-dropdown .dropdown-menu li a {
        display: block;
        padding: 3px 8px;
        text-decoration: none;
        text-align: right;
        color: #333;
        font-size: 13px;
    }

    .account-dropdown .dropdown-menu li:first-child a {
        padding: 6px 8px !important;
    }

    .account-dropdown .dropdown-menu li:last-child a {
        padding: 3px 8px 6px 8px !important;
    }


    .account-dropdown .dropdown-menu li a:hover {
        background: #f5f5f5;
        color: var(--header_user_info_text);
    }

    /* ✅ Hover 时显示 */
    .account-dropdown:hover .dropdown-menu {
        display: block;
        opacity: 1 !important;
        visibility: visible !important;
    }


    @media(max-width: 989px) {
        .account-dropdown .dropdown-menu li a {
            padding: 6px;
            font-size: 12px;
        }
    }


    @media(max-width: 500px) {

        .account-dropdown .dropdown-menu li a {
            padding: 5px;
            font-size: 10px;
        }
    }


    /* End Announcement Bar ========================================== */




    /* Footer ======================================================== */


    .navbar1{display:none;}
    
    .navbar1 {
      background-color: #fff;
      overflow: hidden;
      bottom: 0;
      width: 100%;
      z-index: 9;

      box-shadow: rgb(17 17 26 / 5%) 0px 1px 0px, rgb(17 17 26 / 10%) 0px 0px 8px;
    }
    
    .navbar1 img{
        height:40px;
        padding-bottom:2px;
    }
    
    
     .navbar1 table tr td
    {
        width:20%;
        text-align:center;
        border: 0;
    }
    
    
    .navbar1 a {
        width:20%;
    }



    #footer_mobile
    {
        padding: 10px 0;
    }





     .footerWeb ul {
        list-style-type: none;
      }
      .footerWeb .block-center {
          text-align: left;
          margin: auto;
          display: inline-block;
      }



      .footerWeb
      {
        padding: 56px 156px;
      }



      @media(max-width:1320px)
      {
        .footerWeb
        {
            padding: 56px 106px;
        }

        .footerWeb .footerLogo
        {
            margin: auto;
        }

        .footerWeb .footerLogoDesc
        {
            text-align: center;
        }


        

      }

      .footerWeb .block-center p
      {
        line-height: 26px;
        /* font-size: 15px; */
        font-size: 12px;
        color: #fff;
        font-weight: bold;

        text-align: justify !important;

        margin-bottom: 30px;
        margin-top: 5px;
      }


      .footerWeb h3
      {
       /* font-size: 20px; */
       font-size: 15px;
        line-height: 30px;
        font-weight: bold;


        word-break: break-all;
      }

      .footerWeb .footerlink
      {
        word-break: break-word;
      }

      .footerWeb ul li
      {
       /* font-size: 15px; */
       font-size: 13px;
        line-height: 30px;
        margin: 10px 0;
      }

      .footerCopyRight
      {
        background: #D8D8D8;
        padding-top: 7px;
        padding-bottom: 7px;
      }

      .footerCopyRight p
      {
       text-align: center;
       color: #000;
       margin: 0;
       font-size: 13px !important;
      }



      .footerWeb .socialMediaSection img
      {
        margin: 10px 5px 10px 0;
      }



      @media(max-width:990px)
      {
        .footerWeb .socialMediaSection > div
        {
            text-align: center;
        }
      }







       @media (min-width: 992px)
    {


        .footerWeb .footer-column1
        {
            /* width: 40% !important;
            padding: 0 50px 0 0;
            */
        }

        .footerWeb .footer-column2, .footerWeb .footer-column3, .footerWeb .footer-column4
        {
            /* width: 20% !important;
            */
        }


    }



    @media (max-width: 1200px)
    {
        .footerWeb .footer-column1
        {
            width: 100% !important;
        }


        .footerWeb .socialMediaSection
        {
            text-align: center !important;
        }

        .footerWeb .footer-column2, .footerWeb .footer-column3, .footerWeb .footer-column4
        {
            width: 33.33333333%;
        }
        

    }

    /* End Footer ==================================================== */


















    /* Login ================================================== */

      @media (max-width: 767px) {
    #account-login .well_height {
      height: auto;
    }

    .space {
      height: 150px;
    }
  }

 

    /* End Login ============================================== */




    /* Register =============================================== */

    @media (max-width: 767px){
    .space {
   height:150px;
    }

}

#footer_mobile {
  position: fixed;
  bottom: 0;
  width: 100%;
  background-color: #f5f5f5;         /* Footer height */
}


#column-left{
  min-height: 1px !important;
}




a{
    color: var(--Main-color);
  }




  @media(max-width:767px)
  {
     #account-register .radio-inline
    {
      padding: 0 !important;
    }
  }





  #account-register
  {
  
    margin-top: 50px !important;
  }


  #account-register p
  {
    color: #000 !important;
  }


  #account-register .loginLink
  {
    margin: 0px 0;
  }


   #account-register .loginLink > a
  {
    font-weight: bold;
  }


  #account-register legend
  {
    border: 0 !important;
    font-size: 20px;
    line-height: 30px;
    font-weight: bold;
    margin: 20px 0;
  }


  #account-register label
  {
    color: #000;
  }


  #account-register .agreeCheckbox
  {
    margin: 30px 0 !important;
  }


  #account-register .btn
  {

    margin-top: 36px;
    padding: 5px 15px;
  }

    /* End Register =========================================== */






    /* My Transaction ========================================== */
    #myTransacPage .wallet-box {
        margin-bottom: 50px;
    }

    #myTransacPage .wallet-box p {
        margin: 5px 0;
        background: #f5f5f5;
        padding: 8px;
        border-radius: 4px;
    }

    #myTransacPage .transaction-table {
        width: 100%;
        border-collapse: collapse;
        margin-top: 10px;
    }

    #myTransacPage .transaction-table th,
    #myTransacPage .transaction-table td {
        border: 1px solid var(--myTransaction_table_border);
        padding: 8px;

    }

    #myTransacPage .transaction-table th {
        background: var(--myTransaction_table_head_BG);
        color: var(--myTransaction_table_head__text);
        font-weight: bold;

        text-align: center;
        /* default for all */
    }


    #myTransacPage .transaction-table td {
        text-align: center;
        /* default for all */
    }


    #myTransacPage .transaction-table th:nth-child(2) {
        text-align: left;
        /* override only second */
    }

    #myTransacPage .transaction-table td:nth-child(2) {
        text-align: left;
        /* override only second */
    }

    #myTransacPage .load-more {
        margin: 15px 0;
        display: block;
        background: var(--myTransaction_loadMore_Btn);
        color: var(--myTransaction_loadMore_Btn_text);
        padding: 10px 16px;
        border: none;
        border-radius: 4px;
        cursor: pointer;

        padding: 5px 15px;
    }

    #myTransacPage .load-more:disabled {
        background: #ccc;
        cursor: not-allowed;
    }

    /* End My Transaction ====================================== */



    /* My Voucher ============================================== */
    #myVoucPage .voucher-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 15px;
    }

    #myVoucPage .voucher-header h2 {
        margin: 0;
        font-size: 18px;
    }

    #myVoucPage .voucher-header a {
        font-size: 14px;
        color: var(--myVoucher_historylink_text);
        text-decoration: none;
        font-weight: normal;

        text-decoration: underline;
    }

    #myVoucPage .voucher-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        /* always 2 per row */
        gap: 20px;
    }

    #myVoucPage .voucher-card {
        background: var(--myVoucher_active_card_BG);
        border-radius: 6px;
        padding: 15px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        min-height: 140px;

         transition: box-shadow 0.3s ease, transform 0.3s ease;
    }

    #myVoucPage .voucher-card:hover {
box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;
 transform: translateY(-3px); /* small lift effect */
    }

    #myVoucPage .voucher-card h3 {
        margin: 0;
        font-size: 14px;
        font-weight: normal;

         word-wrap: break-word;   /* allow breaking long words */
    overflow-wrap: anywhere; /* modern way to force wrap */
    white-space: normal;     /* allow multiple lines */


     color: var(--myVoucher_active_card_text);
    }

    #myVoucPage .voucher-card .discount {
        font-size: 20px;
        font-weight: bold;
        margin: 0px 0 0px;

         word-wrap: break-word;   /* allow breaking long words */
    overflow-wrap: anywhere; /* modern way to force wrap */
    white-space: normal;     /* allow multiple lines */

    color: var(--myVoucher_active_card_text);
    }

    #myVoucPage .voucher-card .condition {
        font-size: 14px;
        margin-bottom: 10px;

         word-wrap: break-word;   /* allow breaking long words */
    overflow-wrap: anywhere; /* modern way to force wrap */
    white-space: normal;     /* allow multiple lines */

    color: var(--myVoucher_active_card_text);
    }

    #myVoucPage .voucher-card .dates {
        font-size: 12px;
        line-height: 1.4;

         word-wrap: break-word;   /* allow breaking long words */
    overflow-wrap: anywhere; /* modern way to force wrap */
    white-space: normal;     /* allow multiple lines */

    color: var(--myVoucher_active_card_text);
    }

    #myVoucPage .voucher-card .tnc {
        margin-top: auto;
        font-size: 12px;
        font-weight: bold;
        text-align: right;

        color: var(--myVoucher_active_card_text);
    }

    #myVoucPage .voucher-card .tnc a {
        color: var(--myVoucher_active_card_text);
        text-decoration: none;
        font-weight: normal;
    }

    /* Mobile view: stack 1 per row */
    @media (max-width: 600px) {
        #myVoucPage .voucher-grid {
            grid-template-columns: 1fr;
        }
    }
    /* End My Voucher ========================================== */



    /* My Voucher Detail ======================================= */
      #myVouchDtlPage .voucher-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        /* always 2 per row */
        gap: 20px;
    }

    #myVouchDtlPage .voucher-card {
        background: var(--myVoucher_active_card_BG);
        border-radius: 6px;
        padding: 15px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        min-height: 140px;
    }

   

    #myVouchDtlPage .voucher-card h3 {
        margin: 0;
        font-size: 14px;
        font-weight: normal;

         word-wrap: break-word;   /* allow breaking long words */
    overflow-wrap: anywhere; /* modern way to force wrap */
    white-space: normal;     /* allow multiple lines */


     color: var(--myVoucher_active_card_text);
    }

    #myVouchDtlPage .voucher-card .discount {
        font-size: 20px;
        font-weight: bold;
        margin: 0px 0 0px;

         word-wrap: break-word;   /* allow breaking long words */
    overflow-wrap: anywhere; /* modern way to force wrap */
    white-space: normal;     /* allow multiple lines */

    color: var(--myVoucher_active_card_text);
    }

    #myVouchDtlPage .voucher-card .condition {
        font-size: 14px;
        margin-bottom: 10px;

         word-wrap: break-word;   /* allow breaking long words */
    overflow-wrap: anywhere; /* modern way to force wrap */
    white-space: normal;     /* allow multiple lines */

    color: var(--myVoucher_active_card_text);
    }

    #myVouchDtlPage .voucher-card .dates {
        font-size: 12px;
        line-height: 1.4;

         word-wrap: break-word;   /* allow breaking long words */
    overflow-wrap: anywhere; /* modern way to force wrap */
    white-space: normal;     /* allow multiple lines */

    color: var(--myVoucher_active_card_text);
    }

    #myVouchDtlPage .voucher-card .tnc {
        margin-top: auto;
        font-size: 12px;
        font-weight: bold;
        text-align: right;

        cursor: default;
        pointer-events: none;

        color: var(--myVoucher_active_card_text);
    }

    #myVouchDtlPage .voucher-card .tnc a {
        color: var(--myVoucher_active_card_text);
        text-decoration: none;
        font-weight: normal;
    }


    #myVouchDtlPage .display_noticedescription
    {
        margin: 15px 0 25px 0;
    }

    #myVouchDtlPage .display_noticedescription .desc
    {
        font-weight: bold;
        margin-bottom: 5px;
    }

    /* Mobile view: stack 1 per row */
    @media (max-width: 600px) {
        #myVouchDtlPage .voucher-grid {
            grid-template-columns: 1fr;
        }
    }
    /* End My Voucher Detail ===================================  */




    /* My Voucher History ======================================= */
    #myVouchHistoryPage .voucher-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        /* always 2 per row */
        gap: 20px;
    }

    #myVouchHistoryPage .voucher-card {
        background: var(--myVoucher_inactive_card_BG);
        border-radius: 6px;
        padding: 15px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        min-height: 140px;


    }



    #myVouchHistoryPage .voucher-card h3 {
        margin: 0;
        font-size: 14px;
        font-weight: normal;

        word-wrap: break-word;
        /* allow breaking long words */
        overflow-wrap: anywhere;
        /* modern way to force wrap */
        white-space: normal;
        /* allow multiple lines */


        color: var(--myVoucher_inactive_card_text);
    }

    #myVouchHistoryPage .voucher-card .discount {
        font-size: 20px;
        font-weight: bold;
        margin: 0px 0 0px;

        word-wrap: break-word;
        /* allow breaking long words */
        overflow-wrap: anywhere;
        /* modern way to force wrap */
        white-space: normal;
        /* allow multiple lines */
        color: var(--myVoucher_inactive_card_text);
    }

    #myVouchHistoryPage .voucher-card .condition {
        font-size: 14px;
        margin-bottom: 10px;

        word-wrap: break-word;
        /* allow breaking long words */
        overflow-wrap: anywhere;
        /* modern way to force wrap */
        white-space: normal;
        /* allow multiple lines */
        color: var(--myVoucher_inactive_card_text);
    }

    #myVouchHistoryPage .voucher-card .dates {
        font-size: 12px;
        line-height: 1.4;

        word-wrap: break-word;
        /* allow breaking long words */
        overflow-wrap: anywhere;
        /* modern way to force wrap */
        white-space: normal;
        /* allow multiple lines */

        color: var(--myVoucher_inactive_card_text);
    }

    #myVouchHistoryPage .voucher-card .tnc {
        margin-top: auto;
        font-size: 12px;
        font-weight: bold;
        text-align: right;
        color: var(--myVoucher_inactive_card_text);
    }

    #myVouchHistoryPage .voucher-card .tnc a {
        color: var(--myVoucher_inactive_card_text);
        text-decoration: none;
        font-weight: normal;


        pointer-events: none;
        cursor: default;
    }


    #myVouchHistoryPage .display_notice {
        margin-top: 15px;
        font-size: 12px;
    }

    /* Mobile view: stack 1 per row */
    @media (max-width: 600px) {
        #myVouchHistoryPage .voucher-grid {
            grid-template-columns: 1fr;
        }


        #myVouchHistoryPage .display_notice {
            margin-top: 15px;
            font-size: 10px;
        }
    }
    /* End My Voucher History =================================== */




    /* My Favourite ============================================= */
    #myFavouritePG .favourite-list {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    #myFavouritePG .favourite-item {
        display: flex;
        align-items: center;
        justify-content: space-between;
        border-bottom: 1px solid #ddd;
        padding-bottom: 15px;
        gap: 15px;
        flex-wrap: wrap;
    }

    #myFavouritePG .item-info {
        display: flex;
        align-items: center;
        gap: 15px;
        flex: 1;
        min-width: 220px;
    }

    #myFavouritePG .item-info img {
        width: 80px;
        height: 80px;
        object-fit: contain;
        border: 1px solid #ddd;
        border-radius: 6px;
    }

    #myFavouritePG .item-details {
        display: flex;
        flex-direction: column;

    }

    #myFavouritePG .item-details .priceContent {
        display: flex;
        flex-direction: row;
        align-items: center;
    }

    #myFavouritePG .item-details .title {
        font-weight: bold;
        margin-bottom: 5px;
    }

    #myFavouritePG .item-details .price {
        color: green;
        font-weight: bold;
    }

    #myFavouritePG .item-actions {
        display: flex;
        flex-direction: column;
        gap: 10px;
        min-width: 120px;
    }

    #myFavouritePG .item-actions button {
        padding: 8px 12px;
        font-size: 14px;
        border-radius: 0px;
        cursor: pointer;
        border: none;
    }

     #myFavouritePG .item-actions button.loading {
        opacity: 0.5 !important;
    }

    #myFavouritePG .add-cart {
        background: #007b2f;
        color: #fff;
    }

    #myFavouritePG .remove {
        background: #fff;
        color: #c00;
        border: 1px solid #c00 !important;
    }

    #myFavouritePG .remove a
    {
        color: #c00;
        text-decoration: none;
    }


    #myFavouritePG .myFavourite .price {
        font-size: 15px;
        color: var(--product_price);
        font-weight: bold;
    }

    #myFavouritePG .myFavourite .price.priceWithoutDiscount {
        color: var(--product_price_with_no_discount) !important;
    }

    #myFavouritePG .myFavourite .old-price {
        font-size: 12px;
        text-decoration: line-through;
        color: var(--product_discount_price);
        margin-left: 8px;
    }

    #myFavouritePG .myFavourite .discount {
        background: var(--product_discountTag_BG);
        color: #fff;
        font-size: 12px;
        padding: 2px 8px;
        border-radius: 50px;
        margin-left: 5px;
    }

    #myFavouritePG .disabled
    {

      opacity: 0.5;

    }

   

    

    /* Responsive for small screens */
    @media (max-width: 600px) {
        #myFavouritePG .favourite-item {
            flex-direction: column;
            align-items: flex-start;
        }

        #myFavouritePG .item-actions {
            flex-direction: row;
            justify-content: flex-start;
        }
    }
    /* End My Favourite ========================================= */



    /* My Shipping Address (address.twig) ====================================== */

    #addressPg .favourite-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  #addressPg .favourite-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #ddd;
    padding-bottom: 15px;
    gap: 15px;
    flex-wrap: wrap;
  }

  #addressPg .favourite-list .favourite-item:last-of-type {
    border-bottom: none !important;
  }

  #addressPg .item-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    flex: 1;
    min-width: 220px;
  }

  #addressPg .item-info img {
    width: 80px;
    height: 80px;
    object-fit: contain;
    border: 1px solid #ddd;
    border-radius: 6px;
  }

  #addressPg .item-details {
    display: flex;
    flex-direction: column;

  }

  #addressPg .item-details .priceContent {
    display: flex;
    flex-direction: row;
    align-items: center;
  }

  #addressPg .item-details .title {
    font-weight: bold;
    margin-bottom: 5px;
  }

  #addressPg .item-details .price {
    color: green;
    font-weight: bold;
  }

  #addressPg .item-actions {
    display: flex;
    flex-direction: column;
    gap: 10px;
   
  }

  #addressPg .item-actions button {
    padding: 8px 12px;
    font-size: 14px;
    border-radius: 0px;
    cursor: pointer;
    border: none;
  }


  #addressPg .item-actions button.loading {
    opacity: 0.5 !important;
  }

  #addressPg .add-cart {
    background: #007b2f;
    color: #fff;
  }

  #addressPg .remove {
    background: #fff;
    color: #c00;
    border: 1px solid #c00 !important;
  }

  #addressPg .edit a {
    color: #fff !important;
  }


  #addressPg .edit {
    background: #007b2f;
    color: #fff;
    border: 1px solid #007b2f !important;
  }

  #addressPg .remove a {
    color: #c00;
    text-decoration: none;
  }


  #addressPg .defaultTag {
    background: #000;
    color: #fff;
    padding: 5px 15px;
  }

  #addressPg.myFavourite .price {
    font-size: 15px;
    color: var(--product_price);
    font-weight: bold;
  }

  #addressPg.myFavourite .price.priceWithoutDiscount {
    color: var(--product_price_with_no_discount) !important;
  }

  #addressPg.myFavourite .old-price {
    font-size: 12px;
    text-decoration: line-through;
    color: var(--product_discount_price);
    margin-left: 8px;
  }

  #addressPg.myFavourite .discount {
    background: var(--product_discountTag_BG);
    color: #fff;
    font-size: 12px;
    padding: 2px 8px;
    border-radius: 50px;
    margin-left: 5px;
  }

  #addressPg .addBTN {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }

  #addressPg .addBTN a
  {
    border-radius: 50px;
    background: #007b2f;
  }

  #addressPg .addBTN a:hover
  {
    border-radius: 50px;
    background: #007b2f;
  }

  /* Responsive for small screens */
  @media (max-width: 600px) {
    #addressPg .favourite-item {
      flex-direction: column;
      align-items: flex-start;
    }

    #addressPg .item-actions {
      flex-direction: row;
      justify-content: flex-start;
    }

    #addressPg .item-actions button {
      min-width: 100px;
    }
  }

    /* End Shipping Address ===================================== */



    /* My Change Password ======================================= */
 #myChnagePssPG.changePasswordSection .form-container {

        background: #fff;
        padding: 20px;
    }

    #myChnagePssPG.changePasswordSection .form-group {
        display: flex;
        align-items: center;
        margin-bottom: 15px;
        flex-wrap: wrap;
    }

    #myChnagePssPG.changePasswordSection .form-group label {
        width: 150px;
        font-weight: 500;
        margin-bottom: 5px;
    }

    #myChnagePssPG.changePasswordSection .form-group .input-wrapper {
        flex: 1;
        /* take full available space */
        position: relative;
        /* so eye icon can be positioned */
    }

    #myChnagePssPG.changePasswordSection .form-group input {
        width: 100%;
        /* fill wrapper */
        padding: 10px 35px 10px 10px;
        /* leave space for eye icon */
        border: 1px solid #ccc;
        border-radius: 4px;
        box-sizing: border-box;
    }

    #myChnagePssPG.changePasswordSection .form-group .toggle-password {
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        cursor: pointer;
        font-size: 16px;
        color: #666;

        margin-top: 0px;
    }


    #myChnagePssPG.changePasswordSection .form-actions {
        display: flex;
        align-items: center;
        margin-bottom: 15px;
        /* match spacing with .form-group */
    }

    #myChnagePssPG.changePasswordSection .form-actions label {
        width: 150px;
        /* same as input labels */
        font-weight: 500;
    }

    #myChnagePssPG.changePasswordSection .form-actions button {
        flex: 1;
        /* make it align like the input */
        max-width: 100px;
        /* optional: control button width */
    }

    #myChnagePssPG.changePasswordSection .form-actions button {
        background: var(--degault_web_btn);
        color: #fff;
        border: none;
        padding: 5px 35px;
        border-radius: 25px;
        cursor: pointer;
        font-size: 13px;
    }



    #myChnagePssPG.changePasswordSection .account-changePassword-content {
        width: 100%;
    }

    /* Responsive design */
    @media (max-width: 600px) {


        #myChnagePssPG.changePasswordSection .form-group .input-wrapper {
            width: 100%;
        }

        #myChnagePssPG.changePasswordSection .form-actions {
            align-items: flex-end;
        }

        #myChnagePssPG.changePasswordSection .form-group,
        #myChnagePssPG .form-actions {
            flex-direction: column;
            align-items: flex-start;
        }

        #myChnagePssPG.changePasswordSection .form-group label,
        #myChnagePssPG.changePasswordSection .form-actions label {
            width: 100%;
            margin-bottom: 8px;
        }
    }
    /* End My Change Password =================================== */



    /* My Order ================================================= */
  #myOrdsPG h2 {
    margin-bottom: 15px;
  }

  /* Filters */
   #myOrdsPG .filters {
    margin-bottom: 15px;
  }

   #myOrdsPG .filters input {
    margin-top: 10px;
    margin-bottom: 10px;
    padding: 6px;
    margin-right: 5px;
    border: 1px solid #ccc;
    border-radius: 4px;
  }

   #myOrdsPG .filters button {
    margin-top: 10px;
    margin-bottom: 10px;
    padding: 7px 15px;
    margin-right: 5px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
  }

   #myOrdsPG #filterBtn {
    background: var(--myOrder_filter_btn);
    color: var(--myOrder_filter_btn_text);
  }

   #myOrdsPG #resetBtn {
    background: var(--myOrder_reset_btn);
    color: var(--myOrder_reset_btn_text);
  }

  /* Tabs */
   #myOrdsPG .tabs {
    margin-bottom: 15px;
  }

   #myOrdsPG .tab {
    display: inline-block;
    padding: 10px 20px;
    border: 1px solid var(--myOrder_inactive_tab_border);
    cursor: pointer;
    border-radius: 4px 4px 0 0;
    background: var(--myOrder_inactive_tab_BG);


    margin-bottom: 10px !important;
  }

   #myOrdsPG .tab.active {
    background: var(--myOrder_active_tab_BG);
    color: #fff;
    border-color: var(--myOrder_active_tab_border);
  }

  /* Orders */
   #myOrdsPG .order-list {
    border: 1px solid #ddd;
    margin-bottom: 20px;
    border-radius: 6px;
    overflow: hidden;
    background: #fff;

    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  }

   #myOrdsPG .order-header {
    background: var(--myOrder_list_header);
    padding: 10px;
    font-weight: normal;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }

   #myOrdsPG .order-item {
    display: flex;
    align-items: center;

    padding: 10px;
  }

  #myOrdsPG .order-item img {
    padding: 10px;
    width: 100px;
    object-fit: cover;

    border-radius: 4px;


    border-top: 1px solid #eee;
  }

   #myOrdsPG .order-details {
    flex-grow: 1;
    width: 30% !important;

    border-top: 1px solid #eee;
  }

   #myOrdsPG .order-details.showWeb.qty {
    width: 20% !important;
  }

   #myOrdsPG .order-details div {
    margin-bottom: 3px;
    padding: 10px 0;
  }

   #myOrdsPG .order-details div.text-center {
    text-align: center;
  }

   #myOrdsPG .order-actions button {
    padding: 6px 12px;
    background: #000;
    color: #fff;
    border: none;
    border-radius: 2px;
    cursor: pointer;
  }

   #myOrdsPG .order-actions {
    padding: 10px 10px 10px 10px;
  }

   #myOrdsPG .order-item {
    display: flex;
    align-items: stretch;
    /* ✅ force children to same height */
    padding: 0 0px;

  }

   #myOrdsPG .order-details {
    /* flex: 1; */

    border-right: 1px solid #DEDEDE;
    /* ✅ border only on details */
  }

  /* Hide all detail buttons */
   #myOrdsPG .order-list .order-actions button {
    opacity: 0;
  }

  /* Show only the first one inside each order-list */
   #myOrdsPG .order-list .order-item:nth-child(2) .order-actions button {
    opacity: 1;
  }

   #myOrdsPG .showMobile {
    display: none;
  }

   #myOrdsPG .showWeb {
    display: block;
  }

   #myOrdsPG .finalTotal {
    font-size: 16px;
  }


  @media(max-width:989px) {

     #myOrdsPG .showMobile {
      display: block;
    }

     #myOrdsPG .showWeb {
      display: none;
    }

     #myOrdsPG .order-item img {
      width: 80px;
    }

     #myOrdsPG .order-header {
      font-size: 11px;
    }

     #myOrdsPG .order-details div {
      padding: 0;
      font-size: 10px;
    }

     #myOrdsPG .order-details div:nth-child(1) {
      padding-top: 10px;
    }

     #myOrdsPG .order-details div:nth-last-child {
      padding-bottom: 10px;
    }

     #myOrdsPG .order-actions button {
      font-size: 10px;
    }


     #myOrdsPG .finalTotal {
      font-size: 13px;
    }





  }


  @media(max-width:500px) {

     #myOrdsPG .order-item img {
      width: 100px;
    }

     #myOrdsPG .order-item {
      flex-direction: column;
      border-bottom: 1px solid #DEDEDE;
    }

     #myOrdsPG .order-details {
      border: 0;
      padding: 0 10px;
    }

     #myOrdsPG .order-actions {
      padding: 20px 10px;
    }

     #myOrdsPG .order-actions button {
      width: 100%;
    }

    /* Hide all detail buttons */
     #myOrdsPG .order-list .order-actions button {
      opacity: 0 !important;
    }

     #myOrdsPG .order-list .order-actions {
      display: none;
    }

    /* Show only the first one inside each order-list */
     #myOrdsPG .order-list .order-item:last-child .order-actions button {
      opacity: 1 !important;
    }

     #myOrdsPG .order-list .order-item:last-child .order-actions {
      display: block;
    }

     #myOrdsPG .order-item img {
      border: 0;
    }


  }


  /* Load more */
   #myOrdsPG #loadMore {
    padding: 10px 20px;
    background: #28a745;
    color: #fff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    display: block;
    margin: 15px auto;
  }
    /* End My Order ============================================= */




    /* MY Order Info ============================================ */
      #myOrderInfoPG .order-container {

        margin: 0 auto;
    }

    #myOrderInfoPG .Infocard {
        background: #fff;
        border-radius: 8px;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
        margin-bottom: 20px;
        overflow: hidden;

        box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
    }

    #myOrderInfoPG .Infocard .card-header {
        background: var(--myOrder_indo_table_header_BG);
        padding: 12px 15px;
        font-weight: bold;
        border-bottom: 1px solid #eee;
    }

    #myOrderInfoPG .Infocard .card-body {
        padding: 15px;
        font-size: 14px;
    }

    /* 订单信息表格 */
    #myOrderInfoPG .Infocard .info-flex {
        display: flex;
        justify-content: flex-start;
        gap: 15px;
        /* 左右间距 */
    }

    #myOrderInfoPG .Infocard .info-col {
        flex: 1;
        padding: 5px 0px 5px 10px;
    }

    #myOrderInfoPG .Infocard .info-col2 {
        flex: 1;
        padding: 5px 0px;
    }

    #myOrderInfoPG .Infocard .info-row {
        display: flex;
        justify-content: flex-start;
        padding: 6px 0;
        border-bottom: 0px;
        /* 1px solid #f0f0f0; */
        font-size: 14px;
    }

    #myOrderInfoPG .Infocard .info-row .label {
        color: #000;
        font-weight: bold;
        margin-right: 5px;
    }

    #myOrderInfoPG .Infocard .info-row .value {
        color: #333;
        text-align: right;
    }

    /* 移动端：左右改成上下 */
    @media(max-width: 600px) {
        #myOrderInfoPG .Infocard .info-flex {
            flex-direction: column;
            gap: 0px;
        }

        #myOrderInfoPG .Infocard .info-col2 {
            padding: 5px 0px 5px 10px;
        }
    }



    #myOrderInfoPG .Infocard .card-body {
        padding: 0px !important;
        font-size: 14px;
    }

    #myOrderInfoPG .Infocard .address-flex {
        display: flex;
        /* gap: 30px; */
    }

    #myOrderInfoPG .Infocard .address-col {
        flex: 1;
    }

    #myOrderInfoPG .Infocard .address-title {
        font-weight: bold;
        margin-bottom: 8px;
        color: #333;
        background: var(--myOrder_indo_table_header_BG);
        /* 标题背景色 */
        padding: 8px 10px;
        /* 内边距 */
        border-radius: 4px;
        /* 圆角 */
    }


    #myOrderInfoPG .Infocard .address-text {
        color: #555;
        line-height: 1.5;

        padding: 5px 10px 20px 10px;
    }

    /* Mobile view: stack vertically */
    @media(max-width: 600px) {
        #myOrderInfoPG .Infocard .address-flex {
            flex-direction: column;
            gap: 15px;
        }
    }




     #myOrderInfoPG .Productcard {
        background: #fff;
        border-radius: 8px;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
        margin-bottom: 20px;
        overflow: hidden;

        box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
    }

    #myOrderInfoPG .Productcard .card-header {
        background: var(--myOrder_indo_table_header_BG);
        padding: 12px 15px;
        font-weight: bold;
        border-bottom: 1px solid #eee;

        display: none;
    }

    #myOrderInfoPG .Productcard .card-body {
        padding: 0px;
        font-size: 14px;
    }

    /* 订单信息表格 */
    #myOrderInfoPG .Productcard .info-table {
        width: 100%;
        border-collapse: collapse;
    }

    #myOrderInfoPG .Productcard .info-table td {
        padding: 8px 5px;
    }

    #myOrderInfoPG .Productcard .info-table td.label {
        font-weight: bold;
        width: 120px;
        color: #555;
    }

    /* 商品表格 */
    #myOrderInfoPG .Productcard .product-table {
        width: 100%;
        border-collapse: collapse;
    }

    #myOrderInfoPG .Productcard .product-table th,
    #myOrderInfoPG .product-table td {
        padding: 12px 10px;
        border: 1px solid #eee;
        text-align: center;
    }


    #myOrderInfoPG .Productcard .product-table th:first-child,
    #myOrderInfoPG .product-table td:first-child {
        text-align: left;
    }

    #myOrderInfoPG .Productcard .product-table th:last-child,
    #myOrderInfoPG .Productcard .product-table td:last-child,
    #myOrderInfoPG .Productcard .product-table th:nth-last-child(2),
    #myOrderInfoPG .Productcard .product-table td:nth-last-child(2) {
        text-align: right;
    }

    #myOrderInfoPG .Productcard .product-table th {
        background: var(--myOrder_indo_table_header_BG);
    }

    #myOrderInfoPG .Productcard .product-info-detail {
        display: flex;
        align-items: center;
        gap: 10px;


    }

    #myOrderInfoPG .Productcard .product-info-detail img {
        width: 80px;

        border-radius: 4px;
        object-fit: cover;
        flex-shrink: 0;
    }

    #myOrderInfoPG .Productcard .product-name {
        font-size: 14px;
        color: #333;
    }

    #myOrderInfoPG .Productcard .price {
        color: #e74c3c;
        font-weight: bold;
    }

    /* 总计 */
    #myOrderInfoPG .Productcard .total-box {
        text-align: right;
        padding: 10px 15px;
        font-size: 14px;
        border-top: 1px solid #eee;

        display: none;
    }

    #myOrderInfoPG .Productcard .total-box-web {
        display: table-row;
    }

    #myOrderInfoPG .Productcard .total-line {
        margin: 5px 0;
    }

    #myOrderInfoPG .Productcard .total-line span {
        display: inline-block;
        min-width: 100px;
        text-align: right;
    }

    #myOrderInfoPG .Productcard .grand-total {
        font-size: 16px;
        font-weight: bold;
        color: #e74c3c;
    }


    #myOrderInfoPG .hideMobileTD {
        display: table-cell;
    }


    #myOrderInfoPG .mobileQTYTotal {
        display: none;
    }

    /* 移动端优化 */
    @media(max-width: 600px) {
        #myOrderInfoPG .Productcard .info-table td.label {
            width: 90px;
        }

        #myOrderInfoPG .Productcard .product-table thead {
            display: none;
        }

        #myOrderInfoPG .Productcard .product-table tr {
            display: block;
            margin-bottom: 15px;
            border-bottom: 2px solid #f0f0f0;
        }

        #myOrderInfoPG .Productcard .product-table td {
            display: inline-block;
            border: none;
            padding: 8px 0;
        }

        #myOrderInfoPG .Productcard .product-info-detail {
            flex-direction: row;
            align-items: flex-start;
            padding: 10px;

            display: inline-block;
        }

        #myOrderInfoPG .Productcard .product-info-detail img {
            width: 100px;

        }

        #myOrderInfoPG .Productcard .total-box {

            display: block;
        }

        #myOrderInfoPG .Productcard .total-box-web {
            display: none !important;
        }


        #myOrderInfoPG .mobileQTYTotal {
            display: flex;
            justify-content: flex-start;

        }

        #myOrderInfoPG .mobileQTYTotal .qty {
            margin-right: 15px;
        }

        #myOrderInfoPG .hideMobileTD {
            display: none !important;
        }


        #myOrderInfoPG .Productcard .card-header {

            display: block;
        }
    }

    /* End My Order Info ======================================== */




    /* Product Detail Page ======================================= */
     .productDetailPage .product-container {
    display: grid;
    grid-template-columns: 1fr 2.3fr 1fr;
    gap: 20px;
  }


  @media(max-width:1100px) {
    .productDetailPage .product-container {
      grid-template-columns: 1fr 2fr 1fr;
    }
  }

  /* 左边 */
  .productDetailPage .product-images {
    /* max-width: 400px; */
    min-width: 400px;
    width: 100%;
    position: relative;

    margin: 0px auto;



  }




  @media(max-width:600px) {
    .productDetailPage .product-images {
      max-width: 300px;
      width: 100%;
    }
  }

  .productDetailPage .main-image {
    display: block;
    position: relative;
    overflow: hidden;
  }

  .productDetailPage .main-image img {
    width: 100%;
    border-radius: 8px;
    cursor: zoom-in;
  }

  /* Swiper 缩略图 */
  .productDetailPage .swiper.homeSliderProduct {
    width: 100%;
    padding-bottom: 30px;
    overflow: hidden;
  }

  .productDetailPage .homeSliderProduct .swiper-slide {
    width: 100px;
    /* 每个缩略图的宽度 */
    height: 100px;
    /* 每个缩略图的高度 */
    flex: 0 0 auto;
    /* 不要自动拉伸 */
    border-radius: 6px;
    overflow: hidden;
    border: 2px solid transparent;
  }

  .productDetailPage .homeSliderProduct .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* 图片裁剪填充 */
    display: block;
  }

  .productDetailPage .homeSliderProduct .swiper-slide.swiper-slide-thumb-active {
    border-color: #00b894;
    /* 当前选中缩略图加边框 */
  }


  .productDetailPage .homeSliderProduct .product-info {
    padding: 10px;
    display: flex;
    flex-direction: column;
    flex: 1;
    /* makes product-info fill available space */
  }





  .productDetailPage .homeSliderProduct .product-green-price {
    color: #009688;
    font-weight: bold;
    font-size: 14px;
  }


  .productDetailPage .homeSliderProduct .swiper-wrapper {
    display: flex;
    align-items: stretch;


  }

  .productDetailPage .homeSliderProduct .swiper-slide {
    background: #fff;
    border: 1px solid #eee;
    border-radius: 8px;
    overflow: hidden;
    text-align: left;
    font-size: 14px;
    color: #000;
    display: flex;
    flex-direction: column;
    height: auto;

    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    /* ensures equal height */
  }

  .productDetailPage .homeSliderProduct.swiper,
  .productDetailPage .homeSliderProduct .swiper-wrapper,
  .productDetailPage .homeSliderProduct .swiper-slide {
    box-sizing: border-box;
    position: relative;

    margin: 5px 0px;
  }

  .productDetailPage .swiper-button-next,
  .productDetailPage .swiper-button-prev {
    color: #000;
    /* arrow color */
  }


  .productDetailPage .swiper-button-next:before,
  .productDetailPage .swiper-button-prev:before {
    font-size: 20px;
    display: none;
  }

  .productDetailPage .swiper-button-next {
    right: 5px;
  }

  .productDetailPage .swiper-button-prev {
    left: 5px;
  }

  /* 放大镜 */
  .productDetailPage .zoom-container {
    position: absolute;
    top: 0;
    left: 105%;
    width: 400px;
    height: 400px;
    border: 1px solid #ccc;
    overflow: hidden;
    display: none;
    background: #fff;
    border-radius: 5px;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    z-index: 10;
  }

  .productDetailPage .zoom-container img {
    position: absolute;
    top: 0;
    left: 0;
    min-width: 100%;
    min-height: 100%;
  }

  .productDetailPage .zoom-lens {
    position: absolute;
    border: 2px solid #00b894;
    width: 100px;
    height: 100px;
    opacity: 0.4;
    background: #dfe6e9;
    display: none;
    pointer-events: none;
  }


  .productDetailPage .zoom-container,
  .productDetailPage .zoom-lens {
    display: none !important;
  }


  /* 中间 */
  .productDetailPage .product-info h2 {
    font-size: 20px;
    margin: 0 0 10px;
  }

  .productDetailPage .price {
    font-size: 24px;
    color: var(--product_price);
    font-weight: bold;
  }

  .productDetailPage .price.priceWithoutDiscount {
    color: var(--product_price_with_no_discount) !important;
  }

  .productDetailPage .old-price {
    text-decoration: line-through;
    color: var(--product_discount_price);
    margin-left: 8px;
  }

  .productDetailPage .discount {
    background: var(--product_discountTag_BG);
    color: #fff;
    font-size: 12px;
    padding: 2px 8px;
    border-radius: 50px;
    margin-left: 5px;
  }

  .productDetailPage .info-list {
    /*  margin: 10px 0; */
    font-size: 14px;

  }

  .productDetailPage .info-list b {
    font-weight: 500;
  }


  .productDetailPage .qtySection {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;

    margin-bottom: 1rem;

    font-size: 14px;
    font-weight: 500;
  }

  .productDetailPage .qtySection p {
    margin: 0;
    margin-right: 15px;
  }

  .productDetailPage .quantity {
    display: flex;
    align-items: center;
    margin: 15px 0;
  }

  .productDetailPage .quantity button {
    width: 30px;
    height: 30px;
    border: 1px solid var(--productDetail_PlusMinusBtn);
    background: var(--productDetail_PlusMinusBtn);
    color: var(--productDetail_PlusMinusBtn_text);
    cursor: pointer;

    font-weight: bold;
  }

  .productDetailPage .quantity button.minus {

    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;

  }

  .productDetailPage .quantity button.plus {

    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;

  }



  .productDetailPage .quantity input {
    width: 50px;
    text-align: center;
    border: 1px solid #ccc;
    height: 30px;
  }

  .productDetailPage .addToCartSection {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;

    margin-bottom: 1rem;

  }

  .productDetailPage .addToCartSection .shareBtnLink {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;

    margin: 0 25px;
  }

  .productDetailPage .addToCartSection .shareBtnLink a img {
    max-width: 15px;
    margin-right: 10px;
  }

  .productDetailPage .addToCartSection .shareBtnLink a {
    color: var(--productDetail_share_link_text);

    display: flex;
    align-items: center;
  }

  .productDetailPage .addToCart {
    display: inline-block;
    background: var(--productDetail_addtoCart_Btn);
    color: var(--productDetail_addtoCart_Btn_text);
    padding: 8px 35px;
    border-radius: 50px;
    cursor: pointer;
    text-align: center;
    text-decoration: none;

  }


  /* 右边 */
  .productDetailPage .promo-box {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }

  .productDetailPage .promo {
    /* border: 1px solid #ddd; */
    border-radius: 8px;
    padding: 15px;
    /*  background: #f9f9f9; */
    font-size: 14px;
    position: relative;
  }

  .productDetailPage .promo h3 {
    margin: 0 0 8px;
    font-size: 16px;
    color: #009966;
  }

  .productDetailPage .promo img {
    width: 100%;
  }

  .productDetailPage .promo .highlight {
    font-weight: bold;
    color: #ff6600;
  }


  .productDetailPage .showInMobile {
    display: none !important;
  }

  .productDetailPage .showInWeb {
    display: block !important;
  }

  /* ✅ 响应式：在手机变成 3 行 */
  /* @media (max-width: 768px) { */
  @media (max-width: 989px) {


    .productDetailPage .product-images {
      max-width: 400px;

      width: 100%;


      min-width: unset;



    }



    .productDetailPage .product-container {
      grid-template-columns: 1fr;
    }



    .productDetailPage .showInMobile {
      display: block !important;
    }

    .productDetailPage .showInWeb {
      display: none !important;
    }


  }



  .productDetailPage .favourite {

    font-size: 13px;
    display: flex;
    align-items: center;
    color: grey;
    /* text default grey


    margin: 25px 0;  */
  }

  .productDetailPage .favourite span {
    cursor: pointer;



    margin: 25px 0;
  }

  .productDetailPage .favourite .heart {
    font-size: 15px;
    margin-right: 8px;
    color: grey;
    /* heart default grey */
    transition: color 0.3s ease;

  }

  .productDetailPage .favourite.active .heart {
    color: red;
    /* heart turns red when active */
  }


  .heart.animate {
    animation: pop 0.4s ease;
  }

  @keyframes pop {
    0% {
      transform: scale(1);
    }

    40% {
      transform: scale(1.4);
    }

    60% {
      transform: scale(0.9);
    }

    100% {
      transform: scale(1);
    }
  }

  .productDetailPage .productDetailTabs.nav-tabs .nav-link.active,
  .productDetailPage .productDetailTabs.nav-tabs .nav-item.show .nav-link {
    background: var(--productDetail_descriptionTab_active_BG);
    color: var(--productDetail_descriptionTab_active_text);
  }


  .productDetailPage .productDetailTabs {
    margin-top: 35px;
  }

  .productDetailPage .swiper.mySwiper.showInWeb {
    max-width: 400px;
    height: 400px;
    position: relative;
  }

  .productDetailPage .mySwiper .swiper-slide img {
    width: 100%;

  }

  /* Position arrows at top & bottom */
  .productDetailPage .mySwiper.showInWeb .swiper-button-prev,
  .productDetailPage .mySwiper.showInWeb .swiper-button-next {
    left: 50%;
    transform: translateX(-50%);
  }

  .productDetailPage .mySwiper.showInWeb .swiper-button-prev {
    top: 10px;
    /* top arrow */
    transform: translateX(-50%) rotate(90deg);
  }

  .productDetailPage .mySwiper.showInWeb .swiper-button-next {
    bottom: 10px;
    /* bottom arrow */
    top: auto;
    transform: translateX(-50%) rotate(90deg);
  }


  .productDetailPage .swiper-button-next:after,
  .productDetailPage .swiper-button-prev:after {
    font-size: 14px !important;
    font-weight: bold;
  }

  .productDetailPage .swiper-button-next.swiper-button-disabled,
  .productDetailPage .swiper-button-prev.swiper-button-disabled {
    display: none !important;
  }


  .productDetailPage .swiper.mySwiperMobile {
    max-width: 100%;
    width: 100% !important;
    height: 100%;
    position: relative;

    /* margin: 20px 0px 50px 0; */
  }

  .productDetailPage .mySwiperMobile .swiper-slide img {
    width: 100% !important;

  }


  .productDetailPage .product-options {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 15px 0;
  }

  .productDetailPage .option {
    border: 2px solid transparent;
    padding: 3px;
    cursor: pointer;
    transition: border 0.3s;
  }

  .productDetailPage .option.active {
    border: 2px solid var(--product_option_selection_border);
  }

  .productDetailPage .option img {
    width: 60px;
    height: 60px;
    object-fit: cover;
  }
    /* End Product Detail ======================================== */




    /* Campaign -> products_category.twig ======================= */

  
  #product-category .text {
    position: relative;
    font-size: 10px;
    color: black;
    font-weight: bold;
    /* width: 200px;*/
    /* Could be anything you like. */
  }

  #product-category .text-concat {
    position: relative;
    display: inline-block;
    word-wrap: break-word;
    overflow: hidden;
    max-height: 4.6em;
    /* (Number of lines you want visible) * (line-height) */
    line-height: 1.5em;
    text-align: center;
    height: 46px;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    max-width: 100%;
    color: #777777;
    padding: 0px;
    font-weight: normal;
  }

  #product-category .caption .price {
    font-size: 14px;
    text-align: left;
  }

  #product-category .product-thumb {
    background-color: #f5f5f5;
  }

  #product-category #filter_column_1 {
    width: 65%;
    border: 0;
  }

  #product-category #filter_column_2 {
    width: 5%;
  }

  #product-category #filter_column_3 {
    width: 10%;
    border: 0;
  }

  #product-category #filter_column_4 {
    width: 5%;
    margin-left: 8px;
  }

  #product-category #filter_column_5 {
    width: 15%;
    border: 0;
  }

  @media (max-width: 480px) {
    #product-category .category-products .product-layout.product-grid {
      width: 50%;
    }

    #product-category #filter_column_1 {
      width: 0%;
    }

    #product-category #filter_column_2 {
      width: 5%;
    }

    #product-category #filter_column_3 {
      width: 35%;
    }

    #product-category #filter_column_4 {
      width: 5%;
      margin-left: 5px;
    }

    #product-category #filter_column_5 {
      width: 55%;
    }
  }

  #product-category #footer_mobile {
    position: fixed;
    bottom: 0;
    width: 100%;
    background-color: #f5f5f5;
    /* Footer height */
  }

  #product-category .optionSection {
    text-align: left;
    margin-left: -8px;
  }

  #product-category .optionSection .radio label {
    text-align: left;
    font-size: 10px;
  }

  #product-category .optionSection_Price {
    color: red;
  }

  #product-category .viewCart {
    margin-top: -10px;
  }

  #product-category .addtoCartbyPage {
    margin-top: 10px;

  }

  #product-category .ViewCartByPage {
    margin-top: 18px;
  }

  #product-category .product-thumb .thumb-description {
    padding-top: 5px;
    padding-bottom: 5px;
  }

  #product-category .qtyInput {
    width: 40px;
    float: left;
    border: 2px solid orange;
  }

  #product-category .cartQtyDiv {
    position: relative;
    border: 1px solid white;
    height: 30px;
    overflow: hidden;
    margin-bottom: 10px;
    width: 300px;
    max-width: 100%;
  }


  #product-category .qty_text {
    height: 24px;
    width: 100%;
    padding: 0;
    line-height: 30px;
    font-size: 14px;
    padding: 12px;
    margin: 3px;
    margin-left: 0px;
    border: none;
  }

  #product-category .qty_text:focus {
    outline: none;
  }

  #product-category .btnCart {
    position: absolute;
    height: 30px;
    line-height: 25px;
    right: 0;
    top: 0;
    margin: 0;
    padding: 0;
    background: orange;
    color: white;
    border: none;
    width: 30%;
    font-size: 14px;
  }

  #product-category .btnCart:hover {
    color: black;
    cursor: pointer;
  }


  @media (max-width: 767px) {
    #product-category #filter_column_1 {
      width: 0%;
    }

    #product-category #filter_column_2 {
      width: 5%;
    }

    #product-category #filter_column_3 {
      width: 35%;
    }

    #product-category #filter_column_4 {
      width: 5%;
      margin-left: 5px;
    }

    #product-category #filter_column_5 {
      width: 55%;
    }

  }


  #product-category .quantity {
    padding-top: 0px;
    margin-right: 0px;
  }



  #product-category .quantity input {
    -webkit-appearance: none;
    border: none;
    text-align: center;
    width: 50px;
    font-size: 14px;
    color: #43484D;
    font-weight: 300;
    height: 30px;
  }


  #product-category .minus-btn img {
    margin-bottom: 3px;
  }

  #product-category .plus-btn img {
    margin-top: 2px;
  }

  #product-category button:focus,
  input:focus {
    outline: 0;
  }


  #product-category .text-concat {
    font-size: 12px !important;
    text-align: left !important;
  }


  #product-category .buttont_sold_out {
    background: lightgray !important;
    border-color: lightgray !important;
    pointer-events: none;
    cursor: default;
    text-align: center !important;
  }


  #product-category .buttont_add_button {
    border-radius: 10px !important;

    width: 50%;
    font-size: 10px;
    min-width: 102px;
    max-width: 102px;
    text-align: center;
    padding: 4px 3px 4px 3px !important;
    border-radius: 6px !important;

  }


  #product-category .product-grid .product-thumb .image {
    border: 0 !important;
  }



   #product-category .product-grid .product-thumb.row {
    background: transparent !important;
  }

  #product-category .product-thumb .thumb-description {
    background: transparent !important;
  }



  #product-category .productSearchName a {
    font-size: 15px;
    line-height: 25px;

    color: #000;
    margin-bottom: 15px;

  }


  #product-category .product-thumb .price {
    font-weight: normal !important;
  }

  #product-category .price>span,
  #product-category .price-new>span {
    font-size: 17px !important;
    line-height: 24px;
    font-weight: 600 !important;
  }


  #product-category .price-old {
    font-size: 15px !important;
    line-height: 18px;
  }






  #product-category .product-layout {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

  #product-category ul {
    list-style: none;
  }

  #product-category .side-nav-categories {
    padding: 0px;
    position: relative;
    margin-top: 0px;
    padding-bottom: 0px;
    background-color: #fff;
    border-width: 1px;
    border-style: solid;
    border-color: #f5f5f5 #eee #d5d5d5 #eee;
    /*  box-shadow: 0 5px 0 rgba(200,200,200,.2); */
    margin-bottom: 30px;
    /* width: 250px; */
    width: 100%;
    margin: auto;

  }


  #product-category ul#category-tabs {
    list-style: none;
    padding: 0;
    margin: 0;
    padding: 0;
  }

  #product-category ul#category-tabs li {
    display: block;
    position: relative;
    margin: 0;
    border-bottom: 1px #ececec solid;
    padding: 10px 18px;
  }

  #product-category ul.sub-category-tabs li {
    padding: 2px !important;
  }

  #product-category ul.sub-category-tabs li {
    border-bottom: 0px !important;
  }

  #product-category ul#category-tabs li a {
    color: #333;
    /*  font-weight: bold; */
    margin-bottom: 0;
    font-size: 15px;
    line-height: 30px;
  }

  #product-category ul#category-tabs .sub-category-tabs li a {
    font-size: 13px !important;
    line-height: 25px !important;
  }


  #product-category .sub-sub-category-tabs li a {

    font-size: 11px !important;
    line-height: 20px !important;

  }


  #product-category ul#category-tabs li a i {
    top: 12px;
    right: 18px;
    position: absolute;
    cursor: pointer;
    width: 16px;
    height: 16px;
    padding: 2px;
    color: #000;
  }


  #product-category ul.sub-category-tabs>li {
    padding: 0 10px !important;
  }

  #product-category ul.sub-sub-category-tabs>li {
    padding: 0 15px !important;
  }



  @media(max-width:989px) {
    #product-category .hide-mobile {
      display: none;
    }
  }



  #product-category .categoryPanel {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  #product-category .snow {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
  }






  #product-category .gridcolumn
  {
    display: block;
  }

  #product-category .listcolumn
  {
    display: none;
  }

    /* End Campaign -> products_category.twig =================== */








    /* Information -> outlet.twig =============================== */
     .myoutletContain {
    clear: both;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    /* remove gap */
}

.myoutletContain > div {
    padding: 10px 15px 10px 0;
}


    .myoutletContain iframe {
        width: 100%;
    }


    .myoutletContain .mapTitle {
        font-size: 20px;
        font-weight: bold;
        text-align: center;
    }


    .myoutletContain .mapTitle a {
        color: #000;
        line-height: 35px;
    }



    .myoutletContain .location {
        margin: 25px auto;
    }

    .myoutletContain .location p {
        text-align: center;
        font-size: 12px;
        margin-bottom: 5px;
    }

    .myoutletContain .location .locationText {
        font-size: 15px;
    }




    .myoutletContain .operatingHours {
        margin: 25px auto;
    }

    .myoutletContain .operatingHours p {
        text-align: center;
        font-size: 12px;
        margin-bottom: 5px;
    }

    .myoutletContain .operatingHours .operatingHoursText {
        font-size: 15px;

      
    }




    .myoutletContain .telInfo {
        text-align: center;
        font-size: 14px;
        margin-bottom: 55px;
    }
    /* End outlet.twig ========================================== */







    /* Campaign -> redemption.twig ============================== */
 
    .campaignRedmpPG .text {
        position: relative;
        font-size: 10px;
        color: black;
        font-weight: bold;
        /* width: 200px;*/
        /* Could be anything you like. */
    }

    .campaignRedmpPG .text-concat {
        position: relative;
        display: inline-block;
        word-wrap: break-word;
        overflow: hidden;
        max-height: 4.6em;
        /* (Number of lines you want visible) * (line-height) */
        line-height: 1.5em;
        text-align: center;
        height: 46px;
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        max-width: 100%;
        color: #777777;
        padding: 0px;
        font-weight: normal;
    }

    .campaignRedmpPG .caption .price {
        font-size: 14px;
        text-align: left;
    }

    .campaignRedmpPG .product-thumb {
        background-color: #f5f5f5;
    }

    .campaignRedmpPG #filter_column_1 {
        width: 65%;
        border: 0;
    }

    .campaignRedmpPG #filter_column_2 {
        width: 5%;
    }

    .campaignRedmpPG #filter_column_3 {
        width: 10%;
        border: 0;
    }

    .campaignRedmpPG #filter_column_4 {
        width: 5%;
        margin-left: 8px;
    }

    .campaignRedmpPG #filter_column_5 {
        width: 15%;
        border: 0;
    }

    @media (max-width: 480px) {
        .campaignRedmpPG .category-products .product-layout.product-grid {
            width: 50%;
        }

        .campaignRedmpPG #filter_column_1 {
            width: 0%;
        }

        .campaignRedmpPG #filter_column_2 {
            width: 5%;
        }

        .campaignRedmpPG #filter_column_3 {
            width: 35%;
        }

        .campaignRedmpPG #filter_column_4 {
            width: 5%;
            margin-left: 5px;
        }

        .campaignRedmpPG #filter_column_5 {
            width: 55%;
        }
    }

    .campaignRedmpPG #footer_mobile {
        position: fixed;
        bottom: 0;
        width: 100%;
        background-color: #f5f5f5;
        /* Footer height */
    }

    .campaignRedmpPG .optionSection {
        text-align: left;
        margin-left: -8px;
    }

    .campaignRedmpPG .optionSection .radio label {
        text-align: left;
        font-size: 10px;
    }

    
    .campaignRedmpPG .optionSection_Price {
        color: red;
    }

    .campaignRedmpPG .viewCart {
        margin-top: -10px;
    }

    .campaignRedmpPG .addtoCartbyPage {
        margin-top: 10px;

    }

    .campaignRedmpPG .ViewCartByPage {
        margin-top: 18px;
    }

    .campaignRedmpPG .product-thumb .thumb-description {
        padding-top: 5px;
        padding-bottom: 5px;
    }

    .campaignRedmpPG .qtyInput {
        width: 40px;
        float: left;
        border: 2px solid orange;
    }

    .campaignRedmpPG .cartQtyDiv {
        position: relative;
        border: 1px solid white;
        height: 30px;
        overflow: hidden;
        margin-bottom: 10px;
        width: 300px;
        max-width: 100%;
    }


    .campaignRedmpPG .qty_text {
        height: 24px;
        width: 100%;
        padding: 0;
        line-height: 30px;
        font-size: 14px;
        padding: 12px;
        margin: 3px;
        margin-left: 0px;
        border: none;
    }

    .campaignRedmpPG .qty_text:focus {
        outline: none;
    }

    .campaignRedmpPG .btnCart {
        position: absolute;
        height: 30px;
        line-height: 25px;
        right: 0;
        top: 0;
        margin: 0;
        padding: 0;
        background: orange;
        color: white;
        border: none;
        width: 30%;
        font-size: 14px;

      
    }

    .campaignRedmpPG .btnCart:hover {
        color: black;
        cursor: pointer;
    }


    @media (max-width: 767px) {
        .campaignRedmpPG #filter_column_1 {
            width: 0%;
        }

        .campaignRedmpPG #filter_column_2 {
            width: 5%;
        }

        .campaignRedmpPG #filter_column_3 {
            width: 35%;
        }

        .campaignRedmpPG #filter_column_4 {
            width: 5%;
            margin-left: 5px;
        }

        .campaignRedmpPG #filter_column_5 {
            width: 55%;
        }

    }


    .campaignRedmpPG .quantity {
        padding-top: 0px;
        margin-right: 0px;
    }

    

    .campaignRedmpPG .quantity input {
        -webkit-appearance: none;
        border: none;
        text-align: center;
        width: 50px;
        font-size: 14px;
        color: #43484D;
        font-weight: 300;
        height: 30px;
    }


  
    .campaignRedmpPG .minus-btn img {
        margin-bottom: 3px;
    }

    .campaignRedmpPG .plus-btn img {
        margin-top: 2px;
    }

    .campaignRedmpPG button:focus,
    .campaignRedmpPG input:focus {
        outline: 0;
    }


    .campaignRedmpPG .text-concat {
        font-size: 12px !important;
        text-align: left !important;
    }





    .campaignRedmpPG .buttont_sold_out {
        background: lightgray !important;
        border-color: lightgray !important;
        pointer-events: none;
        cursor: default;
        text-align: center !important;
    }


    .campaignRedmpPG .buttont_add_button {
        border-radius: 10px !important;

        width: 50%;
        font-size: 10px;
        min-width: 102px;
        max-width: 102px;
        text-align: center;
        padding: 4px 3px 4px 3px !important;
        border-radius: 6px !important;

    }


    .campaignRedmpPG .product-grid .product-thumb .image {
        border: 0 !important;
    }

   


     .campaignRedmpPG .product-grid .product-thumb.row {
        background: transparent !important;
    }

    .campaignRedmpPG .product-thumb .thumb-description {
        background: transparent !important;
    }



    .campaignRedmpPG .productSearchName a {
        font-size: 15px;
        line-height: 25px;

        color: #000;
        margin-bottom: 15px;

    }


    .campaignRedmpPG .product-thumb .price {
        font-weight: normal !important;
    }

    .campaignRedmpPG .price>span,
    .campaignRedmpPG .price-new>span {
        font-size: 17px !important;
        line-height: 24px;
        font-weight: 600 !important;
    }


    .campaignRedmpPG .price-old {
        font-size: 15px !important;
        line-height: 18px;
    }






    .campaignRedmpPG .product-layout {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }



     .campaignRedmpPG ul {
        list-style: none;
    }

    .campaignRedmpPG .side-nav-categories {
        padding: 0px;
        position: relative;
        margin-top: 0px;
        padding-bottom: 0px;
        background-color: #fff;
        border-width: 1px;
        border-style: solid;
        border-color: #f5f5f5 #eee #d5d5d5 #eee;
        /*  box-shadow: 0 5px 0 rgba(200,200,200,.2); */
        margin-bottom: 30px;
        /* width: 250px; */
        width: 100%;
        margin: auto;

    }


    .campaignRedmpPG ul#category-tabs {
        list-style: none;
        padding: 0;
        margin: 0;
        padding: 0;
    }

    .campaignRedmpPG ul#category-tabs li {
        display: block;
        position: relative;
        margin: 0;
        border-bottom: 1px #ececec solid;
        padding: 10px 18px;
    }

    .campaignRedmpPG ul.sub-category-tabs li {
        padding: 2px !important;
    }

    .campaignRedmpPG ul.sub-category-tabs li {
        border-bottom: 0px !important;
    }

    .campaignRedmpPG ul#category-tabs li a {
        color: #333;
        /*  font-weight: bold; */
        margin-bottom: 0;
        font-size: 15px;
        line-height: 30px;
    }

    .campaignRedmpPG ul#category-tabs .sub-category-tabs li a {
        font-size: 13px !important;
        line-height: 25px !important;
    }


    .campaignRedmpPG .sub-sub-category-tabs li a {

        font-size: 11px !important;
        line-height: 20px !important;

    }


    .campaignRedmpPG ul#category-tabs li a i {
        top: 12px;
        right: 18px;
        position: absolute;
        cursor: pointer;
        width: 16px;
        height: 16px;
        padding: 2px;
        color: #000;
    }



    .campaignRedmpPG ul.sub-category-tabs>li:not(:last-child) {
        /* border-bottom: 3px dotted #eee !important; */
    }

    .campaignRedmpPG ul.sub-category-tabs>li {
        padding: 0 10px !important;
    }


    .campaignRedmpPG ul.sub-sub-category-tabs>li:not(:last-child) {
        /* border-bottom: 3px dashed #eee !important; */
    }

    .campaignRedmpPG ul.sub-sub-category-tabs>li {
        padding: 0 15px !important;
    }



    @media(max-width:989px) {
        .campaignRedmpPG .hide-mobile {
            display: none;
        }
    }



    .campaignRedmpPG .categoryPanel {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }


    .campaignRedmpPG .product-old-price
    {
        margin-left: 0 !important;
    }



     .campaignRedmpPG .snow {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        z-index: 2;
    }






    .campaignRedmpPG .gridcolumn {
        display: block;
    }

    .campaignRedmpPG .listcolumn {
        display: none;
    }
    /* End Campaign -> redemption.twig ========================== */














    /* Product -> redemption.twig ========================================= */
    #productRempPG.productDetailPage .product-container {
    display: grid;
    grid-template-columns: 1fr 2.3fr;
    gap: 20px;
  }


  @media(max-width:1100px) {
    #productRempPG.productDetailPage .product-container {
      grid-template-columns: 1fr 2fr;
    }
  }

  /* 左边 */
  #productRempPG.productDetailPage .product-images {
    /* max-width: 400px; */
    min-width: 400px;
    width: 100%;
    position: relative;

    margin: 0px auto;



  }




  @media(max-width:600px) {
    #productRempPG.productDetailPage .product-images {
      max-width: 300px;
      width: 100%;
    }
  }

  #productRempPG.productDetailPage .main-image {
    display: block;
    position: relative;
    overflow: hidden;
  }

  #productRempPG.productDetailPage .main-image img {
    width: 100%;
    border-radius: 8px;
    cursor: zoom-in;
  }

  /* Swiper 缩略图 */
  #productRempPG.productDetailPage .swiper.homeSliderProduct {
    width: 100%;
    padding-bottom: 30px;
    overflow: hidden;
  }

  #productRempPG.productDetailPage .homeSliderProduct .swiper-slide {
    width: 100px;
    /* 每个缩略图的宽度 */
    height: 100px;
    /* 每个缩略图的高度 */
    flex: 0 0 auto;
    /* 不要自动拉伸 */
    border-radius: 6px;
    overflow: hidden;
    border: 2px solid transparent;
  }

  #productRempPG.productDetailPage .homeSliderProduct .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* 图片裁剪填充 */
    display: block;
  }

  #productRempPG.productDetailPage .homeSliderProduct .swiper-slide.swiper-slide-thumb-active {
    border-color: #00b894;
    /* 当前选中缩略图加边框 */
  }


  #productRempPG.productDetailPage .homeSliderProduct .product-info {
    padding: 10px;
    display: flex;
    flex-direction: column;
    flex: 1;
    /* makes product-info fill available space */
  }





  #productRempPG.productDetailPage .homeSliderProduct .product-green-price {
    color: #009688;
    font-weight: bold;
    font-size: 14px;
  }


  #productRempPG.productDetailPage .homeSliderProduct .swiper-wrapper {
    display: flex;
    align-items: stretch;


  }

  #productRempPG.productDetailPage .homeSliderProduct .swiper-slide {
    background: #fff;
    border: 1px solid #eee;
    border-radius: 8px;
    overflow: hidden;
    text-align: left;
    font-size: 14px;
    color: #000;
    display: flex;
    flex-direction: column;
    height: auto;

    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    /* ensures equal height */
  }

  #productRempPG.productDetailPage .homeSliderProduct.swiper,
  #productRempPG.productDetailPage .homeSliderProduct .swiper-wrapper,
  #productRempPG.productDetailPage .homeSliderProduct .swiper-slide {
    box-sizing: border-box;
    position: relative;

    margin: 5px 0px;
  }

  #productRempPG.productDetailPage .swiper-button-next,
  #productRempPG.productDetailPage .swiper-button-prev {
    color: #000;
    /* arrow color */
  }


  #productRempPG.productDetailPage .swiper-button-next:before,
  #productRempPG.productDetailPage .swiper-button-prev:before {
    font-size: 20px;
    display: none;
  }

  #productRempPG.productDetailPage .swiper-button-next {
    right: 5px;
  }

  #productRempPG.productDetailPage .swiper-button-prev {
    left: 5px;
  }

  /* 放大镜 */
  #productRempPG.productDetailPage .zoom-container {
    position: absolute;
    top: 0;
    left: 105%;
    width: 400px;
    height: 400px;
    border: 1px solid #ccc;
    overflow: hidden;
    display: none;
    background: #fff;
    border-radius: 5px;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    z-index: 10;
  }

  #productRempPG.productDetailPage .zoom-container img {
    position: absolute;
    top: 0;
    left: 0;
    min-width: 100%;
    min-height: 100%;
  }

  #productRempPG.productDetailPage .zoom-lens {
    position: absolute;
    border: 2px solid #00b894;
    width: 100px;
    height: 100px;
    opacity: 0.4;
    background: #dfe6e9;
    display: none;
    pointer-events: none;
  }


  #productRempPG.productDetailPage .zoom-container,
  #productRempPG.productDetailPage .zoom-lens {
    display: none !important;
  }


  /* 中间 */
  #productRempPG.productDetailPage .product-info h2 {
    font-size: 20px;
    margin: 0 0 10px;
  }

  #productRempPG.productDetailPage .price {
    font-size: 24px;
    color: var(--product_price);
    font-weight: bold;
  }

  #productRempPG.productDetailPage .price.priceWithoutDiscount {
    color: var(--product_price_with_no_discount) !important;
  }

  #productRempPG.productDetailPage .old-price {
    text-decoration: line-through;
    color: var(--product_discount_price);
    margin-left: 8px;
  }

  #productRempPG.productDetailPage .discount {
    background: var(--product_discountTag_BG);
    color: #fff;
    font-size: 12px;
    padding: 2px 8px;
    border-radius: 50px;
    margin-left: 5px;
  }

  #productRempPG.productDetailPage .info-list {
    /*  margin: 10px 0; */
    font-size: 14px;

  }

  #productRempPG.productDetailPage .info-list b {
    font-weight: 500;
  }


  #productRempPG.productDetailPage .qtySection {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;

    margin-bottom: 1rem;

    font-size: 14px;
    font-weight: 500;
  }

  #productRempPG.productDetailPage .qtySection p {
    margin: 0;
    margin-right: 15px;
  }

  #productRempPG.productDetailPage .quantity {
    display: flex;
    align-items: center;
    margin: 15px 0;
  }

  #productRempPG.productDetailPage .quantity button {
    width: 30px;
    height: 30px;
    border: 1px solid var(--productDetail_PlusMinusBtn);
    background: var(--productDetail_PlusMinusBtn);
    color: var(--productDetail_PlusMinusBtn_text);
    cursor: pointer;

    font-weight: bold;
  }

  #productRempPG.productDetailPage .quantity button.minus {

    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;

  }

  #productRempPG.productDetailPage .quantity button.plus {

    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;

  }



  #productRempPG.productDetailPage .quantity input {
    width: 50px;
    text-align: center;
    border: 1px solid #ccc;
    height: 30px;
  }

  #productRempPG.productDetailPage .addToCartSection {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;

    margin-bottom: 1rem;

  }

  #productRempPG.productDetailPage .addToCartSection .shareBtnLink {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;

    margin: 0 25px;
  }

  #productRempPG.productDetailPage .addToCartSection .shareBtnLink a img {
    max-width: 15px;
    margin-right: 10px;
  }

  #productRempPG.productDetailPage .addToCartSection .shareBtnLink a {
    color: var(--productDetail_share_link_text);

    display: flex;
    align-items: center;
  }

  #productRempPG.productDetailPage .addToCart {
    display: inline-block;
    background: var(--productDetail_addtoCart_Btn);
    color: var(--productDetail_addtoCart_Btn_text);
    padding: 8px 35px;
    border-radius: 50px;
    cursor: pointer;
    text-align: center;
    text-decoration: none;

  }


  /* 右边 */
  #productRempPG.productDetailPage .promo-box {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }

  #productRempPG.productDetailPage .promo {
    /* border: 1px solid #ddd; */
    border-radius: 8px;
    padding: 15px;
    /*  background: #f9f9f9; */
    font-size: 14px;
    position: relative;
  }

  #productRempPG.productDetailPage .promo h3 {
    margin: 0 0 8px;
    font-size: 16px;
    color: #009966;
  }

  #productRempPG.productDetailPage .promo img {
    width: 100%;
  }

  #productRempPG.productDetailPage .promo .highlight {
    font-weight: bold;
    color: #ff6600;
  }


  #productRempPG.productDetailPage .showInMobile {
    display: none !important;
  }

  #productRempPG.productDetailPage .showInWeb {
    display: block !important;
  }

  /* ✅ 响应式：在手机变成 3 行 */
  /* @media (max-width: 768px) { */
  @media (max-width: 989px) {


    #productRempPG.productDetailPage .product-images {
      max-width: 400px;

      width: 100%;


      min-width: unset;



    }



    #productRempPG.productDetailPage .product-container {
      grid-template-columns: 1fr;
    }



    #productRempPG.productDetailPage .showInMobile {
      display: block !important;
    }

    #productRempPG.productDetailPage .showInWeb {
      display: none !important;
    }


  }



  #productRempPG.productDetailPage .favourite {

    font-size: 13px;
    display: flex;
    align-items: center;
    color: grey;
    /* text default grey


    margin: 25px 0;  */
  }

  #productRempPG.productDetailPage .favourite span {
    cursor: pointer;



    margin: 25px 0;
  }

  #productRempPG.productDetailPage .favourite .heart {
    font-size: 15px;
    margin-right: 8px;
    color: grey;
    /* heart default grey */
    transition: color 0.3s ease;

  }

  #productRempPG.productDetailPage .favourite.active .heart {
    color: red;
    /* heart turns red when active */
  }


  #productRempPG .heart.animate {
    animation: pop 0.4s ease;
  }

  @keyframes pop {
    0% {
      transform: scale(1);
    }

    40% {
      transform: scale(1.4);
    }

    60% {
      transform: scale(0.9);
    }

    100% {
      transform: scale(1);
    }
  }

  #productRedempPGTab.productDetailTabs.nav-tabs .nav-link.active,
  #productRedempPGTab.productDetailTabs.nav-tabs .nav-item.show .nav-link {
    background: var(--productDetail_descriptionTab_active_BG);
    color: var(--productDetail_descriptionTab_active_text);
  }


  #productRedempPGTab.productDetailTabs {
    margin-top: 35px;
  }




   #productRempPG.productDetailPage .swiper.mySwiper.showInWeb {
    max-width: 400px;
    height: 400px;
    position: relative;
  }

  #productRempPG.productDetailPage .mySwiper .swiper-slide img {
    width: 100%;

  }

  /* Position arrows at top & bottom */
  #productRempPG.productDetailPage .mySwiper.showInWeb .swiper-button-prev,
  #productRempPG.productDetailPage .mySwiper.showInWeb .swiper-button-next {
    left: 50%;
    transform: translateX(-50%);
  }

  #productRempPG.productDetailPage .mySwiper.showInWeb .swiper-button-prev {
    top: 10px;
    /* top arrow */
    transform: translateX(-50%) rotate(90deg);
  }

  #productRempPG.productDetailPage .mySwiper.showInWeb .swiper-button-next {
    bottom: 10px;
    /* bottom arrow */
    top: auto;
    transform: translateX(-50%) rotate(90deg);
  }


  #productRempPG.productDetailPage .swiper-button-next:after,
  #productRempPG.productDetailPage .swiper-button-prev:after {
    font-size: 14px !important;
    font-weight: bold;
  }

  #productRempPG.productDetailPage .swiper-button-next.swiper-button-disabled,
  #productRempPG.productDetailPage .swiper-button-prev.swiper-button-disabled {
    display: none !important;
  }











  #productRempPG.productDetailPage .swiper.mySwiperMobile {
    max-width: 100%;
    width: 100% !important;
    height: 100%;
    position: relative;

    /* margin: 20px 0px 50px 0; */
  }

  #productRempPG.productDetailPage .mySwiperMobile .swiper-slide img {
    width: 100% !important;

  }

  #productRempPG .product-options {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 15px 0;
  }

  #productRempPG .option {
    border: 2px solid transparent;
    padding: 3px;
    cursor: pointer;
    transition: border 0.3s;
  }

  #productRempPG .option.active {
    border: 2px solid var(--product_option_selection_border);
  }

  #productRempPG .option img {
    width: 60px;
    height: 60px;
    object-fit: cover;
  }
    /* End Product Redemption ===================================== */





    /* My Redemption.twig ========================================== */
 #myRedeemPG h2 {
    margin-bottom: 15px;
  }

  /* Filters */
  #myRedeemPG .filters {
    margin-bottom: 15px;
  }

  #myRedeemPG .filters input {
    margin-top: 10px;
    margin-bottom: 10px;
    padding: 6px;
    margin-right: 5px;
    border: 1px solid #ccc;
    border-radius: 4px;
  }

  #myRedeemPG .filters button {
    margin-top: 10px;
    margin-bottom: 10px;
    padding: 7px 15px;
    margin-right: 5px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
  }

  #myRedeemPG #filterBtn {
    background: var(--myOrder_filter_btn);
    color: var(--myOrder_filter_btn_text);
  }

  #myRedeemPG #resetBtn {
    background: var(--myOrder_reset_btn);
    color: var(--myOrder_reset_btn_text);
  }

  /* Tabs */
  #myRedeemPG .tabs {
    margin-bottom: 15px;
  }

  #myRedeemPG .tab {
    display: inline-block;
    padding: 10px 20px;
    border: 1px solid var(--myOrder_inactive_tab_border);
    cursor: pointer;
    border-radius: 4px 4px 0 0;
    background: var(--myOrder_inactive_tab_BG);


    margin-bottom: 10px !important;
    min-width: 100px;
    text-align: center;
  }

  #myRedeemPG .tab.active {
    background: var(--myOrder_active_tab_BG);
    color: #fff;
    border-color: var(--myOrder_active_tab_border);
  }

  /* Orders */
  #myRedeemPG .order-list {
    border: 1px solid #ddd;
    margin-bottom: 20px;
    border-radius: 6px;
    overflow: hidden;
    background: #fff;

    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  }

  #myRedeemPG .order-header {
    background: var(--myOrder_list_header);
    padding: 10px;
    font-weight: normal;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }

  #myRedeemPG .order-item {
    display: flex;
    align-items: center;

    padding: 10px;
  }

  #myRedeemPG .order-item img {
    padding: 10px;
    width: 100px;
    object-fit: cover;

    border-radius: 4px;


    border-top: 1px solid #eee;
  }

  #myRedeemPG .order-details {
    flex-grow: 1;
    width: 30% !important;

    border-top: 1px solid #eee;
  }

  #myRedeemPG .order-details.showWeb.qty {
    width: 20% !important;
  }

  #myRedeemPG .order-details div {
    margin-bottom: 3px;
    padding: 10px 0;
  }

  #myRedeemPG .order-details div.text-center {
    text-align: center;
  }

  #myRedeemPG .order-actions button {
    padding: 6px 12px;
    background: #000;
    color: #fff;
    border: none;
    border-radius: 2px;
    cursor: pointer;
  }

  #myRedeemPG .order-actions {
    padding: 10px 10px 10px 10px;
  }

  #myRedeemPG .order-item {
    display: flex;
    align-items: stretch;
    /* ✅ force children to same height */
    padding: 0 0px;

  }

  #myRedeemPG .order-details {
    /* flex: 1; */

    border-right: 1px solid #DEDEDE;
    /* ✅ border only on details */
  }

  /* Hide all detail buttons */
  #myRedeemPG .order-list .order-actions button {
    opacity: 0;
  }

  /* Show only the first one inside each order-list */
  #myRedeemPG .order-list .order-item:nth-child(2) .order-actions button {
    opacity: 1;
  }

  #myRedeemPG .showMobile {
    display: none;
  }

  #myRedeemPG .showWeb {
    display: block;
  }

  #myRedeemPG .finalTotal {
    font-size: 16px;
  }


  @media(max-width:989px) {

    #myRedeemPG .showMobile {
      display: block;
    }

    #myRedeemPG .showWeb {
      display: none;
    }

    #myRedeemPG .order-item img {
      width: 80px;
    }

    #myRedeemPG .order-header {
      font-size: 11px;
    }

    #myRedeemPG .order-details div {
      padding: 0;
      font-size: 10px;
    }

    #myRedeemPG .order-details div:nth-child(1) {
      padding-top: 10px;
    }

    #myRedeemPG .order-details div:nth-last-child {
      padding-bottom: 10px;
    }

    #myRedeemPG .order-actions button {
      font-size: 10px;
    }


    #myRedeemPG .finalTotal {
      font-size: 13px;
    }





  }


  @media(max-width:500px) {

    #myRedeemPG .order-item img {
      width: 100px;
    }

    #myRedeemPG .order-item {
      flex-direction: column;
      border-bottom: 1px solid #DEDEDE;
    }

    #myRedeemPG .order-details {
      border: 0;
      padding: 0 10px;

      width: 100% !important;
    }

    #myRedeemPG .order-actions {
      padding: 20px 10px;
    }

    #myRedeemPG .order-actions button {
      width: 100%;
    }

    /* Hide all detail buttons */
    #myRedeemPG .order-list .order-actions button {
      opacity: 0 !important;
    }

    #myRedeemPG .order-list .order-actions {
      display: none;
    }

    /* Show only the first one inside each order-list */
    #myRedeemPG .order-list .order-item:last-child .order-actions button {
      opacity: 1 !important;
    }

    #myRedeemPG .order-list .order-item:last-child .order-actions {
      display: block;
    }

    #myRedeemPG .order-item img {
      border: 0;
    }


  }


  /* Load more */
  #myRedeemPG #loadMore {
    padding: 10px 20px;
    background: #28a745;
    color: #fff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    display: block;
    margin: 15px auto;
  }
    /* End My Redemption =========================================== */





    /* campaign -> campaign_list.twig =============================== */
    #campaignLstPG .campaign {
        margin-bottom: 30px;
    }

    #campaignLstPG .campaign-title {
        font-size: 14px;
        font-weight: bold;
        margin-bottom: 8px;
        color: #333;
    }

    #campaignLstPG .campaign-banner {
        display: block;
        width: 100%;
        height: auto;
        border-radius: 6px;
        overflow: hidden;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
        transition: transform 0.25s ease, box-shadow 0.25s ease;
    }

    #campaignLstPG .campaign-banner:hover {
        transform: scale(1.02);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    /* ✅ 响应式 */
    @media (max-width: 768px) {
        #campaignLstPG .campaign-banner {
            border-radius: 0;
        }
    }
    /*  End campaign_list.twig ====================================== */






    /* Related Product ============================================== */
    .swiper.relatedProductSliderProduct {
		width: 100%;
		padding-bottom: 30px;
		overflow: hidden;
	}

	.relatedProductSliderProduct .swiper-slide {
		background: red;
		border: 1px solid #eee;
		border-radius: 8px;
		overflow: hidden;
		text-align: left;
		font-size: 14px;
		color: #000;
		display: flex;
		flex-direction: column;
	}

	.relatedProductSliderProduct .product-img {
		width: 100%;

		display: flex;
		align-items: center;
		justify-content: center;
		overflow: hidden;
		background: #fff;
	}

	.relatedProductSliderProduct .product-img img {
		max-width: 100%;
		max-height: 100%;
		object-fit: contain;
	}

	.relatedProductSliderProduct .product-info {
		padding: 10px;
		display: flex;
		flex-direction: column;
		flex: 1;

		justify-content: space-between;
		/* makes product-info fill available space */
	}


	.relatedProductSliderProduct .product-info .product-title
	{
line-height: 1.3em;
margin-bottom: 6px;
	}

	.relatedProductSliderProduct .product-info .product-title a
	{
		color: #000;
		font-size: 13px;


	}




	.relatedProductSliderProduct .product-green-price {
		color: #009688;
		font-weight: bold;
		font-size: 14px;
	}


	.relatedProductSliderProduct .swiper-wrapper {
		display: flex;
		align-items: stretch;


	}

	.relatedProductSliderProduct .swiper-slide {
		background: #fff;
		border: 1px solid #eee;
		border-radius: 8px;
		overflow: hidden;
		text-align: left;
		font-size: 14px;
		color: #000;
		display: flex;
		flex-direction: column;
		height: auto;

		box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
		/* ensures equal height */
	}

	.relatedProductSliderProduct.swiper,
	.relatedProductSliderProduct .swiper-wrapper,
	.relatedProductSliderProduct .swiper-slide {
		box-sizing: border-box;
		position: relative;
	}
    /* End Related Product ========================================== */